zck 9 kuukautta sitten
vanhempi
commit
37fcfec0b6
1 muutettua tiedostoa jossa 99 lisäystä ja 93 poistoa
  1. 99 93
      src/view/inventory/tuihuan.vue

+ 99 - 93
src/view/inventory/tuihuan.vue

@@ -66,24 +66,24 @@
                           :summary-method="getSummaries" tooltip-effect="dark" :data="rdetailstableData" row-key="ID" >
                 <!-- <el-table-column   align="center" type="selection" width="40"/> -->
                 <el-table-column align="left"  label="退还单号" prop="出库单据编号"  width="140"/>
-                <el-table-column align="left"  label="批次号" prop="批次号"  width="90"/>
-                <el-table-column align="left"  label="订单编号" prop="订单编号"  width="105"/>
-                <el-table-column align="left"  label="客户" prop="客户编号"  width="70"/>
-                <el-table-column align="left"  label="生产款号" prop="款号"  width="140"/>
-                <el-table-column align="left"  label="款式" prop="款式"  width="120"/>
-                <el-table-column align="left"  label="物料编码" prop="物料编码"  width="150"/>
-                <el-table-column align="left"  label="物料名称" prop="物料名称"  width="150"/>
-                <el-table-column align="left"  label="颜色" prop="颜色"  width="120"/>
-                <!-- <el-table-column align="left"  label="计划用料" prop="计划用料"  width="90"/> -->
-                <!-- <el-table-column align="left"  label="计划门幅" prop="计划门幅"  width="90"/> -->
-                <el-table-column align="left"  label="定额用料" prop="定额用料"  width="90"/>
-                <el-table-column align="left"  label="定额门幅" prop="定额门幅"  width="90"/>
-                <el-table-column align="left"  label="退还数量" prop="入仓总量"  width="90"/>
-                <el-table-column align="left"  label="库存总量" prop="库存数量"  width="90"/>
-                <el-table-column align="left"  label="面料结余" prop="面料结余"  width="90"/>
-                <el-table-column align="left"  label="投料单位" prop="单位"  width="90"/>
-                <el-table-column align="left"  label="退还人员" prop="操作机台"  width="100"/>
-                <el-table-column align="left"  label="退还日期" prop="日期"  width="160"/>
+			  <el-table-column align="left"  label="批次号" prop="批次号"  width="90"/>
+			  <el-table-column align="left"  label="订单编号" prop="订单编号"  width="105"/>
+			  <el-table-column align="left"  label="客户" prop="客户编号"  width="70"/>
+			  <el-table-column align="left"  label="生产款号" prop="款号"  width="140"/>
+			  <el-table-column align="left"  label="款式" prop="款式"  width="120"/>
+			  <el-table-column align="left"  label="物料编码" prop="物料编码"  width="150"/>
+			  <el-table-column align="left"  label="物料名称" prop="物料名称"  width="150"/>
+			  <el-table-column align="left"  label="颜色" prop="BOM_颜色"  width="120"/>
+			  <!-- <el-table-column align="left"  label="计划用料" prop="计划用料"  width="90"/> -->
+			  <!-- <el-table-column align="left"  label="计划门幅" prop="计划门幅"  width="90"/> -->
+			  <el-table-column align="left"  label="定额用料" prop="实际门幅"  width="90"/>
+			  <el-table-column align="left"  label="定额门幅" prop="定额门幅"  width="90"/>
+			  <el-table-column align="left"  label="退还数量" prop="数量"  width="90"/>
+			  <el-table-column align="left"  label="入仓总量" prop="入仓总量"  width="90"/>
+			  <el-table-column align="left"  label="库存总量" prop="库存数量"  width="90"/>
+			  <el-table-column align="left"  label="投料单位" prop="单位"  width="90"/>
+			  <el-table-column align="left"  label="退还人员" prop="操作机台"  width="100"/>
+			  <el-table-column align="left"  label="退还日期" prop="日期"  width="160"/>
                 </el-table>
             </el-tab-pane>
            </el-tabs>
