From 1cfaf4b8f5dbf8324e6ac22cfda31d2873014e42 Mon Sep 17 00:00:00 2001
From: skyouc
Date: 星期二, 09 九月 2025 14:13:54 +0800
Subject: [PATCH] 12

---
 zy-asrs-admin/src/views/loc/locCheck/index.vue                                     |  328 ++++++++++++++++++++++++++++++++++++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java       |   10 +
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/param/CheckOutParam.java     |   21 ++
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java               |  150 +++++++++++++++
 pom.xml                                                                            |    5 
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/LocController.java       |   12 +
 zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java |   12 
 7 files changed, 525 insertions(+), 13 deletions(-)

diff --git a/pom.xml b/pom.xml
index 9ace656..2ee639c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -70,6 +70,11 @@
                 <artifactId>springfox-boot-starter</artifactId>
                 <version>3.0.0</version>
             </dependency>
+            <dependency>
+                <groupId>org.redisson</groupId>
+                <artifactId>redisson</artifactId>
+                <version>3.11.1</version>
+            </dependency>
         </dependencies>
     </dependencyManagement>
 
diff --git a/zy-asrs-admin/src/views/loc/locCheck/index.vue b/zy-asrs-admin/src/views/loc/locCheck/index.vue
new file mode 100644
index 0000000..b30e8c2
--- /dev/null
+++ b/zy-asrs-admin/src/views/loc/locCheck/index.vue
@@ -0,0 +1,328 @@
+<script setup>
+import { getCurrentInstance, ref, computed, reactive } from 'vue';
+import { useRouter } from "vue-router";
+import { get, post, postBlob } from '@/utils/request.js'
+import { message, Modal } from 'ant-design-vue';
+import { logout } from '@/config.js';
+import { formatMessage } from '@/utils/localeUtils.js';
+import useTableSearch from '@/utils/tableUtils.jsx';
+const context = getCurrentInstance()?.appContext.config.globalProperties;
+const router = useRouter();
+
+const TABLE_KEY = 'table-locDetl';
+let currentPage = 1;
+let pageSize = 10;
+const searchInput = ref("")
+const orderBy = ref({});
+const searchParam = ref({
+  locNo: null,
+  matnr: null,
+  orderNo: null,
+  batch: null,
+  tagId: null,
+  orderType: null,
+})
+const editChild = ref(null)
+const state = reactive({
+  selectedRowKeys: [],
+  loading: false,
+  columns: [],
+});
+
+let tableData = ref([]);
+getColumns();
+getPage();
+
+const {
+  getColumnSearchProps,
+  handleResizeColumn,
+} = useTableSearch();
+
+
+const hasSelected = computed(() => state.selectedRowKeys.length > 0);
+const start = () => {
+  state.loading = true;
+  // ajax request after empty completing
+  setTimeout(() => {
+    state.loading = false;
+    state.selectedRowKeys = [];
+  }, 1000);
+};
+const onSelectChange = selectedRowKeys => {
+  // console.log('selectedRowKeys changed: ', selectedRowKeys);
+  state.selectedRowKeys = selectedRowKeys;
+};
+
+
+const handleTableChange = (pagination, filters, sorter) => {
+  if (sorter != null) {
+    if (sorter?.order == "ascend") {
+      orderBy.__v_raw = { order: "asc", field: "createTime" }
+    } else if (sorter?.order == "descend") {
+      orderBy.__v_raw = { order: "desc", field: "createTime" }
+    }
+  }
+
+  getPage()
+}
+
+state.columns = [
+  // {
+  //   title: formatMessage('db.man_loc_detl.loc_id', '搴撲綅'),
+  //   dataIndex: 'locId$',
+  //   width: 140,
+  //   ellipsis: true,
+  //   ...getColumnSearchProps('locId$'),
+  // },
+  {
+    title: formatMessage('db.man_loc_detl.loc_no', '搴撲綅鍙�'),
+    dataIndex: 'locNo',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('locNo'),
+  },
+  {
+    title: formatMessage('db.man_loc_detl.loc_type', '搴撲綅鐘舵��'),
+    dataIndex: 'locStsId$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('type$'),
+  },
+  {
+    title: formatMessage('db.man_loc_detl.matnr', '鎺�'),
+    dataIndex: 'row1',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('row1'),
+  },
+  {
+    title: formatMessage('db.man_loc_detl.maktx', '鍒�'),
+    dataIndex: 'bay1',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('bay1'),
+  },
+  {
+    title: formatMessage('db.man_loc_detl.specs', '灞�'),
+    dataIndex: 'lev1',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('lev1'),
+  },
+  {
+    title: formatMessage('db.man_loc_detl.model', '鍨嬪彿'),
+    dataIndex: 'barcode',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('model'),
+  },
+    {
+    title: formatMessage('db.man_loc_detl.create_time', '鍒涘缓鏃堕棿'),
+    dataIndex: 'createTime$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('createTime$'),
+  },
+
+  {
+    title: formatMessage('db.man_loc_detl.update_time', '淇敼鏃堕棿'),
+    dataIndex: 'updateTime$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('updateTime$'),
+  },
+      {
+    title: formatMessage('db.man_loc_detl.update_by', '鍒涘缓浜哄憳'),
+    dataIndex: 'createBy$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('createBy$'),
+  },
+  {
+    title: formatMessage('db.man_loc_detl.update_by', '淇敼浜哄憳'),
+    dataIndex: 'updateBy$',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('updateBy$'),
+  },
+  {
+    title: formatMessage('db.man_loc_detl.memo', '澶囨敞'),
+    dataIndex: 'memo',
+    width: 140,
+    ellipsis: true,
+    ...getColumnSearchProps('memo'),
+  },
+  {
+    title: formatMessage('common.operation', '鎿嶄綔'),
+    name: 'oper',
+    dataIndex: 'oper',
+    key: 'oper',
+    width: 140,
+    fixed: 'right',
+  },
+];
+
+//鍔犺浇鎵╁睍瀛楁
+async function getColumns() {
+  let fieldResp = await post('/api/matField/list', {
+    unique: 1,
+    fieldType: 1
+  })
+  let fieldResult = fieldResp.data;
+  let tmp = state.columns;
+  if (fieldResult.code == 200) {
+    let data = fieldResult.data;
+
+    data.forEach((item) => {
+      tmp.push({
+        title: formatMessage(item.language, item.describe),
+        name: item.name,
+        dataIndex: item.name,
+        key: item.name,
+        width: 140,
+      })
+    })
+    state.columns = tmp;
+  } else if (result.code === 401) {
+    message.error(result.msg);
+    logout()
+  } else {
+    message.error(result.msg);
+  }
+}
+
+function getPage() {
+  state.loading = true;
+  post('/api/auto/loc/page', {
+    orderBy: orderBy.__v_raw,
+    current: currentPage,
+    pageSize: pageSize,
+    condition: searchInput.value,
+    _param: searchParam.value,
+  }).then((resp) => {
+    let result = resp.data;
+    if (result.code == 200) {
+      let data = result.data;
+      tableData.value = data;
+      state.loading = false;
+    } else if (result.code === 401) {
+      message.error(result.msg);
+      logout()
+    } else {
+      message.error(result.msg);
+    }
+  })
+}
+
+const handleEdit = (item) => {
+  let content = "鏄惁纭鐢熸垚-->鍑哄簱浠诲姟锛侊紒"
+  let type = 2
+  if (item?.locNo.indexOf("B") >= 0 || item?.locNo.indexOf("C") >= 0) {
+    content = "鏄惁纭鐢熸垚-->鎷h揣鍗曪紒锛�"
+    type = 1
+  }
+  Modal.confirm({
+    title: formatMessage('page.delete', '鍑哄簱'),
+    content: formatMessage('page.delete.confirm', content),
+    maskClosable: true,
+    onOk: async () => {
+      const hide = message.loading(formatMessage('common.loading', '璇锋眰涓�'));
+      try {
+        let params = {
+          outType: type,
+          id: item?.id,
+        }
+        post('/api/out/check/locs/stock', params).then(resp => {
+          let result = resp.data;
+          if (result.code === 200) {
+            message.success(result.msg);
+          } else {
+            message.error(result.msg);
+          }
+          getPage()
+          hide()
+        })
+      } catch (error) {
+        message.error(formatMessage('common.fail', '璇锋眰澶辫触'));
+      }
+    },
+  });
+
+  // editChild.value.open = true;
+  // editChild.value.formData = item == null ? editChild.value.initFormData : JSON.parse(JSON.stringify(item));
+  // editChild.value.isSave = item == null;
+}
+
+const handleExport = async (intl) => {
+  postBlob('/api/locDetl/export', {
+    condition: searchInput.value,
+    _param: searchParam.value,
+  }).then(result => {
+    const blob = new Blob([result.data], { type: 'application/vnd.ms-excel' });
+    window.location.href = window.URL.createObjectURL(blob);
+    return true;
+  })
+};
+
+const onSearch = () => {
+  currentPage = 1;
+  getPage()
+}
+
+const onPageChange = (page, size) => {
+  currentPage = page;
+  pageSize = size;
+  getPage();
+}
+
+const total = computed(() => tableData.value?.records?.reduce((sum, item) => sum + item.anfme, 0))
+
+</script>
+
+<script>
+export default {
+  name: '鐩樼偣鍑哄簱',
+}
+
+</script>
+
+<template>
+  <div>
+    <EditView ref="editChild" @tableReload="handleTableReload" />
+    <div class="table-header">
+      <div>
+        <a-input v-model:value="searchParam.locNo" :placeholder="formatMessage('page.locDetl.locNo.input', '璇疯緭鍏ュ簱浣嶅彿')"
+          style="width: 140px;margin-right: 10px;" />
+        <a-input v-model:value="searchParam.barcode" :placeholder="formatMessage('page.locDetl.matnr.input', '璇疯緭鍏ユ墭鐩樼爜')"
+          style="width: 140px;margin-right: 10px;" />
+        <a-input-search v-model:value="searchInput" :placeholder="formatMessage('page.input', '璇疯緭鍏�')"
+          style="width: 200px;" @search="onSearch" />
+      </div>
+      <div class="table-header-right">
+        <!-- <a-button @click="handleEdit(null)" type="primary">{{ formatMessage('page.add', '娣诲姞') }}</a-button> -->
+        <a-button @click="handleExport">{{ formatMessage('page.export', '瀵煎嚭') }}</a-button>
+      </div>
+    </div>
+    <a-table :row-selection="{ selectedRowKeys: state.selectedRowKeys, onChange: onSelectChange }"
+      :data-source="tableData.records" :defaultExpandAllRows="false" :key="TABLE_KEY" rowKey="id"
+      :pagination="{ total: tableData.total, onChange: onPageChange }" @change="handleTableChange"
+      :scroll="{ y: 768, scrollToFirstRowOnChange: true }" :columns="state.columns" @resizeColumn="handleResizeColumn"
+      :loading="state.loading">
+      <template #bodyCell="{ column, text, record }">
+        <template v-if="column.dataIndex === 'oper'">
+          <div style="display: flex;justify-content: space-evenly;">
+            <a-button type="link" primary @click="handleEdit(record)">{{ formatMessage('page.edit', '鐩樼偣鍑哄簱')
+            }}</a-button>
+          </div>
+        </template>
+      </template>
+      <!-- <template #footer>
+        <div>
+          <span>褰撳墠椤垫�婚噺锛歿{ total }}</span>
+        </div>
+      </template> -->
+    </a-table>
+  </div>
+</template>
+
+<style></style>
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/LocController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/LocController.java
index 5d4b302..f37db28 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/LocController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/LocController.java
@@ -1,6 +1,7 @@
 package com.zy.asrs.wms.asrs.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.zy.asrs.framework.common.Cools;
 import com.zy.asrs.framework.common.R;
