From b07472f884708a6bfdf63d999004bbf0bb5f00a8 Mon Sep 17 00:00:00 2001
From: huangxiaoqiang <huangxiaoqiang@hnkhzn.com>
Date: 星期一, 17 十一月 2025 17:12:57 +0800
Subject: [PATCH] 新增分单功能、二维码打印及物料供应商管理页面

---
 项目代码/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx |  314 ++++++++++++++++++++++++++++++++++++----------------
 1 files changed, 216 insertions(+), 98 deletions(-)

diff --git "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx" "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx"
index 0a22470..0bb9578 100644
--- "a/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx"
+++ "b/\351\241\271\347\233\256\344\273\243\347\240\201/WMS/WIDESEA_WMSClient/src/extension/widesea_wms/stock/Dt_BillGroupStock.jsx"
@@ -9,12 +9,12 @@
 
 // import gridHeader from "./demo_Product/Dt_BillGroupStockDetail.vue";
 // import gridHeader from './extend/printView.vue'
-// import gridBody from './extend/OtherOutBound.vue'
+import gridBody from './extend/Remark.vue'
 let extension = {
   components: {
     //鏌ヨ鐣岄潰鎵╁睍缁勪欢
     gridHeader: '',
-    gridBody: '',
+    gridBody: gridBody,
     gridFooter: '',
     //鏂板缓銆佺紪杈戝脊鍑烘鎵╁睍缁勪欢
     modelHeader: '',
@@ -26,129 +26,214 @@
   methods: {
     //涓嬮潰杩欎簺鏂规硶鍙互淇濈暀涔熷彲浠ュ垹闄�
     onInit() {
-      // let OtherOutBoundbtn=this.buttons.find(x=>x.value=='OtherOutBound');
-      // if(OtherOutBoundbtn){
-      //   OtherOutBoundbtn.onClick=function(){
-      //     let row = this.$refs.table.getSelected() //鑾峰彇閫変腑鐨勮
-      //     if (row <= 0) {
-      //       //濡傛灉娌℃湁閫変腑琛�
-      //       this.$Message.error('璇烽�夋嫨涓�琛屾暟鎹�')
-      //       return;
-      //     }
-      //     let palletCode = row[0].palletCode
-      //     this.http.get(`/api/Task/CompleteTaskAsync?taskNum=${taskNum}`, {}, "姝e湪瀹屾垚浠诲姟").then((res) => {
-      //       //绀轰緥锛氳皟鐢ㄥ悗鍙版帴鍙�
-      //       if (res.status) {
-      //         this.$Message.success('浠诲姟瀹屾垚');
-      //         this.refresh();
-      //       } else {
-      //         this.$Message.error(res.message) //閿欒鎻愮ず
-      //         this.refresh();
-      //       }
+      // this.detailOptions.buttons.unshift({
+      //   name: '鍏朵粬鍑哄簱', //鎸夐挳鍚嶇О
+      //   icon: 'el-icon-document', //鎸夐挳鍥炬爣vue2鐗堟湰瑙乮view鏂囨。icon锛寁ue3鐗堟湰瑙乪lement ui鏂囨。icon(娉ㄦ剰涓嶆槸element puls鏂囨。)
+      //   type: 'primary',
+      //   onClick: function () {
+      //     this.$confirm('鏄惁鍏朵粬鍑哄簱', "璀﹀憡浣犳鍦ㄤ娇鐢ㄥ叾浠栧嚭搴�", {
+      //       confirmButtonText: '纭畾',
+      //       cancelButtonText: '鍙栨秷',
+      //       type: 'warning',
+      //       center: true
+      //     }).then(() => {
+      //       this.http.post(`/api/Task/OtherOutBoundTaskAsync`, row, "姝e湪瀹屾垚浠诲姟").then((res) => {
+      //         //绀轰緥锛氳皟鐢ㄥ悗鍙版帴鍙�
+      //         if (res.status) {
+      //           this.$Message.success('浠诲姟瀹屾垚')
+      //         } else {
+      //           this.$Message.error(res.message) //閿欒鎻愮ず
+      //         }
+      //       })
       //     })
       //   }
-      // }
-        this.columns.push({
-          field: '鎿嶄綔',
-          title: '鎿嶄綔',
-          width: 90,
-          fixed: 'right',
-          align: 'center',
-          formatter: (row) => {
-              return (
-                  '<i style="cursor: pointer;color: #2d8cf0;"class="el-icon-view">鍏朵粬鍑哄簱</i>'
-              );
-          },
-          click: (row) => {
-            console.log(row);
-            this.http.post(`/api/Task/OtherOutBoundTaskAsync?palletCode=${row.palletCode}`, {}, "姝e湪鐢熸垚浠诲姟").then((res) => {
-                    //绀轰緥锛氳皟鐢ㄥ悗鍙版帴鍙�
-                    if (res.status) {
-                      this.$Message.success(row[0].palletCode+"鍑哄簱鎴愬姛");
-                      this.refresh();
-                    } else {
-                      this.$Message.error(res.message) //閿欒鎻愮ず
-                      this.refresh();
-                    }
-                  })
-          }
-      });
-      // this.columns.push({
-      //   title: "鎿嶄綔",
-      //   field: "鎿嶄綔",
-      //   width: 150,
-      //   align: "left", // 'center',
-      //   render: (h, { row, column, index }) => {
-      //     return (
-      //       <div>
-      //         <el-button
-      //           onClick={($e) => {
-      //             // this.$refs.table.load();
-      //             // console.log(this.$refs.table);
-      //             this.$refs.gridHeader.open(row);
-      //           }}
-      //           type="primary"
-      //           plain
-      //           style="height:26px; padding: 10px !important;"
-      //         >
-      //           鎵撳嵃
-      //         </el-button> 
-      //       </div>
-      //     );
-      //   },
       // });
+      this.boxButtons.push({
+        name: '纭畾鍑哄簱', //鎸夐挳鍚嶇О
+        type: 'danger',
+        icon: 'el-icon-check',
+        disabled: false,
+        plain: true,
+        onClick: function () {
+          if (this.editFormFields.remark == '鍏朵粬鍑哄簱') {
+            this.$confirm('鏄惁鍏朵粬鍑哄簱', '璀﹀憡', {
+              confirmButtonText: '纭畾',
+              cancelButtonText: '鍙栨秷',
+              type: 'warning',
+              center: true,
+              customClass: 'large-text-confirm'
+            }).then(() => {
+              this.http
+                .post(
+                  `/api/Task/OtherOutBoundTaskAsync`,
+                  this.$refs.detail.rowData,
+                  '姝e湪鐢熸垚鍑哄簱浠诲姟'
+                )
+                .then((res) => {
+                  if (res.status) {
+                    this.$Message.success(res.message)
+                    this.boxModel = false
+                    this.refresh()
+                  } else {
+                    this.$Message.error(res.message) //閿欒鎻愮ず
+                  }
+                })
+            })
+          } else {
+            this.$confirm('鏄惁璋冩嫧鍑哄簱', '璀﹀憡', {
+              confirmButtonText: '纭畾',
+              cancelButtonText: '鍙栨秷',
+              type: 'warning',
+              center: true,
+              customClass: 'large-text-confirm'
+            }).then(() => {
+              this.http
+                .post(
+                  `/api/Task/HandAllocateOutBoundTaskAsync`,
+                  this.$refs.detail.rowData,
+                  '姝e湪鐢熸垚鍑哄簱浠诲姟'
+                )
+                .then((res) => {
+                  if (res.status) {
+                    this.$Message.success(res.message)
+                    this.boxModel = false
+                    this.refresh()
+                  } else {
+                    this.$Message.error(res.message) //閿欒鎻愮ず
+                  }
+                })
+            })
+          }
+        }
+      })
+      this.boxButtons.push({
+        name: '鎵撳嵃浜岀淮鐮�', //鎸夐挳鍚嶇О
+        type: 'primary',
+        icon: 'el-icon-check',
+        disabled: false,
+        plain: true,
+        onClick: function () {
+          let rows = this.$refs.detail.getSelected()
+          if (rows.length == 0) return this.$error("璇烽�夋嫨鏁版嵁!");
+          let orderNos  = rows.map(x => {
+            return x.orderNo
+        })
+          this.$confirm('鏄惁鎵撳嵃鍗曟嵁', '璀﹀憡', {
+            confirmButtonText: '纭畾',
+            cancelButtonText: '鍙栨秷',
+            type: 'warning',
+            center: true,
+            customClass: 'large-text-confirm'
+          }).then(() => {
+            this.http
+              .post(
+                `/api/StockInfo/PrintOrder`,
+                orderNos,
+                '姝e湪鎵撳嵃'
+              )
+              .then((res) => {
+                if (res.status) {
+                  this.$Message.success(res.message)
+                  this.boxModel = false
+                  this.refresh()
+                } else {
+                  this.$Message.error(res.message) //閿欒鎻愮ず
+                }
+              })
+          })
+        }
+      })
+      this.columns.push({
+        title: '鎿嶄綔',
+        field: '鎿嶄綔',
+        width: 250,
+        align: 'center', // 'center',
+        render: (h, { row, column, index }) => {
+          return (
+            <div>
+              <el-button
+                onClick={($e) => {
+                  ;(row.remark = '鍏朵粬鍑哄簱'), this.linkDataNew(row, '鍏朵粬鍑哄簱')
+                }}
+                type="primary"
+              >
+                鍏朵粬鍑哄簱
+              </el-button>
 
+              <el-button
+                onClick={($e) => {
+                  ;(row.remark = '璋冩嫧鍑哄簱'), this.linkDataNew(row, '璋冩嫧鍑哄簱')
+                }}
+                type="success"
+              >
+                璋冩嫧鍑哄簱
+              </el-button>
+
+              <el-button
+                onClick={($e) => {
+                  this.$refs.gridBody.open(row.palletCode)
+                }}
+                type="warning"
+              >
+                鐩樼偣鍑哄簱
+              </el-button>
+            </div>
+          )
+        }
+      })
       //绀轰緥锛氳缃慨鏀规柊寤恒�佺紪杈戝脊鍑烘瀛楁鏍囩鐨勯暱搴�
       this.boxOptions.labelWidth = 150
-
-
+      this.buttons.forEach((btn) => {
+        if (btn.name == '缂栬緫') {
+          btn.hidden = true
+        }
+      })
+      this.boxButtons.forEach((btn) => {
+        if (btn.name == '淇� 瀛�') {
+          btn.hidden = true
+        }
+      })
       this.columns.forEach((column) => {
-
         if (column.field == 'floor') {
-
           const floorMap = {
             '1F': '涓�妤�',
-            '2F': '浜屾ゼ',
-          };
+            '2F': '浜屾ゼ'
+          }
           column.formatter = (row) => {
-            return floorMap[row?.locationInfo?.floor] || '鏈煡妤煎眰'
+            return floorMap[row?.locationInfo?.floor] || ''
           }
         }
         if (column.field == 'areaId') {
-
           const floorMap = {
-            '1': '涓�妤煎爢鍨涙満鍖哄煙',
-            '2': '涓�妤糀GV鍑哄簱缂撳瓨鍖�',
-            '3': '涓�妤糀GV绔嬪簱缂撳瓨鍖�',
-            '4': '涓�妤糀GV鍏ュ簱缂撳瓨鍖�',
-            '5': '浜屾ゼB4-G4缂撳瓨鍖�',
-            '6': '浜屾ゼB5-G5缂撳瓨鍖�',
-          };
+            1: '涓�妤煎爢鍨涙満鍖哄煙',
+            2: '涓�妤糀GV鍑哄簱缂撳瓨鍖�',
+            3: '涓�妤糀GV绔嬪簱缂撳瓨鍖�',
+            4: '涓�妤糀GV鍏ュ簱缂撳瓨鍖�',
+            5: '浜屾ゼB4-G4缂撳瓨鍖�',
+            6: '浜屾ゼB5-G5缂撳瓨鍖�'
+          }
           column.formatter = (row) => {
-            return  floorMap[row?.locationInfo?.areaId] || '鏈煡妤煎眰'
+            return floorMap[row?.locationInfo?.areaId] || ''
           }
         }
         if (column.field == 'locationStatus') {
           const statusMap = {
-            '0': '绌洪棽',
-            '1': '閿佸畾',
-            '2': '鏈夎揣',
-            '3': '鏈夎揣绂佺敤',
-            '4': '鏃犺揣绂佺敤'
-          };
+            0: '绌洪棽',
+            1: '閿佸畾',
+            2: '鏈夎揣',
+            3: '鏈夎揣绂佺敤',
+            4: '鏃犺揣绂佺敤'
+          }
           column.formatter = (row) => {
-            return statusMap[row?.locationInfo?.locationStatus] || '鏈煡鐘舵��';
+            return statusMap[row?.locationInfo?.locationStatus] || ''
           }
         }
-
       })
     },
     onInited() {
       //妗嗘灦鍒濆鍖栭厤缃悗
       //濡傛灉瑕侀厤缃槑缁嗚〃,鍦ㄦ鏂规硶鎿嶄綔
-      this.detailOptions.columns.forEach(column => {
-
-      });
+      this.detailOptions.columns.forEach((column) => {})
     },
     searchBefore(param) {
       //鐣岄潰鏌ヨ鍓�,鍙互缁檖aram.wheres娣诲姞鏌ヨ鍙傛暟
@@ -168,10 +253,43 @@
     },
     rowClick({ row, column, event }) {
       //鏌ヨ鐣岄潰鐐瑰嚮琛屼簨浠�
-      // this.$refs.table.$refs.table.toggleRowSelection(row) //鍗曞嚮琛屾椂閫変腑褰撳墠琛�;
+      //this.$refs.table.$refs.table.toggleRowSelection(row) //鍗曞嚮琛屾椂閫変腑褰撳墠琛�;
     },
     modelOpenAfter(row) {
+      const isAdd = this.currentAction == 'Add' //鍒ゆ柇鏄惁涓烘柊寤烘搷浣�
+      //闅愯棌鏄庣粏琛ㄦ寜閽�
+      // boxButtons
+      this.detailOptions.buttons.forEach((btn) => {
+        if (btn.name == '娣诲姞琛�') {
+          btn.hidden = true
+          //鎴栬�呰缃彧璇�
+          //btn.readonly=true;
+        }
+      })
 
+      const isDel = this.currentAction == 'Add' //鍒ゆ柇鏄惁涓烘柊寤烘搷浣�
+      //闅愯棌鏄庣粏琛ㄦ寜閽�
+      this.detailOptions.buttons.forEach((btn) => {
+        if (btn.name == '鍒犻櫎琛�') {
+          btn.hidden = true
+          //鎴栬�呰缃彧璇�
+          //btn.readonly=true;
+        }
+      })
+      this.detailOptions.buttons.forEach((btn) => {
+        if (btn.name == '瀵煎叆') {
+          btn.hidden = true
+          //鎴栬�呰缃彧璇�
+          //btn.readonly=true;
+        }
+      })
+      this.detailOptions.buttons.forEach((btn) => {
+        if (btn.name == '瀵煎嚭') {
+          btn.hidden = true
+          //鎴栬�呰缃彧璇�
+          //btn.readonly=true;
+        }
+      })
       //鐐瑰嚮缂栬緫銆佹柊寤烘寜閽脊鍑烘鍚庯紝鍙互鍦ㄦ澶勫啓閫昏緫锛屽锛屼粠鍚庡彴鑾峰彇鏁版嵁
       //(1)鍒ゆ柇鏄紪杈戣繕鏄柊寤烘搷浣滐細 this.currentAction=='Add';
       //(2)缁欏脊鍑烘璁剧疆榛樿鍊�

--
Gitblit v1.9.3