فهرست منبع

刀具取放页面功能处理

oyq28 5 ماه پیش
والد
کامیت
4bcea5b091
2فایلهای تغییر یافته به همراه101 افزوده شده و 17 حذف شده
  1. 20 0
      imcs-ui/src/api/systemMgr/toolbar.js
  2. 81 17
      imcs-ui/src/views/zuihou/dispatchMgr/tools/Index.vue

+ 20 - 0
imcs-ui/src/api/systemMgr/toolbar.js

@@ -45,6 +45,14 @@ const apiList = {
     method: 'POST',
     url: `/authority/toolbar/addCutToolTask`
   },
+  cutToolPositionList:{
+    method: 'POST',
+    url: `/authority/productionresourcePosition/cutToolPositionList`
+  },
+  getCutToolDevice:{
+    method: 'POST',
+    url: `/authority/productionresourcePosition/getCutToolDevice`
+  },
   manualTask: {
     method: 'POST',
     url: `/authority/toolbar/manualTask`
@@ -128,6 +136,18 @@ export default {
       data
     })
   },
+  cutToolPositionList (data) {
+    return axiosApi({
+      ...apiList.cutToolPositionList,
+      data
+    })
+  },
+  getCutToolDevice (data) {
+    return axiosApi({
+      ...apiList.getCutToolDevice,
+      data
+    })
+  },
   manualXbk (data) {
     return axiosApi({
       ...apiList.manualXbk,

+ 81 - 17
imcs-ui/src/views/zuihou/dispatchMgr/tools/Index.vue

@@ -26,7 +26,7 @@
 	  </el-form>
 	</el-card>
 
-	<el-card class="box-card">
+	<el-card class="box-card" v-show="false">
         <div slot="header" class="clearfix">手动更新点位(机器人进行动作操作)</div>
 		<el-form ref="form0" :model="form0" :rules="rules4"  label-width="80px">
 			<el-row :gutter="12">				
@@ -116,7 +116,7 @@
 	  </el-form>
 	</el-card>
 
-	<el-card class="box-card">
+	<el-card class="box-card" v-show="false">
         <div slot="header" class="clearfix">创建AGV任务</div>
 		<el-form ref="form4" :model="form4" :rules="rules4" label-width="80px">
 			<el-row :gutter="12" >
@@ -183,7 +183,7 @@
 	  </el-form>
 	</el-card>
 
-	<el-card class="box-card">
+	<el-card class="box-card" v-show="false">
         <div slot="header" class="clearfix">动态移动零件(产线内)</div>
 		<el-form ref="form7" :model="form7" :rules="rules5" label-width="80px">
 			<el-row :gutter="12" >
@@ -209,7 +209,7 @@
 	  </el-form>
 	</el-card>
 
-	<el-card class="box-card">
+	<el-card class="box-card" v-show="false">
         <div slot="header" class="clearfix">零件动态入线边库(产线内)</div>
 		<el-form ref="form8" :model="form8" :rules="rules6" label-width="80px">
 			<el-row :gutter="12" >
@@ -251,7 +251,7 @@
 	  </el-form>
 	</el-card>
 
-	<el-card class="box-card">
+	<el-card class="box-card" v-show="false">
         <div slot="header" class="clearfix">刷新线边库排产</div>
 		<el-form ref="form10" :model="form10" :rules="rules7" label-width="80px">
 			<el-row :gutter="12" >
@@ -275,25 +275,36 @@
 			<el-row :gutter="12" >
 				<el-col :xs="6" :sm="5">
 					<el-form-item label="起始位:" prop="start">
-						<el-tooltip content="例如:CT_361" placement="top">
+						<el-tooltip content="例如:CT_LAUPT00101" placement="top">
                     		<el-input v-model="form11.start" placeholder="起始库位"></el-input>
 					   </el-tooltip>
 					</el-form-item>
 				</el-col>
 				<el-col :xs="6" :sm="5">
-					<el-form-item label="目的位:" prop="goal">
-						<el-tooltip content="例如:CT_130" placement="top">
-                    		<el-input  v-model="form11.goal" placeholder="目的库位"></el-input>
+					<el-form-item label="设备类型:" prop="goalType">
+						<el-tooltip content="例如:CT_127" placement="top">
+                    		<el-select v-model="form11.goalType" placeholder="选择设备类型" @change="choose">
+							 	<el-option v-for="device in cutToolDeviceList" :label="device.name" :value="device.code" :key="device.code" ></el-option>		
+			  				</el-select>
 						</el-tooltip>
 					</el-form-item>
+				</el-col>				
+				<el-col :xs="6" :sm="5">
+					<el-form-item label="目的位:" prop="goal">
+						<el-tooltip content="例如:CT_LAUPT00101" placement="top">
+                    		<el-select v-model="form11.goal" placeholder="选择目标位">								
+							 	<el-option v-for="position in cutToolStorgeList" :label="position.name" :value="position.pointId" :key="position.pointId" v-if="cutToolStorgeList"></el-option>		
+			  				</el-select>
+					   </el-tooltip>
+					</el-form-item>
 				</el-col>
 				<el-col :xs="6" :sm="5">
-					<el-form-item label="起始刀位号:" prop="cutNo">
+					<el-form-item label="起始刀位号:" prop="cutStartNo">
                     	<el-input-number v-model="form11.cutStartNo" :min="0" :max="40"></el-input-number>
 					</el-form-item>
 				</el-col>
 				<el-col :xs="6" :sm="5">
-					<el-form-item label="目的刀位号:" prop="cutNo">
+					<el-form-item label="目的刀位号:" prop="cutGoalNo">
                     	<el-input-number v-model="form11.cutGoalNo" :min="0" :max="40"></el-input-number>
 					</el-form-item>
 				</el-col>															
@@ -310,7 +321,9 @@
 	// 【锁定记录、出入库记录】-API
 	import toolbarApi from "@/api/systemMgr/toolbar"
 	import warnLogApi from "@/api/lineSideLibrary/warnLog"
-	import areaMgrApi from "@/api/resourceProductMgr/areaMgr"	
+	import areaMgrApi from "@/api/resourceProductMgr/areaMgr"
+	import equipmentMgrApi from "@/api/resourceProductMgr/equipmentMgr"	
+	import qs from 'qs'
 	import { convertEnum, initDicts, initQueryParams } from '@/utils/commons'
 	export default {
 	  name: "Tools",
@@ -370,13 +383,17 @@
 		  },
 		  form11:{
 			start: "",
-			goal: "",
+			goalType: "",
+			goal: "",			
 			cutStartNo: "",
 			cutGoalNo: ""			
 		  },
 		  lineList: [],
 		  typeList: [{"name":"全部","value":"0"},{"name":"FANUC","value":"1"},{"name":"HEIDENHAIN","value":"2"},{"name":"DMG","value":"3"},{"name":"HELLER","value":"4"}],
-	      tenantViewVisible: false,
+	      cutToolDeviceList: [],
+		  cutToolStorgeList: [{"name":"请选择","pointId":""}],
+		  goalList: [],
+		  tenantViewVisible: false,
 	      tableKey: 0,
 	      queryParams: initQueryParams({}),
 	      selection: [],
@@ -704,7 +721,43 @@
 				}				
 			}); 
 		},
