Browse Source

最小包装单元能输入小数点,计量单位和重量单位相同不允许修改重量

huang_an 2 years ago
parent
commit
007e0a91e3

+ 5 - 0
src/views/warehouseManagement/components/AssetsDialog.vue

@@ -152,6 +152,11 @@
               <template v-else>{{ row[item.prop] }}</template>
             </template></el-table-column
           >
+          <el-table-column
+            prop="manualBatchNo"
+            label="批号"
+            min-width="100"
+          ></el-table-column>
           <el-table-column
             v-if="dimension == 2 || dimension == 3 || dimension == 4"
             prop="batchNo"

+ 11 - 1
src/views/warehouseManagement/outgoingManagement/add.vue

@@ -285,6 +285,10 @@
                     <template v-else>{{ row[item.prop] }}</template>
                   </template>
                 </el-table-column>
+                <el-table-column
+                  label="批号"
+                  prop="manualBatchNo"
+                ></el-table-column>
                 <el-table-column
                   label="批次号"
                   prop="batchNo"
@@ -367,7 +371,8 @@
                   :show-overflow-tooltip="true"
                 >
                 </el-table-column>
-
+                <el-table-column label="批号" prop="manualBatchNo">
+                </el-table-column>
                 <el-table-column label="批次号" prop="batchNo">
                 </el-table-column>
                 <el-table-column
@@ -947,6 +952,7 @@
             assetName: 'informationName', //名称
             materialId: 'classificationId',
             materialName: 'informationName',
+            manualBatchNo: '', // 批号
             batchNo: '', //批次号
             unit: 'measuringUnit', //单位
             minPackUnit: 'packingUnit' //最小包装单位
@@ -1329,6 +1335,10 @@
 </script>
 
 <style lang="scss" scoped>
