From d9b5a16b878aef6181c8124c97ff298b0d0adbcd Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期一, 27 十一月 2023 09:22:36 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/CanadaMes
---
CanadaMes-ui/src/views/home/index.vue | 564 ++++++++++++++++----------
springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java | 42 ++
springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java | 36
springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java | 68 ++
springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java | 129 +++++
CanadaMes-ui/src/lang/locales/zh-CN.json | 51 +-
springboot-vue3/src/main/java/com/example/springboot/service/OutSlice.java | 66 +++
springboot-vue3/src/main/java/com/example/springboot/entity/out_slice.java | 17
.vscode/launch.json | 28 +
CanadaMes-ui/src/api/home.js | 42 +
springboot-vue3/src/main/java/com/example/springboot/entity/Out_slice.java | 101 ++++
CanadaMes-ui/src/lang/locales/en-US.json | 51 +-
springboot-vue3/src/main/java/com/example/springboot/security/config/ShiroConfig.java | 34
13 files changed, 908 insertions(+), 321 deletions(-)
diff --git a/.vscode/launch.json b/.vscode/launch.json
new file mode 100644
index 0000000..a0df939
--- /dev/null
+++ b/.vscode/launch.json
@@ -0,0 +1,28 @@
+{
+ // 浣跨敤 IntelliSense 浜嗚В鐩稿叧灞炴�с��
+ // 鎮仠浠ユ煡鐪嬬幇鏈夊睘鎬х殑鎻忚堪銆�
+ // 娆蹭簡瑙f洿澶氫俊鎭紝璇疯闂�: https://go.microsoft.com/fwlink/?linkid=830387
+ "version": "0.2.0",
+ "configurations": [
+ {
+ "type": "java",
+ "name": "Current File",
+ "request": "launch",
+ "mainClass": "${file}"
+ },
+ {
+ "type": "java",
+ "name": "MyGenerator",
+ "request": "launch",
+ "mainClass": "MyGenerator",
+ "projectName": "springboot-vue3"
+ },
+ {
+ "type": "java",
+ "name": "AuthorityApplication",
+ "request": "launch",
+ "mainClass": "com.example.springboot.AuthorityApplication",
+ "projectName": "springboot-vue3"
+ }
+ ]
+}
\ No newline at end of file
diff --git a/CanadaMes-ui/src/api/home.js b/CanadaMes-ui/src/api/home.js
index 4a35acf..05cc8b4 100644
--- a/CanadaMes-ui/src/api/home.js
+++ b/CanadaMes-ui/src/api/home.js
@@ -154,4 +154,44 @@
method: 'post',
data: ""
})
-}
\ No newline at end of file
+}
+
+export function SelectGlassNo(orderid) {
+ return request({
+ url: '/home/SelectGlassNo?orderid=' + orderid,
+ method: 'post',
+ data: ""
+ })
+}
+
+export function SelectAluminumFrameInfoById(FrameBarcode) {
+ return request({
+ url: '/home/SelectAluminumFrameInfoById?FrameBarcode=' + FrameBarcode,
+ method: 'post',
+ data: ""
+ })
+}
+
+export function SelectProductionqueue() {
+ return request({
+ url: '/home/SelectProductionqueue',
+ method: 'post',
+ data: ""
+ })
+}
+
+export function DeleteProductionQueueGlass(id) {
+ return request({
+ url: '/home/DeleteProductionQueueGlass?id='+id,
+ method: 'post',
+ data: ""
+ })
+}
+
+export function AddOutSliceS(data) {
+ return request({
+ url: '/home/AddOutSliceS',
+ method: 'post',
+ data
+ })
+}
diff --git a/CanadaMes-ui/src/lang/locales/en-US.json b/CanadaMes-ui/src/lang/locales/en-US.json
index 4cb0513..a3374c9 100644
--- a/CanadaMes-ui/src/lang/locales/en-US.json
+++ b/CanadaMes-ui/src/lang/locales/en-US.json
@@ -227,8 +227,8 @@
"deleteCancelledMessage": "Deletion cancelled",
- "Enter the glass lD":"Enter the glass lD",
- "Infeed barcodid":"Infeed barcodid",
+ "Enter the glass barcode":"Enter the glass barcode",
+ "Manually Infeed Glass":"Manually Infeed Glass",
"Enter the order number":"Enter the order number",
"Exit the glass by order number":"Exit the glass by order number",
"Please confirm the glass information":"Please confirm the glass information",
@@ -236,33 +236,30 @@
"Alarm Information":"Alarm Information",
"Cage Details":"Cage Details",
"order":"order",
- "length":"length",
- "width":"width",
+ "Length":"Length",
+ "Width":"Width",
"Operate":"Operate",
- "end task":"end task",
+ "Terminate Task":"Terminate Task",
"cancel":"cancel",
"confirm":"confirm",
- "number":"number",
- "Outfeed Barcodid":"Outfeed Barcodid",
- "Infeed Barcodid":"Infeed Barcodid",
- "The Cage number being used":"The Cage Number being used",
- "The Slot number being used":"The Slot Number being used",
- "Order Nmuber":"Order Nmuber",
- "Length and Width":"Length and Width",
+ "Number":"Number",
+ "Outfeed glass barcode":"Outfeed glass barcode",
+ "Infeed glass barcode":"Infeed glass barcode",
+ "Cage No":"Cage No",
+ "Slot No":"Slot No",
+ "Dim":"Dim",
"id":"id",
"content":"content",
"timeon":"timeon",
"endTime":"endTime",
- "The Cage number":"The Cage number",
"The Side":"The Side",
- "The Slot Number":"The Slot Number",
- "Barcodid":"Barcodid",
- "Order Number":"Order Number",
- "List Number":"List Number",
- "Box Number":"Box Number",
- "delete":"delete",
- "out":"out",
+ "barcode":"barcode",
+ "Order No":"Order No",
+ "List No":"List No",
+ "Box No":"Box No",
+ "Delete":"Delete",
+ "Out":"Out",
"Operation successful":"Operation successful",
"Operation canceled":"Operation canceled",
@@ -273,7 +270,6 @@
"No delete allowed":"No delete allowed",
"No out allowed":"No out allowed",
"Are you sure to perform this operation ?":"Are you sure to perform this operation ?",
- "prompt":"prompt",
"Yes":"Yes",
@@ -283,13 +279,13 @@
"DataBase Connection failed":"DataBase Connection failed",
"Distribute parameters":"Distribute parameters",
"The glass size is not within the range":"The glass size is not within the range",
- "increase":"increase",
+ "Increase":"Increase",
"Enable":"Enable",
"Disable":"Disable",
"Usage":"Usage",
"Space (Pieces)":"Space (Pieces)",
"This glass is already in the cage":"This glass is already in the cage",
- "Enter the Order lD":"Enter the Order lD",
+ "Enter the Order No":"Enter the Order No",
"OrderInfo":"OrderInfo",
"Query":"Query",
"permission update":"permission update",
@@ -302,6 +298,13 @@
"Clear Current":"Clear Current",
"Confirm Modification":"Confirm modification",
"The glass ID already exists in the loading queue":"The glass ID already exists in the loading queue",
- "This glass ID already exists in the sorting cage":"This glass ID already exists in the sorting cage"
+ "This glass ID already exists in the sorting cage":"This glass ID already exists in the sorting cage",
+ "Production queue":"Production queue",
+ "Enter the Frame No":"Enter the Frame No",
+ "Frame No":"Frame No",
+ "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"
}
\ No newline at end of file
diff --git a/CanadaMes-ui/src/lang/locales/zh-CN.json b/CanadaMes-ui/src/lang/locales/zh-CN.json
index 0b55a8b..49d0c11 100644
--- a/CanadaMes-ui/src/lang/locales/zh-CN.json
+++ b/CanadaMes-ui/src/lang/locales/zh-CN.json
@@ -215,8 +215,8 @@
"cancelButtonText": "鍙栨秷",
"deleteSuccessMessage": "鍒犻櫎鎴愬姛",
"deleteCancelledMessage": "宸插彇娑堝垹闄ゆ搷浣�",
- "Enter the glass lD": "杈撳叆鐜荤拑id",
- "Infeed barcodid": "鎵嬪姩涓婄墖",
+ "Enter the glass barcode": "杈撳叆鐜荤拑id",
+ "Infeed Barcodeid": "鎵嬪姩涓婄墖",
"Enter the order number": "杈撳叆璁㈠崟鍙�",
"Exit the glass by order number": "鎸夎鍗曞嚭鐗�",
"Please confirm the glass information": "璇风‘璁ょ幓鐠冧俊鎭�",
@@ -224,32 +224,28 @@
"Alarm Information": "鎶ヨ淇℃伅",
"Cage Details": "鐞嗙墖绗艰鎯�",
"order": "璁㈠崟",
- "length": "闀�",
- "width": "瀹�",
+ "Length": "闀�",
+ "Width": "瀹�",
"Operate": "鎿嶄綔",
+ "Terminate Task":"缁撴潫浠诲姟",
"end task": "瀹屾垚浠诲姟",
- "cancel": "鍙栨秷",
- "confirm": "纭",
- "number": "鏁伴噺",
- "Outfeed Barcodid": "鍑虹墖鐜荤拑id",
- "Infeed Barcodid": "杩涚墖鐜荤拑id",
- "The Cage number being used": "绗煎瓙",
- "The Slot number being used": "鏍煎瓙",
- "Order Nmuber": "璁㈠崟缂栧彿",
- "List Number": "鍒楄〃缂栧彿",
- "Box Number": "绠卞瓙缂栧彿",
- "Length and Width": "灏哄",
+ "Number": "鏁伴噺",
+ "Outfeed glass barcode": "鍑虹墖鐜荤拑id",
+ "Infeed glass barcode": "杩涚墖鐜荤拑id",
+ "Order No": "璁㈠崟缂栧彿",
+ "List No": "鍒楄〃缂栧彿",
+ "Box No": "绠卞瓙缂栧彿",
+ "Dim": "灏哄",
"id": "id",
"content": "鍐呭",
"timeon": "鎶ヨ鏃堕棿",
"endTime": "缁撴潫鏃堕棿",
- "The Cage number": "绗煎瓙",
+ "Cage No": "绗煎瓙",
"The Side": "鍐呭渚�",
- "The Slot Number": "鏍煎瓙",
- "Barcodid": "鐜荤拑id",
- "Order Number": "璁㈠崟",
- "delete": "鍒犻櫎",
- "out": "鍑虹墖",
+ "Slot No": "鏍煎瓙",
+ "Barcode": "鐜荤拑id",
+ "Delete": "鍒犻櫎",
+ "Out": "鍑虹墖",
"Operation successful": "鎿嶄綔鎴愬姛",
"Operation canceled": "鎿嶄綔鍙栨秷",
"There is no such order": "娌℃湁姝よ鍗曠殑鐜荤拑",
@@ -276,13 +272,13 @@
"DataBase Connection failed": "鏁版嵁搴撹繛鎺ュけ璐�",
"Distribute parameters": "涓嬪彂鍙傛暟",
"The glass size is not within the range": "鐜荤拑灏哄涓嶅湪鑼冨洿鍐�",
- "increase": "娣诲姞",
+ "Increase": "娣诲姞",
"Enable": "鍚敤",
"Disable": "绂佺敤",
"Usage": "浣跨敤鐜�",
"Space (Pieces)": "绌洪棿(鐗囨暟)",
"This glass is already in the cage": "绗煎瓙閲屽凡鏈夋鐜荤拑",
- "Enter the Order lD": "璇疯緭鍏ヨ鍗昳d",
+ "Enter the Order No": "璇疯緭鍏ヨ鍗昳d",
"OrderInfo": "璁㈠崟淇℃伅",
"Query": "鏌ヨ",
"permission update": "鏉冮檺缂栬緫",
@@ -296,6 +292,15 @@
"Confirm Modification": "纭淇敼",
"The glass ID already exists in the loading queue": "涓婄墖闃熷垪宸插瓨鍦ㄦ鐜荤拑id",
"This glass ID already exists in the sorting cage": "鐞嗙墖绗煎唴宸插瓨鍦ㄦ鐜荤拑id",
+ "Production queue":"涓婄墖闃熷垪",
+ "Enter the Aluminum Frame No":"璇疯緭鍏ラ摑妗唅d",
+ "Frame No":"閾濇id",
+ "Glass information corresponding to aluminum frame":"閾濇瀵瑰簲鐨勭幓鐠冧俊鎭�",
+ "In the cage":"鍦ㄧ鍐�",
+ "Flip":"缈昏浆",
+ "In the queue":"鍦ㄩ槦鍒�",
+ "Enter the Frame No":"璇疯緭鍏ラ摑妗唅d",
+ "Manually Infeed Glass":"鎵嬪姩杩涚墖",
"langparameter": {
"conveyor Velocity(Auto FAST)": "鐨甫杈撻�佽嚜鍔ㄥ揩閫�",
"conveyor Velocity(Auto SLOW)": "鐨甫杈撻�佽嚜鍔ㄦ參閫�",
diff --git a/CanadaMes-ui/src/views/home/index.vue b/CanadaMes-ui/src/views/home/index.vue
index 166dc7d..f6c4317 100644
--- a/CanadaMes-ui/src/views/home/index.vue
+++ b/CanadaMes-ui/src/views/home/index.vue
@@ -111,9 +111,15 @@
top: 366px; */
}
-.orderbutton {
+.orderbutton1 {
position: absolute;
left: 1070px;
+ top: 70px;
+}
+
+.orderbutton2 {
+ position: absolute;
+ left: 1170px;
top: 70px;
}
@@ -194,39 +200,46 @@
</div>
</div>
<div style="display:flex;justify-content: space-around;width: 95%;margin: 0 auto;">
- <el-input style="width:15%;" :placeholder="$t('Enter the glass lD')" v-model="glassid1"></el-input>
- <el-button type="primary" @click="SelectGlassByGlassIDs(2)">{{ $t('Infeed barcodid') }}</el-button>
- <el-input style="width:15%;" :placeholder="$t('Enter the order number')" v-model="order"></el-input>
+ <el-input style="width:15%;" :placeholder="$t('Enter the glass barcode')" v-model="glassid1"></el-input>
+ <el-button type="primary" @click="SelectGlassByGlassIDs(2)">{{ $t('Manually Infeed Glass') }}</el-button>
+ <el-input style="width:15%;" :placeholder="$t('Enter the Order No')" v-model="order"></el-input>
<el-button type="warning" @click="showform1();">{{ $t('Exit the glass by order number') }}</el-button>
</div>
<div>
<el-table :data="this.tasklist1" border style="width: 100%">
- <el-table-column :width="130" prop="cage" :label="$t('The Cage number being used')"></el-table-column>
- <el-table-column :width="130" prop="cell" :label="$t('The Slot number being used')"></el-table-column>
- <el-table-column :width="150" prop="glassId" :label="$t('Outfeed Barcodid')"></el-table-column>
- <el-table-column :width="130" prop="orderId" :label="$t('Order Nmuber')"></el-table-column>
- <el-table-column prop="list" :label="$t('List Number')"></el-table-column>
- <el-table-column prop="box" :label="$t('Box Number')"></el-table-column>
- <el-table-column :width="230" prop="lengthWidth" :label="$t('Length(inch) and Width(inch)')"></el-table-column>
- <el-table-column :label="$t('Operate')">
+ <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="150" prop="glassId" :label="$t('Outfeed glass barcode')"></el-table-column>
+ <el-table-column :width="130" 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="lengthWidth" :label="$t('Dim')"></el-table-column>
+ <el-table-column :label="$t('Terminate Task')">
<template slot-scope='scope'>
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
- @click="endtask(1, scope.row.glassId, scope.row.cell)">{{ $t('end task') }}</el-button>
+ @click="endtask(1, scope.row.glassId, scope.row.cell)">{{ $t('Terminate Task')
+ }}</el-button>
</template>
</el-table-column>
</el-table>
<el-table :data="this.tasklist2" border style="width: 100%">
- <el-table-column :width="130" prop="cage" :label="$t('The Cage number being used')"></el-table-column>
- <el-table-column :width="130" prop="cell" :label="$t('The Slot number being used')"></el-table-column>
- <el-table-column :width="150" prop="glassId" :label="$t('Infeed Barcodid')"></el-table-column>
- <el-table-column :width="130" prop="orderId" :label="$t('Order Nmuber')"></el-table-column>
- <el-table-column prop="list" :label="$t('List Number')"></el-table-column>
- <el-table-column prop="box" :label="$t('Box Number')"></el-table-column>
- <el-table-column :width="230" prop="lengthWidth" :label="$t('Length(inch) and Width(inch)')"></el-table-column>
- <el-table-column :label="$t('Operate')">
+ <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="150" prop="glassId" :labelf="$t('Infeed glass barcode')"></el-table-column>
+ <el-table-column :width="130" 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="lengthWidth" :label="$t('Dim')">
+ <template slot-scope='scope'>
+ {{ scope.row.north_glass_buffer1s.glasslength }}*{{ scope.row.north_glass_buffer1s.glassheight }}
+ </template>
+ </el-table-column>
+
+ <el-table-column :label="$t('Terminate Task')">
<template slot-scope='scope'>
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
- @click="endtask(0, scope.row.glassId, scope.row.cell)">{{ $t('end task') }}</el-button>
+ @click="endtask(0, scope.row.glassId, scope.row.cell)">{{ $t('Terminate Task')
+ }}</el-button>
</template>
</el-table-column>
</el-table>
@@ -274,7 +287,8 @@
<div class="blocks-img" :style="{ left: car2 + 'px', top: '175px' }"></div>
<div class="blocks-img2"></div>
<div class="blocks-img3"></div>
- <el-button class="orderbutton" type="primary" @click="showform2()">{{ $t('OrderInfo') }}</el-button>
+ <el-button class="orderbutton1" type="primary" @click="showform2()">{{ $t('OrderInfo') }}</el-button>
+ <el-button class="orderbutton2" type="primary" @click="showform6()">{{ $t('Production queue') }}</el-button>
<!-- <div style="display:flex;position: absolute;float:left;z-index: 999;top:112px;left:328px;">
<div :class="getStatusClass(item.state)" v-for="(item,index) in cagelist1" :key="item['date']"
@@ -304,22 +318,35 @@
</el-footer>
<el-dialog :visible.sync="dialogFormVisible" :title="$t('Please confirm the glass information')">
<el-form :model="form" label-width="100px" style="padding-right: 30px">
- <el-form-item :label="$t('Barcodid')">
- <el-input style="width:15%;" :placeholder="$t('Enter the glass lD')" v-model="glassid"></el-input>
+ <el-form-item :label="$t('Barcode')">
+ <el-input style="width:15%;" :placeholder="$t('Enter the glass barcode')" v-model="glassid"></el-input>
<el-button type="primary" @click="showform(3)">{{ $t('Query') }}</el-button>
</el-form-item>
- <el-form-item :label="$t('order')">
- <el-input v-model="form.orderId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Barcode')">
+ <el-input v-model="form.barcode" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('length(inch)')">
- <el-input v-model="form.height" readonly autocomplete="off" />
+ <el-form-item :label="$t('Order No')">
+ <el-input v-model="form.ordernumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('width(inch)')">
- <el-input v-model="form.width" readonly autocomplete="off" />
+ <el-form-item :label="$t('List No')">
+ <el-input v-model="form.listnumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('Barcodid')">
- <el-input v-model="form.glassId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Box No')">
+ <el-input v-model="form.boxnumber" 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-form-item>
+ <el-form-item :label="$t('Width')">
+ <el-input v-model="form.glassheightMm" readonly autocomplete="off" />
+ </el-form-item>
+
</el-form>
<template #footer>
<span class="dialog-footer">
@@ -334,6 +361,79 @@
</template>
</el-dialog>
+ <el-dialog :visible.sync="dialogFormVisible1" :title="$t('Please confirm the Ordering Information')">
+ <el-form :model="form1" label-width="100px" style="padding-right: 30px">
+ <el-form-item :label="$t('Order No')">
+ <el-input v-model="form1.order" autocomplete="off" />
+ </el-form-item>
+ <el-form-item :label="$t('Number')">
+ <el-input v-model="form1.number" autocomplete="off" />
+ </el-form-item>
+ </el-form>
+ <template #footer>
+ <span class="dialog-footer">
+ <el-button @click="getOrder();" type="primary">{{ $t('confirm') }}</el-button>
+ <el-button @click="cancel1()">{{ $t('cancel') }}</el-button>
+ </span>
+ </template>
+ </el-dialog>
+
+ <el-dialog :visible.sync="dialogFormVisible2" :title="$t('Alarm Information')">
+ <el-table :data="this.alarm" border style="width: 100%;">
+ <el-table-column prop="id" :label="$t('id')"></el-table-column>
+ <el-table-column prop="content" :label="$t('content')"></el-table-column>
+ <el-table-column prop="timeons" :label="$t('timeon')"></el-table-column>
+ <el-table-column prop="endTime" :label="$t('endTime')"></el-table-column>
+ </el-table>
+ </el-dialog>
+
+ <el-dialog :visible.sync="dialogFormVisible3" :title="$t('Cage Details')" top="5vh">
+ <el-table :data="this.cageinfo" :height="700" border style="width: 100%;overflow: auto;">
+ <el-table-column :width="90" prop="cage" :label="$t('Cage No')"></el-table-column>
+ <el-table-column :width="90" prop="cell" :label="$t('Slot No')"></el-table-column>
+ <el-table-column :width="55" prop="tier" :label="$t('The Side')"></el-table-column>
+ <el-table-column :width="100" 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="100" prop="north_glass_buffer1s.listnumber"
+ :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="170" prop="lengthWidth" :label="$t('Dim')"></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;"
+ @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;"
+ @click="insertglass(scope.row.cage, scope.row.cell, scope.row.tier)">{{ $t('Increase')
+ }}</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ </el-dialog>
+
+ <el-dialog :visible.sync="dialogFormVisible4" :title="$t('OrderInfo')" top="5vh">
+ <el-input style="width:15%;" :placeholder="$t('Enter the Order No')" v-model="orderid"></el-input>
+ <el-button type="primary" @click="selectglassinfo()">{{ $t('Query') }}</el-button>
+ <el-table :data="GlassInfo.slice((currentPage - 1) * pagesize, currentPage * pagesize)
+ " :height="700" border style="width: 100%;overflow: auto;">
+
+ <el-table-column prop="barcode" :label="$t('Barcode')"></el-table-column>
+ <el-table-column prop="ordernumber" :label="$t('Order No')"></el-table-column>
+ <el-table-column prop="listnumber" :label="$t('List No')"></el-table-column>
+ <el-table-column prop="boxnumber" :label="$t('Box No')"></el-table-column>
+ <el-table-column prop="glasslength" :label="$t('Length')"></el-table-column>
+ <el-table-column prop="glassheight" :label="$t('Width')"></el-table-column>
+ </el-table>
+ <el-pagination :style="'margin-top:-2px'" @size-change="handleSizeChange" @current-change="handleCurrentChange"
+ :pager-count="7" :current-page="currentPage" :page-sizes="[5, 10, 15, 20]" :page-size="pagesize"
+ layout="total, sizes, prev, pager, next, jumper" :total="GlassInfo.length > 0 ? GlassInfo.length : null"
+ background style="float: right; margin-top: 20px">
+ </el-pagination>
+ </el-dialog>
<el-dialog :visible.sync="dialogFormVisible5" :title="$t('Please confirm the glass information')">
<el-form :model="form" label-width="100px" style="padding-right: 30px">
<div style="display: flex;justify-content: space-around;">
@@ -350,72 +450,100 @@
</div>
<div style="display: flex;justify-content: space-around;">
<el-form-item>
- <el-input style="width:50%;margin-left: 20%;" :placeholder="$t('Enter the glass lD')"
+ <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>
</el-form-item>
<el-form-item>
- <el-input style="width:50%;margin-left: 20%;" :placeholder="$t('Enter the glass lD')"
+ <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>
</el-form-item>
</div>
<div style="display: flex;justify-content: space-around;">
- <el-form-item :label="$t('Barcodid')">
- <el-input v-model="form2.glassId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Barcode')">
+ <el-input v-model="form2.barcode" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('Barcodid')">
- <el-input v-model="form4.glassId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Barcode')">
+ <el-input v-model="form4.barcode" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('Barcodid')">
- <el-input v-model="form3.glassId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Barcode')">
+ <el-input v-model="form3.barcode" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('Barcodid')">
- <el-input v-model="form5.glassId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Barcode')">
+ <el-input v-model="form5.barcode" readonly autocomplete="off" />
</el-form-item>
</div>
<div style="display: flex;justify-content: space-around;">
- <el-form-item :label="$t('order')">
- <el-input v-model="form2.orderId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Order No')">
+ <el-input v-model="form2.ordernumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('order')">
- <el-input v-model="form4.orderId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Order No')">
+ <el-input v-model="form4.ordernumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('order')">
- <el-input v-model="form3.orderId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Order No')">
+ <el-input v-model="form3.ordernumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('order')">
- <el-input v-model="form5.orderId" readonly autocomplete="off" />
+ <el-form-item :label="$t('Order No')">
+ <el-input v-model="form5.ordernumber" 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.height" readonly autocomplete="off" />
+ <el-form-item :label="$t('List No')">
+ <el-input v-model="form2.listnumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('length')">
- <el-input v-model="form4.height" readonly autocomplete="off" />
+ <el-form-item :label="$t('List No')">
+ <el-input v-model="form4.listnumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('length')">
- <el-input v-model="form3.height" readonly autocomplete="off" />
+ <el-form-item :label="$t('List No')">
+ <el-input v-model="form3.listnumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('length')">
- <el-input v-model="form5.height" readonly autocomplete="off" />
+ <el-form-item :label="$t('List No')">
+ <el-input v-model="form5.listnumber" 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.width" readonly autocomplete="off" />
+ <el-form-item :label="$t('Box No')">
+ <el-input v-model="form2.boxnumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('width')">
- <el-input v-model="form4.width" readonly autocomplete="off" />
+ <el-form-item :label="$t('Box No')">
+ <el-input v-model="form4.boxnumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('width')">
- <el-input v-model="form3.width" readonly autocomplete="off" />
+ <el-form-item :label="$t('Box No')">
+ <el-input v-model="form3.boxnumber" readonly autocomplete="off" />
</el-form-item>
- <el-form-item :label="$t('width')">
- <el-input v-model="form5.width" readonly autocomplete="off" />
+ <el-form-item :label="$t('Box No')">
+ <el-input v-model="form5.boxnumber" 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-form-item>
+ <el-form-item :label="$t('Length')">
+ <el-input v-model="form4.glasslength" readonly autocomplete="off" />
+ </el-form-item>
+ <el-form-item :label="$t('Length')">
+ <el-input v-model="form3.glasslength" readonly autocomplete="off" />
+ </el-form-item>
+ <el-form-item :label="$t('Length')">
+ <el-input v-model="form5.glasslength" 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-form-item>
+ <el-form-item :label="$t('Width')">
+ <el-input v-model="form4.glassheight" readonly autocomplete="off" />
+ </el-form-item>
+ <el-form-item :label="$t('Width')">
+ <el-input v-model="form3.glassheight" readonly autocomplete="off" />
+ </el-form-item>
+ <el-form-item :label="$t('Width')">
+ <el-input v-model="form5.glassheight" readonly autocomplete="off" />
</el-form-item>
</div>
<div style="display: flex;justify-content: space-around;">
@@ -431,105 +559,76 @@
</el-form>
<template #footer>
<span class="dialog-footer">
-
<el-button @click="cancel3()">{{ $t('cancel') }}</el-button>
</span>
</template>
</el-dialog>
- <el-dialog :visible.sync="dialogFormVisible1" :title="$t('Please confirm the Ordering Information')">
- <el-form :model="form1" label-width="100px" style="padding-right: 30px">
- <el-form-item :label="$t('order')">
- <el-input v-model="form1.order" autocomplete="off" />
- </el-form-item>
- <el-form-item :label="$t('number')">
- <el-input v-model="form1.number" autocomplete="off" />
- </el-form-item>
- </el-form>
- <template #footer>
- <span class="dialog-footer">
- <el-button @click="getOrder();" type="primary">{{ $t('confirm') }}</el-button>
- <el-button @click="cancel1()">{{ $t('cancel') }}</el-button>
- </span>
- </template>
- </el-dialog>
- <el-dialog :visible.sync="dialogFormVisible2" :title="$t('Alarm Information')">
- <el-table :data="this.alarm" border style="width: 100%;">
- <el-table-column prop="id" :label="$t('id')"></el-table-column>
- <el-table-column prop="content" :label="$t('content')"></el-table-column>
- <el-table-column prop="timeons" :label="$t('timeon')"></el-table-column>
- <el-table-column prop="endTime" :label="$t('endTime')"></el-table-column>
- </el-table>
- </el-dialog>
- <el-dialog :visible.sync="dialogFormVisible3" :title="$t('Cage Details')" top="5vh">
- <el-table :data="this.cageinfo" :height="700" border style="width: 100%;overflow: auto;">
- <el-table-column :width="90" prop="cage" :label="$t('The Cage number')"></el-table-column>
- <el-table-column :width="90" prop="cell" :label="$t('The Slot Number')"></el-table-column>
- <el-table-column :width="55" prop="tier" :label="$t('The Side')"></el-table-column>
- <el-table-column :width="100" prop="glassId" :label="$t('Barcodid')"></el-table-column>
- <el-table-column :width="100" prop="orderId" :label="$t('Order Number')"></el-table-column>
- <el-table-column :width="100" prop="list" :label="$t('List Number')"></el-table-column>
- <el-table-column :width="100" prop="box" :label="$t('Box Number')"></el-table-column>
- <el-table-column :width="170" prop="lengthWidth" :label="$t('Length(inch) and Width(inch)')"></el-table-column>
+ <el-dialog :visible.sync="dialogFormVisible6" :title="$t('Production queue')" top="5vh">
+ <el-button type="primary" @click="showform7()">{{ $t('Increase') }}</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 :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;"
- @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;"
- @click="insertglass(scope.row.cage, scope.row.cell, scope.row.tier)">{{ $t('increase')
- }}</el-button>
+ @click="deleteproductionqueueglass(scope.row.id)">{{ $t('Delete') }}</el-button>
</template>
</el-table-column>
</el-table>
</el-dialog>
- <el-dialog :visible.sync="dialogFormVisible4" :title="$t('OrderInfo')" top="5vh">
- <el-input style="width:15%;" :placeholder="$t('Enter the Order lD')" v-model="orderid"></el-input>
- <el-button type="primary" @click="selectglassinfo()">{{ $t('Query') }}</el-button>
- <el-table :data="GlassInfo.slice((currentPage - 1) * pagesize, currentPage * pagesize)
- " :height="700" border style="width: 100%;overflow: auto;">
- <el-table-column prop="glassId" :label="$t('Barcodid')"></el-table-column>
- <el-table-column prop="orderId" :label="$t('Order Number')"></el-table-column>
- <el-table-column prop="width" :label="$t('length')"></el-table-column>
- <el-table-column prop="height" :label="$t('width')"></el-table-column>
- </el-table>
+ <el-dialog :visible.sync="dialogFormVisible7" :title="$t('Glass information corresponding to aluminum frame')"
+ top="5vh">
+ <el-input style="width:15%;" :placeholder="$t('Enter the Frame No')" v-model="framebarcode"></el-input>
+ <el-button type="primary" @click="showform7()">{{ $t('Query') }}</el-button>
+ <el-button type="primary" @click="addoutslice()">{{ $t('Increase') }}</el-button>
+ <el-table :data="this.AluminumFrame" :height="700" border style="width: 100%;overflow: auto;">
- <!-- <el-table :data="tableDatas.slice((currentPage - 1) * pagesize, currentPage * pagesize)
- " style="width: 100%">
- <el-table-column label="Date" prop="date"> </el-table-column>
- <el-table-column label="Name" prop="name"> </el-table-column>
- <el-table-column label="鎿嶄綔">
- <template slot-scope="scope">
- <el-button size="mini" @click="handleEdit(scope.$index, scope.row)">Edit</el-button>
- <el-button size="mini" type="danger"
- @click="handleDelete(scope.$index, scope.row)">Delete</el-button>
+ <el-table-column prop="barcode" :label="$t('Barcode')"></el-table-column>
+ <el-table-column prop="ordernumber" :label="$t('Order No')"></el-table-column>
+ <el-table-column prop="listnumber" :label="$t('List No')"></el-table-column>
+ <el-table-column prop="boxnumber" :label="$t('Box No')"></el-table-column>
+ <el-table-column prop="glasslength" :label="$t('Length')"></el-table-column>
+ <el-table-column prop="glassheight" :label="$t('Width')"></el-table-column>
+ <el-table-column prop="storageCage.cage" :label="$t('Cage No')"></el-table-column>
+ <el-table-column prop="storageCage.cell" :label="$t('Slot No')"></el-table-column>
+ <el-table-column prop="storageCage.tier" :label="$t('The Side')"></el-table-column>
+
+ <el-table-column prop="FrameNo" :label="$t('Frame No')"></el-table-column>
+
+ <el-table-column prop="Flip" :label="$t('Flip')"></el-table-column>
+ <el-table-column prop="out_slice.state" :label="$t('In the queue')">
+ <template slot-scope='scope'>
+ {{ scope.row.out_slice != null ? $t('Yes') : $t('No') }}
</template>
</el-table-column>
- </el-table> -->
-
- <!-- 琛ㄦ牸鍒嗛〉 -->
- <!-- pager-count pager-count灞炴�у彲浠ヨ缃渶澶ч〉鐮佹寜閽暟,瓒呭嚭鎶樺彔,榛樿涓�7-->
- <!-- 娉ㄦ剰锛氳嫢鏁版嵁鏄悗绔帴鍙h繑鍥炵殑鍒欐鏃�:total="pageCount"-->
- <el-pagination :style="'margin-top:-2px'" @size-change="handleSizeChange" @current-change="handleCurrentChange"
- :pager-count="7" :current-page="currentPage" :page-sizes="[5, 10, 15, 20]" :page-size="pagesize"
- layout="total, sizes, prev, pager, next, jumper" :total="GlassInfo.length > 0 ? GlassInfo.length : null"
- background style="float: right; margin-top: 20px">
- </el-pagination>
-
-
+
+ <el-table-column prop="storageCage.tier" :label="$t('In the cage')">
+ <template slot-scope='scope'>
+ {{ scope.row.storageCage != null ? $t('Yes') : $t('No') }}
+ </template>
+ </el-table-column>
+ <el-table-column :width="80" :label="$t('Operate')">
+ <template slot-scope='scope'>
+ <el-checkbox label="" :disabled="!(scope.row.storageCage != null&&scope.row.out_slice == null)" :checked="scope.row.isCheck" @change="CheckBoxchange(scope.row.barcode,$event)"></el-checkbox>
+ </template>
+ </el-table-column>
+ </el-table>
</el-dialog>
</el-container>
</template>
<script>
-//:disabled="scope.row.glassId > 0 || scope.row.disabled == 1 ? true : false"
+
import {
home, home2, loadtask, InsertOrder, Addglassid, UpdateTask, SelectAlarmmgInfo, SelectCageInfo, DeleteByGlassID, OutByGlassID, Loadcarlist,
- SelectPassword, SelectGlassByGlassID, Disabled, Inglassid, SelectGlass, InsertQueueGlassId, UpdateQueueState, DeleteQueueGlass
+ SelectPassword, SelectGlassByGlassID, Disabled, Inglassid, SelectGlass, InsertQueueGlassId, UpdateQueueState, DeleteQueueGlass, SelectGlassNo,
+ SelectAluminumFrameInfoById, SelectProductionqueue, DeleteProductionQueueGlass, AddOutSliceS
} from "../../api/home";
@@ -552,40 +651,19 @@
dialogFormVisible3: false,
dialogFormVisible4: false,
dialogFormVisible5: false,
+ dialogFormVisible6: false,
+ dialogFormVisible7: false,
form: {
orderId: "",
glassId: "",
height: "",
width: ""
},
- form1: {
- order: "NG2210210",
- number: 800,
- },
- form2: {
- orderId: "",
- glassId: "",
- height: "",
- width: ""
- },
- form3: {
- orderId: "",
- glassId: "",
- height: "",
- width: ""
- },
- form4: {
- orderId: "",
- glassId: "",
- height: "",
- width: ""
- },
- form5: {
- orderId: "",
- glassId: "",
- height: "",
- width: ""
- },
+ form1: {},
+ form2: {},
+ form3: {},
+ form4: {},
+ form5: {},
alarm: [],
tableData: [],
cagelist1: [],
@@ -618,7 +696,10 @@
disabled1: false,
currentPage: 1, //榛樿鍒濆椤�
pagesize: 15, //姣忛〉榛樿鏄剧ず鐨勬暟鎹�
- pageCount: 0
+ pageCount: 0,
+ OutSlice: [],
+ AluminumFrame: [],
+ framebarcode: ""
};
},
created() {
@@ -666,7 +747,9 @@
if (obj.zhuangtai != null) {
this.zhuangtai = obj.zhuangtai[0];
}
-
+ if(this.dialogFormVisible7==true){
+ this.showform7();
+ }
// this.glassid1 = obj.queid[0];
// if (obj.queid[0] != "" && obj.queid[0] != null && obj.state[0] == 0) {
// this.state = false;
@@ -686,23 +769,14 @@
if (obj.form2 != null && obj.form2 != "") {
this.form2 = obj.form2[0];
} else {
- this.form2 = {
- orderId: "",
- glassId: "",
- height: "",
- width: ""
- };
+ this.form2 = {};
}
if (obj.form3 != null && obj.form3 != "" && obj.state[0] == 1) {
this.form3 = obj.form3[0];
} else {
- this.form3 = {
- orderId: "",
- glassId: "",
- height: "",
- width: ""
- };
+ this.form3 = {};
+
}
if (obj.form3 != null && obj.form3 != "" && obj.state[0] == 0) {
this.form5 = obj.form3[0];
@@ -844,11 +918,10 @@
//鏄剧ず璁㈠崟淇℃伅椤甸潰
showform1() {
if (this.order != "") {
- this.form1 =
- {
- order: "NG2210210",
- number: 800,
- };
+ SelectGlassNo(this.order).then(res => {
+ this.form1.order = this.order;
+ this.form1.number = res.data.count;
+ });
this.dialogFormVisible1 = true;
}
},
@@ -898,6 +971,7 @@
},
selectglassinfo() {
SelectGlass(this.orderid).then(res => {
+ this.currentPage = 1;
this.GlassInfo = res.data.glass;
});
},
@@ -906,6 +980,27 @@
this.GlassInfo = res.data.glass;
});
this.dialogFormVisible4 = true;
+ },
+ showform6() {
+ SelectProductionqueue().then(res => {
+ this.OutSlice = res.data.listoutslice;
+ });
+ this.dialogFormVisible6 = true;
+ },
+ showform7() {
+ SelectAluminumFrameInfoById(this.framebarcode).then(res => {
+ this.AluminumFrame = res.data.listAluminumFrame;
+ this.AluminumFrame.forEach(item => {
+ if(item.storageCage!=null&&item.out_slice==null){
+ item.isCheck = true;
+ }else{
+ item.isCheck = false;
+ }
+ item.Flip=res.data.flip;
+ item.FrameNo=this.framebarcode;
+ });
+ });
+ this.dialogFormVisible7 = true;
},
//鍙栨秷鎿嶄綔鏃跺叧闂〉闈�
cancel() {
@@ -956,6 +1051,7 @@
this.cage = cage;
SelectCageInfo(cage).then(res => {
this.cageinfo = res.data.cageinfo;
+ console.log(this.cageinfo)
this.dialogFormVisible3 = true;
});
},
@@ -1051,7 +1147,7 @@
//鎵嬪姩涓婄墖
FeedInglassid() {
Inglassid(this.insertcage, this.insertcell, this.inserttier, this.form).then(res => {
- if (this.form.glassId != "") {
+ if (this.form.barcode != "") {
if (res.data.message == 200) {
this.$message.success(this.$t('Operation successful'));
this.dialogFormVisible = false;
@@ -1072,7 +1168,29 @@
}
});
},
- handleEdit(index, row) {
+ //鍒犻櫎鍑虹墖闃熷垪鐜荤拑
+ deleteproductionqueueglass(id) {
+ this.$prompt(this.$t('Are you sure to perform this operation ?'), this.$t('prompt'), {
+ inputType: 'password',
+ inputPlaceholder: this.$t('Please enter the password'),
+ confirmButtonText: this.$t('Yes'),
+ cancelButtonText: this.$t('No'),
+ type: 'warning'
+ }).then(({ value }) => {
+ if (this.password == value) {
+ DeleteProductionQueueGlass(id).then(res => {
+ if (res.data.message == 200) {
+ this.$message.success(this.$t('Operation successful'));
+ }
+ });
+ }
+ }).catch(() => {
+ this.$message({
+ type: 'info',
+ message: this.$t('Operation canceled')
+ });
+ });
+ }, handleEdit(index, row) {
console.log(index, row);
},
//琛ㄦ牸鍒犻櫎
@@ -1089,36 +1207,26 @@
},
//鎵嬪姩娣诲姞鎵爜浣嶇幓鐠�
InsertQueueGlass(parameter) {
- if (parameter == 1 && this.form5.glassId != "") {
- if (this.form5.glassId != this.form2.glassId) {
- InsertQueueGlassId(this.form5.glassId, 1).then(res => {
+ if (parameter == 1 && this.form5.barcode != "") {
+ if (this.form5.barcode != this.form2.barcode) {
+ InsertQueueGlassId(this.form5.barcode, 1).then(res => {
if (res.data.message == 200) {
- this.form5 = {
- orderId: "",
- glassId: "",
- height: "",
- width: ""
- };
+ this.form5 = {};
this.$message.success(this.$t('Operation successful'));
- }else{
+ } else {
this.$message.error(this.$t('This glass ID already exists in the sorting cage'));
}
});
} else {
this.$message.error(this.$t('The glass ID already exists in the loading queue'));
}
- } else if (parameter == 2 && this.form4.glassId != "") {
- if (this.form4.glassId != this.form3.glassId) {
- InsertQueueGlassId(this.form4.glassId, 2).then(res => {
+ } else if (parameter == 2 && this.form4.barcode != "") {
+ if (this.form4.barcode != this.form3.barcode) {
+ InsertQueueGlassId(this.form4.barcode, 2).then(res => {
if (res.data.message == 200) {
- this.form4 = {
- orderId: "",
- glassId: "",
- height: "",
- width: ""
- };
+ this.form4 = {};
this.$message.success(this.$t('Operation successful'));
- }else{
+ } else {
this.$message.error(this.$t('This glass ID already exists in the sorting cage'));
}
});
@@ -1152,6 +1260,36 @@
this.$message.success(this.$t('Operation successful'));
}
});
+ },
+ CheckBoxchange(glassid,isChecked){
+ this.AluminumFrame.forEach(item=>{item.barcode=glassid;item.isCheck=isChecked})
+ console.log(this.AluminumFrame);
+ },
+ addoutslice(){
+ // var AluminumFrames1=this.AluminumFrame.map(item=>{return item.barcode});
+ // var AluminumFrames2=this.AluminumFrame.map(item=>{return item.isCheck});
+ // var AluminumFrames3=this.AluminumFrame.map(item=>{return item.Flip});
+ var dats_=new Array();
+ this.AluminumFrame.forEach(item => {
+ var dats2_=new Array();
+ dats2_[0]=item.barcode;
+ dats2_[1]=item.isCheck;
+ dats2_[2]=item.Flip;
+ dats2_[3]=item.FrameNo;
+ dats2_[4]=item.glasslengthMm;
+ dats2_[5]=item.glassheightMm;
+ dats_[dats_.length]=dats2_;
+ });
+ console.log(dats_);
+ //var AluminumFrames=this.AluminumFrame.map((item)=>({barcode,isCheck,Flip}) );
+ // console.log(AluminumFrames1);
+ // console.log(AluminumFrames2);
+ // console.log(AluminumFrames3);
+ AddOutSliceS(dats_).then(res=>{
+ if (res.data.message == 200) {
+ this.$message.success(this.$t('Operation successful'));
+ }
+ });
}
}
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java b/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
index cf088ab..60f5831 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/Plchome.java
@@ -1,18 +1,10 @@
package com.example.springboot.component;
import cn.hutool.json.JSONObject;
-
-import java.util.ArrayList;
-import java.util.HashMap;
import java.util.List;
-import java.util.Map;
-
-import org.springframework.web.bind.annotation.PostMapping;
-
-import com.example.springboot.common.Result;
-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.mapper.HomeMapper;
import com.example.springboot.mapper.SpianMapper;
import com.example.springboot.service.JdbcConnections;
@@ -45,12 +37,18 @@
List<StorageCage> cagelist3 = homeMapper.selectRack3();
List<StorageCage> cagelist4 = homeMapper.selectRack4();
jsonObject.append("cagelist1", cagelist1);
- jsonObject.append("cagelist2", (Object) cagelist2);
+ jsonObject.append("cagelist2", cagelist2);
jsonObject.append("cagelist3", cagelist3);
jsonObject.append("cagelist4", cagelist4);
// 杩涘嚭鐗囦换鍔�
List<StorageCage> tasklist1 = homeMapper.selectinout(3);
List<StorageCage> tasklist2 = homeMapper.selectinout(2);
+ for (StorageCage storageCage : tasklist1) {
+ storageCage.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(storageCage.getGlassId()));
+ }
+ for (StorageCage storageCage : tasklist2) {
+ storageCage.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(storageCage.getGlassId()));
+ }
jsonObject.append("tasklist1", tasklist1);
jsonObject.append("tasklist2", tasklist2);
// 鏌ヨ鎶ヨ淇℃伅
@@ -62,17 +60,18 @@
// addressList.add("DB106.0");
// List<Short> paramlist = S7control.getinstance().ReadWord(addressList);
// if (paramlist != null) {
- // jsonObject.append("params", paramlist);
+ // jsonObject.append("params", paramlist);
// }
// // 鑾峰彇杩涚墖杞︾姸鎬�
- // List<Short> datas1ListState = S7control.getinstance().ReadWord("DB106.8", 1);// 鑾峰彇杩涚墖杞︾姸鎬�
+ // List<Short> datas1ListState = S7control.getinstance().ReadWord("DB106.8",
+ // 1);// 鑾峰彇杩涚墖杞︾姸鎬�
// boolean exist1 = datas1ListState.contains((short) 0);
// jsonObject.append("zhuangtai", exist1);
- //鑾峰彇杩涚墖鐜荤拑淇℃伅
+ // 鑾峰彇杩涚墖鐜荤拑淇℃伅
// List<Short> inglassInfo = S7control.getinstance().ReadWord("DB106.24", 1);
// if (inglassInfo != null) {
- // if (inglassInfo.size() > 0)
- // jsonObject.append("loadglassheight", inglassInfo.get(0) * 70);
+ // if (inglassInfo.size() > 0)
+ // jsonObject.append("loadglassheight", inglassInfo.get(0) * 70);
// }
// 浼� 鑾峰彇杩涙槸鍚︽湁寰呯‘璁ょ殑鐜荤拑id
String queid = spianMapper.Selectqueueid();
@@ -80,8 +79,10 @@
jsonObject.append("queid", queid);
jsonObject.append("state", state);
// 鑾峰彇鎵爜浣嶄笌涓婄墖浣嶇幓鐠冧俊鎭�
- Glass form2 = homeMapper.GetQueueInfo(2);
- Glass form3 = homeMapper.GetQueueInfo(1);
+ String queueglassid2 = homeMapper.GetQueueInfo(2);
+ String queueglassid1 = homeMapper.GetQueueInfo(1);
+ north_glass_buffer1 form2 = homeMapper.SelectGlassByGlassID(queueglassid2);
+ north_glass_buffer1 form3 = homeMapper.SelectGlassByGlassID(queueglassid1);
jsonObject.append("form2", form2);
jsonObject.append("form3", form3);
// List<Short> paramlists = new ArrayList<Short>();
@@ -91,7 +92,6 @@
// paramlists.add(para2);
// System.out.println(paramlists);
-
dbserve = WebSocketServer.applicationContext.getBean(JdbcConnections.class);
boolean dbconnected = false;
try {
diff --git a/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java b/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
index 04444d3..c773316 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/controller/HomeController.java
@@ -1,23 +1,30 @@
package com.example.springboot.controller;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import org.apache.logging.log4j.util.PropertySource.Comparator;
import org.springframework.beans.factory.annotation.Autowired;
import com.example.springboot.mapper.HomeMapper;
import com.example.springboot.mapper.SpianMapper;
import com.example.springboot.service.HomeService;
+import com.example.springboot.service.MultiFieldComparator;
import com.example.springboot.service.SpianService;
import com.example.springboot.common.Result;
import com.example.springboot.component.S7control;
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 org.springframework.web.bind.annotation.*;
+
@RestController
@RequestMapping("/home")
@@ -62,6 +69,9 @@
@GetMapping("/loadinout")
public Result selectinout(Integer types) {
List<StorageCage> storageCageinout = homeMapper.selectinout(types);
+ for (StorageCage storageCage : storageCageinout) {
+ storageCage.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(storageCage.getGlassId()));
+ }
Map<String, Object> map = new HashMap<>();
map.put("list", storageCageinout);
return Result.success(map);
@@ -110,11 +120,9 @@
homeMapper.UpdateTask(types);
StorageCage glass = homeMapper.SelectGlassInfo(glassid);
if (types == 0) {
- // spianMapper.UpdataAddCage1(glass.getGlassWidth(),glass.getCage(),glass.getCell());
homeMapper.UpdateCageTask1(glassid);
S7control.getinstance().WriteWord("DB105.14", (short) 0);
} else {
-
spianMapper.UpdataOutCage1(glass.getGlassWidth(), glass.getCage(), glass.getCell());
homeMapper.UpdateCageTask2(glassid);
S7control.getinstance().WriteWord("DB105.12", (short) 0);
@@ -136,6 +144,9 @@
@GetMapping("/SelectCageInfo")
public Result SelectCageInfo(short cage) {
List<StorageCage> cageinfo = homeMapper.SelectCageInfo(cage);
+ for (StorageCage storageCage : cageinfo) {
+ storageCage.setnorth_glass_buffer1s(homeMapper.SelectBoxNo(storageCage.getGlassId()));
+ }
Map<String, Object> map = new HashMap<>();
map.put("cageinfo", cageinfo);
return Result.success(map);
@@ -193,9 +204,9 @@
// 鏍规嵁鐜荤拑id鏌ヨ鐜荤拑淇℃伅
@GetMapping("/SelectGlassByGlassID")
public Result SelectGlassByGlassID(String glassid) {
- Glass Glass = homeMapper.SelectGlassByGlassID(glassid);
+ north_glass_buffer1 north_glass_buffer1s = homeMapper.SelectGlassByGlassID(glassid);
Map<String, Object> map = new HashMap<>();
- map.put("form", Glass);
+ map.put("form", north_glass_buffer1s);
return Result.success(map);
}
@@ -210,14 +221,14 @@
// 鎵嬪姩寰�鐞嗙墖绗兼坊鍔犵幓鐠�
@PostMapping("/Inglassid")
- public Result Inglassid(short cage, short cell, short tier, @RequestBody Glass glass) {
+ public Result Inglassid(short cage, short cell, short tier, @RequestBody north_glass_buffer1 north_glass_buffer1s) {
Map<String, Object> map = new HashMap<>();
- short result = homeMapper.SelectStorageByGlassId(glass.getGlassId());
+ short result = homeMapper.SelectStorageByGlassId(north_glass_buffer1s.getbarcode());
if (result > 0) {
map.put("message", "300");
} else {
- homeMapper.Inglassid(glass, cage, cell, tier);
- spianMapper.UpdataAddCage1(glass.getwidth(), cage, cell);
+ homeMapper.Inglassid(north_glass_buffer1s, cage, cell, tier);
+ spianMapper.UpdataAddCage1(north_glass_buffer1s.getglasslengthMm(), cage, cell);
}
return Result.success(map);
}
@@ -226,7 +237,7 @@
@PostMapping("/SelectGlass")
public Result SelectGlass(String orderid) {
Map<String, Object> map = new HashMap<>();
- List<Glass> glass = homeMapper.SelectGlass(orderid);
+ List<north_glass_buffer1> glass = homeMapper.SelectGlass(orderid);
map.put("glass", glass);
return Result.success(map);
}
@@ -240,6 +251,8 @@
map.put("message", "300");
} else {
homeMapper.InsertQueueGlassId(glassid, id);
+ //璋冪敤浼嶅瓨鍌ㄨ繃绋�
+ spianMapper.selectAll(glassid);
map.put("message", "200");
}
return Result.success(map);
@@ -263,4 +276,100 @@
return Result.success(map);
}
+ // 鏌ヨ姝よ鍗曞湪鐞嗙墖绗奸噷鐨勭幓鐠冩暟
+ @PostMapping("/SelectGlassNo")
+ public Result SelectGlassNo(String orderid) {
+ Short count = homeMapper.SelectGlassNo(orderid);
+ Map<String, Object> map = new HashMap<>();
+ map.put("count", count);
+ return Result.success(map);
+ }
+
+ // 鏍规嵁閾濇id鑾峰彇瀵瑰簲鐜荤拑淇℃伅
+ @PostMapping("/SelectAluminumFrameInfoById")
+ public Result SelectAluminumFrameInfoById(String FrameBarcode) {
+ List<north_glass_buffer1> listAluminumFrame = homeMapper.SelectAluminumFrameInfoById(FrameBarcode);
+ String flip=homeMapper.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()));
+ }
+ Map<String, Object> map = new HashMap<>();
+ map.put("listAluminumFrame", listAluminumFrame);
+ map.put("flip", flip);
+ return Result.success(map);
+ }
+
+
+
+ // 鏌ヨ鍑虹墖闃熷垪鏁版嵁
+ @PostMapping("/SelectProductionqueue")
+ public Result SelectProductionqueue() {
+ 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()));
+ }
+
+ //HashMap<String,List<Out_slice>> map=new HashMap<String,List<Out_slice>>();
+ // HashMap map=new HashMap<>();
+ // for (Out_slice out_slice : listoutslice) {
+ // String key_=out_slice.getState()+"-";
+ // if (map.get(key_)==null) {
+ // List<Out_slice> lists=new ArrayList<Out_slice>();
+ // lists.add(out_slice);
+ // map.put(key_, lists);
+ // }else{
+ // List<Out_slice> lists=(List<Out_slice>)map.get(key_);
+ // lists.add(out_slice);
+ // map.put(key_,lists);
+ // }
+ // }
+ // System.out.println(map);
+
+ // List<Out_slice> listskey=(List<Out_slice>)map.get("1-");
+ // List<Out_slice> list=new ArrayList<Out_slice>();
+ // for (Out_slice out_slice : listskey) {
+ // if (list.isEmpty()) {
+ // list.add(out_slice);
+ // }else{
+ // for (int i=0;i<list.size();i++) {
+ // Out_slice out_slice2=list.get(i);
+ // if(out_slice.getID()>out_slice2.getID()){
+ // continue;
+ // }else{
+ // list.add(i,out_slice2);
+ // }
+ // }
+ // }
+ // }
+ //Collections.sort(listoutslice,new MultiFieldComparator());
+
+ Map<String, Object> maps = new HashMap<>();
+ maps.put("listoutslice", listoutslice);
+ return Result.success(maps);
+ }
+
+ // 鏍规嵁鐜荤拑id鍒犻櫎鍑虹墖闃熷垪鐜荤拑
+ @PostMapping("/DeleteProductionQueueGlass")
+ public Result DeleteProductionQueueGlass(Short id) {
+ homeMapper.DeleteProductionQueueGlass(id);
+ Map<String, Object> map = new HashMap<>();
+ map.put("message", "200");
+ return Result.success(map);
+ }
+
+ //
+ @PostMapping("/AddOutSliceS")
+ public Result AddOutSliceS(@RequestBody String[][] AluminumFrames ) {
+ for (String[] item : AluminumFrames) {
+ if(item[1]=="true"){
+ 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);
+ }
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/entity/Out_slice.java b/springboot-vue3/src/main/java/com/example/springboot/entity/Out_slice.java
new file mode 100644
index 0000000..84e3004
--- /dev/null
+++ b/springboot-vue3/src/main/java/com/example/springboot/entity/Out_slice.java
@@ -0,0 +1,101 @@
+package com.example.springboot.entity;
+
+public class Out_slice {
+ private int id;
+ private String glassId;
+ private String barcode;
+ private double glasswidth;
+ private double glassheight;
+ private int state;
+ private String time;
+
+ private north_glass_buffer1 north_glass_buffer1s;
+
+ public void setnorth_glass_buffer1s(north_glass_buffer1 north_glass_buffer1s) {
+ this.north_glass_buffer1s = north_glass_buffer1s;
+ }
+
+ public north_glass_buffer1 getnorth_glass_buffer1s() {
+ return north_glass_buffer1s;
+ }
+
+ private StorageCage storageCage;
+
+ public void setstorageCage(StorageCage storageCage) {
+ this.storageCage = storageCage;
+ }
+
+ public StorageCage getstorageCage() {
+ return storageCage;
+ }
+
+ public Out_slice() {
+ }
+
+ public Out_slice(int ID, String glassId, String barCode, double glasswidth, double glassheight, int state, String time) {
+ this.id = ID;
+ this.glassId = glassId;
+ this.barcode = barCode;
+ this.glasswidth = glasswidth;
+ this.glassheight = glassheight;
+ this.state = state;
+ this.time = time;
+ }
+
+ public int getID() {
+ return id;
+ }
+
+ public String getGlassId() {
+ return glassId;
+ }
+
+ public String getBarCode() {
+ return barcode;
+ }
+
+ public double getGlasswidth() {
+ return glasswidth;
+ }
+
+ public double getGlassheight() {
+ return glassheight;
+ }
+
+ public int getState() {
+ return state;
+ }
+
+ public String getTime() {
+ return time;
+ }
+
+ public void setID(int ID) {
+ this.id = ID;
+ }
+
+ public void setGlassId(String glassId) {
+ this.glassId = glassId;
+ }
+
+public void setBarCode(String barCode) {
+ barcode = barCode;
+ }
+
+ public void setGlasswidth(double glasswidth) {
+ this.glasswidth = glasswidth;
+ }
+
+ public void setGlassheight(double glassheight) {
+ this.glassheight = glassheight;
+ }
+
+ public void setState(int state) {
+ this.state = state;
+ }
+
+ public void setTime(String time) {
+ this.time = time;
+ }
+
+}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java b/springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java
index 2c952ab..30e8ff6 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java
@@ -1,5 +1,7 @@
package com.example.springboot.entity;
+
+
public class StorageCage {
private Integer id;
private Integer prcId;
@@ -14,6 +16,28 @@
private String orderId;
private Integer disabled;
private String lengthWidth;
+ private String listno;
+ private String boxno;
+
+ private north_glass_buffer1 north_glass_buffer1s;
+
+ public void setnorth_glass_buffer1s(north_glass_buffer1 north_glass_buffer1s) {
+ this.north_glass_buffer1s = north_glass_buffer1s;
+ }
+
+ public north_glass_buffer1 getnorth_glass_buffer1s() {
+ return north_glass_buffer1s;
+ }
+
+ private Out_slice outSlice;
+
+ public void setout_slice(Out_slice outSlice) {
+ this.outSlice = outSlice;
+ }
+
+ public Out_slice getout_slice() {
+ return outSlice;
+ }
public Integer id() {
return id;
@@ -122,4 +146,22 @@
public void setLengthWidth(String lengthWidth) {
this.lengthWidth = lengthWidth;
}
+
+ public String getListno() {
+ return listno;
+ }
+
+ public void setListno(String listno) {
+ this.listno = listno;
+ }
+
+ public String getBoxno() {
+ return boxno;
+ }
+
+ public void setBoxno(String boxno) {
+ this.boxno = boxno;
+ }
+
+
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/entity/out_slice.java b/springboot-vue3/src/main/java/com/example/springboot/entity/out_slice.java
index c9bb6c4..84e3004 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/entity/out_slice.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/entity/out_slice.java
@@ -1,6 +1,6 @@
package com.example.springboot.entity;
-public class out_slice {
+public class Out_slice {
private int id;
private String glassId;
private String barcode;
@@ -19,10 +19,20 @@
return north_glass_buffer1s;
}
- public out_slice() {
+ private StorageCage storageCage;
+
+ public void setstorageCage(StorageCage storageCage) {
+ this.storageCage = storageCage;
+ }
+
+ public StorageCage getstorageCage() {
+ return storageCage;
}
- public out_slice(int ID, String glassId, String barCode, double glasswidth, double glassheight, int state, String time) {
+ public Out_slice() {
+ }
+
+ public Out_slice(int ID, String glassId, String barCode, double glasswidth, double glassheight, int state, String time) {
this.id = ID;
this.glassId = glassId;
this.barcode = barCode;
@@ -87,4 +97,5 @@
public void setTime(String time) {
this.time = time;
}
+
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java b/springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java
index a9598f5..d6236e3 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/mapper/HomeMapper.java
@@ -6,6 +6,9 @@
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.north_glass_buffer1_frames;
+import com.example.springboot.entity.Out_slice;
import java.util.List;
@@ -32,7 +35,7 @@
List<StorageCage> selectRack4();
// 鏍规嵁浠诲姟绫诲瀷鏌ヨ褰撳墠姝e湪鍑虹墖锛岃繘鐗囩殑鐜荤拑淇℃伅
- @Select("select a.*,concat(round(a.glasswidth*b.conversionrate,2),' x ',round(a.glassheight*b.conversionrate,2)) as lengthwidth from storage_cage as a,conver as b where a.state=#{task_type} limit 1")
+ @Select("select *,concat(glasswidth,' x ',glassheight) as lengthwidth from storage_cage where state=#{task_type}")
List<StorageCage> selectinout(@Param("task_type") Integer task_type);
// 鏌ヨ鏄惁瀛樺湪姝よ鍗�
@@ -68,7 +71,7 @@
List<alarmmg> SelectAlarmmgInfo();
//鑾峰彇鐞嗙墖绗煎唴鐜荤拑淇℃伅
- @Select("select *,concat(round(a.glasswidth*b.conversionrate,2),' x ',round(a.glassheight*b.conversionrate,2)) as lengthwidth from storage_cage as a,conver as b ")
+ @Select("select *,concat(round(a.glasswidth),' x ',round(a.glassheight)) as lengthwidth from storage_cage as a")
List<StorageCage> SelectCageInfo(short cage);
@Update("update storage_cage set state=0,glass_id=null,order_id=null,glasswidth=null,glassheight=null where glass_id=#{glassid}")
@@ -87,28 +90,29 @@
StorageCage SelectGlassInfo(String glassid);
//鏌ヨ鐜荤拑淇℃伅
- @Select("select * from glass where glassid=#{glassid}")
- Glass SelectGlassByGlassID(String glassid);
+// @Select("select * from glass where glassid=#{glassid}")
+ @Select("SELECT ordernumber,listnumber,boxnumber,barcode,glasslength,glassheight,glasslength_mm,glassheight_mm FROM north_glass_buffer1 where barcode=#{barcode}")
+ north_glass_buffer1 SelectGlassByGlassID(String barcode);
//鍚敤/绂佺敤鐞嗙墖绗兼牸瀛�
@Update("update storage_cage set disabled=#{disabled} where cage=#{cage} and cell=#{cell}")
void Disabled(short cage, short cell, short disabled);
//鐞嗙墖绗兼柊澧炵幓鐠�
- @Update("update storage_cage set state=1,glass_id=#{glass.glassId},order_id=#{glass.orderId},glasswidth=#{glass.width},glassheight=#{glass.height} where cage=#{cage} and cell=#{cell} and tier=#{tier}")
- void Inglassid(Glass glass, short cage, short cell, short tier);
+ @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);
//鏌ヨ鐞嗙墖绗间腑鏄惁鏈夋鐜荤拑
@Select("select count(*) from storage_cage where glass_id=#{glassId}")
short SelectStorageByGlassId(String glassId);
//鏍规嵁璁㈠崟鏌ヨ鐜荤拑淇℃伅
- @Select("select * from glass where position(#{orderid} in orderid)")
- List<Glass> SelectGlass(String orderid);
+ @Select("select * from north_glass_buffer1 where position(#{orderid} in ordernumber)")
+ List<north_glass_buffer1> SelectGlass(String orderid);
//鑾峰彇涓婄墖闃熷垪淇℃伅
- @Select("select gl.* from queue qe inner join glass gl on qe.glassid=gl.glassid where qe.id=#{id}")
- Glass GetQueueInfo(int id);
+ @Select("select glassid from queue where id=#{id}")
+ String GetQueueInfo(int id);
//鎵嬪姩娣诲姞鎵爜浣嶇幓鐠�
@Select("update queue set glassid=#{glassid},state=1 where id=#{id}")
@@ -119,8 +123,48 @@
void UpdateQueueState();
//鎵嬪姩娣诲姞鎵爜浣嶇幓鐠�
- @Select("update queue set glassid='' where id=#{id}")
+ @Select("update queue set glassid='',state=0 where id=#{id}")
void DeleteQueueGlass(String id);
-
+ //鏌ヨ姝よ鍗曞湪鐞嗙墖绗奸噷鐨勭幓鐠冩暟
+ @Select("select count(*) from storage_cage where order_id=#{orderid}")
+ Short SelectGlassNo(String orderid);
+
+ //鏍规嵁鐜荤拑id浠庡鎴疯〃鏌ヨ鏁版嵁
+ @Select("select * from north_glass_buffer1 where barcode=#{glassid}")
+ north_glass_buffer1 SelectBoxNo(String glassid);
+
+ //鏌ヨ鍑虹墖闃熷垪淇℃伅
+ @Select("select * from out_slice where state=0 or state=1")
+ List<Out_slice> SelectProductionqueue();
+
+ //鏍规嵁鐜荤拑id鏌ヨ绗煎唴鐜荤拑淇℃伅
+ @Select("select * from storage_cage where glass_id=#{glassid}")
+ StorageCage SelectStorageGlassById(String glassid);
+
+
+ //鏍规嵁鐜荤拑id鍒犻櫎鍑虹墖闃熷垪鐜荤拑
+ @Select("update out_slice set state=3 where id=#{id}")
+ void DeleteProductionQueueGlass(Short id);
+
+ //鏍规嵁閾濇id鏌ヨ瀵瑰簲鐜荤拑淇℃伅
+ @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);
+
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/security/config/ShiroConfig.java b/springboot-vue3/src/main/java/com/example/springboot/security/config/ShiroConfig.java
index 3e7a55a..52ad80c 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/security/config/ShiroConfig.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/security/config/ShiroConfig.java
@@ -1,5 +1,5 @@
package com.example.springboot.security.config;
-
+
import com.example.springboot.security.JWTRealm;
import com.example.springboot.security.NoSessionFilter;
import com.example.springboot.security.StatelessDefaultSubjectFactory;
@@ -18,17 +18,17 @@
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.DependsOn;
-
+
import javax.servlet.Filter;
import java.util.Arrays;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;
-
+
@Configuration
public class ShiroConfig {
-
-
+
+
/**
* Shiro鐢熷懡鍛ㄦ湡澶勭悊鍣�
*
@@ -38,7 +38,7 @@
public LifecycleBeanPostProcessor lifecycleBeanPostProcessor() {
return new LifecycleBeanPostProcessor();
}
-
+
/**
* 寮�鍚疭hiro鐨勬敞瑙�(濡侤RequiresRoles,@RequiresPermissions),闇�鍊熷姪SpringAOP鎵弿浣跨敤Shiro娉ㄨВ鐨勭被,骞跺湪蹇呰鏃惰繘琛屽畨鍏ㄩ�昏緫楠岃瘉
* DefaultAdvisorAutoProxyCreator鐨勯『搴忓繀椤诲湪shiroFilterFactoryBean涔嬪墠锛屼笉鐒禨ecurityUtils.getSubject().getPrincipal()鑾峰彇涓嶅埌鍙傛暟
@@ -52,24 +52,24 @@
advisorAutoProxyCreator.setProxyTargetClass(true);
return advisorAutoProxyCreator;
}
-
+
@Bean
public AuthorizationAttributeSourceAdvisor authorizationAttributeSourceAdvisor() {
AuthorizationAttributeSourceAdvisor authorizationAttributeSourceAdvisor = new AuthorizationAttributeSourceAdvisor();
authorizationAttributeSourceAdvisor.setSecurityManager(defaultSecurityManager());
return authorizationAttributeSourceAdvisor;
}
-
+
@Bean(name = "shiroFilterFactoryBean")
public ShiroFilterFactoryBean shiroFilterFactoryBean() {
ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean();
shiroFilterFactoryBean.setSecurityManager(defaultSecurityManager());
-
+
// 杩囨护瑙勫垯
Map<String, String> linkedHashMap = new LinkedHashMap<>();
// 鏃犵姸鎬佺櫥褰曟儏鍐典笅鍏抽棴浜唖hiro涓殑session锛屽鑷存墍鏈夐渶瑕佸姞涓奱uthc鎺ュ彛璇锋眰鏃跺�欓兘浼氭姤閿欙紝
// 鎵�浠ヤ娇鐢ˊRequiresRoles,@RequiresPermissions娉ㄨВ,aop鏂瑰紡瀹炵幇鎺ュ彛鐨勬潈闄愭牎楠�
-
+
/* 娣诲姞shiro鐨勫唴缃繃婊ゅ櫒锛岃嚜瀹氫箟url瑙勫垯
* Shiro鑷甫鎷︽埅鍣ㄩ厤缃鍒�
* rest锛氭瘮濡�/admins/user/**=rest[user],鏍规嵁璇锋眰鐨勬柟娉曪紝鐩稿綋浜�/admins/user/**=perms[user锛歮ethod] ,鍏朵腑method涓簆ost锛実et锛宒elete绛�
@@ -110,7 +110,7 @@
// // 鎺堟潈鐨勬潈闄�
// linkedHashMap.put("/api/rolePermission/saveOrUpdate", "perms[rolePermission:add]");
// linkedHashMap.put("/api/rolePermission/removeByIds", "perms[rolePermission:delete]");
-
+
// 鑷畾涔夎繃婊ゅ櫒
HashMap<String, Filter> filterHashMap = new HashMap<>();
filterHashMap.put("jwt", new NoSessionFilter());
@@ -120,7 +120,7 @@
shiroFilterFactoryBean.setFilterChainDefinitionMap(linkedHashMap);
return shiroFilterFactoryBean;
}
-
+
@Bean
public DefaultWebSecurityManager defaultSecurityManager() {
DefaultWebSecurityManager defaultWebSecurityManager = new DefaultWebSecurityManager();
@@ -134,7 +134,7 @@
defaultWebSecurityManager.setSubjectFactory(subjectFactory());
return defaultWebSecurityManager;
}
-
+
/**
* 鐧诲綍鐨勮璇佸拰鎺堟潈
*
@@ -146,7 +146,7 @@
userRealm.setCredentialsMatcher(hashedCredentialsMatcher());
return userRealm;
}
-
+
/**
* token鐨勮璇佸拰鎺堟潈
*
@@ -156,12 +156,12 @@
public JWTRealm jwtRealm() {
return new JWTRealm();
}
-
+
@Bean
public StatelessDefaultSubjectFactory subjectFactory() {
return new StatelessDefaultSubjectFactory();
}
-
+
/*
* 鍑瘉鍖归厤鍣� 鐢变簬鎴戜滑鐨勫瘑鐮佹牎楠屼氦缁橲hiro鐨凷impleAuthenticationInfo杩涜澶勭悊浜�
*/
@@ -172,7 +172,7 @@
hashedCredentialsMatcher.setHashIterations(1024);// 鏁e垪鐨勬鏁帮紝姣斿鏁e垪涓ゆ锛岀浉褰撲簬MD5(MD5(""));
return hashedCredentialsMatcher;
}
-
+
@Bean
public CookieRememberMeManager cookieRememberMeManager() {
CookieRememberMeManager cookieRememberMeManager = new CookieRememberMeManager();
diff --git a/springboot-vue3/src/main/java/com/example/springboot/service/OutSlice.java b/springboot-vue3/src/main/java/com/example/springboot/service/OutSlice.java
new file mode 100644
index 0000000..13764dd
--- /dev/null
+++ b/springboot-vue3/src/main/java/com/example/springboot/service/OutSlice.java
@@ -0,0 +1,66 @@
+package com.example.springboot.service;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+import com.example.springboot.entity.Out_slice;
+
+public class OutSlice {
+
+ // public static List<Out_slice> Groupbyresult(List<Out_slice> out_slices) {
+ // // 浼犲叆涓�涓泦鍚� 杩涜鍒嗙粍鏉′欢鍒嗙粍
+ // List<Out_slice> resultlist = new ArrayList<Out_slice>();
+ // HashMap map = new HashMap<>();
+ // // HashMap<String,List<Out_slice>> map=new HashMap<String,List<Out_slice>>();
+ // for (Out_slice out_slice : out_slices) {
+ // String key_ = out_slice.getState() + "-";
+ // if (map.get(key_) == null) {
+ // List<Out_slice> lists = new ArrayList<Out_slice>();
+ // lists.add(out_slice);
+ // map.put(key_, lists);
+ // } else {
+ // List<Out_slice> lists = (List<Out_slice>) map.get(key_);
+ // lists.add(out_slice);
+ // map.put(key_, lists);
+ // }
+ // }
+ // return resultlist;
+ // }
+
+ // public static List<Out_slice> Orderbyresult(List<Out_slice> out_slices, int orders) {
+ // // orders 鎺掑簭妯″紡
+ // List<Out_slice> list = new ArrayList<Out_slice>();
+ // for (Out_slice out_slice : out_slices) {
+ // if (list.isEmpty()) {
+ // list.add(out_slice);
+ // } else {
+ // for (int i = 0; i < list.size(); i++) {
+ // Out_slice out_slice2 = list.get(i);
+ // if (out_slice.getID() > out_slice2.getID()) {
+ // continue;
+ // } else {
+ // list.add(i, out_slice2);
+ // }
+ // }
+ // }
+ // }
+ // }
+
+ // public static void f() {
+ // HashMap map = new HashMap<>();
+ // for (Out_slice out_slice : listoutslice) {
+ // String key_ = out_slice.getState() + "-";
+ // if (map.get(key_) == null) {
+ // List<Out_slice> lists = new ArrayList<Out_slice>();
+ // lists.add(out_slice);
+ // map.put(key_, lists);
+ // } else {
+ // List<Out_slice> lists = (List<Out_slice>) map.get(key_);
+ // lists.add(out_slice);
+ // map.put(key_, lists);
+ // }
+ // }
+ // }
+
+}
--
Gitblit v1.8.0