+		choose(val){
+			if(this.form11.start!=null || this.form11.start!=""){
+				//判断起始设备和目的设备是否一致
+				let params = {"pointId": this.form11.start.replace("CT_","")}
+                toolbarApi.getCutToolDevice(qs.stringify(params)).then(response=>{
+				  const res = response.data
+				if(res.isSuccess){
+					let item = this.cutToolDeviceList.filter(item=>item.code==val); 
+					let resourceId = res.data.resourceId					
+					if(resourceId == item[0].id){
+						this.$message({
+              					message: "起始设备和目的设备不能一样",
+              					type: 'warning'
+            			})
+						return false
+					} 
+                    
+					//
+					let params2 = {"code":val}
+					toolbarApi.cutToolPositionList(qs.stringify(params2)).then(response2=>{
+						const res2 = response2.data
+						this.cutToolStorgeList = [{"name":"请选择","pointId":""}]
+						if(res2.isSuccess){
+							this.cutToolStorgeList = res2.data
+							//console.log(this.cutToolStorgeList)
+						}
+						}).finally(()=>{
+							return true		
+						})
+				}
+			  }).finally(()=>{
+				  return true		
+			  })
+			}			   
+		},
 		addCutToolTask(){
+			//console.log(this.form11)			
 			this.$refs.form11.validate((valid) => {
 				if(valid){
 					toolbarApi.addCutToolTask(this.form11).then(response=>{
@@ -722,7 +775,7 @@
 						}
 					}).finally(()=>{
 					   return true		
-					})					
+					})				
 				}else{
 					return false
 				}				
@@ -895,8 +948,19 @@
 	    		if(res.isSuccess){					
 	    			this.lineList = res.data.records
 	    		}
-	    	})
-	     
+	      })
+	
+      equipmentMgrApi.getList({})
+        .then((response) => {
+          const res = response.data;
+          if (res.isSuccess) {
+            // 赋值            
+			this.cutToolDeviceList = res.data.filter(item=> {				
+				return item.modeSpecification!=null || item.name.indexOf("刀具") > -1
+			});	
+          }         
+        })
+        .finally(() => (this.loading = false));	     
 	    }
 	  }
 	}