CanadaMes-ui/src/api/home.js
@@ -21,13 +21,6 @@ }) } export function loadtask(type) { return request({ url: '/home/loadinout?types=' + type, method: 'get', }) } export function InsertOrder(orderid) { return request({ url: '/home/InsertOrder?orderid=' + orderid, @@ -132,11 +125,11 @@ }) } export function InsertQueueGlassId(glassid, id) { export function InsertQueueGlassId(id,data) { return request({ url: '/home/InsertQueueGlassId?glassid=' + glassid + '&id=' + id, url: '/home/InsertQueueGlassId?id=' + id, method: 'post', data: "" data }) } @@ -195,3 +188,12 @@ data }) } export function isAllowQueues(isAllowQueue) { return request({ url: '/home/AddOutSliceS?isAllowQueue'+isAllowQueue, method: 'post', data:"" }) } CanadaMes-ui/src/lang/locales/en-US.json
@@ -305,6 +305,10 @@ "Glass information corresponding to aluminum frame":"Glass information corresponding to aluminum frame", "In the cage":"In the cage", "Flip":"Flip", "In the queue":"In the queue" "In the queue":"In the queue", "Normal":"Normal", "Entering":"Entering", "Outing":"Outing", "Suspend":"Suspend" } CanadaMes-ui/src/lang/locales/zh-CN.json
@@ -301,6 +301,10 @@ "In the queue":"在队列", "Enter the Frame No":"请输入铝框id", "Manually Infeed Glass":"手动进片", "Normal":"正常", "Entering":"正在进", "Outing":"正在出", "Suspend":"暂停", "langparameter": { "conveyor Velocity(Auto FAST)": "D01-D06 皮带输送自动快速", "conveyor Velocity(Auto SLOW)": "D01-D06 皮带输送自动慢速", CanadaMes-ui/src/views/home/index.vue
@@ -215,14 +215,13 @@ <el-table-column :width="130" prop="cage" :label="$t('Cage No')"></el-table-column> <el-table-column :width="130" prop="cell" :label="$t('Slot No')"></el-table-column> <el-table-column :width="180" prop="glassId" :label="$t('Outfeed glass barcode')"></el-table-column> <el-table-column :width="130" prop="north_glass_buffer1s.ordernumber" <el-table-column :width="130" prop="orderId" :label="$t('Order No')"></el-table-column> <el-table-column prop="north_glass_buffer1s.listnumber" :label="$t('List No')"></el-table-column> <el-table-column prop="north_glass_buffer1s.boxnumber" :label="$t('Box No')"></el-table-column> <el-table-column prop="orderId" :label="$t('List No')"></el-table-column> <el-table-column prop="orderId" :label="$t('Box No')"></el-table-column> <el-table-column :width="130" prop="lengthWidth" :label="$t('Dim')"> <template slot-scope='scope'> {{ scope.row.north_glass_buffer1s.glasslength }}*{{ scope.row.north_glass_buffer1s.glassheight }} {{ scope.row.glasswidthmm }}*1{{ scope.row.glassheightmm }} </template> </el-table-column> <el-table-column :label="$t('Terminate Task')"> @@ -237,14 +236,13 @@ <el-table-column :width="130" prop="cage" :label="$t('Cage No')"></el-table-column> <el-table-column :width="130" prop="cell" :label="$t('Slot No')"></el-table-column> <el-table-column :width="180" prop="glassId" :label="$t('Infeed glass barcode')"></el-table-column> <el-table-column :width="130" prop="north_glass_buffer1s.ordernumber" <el-table-column :width="130" prop="orderId" :label="$t('Order No')"></el-table-column> <el-table-column prop="north_glass_buffer1s.listnumber" :label="$t('List No')"></el-table-column> <el-table-column prop="north_glass_buffer1s.boxnumber" :label="$t('Box No')"></el-table-column> <el-table-column prop="orderId" :label="$t('List No')"></el-table-column> <el-table-column prop="orderId" :label="$t('Box No')"></el-table-column> <el-table-column :width="130" prop="lengthWidth" :label="$t('Dim')"> <template slot-scope='scope'> {{ scope.row.north_glass_buffer1s.glasslength }}*{{ scope.row.north_glass_buffer1s.glassheight }} {{ scope.row.glasswidthmm }}*1{{ scope.row.glassheightmm }} </template> </el-table-column> @@ -336,28 +334,28 @@ <el-button type="primary" @click="showform(3)">{{ $t('Query') }}</el-button> </el-form-item> <el-form-item :label="$t('Barcode')"> <el-input v-model="form.barcode" readonly autocomplete="off" /> <el-input v-model="form.glassId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Order No')"> <el-input v-model="form.ordernumber" readonly autocomplete="off" /> <el-input v-model="form.orderId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('List No')"> <el-input v-model="form.listnumber" readonly autocomplete="off" /> <el-input v-model="form.listId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Box No')"> <el-input v-model="form.boxnumber" readonly autocomplete="off" /> <el-input v-model="form.boxId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Length')"> <el-input v-model="form.glasslength" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Width')"> <el-input v-model="form.glassheight" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Length')"> <el-input v-model="form.glasslengthmm" readonly autocomplete="off" /> <el-input v-model="form.glasswidthmm" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Width')"> <el-input v-model="form.glassheightmm" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Length')"> <el-input v-model="form.glasswidth" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Width')"> <el-input v-model="form.glassheight" readonly autocomplete="off" /> </el-form-item> </el-form> @@ -407,20 +405,29 @@ <el-table-column :width="55" prop="tier" :label="$t('The Side')"></el-table-column> <el-table-column :width="145" prop="glassId" :label="$t('Barcode')"></el-table-column> <el-table-column :width="100" prop="orderId" :label="$t('Order No')"></el-table-column> <el-table-column :width="80" prop="north_glass_buffer1s.listnumber" <el-table-column :width="80" prop="listId" :label="$t('List No')"></el-table-column> <el-table-column :width="100" prop="north_glass_buffer1s.boxnumber" :label="$t('Box No')"></el-table-column> <el-table-column :width="150" prop="lengthWidth" :label="$t('Dim')"></el-table-column> <el-table-column :width="100" prop="boxId" :label="$t('Box No')"></el-table-column> <el-table-column :width="100" prop="state" :label="$t('State')"> <template slot-scope='scope'> {{ scope.row.state==1?$t('Normal'):scope.row.state==2?$t('Entering'):scope.row.state==3?$t('Outing'):"" }} </template> </el-table-column> <el-table-column :width="150" prop="lengthWidth" :label="$t('Dim')"> <template slot-scope='scope'> {{ scope.row.glassWidthMm }}{{scope.row.glassWidthMm>0?"*":""}}{{ scope.row.glassHeightMm }} </template> </el-table-column> <el-table-column :width="280" :label="$t('Operate')"> <template slot-scope='scope'> <el-button type="primary" style="padding: 4px 10px;font-size: 12px;" @click="deleteglass(scope.row.glassId, scope.row.state)">{{ $t('Delete') }}</el-button> <el-button type="primary" style="padding: 4px 10px;font-size: 12px;" <el-button type="primary" style="padding: 4px 10px;font-size: 12px;" :disabled="scope.row.state==1?false:true" @click="outglass(scope.row.glassId, scope.row.state)">{{ $t('Out') }}</el-button> <el-button type="primary" style="padding: 4px 10px;font-size: 12px;" @click="UpdateDisabled(scope.row.cage, scope.row.cell, scope.row.disabled == 0 ? 1 : 0)"> {{ scope.row.disabled == 0 ? $t('Enable') : $t('Disable') }}</el-button> <el-button type="primary" style="padding: 4px 10px;font-size: 12px;" <el-button type="primary" style="padding: 4px 10px;font-size: 12px;" :disabled="scope.row.glassId!=null?true:false" @click="insertglass(scope.row.cage, scope.row.cell, scope.row.tier)">{{ $t('Increase') }}</el-button> </template> @@ -465,106 +472,106 @@ <el-form-item> <el-input style="width:50%;margin-left: 20%;" :placeholder="$t('Enter the glass barcode')" v-model="glassid2"></el-input> <el-button type="primary" @click="SelectGlassByGlassIDs(1)" :disabled="disabled">{{ $t('Query') <el-button type="primary" @click="SelectGlassByGlassIDs(1)" >{{ $t('Query') }}</el-button> </el-form-item> <el-form-item> <el-input style="width:50%;margin-left: 20%;" :placeholder="$t('Enter the glass barcode')" v-model="glassid1"></el-input> <el-button type="primary" @click="SelectGlassByGlassIDs(2)" :disabled="disabled">{{ $t('Query') <el-button type="primary" @click="SelectGlassByGlassIDs(2)" >{{ $t('Query') }}</el-button> </el-form-item> </div> <div style="display: flex;justify-content: space-around;"> <el-form-item :label="$t('Barcode')"> <el-input v-model="form2.barcode" readonly autocomplete="off" /> <el-input v-model="form2.glassId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Barcode')"> <el-input v-model="form4.barcode" readonly autocomplete="off" /> <el-input v-model="form4.glassId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Barcode')"> <el-input v-model="form3.barcode" readonly autocomplete="off" /> <el-input v-model="form3.glassId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Barcode')"> <el-input v-model="form5.barcode" readonly autocomplete="off" /> <el-input v-model="form5.glassId" readonly autocomplete="off" /> </el-form-item> </div> <div style="display: flex;justify-content: space-around;"> <el-form-item :label="$t('Order No')"> <el-input v-model="form2.ordernumber" readonly autocomplete="off" /> <el-input v-model="form2.orderId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Order No')"> <el-input v-model="form4.ordernumber" readonly autocomplete="off" /> <el-input v-model="form4.orderId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Order No')"> <el-input v-model="form3.ordernumber" readonly autocomplete="off" /> <el-input v-model="form3.orderId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Order No')"> <el-input v-model="form5.ordernumber" readonly autocomplete="off" /> <el-input v-model="form5.orderId" readonly autocomplete="off" /> </el-form-item> </div> <div style="display: flex;justify-content: space-around;"> <el-form-item :label="$t('List No')"> <el-input v-model="form2.listnumber" readonly autocomplete="off" /> <el-input v-model="form2.listId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('List No')"> <el-input v-model="form4.listnumber" readonly autocomplete="off" /> <el-input v-model="form4.listId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('List No')"> <el-input v-model="form3.listnumber" readonly autocomplete="off" /> <el-input v-model="form3.listId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('List No')"> <el-input v-model="form5.listnumber" readonly autocomplete="off" /> <el-input v-model="form5.listId" readonly autocomplete="off" /> </el-form-item> </div> <div style="display: flex;justify-content: space-around;"> <el-form-item :label="$t('Box No')"> <el-input v-model="form2.boxnumber" readonly autocomplete="off" /> <el-input v-model="form2.boxId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Box No')"> <el-input v-model="form4.boxnumber" readonly autocomplete="off" /> <el-input v-model="form4.boxId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Box No')"> <el-input v-model="form3.boxnumber" readonly autocomplete="off" /> <el-input v-model="form3.boxId" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Box No')"> <el-input v-model="form5.boxnumber" readonly autocomplete="off" /> <el-input v-model="form5.boxId" readonly autocomplete="off" /> </el-form-item> </div> <div style="display: flex;justify-content: space-around;"> <el-form-item :label="$t('Length')"> <el-input v-model="form2.glasslength" readonly autocomplete="off" /> <el-input v-model="form2.glasswidthmm" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Length')"> <el-input v-model="form4.glasslength" readonly autocomplete="off" /> <el-input v-model="form4.glasswidthmm" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Length')"> <el-input v-model="form3.glasslength" readonly autocomplete="off" /> <el-input v-model="form3.glasswidthmm" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Length')"> <el-input v-model="form5.glasslength" readonly autocomplete="off" /> <el-input v-model="form5.glasswidthmm" readonly autocomplete="off" /> </el-form-item> </div> <div style="display: flex;justify-content: space-around;"> <el-form-item :label="$t('Width')"> <el-input v-model="form2.glassheight" readonly autocomplete="off" /> <el-input v-model="form2.glassheightmm" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Width')"> <el-input v-model="form4.glassheight" readonly autocomplete="off" /> <el-input v-model="form4.glassheightmm" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Width')"> <el-input v-model="form3.glassheight" readonly autocomplete="off" /> <el-input v-model="form3.glassheightmm" readonly autocomplete="off" /> </el-form-item> <el-form-item :label="$t('Width')"> <el-input v-model="form5.glassheight" readonly autocomplete="off" /> <el-input v-model="form5.glassheightmm" readonly autocomplete="off" /> </el-form-item> </div> <div style="display: flex;justify-content: space-around;"> <el-button @click="DeleteQueueGlasss(2)" type="primary" :disabled="disabled">{{ $t('Clear Current') <el-button @click="DeleteQueueGlasss(2)" type="primary" >{{ $t('Clear Current') }}</el-button> <el-button @click="InsertQueueGlass(2)" type="primary" :disabled="disabled"> {{ $t('Confirm Modification') }}</el-button> <el-button @click="DeleteQueueGlasss(1)" type="primary" :disabled="disabled">{{ $t('Clear Current') <el-button @click="DeleteQueueGlasss(1)" type="primary" >{{ $t('Clear Current') }}</el-button> <el-button @click="InsertQueueGlass(1)" type="primary" :disabled="disabled1"> {{ $t('Confirm Modification') }}</el-button> @@ -579,14 +586,16 @@ <el-dialog :visible.sync="dialogFormVisible6" :title="$t('Production queue')" top="5vh"> <el-button type="primary" @click="showform7()">{{ $t('Increase') }}</el-button> <el-button type="primary" @click="isAllowQueueState()">{{ this.isAllowQueue==true?$t('Stop'):$t('Start') }}</el-button> <el-table :data="this.OutSlice" :height="700" border style="width: 100%;overflow: auto;"> <el-table-column prop="glassId" :label="$t('Barcode')"></el-table-column> <el-table-column prop="north_glass_buffer1s.ordernumber" :label="$t('Order No')"></el-table-column> <el-table-column prop="north_glass_buffer1s.listnumber" :label="$t('List No')"></el-table-column> <el-table-column prop="north_glass_buffer1s.boxnumber" :label="$t('Box No')"></el-table-column> <el-table-column prop="barCode" :label="$t('Frame No')"></el-table-column> <el-table-column prop="north_glass_buffer1s.glasslength" :label="$t('Length')"></el-table-column> <el-table-column prop="north_glass_buffer1s.glassheight" :label="$t('Width')"></el-table-column> <el-table-column prop="storageCage.orderId" :label="$t('Order No')"></el-table-column> <el-table-column prop="storageCage.listId" :label="$t('List No')"></el-table-column> <el-table-column prop="storageCage.boxId" :label="$t('Box No')"></el-table-column> <el-table-column prop="barcode" :label="$t('Frame No')"></el-table-column> <el-table-column prop="storageCage.glasswidthmm" :label="$t('Length')"></el-table-column> <el-table-column prop="storageCage.glassheightmm" :label="$t('Width')"></el-table-column> <el-table-column :width="280" :label="$t('Operate')"> <template slot-scope='scope'> <el-button type="text" size="small" @click="getTopMove(scope.row, scope.$index)" @@ -651,9 +660,9 @@ <script> import { home, home2, loadtask, InsertOrder, Addglassid, UpdateTask, SelectAlarmmgInfo, SelectCageInfo, DeleteByGlassID, OutByGlassID, Loadcarlist, home, home2, InsertOrder, Addglassid, UpdateTask, SelectAlarmmgInfo, SelectCageInfo, DeleteByGlassID, OutByGlassID, Loadcarlist, SelectPassword, SelectGlassByGlassID, Disabled, Inglassid, SelectGlass, InsertQueueGlassId, UpdateQueueState, DeleteQueueGlass, SelectGlassNo, SelectAluminumFrameInfoById, SelectProductionqueue, DeleteProductionQueueGlass, AddOutSliceS SelectAluminumFrameInfoById, SelectProductionqueue, DeleteProductionQueueGlass, AddOutSliceS, isAllowQueues } from "../../api/home"; @@ -724,7 +733,8 @@ pageCount: 0, OutSlice: [], AluminumFrame: [], framebarcode: "" framebarcode: "", isAllowQueue:true }; }, created() { @@ -768,6 +778,8 @@ this.tasklist2 = obj.tasklist2[0]; this.alarm = obj.alarmmg[0]; this.isAllowQueue=obj.isAllowQueue; console.log(obj); //出片队列 this.OutSlice = obj.listoutslice[0]; this.loadglassheight = obj.loadglassheight; @@ -791,7 +803,7 @@ if (obj.form3 != null && obj.form3 != "" && obj.state[0] == 0) { this.form5 = obj.form3[0]; this.showform3(); if (this.form5.glassheightmm < 380 || this.form5.glasslengthmm < 390 || this.form5.glassheightmm > 1810 || this.form5.glasslengthmm > 2760) { if (this.form5.glassheight < 380 || this.form5.glasswidth < 390 || this.form5.glassheight > 1810 || this.form5.glasswidth > 2760) { if (this.disabled1 == false) { this.disabled1 = true; this.$message.error(this.$t('The glass size is not within the range')); @@ -800,7 +812,7 @@ this.disabled1 = false; } } else { if (this.form5.glassheightmm < 380 || this.form5.glasslengthmm < 390 || this.form5.glassheightmm > 1810 || this.form5.glasslengthmm > 2760) { if (this.form5.glassheight < 380 || this.form5.glasswidth < 390 || this.form5.glassheight > 1810 || this.form5.glasswidth > 2760) { if (this.disabled1 == false) { this.disabled1 = true; // this.$message.error(this.$t('The glass size is not within the range')); @@ -817,9 +829,6 @@ this.cageinfo = res.data.cageinfo; }); } SelectGlass(this.orderid).then(res => { this.GlassInfo = res.data.glass; }); this.$forceUpdate(); @@ -846,14 +855,14 @@ this.cagelist3 = res.data.list3; this.cagelist4 = res.data.list4; }); //加载进片任务数据 loadtask(this.task1).then(res => { this.tasklist1 = res.data.list; }); //加载进出片任务数据 loadtask(this.task2).then(res => { this.tasklist2 = res.data.list; }); // //加载进片任务数据 // loadtask(this.task1).then(res => { // this.tasklist1 = res.data.list; // }); // //加载进出片任务数据 // loadtask(this.task2).then(res => { // this.tasklist2 = res.data.list; // }); //加载报警信息 SelectAlarmmgInfo().then(res => { this.alarm = res.data.alarmmg; @@ -937,6 +946,7 @@ SelectGlassByGlassID(this.glassid).then(res => { if (res.data.form != null) { this.form = res.data.form; console.log(this.form); this.dialogFormVisible = true; this.$message.success(this.$t('query was successful')); } else { @@ -967,6 +977,14 @@ if (res.data.form != null) { this.form4 = res.data.form; this.$message.success(this.$t('query was successful')); if (this.form4.glassheight < 380 || this.form4.glasswidth < 390 || this.form4.glassheight > 1810 || this.form4.glasswidth > 2760) { if (this.disabled == false) { this.disabled = true; this.$message.error(this.$t('The glass size is not within the range')); } } else { this.disabled = false; } } else { this.$message.error(this.$t('There is no such glass')); } @@ -984,13 +1002,12 @@ if (res.data.form != null) { this.form5 = res.data.form; this.$message.success(this.$t('query was successful')); if (this.form5.glassheightmm < 380 || this.form5.glasslengthmm < 390 || this.form5.glassheightmm > 1810 || this.form5.glasslengthmm > 2760) { if (this.form5.glassheight < 380 || this.form5.glasswidth < 390 || this.form5.glassheight > 1810 || this.form5.glasswidth > 2760) { if (this.disabled1 == false) { this.disabled1 = true; this.$message.error(this.$t('The glass size is not within the range')); } } else { alert(1); this.disabled1 = false; } } else { @@ -1138,11 +1155,8 @@ if (res.data.message3 == 200) { this.$message.success(this.$t('Operation successful')); } else if (res.data.message2 == 300) { this.$message.error(this.$t('There is no such grid')); } else if (res.data.message2 == 500) { this.$message.error(this.$t('This glass is already in the cage')); this.$message.error(this.$t('This glass is already in the Queue')); } }); } else { @@ -1245,9 +1259,9 @@ }, //手动添加扫码位玻璃 InsertQueueGlass(parameter) { if (parameter == 1 && this.form5.barcode != "") { if (this.form5.barcode != this.form2.barcode) { InsertQueueGlassId(this.form5.barcode, 1).then(res => { if (parameter == 1 && this.form5.glassId != "") { if (this.form5.glassId != this.form2.glassId) { InsertQueueGlassId(1,this.form5).then(res => { if (res.data.message == 200) { this.form5 = {}; this.$message.success(this.$t('Operation successful')); @@ -1258,9 +1272,9 @@ } else { this.$message.error(this.$t('The glass ID already exists in the loading queue')); } } else if (parameter == 2 && this.form4.barcode != "") { if (this.form4.barcode != this.form3.barcode) { InsertQueueGlassId(this.form4.barcode, 2).then(res => { } else if (parameter == 2 && this.form4.glassId != "") { if (this.form4.glassId != this.form3.glassId) { InsertQueueGlassId(2,this.form4).then(res => { if (res.data.message == 200) { this.form4 = {}; this.$message.success(this.$t('Operation successful')); @@ -1335,6 +1349,14 @@ getDownMove(row, index) { let arr = this.OutSlice; arr.splice(index, 1, ...arr.splice(index + 1, 1, arr[index])); }, //切换出片队列状态 isAllowQueueState(){ isAllowQueues(!this.isAllowQueue).then(res=>{ if (res.data.message == 200) { this.$message.success(this.$t('Operation successful')); } }) } } } springboot-vue3/.idea/.gitignore
springboot-vue3/.idea/artifacts/springboot_vue3_war.xml
springboot-vue3/.idea/artifacts/springboot_vue3_war_exploded.xml
springboot-vue3/.idea/compiler.xml
springboot-vue3/.idea/encodings.xml
springboot-vue3/.idea/jarRepositories.xml
springboot-vue3/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_3.xml
springboot-vue3/.idea/libraries/Maven__ch_qos_logback_logback_core_1_2_3.xml
springboot-vue3/.idea/libraries/Maven__cn_hutool_hutool_all_5_5_4.xml
springboot-vue3/.idea/libraries/Maven__com_baomidou_mybatis_plus_3_2_0.xml
springboot-vue3/.idea/libraries/Maven__com_baomidou_mybatis_plus_annotation_3_2_0.xml
springboot-vue3/.idea/libraries/Maven__com_baomidou_mybatis_plus_boot_starter_3_2_0.xml
springboot-vue3/.idea/libraries/Maven__com_baomidou_mybatis_plus_core_3_2_0.xml
springboot-vue3/.idea/libraries/Maven__com_baomidou_mybatis_plus_extension_3_2_0.xml
springboot-vue3/.idea/libraries/Maven__com_baomidou_mybatis_plus_generator_3_2_0.xml
springboot-vue3/.idea/libraries/Maven__com_deepoove_poi_tl_1_12_1.xml
springboot-vue3/.idea/libraries/Maven__com_fasterxml_classmate_1_5_1.xml
springboot-vue3/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_11_1.xml
springboot-vue3/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_11_1.xml
springboot-vue3/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_11_1.xml
springboot-vue3/.idea/libraries/Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_11_1.xml
springboot-vue3/.idea/libraries/Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_11_1.xml
springboot-vue3/.idea/libraries/Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_11_1.xml
springboot-vue3/.idea/libraries/Maven__com_github_jsqlparser_jsqlparser_2_1.xml
springboot-vue3/.idea/libraries/Maven__com_github_virtuald_curvesapi_1_07.xml
springboot-vue3/.idea/libraries/Maven__com_github_xingshuangs_iot_communication_1_4_2.xml
springboot-vue3/.idea/libraries/Maven__com_google_guava_guava_20_0.xml
springboot-vue3/.idea/libraries/Maven__com_jayway_jsonpath_json_path_2_4_0.xml
springboot-vue3/.idea/libraries/Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml
springboot-vue3/.idea/libraries/Maven__com_zaxxer_HikariCP_3_4_5.xml
springboot-vue3/.idea/libraries/Maven__com_zaxxer_SparseBitSet_1_2.xml
springboot-vue3/.idea/libraries/Maven__commons_beanutils_commons_beanutils_1_9_4.xml
springboot-vue3/.idea/libraries/Maven__commons_codec_commons_codec_1_14.xml
springboot-vue3/.idea/libraries/Maven__commons_collections_commons_collections_3_2_2.xml
springboot-vue3/.idea/libraries/Maven__commons_io_commons_io_2_11_0.xml
springboot-vue3/.idea/libraries/Maven__commons_logging_commons_logging_1_0_4.xml
springboot-vue3/.idea/libraries/Maven__io_jsonwebtoken_jjwt_api_0_10_7.xml
springboot-vue3/.idea/libraries/Maven__io_jsonwebtoken_jjwt_impl_0_10_7.xml
springboot-vue3/.idea/libraries/Maven__io_jsonwebtoken_jjwt_jackson_0_10_7.xml
springboot-vue3/.idea/libraries/Maven__io_springfox_springfox_core_2_9_2.xml
springboot-vue3/.idea/libraries/Maven__io_springfox_springfox_schema_2_9_2.xml
springboot-vue3/.idea/libraries/Maven__io_springfox_springfox_spi_2_9_2.xml
springboot-vue3/.idea/libraries/Maven__io_springfox_springfox_spring_web_2_9_2.xml
springboot-vue3/.idea/libraries/Maven__io_springfox_springfox_swagger2_2_9_2.xml
springboot-vue3/.idea/libraries/Maven__io_springfox_springfox_swagger_common_2_9_2.xml
springboot-vue3/.idea/libraries/Maven__io_springfox_springfox_swagger_ui_2_9_2.xml
springboot-vue3/.idea/libraries/Maven__io_swagger_swagger_annotations_1_5_20.xml
springboot-vue3/.idea/libraries/Maven__io_swagger_swagger_models_1_5_20.xml
springboot-vue3/.idea/libraries/Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml
springboot-vue3/.idea/libraries/Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml
springboot-vue3/.idea/libraries/Maven__jakarta_validation_jakarta_validation_api_2_0_2.xml
springboot-vue3/.idea/libraries/Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml
springboot-vue3/.idea/libraries/Maven__junit_junit_4_13.xml
springboot-vue3/.idea/libraries/Maven__mysql_mysql_connector_java_8_0_21.xml
springboot-vue3/.idea/libraries/Maven__net_bytebuddy_byte_buddy_1_10_13.xml
springboot-vue3/.idea/libraries/Maven__net_bytebuddy_byte_buddy_agent_1_10_13.xml
springboot-vue3/.idea/libraries/Maven__net_minidev_accessors_smart_1_2.xml
springboot-vue3/.idea/libraries/Maven__net_minidev_json_smart_2_3.xml
springboot-vue3/.idea/libraries/Maven__org_apache_commons_commons_collections4_4_4.xml
springboot-vue3/.idea/libraries/Maven__org_apache_commons_commons_compress_1_21.xml
springboot-vue3/.idea/libraries/Maven__org_apache_commons_commons_lang3_3_10.xml
springboot-vue3/.idea/libraries/Maven__org_apache_commons_commons_math3_3_6_1.xml
springboot-vue3/.idea/libraries/Maven__org_apache_logging_log4j_log4j_api_2_13_3.xml
springboot-vue3/.idea/libraries/Maven__org_apache_logging_log4j_log4j_to_slf4j_2_13_3.xml
springboot-vue3/.idea/libraries/Maven__org_apache_poi_poi_5_2_2.xml
springboot-vue3/.idea/libraries/Maven__org_apache_poi_poi_ooxml_5_2_2.xml
springboot-vue3/.idea/libraries/Maven__org_apache_poi_poi_ooxml_lite_5_2_2.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_cache_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_config_core_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_config_ogdl_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_core_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_crypto_cipher_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_crypto_core_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_crypto_hash_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_event_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_lang_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_spring_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_spring_boot_starter_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_shiro_shiro_web_1_8_0.xml
springboot-vue3/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_37.xml
springboot-vue3/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_37.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlbeans_xmlbeans_5_0_3.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_anim_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_awt_util_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_bridge_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_codec_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_constants_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_css_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_dom_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_ext_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_gvt_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_i18n_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_parser_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_script_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_shared_resources_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_svg_dom_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_svggen_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_transcoder_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_util_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_batik_xml_1_14.xml
springboot-vue3/.idea/libraries/Maven__org_apache_xmlgraphics_xmlgraphics_commons_2_6.xml
springboot-vue3/.idea/libraries/Maven__org_apiguardian_apiguardian_api_1_1_0.xml
springboot-vue3/.idea/libraries/Maven__org_assertj_assertj_core_3_16_1.xml
springboot-vue3/.idea/libraries/Maven__org_freemarker_freemarker_2_3_30.xml
springboot-vue3/.idea/libraries/Maven__org_glassfish_jakarta_el_3_0_3.xml
springboot-vue3/.idea/libraries/Maven__org_hamcrest_hamcrest_2_2.xml
springboot-vue3/.idea/libraries/Maven__org_hibernate_validator_hibernate_validator_6_1_5_Final.xml
springboot-vue3/.idea/libraries/Maven__org_jboss_logging_jboss_logging_3_4_1_Final.xml
springboot-vue3/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_5_6_2.xml
springboot-vue3/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_api_5_6_2.xml
springboot-vue3/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_engine_5_6_2.xml
springboot-vue3/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_params_5_6_2.xml
springboot-vue3/.idea/libraries/Maven__org_junit_platform_junit_platform_commons_1_6_2.xml
springboot-vue3/.idea/libraries/Maven__org_junit_platform_junit_platform_engine_1_6_2.xml
springboot-vue3/.idea/libraries/Maven__org_junit_vintage_junit_vintage_engine_5_6_2.xml
springboot-vue3/.idea/libraries/Maven__org_mapstruct_mapstruct_1_2_0_Final.xml
springboot-vue3/.idea/libraries/Maven__org_mockito_mockito_core_3_3_3.xml
springboot-vue3/.idea/libraries/Maven__org_mockito_mockito_junit_jupiter_3_3_3.xml
springboot-vue3/.idea/libraries/Maven__org_mybatis_mybatis_3_5_2.xml
springboot-vue3/.idea/libraries/Maven__org_mybatis_mybatis_spring_2_0_2.xml
springboot-vue3/.idea/libraries/Maven__org_objenesis_objenesis_2_6.xml
springboot-vue3/.idea/libraries/Maven__org_opentest4j_opentest4j_1_2_0.xml
springboot-vue3/.idea/libraries/Maven__org_ow2_asm_asm_5_0_4.xml
springboot-vue3/.idea/libraries/Maven__org_owasp_encoder_encoder_1_2_2.xml
springboot-vue3/.idea/libraries/Maven__org_projectlombok_lombok_1_18_12.xml
springboot-vue3/.idea/libraries/Maven__org_skyscreamer_jsonassert_1_5_0.xml
springboot-vue3/.idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_30.xml
springboot-vue3/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_30.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_autoconfigure_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_freemarker_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_jdbc_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_json_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_logging_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_test_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_tomcat_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_web_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_websocket_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_test_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_3_2_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_plugin_spring_plugin_core_1_2_0_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_plugin_spring_plugin_metadata_1_2_0_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_aop_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_beans_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_context_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_context_support_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_core_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_expression_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_jcl_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_jdbc_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_messaging_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_test_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_tx_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_web_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_webmvc_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_springframework_spring_websocket_5_2_8_RELEASE.xml
springboot-vue3/.idea/libraries/Maven__org_xmlunit_xmlunit_core_2_7_0.xml
springboot-vue3/.idea/libraries/Maven__org_yaml_snakeyaml_1_26.xml
springboot-vue3/.idea/libraries/Maven__xml_apis_xml_apis_1_4_01.xml
springboot-vue3/.idea/libraries/Maven__xml_apis_xml_apis_ext_1_3_04.xml
springboot-vue3/.idea/misc.xml
springboot-vue3/.idea/modules.xml
springboot-vue3/.idea/vcs.xml
springboot-vue3/springboot-vue3.iml
springboot-vue3/src/main/java/MyGenerator.java
springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java
@@ -48,75 +48,66 @@ // // TODO Auto-generated catch block // e.printStackTrace(); // } // 判断进片请求 List<Short> datas1List = S7control.getinstance().ReadWord("DB106.24", 1);// 获取prc进片请求数据 List<Short> datas1ListState = S7control.getinstance().ReadWord("DB106.8", 1);// 获取进片车状态 List<Short> datas1ListState2 = S7control.getinstance().ReadWord("DB105.16", 1);// 获取进片车任务是否启动 boolean B01backs =spianService.listbool("DB106.60");// b01汇报 boolean B02backs = spianService.listbool("DB106.62");// b02汇报 StringBuilder B01glassid=spianService.queGlassid("DB106.DBB26");//BO1的玻璃id StringBuilder B02glassid=spianService.queGlassid("DB106.DBB26");//B02的玻璃id StringBuilder B01glassid = spianService.queGlassid("DB103.184", 14);// BO1的玻璃id StringBuilder B02glassid = spianService.queGlassid("DB103.212", 14);// B02的玻璃id //当进片小车完成任务时 if(B01backs==true){ //当B01小车汇报完成时更改玻璃状态为1 spianMapper.UpdateCageOver(B01glassid.toString(),1);//更改笼子表进片状态 spianMapper.Updatetask(1,0);//更改进片任务状态为1 spianMapper.overqueue(B01glassid.toString(),0);//更改上片任务表的状态为0 S7control.getinstance().WriteWord("DB105.48", (short) 1);//应答B01小车收到 S7control.getinstance().WriteWord("DB105.16", (short) 0);//进片任务启动改为0 }else{ S7control.getinstance().WriteWord("DB105.48", (short) 0);//恢复B01小车应答 S7control.getinstance().WriteWord("DB106.60", (short) 0);// 恢复B01小车应答改为0 S7control.getinstance().WriteWord("DB105.48", (short) 1);//汇报B01小车收到 } //当出片小车完成任务时 if(B02backs==true){ //当B02小车汇报完成时更改玻璃状态为0 spianMapper.UpdateCageOver(B02glassid.toString(),0);//更改笼子表出片状态 spianMapper.UpdatetaskOut(B02glassid.toString()); // 完成上一次出片或者调度任务 S7control.getinstance().WriteWord("DB105.50", (short) 1);//应答B02小车收到 }else{ S7control.getinstance().WriteWord("DB105.50", (short) 0);//恢复B02小车应答 S7control.getinstance().WriteWord("DB105.50", (short) 0);// 恢复B02小车应答改为0 // S7control.getinstance().WriteWord("DB105.50", (short) 1);//汇报B02小车收到 } // 获取DO1数据 StringBuilder queueid1 = spianService.queGlassid("DB106.DBB26"); StringBuilder queueid1 = spianService.queGlassid("DB103.44", 14); // 获取DO2数据 StringBuilder queueid2 = spianService.queGlassid("DB103.DBB78"); System.out.println("D01"+queueid1); System.out.println("D02"+queueid2); int questate = spianMapper.Selectqueuestate();//判断扫码位是否有玻璃已确认 StringBuilder queueid2 = spianService.queGlassid("DB103.58", 14); System.out.println("D01|" + queueid1); System.out.println("D02|" + queueid2); int questate = spianMapper.Selectquecount(queueid1.toString());// 判断扫码位是否有玻璃已确认 // queueid1.toString().isEmpty() north_glass_buffer1 glass1 = spianMapper.selectGlass(queueid1.toString());//D01的玻璃信息 north_glass_buffer1 glass2 = spianMapper.selectGlass(queueid2.toString());//D02玻璃信息 double quewitdh=0; double quewitdh2=0; //当扫码位玻璃id为空时 宽度为0 if(glass1==null){ quewitdh=0; queueid1=new StringBuilder(""); }else{ quewitdh=glass1.getglasslengthmm(); } if(glass2==null){ quewitdh2=0; queueid2=new StringBuilder(""); }else{ quewitdh2=glass2.getglasslengthmm(); } if (queueid1!=null&& questate == 0) { // 写入D01的数据到上片队列表 spianMapper.insertqueue(queueid1.toString(), 1, quewitdh); if (glass1 == null) { //当没有值时传空 spianMapper.Updatequeue(null,null,null,null, 0, null, null, null, null, 1); } else { spianMapper.overqueue2(queueid2.toString(), 0, 1);// 更改扫码位任务表的状态为0 spianMapper.Updatequeue(queueid1.toString(),glass1.getordernumber(),glass1.getlistnumber(),glass1.getboxnumber(),0,glass1.getglasslengthmm().toString(),glass1.getglassheightmm().toString(),glass1.getglasslength().toString(),glass1.getglassheight().toString(),1); } } if (queueid2!=null) { // 写入D02的数据到上片队列表 spianMapper.insertqueue(queueid2.toString(), 2, quewitdh2); spianMapper.overqueue2(queueid2.toString(),0,1);//更改上片任务表的状态为0 if(glass2==null){ spianMapper.Updatequeue(null,null,null,null, 0, null, null, null, null, 2); }else{ spianMapper.Updatequeue(queueid1.toString(),glass2.getordernumber(),glass2.getlistnumber(),glass2.getboxnumber(),0,glass2.getglasslengthmm().toString(),glass2.getglassheightmm().toString(),glass2.getglasslength().toString(),glass2.getglassheight().toString(),2); S7control.getinstance().WriteWord("DB105.16", (short) 0);//关闭任务启动 } } // 出片任务//////////////////////////////// @@ -126,7 +117,6 @@ // 获取已下发的出片id byte[] writedglassidbytesOut = S7control.getinstance().ReadByte("DB105.30", 14); String writedstrIdOut = new String(writedglassidbytesOut); boolean outstate = false;// 出片车空闲判断 boolean outstate1 = false;// 出片车任务是否启动 springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
@@ -2,19 +2,18 @@ import cn.hutool.json.JSONObject; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; import com.example.springboot.entity.Out_slice; import com.example.springboot.entity.Queue; import com.example.springboot.entity.StorageCage; import com.example.springboot.entity.alarmmg; import com.example.springboot.entity.north_glass_buffer1; import com.example.springboot.mapper.HomeMapper; import com.example.springboot.mapper.SpianMapper; import com.example.springboot.service.JdbcConnections; public class Plchome extends Thread { @@ -24,6 +23,10 @@ private JdbcConnections dbserve; private JdbcConnections jdbcConnections; public static Boolean isAllowQueue=true; // public static Map b=new HashMap<>(); // b.put() @Override public void run() { while (this != null) { @@ -53,30 +56,6 @@ // 进出片任务 List<StorageCage> tasklist1 = homeMapper.selectinout(3); List<StorageCage> tasklist2 = homeMapper.selectinout(2); for (StorageCage storageCage : tasklist1) { // storageCage.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(storageCage.getGlassId())); try { storageCage.setnorth_glass_buffer1s(jdbcConnections.SelectGlassByGlassIdOrderIdFrameId("", "", "")); } catch (SQLException e) { e.printStackTrace(); } try { storageCage.setnorth_glass_buffer1s( jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(storageCage.getGlassId(), "", "")); } catch (SQLException e) { e.printStackTrace(); } } for (StorageCage storageCage : tasklist2) { // storageCage.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(storageCage.getGlassId())); try { storageCage.setnorth_glass_buffer1s( jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(storageCage.getGlassId(), "", "")); } catch (SQLException e) { e.printStackTrace(); } } jsonObject.append("tasklist1", tasklist1); jsonObject.append("tasklist2", tasklist2); // 查询报警信息 @@ -107,39 +86,23 @@ jsonObject.append("queid", queid); jsonObject.append("state", state); // 获取扫码位与上片位玻璃信息 String queueglassid2 = homeMapper.GetQueueInfo(2); String queueglassid1 = homeMapper.GetQueueInfo(1); // north_glass_buffer1 form2 = homeMapper.SelectGlassByGlassID(queueglassid2); // north_glass_buffer1 form3 = homeMapper.SelectGlassByGlassID(queueglassid1); north_glass_buffer1 form2; if(queueglassid2.length()!=0){ try { form2 = jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(queueglassid2, "", ""); Queue form2 = homeMapper.GetQueueInfo(2); Queue form3 = homeMapper.GetQueueInfo(1); if(form2.getglassId()!=null&&form2.getglassId()!=""){ jsonObject.append("form2", form2); } catch (SQLException e) { e.printStackTrace(); } } north_glass_buffer1 form3; if(queueglassid1.length()!=0){ try { form3 = jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(queueglassid1, "", ""); if(form3.getglassId()!=null&&form3.getglassId()!=""){ jsonObject.append("form3", form3); } catch (SQLException e) { e.printStackTrace(); } } // 获取出片队列信息 List<Out_slice> listoutslice = homeMapper.SelectProductionqueue(); for (Out_slice out_slice : listoutslice) { out_slice.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(out_slice.getGlassId())); out_slice.setstorageCage(homeMapper.SelectStorageGlassById(out_slice.getGlassId())); } jsonObject.append("listoutslice", listoutslice); //获取当前出片队列状态 jsonObject.append("isAllowQueue", isAllowQueue); dbserve = WebSocketServer.applicationContext.getBean(JdbcConnections.class); boolean dbconnected = false; springboot-vue3/src/main/java/com/example/springboot/config/AppRunnerConfig.java
@@ -35,11 +35,11 @@ // System.out.println("启动完成"); // new PlcHold().start(); new PlcHold().start(); new Plcaction().start(); // // new Plchome().start(); new Plchome().start(); // new PlcParameter().start(); // springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
@@ -13,12 +13,15 @@ import com.example.springboot.service.JdbcConnections; import com.example.springboot.service.SpianService; import com.example.springboot.common.Result; import com.example.springboot.component.Plchome; import com.example.springboot.component.S7control; import com.example.springboot.entity.CarPosition; import com.example.springboot.entity.StorageCage; import com.example.springboot.entity.alarmmg; import com.example.springboot.entity.north_glass_buffer1; import com.example.springboot.entity.Out_slice; import com.example.springboot.entity.Queue; import org.springframework.web.bind.annotation.*; @@ -61,21 +64,6 @@ map.put("list2", storageCagelist2); map.put("list3", storageCagelist3); map.put("list4", storageCagelist4); return Result.success(map); } // 查询进/出片任务 @GetMapping("/loadinout") public Result selectinout(Integer types) throws SQLException{ List<StorageCage> storageCageinout = homeMapper.selectinout(types); for (StorageCage storageCage : storageCageinout) { storageCage.setnorth_glass_buffer1s(jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(storageCage.getGlassId(), "", "")); // storageCage.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(storageCage.getGlassId())); } Map<String, Object> map = new HashMap<>(); map.put("list", storageCageinout); return Result.success(map); } @@ -146,11 +134,6 @@ @GetMapping("/SelectCageInfo") public Result SelectCageInfo(short cage) throws SQLException { List<StorageCage> cageinfo = homeMapper.SelectCageInfo(cage); for (StorageCage storageCage : cageinfo) { // storageCage.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(storageCage.getGlassId())); storageCage.setnorth_glass_buffer1s(jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(storageCage.getGlassId(), "", "")); } Map<String, Object> map = new HashMap<>(); map.put("cageinfo", cageinfo); return Result.success(map); @@ -169,21 +152,17 @@ // 根据玻璃id手动出片 @GetMapping("/OutByGlassID") public Result OutByGlassID(String glassid) { public Result OutByGlassID(String glassid) throws SQLException { Map<String, Object> map = new HashMap<>(); // 调用伍上片函数 short result = homeMapper.SelectStorageByGlassId(glassid); if (result > 0) { Short results = spianService.selectout2(glassid); if (results == 200) { Out_slice result = homeMapper.SelectQueueByglassid(glassid); if(result==null) { north_glass_buffer1 north_glass_buffer1=jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(glassid, "", ""); String flip=jdbcConnections.SelectFlipByFrameBarcode(north_glass_buffer1.getFrameBarcode()); homeMapper.AddOutSliceS(glassid, flip, north_glass_buffer1.getFrameBarcode(), north_glass_buffer1.getglasslengthmm().toString(), north_glass_buffer1.getglassheightmm().toString()); map.put("message2", "200"); } else if (results == 300) { map.put("message2", "300"); } } else { map.put("message2", "500"); } return Result.success(map); } @@ -209,13 +188,10 @@ @GetMapping("/SelectGlassByGlassID") public Result SelectGlassByGlassID(String glassid) throws SQLException { // north_glass_buffer1 north_glass_buffer1s = homeMapper.SelectGlassByGlassID(glassid); north_glass_buffer1 north_glass_buffer1s=jdbcConnections.SelectGlassByGlassIdOrderIdFrameId(glassid, "", ""); Queue queue=jdbcConnections.SelectGlassByGlassIdOrderIdFrameIdQueue(glassid, "", ""); Map<String, Object> map = new HashMap<>(); if(glassid!=""){ map.put("form", north_glass_buffer1s); map.put("form", queue); } return Result.success(map); } @@ -231,14 +207,14 @@ // 手动往理片笼添加玻璃 @PostMapping("/Inglassid") public Result Inglassid(short cage, short cell, short tier, @RequestBody north_glass_buffer1 north_glass_buffer1s) { public Result Inglassid(short cage, short cell, short tier, @RequestBody Queue queue) { Map<String, Object> map = new HashMap<>(); short result = homeMapper.SelectStorageByGlassId(north_glass_buffer1s.getbarcode()); short result = homeMapper.SelectStorageByGlassId(queue.getglassId()); if (result > 0) { map.put("message", "300"); } else { homeMapper.Inglassid(north_glass_buffer1s, cage, cell, tier); spianMapper.UpdataAddCage1(north_glass_buffer1s.getglasslengthmm(), cage, cell); homeMapper.Inglassid(queue, cage, cell, tier); spianMapper.UpdataAddCage1(queue.getglasswidth(), cage, cell); } return Result.success(map); } @@ -254,15 +230,15 @@ // 手动添加扫码位玻璃 @PostMapping("/InsertQueueGlassId") public Result InsertQueueGlassId(String glassid, Short id) { public Result InsertQueueGlassId(Short id,@RequestBody Queue queue) { Map<String, Object> map = new HashMap<>(); short result = homeMapper.SelectStorageByGlassId(glassid); short result = homeMapper.SelectStorageByGlassId(queue.getglassId()); if (result > 0) { map.put("message", "300"); } else { homeMapper.InsertQueueGlassId(glassid, id); homeMapper.InsertQueueGlassId(queue, id); //调用伍存储过程 spianService.selectAll(glassid); spianService.selectAll(queue.getglassId()); map.put("message", "200"); } return Result.success(map); @@ -298,10 +274,8 @@ // 根据铝框id获取对应玻璃信息 @PostMapping("/SelectAluminumFrameInfoById") public Result SelectAluminumFrameInfoById(String FrameBarcode) throws SQLException { // List<north_glass_buffer1> listAluminumFrame = homeMapper.SelectAluminumFrameInfoById(FrameBarcode); List<north_glass_buffer1> listAluminumFrame = jdbcConnections.SelectGlassByGlassIdOrderIdFrameIds("","",FrameBarcode); String flip=homeMapper.SelectFlipByFrameBarcode(FrameBarcode); String flip=jdbcConnections.SelectFlipByFrameBarcode(FrameBarcode); for (north_glass_buffer1 north_glass_buffer1 : listAluminumFrame) { north_glass_buffer1.setstorageCage(homeMapper.SelectStorageGlassById(north_glass_buffer1.getbarcode())); north_glass_buffer1.setOut_slice(homeMapper.SelectQueueByglassid(north_glass_buffer1.getbarcode())); @@ -311,8 +285,6 @@ map.put("flip", flip); return Result.success(map); } // 查询出片队列数据 @PostMapping("/SelectProductionqueue") @@ -324,7 +296,9 @@ } Map<String, Object> maps = new HashMap<>(); maps.put("listoutslice", listoutslice); // Plchome.isAllowQueue=false; return Result.success(maps); } // 根据玻璃id删除出片队列玻璃 @@ -336,7 +310,7 @@ return Result.success(map); } // //添加出片 @PostMapping("/AddOutSliceS") public Result AddOutSliceS(@RequestBody String[][] AluminumFrames ) { for (String[] item : AluminumFrames) { @@ -344,7 +318,15 @@ homeMapper.AddOutSliceS(item[0],item[2],item[3],item[4],item[5]); } } System.out.println(AluminumFrames); Map<String, Object> map = new HashMap<>(); map.put("message", "200"); return Result.success(map); } //修改出片队列状态 @PostMapping("/isAllowQueues") public Result isAllowQueues(Boolean isAllowQueue) { Plchome.isAllowQueue=isAllowQueue; Map<String, Object> map = new HashMap<>(); map.put("message", "200"); return Result.success(map); springboot-vue3/src/main/java/com/example/springboot/entity/Out_slice.java
File was deleted springboot-vue3/src/main/java/com/example/springboot/entity/Queue.java
New file @@ -0,0 +1,113 @@ package com.example.springboot.entity; public class Queue { private int id; private String glassId; private String orderId; private String listId; private String boxId; private double glasswidth; private double glassheight; private double glasswidthmm; private double glassheightmm; private int type; private int state; private String time; public int getid() { return id; } public void setid(int id) { this.id = id; } public String getglassId() { return glassId; } public void setglassId(String glassId) { this.glassId = glassId; } public String getorderId() { return orderId; } public void setorderId(String orderId) { this.orderId = orderId; } public String getlistId() { return listId; } public void setlistId(String listId) { this.listId = listId; } public String getboxId() { return boxId; } public void setboxId(String boxId) { this.boxId = boxId; } public double getglasswidth() { return glasswidth; } public void setglasswidth(double glasswidth) { this.glasswidth = glasswidth; } public double getglassheight() { return glassheight; } public void setglassheight(double glassheight) { this.glassheight = glassheight; } public double getglasswidthmm() { return glasswidthmm; } public void setglasswidthmm(double glasswidthmm) { this.glasswidthmm = glasswidthmm; } public double getglassheightmm() { return glassheightmm; } public void setglassheightmm(double glassheightmm) { this.glassheightmm = glassheightmm; } public int gettype() { return type; } public void settype(int type) { this.type = type; } public int getstate() { return state; } public void setstate(int state) { this.state = state; } public String gettime() { return time; } public void settime(String time) { this.time = time; } } springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java
@@ -1,7 +1,5 @@ package com.example.springboot.entity; public class StorageCage { private Integer id; private Integer prcId; @@ -11,13 +9,14 @@ private Double width; private Double glasswidth; private Double glassheight; private Double glasswidthmm; private Double glassheightmm; private String state; private Integer tier; private String orderId; private Integer disabled; private String lengthWidth; private String listno; private String boxno; private String listId; private String boxId; private north_glass_buffer1 north_glass_buffer1s; @@ -50,6 +49,7 @@ public Integer getId() { return id; } public Integer getPrcId() { return prcId; } @@ -57,7 +57,6 @@ public void setPrcId(Integer prcId) { this.prcId = prcId; } public String getGlassId() { return glassId; @@ -131,6 +130,22 @@ this.glassheight = glassheight; } public Double getGlassWidthMm() { return glasswidthmm; } public void setGlassWidthMm(Double glasswidthmm) { this.glasswidthmm = glasswidthmm; } public Double getGlassHeightMm() { return glassheightmm; } public void setGlassHeightMm(Double glassheightmm) { this.glassheightmm = glassheightmm; } public Integer getDisabled() { return disabled; } @@ -139,29 +154,20 @@ this.disabled = disabled; } public String getLengthWidth() { return lengthWidth; public String getListId() { return listId; } public void setLengthWidth(String lengthWidth) { this.lengthWidth = lengthWidth; public void setListno(String listId) { this.listId = listId; } public String getListno() { return listno; public String getBoxId() { return boxId; } public void setListno(String listno) { this.listno = listno; public void setBoxno(String boxId) { this.boxId = boxId; } public String getBoxno() { return boxno; } public void setBoxno(String boxno) { this.boxno = boxno; } } springboot-vue3/src/main/java/com/example/springboot/entity/north_glass_buffer1.java
@@ -102,7 +102,7 @@ } public Double getglassheightmm() { return glasslengthmm; return glassheightmm; } public void setglassheightmm(Double glassheightmm) { this.glassheightmm = glassheightmm; springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java
@@ -3,11 +3,11 @@ import org.apache.ibatis.annotations.*; import com.example.springboot.entity.CarPosition; import com.example.springboot.entity.Glass; import com.example.springboot.entity.StorageCage; import com.example.springboot.entity.alarmmg; import com.example.springboot.entity.north_glass_buffer1; import com.example.springboot.entity.Out_slice; import com.example.springboot.entity.Queue; import java.util.List; @@ -34,7 +34,7 @@ List<StorageCage> selectRack4(); // 根据任务类型查询当前正在出片,进片的玻璃信息 @Select("select *,concat(glasswidth,' x ',glassheight) as lengthwidth from storage_cage where state=#{task_type}") @Select("select * from storage_cage where state=#{task_type}") List<StorageCage> selectinout(@Param("task_type") Integer task_type); // 查询是否存在此订单 @@ -98,8 +98,8 @@ void Disabled(short cage, short cell, short disabled); //理片笼新增玻璃 @Update("update storage_cage set state=1,glass_id=#{glass.barcode},order_id=#{glass.ordernumber},glasswidth=#{glass.glasslengthmm},glassheight=#{glass.glassheightmm} where cage=#{cage} and cell=#{cell} and tier=#{tier}") void Inglassid(north_glass_buffer1 glass, short cage, short cell, short tier); @Update("update storage_cage set state=1,glass_id=#{glass.glassId},order_id=#{glass.orderId},glasswidth=#{glass.glasswidth},glassheight=#{glass.glassheight},glasswidthmm=#{glass.glasswidthmm},glassheightmm=#{glass.glassheightmm},listid=#{glass.listId},boxid=#{glass.boxId} where cage=#{cage} and cell=#{cell} and tier=#{tier}") void Inglassid(Queue glass, short cage, short cell, short tier); //查询理片笼中是否有此玻璃 @Select("select count(*) from storage_cage where glass_id=#{glassId}") @@ -110,12 +110,12 @@ List<north_glass_buffer1> SelectGlass(String orderid); //获取上片队列信息 @Select("select glassid from queue where id=#{id}") String GetQueueInfo(int id); @Select("select * from queue where id=#{id}") Queue GetQueueInfo(int id); //手动添加扫码位玻璃 @Select("update queue set glassid=#{glassid},state=1 where id=#{id}") void InsertQueueGlassId(String glassid,Short id); @Select("update queue set glassid=#{queue.glassId},orderid=#{queue.orderId},listId=#{queue.listId},boxId=#{queue.boxId},glasswidth=#{queue.glasswidth},glassheight=#{queue.glassheight},glasswidthmm=#{queue.glasswidthmm},glassheightmm=#{queue.glassheightmm},state=1 where id=#{id}") void InsertQueueGlassId(Queue queue,Short id); //确认扫码位玻璃信息 @Select("update queue set state=1 where id=1") @@ -150,20 +150,14 @@ @Select("select * from north_glass_buffer1 where FrameBarcode=#{FrameBarcode}") List<north_glass_buffer1> SelectAluminumFrameInfoById(String FrameBarcode); //查询根据id查询 @Select("select b.* from storage_cage a inner join out_slice b on a.glass_id=b.glassId where b.glassId=#{glassId}") List<Out_slice> SelectOutSliceById(String glassId); //查询玻璃id是否 @Select("select Flip from north_glass_buffer1_frames where Barcode=#{frameBarcode} limit 1") String SelectFlipByFrameBarcode(String frameBarcode); //查询玻璃是否已存在于出片队列 @Select("select * from out_slice where glassid=#{getbarcode} and (state=0 or state=1)") Out_slice SelectQueueByglassid(String getbarcode); //查询玻璃是否已存在于出片队列 //添加出片队列 @Select("INSERT INTO out_slice( `glassId`, `barcode`, `glasswidth`, `glassheight`, `state`, `flip`) VALUES ( #{glassid}, #{FrameNo}, #{glasslengthMm}, #{glassheightMm}, 0, #{flip});") void AddOutSliceS(String glassid, String flip, String FrameNo, String glasslengthMm, String glassheightMm); } springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java
@@ -37,7 +37,7 @@ //获取玻璃信息 @Select("select ordernumber as ordernumber,glasslength_mm as glasslengthmm,barcode from north_glass_buffer1 where barcode=#{glassid}") @Select("select ordernumber ,glasslength_mm as glasslengthmm,glassheight_mm as glassheightmm,barcode,listnumber,boxnumber,glasslength,glassheight from north_glass_buffer1 where barcode=#{glassid}") north_glass_buffer1 selectGlass(String glassid); //出片任务查询 @@ -109,9 +109,12 @@ //判断有几块玻璃还在出片中 @Select("SELECT COUNT(*) FROM `storage_cage` where state=3;") Integer Selectoutstate(); //获取进片队列id @Insert("update queue set glassid=#{glassid},width=#{width} where type=#{type};") void insertqueue(String glassid,int type,double width); //判断队列表是否有该玻璃 @Select("select COUNT(*) from queue where glassid=#{glassid};") int Selectquecount(String glassid); //更新进片队列 @Update("update queue set glassid=#{glassid},orderid=#{orderid},listid=#{listid},boxid=#{boxid},state=#{state},glasswidthmm=#{glasswidthmm},glassheightmm=#{glassheightmm},glasswidth=#{glasswidth},glassheight=#{glassheight} where type=#{type};") void Updatequeue(String glassid,String orderid,String listid,String boxid,int state,String glasswidth,String glassheight,String glasswidthmm,String glassheightmm,int type); //完成进片队列任务 @Update("update queue set state=#{state} where glassid=#{glassid};") void overqueue(String glassid,int state); springboot-vue3/src/main/java/com/example/springboot/service/JdbcConnections.java
@@ -11,6 +11,7 @@ import org.springframework.stereotype.Component; import com.example.springboot.entity.Glass; import com.example.springboot.entity.Queue; import com.example.springboot.entity.north_glass_buffer1; @Component public class JdbcConnections { @@ -69,12 +70,41 @@ // conn.close(); return north_glass_buffer1s; } //根据玻璃id,订单id,铝框id查询客户玻璃信息 public Queue SelectGlassByGlassIdOrderIdFrameIdQueue(String glassid,String orderid,String frameid) throws SQLException { conn = getConn(); Queue queue=new Queue(); String sql = "select * from north_glass_buffer1 where barcode=? or ordernumber=? or FrameBarcode=?"; ps = conn.prepareStatement(sql); ps.setString(1, glassid); ps.setString(2, orderid); ps.setString(3, frameid); rs= ps.executeQuery(); while (rs.next()) { queue.setid(rs.getInt("Id")); queue.setorderId(rs.getString("ordernumber")); queue.setlistId(rs.getString("listnumber")); queue.setboxId(rs.getString("boxnumber")); queue.setglassId(rs.getString("barcode")); queue.setglasswidthmm(rs.getDouble("glasslength")); queue.setglassheightmm(rs.getDouble("glassheight")); queue.setglasswidth(rs.getDouble("glasslength_mm")); queue.setglassheight(rs.getDouble("glassheight_mm")); // queue.setitemtype(rs.getString("itemtype")); // queue.setslotnumber(rs.getString("slotnumber")); // queue.setdatemodified(rs.getString("datemodified")); // queue.setdatecreated(rs.getString("datecreated")); // queue.setFrameBarcode(rs.getString("FrameBarcode")); } // conn.close(); return queue; } public List<north_glass_buffer1> SelectGlassByGlassIdOrderIdFrameIds(String glassid,String orderid,String frameid) throws SQLException { conn = getConn(); // north_glass_buffer1 glass=new north_glass_buffer1(); List<north_glass_buffer1> glass=new ArrayList<north_glass_buffer1>(); String sql = "select * from north_glass_buffer1 where barcode=? or ordernumber=? or FrameBarcode=?"; String sql = "select * from north_glass_buffer1 where position(? in barcode) and position(? in ordernumber) and position(? in FrameBarcode)"; ps = conn.prepareStatement(sql); ps.setString(1, glassid); ps.setString(2, orderid); @@ -104,6 +134,23 @@ } // conn.close(); return glass; } public String SelectFlipByFrameBarcode(String frameBarcode) throws SQLException { conn = getConn(); // north_glass_buffer1 glass=new north_glass_buffer1(); String flip=""; String sql1 = "select * from north_glass_buffer1_frames where Barcode=? limit 1"; ps = conn.prepareStatement(sql1); ps.setString(1, frameBarcode); rs= ps.executeQuery(); while (rs.next()) { flip=rs.getString("Flip"); } // conn.close(); return flip; } /** @@ -138,4 +185,5 @@ } } springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java
@@ -536,9 +536,9 @@ S7control.getinstance().WriteByte(address, bytes);// 派发出片id } //获取地址内的玻璃id转字符串 public StringBuilder queGlassid(String address) { public StringBuilder queGlassid(String address,int count) { StringBuilder writedstrIdOut = new StringBuilder(); byte[] writedglassidbytesOut = S7control.getinstance().ReadByte(address, 14); byte[] writedglassidbytesOut = S7control.getinstance().ReadByte(address, count); if (writedglassidbytesOut != null) { // 获取玻璃id for (byte iditem : writedglassidbytesOut) { springboot-vue3/src/main/resources/sql/canadames.sql