@@ -41,6 +42,17 @@
         return R.ok().add(locService.page(pageParam, pageParam.buildWrapper(true)));
     }
 
+
+    @PreAuthorize("hasAuthority('asrs:loc:list')")
+    @PostMapping("/auto/loc/page")
+    public R autoPage(@RequestBody Map<String, Object> map) {
+        BaseParam baseParam = buildParam(map, BaseParam.class);
+        PageParam<Loc, BaseParam> pageParam = new PageParam<>(baseParam, Loc.class);
+        QueryWrapper<Loc> wrapper = pageParam.buildWrapper(true);
+        wrapper.eq("loc_sts_id", 1).notLike("barcode", "PK");
+        return R.ok().add(locService.page(pageParam, wrapper));
+    }
+
     @PreAuthorize("hasAuthority('asrs:loc:list')")
     @PostMapping("/loc/list")
     @CacheData(tableName = {"man_loc"})
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java
index 3c19a34..95bd733 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/controller/OutController.java
@@ -142,6 +142,16 @@
         return R.ok();
     }
 
+    @PostMapping("/out/check/locs/stock")
+    @OperationLog("鐩樼偣鍑哄簱")
+    public R checkOut(@RequestBody CheckOutParam param) {
+        if (Objects.isNull(param)) {
+            throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒");
+        }
+        outManage.outCheckStock(param);
+        return R.ok();
+    }
+
     @PostMapping("/out/wave/generate")
     @OperationLog("鐢熸垚娉㈡")
     @Transactional
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/param/CheckOutParam.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/param/CheckOutParam.java
new file mode 100644
index 0000000..fce4c57
--- /dev/null
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/entity/param/CheckOutParam.java
@@ -0,0 +1,21 @@
+package com.zy.asrs.wms.asrs.entity.param;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.experimental.Accessors;
+
+@Data
+@Accessors(chain = true)
+@ApiModel(value = "CheckOutParam", description = "鐩樼偣鍑哄簱鍙傛暟")
+public class CheckOutParam {
+
+    @ApiModelProperty("鍑虹珯鍙�")
+    private Integer outSite;
+
+    @ApiModelProperty("鍑哄簱绫诲瀷锛� 1.鎷h揣鍗曪紝 2. 浠诲姟妗� ")
+    private Integer outType;
+
+    @ApiModelProperty("搴撲綅ID")
+    private Long id;
+}
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java
index a0f6a43..5338dbd 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/manage/OutManage.java
@@ -1495,7 +1495,133 @@
             outFlatStock(param);
         } else {
             //鐢熸垚浠诲姟妗�
-            generateTask(param);
+            generateTask(param, null);
+        }
+    }
+
+    /**
+     * @author Ryan
+     * @date 2025/9/9
+     * @description: 鐩樼偣鍑哄簱
+     * @version 1.0
+     */
+    @Transactional(rollbackFor = Exception.class)
+    public void outCheckStock(CheckOutParam checkParams) {
+        //鐢熸垚浠诲姟妗�
+        generateCheckTask(checkParams, "check");
+    }
+
+    /**
+     * @author Ryan
+     * @date 2025/9/9
+     * @description: 鐢熸垚鐩樼偣鍑哄簱浠诲姟
+     * @version 1.0
+     */
+    @Transactional(rollbackFor = Exception.class)
+    public void generateCheckTask(CheckOutParam outParam, String type) {
+        Loc loc = locService.getById(outParam.getId());
+        if (Objects.isNull(loc)) {
+            throw new CoolException("搴撲綅涓嶅瓨鍦紒锛�");
+        }
+        List<LocDetl> detls = locDetlService.list(new LambdaQueryWrapper<LocDetl>().eq(LocDetl::getLocId, loc.getId()));
+        for (LocDetl detl : detls) {
+            List<OrderOutMergeDto> orders = new ArrayList<>();
+            if (Objects.isNull(detl)) {
+                continue;
+            }
+            OrderOutMergeDto outMergeParam = new OrderOutMergeDto();
+            outMergeParam.setAnfme(detl.getAnfme());
+            outMergeParam.setLocNo(detl.getLocNo());
+            outMergeParam.setLocDetlId(detl.getId());
+            outMergeParam.setLocId(detl.getLocId());
+            outMergeParam.setMatnr(detl.getMatnr());
+            outMergeParam.setBatch(detl.getBatch());
+            orders.add(outMergeParam);
+
+            Map<Long, List<OrderOutMergeDto>> listMap = orders.stream().collect(Collectors.groupingBy(OrderOutMergeDto::getLocId));
+            //鏍规嵁搴撲綅ID鍒嗙粍
+            //鐢熸垚鎷h揣鍗曟槑缁�
+            for (Map.Entry<Long, List<OrderOutMergeDto>> entry : listMap.entrySet()) {
+                List<OrderOutMergeDto> list = entry.getValue();
+                OrderOutMergeDto param = list.stream().findFirst().get();
+                List<CacheSite> sites = cacheSiteService.list(new LambdaQueryWrapper<CacheSite>()
+                        .isNotNull(CacheSite::getOrderId));
+                if (!sites.isEmpty()) {
+                    Map<String, Long> longMap = sites.stream().collect(Collectors.groupingBy(CacheSite::getChannel, Collectors.counting()));
+                    Map.Entry<String, Long> entry1 = longMap.entrySet().stream().min(Map.Entry.comparingByValue()).get();
+                    param.setPortSite(entry1.getKey());
+                } else {
+                    CacheSite cacheSite = cacheSiteService.getOne(new LambdaQueryWrapper<CacheSite>().last("limit 1"));
+                    param.setPortSite(cacheSite.getChannel());
+                }
+                if (!loc.getLocStsId().equals(LocStsType.F.val())) {
+                    throw new CoolException(loc.getLocNo() + "搴撲綅鐘舵�佸紓甯�");
+                }
+
+                OperationPort operationPort = operationPortService
+                        .getOne(new LambdaQueryWrapper<OperationPort>()
+                                .eq(OperationPort::getFlag, param.getPortSite()));
+                if (Objects.isNull(operationPort)) {
+                    throw new CoolException("浣滀笟鍙d笉瀛樺湪");
+                }
+
+                Task task = new Task();
+                task.setTaskSts(TaskStsType.GENERATE_OUT.id);
+                // 107 鐩樼偣鍑哄簱
+                long taskType = 107L;
+                task.setTaskType(taskType);
+                task.setTaskNo(workService.generateTaskNo(taskType));
+                task.setIoPri(workService.generateIoPri(taskType));
+                task.setOriginLoc(loc.getLocNo());
+                task.setTargetSite(operationPort.getFlag());
+                task.setBarcode(loc.getBarcode());
+                boolean res = taskService.save(task);
+                if (!res) {
+                    throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�");
+                }
+
+                for (OrderOutMergeDto merge : list) {
+                    LocDetl locDetl = locDetlService.getById(merge.getLocDetlId());
+                    if (locDetl == null) {
+                        throw new CoolException("鏄庣粏涓嶅瓨鍦�");
+                    }
+
+                    TaskDetl taskDetl = new TaskDetl();
+                    taskDetl.sync(locDetl);
+                    taskDetl.setId(null);
+                    taskDetl.setTaskId(task.getId());
+                    taskDetl.setTaskNo(task.getTaskNo());
+                    taskDetl.setAnfme(merge.getAnfme());
+                    taskDetl.setStock(locDetl.getAnfme());
+                    taskDetl.setOrderId(null);
+                    taskDetl.setOrderNo(null);
+                    if (!taskDetlService.save(taskDetl)) {
+                        throw new CoolException("淇濆瓨宸ヤ綔妗f槑缁嗗け璐�");
+                    }
+
+                    List<LocDetlField> locDetlFields = locDetlFieldService
+                            .list(new LambdaQueryWrapper<LocDetlField>()
+                                    .eq(LocDetlField::getDetlId, locDetl.getId()));
+                    for (LocDetlField locDetlField : locDetlFields) {
+                        TaskDetlField taskDetlField = new TaskDetlField();
+                        taskDetlField.sync(locDetlField);
+                        taskDetlField.setId(null);
+                        taskDetlField.setDetlId(taskDetl.getId());
+                        boolean taskDetlFieldSave = taskDetlFieldService.save(taskDetlField);
+                        if (!taskDetlFieldSave) {
+                            throw new CoolException("鏄庣粏鎵╁睍鐢熸垚澶辫触");
+                        }
+                    }
+                }
+
+                //搴撲綅F => R
+                loc.setLocStsId(LocStsType.R.val());
+                loc.setUpdateTime(new Date());
+                boolean locUpdate = locService.updateById(loc);
+                if (!locUpdate) {
+                    throw new CoolException("搴撲綅鐘舵�佹洿鏂板け璐�");
+                }
+            }
         }
     }
 