+  ::v-deep .el-row {
+    display: flex;
+    flex-wrap: wrap;
+  }
   ::v-deep.form-table {
     .el-form-item {
       margin-bottom: 0;

+ 5 - 0
src/views/warehouseManagement/outgoingManagement/components/batchDetail.vue

@@ -20,6 +20,11 @@
         prop="name"
         :show-overflow-tooltip="true"
       ></el-table-column>
+      <el-table-column
+        label="批号"
+        prop="manualBatchNo"
+        width="100"
+      ></el-table-column>
       <el-table-column label="批次号" prop="batchNo"></el-table-column>
       <el-table-column
         label="包装编码"

+ 15 - 0
src/views/warehouseManagement/outgoingManagement/details.vue

@@ -152,6 +152,11 @@
                     <template v-else>{{ row[item.prop] }}</template>
                   </template>
                 </el-table-column>
+                <el-table-column
+                  label="批号"
+                  prop="manualBatchNo"
+                  width="100"
+                ></el-table-column>
                 <el-table-column
                   label="批次号"
                   prop="batchNo"
@@ -232,6 +237,11 @@
               prop="name"
               :show-overflow-tooltip="true"
             ></el-table-column>
+            <el-table-column
+              label="批号"
+              prop="manualBatchNo"
+              width="100"
+            ></el-table-column>
             <el-table-column label="批次号" prop="batchNo"></el-table-column>
             <el-table-column
               label="包装编码"
@@ -337,6 +347,11 @@
               :show-overflow-tooltip="true"
             >
             </el-table-column>
+            <el-table-column
+              label="批号"
+              prop="manualBatchNo"
+              width="100"
+            ></el-table-column>
             <el-table-column label="批次号" prop="batchNo"> </el-table-column>
             <el-table-column
               label="物料编码"

+ 52 - 10
src/views/warehouseManagement/stockManagement/add.vue

@@ -441,6 +441,16 @@
                   <template v-else>{{ row[item.prop] }}</template>
                 </template>
               </el-table-column>
+              <el-table-column label="批号" width="100" prop="assetName">
+                <template slot-scope="{ row, $index }">
+                  <template v-if="row.isSave">
+                    {{ row.manualBatchNo }}
+                  </template>
+                  <el-form-item v-else>
+                    <el-input v-model="row.manualBatchNo"> </el-input>
+                  </el-form-item>
+                </template>
+              </el-table-column>
               <el-table-column
                 label="批次号"
                 prop="batchNo"
@@ -479,6 +489,7 @@
                       required
                     >
                       <el-input
+                        type="number"
                         v-model="row.minPackingCount"
                         @input="minPackingCountChange(row, $event)"
                       >
@@ -833,6 +844,11 @@
               width="150"
               :show-overflow-tooltip="true"
             ></el-table-column>
+            <el-table-column
+              label="批号"
+              prop="manualBatchNo"
+              width="100"
+            ></el-table-column>
             <el-table-column
               label="批次号"
               prop="batchNo"
@@ -888,7 +904,7 @@
             <el-table-column label="重量" prop="weight" width="100">
               <template slot-scope="{ row }">
                 <el-input
-                  v-if="!row.isPack"
+                  v-if="!row.isPack && row.measuringUnit != row.weightUtil"
                   v-model="row.weight"
                   @input="weightInput($event, row)"
                 ></el-input>
@@ -1022,6 +1038,11 @@
               width="200"
               :show-overflow-tooltip="true"
             ></el-table-column>
+            <el-table-column
+              label="批号"
+              prop="manualBatchNo"
+              width="100"
+            ></el-table-column>
             <el-table-column
               label="批次号"
               prop="batchNo"
@@ -1069,7 +1090,10 @@
             </el-table-column>
             <el-table-column label="重量" prop="weight" width="100">
               <template slot-scope="{ row }">
-                <el-input v-if="!row.isPack" v-model="row.weight"></el-input>
+                <el-input
+                  v-if="!row.isPack && row.measuringUnit != row.weightUnit"
+                  v-model="row.weight"
+                ></el-input>
                 <span v-else>{{ row.weight }}</span>
               </template>
             </el-table-column>
@@ -1301,7 +1325,12 @@
     methods: {
       // 包装维度最小包装单元改变——>总重量
       minPackingCountChange(row, value) {
-        row.minPackingCount = value.replace(/^(0+)|[^\d]+/g, '');
+        if (value >= 0) {
+          row.minPackingCount = value;
+        } else {
+          row.minPackingCount = 0;
+        }
+        // row.minPackingCount = value.replace(/^(0+)|[^\d]+/g, '');
         if (row.outInNum >= 0 && value >= 0) {
           this.packNum(row, row.outInNum);
         }
@@ -1361,11 +1390,14 @@
             item.isPack = true;
             // 拆分物料维度并生成列表
             for (let i = 1; i <= Number(item.minPackingCount); i++) {
+              console.log(item.weight);
+              console.log(item.minPackingCount);
               resultArray.push({
                 onlyCode: item.onlyCode,
                 no: item.onlyCode + i.toString().padStart(4, '0'),
                 assetCode: item.assetCode,
                 assetName: item.assetName,
+                manualBatchNo: item.manualBatchNo,
                 batchNo: item.batchNo,
                 minPackingCount: 1,
                 measuringUnit: item.measuringUnit,
@@ -1604,8 +1636,10 @@
       },
       packNum(row, value) {
         const total = {
-          packingCount: Number(row.minPackingCount),
-          outInNum: Number(row.outInNum)
+          packingCount: Number(
+            row.minPackingCount > 0 ? row.minPackingCount : 0
+          ),
+          outInNum: Number(row.outInNum > 0 ? row.outInNum : 0)
         };
         if (row.measuringUnit == row.weightUnit) {
           row.weight = Number(
@@ -1619,7 +1653,10 @@
             this.$math.format(total.packingCount * total.outInNum, 14)
           );
           row.weight = Number(
-            this.$math.format(totals * row.netWeight.toFixed(2), 14)
+            this.$math.format(
+              totals * (row.netWeight > 0 ? row.netWeight.toFixed(2) : 0),
+              14
+            )
           );
         }
         return (row.outInNum = value.replace(/^(0+)|[^\d]+/g, ''));
@@ -1706,14 +1743,13 @@
           return row;
         }
       },
-
       //计算金额
       calcSumTotal(PackingCount, outInNum, univalence) {
         //最小包装单元,包装数量,单价
         const total = {
-          PackingCount: Number(PackingCount),
-          outInNum: Number(outInNum),
-          univalence: Number(univalence == undefined ? 0 : univalence)
+          PackingCount: Number(PackingCount > 0 ? PackingCount : 0),
+          outInNum: Number(outInNum > 0 ? outInNum : 0),
+          univalence: Number(univalence > 0 ? univalence : 0)
         };
         return total.PackingCount * total.outInNum * total.univalence;
       },
@@ -2158,6 +2194,7 @@
               item.warehouseLedgerDetails.forEach((i, index) => {
                 Object.assign(i, {
                   num,
+                  manualBatchNo: item.manualBatchNo,
                   batchNo: item.batchNo,
                   cargoSpaceCode: item.cargoSpaceCode, //货位编码
                   cargoSpaceId: item.cargoSpaceId, //货位id
@@ -2254,6 +2291,7 @@
               return {
                 netWeight: item.netWeight,
                 num: item.num,
+                manualBatchNo: item.manualBatchNo,
                 batchNo: item.batchNo,
                 categoryId:
                   this.formData.bizType == 2
@@ -2519,6 +2557,10 @@
 </script>
 
 <style lang="scss" scoped>
+  ::v-deep .el-row {
+    display: flex;
+    flex-wrap: wrap;
+  }
   ::v-deep.form-table {
     .el-form-item {
       margin-bottom: 0;

+ 11 - 0
src/views/warehouseManagement/stockManagement/details.vue

@@ -164,6 +164,13 @@
                     <template v-else>{{ row[item.prop] }}</template>
                   </template>
                 </el-table-column>
+                <el-table-column
+                  label="批号"
+                  prop="manualBatchNo"
+                  width="100"
+                  align="center"
+                >
+                </el-table-column>
                 <el-table-column
                   label="批次号"
                   prop="batchNo"
@@ -324,6 +331,8 @@
               prop="name"
               :show-overflow-tooltip="true"
             ></el-table-column>
+            <el-table-column label="批号" prop="manualBatchNo" width="100">
+            </el-table-column>
             <el-table-column label="批次号" prop="batchNo"></el-table-column>
             <el-table-column
               label="包装编码"
@@ -422,6 +431,8 @@
               width="200"
               :show-overflow-tooltip="true"
             ></el-table-column>
+            <el-table-column label="批号" prop="manualBatchNo" width="100">
+            </el-table-column>
             <el-table-column
               label="批次号"
               prop="batchNo"

+ 1 - 1
vue.config.js

@@ -34,7 +34,7 @@ module.exports = {
         // target: 'http://124.71.68.31:50001', // 测试环境
         // target: 'http://124.71.68.31:50001',
         // target: 'http://192.168.1.132:18086',
-        target: 'http://192.168.1.147:18086',
+        target: 'http://192.168.1.110:18086',
         changeOrigin: true, // 只有这个值为true的情况下 才表示开启跨域
         pathRewrite: {
           '^/api': ''