From 95db3e96a9465f137fdf16540e0c5985752894c2 Mon Sep 17 00:00:00 2001
From: 严智鑫 <test>
Date: 星期二, 09 四月 2024 14:27:33 +0800
Subject: [PATCH] Merge branch 'master' of http://10.153.19.25:10101/r/HangZhouMes
---
TemperingGlassModule/src/main/java/com/mes/entity/device/PlcBitObject.java | 142 +
UnLoadGlassModule/src/main/java/com/mes/service/ModuleB.java | 2
LoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java | 128 +
UnLoadGlassModule/src/main/java/com/mes/service/GlassInfoService.java | 28
LoadGlassModule/src/main/java/com/mes/entity/device/PlcBitInfo.java | 77 +
TemperingGlassModule/src/main/JsonFile/PlcAlbania.json | 414 +++++
UnLoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java | 4
UI-Project/src/views/LoginView.vue | 2
TemperingGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java | 89 +
UnLoadGlassModule/src/main/java/com/mes/entity/DownStorageCageDetails.java | 97 +
UnLoadGlassModule/src/main/java/com/mes/service/DownGlassCacheLogic.java | 233 +++
UnLoadGlassModule/src/main/java/com/mes/service/DownGlassLogic.java | 154 ++
TemperingGlassModule/src/main/java/com/mes/entity/device/PLCAutoMes.java | 95 +
UnLoadGlassModule/src/main/java/com/mes/entity/EdgStorageCageDetails.java | 0
UnLoadGlassModule/src/main/java/com/mes/service/ModuleA.java | 13
TemperingGlassModule/src/main/java/com/mes/MesApplication.java | 3
LoadGlassModule/src/main/java/com/mes/controller/userInfo/SysMenuController.java | 4
UI-Project/package.json | 1
UnLoadGlassModule/src/main/java/com/mes/entity/TaskCache.java | 22
UI-Project/src/stores/userInfo.js | 8
UnLoadGlassModule/src/main/java/com/mes/service/Plchome.java | 26
LoadGlassModule/src/main/java/com/mes/entity/device/PlcBitObject.java | 142 +
LoadGlassModule/src/main/java/com/mes/MesApplication.java | 2
TemperingGlassModule/src/main/java/com/mes/service/TemperingService.java | 20
UI-Project/src/views/UnLoadGlass/loadmachineracktwo.vue | 16
TemperingGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java | 2
UnLoadGlassModule/src/main/java/com/mes/mapper/DownWorkstationMapper.java | 45
CacheVerticalGlassModule/src/main/java/com/mes/service/BigStorageCageService.java | 50
UnLoadGlassModule/src/main/java/com/mes/service/DownWorkstationService.java | 56
UnLoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java | 5
LoadGlassModule/src/main/java/com/mes/entity/device/PLCAutoMes.java | 95 +
CacheVerticalGlassModule/src/main/resources/application.yml | 15
LoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterObject.java | 202 ++
UI-Project/src/layout/MainErpView.vue | 2
LoadGlassModule/src/main/java/com/mes/mapper/LoadGlassMapper.java | 18
TemperingGlassModule/src/main/java/com/mes/entity/device/PlcBitInfo.java | 77 +
UnLoadGlassModule/src/main/java/com/mes/tools/Configuration.java | 32
UI-Project/src/views/UnLoadGlass/loadmachinerack.vue | 281 ++
UnLoadGlassModule/src/main/java/com/mes/entity/DownWorkstation.java | 56
UnLoadGlassModule/src/main/java/com/mes/mapper/DownGlassInfoMapper.java | 4
UnLoadGlassModule/src/main/java/com/mes/controller/DownGlassInfoController.java | 7
TemperingGlassModule/src/main/java/com/mes/service/TemperingOverService.java | 32
TemperingGlassModule/src/main/java/com/mes/controller/TemperingController.java | 51
UnLoadGlassModule/src/main/java/com/mes/mapper/GlassInfoMapper.java | 18
UnLoadGlassModule/src/main/java/com/mes/mapper/SelectInfo.java | 74
UnLoadGlassModule/src/main/java/com/mes/tools/WebSocketServer.java | 4
TemperingGlassModule/src/main/java/com/mes/entity/device/InitUtil.java | 124 +
LoadGlassModule/src/main/java/com/mes/service/LoadGlassService.java | 51
TemperingGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java | 128 +
/dev/null | 4
UnLoadGlassModule/src/main/java/com/mes/entity/GlassInfo.java | 34
TemperingGlassModule/src/main/java/com/mes/mapper/TemperingMapper.java | 19
LoadGlassModule/src/main/java/com/mes/entity/device/InitUtil.java | 124 +
UnLoadGlassModule/src/main/java/com/mes/controller/DownWorkstationController.java | 125 +
LoadGlassModule/src/main/resources/JsonFile/PlcAlbania.json | 414 +++++
UI-Project/src/views/HomeView.vue | 2
UI-Project/package-lock.json | 205 ++
UnLoadGlassModule/src/main/resources/application.yml | 1
LoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java | 89 +
LoadGlassModule/src/main/java/com/mes/controller/LoadGlassController.java | 55
UnLoadGlassModule/target/classes/application.yml | 1
TemperingGlassModule/src/main/java/com/mes/entity/device/PlcParameterObject.java | 202 ++
UI-Project/vite.config.js | 45
63 files changed, 4,223 insertions(+), 248 deletions(-)
diff --git a/CacheVerticalGlassModule/src/main/java/com/mes/controller/OrderTestController.java b/CacheVerticalGlassModule/src/main/java/com/mes/controller/OrderTestController.java
deleted file mode 100644
index aecbd7f..0000000
--- a/CacheVerticalGlassModule/src/main/java/com/mes/controller/OrderTestController.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.mes.controller;
-
-import com.mes.mapper.OrderTestMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-//@CrossOrigin //瑙e喅鍗曚釜controller 璺ㄥ煙闂
-@RestController
-@RequestMapping("/order11111111")
-
-public class OrderTestController {
- @Autowired
- private OrderTestMapper orderMapper;
-
-// @GetMapping //鏌ヨorder琛ㄧ粨鏋滈泦
-// public Result index(){
-// return Result.seccess(orderMapper.findAll());
-//
-// }
-//
-// @PostMapping //鎻掑叆
-// public Integer save(@RequestBody Order order) {
-// return orderMapper.insert(order);
-// }
-//
-// @PostMapping("/update")
-// public Integer updateOrder(@RequestBody Order order) {
-// return orderMapper.update(order.getId(),order.getOrderid());
-// }
-//
-// @DeleteMapping("/{id}") //鍒犻櫎鏁版嵁
-// public Integer delete(@PathVariable Integer id) {
-// return orderMapper.deleteById(id);
-// }
-
-
-}
diff --git a/CacheVerticalGlassModule/src/main/java/com/mes/entity/OrderTest.java b/CacheVerticalGlassModule/src/main/java/com/mes/entity/OrderTest.java
deleted file mode 100644
index e8ea030..0000000
--- a/CacheVerticalGlassModule/src/main/java/com/mes/entity/OrderTest.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`order`")
-public class OrderTest {
- @TableId(type = IdType.AUTO)
- private Integer id;
- private String orderId;
- private String recipeNo;
- private String largeglassNo;
- private String largeglassCompleted;
- private String smallglassNo;
- private String smallglassCompleted;
- private String smallglassProcessing;
- private String smallglassWorn;
- private String orderStatus;
- private String orderMaker;
- private String makeTime;
- private String updateTime;
-
-}
diff --git a/CacheVerticalGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java b/CacheVerticalGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java
deleted file mode 100644
index d12d4ce..0000000
--- a/CacheVerticalGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.mes.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.mes.entity.OrderTest;
-import org.apache.ibatis.annotations.*;
-
-@Mapper
-public interface OrderTestMapper extends BaseMapper<OrderTest> {
-
-// @Select("select * from `order`")
-// List<Order> findAll();
-//
-// @Insert("INSERT `order`(order_id)VALUES(#{order_id})")
-// Integer insert(Order order);
-//
-// @Delete("delete from `order` where id=#{id}")
-// Integer deleteById(@Param("id") Integer id);
-//
-// @Update("update `order` set order_id=#{order_id} where id=#{id}")
-// Integer update(@Param("id") Integer id,@Param("order_id") String order_id);
-}
diff --git a/CacheVerticalGlassModule/src/main/java/com/mes/service/BigStorageCageService.java b/CacheVerticalGlassModule/src/main/java/com/mes/service/BigStorageCageService.java
index f965542..5c39505 100644
--- a/CacheVerticalGlassModule/src/main/java/com/mes/service/BigStorageCageService.java
+++ b/CacheVerticalGlassModule/src/main/java/com/mes/service/BigStorageCageService.java
@@ -12,37 +12,37 @@
// private BigStorageCageMapper bigStorageCageMapper;
- // // 鑾峰彇鐜荤拑瀛樻斁鏍煎瓙
- // public BigStorageCageDetails FeedGlass(BigStorageCageDetails bigStorageCageDetails) {
- // //鑾峰彇鍚岄挗鍖栫増鍥緄d鍙繘鐗囩殑鏍煎瓙
- // BigStorageCageDetails LayoutSlotInfo=bigStorageCageMapper.SelectTemperingFeedSlot(bigStorageCageDetails);
- // //鏈夌鍚堟潯浠剁殑鏍煎瓙鏃�
- // if (LayoutSlotInfo!=null) {
- // //灏嗙幓鐠冧俊鎭~鍏ョ悊鐗囩璇︽儏琛�
- // bigStorageCageDetails.setSlot(LayoutSlotInfo.getSlot());
- // }else{
- // //鑾峰彇涓嶅埌鏃讹細
+ // 鑾峰彇鐜荤拑瀛樻斁鏍煎瓙
+ public BigStorageCageDetails FeedGlass(BigStorageCageDetails bigStorageCageDetails) {
+ //鑾峰彇鍚岄挗鍖栫増鍥緄d鍙繘鐗囩殑鏍煎瓙
+ BigStorageCageDetails LayoutSlotInfo=bigStorageCageMapper.SelectTemperingFeedSlot(bigStorageCageDetails);
+ //鏈夌鍚堟潯浠剁殑鏍煎瓙鏃�
+ if (LayoutSlotInfo!=null) {
+ //灏嗙幓鐠冧俊鎭~鍏ョ悊鐗囩璇︽儏琛�
+ bigStorageCageDetails.setSlot(LayoutSlotInfo.getSlot());
+ }else{
+ //鑾峰彇涓嶅埌鏃讹細
- // //鑾峰彇鍙繘鐗囨牸瀛愪俊鎭�
- // BigStorageCageDetails EmptySlotInfo=bigStorageCageMapper.SelectEmptyFeedSlot();
- // bigStorageCageDetails.setSlot(EmptySlotInfo.getSlot());
- // //鑾峰彇鍏朵粬绗兼牸瀛�
+ //鑾峰彇鍙繘鐗囨牸瀛愪俊鎭�
+ BigStorageCageDetails EmptySlotInfo=bigStorageCageMapper.SelectEmptyFeedSlot();
+ bigStorageCageDetails.setSlot(EmptySlotInfo.getSlot());
+ //鑾峰彇鍏朵粬绗兼牸瀛�-
- // //灏嗙幓鐠冧俊鎭斁鍏ヨ鏍煎瓙
+ //灏嗙幓鐠冧俊鎭斁鍏ヨ鏍煎瓙
- // }
+ }
- // UpdateRemainWidth(bigStorageCageDetails.getSlot());
- // return bigStorageCageDetails;
- // }
+ UpdateRemainWidth(bigStorageCageDetails.getSlot());
+ return bigStorageCageDetails;
+ }
- // //淇敼鏍煎瓙鍓╀綑瀹藉害
- // private void UpdateRemainWidth(int Slot){
- // //鑾峰彇璇ユ牸瀛愬唴鐜荤拑淇℃伅
+ //淇敼鏍煎瓙鍓╀綑瀹藉害
+ private void UpdateRemainWidth(int Slot){
+ //鑾峰彇璇ユ牸瀛愬唴鐜荤拑淇℃伅
- // //淇敼鏍煎瓙鍓╀綑瀹藉害
- // BigStorageCageMapper.UpdateRemainWidth(Slot);
- // }
+ //淇敼鏍煎瓙鍓╀綑瀹藉害
+ BigStorageCageMapper.UpdateRemainWidth(Slot);
+ }
}
diff --git a/CacheVerticalGlassModule/src/main/java/com/mes/service/IOrderService.java b/CacheVerticalGlassModule/src/main/java/com/mes/service/IOrderService.java
deleted file mode 100644
index 9e44ceb..0000000
--- a/CacheVerticalGlassModule/src/main/java/com/mes/service/IOrderService.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package com.mes.service;public interface IOrderService {
-}
diff --git a/CacheVerticalGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java b/CacheVerticalGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java
deleted file mode 100644
index 5274aa6..0000000
--- a/CacheVerticalGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.mes.service.impl;
-
-import com.baomidou.dynamic.datasource.annotation.DS;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.mes.entity.OrderTest;
-import com.mes.mapper.OrderTestMapper;
-import com.mes.service.IOrderService;
-import org.springframework.stereotype.Service;
-
-@Service
-@DS("erp_sd")
-public class OrderServiceImpl extends ServiceImpl<OrderTestMapper, OrderTest> implements IOrderService {
-}
diff --git a/CacheVerticalGlassModule/src/main/resources/application.yml b/CacheVerticalGlassModule/src/main/resources/application.yml
index d74069d..887dcc8 100644
--- a/CacheVerticalGlassModule/src/main/resources/application.yml
+++ b/CacheVerticalGlassModule/src/main/resources/application.yml
@@ -14,19 +14,4 @@
url: jdbc:mysql://10.153.19.150:3306/erp_user_info?serverTimezone=GMT%2b8
username: root
password: beibo.123/
- driver-class-name: com.mysql.cj.jdbc.Driver
- sd:
- url: jdbc:mysql://10.153.19.150:3306/sd?serverTimezone=GMT%2b8
- username: root
- password: beibo.123/
- driver-class-name: com.mysql.cj.jdbc.Driver
- mm:
- url: jdbc:mysql://10.153.19.150:3306/mm?serverTimezone=GMT%2b8
- username: root
- password: beibo.123/
- driver-class-name: com.mysql.cj.jdbc.Driver
- pp:
- url: jdbc:mysql://10.153.19.150:3306/pp?serverTimezone=GMT%2b8
- username: root
- password: beibo.123/
driver-class-name: com.mysql.cj.jdbc.Driver
\ No newline at end of file
diff --git a/LoadGlassModule/src/main/java/com/mes/MesApplication.java b/LoadGlassModule/src/main/java/com/mes/MesApplication.java
index 9cc84b5..14b69cd 100644
--- a/LoadGlassModule/src/main/java/com/mes/MesApplication.java
+++ b/LoadGlassModule/src/main/java/com/mes/MesApplication.java
@@ -1,6 +1,4 @@
package com.mes;
-
-import com.mes.common.PlcTools.S7object;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
diff --git a/LoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java b/LoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
index 9cc9e37..8ffee41 100644
--- a/LoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
+++ b/LoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
@@ -1,7 +1,9 @@
package com.mes.common.PlcTools;
-
+import java.nio.ByteBuffer;
+import java.nio.ByteOrder;
import java.nio.charset.StandardCharsets;
+import java.sql.Time;
import java.util.ArrayList;
import java.util.List;
@@ -9,15 +11,37 @@
import com.github.xingshuangs.iot.protocol.s7.service.MultiAddressWrite;
import com.github.xingshuangs.iot.protocol.s7.service.S7PLC;
import com.google.common.primitives.Bytes;
+import org.apache.ibatis.jdbc.Null;
public class S7control {
S7PLC s7PLC; // PLC閫氳绫诲疄渚�
-
- public S7control(EPlcType plcType, String ip, int port, int rack, int slot) {
+ private EPlcType plcType = EPlcType.S1500; // 瑗块棬瀛怭LC绫诲瀷
+ private String ip = "192.168.10.1"; // plc ip鍦板潃
+ private int port = 102; // plc 绔彛鍙�
+
+ private static volatile S7control instance = null;
+
+ private S7control() {
if (s7PLC == null)
s7PLC = new S7PLC(plcType, ip, port,0,0);
- }
+ }
+ public S7control(EPlcType plcType,String ip,int port,int a,int b) {
+ if (s7PLC == null)
+ s7PLC = new S7PLC(plcType, ip, port,a,b);
+ }
+
+ // 鍗曚緥妯″紡 鑾峰彇绫荤殑鍞竴瀹炰緥
+ public static S7control getinstance() {
+ if (instance == null) {
+ synchronized (S7control.class) {
+ if (instance == null)
+ instance = new S7control();
+ }
+ }
+ return instance;
+ }
+
/**
* 鍏抽棴瑗块棬瀛恠7閫氳杩炴帴
*/
@@ -33,7 +57,7 @@
public boolean CheckConnected() {
return s7PLC.checkConnected();
}
-
+
/**
* 鎸夋寚瀹氱殑鍦板潃 鍐欏叆涓�涓獁ord
*
@@ -156,7 +180,7 @@
}
}
-
+
private int getIndexFromAddress(String address) {
@@ -181,7 +205,6 @@
public List<Short> ReadWord(String address, int count) {
if (s7PLC == null)
return null;
-
List<String> addresslist = GetAddressList(address, count, 16);
try {
return s7PLC.readInt16(addresslist);
@@ -191,7 +214,13 @@
return null;
}
}
-
+ public byte[] Readbyte(String address, int count) {
+ byte[] byt=new byte[count];
+ int wordcount=((count%2==0)?count/2:count+1);
+ List<Short> word=ReadWord(address,wordcount);
+
+ return byt;
+ }
/**
* 鎸夋寚瀹氱殑鍦板潃 璇诲彇byte缁撴灉闆�
*
@@ -269,6 +298,41 @@
}
+
+
+
+ public List<String> readStringsandword(List<String> addressList) {
+ if (s7PLC == null) {
+ return null;
+ }
+ List<String> result = new ArrayList<>();
+ for (String address : addressList) {
+ try {
+ if (address.contains("-")) {
+ address = address.substring(0, address.indexOf("-"));
+
+ byte[] bytes = s7PLC.readByte(address, 14);
+ if (bytes != null) {
+ String str = new String(bytes, StandardCharsets.UTF_8);
+ result.add(str);
+ }
+
+ } else {
+ Short value = s7PLC.readInt16(address);
+ result.add(value.toString());
+
+ }
+ } catch (Exception e) {
+ System.out.println("璇诲彇 " + address + " 澶辫触锛�" + e.getMessage());
+ result.add(null);
+ }
+ }
+
+ return result;
+ }
+
+
+
//涓嶈繛缁湴鍧�鍐欏叆Word
public void WriteWord(List<String> address, List<Short> datas) {
if (s7PLC == null)
@@ -300,7 +364,7 @@
glassidlist.add(Byte.valueOf(String.valueOf(iditem)));
}
byte[] bytes = Bytes.toArray(glassidlist);
- WriteByte(addr, bytes);
+ S7control.getinstance().WriteByte(addr, bytes);
}
//璇诲彇涓嶈繛缁瓀ord
@@ -410,4 +474,11 @@
}
return addresslist;
}
+ public void writeString(String addr,String data) {
+ s7PLC.writeString(addr,data);
+ }
+
+ public String readStrings(String addr) {
+ return s7PLC.readString(addr);
+ }
}
diff --git a/LoadGlassModule/src/main/java/com/mes/controller/LoadGlassController.java b/LoadGlassModule/src/main/java/com/mes/controller/LoadGlassController.java
new file mode 100644
index 0000000..24a0bc7
--- /dev/null
+++ b/LoadGlassModule/src/main/java/com/mes/controller/LoadGlassController.java
@@ -0,0 +1,55 @@
+package com.mes.controller;
+import java.util.List;
+import java.util.Map;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import com.mes.common.Result;
+import com.mes.entity.Tempering;
+import com.mes.entity.UpWorkstation;
+import com.mes.service.LoadGlassService;
+import com.mes.service.TemperingOverService;
+import com.mes.service.TemperingService;
+
+
+@RestController
+@RequestMapping("/LoadGlass")
+
+// TidyUpGlassModule 閽㈠寲妯″潡
+public class LoadGlassController {
+
+ @Autowired
+ private LoadGlassService loadGlassService;
+
+ @PostMapping("/") //鏌ヨ鐜板湪涓婄墖鏈虹殑鐜荤拑淇℃伅
+ @ResponseBody
+ public Result SelectTerritoryInfo() {
+ List<UpWorkstation> glass = loadGlassService.selectAll();
+ System.out.println(glass);
+ return Result.seccess(glass);
+ }
+
+ @PostMapping("/") //鏂板涓�鏉″伐浣嶄俊鎭�,鎺ユ敹瀹炰緥绫诲瓧娈典负瀹介珮鍘氳啘绯绘暟閲忓伐浣峣d
+ @ResponseBody
+ public void CutTerritory(@RequestBody UpWorkstation upwork) {
+ loadGlassService.insertGlass(upwork);
+
+ }
+
+ @PostMapping("/") //鍒犻櫎涓�鏉″伐浣嶇殑鐜荤拑淇℃伅锛屼紶杈撳伐浣峣d鍒犻櫎
+ @ResponseBody
+ public void SelectCutTerritory(int upworkid) {
+ loadGlassService.deleteGlass(upworkid);
+ }
+
+ @PostMapping("/") //寮�濮嬩笂鐗囦换鍔�
+ @ResponseBody
+ public void selectPriority() {
+ boolean result = loadGlassService.isCanLoadGlass();
+ if(result==true){
+ loadGlassService.selectPriority();
+ }
+ }
+
+
+
+}
diff --git a/LoadGlassModule/src/main/java/com/mes/controller/OrderTestController.java b/LoadGlassModule/src/main/java/com/mes/controller/OrderTestController.java
deleted file mode 100644
index aecbd7f..0000000
--- a/LoadGlassModule/src/main/java/com/mes/controller/OrderTestController.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.mes.controller;
-
-import com.mes.mapper.OrderTestMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-//@CrossOrigin //瑙e喅鍗曚釜controller 璺ㄥ煙闂
-@RestController
-@RequestMapping("/order11111111")
-
-public class OrderTestController {
- @Autowired
- private OrderTestMapper orderMapper;
-
-// @GetMapping //鏌ヨorder琛ㄧ粨鏋滈泦
-// public Result index(){
-// return Result.seccess(orderMapper.findAll());
-//
-// }
-//
-// @PostMapping //鎻掑叆
-// public Integer save(@RequestBody Order order) {
-// return orderMapper.insert(order);
-// }
-//
-// @PostMapping("/update")
-// public Integer updateOrder(@RequestBody Order order) {
-// return orderMapper.update(order.getId(),order.getOrderid());
-// }
-//
-// @DeleteMapping("/{id}") //鍒犻櫎鏁版嵁
-// public Integer delete(@PathVariable Integer id) {
-// return orderMapper.deleteById(id);
-// }
-
-
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/controller/userInfo/SysMenuController.java b/LoadGlassModule/src/main/java/com/mes/controller/userInfo/SysMenuController.java
index 6eee09a..aab8fb4 100644
--- a/LoadGlassModule/src/main/java/com/mes/controller/userInfo/SysMenuController.java
+++ b/LoadGlassModule/src/main/java/com/mes/controller/userInfo/SysMenuController.java
@@ -19,9 +19,7 @@
private SysMenuService sysMenuService;
@GetMapping
public Result getMenu(){
- //MyChannelHandlerPool myChannelHandlerPool = new MyChannelHandlerPool();
- //myChannelHandlerPool.sendMsg("123");
- //MyChannelHandlerPool.channelGroup.writeAndFlush( new TextWebSocketFrame("123123"));
+ //鑾峰彇缂撳瓨
return Result.seccess(sysMenuService.getMenu());
}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/BigStorageCage.java b/LoadGlassModule/src/main/java/com/mes/entity/BigStorageCage.java
deleted file mode 100644
index d103b46..0000000
--- a/LoadGlassModule/src/main/java/com/mes/entity/BigStorageCage.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`big_storage_cage`")
-public class BigStorageCage {
- @TableId(type = IdType.AUTO)
- private Integer id;//澶х悊鐗囩琛╥d
- private Integer device_id;//璁惧id
- private Integer slot;//鏍呮牸鍙�
- private String enable_state;//鍚敤鐘舵��
- private Integer remain_width;//鍓╀綑瀹藉害
-
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/DownGlassInfo.java b/LoadGlassModule/src/main/java/com/mes/entity/DownGlassInfo.java
deleted file mode 100644
index bb1d86e..0000000
--- a/LoadGlassModule/src/main/java/com/mes/entity/DownGlassInfo.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`down_glass_info`")
-public class DownGlassInfo {
- @TableId(type = IdType.AUTO)
- private Integer id;//涓嬬墖鐜荤拑淇℃伅琛╥d
- private String flowcardid;//娴佺▼鍗″彿
- private Integer sequence;//椤哄簭
- private Integer width;//瀹�
- private Integer height;//楂�
- private Integer thickness;//鍘氬害
-
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/DownStorageCage.java b/LoadGlassModule/src/main/java/com/mes/entity/DownStorageCage.java
deleted file mode 100644
index 1e1ff49..0000000
--- a/LoadGlassModule/src/main/java/com/mes/entity/DownStorageCage.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`down_storage_cage`")
-public class DownStorageCage {
- @TableId(type = IdType.AUTO)
- private Integer id;//涓嬬墖鍓嶇悊鐗囩琛╥d
- private Integer deviceid;//璁惧id
- private Integer slot;//鏍呮牸鍙�
- private String enablestate;//鍚敤鐘舵��
- private Integer remainwidth;//鍓╀綑
-
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/DownStorageCagedetails.java b/LoadGlassModule/src/main/java/com/mes/entity/DownStorageCagedetails.java
deleted file mode 100644
index 9e26f5f..0000000
--- a/LoadGlassModule/src/main/java/com/mes/entity/DownStorageCagedetails.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`down_storage_cage_details`")
-public class DownStorageCagedetails {
- @TableId(type = IdType.AUTO)
- private Integer id;//涓嬬墖鍓嶇悊鐗囩鏄庣粏琛╥d
- private Integer deviceid;//璁惧id
- private Integer slot;//鏍呮牸鍙�
- private Integer glassid;//鐜荤拑id
- private Integer sequence;//灏忕墖鍦ㄦ牸鍐呯殑椤哄簭
- private String flow_card_id;//娴佺▼鍗″彿
- private Integer glass_type;//鐜荤拑绫诲瀷
- private Double width;//瀹�
- private Double height;//楂�
- private Double thickness;//鍘氬害
- private Integer temperinglayoutid;//閽㈠寲鐗堝浘id
- private Integer tempering_feed_sequence;//閽㈠寲鐗堝浘鐗囧簭
- private Integer state;//鐘舵��
- private Integer gap;//鐜荤拑闂撮殭
-
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/DownWorkstation.java b/LoadGlassModule/src/main/java/com/mes/entity/DownWorkstation.java
deleted file mode 100644
index 847d157..0000000
--- a/LoadGlassModule/src/main/java/com/mes/entity/DownWorkstation.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`down_workstation`")
-public class DownWorkstation {
- @TableId(type = IdType.AUTO)
- private Integer id;//涓嬬墖宸ヤ綅琛╥d
- private Integer flowcard_id;//宸ヤ綅id
- private String glass_type;//娴佺▼鍗″彿
- private Integer width;//璁惧id
- private Integer height;//鍚敤鐘舵��
- private Integer thickness;//宸ヤ綔鐘舵��
-
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/OrderTest.java b/LoadGlassModule/src/main/java/com/mes/entity/OrderTest.java
deleted file mode 100644
index e8ea030..0000000
--- a/LoadGlassModule/src/main/java/com/mes/entity/OrderTest.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`order`")
-public class OrderTest {
- @TableId(type = IdType.AUTO)
- private Integer id;
- private String orderId;
- private String recipeNo;
- private String largeglassNo;
- private String largeglassCompleted;
- private String smallglassNo;
- private String smallglassCompleted;
- private String smallglassProcessing;
- private String smallglassWorn;
- private String orderStatus;
- private String orderMaker;
- private String makeTime;
- private String updateTime;
-
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/Tempering.java b/LoadGlassModule/src/main/java/com/mes/entity/Tempering.java
deleted file mode 100644
index 5b61dae..0000000
--- a/LoadGlassModule/src/main/java/com/mes/entity/Tempering.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`tempering_glass_info`")
-public class Tempering {
- @TableId(type = IdType.AUTO)
- private Integer id;//閽㈠寲灏忕墖淇℃伅琛╥d
- private String flowcard_id;//娴佺▼鍗�
- private Integer glass_type;//娴佺▼鍗$幓鐠冪被鍨�
- private Double width;//瀹�
- private Double height;//楂�
- private Double thickness;//鍘氬害
- private Integer filmsid;//鑶滅郴
- private Integer ishorizontal;//閽㈠寲鏄惁鎺ュ彈妯斁
- private Integer tempering_layout_id;//閽㈠寲鐗堝浘id
- private Integer tempering_feed_sequence;//閽㈠寲鐗堝浘鐗囧簭
- private Integer x_coordinate;//x鍧愭爣
- private Integer y_coordinate;//y鍧愭爣
- private Integer angle;//鏃嬭浆瑙掑害锛堥�嗘椂閽堬級
- private Integer state;//鐘舵��
-
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/device/InitUtil.java b/LoadGlassModule/src/main/java/com/mes/entity/device/InitUtil.java
new file mode 100644
index 0000000..6d59bd3
--- /dev/null
+++ b/LoadGlassModule/src/main/java/com/mes/entity/device/InitUtil.java
@@ -0,0 +1,124 @@
+package com.mes.entity.device;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONObject;
+import java.io.BufferedReader;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import com.mes.common.PlcTools.S7control;
+
+public class InitUtil {
+ //鍒濆鍖杦ord
+ public static PlcParameterObject initword(String jsonFilePath) {
+ try {
+ FileReader fileReader = new FileReader(jsonFilePath);
+ BufferedReader bufferedReader = new BufferedReader(fileReader);
+
+ StringBuilder content = new StringBuilder();
+ String line;
+
+ while ((line = bufferedReader.readLine()) != null) {
+ content.append(line);
+ }
+
+ bufferedReader.close();
+ fileReader.close();
+
+ JSONObject jsonfileobj = new JSONObject(content.toString());
+ JSONArray jsonArray = jsonfileobj.getJSONArray("parameteInfor");
+ PlcParameterObject plcParameterObject = new PlcParameterObject();
+ plcParameterObject.setPlcAddressBegin(jsonfileobj.getStr("plcAddressBegin"));//璁剧疆璧峰浣嶅湴鍧�
+ plcParameterObject.setPlcAddressLength(Integer.valueOf(jsonfileobj.getStr("plcAddressLenght")));//璁剧疆鍦板潃闀垮害
+
+ for (int i = 0; i < jsonArray.size(); i++) {
+ JSONObject parameterObj = jsonArray.getJSONObject(i);
+ PlcParameterInfo plcParameterInfo = new PlcParameterInfo(jsonfileobj.getStr("plcAddressBegin")); //鍙傛暟瀹炰緥
+ String codeid = parameterObj.getStr("codeId");
+ plcParameterInfo.setCodeId(codeid);
+ plcParameterInfo.setAddressIndex(Integer.valueOf(parameterObj.getStr("addressIndex")));
+ //plcParameterInfo.setRatio(Integer.valueOf(parameterObj.getStr("ratio")));
+ plcParameterInfo.setAddressLength(Integer.valueOf(parameterObj.getStr("addressLenght")));
+ plcParameterInfo.setUnit(parameterObj.getStr("unit"));
+ plcParameterObject.addPlcParameter(plcParameterInfo);
+ }
+ // byte[] getplcvlues = {0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02};
+ // byte[] getplcvlues = S7control.getinstance().ReadByte(plcParameterObject.getPlcAddressBegin(), plcParameterObject.getPlcAddressLength());
+ // plcParameterObject.setPlcParameterList(getplcvlues);
+
+ return plcParameterObject;
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ //鍒濆鍖朾it
+ public static PlcBitObject initbit(String jsonFilePath) {
+ PlcBitObject plcBitObject = new PlcBitObject();
+
+ try {
+ FileReader fileReader = new FileReader(jsonFilePath);
+ BufferedReader bufferedReader = new BufferedReader(fileReader);
+
+ StringBuilder content = new StringBuilder();
+ String line;
+
+ while ((line = bufferedReader.readLine()) != null) {
+ content.append(line);
+ }
+
+ bufferedReader.close();
+ fileReader.close();
+
+ JSONObject jsonfileobj = new JSONObject(content.toString());
+ JSONArray jsonArray = jsonfileobj.getJSONArray("parameteInfor");
+ plcBitObject.setPlcAddressBegin(jsonfileobj.getStr("plcAddressBegin"));//璁剧疆璧峰浣嶅湴鍧�
+ plcBitObject.setPlcAddressLength(Integer.valueOf(jsonfileobj.getStr("plcAddressLenght")));//璁剧疆鍦板潃闀垮害
+
+ for (int i = 0; i < jsonArray.size(); i++) {
+ JSONObject parameterObj = jsonArray.getJSONObject(i);
+
+ PlcBitInfo plcBitInfo = new PlcBitInfo(jsonfileobj.getStr("plcAddressBegin")); //鍙傛暟瀹炰緥
+ String codeid = parameterObj.getStr("codeId");
+ plcBitInfo.setCodeId(codeid);
+ plcBitInfo.setAddressIndex(Integer.valueOf(parameterObj.getStr("addressIndex")));
+
+ plcBitObject.addPlcBit(plcBitInfo);
+ }
+ System.out.println("");
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ //Boolean[] values1 = { false, true, true, true, false, false, true, false,
+ // false, true ,true };
+ // List<Boolean> getplcvlues = new ArrayList<>(Arrays.asList(values1));
+
+// List<Boolean> getplcvlues = S7control.getinstance().ReadBits(plcBitObject.getPlcAddressBegin(), plcBitObject.getPlcAddressLength());
+// plcBitObject.setPlcBitList(getplcvlues);
+ return plcBitObject;
+ }
+
+//
+ public static void readAndUpdateBitValues(PlcBitObject plcBitObject) {
+
+// Boolean[] values1 = { false, true, true, true, false, false, true, false,
+// false, true ,true };
+// List<Boolean> getplcvlues = new ArrayList<>(Arrays.asList(values1));
+ List<Boolean> getplcvlues = S7control.getinstance().ReadBits(plcBitObject.getPlcAddressBegin(), plcBitObject.getPlcAddressLength());
+ plcBitObject.setPlcBitList(getplcvlues);
+ }
+
+
+ public static void readAndUpdateWordValues(PlcParameterObject plcParameterObject) {
+
+ // byte[] getplcvlues = {0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02};
+ byte[] getplcvlues = S7control.getinstance().ReadByte(plcParameterObject.getPlcAddressBegin(), plcParameterObject.getPlcAddressLength());
+ plcParameterObject.setPlcParameterList(getplcvlues);
+ }
+
+
+
+}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/device/PLCAutoMes.java b/LoadGlassModule/src/main/java/com/mes/entity/device/PLCAutoMes.java
new file mode 100644
index 0000000..dcb707e
--- /dev/null
+++ b/LoadGlassModule/src/main/java/com/mes/entity/device/PLCAutoMes.java
@@ -0,0 +1,95 @@
+package com.mes.entity.device;
+
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import static com.mes.entity.device.InitUtil.readAndUpdateWordValues;
+public class PLCAutoMes extends Thread {
+
+ // // 鐢ㄤ簬瀛樺偍搴旂敤绋嬪簭鐨勯厤缃俊鎭�
+ // private Configuration config;
+ private static InitUtil initUtil;
+ // public static PlcParameterObject PlcMesObject;
+ // public static PlcParameterObject PlcReadObject;
+ // public static PlcParameterObject PlcframeObject;
+
+ // // 鍒涘缓涓�涓嚜瀹氫箟鐨� S7 鎺у埗鍣ㄦ秷鎭鐞嗗櫒瀵硅薄
+ // MessageHandler customS7Control = new MessageHandler();
+
+ // 鍗曚緥瀹炰緥
+ private static PLCAutoMes instance;
+ // private static String PlcMes = PLCAutoMes.class.getResource("/JsonFile/PlcMes.json").getPath();
+ private static String PlcAlbania = PLCAutoMes.class.getResource("/JsonFile/PlcAlbania.json").getPath();
+ // private static String PlcRead = PLCAutoMes.class.getResource("/JsonFile/PlcRead.json").getPath();
+ // private static String Plcframe = PLCAutoMes.class.getResource("/JsonFile/Plcframe.json").getPath();
+ // private static String PlcParameter = PLCAutomaticParameterSettingReview2.class.getResource("/JsonFile/PlcParameter.json").getPath();
+
+ // private static String PlcSign = PLCAutomaticParameterSettingReview2.class.getResource("/JsonFile/PlcSign.json").getPath();
+
+ // private static String PlcState = PLCAutomaticParameterSettingReview2.class.getResource("/JsonFile/PlcState.json").getPath();
+
+ // private static String PlcAlarm = PLCAutoMes.class.getResource("/JsonFile/PlcAlarm.json").getPath();
+ // private static String PlcTest = PLCAutoMes.class.getResource("/JsonFile/PlcTest.json").getPath();
+
+ // 璋冪敤initword鏂规硶
+
+ // public static PlcParameterObject plcParameterObject = initUtil.initword(PlcParameter);
+ // public static PlcBitObject plcPlcTest = initUtil.initbit(PlcTest);
+ // public static PlcBitObject plcBitObject = initUtil.initbit(PlcSign);
+ // public static PlcParameterObject plcStateObject= initUtil.initword(PlcState);
+ // public static PlcBitObject plcPlcAlarm = initUtil.initbit(PlcAlarm);
+ public static PlcParameterObject PlcMesObject = InitUtil.initword(PlcAlbania);
+ // public static PlcParameterObject PlcReadObject = initUtil.initword(PlcRead);
+ // public static PlcParameterObject PlcframeObject = initUtil.initword(Plcframe);
+
+ // 绉佹湁鏋勯�犲嚱鏁�
+ public PLCAutoMes() throws IOException {
+ //config = new Configuration("config.properties");
+ initUtil = new InitUtil();
+ }
+
+ // 鑾峰彇鍗曚緥瀹炰緥
+ public static synchronized PLCAutoMes getInstance() throws IOException {
+ if (instance == null) {
+ instance = new PLCAutoMes();
+ }
+ return instance;
+ }
+
+ @Override
+ public void run() {
+ while (this != null) {
+ try {
+ Thread.sleep(100);
+
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+
+ // System.out.println(jsonFilePath);
+
+ //readAndUpdateWordValues(PlcReadObject);
+ readAndUpdateWordValues(PlcMesObject);
+ //readAndUpdateWordValues(PlcframeObject);
+ // readAndUpdateWordValues(PlcframeObject);
+
+ // readAndUpdateWordValues(plcStateObject);
+ // int index = PlcMesObject.getPlcParameter("AddStart").getAddressIndex();
+ // // System.out.println(index);
+ // PlcMesObject.getPlcParameter("AddStart").getAddress(index);
+ // // System.out.println(PlcMesObject.getPlcParameter("AddStart").getAddress(index));
+ // List<String> addresses = new ArrayList<>();
+ // addresses.add("FeedID");
+ // addresses.add("AddStart");
+ // // System.out.println(addresses);
+ // // System.out.println(PlcMesObject.getPlcParameterValues(addresses));
+ // List<String> addresses2 = new ArrayList<>();
+ // addresses2.add("FeedID");
+ // addresses2.add("FeedCarStatus");
+
+ //System.out.println(PlcReadObject.getPlcParameterValues(addresses2));
+
+ }
+ }
+}
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/device/PlcBitInfo.java b/LoadGlassModule/src/main/java/com/mes/entity/device/PlcBitInfo.java
new file mode 100644
index 0000000..78846f9
--- /dev/null
+++ b/LoadGlassModule/src/main/java/com/mes/entity/device/PlcBitInfo.java
@@ -0,0 +1,77 @@
+package com.mes.entity.device;
+
+
+
+public class PlcBitInfo {
+
+ public PlcBitInfo(String startAddress) {
+ this.startAddress = startAddress;
+ }
+ private String startAddress;
+ // 鍙傛暟鏍囪瘑
+ private String codeId;
+
+ // 鍙傛暟鍚嶇О
+ private String name;
+
+ // 璇诲彇 鍙傛暟鍊�
+ private Boolean value;
+ // 鍙傛暟鍦板潃
+ private int addressIndex;
+
+ public String getCodeId() {
+ return this.codeId;
+ }
+
+ public void setCodeId(String codeId) {
+ this.codeId = codeId;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Boolean getValue() {
+ return this.value;
+ }
+
+ public void setValue(Boolean value) {
+ this.value = value;
+ }
+
+
+ public int getAddressIndex() {
+ return this.addressIndex;
+ }
+ /**
+ * 鑾峰彇鍦板潃
+ *
+ * @param index 绱㈠紩鍦板潃
+ */
+ public String getAddress(int index) {
+ String[] stringdatas = this.startAddress.trim().split("\\.");
+ if (stringdatas.length < 2 )
+ return null;
+ int dbwindex = 0;
+ int bitindex = 0;
+ if (stringdatas.length == 3) {
+ dbwindex = Integer.parseInt(stringdatas[1]);
+ bitindex = Integer.parseInt(stringdatas[2]);
+ } else
+ return null;
+ dbwindex+=index/8;
+ bitindex+=index%8;
+ return stringdatas[0]+"."+dbwindex+"."+bitindex;
+ }
+
+
+
+
+ public void setAddressIndex(int addressindex) {
+ this.addressIndex = addressindex;
+ }
+ }
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/device/PlcBitObject.java b/LoadGlassModule/src/main/java/com/mes/entity/device/PlcBitObject.java
new file mode 100644
index 0000000..977a13c
--- /dev/null
+++ b/LoadGlassModule/src/main/java/com/mes/entity/device/PlcBitObject.java
@@ -0,0 +1,142 @@
+package com.mes.entity.device;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+public class PlcBitObject {
+
+ // 璇ユā鍧楁暟鎹被鍨嬶紝鏁版嵁璧峰浣嶇疆
+ private String plcAddressBegin;
+ // 鏁版嵁鍦板潃闀垮害锛氱涓�鍙傛暟鍒版渶鍚庝竴涓弬鏁扮殑闀垮害
+ private int plcAddressLength;
+ private ArrayList<PlcBitInfo> plcBitList;
+
+ /**
+ * @return 鏁版嵁鍖哄紑濮嬪湴鍧�
+ */
+ public String getPlcAddressBegin() {
+ return plcAddressBegin;
+ }
+
+ /**
+ * @param plcAddressBegin 璁剧疆鏁版嵁鍖哄紑濮嬪湴鍧�
+ */
+ public void setPlcAddressBegin(String plcAddressBegin) {
+ this.plcAddressBegin = plcAddressBegin;
+ }
+
+ /**
+ * @return 鏁版嵁鍖� 璇诲彇鎵�鏈夋暟鎹墍闇�鐨勯暱搴︼紙浠yte绫诲瀷涓哄熀鍑嗭級
+ */
+ public int getPlcAddressLength() {
+ return plcAddressLength;
+ }
+
+ /**
+ * @return 璁剧疆锛氭暟鎹尯 璇诲彇鎵�鏈夋暟鎹墍闇�鐨勯暱搴︼紙浠yte绫诲瀷涓哄熀鍑嗭級
+ */
+ public void setPlcAddressLength(int plcAddressLength) {
+ this.plcAddressLength = plcAddressLength;
+ }
+
+ /**
+ * @return 鑾峰彇鍙傛暟瀹炰緥闆嗗悎
+ */
+ public ArrayList<PlcBitInfo> getBitList() {
+ return plcBitList;
+ }
+
+ /**
+ * 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ *
+ * @param codeid 鍙傛暟鏍囪瘑
+ * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ */
+ public PlcBitInfo getPlcBit(String codeid) {
+ if (plcBitList != null) {
+ for (PlcBitInfo plcbitInfo : plcBitList) {
+ if (plcbitInfo.getCodeId().equals(codeid))
+ return plcbitInfo;
+ }
+ return null;
+ } else
+ return null;
+ }
+
+ /**
+ * 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ *
+ * @param codeid 鍙傛暟鏍囪瘑
+ * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ */
+ public List<Boolean> getPlcBitValues(List<String> codeids) {
+ List<Boolean> arrayList = new ArrayList<>();
+ if (plcBitList != null) {
+ Map<String, Boolean> resultMap = new LinkedHashMap<>(); // 浣跨敤 LinkedHashMap 淇濈暀鎻掑叆椤哄簭
+ for (PlcBitInfo plcBitInfo : plcBitList) {
+ if (codeids.contains(plcBitInfo.getCodeId().toString())) {
+ resultMap.put(plcBitInfo.getCodeId().toString(), plcBitInfo.getValue());
+ }
+ }
+ for (String codeId : codeids) { // 鎸夌収浼犲叆鍙傛暟鐨勯『搴忛亶鍘�
+ Boolean value = resultMap.get(codeId);
+ if (value != null) {
+ arrayList.add(value);
+ } else {
+ arrayList.add(null); // 濡傛灉鎵句笉鍒板搴旂殑鍊硷紝娣诲姞 null
+ }
+ }
+ }
+ return arrayList;
+ }
+
+
+ public List<String> getAddressListByCodeId(List<String> codeIdList) {
+ List<String> addressList = new ArrayList<>();
+ for (String codeId : codeIdList) {
+ for (PlcBitInfo plcBitInfo : plcBitList) {
+ if (plcBitInfo.getCodeId().equals(codeId)) {
+ int index = plcBitInfo.getAddressIndex();
+ String address = plcBitInfo.getAddress(index);
+ if (address != null) {
+ addressList.add(address);
+ }
+ }
+ }
+ }
+ return addressList;
+ }
+
+
+ /**
+ * 娣诲姞鍙傛暟瀹炰緥
+ *
+ * @param param 鍙傛暟瀹炰緥
+ */
+ public void addPlcBit(PlcBitInfo param) {
+ if (plcBitList != null)
+ plcBitList.add(param);
+ else {
+ plcBitList = new ArrayList<PlcBitInfo>();
+ plcBitList.add(param);
+ }
+ }
+
+ /**
+ * 鏍规嵁PLC杩斿洖鐨勬暟鎹� 缁欏弬鏁板疄渚嬭祴鍊�
+ *
+ * @param plcValueArray PLC璇诲彇鍥炴潵鐨刡yte绫诲瀷鏁版嵁闆嗗悎
+ */
+ public void setPlcBitList(List<Boolean> plcValueArray) {
+ if (plcBitList != null) {
+ for (PlcBitInfo plcbitInfo : plcBitList) {
+ plcbitInfo.setValue(plcValueArray.get(plcbitInfo.getAddressIndex()));
+ }
+ }
+ }
+
+
+
+}
\ No newline at end of file
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java b/LoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java
new file mode 100644
index 0000000..b4a2051
--- /dev/null
+++ b/LoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java
@@ -0,0 +1,128 @@
+package com.mes.entity.device;
+public class PlcParameterInfo {
+ public PlcParameterInfo(String startAddress) {
+ this.startAddress = startAddress;
+ }
+ private String startAddress;
+ // 鍙傛暟鏍囪瘑
+ private String codeId;
+
+ // 鍙傛暟鍚嶇О
+ private String name;
+
+ // 璇诲彇 鍙傛暟鍊�
+ private String value;
+
+ // // 鍐欏叆 鍙傛暟鍊�
+ // private String writeValue;
+
+ // 鍙傛暟鍗曚綅
+ private String unit;
+
+ // 鍙傛暟鍊艰浆鎹㈢郴鏁�
+ private int ratio;
+
+ // 鍙傛暟鍦板潃
+ private int addressIndex;
+
+ // 鍙傛暟鍦板潃浣嶉暱搴�
+ private int addressLength;
+
+ public String getCodeId() {
+ return this.codeId;
+ }
+
+ public void setCodeId(String codeId) {
+ this.codeId = codeId;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getValue() {
+ return this.value;
+ }
+
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+ // public String getWriteValue() {
+ // return this.writeValue;
+ // }
+
+ // public void setWriteValue(String writeValue) {
+ // this.writeValue = writeValue;
+ // }
+
+ public String getUnit() {
+ return this.unit;
+ }
+
+ public void setUnit(String unit) {
+ this.unit = unit;
+ }
+
+ public int getAddressIndex() {
+ return this.addressIndex;
+ }
+
+ public void setAddressIndex(int addressindex) {
+ this.addressIndex = addressindex;
+ }
+
+ public int getAddressLength() {
+ return this.addressLength;
+ }
+
+ public void setAddressLength(int addresslength) {
+ this.addressLength = addresslength;
+ }
+
+ public int getRatio() {
+ return this.ratio;
+ }
+
+ public void setRatio(int ratio) {
+ this.ratio = ratio;
+ }
+
+
+ /**
+ * 鑾峰彇鍦板潃
+ *
+ * @param index 绱㈠紩鍦板潃
+ */
+ public String getAddress(int index) {
+ String[] stringdatas = this.startAddress.trim().split("\\.");
+ int addressLength=this.addressLength;
+ if (addressLength < 2 ){
+ return null;
+ }
+
+ if (addressLength == 2 ) {
+ int wordindex = index;
+
+ return stringdatas[0] + "." + wordindex;
+ }
+ if (addressLength == 14 ) {
+ int wordindex = index;
+ //int newIndex = wordindex + 13;
+ return stringdatas[0] + "." + wordindex ;
+ }
+ return null;
+ }
+
+ public int getPlcAddress() {
+
+ return addressIndex;
+ }
+ public String getAddress() {
+ return getAddress(this.addressIndex);
+ }
+}
\ No newline at end of file
diff --git a/LoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterObject.java b/LoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterObject.java
new file mode 100644
index 0000000..5355db5
--- /dev/null
+++ b/LoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterObject.java
@@ -0,0 +1,202 @@
+package com.mes.entity.device;
+
+import java.lang.reflect.Array;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+public class PlcParameterObject {
+
+ // 璇ユā鍧楁暟鎹被鍨嬶紝鏁版嵁璧峰浣嶇疆
+ private String plcAddressBegin;
+ // 鏁版嵁鍦板潃闀垮害锛氱涓�鍙傛暟鍒版渶鍚庝竴涓弬鏁扮殑闀垮害
+ private int plcAddressLength;
+ private ArrayList<PlcParameterInfo> plcParameterList;
+
+ /**
+ * @return 鏁版嵁鍖哄紑濮嬪湴鍧�
+ */
+ public String getPlcAddressBegin() {
+ return plcAddressBegin;
+ }
+
+ /**
+ * @param plcAddressBegin 璁剧疆鏁版嵁鍖哄紑濮嬪湴鍧�
+ */
+ public void setPlcAddressBegin(String plcAddressBegin) {
+ this.plcAddressBegin = plcAddressBegin;
+ }
+
+ /**
+ * @return 鏁版嵁鍖� 璇诲彇鎵�鏈夋暟鎹墍闇�鐨勯暱搴︼紙浠yte绫诲瀷涓哄熀鍑嗭級
+ */
+ public int getPlcAddressLength() {
+ return plcAddressLength;
+ }
+
+ /**
+ * @return 璁剧疆锛氭暟鎹尯 璇诲彇鎵�鏈夋暟鎹墍闇�鐨勯暱搴︼紙浠yte绫诲瀷涓哄熀鍑嗭級
+ */
+ public void setPlcAddressLength(int plcAddressLength) {
+ this.plcAddressLength = plcAddressLength;
+ }
+
+ /**
+ * @return 鑾峰彇鍙傛暟瀹炰緥闆嗗悎
+ */
+ public ArrayList<PlcParameterInfo> getPlcParameterList() {
+ return plcParameterList;
+ }
+
+ /**
+ * 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ *
+ * @param codeid 鍙傛暟鏍囪瘑
+ * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ */
+ public PlcParameterInfo getPlcParameter(String codeid) {
+ if (plcParameterList != null) {
+ for (PlcParameterInfo plcParameterInfo : plcParameterList) {
+ if (plcParameterInfo.getCodeId().equals(codeid))
+ return plcParameterInfo;
+ }
+ return null;
+ } else
+ return null;
+ }
+
+
+
+ /**
+ * 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ *
+ * @param codeids 鍙傛暟鏍囪瘑
+ * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ */
+ public List<String> getPlcParameterValues(List<String> codeids) {
+ List<String> arrayList = new ArrayList<>();
+ if (plcParameterList != null) {
+ Map<String, PlcParameterInfo> resultMap = new LinkedHashMap<>(); // 浣跨敤 LinkedHashMap 淇濈暀鎻掑叆椤哄簭
+ for (PlcParameterInfo plcParameterInfo : plcParameterList) {
+ if (codeids.contains(plcParameterInfo.getCodeId())) {
+ resultMap.put(plcParameterInfo.getCodeId(), plcParameterInfo);
+ }
+ }
+ for (String codeId : codeids) { // 鎸夌収浼犲叆鍙傛暟鐨勯『搴忛亶鍘�
+ PlcParameterInfo plcParameterInfo = resultMap.get(codeId);
+ if (plcParameterInfo != null) {
+ arrayList.add(plcParameterInfo.getValue());
+ } else {
+ arrayList.add(null); // 濡傛灉鎵句笉鍒板搴旂殑鍊硷紝娣诲姞 null
+ }
+ }
+ }
+ return arrayList;
+ }
+
+
+ public List<String> getAddressListByCodeId(List<String> codeIdList) {
+ List<String> addressList = new ArrayList<>();
+ for (String codeId : codeIdList) {
+ for (PlcParameterInfo plcParameterInfo : plcParameterList) {
+ if (plcParameterInfo.getCodeId().equals(codeId)) {
+ int index = plcParameterInfo.getAddressIndex();
+ String address = plcParameterInfo.getAddress(index);
+ if (address != null) {
+ addressList.add(address);
+ }
+ }
+ }
+ }
+ return addressList;
+ }
+
+
+
+
+
+
+ /**
+ * 娣诲姞鍙傛暟瀹炰緥
+ *
+ * @param param 鍙傛暟瀹炰緥
+ */
+ public void addPlcParameter(PlcParameterInfo param) {
+ if (plcParameterList != null)
+ plcParameterList.add(param);
+ else {
+ plcParameterList = new ArrayList<PlcParameterInfo>();
+ plcParameterList.add(param);
+ }
+ }
+
+ /**
+ * 鏍规嵁PLC杩斿洖鐨勬暟鎹� 缁欏弬鏁板疄渚嬭祴鍊�
+ *
+ * @param plcValueArray PLC璇诲彇鍥炴潵鐨刡yte绫诲瀷鏁版嵁闆嗗悎
+ */
+ public void setPlcParameterList(byte[] plcValueArray) {
+ if (plcParameterList != null) {
+
+ for (PlcParameterInfo plcParameterInfo : plcParameterList) {
+
+ byte[] valueList = new byte[plcParameterInfo.getAddressLength()];
+
+// System.out.println(plcParameterInfo.getAddressLength());
+
+ for (int i = 0; i < plcParameterInfo.getAddressLength(); i++) {
+ Array.setByte(valueList, i, plcValueArray[plcParameterInfo.getAddressIndex() + i]);
+
+ }
+ if (plcParameterInfo.getAddressLength()==2) {
+ plcParameterInfo.setValue(String.valueOf(byte2short(valueList)));
+ }
+ else if (plcParameterInfo.getAddressLength()==14) {
+ plcParameterInfo.setValue((byteToHexString(valueList)));
+ }
+
+ else
+ {
+ String valuestr = new String(valueList);
+ plcParameterInfo.setValue(valuestr);
+ }
+ }
+ }
+ }
+ /**
+ * short绫诲瀷杞琤yte[]
+ *
+ * @param s short绫诲瀷鍊�
+ */
+ public static byte[] short2byte(short s){
+ byte[] b = new byte[2];
+ for(int i = 0; i < 2; i++){
+ int offset = 16 - (i+1)*8; //鍥犱负byte鍗�4涓瓧鑺傦紝鎵�浠ヨ璁$畻鍋忕Щ閲�
+ b[i] = (byte)((s >> offset)&0xff); //鎶�16浣嶅垎涓�2涓�8浣嶈繘琛屽垎鍒瓨鍌�
+ }
+ return b;
+ }
+ /**
+ * byte[]绫诲瀷杞瑂hort
+ *
+ * @param b byte[]绫诲瀷鍊�
+ */
+ public static short byte2short(byte[] b){
+ short l = 0;
+ for (int i = 0; i < 2; i++) {
+ l<<=8; //<<=鍜屾垜浠殑 +=鏄竴鏍风殑锛屾剰鎬濆氨鏄� l = l << 8
+ l |= (b[i] & 0xff); //鍜屼笂闈篃鏄竴鏍风殑 l = l | (b[i]&0xff)
+ }
+ return l;
+ }
+
+ public static String byteToHexString(byte[] bytes) {
+
+ String str = new String(bytes, StandardCharsets.UTF_8);
+ return str;
+ }
+
+
+}
\ No newline at end of file
diff --git a/LoadGlassModule/src/main/java/com/mes/mapper/LoadGlassMapper.java b/LoadGlassModule/src/main/java/com/mes/mapper/LoadGlassMapper.java
index 8db4eff..363b7a2 100644
--- a/LoadGlassModule/src/main/java/com/mes/mapper/LoadGlassMapper.java
+++ b/LoadGlassModule/src/main/java/com/mes/mapper/LoadGlassMapper.java
@@ -1,18 +1,24 @@
package com.mes.mapper;
-
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.mes.entity.OrderTest;
+import java.util.List;
import org.apache.ibatis.annotations.*;
-
+import com.mes.entity.UpWorkstation;
@Mapper
public interface LoadGlassMapper extends BaseMapper<UpWorkstation> {
//鏄剧ず鐩墠宸ヤ綅鐜荤拑淇℃伅
@Select("SELECT * FROM up_workstation")
- UpWorkstation SelectALL();
+ List<UpWorkstation> selectALL();
//鍒犻櫎宸ヤ綅鐨勭幓鐠冧俊鎭�
@Delete("DELETE FROM up_workstation where workstation_id=#{id}")
- void DeleteALL(int id );
+ void deleteGlass(int id );
//澧炲姞涓婄墖淇℃伅
@Insert ("INSERT INTO up_workstation (pattern_width,pattern_heigth,pattern_thickness)value(#{patternwidth},#{patternheigth},#{patternthickness}where workstation_id=#{workstationid) ")
- void InsertALL(Double patternwidth,Double patternheigth,Double patternthickness,int workstationid);
+ void insertGlass(Double patternwidth,Double patternheigth,Double patternthickness,int workstationid);
+ //鏄惁鍙戣捣鍚哥墖
+ @Select("SELECT * FROM up_workstation where workstation_id=#{id}")
+ UpWorkstation selectAdd(int id);
+ //鍒ゆ柇浼樺厛宸ヤ綅鍚哥墖
+ @Select("select b.layout_sequence from up_workstation a left join up_patten_usage b on a.pattern_width=b.width and a.pattern_heigth=b.width and a.pattern_thickness=b.thickness where a.workstation_id=#{id}")
+ int selectPriority(int id);
+
}
diff --git a/LoadGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java b/LoadGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java
deleted file mode 100644
index d12d4ce..0000000
--- a/LoadGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.mes.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.mes.entity.OrderTest;
-import org.apache.ibatis.annotations.*;
-
-@Mapper
-public interface OrderTestMapper extends BaseMapper<OrderTest> {
-
-// @Select("select * from `order`")
-// List<Order> findAll();
-//
-// @Insert("INSERT `order`(order_id)VALUES(#{order_id})")
-// Integer insert(Order order);
-//
-// @Delete("delete from `order` where id=#{id}")
-// Integer deleteById(@Param("id") Integer id);
-//
-// @Update("update `order` set order_id=#{order_id} where id=#{id}")
-// Integer update(@Param("id") Integer id,@Param("order_id") String order_id);
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/service/IOrderService.java b/LoadGlassModule/src/main/java/com/mes/service/IOrderService.java
deleted file mode 100644
index 9e44ceb..0000000
--- a/LoadGlassModule/src/main/java/com/mes/service/IOrderService.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package com.mes.service;public interface IOrderService {
-}
diff --git a/LoadGlassModule/src/main/java/com/mes/service/LoadGlassService.java b/LoadGlassModule/src/main/java/com/mes/service/LoadGlassService.java
index c990244..ae21fd0 100644
--- a/LoadGlassModule/src/main/java/com/mes/service/LoadGlassService.java
+++ b/LoadGlassModule/src/main/java/com/mes/service/LoadGlassService.java
@@ -1,40 +1,69 @@
+package com.mes.service;
import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-import com.example.springboot.component.PLCAutoMes;
-import com.example.springboot.component.S7control;
-import com.example.springboot.entity.device.PlcParameterObject;
+import com.mes.entity.device.PLCAutoMes;
+import com.mes.common.PlcTools.S7control;
+import com.mes.entity.device.PlcParameterObject;
import com.google.common.primitives.Bytes;
import com.mes.entity.GlassInfo;
import com.mes.entity.UpWorkstation;
import com.mes.mapper.LoadGlassMapper;
-import com.mes.mapper.TemperingMapper;
@Service
public class LoadGlassService {
@Autowired
private com.mes.common.PlcTools.S7control s7control;
private LoadGlassMapper LoadGlassMapper;
+ PlcParameterObject plcmes=PLCAutoMes.PlcMesObject;
//鏄剧ず宸ヤ綅涓婄殑鐜荤拑淇℃伅
- public GlassInfo selectAll() {
- GlassInfo glassInfo = LoadGlassMapper.SelectALL();
+ public List<UpWorkstation> selectAll() {
+ List<UpWorkstation> glassInfo= LoadGlassMapper.selectALL();
return glassInfo;
}
//澧炲姞浜哄伐杈撳叆鐨勫伐浣嶇幓鐠冧俊鎭�
- public void insertGlass(UpWorkstation upwork) {
- LoadGlassMapper.insertGlass(upwork.Getpatternwidth(),upwork.getPatternheigth(),upwork.getPatternthickness(),1);
+ public void insertGlass(UpWorkstation upwork) {
+ LoadGlassMapper.insertGlass(upwork.getPatternwidth(),upwork.getPatternheigth(),upwork.getPatternthickness(),upwork.getWorkstationid());
}
//鍒犻櫎浜哄伐鎼蛋鐨勭幓鐠冧俊鎭�
- public void deleteGlass(String id) {
+ public void deleteGlass(int id) {
LoadGlassMapper.deleteGlass(id);
}
//鍒ゆ柇鏄惁鍙互鍚哥墖杩涜浠诲姟
public boolean isCanLoadGlass() {
- boolean result=s7control.WriteWord("100.10", 1);
- return result;
+ String loadstate=plcmes.getPlcParameter("鍚哥墖淇″彿").getValue();
+ if(loadstate.equals("1")) {
+ return true;
+ }else{
+ return false;
+ }
+
}
+ //鍒ゆ柇浼樺厛鍚哥墖浣嶇疆鍚庡彂閫佸嚭鐗囦换鍔�
+ public void selectPriority() {
+ int loadid1=LoadGlassMapper.selectPriority(1);
+ int loadid2=LoadGlassMapper.selectPriority(2);
+ //鍒ゆ柇涓�浜屽彿宸ヤ綅鍝竟鐨勯『搴忔洿鍏�
+ if(loadid1>loadid2) {
+ s7control.WriteWord("DB100.10", (short)2);
+ }else if(loadid1==loadid2){
+ //褰撲袱涓伐浣嶄笂鐨勭幓鐠冩暟鐩稿悓鏃讹紝鍒ゆ柇鍝釜宸ヤ綅涓婄殑鐜荤拑鏁版洿灏�,浼樺厛娓呯┖涓�涓灦瀛�
+ int glassnum1=plcmes.getPlcParameter("鐜荤拑鏁�").getValue();
+ int glassnum2=plcmes.getPlcParameter("鐜荤拑鏁�").getValue();
+ if(glassnum1>glassnum2){
+ s7control.WriteWord("DB100.10", (short)2);
+ }else{
+ s7control.WriteWord("DB100.10", (short)1);
+ }
+ }else{
+ s7control.WriteWord("DB100.10", (short)1);
+ }
+ }
+
+
+
}
diff --git a/LoadGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java b/LoadGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java
deleted file mode 100644
index 5274aa6..0000000
--- a/LoadGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.mes.service.impl;
-
-import com.baomidou.dynamic.datasource.annotation.DS;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.mes.entity.OrderTest;
-import com.mes.mapper.OrderTestMapper;
-import com.mes.service.IOrderService;
-import org.springframework.stereotype.Service;
-
-@Service
-@DS("erp_sd")
-public class OrderServiceImpl extends ServiceImpl<OrderTestMapper, OrderTest> implements IOrderService {
-}
diff --git a/LoadGlassModule/src/main/resources/JsonFile/PlcAlbania.json b/LoadGlassModule/src/main/resources/JsonFile/PlcAlbania.json
new file mode 100644
index 0000000..ab65b19
--- /dev/null
+++ b/LoadGlassModule/src/main/resources/JsonFile/PlcAlbania.json
@@ -0,0 +1,414 @@
+{
+ "plcAddressBegin":"DB14.0",
+ "plcAddressLenght":"208",
+ "dataType":"word",
+ "parameteInfor":[
+ {
+ "codeId": "PLCToMES",
+ "addressIndex":"0",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"m/min"
+ },
+ {
+ "codeId": "IDStatus1",
+ "addressIndex":"2",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"m/min"
+ },
+ {
+ "codeId": "IDStatus2",
+ "addressIndex":"4",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"m/min"
+ },
+ {
+ "codeId": "IDStatus3",
+ "addressIndex":"6",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "IDStatus4",
+ "addressIndex":"8",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "IDStatus5",
+ "addressIndex":"10",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "IDStatus6",
+ "addressIndex":"12",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "StautsID1",
+ "addressIndex":"14",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "StautsID2",
+ "addressIndex":"16",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "StautsID3",
+ "addressIndex":"18",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "StautsID4",
+ "addressIndex":"20",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "StautsID5",
+ "addressIndex":"22",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "StautsID6",
+ "addressIndex":"24",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "GaToMES",
+ "addressIndex":"26",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "Height",
+ "addressIndex":"28",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "width",
+ "addressIndex":"30",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "ExportTOMES1",
+ "addressIndex":"32",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "ExportToMES2",
+ "addressIndex":"34",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ } ,
+ {
+ "codeId": "MESToPLC",
+ "addressIndex":"36",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ } ,
+ {
+ "codeId": "MESID1",
+ "addressIndex":"38",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ } ,
+ {
+ "codeId": "MESID2",
+ "addressIndex":"54",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESID3",
+ "addressIndex":"70",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESID4",
+ "addressIndex":"86",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESID5",
+ "addressIndex":"102",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESID6",
+ "addressIndex":"118",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESToPLCStart1",
+ "addressIndex":"134",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStart2",
+ "addressIndex":"136",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStart3",
+ "addressIndex":"138",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,{
+ "codeId": "MESToPLCStart4",
+ "addressIndex":"140",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,{
+ "codeId": "MESToPLCStart5",
+ "addressIndex":"142",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,{
+ "codeId": "MESToPLCStart6",
+ "addressIndex":"144",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget1",
+ "addressIndex":"146",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget2",
+ "addressIndex":"148",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget3",
+ "addressIndex":"150",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget4",
+ "addressIndex":"152",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget5",
+ "addressIndex":"154",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget6",
+ "addressIndex":"156",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus1",
+ "addressIndex":"158",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus2",
+ "addressIndex":"160",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus3",
+ "addressIndex":"162",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus4",
+ "addressIndex":"164",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus5",
+ "addressIndex":"166",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus6",
+ "addressIndex":"168",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToGaStatus",
+ "addressIndex":"170",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "A01Err",
+ "addressIndex":"172",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "A02Err",
+ "addressIndex":"174",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "B01Err",
+ "addressIndex":"176",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C01Err",
+ "addressIndex":"178",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C02Err",
+ "addressIndex":"180",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "ErrSpace1",
+ "addressIndex":"182",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "ErrSpace2",
+ "addressIndex":"184",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "ErrSpace3",
+ "addressIndex":"186",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "B01Position",
+ "addressIndex":"188",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C01Position",
+ "addressIndex":"190",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C02Position",
+ "addressIndex":"192",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "DeviceState",
+ "addressIndex":"194",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "AllFVRun",
+ "addressIndex":"196",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "A01State",
+ "addressIndex":"198",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "A02State",
+ "addressIndex":"200",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "B01State",
+ "addressIndex":"202",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C01State",
+ "addressIndex":"204",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C02State",
+ "addressIndex":"206",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ]
+}
diff --git a/TemperingGlassModule/src/main/JsonFile/PlcAlbania.json b/TemperingGlassModule/src/main/JsonFile/PlcAlbania.json
new file mode 100644
index 0000000..ab65b19
--- /dev/null
+++ b/TemperingGlassModule/src/main/JsonFile/PlcAlbania.json
@@ -0,0 +1,414 @@
+{
+ "plcAddressBegin":"DB14.0",
+ "plcAddressLenght":"208",
+ "dataType":"word",
+ "parameteInfor":[
+ {
+ "codeId": "PLCToMES",
+ "addressIndex":"0",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"m/min"
+ },
+ {
+ "codeId": "IDStatus1",
+ "addressIndex":"2",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"m/min"
+ },
+ {
+ "codeId": "IDStatus2",
+ "addressIndex":"4",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"m/min"
+ },
+ {
+ "codeId": "IDStatus3",
+ "addressIndex":"6",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "IDStatus4",
+ "addressIndex":"8",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "IDStatus5",
+ "addressIndex":"10",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "IDStatus6",
+ "addressIndex":"12",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "StautsID1",
+ "addressIndex":"14",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "StautsID2",
+ "addressIndex":"16",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "StautsID3",
+ "addressIndex":"18",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "StautsID4",
+ "addressIndex":"20",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "StautsID5",
+ "addressIndex":"22",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "StautsID6",
+ "addressIndex":"24",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "GaToMES",
+ "addressIndex":"26",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "Height",
+ "addressIndex":"28",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "width",
+ "addressIndex":"30",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "ExportTOMES1",
+ "addressIndex":"32",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,
+ {
+ "codeId": "ExportToMES2",
+ "addressIndex":"34",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ } ,
+ {
+ "codeId": "MESToPLC",
+ "addressIndex":"36",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ } ,
+ {
+ "codeId": "MESID1",
+ "addressIndex":"38",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ } ,
+ {
+ "codeId": "MESID2",
+ "addressIndex":"54",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESID3",
+ "addressIndex":"70",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESID4",
+ "addressIndex":"86",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESID5",
+ "addressIndex":"102",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESID6",
+ "addressIndex":"118",
+ "addressLenght":"14",
+ "ratio":"1",
+ "unit":"mm/S"
+ },
+ {
+ "codeId": "MESToPLCStart1",
+ "addressIndex":"134",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStart2",
+ "addressIndex":"136",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStart3",
+ "addressIndex":"138",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,{
+ "codeId": "MESToPLCStart4",
+ "addressIndex":"140",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,{
+ "codeId": "MESToPLCStart5",
+ "addressIndex":"142",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ,{
+ "codeId": "MESToPLCStart6",
+ "addressIndex":"144",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget1",
+ "addressIndex":"146",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget2",
+ "addressIndex":"148",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget3",
+ "addressIndex":"150",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget4",
+ "addressIndex":"152",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget5",
+ "addressIndex":"154",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCTarget6",
+ "addressIndex":"156",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus1",
+ "addressIndex":"158",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus2",
+ "addressIndex":"160",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus3",
+ "addressIndex":"162",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus4",
+ "addressIndex":"164",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus5",
+ "addressIndex":"166",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToPLCStatus6",
+ "addressIndex":"168",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "MESToGaStatus",
+ "addressIndex":"170",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "A01Err",
+ "addressIndex":"172",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "A02Err",
+ "addressIndex":"174",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "B01Err",
+ "addressIndex":"176",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C01Err",
+ "addressIndex":"178",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C02Err",
+ "addressIndex":"180",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "ErrSpace1",
+ "addressIndex":"182",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "ErrSpace2",
+ "addressIndex":"184",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "ErrSpace3",
+ "addressIndex":"186",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "B01Position",
+ "addressIndex":"188",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C01Position",
+ "addressIndex":"190",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C02Position",
+ "addressIndex":"192",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "DeviceState",
+ "addressIndex":"194",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "AllFVRun",
+ "addressIndex":"196",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "A01State",
+ "addressIndex":"198",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "A02State",
+ "addressIndex":"200",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "B01State",
+ "addressIndex":"202",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C01State",
+ "addressIndex":"204",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ },{
+ "codeId": "C02State",
+ "addressIndex":"206",
+ "addressLenght":"2",
+ "ratio":"1",
+ "unit":"mm/S"
+ }
+ ]
+}
diff --git a/TemperingGlassModule/src/main/java/com/mes/MesApplication.java b/TemperingGlassModule/src/main/java/com/mes/MesApplication.java
index 9cc84b5..79565d5 100644
--- a/TemperingGlassModule/src/main/java/com/mes/MesApplication.java
+++ b/TemperingGlassModule/src/main/java/com/mes/MesApplication.java
@@ -1,11 +1,8 @@
package com.mes;
-
-import com.mes.common.PlcTools.S7object;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.transaction.annotation.EnableTransactionManagement;
-import org.springframework.transaction.annotation.Transactional;
//springboot 鍚姩鍏ュ彛
@SpringBootApplication
diff --git a/TemperingGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java b/TemperingGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
index 9cc9e37..8ffee41 100644
--- a/TemperingGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
+++ b/TemperingGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
@@ -1,7 +1,9 @@
package com.mes.common.PlcTools;
-
+import java.nio.ByteBuffer;
+import java.nio.ByteOrder;
import java.nio.charset.StandardCharsets;
+import java.sql.Time;
import java.util.ArrayList;
import java.util.List;
@@ -9,15 +11,37 @@
import com.github.xingshuangs.iot.protocol.s7.service.MultiAddressWrite;
import com.github.xingshuangs.iot.protocol.s7.service.S7PLC;
import com.google.common.primitives.Bytes;
+import org.apache.ibatis.jdbc.Null;
public class S7control {
S7PLC s7PLC; // PLC閫氳绫诲疄渚�
-
- public S7control(EPlcType plcType, String ip, int port, int rack, int slot) {
+ private EPlcType plcType = EPlcType.S1500; // 瑗块棬瀛怭LC绫诲瀷
+ private String ip = "192.168.10.1"; // plc ip鍦板潃
+ private int port = 102; // plc 绔彛鍙�
+
+ private static volatile S7control instance = null;
+
+ private S7control() {
if (s7PLC == null)
s7PLC = new S7PLC(plcType, ip, port,0,0);
- }
+ }
+ public S7control(EPlcType plcType,String ip,int port,int a,int b) {
+ if (s7PLC == null)
+ s7PLC = new S7PLC(plcType, ip, port,a,b);
+ }
+
+ // 鍗曚緥妯″紡 鑾峰彇绫荤殑鍞竴瀹炰緥
+ public static S7control getinstance() {
+ if (instance == null) {
+ synchronized (S7control.class) {
+ if (instance == null)
+ instance = new S7control();
+ }
+ }
+ return instance;
+ }
+
/**
* 鍏抽棴瑗块棬瀛恠7閫氳杩炴帴
*/
@@ -33,7 +57,7 @@
public boolean CheckConnected() {
return s7PLC.checkConnected();
}
-
+
/**
* 鎸夋寚瀹氱殑鍦板潃 鍐欏叆涓�涓獁ord
*
@@ -156,7 +180,7 @@
}
}
-
+
private int getIndexFromAddress(String address) {
@@ -181,7 +205,6 @@
public List<Short> ReadWord(String address, int count) {
if (s7PLC == null)
return null;
-
List<String> addresslist = GetAddressList(address, count, 16);
try {
return s7PLC.readInt16(addresslist);
@@ -191,7 +214,13 @@
return null;
}
}
-
+ public byte[] Readbyte(String address, int count) {
+ byte[] byt=new byte[count];
+ int wordcount=((count%2==0)?count/2:count+1);
+ List<Short> word=ReadWord(address,wordcount);
+
+ return byt;
+ }
/**
* 鎸夋寚瀹氱殑鍦板潃 璇诲彇byte缁撴灉闆�
*
@@ -269,6 +298,41 @@
}
+
+
+
+ public List<String> readStringsandword(List<String> addressList) {
+ if (s7PLC == null) {
+ return null;
+ }
+ List<String> result = new ArrayList<>();
+ for (String address : addressList) {
+ try {
+ if (address.contains("-")) {
+ address = address.substring(0, address.indexOf("-"));
+
+ byte[] bytes = s7PLC.readByte(address, 14);
+ if (bytes != null) {
+ String str = new String(bytes, StandardCharsets.UTF_8);
+ result.add(str);
+ }
+
+ } else {
+ Short value = s7PLC.readInt16(address);
+ result.add(value.toString());
+
+ }
+ } catch (Exception e) {
+ System.out.println("璇诲彇 " + address + " 澶辫触锛�" + e.getMessage());
+ result.add(null);
+ }
+ }
+
+ return result;
+ }
+
+
+
//涓嶈繛缁湴鍧�鍐欏叆Word
public void WriteWord(List<String> address, List<Short> datas) {
if (s7PLC == null)
@@ -300,7 +364,7 @@
glassidlist.add(Byte.valueOf(String.valueOf(iditem)));
}
byte[] bytes = Bytes.toArray(glassidlist);
- WriteByte(addr, bytes);
+ S7control.getinstance().WriteByte(addr, bytes);
}
//璇诲彇涓嶈繛缁瓀ord
@@ -410,4 +474,11 @@
}
return addresslist;
}
+ public void writeString(String addr,String data) {
+ s7PLC.writeString(addr,data);
+ }
+
+ public String readStrings(String addr) {
+ return s7PLC.readString(addr);
+ }
}
diff --git a/TemperingGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java b/TemperingGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java
index 1e45c2c..703a863 100644
--- a/TemperingGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java
+++ b/TemperingGlassModule/src/main/java/com/mes/config/AppRunnerConfig.java
@@ -16,7 +16,7 @@
public void run(ApplicationArguments args) throws Exception {
// TODO Auto-generated method stub
//
- System.out.println("鍚姩瀹屾垚");
+ System.out.println("鍚姩瀹屾垚Tempering");
}
diff --git a/TemperingGlassModule/src/main/java/com/mes/controller/OrderTestController.java b/TemperingGlassModule/src/main/java/com/mes/controller/OrderTestController.java
deleted file mode 100644
index aecbd7f..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/controller/OrderTestController.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.mes.controller;
-
-import com.mes.mapper.OrderTestMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-//@CrossOrigin //瑙e喅鍗曚釜controller 璺ㄥ煙闂
-@RestController
-@RequestMapping("/order11111111")
-
-public class OrderTestController {
- @Autowired
- private OrderTestMapper orderMapper;
-
-// @GetMapping //鏌ヨorder琛ㄧ粨鏋滈泦
-// public Result index(){
-// return Result.seccess(orderMapper.findAll());
-//
-// }
-//
-// @PostMapping //鎻掑叆
-// public Integer save(@RequestBody Order order) {
-// return orderMapper.insert(order);
-// }
-//
-// @PostMapping("/update")
-// public Integer updateOrder(@RequestBody Order order) {
-// return orderMapper.update(order.getId(),order.getOrderid());
-// }
-//
-// @DeleteMapping("/{id}") //鍒犻櫎鏁版嵁
-// public Integer delete(@PathVariable Integer id) {
-// return orderMapper.deleteById(id);
-// }
-
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/controller/TemperingController.java b/TemperingGlassModule/src/main/java/com/mes/controller/TemperingController.java
new file mode 100644
index 0000000..deeca44
--- /dev/null
+++ b/TemperingGlassModule/src/main/java/com/mes/controller/TemperingController.java
@@ -0,0 +1,51 @@
+package com.mes.controller;
+import java.util.List;
+import java.util.Map;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import com.mes.common.Result;
+import com.mes.entity.Tempering;
+import com.mes.service.TemperingOverService;
+import com.mes.service.TemperingService;
+
+
+@RestController
+@RequestMapping("/Tempering")
+
+// TidyUpGlassModule 閽㈠寲妯″潡
+public class TemperingController {
+
+ @Autowired
+ private TemperingService temperingService;
+
+ @Autowired
+ private TemperingOverService temperingOverService;
+
+ @GetMapping("/") // 鏌ヨ閽㈠寲绛夌墖涓殑鐗堝浘淇℃伅,鐘舵�佷负1鐨勪负宸插埌,鐘舵�佷负0鐨勪负绛夊緟涓�
+ @ResponseBody
+ public Result SelectTerritoryInfo(@RequestParam(name = "ProcessId", required = false) String ProcessId) {
+ List<Tempering> glass = temperingService.SelectWaitingGlass();
+ System.out.println(glass);
+ return Result.seccess(glass);
+ }
+
+ @GetMapping("/") // 鏌ヨ杩涚倝涓殑閽㈠寲绛夌墖涓殑鐗堝浘淇℃伅,鐘舵�佸叏涓�1鐨勪负宸插埌銆�
+ @ResponseBody
+ public Result CutTerritory(String ProcessId) {
+ List<Tempering> glass = temperingService.SelectIntoGlass();
+ System.out.println(glass);
+ return Result.seccess(glass);
+ }
+
+ @GetMapping("/") //閽㈠寲鍚庢樉绀哄嚭鐐夌殑鐗堝浘淇℃伅
+ @ResponseBody
+ public Result SelectCutTerritory(String ProcessId) {
+ List<Tempering> glass = temperingOverService.SelectOutGlass();
+ System.out.println(glass);
+ return Result.seccess(glass);
+ }
+
+
+
+
+}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/BigStorageCage.java b/TemperingGlassModule/src/main/java/com/mes/entity/BigStorageCage.java
deleted file mode 100644
index d103b46..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/entity/BigStorageCage.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`big_storage_cage`")
-public class BigStorageCage {
- @TableId(type = IdType.AUTO)
- private Integer id;//澶х悊鐗囩琛╥d
- private Integer device_id;//璁惧id
- private Integer slot;//鏍呮牸鍙�
- private String enable_state;//鍚敤鐘舵��
- private Integer remain_width;//鍓╀綑瀹藉害
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/BigStorageCageDetails.java b/TemperingGlassModule/src/main/java/com/mes/entity/BigStorageCageDetails.java
deleted file mode 100644
index 3dd0188..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/entity/BigStorageCageDetails.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`big_storage_cage_details`")
-public class BigStorageCageDetails {
- @TableId(type = IdType.AUTO)
- private Integer id;//澶х悊鐗囩璇︽儏琛╥d
- private Integer deviceid;//璁惧id
- private Integer slot;//鏍呮牸鍙�
- private Integer glassid;//鐜荤拑id
- private Integer sequence;//灏忕墖鍦ㄦ牸鍐呯殑椤哄簭
- private String flowcardid;//娴佺▼鍗″彿
- private Integer glasstype;//鐜荤拑绫诲瀷
- private Double width;//瀹�
- private Double height;//楂�
- private Double thickness;//鍘氬害
- private Integer temperinglayoutid;//閽㈠寲鐗堝浘id
- private Integer temperingfeedsequence;//閽㈠寲鐗堝浘鐗囧簭
- private Integer state;//鐘舵��
- private Integer gap;//鐜荤拑闂撮殭
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/DownGlassInfo.java b/TemperingGlassModule/src/main/java/com/mes/entity/DownGlassInfo.java
deleted file mode 100644
index bb1d86e..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/entity/DownGlassInfo.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`down_glass_info`")
-public class DownGlassInfo {
- @TableId(type = IdType.AUTO)
- private Integer id;//涓嬬墖鐜荤拑淇℃伅琛╥d
- private String flowcardid;//娴佺▼鍗″彿
- private Integer sequence;//椤哄簭
- private Integer width;//瀹�
- private Integer height;//楂�
- private Integer thickness;//鍘氬害
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/DownStorageCage.java b/TemperingGlassModule/src/main/java/com/mes/entity/DownStorageCage.java
deleted file mode 100644
index 1e1ff49..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/entity/DownStorageCage.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`down_storage_cage`")
-public class DownStorageCage {
- @TableId(type = IdType.AUTO)
- private Integer id;//涓嬬墖鍓嶇悊鐗囩琛╥d
- private Integer deviceid;//璁惧id
- private Integer slot;//鏍呮牸鍙�
- private String enablestate;//鍚敤鐘舵��
- private Integer remainwidth;//鍓╀綑
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/DownStorageCagedetails.java b/TemperingGlassModule/src/main/java/com/mes/entity/DownStorageCagedetails.java
deleted file mode 100644
index 9e26f5f..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/entity/DownStorageCagedetails.java
+++ /dev/null
@@ -1,27 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`down_storage_cage_details`")
-public class DownStorageCagedetails {
- @TableId(type = IdType.AUTO)
- private Integer id;//涓嬬墖鍓嶇悊鐗囩鏄庣粏琛╥d
- private Integer deviceid;//璁惧id
- private Integer slot;//鏍呮牸鍙�
- private Integer glassid;//鐜荤拑id
- private Integer sequence;//灏忕墖鍦ㄦ牸鍐呯殑椤哄簭
- private String flow_card_id;//娴佺▼鍗″彿
- private Integer glass_type;//鐜荤拑绫诲瀷
- private Double width;//瀹�
- private Double height;//楂�
- private Double thickness;//鍘氬害
- private Integer temperinglayoutid;//閽㈠寲鐗堝浘id
- private Integer tempering_feed_sequence;//閽㈠寲鐗堝浘鐗囧簭
- private Integer state;//鐘舵��
- private Integer gap;//鐜荤拑闂撮殭
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/DownWorkstation.java b/TemperingGlassModule/src/main/java/com/mes/entity/DownWorkstation.java
deleted file mode 100644
index 847d157..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/entity/DownWorkstation.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`down_workstation`")
-public class DownWorkstation {
- @TableId(type = IdType.AUTO)
- private Integer id;//涓嬬墖宸ヤ綅琛╥d
- private Integer flowcard_id;//宸ヤ綅id
- private String glass_type;//娴佺▼鍗″彿
- private Integer width;//璁惧id
- private Integer height;//鍚敤鐘舵��
- private Integer thickness;//宸ヤ綔鐘舵��
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/EdgStorageCage.java b/TemperingGlassModule/src/main/java/com/mes/entity/EdgStorageCage.java
deleted file mode 100644
index 9dcf7eb..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/entity/EdgStorageCage.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`edg_storage_cage`")
-public class EdgStorageCage {
- @TableId(type = IdType.AUTO)
- private Integer id;//纾ㄨ竟鍓嶇悊鐗囩琛╥d
- private Integer flowcard_id;//璁惧id
- private Integer glass_type;//鏍呮牸鍙�
- private String height;//鍚敤鐘舵��
- private Integer thickness;//鍓╀綑
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/OrderTest.java b/TemperingGlassModule/src/main/java/com/mes/entity/OrderTest.java
deleted file mode 100644
index e8ea030..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/entity/OrderTest.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`order`")
-public class OrderTest {
- @TableId(type = IdType.AUTO)
- private Integer id;
- private String orderId;
- private String recipeNo;
- private String largeglassNo;
- private String largeglassCompleted;
- private String smallglassNo;
- private String smallglassCompleted;
- private String smallglassProcessing;
- private String smallglassWorn;
- private String orderStatus;
- private String orderMaker;
- private String makeTime;
- private String updateTime;
-
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/device/InitUtil.java b/TemperingGlassModule/src/main/java/com/mes/entity/device/InitUtil.java
new file mode 100644
index 0000000..6d59bd3
--- /dev/null
+++ b/TemperingGlassModule/src/main/java/com/mes/entity/device/InitUtil.java
@@ -0,0 +1,124 @@
+package com.mes.entity.device;
+import cn.hutool.json.JSONArray;
+import cn.hutool.json.JSONObject;
+import java.io.BufferedReader;
+import java.io.FileReader;
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import com.mes.common.PlcTools.S7control;
+
+public class InitUtil {
+ //鍒濆鍖杦ord
+ public static PlcParameterObject initword(String jsonFilePath) {
+ try {
+ FileReader fileReader = new FileReader(jsonFilePath);
+ BufferedReader bufferedReader = new BufferedReader(fileReader);
+
+ StringBuilder content = new StringBuilder();
+ String line;
+
+ while ((line = bufferedReader.readLine()) != null) {
+ content.append(line);
+ }
+
+ bufferedReader.close();
+ fileReader.close();
+
+ JSONObject jsonfileobj = new JSONObject(content.toString());
+ JSONArray jsonArray = jsonfileobj.getJSONArray("parameteInfor");
+ PlcParameterObject plcParameterObject = new PlcParameterObject();
+ plcParameterObject.setPlcAddressBegin(jsonfileobj.getStr("plcAddressBegin"));//璁剧疆璧峰浣嶅湴鍧�
+ plcParameterObject.setPlcAddressLength(Integer.valueOf(jsonfileobj.getStr("plcAddressLenght")));//璁剧疆鍦板潃闀垮害
+
+ for (int i = 0; i < jsonArray.size(); i++) {
+ JSONObject parameterObj = jsonArray.getJSONObject(i);
+ PlcParameterInfo plcParameterInfo = new PlcParameterInfo(jsonfileobj.getStr("plcAddressBegin")); //鍙傛暟瀹炰緥
+ String codeid = parameterObj.getStr("codeId");
+ plcParameterInfo.setCodeId(codeid);
+ plcParameterInfo.setAddressIndex(Integer.valueOf(parameterObj.getStr("addressIndex")));
+ //plcParameterInfo.setRatio(Integer.valueOf(parameterObj.getStr("ratio")));
+ plcParameterInfo.setAddressLength(Integer.valueOf(parameterObj.getStr("addressLenght")));
+ plcParameterInfo.setUnit(parameterObj.getStr("unit"));
+ plcParameterObject.addPlcParameter(plcParameterInfo);
+ }
+ // byte[] getplcvlues = {0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02};
+ // byte[] getplcvlues = S7control.getinstance().ReadByte(plcParameterObject.getPlcAddressBegin(), plcParameterObject.getPlcAddressLength());
+ // plcParameterObject.setPlcParameterList(getplcvlues);
+
+ return plcParameterObject;
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ //鍒濆鍖朾it
+ public static PlcBitObject initbit(String jsonFilePath) {
+ PlcBitObject plcBitObject = new PlcBitObject();
+
+ try {
+ FileReader fileReader = new FileReader(jsonFilePath);
+ BufferedReader bufferedReader = new BufferedReader(fileReader);
+
+ StringBuilder content = new StringBuilder();
+ String line;
+
+ while ((line = bufferedReader.readLine()) != null) {
+ content.append(line);
+ }
+
+ bufferedReader.close();
+ fileReader.close();
+
+ JSONObject jsonfileobj = new JSONObject(content.toString());
+ JSONArray jsonArray = jsonfileobj.getJSONArray("parameteInfor");
+ plcBitObject.setPlcAddressBegin(jsonfileobj.getStr("plcAddressBegin"));//璁剧疆璧峰浣嶅湴鍧�
+ plcBitObject.setPlcAddressLength(Integer.valueOf(jsonfileobj.getStr("plcAddressLenght")));//璁剧疆鍦板潃闀垮害
+
+ for (int i = 0; i < jsonArray.size(); i++) {
+ JSONObject parameterObj = jsonArray.getJSONObject(i);
+
+ PlcBitInfo plcBitInfo = new PlcBitInfo(jsonfileobj.getStr("plcAddressBegin")); //鍙傛暟瀹炰緥
+ String codeid = parameterObj.getStr("codeId");
+ plcBitInfo.setCodeId(codeid);
+ plcBitInfo.setAddressIndex(Integer.valueOf(parameterObj.getStr("addressIndex")));
+
+ plcBitObject.addPlcBit(plcBitInfo);
+ }
+ System.out.println("");
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ //Boolean[] values1 = { false, true, true, true, false, false, true, false,
+ // false, true ,true };
+ // List<Boolean> getplcvlues = new ArrayList<>(Arrays.asList(values1));
+
+// List<Boolean> getplcvlues = S7control.getinstance().ReadBits(plcBitObject.getPlcAddressBegin(), plcBitObject.getPlcAddressLength());
+// plcBitObject.setPlcBitList(getplcvlues);
+ return plcBitObject;
+ }
+
+//
+ public static void readAndUpdateBitValues(PlcBitObject plcBitObject) {
+
+// Boolean[] values1 = { false, true, true, true, false, false, true, false,
+// false, true ,true };
+// List<Boolean> getplcvlues = new ArrayList<>(Arrays.asList(values1));
+ List<Boolean> getplcvlues = S7control.getinstance().ReadBits(plcBitObject.getPlcAddressBegin(), plcBitObject.getPlcAddressLength());
+ plcBitObject.setPlcBitList(getplcvlues);
+ }
+
+
+ public static void readAndUpdateWordValues(PlcParameterObject plcParameterObject) {
+
+ // byte[] getplcvlues = {0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02, 0x03, 0x04,0x01, 0x02};
+ byte[] getplcvlues = S7control.getinstance().ReadByte(plcParameterObject.getPlcAddressBegin(), plcParameterObject.getPlcAddressLength());
+ plcParameterObject.setPlcParameterList(getplcvlues);
+ }
+
+
+
+}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/device/PLCAutoMes.java b/TemperingGlassModule/src/main/java/com/mes/entity/device/PLCAutoMes.java
new file mode 100644
index 0000000..dcb707e
--- /dev/null
+++ b/TemperingGlassModule/src/main/java/com/mes/entity/device/PLCAutoMes.java
@@ -0,0 +1,95 @@
+package com.mes.entity.device;
+
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.List;
+import static com.mes.entity.device.InitUtil.readAndUpdateWordValues;
+public class PLCAutoMes extends Thread {
+
+ // // 鐢ㄤ簬瀛樺偍搴旂敤绋嬪簭鐨勯厤缃俊鎭�
+ // private Configuration config;
+ private static InitUtil initUtil;
+ // public static PlcParameterObject PlcMesObject;
+ // public static PlcParameterObject PlcReadObject;
+ // public static PlcParameterObject PlcframeObject;
+
+ // // 鍒涘缓涓�涓嚜瀹氫箟鐨� S7 鎺у埗鍣ㄦ秷鎭鐞嗗櫒瀵硅薄
+ // MessageHandler customS7Control = new MessageHandler();
+
+ // 鍗曚緥瀹炰緥
+ private static PLCAutoMes instance;
+ // private static String PlcMes = PLCAutoMes.class.getResource("/JsonFile/PlcMes.json").getPath();
+ private static String PlcAlbania = PLCAutoMes.class.getResource("/JsonFile/PlcAlbania.json").getPath();
+ // private static String PlcRead = PLCAutoMes.class.getResource("/JsonFile/PlcRead.json").getPath();
+ // private static String Plcframe = PLCAutoMes.class.getResource("/JsonFile/Plcframe.json").getPath();
+ // private static String PlcParameter = PLCAutomaticParameterSettingReview2.class.getResource("/JsonFile/PlcParameter.json").getPath();
+
+ // private static String PlcSign = PLCAutomaticParameterSettingReview2.class.getResource("/JsonFile/PlcSign.json").getPath();
+
+ // private static String PlcState = PLCAutomaticParameterSettingReview2.class.getResource("/JsonFile/PlcState.json").getPath();
+
+ // private static String PlcAlarm = PLCAutoMes.class.getResource("/JsonFile/PlcAlarm.json").getPath();
+ // private static String PlcTest = PLCAutoMes.class.getResource("/JsonFile/PlcTest.json").getPath();
+
+ // 璋冪敤initword鏂规硶
+
+ // public static PlcParameterObject plcParameterObject = initUtil.initword(PlcParameter);
+ // public static PlcBitObject plcPlcTest = initUtil.initbit(PlcTest);
+ // public static PlcBitObject plcBitObject = initUtil.initbit(PlcSign);
+ // public static PlcParameterObject plcStateObject= initUtil.initword(PlcState);
+ // public static PlcBitObject plcPlcAlarm = initUtil.initbit(PlcAlarm);
+ public static PlcParameterObject PlcMesObject = InitUtil.initword(PlcAlbania);
+ // public static PlcParameterObject PlcReadObject = initUtil.initword(PlcRead);
+ // public static PlcParameterObject PlcframeObject = initUtil.initword(Plcframe);
+
+ // 绉佹湁鏋勯�犲嚱鏁�
+ public PLCAutoMes() throws IOException {
+ //config = new Configuration("config.properties");
+ initUtil = new InitUtil();
+ }
+
+ // 鑾峰彇鍗曚緥瀹炰緥
+ public static synchronized PLCAutoMes getInstance() throws IOException {
+ if (instance == null) {
+ instance = new PLCAutoMes();
+ }
+ return instance;
+ }
+
+ @Override
+ public void run() {
+ while (this != null) {
+ try {
+ Thread.sleep(100);
+
+ } catch (InterruptedException e) {
+ e.printStackTrace();
+ }
+
+ // System.out.println(jsonFilePath);
+
+ //readAndUpdateWordValues(PlcReadObject);
+ readAndUpdateWordValues(PlcMesObject);
+ //readAndUpdateWordValues(PlcframeObject);
+ // readAndUpdateWordValues(PlcframeObject);
+
+ // readAndUpdateWordValues(plcStateObject);
+ // int index = PlcMesObject.getPlcParameter("AddStart").getAddressIndex();
+ // // System.out.println(index);
+ // PlcMesObject.getPlcParameter("AddStart").getAddress(index);
+ // // System.out.println(PlcMesObject.getPlcParameter("AddStart").getAddress(index));
+ // List<String> addresses = new ArrayList<>();
+ // addresses.add("FeedID");
+ // addresses.add("AddStart");
+ // // System.out.println(addresses);
+ // // System.out.println(PlcMesObject.getPlcParameterValues(addresses));
+ // List<String> addresses2 = new ArrayList<>();
+ // addresses2.add("FeedID");
+ // addresses2.add("FeedCarStatus");
+
+ //System.out.println(PlcReadObject.getPlcParameterValues(addresses2));
+
+ }
+ }
+}
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcBitInfo.java b/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcBitInfo.java
new file mode 100644
index 0000000..78846f9
--- /dev/null
+++ b/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcBitInfo.java
@@ -0,0 +1,77 @@
+package com.mes.entity.device;
+
+
+
+public class PlcBitInfo {
+
+ public PlcBitInfo(String startAddress) {
+ this.startAddress = startAddress;
+ }
+ private String startAddress;
+ // 鍙傛暟鏍囪瘑
+ private String codeId;
+
+ // 鍙傛暟鍚嶇О
+ private String name;
+
+ // 璇诲彇 鍙傛暟鍊�
+ private Boolean value;
+ // 鍙傛暟鍦板潃
+ private int addressIndex;
+
+ public String getCodeId() {
+ return this.codeId;
+ }
+
+ public void setCodeId(String codeId) {
+ this.codeId = codeId;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public Boolean getValue() {
+ return this.value;
+ }
+
+ public void setValue(Boolean value) {
+ this.value = value;
+ }
+
+
+ public int getAddressIndex() {
+ return this.addressIndex;
+ }
+ /**
+ * 鑾峰彇鍦板潃
+ *
+ * @param index 绱㈠紩鍦板潃
+ */
+ public String getAddress(int index) {
+ String[] stringdatas = this.startAddress.trim().split("\\.");
+ if (stringdatas.length < 2 )
+ return null;
+ int dbwindex = 0;
+ int bitindex = 0;
+ if (stringdatas.length == 3) {
+ dbwindex = Integer.parseInt(stringdatas[1]);
+ bitindex = Integer.parseInt(stringdatas[2]);
+ } else
+ return null;
+ dbwindex+=index/8;
+ bitindex+=index%8;
+ return stringdatas[0]+"."+dbwindex+"."+bitindex;
+ }
+
+
+
+
+ public void setAddressIndex(int addressindex) {
+ this.addressIndex = addressindex;
+ }
+ }
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcBitObject.java b/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcBitObject.java
new file mode 100644
index 0000000..977a13c
--- /dev/null
+++ b/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcBitObject.java
@@ -0,0 +1,142 @@
+package com.mes.entity.device;
+
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+public class PlcBitObject {
+
+ // 璇ユā鍧楁暟鎹被鍨嬶紝鏁版嵁璧峰浣嶇疆
+ private String plcAddressBegin;
+ // 鏁版嵁鍦板潃闀垮害锛氱涓�鍙傛暟鍒版渶鍚庝竴涓弬鏁扮殑闀垮害
+ private int plcAddressLength;
+ private ArrayList<PlcBitInfo> plcBitList;
+
+ /**
+ * @return 鏁版嵁鍖哄紑濮嬪湴鍧�
+ */
+ public String getPlcAddressBegin() {
+ return plcAddressBegin;
+ }
+
+ /**
+ * @param plcAddressBegin 璁剧疆鏁版嵁鍖哄紑濮嬪湴鍧�
+ */
+ public void setPlcAddressBegin(String plcAddressBegin) {
+ this.plcAddressBegin = plcAddressBegin;
+ }
+
+ /**
+ * @return 鏁版嵁鍖� 璇诲彇鎵�鏈夋暟鎹墍闇�鐨勯暱搴︼紙浠yte绫诲瀷涓哄熀鍑嗭級
+ */
+ public int getPlcAddressLength() {
+ return plcAddressLength;
+ }
+
+ /**
+ * @return 璁剧疆锛氭暟鎹尯 璇诲彇鎵�鏈夋暟鎹墍闇�鐨勯暱搴︼紙浠yte绫诲瀷涓哄熀鍑嗭級
+ */
+ public void setPlcAddressLength(int plcAddressLength) {
+ this.plcAddressLength = plcAddressLength;
+ }
+
+ /**
+ * @return 鑾峰彇鍙傛暟瀹炰緥闆嗗悎
+ */
+ public ArrayList<PlcBitInfo> getBitList() {
+ return plcBitList;
+ }
+
+ /**
+ * 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ *
+ * @param codeid 鍙傛暟鏍囪瘑
+ * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ */
+ public PlcBitInfo getPlcBit(String codeid) {
+ if (plcBitList != null) {
+ for (PlcBitInfo plcbitInfo : plcBitList) {
+ if (plcbitInfo.getCodeId().equals(codeid))
+ return plcbitInfo;
+ }
+ return null;
+ } else
+ return null;
+ }
+
+ /**
+ * 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ *
+ * @param codeid 鍙傛暟鏍囪瘑
+ * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ */
+ public List<Boolean> getPlcBitValues(List<String> codeids) {
+ List<Boolean> arrayList = new ArrayList<>();
+ if (plcBitList != null) {
+ Map<String, Boolean> resultMap = new LinkedHashMap<>(); // 浣跨敤 LinkedHashMap 淇濈暀鎻掑叆椤哄簭
+ for (PlcBitInfo plcBitInfo : plcBitList) {
+ if (codeids.contains(plcBitInfo.getCodeId().toString())) {
+ resultMap.put(plcBitInfo.getCodeId().toString(), plcBitInfo.getValue());
+ }
+ }
+ for (String codeId : codeids) { // 鎸夌収浼犲叆鍙傛暟鐨勯『搴忛亶鍘�
+ Boolean value = resultMap.get(codeId);
+ if (value != null) {
+ arrayList.add(value);
+ } else {
+ arrayList.add(null); // 濡傛灉鎵句笉鍒板搴旂殑鍊硷紝娣诲姞 null
+ }
+ }
+ }
+ return arrayList;
+ }
+
+
+ public List<String> getAddressListByCodeId(List<String> codeIdList) {
+ List<String> addressList = new ArrayList<>();
+ for (String codeId : codeIdList) {
+ for (PlcBitInfo plcBitInfo : plcBitList) {
+ if (plcBitInfo.getCodeId().equals(codeId)) {
+ int index = plcBitInfo.getAddressIndex();
+ String address = plcBitInfo.getAddress(index);
+ if (address != null) {
+ addressList.add(address);
+ }
+ }
+ }
+ }
+ return addressList;
+ }
+
+
+ /**
+ * 娣诲姞鍙傛暟瀹炰緥
+ *
+ * @param param 鍙傛暟瀹炰緥
+ */
+ public void addPlcBit(PlcBitInfo param) {
+ if (plcBitList != null)
+ plcBitList.add(param);
+ else {
+ plcBitList = new ArrayList<PlcBitInfo>();
+ plcBitList.add(param);
+ }
+ }
+
+ /**
+ * 鏍规嵁PLC杩斿洖鐨勬暟鎹� 缁欏弬鏁板疄渚嬭祴鍊�
+ *
+ * @param plcValueArray PLC璇诲彇鍥炴潵鐨刡yte绫诲瀷鏁版嵁闆嗗悎
+ */
+ public void setPlcBitList(List<Boolean> plcValueArray) {
+ if (plcBitList != null) {
+ for (PlcBitInfo plcbitInfo : plcBitList) {
+ plcbitInfo.setValue(plcValueArray.get(plcbitInfo.getAddressIndex()));
+ }
+ }
+ }
+
+
+
+}
\ No newline at end of file
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java b/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java
new file mode 100644
index 0000000..b4a2051
--- /dev/null
+++ b/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java
@@ -0,0 +1,128 @@
+package com.mes.entity.device;
+public class PlcParameterInfo {
+ public PlcParameterInfo(String startAddress) {
+ this.startAddress = startAddress;
+ }
+ private String startAddress;
+ // 鍙傛暟鏍囪瘑
+ private String codeId;
+
+ // 鍙傛暟鍚嶇О
+ private String name;
+
+ // 璇诲彇 鍙傛暟鍊�
+ private String value;
+
+ // // 鍐欏叆 鍙傛暟鍊�
+ // private String writeValue;
+
+ // 鍙傛暟鍗曚綅
+ private String unit;
+
+ // 鍙傛暟鍊艰浆鎹㈢郴鏁�
+ private int ratio;
+
+ // 鍙傛暟鍦板潃
+ private int addressIndex;
+
+ // 鍙傛暟鍦板潃浣嶉暱搴�
+ private int addressLength;
+
+ public String getCodeId() {
+ return this.codeId;
+ }
+
+ public void setCodeId(String codeId) {
+ this.codeId = codeId;
+ }
+
+ public String getName() {
+ return this.name;
+ }
+
+ public void setName(String name) {
+ this.name = name;
+ }
+
+ public String getValue() {
+ return this.value;
+ }
+
+ public void setValue(String value) {
+ this.value = value;
+ }
+
+ // public String getWriteValue() {
+ // return this.writeValue;
+ // }
+
+ // public void setWriteValue(String writeValue) {
+ // this.writeValue = writeValue;
+ // }
+
+ public String getUnit() {
+ return this.unit;
+ }
+
+ public void setUnit(String unit) {
+ this.unit = unit;
+ }
+
+ public int getAddressIndex() {
+ return this.addressIndex;
+ }
+
+ public void setAddressIndex(int addressindex) {
+ this.addressIndex = addressindex;
+ }
+
+ public int getAddressLength() {
+ return this.addressLength;
+ }
+
+ public void setAddressLength(int addresslength) {
+ this.addressLength = addresslength;
+ }
+
+ public int getRatio() {
+ return this.ratio;
+ }
+
+ public void setRatio(int ratio) {
+ this.ratio = ratio;
+ }
+
+
+ /**
+ * 鑾峰彇鍦板潃
+ *
+ * @param index 绱㈠紩鍦板潃
+ */
+ public String getAddress(int index) {
+ String[] stringdatas = this.startAddress.trim().split("\\.");
+ int addressLength=this.addressLength;
+ if (addressLength < 2 ){
+ return null;
+ }
+
+ if (addressLength == 2 ) {
+ int wordindex = index;
+
+ return stringdatas[0] + "." + wordindex;
+ }
+ if (addressLength == 14 ) {
+ int wordindex = index;
+ //int newIndex = wordindex + 13;
+ return stringdatas[0] + "." + wordindex ;
+ }
+ return null;
+ }
+
+ public int getPlcAddress() {
+
+ return addressIndex;
+ }
+ public String getAddress() {
+ return getAddress(this.addressIndex);
+ }
+}
\ No newline at end of file
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcParameterObject.java b/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcParameterObject.java
new file mode 100644
index 0000000..5355db5
--- /dev/null
+++ b/TemperingGlassModule/src/main/java/com/mes/entity/device/PlcParameterObject.java
@@ -0,0 +1,202 @@
+package com.mes.entity.device;
+
+import java.lang.reflect.Array;
+import java.nio.charset.StandardCharsets;
+import java.util.ArrayList;
+import java.util.LinkedHashMap;
+import java.util.List;
+import java.util.Map;
+
+public class PlcParameterObject {
+
+ // 璇ユā鍧楁暟鎹被鍨嬶紝鏁版嵁璧峰浣嶇疆
+ private String plcAddressBegin;
+ // 鏁版嵁鍦板潃闀垮害锛氱涓�鍙傛暟鍒版渶鍚庝竴涓弬鏁扮殑闀垮害
+ private int plcAddressLength;
+ private ArrayList<PlcParameterInfo> plcParameterList;
+
+ /**
+ * @return 鏁版嵁鍖哄紑濮嬪湴鍧�
+ */
+ public String getPlcAddressBegin() {
+ return plcAddressBegin;
+ }
+
+ /**
+ * @param plcAddressBegin 璁剧疆鏁版嵁鍖哄紑濮嬪湴鍧�
+ */
+ public void setPlcAddressBegin(String plcAddressBegin) {
+ this.plcAddressBegin = plcAddressBegin;
+ }
+
+ /**
+ * @return 鏁版嵁鍖� 璇诲彇鎵�鏈夋暟鎹墍闇�鐨勯暱搴︼紙浠yte绫诲瀷涓哄熀鍑嗭級
+ */
+ public int getPlcAddressLength() {
+ return plcAddressLength;
+ }
+
+ /**
+ * @return 璁剧疆锛氭暟鎹尯 璇诲彇鎵�鏈夋暟鎹墍闇�鐨勯暱搴︼紙浠yte绫诲瀷涓哄熀鍑嗭級
+ */
+ public void setPlcAddressLength(int plcAddressLength) {
+ this.plcAddressLength = plcAddressLength;
+ }
+
+ /**
+ * @return 鑾峰彇鍙傛暟瀹炰緥闆嗗悎
+ */
+ public ArrayList<PlcParameterInfo> getPlcParameterList() {
+ return plcParameterList;
+ }
+
+ /**
+ * 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ *
+ * @param codeid 鍙傛暟鏍囪瘑
+ * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ */
+ public PlcParameterInfo getPlcParameter(String codeid) {
+ if (plcParameterList != null) {
+ for (PlcParameterInfo plcParameterInfo : plcParameterList) {
+ if (plcParameterInfo.getCodeId().equals(codeid))
+ return plcParameterInfo;
+ }
+ return null;
+ } else
+ return null;
+ }
+
+
+
+ /**
+ * 鏍规嵁鍙傛暟鏍囪瘑 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ *
+ * @param codeids 鍙傛暟鏍囪瘑
+ * @return 鑾峰彇鏌愪釜鍙傛暟瀹炰緥
+ */
+ public List<String> getPlcParameterValues(List<String> codeids) {
+ List<String> arrayList = new ArrayList<>();
+ if (plcParameterList != null) {
+ Map<String, PlcParameterInfo> resultMap = new LinkedHashMap<>(); // 浣跨敤 LinkedHashMap 淇濈暀鎻掑叆椤哄簭
+ for (PlcParameterInfo plcParameterInfo : plcParameterList) {
+ if (codeids.contains(plcParameterInfo.getCodeId())) {
+ resultMap.put(plcParameterInfo.getCodeId(), plcParameterInfo);
+ }
+ }
+ for (String codeId : codeids) { // 鎸夌収浼犲叆鍙傛暟鐨勯『搴忛亶鍘�
+ PlcParameterInfo plcParameterInfo = resultMap.get(codeId);
+ if (plcParameterInfo != null) {
+ arrayList.add(plcParameterInfo.getValue());
+ } else {
+ arrayList.add(null); // 濡傛灉鎵句笉鍒板搴旂殑鍊硷紝娣诲姞 null
+ }
+ }
+ }
+ return arrayList;
+ }
+
+
+ public List<String> getAddressListByCodeId(List<String> codeIdList) {
+ List<String> addressList = new ArrayList<>();
+ for (String codeId : codeIdList) {
+ for (PlcParameterInfo plcParameterInfo : plcParameterList) {
+ if (plcParameterInfo.getCodeId().equals(codeId)) {
+ int index = plcParameterInfo.getAddressIndex();
+ String address = plcParameterInfo.getAddress(index);
+ if (address != null) {
+ addressList.add(address);
+ }
+ }
+ }
+ }
+ return addressList;
+ }
+
+
+
+
+
+
+ /**
+ * 娣诲姞鍙傛暟瀹炰緥
+ *
+ * @param param 鍙傛暟瀹炰緥
+ */
+ public void addPlcParameter(PlcParameterInfo param) {
+ if (plcParameterList != null)
+ plcParameterList.add(param);
+ else {
+ plcParameterList = new ArrayList<PlcParameterInfo>();
+ plcParameterList.add(param);
+ }
+ }
+
+ /**
+ * 鏍规嵁PLC杩斿洖鐨勬暟鎹� 缁欏弬鏁板疄渚嬭祴鍊�
+ *
+ * @param plcValueArray PLC璇诲彇鍥炴潵鐨刡yte绫诲瀷鏁版嵁闆嗗悎
+ */
+ public void setPlcParameterList(byte[] plcValueArray) {
+ if (plcParameterList != null) {
+
+ for (PlcParameterInfo plcParameterInfo : plcParameterList) {
+
+ byte[] valueList = new byte[plcParameterInfo.getAddressLength()];
+
+// System.out.println(plcParameterInfo.getAddressLength());
+
+ for (int i = 0; i < plcParameterInfo.getAddressLength(); i++) {
+ Array.setByte(valueList, i, plcValueArray[plcParameterInfo.getAddressIndex() + i]);
+
+ }
+ if (plcParameterInfo.getAddressLength()==2) {
+ plcParameterInfo.setValue(String.valueOf(byte2short(valueList)));
+ }
+ else if (plcParameterInfo.getAddressLength()==14) {
+ plcParameterInfo.setValue((byteToHexString(valueList)));
+ }
+
+ else
+ {
+ String valuestr = new String(valueList);
+ plcParameterInfo.setValue(valuestr);
+ }
+ }
+ }
+ }
+ /**
+ * short绫诲瀷杞琤yte[]
+ *
+ * @param s short绫诲瀷鍊�
+ */
+ public static byte[] short2byte(short s){
+ byte[] b = new byte[2];
+ for(int i = 0; i < 2; i++){
+ int offset = 16 - (i+1)*8; //鍥犱负byte鍗�4涓瓧鑺傦紝鎵�浠ヨ璁$畻鍋忕Щ閲�
+ b[i] = (byte)((s >> offset)&0xff); //鎶�16浣嶅垎涓�2涓�8浣嶈繘琛屽垎鍒瓨鍌�
+ }
+ return b;
+ }
+ /**
+ * byte[]绫诲瀷杞瑂hort
+ *
+ * @param b byte[]绫诲瀷鍊�
+ */
+ public static short byte2short(byte[] b){
+ short l = 0;
+ for (int i = 0; i < 2; i++) {
+ l<<=8; //<<=鍜屾垜浠殑 +=鏄竴鏍风殑锛屾剰鎬濆氨鏄� l = l << 8
+ l |= (b[i] & 0xff); //鍜屼笂闈篃鏄竴鏍风殑 l = l | (b[i]&0xff)
+ }
+ return l;
+ }
+
+ public static String byteToHexString(byte[] bytes) {
+
+ String str = new String(bytes, StandardCharsets.UTF_8);
+ return str;
+ }
+
+
+}
\ No newline at end of file
diff --git a/TemperingGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java b/TemperingGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java
deleted file mode 100644
index d12d4ce..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.mes.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.mes.entity.OrderTest;
-import org.apache.ibatis.annotations.*;
-
-@Mapper
-public interface OrderTestMapper extends BaseMapper<OrderTest> {
-
-// @Select("select * from `order`")
-// List<Order> findAll();
-//
-// @Insert("INSERT `order`(order_id)VALUES(#{order_id})")
-// Integer insert(Order order);
-//
-// @Delete("delete from `order` where id=#{id}")
-// Integer deleteById(@Param("id") Integer id);
-//
-// @Update("update `order` set order_id=#{order_id} where id=#{id}")
-// Integer update(@Param("id") Integer id,@Param("order_id") String order_id);
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/mapper/TemperingMapper.java b/TemperingGlassModule/src/main/java/com/mes/mapper/TemperingMapper.java
index 54e486f..5ec7ed8 100644
--- a/TemperingGlassModule/src/main/java/com/mes/mapper/TemperingMapper.java
+++ b/TemperingGlassModule/src/main/java/com/mes/mapper/TemperingMapper.java
@@ -4,6 +4,8 @@
import com.mes.entity.GlassInfo;
import com.mes.entity.Tempering;
+import java.util.List;
+
import org.apache.ibatis.annotations.*;
@Mapper
@@ -12,9 +14,20 @@
//鏌ヨ璇ョ幓鐠冪殑灏哄鍜屽潗鏍�
@Select("select *from glass_info where id=#{glassid};")
-GlassInfo SelectOutGlass(String glassid);
-
-@Select("select *from glass_info where id=#{glassid};")
+GlassInfo SelectGlass(String glassid);
+//鏄惁鍙互鍙戦�佽繘鐐変俊鍙�
+@Select("select count(*) from glass_info where id=#{glassid};")
int SelectTempering(String glassid);
+//鏌ヨ绛夊緟涓殑閽㈠寲鐗堝浘鐜荤拑淇℃伅
+@Select("select*from tempering_glass_info a left join (select flowcard_id,count(state)state from tempering_glass_info GROUP BY flowcard_id,state)b on a.flowcard_id=b.flowcard_id where b.state=2")
+List<Tempering> SelectWaitingGlass();
+//鏌ヨ杩涚倝涓殑閽㈠寲鐗堝浘鐜荤拑淇℃伅
+@Select("select*from tempering_glass_info a left join (select flowcard_id,min(state)state1 from tempering_glass_info GROUP BY flowcard_id having state1=1)b on a.flowcard_id=b.flowcard_id where b.state1=1")
+List<Tempering> SelectInGlass();
+//鏌ヨ閽㈠寲鍚庣殑閽㈠寲鐗堝浘淇℃伅
+@Select("select*from tempering_glass_info a left join (select flowcard_id,min(state)state1 from tempering_glass_info GROUP BY flowcard_id having state1=2)b on a.flowcard_id=b.flowcard_id where b.state1=2")
+List <Tempering> SelectOutGlass();
+
+
}
diff --git a/TemperingGlassModule/src/main/java/com/mes/service/IOrderService.java b/TemperingGlassModule/src/main/java/com/mes/service/IOrderService.java
deleted file mode 100644
index 9e44ceb..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/service/IOrderService.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package com.mes.service;public interface IOrderService {
-}
diff --git a/TemperingGlassModule/src/main/java/com/mes/service/ModuleA.java b/TemperingGlassModule/src/main/java/com/mes/service/ModuleA.java
deleted file mode 100644
index 3adf2ef..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/service/ModuleA.java
+++ /dev/null
@@ -1,58 +0,0 @@
-package com.mes.service;
-
-import com.rabbitmq.client.Channel;
-import com.rabbitmq.client.Connection;
-import com.rabbitmq.client.ConnectionFactory;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class ModuleA {
- private static String QUEUE_NAME = "hangzhou2";
-
- public ModuleA(String QUEUENAME){
- QUEUE_NAME=QUEUENAME;
- }
-
-
- public static void main(String[] argv) throws Exception {
- // 鍒涘缓杩炴帴宸ュ巶
- ConnectionFactory factory = new ConnectionFactory();
- factory.setHost("10.153.19.150");
- //factory.setHost("localhost");
-
- try (Connection connection = factory.newConnection();
- //channel 鏄�氳繃 connection 鍒涘缓鐨勪竴涓� AMQP 淇¢亾瀵硅薄
- Channel channel = connection.createChannel()) {
- // `channel.queueDeclare(QUEUE_NAME, false, false, false, null);` 鏄敤鏉ュ0鏄庝竴涓槦鍒楃殑鏂规硶
- //璇ユ柟娉曟湁浜斾釜鍙傛暟锛�
- //1. `QUEUE_NAME`锛氭寚瀹氶槦鍒楃殑鍚嶇О锛岃繖閲屼娇鐢ㄤ簡涔嬪墠澹版槑鐨勫父閲廯"module_queue"`浣滀负闃熷垪鍚嶇О銆�
- //2. `false`锛氭寚瀹氶槦鍒楁槸鍚︿负鎸佷箙鍖栫殑銆傚湪杩欓噷璁剧疆涓篳false`锛岃〃绀轰笉灏嗛槦鍒楁寔涔呭寲鍒扮鐩橈紝涓�鏃abbitMQ鏈嶅姟鍋滄鎴栧穿婧冿紝闃熷垪灏嗕細涓㈠け銆�
- //3. `false`锛氭寚瀹氭槸鍚﹀彧鍏佽褰撳墠杩炴帴澹版槑姝ら槦鍒椼�傚湪杩欓噷璁剧疆涓篳false`锛岃〃绀哄彲鍏佽鍏朵粬杩炴帴涔熷0鏄庡悓鍚嶇殑闃熷垪銆�
- //4. `false`锛氭寚瀹氭槸鍚﹀湪涓嶅啀浣跨敤鏃惰嚜鍔ㄥ垹闄ら槦鍒椼�傚湪杩欓噷璁剧疆涓篳false`锛岃〃绀哄綋娌℃湁娑堣垂鑰呮垨鑰呮墍鏈夋秷璐硅�呮柇寮�杩炴帴鍚庯紝闃熷垪涓嶄細鑷姩鍒犻櫎銆�
- //5. `null`锛氭寚瀹氬叾浠栭槦鍒楀睘鎬х殑鍙傛暟銆傚湪杩欓噷璁剧疆涓篳null`锛岃〃绀烘病鏈夊叾浠栧睘鎬ч渶瑕佽缃��
- //鎵ц`channel.queueDeclare()`鏂规硶鍚庯紝濡傛灉闃熷垪涓嶅瓨鍦紝灏嗕細鍒涘缓涓�涓柊鐨勯槦鍒楋紝濡傛灉闃熷垪宸茬粡瀛樺湪锛屽垯涓嶅仛浠讳綍鎿嶄綔銆�
- Map<String, Object> args = new HashMap<>();
- args.put("x-max-length-bytes",20000);
-// args.put("x-max-length",5000);
- channel.queueDeclare(QUEUE_NAME, false, false, false, args);
-
- String message = "浣�";
-
- for ( int i=1;i< 5000;i++)
- {
- message+="浣�";
-
- }
-
- message+="b";
-
-
-
- // 灏嗘秷鎭彂甯冨埌鎸囧畾鐨勯槦鍒椾腑銆傜┖瀛楃涓�""琛ㄧず榛樿鐨勪氦鎹㈡満锛孮UEUE_NAME鎸囧畾浜嗙洰鏍囬槦鍒楀悕绉帮紝null琛ㄧず娌℃湁鎸囧畾鍏朵粬灞炴�э紝message.getBytes()灏嗘秷鎭唴瀹硅浆鎹负瀛楄妭鏁扮粍杩涜浼犺緭銆�
- channel.basicPublish("", QUEUE_NAME, null, message.getBytes());
- System.out.println(" [x] Sent '" + message + "'");
- }
- }
-}
-
diff --git a/TemperingGlassModule/src/main/java/com/mes/service/ModuleB.java b/TemperingGlassModule/src/main/java/com/mes/service/ModuleB.java
deleted file mode 100644
index 6a1cd78..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/service/ModuleB.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.mes.service;
-
-import com.rabbitmq.client.Channel;
-import com.rabbitmq.client.Connection;
-import com.rabbitmq.client.ConnectionFactory;
-import com.rabbitmq.client.DeliverCallback;
-
-import java.util.HashMap;
-import java.util.Map;
-
-public class ModuleB {
- private final static String QUEUE_NAME = "hangzhou2";
-
- public static void main(String[] argv) throws Exception {
- // 鍒涘缓杩炴帴宸ュ巶
- ConnectionFactory factory = new ConnectionFactory();
- factory.setHost("10.153.19.150");
- //factory.setHost("localhost");
- try (Connection connection = factory.newConnection();
- Channel channel = connection.createChannel()) {
- // 澹版槑闃熷垪
- Map<String, Object> args = new HashMap<>();
- args.put("x-max-length-bytes",20000);
-// args.put("x-max-length",5000);
- channel.queueDeclare(QUEUE_NAME, false, false, false, args);
-
- // 鍒涘缓娑堣垂鑰�
- DeliverCallback deliverCallback = (consumerTag, delivery) -> {
- String receivedMessage = new String(delivery.getBody(), "UTF-8");
- System.out.println(" [x] Received '" + receivedMessage + "'");
- };
- // 寮�濮嬫秷璐规秷鎭�
- channel.basicConsume(QUEUE_NAME, true, deliverCallback, consumerTag -> {
- });
- }
- }
-}
-
diff --git a/TemperingGlassModule/src/main/java/com/mes/service/TemperingOverService.java b/TemperingGlassModule/src/main/java/com/mes/service/TemperingOverService.java
index dc2fc19..1cc1983 100644
--- a/TemperingGlassModule/src/main/java/com/mes/service/TemperingOverService.java
+++ b/TemperingGlassModule/src/main/java/com/mes/service/TemperingOverService.java
@@ -1,28 +1,36 @@
package com.mes.service;
import com.baomidou.dynamic.datasource.annotation.DS;
-import com.mes.entity.GlassInfo;
-import com.mes.entity.userInfo.SysError;
+import com.mes.common.PlcTools.S7control;
+import com.mes.entity.Tempering;
+import com.mes.entity.device.PLCAutoMes;
+import com.mes.entity.device.PlcParameterObject;
import com.mes.mapper.TemperingMapper;
-import com.mes.mapper.userInfo.SysErrorMapper;
-import org.springframework.beans.factory.annotation.Autowired;
+import java.util.List;
import org.springframework.stereotype.Service;
@Service
@DS("glass_info")
public class TemperingOverService {
- private final TemperingMapper temperingMapper;
-
+private final TemperingMapper temperingMapper;
+ //PlcParameterObject plcmes=PLCAutoMes.PlcMesObject;
public TemperingOverService(TemperingMapper temperingMapper) {
this.temperingMapper = temperingMapper;
}
//鎺ユ敹鍑虹倝淇″彿鍜岀倝鍙�
- public GlassInfo SelectOutGlass (String glassid) {
- GlassInfo GlassInfo = temperingMapper.SelectOutGlass(glassid);
- return GlassInfo;
+ public String SelectOutSignal () {
+
+ S7control.getinstance().WriteWord("鍑虹倝淇″彿", (short)1);
+ return "GlassInfo";
}
- //鍙戦�佺‘璁ゆ敹鍒�
+ //鍙戦�佺‘璁ゆ敹鍒颁俊鍙�
+ public void OverSignal () {
+ S7control.getinstance().WriteWord("纭瀛�", (short)1);
+ }
+ //鏄剧ず閽㈠寲鍑虹倝鍚庣殑鐗堝浘淇℃伅
+ public List <Tempering> SelectOutGlass () {
+ return temperingMapper.SelectOutGlass();
+ }
-
-
+
}
diff --git a/TemperingGlassModule/src/main/java/com/mes/service/TemperingService.java b/TemperingGlassModule/src/main/java/com/mes/service/TemperingService.java
index bdfd258..362d417 100644
--- a/TemperingGlassModule/src/main/java/com/mes/service/TemperingService.java
+++ b/TemperingGlassModule/src/main/java/com/mes/service/TemperingService.java
@@ -1,12 +1,10 @@
package com.mes.service;
-
import com.baomidou.dynamic.datasource.annotation.DS;
import com.mes.common.PlcTools.S7control;
import com.mes.entity.GlassInfo;
-import com.mes.entity.userInfo.SysError;
+import com.mes.entity.Tempering;
import com.mes.mapper.TemperingMapper;
-import com.mes.mapper.userInfo.SysErrorMapper;
-import org.springframework.beans.factory.annotation.Autowired;
+import java.util.List;
import org.springframework.stereotype.Service;
@Service
@@ -21,7 +19,7 @@
}
//鎺ユ敹id杩斿洖鍧愭爣鍜屾暟鎹�
public GlassInfo SelectOutGlass (String glassid) {
- GlassInfo GlassInfo = temperingMapper.SelectOutGlass(glassid);
+ GlassInfo GlassInfo = temperingMapper.SelectGlass(glassid);
return GlassInfo;
}
//鍙戦�佸潗鏍囦俊鎭�
@@ -38,15 +36,23 @@
else {
return 0;
}
-
}
//鍙戦�佽繘鐐変俊鍙�
public void SendIntoGlass (short start) {
s7control.WriteWord("DB100.10", start);
}
//鎺ュ彈瀹屾垚瀛楀洖澶嶇‘璁ゅ瓧
-
public void SendIntoGlass () {
s7control.WriteWord("DB100.10", (short)1);
}
+ //鏄剧ず绛夊緟涓殑鐗堝浘
+ public List <Tempering> SelectWaitingGlass () {
+ List<Tempering> WaitingGlass = temperingMapper.SelectWaitingGlass();
+ return WaitingGlass;
+ }
+ //鏄剧ず姝e湪杩涚倝鐨勭増鍥�
+ public List<Tempering> SelectIntoGlass () {
+ List<Tempering> IntoGlass = temperingMapper.SelectInGlass();
+ return IntoGlass;
+ }
}
diff --git a/TemperingGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java b/TemperingGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java
deleted file mode 100644
index 5274aa6..0000000
--- a/TemperingGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.mes.service.impl;
-
-import com.baomidou.dynamic.datasource.annotation.DS;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.mes.entity.OrderTest;
-import com.mes.mapper.OrderTestMapper;
-import com.mes.service.IOrderService;
-import org.springframework.stereotype.Service;
-
-@Service
-@DS("erp_sd")
-public class OrderServiceImpl extends ServiceImpl<OrderTestMapper, OrderTest> implements IOrderService {
-}
diff --git a/UI-Project/package-lock.json b/UI-Project/package-lock.json
index a7386d3..4b5e2c0 100644
--- a/UI-Project/package-lock.json
+++ b/UI-Project/package-lock.json
@@ -26,6 +26,7 @@
"devDependencies": {
"@types/sortablejs": "^1.15.7",
"@vitejs/plugin-vue": "^4.3.4",
+ "http-proxy-middleware": "^3.0.0",
"vite": "^4.4.9"
}
},
@@ -500,6 +501,15 @@
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.2.tgz",
"integrity": "sha512-VeiPZ9MMwXjO32/Xu7+OwflfmeoRwkE/qzndw42gGtgJwZopBnzy2gD//NN1+go1mADzkDcqf/KnFRSjTJ8xJA=="
},
+ "node_modules/@types/http-proxy": {
+ "version": "1.17.14",
+ "resolved": "https://registry.npmmirror.com/@types/http-proxy/-/http-proxy-1.17.14.tgz",
+ "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
"node_modules/@types/lodash": {
"version": "4.14.199",
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.199.tgz",
@@ -511,6 +521,15 @@
"integrity": "sha512-ZTcmhiI3NNU7dEvWLZJkzG6ao49zOIjEgIE0RgV7wbPxU0f2xT3VSAHw2gmst8swH6V0YkLRGp4qPlX/6I90MQ==",
"dependencies": {
"@types/lodash": "*"
+ }
+ },
+ "node_modules/@types/node": {
+ "version": "20.12.5",
+ "resolved": "https://registry.npmmirror.com/@types/node/-/node-20.12.5.tgz",
+ "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
}
},
"node_modules/@types/sortablejs": {
@@ -931,6 +950,23 @@
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz",
"integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ=="
},
+ "node_modules/debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
"node_modules/delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
@@ -1016,6 +1052,12 @@
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
},
+ "node_modules/eventemitter3": {
+ "version": "4.0.7",
+ "resolved": "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-4.0.7.tgz",
+ "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
+ "dev": true
+ },
"node_modules/fill-range": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
@@ -1091,6 +1133,37 @@
"node": ">= 6"
}
},
+ "node_modules/http-proxy": {
+ "version": "1.18.1",
+ "resolved": "https://registry.npmmirror.com/http-proxy/-/http-proxy-1.18.1.tgz",
+ "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==",
+ "dev": true,
+ "dependencies": {
+ "eventemitter3": "^4.0.0",
+ "follow-redirects": "^1.0.0",
+ "requires-port": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/http-proxy-middleware": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-3.0.0.tgz",
+ "integrity": "sha512-36AV1fIaI2cWRzHo+rbcxhe3M3jUDCNzc4D5zRl57sEWRAxdXYtw7FSQKYY6PDKssiAKjLYypbssHk+xs/kMXw==",
+ "dev": true,
+ "dependencies": {
+ "@types/http-proxy": "^1.17.10",
+ "debug": "^4.3.4",
+ "http-proxy": "^1.18.1",
+ "is-glob": "^4.0.1",
+ "is-plain-obj": "^3.0.0",
+ "micromatch": "^4.0.5"
+ },
+ "engines": {
+ "node": "^14.15.0 || ^16.10.0 || >=18.0.0"
+ }
+ },
"node_modules/is-binary-path": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
@@ -1127,6 +1200,15 @@
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
"engines": {
"node": ">=0.12.0"
+ }
+ },
+ "node_modules/is-plain-obj": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz",
+ "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
}
},
"node_modules/local-pkg": {
@@ -1187,6 +1269,19 @@
"resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz",
"integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw=="
},
+ "node_modules/micromatch": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz",
+ "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+ "dev": true,
+ "dependencies": {
+ "braces": "^3.0.2",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
+ }
+ },
"node_modules/mime-db": {
"version": "1.52.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
@@ -1213,6 +1308,12 @@
"engines": {
"node": "*"
}
+ },
+ "node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
},
"node_modules/nanoid": {
"version": "3.3.6",
@@ -1366,6 +1467,12 @@
"node": ">=8.10.0"
}
},
+ "node_modules/requires-port": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz",
+ "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
+ "dev": true
+ },
"node_modules/rollup": {
"version": "3.29.4",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz",
@@ -1429,6 +1536,12 @@
"engines": {
"node": ">=8.0"
}
+ },
+ "node_modules/undici-types": {
+ "version": "5.26.5",
+ "resolved": "https://registry.npmmirror.com/undici-types/-/undici-types-5.26.5.tgz",
+ "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
+ "dev": true
},
"node_modules/unplugin": {
"version": "1.5.0",
@@ -1828,6 +1941,15 @@
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.2.tgz",
"integrity": "sha512-VeiPZ9MMwXjO32/Xu7+OwflfmeoRwkE/qzndw42gGtgJwZopBnzy2gD//NN1+go1mADzkDcqf/KnFRSjTJ8xJA=="
},
+ "@types/http-proxy": {
+ "version": "1.17.14",
+ "resolved": "https://registry.npmmirror.com/@types/http-proxy/-/http-proxy-1.17.14.tgz",
+ "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==",
+ "dev": true,
+ "requires": {
+ "@types/node": "*"
+ }
+ },
"@types/lodash": {
"version": "4.14.199",
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.199.tgz",
@@ -1839,6 +1961,15 @@
"integrity": "sha512-ZTcmhiI3NNU7dEvWLZJkzG6ao49zOIjEgIE0RgV7wbPxU0f2xT3VSAHw2gmst8swH6V0YkLRGp4qPlX/6I90MQ==",
"requires": {
"@types/lodash": "*"
+ }
+ },
+ "@types/node": {
+ "version": "20.12.5",
+ "resolved": "https://registry.npmmirror.com/@types/node/-/node-20.12.5.tgz",
+ "integrity": "sha512-BD+BjQ9LS/D8ST9p5uqBxghlN+S42iuNxjsUGjeZobe/ciXzk2qb1B6IXc6AnRLS+yFJRpN2IPEHMzwspfDJNw==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
}
},
"@types/sortablejs": {
@@ -2143,6 +2274,15 @@
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz",
"integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ=="
},
+ "debug": {
+ "version": "4.3.4",
+ "resolved": "https://registry.npmmirror.com/debug/-/debug-4.3.4.tgz",
+ "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==",
+ "dev": true,
+ "requires": {
+ "ms": "2.1.2"
+ }
+ },
"delayed-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
@@ -2215,6 +2355,12 @@
"resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
"integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w=="
},
+ "eventemitter3": {
+ "version": "4.0.7",
+ "resolved": "https://registry.npmmirror.com/eventemitter3/-/eventemitter3-4.0.7.tgz",
+ "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
+ "dev": true
+ },
"fill-range": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
@@ -2257,6 +2403,31 @@
"is-glob": "^4.0.1"
}
},
+ "http-proxy": {
+ "version": "1.18.1",
+ "resolved": "https://registry.npmmirror.com/http-proxy/-/http-proxy-1.18.1.tgz",
+ "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==",
+ "dev": true,
+ "requires": {
+ "eventemitter3": "^4.0.0",
+ "follow-redirects": "^1.0.0",
+ "requires-port": "^1.0.0"
+ }
+ },
+ "http-proxy-middleware": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/http-proxy-middleware/-/http-proxy-middleware-3.0.0.tgz",
+ "integrity": "sha512-36AV1fIaI2cWRzHo+rbcxhe3M3jUDCNzc4D5zRl57sEWRAxdXYtw7FSQKYY6PDKssiAKjLYypbssHk+xs/kMXw==",
+ "dev": true,
+ "requires": {
+ "@types/http-proxy": "^1.17.10",
+ "debug": "^4.3.4",
+ "http-proxy": "^1.18.1",
+ "is-glob": "^4.0.1",
+ "is-plain-obj": "^3.0.0",
+ "micromatch": "^4.0.5"
+ }
+ },
"is-binary-path": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
@@ -2282,6 +2453,12 @@
"version": "7.0.0",
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
"integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng=="
+ },
+ "is-plain-obj": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-3.0.0.tgz",
+ "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==",
+ "dev": true
},
"local-pkg": {
"version": "0.4.3",
@@ -2325,6 +2502,16 @@
"resolved": "https://registry.npmjs.org/memoize-one/-/memoize-one-6.0.0.tgz",
"integrity": "sha512-rkpe71W0N0c0Xz6QD0eJETuWAJGnJ9afsl1srmwPrI+yBCkge5EycXXbYRyvL29zZVUWQCY7InPRCv3GDXuZNw=="
},
+ "micromatch": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.5.tgz",
+ "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==",
+ "dev": true,
+ "requires": {
+ "braces": "^3.0.2",
+ "picomatch": "^2.3.1"
+ }
+ },
"mime-db": {
"version": "1.52.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
@@ -2342,6 +2529,12 @@
"version": "2.30.1",
"resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz",
"integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how=="
+ },
+ "ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmmirror.com/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
},
"nanoid": {
"version": "3.3.6",
@@ -2419,6 +2612,12 @@
"picomatch": "^2.2.1"
}
},
+ "requires-port": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmmirror.com/requires-port/-/requires-port-1.0.0.tgz",
+ "integrity": "sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==",
+ "dev": true
+ },
"rollup": {
"version": "3.29.4",
"resolved": "https://registry.npmjs.org/rollup/-/rollup-3.29.4.tgz",
@@ -2464,6 +2663,12 @@
"is-number": "^7.0.0"
}
},
+ "undici-types": {
+ "version": "5.26.5",
+ "resolved": "https://registry.npmmirror.com/undici-types/-/undici-types-5.26.5.tgz",
+ "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
+ "dev": true
+ },
"unplugin": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.5.0.tgz",
diff --git a/UI-Project/package.json b/UI-Project/package.json
index 75d8054..f41d6b8 100644
--- a/UI-Project/package.json
+++ b/UI-Project/package.json
@@ -26,6 +26,7 @@
"devDependencies": {
"@types/sortablejs": "^1.15.7",
"@vitejs/plugin-vue": "^4.3.4",
+ "http-proxy-middleware": "^3.0.0",
"vite": "^4.4.9"
}
}
diff --git a/UI-Project/src/layout/MainErpView.vue b/UI-Project/src/layout/MainErpView.vue
index d5c18f5..6c2e09c 100644
--- a/UI-Project/src/layout/MainErpView.vue
+++ b/UI-Project/src/layout/MainErpView.vue
@@ -12,7 +12,7 @@
const router = useRouter()
const userStore = useUserInfoStore()
const user = userStore.user.userName
-store.createWebSocket();
+// store.createWebSocket();
function quit(){
userStore.$patch({
user:null
diff --git a/UI-Project/src/stores/userInfo.js b/UI-Project/src/stores/userInfo.js
index eeaefac..bfae4e8 100644
--- a/UI-Project/src/stores/userInfo.js
+++ b/UI-Project/src/stores/userInfo.js
@@ -1,6 +1,6 @@
import {defineStore} from 'pinia'
import {ref} from "vue";
-import {createWebSocket, global_callback1} from "@/utils/webSocket";
+// import {createWebSocket, global_callback1} from "@/utils/webSocket";
export default defineStore("userInfo",{
state: () =>{
@@ -10,9 +10,9 @@
}
},
actions:{
- createWebSocket(){
- createWebSocket(global_callback1)
- }
+ // createWebSocket(){
+ // createWebSocket(global_callback1)
+ // }
},
persist: true//鏁版嵁鎸佷箙鍖栵紝闃叉鍒锋柊鏁版嵁娑堝け
diff --git a/UI-Project/src/utils/webSocket.js b/UI-Project/src/utils/webSocket.js
deleted file mode 100644
index 51e5ede..0000000
--- a/UI-Project/src/utils/webSocket.js
+++ /dev/null
@@ -1,137 +0,0 @@
-var websock = null;
-var global_callback = null;
-let isConnect = false; //杩炴帴鏍囪瘑 閬垮厤閲嶅杩炴帴
-let rec; //鏂嚎閲嶈繛鍚庯紝寤惰繜5绉掗噸鏂板垱寤篧ebSocket杩炴帴 rec鐢ㄦ潵瀛樺偍寤惰繜璇锋眰鐨勪唬鐮�
-let soketparams ='蹇冭烦鍖呮娴�'
-
-
-var serverPort = "/ws"; // webSocket杩炴帴绔彛
-var wsuri = "ws://localhost:8081/mesModuleTools";
-
-function createWebSocket(callback) {
-
- if (websock == null || typeof websock !== WebSocket) {
- initWebSocket(callback);
- }
-}
-
-function global_callback1(msg) {
- console.log("websocket鐨勫洖璋冨嚱鏁版敹鍒版湇鍔″櫒淇℃伅锛�" + JSON.stringify(msg));
- // console.log("鏀跺埌鏈嶅姟鍣ㄤ俊鎭細" + msg);
-}
-
-function initWebSocket(callback) {
- global_callback = callback;
- // 鍒濆鍖杦ebsocket
- websock = new WebSocket(wsuri);
- websock.onmessage = function (e) {
- websocketonmessage(e);
- };
- websock.onclose = function (e) {
- websocketclose(e);
- };
- websock.onopen = function () {
- websocketOpen();
- };
-
- // 杩炴帴鍙戠敓閿欒鐨勫洖璋冩柟娉�
- websock.onerror = function () {
- console.log("WebSocket杩炴帴鍙戠敓閿欒");
- };
-}
-
-
-
-//蹇冭烦璁剧疆
-var heartCheck = {
- timeout: 20000, //姣忔鏃堕棿鍙戦�佷竴娆″績璺冲寘 杩欓噷璁剧疆涓�20s
- timeoutObj: null, //寤舵椂鍙戦�佹秷鎭璞★紙鍚姩蹇冭烦鏂板缓杩欎釜瀵硅薄锛屾敹鍒版秷鎭悗閲嶇疆瀵硅薄锛�
-
- start: function () {
- this.timeoutObj = setInterval(function () {
- if (isConnect) websock.send(JSON.stringify(soketparams));
- }, this.timeout);
- },
-
- reset: function () {
- clearTimeout(this.timeoutObj);
- this.start();
- }
-};
-
-//瀹氫箟閲嶈繛鍑芥暟
-let reConnect = () => {
- console.log("灏濊瘯閲嶆柊杩炴帴");
- if (isConnect) return; //濡傛灉宸茬粡杩炰笂灏变笉鍦ㄩ噸杩炰簡
- rec && clearTimeout(rec);
- rec = setTimeout(function () { // 寤惰繜5绉掗噸杩� 閬垮厤杩囧娆¤繃棰戠箒璇锋眰閲嶈繛
- initWebSocket();
- }, 5000);
-};
-
-
-
-// 瀹為檯璋冪敤鐨勬柟娉�
-function sendSock(agentData ) {
- if (websock.readyState === websock.OPEN) {
- // 鑻ユ槸ws寮�鍚姸鎬�
- websocketsend(agentData);
- } else if (websock.readyState === websock.CONNECTING) {
- // 鑻ユ槸 姝e湪寮�鍚姸鎬侊紝鍒欑瓑寰�1s鍚庨噸鏂拌皟鐢�
- setTimeout(function () {
- sendSock(agentData);
- }, 1000);
- } else {
- // 鑻ユ湭寮�鍚� 锛屽垯绛夊緟1s鍚庨噸鏂拌皟鐢�
- setTimeout(function () {
- sendSock(agentData);
- }, 1000);
- }
-}
-
-function closeSock() {
- console.log('鍏抽棴浜�')
- websock.close();
-}
-
-// 鏁版嵁鎺ユ敹
-function websocketonmessage(msg) {
- // console.log("鏀跺埌鏁版嵁锛�"+JSON.parse(e.data));
- // console.log("鏀跺埌鏁版嵁锛�"+msg);
-
- // global_callback(JSON.parse(msg.data));
- // 鏀跺埌淇℃伅涓築lob绫诲瀷鏃�
- let result = null;
- if (msg.data instanceof Blob) {
- const reader = new FileReader();
- reader.readAsText(msg.data, "UTF-8");
- reader.onload = (e) => {
- result = JSON.parse(reader.result);
- //console.log("websocket鏀跺埌", result);
- global_callback(result);
- };
- } else {
- result = JSON.parse(msg.data);
- //console.log("websocket鏀跺埌", result);
- global_callback(result);
- }
-}
-
-// 鏁版嵁鍙戦��
-function websocketsend(agentData) {
- // console.log("鍙戦�佹暟鎹細" + agentData);
- websock.send(agentData);
-}
-
-// 鍏抽棴
-function websocketclose(e) {
- console.log("connection closed (" + e.code + ")");
-}
-
-function websocketOpen(e) {
- console.log("杩炴帴鎵撳紑");
- isConnect = true
- //heartCheck.start(); //鍙戦�佸績璺� 鐪嬩釜浜洪」鐩渶姹�
-}
-
-export { sendSock, createWebSocket, closeSock ,global_callback1};
\ No newline at end of file
diff --git a/UI-Project/src/views/HomeView.vue b/UI-Project/src/views/HomeView.vue
index 6285749..cdec3b1 100644
--- a/UI-Project/src/views/HomeView.vue
+++ b/UI-Project/src/views/HomeView.vue
@@ -1,8 +1,6 @@
<script setup>
import { useRouter, useRoute } from 'vue-router'
-import { sendSock, createWebSocket, closeSock } from "@/utils/webSocket"
-
// function global_callback(msg) {
// console.log("websocket鐨勫洖璋冨嚱鏁版敹鍒版湇鍔″櫒淇℃伅锛�" + JSON.stringify(msg));
// // console.log("鏀跺埌鏈嶅姟鍣ㄤ俊鎭細" + msg);
diff --git a/UI-Project/src/views/LoginView.vue b/UI-Project/src/views/LoginView.vue
index d949ca3..c1515b9 100644
--- a/UI-Project/src/views/LoginView.vue
+++ b/UI-Project/src/views/LoginView.vue
@@ -6,7 +6,7 @@
import { Lock,Avatar } from '@element-plus/icons-vue'
import request from '@/utils/request'
import userInfo from '@/stores/userInfo'
-import { sendSock, createWebSocket, closeSock,global_callback1 } from "@/utils/webSocket"
+
const store=userInfo()
let ruleFormRef = ref<FormInstance>()
diff --git a/UI-Project/src/views/Returns/CreateReturns.vue b/UI-Project/src/views/Returns/CreateReturns.vue
deleted file mode 100644
index 8e203da..0000000
--- a/UI-Project/src/views/Returns/CreateReturns.vue
+++ /dev/null
@@ -1,182 +0,0 @@
-<script setup>
-
-import {reactive} from "vue";
-
-
-
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe:true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'OrderList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
- showOverflow:true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },//琛ㄥご鍙傛暟
- columns:[
- {type:'expand',slots: { content:'content' },width: 50,fixed:"left"},
- {type:'checkbox',title: '閫夊垯', width: 80,fixed:"left"},
- {type: 'seq', title: '鑷簭', width: 80 ,fixed:"left"},
- {field: '0',width:120, title: '鍙戣揣鍗曞彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '1',width:120, title: '鎵规',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '2',width:120, title: '鍙��鏁伴噺',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '3',width:120, title: '宸查��鏁伴噺',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '4',width:120, title: '鎬绘暟閲�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '5',width:120, title: '閫�璐ф暟閲�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '6',width:120, title: '妤煎彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '7',width:120, title: '浜у搧缂栧彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '8',width:120, title: '浜у搧鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '9',width:120, title: '鍗曚环',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '10',width:120, title: '搴撳尯',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '11',width:120, title: '閲戦',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '12',width:120, title: '瀹�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '13',width:120, title: '楂�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '14',width:120, title: '褰㈢姸',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '15',width:120, title: '鍗曠墖闈㈢Н',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '16',width:120, title: '鎬婚潰绉�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '17',width:120, title: '缁撶畻鍗曠墖闈㈢Н',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '18',width:120, title: '缁撶畻鎬婚潰绉�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '19',width:120, title: '鍔犲伐瑕佹眰',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '20',width:120, title: '澶囨敞',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '21',width:120, title: '纾ㄨ竟绫诲瀷',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '22',width:120, title: '鍛ㄩ暱',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
-
-
- ],//琛ㄥご鎸夐挳
- toolbarConfig: {
- buttons: [
- {'code': 'add', 'name': '淇濆瓨',status: 'primary',icon: 'vxe-icon-save'}
- ],
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true
- },
- data: [
- ],//table body瀹為檯鏁版嵁
- footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
- return[
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- // if (props.tableProp.footList.includes(column.field)) {
- // return sumNum(data, column.field)
- // }
- return ''
- })
- ]
- }
-
-})
-
-</script>
-
-<template>
- <div class="main-div">
- <div class="order-primary" style="background-color: white" >
- <el-row>
- <el-col :span="2"><el-text>瀹㈡埛缂栫爜:</el-text></el-col>
- <el-col :span="5"><el-text style="font-size: large;color: #181818">131</el-text></el-col>
- <el-col :span="2"><el-text>瀹㈡埛鍚嶇О:</el-text></el-col>
- <el-col :span="5"><el-text></el-text></el-col>
- <el-col :span="2"><el-text>椤圭洰鍚嶇О:</el-text></el-col>
- <el-col :span="5"><el-text></el-text></el-col>
- </el-row>
- <el-row>
- <el-col :span="2"><el-text>閫�璐ф柟寮�:</el-text></el-col>
- <el-col :span="5">
- <el-select clearable >
- <el-option/>
- </el-select>
- </el-col>
- <el-col :span="2"><el-text>閫�璐ф棩鏈�:</el-text></el-col>
- <el-col :span="5">
- <el-date-picker
- type="week"
- format="[Week] ww"
- placeholder="閫夋嫨鏃ユ湡"/>
- </el-col>
- <el-col :span="2"><el-text>澶囨敞:</el-text></el-col>
- <el-col :span="5"><el-text></el-text></el-col>
- </el-row>
- <el-row>
- <el-col :span="2"><el-text>涓氬姟鍛�:</el-text></el-col>
- <el-col :span="5"><el-text style="font-size: large;color: #181818"></el-text></el-col>
- <el-col :span="2"><el-text>鍙戣揣鍛�:</el-text></el-col>
- <el-col :span="5"><el-text style="font-size: large;color: #181818"></el-text></el-col>
- </el-row>
- </div>
- <div class="order-detail">
- <vxe-grid
- max-height="97%"
- class="mytable-scrollbar"
- ref="xGrid"
- v-bind="gridOptions"
-
- >
- <template #num1_filter="{ column, $panel }">
- <div>
- <div v-for="(option, index) in column.filters" :key="index">
- <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
- </div>
- </div>
- </template>
- <template #content="{ row}">
- <ul class="expand-wrapper">
- <li v-for="(item,key,index) in row">
- <span style="font-weight: bold">{{key+': '}}</span>
- <span>{{ item }}</span>
- </li>
- </ul>
- </template>
-
- </vxe-grid>
- </div>
- </div>
-
-</template>
-
-<style scoped>
-.main-div {
- width: 100%;
- height: 100%;
- text-align: center;
-}
-.el-col{
- border: #181818 1px solid;
-}
-:deep(.el-input__wrapper) {
- box-shadow: 0 0 0 0 var(--el-input-border-color, var(--el-border-color)) inset;
- cursor: default;
- border: none !important;
- background-color: transparent;
-}
-.order-primary{
- width: 100%;
-}
-.order-detail{
- width: 100%;
- height: 70%;
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/Returns/ReturnsReport.vue b/UI-Project/src/views/Returns/ReturnsReport.vue
deleted file mode 100644
index 883648d..0000000
--- a/UI-Project/src/views/Returns/ReturnsReport.vue
+++ /dev/null
@@ -1,180 +0,0 @@
-<script setup>
-
-import {Folder, Search} from "@element-plus/icons-vue";
-import {reactive} from "vue";
-
-let titleList = [
- '搴忓彿',
- '閫�璐у崟鍙�',
- '鍙戣揣鍗曞彿',
- '璁㈠崟鍗曞彿',
- '椤圭洰鍚嶇О',
- '瀹㈡埛鍚嶇О',
- '涓氬姟鍛�',
- '閫佽揣鍦板潃',
- '鍙戣揣鍛�',
- '妤煎彿',
- '浜у搧缂栧彿',
- '浜у搧鍚嶇О',
- '閫�璐ф暟閲�',
- '鍛ㄩ暱',
- '瀹為檯闈㈢Н',
- '鍙戣揣闈㈢Н',
- '鍗曚环',
- '鍙戣揣閲戦',
- '瀹�',
- '楂�',
- '褰㈢姸',
- '纾ㄨ竟绫诲瀷',
- '澶囨敞',
- '鍔犲伐瑕佹眰',
- '寤虹珛鏃堕棿'
-
-
-
-
-]
-
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe:true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'OrderList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
- showOverflow:true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },//琛ㄥご鍙傛暟
- columns:[
-
- {type:'expand',slots: { content:'content' },width: 50,fixed:"left"},
- {type: 'seq', title: '鑷簭', width: 80 ,fixed:"left"},
- {field: '0',width:120, title: '閫�璐у崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '1',width:120, title: '鍙戣揣鍗曞彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '2',width:120, title: '璁㈠崟鍗曞彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '3',width:120, title: '椤圭洰鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '4',width:120, title: '瀹㈡埛鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '5',width:120, title: '涓氬姟鍛�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '6',width:120, title: '閫佽揣鍦板潃',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '7',width:120, title: '鍙戣揣鍛�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '8',width:120, title: '妤煎彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '9',width:120, title: '浜у搧缂栧彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '10',width:120, title: '浜у搧鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '11',width:120, title: '閫�璐ф暟閲�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '12',width:120, title: '鍛ㄩ暱',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '13',width:120, title: '瀹為檯闈㈢Н',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '14',width:120, title: '閫�璐ч潰绉�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '15',width:120, title: '鍗曚环',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '16',width:120, title: '閫�璐ч噾棰�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '17',width:120, title: '瀹�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '18',width:120, title: '楂�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '19',width:120, title: '褰㈢姸',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '20',width:120, title: '纾ㄨ竟绫诲瀷',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '21',width:120, title: '澶囨敞',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '22',width:120, title: '鍔犲伐瑕佹眰',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '22',width:120, title: '寤虹珛鏃堕棿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}
-
-
- ],//琛ㄥご鎸夐挳
- toolbarConfig: {
- buttons: [
- ],
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true
- },
- data: [
- ],//table body瀹為檯鏁版嵁
- footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
- return[
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- // if (props.tableProp.footList.includes(column.field)) {
- // return sumNum(data, column.field)
- // }
- return ''
- })
- ]
- }
-
-})
-
-</script>
-
-<template>
- <div class="main-div">
- <el-date-picker
- v-model="value1"
- type="daterange"
- start-placeholder="寮�濮嬫椂闂�"
- end-placeholder="缁撴潫鏃堕棿"
- />
- <el-button style="margin-top: -5px" id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>
- <el-button style="margin-top: -5px" id="searchButton" type="primary" :icon="Folder">瀵煎嚭</el-button>
- <div class="order-detail">
- <vxe-grid
- max-height="97%"
- class="mytable-scrollbar"
- ref="xGrid"
- v-bind="gridOptions"
-
- >
- <template #num1_filter="{ column, $panel }">
- <div>
- <div v-for="(option, index) in column.filters" :key="index">
- <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
- </div>
- </div>
- </template>
- <template #content="{ row}">
- <ul class="expand-wrapper">
- <li v-for="(item,key,index) in row">
- <span style="font-weight: bold">{{key+': '}}</span>
- <span>{{ item }}</span>
- </li>
- </ul>
- </template>
-
- </vxe-grid>
- </div>
- </div>
-</template>
-
-<style scoped>
-.main-div {
- width: 100%;
- height: 100%;
-}
-.el-col{
- border: #181818 1px solid;
-}
-.order-primary{
- width: 100%;
-}
-.order-detail{
- width: 100%;
- height: 80%;
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/Returns/SelectDeliveryList.vue b/UI-Project/src/views/Returns/SelectDeliveryList.vue
deleted file mode 100644
index f046fcd..0000000
--- a/UI-Project/src/views/Returns/SelectDeliveryList.vue
+++ /dev/null
@@ -1,205 +0,0 @@
-<script setup>
-import {Search} from "@element-plus/icons-vue"
-import {useRouter} from "vue-router"
-import {reactive, ref} from "vue";
-const router = useRouter()
-
-const getTableRow = (row,type) =>{
- switch (type) {
- case 'edit' :{
- //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
- router.push({path: '/main/returns/createReturns', query: { deliveryID: 'JG24010101' }})
- break
- }
- case 'delete':{
- alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
- break
- }
- }
-}
-const xGrid = ref()
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe:true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'OrderList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
- showOverflow:true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },//琛ㄥご鍙傛暟
- columns:[
-
- {type:'expand',slots: { content:'content' },width: 50,fixed:"left"},
- {title: '鎿嶄綔',slots: { default: 'button_slot' }, width: 80,fixed:"left"},
- {type: 'seq', title: '鑷簭', width: 80 ,fixed:"left"},
-
- {title: '瀹℃牳', width: 40, slots: { default: 'state' }},
- {title: '鍑哄簱', width: 40, slots: { default: 'state' }},
-
- {field: '1',width:120, title: '閿�鍞崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '2',width:120, title: '瀹㈡埛缂栧彿',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '3',width:120, title: '瀹㈡埛鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '4',width:120, title: '鎬绘暟閲�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '5',width:120, title: '鍙敤搴撳瓨',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '6',width:120, title: '椤圭洰鍚嶇О',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '7',width:120, title: '鎵规',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '8',width:120, title: '鎬婚噾棰�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '9',width:120, title: '缁撶畻鎬婚潰绉�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '10',width:120, title: '鎶ヨ〃鏃ユ湡',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '11',width:120, title: '鍖呰鏂瑰紡',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '12',width:120, title: '璁㈠崟绫诲瀷',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '13',width:120, title: '璁㈠崟绫诲瀷',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- {field: '14',width:120, title: '璁㈠崟绫诲瀷',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true}
-
-
- ],//琛ㄥご鎸夐挳
- toolbarConfig: {
- buttons: [
- ],
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true
- },
- data: [
- {
- '0': '1',
- '1': 'NG23110102',
- '2': '11',
- '3': '涓缓',
- '4': '534',
- '5': '116',
- '6': '榛勭煶鏈夎建鐢佃溅',
- '7': '20鎵�',
- '8': '111100.02',
- '9': '1008.38',
- '10': '2023-10-30',
- '11': '鍙夎溅鏈ㄧ',
- '12': '鏅�氳鍗�',
- '13': '',
- '14': '鐜嬮緳'
- },
- {
- '0': '1',
- '1': 'NG23110101',
- '2': '11',
- '3': '涓缓',
- '4': '534',
- '5': '116',
- '6': '榛勭煶鏈夎建鐢佃溅',
- '7': '20鎵�',
- '8': '111100.02',
- '9': '1008.38',
- '10': '2023-10-30',
- '11': '鍙夎溅鏈ㄧ',
- '12': '鏅�氳鍗�',
- '13': '',
- '14': '鐜嬮緳'
- }
- ],//table body瀹為檯鏁版嵁
- footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
- return[
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- // if (props.tableProp.footList.includes(column.field)) {
- // return sumNum(data, column.field)
- // }
- return ''
- })
- ]
- }
-
-})
-const gridEvents = {
- toolbarButtonClick ({ code }) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- case 'add': {
- router.push({path: '/main/delivery/createDelivery', params: { orderID: 'NG24010101' }})
- break
- }
- }
- }
- }
-}
-
-
-
-
-</script>
-
-<template>
- <div style="width: 100%;height: 100%">
- <el-date-picker
- v-model="value1"
- type="daterange"
- start-placeholder="寮�濮嬫椂闂�"
- end-placeholder="缁撴潫鏃堕棿"
- />
- <el-button style="margin-top: -5px" id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button>
- <vxe-grid
- max-height="97%"
- class="mytable-scrollbar"
- ref="xGrid"
- v-bind="gridOptions"
- v-on="gridEvents"
-
- >
- <template #state="{ row}">
- <el-checkbox checked/>
- </template>
-
- <!-- 涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
- <template #content="{ row }">
- <ul class="expand-wrapper">
- <li v-for="(item,index) in gridOptions.columns" v-show="item.field!=undefined ">
- <span style="font-weight: bold">{{item.title+': '}}</span>
- <span>{{ row[item.field] }}</span>
- </li>
- </ul>
- </template>
-
- <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
- <template #button_slot="{ row }">
- <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">閫�璐�</el-button>
- </template>
-
- <template #num1_filter="{ column, $panel }">
- <div>
- <div v-for="(option, index) in column.filters" :key="index">
- <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
- </div>
- </div>
- </template>
- </vxe-grid>
-
-
- </div>
-</template>
-
-<style scoped>
-
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/Returns/SelectReturns.vue b/UI-Project/src/views/Returns/SelectReturns.vue
deleted file mode 100644
index e3fce3b..0000000
--- a/UI-Project/src/views/Returns/SelectReturns.vue
+++ /dev/null
@@ -1,273 +0,0 @@
-<script setup>
-import {Search} from "@element-plus/icons-vue";
-import {reactive} from "vue";
-import {useRouter} from "vue-router"
-const router = useRouter()
-
-import { ref } from 'vue'
-import { ElMessage, ElMessageBox } from 'element-plus'
-const dialogFormVisible = ref(false)
-const dialogFormVisiblea = ref(false)
-
-const tableData = [
- {
- id: '1',
- long: '1005',
- wide: '183.6',
- thick: '1991'
- },
- {
- id: '2',
- long: '105',
- wide: '183',
- thick: '191'
- }
-]
-const tableDataa = [
- {
- long: '1005',
- wide: '183.6',
- thick: '1991',
- station: '1'
- },
- {
- long: '105',
- wide: '183',
- thick: '191',
- station: '2'
- }
-]
-const open = () => {
- ElMessageBox.confirm(
- '鏄惁鍒犻櫎璇ユ潯淇℃伅?',
- '鎻愮ず',
- {
- confirmButtonText: '鏄�',
- cancelButtonText: '鍙栨秷',
- type: 'warning',
- }
- )
- .then(() => {
- ElMessage({
- type: 'success',
- message: '鍒犻櫎鎴愬姛锛�',
- })
- })
- .catch(() => {
- ElMessage({
- type: 'info',
- message: '鍒犻櫎澶辫触',
- })
- })
-}
-const getTableRow = (row,type) =>{
- switch (type) {
- case 'edit' :{
- //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
- router.push({path: '/main/returns/createReturns', query: { ReturnID: 'TH24010101' }})
- break
- }
- case 'delete':{
- alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
- break
- }
- }
-}
-
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe:true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'OrderList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
- showOverflow:true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },//琛ㄥご鍙傛暟
- // columns:[
- // {type:'expand',slots: { content:'content' },width: 50},
- // // {title: '鎿嶄綔', width: 110, slots: { default: 'button_slot' }},
- // {type: 'seq', title: '鑷簭', width: 80 },
-
- // // {title: '瀹℃牳', width: 40, slots: { default: 'state' }},
- // {title: 'id', width: 140, slots: { default: 'state' }},
- // {title: '闀�', width: 160, slots: { default: 'state' }},
- // {title: '瀹�', width: 160, slots: { default: 'state' }},
- // {title: '鍘�', width: 160, slots: { default: 'state' }},
-
- // // {field: '3',width:120, title: '閫�璐у崟鍙�',filters:[{ data: '' }],slots: { filter: 'num1_filter' }, sortable: true},
- // ],
- //琛ㄥご鎸夐挳
- // toolbarConfig: {
- // buttons: [],
- // import: false,
- // export: true,
- // print: true,
- // zoom: true,
- // custom: true
- // },
- data: [
- {
- 'id': '1',
- 'long': '5',
- 'wide': '1005',
- 'thick': '183.6',
- }
- ],
- //table body瀹為檯鏁版嵁
- // footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
- // return[
- // columns.map((column, columnIndex) => {
- // if (columnIndex === 0) {
- // return '鍚堣:'
- // }
- // // if (props.tableProp.footList.includes(column.field)) {
- // // return sumNum(data, column.field)
- // // }
- // return ''
- // })
- // ]
- // }
-})
-</script>
-
-<template>
- <div>
- <!-- <el-date-picker
- v-model="value1"
- type="daterange"
- start-placeholder="寮�濮嬫椂闂�"
- end-placeholder="缁撴潫鏃堕棿"
- /> -->
- <!-- <el-button style="margin-top: -5px" id="searchButton" type="primary" :icon="Search">鏌ヨ</el-button> -->
- <el-button style="margin-top: -5px;margin-left: 5px;" id="searchButton" type="primary" @click="dialogFormVisible = true">涓婄墖杈撳叆</el-button>
- <el-button style="margin-top: -5px" id="searchButton" type="primary" @click="dialogFormVisiblea = true">鍘熺墖淇℃伅</el-button>
- <!-- <el-button style="margin-top: -5px" id="searchButton" type="danger">浜哄伐鎷胯蛋</el-button> -->
-
- <el-card style="flex: 1;margin-left: 10px;margin-top: 20px;" v-loading="loading">
- <div style="width: 98%; height: calc(100% - 35px); overflow-y: auto">
- <el-table height="100%" ref="table" :data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
- <el-table-column prop="id" align="center" label="id" min-width="80" />
- <el-table-column prop="long" align="center" label="闀�" min-width="120" />
- <el-table-column prop="wide" align="center" label="瀹�" min-width="120" />
- <el-table-column prop="thick" align="center" label="鍘�" min-width="120" />
- <el-table-column fixed="right" label="鎿嶄綔" align="center" width="200">
- <template #default>
- <el-button size="mini" type="text" plain @click="open">浜哄伐鎷�111璧�</el-button>
- </template>
- </el-table-column>
- </el-table>
- </div>
- </el-card>
- </div>
-
-
- <el-dialog v-model="dialogFormVisible" top="21vh" width="40%" title="涓婄墖杈撳叆" >
- <div style="margin-left: -50px;margin-top: 10px;margin-bottom: 10px;">
- <el-form size="mini" label-width="150px">
- <el-form >
- <el-row style="margin-top: -15px;margin-bottom: -2px;">
- <el-col :span="6">
- <div id="dt" style="font-size: 15px;">
- <div>
- <el-form-item label="宸ヤ綅锛�" :required="true" style="width: 14vw">
- <el-input autocomplete="off" />
- </el-form-item></div></div>
- </el-col>
- <el-col :span="9">
- <div id="dta" style="font-size: 15px;">
- <div>
- <el-form-item label="闀匡細" :required="true" style="width: 14vw">
- <el-input autocomplete="off" />
- </el-form-item></div>
- </div>
- </el-col>
- </el-row>
- <el-row style="margin-top: 10px;">
- <el-col :span="6">
- <div id="dt" style="font-size: 15px;">
- <div>
- <el-form-item label="瀹斤細" :required="true" style="width: 13.2vw;margin-left: 14px;">
- <el-input autocomplete="off" />
- </el-form-item></div></div>
- </el-col>
- <el-col :span="9">
- <div id="dta" style="font-size: 15px;">
- <div>
- <el-form-item label="鍘氾細" :required="true" style="width: 14vw">
- <el-input autocomplete="off" />
- </el-form-item></div></div>
- </el-col>
- </el-row>
- </el-form>
- </el-form>
- </div>
- <template #footer>
- <div id="dialog-footer">
- <el-button type="primary" @click="dialogFormVisible = false">
- 纭
- </el-button>
- <el-button @click="dialogFormVisible = false">鍙栨秷</el-button>
- </div>
- </template>
- </el-dialog>
- <el-dialog v-model="dialogFormVisiblea" top="21vh" width="40%" title="鍘熺墖淇℃伅">
- <el-table height="100%" ref="table" :data="tableDataa" @row-click="handle">
- <el-table-column
- prop="long"
- align="center"
- label="闀�"
- min-width="120"
- />
- <el-table-column
- prop="wide"
- align="center"
- label="瀹�"
- min-width="120"
- />
- <el-table-column
- prop="thick"
- align="center"
- label="鍘�"
- min-width="120"
- />
- <el-table-column
- prop="station"
- align="center"
- label="宸ヤ綅"
- min-width="120"
- />
- </el-table>
- <div style="text-align: center; height: 22px; margin-top: 30px;">
- <el-button @click="dialogFormVisiblea = false">鍏抽棴</el-button>
- </div>
- </el-dialog>
-</template>
-
-<style scoped>
-
-#dt { display:block; float:left;line-height: 20px;margin-left: 100px;}
-#dta { display:block; float:left;line-height: 20px;margin-left: 80%;}
-#dialog-footer{
- text-align: center;
- margin-top: -15px;
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/StockBasicData/Create.vue b/UI-Project/src/views/StockBasicData/Create.vue
deleted file mode 100644
index 0fc1826..0000000
--- a/UI-Project/src/views/StockBasicData/Create.vue
+++ /dev/null
@@ -1,724 +0,0 @@
-<template>
- <el-header height="auto">
- <el-descriptions
- class="margin-top"
- title=""
- :column="4"
- :size="'default'"
- border
- :rules="rules"
- :model="ruleForm"
- >
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy" prop="name">
- <template #label>
- <span style="color:red">*</span>
- 閲囪喘绫诲瀷
- </template>
-<!-- <el-select v-model="form.buyType" class="m-2" placeholder="閫夋嫨閲囪喘绫诲瀷" clearable>-->
- <el-select v-model="ruleForm.name" class="m-2" placeholder="閫夋嫨閲囪喘绫诲瀷" clearable>
- <el-option
- v-for="item in CGTypeOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- />
- </el-select>
- </el-descriptions-item >
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- <span style="color:red">*</span>
- 閲囪喘缁勭粐
- </template>
- <el-input v-model="ruleForm.name" placeholder="閲囪喘缁勭粐" clearable prop="name"></el-input>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- <span style="color:red">*</span>
- 渚涘簲鍟�
- </template>
- <el-cascader
- placeholder="閫夋嫨渚涘簲鍟�"
- :options="buyerOptions"
- filterable
- clearable
- empty-text="empty-text"
- :v-model="form.supplier"
- >
- </el-cascader>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- <span style="color:red">*</span>
- 閲囪喘閮ㄩ棬
- </template>
- <el-select v-model="cgBuMen" class="m-2" placeholder="閫夋嫨閲囪喘閮ㄩ棬" clearable>
- <el-option
- v-for="item in CGBuMenOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- />
- </el-select>
- </el-descriptions-item>
-
-
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- <span style="color:red">*</span>
- 閲囪喘鍛�
- </template>
- <el-select v-model="form.buyer" class="m-2" placeholder="閫夋嫨閲囪喘鍛�" clearable>
- <el-option
- v-for="item in BuyerOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value"
- />
- </el-select>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy"
- >
- <template #label>
- <span style="color:red">*</span>
- 鍒惰〃鏃ユ湡
- </template>
- <el-date-picker
- v-model="form.date"
- type="date"
- placeholder="閫夋嫨鍒惰〃鏃ユ湡"
-
- />
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy"></el-descriptions-item>
- </el-descriptions>
-
- </el-header>
-
- <el-main style="padding-top: 5px;height:100%">
- <!-- <el-button class="mt-4" style="width: 10%" @click="onAddItem"
- >娣诲姞
- </el-button>-->
-
- <vxe-grid
-
- max-height="500"
- @filter-change="filterChanged"
- class="mytable-scrollbar"
- ref="xGrid"
- v-bind="gridOptions"
- @="gridEvents"
- >
-
- <!-- @toolbar-button-click="toolbarButtonClickEvent"-->
- <!-- 涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
- <template #content="{ row}">
- <ul class="expand-wrapper">
- <li v-for="(item,key,index) in row">
- <span style="font-weight: bold">{{ key + ': ' }}</span>
- <span>{{ item }}</span>
- </li>
- </ul>
- </template>
-
- <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
- <template #button_slot="{ row }">
- <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
- <!-- <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>-->
- <!-- <el-button @click="cellClickEvent" link type="primary" size="small">璇︽儏</el-button>-->
- </template>
-
- <template #num1_filter="{ column, $panel }">
- <div>
- <div v-for="(option, index) in column.filters" :key="index">
- <el-input v-model="option.data" @input="changeFilterEvent($event, option, $panel)" />
- </div>
- </div>
- </template>
- </vxe-grid>
-
- </el-main>
-
-</template>
-
-<script lang="ts" setup>
-import {ref, reactive} from 'vue'
-import {useRouter} from "vue-router";
-import {ElMessage, ElMessageBox} from "element-plus";
-
-let router = useRouter()
-
-//缁勪欢鎺ユ敹鍙傛暟
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe: true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true, height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'CustomerList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY: {enabled: true},//寮�鍚櫄鎷熸粴鍔�
- showOverflow: true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },
- columns: [
- //{title: '鎿嶄綔', width: '8%', slots: {default: 'button_slot'}, fixed: "left"},
- {type: 'seq', fixed: "left", title: ' ', width: 50},
- {type: 'checkbox', fixed: "left", title: '', width: 50},
- //{type: 'expand', title: '璇︽儏', fixed: "left", slots: {content: 'content'}, width: 50},
- {
- field: 'cgdh',
- width: '10%',
- title: '鐗╂枡缂栫爜',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'cgzt',
- width: '10%',
- title: '鐗╂枡鍚嶇О',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'gys',
- width: '10%',
- title: '浜у湴',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'w',
- width: '8%',
- title: '瀹藉害', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'g',
- width: '8%',
- title: '楂樺害', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true,
- type: 'number'
- },
- {
- field: 'h',
- width: '8%',
- title: '鍘氬害', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'xh',
- width: '8%',
- title: '鍨嬪彿',/*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'dw',
- width: '8%',
- title: '鍗曚綅', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'sl',
- width: '8%',
- title: '鏁伴噺', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'sl',
- width: '8%',
- title: '鎿嶄綔鏁伴噺', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}}
- },
- {
- field: 'sl',
- width: '12%',
- title: '绠辨暟', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'je',
- width: '8%',
- title: '鍗曠墖闈㈢Н', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'je',
- width: '12%',
- title: '鍗曚环', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: '6',
- width: '8%',
- title: '鎬绘暟閲�', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'sl',
- width: '8%',
- title: '鎬婚潰绉�', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'yl',
- width: '10%',
- title: '鎬婚噾棰�',/*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- },
- {
- field: 'yl',
- width: '10%',
- title: '澶囨敞', /*filters: [{data: ''}], slots: {filter: 'num1_filter'},*/
- editRender: {name: 'input', attrs: {placeholder: ''}},
- sortable: true
- }
- ],//琛ㄥご鍙傛暟
- toolbarConfig: {
- buttons: [
- {type: 'text'},
- {
- 'name': '鏂板',
-
- 'code': 'Add',
- },
- {
- 'name': '绉婚櫎',
-
- 'code': 'Remove'
- },
- {
- 'name': '淇濆瓨璁㈠崟',
- status: 'primary',
- 'code': 'Save'
- }, {
- 'name': '鍏ュ簱',
- status: 'primary',
- 'code': 'Storage'
- }/*,
- {
- 'name': '閫�璐�',
- status: 'primary',
- 'code': 'Return'
- },
- {
- 'name': '杩斿洖鏌ヨ',
-
- 'code':'GoSelect'
- }*/],
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true,
- tools: [],
-
- },//琛ㄥご鎸夐挳
- /*data: [{},{},{},{},{},{}],//table body瀹為檯鏁版嵁*/
- data: [{}, {}, {}],//table body瀹為檯鏁版嵁
- mergeFooterItems: [
- {row: 0, col: 0, rowspan: 1, colspan: 3}
- ],//鍚堝苟鑴�
- footerMethod({columns, data}) {//椤佃剼鍑芥暟
- return [
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- /* if (props.tableProp.footList.includes(column.field)) {
- return sumNum(data, column.field)
- }*/
- return ''
- })
- ]
- },
-
-})
-
-const xGrid = ref()
-const gridEvents = {
- toolbarButtonClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
-//鏂板
- case 'Add': {
- const record = {
- checked: false
- }
- $grid.insertAt(record, 0).then(({row}) => {
- $grid.setEditRow(row)
- })
- break
- }
-//绉婚櫎
- case 'Remove': {
- if ($grid.getCheckboxRecords().length === 0) {
- MessageShow('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�','warning');
- return
- } else {
-
- MessageConfirmShow('绉婚櫎','鏄惁纭绉婚櫎閫変腑鐨�' + $grid.getCheckboxRecords().length + '鏉℃暟鎹紒');
-
- }
- break
- }
-//淇濆瓨
- case 'Save': {
- /*if (form.buyItem === null || form.buyItem === '') {
- MessageShow('閲囪喘缁勭粐涓嶅彲涓虹┖','warning');
- return;
- }
-*/
- //閫変腑鏁版嵁
- /* const $table = this.$refs.xTable
- const selectRecords = $table.getCheckboxRecords()*/
-//+$grid.rows.number
- if ($grid.getCheckboxRecords().length === 0) {
- MessageShow('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�','warning');
- return
- } else {
-
-
- MessageConfirmShow('淇濆瓨璁㈠崟','鏄惁纭畾淇濆瓨褰撳墠璁㈠崟淇℃伅');
- }
- break
- }
-//鍏ュ簱
- case 'Storage': {
- if ($grid.getCheckboxRecords().length === 0) {
- MessageShow('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�','warning');
- return
- } else {
- MessageConfirmShow('鍏ュ簱','鎮ㄩ�夋嫨浜�' + $grid.getCheckboxRecords().length + '鏉℃暟鎹紒,鏄惁纭鍏ュ簱锛�')
- }
- break
- }
-//閫�搴�
- case 'Return': {
- if ($grid.getCheckboxRecords().length === 0) {
- MessageShow('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�','warning');
- return
- } else {
-
-
- }
- break
- }
-
- }
- }
- },
- toolbarToolClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- case 'myPrint': {
- $grid.print()
- break
- }
- }
- }
- },
-}
-
-
-import type { FormInstance, FormRules } from 'element-plus'
-
-
-
-
-interface RuleForm {
- name: string
- region: string
- count: string
- date1: string
- date2: string
- delivery: boolean
- type: string[]
- resource: string
- desc: string
-}
-const ruleFormRef = ref<FormInstance>()
-const ruleForm = reactive<RuleForm>({
- name: '',
- region: '',
- count: '',
- date1: '',
- date2: '',
- delivery: false,
- type: [],
- resource: '',
- desc: '',
-})
-const rules = reactive<FormRules<RuleForm>>({
- name: [
- { required: true, message: 'Please input Activity name', trigger: 'blur' },
- { min: 3, max: 5, message: 'Length should be 3 to 5', trigger: 'blur' },
- ],
- region: [
- {
- required: true,
- message: 'Please select Activity zone',
- trigger: 'change',
- },
- ],
- count: [
- {
- required: true,
- message: 'Please select Activity count',
- trigger: 'change',
- },
- ],
- date1: [
- {
- type: 'date',
- required: true,
- message: 'Please pick a date',
- trigger: 'change',
- },
- ],
- date2: [
- {
- type: 'date',
- required: true,
- message: 'Please pick a time',
- trigger: 'change',
- },
- ],
- type: [
- {
- type: 'array',
- required: true,
- message: 'Please select at least one activity type',
- trigger: 'change',
- },
- ],
- resource: [
- {
- required: true,
- message: 'Please select activity resource',
- trigger: 'change',
- },
- ],
- desc: [
- { required: true, message: 'Please input activity form', trigger: 'blur' },
- ],
-})
-
-
-const form = reactive({
- name: '',
- region: '',
- date: '',
- delivery: false,
- type: [],
- resource: '',
- desc: '',
- supplier: '',
- buyer: '',
- buyItem: '',
- buyType: ''
-
-})
-
-//渚涘簲鍟�
-const buyerOptions = [
- {value: '0', label: '渚涘簲鍟�1'},
- {value: '1', label: '渚涘簲鍟�2'},
- {value: '2', label: '渚涘簲鍟�3'},
- {value: '3', label: '渚涘簲鍟�4'},
- {value: '4', label: '渚涘簲鍟�5'},
- {value: '5', label: '渚涘簲鍟�6'},
-]
-
-
-const value = ref('')
-const cgBuMen = ref('')
-
-//閲囪喘绫诲瀷
-const CGTypeOptions = [
- {
- value: '1',
- label: '鏍囧噯绫诲瀷',
- },
- {
- value: '2',
- label: '闈炴爣鍑嗙被鍨�',
- },
- {
- value: '3',
- label: '杩藉姞閲囪喘',
- },
-
-]
-
-//閲囪喘閮ㄩ棬
-const CGBuMenOptions = [
- {
- value: '0',
- label: '閲囪喘鍗庡寳閮�',
- },
- {
- value: '1',
- label: '閲囪喘涓滃崡閮�',
- },
- {
- value: '2',
- label: '閲囪喘瑗垮寳閮�',
- },
- {
- value: '3',
- label: '閲囪喘涓師閮�',
- },
- {
- value: '4',
- label: '閲囪喘澶栧浗閮�',
- },
-
-]
-
-//閲囪喘浜�
-const BuyerOptions = [
- {
- value: '0',
- label: '閲囪喘鍛�1',
- },
- {
- value: '1',
- label: '閲囪喘鍛�2',
- },
- {
- value: '2',
- label: '閲囪喘鍛�3',
- },
- {
- value: '3',
- label: '閲囪喘鍛�4',
- },
- {
- value: '4',
- label: '閲囪喘鍛�5',
- },
-
-]
-
-//椤甸潰閫昏緫浠g爜鎵ц
-function logicExecute(type){
- const $grid = xGrid.value
- switch (type) {
- case '鍏ュ簱':
- //鍏ュ簱閫昏緫浠g爜TODO
- MessageShow('鍏ュ簱鎴愬姛锛�', 'success');
- break;
- case '閫�璐�':
- //閫�璐ч�昏緫浠g爜TODO
- MessageShow('閫�璐ф垚鍔燂紒', 'success');
- break;
- case '淇濆瓨璁㈠崟':
- //淇濆瓨璁㈠崟閫昏緫浠g爜TODO
- const submitForm = async (formEl: FormInstance | undefined) => {
- if (!formEl) return
- await formEl.validate((valid, fields) => {
- if (valid) {
- console.log('submit!')
- } else {
- console.log('error submit!', fields)
- }
- })
- }
- MessageShow('璁㈠崟淇濆瓨鎴愬姛锛�', 'success');
- break;
- case '绉婚櫎':
- $grid.removeCheckboxRow();
- break;
- default:
- MessageShow('鏈煡鎿嶄綔锛�', 'error');
- break;
- }
- return true;
-
-}
-
-//鎻愮ず淇℃伅
-const MessageShow = (content, type ) => {
-
- ElMessage({
- message: content,
- type: type,
- showClose: true,
- })
-}
-
-//鎿嶄綔纭绫讳俊鎭細鎿嶄綔绫诲瀷锛屾彁绀哄唴瀹癸紝鎻愮ず鏍囧ご锛屾彁绀虹被鍨�
-const MessageConfirmShow = (czType, content, title='鎿嶄綔纭鎻愮ず', type='warning') => {
-
- ElMessageBox.confirm(
- content,
- title,
- {
- cancelButtonText: '鍙栨秷',
- confirmButtonText: '纭畾',
- type: type,
- center: true,
- }
- )
- //鐐瑰嚮浜嗙‘瀹�
- .then(() => {
- return logicExecute(czType);
- })
- //鐐瑰嚮浜嗗彇娑�
- .catch(() => {
- return false;
- })
-}
-
-
-</script>
-<style scoped>
-:deep(.el-descriptions__table .label-diy) {
- text-align: center;
- width: 100px;
- /*font-size: large;*/
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/StockBasicData/Details.vue b/UI-Project/src/views/StockBasicData/Details.vue
deleted file mode 100644
index 04fa130..0000000
--- a/UI-Project/src/views/StockBasicData/Details.vue
+++ /dev/null
@@ -1,453 +0,0 @@
-<template>
- <el-header height="auto">
- <el-descriptions
- class="margin-top"
- title=""
- :column="4"
- :size="'default'"
- border
- >
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- 鎿嶄綔鍗曞彿
- </template>
- <el-input v-model="form.buyItem" placeholder="鍗曞彿" disabled></el-input>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- 閲囪喘绫诲瀷
- </template>
- <el-input v-model="form.buyItem" placeholder="閲囪喘绫诲瀷" disabled></el-input>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- 閲囪喘閮ㄩ棬
- </template>
- <el-input v-model="form.buyItem" placeholder="閲囪喘閮ㄩ棬" disabled></el-input>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- 渚涘簲鍟�
- </template>
- <el-input v-model="form.buyItem" placeholder="渚涘簲鍟�" disabled></el-input>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- 閲囪喘鍛�
- </template>
- <el-input v-model="form.buyItem" placeholder="閲囪喘鍛�" disabled></el-input>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- 閲囪喘缁勭粐
- </template>
- <el-input v-model="form.buyItem" placeholder="閲囪喘缁勭粐" disabled></el-input>
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy">
- <template #label>
- 鍒惰〃鏃ユ湡
- </template>
- <el-date-picker
- v-model="form.date"
- type="date"
- placeholder="閫夋嫨鍒惰〃鏃ユ湡"
- />
- </el-descriptions-item>
-
- <el-descriptions-item label-class-name="label-diy" class-name="content-diy"></el-descriptions-item>
-
- </el-descriptions>
- </el-header>
-
- <el-main style="padding-top: 5px;height:100%">
- <vxe-grid
- max-height="500"
- @filter-change="filterChanged"
- ref="xGrid"
- v-bind="gridOptions"
- v-on="gridEvents"
- >
-
- <!-- @toolbar-button-click="toolbarButtonClickEvent"-->
- <!-- 涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
- <template #content="{ row}">
- <ul class="expand-wrapper">
- <li v-for="(item,key,index) in row">
- <span style="font-weight: bold">{{ key + ': ' }}</span>
- <span>{{ item }}</span>
- </li>
- </ul>
- </template>
-
- </vxe-grid>
-
- </el-main>
-
-</template>
-
-<script setup>
-import {ref, reactive} from 'vue'
-
-let router = useRouter()
-import {useRouter} from "vue-router";
-import { ElMessage, ElMessageBox} from "element-plus";
-
-const value = ref('')
-
-//缁勪欢鎺ユ敹鍙傛暟
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe: true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true, height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'CustomerList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- //寮�鍚櫄鎷熸粴鍔�
- scrollY: {enabled: true},
- showOverflow: true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- //绛涢�夐厤缃」
- filterConfig: {
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },
- //琛ㄥご鍙傛暟銆佸垪鍚�
- columns: [
- {type: 'seq', fixed: "left", title: ' ', width: 50},
- {type: 'checkbox', fixed: "left", title: '', width: 50},
- {
- field: 'cgdh',
- width: '10%',
- title: '鐗╂枡缂栫爜',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'cgzt',
- width: '10%',
- title: '鐗╂枡鍚嶇О',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'gys',
- width: '10%',
- title: '浜у湴',
-
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'w',
- width: '8%',
- title: '瀹藉害',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'g',
- width: '8%',
- title: '楂樺害',
- filters: [{data: ''}],
- sortable: true,
-
- },
- {
- field: 'h',
- width: '8%',
- title: '鍘氬害',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'xh',
- width: '8%',
- title: '鍨嬪彿',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'dw',
- width: '8%',
- title: '鍗曚綅',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'sl',
- width: '8%',
- title: '鏁伴噺',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'czsl',
- width: '8%',
- title: '鎿嶄綔鏁伴噺',
- type: 'number',
- editRender: {name: 'input', type: 'number', attrs: {placeholder: ''}}
- },
- {
- field: 'sl',
- width: '12%',
- title: '绠辨暟',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'je',
- width: '8%',
- title: '鍗曠墖闈㈢Н',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'je',
- width: '12%',
- title: '鍗曚环',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'sl',
- width: '8%',
- title: '鎬婚潰绉�',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'yl',
- width: '10%',
- title: '鎬婚噾棰�',
- filters: [{data: ''}],
- sortable: true
- },
- {
- field: 'yl',
- width: '10%',
- title: '澶囨敞',
- filters: [{data: ''}],
- sortable: true
- }
- ],
- //琛ㄥご鎸夐挳
- toolbarConfig: {
- buttons: [
- {type: 'text'},
- {
- 'name': '淇濆瓨璁㈠崟',
- status: 'primary',
- 'code': 'Save'
- }, {
- 'name': '鍏ュ簱',
- status: 'primary',
- 'code': 'Storage'
- },
- {
- 'name': '閫�璐�',
- status: 'primary',
- 'code': 'Return'
- },
- {
- 'name': '鍙栨秷',
- status: '',
- 'code': 'Cancel'
- }],
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true,
- tools: [],
-
- },
- //table body瀹為檯鏁版嵁
- data: [{}, {}, {}],
- //鑴氬悎骞�
- mergeFooterItems: [
- {row: 0, col: 0, rowspan: 1, colspan: 3}
- ],
- //鍚堝苟鑴�
- footerMethod({columns, data}) {//椤佃剼鍑芥暟
- return [
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- /* if (props.tableProp.footList.includes(column.field)) {
- return sumNum(data, column.field)
- }*/
- return ''
- })
- ]
- },
-
-})
-
-const xGrid = ref()
-const gridEvents = {
- toolbarButtonClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
-//淇濆瓨
- case 'Save': {
- MessageAlertShow('鐐瑰嚮浜嗕繚瀛樿鍗�','鎿嶄綔鎻愮ず');
- //MessageShow('鐐瑰嚮浜嗕繚瀛樿鍗曪紒', 'error');
- break;
- }
-//鍙栨秷锛岃繑鍥炴煡璇㈤〉闈�
- case 'Cancel': {
- // router.push({path: '/main/purchaseOrder/StoragePurchaseOrder'})
- break
- }
-//鍏ュ簱
- case 'Storage': {
- if ($grid.getCheckboxRecords().length === 0) {
- MessageShow('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹紒', 'warning');
- return
- } else {
- MessageConfirmShow('鍏ュ簱', '鏄惁纭瀵归�変腑鐨�' + $grid.getCheckboxRecords().length + '鐗╂枡杩涜鍏ュ簱鎿嶄綔锛�');
- }
- break
- }
-//閫�璐�
- case 'Return': {
- if ($grid.getCheckboxRecords().length === 0) {
- MessageShow('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹紒', 'warning');
- return
- } else {
-
- MessageConfirmShow('閫�璐�', '鏄惁纭瀵归�変腑鐨�' + $grid.getCheckboxRecords().length + '鐗╂枡杩涜閫�璐ф搷浣滐紒');
- }
- break
- }
-
- }
- }
- },
- toolbarToolClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- case 'myPrint': {
- $grid.print()
- break
- }
- }
- }
- },
-}
-
-//琛ㄥ崟鏁版嵁
-const form = reactive({
- name: '',
- region: '',
- date: '',
- delivery: false,
- type: [],
- resource: '',
- desc: '',
- supplier: '',
- buyer: '',
- buyItem: '',
- buyType: ''
-
-})
-
-
-//椤甸潰閫昏緫浠g爜鎵ц
-function logicExecute(type){
- const $grid = xGrid.value
- switch (type) {
- case '鍏ュ簱':
- //鍏ュ簱閫昏緫浠g爜TODO
- MessageShow('鍏ュ簱鎴愬姛锛�', 'success');
- break;
- case '閫�璐�':
- //閫�璐ч�昏緫浠g爜TODO
- MessageShow('閫�璐ф垚鍔燂紒', 'success');
- break;
- default:
- MessageShow('鏈煡鎿嶄綔锛�', 'error');
- break;
- }
- return true;
-}
-
-//鎻愮ず淇℃伅
-//淇℃伅鍐呭锛屾樉绀烘柟寮忥紝鏄剧ず鏍囬锛岀被鍨�
-const MessageShow = (content,type='success') => {
- ElMessage({
- message: content,
- type: type,
- showClose: true,
- })
-}
-
-//鎿嶄綔纭绫讳俊鎭細鎿嶄綔绫诲瀷锛屾彁绀哄唴瀹癸紝鎻愮ず鏍囧ご锛屾彁绀虹被鍨�
-const MessageConfirmShow = (czType, content, title='鎿嶄綔纭鎻愮ず', type='warning') => {
- ElMessageBox.confirm(
- content,
- title,
- {
- cancelButtonText: '鍙栨秷',
- confirmButtonText: '纭畾',
- type: type,
- center: true,
- }
- )
- //鐐瑰嚮浜嗙‘瀹�
- .then(() => {
-
- return logicExecute(czType);
- })
- //鐐瑰嚮浜嗗彇娑�
- .catch(() => {
- return false;
- })
-}
-
-//寮圭獥淇℃伅
-const MessageAlertShow=(content,title,type='info')=>{
-
- ElMessageBox.alert(content, title, {
- // 绂佹鑷姩瀵圭劍
- //autofocus: false,
- confirmButtonText: 'OK',
- /*callback: (action: Action) => {
- MessageShow(`action: ${action}`,type)
- },*/
- })
-}
-
-</script>
-
-
-<style scoped>
-:deep(.el-descriptions__table .label-diy) {
- text-align: center;
- width: 100px;
- /* font-size: large;*/
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/StockBasicData/Payment.vue b/UI-Project/src/views/StockBasicData/Payment.vue
deleted file mode 100644
index 475da20..0000000
--- a/UI-Project/src/views/StockBasicData/Payment.vue
+++ /dev/null
@@ -1,354 +0,0 @@
-<template>
- <el-container>
- <el-header class="m-header" style="height: auto">
- <el-row :gutter="10" style="margin-bottom: 5px">
- <el-col :span="7">
- <el-date-picker
- v-model="datevalue"
- type="daterange"
- unlink-panels
- range-separator="鍒�"
- start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡"
- :shortcuts="shortcuts"
- :size="size"
- format="YYYY/MM/DD"
- value-format="YYYY-MM-DD"
- />
- </el-col>
-
- <el-col :span="2">
- <el-button
- id="select"
- type="primary"
- :icon="Search"
- @click="autoAddRow">鏌ヨ
- </el-button>
- </el-col>
- </el-row>
-
- </el-header>
- <el-main style="padding-top: 5px">
- <vxe-grid
-
- max-height="600"
- @filter-change="filterChanged"
- class="mytable-scrollbar"
- ref="xGrid"
- v-bind="PayOptions"
- @="gridEvents"
-
- >
-
- <!-- 涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
- <template #content="{ row }">
- <ul class="expand-wrapper">
- <li v-for="(item,index) in gridOptions.columns" v-show="item.field!==undefined ">
- <span style="font-weight: bold">{{item.title+': '}}</span>
- <span>{{ row[item.field] }}</span>
- </li>
- </ul>
- </template>
-
- <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
- <template #button_slot="{ row }">
- <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
- <!-- <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>-->
- <!-- <el-button @click="cellClickEvent" link type="primary" size="small">璇︽儏</el-button>-->
- </template>
-
-
- <template #num1_filter="{ column, $panel }">
- <div>
- <div v-for="(option, index) in column.filters" :key="index">
- <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
- </div>
- </div>
- </template>
- </vxe-grid>
- </el-main>
- </el-container>
-</template>
-
-
-<script setup>
-import {ref} from 'vue'
-import {Search} from "@element-plus/icons-vue";
-import 'dayjs/locale/zh-cn'
-import {VXETable} from "vxe-table";
-import {reactive} from "vue";
-import {useRouter} from 'vue-router'
-import {ElMessage, ElMessageBox} from "element-plus";
-
-const datevalue = ref('')//鏃堕棿
-
-//缁勪欢鎺ユ敹鍙傛暟
-const PayOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe: true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true, height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'CustomerList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY: {enabled: true},//寮�鍚櫄鎷熸粴鍔�
- showOverflow: true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },
- columns: [
- /* {title: '鎿嶄綔', width: '8%', slots: {default: 'button_slot'}, fixed: "left"},*/
- {type: 'expand', title: '', fixed: "left", slots: {content: 'content'}, width: '5%'},//璇︽儏
- {type: 'checkbox', fixed: "left", title: '', width: '5%'},
- {type: 'seq', fixed: "left", title: ' ', width: '5%'},
- {
- field: 'cgdh',
- width: '10%',
- title: '閲囪喘鍗曞彿',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'cgzt', width: '10%', title: '鏈堜唤', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'gys',
- width: '10%',
- title: '渚涘簲鍟�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'wlbh',
- width: '10%',
- title: '鏈熷垵閲戦',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'wlmc',
- width: '10%',
- title: '鏈湡搴斾粯',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'w',
- width: '10%',
- title: '鏈湡宸蹭粯',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'g',
- width: '10%',
- title: '鏈熸湯浣欓',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'h', width: '9%', title: '绋庣巼', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: '6', width: '10%', title: '澶囨敞', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true}
- ],//琛ㄥご鍙傛暟
- toolbarConfig: {
- buttons: [{type: 'text'}, {
- 'name': '搴斾粯纭',
- status: 'primary',
- 'code': 'Sure',
- }],
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true,
- style: 'paddling-left:10px'
- },//琛ㄥご鎸夐挳
- data: [{}, {}, {}, {}],//table body瀹為檯鏁版嵁
- mergeFooterItems: [
- {row: 0, col: 0, rowspan: 1, colspan: 3}
- ],//鍚堝苟鑴�
- footerMethod({columns, data}) {//椤佃剼鍑芥暟
- return [
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- /* if (props.tableProp.footList.includes(column.field)) {
- return sumNum(data, column.field)
- }*/
- return ''
- })
- ]
- },
-
-})
-
-
-const xGrid = ref()
-const gridEvents = {
- toolbarButtonClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- //搴斾粯纭
- case 'Sure': {
- if ($grid.getCheckboxRecords().length === 0) {
- MessageShow("璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�!", 'warning');
- return
- } else {
- MessageConfirmShow("纭搴斾粯", '鎮ㄩ�夋嫨浜�' + $grid.getCheckboxRecords().length + '鏉℃暟鎹紒,鏄惁纭搴斾粯锛�')
- }
- break
- }
- }
- }
- },
- toolbarToolClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- case 'myPrint': {
- $grid.print()
- break
- }
- }
- }
- },
-}
-
-
-
-const shortcuts = [
- {
- text: '杩戜竴鍛�',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
- return [start, end]
- },
- },
- {
- text: '杩戜竴涓湀',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
- return [start, end]
- },
- },
- {
- text: '杩戜笁涓湀',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
- return [start, end]
- },
- },
-]
-
-
-//椤甸潰閫昏緫浠g爜鎵ц
-function logicExecute(type){
- const $grid = xGrid.value
- switch (type) {
- case '纭搴斾粯':
- //鍏ュ簱閫昏緫浠g爜TODO
- MessageShow('鎿嶄綔鎴愬姛锛�', 'success');
- break;
-
- default:
- MessageShow('鏈煡鎿嶄綔锛�', 'error');
- break;
-
- }
- return true;
-}
-
-
-//鎻愮ず淇℃伅
-//淇℃伅鍐呭锛屾樉绀烘柟寮忥紝鏄剧ず鏍囬锛岀被鍨�
-const MessageShow = (content, type = 'success') => {
- ElMessage({
- message: content,
- type: type,
- showClose: true,
- })
-}
-
-//鎿嶄綔纭绫讳俊鎭細鎿嶄綔绫诲瀷锛屾彁绀哄唴瀹癸紝鎻愮ず鏍囧ご锛屾彁绀虹被鍨�
-const MessageConfirmShow = (czType, content, title = '鎿嶄綔纭鎻愮ず', type = 'warning') => {
- ElMessageBox.confirm(
- content,
- title,
- {
- cancelButtonText: '鍙栨秷',
- confirmButtonText: '纭畾',
- type: type,
- center: true,
- }
- )
- //鐐瑰嚮浜嗙‘瀹�
- .then(() => {
-
- return logicExecute(czType);
-
- })
- //鐐瑰嚮浜嗗彇娑�
- .catch(() => {
- return false;
- })
-}
-
-//寮圭獥淇℃伅
-const MessageAlertShow = (content, title, type = 'info') => {
-
- ElMessageBox.alert(content, title, {
- // 绂佹鑷姩瀵圭劍
- //autofocus: false,
- confirmButtonText: 'OK',
- /*callback: (action: Action) => {
- MessageShow(`action: ${action}`,type)
- },*/
- })
-}
-
-</script>
-
-
-<style scoped>
-.el-row {
- margin-bottom: 20px;
-}
-
-.el-row:last-child {
- margin-bottom: 0;
-}
-
-.el-col {
- border-radius: 4px;
-}
-
-.m-header {
- height: 32px;
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/StockBasicData/Return.vue b/UI-Project/src/views/StockBasicData/Return.vue
deleted file mode 100644
index 354092d..0000000
--- a/UI-Project/src/views/StockBasicData/Return.vue
+++ /dev/null
@@ -1,593 +0,0 @@
-<template>
- <el-container>
- <el-header class="m-header" style="height: auto">
- <el-row :gutter="10" style="margin-bottom: 5px">
- <el-col :span="7">
- <el-date-picker
- v-model="datevalue"
- type="daterange"
- unlink-panels
- range-separator="鍒�"
- start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡"
- :shortcuts="shortcuts"
- :size="size"
- format="YYYY/MM/DD"
- value-format="YYYY-MM-DD"
- />
-
- </el-col>
-
- <el-col :span="2">
- <el-button
- id="select"
- type="primary"
- :icon="Search"
- @click="BtnSearchPurchaseOrder">鏌ヨ
- </el-button>
- </el-col>
- </el-row>
- </el-header>
- <el-main style="padding-top: 5px;height:100%">
- <vxe-grid
-
- max-height="600"
- @filter-change="filterChanged"
- class="mytable-scrollbar"
- ref="xGrid"
- v-bind="gridOptions"
- v-on="gridEvents"
- @cell-dblclick="cellClickEvent"
- >
-
- <!-- @toolbar-button-click="toolbarButtonClickEvent"-->
- <!-- 涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
- <template #content="{ row }">
- <ul class="expand-wrapper">
- <li v-for="(item,index) in gridOptions.columns" v-show="item.field!==undefined ">
- <span style="font-weight: bold">{{ item.title + ': ' }}</span>
- <span>{{ row[item.field] }}</span>
- </li>
- </ul>
- </template>
-
- <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
- <template #button_slot="{ row }">
- <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
- <!-- <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>-->
- <!-- <el-button @click="cellClickEvent" link type="primary" size="small">璇︽儏</el-button>-->
- </template>
-
-
- <template #num1_filter="{ column, $panel }">
- <div>
- <div v-for="(option, index) in column.filters" :key="index">
- <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
- </div>
- </div>
- </template>
- </vxe-grid>
-
-
- <!-- 璇︽儏妗� 閮ㄥ垎1-->
- <vxe-modal v-model="showDetails" title="鏌ョ湅璇︽儏" width="600" height="80%" :mask="false" :lock-view="false"
- resize>
- <el-container>
- <el-header height="35px"
- style="margin: 0;padding: 0">
-
- <el-input v-model="showCGDH" placeholder="閲囪喘鍗曞彿" disabled>
- <template #prepend>閲囪喘鍗曞彿锛�</template>
- </el-input>
- </el-header>
- <el-main>
- <template #default>
- <vxe-table
- border="default"
- auto-resize
- show-overflow
- max-height="400"
- :row-config="{isHover: true}"
- :show-header="false"
- :sync-resize="showDetails"
- :data="detailData"
-
- >
- <vxe-column field="label" width="30%" class-name="v-column-label"></vxe-column>
- <vxe-column field="value"></vxe-column>
- </vxe-table>
- </template>
- </el-main>
- <el-footer height="40px">
- <el-row>
- <el-col :offset="20" :span="4">
- <el-button
- id="Sure"
- type="primary"
- @click="SureReturn"
- >纭閫�璐�
- </el-button>
- </el-col>
-
- </el-row>
- </el-footer>
- </el-container>
- </vxe-modal>
- <!-- 璇︽儏妗� 閮ㄥ垎1 缁撴潫-->
- </el-main>
- </el-container>
-</template>
-
-
-<script setup>
-
-import {ref} from "vue";
-import {reactive} from "vue";
-import {useRouter} from 'vue-router'
-import {Search} from "@element-plus/icons-vue";
-import dayjs from "dayjs";
-import {ElMessage, ElMessageBox} from "element-plus";
-
-
-let router = useRouter()
-const getTableRow = (row, type) => {
- switch (type) {
- case 'edit' : {
- //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
- // router.push({path: '/main/purchaseOrder/DetailsPurchaseOrder', query: {id: row.id}})
- break
- }
- case 'delete': {
-
-
- alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅' + row.id)
- break
- }
- }
-}
-
-const xGrid = ref()
-
-const gridEvents = {
- toolbarButtonClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- case 'Sure': {
- if ($grid.getCheckboxRecords().length === 0) {
-
- MessageShow('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�!', 'warning');
-
- return
- } else {
-
- MessageConfirmShow('纭畾', '鎮ㄩ�夋嫨浜�' + $grid.getCheckboxRecords().length + '鏉℃暟鎹紒,鏄惁纭閫�璐э紵')
- }
- break
- }
- case 'Log': {
- MessageAlertShow('鐐瑰嚮浜嗛��璐ц褰�!', '鎿嶄綔鎻愮ず');
- break
- }
- }
- }
- },
- toolbarToolClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- case 'myPrint': {
- $grid.print()
- break
- }
- }
- }
- },
-}
-
-
-//鏌ヨ鎸夐挳鏂规硶
-const BtnSearchPurchaseOrder = () => {
-
- //寮�濮嬫椂闂达紝缁撴潫鏃堕棿鑾峰彇
- //MessageShow("寮�濮嬫椂闂�"+datevalue._rawValue[0]+"\r\n缁撴潫鏃堕棿\r\n"+datevalue._rawValue[1]);
-
- for (let i = 1; i < 6; i++) {
- const randomInt = Math.floor(Math.random() * 999) + 1000;//4浣嶆暟闅忔満鏁�
- const randomSumInt = Math.floor(Math.random() * 99) + 10;//2浣嶆暟闅忔満鏁�
- const randomOrderInt = Math.floor(Math.random() * 99) + 100;//3浣嶆暟闅忔満鏁�
- const t = i % 2 === 0 ? 5 : 6;
- const s = i % 2 === 0 ? '鍏ュ簱' : i % 3 === 0 ? '閫�璐�' : '閮ㄥ垎鍏ュ簱';
- const thdh = i % 2 === 0 ? '' : i % 3 === 0 ? 'THID' + randomOrderInt : '';
- const CGNo = 'NGCG231200' + randomOrderInt;//閲囪喘缂栧彿
- const wlNo = 'NGWL1000' + randomInt;
- const xh = 'NGXH' + randomSumInt;
- const wlmc = 'WLMC' + randomInt;
- const gys = '渚涘簲鍟�' + randomSumInt;
- const xhdh = 'NG231200' + randomOrderInt;
- const w = i % 2 === 0 ? '3300' : i % 3 === 0 ? '3660' : i % 4 === 0 ? '2250' : '2580';
- const h = i % 2 === 0 ? '2440' : i % 3 === 0 ? '2440' : i % 4 === 0 ? '2000' : '2300';
- const dw = i % 2 === 0 ? '鐗�' : i % 3 === 0 ? '骞崇背' : i % 4 === 0 ? '鍖�' : '鍚�';
- now.setDate(now.getDate() + 1);
- gridOptions.data.push({
- cgdh: CGNo,
- thdh: thdh,
- h: t,
- xh: xh,
- wlbh: wlNo,
- wlmc: wlmc,
- gys: gys,
- w: w,
- g: h,
- dw: dw,
- cgzt: s,
- rq: dayjs(now).format('YYYY-MM-DD'),
- yl: randomSumInt,
- sl: randomOrderInt,
- xsdh: xhdh,
- je: randomInt,
- 6: '139xxxxxxxx',
-
- })
- }
-
-}
-
-
-//缁勪欢鎺ユ敹鍙傛暟
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe: true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true, height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'CustomerList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY: {enabled: true},//寮�鍚櫄鎷熸粴鍔�
- showOverflow: true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },
- columns: [
- {type: 'expand', title: '', fixed: "left", slots: {content: 'content'}, width: 50},//璇︽儏
- {title: '鎿嶄綔', width: '8%', slots: {default: 'button_slot'}, fixed: "left"},
- {type: 'checkbox', fixed: "left", title: '', width: 50},
- {type: 'seq', fixed: "left", title: ' ', width: 50},
-
-
- {
- field: 'thdh',
- width: '10%',
- title: '閫�璐у崟鍙�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'cgdh',
- width: '10%',
- title: '閲囪喘鍗曞彿',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'cgzt', width: '10%', title: '鐘舵��', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'gys',
- width: '10%',
- title: '渚涘簲鍟�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'wlbh',
- width: '10%',
- title: '鐗╂枡缂栧彿',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'wlmc',
- width: '10%',
- title: '鐗╂枡鍚嶇О',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'w', width: '8%', title: '瀹藉害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'g', width: '8%', title: '楂樺害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'h', width: '8%', title: '鍘氬害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'xh', width: '8%', title: '鍨嬪彿', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'dw', width: '8%', title: '鍗曚綅', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: '6',
- width: '12%',
- title: '涓嶅惈绋庡崟浠�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'sl', width: '8%', title: '鏁伴噺', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'sl',
- width: '12%',
- title: '宸查噰璐暟閲�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'je', width: '8%', title: '閲戦', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'je',
- width: '12%',
- title: '涓嶅惈绋庨噾棰�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: '6', width: '8%', title: '绋庣巼', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'sl', width: '8%', title: '搴撳瓨', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'yl', width: '10%', title: '鍛ㄧ敤閲�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'yl', width: '10%', title: '鏈堢敤閲�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'cgzt',
- width: '10%',
- title: '鍗曟嵁鐘舵��',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'xsdh',
- width: '10%',
- title: '閿�鍞崟鍙�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'rq',
- width: '10%',
- title: '鍒跺崟鏃ユ湡',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: '6', width: '10%', title: '鍒跺崟浜�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: '6',
- width: '10%',
- title: '閲囪喘閮ㄩ棬',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: '6',
- width: '10%',
- title: '閲囪喘缁勭粐',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: '6', width: '10%', title: '澶囨敞', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true}
- ],//琛ㄥご鍙傛暟
- toolbarConfig: {
- buttons: [{type: 'text'}, {
- 'name': '閫�璐ц褰�',
-
- 'code': 'Log'
- },
- {
- 'name': '纭閫�璐�',
- status: 'primary',
- 'code': 'Sure'
- }],
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true,
- style: 'paddling-left:10px'
- },//琛ㄥご鎸夐挳
- data: [],//table body瀹為檯鏁版嵁
- mergeFooterItems: [
- {row: 0, col: 0, rowspan: 1, colspan: 4}
- ],//鍚堝苟鑴�
- footerMethod({columns, data}) {//椤佃剼鍑芥暟
- return [
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- /* if (props.tableProp.footList.includes(column.field)) {
- return sumNum(data, column.field)
- }*/
- return ''
- })
- ]
- },
-
-})
-
-
-//璇︽儏妗� 閮ㄥ垎2
-const showCGDH = ref();
-const showDetails = ref(false);
-let detailData = [];
-const cellClickEvent = ({row}) => {
- if (isQueryColumnId === false) {
- queryColumnId();
- }
-
- detailData = list.map(field => {
- return {label: queryColumnsTitle(field), value: row[field]}
- })
- showDetails.value = true;
- showCGDH.value = row['cgdh'];
-}
-
-//鑾峰彇琛ㄥ垪
-let list = [];
-let columnIndex = 4;//鍒楁爣澶翠粠绗嚑鍒楀紑濮嬬殑
-let isQueryColumnId = false;
-const queryColumnId = () => {
-
- while (columnIndex < gridOptions.columns.length) {
- list.push(gridOptions.columns[columnIndex].field);
- columnIndex++;
- }
- isQueryColumnId = true;
- return list;
-}
-
-//鑾峰彇琛ㄥ垪鍚�
-function queryColumnsTitle(cn) {
- let i = 0;
- while (i < gridOptions.columns.length + 1) {
- if (gridOptions.columns[i].field === cn) {
- return gridOptions.columns[i].title;
- }
- i++;
- }
-}
-
-// 璇︽儏妗嗛儴鍒�2 缁撴潫
-
-const SureReturn = () => {
-
- MessageConfirmShow('閫�璐�', '鏄惁纭閫�璐э紵')
-
-}
-
-//璇︽儏妗� 閮ㄥ垎2 缁撴潫
-
-
-const now = new Date()
-
-//鏃堕棿蹇嵎閫夋嫨
-const datevalue = ref('')
-const shortcuts = [
- {
- text: '杩戜竴鍛�',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
- return [start, end]
- },
- },
- {
- text: '杩戜竴涓湀',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
- return [start, end]
- },
- },
- {
- text: '杩戜笁涓湀',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
- return [start, end]
- },
- },
-]
-
-
-//椤甸潰閫昏緫浠g爜鎵ц
-function logicExecute(type) {
- const $grid = xGrid.value
- switch (type) {
- case '纭畾':
- //澶氶�夐��璐ч�昏緫浠g爜TODO
- MessageShow('鎿嶄綔鎴愬姛锛�', 'success');
- break;
- case '閫�璐�':
- //鍗曢��璐ч�昏緫浠g爜TODO
- MessageShow('鎿嶄綔鎴愬姛锛�', 'success');
- break;
- default:
- MessageShow('鏈煡鎿嶄綔锛�', 'error');
- break;
- }
- return true;
-}
-
-
-//鎻愮ず淇℃伅
-//淇℃伅鍐呭锛屾樉绀烘柟寮忥紝鏄剧ず鏍囬锛岀被鍨�
-const MessageShow = (content, type = 'success') => {
- ElMessage({
- message: content,
- type: type,
- showClose: true,
- })
-}
-
-//鎿嶄綔纭绫讳俊鎭細鎿嶄綔绫诲瀷锛屾彁绀哄唴瀹癸紝鎻愮ず鏍囧ご锛屾彁绀虹被鍨�
-const MessageConfirmShow = (czType, content, title = '鎿嶄綔纭鎻愮ず', type = 'warning') => {
- ElMessageBox.confirm(
- content,
- title,
- {
- cancelButtonText: '鍙栨秷',
- confirmButtonText: '纭畾',
- type: type,
- center: true,
- }
- )
- //鐐瑰嚮浜嗙‘瀹�
- .then(() => {
-
- logicExecute(czType);
-
- return true;
- })
- //鐐瑰嚮浜嗗彇娑�
- .catch(() => {
- return false;
- })
-}
-
-//寮圭獥淇℃伅
-const MessageAlertShow = (content, title, type = 'info') => {
-
- ElMessageBox.alert(content, title, {
- // 绂佹鑷姩瀵圭劍
- //autofocus: false,
- confirmButtonText: 'OK',
- /*callback: (action: Action) => {
- MessageShow(`action: ${action}`,type)
- },*/
- })
-}
-
-</script>
-
-
-<style scoped>
-:deep(.v-column-label div span) {
- font-weight: bold;
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/StockBasicData/Storage.vue b/UI-Project/src/views/StockBasicData/Storage.vue
deleted file mode 100644
index 98a9156..0000000
--- a/UI-Project/src/views/StockBasicData/Storage.vue
+++ /dev/null
@@ -1,603 +0,0 @@
-<template>
- <el-container>
- <el-header class="m-header" style="height: auto">
- <el-row :gutter="10" style="margin-bottom: 5px">
- <el-col :span="7">
- <el-date-picker
- v-model="datevalue"
- type="daterange"
- unlink-panels
- range-separator="鍒�"
- start-placeholder="寮�濮嬫棩鏈�"
- end-placeholder="缁撴潫鏃ユ湡"
- :shortcuts="shortcuts"
-
- format="YYYY/MM/DD"
- value-format="YYYY-MM-DD"
- />
-
- </el-col>
- <el-col :span="2">
- <el-button
- id="select"
- type="primary"
- :icon="Search"
- @click="BtnSearchPurchaseOrder">鏌ヨ
- </el-button>
- </el-col>
-
- </el-row>
-
-
- </el-header>
- <el-main style="padding-top: 5px;height:100%">
- <vxe-grid
-
- max-height="600"
- @filter-change="filterChanged"
- class="mytable-scrollbar"
- ref="xGrid"
- v-bind="gridOptions"
- v-on="gridEvents"
-
- @cell-dblclick="cellClickEvent"
-
- >
-
- <!-- 涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
- <template #content="{ row }">
- <ul class="expand-wrapper">
- <li v-for="(item,index) in gridOptions.columns" v-show="item.field!==undefined ">
- <span style="font-weight: bold">{{ item.title + ': ' }}</span>
- <span>{{ row[item.field] }}</span>
- </li>
- </ul>
- </template>
-
- <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
- <template #button_slot="{ row }">
- <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
- <el-button @click="getTableRow(row,'look')" link type="primary" size="small">鏌ョ湅</el-button>
- <!-- <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>-->
- <!-- <el-button @click="cellClickEvent" link type="primary" size="small">璇︽儏</el-button>-->
- </template>
-
-
- <template #num1_filter="{ column, $panel }">
- <div>
- <div v-for="(option, index) in column.filters" :key="index">
- <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
- </div>
- </div>
- </template>
- </vxe-grid>
-
- <!-- 璇︽儏妗� 閮ㄥ垎1-->
- <vxe-modal v-model="showDetails" title="鏌ョ湅璇︽儏" width="600" height="80%" :mask="false" :lock-view="false"
- resize>
- <el-container>
- <el-header height="35px"
- style="margin: 0;padding: 0">
-
- <el-input v-model="showCGDH" placeholder="閲囪喘鍗曞彿" disabled>
- <template #prepend>閲囪喘鍗曞彿锛�</template>
- </el-input>
- </el-header>
- <el-main>
- <template #default>
- <vxe-table
- border="inner"
- auto-resize
- show-overflow
- max-height="400"
- :row-config="{isHover: true}"
- :show-header="false"
- :sync-resize="showDetails"
- :data="detailData">
- <vxe-column field="label" width="30%" class-name="v-column-label"></vxe-column>
- <vxe-column field="value"></vxe-column>
- </vxe-table>
- </template>
- </el-main>
- <el-footer height="40px">
- <el-row>
- <el-col :offset="20" :span="4">
- <el-button
- id="Sure"
- type="primary"
- @click="SureStorage"
- >纭鍏ュ簱
- </el-button>
- </el-col>
-
- </el-row>
- </el-footer>
- </el-container>
- </vxe-modal>
- <!-- 璇︽儏妗� 閮ㄥ垎1 缁撴潫-->
-
-
- </el-main>
- </el-container>
-
-
-</template>
-
-
-<script setup>
-import {ref} from "vue";
-import {reactive} from "vue";
-import {useRouter} from 'vue-router'
-import {Search} from "@element-plus/icons-vue";
-import dayjs from "dayjs";
-import {VXETable} from "vxe-table";
-import {ElMessage, ElMessageBox} from "element-plus";
-
-let router = useRouter()
-
-
-const getTableRow = (row, type) => {
- switch (type) {
- case 'edit' : {
- //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
- router.push({path: '/main/purchaseOrder/DetailsPurchaseOrder', query: {id: row.id}});
-
- break
- }
- case 'look': {
- /*this.detailData = ['name', 'nickname', 'role', 'sex', 'age', 'amount', 'address'].map(field => {
- return { label: field, value: row[field] }
- })*/
- //this.showDetails = true
- break
- }
- case 'delete': {
- alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅' + row.id)
- break
- }
- }
-}
-
-const xGrid = ref()
-const gridEvents = {
- toolbarButtonClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- case 'Sure': {
- if ($grid.getCheckboxRecords().length === 0) {
- MessageShow('璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�', 'warning');
- //openAlert({type: 'message', content: '璇烽�夋嫨鑷冲皯涓�鏉℃暟鎹�', status: 'warning'})
- //VXETable.modal.message( '璇烽�夋嫨涓�鏉℃暟鎹紒')
- return
- } else {
- const type = VXETable.modal.confirm('鎮ㄩ�夋嫨浜�' + $grid.getCheckboxRecords().length + '鏉℃暟鎹紒,鏄惁纭鍏ュ簱锛�');
- //openAlert({type:'alert', content: '鎴愬姛鍏ュ簱'+$grid.getCheckboxRecords().length+'鏉℃暟鎹紒', status: 'success' })
- //VXETable.modal.message( '璇烽�夋嫨涓�鏉℃暟鎹紒')
- return
- }
- break
- }
- case 'Log': {
-
- //openAlert({type: 'alert', content: '鐐瑰嚮浜嗛��璐ц褰�', status: 'success'})
- MessageConfirmShow("閫�璐ц褰�", "鐐瑰嚮浜嗛��璐ц褰�", "", 'success')
- break
- }
- }
- }
- },
- toolbarToolClick({code}) {
- const $grid = xGrid.value
- if ($grid) {
- switch (code) {
- case 'myPrint': {
- $grid.print()
- break
- }
- }
- }
- },
-}
-
-const openAlert = (options) => {
- if (options.type === 'message') {
- VXETable.modal.message(options)
- } else {
- VXETable.modal.alert(options)
- }
-
-}
-const closeAlert = (id) => {
- VXETable.modal.close(id)
-}
-
-
-//鏌ヨ璋冪敤浜嬩欢
-const BtnSearchPurchaseOrder = () => {
- //寮�濮嬫椂闂达紝缁撴潫鏃堕棿鑾峰彇
- //MessageShow(datevalue._rawValue[0]+"\r\n鏃堕棿2\r\n"+datevalue._rawValue[1]);
-
- for (let i = 1; i < 6; i++) {
- const randomInt = Math.floor(Math.random() * 999) + 1000;//4浣嶆暟闅忔満鏁�
- const randomSumInt = Math.floor(Math.random() * 99) + 10;//2浣嶆暟闅忔満鏁�
- const randomOrderInt = Math.floor(Math.random() * 99) + 100;//3浣嶆暟闅忔満鏁�
- const t = i % 2 === 0 ? 5 : 6;
- const s = i % 2 === 0 ? '鍏ュ簱' : i % 3 === 0 ? '寰呭鏍�' : '宸查噰璐�';
- const rkdh = i % 2 === 0 ? 'RKID' + randomOrderInt : i % 3 === 0 ? '' : '';
- const CGNo = 'NGCG231200' + randomOrderInt;//閲囪喘缂栧彿
- const wlNo = 'NGWL1000' + randomInt;
- const xh = 'NGXH' + randomSumInt;
- const wlmc = 'WLMC' + randomInt;
- const gys = '渚涘簲鍟�' + randomSumInt;
- const xhdh = 'NG231200' + randomOrderInt;
- const w = i % 2 === 0 ? '3300' : i % 3 === 0 ? '3660' : i % 4 === 0 ? '2250' : '2580';
- const h = i % 2 === 0 ? '2440' : i % 3 === 0 ? '2440' : i % 4 === 0 ? '2000' : '2300';
- const dw = i % 2 === 0 ? '鐗�' : i % 3 === 0 ? '骞崇背' : i % 4 === 0 ? '鍖�' : '鍚�';
- now.setDate(now.getDate() + 1);
- gridOptions.data.push({
- cgdh: CGNo,
- rkdh: rkdh,
- h: t,
- xh: xh,
- wlbh: wlNo,
- wlmc: wlmc,
- gys: gys,
- w: w,
- g: h,
- dw: dw,
- cgzt: s,
- rq: dayjs(now).format('YYYY-MM-DD'),
- yl: randomSumInt,
- sl: randomOrderInt,
- xsdh: xhdh,
- je: randomInt,
- 6: '139xxxxxxxx',
-
- })
- }
-
-}
-
-
-//缁勪欢鎺ユ敹鍙傛暟
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe: true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true, height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'CustomerList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY: {enabled: true},//寮�鍚櫄鎷熸粴鍔�
- showOverflow: true,
- //showDetails: false,//寮圭獥 鏄惁鏄剧ず
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },
- columns: [
- {type: 'expand', title: '', fixed: "left", slots: {content: 'content'}, width: 50},//璇︽儏
- {title: '鎿嶄綔', width: '8%', slots: {default: 'button_slot'}, fixed: "left"},
- {type: 'checkbox', fixed: "left", title: '', width: 50},
- {type: 'seq', fixed: "left", title: ' ', width: 50},
-
-
- {
- field: 'rkdh',
- width: '10%',
- title: '鍏ュ簱鍗曞彿',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'cgdh',
- width: '10%',
- title: '閲囪喘鍗曞彿',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'cgzt', width: '10%', title: '鐘舵��', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'gys',
- width: '10%',
- title: '渚涘簲鍟�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'wlbh',
- width: '10%',
- title: '鐗╂枡缂栧彿',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'wlmc',
- width: '10%',
- title: '鐗╂枡鍚嶇О',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'w', width: '8%', title: '瀹藉害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'g', width: '8%', title: '楂樺害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'h', width: '8%', title: '鍘氬害', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'xh', width: '8%', title: '鍨嬪彿', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'dw', width: '8%', title: '鍗曚綅', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: '6',
- width: '12%',
- title: '涓嶅惈绋庡崟浠�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'sl', width: '8%', title: '鏁伴噺', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'sl',
- width: '12%',
- title: '宸查噰璐暟閲�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: 'je', width: '8%', title: '閲戦', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'je',
- width: '12%',
- title: '涓嶅惈绋庨噾棰�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: '6', width: '8%', title: '绋庣巼', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'sl', width: '8%', title: '搴撳瓨', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'yl', width: '10%', title: '鍛ㄧ敤閲�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {field: 'yl', width: '10%', title: '鏈堢敤閲�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: 'cgzt',
- width: '10%',
- title: '鍗曟嵁鐘舵��',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'xsdh',
- width: '10%',
- title: '閿�鍞崟鍙�',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: 'rq',
- width: '10%',
- title: '鍒跺崟鏃ユ湡',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: '6', width: '10%', title: '鍒跺崟浜�', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true},
- {
- field: '6',
- width: '10%',
- title: '閲囪喘閮ㄩ棬',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {
- field: '7',
- width: '10%',
- title: '閲囪喘缁勭粐',
- filters: [{data: ''}],
- slots: {filter: 'num1_filter'},
- sortable: true
- },
- {field: '8', width: '10%', title: '澶囨敞', filters: [{data: ''}], slots: {filter: 'num1_filter'}, sortable: true}
- ],//琛ㄥご鍙傛暟
- toolbarConfig: {
- buttons: [{type: 'text'/*,name:'璁㈠崟鍏ュ簱'*/}, {
- 'name': '鍏ュ簱璁板綍',
-
- 'code': 'Log'
- },
- {
- 'name': '纭鍏ュ簱',
- status: 'primary',
- 'code': 'Sure'
- }],
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true,
- style: 'paddling-left:10px'
- },//琛ㄥご鎸夐挳
- data: [],//table body瀹為檯鏁版嵁
- mergeFooterItems: [
- {row: 0, col: 0, rowspan: 1, colspan: 4}
- ],//鍚堝苟鑴�
- footerMethod({columns, data}) {//椤佃剼鍑芥暟
- return [
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- /* if (props.tableProp.footList.includes(column.field)) {
- return sumNum(data, column.field)
- }*/
- return ''
- })
- ]
- },
-
-})
-
-
-
-//璇︽儏妗� 閮ㄥ垎2
-const showCGDH = ref();
-const showDetails = ref(false);
-let detailData = [];
-const cellClickEvent = ({row}) => {
- if(isQueryColumnId===false){
- queryColumnId();
- }
-
- detailData = list.map(field => {
- return {label: queryColumnsTitle(field), value: row[field]}
- })
-
- showDetails.value = true;
- showCGDH.value = row['cgdh'];
-}
-
-//鑾峰彇琛ㄥ垪
-let list = [];
-let columnIndex = 4;//鍒楁爣澶翠粠绗嚑鍒楀紑濮嬬殑
-let isQueryColumnId = false;
-const queryColumnId = () => {
- while (columnIndex < gridOptions.columns.length) {
- list.push(gridOptions.columns[columnIndex].field);
- columnIndex++;
- }
- isQueryColumnId = true;
- return list;
-}
-
-//鑾峰彇琛ㄥ垪鍚�
-function queryColumnsTitle(cn) {
- let i = 0;
- while (i < gridOptions.columns.length + 1) {
- if (gridOptions.columns[i].field === cn) {
- return gridOptions.columns[i].title;
- }
- i++;
- }
-}
-//璇︽儏妗� 閮ㄥ垎2 缁撴潫
-
-
-const SureStorage = () => {
- MessageShow('纭鍏ュ簱鎴愬姛');
-
-}
-
-
-const now = new Date()
-
-//鏃堕棿蹇嵎閫夋嫨
-const datevalue = ref('')
-const shortcuts = [
- {
- text: '杩戜竴鍛�',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 7)
- return [start, end]
- },
- },
- {
- text: '杩戜竴涓湀',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 30)
- return [start, end]
- },
- },
- {
- text: '杩戜笁涓湀',
- value: () => {
- const end = new Date()
- const start = new Date()
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 90)
- return [start, end]
- },
- },
-]
-
-
-//椤甸潰閫昏緫浠g爜鎵ц
-function logicExecute(type) {
- const $grid = xGrid.value
- switch (type) {
- case '鍏ュ簱':
- //鍏ュ簱閫昏緫浠g爜TODO
- MessageShow('鍏ュ簱鎴愬姛锛�', 'success');
- break;
- case '閫�璐�':
- //閫�璐ч�昏緫浠g爜TODO
- MessageShow('閫�璐ф垚鍔燂紒', 'success');
- break;
- default:
- MessageShow('鏈煡鎿嶄綔锛�', 'error');
- break;
- }
- return true;
-}
-
-//鎻愮ず淇℃伅
-const MessageShow = (content, type = 'success') => {
- ElMessage({
- message: content,
- type: type,
- showClose: true,
- })
-}
-
-//鎿嶄綔纭绫讳俊鎭細鎿嶄綔绫诲瀷锛屾彁绀哄唴瀹癸紝鎻愮ず鏍囧ご锛屾彁绀虹被鍨�
-const MessageConfirmShow = (czType, content, title = '鎿嶄綔纭鎻愮ず', type = 'warning') => {
- ElMessageBox.confirm(
- content,
- title,
- {
- cancelButtonText: '鍙栨秷',
- confirmButtonText: '纭畾',
- type: type,
- center: true,
- }
- )
- //鐐瑰嚮浜嗙‘瀹�
- .then(() => {
- return logicExecute(czType);
-
- })
- //鐐瑰嚮浜嗗彇娑�
- .catch(() => {
- return false;
- })
-}
-
-</script>
-
-
-<style scoped>
-:deep(.v-column-label div span) {
- font-weight: bold;
-}
-
-
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/TL/Temperedlayout/SelectLayout.vue b/UI-Project/src/views/TL/Temperedlayout/SelectLayout.vue
deleted file mode 100644
index d53cd15..0000000
--- a/UI-Project/src/views/TL/Temperedlayout/SelectLayout.vue
+++ /dev/null
@@ -1,176 +0,0 @@
-<script setup>
-
-import {reactive} from "vue";
-import {useRouter} from 'vue-router'
-let router=useRouter()
-const getTableRow = (row,type) =>{
- switch (type) {
- case 'edit' :{
- //alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑缂栬緫淇℃伅')
- router.push({path: '/main/ingredients/CreateIngredients', query: { id: row.id }})
- break
- }
- case 'delete':{
- alert('鎴戞帴鏀跺埌瀛愮粍浠朵紶閫佺殑鍒犻櫎淇℃伅')
- break
- }
- }
-}
-
-
-
-//瀛愮粍浠舵帴鏀跺弬鏁�
-
-const gridOptions = reactive({
- border: "full",//琛ㄦ牸鍔犺竟妗�
- keepSource: true,//淇濇寔婧愭暟鎹�
- align: 'center',//鏂囧瓧灞呬腑
- stripe:true,//鏂戦┈绾�
- rowConfig: {isCurrent: true, isHover: true,height: 50},//榧犳爣绉诲姩鎴栭�夋嫨楂樹寒
- id: 'CustomerList',
- showFooter: true,//鏄剧ず鑴�
- printConfig: {},
- importConfig: {},
- exportConfig: {},
- scrollY:{ enabled: true },//寮�鍚櫄鎷熸粴鍔�
- showOverflow:true,
- columnConfig: {
- resizable: true,
- useKey: true
- },
- filterConfig: { //绛涢�夐厤缃」
- remote: true
- },
- customConfig: {
- storage: true
- },
- editConfig: {
- trigger: 'click',
- mode: 'row',
- showStatus: true
- },//琛ㄥご鍙傛暟
- columns:[
- {type:'expand',fixed:"left",slots: { content:'content' },width: '50'},
- // { type: 'checkbox',fixed:"left", title: '閫夋嫨', width: '80' },
- {title: '鎿嶄綔', width: '110', slots: { default: 'button_slot' },fixed:"left"},
- { type: 'seq',fixed:"left", title: '鑷簭', width: '80' },
- {field: 'materialCode', width:'150', title: '鐗╂枡缂栫爜', sortable: true,editRender: { name: 'input', attrs: { placeholder: '' } } },
- {field: 'materialName', width: '150',title: '鐗╂枡鍚嶇О', sortable: true,showOverflow:"ellipsis" ,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
- {field: 'origin', width: '120',title: '浜у湴', sortable: true,filters:[{ data: '' }],slots: { filter: 'num1_filter' }},
- {field: 'width', width: '100',title: '瀹藉害', sortable: true},
- {field: 'height',width: '100', title: '楂樺害', sortable: true,showOverflow:"ellipsis"},
- {field: 'thickness', width: '80',title: '鍘氬害', sortable: true},
- {field: 'model',width: '100', title: '鍨嬪彿', sortable: true},
- {field: 'conversionRate', width: '100',title: '鎹㈢畻鐜�', sortable: true},
- {field: 'unit',width: '100', title: '鍗曚綅', sortable: true},
- {field: 'conversionUnit', width: '80',title: '鎹㈢畻鍗曚綅', sortable: true},
- {field: 'shelfLife',width: '100', title: '淇濊川鏈�', sortable: true},
- {field: 'weight', width: '100',title: ' 閲嶉噺', sortable: true},
- {field: 'quantity',width: '110', title: '鏁伴噺', sortable: true},
- {field: 'inventoryOrganization',width: '100', title: '搴撳瓨缁勭粐', sortable: true},
- {field: 'remark',width: '80', title: '澶囨敞', sortable: true},
-
- ],//琛ㄥご鎸夐挳
- toolbarConfig: {
-
- import: false,
- export: true,
- print: true,
- zoom: true,
- custom: true
- },
- data: [
- {
- "materialCode": 700900000000941,
- "materialName": "涓濊闃叉檼鎵嬪濂楄",
- "origin": "00",
- "width": "00",
- "height": "00",
- "thickness":'00',
- "model": "鏈嶉グ",
- "conversionRate": "1000",
- "unit": "鍙�",
- "conversionUnit": "1",
- "shelfLife": "12涓湀",
- "weight": "0.0000",
- "quantity": "10000",
- "inventoryOrganization": "浜哄伐搴�",
- "remark": "娴嬭瘯",
- },
- {
- "materialCode": 700900000000941,
- "materialName": "涓濊闃叉檼鎵嬪濂楄",
- "origin": "00",
- "width": "00",
- "height": "00",
- "thickness":'00',
- "model": "鏈嶉グ",
- "conversionRate": "1000",
- "unit": "鍙�",
- "conversionUnit": "1",
- "shelfLife": "12涓湀",
- "weight": "0.0000",
- "quantity": "10000",
- "inventoryOrganization": "浜哄伐搴�",
- "remark": "娴嬭瘯",
- },
- ],//table body瀹為檯鏁版嵁
- footerMethod ({ columns, data }) {//椤佃剼鍑芥暟
- return[
- columns.map((column, columnIndex) => {
- if (columnIndex === 0) {
- return '鍚堣:'
- }
- // if (props.tableProp.footList.includes(column.field)) {
- // return sumNum(data, column.field)
- // }
- return ''
- })
- ]
- }
-
-})
-
-
-
-</script>
-
-<template>
- <div class="main-div-customer">
- <vxe-grid
- max-height="100%"
- @filter-change="filterChanged"
- class="mytable-scrollbar"
- ref="xGrid"
- v-bind="gridOptions"
-
- >
- <!-- @toolbar-button-click="toolbarButtonClickEvent"-->
- <!-- 涓嬫媺鏄剧ず鎵�鏈変俊鎭彃妲�-->
-
-
- <!--宸﹁竟鍥哄畾鏄剧ず鐨勬彃妲�-->
- <template #button_slot="{ row }">
- <el-button @click="getTableRow(row,'edit')" link type="primary" size="small">缂栬緫</el-button>
- <el-button @click="getTableRow(row,'delete')" link type="primary" size="small">鍒犻櫎</el-button>
- </template>
- <!-- 涓嬫媺璇︽儏寰幆鏄剧ず涓枃 -->
- <template #num1_filter="{ column, $panel }">
- <div>
- <div v-for="(option, index) in column.filters" :key="index">
- <input type="type" v-model="option.data" @input="changeFilterEvent($event, option, $panel)"/>
- </div>
- </div>
- </template>
-
-
- </vxe-grid>
- </div>
-</template>
-
-<style scoped>
-.main-div-customer{
- width: 99%;
- height: 100%;
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/TL/Temperedlayout/Temperedlayout.vue b/UI-Project/src/views/TL/Temperedlayout/Temperedlayout.vue
deleted file mode 100644
index 9fc3091..0000000
--- a/UI-Project/src/views/TL/Temperedlayout/Temperedlayout.vue
+++ /dev/null
@@ -1,204 +0,0 @@
-<!-- 鐗╂枡璧勬枡 -->
-
-
-<script setup>
-import { ref } from "vue";
-import { ArrowLeftBold, ArrowRight, Search } from "@element-plus/icons-vue";
-import request from "@/utils/request";
-import deepClone from "@/utils/deepClone";
-import { ElMessage } from "element-plus";
-import { useRouter } from "vue-router";
-
-
-const router = useRouter()
-let indexFlag = $ref(1)
-function changeRouter(index) {
- indexFlag = index
-}
-
-
-</script>
-
-<script>
-export default {
- mounted() {
- //鑾峰彇鏁版嵁
- var data="ProcessId="+"P24032508";
- request.get("/TidyUpGlassModule/SelectTerritoryInfo?"+data).then((res) => {
- if (res.code == 200) {
- var StoveCount=0;
- var temperid;
- for(var i=0;i<res.data.length;i++){
- if (temperid != res.data[i].layoutid) {
- StoveCount++;
- temperid=res.data[i].layoutid;
- }
- }
- // console.log(res.data);
- this.CanvaDraws("mycanvas",res.data,StoveCount);
-
- } else {
- ElMessage.warning(res.msg)
- router.push("/login")
- }
- });
-
-
-
- },
- methods: {
- //Canva(id,鍩虹鏁版嵁,椤甸潰闀匡細瀹為檯闀匡紝鏄剧ず琛屽唴鐗堝浘鏁帮紝 )
- //鍩虹鏁版嵁锛氬疄闄呯倝闀�,瀹為檯鐐夊, 灏忕墖X杞�, 灏忕墖y杞�, 灏忕墖闀�, 灏忕墖瀹斤紝鏄剧ず鏁版嵁锛堝昂瀵�,ID,娴佺▼鍗″彿,鐗堝浘鍙凤級
- CanvaDraws(id,Datas,StoveCount) {
- //var StoveCount=43;//鐐夋暟
- var ArrangementMode='linefeed';//鎺掑竷鏂瑰紡锛歭inefeed(鎹㈣) /Wholeline 鏁磋
- var RowMaxCount=4;//姣忚鏈�澶氭樉绀虹殑鍥炬暟
- var StoveWidth=3000; //瀹為檯鐐夊 2850
- var StoveLength=5500;//瀹為檯鐐夐暱 5000
- var StoveColor='#CFC8C5';//鐐夊瓙鑳屾櫙棰滆壊
-
-
- var StoveIntervalX=30; //椤甸潰姣忎竴鐐変箣闂寸殑闂磋窛X px
- var StoveIntervalY=50; //椤甸潰姣忎竴鐐変箣闂寸殑闂磋窛Y px
-
- var HtmlWidth=1800; //椤甸潰妯悜
- //var actualWidth=12000;//椤甸潰妯悜鎵�瀵瑰簲鐨勫疄闄呴暱搴�
- var actualWidth=StoveWidth*RowMaxCount;//椤甸潰妯悜鎵�瀵瑰簲鐨勫疄闄呴暱搴�
-
- var Bli = actualWidth / (HtmlWidth-StoveIntervalX*RowMaxCount);//姣斾緥锛氬疄闄呴暱搴m/椤甸潰闀垮害px
-
- var StoveCross=StoveWidth/Bli; //椤甸潰鐐夊瓙妯悜 鍍忕礌
- var StoveVertical=StoveLength/Bli;//椤甸潰鐐夊瓙绾靛悜 鍍忕礌
-
- var Font1=(StoveCross*0.05);
- var Font2=(StoveCross*0.028);
- // var TerritoryWidth=dataTempered.loadwidth; //瀹為檯鐗堝浘瀹�
- // var TerritoryLength=dataTempered.loadlength;//瀹為檯鐗堝浘闀�
- // var TerritoryColor='#0DB637';//鐗堝浘鑳屾櫙棰滆壊
-
- // var TerritoryCross=TerritoryWidth/Bli; //椤甸潰鐗堝浘妯悜 鍍忕礌
- // var TerritoryVertical=TerritoryLength/Bli;//椤甸潰鐗堝浘绾靛悜 鍍忕礌
- console.log(Font1);
-
- var canva = this.$refs[id];
- var content = canva.getContext('2d');
- canva.width = HtmlWidth;
- canva.height = StoveCount%RowMaxCount==0?((StoveVertical+StoveIntervalY)*(StoveCount/RowMaxCount)):((StoveVertical+StoveIntervalY)*(StoveCount/RowMaxCount+1));
- //console.log(StoveCount%RowMaxCount==0?((StoveVertical+StoveIntervalY)*(StoveCount/RowMaxCount)):((StoveVertical+StoveIntervalY)*(StoveCount/RowMaxCount+1)) );
- var temperid;//鍒濆鐗堝浘
- var Xlayout = 0; //鐐夊瓙X杞磋捣鐐�
- var Ylayout = StoveIntervalY; //鐐夊瓙Y杞磋捣鐐�
- var layoutCount = 0;//鐗堝浘鏁�
- var row=0;
- for (var i = 0; i < Datas.length; i++) {
- var dataTempered = Datas[i];
-
- var TerritoryWidth=dataTempered.loadwidth; //瀹為檯鐗堝浘瀹�
- var TerritoryLength=dataTempered.loadlength;//瀹為檯鐗堝浘闀�
- var TerritoryColor='#0DB637';//鐗堝浘鑳屾櫙棰滆壊
-
- var TerritoryCross=TerritoryWidth/Bli; //椤甸潰鐗堝浘妯悜 鍍忕礌
- var TerritoryVertical=TerritoryLength/Bli;//椤甸潰鐗堝浘绾靛悜 鍍忕礌
-
- if (temperid != dataTempered.layoutid) {
- //鐢荤増鍥� 鏇存敼鍩虹鍊嶆暟
- if(layoutCount>0){
- Xlayout += StoveCross + StoveIntervalX;
- if (layoutCount %RowMaxCount== 0) {
- //鎹㈣
- Ylayout += StoveVertical+StoveIntervalY;
- Xlayout=0;
- row++;
- }
- }
- temperid=dataTempered.layoutid;
- layoutCount++;
- content.font ='bold '+Font1+'px Arial' ; //鏂囧瓧鏍峰紡锛氬姞绮� 16鍍忕礌 瀛椾綋Arial
- content.fillStyle = '#000000'; //瀛椾綋棰滆壊
- content.textAlign = 'center'; //鏂囧瓧灞呬腑
- content.fillText((dataTempered.layoutid), (StoveCross / 2+ Xlayout), 50/2+(StoveVertical+50)*row+10);
- //鐐夊瓙
- content.fillStyle = StoveColor;
- content.fillRect(Xlayout, Ylayout, StoveCross, StoveVertical);
- //鐗堝浘
- content.fillStyle = TerritoryColor;
- content.fillRect(Xlayout, Ylayout, TerritoryCross, TerritoryVertical);
- }
-
- var Rx = dataTempered.xaxis / Bli + Xlayout;
- var Ry = dataTempered.yaxis / Bli + Ylayout;
- var Rwidth = dataTempered.width / Bli;
- var Rheight = dataTempered.height / Bli;
- var Xwidth;
- var Xheight;
- content.fillStyle = '#5CADFE';
- if (dataTempered.rotateangle != 0) {
- Xwidth = Rwidth;
- Xheight = Rheight;
- } else {
- Xwidth = Rheight;
- Xheight = Rwidth;
- }
- content.fillRect(Rx, Ry, Xwidth, Xheight);
- content.font = 'bold '+Font2+'px Arial' ; //鏂囧瓧鏍峰紡锛氬姞绮� 16鍍忕礌 瀛椾綋Arial
- content.fillStyle = '#000000'; //瀛椾綋棰滆壊
- content.textAlign = 'center'; //鏂囧瓧灞呬腑
-
- content.fillText(('鐗堝浘:'+dataTempered.layoutid+'-'+dataTempered.sort), (Xwidth / 2) + Rx, (Xheight) / 2 + Ry-Font2);
- content.fillText((dataTempered.width + ' * ' + dataTempered.height), (Xwidth / 2) + Rx, (Xheight) / 2 + Ry); //fillText閲岄潰鐨勫彲濉啓鐨勫��(鏂囨湰鍐呭, x鍧愭爣, y鍧愭爣, 鏂囨湰鏈�澶у搴�)
- content.fillText((dataTempered.processid), (Xwidth / 2) + Rx, (Xheight) / 2 + Ry+Font2);
- //content.rotate(30*Math.PI/180);
- content.stroke();
- }
- }
- }
-}
-
-
-</script>
-
-
-
-<template>
- <div ref="content">
- <canvas ref="mycanvas"></canvas>
- </div>
-</template>
-
-<style scoped>
-#main {
- width: 100%;
- height: 100%;
-}
-
-
-
-#div-title {
- height: 5%;
- width: 100%;
-}
-
-#searchButton {
- margin-top: -5px;
- margin-left: 1rem;
-}
-
-#searchButton1 {
- /* margin-left: 10rem; */
-}
-
-/*main-body鏍峰紡*/
-#main-body {
- width: 99%;
- height: 92%;
- margin-top: 1%;
-}
-
-#select {
- margin-left: 0.5rem;
-}
-
-:deep(.indexTag .el-breadcrumb__inner) {
- color: #5CADFE !important;
-}
-</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
index 9d6e547..2795d46 100644
--- a/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
+++ b/UI-Project/src/views/UnLoadGlass/loadmachinerack.vue
@@ -1,38 +1,166 @@
<script setup>
import {Search} from "@element-plus/icons-vue";
-import {reactive} from "vue";
+import {reactive, onMounted} from "vue";
import {useRouter} from "vue-router"
const router = useRouter()
-const dialogFormVisiblea = ref(false)
import { ref } from 'vue'
import { ElMessage, ElMessageBox } from 'element-plus'
import Landingindication from "./Landingindication.vue";
-// import Landingindicationtwo from "./Landingindicationtwo.vue";
+import Landingindicationtwo from "./Landingindicationtwo.vue";
+import unloadrequest from "@/utils/unloadrequest";
+const dialogFormVisiblea = ref(false)
-const tableData = [
- {
- id: '1',
- long: '1005',
- wide: '183.6',
- thick: '1991',
- state: '鏈惎鐢�',
- },
- {
- id: '2',
- long: '105',
- wide: '183',
- thick: '191',
- state: '鏈惎鐢�'
- },
- {
- id: '2',
- long: '105',
- wide: '183',
- thick: '191',
- state: '鏈惎鐢�'
- },
-]
+
+
+const dialogFormVisiblea2 = ref(false)
+
+
+const tableData = reactive([]);
+
+
+
+
+
+// 鏁版嵁
+const loading = ref(false);
+
+
+// 寮规鏄剧ず鎺у埗
+
+const dialogFormVisible = ref(false);
+
+// 琛ㄥ崟鏁版嵁
+const workstationId = ref('');
+const flowCardId = ref('');
+const flowCardOptions = ref([]);
+
+
+// 鏂规硶
+const handleSelectionChange = () => {
+ // 澶勭悊琛ㄦ牸琛岄�夋嫨浜嬩欢
+};
+
+const handleBindRack = (row) => {
+ workstationId.value = row.workstationId; // 鍋囪rackNumber鏄灦鍙峰瓧娈电殑灞炴�у悕
+
+ // 鍙戣捣鎺ュ彛璇锋眰鑾峰彇娴佺▼鍗″彿
+ fetchFlowCardId();
+
+
+ dialogFormVisiblea.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
+};
+
+
+
+//鑾峰彇娴佺▼鍗″彿
+const fetchFlowCardId = async () => {
+ try {
+ const response = await unloadrequest.get('/api/downWorkstation/getflowCardId');
+ console.log(response)
+ if (response.code === 200) {
+ flowCardOptions.value = response.data.map(item => ({ flowcard_id: item.flowcard_id }));
+ } else {
+ ElMessage.error(response.msg);
+ }
+ } catch (error) {
+ console.error(error);
+ }
+};
+//纭
+const handleConfirm = async () => {
+ try {
+ const response = await unloadrequest.post('/api/downWorkstation/updateFlowCardId', {
+ workstationId: workstationId.value,
+ flowCardId: flowCardId.value
+ });
+
+ console.log(response)
+ if (response.code == 200) {
+ // 缁戝畾鎴愬姛锛屽鐞嗛�昏緫
+ console.log('缁戝畾鎴愬姛');
+ ElMessage.success(response.message);
+ dialogFormVisiblea.value = false;
+ } else {
+ // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
+ ElMessage.error(response.msg);
+ }
+ } catch (error) {
+ // 澶勭悊閿欒
+ console.error(error);
+ }
+};
+
+
+
+const handleBindRack2 = (row) => {
+ workstationId.value = row.workstationId; // 鍋囪rackNumber鏄灦鍙峰瓧娈电殑灞炴�у悕
+
+
+
+
+ dialogFormVisiblea2.value = true; // 鎵撳紑缁戝畾鏋跺瓙瀵硅瘽妗�
+};
+//娓呴櫎鍐呭
+const handleclear = async () => {
+ try {
+ const response = await unloadrequest.post('/api/downWorkstation/clear', {
+ workstationId: workstationId.value,
+ });
+
+ console.log(response);
+
+ if (response.code === 200) {
+ // 娓呴櫎鎴愬姛鐨勯�昏緫
+ console.log('娓呴櫎鎴愬姛');
+ ElMessage.success(response.message);
+ dialogFormVisiblea2.value = false;
+ } else if (response.code === 400) {
+ // 娓呴櫎澶辫触鐨勯�昏緫
+ console.log('娓呴櫎澶辫触');
+ console.log(response.message); // 鎵撳嵃鏈嶅姟鍣ㄨ繑鍥炵殑閿欒淇℃伅
+ ElMessage.error(response.message);
+ dialogFormVisiblea2.value = false;
+ }
+ } catch (error) {
+ // console.log(error);
+ ElMessage.error("娓呴櫎澶辫触");
+ dialogFormVisiblea2.value = false;
+ }
+};
+
+
+
+
+
+// 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰
+const fetchTableData = async () => {
+ try {
+ // 鍙戦�佽幏鍙栬〃鏍兼暟鎹殑璇锋眰锛屽苟绛夊緟鍝嶅簲
+ const response = await unloadrequest.get('/api/downWorkstation/getone');
+
+ // 妫�鏌ュ搷搴旂姸鎬�
+ if (response.code === 200) {
+ // 鏇存柊琛ㄦ牸鏁版嵁
+ console.log('鎴愬姛鑾峰彇琛ㄦ牸鏁版嵁:', response.data);
+ tableData.splice(0, tableData.length, ...response.data);
+ } else {
+ // 璇锋眰澶辫触锛屾樉绀洪敊璇秷鎭�
+ ElMessage.error(response.msg);
+ }
+ } catch (error) {
+ // 澶勭悊璇锋眰澶辫触鐨勬儏鍐�
+ ElMessage.error('鑾峰彇琛ㄦ牸鏁版嵁澶辫触锛岃閲嶈瘯');
+ }
+};
+
+
+
+
+// initWebSocket();
+onMounted(fetchTableData);
+ setInterval(fetchTableData, 2000)
+
const open = () => {
ElMessageBox.confirm(
'鏄惁鍒犻櫎璇ユ潯淇℃伅?',
@@ -108,6 +236,10 @@
],
})
+
+
+
+
</script>
<template>
@@ -117,53 +249,80 @@
<el-table height="100%" ref="table"
@selection-change="handleSelectionChange"
:data="tableData" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}">
- <el-table-column prop="id" align="center" label="涓嬬墖浣�" min-width="80" />
- <el-table-column prop="long" align="center" label="鏋跺彿" min-width="120" />
- <el-table-column prop="wide" align="center" label="娴佺▼鍗″彿" min-width="120" />
- <el-table-column prop="wide" align="center" label="鎬绘暟閲�" min-width="120" />
- <el-table-column prop="wide" align="center" label="宸茶惤鏋舵暟閲�" min-width="120" />
- <el-table-column prop="state" align="center" label="鍚敤鐘舵��" min-width="120" />
+ <el-table-column prop="workstationId" align="center" label="涓嬬墖浣�" min-width="80" />
+ <el-table-column prop="workstationId" align="center" label="鏋跺彿" min-width="120" />
+ <el-table-column prop="flowCardId" align="center" label="娴佺▼鍗″彿" min-width="120" />
+ <el-table-column prop="totalquantity" align="center" label="鎬绘暟閲�" min-width="120" />
+ <el-table-column prop="racksnumber" align="center" label="宸茶惤鏋舵暟閲�" min-width="120" />
+ <el-table-column prop="work_state" align="center" label="鐘舵��" min-width="120" />
+ <el-table-column prop="deviceId" align="center" label="璁惧鍙�" min-width="120" />
+ <el-table-column prop="enableState" align="center" label="鍚敤鐘舵��" min-width="120" />
<el-table-column fixed="right" label="鎿嶄綔" align="center" width="200">
- <template #default>
- <el-button size="mini" type="text" plain v-show="state !== '宸插惎鐢�' " @click="dialogFormVisiblea = true">缁戝畾鏋跺瓙</el-button>
- <el-button size="mini" type="text" plain @click="dialogFormVisible = true">娓呯┖</el-button>
- </template>
+ <template #default="scope">
+ <el-button size="mini" type="text" plain v-show="scope.row.enableState !== '宸插惎鐢�' " @click="handleBindRack(scope.row)">缁戝畾鏋跺瓙</el-button>
+ <el-button size="mini" type="text" plain @click="handleBindRack2(scope.row)">娓呯┖</el-button>
+ </template>
</el-table-column>
</el-table>
</div>
</el-card>
-
- </div>
- <div style="display: flex;">
- <div id="main-body">
- <Landingindication></Landingindication>
- </div>
- <!-- <div id="main-bodya">
- <Landingindicationtwo></Landingindicationtwo>
- </div> -->
- </div>
+
+
<el-dialog v-model="dialogFormVisiblea" top="21vh" width="30%" title="缁戝畾鏋跺瓙" >
<div style="margin-left: 50px;margin-top: 10px;margin-bottom: 10px;">
- <el-form size="mini" label-width="150px">
- <el-form label-width="100px" label-position="right">
- <el-form-item label="鏋跺彿锛�" :required="true" style="width: 18vw">
- <el-input autocomplete="off"/>
- </el-form-item>
- <el-form-item label="娴佺▼鍗″彿锛�" :required="true" style="width: 18vw;">
- <el-input autocomplete="off" />
- </el-form-item>
- </el-form>
- </el-form>
- </div>
+ <el-form size="mini" label-width="150px">
+ <el-form label-width="100px" label-position="right">
+ <el-form-item label="鏋跺彿锛�" :required="true" style="width: 18vw">
+ <el-input v-model="workstationId" autocomplete="off"/>
+ </el-form-item>
+ <el-form-item label="娴佺▼鍗″彿锛�" :required="true" style="width: 18vw;">
+ <el-select v-model="flowCardId" placeholder="璇烽�夋嫨娴佺▼鍗″彿">
+ <el-option v-for="item in flowCardOptions" :key="item.flowcard_id" :label="item.flowcard_id" :value="item.flowcard_id" />
+ </el-select>
+ </el-form-item>
+ </el-form>
+ </el-form>
+ </div>
<template #footer>
<div id="dialog-footer">
- <el-button type="primary" @click="dialogFormVisiblea = false">
+ <el-button type="primary" @click="handleConfirm">
纭
</el-button>
<el-button @click="dialogFormVisiblea = false">鍙栨秷</el-button>
</div>
</template>
</el-dialog>
+
+
+
+
+ <el-dialog v-model="dialogFormVisiblea2" top="21vh" width="30%" title="娓呴櫎鏋跺瓙鐜荤拑" >
+
+ <template #footer>
+ <div id="dialog-footer">
+ <el-button type="primary" @click="handleclear">
+ 纭
+ </el-button>
+ <el-button @click="dialogFormVisiblea2 = false">鍙栨秷</el-button>
+ </div>
+ </template>
+ </el-dialog>
+
+
+ <!-- workstationId: '1',
+ workstationId: '1005',
+ flowCardId: '183.6',
+ totalquantity: '1991',
+ racksnumber:"1",
+ work_state: '寰呰瘑鍒�', -->
+ </div>
+ <div style="display: flex;">
+ <div id="main-body">
+ <Landingindication></Landingindication>
+ </div>
+ <div id="main-bodya">
+ <Landingindicationtwo></Landingindicationtwo>
+ </div></div>
</template>
<style scoped>
@@ -188,6 +347,10 @@
}
#main-body{
margin-top: -20px;
- margin-left: 450px;
+ margin-left: 300px;
+}
+#main-bodya{
+ margin-top: -10px;
+ margin-left: 100px;
}
</style>
\ No newline at end of file
diff --git a/UI-Project/src/views/UnLoadGlass/loadmachineracktwo.vue b/UI-Project/src/views/UnLoadGlass/loadmachineracktwo.vue
index cd181fc..7219413 100644
--- a/UI-Project/src/views/UnLoadGlass/loadmachineracktwo.vue
+++ b/UI-Project/src/views/UnLoadGlass/loadmachineracktwo.vue
@@ -26,7 +26,21 @@
state: '鏈惎鐢�'
},
{
- id: '2',
+ id: '3',
+ long: '105',
+ wide: '183',
+ thick: '191',
+ state: '鏈惎鐢�'
+ },
+ {
+ id: '4',
+ long: '105',
+ wide: '183',
+ thick: '191',
+ state: '鏈惎鐢�'
+ },
+ {
+ id: '5',
long: '105',
wide: '183',
thick: '191',
diff --git a/UI-Project/vite.config.js b/UI-Project/vite.config.js
index b0685b2..d4d6ee2 100644
--- a/UI-Project/vite.config.js
+++ b/UI-Project/vite.config.js
@@ -16,25 +16,36 @@
}
},
server: {
- port: 801,//绔彛鍙�
- host: true,//ip鍦板潃 鎴� '0.0.0.0' 鎴� "loaclhost"
- open: false, //鍚姩鍚庢槸鍚﹁嚜鍔ㄦ墦寮�娴忚鍣�
- https: false, // 鏄惁寮�鍚� https
+ port: 801,
+ host: true,
+ open: false,
+ https: false,
proxy: {
- '^/api': {
- target: 'localhost:8080/mesModuleTools', //鐩爣婧愶紝鐩爣鏈嶅姟鍣紝鐪熷疄璇锋眰鍦板潃
- changeOrigin: true, //鏀寔璺ㄥ煙
- rewrite: (path) => path.replace(/^\/api/, "/mesModuleTools"), //閲嶅啓鐪熷疄璺緞,鏇挎崲/api
- // pathRewrite: {
- // '^/api': ''
- // }
- // rewrite: (path) => path.replace(/^\/api/, "/mesModuleTools"), //閲嶅啓鐪熷疄璺緞,鏇挎崲/api
+ '/api': {
+ target: 'http://localhost:8080/mesModuleTools',
+ changeOrigin: true,
+ rewrite: (path) => path.replace(/^\/api/, '/mesModuleTools'),
},
'/api2': {
- target: 'localhost:8080/mesModuleTools',
+ target: 'http://localhost:8081/mesModuleTools',
changeOrigin: true,
- rewrite: (path) => path.replace(/^\/api2/, "mesModuleTools"),
+ pathRewrite: {
+ '^/api2': '',
+ },
},
- }
- }
-})
+ },
+ },
+ configureServer: ({ middlewares }) => {
+ middlewares.use(
+ '/mesModuleTools',
+ createProxyMiddleware({
+ target: 'ws://localhost:8081',
+ ws: true,
+ changeOrigin: true,
+ pathRewrite: {
+ '^/mesModuleTools': '',
+ },
+ })
+ );
+ },
+});
\ No newline at end of file
diff --git a/UnLoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java b/UnLoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
index d62cad3..f3c1215 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/common/PlcTools/S7control.java
@@ -427,6 +427,11 @@
}
};
+
+
+ public void writeString(String addr,String data) {
+ s7PLC.writeString(addr,data);
+ }
diff --git a/UnLoadGlassModule/src/main/java/com/mes/controller/DownGlassInfoController.java b/UnLoadGlassModule/src/main/java/com/mes/controller/DownGlassInfoController.java
index 085e400..01870af 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/controller/DownGlassInfoController.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/controller/DownGlassInfoController.java
@@ -15,7 +15,12 @@
@Autowired
private DownGlassInfoService downGlassInfoService;
- // 鑾峰彇鎸囧畾ID鐨凞ownGlassInfo淇℃伅
+ /**
+ * @param id
+ * @return
+ * // 鑾峰彇鎸囧畾ID鐨凞ownGlassInfo淇℃伅
+ */
+
@GetMapping("/{id}")
public DownGlassInfo getDownGlassInfoById(@PathVariable Integer id) {
return downGlassInfoService.getDownGlassInfoById(id);
diff --git a/UnLoadGlassModule/src/main/java/com/mes/controller/DownWorkstationController.java b/UnLoadGlassModule/src/main/java/com/mes/controller/DownWorkstationController.java
new file mode 100644
index 0000000..46f7085
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/controller/DownWorkstationController.java
@@ -0,0 +1,125 @@
+package com.mes.controller;
+
+import com.mes.entity.DownWorkstation;
+import com.mes.service.DownWorkstationService;
+import com.mes.service.GlassInfoService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.http.HttpStatus;
+import org.springframework.http.ResponseEntity;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+@RestController
+@RequestMapping("/api/downWorkstation")
+public class DownWorkstationController {
+
+ @Autowired
+ private DownWorkstationService downWorkstationService;
+ @Autowired
+ private GlassInfoService glassInfoService;
+
+ @GetMapping("/getone")
+ public ResponseEntity<?> getOneDownWorkstations() {
+ try {
+ List<DownWorkstation> data = downWorkstationService.getoneDownWorkstations();
+ // 鏋勫缓绗﹀悎棰勬湡鏍煎紡鐨勫搷搴旀暟鎹�
+ Map<String, Object> responseData = new HashMap<>();
+ responseData.put("code", 200);
+ responseData.put("msg", "鎴愬姛");
+ responseData.put("data", data);
+ // 杩斿洖 ResponseEntity 瀵硅薄锛屽寘鍚搷搴旀暟鎹拰鐘舵�佺爜
+ return ResponseEntity.ok(responseData);
+ } catch (Exception e) {
+ e.printStackTrace();
+ // 濡傛灉鍑虹幇寮傚父锛岃繑鍥為敊璇俊鎭�
+ Map<String, Object> errorResponse = new HashMap<>();
+ errorResponse.put("code", 500);
+ errorResponse.put("msg", "鏈嶅姟鍣ㄥ唴閮ㄩ敊璇�");
+ return ResponseEntity.status(500).body(errorResponse);
+ }
+ }
+
+ @GetMapping("/gettwo")
+ public List<DownWorkstation> gettwoDownWorkstations() {
+ return downWorkstationService.gettwoDownWorkstations();
+ }
+ @GetMapping("/getflowCardId")
+ public ResponseEntity<Map<String, Object>> getflowCardId() {
+ Map<String, Object> responseData = new HashMap<>();
+ try {
+ List<Map<String, Object>> data = downWorkstationService.getflowCardId();
+ responseData.put("code", 200);
+ responseData.put("msg", "鎴愬姛");
+ responseData.put("data", data);
+ return ResponseEntity.ok(responseData);
+ } catch (Exception e) {
+ responseData.put("code", 500);
+ responseData.put("msg", "澶辫触");
+ responseData.put("data", null);
+ return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(responseData);
+ }
+ }
+
+
+
+
+ @PostMapping("/updateFlowCardId")
+ public ResponseEntity<Map<String, Object>> updateFlowCardId(@RequestBody Map<String, Object> requestData) {
+ // 浠� requestData 涓幏鍙栦紶鍏ョ殑 flowCardId
+ String flowCardId = (String) requestData.get("flowCardId");
+ int workstationId = (int) requestData.get("workstationId");
+
+ // 鏌ヨ瀵瑰簲 flowCardId 鐨勭幓鐠冧俊鎭�绘暟閲�
+ int glassInfoCount = glassInfoService.getGlassInfoCountByFlowCardId(flowCardId);
+
+ // 鏇存柊 down_workstation 琛ㄤ腑鐨勬�绘暟閲�
+ glassInfoService.updateFlowCardIdAndCount(flowCardId, glassInfoCount, workstationId);
+
+ // 鏋勫缓鍝嶅簲鏁版嵁
+ Map<String, Object> responseData = new HashMap<>();
+ responseData.put("message", "updated successfully");
+ responseData.put("code", 200);
+ // 杩斿洖澶勭悊缁撴灉
+ return ResponseEntity.ok(responseData);
+ }
+
+
+ @PostMapping("/clear")
+ public ResponseEntity<Map<String, Object>> clearWorkstationInfo(@RequestBody Map<String, Object> requestData) {
+ // 璋冪敤 DownWorkstationService 涓殑鏂规硶娓呴櫎鎸囧畾宸ヤ綅ID鐨勪俊鎭�
+ int workstationId = (int) requestData.get("workstationId");
+
+ int totalWorkstations = downWorkstationService.getTotalQuantity(workstationId);
+ int downWorkstations = downWorkstationService.getRacksNumber(workstationId);
+
+
+ if (downWorkstations == totalWorkstations) {
+ downWorkstationService.clearFlowCardId(workstationId);
+ Map<String, Object> responseData = new HashMap<>();
+ responseData.put("message", "cleared successfully");
+ responseData.put("code", 200);
+ // 杩斿洖澶勭悊缁撴灉
+ return ResponseEntity.ok(responseData);
+ }
+ else {
+ // 濡傛灉鎬绘暟閲忓拰钀芥灦鏁伴噺涓嶄竴鑷达紝杩斿洖閿欒鍝嶅簲
+ Map<String, Object> errorResponse = new HashMap<>();
+ errorResponse.put("message", "Total workstations count does not match down workstations count.");
+ errorResponse.put("code", 400);
+ return ResponseEntity.badRequest().body(errorResponse);
+ }
+
+
+ // 鏋勫缓鍝嶅簲鏁版嵁
+
+ }
+
+
+
+
+
+
+}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/controller/OrderTestController.java b/UnLoadGlassModule/src/main/java/com/mes/controller/OrderTestController.java
deleted file mode 100644
index aecbd7f..0000000
--- a/UnLoadGlassModule/src/main/java/com/mes/controller/OrderTestController.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.mes.controller;
-
-import com.mes.mapper.OrderTestMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
-
-//@CrossOrigin //瑙e喅鍗曚釜controller 璺ㄥ煙闂
-@RestController
-@RequestMapping("/order11111111")
-
-public class OrderTestController {
- @Autowired
- private OrderTestMapper orderMapper;
-
-// @GetMapping //鏌ヨorder琛ㄧ粨鏋滈泦
-// public Result index(){
-// return Result.seccess(orderMapper.findAll());
-//
-// }
-//
-// @PostMapping //鎻掑叆
-// public Integer save(@RequestBody Order order) {
-// return orderMapper.insert(order);
-// }
-//
-// @PostMapping("/update")
-// public Integer updateOrder(@RequestBody Order order) {
-// return orderMapper.update(order.getId(),order.getOrderid());
-// }
-//
-// @DeleteMapping("/{id}") //鍒犻櫎鏁版嵁
-// public Integer delete(@PathVariable Integer id) {
-// return orderMapper.deleteById(id);
-// }
-
-
-}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/entity/DownStorageCageDetails.java b/UnLoadGlassModule/src/main/java/com/mes/entity/DownStorageCageDetails.java
index 8e6b6a7..4f631dc 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/entity/DownStorageCageDetails.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/entity/DownStorageCageDetails.java
@@ -2,24 +2,89 @@
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
-
+/**
+ * 涓嬬墖鍓嶇悊鐗囩鏄庣粏瀹炰綋绫�
+ */
+/**
+ * 涓嬬墖鍓嶇悊鐗囩鏄庣粏瀹炰綋绫�
+ * @author SNG-012
+ */
@Data
public class DownStorageCageDetails {
@TableId(type = IdType.AUTO)
- private int id; // 涓嬬墖鍓嶇悊鐗囩鏄庣粏琛╥d
+ /**
+ * 涓嬬墖鍓嶇悊鐗囩鏄庣粏琛╥d
+ */
+ private int id;
- private int deviceId; // 璁惧id
- private int slot; // 鏍呮牸鍙�
- private int glassId; // 鐜荤拑id
- private int sequence; // 灏忕墖鍦ㄦ牸鍐呯殑椤哄簭
- private String flowCardId; // 娴佺▼鍗″彿
- private int glassType; // 鐜荤拑绫诲瀷
- private double width; // 瀹�
- private double height; // 楂�
- private double thickness; // 鍘氬害
- private int temperingLayoutId; // 閽㈠寲鐗堝浘id
- private int temperingFeedSequence; // 閽㈠寲鐗堝浘鐗囧簭
- private int state; // 鐘舵��
- private int gap; // 鐜荤拑闂撮殭
-}
\ No newline at end of file
+ /**
+ * 璁惧id
+ */
+ private int deviceId;
+
+ /**
+ * 鏍呮牸鍙�
+ */
+ private int slot;
+
+ /**
+ * 鐜荤拑id
+ */
+ private int glassId;
+
+ /**
+ * 灏忕墖鍦ㄦ牸鍐呯殑椤哄簭
+ */
+ private int sequence;
+
+ /**
+ * 娴佺▼鍗″彿
+ */
+ private String flowCardId;
+
+ /**
+ * 鑶滅郴id
+ */
+ private int filmsid;
+ /**
+ * 鐜荤拑绫诲瀷
+ */
+ private int glassType;
+
+ /**
+ * 瀹�
+ */
+ private double width;
+
+ /**
+ * 楂�
+ */
+ private double height;
+
+ /**
+ * 鍘氬害
+ */
+ private double thickness;
+
+ /**
+ * 閽㈠寲鐗堝浘id
+ */
+ private int temperingFeedSequence;
+
+ /**
+ * 閽㈠寲鐗堝浘鐗囧簭
+ */
+ private int temperingLayoutId;
+
+ /**
+ * 鐘舵��
+ */
+ private int state;
+
+ /**
+ * 鐜荤拑闂撮殭
+ */
+ private int gap;
+}
+
diff --git a/UnLoadGlassModule/src/main/java/com/mes/entity/DownWorkstation.java b/UnLoadGlassModule/src/main/java/com/mes/entity/DownWorkstation.java
index 524d865..3c15a9d 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/entity/DownWorkstation.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/entity/DownWorkstation.java
@@ -1,20 +1,56 @@
package com.mes.entity;
import com.baomidou.mybatisplus.annotation.IdType;
- import com.baomidou.mybatisplus.annotation.TableId;
- import lombok.Data;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
@Data
public class DownWorkstation {
+ /**
+ * // 涓嬬墖宸ヤ綅琛�
+ */
@TableId(type = IdType.AUTO)
- private int id; // 涓嬬墖宸ヤ綅琛╥d
- private Integer workstationId; // 宸ヤ綅id
- private String flowCardId; // 娴佺▼鍗″彿
- private Integer deviceId; // 璁惧id
- private Integer enableState; // 鍚敤鐘舵��
- private Integer workState; // 宸ヤ綔鐘舵��
- private Integer racks_number; // 宸茶惤鏋舵暟閲�
- private Integer total_quantity; // 鎬绘暟閲�
+ private int id;
+
+ /**
+ * // 宸ヤ綅id
+ */
+ private Integer workstationId;
+
+ /**
+ * // 娴佺▼鍗″彿
+ */
+ private String flowCardId;
+
+ /**
+ * // 璁惧id
+ */
+ private Integer deviceId;
+
+ /**
+ * // 鍚敤鐘舵��
+ */
+ private Integer enableState;
+
+
+
+ /**
+ * // 宸ヤ綔鐘舵��
+ */
+ private Integer workState;
+
+ /**
+ * // 宸茶惤鏋舵暟閲�
+ */
+ @TableField(value = "racks_number")
+ private int racksnumber;
+
+ /**
+ * // 鎬绘暟閲�
+ */
+ @TableField(value = "total_quantity")
+ private Integer totalquantity;
}
\ No newline at end of file
diff --git a/TemperingGlassModule/src/main/java/com/mes/entity/EdgStorageCageDetails.java b/UnLoadGlassModule/src/main/java/com/mes/entity/EdgStorageCageDetails.java
similarity index 100%
rename from TemperingGlassModule/src/main/java/com/mes/entity/EdgStorageCageDetails.java
rename to UnLoadGlassModule/src/main/java/com/mes/entity/EdgStorageCageDetails.java
diff --git a/UnLoadGlassModule/src/main/java/com/mes/entity/GlassInfo.java b/UnLoadGlassModule/src/main/java/com/mes/entity/GlassInfo.java
new file mode 100644
index 0000000..4a46f60
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/entity/GlassInfo.java
@@ -0,0 +1,34 @@
+package com.mes.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.math.BigInteger;
+
+@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
+@TableName("`glass_info`")
+public class GlassInfo {
+ @TableId(type = IdType.AUTO)
+ private BigInteger id;//鐜荤拑淇℃伅琛╥d
+ private String flowcardid;//娴佺▼鍗�
+ private Integer glasstype;//娴佺▼鍗$幓鐠冪被鍨�
+ private Double width;//瀹�
+ private Double height;//楂�
+ private Double thickness;//鍘氬害
+ private Integer filmsid;//鑶滅郴
+ private Double edgwidth;//纾ㄥ墠瀹�
+ private Double edgheight;//纾ㄥ墠楂�
+ private Integer ismultiple;//鏄惁閰嶇墖
+ private Double maxwidth;//閰嶇墖鏈�澶у
+ private Double maxheight;//閰嶇墖鏈�澶ч珮
+ private Integer ishorizontal;//閽㈠寲鏄惁鎺ュ彈妯斁
+ private Integer patternsequence;//鍘熺墖椤哄簭
+ private Integer temperinglayoutid;//閽㈠寲鐗堝浘id
+ private Integer temperingfeedsequence;//閽㈠寲鐗堝浘鐗囧簭
+ private Integer xcoordinate;//x鍧愭爣
+ private Integer ycoordinate;//y鍧愭爣
+ private Integer angle;//鏃嬭浆瑙掑害锛堥�嗘椂閽堬級
+
+}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/entity/OrderTest.java b/UnLoadGlassModule/src/main/java/com/mes/entity/OrderTest.java
deleted file mode 100644
index e8ea030..0000000
--- a/UnLoadGlassModule/src/main/java/com/mes/entity/OrderTest.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package com.mes.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableName;
-import lombok.Data;
-
-@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
-@TableName("`order`")
-public class OrderTest {
- @TableId(type = IdType.AUTO)
- private Integer id;
- private String orderId;
- private String recipeNo;
- private String largeglassNo;
- private String largeglassCompleted;
- private String smallglassNo;
- private String smallglassCompleted;
- private String smallglassProcessing;
- private String smallglassWorn;
- private String orderStatus;
- private String orderMaker;
- private String makeTime;
- private String updateTime;
-
-}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/entity/TaskCache.java b/UnLoadGlassModule/src/main/java/com/mes/entity/TaskCache.java
new file mode 100644
index 0000000..3e02731
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/entity/TaskCache.java
@@ -0,0 +1,22 @@
+package com.mes.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+
+@Data //lombok 绠�鍐檍ava浠g爜 瀹炰綋绫荤殑get涓巗et
+
+public class TaskCache {
+ @TableId(type = IdType.AUTO)
+ private int id;//id
+ private String startCell;//璧峰
+ private String endCell;//缁撴潫
+ private String taskType;//绫诲瀷
+ private double width;//瀹�
+ private double height;//鎼�
+ private String filmsId;//鑶滅郴
+ private double thickness;//鍘氬害
+ private String flowCardId;//娴佺▼鍗″彿
+ private int taskStatus;//鐘舵��
+
+}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java b/UnLoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java
index 0cc7116..4d41978 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/entity/device/PlcParameterInfo.java
@@ -121,4 +121,8 @@
return addressIndex;
}
+
+ public String getAddress() {
+ return getAddress(this.addressIndex);
+ }
}
\ No newline at end of file
diff --git a/UnLoadGlassModule/src/main/java/com/mes/mapper/DownGlassInfoMapper.java b/UnLoadGlassModule/src/main/java/com/mes/mapper/DownGlassInfoMapper.java
index dbd519c..0d213a7 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/mapper/DownGlassInfoMapper.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/mapper/DownGlassInfoMapper.java
@@ -16,10 +16,10 @@
public interface DownGlassInfoMapper extends BaseMapper<DownGlassInfo> {
// 鏌ヨ涓嬬墖浠诲姟琛ㄤ腑鐘舵�佷负1鐨勪笅鐗囦俊鎭�
- @Select("SELECT flow_card_id,filmsid,width,height,thickness FROM down_glass_task WHERE state = 1;")
+ @Select("SELECT flow_card_id,filmsid,width,height,thickness FROM down_glass_task WHERE task_stauts = 1;")
List<DownGlassInfo> selectunloadingtaskstate();
- @Update("UPDATE down_glass_task SET state = 0 WHERE flow_card_id = #{flowCardId}")
+ @Update("UPDATE down_glass_task SET task_stauts = 0 WHERE flow_card_id = #{flowCardId}")
void updateTaskStateToZero(@Param("flowCardId") String flowCardId);
@Select("SELECT MAX(sequence) FROM down_glass_info WHERE flow_card_id = #{flowCardId} LIMIT 1")
diff --git a/UnLoadGlassModule/src/main/java/com/mes/mapper/DownWorkstationMapper.java b/UnLoadGlassModule/src/main/java/com/mes/mapper/DownWorkstationMapper.java
index 163348d..beb867d 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/mapper/DownWorkstationMapper.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/mapper/DownWorkstationMapper.java
@@ -10,6 +10,7 @@
import org.springframework.stereotype.Repository;
import java.util.List;
+import java.util.Map;
@Mapper
@Component
@@ -38,22 +39,58 @@
//浠庢満姊版墜浠诲姟琛ㄦ煡璇㈢姸鎬佷负1鐨勬祦绋嬪崱鍙�
// @Select("SELECT * FROM down_workstation_task WHERE state = 1")
// List<DownWorkstation> selectdownWorkstationstate();
-
- @Select("SELECT dw.flow_card_id,dw.racks_number FROM down_workstation_task dwt JOIN down_workstation dw ON dwt.flow_card_id = dw.flow_card_id WHERE dwt.state = 1 LIMIT 1")
+//鏌ヨ宸ヤ綅琛ㄥ拰浠诲姟琛ㄤ腑鐘舵�佷负1鐨勬祦绋嬪崱鍙峰拰宸茶惤鏋舵暟閲�
+ @Select("SELECT dwt.flow_card_id,dw.id,dw.racks_number FROM down_workstation_task dwt JOIN down_workstation dw ON dwt.flow_card_id = dw.flow_card_id WHERE dwt.state = 1 LIMIT 1")
List<DownWorkstation> selectdownWorkstationstate();
-
+//鏇存柊钀芥灦鏁伴噺
@Update("UPDATE down_workstation SET racks_number = #{racksNumber} " +
"WHERE flow_card_id = #{flowCardId}")
void update_racks_number(@Param("flowCardId") String flowCardId,
@Param("racksNumber") Integer racksNumber);
-
+//鎻掑叆鏈烘浠诲姟琛�
@Insert("INSERT INTO down_workstation_task (flow_card_id, width, height, thickness, filmsid,state) " +
"VALUES (#{flowCardId}, #{width}, #{height}, #{thickness}, #{filmsid},1)")
void insertdownWorkstationtask(DownGlassInfo downGlassInfo);
+//鏍规嵁宸ヤ綅id鏇存柊瀹炰綋绫绘帴鏀剁殑鏁版嵁
+@Update("UPDATE down_workstation SET width = #{width}, height = #{height}, flow_card_id = #{flowCardId} WHERE workstation_id = #{workstationId}")
+void updateFlowCardId(DownWorkstation downWorkstation);
+//婊℃灦鎷夎蛋锛屾竻绌轰俊鎭�
+ @Update("UPDATE down_workstation SET width = null, height = null, flow_card_id = null WHERE workstation_id = #{workstationId}")
+ void clearFlowCardId(DownWorkstation downWorkstation);
+
+
+
+ @Update("UPDATE down_workstation_task SET state = 0 WHERE flow_card_id = #{flowCardId}")
+ void update_task_state_to_zero(@Param("flowCardId") String flowCardId);
+
+
+@Select(" SELECT * FROM down_workstation WHERE workstation_id >= 1 AND workstation_id <= 5")
+ List<DownWorkstation> getoneDownWorkstations();
+
+
+ @Select(" SELECT * FROM down_workstation WHERE workstation_id >= 6 AND workstation_id <= 10")
+ List<DownWorkstation> gettwoDownWorkstations();
+
+
+
+ @Select("SELECT DISTINCT flowcard_id from glass_info")
+ @ResultType(Map.class)
+ List<Map<String, Object>> getflowCardId();
+
+ @Update("UPDATE down_workstation SET flow_card_id = NULL, total_quantity = 0, racks_number = 0 WHERE workstation_id = #{workstationId}")
+ void clearFlowCardInfoByWorkstationId(@Param("workstationId") int workstationId);
+
+ // 鑾峰彇鎬绘暟閲�
+ @Select("SELECT total_quantity FROM down_workstation WHERE workstation_id = #{workstationId}")
+ int getTotalQuantity(@Param("workstationId") int workstationId);
+
+ // 鑾峰彇钀芥灦鏁伴噺
+ @Select("SELECT racks_number FROM down_workstation WHERE workstation_id = #{workstationId}")
+ int getRacksNumber(@Param("workstationId") int workstationId);
}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/mapper/GlassInfoMapper.java b/UnLoadGlassModule/src/main/java/com/mes/mapper/GlassInfoMapper.java
new file mode 100644
index 0000000..9dcc0e6
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/mapper/GlassInfoMapper.java
@@ -0,0 +1,18 @@
+package com.mes.mapper;
+
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
+
+@Mapper
+public interface GlassInfoMapper {
+
+ @Select("SELECT COUNT(*) FROM glass_info WHERE flowcard_id = #{flowCardId}")
+ int getGlassInfoCountByFlowCardId(@Param("flowCardId") String flowCardId);
+
+ @Update("UPDATE down_workstation SET total_quantity = #{glassInfoCount},flow_card_id=#{flowCardId} WHERE workstation_id = #{workstationId}")
+ int updateFlowCardIdAndCount(@Param("flowCardId") String flowCardId, @Param("glassInfoCount") int glassInfoCount,@Param("workstationId")int workstationId);
+
+ // 杩欓噷鍙互娣诲姞鍏朵粬 SQL 璇彞
+}
\ No newline at end of file
diff --git a/UnLoadGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java b/UnLoadGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java
deleted file mode 100644
index d12d4ce..0000000
--- a/UnLoadGlassModule/src/main/java/com/mes/mapper/OrderTestMapper.java
+++ /dev/null
@@ -1,21 +0,0 @@
-package com.mes.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.mes.entity.OrderTest;
-import org.apache.ibatis.annotations.*;
-
-@Mapper
-public interface OrderTestMapper extends BaseMapper<OrderTest> {
-
-// @Select("select * from `order`")
-// List<Order> findAll();
-//
-// @Insert("INSERT `order`(order_id)VALUES(#{order_id})")
-// Integer insert(Order order);
-//
-// @Delete("delete from `order` where id=#{id}")
-// Integer deleteById(@Param("id") Integer id);
-//
-// @Update("update `order` set order_id=#{order_id} where id=#{id}")
-// Integer update(@Param("id") Integer id,@Param("order_id") String order_id);
-}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/mapper/SelectInfo.java b/UnLoadGlassModule/src/main/java/com/mes/mapper/SelectInfo.java
new file mode 100644
index 0000000..beee154
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/mapper/SelectInfo.java
@@ -0,0 +1,74 @@
+package com.mes.mapper;
+
+import com.mes.entity.DownStorageCageDetails;
+import com.mes.entity.GlassInfo;
+import com.mes.entity.TaskCache;
+import org.apache.ibatis.annotations.*;
+
+import java.util.List;
+
+@Mapper
+public interface SelectInfo {
+ // 鐜荤拑淇℃伅 鎸塈D鏌ヨ
+ @Select("select * from `glass_info` where id=#{id}")
+ GlassInfo SelectGlassId(String id);
+
+ // 閽㈠寲鎸夊伐绋嬫煡璇�
+ // @Select("select * from `v_optimize_heat_layout` where project_no=#{projeceid} ")
+// List<Tempered> SelectTemperedTerritory(String projeceid);
+//
+// // 鍒囧壊鐗堝浘鎸夊伐绋嬫煡璇�
+// @Select("select * from optimize_detail where project_no=#{projeceid} ")
+// List<Map> SelectCutTerritory(String projeceid);
+//
+// // 鏌ヨ纾ㄨ竟淇℃伅
+// @Select("select * from task_cache where task_type='2' and task_stauts='2' and end_cell=#{EndCell}")
+// List<Map> SelectEdgInfo(String EndCell);
+
+ // 鏌ヨ绗煎瓙鍐呯┖闂�
+ @Select("select escd.* from down_storage_cage as esc LEFT JOIN down_storage_cage_details as escd on esc.slot=escd.slot where escd.slot is null order by escd.slot")
+ List<DownStorageCageDetails> SelectCacheLeisure();
+
+ // 鏌ヨ绗煎瓙鍐呭嚭鐗囦换鍔�
+ @Select("select escd.* from down_storage_cage as esc LEFT JOIN down_storage_cage_details as escd on esc.slot=escd.slot WHERE escd.slot IS NOT NULL order by escd.tempering_layout_id,escd.tempering_feed_sequence")
+ List<DownStorageCageDetails> SelectCacheOut();
+
+ // 鏌ヨ绗煎瓙鍐呬俊鎭�
+ @Select("select escd.* from down_storage_cage as esc LEFT JOIN down_storage_cage_details as escd on esc.slot=escd.slot order by esc.slot")
+ List<DownStorageCageDetails> SelectCachInfo();
+
+ // 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿
+ @Select("select escd.* from down_storage_cage as esc LEFT JOIN down_storage_cage_details as escd on esc.slot=escd.slot where escd.slot is not null escd.tempering_layout_id=#{tempering_layout_id} and escd.tempering_feed_sequence<#{tempering_feed_sequence} and esc.remain_width-#{width}>0 order by escd.tempering_feed_sequence")
+ List<DownStorageCageDetails> SelectIsExistIntoCache(Integer tempering_layout_id, Integer tempering_feed_sequence,
+ double width);
+
+ // 鏌ヨ鍙繘姝ょ墖鐜荤拑鐨勬爡鏍煎彿
+ @Select("select escd.* from down_storage_cage as esc LEFT JOIN down_storage_cage_details as escd on esc.slot=escd.slot where escd.slot is not null escd.tempering_layout_id<#{tempering_layout_id} and esc.remain_width-#{width}>0 order by escd.tempering_layout_id desc,escd.tempering_feed_sequence")
+ List<DownStorageCageDetails> SelectIsExistIntoCache(Integer tempering_layout_id, double width);
+
+ // 鏌ヨ鍏ㄩ儴浠诲姟
+ @Select("select * from down_glass_task")
+ List<TaskCache> SelectCacheInfoAll();
+
+ // 鏌ヨ杩涚墖浠诲姟
+ @Select("select * from down_glass_task where task_type='1' and task_stauts='0'")
+ List<TaskCache> SelectInputCacheInfo();
+
+ // 鏌ヨ鍑虹墖浠诲姟
+ @Select("select * from down_glass_task where task_type='2' and task_stauts='0'")
+ List<TaskCache> SelectOutCacheInfo();
+
+ // 鏌ヨ A06 鎴� A11 鏈�鏂扮殑涓�鐗� 鍑虹墖浠诲姟
+ @Select("select * from down_glass_task where task_type='2' and task_stauts='2' and end_cell=#{EndCell} limit 1")
+ GlassInfo SelectLastOutCacheInfo(String EndCell);
+
+ // 淇敼绗煎瓙鍐呬俊鎭�
+ @Update("update")
+ Integer UpdateCache(@Param("id") Integer id, @Param("order_id") String order_id);
+
+ // 娣诲姞涓嬬墖浠诲姟
+ @Insert("INSERT into down_glass_task VALUES(#{id},#{start},#{end},#{type},0,)")
+ Integer insertCacheTask(String id, String start, String end, String type,double width,double height,Integer filmsId,double thickness,String flowCardId);
+
+
+}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/DownGlassCacheLogic.java b/UnLoadGlassModule/src/main/java/com/mes/service/DownGlassCacheLogic.java
new file mode 100644
index 0000000..9197e0b
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/service/DownGlassCacheLogic.java
@@ -0,0 +1,233 @@
+package com.mes.service;
+
+import com.mes.common.PlcTools.S7control;
+import com.mes.entity.GlassInfo;
+import com.mes.entity.DownStorageCageDetails;
+import com.mes.entity.device.PlcParameterObject;
+import com.mes.mapper.SelectInfo;
+import lombok.Data;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Data
+@Service
+public class DownGlassCacheLogic {
+ @Autowired
+ private SelectInfo selectInfo;
+
+ /**
+ * @param Number
+ * //璇嗗埆閫昏緫 涓嶄氦浜�
+ */
+
+ public void identify(String Number){
+ //鏌ヨ浠诲姟
+ PlcParameterObject plcmes=PLCAutoMes.PlcMesObject;
+ S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1);
+ String s=S7control.getinstance().ReadWord("DB14.26", 1).get(0)+"";
+ boolean isexist=isExist(Number);
+ if (isexist) {
+ //瀛樺湪閫昏緫 1.娣诲姞淇℃伅 2.鍥炲PLC瀛樺湪
+ //S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1);
+ }else {
+ //涓嶅瓨鍦ㄩ�昏緫 1.鍥炲PLC涓嶅瓨鍦�
+ //S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 2);
+ }
+ }
+ //涓嬬墖鍓嶇悊鐗�
+ public static final String RESULT_IN = "1";
+ public static final String RESULT_OUT = "2";
+ public static final String RESULT_IN_OUT = "3";
+
+ public void process() {
+ String result = S7control.getinstance().ReadWord("DB14.0", 1).get(0) + "";
+ String number = S7control.getinstance().ReadWord("DB14.2", 1).get(0) + "";
+
+ // 杩涚墖璇锋眰
+ if (RESULT_IN.equals(result)) {
+ processInto(number);
+ }
+ // 鍑虹墖璇锋眰
+ else if (RESULT_OUT.equals(result)) {
+ processOut();
+ }
+ // 杩涘嚭鐗囪姹�
+ else if (RESULT_IN_OUT.equals(result)) {
+ // 鍏堝嚭鍚庤繘
+ if (!processOut()) {
+ processInto(number);
+ }
+ }
+ }
+
+
+ /**
+ * @param Number
+ * @return
+ * //涓嬬墖鍓嶇悊鐗� 杩�
+ */
+
+ public boolean processInto(String Number){
+ //鎸塱d鏌ヨ鐜荤拑淇℃伅琛ㄩ噷鐨勭幓鐠�
+ GlassInfo GlassInfo=selectInfo.SelectGlassId(Number);
+ PlcParameterObject plcmes=PLCAutoMes.PlcMesObject;
+ //瀛樺湪姝ょ幓鐠冪紪鍙�
+ if(GlassInfo!=null){
+ //鍚岄挗鍖栫増鍥惧唴鐨勬爡鏍煎彿
+ List<DownStorageCageDetails> list=selectInfo.SelectIsExistIntoCache(GlassInfo.getTemperinglayoutid(),GlassInfo.getTemperingfeedsequence(),GlassInfo.getWidth());
+ //绌烘爡鏍煎彿
+ if (list.size()==0) {
+ list=selectInfo.SelectCacheLeisure();
+ }
+ //灏忎簬姝ょ幓鐠冮挗鍖栫増鍥惧簭鍙风殑鏍呮牸鍙�
+ if(list.size()==0){
+ list=selectInfo.SelectIsExistIntoCache(GlassInfo.getTemperinglayoutid(),GlassInfo.getWidth());
+ }
+ if(list.size()>0){
+ //瀛樺湪绌烘牸
+ //1.鐢熸垚浠诲姟锛� 璧峰浣嶇疆0 缁撴潫浣嶇疆this.slot 浠诲姟绫诲瀷 1 锛堣繘鐗囦换鍔★級
+ //2.鍥炲 1杩涚墖
+ DownStorageCageDetails item=list.get(0);
+ selectInfo.insertCacheTask(GlassInfo.getId()+"","0",item.getSlot()+"","1",GlassInfo.getWidth(),GlassInfo.getHeight(),GlassInfo.getFilmsid(),GlassInfo.getThickness(),GlassInfo.getFlowcardid());
+ S7control.getinstance().WriteWord(plcmes.getPlcParameter("MESToGaStatus").getAddress(),(short) 1);
+ return true;
+ }
+
+ }else{
+ // ID缂栧彿涓嶅瓨鍦� 涓嶅鐞�/鍥炲PLC 杩涜鎶ヨ鎻愮ず
+ }
+ //杩斿洖缁撴灉
+ return false;
+ }
+ //鐞嗙墖 鍑�
+ public boolean processOut(){
+ //鏌ヨ浠诲姟
+ String G06=S7control.getinstance().ReadWord("DB14.56", 1).get(0)+"";
+ String G11=S7control.getinstance().ReadWord("DB14.58", 1).get(0)+"";
+ String G13=S7control.getinstance().ReadWord("DB14.58", 1).get(0)+"";
+ PlcParameterObject plcmes=PLCAutoMes.PlcMesObject;
+ List<DownStorageCageDetails> list=selectInfo.SelectCacheOut();
+ //鍏朵粬鎯呭喌鏉′欢 濡傦細鍚庣画璁惧鏁呴殰绂佹鐞嗙墖鍑虹墖 绛�
+ boolean isOut=true;
+ if (list.size()>0&&isOut) {
+ DownStorageCageDetails item=list.get(0);
+ //
+ if(G06=="0"&&G11=="1"){
+ //鍑哄埌 G06
+
+ selectInfo.insertCacheTask(item.getGlassId()+"","0","06","2",item.getWidth(),item.getHeight(),item.getFilmsid(),item.getThickness(),item.getFlowCardId());
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "1");
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
+ return true;
+ }else if(G06=="1"&&G11=="0"){
+ //鍑哄埌 G11
+
+ selectInfo.insertCacheTask(item.getGlassId()+"","0","11","2",item.getWidth(),item.getHeight(),item.getFilmsid(),item.getThickness(),item.getFlowCardId());
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), "2");
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
+ return true;
+ }else if(G06=="0"&&G11=="0"){
+ //閮藉厑璁� G04/G05 涓婁竴鐗囨槸鍚﹀拰姝ょ墖鐜荤拑灏哄灏哄鐩稿悓
+ String endcell="06";
+ String SendEndcell="1";
+ boolean If_=false;
+ GlassInfo glassInfo06= selectInfo.SelectLastOutCacheInfo("06");
+ GlassInfo glassInfo11= selectInfo.SelectLastOutCacheInfo("11");
+ GlassInfo glassInfo13= selectInfo.SelectLastOutCacheInfo("13");
+ if(glassInfo06!=null&&glassInfo11.getWidth()==item.getWidth()&&glassInfo06.getHeight()==item.getHeight()){
+ endcell="11";
+ SendEndcell="2";
+ }else if(item.getHeight()>=3440&&item.getWidth()>=1440){
+ //鍏朵粬鏉′欢浜哄伐澶勭悊
+
+ }
+
+ selectInfo.insertCacheTask(item.getGlassId()+"","0",endcell,"2",item.getWidth(),item.getHeight(),item.getFilmsid(),item.getThickness(),item.getFlowCardId());
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(), SendEndcell);
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
+ return true;
+ }
+ }
+ //杩斿洖缁撴灉
+ return false;
+ }
+
+ /**
+ * @param Number
+ * //纾ㄨ竟 涓嶄氦浜� 鐞嗙墖鍜岀(杈规満鑷繁浜や簰
+ */
+
+ public void processMb(String Number){
+ //鎸塱d鏌ヨ鐜荤拑淇℃伅琛ㄩ噷鐨勭幓鐠�
+ GlassInfo GlassInfo=selectInfo.SelectGlassId(Number);
+ PlcParameterObject plcmes=PLCAutoMes.PlcMesObject;
+ if(GlassInfo!=null){
+ //鍙戦�佷换鍔� ID 闀� 瀹� 鍘� 鍊掕 宸ヨ壓鍔熻兘绛�
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.22").getAddress(),"N10000");
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.24").getAddress(), "1000");
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.26").getAddress(),"800");
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.28").getAddress(),"60");
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.30").getAddress(), "2");
+ S7control.getinstance().writeString(plcmes.getPlcParameter("DB14.20").getAddress(), "1");
+ }
+ //杩斿洖缁撴灉
+ }
+
+
+ /**
+ * @param Number
+ * @return
+ * 鏌ヨ娑堟伅闃熷垪閲屾鐜荤拑ID鐨勬暟鎹�
+ */
+ public boolean selectMessageId(String Number){
+ //鏌ヨ鏄惁瀛樺湪
+
+ GlassInfo GlassInfo=selectInfo.SelectGlassId(Number);
+ if(GlassInfo==null){
+ //杩斿洖 涓嶅瓨鍦�
+ return false;
+
+ }
+ //杩斿洖 瀛樺湪
+ return true;
+ }
+
+ /**
+ * @param Number
+ * @return
+ * 鍒犻櫎娑堟伅闃熷垪閲屾鐜荤拑ID鐨勬暟鎹�
+ */
+
+ public boolean deleteMessageId(String Number){
+ //鏌ヨ鏄惁瀛樺湪
+ GlassInfo GlassInfo=selectInfo.SelectGlassId(Number);
+ if(GlassInfo==null){
+ //杩斿洖 涓嶅瓨鍦�
+ return false;
+ }
+ //杩斿洖 瀛樺湪
+ return true;
+ }
+
+
+
+ /**
+ * @param Number
+ * @return
+ * //鏄惁瀛樺湪姝ょ紪鍙风幓鐠�
+ */
+ public boolean isExist(String Number){
+ //鏌ヨ鏄惁瀛樺湪
+ GlassInfo GlassInfo=selectInfo.SelectGlassId(Number);
+ if(GlassInfo==null){
+ //杩斿洖 涓嶅瓨鍦�
+ return false;
+ }
+ //杩斿洖 瀛樺湪
+ return true;
+ }
+
+}
+
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/DownGlassLogic.java b/UnLoadGlassModule/src/main/java/com/mes/service/DownGlassLogic.java
new file mode 100644
index 0000000..a2f03a6
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/service/DownGlassLogic.java
@@ -0,0 +1,154 @@
+package com.mes.service;
+
+import com.mes.entity.DownGlassInfo;
+import com.mes.entity.DownStorageCageDetails;
+import com.mes.entity.DownWorkstation;
+import com.mes.entity.device.PlcParameterObject;
+import com.mes.mapper.DownGlassInfoMapper;
+import com.mes.mapper.DownWorkstationMapper;
+import com.mes.tools.WebSocketServer;
+import lombok.Data;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Data
+@Service
+public class DownGlassLogic {
+
+ PlcParameterObject plcread = PLCAutoMes.PlcReadObject;
+ /**
+ * // 鏈烘鎵�1PLC璇锋眰瀛�
+ */
+ String robot1PLCrequestword = plcread.getPlcParameter("A01Position").getValue();
+ /**
+ * // 鏈烘鎵�2PLC璇锋眰瀛�
+ */
+ String robot2PLCrequestword = plcread.getPlcParameter("A01Position").getValue();
+ /**
+ * // 鐜荤拑id
+ */
+ String glassID = plcread.getPlcParameter("A01Position").getValue();
+ String glasswidth = plcread.getPlcParameter("A01Position").getValue();
+ String glassheight = plcread.getPlcParameter("A01Position").getValue();
+ //
+ String glassthickness = plcread.getPlcParameter("A01Position").getValue();
+ String pLcwancheng = plcread.getPlcParameter("A01Position").getValue();
+ @Autowired
+ private DownWorkstationMapper downWorkstationMapper;
+ private DownGlassInfo downGlassInfo;
+ private DownWorkstation downWorkstation;
+ private DownGlassInfoMapper downGlassInfoMapper;
+ private DownGlassInfoService downGlassInfoService;
+ /**
+ * // 瀛樻斁寰呭鐞嗙殑鐜荤拑淇℃伅
+ */
+ private List<DownGlassInfo> glassList;
+ /**
+ * 瀛樻斁鐜荤拑鏀剧疆鍦ㄧ紦瀛樼涓殑璇︾粏淇℃伅
+ */
+ private List<DownStorageCageDetails> cageDetailsList;
+
+ /**
+ * //褰撲笅鐗囦换鍔¤〃鐘舵�佷负1鏃跺�欏皢鏁版嵁鎻掑叆鍒颁笅鐗囩幓鐠冧俊鎭〃
+ */
+
+ public void insertdownglassinfo() {
+
+
+ downWorkstationMapper = WebSocketServer.applicationContext.getBean(DownWorkstationMapper.class);
+ downGlassInfoService = WebSocketServer.applicationContext.getBean(DownGlassInfoService.class);
+ downGlassInfoMapper = WebSocketServer.applicationContext.getBean(DownGlassInfoMapper.class);
+ List<DownGlassInfo> taskdownGlassInf = downGlassInfoMapper.selectunloadingtaskstate();
+//
+ if (taskdownGlassInf != null && !taskdownGlassInf.isEmpty()) {
+
+//
+
+
+ for (DownGlassInfo downGlassInfo : taskdownGlassInf) {
+ // 鍒涘缓鏂扮殑 DownGlassInfo 瀵硅薄骞惰缃浉鍏冲睘鎬�
+ DownGlassInfo newdownGlassInfo = new DownGlassInfo();
+
+ newdownGlassInfo.setFlowCardId(downGlassInfo.getFlowCardId());
+ Integer maxSequence = downGlassInfoMapper.getMaxSequenceByFlowCardId(downGlassInfo.getFlowCardId());
+ // 鍒濆鍖栭『搴忓瓧娈靛��
+ int sequence = maxSequence != null ? maxSequence + 1 : 1;
+
+ newdownGlassInfo.setWidth(downGlassInfo.getWidth());
+ newdownGlassInfo.setHeight(downGlassInfo.getHeight());
+ newdownGlassInfo.setThickness(downGlassInfo.getThickness());
+ newdownGlassInfo.setFilmsid(downGlassInfo.getFilmsid());
+ // 璁剧疆椤哄簭瀛楁鍊�
+ newdownGlassInfo.setSequence(sequence);
+
+ // 鎻掑叆鏁版嵁鍒颁笅鐗囩幓鐠冧俊鎭〃
+ downGlassInfoMapper.insert(newdownGlassInfo);
+ //鎻掑叆鏁版嵁鍒版満姊版墜浠诲姟琛�
+ downWorkstationMapper.insertdownWorkstationtask(newdownGlassInfo);
+ //鏇存柊涓嬬墖浠诲姟琛ㄧ姸鎬佷负0
+ downGlassInfoMapper.updateTaskStateToZero(downGlassInfo.getFlowCardId());
+
+ sequence++; // 閫掑椤哄簭瀛楁鍊�
+
+
+ }
+ }
+ }
+
+
+ /**
+ * //褰撴満姊版墜浠诲姟琛ㄤ腑鐘舵�佷负1锛屽伐浣嶈〃娴佺▼鍗$粦瀹氫簡鏋跺瓙 鏇存柊宸茬粡钀芥灦鏁伴噺锛屽苟涓旀妸涓嬬墖浠诲姟琛ㄧ殑瀵瑰簲璁板綍鍒犳帀
+ */
+
+ public void downWorkstation() {
+
+
+ try {
+ //鏌ヨ涓嬬墖宸ヤ綅琛ㄤ腑鏋跺瓙鏄惁缁戝畾浜嗘祦绋嬪崱鍙� 宸ヤ綅琛ㄥ拰浠诲姟琛ㄤ腑鐘舵�佷负1鐨勬祦绋嬪崱鍙峰拰宸茶惤鏋舵暟閲�
+ List<DownWorkstation> taskdownWorkstation = downWorkstationMapper.selectdownWorkstationstate();
+ if (taskdownWorkstation != null && !taskdownWorkstation.isEmpty()) {
+ //锛屽鏋滃凡缁忕粦瀹氬垯鏇存柊宸茶惤鏋舵暟閲�,骞朵笖鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
+ for (DownWorkstation downWorkstation : taskdownWorkstation) {
+
+ //鏇存柊涓嬬墖宸ヤ綅琛ㄤ腑宸茶惤鏋舵暟閲�
+ downWorkstationMapper.update_racks_number(downWorkstation.getFlowCardId(), downWorkstation.getRacksnumber() + 1);
+
+ //鏇存柊鏈烘浠诲姟琛ㄤ腑鐘舵�佷负0
+ downWorkstationMapper.update_task_state_to_zero(downWorkstation.getFlowCardId());
+ //鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
+ downGlassInfoMapper.deletetask(downWorkstation.getFlowCardId());
+
+ }
+ }
+ } catch (Exception e) {
+ // 鎵撳嵃寮傚父淇℃伅
+ e.printStackTrace();
+ // 鎴栬�呭彲浠ヨ繘琛屽叾浠栧紓甯稿鐞嗭紝姣斿璁板綍鏃ュ織鎴栬�呰繑鍥炵壒瀹氱殑閿欒淇℃伅
+ }
+
+
+ }
+
+
+ /**
+ * @param downWorkstation // 缁戝畾娴佺▼鍗″彿鏋跺瓙
+ */
+
+ public void bindingshelf(DownWorkstation downWorkstation) {
+ downWorkstationMapper.updateFlowCardId(downWorkstation);
+ }
+
+
+ /**
+ * @param downWorkstation // 婊℃灦鎷夎蛋 娓呴櫎娴佺▼鍗′俊鎭�
+ */
+
+ public void clearFlowCardId(DownWorkstation downWorkstation) {
+
+ downWorkstationMapper.clearFlowCardId(downWorkstation);
+ }
+
+
+}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/DownWorkstationService.java b/UnLoadGlassModule/src/main/java/com/mes/service/DownWorkstationService.java
new file mode 100644
index 0000000..9dca11e
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/service/DownWorkstationService.java
@@ -0,0 +1,56 @@
+package com.mes.service;
+
+import com.baomidou.dynamic.datasource.annotation.DS;
+import com.mes.entity.DownWorkstation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+import java.util.Map;
+
+@Service
+@DS("hangzhoumes")
+public class DownWorkstationService {
+ @Autowired
+ private com.mes.mapper.DownWorkstationMapper DownWorkstationMapper;
+
+
+ public List<DownWorkstation> getoneDownWorkstations() {
+
+ return DownWorkstationMapper.getoneDownWorkstations();
+ }
+
+ public List<DownWorkstation> gettwoDownWorkstations() {
+
+ return DownWorkstationMapper.gettwoDownWorkstations();
+ }
+ public List<Map<String, Object>> getflowCardId() {
+
+ return DownWorkstationMapper.getflowCardId();
+ }
+
+
+ public int getTotalQuantity(int workstationId) {
+ // 鎵ц鑾峰彇鎬绘暟閲忕殑閫昏緫锛屽彲浠ユ槸鏁版嵁搴撴煡璇㈡垨鍏朵粬涓氬姟閫昏緫
+ Integer totalQuantity = DownWorkstationMapper.getTotalQuantity(workstationId);
+ return totalQuantity != null ? totalQuantity : 0;
+ }
+
+ public int getRacksNumber(int workstationId) {
+ // 鎵ц鑾峰彇钀芥灦鏁伴噺鐨勯�昏緫锛屽彲浠ユ槸鏁版嵁搴撴煡璇㈡垨鍏朵粬涓氬姟閫昏緫
+ Integer racksNumber = DownWorkstationMapper.getRacksNumber(workstationId);
+ return racksNumber != null ? racksNumber : 0;
+ }
+
+ public void clearFlowCardId(int workstationId) {
+ // 鎵ц娓呴櫎鎸囧畾宸ヤ綅ID鐨勬祦绋嬪崱淇℃伅鐨勯�昏緫锛屽彲浠ユ槸鏁版嵁搴撴搷浣滄垨鍏朵粬涓氬姟閫昏緫
+ // 鍒ゆ柇濡傛灉钀芥灦鏁伴噺绛変簬鎬绘暟閲忔墽琛屾竻闄わ紝鍚﹀垯涓嶆墽琛�
+ DownWorkstationMapper.clearFlowCardInfoByWorkstationId(workstationId);
+ }
+
+
+
+
+
+
+}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/GlassInfoService.java b/UnLoadGlassModule/src/main/java/com/mes/service/GlassInfoService.java
new file mode 100644
index 0000000..83ca461
--- /dev/null
+++ b/UnLoadGlassModule/src/main/java/com/mes/service/GlassInfoService.java
@@ -0,0 +1,28 @@
+package com.mes.service;
+
+import com.mes.mapper.GlassInfoMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class GlassInfoService {
+
+ @Autowired
+ private GlassInfoMapper glassInfoMapper;
+
+ public int getGlassInfoCountByFlowCardId(String flowCardId) {
+ return glassInfoMapper.getGlassInfoCountByFlowCardId(flowCardId);
+ }
+
+ public void updateFlowCardIdAndCount(String flowCardId, int glassInfoCount,int workstationId) {
+ // 璋冪敤 GlassInfoMapper 鐨� updateFlowCardIdAndCount 鏂规硶
+ int rowsAffected = glassInfoMapper.updateFlowCardIdAndCount(flowCardId, glassInfoCount,workstationId);
+ if (rowsAffected > 0) {
+ System.out.println("鏇存柊鏋跺瓙涓婃祦绋嬪崱 ID 鍜屾暟閲忔垚鍔�");
+ } else {
+ System.out.println("鏇存柊鏋跺瓙涓婃祦绋嬪崱 ID 鍜屾暟閲忓け璐�");
+ }
+ }
+
+ // 杩欓噷鍙互娣诲姞鍏朵粬涓氬姟閫昏緫鏂规硶
+}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/IOrderService.java b/UnLoadGlassModule/src/main/java/com/mes/service/IOrderService.java
deleted file mode 100644
index 9e44ceb..0000000
--- a/UnLoadGlassModule/src/main/java/com/mes/service/IOrderService.java
+++ /dev/null
@@ -1,2 +0,0 @@
-package com.mes.service;public interface IOrderService {
-}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/ModuleA.java b/UnLoadGlassModule/src/main/java/com/mes/service/ModuleA.java
index 40af511..f33714f 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/service/ModuleA.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/service/ModuleA.java
@@ -8,7 +8,8 @@
public ModuleA(String QUEUENAME) {
QUEUE_NAME = QUEUENAME;
- receiver = new RabbitMQUtils(); // 瀹炰緥鍖� RabbitMQUtils 瀵硅薄
+ // 瀹炰緥鍖� RabbitMQUtils 瀵硅薄
+ receiver = new RabbitMQUtils();
}
public static void main(String[] argv) throws Exception {
@@ -16,11 +17,11 @@
// String message = "Your message to send666";
// String messageId = "5"; // 娑堟伅ID
// receiver.sendMessageWithId(QUEUE_NAME, message, messageId); // 璋冪敤 sendMessageWithId 鏂规硶鍙戦�佹秷鎭�
- receiver.sendMessageWithId("hangzhou2", "Hello RabbitMQ!", "1");
- receiver.sendMessageWithId("hangzhou2", "Another message", "2");
- receiver.sendMessageWithId("hangzhou2", "Another message", "3");
- receiver.sendMessageWithId("hangzhou2", "Another message", "4");
- receiver.sendMessageWithId("hangzhou2", "Another message", "5");
+ RabbitMQUtils.sendMessageWithId("hangzhou2", "Hello RabbitMQ!", "1");
+ RabbitMQUtils.sendMessageWithId("hangzhou2", "Another message", "2");
+ RabbitMQUtils.sendMessageWithId("hangzhou2", "Another message", "3");
+ RabbitMQUtils.sendMessageWithId("hangzhou2", "Another message", "4");
+ RabbitMQUtils.sendMessageWithId("hangzhou2", "Another message", "5");
// receiver.sendMessageWithId("hangzhou2", "Yet another message", "1"); // 杩欐潯娑堟伅浼氭墦鍗伴噸澶嶆秷鎭殑閿欒淇℃伅
}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/ModuleB.java b/UnLoadGlassModule/src/main/java/com/mes/service/ModuleB.java
index 2cd57e4..6c0dfba 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/service/ModuleB.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/service/ModuleB.java
@@ -18,7 +18,7 @@
//receiver.consumeMessageById("5",QUEUE_NAME);
// String receivedMessage = receiver.consumeSelectedMessage(1,QUEUE_NAME);
- List<String> receivedMessage = receiver.browseMessages(QUEUE_NAME);
+ List<String> receivedMessage = RabbitMQUtils.browseMessages(QUEUE_NAME);
System.out.println("Received message: " + receivedMessage);
} catch (Exception e) {
e.printStackTrace();
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java b/UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java
deleted file mode 100644
index 581cfe8..0000000
--- a/UnLoadGlassModule/src/main/java/com/mes/service/PlcService.java
+++ /dev/null
@@ -1,139 +0,0 @@
-package com.mes.service;
-
-import com.mes.entity.DownGlassInfo;
-import com.mes.entity.DownStorageCageDetails;
-import com.mes.entity.DownWorkstation;
-import com.mes.entity.device.PlcParameterObject;
-import com.mes.mapper.DownGlassInfoMapper;
-import com.mes.mapper.DownWorkstationMapper;
-import com.mes.tools.WebSocketServer;
-import lombok.Data;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-@Data
-@Service
-public class PlcService {
-
- @Autowired
- private DownWorkstationMapper downWorkstationMapper;
- private DownGlassInfo downGlassInfo;
- private DownWorkstation downWorkstation;
- private DownGlassInfoMapper downGlassInfoMapper;
-
- private DownGlassInfoService downGlassInfoService;
-
-
-
-
-
- private List<DownGlassInfo> glassList; // 瀛樻斁寰呭鐞嗙殑鐜荤拑淇℃伅
- private List<DownStorageCageDetails> cageDetailsList; // 瀛樻斁鐜荤拑鏀剧疆鍦ㄧ紦瀛樼涓殑璇︾粏淇℃伅
- PlcParameterObject plcread=PLCAutoMes.PlcReadObject;
- String Robot1PLCrequestword=plcread.getPlcParameter("A01Position").getValue();// 鏈烘鎵�1PLC璇锋眰瀛�
- String Robot2PLCrequestword=plcread.getPlcParameter("A01Position").getValue();// 鏈烘鎵�2PLC璇锋眰瀛�
- String GlassID=plcread.getPlcParameter("A01Position").getValue();// 鐜荤拑id
- String Glasswidth=plcread.getPlcParameter("A01Position").getValue();//鐜荤拑瀹藉害
- String Glassheight=plcread.getPlcParameter("A01Position").getValue();//鐜荤拑楂樺害
- String Glassthickness=plcread.getPlcParameter("A01Position").getValue();//鍘氬害
- String PLCwancheng = plcread.getPlcParameter("A01Position").getValue();// plc瀹屾垚瀛�
-
-
- //褰撲笅鐗囦换鍔¤〃鐘舵�佷负1鏃跺�欏皢鏁版嵁鎻掑叆鍒颁笅鐗囩幓鐠冧俊鎭〃
- public void insertdownglassinfo() {
-
-
- downWorkstationMapper = WebSocketServer.applicationContext.getBean(DownWorkstationMapper.class);
- downGlassInfoService = WebSocketServer.applicationContext.getBean(DownGlassInfoService.class);
- downGlassInfoMapper = WebSocketServer.applicationContext.getBean(DownGlassInfoMapper.class);
- List<DownGlassInfo> taskdownGlassInf = downGlassInfoMapper.selectunloadingtaskstate();
-//
- if (taskdownGlassInf != null && !taskdownGlassInf.isEmpty()) {
-
-
-
-
- for (DownGlassInfo downGlassInfo : taskdownGlassInf) {
- // 鍒涘缓鏂扮殑 DownGlassInfo 瀵硅薄骞惰缃浉鍏冲睘鎬�
- DownGlassInfo newdownGlassInfo = new DownGlassInfo();
-
- newdownGlassInfo.setFlowCardId(downGlassInfo.getFlowCardId());
- Integer maxSequence = downGlassInfoMapper.getMaxSequenceByFlowCardId(downGlassInfo.getFlowCardId());
- int sequence = maxSequence != null ? maxSequence + 1 : 1; // 鍒濆鍖栭『搴忓瓧娈靛��
-
- newdownGlassInfo.setWidth(downGlassInfo.getWidth());
- newdownGlassInfo.setHeight(downGlassInfo.getHeight());
- newdownGlassInfo.setThickness(downGlassInfo.getThickness());
- newdownGlassInfo.setFilmsid(downGlassInfo.getFilmsid());
- newdownGlassInfo.setSequence(sequence); // 璁剧疆椤哄簭瀛楁鍊�
-
- // 鎻掑叆鏁版嵁鍒颁笅鐗囩幓鐠冧俊鎭〃
- downGlassInfoMapper.insert(newdownGlassInfo);
- //鎻掑叆鏁版嵁鍒版満姊版墜浠诲姟琛�
- downWorkstationMapper.insertdownWorkstationtask(newdownGlassInfo);
- //鏇存柊浠诲姟琛ㄧ姸鎬佷负0
- downGlassInfoMapper.updateTaskStateToZero(downGlassInfo.getFlowCardId());
-
- sequence++; // 閫掑椤哄簭瀛楁鍊�
-
-
-
-
- }
- }
- }
-
-
- //褰撴満姊版墜浠诲姟琛ㄤ腑鐘舵�佷负1锛屽伐浣嶈〃娴佺▼鍗$粦瀹氫簡鏋跺瓙 鏇存柊宸茬粡钀芥灦鏁伴噺锛屽苟涓旀妸涓嬬墖浠诲姟琛ㄧ殑瀵瑰簲璁板綍鍒犳帀
- public void down_workstation(){
-
- //downWorkstationMapper = WebSocketServer.applicationContext.getBean(DownWorkstationMapper.class);
- //downGlassInfoMapper = WebSocketServer.applicationContext.getBean(DownGlassInfoMapper.class);
- try {
- List<DownWorkstation> taskdownWorkstation = downWorkstationMapper.selectdownWorkstationstate();
- if (taskdownWorkstation != null && !taskdownWorkstation.isEmpty()) {
- //鏌ヨ涓嬬墖宸ヤ綅琛ㄤ腑鏄惁缁戝畾浜嗘灦瀛愭槸鍚︾粦瀹氫簡娴佺▼鍗″彿锛屽鏋滃凡缁忕粦瀹氬垯鏇存柊宸茶惤鏋舵暟閲�,骞朵笖鍒犻櫎涓嬬墖浠诲姟琛ㄤ腑鐨勮褰�
- for (DownWorkstation downWorkstation : taskdownWorkstation) {
- downWorkstationMapper.update_racks_number(downWorkstation.getFlowCardId(),6 );
- downGlassInfoMapper.deletetask(downWorkstation.getFlowCardId());
-
- }
- }
- } catch (Exception e) {
- // 鎵撳嵃寮傚父淇℃伅
- e.printStackTrace();
- // 鎴栬�呭彲浠ヨ繘琛屽叾浠栧紓甯稿鐞嗭紝姣斿璁板綍鏃ュ織鎴栬�呰繑鍥炵壒瀹氱殑閿欒淇℃伅
- }
-
-
- }
-
-
-
- //缁戝畾娴佺▼鍗″彿鏋跺瓙
- public void bindingshelf(DownWorkstation downWorkstation){
-
- String FlowCardId=downWorkstation.getFlowCardId();
- int WorkstationId=downWorkstation.getWorkstationId();
-
-
-
- }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/Plchome.java b/UnLoadGlassModule/src/main/java/com/mes/service/Plchome.java
index eba16ae..266169e 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/service/Plchome.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/service/Plchome.java
@@ -1,17 +1,22 @@
package com.mes.service;
+import cn.hutool.json.JSONObject;
import com.mes.tools.WebSocketServer;
import org.springframework.stereotype.Component;
-
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
+import java.util.ArrayList;
import java.util.function.Supplier;
@Component
public class Plchome extends Thread {
private int i = 1;
- private final Supplier<PlcService> plcServiceSupplier;
+ private static final Logger log = LogManager.getLogger(Plchome.class);
+
+ private final Supplier<DownGlassLogic> plcServiceSupplier;
public Plchome() {
- this.plcServiceSupplier = () -> WebSocketServer.applicationContext.getBean(PlcService.class);
+ this.plcServiceSupplier = () -> WebSocketServer.applicationContext.getBean(DownGlassLogic.class);
}
@@ -22,7 +27,7 @@
try {
i++;
Thread.sleep(100);
- PlcService plcService = plcServiceSupplier.get();
+ DownGlassLogic plcService = plcServiceSupplier.get();
// plcService.performPlcActions();
//plcService.unloadpush();
@@ -32,13 +37,24 @@
//褰撴満姊版墜浠诲姟琛ㄤ腑鐘舵�佷负1 鏇存柊宸茬粡钀芥灦鏁伴噺锛屽苟涓旀妸涓嬬墖浠诲姟琛ㄧ殑閭f潯璁板綍鍒犳帀 宸ヤ綅琛ㄦ祦绋嬪崱缁戝畾浜嗘灦瀛�
- plcService.down_workstation();
+ plcService.downWorkstation();
} catch (InterruptedException e) {
Thread.currentThread().interrupt();
e.printStackTrace();
}
+
+ JSONObject jsonObject = new JSONObject();
+ // System.out.println(arraylist6);
+ jsonObject.append("data", 1);
+ ArrayList<WebSocketServer> sendwServer = WebSocketServer.sessionMap.get("unloadglass");
+ if (sendwServer != null) {
+ for (WebSocketServer webserver : sendwServer) {
+ webserver.sendMessage(jsonObject.toString());
+ log.info("鍑嗗鍚� WebSocket 鏈嶅姟鍣ㄥ彂閫佹秷鎭�: {}", jsonObject.toString());
+ }}
+
}
}
}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java b/UnLoadGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java
deleted file mode 100644
index 5274aa6..0000000
--- a/UnLoadGlassModule/src/main/java/com/mes/service/impl/OrderServiceImpl.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.mes.service.impl;
-
-import com.baomidou.dynamic.datasource.annotation.DS;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.mes.entity.OrderTest;
-import com.mes.mapper.OrderTestMapper;
-import com.mes.service.IOrderService;
-import org.springframework.stereotype.Service;
-
-@Service
-@DS("erp_sd")
-public class OrderServiceImpl extends ServiceImpl<OrderTestMapper, OrderTest> implements IOrderService {
-}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/tools/Configuration.java b/UnLoadGlassModule/src/main/java/com/mes/tools/Configuration.java
index 0b4ac1a..1f64390 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/tools/Configuration.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/tools/Configuration.java
@@ -5,11 +5,24 @@
import java.io.InputStream;
import java.util.Properties;
-// Configuration 绫荤敤浜庡姞杞介厤缃枃浠跺苟鎻愪緵璁块棶閰嶇疆椤圭殑鏂规硶銆�
+/**
+ * @author SNG-012
+ *
+ * Configuration 绫荤敤浜庡姞杞介厤缃枃浠跺苟鎻愪緵璁块棶閰嶇疆椤圭殑鏂规硶銆�
+ */
public class Configuration {
- private Properties properties; // Properties 瀵硅薄锛岀敤浜庡瓨鍌ㄩ厤缃枃浠朵腑鐨勯敭鍊煎銆�
- // 鏋勯�犲嚱鏁帮紝鏍规嵁浼犲叆鐨勬枃浠跺悕鍔犺浇閰嶇疆鏂囦欢銆�
+ /**
+ * // Properties 瀵硅薄锛岀敤浜庡瓨鍌ㄩ厤缃枃浠朵腑鐨勯敭鍊煎銆�
+ */
+ private Properties properties;
+
+ /**
+ * @param fileName
+ * @throws IOException
+ * // 鏋勯�犲嚱鏁帮紝鏍规嵁浼犲叆鐨勬枃浠跺悕鍔犺浇閰嶇疆鏂囦欢銆�
+ */
+
public Configuration(String fileName) throws IOException {
// 浣跨敤绫诲姞杞藉櫒鑾峰彇璧勬簮鏂囦欢鐨勮緭鍏ユ祦銆�
InputStream inputStream = getClass().getClassLoader().getResourceAsStream(fileName);
@@ -17,11 +30,18 @@
if (inputStream == null) {
throw new FileNotFoundException("Property file '" + fileName + "' not found in the classpath");
}
- properties = new Properties(); // 瀹炰緥鍖朠roperties瀵硅薄銆�
- properties.load(inputStream); // 浠庤緭鍏ユ祦鍔犺浇閰嶇疆椤广��
+ // 瀹炰緥鍖朠roperties瀵硅薄銆�
+ properties = new Properties();
+ // 浠庤緭鍏ユ祦鍔犺浇閰嶇疆椤广��
+ properties.load(inputStream);
}
- // 鏍规嵁閰嶇疆椤圭殑閿幏鍙栧叾瀵瑰簲鐨勫�笺��
+ /**
+ * @param key
+ * @return
+ * // 鏍规嵁閰嶇疆椤圭殑閿幏鍙栧叾瀵瑰簲鐨勫�笺��
+ */
+
public String getProperty(String key) {
return properties.getProperty(key);
}
diff --git a/UnLoadGlassModule/src/main/java/com/mes/tools/WebSocketServer.java b/UnLoadGlassModule/src/main/java/com/mes/tools/WebSocketServer.java
index aa4b161..13a3bde 100644
--- a/UnLoadGlassModule/src/main/java/com/mes/tools/WebSocketServer.java
+++ b/UnLoadGlassModule/src/main/java/com/mes/tools/WebSocketServer.java
@@ -157,4 +157,8 @@
public void clearMessages() {
messages.clear();
}
+
+
+
+
}
diff --git a/UnLoadGlassModule/src/main/resources/application.yml b/UnLoadGlassModule/src/main/resources/application.yml
index 8ba75c8..328e464 100644
--- a/UnLoadGlassModule/src/main/resources/application.yml
+++ b/UnLoadGlassModule/src/main/resources/application.yml
@@ -10,7 +10,6 @@
primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster
strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�.
datasource:
-
hangzhoumes:
url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8
username: root
diff --git a/UnLoadGlassModule/target/MES-UnLoadGlassModule-0.0.1-SNAPSHOT.jar.original b/UnLoadGlassModule/target/MES-UnLoadGlassModule-0.0.1-SNAPSHOT.jar.original
deleted file mode 100644
index 2be3c8d..0000000
--- a/UnLoadGlassModule/target/MES-UnLoadGlassModule-0.0.1-SNAPSHOT.jar.original
+++ /dev/null
Binary files differ
diff --git a/UnLoadGlassModule/target/classes/application.yml b/UnLoadGlassModule/target/classes/application.yml
index 8ba75c8..328e464 100644
--- a/UnLoadGlassModule/target/classes/application.yml
+++ b/UnLoadGlassModule/target/classes/application.yml
@@ -10,7 +10,6 @@
primary: hangzhoumes #璁剧疆榛樿鐨勬暟鎹簮鎴栬�呮暟鎹簮缁�,榛樿鍊煎嵆涓簃aster
strict: false #璁剧疆涓ユ牸妯″紡,榛樿false涓嶅惎鍔�. 鍚姩鍚庡湪鏈尮閰嶅埌鎸囧畾鏁版嵁婧愭椂鍊欏洖鎶涘嚭寮傚父,涓嶅惎鍔ㄤ細浣跨敤榛樿鏁版嵁婧�.
datasource:
-
hangzhoumes:
url: jdbc:mysql://10.153.19.150:3306/hangzhoumes?serverTimezone=GMT%2b8
username: root
diff --git a/UnLoadGlassModule/target/maven-archiver/pom.properties b/UnLoadGlassModule/target/maven-archiver/pom.properties
deleted file mode 100644
index 91a82d4..0000000
--- a/UnLoadGlassModule/target/maven-archiver/pom.properties
+++ /dev/null
@@ -1,3 +0,0 @@
-artifactId=MES-UnLoadGlassModule
-groupId=com.MES-Module
-version=0.0.1-SNAPSHOT
diff --git a/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
deleted file mode 100644
index ac32ba0..0000000
--- a/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
+++ /dev/null
@@ -1,46 +0,0 @@
-com\mes\controller\OrderTestController.class
-com\mes\service\ModuleB.class
-com\mes\common\PlcTools\S7object2.class
-com\mes\entity\userInfo\SysMenuItem.class
-com\mes\entity\userInfo\User.class
-com\mes\config\MyCorsConfig.class
-com\mes\MesApplication.class
-com\mes\tools\TokenTools.class
-com\mes\controller\userInfo\SysMenuItemController.class
-com\mes\exception\ServiceException.class
-com\mes\service\impl\OrderServiceImpl.class
-com\mes\exception\GlobalExceptionHandle.class
-com\mes\service\userInfo\SysMenuService.class
-com\mes\service\userInfo\SysErrorService.class
-com\mes\tools\WebSocketServer.class
-com\mes\config\MyCorsConfig$1.class
-com\mes\common\Result.class
-com\mes\controller\userInfo\SysMenuController.class
-com\mes\common\PlcTools\S7control.class
-com\mes\service\IOrderService.class
-com\mes\mapper\userInfo\UserMapper.class
-com\mes\common\Constants.class
-com\mes\entity\DownWorkstation.class
-com\mes\entity\userInfo\SysMenu.class
-com\mes\config\AppRunnerConfig.class
-com\mes\entity\DownStorageCageDetails.class
-com\mes\entity\DownStorageCage.class
-com\mes\config\MybatisPlusConfig.class
-com\mes\mapper\userInfo\SysMenuItemMapper.class
-com\mes\controller\dto\UserDTO.class
-com\mes\common\CacheUtil.class
-com\mes\common\PlcTools\S7object.class
-com\mes\service\userInfo\UserService.class
-com\mes\entity\DownGlassInfo.class
-com\mes\config\InterceptorConfig.class
-com\mes\entity\userInfo\SysError.class
-com\mes\service\ModuleA.class
-com\mes\config\WebSocketConfig.class
-com\mes\service\userInfo\SysMenuItemService.class
-com\mes\config\SwaggerConfig.class
-com\mes\controller\userInfo\UserController.class
-com\mes\mapper\userInfo\SysMenuMapper.class
-com\mes\entity\OrderTest.class
-com\mes\mapper\OrderTestMapper.class
-com\mes\mapper\userInfo\SysErrorMapper.class
-com\mes\common\interceptor\JwtInterceptor.class
diff --git a/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
deleted file mode 100644
index ae89025..0000000
--- a/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
+++ /dev/null
@@ -1,45 +0,0 @@
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\userInfo\User.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\MesApplication.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\config\SwaggerConfig.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\DownStorageCage.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\common\CacheUtil.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\common\interceptor\JwtInterceptor.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\common\PlcTools\S7control.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\config\MybatisPlusConfig.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\config\WebSocketConfig.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\userInfo\SysMenu.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\common\PlcTools\S7object.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\controller\userInfo\SysMenuController.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\exception\ServiceException.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\mapper\userInfo\SysErrorMapper.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\config\InterceptorConfig.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\config\AppRunnerConfig.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\mapper\userInfo\SysMenuItemMapper.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\mapper\userInfo\SysMenuMapper.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\service\userInfo\SysMenuItemService.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\common\Result.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\DownWorkstation.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\userInfo\SysError.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\tools\WebSocketServer.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\common\PlcTools\S7object2.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\service\ModuleA.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\service\userInfo\SysErrorService.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\config\MyCorsConfig.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\OrderTest.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\service\userInfo\UserService.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\controller\userInfo\SysMenuItemController.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\service\IOrderService.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\common\Constants.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\controller\OrderTestController.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\exception\GlobalExceptionHandle.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\tools\TokenTools.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\service\ModuleB.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\mapper\userInfo\UserMapper.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\DownGlassInfo.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\controller\userInfo\UserController.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\DownStorageCageDetails.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\service\userInfo\SysMenuService.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\entity\userInfo\SysMenuItem.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\service\impl\OrderServiceImpl.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\controller\dto\UserDTO.java
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\main\java\com\mes\mapper\OrderTestMapper.java
diff --git a/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst b/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
deleted file mode 100644
index 9c25a83..0000000
--- a/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/createdFiles.lst
+++ /dev/null
@@ -1 +0,0 @@
-com\mes\MesApplicationTests.class
diff --git a/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
deleted file mode 100644
index 2feec22..0000000
--- a/UnLoadGlassModule/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst
+++ /dev/null
@@ -1 +0,0 @@
-D:\xm4\HangZhouMes\UnLoadGlassModule\src\test\java\com\mes\MesApplicationTests.java
diff --git a/UnLoadGlassModule/target/surefire-reports/TEST-com.mes.MesApplicationTests.xml b/UnLoadGlassModule/target/surefire-reports/TEST-com.mes.MesApplicationTests.xml
deleted file mode 100644
index 0a62c8b..0000000
--- a/UnLoadGlassModule/target/surefire-reports/TEST-com.mes.MesApplicationTests.xml
+++ /dev/null
@@ -1,65 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<testsuite xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="https://maven.apache.org/surefire/maven-surefire-plugin/xsd/surefire-test-report.xsd" name="com.mes.MesApplicationTests" time="7.757" tests="1" errors="0" skipped="0" failures="0">
- <properties>
- <property name="sun.desktop" value="windows"/>
- <property name="awt.toolkit" value="sun.awt.windows.WToolkit"/>
- <property name="file.encoding.pkg" value="sun.io"/>
- <property name="java.specification.version" value="1.8"/>
- <property name="sun.cpu.isalist" value="amd64"/>
- <property name="sun.jnu.encoding" value="GBK"/>
- <property name="java.class.path" value="D:\xm4\HangZhouMes\UnLoadGlassModule\target\test-classes;D:\xm4\HangZhouMes\UnLoadGlassModule\target\classes;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-web\2.5.9\spring-boot-starter-web-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter\2.5.9\spring-boot-starter-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot\2.5.9\spring-boot-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-logging\2.5.9\spring-boot-starter-logging-2.5.9.jar;C:\Users\SNG-012\.m2\repository\ch\qos\logback\logback-classic\1.2.10\logback-classic-1.2.10.jar;C:\Users\SNG-012\.m2\repository\ch\qos\logback\logback-core\1.2.10\logback-core-1.2.10.jar;C:\Users\SNG-012\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.1\log4j-to-slf4j-2.17.1.jar;C:\Users\SNG-012\.m2\repository\org\apache\logging\log4j\log4j-api\2.17.1\log4j-api-2.17.1.jar;C:\Users\SNG-012\.m2\repository\org\slf4j\jul-to-slf4j\1.7.33\jul-to-slf4j-1.7.33.jar;C:\Users\SNG-012\.m2\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\SNG-012\.m2\repository\org\yaml\snakeyaml\1.28\snakeyaml-1.28.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-json\2.5.9\spring-boot-starter-json-2.5.9.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.12.6\jackson-datatype-jdk8-2.12.6.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.12.6\jackson-datatype-jsr310-2.12.6.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.12.6\jackson-module-parameter-names-2.12.6.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\2.5.9\spring-boot-starter-tomcat-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\9.0.56\tomcat-embed-core-9.0.56.jar;C:\Users\SNG-012\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\9.0.56\tomcat-embed-el-9.0.56.jar;C:\Users\SNG-012\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\9.0.56\tomcat-embed-websocket-9.0.56.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-web\5.3.15\spring-web-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-webmvc\5.3.15\spring-webmvc-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-aop\5.3.15\spring-aop-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-context\5.3.15\spring-context-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-expression\5.3.15\spring-expression-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-starter\2.3.1\mybatis-spring-boot-starter-2.3.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\2.5.9\spring-boot-starter-jdbc-2.5.9.jar;C:\Users\SNG-012\.m2\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-jdbc\5.3.15\spring-jdbc-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-autoconfigure\2.3.1\mybatis-spring-boot-autoconfigure-2.3.1.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\mybatis\3.5.13\mybatis-3.5.13.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\mybatis-spring\2.1.1\mybatis-spring-2.1.1.jar;C:\Users\SNG-012\.m2\repository\com\alibaba\fastjson\1.2.70\fastjson-1.2.70.jar;C:\Users\SNG-012\.m2\repository\org\springframework\data\spring-data-commons\2.3.1.RELEASE\spring-data-commons-2.3.1.RELEASE.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-core\5.3.15\spring-core-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-jcl\5.3.15\spring-jcl-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-beans\5.3.15\spring-beans-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\slf4j\slf4j-api\1.7.33\slf4j-api-1.7.33.jar;C:\Users\SNG-012\.m2\repository\mysql\mysql-connector-java\8.0.20\mysql-connector-java-8.0.20.jar;C:\Users\SNG-012\.m2\repository\org\projectlombok\lombok\1.18.22\lombok-1.18.22.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-test\2.5.9\spring-boot-starter-test-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-test\2.5.9\spring-boot-test-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-test-autoconfigure\2.5.9\spring-boot-test-autoconfigure-2.5.9.jar;C:\Users\SNG-012\.m2\repository\com\jayway\jsonpath\json-path\2.5.0\json-path-2.5.0.jar;C:\Users\SNG-012\.m2\repository\net\minidev\json-smart\2.4.7\json-smart-2.4.7.jar;C:\Users\SNG-012\.m2\repository\net\minidev\accessors-smart\2.4.7\accessors-smart-2.4.7.jar;C:\Users\SNG-012\.m2\repository\org\ow2\asm\asm\9.1\asm-9.1.jar;C:\Users\SNG-012\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\SNG-012\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.2\jakarta.activation-api-1.2.2.jar;C:\Users\SNG-012\.m2\repository\org\hamcrest\hamcrest\2.2\hamcrest-2.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\jupiter\junit-jupiter\5.7.2\junit-jupiter-5.7.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.7.2\junit-jupiter-api-5.7.2.jar;C:\Users\SNG-012\.m2\repository\org\apiguardian\apiguardian-api\1.1.0\apiguardian-api-1.1.0.jar;C:\Users\SNG-012\.m2\repository\org\opentest4j\opentest4j\1.2.0\opentest4j-1.2.0.jar;C:\Users\SNG-012\.m2\repository\org\junit\platform\junit-platform-commons\1.7.2\junit-platform-commons-1.7.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.7.2\junit-jupiter-params-5.7.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.7.2\junit-jupiter-engine-5.7.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\platform\junit-platform-engine\1.7.2\junit-platform-engine-1.7.2.jar;C:\Users\SNG-012\.m2\repository\org\mockito\mockito-core\3.9.0\mockito-core-3.9.0.jar;C:\Users\SNG-012\.m2\repository\net\bytebuddy\byte-buddy\1.10.22\byte-buddy-1.10.22.jar;C:\Users\SNG-012\.m2\repository\net\bytebuddy\byte-buddy-agent\1.10.22\byte-buddy-agent-1.10.22.jar;C:\Users\SNG-012\.m2\repository\org\objenesis\objenesis\3.2\objenesis-3.2.jar;C:\Users\SNG-012\.m2\repository\org\mockito\mockito-junit-jupiter\3.9.0\mockito-junit-jupiter-3.9.0.jar;C:\Users\SNG-012\.m2\repository\org\skyscreamer\jsonassert\1.5.0\jsonassert-1.5.0.jar;C:\Users\SNG-012\.m2\repository\com\vaadin\external\google\android-json\0.0.20131108.vaadin1\android-json-0.0.20131108.vaadin1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-test\5.3.15\spring-test-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\xmlunit\xmlunit-core\2.8.4\xmlunit-core-2.8.4.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-starter-test\2.3.1\mybatis-spring-boot-starter-test-2.3.1.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-test-autoconfigure\2.3.1\mybatis-spring-boot-test-autoconfigure-2.3.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-tx\5.3.15\spring-tx-5.3.15.jar;C:\Users\SNG-012\.m2\repository\com\auth0\java-jwt\3.10.3\java-jwt-3.10.3.jar;C:\Users\SNG-012\.m2\repository\commons-codec\commons-codec\1.15\commons-codec-1.15.jar;C:\Users\SNG-012\.m2\repository\org\assertj\assertj-core\3.19.0\assertj-core-3.19.0.jar;C:\Users\SNG-012\.m2\repository\cn\hutool\hutool-all\5.4.0\hutool-all-5.4.0.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus-boot-starter\3.5.1\mybatis-plus-boot-starter-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus\3.5.1\mybatis-plus-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus-extension\3.5.1\mybatis-plus-extension-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus-core\3.5.1\mybatis-plus-core-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus-annotation\3.5.1\mybatis-plus-annotation-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\github\jsqlparser\jsqlparser\4.3\jsqlparser-4.3.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\2.5.9\spring-boot-autoconfigure-2.5.9.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\dynamic-datasource-spring-boot-starter\3.5.1\dynamic-datasource-spring-boot-starter-3.5.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-aop\2.5.9\spring-boot-starter-aop-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-swagger2\2.9.2\springfox-swagger2-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\swagger\swagger-models\1.5.20\swagger-models-1.5.20.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-spi\2.9.2\springfox-spi-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-core\2.9.2\springfox-core-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-schema\2.9.2\springfox-schema-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-swagger-common\2.9.2\springfox-swagger-common-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-spring-web\2.9.2\springfox-spring-web-2.9.2.jar;C:\Users\SNG-012\.m2\repository\com\google\guava\guava\20.0\guava-20.0.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\plugin\spring-plugin-core\1.2.0.RELEASE\spring-plugin-core-1.2.0.RELEASE.jar;C:\Users\SNG-012\.m2\repository\org\springframework\plugin\spring-plugin-metadata\1.2.0.RELEASE\spring-plugin-metadata-1.2.0.RELEASE.jar;C:\Users\SNG-012\.m2\repository\org\mapstruct\mapstruct\1.2.0.Final\mapstruct-1.2.0.Final.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-swagger-ui\2.9.2\springfox-swagger-ui-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\swagger\swagger-annotations\1.5.20\swagger-annotations-1.5.20.jar;C:\Users\SNG-012\.m2\repository\com\github\xingshuangs\iot-communication\1.4.2\iot-communication-1.4.2.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-cache\2.5.9\spring-boot-starter-cache-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-context-support\5.3.15\spring-context-support-5.3.15.jar;C:\Users\SNG-012\.m2\repository\com\rabbitmq\amqp-client\5.13.1\amqp-client-5.13.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-amqp\2.5.9\spring-boot-starter-amqp-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-messaging\5.3.15\spring-messaging-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\amqp\spring-rabbit\2.3.14\spring-rabbit-2.3.14.jar;C:\Users\SNG-012\.m2\repository\org\springframework\amqp\spring-amqp\2.3.14\spring-amqp-2.3.14.jar;C:\Users\SNG-012\.m2\repository\org\springframework\retry\spring-retry\1.3.1\spring-retry-1.3.1.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.13.0\jackson-databind-2.13.0.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.13.0\jackson-core-2.13.0.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.13.0\jackson-annotations-2.13.0.jar;C:\Users\SNG-012\.m2\repository\io\netty\netty-all\4.1.36.Final\netty-all-4.1.36.Final.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-data-jpa\2.5.9\spring-boot-starter-data-jpa-2.5.9.jar;C:\Users\SNG-012\.m2\repository\jakarta\transaction\jakarta.transaction-api\1.3.3\jakarta.transaction-api-1.3.3.jar;C:\Users\SNG-012\.m2\repository\jakarta\persistence\jakarta.persistence-api\2.2.3\jakarta.persistence-api-2.2.3.jar;C:\Users\SNG-012\.m2\repository\org\hibernate\hibernate-core\5.4.33\hibernate-core-5.4.33.jar;C:\Users\SNG-012\.m2\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;C:\Users\SNG-012\.m2\repository\org\javassist\javassist\3.27.0-GA\javassist-3.27.0-GA.jar;C:\Users\SNG-012\.m2\repository\antlr\antlr\2.7.7\antlr-2.7.7.jar;C:\Users\SNG-012\.m2\repository\org\jboss\jandex\2.2.3.Final\jandex-2.2.3.Final.jar;C:\Users\SNG-012\.m2\repository\org\dom4j\dom4j\2.1.3\dom4j-2.1.3.jar;C:\Users\SNG-012\.m2\repository\org\hibernate\common\hibernate-commons-annotations\5.1.2.Final\hibernate-commons-annotations-5.1.2.Final.jar;C:\Users\SNG-012\.m2\repository\org\glassfish\jaxb\jaxb-runtime\2.3.5\jaxb-runtime-2.3.5.jar;C:\Users\SNG-012\.m2\repository\org\glassfish\jaxb\txw2\2.3.5\txw2-2.3.5.jar;C:\Users\SNG-012\.m2\repository\com\sun\istack\istack-commons-runtime\3.0.12\istack-commons-runtime-3.0.12.jar;C:\Users\SNG-012\.m2\repository\com\sun\activation\jakarta.activation\1.2.2\jakarta.activation-1.2.2.jar;C:\Users\SNG-012\.m2\repository\org\springframework\data\spring-data-jpa\2.5.8\spring-data-jpa-2.5.8.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-orm\5.3.15\spring-orm-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-aspects\5.3.15\spring-aspects-5.3.15.jar;"/>
- <property name="java.vm.vendor" value="Oracle Corporation"/>
- <property name="sun.arch.data.model" value="64"/>
- <property name="user.variant" value=""/>
- <property name="java.vendor.url" value="http://java.oracle.com/"/>
- <property name="user.timezone" value="Asia/Shanghai"/>
- <property name="java.vm.specification.version" value="1.8"/>
- <property name="os.name" value="Windows 10"/>
- <property name="user.country" value="CN"/>
- <property name="sun.java.launcher" value="SUN_STANDARD"/>
- <property name="sun.boot.library.path" value="C:\Program Files\Java\jdk1.8.0_121\jre\bin"/>
- <property name="sun.java.command" value="C:\Users\SNG-012\AppData\Local\Temp\surefire6753504794343487260\surefirebooter2512628117312458217.jar C:\Users\SNG-012\AppData\Local\Temp\surefire6753504794343487260 2024-02-26T10-31-20_305-jvmRun1 surefire218270707117368528tmp surefire_05038678481118318350tmp"/>
- <property name="surefire.test.class.path" value="D:\xm4\HangZhouMes\UnLoadGlassModule\target\test-classes;D:\xm4\HangZhouMes\UnLoadGlassModule\target\classes;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-web\2.5.9\spring-boot-starter-web-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter\2.5.9\spring-boot-starter-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot\2.5.9\spring-boot-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-logging\2.5.9\spring-boot-starter-logging-2.5.9.jar;C:\Users\SNG-012\.m2\repository\ch\qos\logback\logback-classic\1.2.10\logback-classic-1.2.10.jar;C:\Users\SNG-012\.m2\repository\ch\qos\logback\logback-core\1.2.10\logback-core-1.2.10.jar;C:\Users\SNG-012\.m2\repository\org\apache\logging\log4j\log4j-to-slf4j\2.17.1\log4j-to-slf4j-2.17.1.jar;C:\Users\SNG-012\.m2\repository\org\apache\logging\log4j\log4j-api\2.17.1\log4j-api-2.17.1.jar;C:\Users\SNG-012\.m2\repository\org\slf4j\jul-to-slf4j\1.7.33\jul-to-slf4j-1.7.33.jar;C:\Users\SNG-012\.m2\repository\jakarta\annotation\jakarta.annotation-api\1.3.5\jakarta.annotation-api-1.3.5.jar;C:\Users\SNG-012\.m2\repository\org\yaml\snakeyaml\1.28\snakeyaml-1.28.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-json\2.5.9\spring-boot-starter-json-2.5.9.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jdk8\2.12.6\jackson-datatype-jdk8-2.12.6.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\datatype\jackson-datatype-jsr310\2.12.6\jackson-datatype-jsr310-2.12.6.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\module\jackson-module-parameter-names\2.12.6\jackson-module-parameter-names-2.12.6.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-tomcat\2.5.9\spring-boot-starter-tomcat-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\apache\tomcat\embed\tomcat-embed-core\9.0.56\tomcat-embed-core-9.0.56.jar;C:\Users\SNG-012\.m2\repository\org\apache\tomcat\embed\tomcat-embed-el\9.0.56\tomcat-embed-el-9.0.56.jar;C:\Users\SNG-012\.m2\repository\org\apache\tomcat\embed\tomcat-embed-websocket\9.0.56\tomcat-embed-websocket-9.0.56.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-web\5.3.15\spring-web-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-webmvc\5.3.15\spring-webmvc-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-aop\5.3.15\spring-aop-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-context\5.3.15\spring-context-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-expression\5.3.15\spring-expression-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-starter\2.3.1\mybatis-spring-boot-starter-2.3.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-jdbc\2.5.9\spring-boot-starter-jdbc-2.5.9.jar;C:\Users\SNG-012\.m2\repository\com\zaxxer\HikariCP\4.0.3\HikariCP-4.0.3.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-jdbc\5.3.15\spring-jdbc-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-autoconfigure\2.3.1\mybatis-spring-boot-autoconfigure-2.3.1.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\mybatis\3.5.13\mybatis-3.5.13.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\mybatis-spring\2.1.1\mybatis-spring-2.1.1.jar;C:\Users\SNG-012\.m2\repository\com\alibaba\fastjson\1.2.70\fastjson-1.2.70.jar;C:\Users\SNG-012\.m2\repository\org\springframework\data\spring-data-commons\2.3.1.RELEASE\spring-data-commons-2.3.1.RELEASE.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-core\5.3.15\spring-core-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-jcl\5.3.15\spring-jcl-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-beans\5.3.15\spring-beans-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\slf4j\slf4j-api\1.7.33\slf4j-api-1.7.33.jar;C:\Users\SNG-012\.m2\repository\mysql\mysql-connector-java\8.0.20\mysql-connector-java-8.0.20.jar;C:\Users\SNG-012\.m2\repository\org\projectlombok\lombok\1.18.22\lombok-1.18.22.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-test\2.5.9\spring-boot-starter-test-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-test\2.5.9\spring-boot-test-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-test-autoconfigure\2.5.9\spring-boot-test-autoconfigure-2.5.9.jar;C:\Users\SNG-012\.m2\repository\com\jayway\jsonpath\json-path\2.5.0\json-path-2.5.0.jar;C:\Users\SNG-012\.m2\repository\net\minidev\json-smart\2.4.7\json-smart-2.4.7.jar;C:\Users\SNG-012\.m2\repository\net\minidev\accessors-smart\2.4.7\accessors-smart-2.4.7.jar;C:\Users\SNG-012\.m2\repository\org\ow2\asm\asm\9.1\asm-9.1.jar;C:\Users\SNG-012\.m2\repository\jakarta\xml\bind\jakarta.xml.bind-api\2.3.3\jakarta.xml.bind-api-2.3.3.jar;C:\Users\SNG-012\.m2\repository\jakarta\activation\jakarta.activation-api\1.2.2\jakarta.activation-api-1.2.2.jar;C:\Users\SNG-012\.m2\repository\org\hamcrest\hamcrest\2.2\hamcrest-2.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\jupiter\junit-jupiter\5.7.2\junit-jupiter-5.7.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\jupiter\junit-jupiter-api\5.7.2\junit-jupiter-api-5.7.2.jar;C:\Users\SNG-012\.m2\repository\org\apiguardian\apiguardian-api\1.1.0\apiguardian-api-1.1.0.jar;C:\Users\SNG-012\.m2\repository\org\opentest4j\opentest4j\1.2.0\opentest4j-1.2.0.jar;C:\Users\SNG-012\.m2\repository\org\junit\platform\junit-platform-commons\1.7.2\junit-platform-commons-1.7.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\jupiter\junit-jupiter-params\5.7.2\junit-jupiter-params-5.7.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\jupiter\junit-jupiter-engine\5.7.2\junit-jupiter-engine-5.7.2.jar;C:\Users\SNG-012\.m2\repository\org\junit\platform\junit-platform-engine\1.7.2\junit-platform-engine-1.7.2.jar;C:\Users\SNG-012\.m2\repository\org\mockito\mockito-core\3.9.0\mockito-core-3.9.0.jar;C:\Users\SNG-012\.m2\repository\net\bytebuddy\byte-buddy\1.10.22\byte-buddy-1.10.22.jar;C:\Users\SNG-012\.m2\repository\net\bytebuddy\byte-buddy-agent\1.10.22\byte-buddy-agent-1.10.22.jar;C:\Users\SNG-012\.m2\repository\org\objenesis\objenesis\3.2\objenesis-3.2.jar;C:\Users\SNG-012\.m2\repository\org\mockito\mockito-junit-jupiter\3.9.0\mockito-junit-jupiter-3.9.0.jar;C:\Users\SNG-012\.m2\repository\org\skyscreamer\jsonassert\1.5.0\jsonassert-1.5.0.jar;C:\Users\SNG-012\.m2\repository\com\vaadin\external\google\android-json\0.0.20131108.vaadin1\android-json-0.0.20131108.vaadin1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-test\5.3.15\spring-test-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\xmlunit\xmlunit-core\2.8.4\xmlunit-core-2.8.4.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-starter-test\2.3.1\mybatis-spring-boot-starter-test-2.3.1.jar;C:\Users\SNG-012\.m2\repository\org\mybatis\spring\boot\mybatis-spring-boot-test-autoconfigure\2.3.1\mybatis-spring-boot-test-autoconfigure-2.3.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-tx\5.3.15\spring-tx-5.3.15.jar;C:\Users\SNG-012\.m2\repository\com\auth0\java-jwt\3.10.3\java-jwt-3.10.3.jar;C:\Users\SNG-012\.m2\repository\commons-codec\commons-codec\1.15\commons-codec-1.15.jar;C:\Users\SNG-012\.m2\repository\org\assertj\assertj-core\3.19.0\assertj-core-3.19.0.jar;C:\Users\SNG-012\.m2\repository\cn\hutool\hutool-all\5.4.0\hutool-all-5.4.0.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus-boot-starter\3.5.1\mybatis-plus-boot-starter-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus\3.5.1\mybatis-plus-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus-extension\3.5.1\mybatis-plus-extension-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus-core\3.5.1\mybatis-plus-core-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\mybatis-plus-annotation\3.5.1\mybatis-plus-annotation-3.5.1.jar;C:\Users\SNG-012\.m2\repository\com\github\jsqlparser\jsqlparser\4.3\jsqlparser-4.3.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-autoconfigure\2.5.9\spring-boot-autoconfigure-2.5.9.jar;C:\Users\SNG-012\.m2\repository\com\baomidou\dynamic-datasource-spring-boot-starter\3.5.1\dynamic-datasource-spring-boot-starter-3.5.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-aop\2.5.9\spring-boot-starter-aop-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\aspectj\aspectjweaver\1.9.7\aspectjweaver-1.9.7.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-swagger2\2.9.2\springfox-swagger2-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\swagger\swagger-models\1.5.20\swagger-models-1.5.20.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-spi\2.9.2\springfox-spi-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-core\2.9.2\springfox-core-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-schema\2.9.2\springfox-schema-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-swagger-common\2.9.2\springfox-swagger-common-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-spring-web\2.9.2\springfox-spring-web-2.9.2.jar;C:\Users\SNG-012\.m2\repository\com\google\guava\guava\20.0\guava-20.0.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\classmate\1.5.1\classmate-1.5.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\plugin\spring-plugin-core\1.2.0.RELEASE\spring-plugin-core-1.2.0.RELEASE.jar;C:\Users\SNG-012\.m2\repository\org\springframework\plugin\spring-plugin-metadata\1.2.0.RELEASE\spring-plugin-metadata-1.2.0.RELEASE.jar;C:\Users\SNG-012\.m2\repository\org\mapstruct\mapstruct\1.2.0.Final\mapstruct-1.2.0.Final.jar;C:\Users\SNG-012\.m2\repository\io\springfox\springfox-swagger-ui\2.9.2\springfox-swagger-ui-2.9.2.jar;C:\Users\SNG-012\.m2\repository\io\swagger\swagger-annotations\1.5.20\swagger-annotations-1.5.20.jar;C:\Users\SNG-012\.m2\repository\com\github\xingshuangs\iot-communication\1.4.2\iot-communication-1.4.2.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-cache\2.5.9\spring-boot-starter-cache-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-context-support\5.3.15\spring-context-support-5.3.15.jar;C:\Users\SNG-012\.m2\repository\com\rabbitmq\amqp-client\5.13.1\amqp-client-5.13.1.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-amqp\2.5.9\spring-boot-starter-amqp-2.5.9.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-messaging\5.3.15\spring-messaging-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\amqp\spring-rabbit\2.3.14\spring-rabbit-2.3.14.jar;C:\Users\SNG-012\.m2\repository\org\springframework\amqp\spring-amqp\2.3.14\spring-amqp-2.3.14.jar;C:\Users\SNG-012\.m2\repository\org\springframework\retry\spring-retry\1.3.1\spring-retry-1.3.1.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\core\jackson-databind\2.13.0\jackson-databind-2.13.0.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\core\jackson-core\2.13.0\jackson-core-2.13.0.jar;C:\Users\SNG-012\.m2\repository\com\fasterxml\jackson\core\jackson-annotations\2.13.0\jackson-annotations-2.13.0.jar;C:\Users\SNG-012\.m2\repository\io\netty\netty-all\4.1.36.Final\netty-all-4.1.36.Final.jar;C:\Users\SNG-012\.m2\repository\org\springframework\boot\spring-boot-starter-data-jpa\2.5.9\spring-boot-starter-data-jpa-2.5.9.jar;C:\Users\SNG-012\.m2\repository\jakarta\transaction\jakarta.transaction-api\1.3.3\jakarta.transaction-api-1.3.3.jar;C:\Users\SNG-012\.m2\repository\jakarta\persistence\jakarta.persistence-api\2.2.3\jakarta.persistence-api-2.2.3.jar;C:\Users\SNG-012\.m2\repository\org\hibernate\hibernate-core\5.4.33\hibernate-core-5.4.33.jar;C:\Users\SNG-012\.m2\repository\org\jboss\logging\jboss-logging\3.4.3.Final\jboss-logging-3.4.3.Final.jar;C:\Users\SNG-012\.m2\repository\org\javassist\javassist\3.27.0-GA\javassist-3.27.0-GA.jar;C:\Users\SNG-012\.m2\repository\antlr\antlr\2.7.7\antlr-2.7.7.jar;C:\Users\SNG-012\.m2\repository\org\jboss\jandex\2.2.3.Final\jandex-2.2.3.Final.jar;C:\Users\SNG-012\.m2\repository\org\dom4j\dom4j\2.1.3\dom4j-2.1.3.jar;C:\Users\SNG-012\.m2\repository\org\hibernate\common\hibernate-commons-annotations\5.1.2.Final\hibernate-commons-annotations-5.1.2.Final.jar;C:\Users\SNG-012\.m2\repository\org\glassfish\jaxb\jaxb-runtime\2.3.5\jaxb-runtime-2.3.5.jar;C:\Users\SNG-012\.m2\repository\org\glassfish\jaxb\txw2\2.3.5\txw2-2.3.5.jar;C:\Users\SNG-012\.m2\repository\com\sun\istack\istack-commons-runtime\3.0.12\istack-commons-runtime-3.0.12.jar;C:\Users\SNG-012\.m2\repository\com\sun\activation\jakarta.activation\1.2.2\jakarta.activation-1.2.2.jar;C:\Users\SNG-012\.m2\repository\org\springframework\data\spring-data-jpa\2.5.8\spring-data-jpa-2.5.8.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-orm\5.3.15\spring-orm-5.3.15.jar;C:\Users\SNG-012\.m2\repository\org\springframework\spring-aspects\5.3.15\spring-aspects-5.3.15.jar;"/>
- <property name="sun.cpu.endian" value="little"/>
- <property name="user.home" value="C:\Users\SNG-012"/>
- <property name="user.language" value="zh"/>
- <property name="java.specification.vendor" value="Oracle Corporation"/>
- <property name="java.home" value="C:\Program Files\Java\jdk1.8.0_121\jre"/>
- <property name="basedir" value="D:\xm4\HangZhouMes\UnLoadGlassModule"/>
- <property name="file.separator" value="\"/>
- <property name="line.separator" value=" "/>
- <property name="java.vm.specification.vendor" value="Oracle Corporation"/>
- <property name="java.specification.name" value="Java Platform API Specification"/>
- <property name="java.awt.graphicsenv" value="sun.awt.Win32GraphicsEnvironment"/>
- <property name="surefire.real.class.path" value="C:\Users\SNG-012\AppData\Local\Temp\surefire6753504794343487260\surefirebooter2512628117312458217.jar"/>
- <property name="sun.boot.class.path" value="C:\Program Files\Java\jdk1.8.0_121\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\rt.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\sunrsasign.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_121\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_121\jre\classes"/>
- <property name="user.script" value=""/>
- <property name="sun.management.compiler" value="HotSpot 64-Bit Tiered Compilers"/>
- <property name="java.runtime.version" value="1.8.0_121-b13"/>
- <property name="user.name" value="SNG-012"/>
- <property name="path.separator" value=";"/>
- <property name="os.version" value="10.0"/>
- <property name="java.endorsed.dirs" value="C:\Program Files\Java\jdk1.8.0_121\jre\lib\endorsed"/>
- <property name="java.runtime.name" value="Java(TM) SE Runtime Environment"/>
- <property name="file.encoding" value="GBK"/>
- <property name="java.vm.name" value="Java HotSpot(TM) 64-Bit Server VM"/>
- <property name="localRepository" value="C:\Users\SNG-012\.m2\repository"/>
- <property name="java.vendor.url.bug" value="http://bugreport.sun.com/bugreport/"/>
- <property name="java.io.tmpdir" value="C:\Users\SNG-012\AppData\Local\Temp\"/>
- <property name="idea.version" value="2021.1.3"/>
- <property name="java.version" value="1.8.0_121"/>
- <property name="user.dir" value="D:\xm4\HangZhouMes\UnLoadGlassModule"/>
- <property name="os.arch" value="amd64"/>
- <property name="java.vm.specification.name" value="Java Virtual Machine Specification"/>
- <property name="java.awt.printerjob" value="sun.awt.windows.WPrinterJob"/>
- <property name="sun.os.patch.level" value=""/>
- <property name="java.library.path" value="C:\Program Files\Java\jdk1.8.0_121\jre\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;D:\vm\bin\;D:\jdk17.0.8\bin;D:\apache-jmeter-5.4.1\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;D:/benxiaohai/mysql8/mysql8/mysql8\bin;C:\Program Files\Java\jdk1.8.0_121\bin;C:\Program Files\Tomcat\apache-tomcat-8.0.39\bin;D:\涓嬭浇\ADB;D;\github\platform-tools;C:\Program Files\python;C:\Program Files\python\Scripts;D:\BtSoft\panel\script;C:\Program Files\Google\Chrome\Application;C:\Program Files\apache-maven-3.9.1\bin;D:\寰俊web寮�鍙戣�呭伐鍏穃dll;C:\Pro;ram Files (x86)\NetSarang\Xshell 7\;C:\Program Files\Git\cmd;C:\Program Files\TortoiseGit\bin;D:\宸ヤ綔\apache-ant-1.9.16-bin\apache-ant-1.9.16\bin;D:\宸ヤ綔\Microsoft VS Code\bin;C:\Program Files (x86)\nodejs\;C:\Program Files\Tomcat2\apache-tomcat2\bin;C:\Program Files\Docker;C:\Program Files\Docker\Docker\resources\bin;D:\Erlang OTP\bin;D:\MQ\rabbitmq_server-3.12.12\sbin;D:\python\Scripts\;D:\python\;C:\Users\SNG-012\AppData\Local\Microsoft\WindowsApps;C:\Program Files\Google\Chrome\Application;C:\Users\SNG-012\AppData\Roaming\npm;."/>
- <property name="java.vm.info" value="mixed mode"/>
- <property name="java.vendor" value="Oracle Corporation"/>
- <property name="java.vm.version" value="25.121-b13"/>
- <property name="java.ext.dirs" value="C:\Program Files\Java\jdk1.8.0_121\jre\lib\ext;C:\Windows\Sun\Java\lib\ext"/>
- <property name="sun.io.unicode.encoding" value="UnicodeLittle"/>
- <property name="java.class.version" value="52.0"/>
- </properties>
- <testcase name="contextLoads" classname="com.mes.MesApplicationTests" time="0.09"/>
-</testsuite>
\ No newline at end of file
diff --git a/UnLoadGlassModule/target/surefire-reports/com.mes.MesApplicationTests.txt b/UnLoadGlassModule/target/surefire-reports/com.mes.MesApplicationTests.txt
deleted file mode 100644
index 92fc39e..0000000
--- a/UnLoadGlassModule/target/surefire-reports/com.mes.MesApplicationTests.txt
+++ /dev/null
@@ -1,4 +0,0 @@
--------------------------------------------------------------------------------
-Test set: com.mes.MesApplicationTests
--------------------------------------------------------------------------------
-Tests run: 1, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 7.757 s - in com.mes.MesApplicationTests
--
Gitblit v1.8.0