From 0bbd986930e4b41e0741fd07c4287208da398330 Mon Sep 17 00:00:00 2001
From: zhangherong <571457620@qq.com>
Date: 星期五, 01 八月 2025 17:03:37 +0800
Subject: [PATCH] art: 生产订单同步定时任务

---
 src/main/java/org/jeecg/modules/mes/entity/MesProductionOrder.java |  157 +++++++++++++++++++++++++++++++++-------------------
 1 files changed, 100 insertions(+), 57 deletions(-)

diff --git a/src/main/java/org/jeecg/modules/mes/entity/MesProductionOrder.java b/src/main/java/org/jeecg/modules/mes/entity/MesProductionOrder.java
index 47573aa..e6e7f4d 100644
--- a/src/main/java/org/jeecg/modules/mes/entity/MesProductionOrder.java
+++ b/src/main/java/org/jeecg/modules/mes/entity/MesProductionOrder.java
@@ -11,124 +11,167 @@
 import lombok.EqualsAndHashCode;
 import lombok.experimental.Accessors;
 import org.jeecg.common.aspect.annotation.Dict;
-import org.jeecgframework.poi.excel.annotation.Excel;
+import org.jeecg.common.constant.CommonConstant;
+import org.jeecg.common.util.DateUtils;
+import org.jeecg.modules.sap.dto.ProductionOrderDTO;
 import org.springframework.format.annotation.DateTimeFormat;
 
 import java.io.Serializable;
+import java.math.BigDecimal;
 import java.util.Date;
 
 /**
  * @Description: SAP鐢熶骇璁㈠崟
  * @Author: jeecg-boot
- * @Date:   2025-07-04
+ * @Date: 2025-07-04
  * @Version: V1.0
  */
 @Data
 @TableName("mes_production_order")
 @Accessors(chain = true)
 @EqualsAndHashCode(callSuper = false)
-@ApiModel(value="mes_production_order瀵硅薄", description="SAP鐢熶骇璁㈠崟")
+@ApiModel(value = "mes_production_order瀵硅薄", description = "SAP鐢熶骇璁㈠崟")
 public class MesProductionOrder implements Serializable {
     private static final long serialVersionUID = 1L;
 
-	/**涓婚敭*/
-	@TableId(type = IdType.ASSIGN_ID)
+    /**涓婚敭*/
+    @TableId(type = IdType.ASSIGN_ID)
     @ApiModelProperty(value = "涓婚敭")
     private String id;
-	/**鍒涘缓浜�*/
+    /**鍒涘缓浜�*/
     @ApiModelProperty(value = "鍒涘缓浜�")
     private String createBy;
-	/**鍒涘缓鏃ユ湡*/
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    /**鍒涘缓鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "鍒涘缓鏃ユ湡")
     private Date createTime;
-	/**鏇存柊浜�*/
+    /**鏇存柊浜�*/
     @ApiModelProperty(value = "鏇存柊浜�")
     private String updateBy;
-	/**鏇存柊鏃ユ湡*/
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    /**鏇存柊鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "鏇存柊鏃ユ湡")
     private Date updateTime;
-	/**鍒犻櫎鏍囪*/
-	@Excel(name = "鍒犻櫎鏍囪", width = 15)
+    /**鍒犻櫎鏍囪*/
     @ApiModelProperty(value = "鍒犻櫎鏍囪")
     @TableLogic
     private Integer delFlag;
-	/**鐢熶骇璁㈠崟鍙�*/
-	@Excel(name = "鐢熶骇璁㈠崟鍙�", width = 15)
+    /**鐢熶骇璁㈠崟鍙�*/
     @ApiModelProperty(value = "鐢熶骇璁㈠崟鍙�")
     private String orderCode;
-	/**璁㈠崟绫诲瀷*/
-	@Excel(name = "璁㈠崟绫诲瀷", width = 15)
+    /**璁㈠崟绫诲瀷*/
     @ApiModelProperty(value = "璁㈠崟绫诲瀷")
     private String orderCategory;
-	/**鐗╂枡缂栧彿*/
-	@Excel(name = "鐗╂枡缂栧彿", width = 15)
+    /**鐗╂枡缂栧彿*/
     @ApiModelProperty(value = "鐗╂枡缂栧彿")
     private String materialNumber;
-	/**鐗╂枡鍚嶇О*/
-	@Excel(name = "鐗╂枡鍚嶇О", width = 15)
+    /**鐗╂枡鍚嶇О*/
     @ApiModelProperty(value = "鐗╂枡鍚嶇О")
     private String materialName;
-	/**璁″垝寮�濮嬫棩鏈�*/
-	@Excel(name = "璁″垝寮�濮嬫棩鏈�", width = 20, format = "yyyy-MM-dd HH:mm:ss")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    /**璁″垝寮�濮嬫棩鏈�*/
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "璁″垝寮�濮嬫棩鏈�")
     private Date planStart;
