From 5af1f5cf615811334009eaf39dc7eb9e30ad96e0 Mon Sep 17 00:00:00 2001
From: wu <731351411@qq.com>
Date: 星期四, 21 十二月 2023 11:50:43 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/CanadaMes
---
springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java | 1
springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java | 1
springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java | 30 ++++-----------
CanadaMes-ui/src/api/websocketPlugin.js | 52 ++++++++++++++++++++++++++
springboot-vue3/src/main/java/com/example/springboot/entity/StorageCage.java | 9 ++++
springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java | 5 +-
6 files changed, 74 insertions(+), 24 deletions(-)
diff --git a/CanadaMes-ui/src/api/websocketPlugin.js b/CanadaMes-ui/src/api/websocketPlugin.js
new file mode 100644
index 0000000..793d1c2
--- /dev/null
+++ b/CanadaMes-ui/src/api/websocketPlugin.js
@@ -0,0 +1,52 @@
+let socket;
+
+export default {
+ install: (Vue, options) => {
+ Vue.prototype.$connectWebSocket = (viewname, handleData) => {
+ if (typeof WebSocket === "undefined") {
+ console.log("鎮ㄧ殑娴忚鍣ㄤ笉鏀寔 WebSocket");
+ } else {
+ let socketUrl = "ws://" + options.ip + ":8888" + "/springboot-vue3/api/talk/" + viewname;
+ if (socket != null) {
+ socket.close();
+ socket = null;
+ }
+
+ // 寮�鍚竴涓� WebSocket 杩炴帴
+ socket = new WebSocket(socketUrl);
+
+ // 鎵撳紑浜嬩欢
+ socket.onopen = () => {
+ console.log("WebSocket 宸叉墦寮�");
+ };
+
+ // 鏀跺埌娑堟伅
+ socket.onmessage = (msg) => {
+ if (!msg.data) {
+ return;
+ }
+ handleData(JSON.parse(msg.data));
+ };
+
+ // 鍏抽棴浜嬩欢
+ socket.onclose = () => {
+ console.log("WebSocket 宸插叧闂�");
+ };
+
+ // 鍙戠敓閿欒浜嬩欢
+ socket.onerror = () => {
+ console.log("WebSocket 鍙戠敓浜嗛敊璇�");
+ };
+ }
+ };
+
+ Vue.prototype.$sendWebSocketMessage = (message) => {
+ socket?.send(JSON.stringify(message));
+ };
+
+ Vue.prototype.$closeWebSocket = () => {
+ // 鍏抽棴 WebSocket 杩炴帴
+ socket.close();
+ };
+ },
+};
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java
index 2462fb1..ab4638f 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcHold.java
@@ -39,6 +39,7 @@
// // TODO Auto-generated catch block
// e.printStackTrace();
// }
+ spianService.selectAll("X12345610402GV");
// 鍑虹墖浠诲姟////////////////////////////////
List<Short> outlist = S7control.getinstance().ReadWord("DB106.20", 1); // 鍑虹墖杞︾姸鎬�
List<Short> outlist1 = S7control.getinstance().ReadWord("DB105.18", 1); // 鍑虹墖浠诲姟鏄惁鍚姩
diff --git a/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java b/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java
index 9f0a790..eccf8dc 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/component/PlcParameter2.java
@@ -147,6 +147,7 @@
//瀛樼墖绛夊緟寤惰繜
customS7Control.Writetime(messageArray, timeout2, 2);
+
// 娓呯┖娑堟伅鍒楄〃
webserver.clearMessages();
}
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 d290dc3..61a0b59 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
@@ -17,6 +17,7 @@
private Integer disabled;//鍋滅敤
private String listId;//闆嗗悎id
private String boxId;//绠卞瓙id
+ private String FrameBarcode;//閾濇id;
private north_glass_buffer1 north_glass_buffer1s;
@@ -169,5 +170,13 @@
public void setBoxno(String boxId) {
this.boxId = boxId;
}
+
+ public String getFrameBarcode() {
+ return FrameBarcode;
+ }
+
+ public void setFrameBarcode(String FrameBarcode) {
+ this.FrameBarcode = FrameBarcode;
+ }
}
diff --git a/springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java b/springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java
index 867a94f..679ce0e 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/mapper/SpianMapper.java
@@ -2,9 +2,7 @@
import org.apache.ibatis.annotations.*;
-import com.example.springboot.entity.Glass;
import com.example.springboot.entity.StorageCage;
-import com.example.springboot.entity.StorageTask;
import com.example.springboot.entity.north_glass_buffer1;
import java.util.List;
@@ -17,21 +15,9 @@
// 鍒ゆ柇鐩搁偦绗煎瓙鏄惁鏈夌┖鏍�
@Select("select COUNT(if(a.state1=0,cell,0))as cell,ROUND(id/2)as id from (select *,max(state)as state1 from storage_cage a GROUP BY cage,cell)as a where (a.cage=#{cage1}-1 or a.cage=#{cage1}+1)and if(a.cage<6,a.cage>0 and a.cage<6,a.cage>5) and disabled=0 GROUP BY cage ORDER BY cell desc LIMIT 1")
int selectCage(int cage1);
-
- // @Select("(select*from storage_cage as a where a.state=0 and cage%2=0 ORDER BY
- // id LIMIT 1)union (select a.* from storage_cage a inner join (select
- // cage,if(shu2=1,shu3,shu5) as gezi from ( select cage, count(case when
- // state1=1 and state2=0 then cell else null end)as shu1, count(case when
- // state1=0 then cell else null end) as shu2, min(case when state1=1 and
- // state2=0 then cell else null end) as shu3, min(case when state1=0 then cell
- // else null end) as shu4, min(case when state1=0 or state2=0 then cell else
- // null end) as shu5 from (select *,max(state) as state1,min(state) as state2
- // from storage_cage group by cage,cell) as a where cage%2!=0 GROUP BY cage
- // HAVING shu2>1 or (shu2=1 and shu1>0) ) as sss limit 1)as b on a.cage=b.cage
- // and a.cell=b.gezi and a.state=0 order by tier limit 1) ORDER BY id LIMIT 1;")
// 鑾峰彇璁㈠崟鍙锋帓搴忕殑绌鸿鍗曠瀛�
- @Select("select a.cage,COUNT(if(a.order_id=#{orderids},a.order_id,null))as orderid,b.shu,c.shu2,a.cell,min(a.state)as state1,disabled from storage_cage a left join (select COUNT(*)shu,cage from storage_cage where order_id=#{orderids} GROUP BY cage)as b on a.cage=b.cage left join(select cage ,COUNT(glass_id)as shu2 from storage_cage GROUP BY cage)c on a.cage=c.cage where (order_id=#{orderids} or ''='') GROUP BY cage,cell HAVING state1=0 ORDER BY shu desc,shu2,cage asc; ")
- List<StorageCage> selectAll(String orderids);
+ @Select("select a.cage,FrameBarcode,COUNT(if(a.order_id=#{orderids},a.order_id,null))as orderid,b.shu,c.shu2,a.cell,min(a.state)as state1,disabled,FrameBarcode from storage_cage a left join (select COUNT(*)shu,cage from storage_cage where order_id=#{orderids} GROUP BY cage)as b on a.cage=b.cage left join(select cage ,COUNT(glass_id)as shu2 from storage_cage GROUP BY cage)c on a.cage=c.cage where (order_id=#{orderids} or ''='') GROUP BY cage,cell HAVING state1=0 ORDER BY FrameBarcode=#{Fbarcode} desc,shu desc,shu2,cage asc; ")
+ List<StorageCage> selectAll(String orderids,String Fbarcode);
// 鑾峰彇鍒ゆ柇璇ユ牸瀛愭槸鍚﹂渶瑕佹妸澶栫墖鎺ㄥ叆鍐呯墖浣嶇疆
@Select("select state from storage_cage where cage=#{cage} and cell=#{cell} and tier=1;")
@@ -42,7 +28,7 @@
StorageCage selectCage1(int cage1, int cell, double width);
// 鍒ゆ柇绗煎瓙鍐呯幓鐠冩暟
- @Select("select COUNT(tier)as tier from storage_cage where cage=#{cage} and cell=#{cell} and state=1;")
+ @Select("select COUNT(tier)as tier from storage_cage where cage=#{cage} and cell=#{cell} and state!=0 and state!=3;")
int selectsum(int cage, int cell);
// 瀹屾垚杩涚墖涓殑鐜荤拑鐘舵��
@@ -53,7 +39,7 @@
void UpdateCageadd(String glassid, int state);
// 鑾峰彇鐜荤拑淇℃伅
- @Select("select *,ordernumber ,glasslength_mm as glasslengthmm,glassheight_mm as glassheightmm,barcode,listnumber,boxnumber,glasslength,glassheight from north_glass_buffer1 where barcode=#{glassid}")
+ @Select("select *,ordernumber ,glasslength_mm as glasslengthmm,glassheight_mm as glassheightmm,barcode,listnumber,boxnumber,glasslength,glassheight,FrameBarcode from north_glass_buffer1 where barcode=#{glassid}")
north_glass_buffer1 selectGlass(String glassid);
// 鍑虹墖浠诲姟鏌ヨ
@@ -77,7 +63,7 @@
StorageCage selectGlassCage(int cage, double width, int cage1, int cage2,int cell);
// 鍒犻櫎绗煎瓙淇℃伅(鍑虹墖)
- @Update("update storage_cage as a set state=#{state},glass_id=null,order_id=null,glasswidth=null,a.glassheight=null,a.glasswidthmm=null,a.glassheightmm=null,a.listid=null,a.boxid=null where glass_id=#{glassid} and state=3;")
+ @Update("update storage_cage as a set state=#{state},glass_id=null,FrameBarcode=null,order_id=null,glasswidth=null,a.glassheight=null,a.glasswidthmm=null,a.glassheightmm=null,a.listid=null,a.boxid=null where glass_id=#{glassid} and state=3;")
void UpdataGlassCage(String glassid, int state);
// 鏀瑰彉鐜荤拑鐘舵�佷负鍑虹墖涓�
@@ -88,7 +74,7 @@
@Update("update storage_cage set state=#{state},glass_id=#{glassid},order_id=#{orderid},glasswidth=#{width} where id=#{id};")
void UpdataAddCage(String orderid, String glassid, double width, int cage, int cell, int id, int state);
- @Update("update storage_cage set state=#{state},glass_id=#{glassid},order_id=#{glass.ordernumber},glasswidth=#{glass.glasslengthmm},glassheight=#{glass.glassheightmm},glasswidthmm=#{glass.glasslength},glassheightmm=#{glass.glassheight},listid=#{glass.listnumber},boxid=#{glass.boxnumber} where id=#{id};")
+ @Update("update storage_cage set state=#{state},glass_id=#{glassid},order_id=#{glass.ordernumber},glasswidth=#{glass.glasslengthmm},glassheight=#{glass.glassheightmm},glasswidthmm=#{glass.glasslength},glassheightmm=#{glass.glassheight},listid=#{glass.listnumber},boxid=#{glass.boxnumber},FrameBarcode=#{glass.FrameBarcode} where id=#{id};")
void UpdataAddCage2(String orderid, String glassid, north_glass_buffer1 glass, int cage, int cell, int id,
int state);
@@ -213,7 +199,7 @@
int SelectOutSliceshu();
// 鏇存柊鍑虹墖闃熷垪鐨勪换鍔$姸鎬�
- @Update("update out_slice set state=#{state} where glassid=#{glassid}")
+ @Update("update out_slice set state=#{state} where glassid=#{glassid} and state=1")
void OverOutSlice(String glassid, int state);
// 鑾峰彇鐜荤拑鐨勯摑妗唅d
@@ -221,7 +207,7 @@
String SelectBarcode(String glassId);
// 鑾峰彇鍑虹墖闃熷垪鐨勯摑妗嗘槸鍚﹀叏閮ㄥ畬鎴�
- @Select("select MIN(state) from out_slice where barcode=#{barcode};")
+ @Select("select count(*) from out_slice where barcode=#{barcode} and (state=1 or state=0 or state=3);")
int SelectOverState(String barcode);
// 鍒犻櫎鍑虹墖闃熷垪璇ラ摑妗嗙殑id
diff --git a/springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java b/springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java
index df21932..204e876 100644
--- a/springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java
+++ b/springboot-vue3/src/main/java/com/example/springboot/service/SpianService.java
@@ -34,6 +34,7 @@
}
double widths = glasslist.getglasslengthmm();
String orderids = glasslist.getordernumber();
+ String FrameBarcode=glasslist.getFrameBarcode();
List<String> adddresslist = new ArrayList<>();
adddresslist.add("DB105.0");// 杩涚墖杞﹁捣濮嬩綅缃�
@@ -46,7 +47,7 @@
// String orderid="A001";
// 鑾峰彇璁㈠崟鐩稿叧搴︽渶楂樼殑绗煎瓙鎺掑簭
- List<StorageCage> storageCage = spianMapper.selectAll(orderids.toString());
+ List<StorageCage> storageCage = spianMapper.selectAll(orderids,FrameBarcode);
if (storageCage == null) {
return (400);
}
@@ -314,7 +315,7 @@
spianMapper.UpdateAddQueue(glassid);// 鎶婅繘鐗囩殑鐜荤拑鏇存柊鍒板嚭鐗囬槦鍒椾腑
if (barcode != null) {
int barcodeState = spianMapper.SelectOverState(barcode);// 鑾峰彇璇ラ摑妗嗙殑鐘舵��
- if (barcodeState == 2) {// 褰撹閾濇鎵�鏈夌殑鐜荤拑閮芥槸瀹屾垚鐘舵�佹椂鍒犻櫎鍦ㄥ嚭鐗囬槦鍒楃殑鏁版嵁
+ if (barcodeState == 0) {// 褰撹閾濇鎵�鏈夌殑鐜荤拑閮芥槸瀹屾垚鐘舵�佹椂鍒犻櫎鍦ㄥ嚭鐗囬槦鍒楃殑鏁版嵁
spianMapper.DeleteQueue(barcode);
}
}
--
Gitblit v1.8.0