@@ -392,81 +392,87 @@
   
   //表格行点击
   const tableRowClick = async (row) => {
-      setTimeout(() => {
-            const inputElement = document.getElementById('rksl');
-            if (inputElement) {
-                inputElement.focus();		
-            }
-      }, 100);//100毫秒
-      
-      add_searchInfo.value = row.订单编号;
-      _orderid.value = row.订单编号;
-      _kh.value = row.生产款号;
-  
-      ddhformData.glbh = row['关联编号'];
-      ddhformData.ddh = row['订单编号'];
-      ddhformData.kh = row['客户编号'];
-      ddhformData.sckh = row['生产款号'];
-      ddhformData.wlbh = row['物料编码'];
-      ddhformData.ks = row['款式'];
-  
-      // 获取详情数据
-      const Detailres = await getInputDetail({
-          关联编号: row.关联编号,
-          订单编号: row.订单编号,
-          物料编码: row.物料编码
-      });
-  
-      console.log(Detailres);
-  
-      // 将 Detailres.data 中的数据赋值给 mianliaotabData
-      if (Detailres.code === 0 && Detailres.data) {
-          mianliaotabData.value = {
-              订单编号: row.订单编号,
-              客户编号: row.客户编号,
-              生产款号: row.生产款号,
-              款式: row.款式,
-              物料编号: Detailres.data.BOM_物料编码,
-              物料名称: Detailres.data.BOM_物料名称,
-              关联号: Detailres.data.关联编号,
-              批次号: Detailres.data.批次号,
-              计划用料: Detailres.data.计划用料,
-              计划门幅: Detailres.data.BOM_计划门幅,
-              定额用料: Detailres.data.定额用料,
-              定额门幅: Detailres.data.BOM_定额门幅,
-              退还数量: Detailres.data.退还数量,
-              入仓总数量: Detailres.data.退还数量?Detailres.data.退还数量:0,
-              库存数量: Detailres.data.库存数量?Detailres.data.库存数量:0,
-              领用数量: Detailres.data.领用数量,
-              关联订单: Detailres.data.关联订单,
-              颜色: Detailres.data.BOM_颜色,
-              单位:'米',
-              实际门幅:Detailres.data.实际门幅
-          };
-           // 计算 danjutableData 中相同物料名称和颜色的退还数量总和
-			const { 物料名称, 颜色 } = mianliaotabData.value;
-			
-			// 计算退还的总数量
-			const totalOutbound = danjutableData.value
-			  .filter((item) => item.物料名称 === 物料名称 && item.颜色 === 颜色)
-			  .reduce((sum, item) => sum + Number(item.退还数量), 0);
-			
-			// 根据退还类型更新库存数量
-			if (danjutableData.value.退还类型 === '退面料') {
-			  // 退面料,增加库存数量
-			  mianliaotabData.value.库存数量 += totalOutbound;
-			} else if (danjutableData.value.退还类型 === '退厂商') {
-			  // 退厂商,减少库存数量
-			  mianliaotabData.value.库存数量 -= totalOutbound;
-			} else {
-			  // 其他退还类型可以根据需要加入处理逻辑
-			  console.log('未知的退还类型');
-			}
-			  // mianliaotabData.value.库存数量 -= totalOutbound;
-      } else {
-          console.error('获取详情数据失败:', Detailres.msg);
-      }
-  };
+  // 延迟 100 毫秒后聚焦输入框
+  setTimeout(() => {
+    const inputElement = document.getElementById('rksl');
+    if (inputElement) {
+      inputElement.focus();
+    }
+  }, 100);
+
+  // 更新表单数据
+  add_searchInfo.value = row.订单编号;
+  _orderid.value = row.订单编号;
+  _kh.value = row.生产款号;
+
+  ddhformData.glbh = row['关联编号'];
+  ddhformData.ddh = row['订单编号'];
+  ddhformData.kh = row['客户编号'];
+  ddhformData.sckh = row['生产款号'];
+  ddhformData.wlbh = row['物料编码'];
+  ddhformData.ks = row['款式'];
+
+  // 获取详情数据
+  const Detailres = await getInputDetail({
+    关联编号: row.关联编号,
+    订单编号: row.订单编号,
+    物料编码: row.物料编码,
+  });
+
+  console.log(Detailres);
+
+  // 如果获取详情数据成功
+  if (Detailres.code === 0 && Detailres.data) {
+    // 初始化 mianliaotabData
+    mianliaotabData.value = {
+      订单编号: row.订单编号,
+      客户编号: row.客户编号,
+      生产款号: row.生产款号,
+      款式: row.款式,
+      物料编号: Detailres.data.BOM_物料编码,
+      物料名称: Detailres.data.BOM_物料名称,
+      关联号: Detailres.data.关联编号,
+      批次号: Detailres.data.批次号,
+      计划用料: Detailres.data.计划用料,
+      计划门幅: Detailres.data.BOM_计划门幅,
+      定额用料: Detailres.data.定额用料,
+      定额门幅: Detailres.data.BOM_定额门幅,
+      退还数量: Detailres.data.退还数量,
+      入仓总数量: Detailres.data.退还数量 ? Detailres.data.退还数量 : 0,
+      库存数量: Detailres.data.库存数量 ? Detailres.data.库存数量 : 0,
+      领用数量: Detailres.data.领用数量,
+      关联订单: Detailres.data.关联订单,
+      颜色: Detailres.data.BOM_颜色,
+      单位: '米',
+      实际门幅: Detailres.data.实际门幅,
+    };
+
+    // 获取 mianliaotabData 的物料名称和颜色
+    const { 物料名称, 颜色 } = mianliaotabData.value;
+
+    // 计算 danjutableData 中相同物料名称和颜色的退还数量总和
+    const totalOutbound = danjutableData.value
+      .filter(
+        (item) =>
+          item.物料名称 === 物料名称 &&
+          item.颜色 === 颜色
+      )
+      .reduce((sum, item) => {
+        // 根据退还类型决定是加还是减
+        if (item.退还类型 === '退面料') {
+          return sum + Number(item.退还数量); // 退面料,增加退还数量
+        } else if (item.退还类型 === '退厂商') {
+          return sum - Number(item.退还数量); // 退厂商,减少退还数量
+        }
+        return sum; // 其他退还类型不处理
+      }, 0);
+
+    // 更新 mianliaotabData 的库存数量
+    mianliaotabData.value.库存数量 += totalOutbound;
+  } else {
+    console.error('获取详情数据失败:', Detailres.msg);
+  }
+};
   
   
 const danjutableData = ref([]); // 使用 ref 定义响应式数组