zck 9 месяцев назад
Родитель
Сommit
0dc2901c2d

+ 10 - 1
src/api/mes/job.js

@@ -763,7 +763,7 @@ export const Bomdel = (params) => {
   })
 }
 
-// 出库单号、入库单号获取
+// 入库、出库、退还删除
 export const FabricDetaildel = (data) => {
   return service({
     url: '/mes_server/work_order/FabricDetaildel',
@@ -772,6 +772,15 @@ export const FabricDetaildel = (data) => {
   })
 }
 
+//出库订单信息数据查询
+export const OutOrderSearch = (params) => {
+  return service({
+    url: '/mes_server/work_order_spot_check/OutOrderSearch',
+    method: 'get',
+    params
+  })
+}
+
 //获取入库面料信息
 export const getInputDetail = (params) => {
   return service({

+ 32 - 34
src/view/inventory/ruku.vue

@@ -385,9 +385,9 @@ const tableRowClick = async (row) => {
     // 将 Detailres.data 中的数据赋值给 mianliaotabData
     if (Detailres.code === 0 && Detailres.data) {
         mianliaotabData.value = {
-            物料编号: Detailres.data.物料编号,
-            物料名称: Detailres.data.物料名称,
-            关联号: Detailres.data.关联号,
+            物料编号: Detailres.data.BOM_物料编码,
+            物料名称: Detailres.data.BOM_物料名称,
+            关联号: Detailres.data.关联号,
             批次号: Detailres.data.批次号,
             计划用料: Detailres.data.计划用料,
             计划门幅: Detailres.data.BOM_计划门幅,
@@ -560,37 +560,39 @@ const res_bomenterDialog = async () => {
 		ElMessage({type: 'warning',message: '入库数量不能为空'})
 		return
 	}
-    // 直接构造一个对象,不用 JSON 格式的索引
-    const formattedData = {
-        order_id: ddhformData.ddh,
-        款号: ddhformData.sckh,
-        物料编码: danjutableData.value[0]['物料编号'],
-        物料名称: danjutableData.value[0]['物料名称'],
-        number: danjutableData.value[0]['入库数量'],
-        name: "入库",
-        sys_id: userStore.userInfo.nickName,
-        receipt_number: danhao.value,
-        客户编号: ddhformData.kh,
-        款式: ddhformData.ks,
-        rq: currentDate,
-        批次号: danjutableData.value[0]['批次号'],
-        关联编号: danjutableData.value[0]['关联号'],
-		实际门幅: danjutableData.value[0]['实际门幅'],
-    };
-
-    console.log(formattedData);
-
+ // 构造一个包含所有数据的数组
+ const formattedDataArray = danjutableData.value.map(item => ({
+    order_id: ddhformData.ddh,
+    款号: ddhformData.sckh,
+    物料编码: item['物料编号'],
+    物料名称: item['物料名称'],
+    number: item['入库数量'],
+    name: "入库",
+    sys_id: userStore.userInfo.nickName,
+    receipt_number: danhao.value,
+    客户编号: ddhformData.kh,
+    款式: ddhformData.ks,
+    rq: currentDate,
+    批次号: item['批次号'],
+    关联编号: item['关联号'],
+    实际门幅: item['实际门幅'],
+  }));
+  console.log(formattedDataArray);
+  try {
     // 异步调用输入数据的接口
-    const add_outReport = await inputStash(formattedData);
-
+    const add_outReport = await inputStash(formattedDataArray);
     // 根据返回的 code 进行提示
     if (add_outReport.code === 0) {
-        res_bomdialogFormVisible.value = false;
-        ElMessage({ type: 'success', message: '入库成功' });
-		danjutableData.value.splice(0, danjutableData.value.length);
+      res_bomdialogFormVisible.value = false;
+      ElMessage({ type: 'success', message: '入库成功' });
+      danjutableData.value.splice(0, danjutableData.value.length); // 清空表格数据
     } else {
-        ElMessage({ type: 'error', message: '入库失败' });
+      ElMessage({ type: 'error', message: '入库失败' });
     }
+  } catch (error) {
+    console.error('出库失败:', error);
+    ElMessage({ type: 'error', message: '入库失败' });
+  }
 }
 
 
@@ -638,16 +640,12 @@ const rukutableData = reactive([])
 const records_onSubmit = async ()=>{
 	thtableData.splice(0,thtableData.length);
 	rukutableData.splice(0,rukutableData.length);
-	if(records_searchInfo.value === ''){
-		ElMessage({type: 'warning',message: '请先输入要查询的订单编号或款号'})
-		return;
-	}	
 	const FabricDetaillists = await FabricDetaillist({order:records_searchInfo.value});
 	console.log(FabricDetaillists)
 	rukutableData.splice(0,FabricDetaillists.length,...FabricDetaillists.data['入库记录']);
 	thtableData.splice(0,FabricDetaillists.length,...FabricDetaillists.data['退还记录']);
 }
-
+records_onSubmit();
 
 
 

+ 21 - 21
src/view/performance/caiqiebaogong.vue

@@ -248,7 +248,7 @@
 					  style="width: 150px; height: 40px; font-size: 20px; margin-left: 10px;">删除报工</el-button>
 					  <el-button type="primary" @click="cp_gdprintonClick" style="width: 150px; height: 40px; font-size: 20px; margin-left: 10px;" >  子订单详情页 </el-button>
 					  <el-button type="primary" @click="add_Dialog" style="width: 100px; height: 40px; font-size: 20px; margin-left: 10px;" >报工</el-button>
-						<!-- <el-button type="primary" @click="return_Dialog" style="width: 100px; height: 40px; font-size: 20px; margin-left: 10px;" >退还</el-button> -->
+						<el-button type="primary" @click="return_Dialog" style="width: 100px; height: 40px; font-size: 20px; margin-left: 10px;" >退还</el-button>
 				</el-main>
 			</div>
 			
@@ -365,7 +365,7 @@ import $ from 'jquery';
 import LuckyExcel from 'luckyexcel';
 import { Layout, LayoutSider, LayoutContent } from '@arco-design/web-vue';
 import {ref, reactive} from 'vue';
-import {getSpotList,getInfo,OrderAttachments,getTabByGdbh,search,spotcheckdel,SubWorkOrderStatusList,Mabaolist,orderBomList,outReport} from '@/api/mes/job';
+import {getSpotList,getInfo,OrderAttachments,getTabByGdbh,search,spotcheckdel,SubWorkOrderStatusList,Mabaolist,orderBomList,outReport,OutOrderSearch} from '@/api/mes/job';
 import {getMachineMac} from '@/api/jixiaoguanli/jitairibaobiao'
 import {getMac} from '@/api/jixiaoguanli/baogong'
 import {ElMessage,ElMessageBox} from "element-plus";
@@ -908,25 +908,25 @@ const resbom_tableColumns = ref(
 		// { label: 'UNIQID', prop: 'UNIQID', width: '80' },
     ]
 )
-// //退还按钮
-// const return_Dialog = async ()=>{
-// 	_orderid.value = add_searchInfo.value.split('-')[0]
-// 	if(_orderid.value === '' || _orderid.value === null){
-// 		ElMessage({type: 'warning',message: '请扫描订单后,再操作此功能'})
-// 	}else{
-// 		const orderSearchdata = await orderSearch({search:_orderid.value});
-// 		console.log(orderSearchdata)
-// 		_kh.value = orderSearchdata.data[0].生产款号
-// 		res_bomdialogFormVisible.value = true
-// 		ddhformData.ddh = _orderid.value
-// 		ddhformData.kh = _kh.value
-// 		ddhformData.sckh = orderSearchdata.data[0].客户编号
-// 		ddhformData.ks = orderSearchdata.data[0].款式
-// 		const orderBomListlsit = await orderBomList({order:_orderid.value});
-// 		console.log(orderBomListlsit)
-// 		_TestCoefficient();
-// 	}
-// }
+//退还按钮
+const return_Dialog = async ()=>{
+	_orderid.value = add_searchInfo.value.split('-')[0]
+	if(_orderid.value === '' || _orderid.value === null){
+		ElMessage({type: 'warning',message: '请扫描订单后,再操作此功能'})
+	}else{
+		const orderSearchdata = await OutOrderSearch({search:_orderid.value});
+		console.log(orderSearchdata)
+		_kh.value = orderSearchdata.data[0].生产款号
+		res_bomdialogFormVisible.value = true
+		ddhformData.ddh = _orderid.value
+		ddhformData.kh = _kh.value
+		ddhformData.sckh = orderSearchdata.data[0].客户编号
+		ddhformData.ks = orderSearchdata.data[0].款式
+		const orderBomListlsit = await orderBomList({order:_orderid.value});
+		console.log(orderBomListlsit)
+		_TestCoefficient();
+	}
+}
 //bom数据获取
 const _TestCoefficient = async ()=>{
   try {

+ 54 - 48
src/view/performance/chukubaogong.vue

@@ -122,9 +122,7 @@
 					  <el-input v-model="mianliaotabData.出库数量" placeholder="" style="margin: 0; width: 100px;"/>
 				  </el-descriptions-item>
   
-				  <el-descriptions-item label="实际门幅">
-					  <el-input v-model="mianliaotabData.实际门幅" placeholder="" style="margin: 0; width: 100px	;"/>
-				  </el-descriptions-item>
+				  <el-descriptions-item label="实际门幅">{{ mianliaotabData.实际门幅 }}</el-descriptions-item>
   
 			  </el-descriptions>
 			  
@@ -277,6 +275,7 @@
 	  }, 100); // 延迟100毫秒
   }
   getMachineMacdata();
+ 
   
   //全局调用参数
   const danhao = ref('')
@@ -386,9 +385,9 @@
 	  // 将 Detailres.data 中的数据赋值给 mianliaotabData
 	  if (Detailres.code === 0 && Detailres.data) {
 		  mianliaotabData.value = {
-			  物料编号: Detailres.data.物料编号,
-			  物料名称: Detailres.data.物料名称,
-			  关联号: Detailres.data.关联号,
+            物料编号: Detailres.data.BOM_物料编码,
+            物料名称: Detailres.data.BOM_物料名称,
+			  关联号: Detailres.data.关联号,
 			  批次号: Detailres.data.批次号,
 			  计划用料: Detailres.data.计划用料,
 			  计划门幅: Detailres.data.BOM_计划门幅,
@@ -556,43 +555,54 @@
   
   // 确定
   const res_bomenterDialog = async () => {
-	  console.log(danjutableData);
-	  if(danjutableData.value[0]['出库数量'] === ''|| danjutableData.value[0]['出库数量'] === undefined){
-		  ElMessage({type: 'warning',message: '出库数量不能为空'})
-		  return
-	  }
-	  // 直接构造一个对象,不用 JSON 格式的索引
-	  const formattedData = {
-		  order_id: ddhformData.ddh,
-		  款号: ddhformData.sckh,
-		  物料编码: danjutableData.value[0]['物料编号'],
-		  物料名称: danjutableData.value[0]['物料名称'],
-		  number: danjutableData.value[0]['出库数量'],
-		  name: "出库",
-		  sys_id: userStore.userInfo.nickName,
-		  receipt_number: danhao.value,
-		  客户编号: ddhformData.kh,
-		  款式: ddhformData.ks,
-		  rq: currentDate,
-		  批次号: danjutableData.value[0]['批次号'],
-		  关联编号: danjutableData.value[0]['关联号'],
-		  实际门幅: danjutableData.value[0]['实际门幅'],
-	  };
-  
-	  console.log(formattedData);
-  
-	  // 异步调用输入数据的接口
-	  const add_outReport = await inputStash(formattedData);
-  
-	  // 根据返回的 code 进行提示
-	  if (add_outReport.code === 0) {
-		  res_bomdialogFormVisible.value = false;
-		  ElMessage({ type: 'success', message: '出库成功' });
-		  danjutableData.value.splice(0, danjutableData.value.length);
-	  } else {
-		  ElMessage({ type: 'error', message: '出库失败' });
-	  }
-  }
+  console.log(danjutableData);
+
+  // 检查是否有数据
+  if (danjutableData.value.length === 0) {
+    ElMessage({ type: 'warning', message: '没有可出库的数据' });
+    return;
+  }
+  // 检查每条数据的出库数量是否为空
+  for (const item of danjutableData.value) {
+    if (item['出库数量'] === '' || item['出库数量'] === undefined) {
+      ElMessage({ type: 'warning', message: '出库数量不能为空' });
+      return;
+    }
+  }
+  // 构造一个包含所有数据的数组
+  const formattedDataArray = danjutableData.value.map(item => ({
+    order_id: ddhformData.ddh,
+    款号: ddhformData.sckh,
+    物料编码: item['物料编号'],
+    物料名称: item['物料名称'],
+    number: item['出库数量'],
+    name: "出库",
+    sys_id: userStore.userInfo.nickName,
+    receipt_number: danhao.value,
+    客户编号: ddhformData.kh,
+    款式: ddhformData.ks,
+    rq: currentDate,
+    批次号: item['批次号'],
+    关联编号: item['关联号'],
+    实际门幅: item['实际门幅'],
+  }));
+  console.log(formattedDataArray);
+  try {
+    // 异步调用输入数据的接口
+    const add_outReport = await inputStash(formattedDataArray);
+    // 根据返回的 code 进行提示
+    if (add_outReport.code === 0) {
+      res_bomdialogFormVisible.value = false;
+      ElMessage({ type: 'success', message: '出库成功' });
+      danjutableData.value.splice(0, danjutableData.value.length); // 清空表格数据
+    } else {
+      ElMessage({ type: 'error', message: '出库失败' });
+    }
+  } catch (error) {
+    console.error('出库失败:', error);
+    ElMessage({ type: 'error', message: '出库失败' });
+  }
+};
   
   
   
@@ -639,16 +649,12 @@
   const records_onSubmit = async ()=>{
 	  thtableData.splice(0,thtableData.length);
 	  chukutableData.splice(0,chukutableData.length);
-	  if(records_searchInfo.value === ''){
-		  ElMessage({type: 'warning',message: '请先输入要查询的订单编号或款号'})
-		  return;
-	  }	
 	  const FabricDetaillists = await FabricDetaillist({order:records_searchInfo.value});
 	  console.log(FabricDetaillists)
 	  chukutableData.splice(0,FabricDetaillists.length,...FabricDetaillists.data['出库记录']);
 	  thtableData.splice(0,FabricDetaillists.length,...FabricDetaillists.data['退还记录']);
   }
-  
+  records_onSubmit();