@@ -1507,7 +1633,7 @@
      * @description: 鎵嬪姩鍑哄簱鐢熸垚浠诲姟
      */
     @Transactional(rollbackFor = Exception.class)
-    public void generateTask(StockOutParam outParam) {
+    public void generateTask(StockOutParam outParam, String type) {
         for (LocDetl outLocDetl : outParam.getLocDetls()) {
             List<OrderOutMergeDto> orders = new ArrayList<>();
             LocDetl detl = locDetlService.getOne(new LambdaQueryWrapper<LocDetl>().eq(LocDetl::getId, outLocDetl.getId()));
@@ -1558,14 +1684,24 @@
                 if (Objects.isNull(operationPort)) {
                     throw new CoolException("浣滀笟鍙d笉瀛樺湪");
                 }
-                //101 鍏ㄦ嫋鍑哄簱   103 鎷h揣鍑哄簱
-                long taskType = all ? 101L : 103L;
+
 
                 Task task = new Task();
-                task.setTaskNo(workService.generateTaskNo(taskType));
                 task.setTaskSts(TaskStsType.GENERATE_OUT.id);
-                task.setTaskType(taskType);
-                task.setIoPri(workService.generateIoPri(taskType));
+                if (Objects.isNull(type)) {
+                    //101 鍏ㄦ嫋鍑哄簱   103 鎷h揣鍑哄簱
+                    long taskType = all ? 101L : 103L;
+                    task.setTaskType(taskType);
+                    task.setTaskNo(workService.generateTaskNo(taskType));
+                    task.setIoPri(workService.generateIoPri(taskType));
+                } else {
+                    // 107 鐩樼偣鍑哄簱
+                    long taskType = 107L;
+                    task.setTaskType(taskType);
+                    task.setTaskNo(workService.generateTaskNo(taskType));
+                    task.setIoPri(workService.generateIoPri(taskType));
+                }
+
                 task.setOriginLoc(loc.getLocNo());
                 task.setTargetSite(operationPort.getFlag());
                 task.setBarcode(loc.getBarcode());
diff --git a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
index d2bf006..82c1a9b 100644
--- a/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
+++ b/zy-asrs-wms/src/main/java/com/zy/asrs/wms/asrs/service/impl/MobileServiceImpl.java
@@ -444,12 +444,12 @@
                 throw new CoolException("璁㈠崟鎾浣嶇粦瀹氬け璐ワ紒锛�");
             }
 
-//            if (!waveSeedMapper.update(new LambdaUpdateWrapper<WaveSeed>()
-//                    .eq(WaveSeed::getOrderNo, order.getOrderNo())
-//                    .set(WaveSeed::getSiteId, siteNo.getId())
-//                    .set(WaveSeed::getSiteNo, siteNo.getSiteNo()))) {
-//                throw new CoolException("鎾绔欑偣鏇存柊澶辫触锛侊紒");
-//            }
+            if (!waveSeedMapper.update(new LambdaUpdateWrapper<WaveSeed>()
+                    .eq(WaveSeed::getOrderNo, order.getOrderNo())
+                    .set(WaveSeed::getSiteId, siteNo.getId())
+                    .set(WaveSeed::getSiteNo, siteNo.getSiteNo()))) {
+                throw new CoolException("鎾绔欑偣鏇存柊澶辫触锛侊紒");
+            }
             //缁戝畾鎴愬姛锛屾挱绉嶅浜伅
             sowLightMange(siteNo.getSiteNo(), order, "LIGHT");
         } else {

--
Gitblit v1.9.1