yusheng hai 1 ano
pai
achega
9333346972

+ 177 - 129
src/views/bpm/handleTask/components/saleOrder/customerReturnGoods/customerReturnOrder.vue

@@ -385,10 +385,18 @@
         </el-form>
       </el-tab-pane>
       <el-tab-pane v-if="isShowReturnOrder" label="入库明细" name="入库明细">
-        <inbound-details
+        <!-- <inbound-details
           ref="inboundDetails"
           :returnDetailsForm="form"
-        ></inbound-details>
+        ></inbound-details> -->
+        <add
+        ref="add"
+        :form="form"
+
+        :bizType="6"
+        :sourceBizNo="form.returnHandleNo"
+        :detailList="detailList"
+      ></add>
       </el-tab-pane>
     </el-tabs>
 
@@ -406,6 +414,8 @@
 <script>
   import inboundDetails from './inboundDetails.vue';
   import outboundDetailsDialog from './outboundDetailsDialog.vue';
+  import add from '@/views/bpm/stockManagement/storage.vue';
+
   import headList from '@/components/headList';
   import {
     getOutInByIdAPI,
@@ -440,7 +450,7 @@
         default: false
       }
     },
-    components: { outboundDetailsDialog, headList, inboundDetails },
+    components: { outboundDetailsDialog, headList, inboundDetails,add },
     data() {
       return {
         activeName: '退货物品明细',
@@ -453,109 +463,133 @@
         form: {
           detailList: []
         },
+        detailList:[],
         rules: {}
       };
     },
     computed: {
       columns() {
         let basicFields = [
-          {
-            columnKey: 'action',
-            label: '操作',
-            width: 120,
-            align: 'center',
-            resizable: false,
-            slot: 'action',
-            fixed: 'right',
-            showOverflowTooltip: true
-          },
-          {
-            width: 45,
-            type: 'index',
-            columnKey: 'index',
-            align: 'center',
-            fixed: 'left'
-          },
-          {
-            minWidth: 120,
-            prop: 'name',
-            label: '名称',
-            align: 'center',
-            slot: 'name'
-          },
-          {
-            minWidth: 120,
-            prop: 'categoryCode',
-            label: '编码',
-            align: 'center',
-            slot: 'categoryCode'
-          },
-          // {
-          //   minWidth: 120,
-          //   prop: 'modelType',
-          //   label: '型号',
-          //   align: 'center',
-          //   slot: 'modelType'
-          // },
-          {
-            minWidth: 120,
-            prop: 'specification',
-            label: '规格',
-            align: 'center',
-            slot: 'specification'
-          },
-          {
-            minWidth: 120,
-            prop: 'packageCount',
-            label: '包装数量',
-            align: 'center',
-            slot: 'packageCount',
-            headerSlot: 'headerPackageCount'
-          },
-          {
-            minWidth: 80,
-            prop: 'packingUnit',
-            label: '单位',
-            align: 'center',
-            slot: 'packingUnit'
-          },
-          {
-            minWidth: 80,
-            prop: 'measurementCount',
-            label: '计量数量',
-            align: 'center',
-            slot: 'measurementCount',
-            headerSlot: 'headerCount'
-          },
-          {
-            minWidth: 80,
-            prop: 'measuringUnit',
-            label: '计量单位',
-            align: 'center'
-          },
-          {
-            minWidth: 80,
-            prop: 'weight',
-            label: '重量',
-            align: 'center',
-            slot: 'weight',
-            headerSlot: 'headerWeight'
-          },
-          {
-            minWidth: 80,
-            prop: 'weightUtil',
-            label: '重量单位',
-            align: 'center',
-            slot: 'weightUtil'
-          },
-          {
-            minWidth: 120,
-            prop: 'carveCode',
-            label: '刻码',
-            slot: 'carveCode',
-            align: 'center',
-            headerSlot: 'headerCarveCode'
-          }
+        {
+          width: 45,
+          type: 'index',
+          columnKey: 'index',
+          align: 'center',
+          fixed: 'left'
+        },
+        {
+          minWidth: 120,
+          prop: 'productName',
+          label: '名称',
+          align: 'center',
+        },
+        {
+          minWidth: 120,
+          prop: 'productCode',
+          label: '编码',
+          align: 'center',
+        },
+   
+        {
+          minWidth: 120,
+          prop: 'specification',
+          label: '规格',
+          align: 'center',
+          slot: 'specification'
+        },
+        {
+          minWidth: 120,
+          prop: 'batchNo',
+          label: '批次号',
+          align: 'center',
+        },
+        {
+          minWidth: 120,
+          prop: 'barcodes',
+          label: '发货条码',
+          align: 'center',
+        },   {
+          minWidth: 120,
+          prop: 'packageNo',
+          label: '包装编码',
+          align: 'center',
+        },
+        {
+          minWidth: 80,
+          prop: 'packageCount',
+          label: '包装数量',
+          align: 'center',
+          // slot: 'packageCount',
+          headerSlot: 'headerPackingCount'
+        },
+        {
+          minWidth: 80,
+          prop: 'packingUnit',
+          label: '单位',
+          align: 'center',
+          slot: 'packingUnit'
+        },
+        {
+          minWidth: 80,
+          prop: 'measurementCount',
+          label: '计量数量',
+          align: 'center',
+          // slot: 'measurementCount',
+          headerSlot: 'headerCount'
+        },
+        {
+          minWidth: 80,
+          prop: 'measurementUnit',
+          label: '计量单位',
+          align: 'center',
+          slot: 'measuringUnit'
+        },
+        {
+          minWidth: 80,
+          prop: 'weight',
+          label: '重量',
+          align: 'center',
+          // slot: 'weight',
+          headerSlot: 'headerWeight'
+        },
+        {
+          minWidth: 80,
+          prop: 'weightUnit',
+          label: '重量单位',
+          align: 'center',
+          slot: 'weightUnit'
+        },
+        {
+          minWidth: 80,
+          prop: 'carveCode',
+          label: '刻码',
+          // slot: 'carveCode',
+          align: 'center',
+          headerSlot: 'headerEngrave'
+        },
+        {
+          minWidth: 140,
+          prop: 'reason',
+          label: '客户退货理由',
+          align: 'center',
+          slot: 'reason',
+          headerSlot: 'headerReason'
+        },
+        {
+          minWidth: 180,
+          prop: 'feedbackDate',
+          label: '客户反馈日期',
+          align: 'center',
+          slot: 'feedbackDate'
+        },
+        {
+          minWidth: 180,
+          prop: 'sendDate',
+          label: '客户发出日期',
+          slot: 'sendDate',
+          align: 'center',
+          headerSlot: 'headerSendDate'
+        },
         ];
         let processNodes = {
           //发起人
@@ -811,7 +845,7 @@
       handleClick(val) {
         this.activeName = val.name;
         if (val.name === '入库明细') {
-          this.$refs.inboundDetails.initialize();
+          // this.$refs.inboundDetails.initialize();
         }
       },
       async getReturnInfo(businessId) {
@@ -884,34 +918,48 @@
               });
             }
           }
