plg-xiongt 2 сар өмнө
parent
commit
40f85496dd

+ 1 - 1
upcloud-wms-qingniu-web/src/config/defaultSettings.js

@@ -31,7 +31,7 @@
   menu: {
     locale: true
   },
-  zoom: 1.2,//页面大小
+  zoom: 1.0,//页面大小
   title: "UPCloud Solution", //  主页面logo left text
   subTitle:'供应链一体化解决方案',//副标题
   hideTopMenu: true, //隐藏菜单中的第一级菜单

+ 10 - 0
upcloud-wms-qingniu-web/src/views/EIS/project/qingniuEIS/AGVpickDistribution/api/index.js

@@ -138,3 +138,13 @@ export function scanCodeGetItem(params) {
     params: params,
   });
 }
+
+//
+
+export function waveBindCondition(params) {
+  return request({
+    method: "get",
+    url: baseUrl + "/api/v1/pc/waveBindCondition",
+    params: params,
+  });
+}

+ 87 - 30
upcloud-wms-qingniu-web/src/views/EIS/project/qingniuEIS/AGVpickDistribution/index.vue

@@ -14,37 +14,46 @@
         :btnEventArray="btnEventArray"
       >
         <template v-slot:rightTblae>
-          <!-- <p-grid-form ref="right" :items="rightitems"> </p-grid-form> -->
-          <div class="imgClass">
-            <div class="scanCodeTable">
-              <h2>易错商品</h2>
-              <p-grid-form ref="scan" :items="items"> </p-grid-form>
-              <p-table
-                v-show="show"
-                ref="scanCode"
-                :columns="scanCodeColumns"
-                rowKey="lotId"
-                :scroll="{ y: 150 }"
-                :rowSelectType="1"
-                :autoLoad="false"
-                :hasRowSelectCheck="true"
-                :dataSource="ScanList"
-                auto-width
-                bordered
-              >
-                <template slot="operator" slot-scope="text, record">
-                  <a @click="del(text)"> 删除 </a>
-                </template>
-              </p-table>
-            </div>
+          <div style="margin-left: 20px">
+            <!-- <p-grid-form ref="right" :items="rightitems"> </p-grid-form> -->
 
-            <div class="taskInfo">
-              <div class="title">
-                <div>上一条任务信息</div>
-                <p-grid-form ref="scan1" :items="showitems"> </p-grid-form>
+            <p-card title="波次不完整绑定">
+              <span slot="extra">
+                <p-button style="margin-right: 10px" @click="incompleteBindingShowmode">显示详情</p-button>
+              </span>
+              <p-grid-form ref="incompleteBinding" :items="incompleteBindingItems"> </p-grid-form>
+            </p-card>
+            <div class="imgClass">
+              <div class="scanCodeTable">
+                <h2>易错商品</h2>
+                <p-grid-form ref="scan" :items="items"> </p-grid-form>
+                <p-table
+                  v-show="show"
+                  ref="scanCode"
+                  :columns="scanCodeColumns"
+                  rowKey="lotId"
+                  :scroll="{ y: 150 }"
+                  :rowSelectType="1"
+                  :autoLoad="false"
+                  :hasRowSelectCheck="true"
+                  :dataSource="ScanList"
+                  auto-width
+                  bordered
+                >
+                  <template slot="operator" slot-scope="text, record">
+                    <a @click="del(text)"> 删除 </a>
+                  </template>
+                </p-table>
               </div>
 
-              <p-grid-form v-show="show1" ref="lastItem" :span="8" :items="taskInfoItems" />
+              <div class="taskInfo">
+                <div class="title">
+                  <div>上一条任务信息</div>
+                  <p-grid-form ref="scan1" :items="showitems"> </p-grid-form>
+                </div>
+
+                <p-grid-form v-show="show1" ref="lastItem" :span="8" :items="taskInfoItems" />
+              </div>
             </div>
           </div>
         </template>
@@ -86,6 +95,10 @@
     <p-modal title="纸质票据供包" width="80%" :visible="noteConfirmView" :destroyOnClose="true" :confirm-loading="confirmLoading" @ok="noteConfirmOk" @cancel="noteConfirmView = false">
       <p-grid-form ref="noteConfirm" :span="8" :items="noteConfirmItem" />
     </p-modal>
