Bladeren bron

非二级方向键移动

Lexie 1 jaar geleden
bovenliggende
commit
ce52220b4b

+ 37 - 1
src/view/performance/06-packingDocuments/index.vue

@@ -261,6 +261,7 @@
             title="选择"
             destroy-on-close
             width="600px"
+			@keydown="selectCP($event)"
           >
             <el-table
               tooltip-effect="dark"
@@ -270,6 +271,7 @@
               border
               style="width:100%"
               @row-dblclick="handleSelectClick"
+			  ref="table2"
             >
               <el-table-column
                 prop="Gd_cpmc"
@@ -641,6 +643,7 @@ const getTableGxMc = async(index, row) => {
         detailData.table[index].sczl_gxmc = Gy0_gxmc
       } else {
         selectData.splice(0, selectData.length, ...response.data)
+		setCPCurrent(selectData[0])
         detailData.selectIndex = index
         dialogSelectVisible.value = true
       }
@@ -764,7 +767,40 @@ const handleSelectClick = (row, column, event) => {
   detailData.table[index].sczl_gxmc = Gy0_gxmc
   dialogSelectVisible.value = false
 }
-
+const table2=ref()
+const setCPCurrent = (row) => {
+  setTimeout(()=>{
+	  table2.value?.setCurrentRow(row) 
+	  const { Gd_cpmc, Gy0_gxmc, jyGx } = row
+	  const index = detailData.selectIndex
+	  detailData.table[index].Gd_cpmc = Gd_cpmc
+	  detailData.table[index].sczl_yjGx = jyGx
+	  detailData.table[index].sczl_gxmc = Gy0_gxmc
+  })
+}
+const CPIndex = ref(0);
+const JYCurrent = ref(0);
+const selectCP = (event) => {
+    if (event.keyCode === 40) { // 向下箭头
+        if (CPIndex.value < selectData.length - 1) {
+            CPIndex.value++;
+            setCPCurrent(selectData[CPIndex.value]);
+        } else {
+            CPIndex.value = 0;
+            setCPCurrent(selectData[CPIndex.value]); // 到达最后一行时回到第一行			
+        }
+    } else if (event.keyCode === 38) { // 向上箭头
+        if (CPIndex.value > 0) {
+            CPIndex.value--;
+            setCPCurrent(selectData[CPIndex.value]);
+        } else {
+            CPIndex.value = selectData.length - 1;
+            setCPCurrent(selectData[CPIndex.value]); // 到达第一行时回到最后一行
+        }
+    } else if (event.keyCode === 13) { // 回车键
+        dialogSelectVisible.value = false
+    }
+}
 // 弹窗确定
 const enterDialog = () => {
   if (type.value === '查改') {

+ 18 - 2
src/view/performance/07-otherDocuments/index.vue

@@ -249,8 +249,9 @@
             :before-close="()=>{dialogGylc = false}"
             title="工艺流程"
             destroy-on-close
+			@keydown="selectGX($event)"
           >
-
+		  
             <el-scrollbar
               style="height: 50vh;width: 50vw;"
             >
@@ -259,8 +260,18 @@
                 highlight-current
                 style="width: 90%;"
                 @node-click="handleSelectGylc"
+				node-key="id"
               />
             </el-scrollbar>
+			
+			<!-- <el-table tooltip-effect="dark" :data="selectData" row-key="ID"
+			  highlight-current-row="true" border style="width:100%"
+			  @row-dblclick="handleSelectClick" ref="table2" >
+			  <el-table-column prop="Gd_cpmc" label="印件名称" width="450" />
+						<el-table-column prop="jyGx" label="检验工序" width="85" />
+			  <el-table-column prop="Gy0_gxmc" label="工序名称" width="225" />			 
+			</el-table> -->
+			
           </el-dialog>
 
         </div>
@@ -463,6 +474,8 @@ const leftData = ref(0)
 const rightData = ref(0)
 const dedhTreeData = ref()
 const gylcTreeData = ref()
+const selectData = reactive([])
+
 
 // 弹窗控制标记
 const dialogFormVisible = ref(false)
@@ -508,9 +521,10 @@ const handleGdbhEnter = async() => {
 const handleGylcEnter = async() => {
   const res = await getGxMc({ gdbh: detailData.sczl_gdbh, keyword: '' })
   if (res.code === 0) {
+	
     const ret = res.data.map(item => ({
       ...item,
-      label: item['jyGx'],
+      label: item['jyGx'],	  
     }))
     gylcTreeData.value = ret
     dialogGylc.value = true
@@ -518,6 +532,8 @@ const handleGylcEnter = async() => {
 }
 
 const handleSelectGylc = (node, check) => {
+   console.log(node.key)
+   console.log(check)
   detailData.Sczl_gxmc = node['jyGx']
   detailData.sczl_gxh = node['Gy0_gxh']
   dialogGylc.value = false

+ 41 - 1
src/view/performance/09-workOrderVerification/index.vue

@@ -399,6 +399,7 @@
             title="选择"
             destroy-on-close
             width="800px"
+			@keydown="selectSL($event)"
           >
             <el-table
               tooltip-effect="dark"
@@ -408,6 +409,7 @@
               border
               style="width:100%"
               @row-dblclick="handleSelectClick"
+			  ref="table2"
             >
               <el-table-column
                 v-for=" column in selectColumns "
@@ -816,6 +818,7 @@ const handleFpslEnter = async(index, row) => {
   }
   selectIndex = index
   Object.assign(selectData, res.data)
+  setCurrent(selectData[0])
   dialogSelectVisible2.value = true
 }
 
@@ -835,7 +838,44 @@ const handleSelectClick = (row, column, event) => {
   detailData.table[index].fp_name = name
   dialogSelectVisible2.value = false
 }
-
+const table2 = ref()
+const setCurrent = (row) => {
+  setTimeout(()=>{
+	  table2.value?.setCurrentRow(row)
+	  // SelectClick(row)
+	  // console.log(row)
+	  // console.log(table)
+	  const { sczl_gxmc, sczl_bzdh, sczl_bh1, name } = row
+	  const index = selectIndex
+	  detailData.table[index].fp_gxmc = sczl_gxmc
+	  detailData.table[index].fp_bz = sczl_bzdh
+	  detailData.table[index].fp_bh = sczl_bh1
+	  detailData.table[index].fp_name = name
+  })
+}
+const SLIndex = ref(0);
+const JYCurrent = ref(0);
+const selectSL = (event) => {
+    if (event.keyCode === 40) { // 向下箭头
+        if (SLIndex.value < selectData.length - 1) {
+            SLIndex.value++;
+            setCurrent(selectData[SLIndex.value]);
+        } else {
+            SLIndex.value = 0;
+            setCurrent(selectData[SLIndex.value]); // 到达最后一行时回到第一行			
+        }
+    } else if (event.keyCode === 38) { // 向上箭头
+        if (SLIndex.value > 0) {
+            SLIndex.value--;
+            setCurrent(selectData[SLIndex.value]);
+        } else {
+            SLIndex.value = selectData.length - 1;
+            setCurrent(selectData[SLIndex.value]); // 到达第一行时回到最后一行
+        }
+    } else if (event.keyCode === 13) { // 回车键
+        dialogSelectVisible2.value = false
+    }
+}
 // 弹窗确定
 const enterDialog = async() => {
   if (type.value === '查改') {

+ 20 - 18
src/view/performance/Dayreports.vue

@@ -819,20 +819,20 @@ const ent1 = (event) => {
   
   if (event.keyCode === 13 || event.keyCode === 40) { // Enter 或向下箭头
     for (let i = currentIndex + 1; i < inputs.length; i++) {
-      if (!inputs[i].readOnly) {
-		  nextTick(()=>{
-			  inputs[i].focus();
-			  inputs[i].select();
-		  })
+      if (!inputs[i].readOnly) {
+        nextTick(()=>{
+          inputs[i].focus();
+          inputs[i].select();
+        })
         break;
       }
     }
   } else if (event.keyCode === 38) { // 向上箭头
     for (let i = currentIndex - 1; i >= 0; i--) {
       if (!inputs[i].readOnly) {
-        nextTick(()=>{
-        	inputs[i].focus();
-			inputs[i].select();
+        nextTick(()=>{
+          inputs[i].focus();
+          inputs[i].select();
         })
         break;
       }
@@ -841,9 +841,10 @@ const ent1 = (event) => {
     if (event.target.selectionStart === 0) {
       for (let i = currentIndex - 1; i >= 0; i--) {
         if (!inputs[i].readOnly) {
-          nextTick(()=>{
-          	inputs[i].focus();
-			inputs[i].setSelectionRange(0, 0);
+          nextTick(()=>{
+            inputs[i].focus();
+            inputs[i].setSelectionRange(0, 0);
+            inputs[i].select(); // 全选输入框内容
           })
           break;
         }
@@ -853,9 +854,9 @@ const ent1 = (event) => {
     if (event.target.selectionStart === 0) {
       for (let i = currentIndex - 1; i >= 0; i--) {
         if (!inputs[i].readOnly) {
-          nextTick(()=>{
-          	inputs[i].focus();
-			inputs[i].select();
+          nextTick(()=>{
+            inputs[i].focus();
+            inputs[i].select();
           })
           break;
         }
@@ -865,16 +866,17 @@ const ent1 = (event) => {
     if (event.target.selectionStart === event.target.value.length) {
       for (let i = currentIndex + 1; i < inputs.length; i++) {
         if (!inputs[i].readOnly) {
-          nextTick(()=>{
-          	inputs[i].focus();
-			inputs[i].select();
+          nextTick(()=>{
+            inputs[i].focus();
+            inputs[i].select();
           })
           break;
         }
       }
     }
   }
-}
+}
+
 
 
 //追加字体颜色和不可输入

+ 91 - 5
src/view/performance/MachineDocuments.vue

@@ -222,11 +222,11 @@
 		    </el-table>
 		  </el-dialog>
 		  
-		 <el-dialog v-model="dialogSelectVisible" title="选择" destroy-on-close width="600px" >
+		 <el-dialog v-model="dialogSelectVisible" title="选择" destroy-on-close width="600px" @keydown="selectGX($event)" >
             <el-table tooltip-effect="dark" :data="selectData"
               row-key="ID" highlight-current-row="true"
               border style="width:100%"
-              @row-dblclick="handleSelectClick"
+              @row-dblclick="handleSelectClick" ref="table2"
             >
               <el-table-column prop="Gd_cpmc" label="印件名称" width="340" />
 			  <el-table-column prop="jyGx" label="检验工序" width="150" />
@@ -254,10 +254,10 @@
 		      </el-table>
 		  </el-dialog>
 			
-		   <el-dialog v-model="LbVisible" title="选择" destroy-on-close width="200px" >
+		   <el-dialog v-model="LbVisible" title="选择" destroy-on-close width="200px" @keydown="selectJY($event)" >
 		     <el-table tooltip-effect="dark" :data="selectDataLb" row-key="ID"
 		       highlight-current-row="true" border style="width:100%"
-		       :row-style="{ height: '30px' }" @row-dblclick="SelectClickLb"
+		       :row-style="{ height: '30px' }" @row-dblclick="SelectClickLb"  ref="table3"
 		     >
 		       <el-table-column prop="sczl_检验类别" label="可选名称" width="150" />			        	 
 		     </el-table>
@@ -739,6 +739,7 @@ const getMachineGxMcsubmit = async() => {
 					return false
 				  }
 				  selectData.splice(0, selectData.length, ...response.data)
+				  setGXCurrent(selectData[0])
 				  dialogSelectVisible.value=true
 			}
 		}
@@ -765,6 +766,39 @@ const handleSelectClick = (row, column, event) => {
   setColorReadonly('yjmc');
   dialogSelectVisible.value = false
 }
+const currentIndex = ref(0);
+const GXCurrent = ref(0);
+const selectGX = (event) => {
+    if (event.keyCode === 40) { // 向下箭头
+        if (currentIndex.value < selectData.length - 1) {
+            currentIndex.value++;
+            setGXCurrent(selectData[currentIndex.value]);
+        } else {
+            currentIndex.value = 0;
+            setGXCurrent(selectData[currentIndex.value]); // 到达最后一行时回到第一行			
+        }
+    } else if (event.keyCode === 38) { // 向上箭头
+        if (currentIndex.value > 0) {
+            currentIndex.value--;
+            setGXCurrent(selectData[currentIndex.value]);
+        } else {
+            currentIndex.value = selectData.length - 1;
+            setGXCurrent(selectData[currentIndex.value]); // 到达第一行时回到最后一行
+        }
+    } else if (event.keyCode === 13) { // 回车键
+        dialogSelectVisible.value = false;
+    }
+}
+const table2 = ref()
+const setGXCurrent = (row) => {
+  setTimeout(()=>{
+	  table2.value?.setCurrentRow(row) 
+	  const { Gd_cpmc, Gy0_yjno, Gy0_gxh, Gy0_gxmc,jyGx } = row
+	  formData.value.yj_yjmc=Gd_cpmc
+	  formData.value.sczl_gxmc=Gy0_gxmc
+	  formData.value.sczl_yjgx=jyGx
+  })
+}
 
 //机台编号失去焦点事件
 const GetjtbhVisible = ref(false)
@@ -819,6 +853,7 @@ const getLbsubmit = () => {
 	//弹出选择
 	const data = [{'sczl_检验类别':''},{'sczl_检验类别':'正品板'},{'sczl_检验类别':'次品板'},{'sczl_检验类别':'废品板'}]
 	selectDataLb.splice(0, selectDataLb.length, ...data)
+	setJYCurrent(selectDataLb[0])
 	LbVisible.value=true
 }
 //检验类别选择
@@ -849,7 +884,58 @@ const SelectClickLb = (row, column, event) => {
 	}
   LbVisible.value = false
 }
-
+const table3=ref()
+const setJYCurrent = (row) => {
+  setTimeout(()=>{
+	  table3.value?.setCurrentRow(row) 
+	  const {sczl_检验类别 } = row
+	  	formData.value.sczl_检验类别=row.sczl_检验类别
+		
+		//查询废品系数
+		if(row.sczl_检验类别!=''){
+			var value = {
+				'gdbh':formData.value.sczl_gdbh,
+				'yjno':parseInt(formData.value.sczl_yjgx.split('-')[0]),
+				'gxh':parseInt(formData.value.sczl_yjgx.split('-')[1]),
+				'type':formData.value.sczl_检验类别
+				}
+			getMachineScrapFactor(value).then(response=>{
+				if(response.code==0){
+					if(response.data!=null){
+						formData.value.sczl_废品率系数 = response.data.num;
+					}
+					setColorReadonly('废品率系数')
+				}
+			});
+			
+		}else{
+			unsetColorReadonly('废品率系数')
+		}
+  })
+}
+const JYIndex = ref(0);
+const JYCurrent = ref(0);
+const selectJY = (event) => {
+    if (event.keyCode === 40) { // 向下箭头
+        if (JYIndex.value < selectDataLb.length - 1) {
+            JYIndex.value++;
+            setJYCurrent(selectDataLb[JYIndex.value]);
+        } else {
+            JYIndex.value = 0;
+            setJYCurrent(selectDataLb[JYIndex.value]); // 到达最后一行时回到第一行			
+        }
+    } else if (event.keyCode === 38) { // 向上箭头
+        if (JYIndex.value > 0) {
+            JYIndex.value--;
+            setJYCurrent(selectDataLb[JYIndex.value]);
+        } else {
+            JYIndex.value = selectDataLb.length - 1;
+            setJYCurrent(selectDataLb[JYIndex.value]); // 到达第一行时回到最后一行
+        }
+    } else if (event.keyCode === 13) { // 回车键
+        LbVisible.value = false
+    }
+}
 //获取定额代号
 const GetMachineDedhVisible = ref(false)
 let GetMachineDedhtreeData = reactive([]);

+ 92 - 13
src/view/yunyin/shengchanguanli/chengpinrucang.vue

@@ -84,7 +84,7 @@
 			   <el-form-item label="仓库" prop="name">
 				 <el-row :gutter="20">
 				   <el-col :span="12">
-					 <el-input v-model="formData.仓库编号" id="仓库编号"  @keydown="ent($event, '入仓类型', '仓库编号', '仓库名称')"  @keyup.enter.native="getCKsubmit" :clearable="true" placeholder="ZT01733" />
+					 <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="" />
@@ -241,6 +241,7 @@
             title="选择"
             destroy-on-close
             width="600px"
+			@keydown="selectCK($event)"
           			>
             <el-table
               tooltip-effect="dark"
@@ -250,6 +251,7 @@
               border
               style="width:100%"
               @row-dblclick="CKSelectClick"
+			  ref="table2"
             >
               <el-table-column
                 prop="编号"
@@ -271,6 +273,7 @@
 		    title="选择"
 		    destroy-on-close
 		    width="600px"
+			@keydown="selectGD($event)"
 		  			>
 		    <el-table
 		      tooltip-effect="dark"
@@ -280,6 +283,7 @@
 		      border
 		      style="width:100%"
 		      @row-dblclick="GDSelectClick"
+			  ref="table3"
 		    >
 			<el-table-column
 			  prop="gdyj"
@@ -393,7 +397,8 @@
 		    v-model="SMVisible"
 		    title="选择"
 		    destroy-on-close
-		    width="600px"
+		    width="1200px"
+			
 		  			>
 		    <el-table
 		      tooltip-effect="dark"
@@ -401,46 +406,47 @@
 		      row-key="ID"
 		      highlight-current-row="true"
 		      border
-		      style="width:100%"
+		      style="width:180%"
+			  height="500px"
 		      @row-dblclick="SMSelectClick"
 		    >
 				<el-table-column
-				  prop="gdyj"
+				  prop="Yj_Gdbh"
 				  label="工单编号"
 				  width="180"
 				/>
 		      <el-table-column
-		        prop="Gd_gdbh"
+		        prop="yj_Yjno"
 		        label="印件号"
 		        width="200"
 		      />
 			  <el-table-column
-				prop="yj_yjno"
+				prop="yj_yjmc"
 				label="印件名称"
 				width="200"
 			  />
 			  <el-table-column
-				prop="销售订单号"
+				prop="yj_成品数量"
 				label="计划交货数量"
 				width="200"
 			  />
 			  <el-table-column
-				prop="yj_Yjdh"
+				prop="yj_实际投料"
 				label="印件投料"
 				width="200"
 			  />
 			  <el-table-column
-				prop="yj_yjmc"
+				prop="jjcp_sls"
 				label="包装产量"
 				width="200"
 			  />
 			  <el-table-column
-				prop="成品代号"
+				prop="sczl_cls"
 				label="入仓数量"
 				width="200"
 			  />
 			  <el-table-column
-				prop="成品名称"
+				prop="jjcp_smb"
 				label="缺数"
 				width="200"
 			  />
@@ -450,7 +456,7 @@
 				width="200"
 			  />
 			  <el-table-column
-				prop="客户料号"
+				prop="jjcp_sj"
 				label="最近入仓时间"
 				width="200"
 			  />
@@ -651,7 +657,7 @@ function onSMB() {
 	SMVisible.value=true
 }
 const MbList = async (value) => {
-  const response = await mbList({page:page.value,limit:limit.value});
+  const response = await mbList();
   console.log(response.data) 
   if (response.code === 0) {
 	 SMselectData.value=response.data.rows
@@ -689,6 +695,7 @@ const GetCK = async () => {
   console.log(response) 
   if (response.code === 0) {
   CKselectData.splice(0, CKselectData.length, ...response.data)
+  setCKCurrent(CKselectData[0])
   CKVisible.value=true
   }
 }
@@ -699,6 +706,38 @@ const CKSelectClick = (row, column, event) => {
   formData.value.仓库名称=名称
   CKVisible.value = false
 }
+const table2=ref()
+const setCKCurrent = (row) => {
+  setTimeout(()=>{
+	  table2.value?.setCurrentRow(row) 
+	  const { 编号,名称 } = row
+	  formData.value.仓库编号=编号
+	  formData.value.仓库名称=名称
+  })
+}
+const CKIndex = ref(0);
+const JYCurrent = ref(0);
+const selectCK = (event) => {
+    if (event.keyCode === 40) { // 向下箭头
+        if (CKIndex.value < CKselectData.length - 1) {
+            CKIndex.value++;
+            setCKCurrent(CKselectData[CKIndex.value]);
+        } else {
+            CKIndex.value = 0;
+            setCKCurrent(CKselectData[CKIndex.value]); // 到达最后一行时回到第一行			
+        }
+    } else if (event.keyCode === 38) { // 向上箭头
+        if (CKIndex.value > 0) {
+            CKIndex.value--;
+            setCKCurrent(CKselectData[CKIndex.value]);
+        } else {
+            CKIndex.value = CKselectData.length - 1;
+            setCKCurrent(CKselectData[CKIndex.value]); // 到达第一行时回到最后一行
+        }
+    } else if (event.keyCode === 13) { // 回车键
+        CKVisible.value = false
+    }
+}
   
 //工单编号回车事件
 const getGDsubmit = (event) => {
@@ -713,6 +752,7 @@ const GetGD = async () => {
   console.log(response) 
   if (response.code === 0) {
   GDselectData.splice(0, GDselectData.length, ...response.data)
+  setGDCurrent(GDselectData[0])
   GDVisible.value=true
   }
 }
@@ -729,6 +769,44 @@ const GDSelectClick = (row, column, event) => {
   formData.value.客户料号=客户料号
   GDVisible.value = false
 }
+const table3=ref()
+const setGDCurrent = (row) => {
+  setTimeout(()=>{
+	  table3.value?.setCurrentRow(row) 
+	  
+	  const { Gd_gdbh,yj_yjno,销售订单号,yj_Yjdh,yj_yjmc,成品代号,成品名称,客户料号,gdyj } = row
+	  formData.value.jjcp_gdbh=Gd_gdbh
+	  formData.value.jjcp_yjno=yj_yjno
+	  formData.value.订单编号=销售订单号
+	  formData.value.jjcp_cpdh=yj_Yjdh
+	  formData.value.jjcp_cpmc=yj_yjmc
+	  formData.value.成品编码=成品代号
+	  formData.value.成品名称=成品名称
+	  formData.value.客户料号=客户料号	  
+  })
+}
+const GDIndex = ref(0);
+const selectGD = (event) => {
+    if (event.keyCode === 40) { // 向下箭头
+        if (GDIndex.value < GDselectData.length - 1) {
+            GDIndex.value++;
+            setGDCurrent(GDselectData[GDIndex.value]);
+        } else {
+            GDIndex.value = 0;
+            setGDCurrent(GDselectData[GDIndex.value]); // 到达最后一行时回到第一行			
+        }
+    } else if (event.keyCode === 38) { // 向上箭头
+        if (GDIndex.value > 0) {
+            GDIndex.value--;
+            setGDCurrent(GDselectData[GDIndex.value]);
+        } else {
+            GDIndex.value = GDselectData.length - 1;
+            setGDCurrent(GDselectData[GDIndex.value]); // 到达第一行时回到最后一行
+        }
+    } else if (event.keyCode === 13) { // 回车键
+        GDVisible.value = false
+    }
+}
 
 //产品编号回车事件
 const getSLsubmit = (event) => {
@@ -929,6 +1007,7 @@ const ent = (event,id1,id2,id3) => {
   if (event.keyCode === 13 || event.keyCode === 40) { // Enter 或向下箭头
     if(id2=='仓库编号'&&event.keyCode === 13){
 		getCKsubmit()
+		// document.getElementById(id3).focus()
 	}if(id2=='工单编号'&&event.keyCode === 13){
 		getGDsubmit()
 	}if(id2=='产品编号'&&event.keyCode === 13){

+ 1 - 1
src/view/yunyin/shengchanguanli/shebeiyunxing.vue

@@ -2303,7 +2303,7 @@ function onDel() {
 const Chanliangdel = async() => {
 	
     const res = await ChanliangDel({ UniqId:uid.value})
-    if (res.msg === '成功') {
+    if (res.code === 0) {
     ElMessage({
       type: 'success',
       message: '成功'