-          this.form.detailList.forEach((item) => {
-            if (item.outboundType == 1) {
-              let find =
-                this.materialCodeReqList.find(
-                  (i) => i.outboundDetailId == item.outboundDetailId
-                ) || {};
-              item.name = find.name;
-              item.categoryCode = find.categoryCode;
-              item.specification = find.specification;
-              item.weightUtil = find.weightUtil;
-              item.packingUnit = find.packingUnit;
-              item.measuringUnit = find.measuringUnit;
-            } else {
-              let find =
-                this.metaList.find(
-                  (i) => i.outboundDetailId == item.outboundDetailId
-                ) || {};
-              item.name = find.name;
-              item.categoryCode = find.categoryCode;
-              item.specification = find.specification;
-              item.weightUtil = find.weightUtil;
-              item.packingUnit = find.packingUnit;
-              item.measuringUnit = find.measuringUnit;
-            }
-            item.unqualifiedTypeList = item.unqualifiedType
-              ? item.unqualifiedType?.split(',')
-              : [];
-          });
+          this.detailList=this.form.detailList.map(item=>{
+            item['outType']=item.outboundType
+          item['categoryName']=item.productName
+          item['categoryCode']=item.productCode
+          item['packingQuantity']=item.packageCount
+          item['measureQuantity']=item.measurementCount
+          item['measureUnit']=item.measurementUnit
+          item['categoryId']=item.productCategoryId
+          item['engrave']=item.carveCode
+          item['categoryName']=item.productCategoryName
+          return item
+          })
+
+         
+          // this.form.detailList.forEach((item) => {
+          //   if (item.outboundType == 1) {
+          //     let find =
+          //       this.materialCodeReqList.find(
+          //         (i) => i.outboundDetailId == item.outboundDetailId
+          //       ) || {};
+          //     item.name = find.name;
+          //     item.categoryCode = find.categoryCode;
+          //     item.specification = find.specification;
+          //     item.weightUtil = find.weightUtil;
+          //     item.packingUnit = find.packingUnit;
+          //     item.measuringUnit = find.measuringUnit;
+          //   } else {
+          //     let find =
+          //       this.metaList.find(
+          //         (i) => i.outboundDetailId == item.outboundDetailId
+          //       ) || {};
+          //     item.name = find.name;
+          //     item.categoryCode = find.categoryCode;
+          //     item.specification = find.specification;
+          //     item.weightUtil = find.weightUtil;
+          //     item.packingUnit = find.packingUnit;
+          //     item.measuringUnit = find.measuringUnit;
+          //   }
+          //   item.unqualifiedTypeList = item.unqualifiedType
+          //     ? item.unqualifiedType?.split(',')
+          //     : [];
+          // });
         }
 
         this.$nextTick(() => {

+ 8 - 8
src/views/bpm/stockManagement/storage.vue

@@ -1020,12 +1020,12 @@
         deep: true
       }
     },
-    created() {
-      this.requestDict('不拆物料层规格');
-      this.getFieldModel();
-      this.getListItems();
-      this.initFormData();
-      this.getNowFormatDate();
+   async created() {
+     await this.requestDict('不拆物料层规格');
+     await this.getFieldModel();
+     await this.getListItems();
+     await this.initFormData();
+     await this.getNowFormatDate();
     },
     methods: {
       ...mapActions('dict', ['requestDict']),
@@ -1269,8 +1269,8 @@
               // 换算重量
               let weight = 0;
               if (
-                this.form.weightUnit.toUpperCase() ==
-                item.weightUnit.toUpperCase()
+                this.form?.weightUnit?.toUpperCase() ==
+                item?.weightUnit.toUpperCase()
               ) {
                 weight = this.form.totalWeight;
               } else {