+
+    <p-modal title="作业波次绑定情况" width="80%" :visible="incompleteBindingVisible" @ok="incompleteBindingVisible = false" @cancel="incompleteBindingVisible = false">
+      <p-table :columns="incompleteBindingColumns" rowKey="itemId" :rowSelectType="false" :pagination="false" :dataSource.sync="incompleteBindingList" auto-width bordered />
+    </p-modal>
   </div>
 </template>
 <script>
@@ -103,6 +116,7 @@ import {
   allotmentConfirmCheck,
   noteConfirm,
   scanCodeGetItem,
+  waveBindCondition,
 } from "./api/index.js";
 import { formItems, tableColumns, queryItems, prinTableColumns, Modelcolumns, Modelcolumns2, taskInfoItems, items, showitems, rightitems, noteConfirmItem } from "./js/config";
 import throttle from "./js/utils";
@@ -120,6 +134,19 @@ export default {
   components: { workFlow, PModalTable, workerLogin, imgList },
   data() {
     return {
+      incompleteBindingList: [],
+      incompleteBindingColumns: [
+        { title: "波次号", key: "waveNo", ellipsis: true, dataIndex: "waveNo", align: "center" },
+        { title: "订单总数", key: "orderNum", ellipsis: true, dataIndex: "orderNum", align: "center" },
+        { title: "完成订单", key: "finishOrderNum", ellipsis: true, dataIndex: "finishOrderNum", align: "center" },
+        { title: "已绑定订单", key: "bindOrderNum", ellipsis: true, dataIndex: "bindOrderNum", align: "center" },
+        { title: "未绑定订单", key: "unbindOrderNum", ellipsis: true, dataIndex: "unbindOrderNum", align: "center" },
+      ],
+      incompleteBindingVisible: false,
+      incompleteBindingItems: [
+        { type: "number", name: "length", placeholder: "", className: "input-md-red", labelCol: { span: 12 }, wrapperCol: { span: 12 }, label: "波次数", disabled: true, span: 6, value: "" },
+        { type: "number", name: "unbindOrderNum", placeholder: "", labelCol: { span: 12 }, wrapperCol: { span: 12 }, className: "input-md-red", label: "剩余订单", span: 6, value: "", disabled: true },
+      ], //波次不完整绑定 表单
       itemVisible: false,
       show: false,
       show1: false,
@@ -270,6 +297,7 @@ export default {
       ScanListNOhealthSuperviseflag: [],
       lastItem: {},
       itemId: null,
+      timer: null,
       websockType: false, //websock状态
     };
   },
@@ -303,6 +331,7 @@ export default {
   },
   destroyed() {
     document.onkeydown = null;
+    clearInterval(this.timer);
   },
   watch: {
     ScanList(val) {
@@ -314,8 +343,36 @@ export default {
       let { username, nickname } = this.$store.getters.userInfo;
       this.$refs.workFlow.$refs.formTarget.form.setFieldsValue({ username, nickname });
     });
+    this.waveBindConditionFun();
+    this.timer = setInterval(() => {
+        this.waveBindConditionFun();
+    }, 10000);
   },
   methods: {
+    async waveBindConditionFun() {
+      try {
+        let res = await waveBindCondition();
+        if (res.success) {
+          this.incompleteBindingList = res.data;
+          let length = this.incompleteBindingList.length;
+          let unbindOrderNum = this.incompleteBindingList.reduce((total, item) => {
+            return total + item.unbindOrderNum;
+          }, 0);
+          console.log(length, unbindOrderNum, "===");
+          this.$refs.incompleteBinding.form.setFieldsValue({ length, unbindOrderNum });
+
+          console.log(res);
+        } else {
+          this.$exception(res);
+        }
+      } catch (error) {
+        this.$exception(error);
+      }
+    },
+    //波次不完成绑定弹窗
+    incompleteBindingShowmode() {
+      this.incompleteBindingVisible = true;
+    },
     itemVisibleOk() {
       console.log(arguments);
       let that = this;
@@ -957,7 +1014,7 @@ export default {
 .pickDistribution {
   position: relative;
   .ant-card-body {
-    padding-bottom: 240px;
+    // padding-bottom: 240px;
     background: #fff;
   }
 }
@@ -972,7 +1029,7 @@ export default {
   // background: #108ee9;
   background-clip: border-box;
   //   height: 350px;
-  width: 800px;
+  //   width: 800px;
   //   border: 1px solid #108ee9;
 }
 .imgbox {

+ 1 - 1
upcloud-wms-qingniu-web/src/views/kzyWMS/QualityControl/inBoundSupervised/index.vue

@@ -100,7 +100,7 @@ export default {
       this.$confirm({
         title: '确定要上传吗?',
         onOk() {
-          uploadCircubillPC([record.id]).then(res => {
+          uploadCircubillPC([record.refBillId]).then(res => {
             if (res.success) {
               self.$message.success(res.message)
               self.$refs.searchTable.reload()

+ 1 - 1
upcloud-wms-qingniu-web/src/views/kzyWMS/QualityControl/outBoundSupervised/index.vue

@@ -126,7 +126,7 @@ export default {
       this.$confirm({
         title: '确定要上传吗?',
         onOk() {
-          uploadCircubillPC([record.id]).then(res => {
+          uploadCircubillPC([record.refBillId]).then(res => {
             if (res.success) {
               self.$message.success(res.message)
               self.$refs.searchTable.reload()

+ 40 - 40
upcloud-wms-qingniu-web/src/views/kzyWMS/bound/replenishment/accord.vue

@@ -74,7 +74,6 @@
           </p-table-edit-pro>
         </p-tab-pane>
       </p-tabs>
-
     </p-card>
   </p-spin>
 </template>
@@ -83,8 +82,8 @@
 // 设置默认仓库
 import { setwarehouse } from "@/views/kzyWMS/SearchModal/mixins_warehouse.js";
 import { items, columns, columns2 } from "./config/accord.js";
-import { search_page, initiative_save, urgent_save, updateByCode, getSwatichValue  } from "../api/api.js";
-import store from "@/store";
+import { search_page, initiative_save, urgent_save, updateByCode, getSwatichValue } from "../api/api.js";
+
 import { sorter } from "../../utils/sort";
 
 export default {
@@ -92,7 +91,7 @@ export default {
   data() {
     return {
       regValue: "1",
-      activeKey:'1',
+      activeKey: "1",
       items,
       columns: null,
       data: [],
@@ -157,7 +156,7 @@ export default {
           this.getSwatichValue(this.$store.getters.warehouse.warehouseId);
           this.data = [];
           this.data2 = [];
-          this.extract()
+          this.extract();
           // this.getConfig();
         } else {
           this.$exception(res);
@@ -170,32 +169,32 @@ export default {
     changTabs(activeKey) {
       this.data = [];
       this.data2 = [];
-      this.extract()
+      this.extract();
     },
     getData(val) {
-      if (this.activeKey === '1') {
+      if (this.activeKey === "1") {
         val = {
           pageNum: this.pagination.current,
           pageSize: this.pagination.pageSize,
           num: "querylocator",
           params: { ...val },
-        }
+        };
       }
-      if (this.activeKey === '2') {
+      if (this.activeKey === "2") {
         val = {
           pageNum: this.pagination2.current,
           pageSize: this.pagination2.pageSize,
           num: "querylocator_b",
           params: { ...val },
-        }
+        };
       }
-      this.loading = true
+      this.loading = true;
       search_page(val)
         .then((res) => {
           if (res.success) {
             if (res.data) {
               let temp = res.data.list;
-              if (this.activeKey === '1') {
+              if (this.activeKey === "1") {
                 this.data = temp.map((item) => {
                   return {
                     pieceQuantity: 0, //实补数量(混入后台未定义)
@@ -205,7 +204,7 @@ export default {
                 });
                 this.pagination.total = Number(res.data.totalCount);
               }
-              if (this.activeKey === '2') {
+              if (this.activeKey === "2") {
                 this.data2 = temp.map((item) => {
                   return {
                     pieceQuantity: 0, //实补数量(混入后台未定义)
@@ -217,12 +216,12 @@ export default {
               }
             }
             this.loading = false;
-            if (this.activeKey === '1') {
+            if (this.activeKey === "1") {
               this.selectId.length = 0;
               this.selectData.length = 0;
               this.selectedRowKeys.length = 0;
             }
-            if (this.activeKey === '2') {
+            if (this.activeKey === "2") {
               this.selectId2.length = 0;
               this.selectData2.length = 0;
               this.selectedRowKeys2.length = 0;
@@ -240,15 +239,15 @@ export default {
     // 保存 提交
     hanlderSubmit(event) {
       // event.preventDefault();
-      if (this.selectData.length === 0 && this.activeKey === '1') {
+      if (this.selectData.length === 0 && this.activeKey === "1") {
         this.$message.warning("请选择数据!");
-        return 
+        return;
       }
-      if (this.selectData2.length === 0 && this.activeKey === '2') {
+      if (this.selectData2.length === 0 && this.activeKey === "2") {
         this.$message.warning("请选择数据!");
-        return 
+        return;
       }
-      if (this.selectData.length && this.activeKey === '1') {
+      if (this.selectData.length && this.activeKey === "1") {
         this.$refs.tableAccord.validateFields((err, values) => {
           if (!err) {
             // 较验实补件数(及对应补货数量)不能为0
@@ -261,14 +260,14 @@ export default {
               warehouseId: this.$refs.search.form.getFieldsValue().warehouseId,
               details: [...this.selectData],
             };
-            this.spinning = true
+            this.spinning = true;
             urgent_save(params).then((res) => {
-              this.spinning = false
+              this.spinning = false;
               if (res.success) {
                 this.$message.success("保存成功!");
-                this.data = []
-                this.data2 = []
-                this.extract()
+                this.data = [];
+                this.data2 = [];
+                this.extract();
               } else {
                 this.$exception(res);
               }
@@ -276,20 +275,20 @@ export default {
           }
         });
       }
-      if (this.selectData2.length && this.activeKey === '2') {
+      if (this.selectData2.length && this.activeKey === "2") {
         this.$refs.tableBC.validateFields((err, values) => {
           if (!err) {
             let params = {
               warehouseId: this.$refs.search.form.getFieldsValue().warehouseId,
               details: [...this.selectData2],
             };
-            this.spinning = true
+            this.spinning = true;
             initiative_save(params).then((res) => {
-              this.spinning = false
+              this.spinning = false;
               if (res.success) {
                 this.$message.success("保存成功!");
-                this.data2 = []
-                this.extract()
+                this.data2 = [];
+                this.extract();
               } else {
                 this.$exception(res);
               }
@@ -344,7 +343,7 @@ export default {
       });
     },
     colChange({ name, value, index, label, record, modalRowData, config, vNode, options, moment, event }) {
-      if(this.selectData.length === 0) return
+      if (this.selectData.length === 0) return;
       this.selectData.forEach((item) => {
         if (item.id == record.id) {
           item.pieceQuantity = value * record.caseConversionRate;
@@ -352,7 +351,7 @@ export default {
       });
     },
     colChange2({ name, value, index, label, record, modalRowData, config, vNode, options, moment, event }) {
-      if(this.selectData2.length === 0) return
+      if (this.selectData2.length === 0) return;
       this.selectData2.forEach((item) => {
         if (item.id == record.id) {
           item.pieceQuantity = value * record.caseConversionRate;
@@ -367,19 +366,19 @@ export default {
     },
     // 仅前台显示删除,后台不做删除
     delShow() {
-      if (this.selectData.length === 0 && this.activeKey === '1') {
+      if (this.selectData.length === 0 && this.activeKey === "1") {
         this.$message.warning("请选择数据!");
-        return 
+        return;
       }
-      if (this.selectData2.length === 0 && this.activeKey === '2') {
+      if (this.selectData2.length === 0 && this.activeKey === "2") {
         this.$message.warning("请选择数据!");
-        return 
+        return;
       }
-      if (this.selectId.length && this.activeKey === '1') {
+      if (this.selectId.length && this.activeKey === "1") {
         this.$refs.tableAccord.removeRow(this.selectId);
         this.selectId = [];
       }
-      if (this.selectId2.length && this.activeKey === '2') {
+      if (this.selectId2.length && this.activeKey === "2") {
         this.$refs.tableBC.removeRow(this.selectId2);
         this.selectId2 = [];
       }
@@ -392,9 +391,10 @@ export default {
 </script>
 
 <style lang="less" scoped>
-.auto{
+.auto {
   display: flex;
-  justify-content: end;
+  justify-content: flex-end;
+
   padding-bottom: 16px;
 }
 </style>

+ 1 - 0
upcloud-wms-qingniu-web/src/views/kzyWMS/inBound/receive/rcvEditor/config/detail/packing.js

@@ -38,6 +38,7 @@ let whAreaCategoryCodeList = [
   { label: "高架库", value: "GJK" },
   { label: "中药库", value: "ZYK" },
   { label: "物料库", value: "WLK" },
+  { label: "物料库1", value: "WLK1" },
   { label: "AGV食品库", value: "AGVSP" },
   { label: "AGV器械库", value: "AGVQX" },
   { label: "AGV中药", value: "AGVZY" },