Browse Source

库存操作,编辑物料信息

dxq 2 weeks ago
parent
commit
5ac4454a1d

+ 4
- 4
src/views/sto/components/PopupDistribution.vue View File

@@ -152,7 +152,7 @@
152 152
         show-overflow-tooltip
153 153
       >
154 154
         <template #default="{ row }">
155
-          {{ row.outQuantity ?? row.OUT_QUANTITY ?? '-' }}
155
+          {{ row.quantity ?? row.QUANTITY ?? '-' }}
156 156
         </template>
157 157
 				</el-table-column>
158 158
       <el-table-column
@@ -163,7 +163,7 @@
163 163
         show-overflow-tooltip
164 164
       >
165 165
         <template #default="{ row }">
166
-          {{ row.outWeight ?? row.OUT_WEIGHT ?? '-' }}
166
+          {{ row.weight ?? row.WEIGHT ?? '-' }}
167 167
         </template>
168 168
 				</el-table-column>
169 169
 			</el-table>
@@ -190,7 +190,7 @@ const form = ref({
190 190
 // 计算总重量和总数量
191 191
 const totalWeight = computed(() => {
192 192
   const total = tableData.value.reduce((sum, row) => {
193
-    const weight = parseFloat(row.outWeight ?? row.OUT_WEIGHT ?? 0) || 0
193
+    const weight = parseFloat(row.weight ?? row.WEIGHT ?? 0) || 0
194 194
     return sum + weight
195 195
   }, 0)
196 196
   return total.toFixed(3)
@@ -198,7 +198,7 @@ const totalWeight = computed(() => {
198 198
 
199 199
 const totalQuantity = computed(() => {
200 200
   const total = tableData.value.reduce((sum, row) => {
201
-    const quantity = parseFloat(row.outQuantity ?? row.OUT_QUANTITY ?? 0) || 0
201
+    const quantity = parseFloat(row.quantity ?? row.QUANTITY ?? 0) || 0
202 202
     return sum + quantity
203 203
   }, 0)
204 204
   return total.toFixed(0)

+ 39
- 27
src/views/sto/components/PopupEdit.vue View File

@@ -16,19 +16,19 @@
16 16
       <el-row :gutter="20">
17 17
         <el-col :span="12">
18 18
           <el-form-item label="材料编号">
19
-            <el-input v-model="form.materialNo" disabled />
19
+            <el-input v-model="form.prodNo" disabled />
20 20
           </el-form-item>
21 21
         </el-col>
22 22
         <el-col :span="12">
23 23
           <el-form-item label="规格型号">
24
-            <el-input v-model="form.materialStandard" disabled />
24
+            <el-input v-model="form.attrib03" disabled />
25 25
           </el-form-item>
26 26
         </el-col>
27 27
       </el-row>
28 28
 
29 29
       <el-row :gutter="20">
30 30
         <el-col :span="12">
31
-          <el-form-item label="品名">
31
+          <el-form-item label="物料名称">
32 32
             <el-input v-model="form.materialName" disabled />
33 33
           </el-form-item>
34 34
         </el-col>
@@ -42,12 +42,12 @@
42 42
       <el-row :gutter="20">
43 43
         <el-col :span="12">
44 44
           <el-form-item label="数量">
45
-            <el-input v-model="form.outQuantity" />
45
+            <el-input v-model="form.quantity" />
46 46
           </el-form-item>
47 47
         </el-col>
48 48
         <el-col :span="12">
49 49
           <el-form-item label="重量">
50
-            <el-input v-model="form.outWeight" />
50
+            <el-input v-model="form.weight" />
51 51
           </el-form-item>
52 52
         </el-col>
53 53
       </el-row>
@@ -55,12 +55,12 @@
55 55
       <el-row :gutter="20">
56 56
         <el-col :span="12">
57 57
           <el-form-item label="订单号">
58
-            <el-input v-model="form.orderNo" />
58
+            <el-input v-model="form.attrib01" />
59 59
           </el-form-item>
60 60
         </el-col>
61 61
         <el-col :span="12">
62 62
           <el-form-item label="合约号">
63
-            <el-input v-model="form.contractNo" />
63
+            <el-input v-model="form.attrib02" />
64 64
           </el-form-item>
65 65
         </el-col>
66 66
       </el-row>
@@ -68,16 +68,15 @@
68 68
       <el-row :gutter="20">
69 69
         <el-col :span="12">
70 70
           <el-form-item label="捆包号">
71
-            <el-input v-model="form.bundleNo" />
71
+            <el-input v-model="form.attrib04" />
72 72
           </el-form-item>
73 73
         </el-col>
74 74
         <el-col :span="12">
75 75
           <el-form-item label="产地">
76
-            <el-input v-model="form.prodPlace" />
76
+            <el-input v-model="form.attrib05" />
77 77
           </el-form-item>
78 78
         </el-col>
79 79
       </el-row>
80
-
81 80
       <el-row :gutter="20">
82 81
         <el-col :span="12">
83 82
           <el-form-item label="货权单位">
@@ -128,7 +127,7 @@
128 127
       <el-row :gutter="20">
129 128
         <el-col :span="24">
130 129
           <el-form-item label="备注">
131
-            <el-input v-model="form.remark" type="textarea" :rows="2" />
130
+            <el-input v-model="form.remark1" type="textarea" :rows="2" />
132 131
           </el-form-item>
133 132
         </el-col>
134 133
       </el-row>
@@ -154,20 +153,22 @@ const customerCompanyOptions = ref([])
154 153
 const ownerCompanyOptions = ref([])
155 154
 
156 155
 const createEmptyForm = () => ({
156
+  id: '',
157 157
   materialNo: '',
158
-  materialStandard: '',
158
+  attrib03: '',
159 159
   materialName: '',
160 160
   stGrade: '',
161
-  outQuantity: '',
162
-  outWeight: '',
163
-  orderNo: '',
164
-  contractNo: '',
165
-  bundleNo: '',
161
+  quantity: '',
162
+  weight: '',
163
+  attrib01: '',
164
+  attrib02: '',
165
+  attrib04: '',
166
+  attrib05: '',
166 167
   prodPlace: '',
167 168
   ownerCompany: '',
168 169
   customerCompany: '',
169 170
   deliveryAddress: '',
170
-  remark: ''
171
+  remark1: ''
171 172
 })
172 173
 
173 174
 const form = reactive(createEmptyForm())
@@ -213,20 +214,22 @@ const open = (row) => {
213 214
   
214 215
   // 重置表单并回填当前行数据
215 216
   Object.assign(form, createEmptyForm(), {
216
-    materialNo: row.inProdNo ?? '',
217
-    materialStandard: row.materialStandard ?? '',
217
+    id: row.storeId ?? '',
218
+    prodNo: row.prodNo ?? '',
219
+    attrib03: row.attrib03 ?? '',
218 220
     materialName: row.materialName ?? '',
219 221
     stGrade: row.ST_GRADE ?? row.stGrade ?? '',
220
-    outQuantity: row.outQuantity ?? row.OUT_QUANTITY ?? '',
221
-    outWeight: row.outWeight ?? row.OUT_WEIGHT ?? '',
222
-    orderNo: row.orderNo ?? '',
223
-    contractNo: row.contractNo ?? '',
224
-    bundleNo: row.bundleNo ?? '',
222
+    quantity: row.quantity ?? row.QUANTITY ?? '',
223
+    weight: row.weight ?? row.WEIGHT ?? '',
224
+    attrib01: row.attrib01 ?? '',
225
+    attrib02: row.attrib02 ?? '',
226
+    attrib04: row.attrib04 ?? '',
227
+    attrib05: row.attrib05 ?? '',
225 228
     prodPlace: row.prodPlace ?? '',
226 229
     ownerCompany: row.ownerCompany ?? '',
227 230
     customerCompany: row.customerCompany ?? row.CustomerCompany ?? '',
228 231
     deliveryAddress: row.deliveryAddress ?? '',
229
-    remark: row.remark ?? ''
232
+    remark1: row.remark1 ?? ''
230 233
   })
231 234
   
232 235
   // 获取选项数据
@@ -245,10 +248,19 @@ const handleClose = () => {
245 248
 // 确定
246 249
 const handleConfirm = async () => {
247 250
   try {
251
+    // 构建保存参数,使用 id 而不是 storeId
252
+    const { storeId, ...saveData } = form
253
+    
254
+    // 确保使用 id 字段进行保存
255
+    if (!saveData.id) {
256
+      ElMessage.warning('缺少必要的数据ID')
257
+      return
258
+    }
259
+    
248 260
     // TODO: 根据实际API调整接口地址和参数格式
249 261
     const url = 'sto/OutRecord/update' // 需要根据实际API调整
250 262
     const param = {
251
-      json: JSON.stringify(form)
263
+      json: JSON.stringify(saveData)
252 264
     }
253 265
     
254 266
     const response = await proxy.$axios.post(url, param)

+ 52
- 30
src/views/sto/ware/storeChange.vue View File

@@ -42,7 +42,7 @@
42 42
         <el-row :gutter="10">
43 43
           <el-col :span="6">
44 44
             <el-form-item label="规格型号">
45
-              <el-input v-model="query.materialStandard" clearable placeholder="请输入规格型号" />
45
+              <el-input v-model="query.attrib03" clearable placeholder="请输入规格型号" />
46 46
             </el-form-item>
47 47
           </el-col>
48 48
           <el-col :span="6">
@@ -52,12 +52,12 @@
52 52
           </el-col>
53 53
           <el-col :span="6">
54 54
             <el-form-item label="材料号">
55
-              <el-input v-model="query.inProdNo" clearable placeholder="请输入材料号" />
55
+              <el-input v-model="query.prodNo" clearable placeholder="请输入材料号" />
56 56
             </el-form-item>
57 57
           </el-col>
58 58
           <el-col :span="6">
59 59
             <el-form-item label="订单号">
60
-              <el-input v-model="query.orderNo" clearable placeholder="请输入订单号" />
60
+              <el-input v-model="query.attrib01" clearable placeholder="请输入订单号" />
61 61
             </el-form-item>
62 62
           </el-col>
63 63
         </el-row>
@@ -65,9 +65,17 @@
65 65
         <el-row :gutter="10">
66 66
           <el-col :span="6">
67 67
             <el-form-item label="合约号">
68
-              <el-input v-model="query.contractNo" clearable placeholder="请输入合约号" />
68
+              <el-input v-model="query.attrib02" clearable placeholder="请输入合约号" />
69 69
             </el-form-item>
70 70
           </el-col>
71
+          <el-col :span="6">
72
+            <el-form-item label="捆绑号">
73
+              <el-input v-model="query.attrib04" clearable placeholder="请输入捆绑号" />
74
+            </el-form-item>
75
+          </el-col>
76
+        </el-row>
77
+
78
+        <el-row :gutter="10">
71 79
           <el-col :span="6">
72 80
             <el-form-item label="货权单位">
73 81
               <el-select
@@ -239,6 +247,11 @@
239 247
             {{ row.ST_GRADE ?? row.stGrade ?? '-' }}
240 248
           </template>
241 249
         </el-table-column>
250
+        <el-table-column label="规格型号" min-width="160" header-align="center" align="center" show-overflow-tooltip>
251
+          <template #default="{ row }">
252
+            {{ row.attrib03 ?? row.materialStandard ?? '-' }}
253
+          </template>
254
+        </el-table-column>
242 255
         <el-table-column prop="inDtm" label="入库时间" min-width="180" header-align="center" align="center" show-overflow-tooltip />
243 256
         <el-table-column prop="ownerCompany" label="货权公司" min-width="160" header-align="center" align="center" show-overflow-tooltip />
244 257
         <el-table-column prop="receivingCompany" label="收货公司" min-width="160" header-align="center" align="center" show-overflow-tooltip />
@@ -247,33 +260,36 @@
247 260
             {{ row.customerCompany ?? row.CustomerCompany ?? '-' }}
248 261
           </template>
249 262
         </el-table-column>
250
-        <el-table-column prop="inProdNo" label="材料号" min-width="140" header-align="center" align="center" show-overflow-tooltip />
251
-        <el-table-column label="出库车号" min-width="140" header-align="center" align="center" show-overflow-tooltip>
252
-          <template #default="{ row }">
253
-            {{ row.outTruckNo ?? row.carNo ?? '-' }}
254
-          </template>
255
-        </el-table-column>
256
-        <el-table-column prop="orderNo" label="订单号" min-width="160" header-align="center" align="center" show-overflow-tooltip />
257
-        <el-table-column prop="contractNo" label="合约号" min-width="160" header-align="center" align="center" show-overflow-tooltip />
258
-        <el-table-column label="出库重量" min-width="140" header-align="center" align="right" show-overflow-tooltip>
263
+        <el-table-column prop="prodNo" label="材料号" min-width="140" header-align="center" align="center" show-overflow-tooltip />
264
+        <el-table-column label="入库车号" min-width="140" header-align="center" align="center" show-overflow-tooltip>
259 265
           <template #default="{ row }">
260
-            {{ row.outWeight ?? row.OUT_WEIGHT ?? '-' }}
266
+            {{ row.inTruckNo ?? row.carNo ?? '-' }}
261 267
           </template>
262 268
         </el-table-column>
263
-        <el-table-column label="出库数量" min-width="140" header-align="center" align="right" show-overflow-tooltip>
269
+        <el-table-column prop="attrib01" label="订单号" min-width="160" header-align="center" align="center" show-overflow-tooltip />
270
+        <el-table-column prop="attrib02" label="合约号" min-width="160" header-align="center" align="center" show-overflow-tooltip />
271
+        <el-table-column prop="attrib04" label="捆包号" min-width="160" header-align="center" align="center" show-overflow-tooltip />
272
+        <el-table-column prop="attrib05" label="产地" min-width="160" header-align="center" align="center" show-overflow-tooltip />
273
+        <el-table-column label="重量" min-width="140" header-align="center" align="right" show-overflow-tooltip>
264 274
           <template #default="{ row }">
265
-            {{ row.outQuantity ?? row.OUT_QUANTITY ?? '-' }}
275
+            {{ row.weight ?? row.WEIGHT ?? '-' }}
266 276
           </template>
267 277
         </el-table-column>
268
-        <el-table-column label="出库标记" width="140" header-align="center" align="center">
278
+        <el-table-column label="数量" min-width="140" header-align="center" align="right" show-overflow-tooltip>
269 279
           <template #default="{ row }">
270
-            <el-tag :type="flagTagType(row.outFlag)" effect="plain">
271
-              {{ flagLabel(row.outFlag) }}
272
-            </el-tag>
280
+            {{ row.quantity ?? row.QUANTITY ?? '-' }}
273 281
           </template>
274 282
         </el-table-column>
283
+<!--        <el-table-column label="出库标记" width="140" header-align="center" align="center">-->
284
+<!--          <template #default="{ row }">-->
285
+<!--            <el-tag :type="flagTagType(row.outFlag)" effect="plain">-->
286
+<!--              {{ flagLabel(row.outFlag) }}-->
287
+<!--            </el-tag>-->
288
+<!--          </template>-->
289
+<!--        </el-table-column>-->
275 290
         <el-table-column prop="deliveryAddress" label="收货地址" min-width="200" header-align="center" align="center" show-overflow-tooltip />
276 291
 <!--        <el-table-column prop="outDtm" label="出库时间" min-width="180" header-align="center" align="center" show-overflow-tooltip />-->
292
+        <el-table-column prop="remark1" label="备注" min-width="160" header-align="center" align="center" show-overflow-tooltip />
277 293
       </el-table>
278 294
     </el-card>
279 295
 
@@ -378,10 +394,14 @@ const createDefaultQuery = () => {
378 394
   materialName: '',
379 395
     stGrade: '',
380 396
   materialStandard: '',
397
+    attrib03: '',
381 398
     bundleNo: '',
382
-    inProdNo: '',
383
-    orderNo: '',
384
-    contractNo: '',
399
+    prodNo: '',
400
+    attrib01: '',
401
+    attrib02: '',
402
+    attrib04: '',
403
+    attrib05: '',
404
+    remark1: '',
385 405
   ownerCompany: '',
386 406
     customerCompany: '',
387 407
     outTruckNo: '',
@@ -416,10 +436,12 @@ const buildQueryParams = () => {
416 436
     materialName: query.materialName,
417 437
     stGrade: query.stGrade,
418 438
     materialStandard: query.materialStandard,
439
+    attrib03: query.attrib03,
419 440
     bundleNo: query.bundleNo,
420
-    inProdNo: query.inProdNo,
421
-    orderNo: query.orderNo,
422
-    contractNo: query.contractNo,
441
+    prodNo: query.prodNo,
442
+    attrib01: query.attrib01,
443
+    attrib02: query.attrib02,
444
+    attrib04: query.attrib04,
423 445
     ownerCompany: query.ownerCompany,
424 446
     customerCompany: query.customerCompany,
425 447
     outTruckNo: query.outTruckNo,
@@ -638,7 +660,7 @@ const handleBatchMoveSuccess = () => {
638 660
 const executeCancelInbound = async () => {
639 661
   try {
640 662
     // 收集选中的行ID
641
-    const ids = multipleSelection.value.map(row => row.id || row.inProdNo).filter(id => id)
663
+    const ids = multipleSelection.value.map(row => row.id || row.prodNo).filter(id => id)
642 664
     
643 665
     if (ids.length === 0) {
644 666
       ElMessage.warning('选中的数据中没有有效的ID')
@@ -716,7 +738,7 @@ const handleLock = () => {
716 738
 const executeLock = async () => {
717 739
   try {
718 740
     // 收集选中的行ID
719
-    const ids = multipleSelection.value.map(row => row.id || row.inProdNo).filter(id => id)
741
+    const ids = multipleSelection.value.map(row => row.id || row.prodNo).filter(id => id)
720 742
     
721 743
     if (ids.length === 0) {
722 744
       ElMessage.warning('选中的数据中没有有效的ID')
@@ -777,7 +799,7 @@ const handleUnlock = () => {
777 799
 const executeUnlock = async () => {
778 800
   try {
779 801
     // 收集选中的行ID
780
-    const ids = multipleSelection.value.map(row => row.id || row.inProdNo).filter(id => id)
802
+    const ids = multipleSelection.value.map(row => row.id || row.prodNo).filter(id => id)
781 803
     
782 804
     if (ids.length === 0) {
783 805
       ElMessage.warning('选中的数据中没有有效的ID')
@@ -838,7 +860,7 @@ const handleInStock = () => {
838 860
 const executeInStock = async () => {
839 861
   try {
840 862
     // 收集选中的行ID
841
-    const ids = multipleSelection.value.map(row => row.id || row.inProdNo).filter(id => id)
863
+    const ids = multipleSelection.value.map(row => row.id || row.prodNo).filter(id => id)
842 864
     
843 865
     if (ids.length === 0) {
844 866
       ElMessage.warning('选中的数据中没有有效的ID')

Loading…
Cancel
Save