From 48db618606f0f0cafd1ce795f8bf26a0bcec2581 Mon Sep 17 00:00:00 2001
From: zhangchao <zc857179121@qq.com>
Date: 星期六, 20 七月 2024 07:56:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/xgmFlasrs' into xgmFlasrs
---
src/main/java/com/zy/third/erp/entity/InDetTB.java | 137 ++
src/main/java/com/zy/third/lk/entity/OutHedTBBak.java | 101 +
src/main/java/com/zy/asrs/mapper/LocDetlMapper.java | 7
src/main/java/com/zy/third/erp/entity/OutDetTB.java | 132 +
src/main/webapp/views/locDetlStatis/locDetlStatis.html | 35
src/main/java/com/zy/third/erp/entity/OutHedTB.java | 100 +
src/main/resources/mapper/LocDetlMapper.xml | 43
src/main/java/com/zy/common/service/erp/ErpSqlServer.java | 420 ++++++
src/main/java/com/zy/asrs/service/OrderDetlService.java | 2
src/main/java/com/zy/asrs/entity/Mat.java | 34
src/main/java/com/zy/asrs/entity/WrkDetl.java | 27
src/main/java/com/zy/third/erp/entity/OutCancelTB.java | 47
src/main/java/com/zy/third/erp/task/ERPOutCancelScheduler.java | 63
src/main/java/com/zy/asrs/entity/OrderDetl.java | 208 +-
src/main/java/com/zy/asrs/service/LocDetlService.java | 3
src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java | 4
src/main/java/com/zy/third/lk/entity/InCancelTB.java | 58
src/main/java/com/zy/third/erp/task/ERPItemScheduler.java | 63
src/main/java/com/zy/third/lk/task/LKInTBScheduler.java | 240 +++
src/main/resources/mapper/OrderDetlMapper.xml | 6
src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java | 78 +
src/main/java/com/zy/common/service/erp/ErpDbProperties.java | 30
src/main/java/com/zy/asrs/entity/LocDetl.java | 28
src/main/java/com/zy/asrs/entity/StockStatisDTO.java | 16
src/main/java/com/zy/third/lk/entity/InDetTBBak.java | 142 ++
src/main/java/com/zy/third/erp/task/ERPInCancelScheduler.java | 62
src/main/java/com/zy/third/lk/entity/InHedTB.java | 121 +
src/main/java/com/zy/third/erp/task/ERPInHedTBScheduler.java | 80 +
src/main/java/com/zy/third/lk/entity/OutDetTB.java | 134 ++
src/main/java/com/zy/third/erp/task/ERPInOrOutService.java | 240 +++
src/main/java/update20240719.sql | 168 ++
src/main/resources/license.lic | 0
src/main/java/com/zy/third/erp/entity/ItemTB.java | 100 +
.gitignore | 2
src/main/java/com/zy/third/lk/entity/ErpLKStorage.java | 70 +
src/main/java/com/zy/third/erp/task/ERPItemService.java | 126 +
pom.xml | 7
src/main/java/com/zy/third/lk/entity/OutHedTB.java | 107 +
src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java | 66
src/main/java/com/zy/third/erp/entity/InCancelTB.java | 79 +
src/main/java/com/zy/asrs/entity/DocType.java | 7
src/main/java/com/zy/third/lk/entity/OutDetTBBak.java | 128 +
src/main/java/com/zy/asrs/entity/WrkDetlLog.java | 27
src/main/java/com/zy/asrs/utils/EntityToMapConverter.java | 63
src/main/java/com/zy/asrs/controller/LocDetlController.java | 10
src/main/java/com/zy/third/lk/entity/InDetTB.java | 146 ++
src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java | 9
version/lib/framework-3.4.0.jar | 0
src/main/java/com/zy/asrs/entity/Order.java | 4
src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java | 5
src/main/java/com/zy/third/erp/entity/InHedTB.java | 98 +
src/main/java/com/zy/third/lk/entity/InHedTBBak.java | 118 +
src/main/resources/application.yml | 13
53 files changed, 3,915 insertions(+), 99 deletions(-)
diff --git a/.gitignore b/.gitignore
index 9224005..a964ba0 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,11 +13,13 @@
.springBeans
.sts4-cache
+
### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr
+src/test
### NetBeans ###
/nbproject/private/
diff --git a/pom.xml b/pom.xml
index e7e14e6..0431338 100644
--- a/pom.xml
+++ b/pom.xml
@@ -108,6 +108,13 @@
<artifactId>truelicense-core</artifactId>
<version>1.33</version>
</dependency>
+
+ <dependency>
+ <groupId>org.springframework.boot</groupId>
+ <artifactId>spring-boot-starter-test</artifactId>
+ <scope>test</scope>
+ </dependency>
+
</dependencies>
<build>
diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java
index 6eba1f6..a202a28 100644
--- a/src/main/java/com/zy/asrs/controller/LocDetlController.java
+++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java
@@ -15,6 +15,7 @@
import com.zy.asrs.entity.LocDetl;
import com.zy.asrs.entity.ManLocDetl;
import com.zy.asrs.entity.Mat;
+import com.zy.asrs.entity.StockStatisDTO;
import com.zy.asrs.mapper.LocDetlMapper;
import com.zy.asrs.service.LocDetlService;
import com.zy.asrs.service.ManLocDetlService;
@@ -232,13 +233,8 @@
public R statis(@RequestParam(defaultValue = "1")Integer curr,
@RequestParam(defaultValue = "10")Integer limit,
@RequestParam Map<String, Object> param) {
- Page<LocDetl> stockStatis = locDetlService.getStockStatis(toPage(curr, limit, param, LocDetl.class));
- for (LocDetl locDetl : stockStatis.getRecords()) {
- Mat mat = matService.selectByMatnr(locDetl.getMatnr());
- if (mat != null) {
- locDetl.sync(mat);
- }
- }
+ System.out.println(JSONObject.toJSON(param));
+ Page<StockStatisDTO> stockStatis = locDetlService.getStockStatis(toPage(curr, limit, param, StockStatisDTO.class));
return R.ok().add(stockStatis);
}
diff --git a/src/main/java/com/zy/asrs/entity/DocType.java b/src/main/java/com/zy/asrs/entity/DocType.java
index 3cd4c70..69560b0 100644
--- a/src/main/java/com/zy/asrs/entity/DocType.java
+++ b/src/main/java/com/zy/asrs/entity/DocType.java
@@ -38,6 +38,13 @@
private String docName;
/**
+ * 绫诲瀷缂栫爜
+ */
+ @ApiModelProperty(value= "绫诲瀷缂栫爜")
+ @TableField("doc_code")
+ private String docCode;
+
+ /**
* 鍏ュ簱 1: 鍏ュ簱 0: 闈炲叆搴�
*/
@ApiModelProperty(value= "鍏ュ簱 1: 鍏ュ簱 0: 闈炲叆搴� ")
diff --git a/src/main/java/com/zy/asrs/entity/LocDetl.java b/src/main/java/com/zy/asrs/entity/LocDetl.java
index 1a68af5..73febfb 100644
--- a/src/main/java/com/zy/asrs/entity/LocDetl.java
+++ b/src/main/java/com/zy/asrs/entity/LocDetl.java
@@ -158,6 +158,34 @@
@ApiModelProperty(value= "澶囨敞")
private String memo;
+
+ /**
+ * 璁㈠崟鍙�
+ */
+ @TableField("out_order_no")
+ private String outOrderNo;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("lu_hao")
+ private String luHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("pg_no")
+ private String sPgNO;
+
+
+ private String temp1;
+
+
+ private String temp2;
+
+ private String temp3;
+
+
public String getLocNo$(){
LocMastService service = SpringUtils.getBean(LocMastService.class);
LocMast locMast = service.selectById(this.locNo);
diff --git a/src/main/java/com/zy/asrs/entity/Mat.java b/src/main/java/com/zy/asrs/entity/Mat.java
index bee0346..5e779e6 100644
--- a/src/main/java/com/zy/asrs/entity/Mat.java
+++ b/src/main/java/com/zy/asrs/entity/Mat.java
@@ -325,6 +325,40 @@
@TableField("store_max_date")
private Integer storeMaxDate;
+ /**
+ * 澶栭儴涓婚敭
+ */
+// @TableField("auto_id")
+// private Integer autoId;
+// /**
+// * 璁㈠崟鍙�
+// */
+// @TableField("out_order_no")
+// private String outOrderNo;
+//
+// /**
+// * 鐐夊彿\瀹㈡埛鍥惧彿
+// */
+// @TableField("lu_hao")
+// private String luHao;
+//
+// /**
+// * 宸ュ崟鍙�
+// */
+// @TableField("pg_no")
+// private String sPgNO;
+
+ @TableField("temp1")
+ private String temp1;
+
+ @TableField("temp2")
+ private String temp2;
+
+ @TableField("temp3")
+ private String temp3;
+
+
+
public Mat() {}
public Mat(String uuid,Long tagId,String matnr,String maktx,String name,String specs,String model,String color,String brand,String unit,Double price,String sku,Double units,String barcode,String origin,String manu,String manuDate,String itemNum,Double safeQty,Double weight,Double length,Double volume,String threeCode,String supp,String suppCode,Integer beBatch,String deadTime,Integer deadWarn,Integer source,Integer inspect,Integer danger,Integer status,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
diff --git a/src/main/java/com/zy/asrs/entity/Order.java b/src/main/java/com/zy/asrs/entity/Order.java
index 5aebc90..bbfd19e 100644
--- a/src/main/java/com/zy/asrs/entity/Order.java
+++ b/src/main/java/com/zy/asrs/entity/Order.java
@@ -93,7 +93,7 @@
* 瀹㈡埛缂栧彿
*/
@ApiModelProperty(value= "瀹㈡埛缂栧彿")
- private Long cstmr;
+ private String cstmr;
/**
* 瀹㈡埛
@@ -270,7 +270,7 @@
public Order() {}
- public Order(String uuid,String orderNo,String orderTime,Long docType,Long itemId,String itemName,Long allotItemId,String defNumber,String number,Long cstmr,String cstmrName,String tel,String operMemb,Double totalFee,Double discount,Double discountFee,Double otherFee,Double actFee,Integer payType,String salesman,Integer accountDay,Integer postFeeType,Double postFee,Date payTime,Date sendTime,String shipName,String shipCode,Long settle,Integer status,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
+ public Order(String uuid,String orderNo,String orderTime,Long docType,Long itemId,String itemName,Long allotItemId,String defNumber,String number,String cstmr,String cstmrName,String tel,String operMemb,Double totalFee,Double discount,Double discountFee,Double otherFee,Double actFee,Integer payType,String salesman,Integer accountDay,Integer postFeeType,Double postFee,Date payTime,Date sendTime,String shipName,String shipCode,Long settle,Integer status,Long createBy,Date createTime,Long updateBy,Date updateTime,String memo) {
this.uuid = uuid;
this.orderNo = orderNo;
this.orderTime = orderTime;
diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java
index f08621d..029c03b 100644
--- a/src/main/java/com/zy/asrs/entity/OrderDetl.java
+++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java
@@ -27,21 +27,21 @@
/**
* ID
*/
- @ApiModelProperty(value= "ID")
+ @ApiModelProperty(value = "ID")
@TableId(value = "id", type = IdType.AUTO)
private Long id;
/**
* 璁㈠崟鍐呯爜
*/
- @ApiModelProperty(value= "璁㈠崟鍐呯爜")
+ @ApiModelProperty(value = "璁㈠崟鍐呯爜")
@TableField("order_id")
private Long orderId;
/**
* 鍗曟嵁缂栧彿
*/
- @ApiModelProperty(value= "鍗曟嵁缂栧彿")
+ @ApiModelProperty(value = "鍗曟嵁缂栧彿")
@TableField("order_no")
private String orderNo;
@@ -49,253 +49,297 @@
/**
* 鏁伴噺
*/
- @ApiModelProperty(value= "鏁伴噺")
+ @ApiModelProperty(value = "鏁伴噺")
private Double anfme;
/**
* 浣滀笟鏁伴噺
- *
- * 鍏ュ簱 : 缁勬墭瀹屾垚锛岀粍鎵樻。銆佸伐浣滄。銆佸叆搴撳畬鎴愭暟閲�
- * 鍑哄簱 : 宸ヤ綔妗c�佸嚭搴撳畬鎴愭暟閲�
+ * <p>
+ * 鍏ュ簱 : 缁勬墭瀹屾垚锛岀粍鎵樻。銆佸伐浣滄。銆佸叆搴撳畬鎴愭暟閲�
+ * 鍑哄簱 : 宸ヤ綔妗c�佸嚭搴撳畬鎴愭暟閲�
*/
- @ApiModelProperty(value= "浣滀笟鏁伴噺")
+ @ApiModelProperty(value = "浣滀笟鏁伴噺")
@TableField("work_qty")
private Double workQty;
/**
* 瀹屾垚鏁伴噺
- *
- * 鍏ュ簱 : qty 馃憜
- * 鍑哄簱 : qty 馃憜
+ * <p>
+ * 鍏ュ簱 : qty 馃憜
+ * 鍑哄簱 : qty 馃憜
*/
- @ApiModelProperty(value= "瀹屾垚鏁伴噺")
+ @ApiModelProperty(value = "瀹屾垚鏁伴噺")
private Double qty;
/**
* 鍟嗗搧缂栫爜
*/
- @ApiModelProperty(value= "鍟嗗搧缂栫爜")
+ @ApiModelProperty(value = "鍟嗗搧缂栫爜")
private String matnr;
/**
* 鍟嗗搧鍚嶇О
*/
- @ApiModelProperty(value= "鍟嗗搧鍚嶇О")
+ @ApiModelProperty(value = "鍟嗗搧鍚嶇О")
private String maktx;
/**
* 鎵瑰彿
*/
- @ApiModelProperty(value= "鎵瑰彿")
+ @ApiModelProperty(value = "鎵瑰彿")
private String batch;
/**
* 瑙勬牸
*/
- @ApiModelProperty(value= "瑙勬牸")
+ @ApiModelProperty(value = "瑙勬牸")
private String specs;
/**
* 鍨嬪彿
*/
- @ApiModelProperty(value= "鍨嬪彿")
+ @ApiModelProperty(value = "鍨嬪彿")
private String model;
/**
* 棰滆壊
*/
- @ApiModelProperty(value= "棰滆壊")
+ @ApiModelProperty(value = "棰滆壊")
private String color;
/**
* 鍝佺墝
*/
- @ApiModelProperty(value= "鍝佺墝")
+ @ApiModelProperty(value = "鍝佺墝")
private String brand;
/**
* 鍗曚綅
*/
- @ApiModelProperty(value= "鍗曚綅")
+ @ApiModelProperty(value = "鍗曚綅")
private String unit;
/**
* 鍗曚环
*/
- @ApiModelProperty(value= "鍗曚环")
+ @ApiModelProperty(value = "鍗曚环")
private Double price;
/**
* sku
*/
- @ApiModelProperty(value= "sku")
+ @ApiModelProperty(value = "sku")
private String sku;
/**
* 鍗曚綅閲�
*/
- @ApiModelProperty(value= "鍗曚綅閲�")
+ @ApiModelProperty(value = "鍗曚綅閲�")
private Double units;
/**
* 鏉$爜
*/
- @ApiModelProperty(value= "鏉$爜")
+ @ApiModelProperty(value = "鏉$爜")
private String barcode;
/**
* 浜у湴
*/
- @ApiModelProperty(value= "浜у湴")
+ @ApiModelProperty(value = "浜у湴")
private String origin;
/**
* 鍘傚
*/
- @ApiModelProperty(value= "鍘傚")
+ @ApiModelProperty(value = "鍘傚")
private String manu;
/**
* 鐢熶骇鏃ユ湡
*/
- @ApiModelProperty(value= "鐢熶骇鏃ユ湡")
+ @ApiModelProperty(value = "鐢熶骇鏃ユ湡")
@TableField("manu_date")
private String manuDate;
/**
* 鍝侀」鏁�
*/
- @ApiModelProperty(value= "鍝侀」鏁�")
+ @ApiModelProperty(value = "鍝侀」鏁�")
@TableField("item_num")
private String itemNum;
/**
* 瀹夊叏搴撳瓨閲�
*/
- @ApiModelProperty(value= "瀹夊叏搴撳瓨閲�")
+ @ApiModelProperty(value = "瀹夊叏搴撳瓨閲�")
@TableField("safe_qty")
private Double safeQty;
/**
* 閲嶉噺
*/
- @ApiModelProperty(value= "閲嶉噺")
+ @ApiModelProperty(value = "閲嶉噺")
private Double weight;
/**
* 闀垮害
*/
- @ApiModelProperty(value= "闀垮害")
+ @ApiModelProperty(value = "闀垮害")
private Double length;
/**
* 浣撶Н
*/
- @ApiModelProperty(value= "浣撶Н")
+ @ApiModelProperty(value = "浣撶Н")
private Double volume;
/**
* 涓夋柟缂栫爜
*/
- @ApiModelProperty(value= "涓夋柟缂栫爜")
+ @ApiModelProperty(value = "涓夋柟缂栫爜")
@TableField("three_code")
private String threeCode;
/**
* 渚涘簲鍟�
*/
- @ApiModelProperty(value= "渚涘簲鍟�")
+ @ApiModelProperty(value = "渚涘簲鍟�")
private String supp;
/**
* 渚涘簲鍟嗙紪鐮�
*/
- @ApiModelProperty(value= "渚涘簲鍟嗙紪鐮�")
+ @ApiModelProperty(value = "渚涘簲鍟嗙紪鐮�")
@TableField("supp_code")
private String suppCode;
/**
* 鏄惁鎵规 1: 鏄� 0: 鍚�
*/
- @ApiModelProperty(value= "鏄惁鎵规 1: 鏄� 0: 鍚� ")
+ @ApiModelProperty(value = "鏄惁鎵规 1: 鏄� 0: 鍚� ")
@TableField("be_batch")
private Integer beBatch;
/**
* 淇濊川鏈�
*/
- @ApiModelProperty(value= "淇濊川鏈�")
+ @ApiModelProperty(value = "淇濊川鏈�")
@TableField("dead_time")
private String deadTime;
/**
* 棰勮澶╂暟
*/
- @ApiModelProperty(value= "棰勮澶╂暟")
+ @ApiModelProperty(value = "棰勮澶╂暟")
@TableField("dead_warn")
private Integer deadWarn;
/**
* 鍒惰喘 1: 鍒堕�� 2: 閲囪喘 3: 澶栧崗 銆併�佸疁绉戯細 鏄惁纭 1: 纭 2: 鏈‘璁�
*/
- @ApiModelProperty(value= "鍒惰喘 1: 鍒堕�� 2: 閲囪喘 3: 澶栧崗 ")
+ @ApiModelProperty(value = "鍒惰喘 1: 鍒堕�� 2: 閲囪喘 3: 澶栧崗 ")
private Integer source;
/**
* 瑕佹眰妫�楠� 1: 鏄� 0: 鍚�
*/
- @ApiModelProperty(value= "瑕佹眰妫�楠� 1: 鏄� 0: 鍚� ")
+ @ApiModelProperty(value = "瑕佹眰妫�楠� 1: 鏄� 0: 鍚� ")
private Integer inspect;
/**
* 鍗遍櫓鍝� 1: 鏄� 0: 鍚�
*/
- @ApiModelProperty(value= "鍗遍櫓鍝� 1: 鏄� 0: 鍚� ")
+ @ApiModelProperty(value = "鍗遍櫓鍝� 1: 鏄� 0: 鍚� ")
private Integer danger;
/**
* 鐘舵�� 1: 姝e父 0: 绂佺敤
*/
- @ApiModelProperty(value= "鐘舵�� 1: 姝e父 0: 绂佺敤 ")
+ @ApiModelProperty(value = "鐘舵�� 1: 姝e父 0: 绂佺敤 ")
private Integer status;
/**
* 娣诲姞浜哄憳
*/
- @ApiModelProperty(value= "娣诲姞浜哄憳")
+ @ApiModelProperty(value = "娣诲姞浜哄憳")
@TableField("create_by")
private Long createBy;
/**
* 娣诲姞鏃堕棿
*/
- @ApiModelProperty(value= "娣诲姞鏃堕棿")
+ @ApiModelProperty(value = "娣诲姞鏃堕棿")
@TableField("create_time")
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date createTime;
/**
* 淇敼浜哄憳
*/
- @ApiModelProperty(value= "淇敼浜哄憳")
+ @ApiModelProperty(value = "淇敼浜哄憳")
@TableField("update_by")
private Long updateBy;
/**
* 淇敼鏃堕棿
*/
- @ApiModelProperty(value= "淇敼鏃堕棿")
+ @ApiModelProperty(value = "淇敼鏃堕棿")
@TableField("update_time")
- @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateTime;
/**
* 澶囨敞
*/
- @ApiModelProperty(value= "澶囨敞")
+ @ApiModelProperty(value = "澶囨敞")
private String memo;
- public OrderDetl() {}
+ @TableField("i_no")
+ private Integer iNO;
+
+ /**
+ * 澶栭儴涓婚敭
+ */
+ @TableField("auto_id")
+ private Integer autoId;
+
+ @TableField("out_order_no")
+ private String outOrderNo;
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("lu_hao")
+ private String luHao;
+
+ @TableField("ware_id")
+ private String wareId;
+
+ @TableField("ware_name")
+ private String wareName;
+
+ @TableField("packing")
+ private String packing;
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("pg_no")
+ private String sPgNO;
+
+ @TableField("temp1")
+ private String temp1;
+
+ @TableField("temp2")
+ private String temp2;
+
+ @TableField("temp3")
+ private String temp3;
+
+ @TableField("pro_type")
+ private String proType;
+
+ public OrderDetl() {
+ }
public OrderDetl(Long orderId, String orderNo, Double anfme, Double qty, String matnr, String maktx, String batch, String specs, String model, String color, String brand, String unit, Double price, String sku, Double units, String barcode, String origin, String manu, String manuDate, String itemNum, Double safeQty, Double weight, Double length, Double volume, String threeCode, String supp, String suppCode, Integer beBatch, String deadTime, Integer deadWarn, Integer source, Integer inspect, Integer danger, Integer status, Long createBy, Date createTime, Long updateBy, Date updateTime, String memo) {
this.orderId = orderId;
@@ -339,18 +383,20 @@
this.memo = memo;
}
- public String getOrderId$(){
+ public String getOrderId$() {
OrderService service = SpringUtils.getBean(OrderService.class);
Order order = service.selectById(this.orderId);
- if (!Cools.isEmpty(order)){
+ if (!Cools.isEmpty(order)) {
return String.valueOf(order.getId());
}
return null;
}
- public String getBeBatch$(){
- if (null == this.beBatch){ return null; }
- switch (this.beBatch){
+ public String getBeBatch$() {
+ if (null == this.beBatch) {
+ return null;
+ }
+ switch (this.beBatch) {
case 1:
return "鏄�";
case 0:
@@ -360,9 +406,11 @@
}
}
- public String getSource$(){
- if (null == this.source){ return null; }
- switch (this.source){
+ public String getSource$() {
+ if (null == this.source) {
+ return null;
+ }
+ switch (this.source) {
case 1:
return "鍒堕��";
case 2:
@@ -374,9 +422,11 @@
}
}
- public String getInspect$(){
- if (null == this.inspect){ return null; }
- switch (this.inspect){
+ public String getInspect$() {
+ if (null == this.inspect) {
+ return null;
+ }
+ switch (this.inspect) {
case 1:
return "鏄�";
case 0:
@@ -386,9 +436,11 @@
}
}
- public String getDanger$(){
- if (null == this.danger){ return null; }
- switch (this.danger){
+ public String getDanger$() {
+ if (null == this.danger) {
+ return null;
+ }
+ switch (this.danger) {
case 1:
return "鏄�";
case 0:
@@ -398,9 +450,11 @@
}
}
- public String getStatus$(){
- if (null == this.status){ return null; }
- switch (this.status){
+ public String getStatus$() {
+ if (null == this.status) {
+ return null;
+ }
+ switch (this.status) {
case 1:
return "姝e父";
case 0:
@@ -410,33 +464,33 @@
}
}
- public String getCreateBy$(){
+ public String getCreateBy$() {
UserService service = SpringUtils.getBean(UserService.class);
User user = service.selectById(this.createBy);
- if (!Cools.isEmpty(user)){
+ if (!Cools.isEmpty(user)) {
return String.valueOf(user.getUsername());
}
return null;
}
- public String getCreateTime$(){
- if (Cools.isEmpty(this.createTime)){
+ public String getCreateTime$() {
+ if (Cools.isEmpty(this.createTime)) {
return "";
}
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.createTime);
}
- public String getUpdateBy$(){
+ public String getUpdateBy$() {
UserService service = SpringUtils.getBean(UserService.class);
User user = service.selectById(this.updateBy);
- if (!Cools.isEmpty(user)){
+ if (!Cools.isEmpty(user)) {
return String.valueOf(user.getUsername());
}
return null;
}
- public String getUpdateTime$(){
- if (Cools.isEmpty(this.updateTime)){
+ public String getUpdateTime$() {
+ if (Cools.isEmpty(this.updateTime)) {
return "";
}
return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime);
@@ -452,8 +506,8 @@
return null;
}
- public String getQty$(){
- if (getAnfme().equals(getQty())){
+ public String getQty$() {
+ if (getAnfme().equals(getQty())) {
return "宸插畬鎴�";
}
return "鏈畬鎴�";
diff --git a/src/main/java/com/zy/asrs/entity/StockStatisDTO.java b/src/main/java/com/zy/asrs/entity/StockStatisDTO.java
new file mode 100644
index 0000000..32d597d
--- /dev/null
+++ b/src/main/java/com/zy/asrs/entity/StockStatisDTO.java
@@ -0,0 +1,16 @@
+package com.zy.asrs.entity;
+
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+@Data
+@NoArgsConstructor
+public class StockStatisDTO {
+ private String matnr;
+ private String maktx;
+ private String itemCode;
+ private int lkQty;
+ private int erpQty;
+ private String itemBatch;
+ private String specs;
+}
diff --git a/src/main/java/com/zy/asrs/entity/WrkDetl.java b/src/main/java/com/zy/asrs/entity/WrkDetl.java
index 349a127..939004d 100644
--- a/src/main/java/com/zy/asrs/entity/WrkDetl.java
+++ b/src/main/java/com/zy/asrs/entity/WrkDetl.java
@@ -269,6 +269,33 @@
@ApiModelProperty(value= "澶囨敞")
private String memo;
+ /**
+ * 璁㈠崟鍙�
+ */
+ @TableField("out_order_no")
+ private String outOrderNo;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("lu_hao")
+ private String luHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("pg_no")
+ private String sPgNO;
+
+
+ private String temp1;
+
+
+ private String temp2;
+
+ private String temp3;
+
+
public String getIoTime$(){
if (Cools.isEmpty(this.ioTime)){
return "";
diff --git a/src/main/java/com/zy/asrs/entity/WrkDetlLog.java b/src/main/java/com/zy/asrs/entity/WrkDetlLog.java
index 0383b98..3ae409b 100644
--- a/src/main/java/com/zy/asrs/entity/WrkDetlLog.java
+++ b/src/main/java/com/zy/asrs/entity/WrkDetlLog.java
@@ -268,6 +268,33 @@
@ApiModelProperty(value= "澶囨敞")
private String memo;
+ /**
+ * 璁㈠崟鍙�
+ */
+ @TableField("out_order_no")
+ private String outOrderNo;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("lu_hao")
+ private String luHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("pg_no")
+ private String sPgNO;
+
+
+ private String temp1;
+
+
+ private String temp2;
+
+ private String temp3;
+
+
public String getIoTime$(){
if (Cools.isEmpty(this.ioTime)){
return "";
diff --git a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
index 2b7255c..43f37e5 100644
--- a/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/LocDetlMapper.java
@@ -2,6 +2,7 @@
import com.baomidou.mybatisplus.mapper.BaseMapper;
import com.zy.asrs.entity.LocDetl;
+import com.zy.asrs.entity.StockStatisDTO;
import com.zy.asrs.entity.result.StockVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@@ -78,4 +79,10 @@
List<LocDetl> selectLocDetlUnilateralMoveShuttleY(@Param("matnr")String matnr,@Param("batch")String batch,@Param("grade")String grade);
List<LocDetl> selectLocDetlUnilateralMoveShuttleN(@Param("matnr")String matnr,@Param("batch")String batch,@Param("grade")String grade);
+
+
+
+ List<StockStatisDTO> asrsAndErpList(Map<String, Object> condition);
+
+ long asrsAndErpCount(Map<String, Object> condition);
}
diff --git a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
index 51c99ad..cef6709 100644
--- a/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
+++ b/src/main/java/com/zy/asrs/mapper/OrderDetlMapper.java
@@ -34,4 +34,8 @@
int increaseQtyByOrderNo(@Param("orderNo")String orderNo, @Param("matnr")String matnr, @Param("batch")String batch, @Param("qty")Double qty);
int increaseWorkQty(@Param("orderId")Long orderId, @Param("matnr")String matnr, @Param("batch")String batch, @Param("workQty")Double workQty);
+
+
+ List<OrderDetl> listByOrderNo(@Param("orderNo") String orderNo);
+
}
diff --git a/src/main/java/com/zy/asrs/service/LocDetlService.java b/src/main/java/com/zy/asrs/service/LocDetlService.java
index b08fe2a..4665c70 100644
--- a/src/main/java/com/zy/asrs/service/LocDetlService.java
+++ b/src/main/java/com/zy/asrs/service/LocDetlService.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.IService;
import com.zy.asrs.entity.LocDetl;
+import com.zy.asrs.entity.StockStatisDTO;
import com.zy.asrs.entity.result.StockVo;
import java.util.List;
@@ -39,7 +40,7 @@
*/
List<String> getSameDetlToday(String matnr, String batch, Integer start, Integer end);
- Page<LocDetl> getStockStatis(Page<LocDetl> page);
+ Page<StockStatisDTO> getStockStatis(Page<StockStatisDTO> page);
Double getSumAnfme(String matnr);
diff --git a/src/main/java/com/zy/asrs/service/OrderDetlService.java b/src/main/java/com/zy/asrs/service/OrderDetlService.java
index ecf08d2..f180200 100644
--- a/src/main/java/com/zy/asrs/service/OrderDetlService.java
+++ b/src/main/java/com/zy/asrs/service/OrderDetlService.java
@@ -37,4 +37,6 @@
* @return
*/
boolean increaseWorkQty(Long orderId, String matnr, String batch, Double workQty);
+
+ List<OrderDetl> selectItem(String orderNo);
}
diff --git a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
index 2a882be..130ed88 100644
--- a/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/LocDetlServiceImpl.java
@@ -1,8 +1,10 @@
package com.zy.asrs.service.impl;
+import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.zy.asrs.entity.LocDetl;
+import com.zy.asrs.entity.StockStatisDTO;
import com.zy.asrs.entity.result.StockVo;
import com.zy.asrs.mapper.LocDetlMapper;
import com.zy.asrs.service.LocDetlService;
@@ -56,9 +58,10 @@
@Override
- public Page<LocDetl> getStockStatis(Page<LocDetl> page) {
- page.setRecords(baseMapper.getStockStatis(page.getCondition()));
- page.setTotal(baseMapper.getStockStatisCount(page.getCondition()));
+ public Page<StockStatisDTO> getStockStatis(Page<StockStatisDTO> page) {
+ System.out.println(JSONObject.toJSON(page));
+ page.setRecords(baseMapper.asrsAndErpList(page.getCondition()));
+ page.setTotal(baseMapper.asrsAndErpCount(page.getCondition()));
return page;
}
diff --git a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
index 327edbb..3f08146 100644
--- a/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
+++ b/src/main/java/com/zy/asrs/service/impl/OrderDetlServiceImpl.java
@@ -27,6 +27,11 @@
}
@Override
+ public List<OrderDetl> selectItem(String orderNo) {
+ return this.baseMapper.listByOrderNo(orderNo);
+ }
+
+ @Override
public OrderDetl selectItem(Long orderId, String matnr, String batch) {
return this.baseMapper.selectItem(orderId, matnr, batch);
}
diff --git a/src/main/java/com/zy/asrs/utils/EntityToMapConverter.java b/src/main/java/com/zy/asrs/utils/EntityToMapConverter.java
new file mode 100644
index 0000000..bfa2abe
--- /dev/null
+++ b/src/main/java/com/zy/asrs/utils/EntityToMapConverter.java
@@ -0,0 +1,63 @@
+package com.zy.asrs.utils;
+
+import com.core.common.DateUtils;
+import lombok.SneakyThrows;
+
+import java.lang.reflect.Field;
+import java.math.BigDecimal;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Random;
+import java.lang.reflect.Modifier;
+
+public class EntityToMapConverter {
+ @SneakyThrows
+ public static Map<String, Object> entityToMapWithRandomValues(Object entity) {
+ Map<String, Object> map = new HashMap<>();
+ Field[] fields = entity.getClass().getDeclaredFields();
+ Random random = new Random();
+
+ for (Field field : fields) {
+ if (Modifier.isStatic(field.getModifiers()) || Modifier.isFinal(field.getModifiers())) {
+ // Ignore static or final fields
+ continue;
+ }
+ field.setAccessible(true);
+ String fieldName = field.getName();
+ Object fieldValue = field.get(entity);
+
+ // Set random values based on type
+ if (field.getType() == String.class) {
+ map.put(fieldName, "'" + generateRandomString(10) + "'");
+ } else if (field.getType() == Integer.class || field.getType() == int.class) {
+ map.put(fieldName, random.nextInt(1000));
+ } else if (field.getType() == Long.class || field.getType() == long.class) {
+ map.put(fieldName, random.nextLong() % 1000L);
+ } else if (field.getType() == Float.class || field.getType() == float.class) {
+ map.put(fieldName, random.nextFloat() * 1000f);
+ } else if (field.getType() == Double.class || field.getType() == double.class) {
+ map.put(fieldName, random.nextDouble() * 1000d);
+ } else if (field.getType() == Boolean.class || field.getType() == boolean.class) {
+ map.put(fieldName, random.nextBoolean());
+ } else if (field.getType() == BigDecimal.class) {
+ map.put(fieldName, new BigDecimal(random.nextDouble() * 1000d));
+ } else if (field.getType() == Date.class) {
+ map.put(fieldName, "'" + DateUtils.convert(new Date()) + "'");
+ } else {
+ // For other types, you might want to handle them specifically or skip them
+ continue;
+ }
+ }
+ return map;
+ }
+
+ private static String generateRandomString(int length) {
+ String characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
+ StringBuilder sb = new StringBuilder(length);
+ for (int i = 0; i < length; i++) {
+ sb.append(characters.charAt(new Random().nextInt(characters.length())));
+ }
+ return sb.toString();
+ }
+}
diff --git a/src/main/java/com/zy/common/service/erp/ErpDbProperties.java b/src/main/java/com/zy/common/service/erp/ErpDbProperties.java
new file mode 100644
index 0000000..efd9898
--- /dev/null
+++ b/src/main/java/com/zy/common/service/erp/ErpDbProperties.java
@@ -0,0 +1,30 @@
+package com.zy.common.service.erp;
+
+import lombok.Data;
+import org.springframework.boot.context.properties.ConfigurationProperties;
+import org.springframework.stereotype.Component;
+
+/**
+ * Created by vincent on 2020/11/26
+ */
+@Data
+@ConfigurationProperties(prefix = "erp.db")
+@Component
+public class ErpDbProperties {
+
+ private String driver_class_name;
+
+ private String url;
+
+ private String username;
+
+ private String password;
+
+// {
+// driver_class_name = "com.microsoft.sqlserver.jdbc.SQLServerDriver";
+// ur = "jdbc:sqlserver://127.0.0.1:1433;databasename=byrk";
+// username = "sa";
+// password = "sa@123";
+// }
+
+}
diff --git a/src/main/java/com/zy/common/service/erp/ErpSqlServer.java b/src/main/java/com/zy/common/service/erp/ErpSqlServer.java
new file mode 100644
index 0000000..3469eec
--- /dev/null
+++ b/src/main/java/com/zy/common/service/erp/ErpSqlServer.java
@@ -0,0 +1,420 @@
+package com.zy.common.service.erp;
+
+import com.alibaba.fastjson.JSONObject;
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.core.common.Cools;
+import com.zy.third.erp.entity.InDetTB;
+import lombok.SneakyThrows;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.ObjectInputStream;
+import java.io.ObjectOutputStream;
+import java.lang.reflect.Field;
+import java.lang.reflect.Modifier;
+import java.sql.*;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 绠�鍗曟寔涔呭眰妗嗘灦
+ * Created by vincent on 2020/11/26
+ */
+@Slf4j
+@Service
+public class ErpSqlServer {
+
+ private static final int CONNECTION_TIMEOUT_SECONDS = 10; // 杩炴帴瓒呮椂
+
+ private static final int QUERY_TIMEOUT_SECONDS = 30; // 鏌ヨ瓒呮椂
+
+ public static void main(String[] args) {
+ ErpSqlServer erpSqlServer = new ErpSqlServer();
+ // 鏌�
+// String sql = "select ise.* from InStockBillEntry ise left join InStockbill isb on isb.FInterID = ise.FInterID where 1=1";
+// List<InStockBillEntry> list = erpSqlServer.select(sql, InStockBillEntry.class);
+ // 鏀� / 鍒�
+// sql = "update InStockBill set Fflag_finish = 1 where FBillNo = ''{0}''";
+// sql = MessageFormat.format(sql, "123456");
+// erpSqlServer.update(sql);
+
+ HashMap<String, Object> stringStringHashMap = new HashMap<>();
+ stringStringHashMap.put("BillNo", "'1231312'");
+ stringStringHashMap.put("test", "'1231312'");
+ stringStringHashMap.put("BilhahahlNo", "'1231312'");
+ stringStringHashMap.put("B21312illNo", "'1231312'");
+ stringStringHashMap.put("testnum", 100);
+ erpSqlServer.insert(InDetTB.class, stringStringHashMap);
+ }
+
+ // 鏁版嵁搴撹繛鎺�
+// private Connection conn;
+ // 鍒涘缓棰勭紪璇戣鍙ュ璞★紝涓�鑸兘鏄敤杩欎釜鑰屼笉鐢⊿tatement
+ private PreparedStatement pstm = null;
+ // 鍒涘缓涓�涓粨鏋滈泦瀵硅薄
+ private ResultSet rs = null;
+
+ @Autowired
+ private ErpDbProperties erpDbProperties;
+
+ /*****************************************************************************/
+ /********************************** 灏佽 **********************************/
+ /*****************************************************************************/
+
+ /**
+ * 鏌ヨ
+ */
+ public <T> List<T> select(String sql, Class<T> cls) {
+ List<Map<String, Object>> result = executeQuery(sql);
+ List<T> list = new ArrayList<>();
+ if (null != result) {
+ for (Map<String, Object> entity : result) {
+ //鐢ㄦ渶绗ㄧ殑鏂规硶杞崲锛屼篃鍙互鐢ㄤ笅闈㈢殑process鏂规硶锛堣繕娌℃湁鍐欏叏锛�
+ list.add(JSONObject.parseObject(JSONObject.toJSONString(entity), cls));
+ //list.add(Cools.conver(entity, cls));
+ }
+ }
+ return list;
+ }
+
+ @SneakyThrows
+ public <T> void process(Map<String, Object> entity, Class<T> cls) {
+ for (Map.Entry<String, Object> entry : entity.entrySet()) {
+ String fieldName = entry.getKey();
+ Object value = entry.getValue();
+
+ Field field = cls.getDeclaredField(fieldName);
+ field.setAccessible(true);
+
+ if (value instanceof Integer && field.getType() == int.class || field.getType() == Integer.class) {
+ field.setInt(cls, (Integer) value);
+ } else if (value instanceof String && field.getType() == String.class) {
+ field.set(cls, value);
+ }
+ // 鍏朵粬绫诲瀷鍙互绫讳技澶勭悊
+ }
+ }
+
+ /**
+ * 鎵弿鎵�鏈夊疄鍔涚被灞炴�ч噷鐨凾ableField娉ㄨВ,骞跺皢閲岄潰鐨勫�间綔涓篶olumn
+ *
+ * @param cls
+ * @param <T>
+ * @return
+ */
+ public <T> String selectFrontPart(Class<T> cls) {
+ String tableName = cls.getDeclaredAnnotation(TableName.class).value();
+ List<HashMap<String, String>> columnAndField = new ArrayList<>();
+ String sql = "SELECT ";
+ if (Cools.isEmpty(tableName)) {
+ return null;
+ }
+ Field[] allFields = Cools.getAllFields(cls);
+ for (Field f : allFields) {
+ if (Modifier.isFinal(f.getModifiers())
+ || Modifier.isStatic(f.getModifiers())
+ || Modifier.isTransient(f.getModifiers())) {
+ continue;
+ }
+ String column = null;
+ if (f.isAnnotationPresent(TableField.class)) {
+ column = f.getAnnotation(TableField.class).value();
+ }
+ if (Cools.isEmpty(column)) {
+ column = f.getName();
+ }
+ String name = f.getName();
+ HashMap<String, String> container = new HashMap<>();
+ container.put(column, name);
+ columnAndField.add(container);
+ }
+ for (int i = 0; i < columnAndField.size(); i++) {
+ HashMap<String, String> stringStringHashMap = columnAndField.get(i);
+ if (i == columnAndField.size() - 1) {
+ for (String s : stringStringHashMap.keySet()) {
+ sql = sql + s + " AS " + stringStringHashMap.get(s);
+ }
+ } else {
+ for (String s : stringStringHashMap.keySet()) {
+ sql = sql + s + " AS " + stringStringHashMap.get(s) + ", ";
+ }
+ }
+ }
+ sql = sql + " FROM " + tableName;
+ return sql;
+ }
+
+ public String addWhere(String sql, Map<String, String> condition) {
+ int conditionSize = 1;
+ sql = sql + " WHERE ";
+ for (String s : condition.keySet()) {
+ if (conditionSize == condition.keySet().size()) {
+ sql = sql + s + " = " + condition.get(s);
+ } else {
+ sql = sql + s + " = " + condition.get(s) + " and ";
+ }
+ conditionSize = conditionSize + 1;
+ }
+ return sql;
+ }
+
+ /**
+ * map鐨勯敭鏄垪鍚�, 鍊肩瓑鍚屼簬鍊�
+ * key: id, value: 1 绛夊悓浜� WHERE id = 1
+ * 濡傛灉瑕佹煡璇㈠瓧绗︿覆闇�瑕佽嚜琛屽姞涓�''
+ * key:name, value: 'zhs'绛夊悓浜� WHERE name = 'zhs'
+ *
+ * @param cls
+ * @param condition
+ * @param <T>
+ * @return
+ */
+ public <T> List<T> selectList(Class<T> cls, Map<String, String> condition) {
+ String sql = selectFrontPart(cls);
+ String finalSQL = addWhere(sql, condition);
+ return select(finalSQL, cls);
+ }
+
+ public <T> List<T> selectAll(Class<T> cls) {
+ String sql = selectFrontPart(cls);
+ return select(sql, cls);
+ }
+
+ public List<Map<String, Object>> select(String sql) {
+ return executeQuery(sql);
+ }
+
+ /**
+ * 淇敼
+ */
+ public int update(String sql) {
+ return executeUpdate(sql);
+ }
+
+ public <T> int delete(Class<T> cls, Map<String, String> condition) {
+ String tableName = cls.getDeclaredAnnotation(TableName.class).value();
+ if (Cools.isEmpty(tableName)) {
+ return 0;
+ }
+ String sql = "DELETE FROM " + tableName;
+ String finalSQL = addWhere(sql, condition);
+ return executeUpdate(finalSQL);
+ }
+
+ public <T> int insert(Class<T> cls, Map<String, Object> condition) {
+ String tableName = cls.getDeclaredAnnotation(TableName.class).value();
+ if (Cools.isEmpty(tableName)) {
+ return 0;
+ }
+ String sql = "INSERT INTO " + tableName + " (";
+ int conditionSize = 1;
+ for (String s : condition.keySet()) {
+ if (conditionSize == condition.keySet().size()) {
+ sql = sql + s + ")";
+ } else {
+ sql = sql + s + ",";
+ }
+ conditionSize = conditionSize + 1;
+ }
+ sql = sql + " VALUES(";
+ int valuesSize = 1;
+ for (String s : condition.keySet()) {
+ if (valuesSize == condition.keySet().size()) {
+
+ sql = sql + condition.get(s) + ")";
+ } else {
+ sql = sql + condition.get(s) + ",";
+ }
+ valuesSize = valuesSize + 1;
+ }
+
+ return executeUpdate(sql);
+ }
+
+
+ /*****************************************************************************/
+ /********************************* 鏍稿績灞� *********************************/
+ /*****************************************************************************/
+
+
+ private List<Map<String, Object>> executeQuery(String sql) {
+ Connection conn = null;
+ try {
+ conn = getConn();
+ pstm = conn.prepareStatement(sql);
+
+ pstm.setQueryTimeout(QUERY_TIMEOUT_SECONDS);
+
+ rs = pstm.executeQuery();
+// List<Map<String, Object>> maps = convertList(rs);
+ return convertList(rs);
+ } catch (Exception e) {
+ e.printStackTrace();
+ return null;
+ } finally {
+ release();
+ if (conn != null) {
+ try {
+ conn.close();
+ conn = null;
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ public Number executeQueryCount(String sql, String column) {
+ Number value = 0;
+ Connection conn = null;
+ try {
+ conn = getConn();
+ pstm = conn.prepareStatement(sql);
+
+ pstm.setQueryTimeout(QUERY_TIMEOUT_SECONDS);
+
+ rs = pstm.executeQuery();
+// ResultSetMetaData metaData = rs.getMetaData();
+ while (rs.next()) {
+ value = (Number) rs.getInt(column);
+ }
+ return value;
+ } catch (Exception e) {
+ e.printStackTrace();
+ return 0;
+ } finally {
+ release();
+ if (conn != null) {
+ try {
+ conn.close();
+ conn = null;
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ private int executeUpdate(String sql) {
+ Connection conn = null;
+ try {
+ conn = getConn();
+ if (null != conn) {
+ pstm = conn.prepareStatement(sql);
+
+ pstm.setQueryTimeout(QUERY_TIMEOUT_SECONDS);
+
+ } else {
+ log.error("鏇存柊ERP涓棿琛ㄥけ璐�===>>鏁版嵁搴撹繛鎺onn涓虹┖");
+ log.error("鏇存柊ERP涓棿琛ㄥけ璐�===>>" + sql);
+ }
+ return pstm.executeUpdate();
+ } catch (Exception e) {
+ e.printStackTrace();
+ log.error("鏇存柊ERP涓棿琛ㄥけ璐�1===>>" + sql);
+ log.error("鏇存柊ERP涓棿琛ㄥけ璐�1===>>" + e);
+ return 0;
+ } finally {
+ release();
+ if (conn != null) {
+ try {
+ conn.close();
+ conn = null;
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ private static List<Map<String, Object>> convertList(ResultSet rs) throws SQLException {
+ List<Map<String, Object>> list = new ArrayList<>();
+ ResultSetMetaData md = rs.getMetaData();
+ int columnCount = md.getColumnCount();
+ while (rs.next()) {
+ Map<String, Object> rowData = new HashMap<>();
+ for (int i = 1; i <= columnCount; i++) {
+ rowData.put(md.getColumnName(i), rs.getObject(i));
+ }
+ list.add(rowData);
+ }
+ return list;
+ }
+
+ //synchronized
+ public Connection getConn() throws SQLException {
+ Connection conn = null;
+ try {
+ Class.forName(erpDbProperties.getDriver_class_name()).newInstance();
+
+ DriverManager.setLoginTimeout(CONNECTION_TIMEOUT_SECONDS);
+
+ conn = DriverManager.getConnection(erpDbProperties.getUrl(), erpDbProperties.getUsername(), erpDbProperties.getPassword());
+ } catch (Exception e) {
+ log.error("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
+ e.printStackTrace();
+ throw new RuntimeException("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
+ }
+ return conn;
+// if (null == this.conn || this.conn.isClosed()) {
+// try {
+// Class.forName(erpDbProperties.getDriver_class_name()).newInstance();
+// this.conn = DriverManager.getConnection(erpDbProperties.getUr(), erpDbProperties.getUsername(), erpDbProperties.getPassword());
+// } catch (Exception e) {
+// log.error("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
+// e.printStackTrace();
+// throw new RuntimeException("鑾峰彇ERP鏁版嵁搴撹繛鎺ュけ璐�");
+// }
+// }
+// return this.conn;
+ }
+
+ private void release() {
+ if (rs != null) {
+ try {
+ rs.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+ if (pstm != null) {
+ try {
+ pstm.close();
+ } catch (SQLException e) {
+ e.printStackTrace();
+ }
+ }
+// if (conn != null) {
+// try {
+// conn.close();
+// conn = null;
+// } catch (SQLException e) {
+// e.printStackTrace();
+// }
+// }
+ }
+
+ /**
+ * 娣辨嫹璐�
+ */
+ public ArrayList deepClone(List list) throws Exception {
+ // 搴忓垪鍖�
+ ByteArrayOutputStream bos = new ByteArrayOutputStream();
+ ObjectOutputStream oos = new ObjectOutputStream(bos);
+
+ oos.writeObject(list);
+
+ // 鍙嶅簭鍒楀寲
+ ByteArrayInputStream bis = new ByteArrayInputStream(bos.toByteArray());
+ ObjectInputStream ois = new ObjectInputStream(bis);
+
+ return (ArrayList) ois.readObject();
+ }
+
+}
diff --git a/src/main/java/com/zy/third/erp/entity/InCancelTB.java b/src/main/java/com/zy/third/erp/entity/InCancelTB.java
new file mode 100644
index 0000000..6ae39cf
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/entity/InCancelTB.java
@@ -0,0 +1,79 @@
+package com.zy.third.erp.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@Data
+@NoArgsConstructor
+@TableName("erp_InCancelTB")
+public class InCancelTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ @TableField(value = "AutoId")
+ @ApiModelProperty(value = "")
+ private Integer AutoId;
+
+
+ @ApiModelProperty(value = "")
+ @TableId(value = "BillNo", type = IdType.INPUT)
+ @TableField("BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date MakeDate;
+
+ @ApiModelProperty(value = "")
+ @TableField("LKName")
+ private String LKName;
+
+
+ @ApiModelProperty(value = "")
+ @TableField("FactArea")
+ private String FactArea;
+
+// InCancelTB inCancelTB = new InCancelTB(
+// null, // [闈炵┖]
+// null, //
+// null //
+// );
+
+ public String getBillNo() {
+ return BillNo;
+ }
+
+ public void setBillNo(String BillNo) {
+ this.BillNo = BillNo;
+ }
+
+ public Date getMakeDate() {
+ return MakeDate;
+ }
+
+ public String getMakeDate$() {
+ if (Cools.isEmpty(this.MakeDate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.MakeDate);
+ }
+
+ public void setMakeDate(Date MakeDate) {
+ this.MakeDate = MakeDate;
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/erp/entity/InDetTB.java b/src/main/java/com/zy/third/erp/entity/InDetTB.java
new file mode 100644
index 0000000..16ef6fa
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/entity/InDetTB.java
@@ -0,0 +1,137 @@
+package com.zy.third.erp.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@NoArgsConstructor
+@AllArgsConstructor
+@Data
+@TableName("erp_InDetTB")
+public class InDetTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("iNo")
+ private Integer iNO;
+
+ /**
+ * erp琛屽敮涓�鐮�
+ */
+ @ApiModelProperty(value = "erp琛屽敮涓�鐮�")
+ @TableField("DetId")
+ private Integer detId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemId")
+ private String ItemId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemCode")
+ private String ItemCode;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemBatch")
+ private String ItemBatch;
+
+ @ApiModelProperty(value = "")
+ @TableField("proType")
+ private String protype;
+
+ @ApiModelProperty(value = "")
+ @TableField("OrderNo")
+ private String OrderNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("MainNum")
+ private Double MainNum;
+
+ @ApiModelProperty(value = "")
+ @TableField("remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String wareId;
+
+ @TableField("WareName")
+ private String WareName;
+
+ @ApiModelProperty(value = "")
+ @TableField("temp1")
+ private String temp1;
+
+ @ApiModelProperty(value = "")
+ @TableField("temp2")
+ private String temp2;
+
+ @ApiModelProperty(value = "")
+ @TableField("temp3")
+ private String temp3;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+ @ApiModelProperty(value = "")
+ @TableField("LKName")
+ private String LKName;
+
+ /**
+ *
+ */
+ @TableField("FactArea")
+ private String FactArea;
+ /**
+ * 渚涘簲鍟哱瀹㈡埛ID
+ */
+ @TableField("Packing")
+ private String Packing;
+ /**
+ * 棰滆壊
+ */
+ @TableField("sColor")
+ private String sColor;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("LuHao")
+ private String LuHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("sPgNO")
+ private String sPgNO;
+
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/erp/entity/InHedTB.java b/src/main/java/com/zy/third/erp/entity/InHedTB.java
new file mode 100644
index 0000000..88f75dd
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/entity/InHedTB.java
@@ -0,0 +1,98 @@
+package com.zy.third.erp.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@TableName("erp_InHedTB")
+public class InHedTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableId(value = "BillNo", type = IdType.INPUT)
+ @TableField("BillNo")
+ private String BillNo;
+
+ /**
+ * StockIn:閲囪喘鍏ュ簱
+ * ProductIn:鎴愬搧鍏ュ簱鍗�
+ * ItemMoveIn:璋冩嫧鍏ュ簱
+ * ItemSwitchIn:褰㈡�佽浆鎹㈠叆搴�
+ * CheckMoreIn:鐩樼泩鍏ュ簱鍗�
+ */
+// @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ @TableField("BillDate")
+ private Date BillDate;
+
+ @TableField("IoKindID")
+ private String IoKindID;
+
+ @TableField("IoKindName")
+ private String ioKindName;
+
+ /**
+ * 渚涘簲鍟嗐�侀儴闂↖D
+ */
+ @ApiModelProperty(value = "渚涘簲鍟嗐�侀儴闂↖D")
+ @TableField("ObjectId")
+ private String ObjectId;
+
+ /**
+ * 渚涘簲鍟嗐�侀儴闂ㄥ悕绉�
+ */
+ @TableField("ObjectName")
+ @ApiModelProperty(value = "渚涘簲鍟嗐�侀儴闂ㄥ悕绉�")
+ private String ObjectName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String wareId;
+
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp1")
+ private String Temp1;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp2")
+ private String Temp2;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp3")
+ private String Temp3;
+
+
+ @ApiModelProperty(value = "")
+// @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date MakeDate;
+
+ @ApiModelProperty(value = "")
+ @TableField("LKName")
+ private String LKName;
+
+ /**
+ *
+ */
+ @TableField("FactArea")
+ private String FactArea;
+
+
+}
diff --git a/src/main/java/com/zy/third/erp/entity/ItemTB.java b/src/main/java/com/zy/third/erp/entity/ItemTB.java
new file mode 100644
index 0000000..fab4790
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/entity/ItemTB.java
@@ -0,0 +1,100 @@
+package com.zy.third.erp.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@Data
+@NoArgsConstructor
+@TableName("erp_ItemTB")
+public class ItemTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableId(value = "ItemId", type = IdType.INPUT)
+ @TableField("ItemId")
+ private String ItemId;
+
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemCode")
+ private String ItemCode;
+
+ @TableField("ItemName")
+ @ApiModelProperty(value = "")
+ private String ItemName;
+
+ @TableField("ItemSpc")
+ @ApiModelProperty(value = "")
+ private String ItemSpc;
+
+ @TableField("ItemPic")
+ private String itemPic;
+
+ @TableField("ItemUnit")
+ @ApiModelProperty(value = "")
+ private String ItemUnit;
+
+ /**
+ * 姣涘澂銆佸崐鎴愬搧銆佹垚鍝�
+ */
+ @TableField("ItemKind")
+ @ApiModelProperty(value = "姣涘澂銆佸崐鎴愬搧銆佹垚鍝�")
+ private String ItemKind;
+
+ @ApiModelProperty(value = "")
+ @TableField("Remark")
+ private String Remark;
+
+ /**
+ * 00锛氭柊澧� 22锛氬垹闄�
+ */
+ @ApiModelProperty(value = "00锛氭柊澧� 22锛氬垹闄�")
+ @TableField("Flag")
+ private String Flag;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss.fff")
+ @TableField("MakeDate")
+ private Date MakeDate;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp1")
+ private String Temp1;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp2")
+ private String Temp2;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp3")
+ private String Temp3;
+
+ @ApiModelProperty(value = "")
+ @TableField("LKName")
+ private String LKName;
+
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.MakeDate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.MakeDate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/erp/entity/OutCancelTB.java b/src/main/java/com/zy/third/erp/entity/OutCancelTB.java
new file mode 100644
index 0000000..2f05237
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/entity/OutCancelTB.java
@@ -0,0 +1,47 @@
+package com.zy.third.erp.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@Data
+@TableName("erp_OutCancelTB")
+public class OutCancelTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date MakeDate;
+
+ @ApiModelProperty(value = "")
+ @TableField("LKName")
+ private String LKName;
+
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.MakeDate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.MakeDate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/erp/entity/OutDetTB.java b/src/main/java/com/zy/third/erp/entity/OutDetTB.java
new file mode 100644
index 0000000..f6aebfb
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/entity/OutDetTB.java
@@ -0,0 +1,132 @@
+package com.zy.third.erp.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("erp_OutDetTB")
+public class OutDetTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("iNo")
+ private Integer iNO;
+
+ @ApiModelProperty(value = "")
+ @TableField("DetId")
+ private Integer detId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemId")
+ private String ItemId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemCode")
+ private String ItemCode;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemBatch")
+ private String ItemBatch;
+
+ @ApiModelProperty(value = "")
+ @TableField("proType")
+ private String proType;
+
+ @ApiModelProperty(value = "")
+ @TableField("OrderNo")
+ private String OrderNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("MainNum")
+ private Double MainNum;
+
+ @TableField("remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String wareId;
+
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ private String temp1;
+
+ @ApiModelProperty(value = "")
+ private String temp2;
+
+ @ApiModelProperty(value = "")
+ private String temp3;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+// @ApiModelProperty(value= "")
+// @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+// @TableField("DelDate")
+// private Date delDate;
+
+ @ApiModelProperty(value = "")
+ @TableField("LKName")
+ private String LKName;
+
+
+ @TableField("FactArea")
+ private String FactArea;
+
+ /**
+ * 渚涘簲鍟哱瀹㈡埛ID
+ */
+ @TableField("Packing")
+ private String Packing;
+ /**
+ * 棰滆壊
+ */
+ @TableField("sColor")
+ private String sColor;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("LuHao")
+ private String LuHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("sPgNO")
+ private String sPgNO;
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/erp/entity/OutHedTB.java b/src/main/java/com/zy/third/erp/entity/OutHedTB.java
new file mode 100644
index 0000000..bf935e3
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/entity/OutHedTB.java
@@ -0,0 +1,100 @@
+package com.zy.third.erp.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("erp_OutHedTB")
+public class OutHedTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableId(value = "BillNo", type = IdType.INPUT)
+ @TableField("BillNo")
+ private String BillNo;
+
+
+ @TableField("BillDate")
+// @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+ private Date BillDate;
+
+ /**
+ * SendMatOut:鍙戞枡鍑哄簱
+ * OtherOut:鍏跺畠鍑哄簱鍗�
+ * ItemMoveOut:璋冩嫧鍑哄簱
+ * ItemSwitchOut:褰㈡�佽浆鎹㈠嚭搴�
+ * CheckLossOut:鐩樼泩鍑哄簱鍗�
+ */
+ @ApiModelProperty(value = "SendMatOut:鍙戞枡鍑哄簱 ")
+ @TableField("IoKindID")
+ private String IoKindID;
+
+ @TableField("IoKindName")
+ private String ioKindName;
+
+ /**
+ * 閮ㄩ棬ID
+ */
+ @ApiModelProperty(value = "閮ㄩ棬ID")
+ @TableField("ObjectId")
+ private String ObjectId;
+
+ /**
+ * 閮ㄩ棬鍚嶇О
+ */
+ @ApiModelProperty(value = "閮ㄩ棬鍚嶇О")
+ @TableField("ObjectName")
+ private String ObjectName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String wareId;
+
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp1")
+ private String Temp1;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp2")
+ private String Temp2;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp3")
+ private String Temp3;
+
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date MakeDate;
+
+ @ApiModelProperty(value = "")
+ @TableField("LKName")
+ private String LKName;
+
+ @TableField("FactArea")
+ private String FactArea;
+
+}
diff --git a/src/main/java/com/zy/third/erp/task/ERPInCancelScheduler.java b/src/main/java/com/zy/third/erp/task/ERPInCancelScheduler.java
new file mode 100644
index 0000000..fee4625
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/task/ERPInCancelScheduler.java
@@ -0,0 +1,62 @@
+package com.zy.third.erp.task;
+
+import com.zy.common.service.erp.ErpSqlServer;
+import com.zy.third.erp.entity.InCancelTB;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.HashMap;
+import java.util.List;
+
+@Slf4j
+@Component
+public class ERPInCancelScheduler {
+
+ @Value("${erp.enabled}")
+ private Boolean erpEnabled;
+
+ @Autowired
+ private ERPInOrOutCancelService inMS;
+
+ @Autowired
+ private ErpSqlServer erpSqlServer;
+
+
+ @Transactional(rollbackFor = Throwable.class)
+ @Scheduled(cron = "${erp.refreshtime}")
+ public void InCancelScheduler() {
+ log.info("InCancelScheduler寮�濮嬩簡");
+ if (!erpEnabled) return;
+ String sqlInCancelTB = "select * from erp_InCancelTB where LKName='涓壃浜屾湡'";
+ List<InCancelTB> ins = erpSqlServer.select(sqlInCancelTB, InCancelTB.class);
+ for (InCancelTB in : ins) {
+ System.out.println(in);
+ com.zy.third.lk.entity.InCancelTB lkCancel = inMS.tryCancel(in.getBillNo());
+ if (lkCancel != null) {
+ HashMap<String, String> condition = new HashMap<>();
+ condition.put("BillNo", "'" + in.getBillNo() + "'");
+ int delete = erpSqlServer.delete(InCancelTB.class, condition);
+ if (delete > 0) {
+ log.info("灏嗗叆搴撳彇娑堥�氱煡鍗曞垹闄ゆ垚鍔�,{}", lkCancel.getBillNo());
+ } else {
+ log.error("灏嗗叆搴撳彇娑堥�氱煡鍗曞垹闄ゅけ璐�,{}", lkCancel.getBillNo());
+ }
+ HashMap<String, Object> content = new HashMap<>();
+ content.put("BillNo", "'" + lkCancel.getBillNo() + "'");
+ content.put("opFlag", lkCancel.getOpFlag());
+ int insert = erpSqlServer.insert(com.zy.third.lk.entity.InCancelTB.class, content);
+ if (insert > 0) {
+ log.info("灏嗗叆搴撳彇娑堥�氱煡鍗曞啓鍏ユ垚鍔�,{}", lkCancel.getBillNo());
+ } else {
+ log.error("灏嗗叆搴撳彇娑堥�氱煡鍗曞啓鍏ュけ璐�,{}", lkCancel.getBillNo());
+ }
+ } else {
+ log.error("灏嗗叆搴撳彇娑堥�氱煡鍗曞啓鍏ュけ璐�");
+ }
+ }
+ }
+}
diff --git a/src/main/java/com/zy/third/erp/task/ERPInHedTBScheduler.java b/src/main/java/com/zy/third/erp/task/ERPInHedTBScheduler.java
new file mode 100644
index 0000000..34dc211
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/task/ERPInHedTBScheduler.java
@@ -0,0 +1,80 @@
+package com.zy.third.erp.task;
+
+import com.zy.common.service.erp.ErpSqlServer;
+import com.zy.third.erp.entity.InDetTB;
+import com.zy.third.erp.entity.InHedTB;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+/**
+ * 鍏ュ簱鍗曟嵁
+ */
+@Slf4j
+@Component
+public class ERPInHedTBScheduler {
+
+ @Value("${erp.enabled}")
+ private Boolean erpEnabled;
+
+
+ @Autowired
+ private ERPInOrOutService inMS;
+
+
+ @Autowired
+ private ErpSqlServer erpSqlServer;
+
+
+ @Transactional(rollbackFor = Throwable.class)
+ @Scheduled(cron = "${erp.refreshtime}")
+ public void InHedTBScheduler() {
+ log.info("InHedTBScheduler寮�濮嬩簡");
+ if (!erpEnabled) return;
+ String sqlInHed = "select * from erp_InHedTB where LKName='涓壃浜屾湡'";
+ List<InHedTB> inHeds = erpSqlServer.select(sqlInHed, InHedTB.class);
+ if (!inHeds.isEmpty()) {
+ for (InHedTB inHed : inHeds) {
+ System.out.println(inHed);
+ HashMap<String, String> condition = new HashMap<>();
+ condition.put("BillNo", "'" + inHed.getBillNo() + "'");
+ List<InDetTB> inDetTBS = erpSqlServer.selectList(InDetTB.class, condition);
+ HashMap<String, Object> hedAndDet = new HashMap<>();
+ hedAndDet.put("hed", inHed);
+ hedAndDet.put("det", inDetTBS);
+ boolean result = inMS.createInOrder(inHed, inDetTBS);
+ if (result) {
+ move(hedAndDet);
+ } else {
+ String sql = "UPDATE erp_InHedTB SET Temp3 = 鈥榝ault鈥� WHERE BillNo = '" + inHed.getBillNo() + "'";
+ erpSqlServer.update(sql);
+ }
+ }
+ }
+ }
+
+
+ @Transactional(rollbackFor = Throwable.class)
+ public void move(HashMap<String, Object> hedAndDet) {
+ InHedTB hed = (InHedTB) hedAndDet.get("hed");
+ ArrayList<InDetTB> dets = (ArrayList<InDetTB>) hedAndDet.get("det");
+ HashMap<String, String> condition = new HashMap<>();
+ condition.put("BillNo", "'" + hed.getBillNo() + "'");
+ erpSqlServer.delete(InHedTB.class, condition);
+
+ for (InDetTB det : dets) {
+ HashMap<String, String> condition2 = new HashMap<>();
+ condition2.put("BillNo", "'" + det.getBillNo() + "'");
+ condition2.put("iNo", String.valueOf(det.getINO()));
+ erpSqlServer.delete(InDetTB.class, condition2);
+ }
+
+ }
+}
diff --git a/src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java b/src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java
new file mode 100644
index 0000000..a2b3f8f
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/task/ERPInOrOutCancelService.java
@@ -0,0 +1,66 @@
+package com.zy.third.erp.task;
+
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.zy.asrs.entity.Order;
+import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.service.OrderDetlService;
+import com.zy.asrs.service.OrderService;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+import java.util.List;
+import java.util.Optional;
+
+@Slf4j
+@Component
+public class ERPInOrOutCancelService {
+
+ @Autowired
+ private OrderService orderService;
+
+ @Autowired
+ private OrderDetlService orderDetlService;
+
+
+ public com.zy.third.lk.entity.InCancelTB tryCancel(String orderNo) {
+ com.zy.third.lk.entity.InCancelTB lkCancel = new com.zy.third.lk.entity.InCancelTB();
+
+ List<Order> targets = orderService.selectList(new EntityWrapper<Order>()
+ .eq("order_no",orderNo));
+ log.info("瑕佸彇娑堢殑璁㈠崟锛歿}", targets);
+ if (targets.isEmpty()) {
+ lkCancel.setBillNo(orderNo);
+ //erp鏂硅姹�,璁㈠崟鎵句笉鍒�,杩斿洖1
+ lkCancel.setOpFlag(1);
+ lkCancel.setMakeDate(new Date());
+ return lkCancel;
+ } else {
+ //榛樿璁㈠崟id涓嶈兘閲嶅
+ Order order = targets.get(0);
+ List<OrderDetl> detlList = orderDetlService.selectItem(order.getOrderNo());
+ log.info("瑕佸彇娑堢殑璁㈠崟璇︽儏锛歿}", detlList);
+ Optional<OrderDetl> any = detlList.stream().filter(s -> s.getQty().compareTo(0D) > 0).findAny();
+ if (order.getSettle() > 1L || any.isPresent()) {
+ lkCancel.setBillNo(orderNo);
+ lkCancel.setOpFlag(2);
+ lkCancel.setMakeDate(new Date());
+ return lkCancel;
+ }
+ orderService.addToLogTable(order);
+ orderService.delete(new EntityWrapper<Order>()
+ .eq("order_no", order.getOrderNo()));
+ detlList.stream().forEach(d -> orderDetlService.addToLogTable(d));
+ orderDetlService.delete(new EntityWrapper<OrderDetl>()
+ .eq("order_no", order.getOrderNo()));
+ lkCancel.setBillNo(orderNo);
+ lkCancel.setOpFlag(1);
+ lkCancel.setMakeDate(new Date());
+ return lkCancel;
+ }
+
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/erp/task/ERPInOrOutService.java b/src/main/java/com/zy/third/erp/task/ERPInOrOutService.java
new file mode 100644
index 0000000..6904b70
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/task/ERPInOrOutService.java
@@ -0,0 +1,240 @@
+package com.zy.third.erp.task;
+
+import com.core.common.Cools;
+import com.core.common.DateUtils;
+import com.core.common.SnowflakeIdWorker;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.DocType;
+import com.zy.asrs.entity.Mat;
+import com.zy.asrs.entity.Order;
+import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.service.DocTypeService;
+import com.zy.asrs.service.MatService;
+import com.zy.asrs.service.OrderDetlService;
+import com.zy.asrs.service.OrderService;
+import com.zy.third.erp.entity.InDetTB;
+import com.zy.third.erp.entity.InHedTB;
+import com.zy.third.erp.entity.OutDetTB;
+import com.zy.third.erp.entity.OutHedTB;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.Date;
+import java.util.List;
+
+@Slf4j
+@Component
+public class ERPInOrOutService {
+
+
+ @Autowired
+ private OrderService orderService;
+
+ @Autowired
+ private OrderDetlService orderDetlService;
+
+
+ @Autowired
+ private SnowflakeIdWorker snowflakeIdWorker;
+
+
+ @Autowired
+ private DocTypeService docTypeService;
+
+
+ @Autowired
+ private MatService matService;
+
+
+ /**
+ * @return
+ */
+ @Transactional(rollbackFor = Throwable.class)
+ public boolean createInOrder(InHedTB inHedTB, List<InDetTB> inDetTBs) {
+ Order order = orderService.selectByNo(inHedTB.getBillNo());
+ // 濡傛灉鍗曟嵁涓嶅瓨鍦ㄥ垯娣诲姞锛涘鏋滃崟鎹瓨鍦紝浣滀笟涓棤娉曚慨鏀癸紝鍙嶄箣鍒欎慨鏀瑰崟鎹�
+ if (!Cools.isEmpty(order)) {
+ if (order.getSettle() > 1L) {
+ throw new CoolException(inHedTB.getBillNo() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
+ }
+ orderService.remove(order.getId());
+ }
+ DocType docType = docTypeService.selectOrAdd(inHedTB.getIoKindID(), Boolean.FALSE);
+ Date now = new Date();
+ // 鍗曟嵁涓绘。
+ order = new Order(
+ String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖]
+ inHedTB.getBillNo(), // 璁㈠崟缂栧彿
+ DateUtils.convert(inHedTB.getBillDate()), // 鍗曟嵁鏃ユ湡
+ docType.getDocId(), // 鍗曟嵁绫诲瀷
+ null, // 椤圭洰缂栧彿
+ null, //
+ null, // 璋冩嫧椤圭洰缂栧彿
+ null, // 鍒濆绁ㄦ嵁鍙�
+ null, // 绁ㄦ嵁鍙�
+ inHedTB.getObjectId(), // 瀹㈡埛缂栧彿
+ inHedTB.getObjectName(), // 瀹㈡埛
+ null, // 鑱旂郴鏂瑰紡
+ null, // 鎿嶄綔浜哄憳
+ null, // 鍚堣閲戦
+ null, // 浼樻儬鐜�
+ null, // 浼樻儬閲戦
+ null, // 閿�鍞垨閲囪喘璐圭敤鍚堣
+ null, // 瀹炰粯閲戦
+ null, // 浠樻绫诲瀷
+ null, // 涓氬姟鍛�
+ null, // 缁撶畻澶╂暟
+ null, // 閭垂鏀粯绫诲瀷
+ null, // 閭垂
+ null, // 浠樻鏃堕棿
+ null, // 鍙戣揣鏃堕棿
+ null, // 鐗╂祦鍚嶇О
+ null, // 鐗╂祦鍗曞彿
+ 1L, // 璁㈠崟鐘舵��
+ 1, // 鐘舵��
+ 9527L, // 娣诲姞浜哄憳
+ now, // 娣诲姞鏃堕棿
+ 9527L, // 淇敼浜哄憳
+ inHedTB.getMakeDate(), // 淇敼鏃堕棿
+ inHedTB.getRemark() // 澶囨敞
+ );
+ if (!orderService.insert(order)) {
+ throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+ for (InDetTB outDetTB : inDetTBs) {
+ Mat mat = matService.selectByMatnr(outDetTB.getItemCode());
+ if (Cools.isEmpty(mat)) {
+ throw new CoolException(outDetTB.getItemCode() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧");
+ }
+ OrderDetl orderDetl = new OrderDetl();
+ orderDetl.sync(mat);
+ orderDetl.setOrderNo(outDetTB.getBillNo());
+ orderDetl.setOutOrderNo(outDetTB.getOrderNo());
+ orderDetl.setAutoId(outDetTB.getAutoId());
+ orderDetl.setLuHao(outDetTB.getLuHao());
+ orderDetl.setSpecs(outDetTB.getSPgNO());
+ orderDetl.setPacking(outDetTB.getPacking());
+ orderDetl.setWareId(outDetTB.getWareId());
+ orderDetl.setWareName(outDetTB.getWareName());
+ orderDetl.setBatch(outDetTB.getItemBatch());
+ orderDetl.setAnfme(outDetTB.getMainNum());
+ orderDetl.setINO(outDetTB.getINO());
+ orderDetl.setOrderId(order.getId());
+ orderDetl.setTemp1(outDetTB.getTemp1());
+ orderDetl.setTemp2(outDetTB.getTemp2());
+ orderDetl.setTemp3(outDetTB.getTemp3());
+ orderDetl.setOrderNo(order.getOrderNo());
+ orderDetl.setThreeCode(outDetTB.getDetId() + "");
+ orderDetl.setCreateBy(9527L);
+ orderDetl.setCreateTime(now);
+ orderDetl.setUpdateBy(9527L);
+ orderDetl.setUpdateTime(now);
+ orderDetl.setStatus(1);
+ orderDetl.setQty(0.0D);
+ if (!orderDetlService.insert(orderDetl)) {
+ throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+ }
+ return true;
+ }
+
+
+ /**
+ * @return
+ */
+ @Transactional(rollbackFor = Throwable.class)
+ public boolean createOutOrder(OutHedTB inHedTB, List<OutDetTB> inDetTBs) {
+ Order order = orderService.selectByNo(inHedTB.getBillNo());
+ // 濡傛灉鍗曟嵁涓嶅瓨鍦ㄥ垯娣诲姞锛涘鏋滃崟鎹瓨鍦紝浣滀笟涓棤娉曚慨鏀癸紝鍙嶄箣鍒欎慨鏀瑰崟鎹�
+ if (!Cools.isEmpty(order)) {
+ if (order.getSettle() > 1L) {
+ throw new CoolException(inHedTB.getBillNo() + "姝e湪鍑哄簱锛屾棤娉曚慨鏀瑰崟鎹�");
+ }
+ orderService.remove(order.getId());
+ }
+ DocType docType = docTypeService.selectOrAdd(inHedTB.getIoKindID(), Boolean.FALSE);
+ Date now = new Date();
+ // 鍗曟嵁涓绘。
+ order = new Order(
+ String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖]
+ inHedTB.getBillNo(), // 璁㈠崟缂栧彿
+ DateUtils.convert(inHedTB.getBillDate()), // 鍗曟嵁鏃ユ湡
+ docType.getDocId(), // 鍗曟嵁绫诲瀷
+ null, // 椤圭洰缂栧彿
+ null, //
+ null, // 璋冩嫧椤圭洰缂栧彿
+ null, // 鍒濆绁ㄦ嵁鍙�
+ null, // 绁ㄦ嵁鍙�
+ inHedTB.getObjectId(), // 瀹㈡埛缂栧彿
+ inHedTB.getObjectName(), // 瀹㈡埛
+ null, // 鑱旂郴鏂瑰紡
+ null, // 鎿嶄綔浜哄憳
+ null, // 鍚堣閲戦
+ null, // 浼樻儬鐜�
+ null, // 浼樻儬閲戦
+ null, // 閿�鍞垨閲囪喘璐圭敤鍚堣
+ null, // 瀹炰粯閲戦
+ null, // 浠樻绫诲瀷
+ null, // 涓氬姟鍛�
+ null, // 缁撶畻澶╂暟
+ null, // 閭垂鏀粯绫诲瀷
+ null, // 閭垂
+ null, // 浠樻鏃堕棿
+ null, // 鍙戣揣鏃堕棿
+ null, // 鐗╂祦鍚嶇О
+ null, // 鐗╂祦鍗曞彿
+ 1L, // 璁㈠崟鐘舵��
+ 1, // 鐘舵��
+ 9527L, // 娣诲姞浜哄憳
+ now, // 娣诲姞鏃堕棿
+ 9527L, // 淇敼浜哄憳
+ inHedTB.getMakeDate(), // 淇敼鏃堕棿
+ inHedTB.getRemark() // 澶囨敞
+ );
+ if (!orderService.insert(order)) {
+ throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+ for (OutDetTB outDetTB : inDetTBs) {
+ Mat mat = matService.selectByMatnr(outDetTB.getItemCode());
+ if (Cools.isEmpty(mat)) {
+ throw new CoolException(outDetTB.getItemCode() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧");
+ }
+ OrderDetl orderDetl = new OrderDetl();
+ orderDetl.sync(mat);
+ orderDetl.setOrderNo(outDetTB.getBillNo());
+ orderDetl.setOutOrderNo(outDetTB.getOrderNo());
+ orderDetl.setAutoId(outDetTB.getAutoId());
+ orderDetl.setLuHao(outDetTB.getLuHao());
+ orderDetl.setSpecs(outDetTB.getSPgNO());
+ orderDetl.setPacking(outDetTB.getPacking());
+ orderDetl.setWareId(outDetTB.getWareId());
+ orderDetl.setWareName(outDetTB.getWareName());
+ orderDetl.setBatch(outDetTB.getItemBatch());
+ orderDetl.setAnfme(outDetTB.getMainNum());
+ orderDetl.setINO(outDetTB.getINO());
+ orderDetl.setOrderId(order.getId());
+ orderDetl.setTemp1(outDetTB.getTemp1());
+ orderDetl.setTemp2(outDetTB.getTemp2());
+ orderDetl.setTemp3(outDetTB.getTemp3());
+ orderDetl.setOrderNo(order.getOrderNo());
+ orderDetl.setThreeCode(outDetTB.getDetId() + "");
+ orderDetl.setCreateBy(9527L);
+ orderDetl.setCreateTime(now);
+ orderDetl.setUpdateBy(9527L);
+ orderDetl.setUpdateTime(now);
+ orderDetl.setStatus(1);
+ orderDetl.setQty(0.0D);
+ if (!orderDetlService.insert(orderDetl)) {
+ throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�");
+ }
+ }
+ return true;
+ }
+}
+
+
+
+
+
diff --git a/src/main/java/com/zy/third/erp/task/ERPItemScheduler.java b/src/main/java/com/zy/third/erp/task/ERPItemScheduler.java
new file mode 100644
index 0000000..5d526de
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/task/ERPItemScheduler.java
@@ -0,0 +1,63 @@
+package com.zy.third.erp.task;
+
+import com.zy.common.service.erp.ErpSqlServer;
+import com.zy.third.erp.entity.ItemTB;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.List;
+
+/**
+ * 鐗╂枡妗f
+ */
+@Slf4j
+@Component
+public class ERPItemScheduler {
+ @Value("${erp.enabled}")
+ private Boolean erpEnabled;
+
+ @Autowired
+ private ERPItemService erpItemService;
+
+ @Autowired
+ private ErpSqlServer erpSqlServer;
+
+
+
+ @Transactional(rollbackFor = Throwable.class)
+ @Scheduled(cron = "${erp.refreshtime}")
+ public void ItemScheduler() {
+ log.info("ItemScheduler寮�濮嬩簡");
+ if (!erpEnabled) return;
+ String sqlItemTB = "select * from erp_ItemTB where LKName='涓壃浜屾湡'";
+ List<ItemTB> itemTBS = erpSqlServer.select(sqlItemTB, ItemTB.class);
+ if (itemTBS != null && itemTBS.size() > 0) {
+ for (ItemTB itemTB : itemTBS) {
+ System.out.println(itemTB);
+ //00浠h〃鏂板
+ if (itemTB.getFlag().equals("00")) {
+ erpItemService.addToMainDatabase(itemTB);
+ }
+ //22浠h〃鍒犻櫎
+ if (itemTB.getFlag().equals("22")) {
+ erpItemService.deleteFromMainDatabase(itemTB);
+ }
+ moveToBak(itemTB);
+ }
+ }
+ }
+
+ /**
+ * 鏁版嵁搴撻噷鏈夎Е鍙戝櫒,褰搃tem琛ㄧ殑鏁版嵁琚垹闄ゆ椂,浼氳嚜鍔ㄥ悜item_bak娣诲姞,涓嶇敤鍗歌浇浠g爜閲�
+ *
+ * @param itemTB
+ */
+ //灏嗘暟鎹粠涓昏〃绉诲姩鍒癰ak琛ㄩ噷
+ private void moveToBak(ItemTB itemTB) {
+ erpSqlServer.update("delete from erp_ItemTB where LKName='涓壃浜屾湡' and ItemId = '" + itemTB.getItemId() + "'");
+ }
+}
diff --git a/src/main/java/com/zy/third/erp/task/ERPItemService.java b/src/main/java/com/zy/third/erp/task/ERPItemService.java
new file mode 100644
index 0000000..58d4f88
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/task/ERPItemService.java
@@ -0,0 +1,126 @@
+package com.zy.third.erp.task;
+
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.common.Cools;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.Mat;
+import com.zy.asrs.entity.Tag;
+import com.zy.asrs.mapper.MatMapper;
+import com.zy.asrs.mapper.TagMapper;
+import com.zy.asrs.service.MatService;
+import com.zy.asrs.service.TagService;
+import com.zy.common.utils.NodeUtils;
+import com.zy.third.erp.entity.ItemTB;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.util.Date;
+
+
+@Slf4j
+@Component
+public class ERPItemService {
+
+ @Autowired
+ private MatService matService;
+
+ @Autowired
+ private TagService tagService;
+
+ @Autowired
+ private TagMapper tagMapper;
+
+ @Autowired
+ private MatMapper matMapper;
+
+ /**
+ * 灏嗙墿鏂欎腑闂磋〃鏁版嵁鍚屾鍒扮珛搴撶墿鏂欏熀纭�鏁版嵁锛屽鏋滄病鏈夊垯鎻掑叆锛屽鏋滄湁鍒欐洿鏂�
+ *
+ * @param itemTB,鐗╂枡瀹炰綋绫�
+ */
+ protected void addToMainDatabase(ItemTB itemTB) {
+ Date now = new Date();
+ Mat mat = matService.selectByMatnr(itemTB.getItemId());
+ if (mat == null) {
+ mat = new Mat();
+ Tag priTag = null;
+ if (!Cools.isEmpty(itemTB.getItemKind())) {
+ priTag = tagService.selectByName(itemTB.getItemKind(), 2);
+ if (priTag == null) {
+ Tag top = tagService.getTop();
+ NodeUtils nodeUtils = new NodeUtils();
+ nodeUtils.executePath(top.getId());
+ priTag = new Tag(
+ null, // 缂栧彿
+ itemTB.getItemKind(), // 鍚嶇О
+ top.getId(), // 鐖剁骇
+ top.getName(), // 鐖剁骇鍚嶇О
+ nodeUtils.path.toString(), // 鍏宠仈璺緞
+ nodeUtils.pathName.toString(), // 鍏宠仈璺緞鍚�
+ 0, // 绫诲瀷
+ null, // 璐熻矗浜�
+ null, // 鍥剧墖
+ null, // 绠�瑕佹弿杩�
+ null, // 鏁伴噺
+ 2, // 绛夌骇
+ null, // 鎺掑簭
+ 1, // 鐘舵��
+ now, // 娣诲姞鏃堕棿
+ null, // 娣诲姞浜哄憳
+ now, // 淇敼鏃堕棿
+ null, // 淇敼浜哄憳
+ null // 澶囨敞
+ );
+ if (tagMapper.insert(priTag) == 0) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ }
+ }
+ }
+ priTag = tagService.selectByName(itemTB.getItemKind(), 2);
+ mat = sync(mat, itemTB);
+
+ mat.setTagId(priTag.getId());
+ mat.setStatus(1);
+ mat.setCreateTime(now);
+ mat.setUpdateTime(now);
+ if (!matService.insert(mat)) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ } else {
+ log.info("鍚屾鏂扮墿鏂橻鍟嗗搧缂栧彿锛歿}]", mat.getMatnr());
+ }
+ } else {
+ mat = sync(mat, itemTB);
+ if (!matService.update(mat, new EntityWrapper<Mat>().eq("matnr", itemTB.getItemId()))) {
+ throw new CoolException("鏇存柊宸插瓨鍦ㄥ晢鍝佷俊鎭け璐ワ紝璇疯仈绯荤鐞嗗憳");
+ }
+ }
+ }
+
+ private Mat sync(Mat mat, ItemTB itemTB) {
+ mat.setUuid(itemTB.getItemId());
+ mat.setMatnr(itemTB.getItemCode());
+ mat.setMaktx(itemTB.getItemName());
+ mat.setSpecs(itemTB.getItemSpc());
+ mat.setUnit(itemTB.getItemUnit());
+ mat.setMemo(itemTB.getRemark());
+ mat.setCreateTime(itemTB.getMakeDate());
+ mat.setTemp1(itemTB.getTemp1());
+ mat.setTemp2(itemTB.getTemp2());
+ mat.setTemp3(itemTB.getTemp3());
+ return mat;
+ }
+
+ /**
+ * 鍒犻櫎ASRS鐗╂枡閫氱煡妗f暟鎹�
+ *
+ * @param itemTB,鐗╂枡瀹炰綋绫�
+ */
+ protected void deleteFromMainDatabase(ItemTB itemTB) {
+ EntityWrapper<Mat> matCodeEntityWrapper = new EntityWrapper<>();
+ matCodeEntityWrapper.eq("matnr", itemTB.getItemCode());
+ matMapper.delete(matCodeEntityWrapper);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/erp/task/ERPOutCancelScheduler.java b/src/main/java/com/zy/third/erp/task/ERPOutCancelScheduler.java
new file mode 100644
index 0000000..9c154eb
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/task/ERPOutCancelScheduler.java
@@ -0,0 +1,63 @@
+package com.zy.third.erp.task;
+
+import com.zy.common.service.erp.ErpSqlServer;
+import com.zy.third.erp.entity.InCancelTB;
+import com.zy.third.erp.entity.OutCancelTB;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.HashMap;
+import java.util.List;
+
+@Slf4j
+@Component
+public class ERPOutCancelScheduler {
+
+ @Value("${erp.enabled}")
+ private Boolean erpEnabled;
+
+ @Autowired
+ private ERPInOrOutCancelService inMS;
+
+ @Autowired
+ private ErpSqlServer erpSqlServer;
+
+
+ @Transactional(rollbackFor = Throwable.class)
+ @Scheduled(cron = "${erp.refreshtime}")
+ public void InCancelScheduler() {
+ log.info("InCancelScheduler寮�濮嬩簡");
+ if (!erpEnabled) return;
+ String sqlInCancelTB = "select * from erp_OutCancelTB where LKName='涓壃浜屾湡'";
+ List<OutCancelTB> ins = erpSqlServer.select(sqlInCancelTB, OutCancelTB.class);
+ for (OutCancelTB in : ins) {
+ System.out.println(in);
+ com.zy.third.lk.entity.InCancelTB lkCancel = inMS.tryCancel(in.getBillNo());
+ if (lkCancel != null) {
+ HashMap<String, String> condition = new HashMap<>();
+ condition.put("BillNo", "'" + in.getBillNo() + "'");
+ int delete = erpSqlServer.delete(InCancelTB.class, condition);
+ if (delete > 0) {
+ log.info("灏嗗叆搴撳彇娑堥�氱煡鍗曞垹闄ゆ垚鍔�,{}", lkCancel.getBillNo());
+ } else {
+ log.error("灏嗗叆搴撳彇娑堥�氱煡鍗曞垹闄ゅけ璐�,{}", lkCancel.getBillNo());
+ }
+ HashMap<String, Object> content = new HashMap<>();
+ content.put("BillNo", "'" + lkCancel.getBillNo() + "'");
+ content.put("opFlag", lkCancel.getOpFlag());
+ int insert = erpSqlServer.insert(com.zy.third.lk.entity.InCancelTB.class, content);
+ if (insert > 0) {
+ log.info("灏嗗叆搴撳彇娑堥�氱煡鍗曞啓鍏ユ垚鍔�,{}", lkCancel.getBillNo());
+ } else {
+ log.error("灏嗗叆搴撳彇娑堥�氱煡鍗曞啓鍏ュけ璐�,{}", lkCancel.getBillNo());
+ }
+ } else {
+ log.error("灏嗗叆搴撳彇娑堥�氱煡鍗曞啓鍏ュけ璐�");
+ }
+ }
+ }
+}
diff --git a/src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java b/src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java
new file mode 100644
index 0000000..ad54500
--- /dev/null
+++ b/src/main/java/com/zy/third/erp/task/ERPOutHedTBScheduler.java
@@ -0,0 +1,78 @@
+package com.zy.third.erp.task;
+
+import com.zy.common.service.erp.ErpSqlServer;
+import com.zy.third.erp.entity.OutDetTB;
+import com.zy.third.erp.entity.OutHedTB;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+/**
+ * 鍏ュ簱鍗曟嵁
+ */
+@Slf4j
+@Component
+public class ERPOutHedTBScheduler {
+
+ @Value("${erp.enabled}")
+ private Boolean erpEnabled;
+
+
+ @Autowired
+ private ERPInOrOutService inMS;
+
+
+ @Autowired
+ private ErpSqlServer erpSqlServer;
+
+
+ @Transactional(rollbackFor = Throwable.class)
+ @Scheduled(cron = "${erp.refreshtime}")
+ public void OutHedTBScheduler() {
+ log.info("OutHedTBScheduler寮�濮嬩簡");
+ if (!erpEnabled) return;
+ String sqlInHed = "select * from erp_OutHedTB where LKName='涓壃浜屾湡'";
+ List<OutHedTB> inHeds = erpSqlServer.select(sqlInHed, OutHedTB.class);
+ if (!inHeds.isEmpty()) {
+ for (OutHedTB inHed : inHeds) {
+ System.out.println(inHed);
+ HashMap<String, String> condition = new HashMap<>();
+ condition.put("BillNo", "'" + inHed.getBillNo() + "'");
+ List<OutDetTB> inDetTBS = erpSqlServer.selectList(OutDetTB.class, condition);
+ HashMap<String, Object> hedAndDet = new HashMap<>();
+ hedAndDet.put("hed", inHed);
+ hedAndDet.put("det", inDetTBS);
+ boolean result = inMS.createOutOrder(inHed, inDetTBS);
+ if (result) {
+ move(hedAndDet);
+ } else {
+ String sql = "UPDATE erp_OutHedTB SET Temp3 = 鈥榝ault鈥� WHERE BillNo = '" + inHed.getBillNo() + "'";
+ erpSqlServer.update(sql);
+ }
+ }
+ }
+ }
+
+ @Transactional(rollbackFor = Throwable.class)
+ public void move(HashMap<String, Object> hedAndDet) {
+ OutHedTB hed = (OutHedTB) hedAndDet.get("hed");
+ ArrayList<OutDetTB> dets = (ArrayList<OutDetTB>) hedAndDet.get("det");
+ HashMap<String, String> condition = new HashMap<>();
+ condition.put("BillNo", "'" + hed.getBillNo() + "'");
+ erpSqlServer.delete(OutHedTB.class, condition);
+ for (OutDetTB det : dets) {
+ HashMap<String, String> condition2 = new HashMap<>();
+ condition2.put("BillNo", "'" + det.getBillNo() + "'");
+ condition2.put("iNo", String.valueOf(det.getINO()));
+ erpSqlServer.delete(OutDetTB.class, condition2);
+ }
+
+ }
+}
diff --git a/src/main/java/com/zy/third/lk/entity/ErpLKStorage.java b/src/main/java/com/zy/third/lk/entity/ErpLKStorage.java
new file mode 100644
index 0000000..985add0
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/ErpLKStorage.java
@@ -0,0 +1,70 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import java.io.Serializable;
+
+@NoArgsConstructor
+@Data
+@TableName("vwErpLKStorage")
+public class ErpLKStorage implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "")
+ @TableField("WareId")
+ private String wareId;
+
+ @ApiModelProperty(value = "")
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemId")
+ private String itemId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemCode")
+ private String itemCode;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemName")
+ private String itemName;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemSpc")
+ private String itemSpc;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemUnit")
+ private String itemUnit;
+
+ @ApiModelProperty(value = "")
+ @TableField("ProType")
+ private String protype;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemBatch")
+ private String itemBatch;
+
+ @ApiModelProperty(value = "")
+ @TableField("NumIs")
+ private Double numis;
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/InCancelTB.java b/src/main/java/com/zy/third/lk/entity/InCancelTB.java
new file mode 100644
index 0000000..b824137
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/InCancelTB.java
@@ -0,0 +1,58 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@Data
+@NoArgsConstructor
+@TableName("lk_InCancelTB")
+public class InCancelTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "")
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableId(value = "BillNo", type = IdType.INPUT)
+ @TableField(value = "BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("opFlag")
+ private Integer opFlag;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date MakeDate;
+
+
+ public String getMakeDate$() {
+ if (Cools.isEmpty(this.MakeDate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.MakeDate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/InDetTB.java b/src/main/java/com/zy/third/lk/entity/InDetTB.java
new file mode 100644
index 0000000..7b3dc23
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/InDetTB.java
@@ -0,0 +1,146 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@NoArgsConstructor
+@AllArgsConstructor
+@Data
+@TableName("LK_InDetTB")
+public class InDetTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("iNo")
+ private Integer iNO;
+
+ @ApiModelProperty(value = "")
+ @TableField("DetId")
+ private Integer detId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemId")
+ private String ItemId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemCode")
+ private String ItemCode;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemBatch")
+ private String ItemBatch;
+
+ @ApiModelProperty(value = "")
+ @TableField("proType")
+ private String protype;
+
+ @ApiModelProperty(value = "")
+ @TableField("OrderNo")
+ private String OrderNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("MainNum")
+ private Double MainNum;
+
+
+ @ApiModelProperty(value = "")
+ @TableField("remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String wareId;
+
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ private String temp1;
+
+ @ApiModelProperty(value = "")
+ private String temp2;
+
+ @ApiModelProperty(value = "")
+ private String temp3;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+
+ /**
+ *
+ */
+ @TableField("FactArea")
+ private String FactArea;
+ /**
+ * 渚涘簲鍟哱瀹㈡埛ID
+ */
+ @TableField("Packing")
+ private String Packing;
+ /**
+ * 棰滆壊
+ */
+ @TableField("sColor")
+ private String sColor;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("LuHao")
+ private String LuHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("sPgNO")
+ private String sPgNO;
+
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/InDetTBBak.java b/src/main/java/com/zy/third/lk/entity/InDetTBBak.java
new file mode 100644
index 0000000..e569989
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/InDetTBBak.java
@@ -0,0 +1,142 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@Data
+@TableName("lk_InDetTB_bak")
+public class InDetTBBak implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer autoId;
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("iNo")
+ private Integer iNO;
+
+ @ApiModelProperty(value = "")
+ @TableField("DetId")
+ private Integer detId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemId")
+ private String itemid;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemCode")
+ private String ItemCode;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemBatch")
+ private String ItemBatch;
+
+ @ApiModelProperty(value = "")
+ @TableField("proType")
+ private String protype;
+
+ @ApiModelProperty(value = "")
+ @TableField("OrderNo")
+ private String OrderNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("MainNum")
+ private Double MainNum;
+
+ @ApiModelProperty(value = "")
+ @TableField("remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String wareId;
+
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ private String temp1;
+
+ @ApiModelProperty(value = "")
+ private String temp2;
+
+ @ApiModelProperty(value = "")
+ private String temp3;
+
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+ @TableField("DelDate")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date DelDate;
+
+ /**
+ *
+ */
+ @TableField("FactArea")
+ private String FactArea;
+ /**
+ * 渚涘簲鍟哱瀹㈡埛ID
+ */
+ @TableField("Packing")
+ private String Packing;
+ /**
+ * 棰滆壊
+ */
+ @TableField("sColor")
+ private String sColor;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("LuHao")
+ private String LuHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("sPgNO")
+ private String sPgNO;
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/InHedTB.java b/src/main/java/com/zy/third/lk/entity/InHedTB.java
new file mode 100644
index 0000000..e239035
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/InHedTB.java
@@ -0,0 +1,121 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@NoArgsConstructor
+@AllArgsConstructor
+@Data
+@TableName("lk_InHedTB")
+public class InHedTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableId(value = "BillNo", type = IdType.INPUT)
+ @TableField("BillNo")
+ private String BillNo;
+
+ @TableField("BillDate")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date billDate;
+
+ /**
+ * StockIn:閲囪喘鍏ュ簱
+ * ProductIn:OutHedTB
+ * ItemMoveIn:璋冩嫧鍏ュ簱
+ * ItemSwitchIn:褰㈡�佽浆鎹㈠叆搴�
+ * CheckMoreIn:鐩樼泩鍏ュ簱鍗�
+ */
+ @ApiModelProperty(value = "StockIn:閲囪喘鍏ュ簱 ")
+ @TableField("IoKindID")
+ private String IoKindID;
+
+
+ @TableField("IoKindName")
+ private String ioKindName;
+
+ /**
+ * 渚涘簲鍟嗐�侀儴闂↖D
+ */
+ @ApiModelProperty(value = "渚涘簲鍟嗐�侀儴闂↖D")
+ @TableField("ObjectId")
+ private String ObjectId;
+
+ /**
+ * 渚涘簲鍟嗐�侀儴闂ㄥ悕绉�
+ */
+ @ApiModelProperty(value = "渚涘簲鍟嗐�侀儴闂ㄥ悕绉�")
+ @TableField("ObjectName")
+ private String ObjectName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Remark")
+ private String Remark;
+
+ @TableField("WareId")
+ private String WareId;
+
+
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp1")
+ private String Temp1;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp2")
+ private String Temp2;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp3")
+ private String Temp3;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+ @TableField("bPass")
+ private Boolean bPass;
+
+ @TableField("bStartIn")
+ private Boolean bStartIn;
+
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/InHedTBBak.java b/src/main/java/com/zy/third/lk/entity/InHedTBBak.java
new file mode 100644
index 0000000..69bb639
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/InHedTBBak.java
@@ -0,0 +1,118 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+import io.swagger.annotations.ApiModelProperty;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@Data
+@TableName("lk_InHedTB_bak")
+public class InHedTBBak implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer autoId;
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @TableField("BillDate")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date billDate;
+
+ /**
+ * StockIn:閲囪喘鍏ュ簱
+ * ProductIn:鎴愬搧鍏ュ簱鍗�
+ * ItemMoveIn:璋冩嫧鍏ュ簱
+ * ItemSwitchIn:褰㈡�佽浆鎹㈠叆搴�
+ * CheckMoreIn:鐩樼泩鍏ュ簱鍗�
+ */
+ @ApiModelProperty(value = "StockIn:閲囪喘鍏ュ簱 ")
+ @TableField("IoKindID")
+ private String IoKindID;
+
+ @TableField("IoKindName")
+ private String ioKindName;
+
+ /**
+ * 渚涘簲鍟嗐�侀儴闂↖D
+ */
+ @ApiModelProperty(value = "渚涘簲鍟嗐�侀儴闂↖D")
+ @TableField("ObjectId")
+ private String ObjectId;
+
+ /**
+ * 渚涘簲鍟嗐�侀儴闂ㄥ悕绉�
+ */
+ @ApiModelProperty(value = "渚涘簲鍟嗐�侀儴闂ㄥ悕绉�")
+ @TableField("ObjectName")
+ private String ObjectName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String wareId;
+
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp1")
+ private String temp1;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp2")
+ private String temp2;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp3")
+ private String temp3;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+ @TableField("DelDate")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date delDate;
+
+
+ @TableField("bPass")
+ private Boolean bPass;
+
+ @TableField("bStartIn")
+ private Boolean bStartIn;
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/OutDetTB.java b/src/main/java/com/zy/third/lk/entity/OutDetTB.java
new file mode 100644
index 0000000..4d34e05
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/OutDetTB.java
@@ -0,0 +1,134 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("lk_OutDetTB")
+public class OutDetTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("iNo")
+ private Integer iNO;
+
+ @ApiModelProperty(value = "")
+ @TableField("DetId")
+ private Integer detId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemId")
+ private String itemid;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemCode")
+ private String ItemCode;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemBatch")
+ private String ItemBatch;
+
+ @ApiModelProperty(value = "")
+ @TableField("proType")
+ private String protype;
+
+ @ApiModelProperty(value = "")
+ @TableField("OrderNo")
+ private String OrderNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("MainNum")
+ private Double MainNum;
+
+ @ApiModelProperty(value = "")
+ @TableField("remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String WareId;
+
+ @TableField("WareName")
+ private String WareName;
+
+ @ApiModelProperty(value = "")
+ private String Temp1;
+
+ @ApiModelProperty(value = "")
+ private String Temp2;
+
+ @ApiModelProperty(value = "")
+ private String Temp3;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("DelDate")
+ private Date delDate;
+
+ /**
+ *
+ */
+ @TableField("FactArea")
+ private String FactArea;
+ /**
+ * 渚涘簲鍟哱瀹㈡埛ID
+ */
+ @TableField("Packing")
+ private String Packing;
+ /**
+ * 棰滆壊
+ */
+ @TableField("sColor")
+ private String sColor;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("LuHao")
+ private String LuHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("sPgNO")
+ private String sPgNO;
+
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/OutDetTBBak.java b/src/main/java/com/zy/third/lk/entity/OutDetTBBak.java
new file mode 100644
index 0000000..b392334
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/OutDetTBBak.java
@@ -0,0 +1,128 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import lombok.Data;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@TableName("lk_OutDetTB_bak")
+@Data
+public class OutDetTBBak implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("iNo")
+ private Integer iNO;
+
+ @ApiModelProperty(value = "")
+ @TableField("DetId")
+ private Integer detId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemId")
+ private String itemid;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemCode")
+ private String ItemCode;
+
+ @ApiModelProperty(value = "")
+ @TableField("ItemBatch")
+ private String ItemBatch;
+
+ @ApiModelProperty(value = "")
+ @TableField("proType")
+ private String protype;
+
+ @ApiModelProperty(value = "")
+ @TableField("OrderNo")
+ private String OrderNo;
+
+ @ApiModelProperty(value = "")
+ @TableField("MainNum")
+ private Double MainNum;
+
+ @ApiModelProperty(value = "")
+ @TableField("remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String WareId;
+
+ @TableField("WareName")
+ private String WareName;
+
+ @ApiModelProperty(value = "")
+ private String Temp1;
+
+ @ApiModelProperty(value = "")
+ private String Temp2;
+
+ @ApiModelProperty(value = "")
+ private String Temp3;
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+ @TableField("DelDate")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date delDate;
+
+ /**
+ *
+ */
+ @TableField("FactArea")
+ private String FactArea;
+ /**
+ * 渚涘簲鍟哱瀹㈡埛ID
+ */
+ @TableField("Packing")
+ private String Packing;
+ /**
+ * 棰滆壊
+ */
+ @TableField("sColor")
+ private String sColor;
+
+ /**
+ * 鐐夊彿\瀹㈡埛鍥惧彿
+ */
+ @TableField("LuHao")
+ private String LuHao;
+
+ /**
+ * 宸ュ崟鍙�
+ */
+ @TableField("sPgNO")
+ private String sPgNO;
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/OutHedTB.java b/src/main/java/com/zy/third/lk/entity/OutHedTB.java
new file mode 100644
index 0000000..f9a352a
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/OutHedTB.java
@@ -0,0 +1,107 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@Data
+@NoArgsConstructor
+@AllArgsConstructor
+@TableName("lk_OutHedTB")
+public class OutHedTB implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableId(value = "BillNo", type = IdType.INPUT)
+ @TableField("BillNo")
+ private String BillNo;
+
+ @TableField("BillDate")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date billDate;
+
+ /**
+ * SendMatOut:鍙戞枡鍑哄簱
+ * OtherOut:鍏跺畠鍑哄簱鍗�
+ * ItemMoveOut:璋冩嫧鍑哄簱
+ * ItemSwitchOut:褰㈡�佽浆鎹㈠嚭搴�
+ * CheckLossOut:鐩樼泩鍑哄簱鍗�
+ */
+ @ApiModelProperty(value = "SendMatOut:鍙戞枡鍑哄簱 ")
+ @TableField("IoKindID")
+ private String IoKindID;
+
+ @TableField("IoKindName")
+ private String ioKindName;
+
+ @ApiModelProperty(value = "")
+ @TableField("ObjectId")
+ private String ObjectId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ObjectName")
+ private String ObjectName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Remark")
+ private String remark;
+
+ @TableField("WareId")
+ private String wareId;
+
+ @TableField("WareName")
+ private String wareName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp1")
+ private String temp1;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp2")
+ private String temp2;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp3")
+ private String temp3;
+
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+
+ @TableField("bPass")
+ private Boolean bPass;
+
+ @TableField("bStartIn")
+ private Boolean bStartIn;
+
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/entity/OutHedTBBak.java b/src/main/java/com/zy/third/lk/entity/OutHedTBBak.java
new file mode 100644
index 0000000..aa916ec
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/entity/OutHedTBBak.java
@@ -0,0 +1,101 @@
+package com.zy.third.lk.entity;
+
+import com.baomidou.mybatisplus.annotations.TableField;
+import com.core.common.Cools;
+import io.swagger.annotations.ApiModelProperty;
+import com.baomidou.mybatisplus.annotations.TableId;
+import com.baomidou.mybatisplus.enums.IdType;
+
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
+import org.springframework.format.annotation.DateTimeFormat;
+
+import com.baomidou.mybatisplus.annotations.TableName;
+
+import java.io.Serializable;
+
+@TableName("lk_OutHedTb_bak")
+public class OutHedTBBak implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "AutoId", type = IdType.AUTO)
+ private Integer AutoId;
+
+ @ApiModelProperty(value = "")
+ @TableField("BillNo")
+ private String BillNo;
+
+ @TableField("BillDate")
+ private Date billDate;
+
+ /**
+ * SendMatOut:鍙戞枡鍑哄簱
+ * OtherOut:鍏跺畠鍑哄簱鍗�
+ * ItemMoveOut:璋冩嫧鍑哄簱
+ * ItemSwitchOut:褰㈡�佽浆鎹㈠嚭搴�
+ * CheckLossOut:鐩樼泩鍑哄簱鍗�
+ */
+ @ApiModelProperty(value = "SendMatOut:鍙戞枡鍑哄簱 ")
+ @TableField("IoKindID")
+ private String IoKindID;
+
+ @TableField("IoKindName")
+ private String ioKindName;
+
+ @ApiModelProperty(value = "")
+ @TableField("ObjectId")
+ private String ObjectId;
+
+ @ApiModelProperty(value = "")
+ @TableField("ObjectName")
+ private String ObjectName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Remark")
+ private String Remark;
+
+ @TableField("WareId")
+ private String WareId;
+
+ @TableField("WareName")
+ private String WareName;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp1")
+ private String Temp1;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp2")
+ private String Temp2;
+
+ @ApiModelProperty(value = "")
+ @TableField("Temp3")
+ private String Temp3;
+
+
+ @ApiModelProperty(value = "")
+ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ @TableField("MakeDate")
+ private Date makedate;
+
+ @TableField("DelDate")
+ private Date delDate;
+
+ @TableField("bPass")
+ private Boolean bPass;
+
+ @TableField("bStartIn")
+ private Boolean bStartIn;
+
+
+ public String getMakedate$() {
+ if (Cools.isEmpty(this.makedate)) {
+ return "";
+ }
+ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.makedate);
+ }
+
+
+}
diff --git a/src/main/java/com/zy/third/lk/task/LKInTBScheduler.java b/src/main/java/com/zy/third/lk/task/LKInTBScheduler.java
new file mode 100644
index 0000000..a7de595
--- /dev/null
+++ b/src/main/java/com/zy/third/lk/task/LKInTBScheduler.java
@@ -0,0 +1,240 @@
+package com.zy.third.lk.task;
+
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.core.exception.CoolException;
+import com.zy.asrs.entity.DocType;
+import com.zy.asrs.entity.Mat;
+import com.zy.asrs.entity.Order;
+import com.zy.asrs.entity.OrderDetl;
+import com.zy.asrs.service.DocTypeService;
+import com.zy.asrs.service.MatService;
+import com.zy.asrs.service.OrderDetlService;
+import com.zy.asrs.service.OrderService;
+import com.zy.common.service.erp.ErpSqlServer;
+import com.zy.third.lk.entity.*;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 鍏ュ簱鏇存柊瀹屾垚鍥炴姤
+ */
+@Slf4j
+@Component
+public class LKInTBScheduler {
+
+ @Autowired
+ private MatService matService;
+
+ @Autowired
+ private OrderService orderService;
+
+ @Autowired
+ private OrderDetlService orderDetlService;
+
+ @Autowired
+ private DocTypeService docTypeService;
+
+ @Autowired
+ private ErpSqlServer erpSqlServer;
+
+ @Transactional(rollbackFor = Throwable.class)
+ @Scheduled(cron = "${erp.refreshtime}")
+ public void pakinOrderComplete() {
+ log.info("寮�濮嬪叆搴撴洿鏂板畬鎴愬洖鎶�");
+ // 鎵�鏈夎鍗�
+ List<Order> orders = orderService.selectList(new EntityWrapper<Order>().eq("settle", 4L));
+ DocType docType;
+ for (Order order : orders) {
+ System.out.println(order);
+ docType = docTypeService.selectById(order.getDocType());
+ if (docType == null) {
+ log.error("璇ヨ鍗曠被鍨嬩笉瀛樺湪:" + order.getDocType());
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ }
+ List<OrderDetl> orderDetls = orderDetlService.selectByOrderId(order.getId());
+ if (docType.getPakin() == 1) {
+ //鍏ュ簱鍗�
+ for (OrderDetl orderDetl : orderDetls) {
+ insertInDet(orderDetl);
+ }
+ insertInHed(order);
+ } else {
+ //鍑哄簱鍗�
+ for (OrderDetl orderDetl : orderDetls) {
+ insertOutDet(orderDetl);
+ }
+ insertOutHed(order);
+ }
+ // 淇敼璁㈠崟鐘舵�� 4.瀹屾垚 ===>> 6.宸蹭笂鎶�
+ if (!orderService.updateSettle(order.getId(), 6L, null)) {
+ throw new CoolException("鏈嶅姟鍣ㄥ唴閮ㄩ敊璇紝璇疯仈绯荤鐞嗗憳");
+ }
+ }
+ }
+
+
+ /**
+ * 灏嗗叆搴撳崟鐨勪俊鎭彃鍏ュ埌ERP琛�
+ *
+ * @param orderDetl
+ * @return
+ */
+ @Transactional(rollbackFor = Throwable.class)
+ public boolean insertInDet(OrderDetl orderDetl) {
+ String sqlInDetTb = "select * from lk_InDetTB where BillNo='" + orderDetl.getOrderNo() + "' and " +
+ " ItemId='" + orderDetl.getMatnr() + "' and ItemBatch='" + orderDetl.getBatch() + "' and proType='" + orderDetl.getSpecs() + "'";
+ List<InDetTB> inDets = erpSqlServer.select(sqlInDetTb, InDetTB.class);
+ String sqlInDetTbBak = "select * from lk_InDetTB_Bak where BillNo='" + orderDetl.getOrderNo() + "' and " +
+ " ItemId='" + orderDetl.getMatnr() + "' and ItemBatch='" + orderDetl.getBatch() + "' and proType='" + orderDetl.getSpecs() + "'";
+ List<InDetTBBak> inDetBaks = erpSqlServer.select(sqlInDetTbBak, InDetTBBak.class);
+ if (!inDets.isEmpty() || !inDetBaks.isEmpty()) {
+ log.error("璇ュ崟鍙锋枡鍙蜂腑闂磋〃琛ㄨ韩宸插瓨鍦�:" + orderDetl.getOrderNo() + "==>>" + orderDetl.getOrderNo());
+ return true;
+ }
+ Mat mat = matService.selectByMatnr(orderDetl.getMatnr());
+ Map<String, Object> content = getMap(orderDetl);
+ int insert = erpSqlServer.insert(InDetTB.class, content);
+
+ if (insert == 1) {
+ log.info("鍏ュ簱鍗曡〃韬洖浼犳垚鍔�:{}", content);
+ return true;
+ } else {
+ log.error("鍏ュ簱鍥炰紶澶辫触,瀹炰綋绫绘墦鍗�:{}", content);
+ return false;
+ }
+
+ }
+
+ /**
+ * 灏嗗叆搴撳崟鐨勮鎯呬俊鎭彃鍏ュ埌ERP琛�
+ *
+ * @param order
+ * @return
+ */
+ @Transactional(rollbackFor = Throwable.class)
+ public boolean insertInHed(Order order) {
+ String sqlInHedTb = "select * from lk_InHedTB where LKName='涓壃浜屾湡' and BillNo='" + order.getOrderNo() + "'";
+ List<InHedTB> outHeds = erpSqlServer.select(sqlInHedTb, InHedTB.class);
+ String sqlInHedTbBak = "select * from lk_InHedTB_Bak where LKName='涓壃浜屾湡' and BillNo='" + order.getOrderNo() + "'";
+ List<InHedTBBak> inHedBaks = erpSqlServer.select(sqlInHedTbBak, InHedTBBak.class);
+ if (!outHeds.isEmpty() || !inHedBaks.isEmpty()) {
+ log.error("璇ュ崟鍙锋枡鍙蜂腑闂磋〃琛ㄥご宸插瓨鍦�:" + order.getOrderNo());
+ return true;
+ }
+ HashMap<String, Object> content = new HashMap<>();
+ content.put("BillNo", "'" + order.getOrderNo() + "'");
+ content.put("IoKindID", "'" + order.getDocType() + "'");
+ content.put("ObjectId", "'" + order.getCstmr() + "'");
+ content.put("ObjectName", "'" + order.getCstmrName() + "'");
+ content.put("Remark", "'" + order.getMemo() + "'");
+ content.put("LKName", "'涓壃浜屾湡'");
+ int insert = erpSqlServer.insert(InHedTB.class, content);
+ String sql = "UPDATE lk_InHedTB SET bPass = 1, LKName='涓壃浜屾湡' WHERE BillNo = '" + order.getOrderNo() + "'";
+ int update = erpSqlServer.update(sql);
+ if (update == 1) {
+ log.info("鍏ュ簱鍗曡〃澶村洖浼犳垚鍔�:" + content);
+ return true;
+ } else {
+ log.error("鍏ュ簱鍗曡〃澶村洖浼犲け璐�:" + content);
+ return false;
+ }
+ }
+
+ /**
+ * 灏嗗叆搴撳崟鐨勪俊鎭彃鍏ュ埌ERP琛�
+ *
+ * @param orderDetl
+ * @return
+ */
+ @Transactional(rollbackFor = Throwable.class)
+ public boolean insertOutDet(OrderDetl orderDetl) {
+ String sqlInDetTb = "select * from lk_OutDetTB where BillNo='" + orderDetl.getOrderNo() + "' and " +
+ " ItemId='" + orderDetl.getMatnr() + "' and ItemBatch='" + orderDetl.getBatch() + "' and proType='" + orderDetl.getSpecs() + "'";
+ List<OutDetTB> inDets = erpSqlServer.select(sqlInDetTb, OutDetTB.class);
+ String sqlInDetTbBak = "select * from lk_OutDetTB_Bak where BillNo='" + orderDetl.getOrderNo() + "' and " +
+ " ItemId='" + orderDetl.getMatnr() + "' and ItemBatch='" + orderDetl.getBatch() + "' and proType='" + orderDetl.getSpecs() + "'";
+ List<OutDetTBBak> inDetBaks = erpSqlServer.select(sqlInDetTbBak, OutDetTBBak.class);
+ if (!inDets.isEmpty() || !inDetBaks.isEmpty()) {
+ log.error("璇ュ崟鍙锋枡鍙蜂腑闂磋〃琛ㄨ韩宸插瓨鍦�:" + orderDetl.getOrderNo() + "==>>" + orderDetl.getOrderNo());
+ return true;
+ }
+ Mat mat = matService.selectByMatnr(orderDetl.getMatnr());
+ Map<String, Object> content = getMap(orderDetl);
+ int insert = erpSqlServer.insert(InDetTB.class, content);
+
+ if (insert == 1) {
+ log.info("鍏ュ簱鍗曡〃韬洖浼犳垚鍔�:" + content.toString());
+ return true;
+ } else {
+ log.error("鍏ュ簱鍥炰紶澶辫触,瀹炰綋绫绘墦鍗�:" + content.toString());
+ return false;
+ }
+
+ }
+
+ /**
+ * 灏嗗叆搴撳崟鐨勮鎯呬俊鎭彃鍏ュ埌ERP琛�
+ *
+ * @param order
+ * @return
+ */
+ @Transactional(rollbackFor = Throwable.class)
+ public boolean insertOutHed(Order order) {
+ String sqlInHedTb = "select * from lk_OutHedTB where LKName='涓壃浜屾湡' and BillNo='" + order.getOrderNo() + "'";
+ List<OutHedTB> outHeds = erpSqlServer.select(sqlInHedTb, OutHedTB.class);
+ String sqlInHedTbBak = "select * from lk_OutHedTB_Bak where LKName='涓壃浜屾湡' and BillNo='" + order.getOrderNo() + "'";
+ List<OutHedTBBak> inHedBaks = erpSqlServer.select(sqlInHedTbBak, OutHedTBBak.class);
+ if (!outHeds.isEmpty() || !inHedBaks.isEmpty()) {
+ log.error("璇ュ崟鍙锋枡鍙蜂腑闂磋〃琛ㄥご宸插瓨鍦�:" + order.getOrderNo());
+ return true;
+ }
+ HashMap<String, Object> content = new HashMap<>();
+ content.put("BillNo", "'" + order.getOrderNo() + "'");
+ content.put("IoKindID", "'" + order.getDocType() + "'");
+ content.put("ObjectId", "'" + order.getCstmr() + "'");
+ content.put("ObjectName", "'" + order.getCstmrName() + "'");
+ content.put("Remark", "'" + order.getMemo() + "'");
+ content.put("LKName", "'涓壃浜屾湡'");
+ int insert = erpSqlServer.insert(OutHedTB.class, content);
+ String sql = "UPDATE lk_OutHedTB SET bPass = 1, LKName='涓壃浜屾湡' WHERE BillNo = '" + order.getOrderNo() + "'";
+ int update = erpSqlServer.update(sql);
+ if (update == 1) {
+ log.info("鍏ュ簱鍗曡〃澶村洖浼犳垚鍔�:" + content);
+ return true;
+ } else {
+ log.error("鍏ュ簱鍗曡〃澶村洖浼犲け璐�:" + content);
+ return false;
+ }
+ }
+
+ private Map<String, Object> getMap(OrderDetl orderDetl) {
+ Map<String, Object> content = new HashMap<>();
+ content.put("BillNo", "'" + orderDetl.getOrderNo() + "'");
+ content.put("iNO", "'" + orderDetl.getINO() + "'");
+ content.put("detId", orderDetl.getThreeCode());
+ content.put("ItemId", "'" + orderDetl.getThreeCode() + "'");
+ content.put("ItemCode", "'" + orderDetl.getMatnr() + "'");
+ content.put("ItemBatch", "'" + orderDetl.getBatch() + "'");
+ content.put("proType", "'" + orderDetl.getProType() + "'");
+ content.put("remark", "'" + orderDetl.getMemo() + "'");
+ content.put("OrderNo", "'" + orderDetl.getOutOrderNo() + "'");
+ content.put("MainNum", orderDetl.getQty());
+ content.put("WareId", "'" + orderDetl.getWareId() + "'");
+ content.put("WareName", "'" + orderDetl.getWareName() + "'");
+ content.put("Packing", "'" + orderDetl.getPacking() + "'");
+ content.put("LuHao", "'" + orderDetl.getLuHao() + "'");
+ content.put("sPgNO", "'" + orderDetl.getSPgNO() + "'");
+ content.put("temp1", "'" + orderDetl.getTemp1() + "'");
+ content.put("temp2", "'" + orderDetl.getTemp2() + "'");
+ content.put("temp3", "'" + orderDetl.getTemp3() + "'");
+ content.put("LKName", "'涓壃浜屾湡'");
+ return content;
+ }
+}
diff --git a/src/main/java/update20240719.sql b/src/main/java/update20240719.sql
new file mode 100644
index 0000000..f67ce10
--- /dev/null
+++ b/src/main/java/update20240719.sql
@@ -0,0 +1,168 @@
+ALTER TABLE [dbo].[man_mat] ADD [temp1] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_mat] ADD [temp2] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_mat] ADD [temp3] varchar(255) NULL
+
+
+ALTER TABLE [dbo].[man_order] ALTER COLUMN [cstmr] varchar(50) NULL
+
+ALTER TABLE [dbo].[man_order_log] ALTER COLUMN [cstmr] varchar(50) NULL
+
+
+ALTER TABLE [dbo].[man_order_detl] ADD [auto_id] int NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [out_order_no] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [lu_hao] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [ware_id] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [ware_name] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [packing] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [pg_no] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [temp1] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [temp2] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [temp3] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl] ADD [pro_type] varchar(255) NULL
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'澶栭儴涓婚敭id',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'auto_id'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'璁㈠崟鍙� ',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'out_order_no'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'鐐夊彿\瀹㈡埛鍥惧彿',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'lu_hao'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'浠撳簱ID',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'ware_id'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'浠撳簱',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'ware_name'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'渚涘簲鍟哱瀹㈡埛ID',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'packing'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'宸ュ崟鍙�',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'pg_no'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'澶囩敤瀛楁',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'temp1'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'澶囩敤瀛楁',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'temp2'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'澶囩敤瀛楁',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'temp3'
+ GO
+
+ EXEC sp_addextendedproperty
+ 'MS_Description', N'灞炴��',
+ 'SCHEMA', N'dbo',
+ 'TABLE', N'man_order_detl',
+ 'COLUMN', N'pro_type'
+
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [auto_id] int NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [out_order_no] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [lu_hao] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [ware_id] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [ware_name] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [packing] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [pg_no] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [temp1] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [temp2] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [temp3] varchar(255) NULL
+ GO
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [pro_type] varchar(255) NULL
+ GO
+
+
+
+
+ALTER TABLE [dbo].[man_doc_type] ADD [doc_code] varchar(255) NULL
+
+
+
+ALTER TABLE [dbo].[man_order_detl] ADD [i_no] int NULL
+
+
+ALTER TABLE [dbo].[man_order_detl_log] ADD [i_no] int NULL
\ No newline at end of file
diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml
index b511fd5..62c0926 100644
--- a/src/main/resources/application.yml
+++ b/src/main/resources/application.yml
@@ -99,4 +99,15 @@
acctID: "647e849ab6fa0f"
username: "llw"
password: "666666"
- lcid: 2052
\ No newline at end of file
+ lcid: 2052
+
+ #ERP鎺ュ彛
+ enabled: true
+ # enabled: false
+ #鏌ョ湅ERP涓棿琛ㄩ棿闅�
+ refreshtime: 0/5 * * * * ?
+ db:
+ driver_class_name: com.microsoft.sqlserver.jdbc.SQLServerDriver
+ url: jdbc:sqlserver://127.0.0.1:1433;databasename=XDLinkLK2
+ username: sa
+ password: sa@123
diff --git a/src/main/resources/license.lic b/src/main/resources/license.lic
index c42fa89..91c89c5 100644
--- a/src/main/resources/license.lic
+++ b/src/main/resources/license.lic
Binary files differ
diff --git a/src/main/resources/mapper/LocDetlMapper.xml b/src/main/resources/mapper/LocDetlMapper.xml
index 4b0009d..67a1dcf 100644
--- a/src/main/resources/mapper/LocDetlMapper.xml
+++ b/src/main/resources/mapper/LocDetlMapper.xml
@@ -402,4 +402,47 @@
order by row1
</select>
+
+
+
+
+ <resultMap id="stockStatisDTO" type="com.zy.asrs.entity.StockStatisDTO">
+ <id column="matnr" property="matnr" />
+ <id column="maktx" property="maktx" />
+ <id column="specs" property="specs" />
+ <id column="asrsQty" property="lkQty" />
+ <id column="erpQty" property="erpQty" />
+
+ </resultMap>
+
+ <select id="asrsAndErpList" resultMap="stockStatisDTO">
+ SELECT * FROM(
+ SELECT ROW_NUMBER ( ) OVER ( ORDER BY d.matnr ) AS row, * FROM (
+ SELECT * FROM asr_show_diff WHERE 1 = 1
+ <if test="different != null and different ">
+ and asrsQty = erpQty
+ </if>
+ <if test="matnr != null">
+ AND matnr like #{matnr}
+ </if>
+ <if test="maktx != null">
+ AND maktx like #{maktx}
+ </if>
+ <if test="specs != null">
+ AND specs like #{specs}
+ </if>
+ ) d ) e WHERE 1=1 and e.row between ((#{pageNumber}-1)*#{pageSize}+1) and (#{pageNumber}*#{pageSize})
+ </select>
+ <select id="asrsAndErpCount" resultType="java.lang.Long">
+ SELECT count(*) FROM asr_show_diff WHERE 1 = 1 and asrsQty != erpQty
+ <if test="matnr != null">
+ AND matnr like #{matnr}
+ </if>
+ <if test="maktx != null">
+ AND maktx like #{maktx}
+ </if>
+ <if test="specs != null">
+ AND specs like #{specs}
+ </if>
+ </select>
</mapper>
diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml
index 74ebaf0..ce8f4fa 100644
--- a/src/main/resources/mapper/OrderDetlMapper.xml
+++ b/src/main/resources/mapper/OrderDetlMapper.xml
@@ -200,4 +200,10 @@
</choose>
</update>
+
+ <select id="listByOrderNo" resultMap="BaseResultMap">
+ select * from man_order_detl
+ where 1=1
+ and order_no = #{orderNo}
+ </select>
</mapper>
diff --git a/src/main/webapp/views/locDetlStatis/locDetlStatis.html b/src/main/webapp/views/locDetlStatis/locDetlStatis.html
index a312e9c..c2b9f5a 100644
--- a/src/main/webapp/views/locDetlStatis/locDetlStatis.html
+++ b/src/main/webapp/views/locDetlStatis/locDetlStatis.html
@@ -19,21 +19,40 @@
<input class="layui-input" type="text" name="matnr" placeholder="鍟嗗搧缂栧彿" autocomplete="off">
</div>
</div>
+
+ <div class="layui-inline">
+ <div class="layui-input-inline">
+ <input class="layui-input" type="text" name="matnx" placeholder="浜у搧鍚嶇О" autocomplete="off">
+ </div>
+ </div>
+ <div class="layui-inline">
+ <div class="layui-input-inline">
+ <input class="layui-input" type="text" name="specs" placeholder="浜у搧瑙勬牸" autocomplete="off">
+ </div>
+ </div>
+ <div class="layui-inline">
+ <div class="layui-input-inline">
+ <input name="different" type="checkbox" lay-skin="switch" value="true" lay-text="鏄剧ず宸紓|鏄剧ず鍏ㄩ儴" lay-filter="different" >
+ </div>
+ </div>
<!-- 寰呮坊鍔� -->
<div id="data-search-btn" class="layui-btn-container layui-form-item" style="display: inline-block">
<button id="search" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="search">鎼滅储
</button>
<button id="reset" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="reset">閲嶇疆
</button>
+
</div>
- <div class="layui-inline">
- <fieldset class="layui-elem-field">
- <legend>鎬昏鏁伴噺</legend>
- <div class="layui-field-box" id="countNum">
- 璇风◢绛�
- </div>
- </fieldset>
- </div>
+<!-- <div class="layui-inline">-->
+<!-- <fieldset class="layui-elem-field">-->
+<!-- <legend>鎬昏鏁伴噺</legend>-->
+<!-- <div class="layui-field-box" id="countNum">-->
+<!-- 璇风◢绛�-->
+<!-- </div>-->
+<!-- </fieldset>-->
+<!-- </div>-->
+
+
</div>
<!-- 琛ㄦ牸 -->
diff --git a/version/lib/framework-3.4.0.jar b/version/lib/framework-3.4.0.jar
new file mode 100644
index 0000000..871669c
--- /dev/null
+++ b/version/lib/framework-3.4.0.jar
Binary files differ
--
Gitblit v1.9.1