-	/**璁″垝缁撴潫鏃ユ湡*/
-	@Excel(name = "璁″垝缁撴潫鏃ユ湡", width = 20, format = "yyyy-MM-dd HH:mm:ss")
-	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
-    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
+    /**璁″垝缁撴潫鏃ユ湡*/
+    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
+    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @ApiModelProperty(value = "璁″垝缁撴潫鏃ユ湡")
     private Date planEnd;
-	/**璁㈠崟鏁伴噺*/
-	@Excel(name = "璁㈠崟鏁伴噺", width = 15)
+    /**璁㈠崟鏁伴噺*/
     @ApiModelProperty(value = "璁㈠崟鏁伴噺")
-    private Double orderQuantity;
-	/**浜у搧鍗曚綅*/
-	@Excel(name = "浜у搧鍗曚綅", width = 15, dicCode = "production_unit")
-	@Dict(dicCode = "production_unit")
+    private BigDecimal orderQuantity;
+    /**浜у搧鍗曚綅*/
+    @Dict(dicCode = "production_unit")
     @ApiModelProperty(value = "浜у搧鍗曚綅")
     private String productionUnit;
-	/**璁㈠崟鐘舵��*/
-	@Excel(name = "璁㈠崟鐘舵��", width = 15, dicCode = "order_status")
-	@Dict(dicCode = "order_status")
+    /**璁㈠崟鐘舵��*/
+    @Dict(dicCode = "order_status")
     @ApiModelProperty(value = "璁㈠崟鐘舵��")
     private String orderStatus;
-	/**浼樺厛绾�*/
-	@Excel(name = "浼樺厛绾�", width = 15, dicCode = "priority")
-	@Dict(dicCode = "priority")
+    /**浼樺厛绾�*/
+    @Dict(dicCode = "priority")
     @ApiModelProperty(value = "浼樺厛绾�")
     private String priority;
-	/**璁″垝宸ヨ壓璺嚎*/
-	@Excel(name = "璁″垝宸ヨ壓璺嚎", width = 15)
+    /**璁″垝宸ヨ壓璺嚎*/
     @ApiModelProperty(value = "璁″垝宸ヨ壓璺嚎")
     private String processRoute;
-	/**璁″垝鐗╂枡娓呭崟*/
-	@Excel(name = "璁″垝鐗╂枡娓呭崟", width = 15)
+    /**璁″垝鐗╂枡娓呭崟*/
     @ApiModelProperty(value = "璁″垝鐗╂枡娓呭崟")
     private String materialListCode;
-	/**宸ュ巶缂栫爜*/
-	@Excel(name = "宸ュ巶缂栫爜", width = 15)
+    /**宸ュ巶缂栫爜*/
     @ApiModelProperty(value = "宸ュ巶缂栫爜")
     private String factoryCode;
-	/**宸ュ巶鍚嶇О*/
-	@Excel(name = "宸ュ巶鍚嶇О", width = 15)
+    /**宸ュ巶鍚嶇О*/
     @ApiModelProperty(value = "宸ュ巶鍚嶇О")
     private String factoryName;
