瀏覽代碼

✨ ERP:基本完成销售入库模块

YunaiV 1 年之前
父節點
當前提交
5736083534
共有 2 個文件被更改,包括 25 次插入12 次删除
  1. 13 6
      src/views/erp/sale/out/SaleOutForm.vue
  2. 12 6
      src/views/erp/sale/out/components/SaleOutItemForm.vue

+ 13 - 6
src/views/erp/sale/out/SaleOutForm.vue

@@ -210,7 +210,7 @@ const formData = ref({
   discountPrice: 0,
   totalPrice: 0,
   otherPrice: 0,
-  payPrice: 0,
+  payPrice: undefined,
   orderNo: undefined,
   items: [],
   no: undefined // 出库单号,后端返回
@@ -242,12 +242,13 @@ watch(
     const discountPrice =
       val.discountPercent != null ? erpPriceMultiply(totalPrice, val.discountPercent / 100.0) : 0
     // debugger
-    // TODO 芋艿:这里有问题
-    const payPrice = totalPrice - discountPrice + val.otherPrice
+    // TODO 芋艿:payPrice 自动计算会有问题,界面上看到修改了,传递到后端还是没改过来
+    // const payPrice = totalPrice - discountPrice + val.otherPrice
     // 赋值
     formData.value.discountPrice = discountPrice
     formData.value.totalPrice = totalPrice - discountPrice
-    formData.value.payPrice = payPrice
+    // val.payPrice = payPrice
+    // formData.value.payPrice = payPrice
   },
   { deep: true }
 )
@@ -297,7 +298,13 @@ const handleSaleOrderChange = (order: SaleOrderVO) => {
   formData.value.remark = order.remark
   formData.value.fileUrl = order.fileUrl
   // 将订单项设置到出库单项
-  formData.value.items = order.items.filter((item) => item.count > item.outCount)
+  order.items.forEach((item) => {
+    item.totalCount = item.count
+    item.count = item.totalCount - item.outCount
+    item.orderItemId = item.id
+    item.id = undefined
+  })
+  formData.value.items = order.items.filter((item) => item.count > 0)
 }
 
 /** 提交表单 */
@@ -339,7 +346,7 @@ const resetForm = () => {
     discountPrice: 0,
     totalPrice: 0,
     otherPrice: 0,
-    payPrice: 0,
+    payPrice: undefined,
     items: []
   }
   formRef.value?.resetFields()

+ 12 - 6
src/views/erp/sale/out/components/SaleOutItemForm.vue

@@ -62,14 +62,24 @@
           </el-form-item>
         </template>
       </el-table-column>
-      <el-table-column label="原数量" fixed="right" min-width="80">
+      <el-table-column
+        label="原数量"
+        fixed="right"
+        min-width="80"
+        v-if="formData[0]?.totalCount != null"
+      >
         <template #default="{ row }">
           <el-form-item class="mb-0px!">
             <el-input disabled v-model="row.totalCount" :formatter="erpCountInputFormatter" />
           </el-form-item>
         </template>
       </el-table-column>
-      <el-table-column label="已出库" fixed="right" min-width="80">
+      <el-table-column
+        label="已出库"
+        fixed="right"
+        min-width="80"
+        v-if="formData[0]?.outCount != null"
+      >
         <template #default="{ row }">
           <el-form-item class="mb-0px!">
             <el-input disabled v-model="row.outCount" :formatter="erpCountInputFormatter" />
@@ -190,8 +200,6 @@ watch(
   () => props.items,
   async (val) => {
     val.forEach((item) => {
-      item.totalCount = item.count
-      item.count = item.totalCount - item.outCount
       if (item.warehouseId == null) {
         item.warehouseId = defaultWarehouse.value?.id
       }
@@ -200,8 +208,6 @@ watch(
       }
     })
     formData.value = val
-
-    // TODO 芋艿:这里添加逻辑
   },
   { immediate: true }
 )