Преглед на файлове

成品入仓新增修改优化

曹鹤洋 преди 1 година
родител
ревизия
9dfe70ffff
променени са 2 файла, в които са добавени 406 реда и са изтрити 290 реда
  1. 8 0
      src/api/jixiaoguanli/jitairibaobiao.js
  2. 398 290
      src/view/yunyin/shengchanguanli/chengpinrucang.vue

+ 8 - 0
src/api/jixiaoguanli/jitairibaobiao.js

@@ -565,6 +565,14 @@ export const  finishedadd= (data) => {
 	data
   })
 }
+//修改
+export const  finishedEdit= (data) => {
+  return service({
+    url:'/mes_server/finished_product_warehousing/edit',
+    method: 'post',
+	data
+  })
+}
 //各日统计
 export const  getDayList= (params) => {
   return service({

+ 398 - 290
src/view/yunyin/shengchanguanli/chengpinrucang.vue

@@ -14,20 +14,18 @@
         <el-main>
           <!-- 按钮区域 -->
           <div class="gva-table-box">
-            <div class="gva-btn-list">
-              <el-row :span="6">
-                <el-input v-model="positionvalue" placeholder="输入工单编号或产品名称" />
-              </el-row>
-              <el-button type="primary" :icon="Search" @click="onSearch">搜索</el-button>
-              <el-button type="primary" @click="onDel">删除</el-button>
-			  <el-button type="primary" @click="onSMB">入仓末板数据统计</el-button>
-			  <el-button type="primary" @click="onDay">各日统计</el-button>
-			  <el-button type="primary" @click="onAdd">新增</el-button>
+            <el-form-item>
+              <el-input v-model="positionvalue" placeholder="输入工单编号或产品名称" style="width: 180px;"/>
+              <el-button type="primary" class="search" icon="search" @click="onSearch"></el-button>
+              <el-button type="primary" class="bt" @click="onDel">删除</el-button>
+			  <el-button type="primary" class="bt" @click="onSMB">入仓末板数据统计</el-button>
+			  <el-button type="primary" class="bt" @click="onDay">各日统计</el-button>
+			  <el-button type="primary" class="bt" @click="onAdd">新增</el-button>
 			  
               <div style="margin-left: auto;">			
-                <el-button type="primary" :icon="Download" @click="exportExcel">导出到Excel</el-button>
+                <el-button type="primary" class="bt" icon="Download" @click="exportExcel">导出到Excel</el-button>
               </div>
-            </div>
+            </el-form-item>
             <!-- 数据展示 -->
             <el-table ref="multipleTable" style="width: 100%" tooltip-effect="dark" :data="tableData" row-key="ID" @row-click="Click"
               highlight-current-row="true" border @selection-change="handleSelectionChange" :show-overflow-tooltip="true" @row-dblclick="doubleClick">
@@ -70,156 +68,133 @@
           </div>
           <!-- 弹出框 -->
           <el-dialog v-model="dialogFormVisible" :before-close="closeDialog" :title="type === 'create' ? '添加' : '详情'"
-            destroy-on-close width="1200px">
+            destroy-on-close width="800px">
             <!-- <el-scrollbar height="500px"> -->
-            <el-form :model="formData" label-position="left" ref="elFormRef" :rules="rule">
+            <el-form :model="formData" label-position="right" label-width="75px" ref="elFormRef" :rules="rule">
 
-              <el-row :gutter="20">
-			 <el-col :span="4">
+              <el-row :gutter="24">
+			 <el-col :span="7">
 			   <el-form-item label="入仓类型" prop="id">
-				 <el-input v-model="formData.入仓类型" id="入仓类型"  @keydown="ent($event, '入仓备注', '入仓类型', '仓库编号')" :clearable="true" placeholder="" />
+				 <el-input v-model="formData.入仓类型" id="入仓类型"  @keydown="ent($event, '入仓备注', '入仓类型', '仓库编号')" :clearable="true" style="width: 120px;" />
 			   </el-form-item>
 			 </el-col>
-			 <el-col :span="6">
-			   <el-form-item label="仓库" prop="name">
-				 <el-row :gutter="20">
-				   <el-col :span="12">
-					 <el-input v-model="formData.仓库编号" id="仓库编号"  @keydown="ent($event, '入仓类型', '仓库编号', '仓库名称')"   :clearable="true" placeholder="ZT01733" />
-				   </el-col>   
-				   <el-col :span="12">
-					 <el-input v-model="formData.仓库名称" id="仓库名称"  @keydown="ent($event, '仓库编号', '仓库名称', '单据编号')" :clearable="true" placeholder="" />
-				   </el-col>  
-				 </el-row>
+			 <el-col :span="17">
+			   <el-form-item label="仓库" prop="name" label-width="40px">
+					 <el-input v-model="formData.仓库编号" id="仓库编号"  @keydown="ent($event, '入仓类型', '仓库编号', '仓库名称')"   :clearable="true" style="width: 120px;" />
+					 <el-input v-model="formData.仓库名称" id="仓库名称"  @keydown="ent($event, '仓库编号', '仓库名称', '单据编号')" :clearable="true" style="width: 120px;" />
 			   </el-form-item>
 			 </el-col>
 		   </el-row> 
 		   
 		   
-		   <el-row :gutter="20">
-			 <el-col :span="4">
+		   <el-row :gutter="24">
+			 <el-col :span="7">
 			   <el-form-item label="单据编号" prop="id">
-				 <el-input v-model="formData.jjcp_num"  id="单据编号"  @keydown="ent($event, '仓库名称', '单据编号', '工单编号')" :clearable="true" placeholder="" />
+				 <el-input v-model="formData.jjcp_num"  id="单据编号"  @keydown="ent($event, '仓库名称', '单据编号', '工单编号')" :clearable="true"  style="width: 120px;"  />
 			   </el-form-item>
 			 </el-col>
 		   </el-row> 
 		   
 		   
 		   
-		   <el-row :gutter="20">
-			 <el-col :span="4">
+		   <el-row :gutter="24">
+			 <el-col :span="7">
 			   <el-form-item label="工单编号" prop="id">
-				 <el-input v-model="formData.jjcp_gdbh" id="工单编号"  @keydown="ent($event, '单据编号', '工单编号', '印件号')" @keyup.enter.native="getGDsubmit" :clearable="true" placeholder="" />
+				 <el-input v-model="formData.jjcp_gdbh" id="工单编号"  @keydown="ent($event, '单据编号', '工单编号', '客户料号')" :clearable="true"  style="width: 120px;"  />
 			   </el-form-item>
 			 </el-col>
-			 <el-col :span="6">
-			   <el-form-item label="印件号" prop="name">
-				 <el-row :gutter="20">
-				   <el-col :span="12">
-					 <el-input v-model="formData.jjcp_yjno" id="印件号"  @keydown="ent($event, '工单编号', '印件号', '订单编号')" :clearable="true" placeholder="" />
-				   </el-col>  				
-				 </el-row>
+			 <el-col :span="5">
+			   <el-form-item label="印件号" prop="name" label-width="55px">
+					<el-input v-model="formData.jjcp_yjno" id="印件号" disabled :clearable="true"   style="width: 50px;" />
 			   </el-form-item>	   
 			 </el-col>
-			 <el-col :span="10">
+			 <el-col :span="12">
 			   <el-form-item label="订单编号" prop="name">
-				 <el-row :gutter="20">
-				   <el-col :span="20">
-					 <el-input v-model="formData.订单编号" id="订单编号"  @keydown="ent($event, '印件号', '订单编号', '印件编号')" :clearable="true" placeholder="" />
-				   </el-col>  				
-				 </el-row>
+					 <el-input v-model="formData.订单编号" id="订单编号" disabled :clearable="true"  style="width: 120px;"  />
 			   </el-form-item>
 			 </el-col>
 		   </el-row> 
 		   
-           <el-row :gutter="20">
-			 <el-col :span="4">
+           <el-row :gutter="24">
+			 <el-col :span="24">
 			   <el-form-item label="印件编号" prop="id">
-				 <el-input v-model="formData.jjcp_cpdh" id="印件编号"  @keydown="ent($event, '订单编号', '印件编号', 'jjcp_cpmc')" :clearable="true" placeholder="" />
+				 <el-input v-model="formData.jjcp_cpdh" id="印件编号" disabled :clearable="true"  style="width: 120px;"  />
+				<el-input v-model="formData.jjcp_cpmc"  id="jjcp_cpmc" disabled :clearable="true"  style="width: 500px; margin-left: 10px;" />
 			   </el-form-item>
 			 </el-col>
-			 <el-col :span="10">
-			 <el-input v-model="formData.jjcp_cpmc"  id="jjcp_cpmc"  @keydown="ent($event, '印件编号', 'jjcp_cpmc', '产品编号')" :clearable="true" placeholder="" />					   
-			 </el-col>
            </el-row> 
             
 			
-			<el-row :gutter="20">
-			 <el-col :span="4">
+			<el-row :gutter="24">
+			 <el-col :span="24">
 			   <el-form-item label="产品编号" prop="id">
-				 <el-input v-model="formData.成品编码" id="产品编号"  @keydown="ent($event, 'jjcp_cpmc', '产品编号', '成品名称')" @keyup.enter.native="getSLsubmit" :clearable="true" placeholder="" />
+				 <el-input v-model="formData.成品编码" id="产品编号" disabled :clearable="true"   style="width: 120px;" />
+					<el-input v-model="formData.成品名称" id="成品名称" disabled :clearable="true"   style="width: 500px; margin-left: 10px;" />
 			   </el-form-item>
 			 </el-col>
-			 <el-col :span="10">
-			 <el-input v-model="formData.成品名称" id="成品名称"  @keydown="ent($event, '产品编号', '成品名称', '客户料号')" :clearable="true" placeholder="" />					   
-			 </el-col>
 			</el-row> 
 
-            <el-row :gutter="20">
-			 <el-col :span="4">
+            <el-row :gutter="24">
+			 <el-col :span="7">
 			   <el-form-item label="客户料号" prop="id">
-				 <el-input v-model="formData.客户料号" id="客户料号"  @keydown="ent($event, '成品名称', '客户料号', '首末版')" :clearable="true" placeholder="" />
+				 <el-input v-model="formData.客户料号" id="客户料号"  @keydown="ent($event, '工单编号', '客户料号', '首末板')" :clearable="true"  style="width: 120px;" />
 			   </el-form-item>
 			 </el-col>
             </el-row> 
 			  
-			  <el-row :gutter="20">
-			   <el-col :span="4">
-			     <el-form-item label="首末版" prop="id">
-				 <el-select v-model="formData.jjcp_smb" placeholder="" style="width: 190px;" id="首末版"
-				            @keydown="ent($event, '客户料号', '首末版', '入仓时间')"
-				 >
-				   <el-option label="首 版" value="首 版"></el-option>
-				   <el-option label="末 板" value="末 板"></el-option>
-				   <el-option label="首末板" value="首末板"></el-option>
-				 </el-select>
-			  	 <!-- <el-input v-model="formData.jjcp_smb"  id="首末版"  @keydown="ent($event, '客户料号', '首末版', '入仓时间')" :clearable="true" placeholder="" /> -->
+			  <el-row :gutter="24">
+			   <el-col :span="7">
+			     <el-form-item label="首末板" prop="id">
+					 <el-input v-model="formData.jjcp_smb" id="首末板"  @keydown="ent($event, '客户料号', '首末板', '入仓时间')" :clearable="true"   style="width: 120px;" />
 			     </el-form-item>
 			   </el-col>
-			   <el-col :span="4">
-				   <el-form-item label="入仓时间" prop="id">
-			   <el-input v-model="formData.jjcp_sj"  id="入仓时间"  @keydown="ent($event, '首末版', '入仓时间', '入仓数量')" :clearable="true" placeholder="" />	
+			   <el-col :span="17">
+				    <el-form-item label="入仓时间" prop="id">
+						<el-date-picker v-model="formData.jjcp_sj" type="datetime"  format="YYYY/MM/DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss"id="入仓时间"   @keydown="ent($event, '首末板', '入仓时间', '入仓数量')"  style="width: 200px;"/>
+						
+						<!-- <el-input type="datetime" v-model="formData.jjcp_sj"  id="入仓时间"   @keydown="ent($event, '首末板', '入仓时间', '入仓数量')" :clearable="true" style="width: 120px;" />	 -->
 					</el-form-item>
 			   </el-col>
 			  </el-row> 
 			  
 			  
-			  <el-row :gutter="20">
-			   <el-col :span="4">
+			  <el-row :gutter="24">
+			   <el-col :span="7">
 			     <el-form-item label="入仓数量" prop="id">
-			  	 <el-input v-model="formData.jjcp_sl" id="入仓数量"  @keydown="ent($event, '入仓时间', '入仓数量', '入仓单位')" :clearable="true" placeholder="" />
+			  	 <el-input v-model="formData.jjcp_sl" id="入仓数量"  @keydown="ent($event, '入仓时间', '入仓数量', '入仓单位')" :clearable="true" style="width: 120px;" />
 			     </el-form-item>
 			   </el-col>
-			   <el-col :span="4">
+			   <el-col :span="17">
 			  	<el-form-item label="入仓单位" prop="id">
-			   <el-input v-model="formData.jjcp_dw" id="入仓单位"  @keydown="ent($event, '入仓数量', '入仓单位', '订单数量')" :clearable="true" placeholder="" />	
+			   <el-input v-model="formData.jjcp_dw" id="入仓单位"  @keydown="ent($event, '入仓数量', '入仓单位', '订单数量')" :clearable="true" style="width: 120px;" />	
 			    </el-form-item>
 			   </el-col>
 			  </el-row> 
 			  
 			  
-			  <el-row :gutter="20">
-			   <el-col :span="4">
+			  <el-row :gutter="24">
+			   <el-col :span="7">
 			     <el-form-item label="订单数量" prop="id">
-			  	 <el-input v-model="formData.订单数量" id="订单数量"  @keydown="ent($event, '入仓单位', '订单数量', '已完工')" :clearable="true" placeholder="" />
+			  	 <el-input v-model="formData.订单数量" id="订单数量" @blur="" @keydown="ent($event, '入仓单位', '订单数量', '已完工')" :clearable="true" style="width: 120px;" />
 			     </el-form-item>
 			   </el-col>
-			   <el-col :span="4">
+			   <el-col :span="7">
 			  	<el-form-item label="已完工" prop="id">
-			   <el-input v-model="formData.jjcp_sls" id="已完工"  @keydown="ent($event, '订单数量', '已完工', '机型备注')" :clearable="true" placeholder="" />	
+			   <el-input v-model="formData.jjcp_sls" id="已完工"  @keydown="ent($event, '订单数量', '已完工', '机型备注')" :clearable="true" style="width: 120px;" />	
 			    </el-form-item>
 			   </el-col>
-			   <el-col :span="4">
+			   <el-col :span="8">
 			   			  	<el-form-item label="机型备注" prop="id">
-			   <el-input v-model="formData.机型备注" id="机型备注"  @keydown="ent($event, '已完工', '机型备注', '入仓备注')" :clearable="true" placeholder="" />	
+			   <el-input v-model="formData.机型备注" id="机型备注"  @keydown="ent($event, '已完工', '机型备注', '入仓备注')" :clearable="true"  style="width: 300px;"/>	
 			    </el-form-item>
 			   </el-col>
 			  </el-row> 
 			  
 			  
-			  <el-row :gutter="20">
-				 <el-col :span="4">
+			  <el-row :gutter="24">
+				 <el-col :span="22">
 				   <el-form-item label="入仓备注" prop="id">
-					 <el-input v-model="formData.jjcp_desc"  id="入仓备注"  @keydown="ent($event, '机型备注', '入仓备注', '入仓类型')":clearable="true" placeholder="" />
+					 <el-input v-model="formData.jjcp_desc"  id="入仓备注"  @keydown="ent($event, '机型备注', '入仓备注', '入仓类型')":clearable="true"  />
 				   </el-form-item>
 				 </el-col>
 			  </el-row> 
@@ -235,101 +210,53 @@
           </el-dialog>
 
 
-
-          <el-dialog
-            v-model="CKVisible"
-            title="选择"
-            destroy-on-close
-            width="600px"
-			@keydown="selectCK($event)"
-          			>
-            <el-table
-              tooltip-effect="dark"
-              :data="CKselectData"
-              row-key="ID"
-              highlight-current-row="true"
-              border
-              style="width:100%"
+		<!-- 仓库编号选择 -->
+          <el-dialog v-model="CKVisible" title="选择"
+            destroy-on-close width="600px" @keydown="selectCK($event)" >
+            <el-table tooltip-effect="dark"
+              :data="CKselectData" row-key="ID"
+              highlight-current-row="true" border style="width:100%"
               @row-dblclick="CKSelectClick"
 			  ref="table2"
             >
-              <el-table-column
-                prop="编号"
-                label="编号"
-                width="200"
-              />
-			  <el-table-column
-				prop="名称"
-				label="名称"
-				width="200"
-			  />		      	 
+              <el-table-column prop="编号" label="编号" width="200" />
+			  <el-table-column prop="名称" label="名称" width="200" />		      	 
             </el-table>
-          </el-dialog>
-		  
+          </el-dialog>
 		  
+		  <!-- 入仓类型选择 -->
+		  <el-dialog v-model="RCVisible" title="选择"
+		    destroy-on-close width="400px" @keydown="selectRC($event)" >
+		    <el-table tooltip-effect="dark"
+		      :data="RCselectData" row-key="ID"
+		      highlight-current-row="true" border style="width:100%"
+		      @row-dblclick="RCSelectClick"
+		  			  ref="tableRC"
+		    >
+		      <el-table-column prop="入仓类型" label="入仓类型" width="360" />		      	 
+		    </el-table>
+		  </el-dialog>
+		  
+		  <!-- 首末板选择 -->
+		  <el-dialog v-model="SMBVisible" title="选择"
+		    destroy-on-close width="200px" @keydown="selectSMB($event)" >
+		    <el-table tooltip-effect="dark" :data="SMBselectData" row-key="ID"
+		      highlight-current-row="true" border style="width:100%"
+		      :row-style="{ height: '30px' }"
+		      @row-dblclick="SMBSelectClick"
+		  			  ref="tableSMB"
+		    >
+		      <el-table-column prop="jjcp_smb" label="" width="160" />		      	 
+		    </el-table>
+		  </el-dialog>
 		  
-		  <el-dialog
-		    v-model="GDVisible"
-		    title="选择"
-		    destroy-on-close
-		    width="600px"
-			@keydown="selectGD($event)"
-		  			>
-		    <el-table
-		      tooltip-effect="dark"
-		      :data="GDselectData"
-		      row-key="ID"
-		      highlight-current-row="true"
-		      border
-		      style="width:100%"
-		      @row-dblclick="GDSelectClick"
+		  <el-dialog v-model="GDVisible" title="选择" destroy-on-close width="600px" @keydown="selectGD($event)" >
+		    <el-table tooltip-effect="dark" :data="GDselectData"
+		      row-key="ID" highlight-current-row="true" border
+		      style="width:100%" @row-dblclick="GDSelectClick"
 			  ref="table3"
 		    >
-			<el-table-column
-			  prop="gdyj"
-			  label="工单印件"
-			  width="600"
-			/>
-		      <el-table-column
-		        prop="Gd_gdbh"
-		        label="工单编号"
-		        width="200"
-		      />
-			  <el-table-column
-				prop="yj_yjno"
-				label="印件号"
-				width="200"
-			  />
-			  <el-table-column
-			    prop="销售订单号"
-			    label="销售订单号"
-			    width="200"
-			  />
-			  <el-table-column
-				prop="yj_Yjdh"
-				label="印件编码"
-				width="200"
-			  />
-			  <el-table-column
-			    prop="yj_yjmc"
-			    label="印件名称"
-			    width="200"
-			  />
-			  <el-table-column
-				prop="成品代号"
-				label="成品代号"
-				width="200"
-			  />
-			  <el-table-column
-			    prop="成品名称"
-			    label="成品名称"
-			    width="200"
-			  />
-			  <el-table-column
-				prop="客户料号"
-				label="客户料号"
-				width="200"
-			  />
+			<el-table-column prop="gdyj" label="工单印件" width="560" />
 		    </el-table>
 		  </el-dialog>
 		  
@@ -483,7 +410,8 @@ import {
   finisheddel,
   getDayList,
   mbList,
-  finishedadd
+  finishedadd,
+  finishedEdit
 } from '@/api/jixiaoguanli/jitairibaobiao'
 
 // 全量引入格式化工具 请按需保留
@@ -524,14 +452,64 @@ const getTabdata = async () => {
 
 	
 	}
-	
+	const rqHandleFocus = () =>{
+		if(formData.value.jjcp_sj==''){
+			formData.value.jjcp_sj = new Date(new Date().getTime() + 8 * 60 * 60 * 1000).toISOString().slice(0, 19).replace('T', ' ');
+			
+		}
+	}
 
 getTabdata();
 
 // 自动化生成的字典(可能为空)以及字段
-const formData = ref({
+const formData = ref({
+	入仓类型: "",
+	仓库编号: "",
+	仓库名称: "",
+	jjcp_num: "",
+	jjcp_gdbh: "",
+	jjcp_yjno: "",
+	订单编号: "",
+	jjcp_cpdh: "",
+	jjcp_cpmc: "",
+	成品编码: "",
+	成品名称: "",
+	客户料号: "",
+	jjcp_smb: "",
+	jjcp_sj: "",
+	jjcp_sl: "",
+	jjcp_dw: "",
+	订单数量: "",
+	jjcp_sls: "",
+	机型备注: "",
+	jjcp_desc: "",
+	
 })
-
+
+const initFormData = () => {
+	formData.value = {
+		入仓类型: "",
+		仓库编号: "",
+		仓库名称: "",
+		jjcp_num: "",
+		jjcp_gdbh: "",
+		jjcp_yjno: "",
+		订单编号: "",
+		jjcp_cpdh: "",
+		jjcp_cpmc: "",
+		成品编码: "",
+		成品名称: "",
+		客户料号: "",
+		jjcp_smb: "",
+		jjcp_sj: "",
+		jjcp_sl: "",
+		jjcp_dw: "",
+		订单数量: "",
+		jjcp_sls: "",
+		机型备注: "",
+		jjcp_desc: "",
+	}
+}
 // 验证规则
 const rule = reactive({
 })
@@ -614,12 +592,11 @@ function onSearch() {
 const ADD=ref('0')
 //新增
 function onAdd() {
-	 GetInfo(lastCellValue)
-	ADD.value='新增'
+	// GetInfo(lastCellValue)
+	initFormData()
+	formData.value.jjcp_sj = new Date(new Date().getTime() + 8 * 60 * 60 * 1000).toISOString().slice(0, 19).replace('T', ' ');
 	type.value='create'
-	console.log(ADD.value)
 	dialogFormVisible.value = true
-	// Productionadd()
 }
 //删除
 function onDel() {
@@ -684,7 +661,60 @@ const GetmachineLocate = async () => {
 	  total.value = response.data.total
     tableData.splice(0, tableData.length, ...processedData);
   }
+}
+
+//入仓类型回车事件
+const getRCsubmit = (event) => {
+	GetRC()
+}
+const RCVisible = ref(false)
+const RCselectData = reactive([])
+//获取仓库信息
+const GetRC = async () => {
+  const data = [{'入仓类型':'产品入库'},{'入仓类型':'委外入库'},{'入仓类型':'采购入库'}]
+  RCselectData.splice(0, RCselectData.length, ...data)
+  setRCCurrent(RCselectData[0])
+  RCVisible.value=true
 }
+//选择
+const RCSelectClick = (row, column, event) => {
+  const { 入仓类型 } = row
+  formData.value.入仓类型=入仓类型
+  RCVisible.value = false
+}
+const tableRC=ref()
+const setRCCurrent = (row) => {
+  setTimeout(()=>{
+	  tableRC.value?.setCurrentRow(row) 
+	  const { 入仓类型 } = row
+	  formData.value.入仓类型=入仓类型
+  })
+}
+const RCIndex = ref(0);
+const RCCurrent = ref(0);
+const selectRC = (event) => {
+    if (event.keyCode === 40) { // 向下箭头
+        if (RCIndex.value < RCselectData.length - 1) {
+            RCIndex.value++;
+            setRCCurrent(RCselectData[RCIndex.value]);
+        } else {
+            RCIndex.value = 0;
+            setRCCurrent(RCselectData[RCIndex.value]); // 到达最后一行时回到第一行			
+        }
+    } else if (event.keyCode === 38) { // 向上箭头
+        if (RCIndex.value > 0) {
+            RCIndex.value--;
+            setRCCurrent(RCselectData[RCIndex.value]);
+        } else {
+            RCIndex.value = RCselectData.length - 1;
+            setRCCurrent(RCselectData[RCIndex.value]); // 到达第一行时回到最后一行
+        }
+    } else if (event.keyCode === 13) { // 回车键
+        RCVisible.value = false
+    }
+}
+
+
 //仓库编号回车事件
 const getCKsubmit = (event) => {
 	GetCK()
@@ -694,7 +724,6 @@ const CKselectData = reactive([])
 //获取仓库信息
 const GetCK = async () => {
   const response = await finishedgetCk();
-  console.log(response) 
   if (response.code === 0) {
   CKselectData.splice(0, CKselectData.length, ...response.data)
   setCKCurrent(CKselectData[0])
@@ -742,16 +771,18 @@ const selectCK = (event) => {
 }
   
 //工单编号回车事件
-const getGDsubmit = (event) => {
+const getGDsubmit = (event) => {
+	if(formData.value.jjcp_gdbh==''){
+		ElMessage({type: 'warning',message: '请填写工单编号'});
+		return
+	}
 	GetGD()
 }
 const GDVisible = ref(false)
 const GDselectData = reactive([])
 //获取工单信息
 const GetGD = async () => {
-	console.log(formData.value.jjcp_gdbh)
   const response = await finishedgetGd({gdbh:formData.value.jjcp_gdbh});
-  console.log(response) 
   if (response.code === 0) {
   GDselectData.splice(0, GDselectData.length, ...response.data)
   setGDCurrent(GDselectData[0])
@@ -759,7 +790,8 @@ const GetGD = async () => {
   }
 }
 //选择
-const GDSelectClick = (row, column, event) => {
+const GDSelectClick = (row, column, event) => {
+	console.log(111)
   const { Gd_gdbh,yj_yjno,销售订单号,yj_Yjdh,yj_yjmc,成品代号,成品名称,客户料号,gdyj } = row
   formData.value.jjcp_gdbh=Gd_gdbh
   formData.value.jjcp_yjno=yj_yjno
@@ -768,14 +800,20 @@ const GDSelectClick = (row, column, event) => {
   formData.value.jjcp_cpmc=yj_yjmc
   formData.value.成品编码=成品代号
   formData.value.成品名称=成品名称
-  formData.value.客户料号=客户料号
+  formData.value.客户料号=客户料号
+  finishedgetGdsl({gdbh:formData.value.jjcp_gdbh,cpdh:formData.value.jjcp_cpdh}).then(res =>{
+	  if (res.code === 0) {
+		  formData.value.订单数量 = res.data.订单数量
+		  formData.value.jjcp_sls = res.data.jjcp_sls
+	   }
+  });
   GDVisible.value = false
 }
 const table3=ref()
 const setGDCurrent = (row) => {
   setTimeout(()=>{
 	  table3.value?.setCurrentRow(row) 
-	  
+	  console.log(222)
 	  const { Gd_gdbh,yj_yjno,销售订单号,yj_Yjdh,yj_yjmc,成品代号,成品名称,客户料号,gdyj } = row
 	  formData.value.jjcp_gdbh=Gd_gdbh
 	  formData.value.jjcp_yjno=yj_yjno
@@ -784,7 +822,13 @@ const setGDCurrent = (row) => {
 	  formData.value.jjcp_cpmc=yj_yjmc
 	  formData.value.成品编码=成品代号
 	  formData.value.成品名称=成品名称
-	  formData.value.客户料号=客户料号	  
+	  formData.value.客户料号=客户料号	
+		finishedgetGdsl({gdbh:formData.value.jjcp_gdbh,cpdh:formData.value.jjcp_cpdh}).then(res =>{
+			  if (res.code === 0) {
+				  formData.value.订单数量 = res.data.订单数量
+				  formData.value.jjcp_sls = res.data.jjcp_sls
+			   }
+		});
   })
 }
 const GDIndex = ref(0);
@@ -810,20 +854,75 @@ const selectGD = (event) => {
     }
 }
 
-//产品编号回车事件
+//获取订单资料
 const getSLsubmit = (event) => {
 	GetSL()
 }
 //获取工单数量信息
 const GetSL = async () => {
-	console.log(formData.value.jjcp_gdbh)
+	if(formData.value.jjcp_cpdh){
+		
+	}
   const response = await finishedgetGdsl({gdbh:formData.value.jjcp_gdbh,cpdh:formData.value.jjcp_cpdh});
   console.log(response) 
   if (response.code === 0) {
  formData.value.订单数量=response.data.订单数量
  formData.value.jjcp_sls=response.data.jjcp_sls
   }
+}
+
+//入仓类型回车事件
+const getSMBsubmit = (event) => {
+	GetSMB()
+}
+const SMBVisible = ref(false)
+const SMBselectData = reactive([])
+//获取仓库信息
+const GetSMB = async () => {
+  const data = [{'jjcp_smb':''},{'jjcp_smb':'首 板'},{'jjcp_smb':'末 板'},{'jjcp_smb':'首末板'}]
+  SMBselectData.splice(0, SMBselectData.length, ...data)
+  setSMBCurrent(SMBselectData[0])
+  SMBVisible.value=true
 }
+//选择
+const SMBSelectClick = (row, column, event) => {
+  const { jjcp_smb } = row
+  formData.value.jjcp_smb=jjcp_smb
+  SMBVisible.value = false
+}
+const tableSMB=ref()
+const setSMBCurrent = (row) => {
+  setTimeout(()=>{
+	  tableSMB.value?.setCurrentRow(row) 
+	  const { jjcp_smb } = row
+	  formData.value.jjcp_smb=jjcp_smb
+  })
+}
+const SMBIndex = ref(0);
+const SMBCurrent = ref(0);
+const selectSMB = (event) => {
+    if (event.keyCode === 40) { // 向下箭头
+        if (SMBIndex.value < SMBselectData.length - 1) {
+            SMBIndex.value++;
+            setSMBCurrent(SMBselectData[SMBIndex.value]);
+        } else {
+            SMBIndex.value = 0;
+            setSMBCurrent(SMBselectData[SMBIndex.value]); // 到达最后一行时回到第一行			
+        }
+    } else if (event.keyCode === 38) { // 向上箭头
+        if (SMBIndex.value > 0) {
+            SMBIndex.value--;
+            setSMBCurrent(SMBselectData[SMBIndex.value]);
+        } else {
+            SMBIndex.value = SMBselectData.length - 1;
+            setSMBCurrent(SMBselectData[SMBIndex.value]); // 到达第一行时回到最后一行
+        }
+    } else if (event.keyCode === 13) { // 回车键
+        SMBVisible.value = false
+    }
+}
+
+
 // ============== 表格控制部分结束 ===============
 
 // 获取需要的字典 可能为空 按需保留
@@ -916,105 +1015,92 @@ const closeDialog = () => {
   }
 }
 // 弹窗确定
-const enterDialog = async () => {
-  // elFormRef.value?.validate(async (valid) => {
-  //   if (!valid) return
-  //   let res
-  //   switch (type.value) {
-  //     case 'create':
-  //       res = await createCompany(formData.value)
-  //       break
-  //     case 'update':
-  //       res = await updateCompany(formData.value)
-  //       break
-  //     default:
-  //       res = await createCompany(formData.value)
-  //       break
-  //   }
-  //   if (res.code === 0) {
-  //     ElMessage({
-  //       type: 'success',
-  //       message: '创建/更改成功'
-  //     })
-  //     closeDialog()
-  //     getTableData()
-  //   }
-  // })
-  // dialogFormVisible.value=false
-  updateDetailData()
-}
-// 更新数据
-const updateDetailData = async() => {
-  const restoredData = {
-   UniqId: lastCellValue, 
-   Sys_id:sys_id,
-   入仓类型:formData.value.入仓类型,
-   仓库编号:formData.value.仓库编号,
-   仓库名称:formData.value.仓库名称,
-   jjcp_num:formData.value.jjcp_num,
-   jjcp_gdbh:formData.value.jjcp_gdbh,
-   jjcp_yjno:formData.value.jjcp_yjno,
-   订单编号:formData.value.订单编号,
-   jjcp_cpdh:formData.value.jjcp_cpdh,
-   jjcp_cpmc:formData.value.jjcp_cpmc,
-   成品编码:formData.value.成品编码,
-   成品名称:formData.value.成品名称,
-   客户料号:formData.value.客户料号,
-   jjcp_smb:formData.value.jjcp_smb,
-   jjcp_sj:formData.value.jjcp_sj,
-   jjcp_sl:formData.value.jjcp_sl,
-   jjcp_dw:formData.value.jjcp_dw,
-   机型备注:formData.value.机型备注,
-   jjcp_desc:formData.value.jjcp_desc,
-  }
-  if(ADD.value=='新增'){
-  	 // console.log('新增')
-  	 console.log('新增')
-  	 console.log(ADD.value)
-  	 console.log(restoredData)
-  	 const response = await finishedadd(restoredData);
-  	 // ADD.value='1'
-  	 // console.log(ADD.value)
-  	 // ADD.value='0'
-  	 console.log(response)
-	 if(response.code==0){
-	 		 ElMessage({
-	 		   type: 'success',
-	 		   message: '新增成功',
-	 		 })
-	 }
-	 dialogFormVisible.value = false
-	 getTableData()
-  	 
-  }else{
-  	  // const response = await productionedit(restoredData);
-  	  console.log('修改')
-  	  console.log(ADD.value)
-  	  // console.log(response)
-  	 // ADD.value='0'
-  	 // console.log(ADD.value)
-  }
- //   console.log(restoredData)
- //    console.log(lastCellValue)
- //    formData.value.UniqId=lastCellValue
- //    console.log(formData)
-	// restoredData.UniqId='5'
-  
-  // console.log(FormData)
-  // console.log(response)
+const enterDialog = async () => {
+	if(formData.value.入仓类型==''){
+		ElMessage({type: 'warning',message: '请选择入仓类型'});
+		return;
+	}
+	if(formData.value.仓库编号==''){
+		ElMessage({type: 'warning',message: '请选择仓库'});
+		return;
+	}
+	if(formData.value.jjcp_gdbh==''){
+		ElMessage({type: 'warning',message: '请填写工单编号'});
+		return;
+	}
+	if(formData.value.jjcp_cpdh==''){
+		ElMessage({type: 'warning',message: '请选择印件'});
+		return;
+	}
+	if(formData.value.jjcp_sl==''){
+		ElMessage({type: 'warning',message: '请填写入仓数量'});
+		return;
+	}
+	
+	const restoredData = {
+		 Sys_id:sys_id,
+		 入仓类型:formData.value.入仓类型,
+		 仓库编号:formData.value.仓库编号,
+		 仓库名称:formData.value.仓库名称,
+		 jjcp_num:formData.value.jjcp_num,
+		 jjcp_gdbh:formData.value.jjcp_gdbh,
+		 jjcp_yjno:formData.value.jjcp_yjno,
+		 订单编号:formData.value.订单编号,
+		 jjcp_cpdh:formData.value.jjcp_cpdh,
+		 jjcp_cpmc:formData.value.jjcp_cpmc,
+		 成品编码:formData.value.成品编码,
+		 成品名称:formData.value.成品名称,
+		 客户料号:formData.value.客户料号,
+		 jjcp_smb:formData.value.jjcp_smb,
+		 jjcp_sj:formData.value.jjcp_sj,
+		 jjcp_sl:formData.value.jjcp_sl,
+		 jjcp_dw:formData.value.jjcp_dw,
+		 机型备注:formData.value.机型备注,
+		 jjcp_desc:formData.value.jjcp_desc,
+	}
+	console.log(lastCellValue)
+    let res
+    switch (type.value) {
+      case 'create':
+        res = await finishedadd(restoredData)
+        break
+      case 'update':
+		restoredData.UniqId = lastCellValue;
+        res = await finishedEdit(restoredData)
+        break
+      default:
+        // res = await createCompany(formData.value)
+        break
+    }
+    if (res.code === 0) {
+      ElMessage({
+        type: 'success',
+        message: '创建/更改成功'
+      })
+      closeDialog()
+      getTableData()
+    }
+  dialogFormVisible.value=false
 }
+
 //键盘 input框跳转
 const ent = (event,id1,id2,id3) => {
 
   if (event.keyCode === 13 || event.keyCode === 40) { // Enter 或向下箭头
-    if(id2=='仓库编号'&&event.keyCode === 13){
+    if(id2=='入仓类型'){
+    	getRCsubmit()
+    }
+	if(id2=='仓库编号'){
 		getCKsubmit()
-		// document.getElementById(id3).focus()
-	}if(id2=='工单编号'&&event.keyCode === 13){
+	}
+	if(id2=='工单编号'){
 		getGDsubmit()
-	}if(id2=='产品编号'&&event.keyCode === 13){
-		getSLsubmit()
-	}else if(id3!=''){
+	}
+	if(id2=='首末板'){
+		console.log(1111)
+		getSMBsubmit()
+	}
+	if(id3!=''){
       document.getElementById(id3).focus()
     }
   } else if (event.keyCode === 38) { // 向上箭头
@@ -1042,12 +1128,9 @@ let lastCellValue=ref()
 function doubleClick(row, column, event) {
   type.value = 'update';
 	  lastCellValue= row['UniqId'];
-	 console.log(lastCellValue)
 	table.value=lastCellValue
 	 dialogFormVisible.value = true
-  		// dialogSelectVisible.value = true
   GetInfo(table.value)
-  // dialogFormVisible.value = true
 }
 // 单击表格操作
 function Click(row, column, event) {
@@ -1058,7 +1141,6 @@ function Click(row, column, event) {
 //获取详细信息
 const GetInfo = async (value) => {
   const response = await finishedInfo({UniqId:value});
-  console.log(response) 
   if (response.code === 0) {
 	formData.value=response.data;
   }
@@ -1107,4 +1189,30 @@ onMounted(async () => {
   background: #ff80ff !important;
   /* 背景颜色 */
 }
+</style>
+<style scoped>
+:deep(.el-table td .cell) {
+  line-height: 20px !important;
+}
+:deep(.el-tabs__header){
+  margin-bottom: 0;
+}
+.search{
+  margin-left: 0px !important;
+  margin-right: 10px !important;
+}
+.bt{
+  margin-left: 5px !important;
+  padding: 5px !important;
+  font-size: 15px;
+}
+.el-tabs__header{
+  margin: 0px !important;
+}
+.gva-table-box{
+  padding: 0px !important;
+}
+.mab{
+  margin-bottom: 5px;
+}
 </style>