-	/**瀹㈡埛鍨嬪彿*/
-	@Excel(name = "瀹㈡埛鍨嬪彿", width = 15)
+    /**璋冨害鍛樼紪鍙�*/
+    @ApiModelProperty(value = "璋冨害鍛樼紪鍙�")
+    private String dispatcherCode;
+    /**璋冨害鍛樺悕绉�*/
+    @ApiModelProperty(value = "璋冨害鍛樺悕绉�")
+    private String dispatcherName;
+    /**璁㈠崟鍒涘缓鏃ユ湡 yyyy-MM-dd*/
+    @ApiModelProperty(value = "璁㈠崟鍒涘缓鏃ユ湡")
+    private String orderCreateDate;
+    /**璁㈠崟鏇存柊鏃ユ湡 yyyy-MM-dd*/
+    @ApiModelProperty(value = "璁㈠崟鏇存柊鏃ユ湡")
+    private String orderUpdateDate;
+    /**璁㈠崟鏇存柊鏃堕棿 HH:mm:ss*/
+    @ApiModelProperty(value = "璁㈠崟鏇存柊鏃堕棿")
+    private String orderUpdateTime;
+    /**璁㈠崟淇敼浜�*/
+    @ApiModelProperty(value = "璁㈠崟淇敼浜�")
+    private String orderUpdateUser;
+    /**瀹㈡埛鍨嬪彿*/
     @ApiModelProperty(value = "瀹㈡埛鍨嬪彿")
     private String customerOrderModel;
-	/**瀹㈡埛鍚嶇О*/
-	@Excel(name = "瀹㈡埛鍚嶇О", width = 15)
+    /**瀹㈡埛鍚嶇О*/
     @ApiModelProperty(value = "瀹㈡埛鍚嶇О")
     private String customer;
-	/**澶囨敞*/
-	@Excel(name = "澶囨敞", width = 15)
+    /**澶囨敞*/
     @ApiModelProperty(value = "澶囨敞")
     private String remark;
+
+    public MesProductionOrder() {
+    }
+
+    public MesProductionOrder(ProductionOrderDTO dto) {
+        this.orderCode = dto.getAUFNR();
+        this.orderCategory = dto.getDAUAT();
+        this.materialNumber = dto.getMATNR();
+        this.materialName = dto.getMAKTX();
+        this.planStart = DateUtils.str2Date(dto.getGSTRP(), DateUtils.date_sdf.get());
+        this.planEnd = DateUtils.str2Date(dto.getGLTRP(), DateUtils.date_sdf.get());
+        this.orderQuantity = new BigDecimal(dto.getGAMNG());
+        this.productionUnit = dto.getGMEIN();
+        this.orderStatus = dto.getTXT04();
+        this.priority = dto.getAPRIO();
+        this.processRoute = dto.getAUFPL();
+        this.materialListCode = dto.getSTLNR();
+        this.factoryCode = dto.getDWERK();
+        this.factoryName = dto.getNAME1();
+        this.dispatcherCode = dto.getFEVOR();
+        this.dispatcherName = dto.getTXT();
+        this.orderCreateDate = dto.getUDATE();
+        this.orderUpdateDate = dto.getLAEDA();
+        this.orderUpdateTime = dto.getTIMES();
+        this.orderUpdateUser = dto.getUSNAM();
+        this.delFlag = CommonConstant.DEL_FLAG_0;
+    }
+
+    public void updateEntity(ProductionOrderDTO dto) {
+        this.orderCategory = dto.getDAUAT();
+        this.planStart = DateUtils.str2Date(dto.getGSTRP(), DateUtils.date_sdf.get());
+        this.planEnd = DateUtils.str2Date(dto.getGLTRP(), DateUtils.date_sdf.get());
+        this.orderQuantity = new BigDecimal(dto.getGAMNG());
+        this.orderStatus = dto.getTXT04();
+        this.priority = dto.getAPRIO();
+        this.orderCreateDate = dto.getUDATE();
+        this.orderUpdateDate = dto.getLAEDA();
+        this.orderUpdateTime = dto.getTIMES();
+        this.orderUpdateUser = dto.getUSNAM();
+    }
 }

--
Gitblit v1.9.3