From 088a46dc697ef5b719f1ab62c9988f96a21e5e0c Mon Sep 17 00:00:00 2001 From: zhanghl <253316343@qq.com> Date: 星期一, 12 五月 2025 11:17:22 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev --- aps-modules/aps-job/src/main/resources/mapper/job/ApsBomHeaderJobMapper.xml | 4 aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialManagementJobMapper.xml | 228 ++++++++++++ aps-api/aps-api-system/src/main/java/com/aps/system/api/factory/RemoteCoreFallbackFactory.java | 15 aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomLineJob.java | 8 aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialManagementJob.java | 291 ++++++++++++++++ aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsStandardProcessRouteHeaderController.java | 8 aps-modules/aps-job/src/main/java/com/aps/job/service/IApsMaterialManagementJobService.java | 82 ++++ aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialStorageManagementJob.java | 8 aps-modules/aps-job/src/main/resources/mapper/job/ApsBomLineJobMapper.xml | 4 aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomHeaderJob.java | 8 aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsMaterialManagementJobServiceImpl.java | 235 +++++++++++++ aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteHeaderJobMapper.xml | 4 aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteLineJobMapper.xml | 4 aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsMaterialManagement.java | 27 aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteHeaderJob.java | 8 aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteLineJob.java | 8 aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialStorageManagementJobMapper.xml | 4 aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java | 17 aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsMaterialManagementJobMapper.java | 87 ++++ aps-modules/aps-job/src/main/java/com/aps/job/controller/SysJobController.java | 8 aps-api/aps-api-system/src/main/java/com/aps/system/api/RemoteCoreService.java | 8 21 files changed, 1,024 insertions(+), 42 deletions(-) diff --git a/aps-api/aps-api-system/src/main/java/com/aps/system/api/RemoteCoreService.java b/aps-api/aps-api-system/src/main/java/com/aps/system/api/RemoteCoreService.java index 541813a..a907d8b 100644 --- a/aps-api/aps-api-system/src/main/java/com/aps/system/api/RemoteCoreService.java +++ b/aps-api/aps-api-system/src/main/java/com/aps/system/api/RemoteCoreService.java @@ -25,4 +25,12 @@ @PostMapping("/ApsBomHeader/setBomDataToRedis") R<Boolean> setBomDataToRedis(@RequestHeader(SecurityConstants.FROM_SOURCE) String source); + /** + * 鍒锋柊宸ヨ壓璺嚎鏁版嵁鍒癛edis + * @param source + * @return + */ + @PostMapping("/ApsStandardProcessRouteHeader/setProcessRouteDataToRedis") + R<Boolean> setProcessRouteDataToRedis(@RequestHeader(SecurityConstants.FROM_SOURCE) String source); + } diff --git a/aps-api/aps-api-system/src/main/java/com/aps/system/api/factory/RemoteCoreFallbackFactory.java b/aps-api/aps-api-system/src/main/java/com/aps/system/api/factory/RemoteCoreFallbackFactory.java index b2d846d..9e50240 100644 --- a/aps-api/aps-api-system/src/main/java/com/aps/system/api/factory/RemoteCoreFallbackFactory.java +++ b/aps-api/aps-api-system/src/main/java/com/aps/system/api/factory/RemoteCoreFallbackFactory.java @@ -21,6 +21,19 @@ public RemoteCoreService create(Throwable throwable) { log.error("浠诲姟鏈嶅姟璋冪敤澶辫触:{}", throwable.getMessage()); - return source -> R.fail("BOM鏁版嵁瀛樺偍鍒癛edis涓け璐�:" + throwable.getMessage()); + return new RemoteCoreService() + { + @Override + public R<Boolean> setBomDataToRedis(String source) + { + return R.fail("BOM鏁版嵁瀛樺偍鍒癛edis涓け璐�:" + throwable.getMessage()); + } + + @Override + public R<Boolean> setProcessRouteDataToRedis(String source) + { + return R.fail("宸ヨ壓璺嚎鏁版嵁瀛樺偍鍒癛edis涓け璐�:" + throwable.getMessage()); + } + }; } } diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsStandardProcessRouteHeaderController.java b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsStandardProcessRouteHeaderController.java index 2e6fdcb..0bde872 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsStandardProcessRouteHeaderController.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/controller/mainPlan/ApsStandardProcessRouteHeaderController.java @@ -116,14 +116,14 @@ R<Boolean> res = remoteJobService.refreshProcessRouteData(SecurityConstants.INNER); if (R.isSuccess(res)) { - return success(); + apsStandardProcessRouteHeaderService.setProcessRouteDataToRedis(""); } return error(); } - @PostMapping("/test") - public void test() + @PostMapping("/setProcessRouteDataToRedis") + public boolean setProcessRouteDataToRedis() { - apsStandardProcessRouteHeaderService.setProcessRouteDataToRedis("FORTUNA"); + return apsStandardProcessRouteHeaderService.setProcessRouteDataToRedis("FORTUNA"); } } diff --git a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsMaterialManagement.java b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsMaterialManagement.java index e97a48c..d9498c3 100644 --- a/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsMaterialManagement.java +++ b/aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsMaterialManagement.java @@ -1,12 +1,13 @@ package com.aps.core.domain; -import java.math.BigDecimal; -import java.util.Date; +import com.aps.common.core.annotation.Excel; +import com.aps.common.core.web.domain.BaseEntity; import com.fasterxml.jackson.annotation.JsonFormat; import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; -import com.aps.common.core.annotation.Excel; -import com.aps.common.core.web.domain.BaseEntity; + +import java.math.BigDecimal; +import java.util.Date; /** * 鐗╂枡绠$悊瀵硅薄 aps_material_management @@ -19,7 +20,7 @@ private static final long serialVersionUID = 1L; /** id */ - private String id; + private Long id; /** 鏂欏彿 */ @Excel(name = "鏂欏彿") @@ -70,26 +71,26 @@ private String applicableWorkshop; /** 鐢熸晥鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date effectiveDate; /** 澶辨晥鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date expiringDate; /** 闆嗘垚鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "闆嗘垚鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "闆嗘垚鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date integrationDate; - public void setId(String id) + public void setId(Long id) { this.id = id; } - public String getId() + public Long getId() { return id; } diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/controller/SysJobController.java b/aps-modules/aps-job/src/main/java/com/aps/job/controller/SysJobController.java index a5210b1..e443ee2 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/controller/SysJobController.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/controller/SysJobController.java @@ -67,6 +67,9 @@ @Autowired public RedisTemplate redisTemplate; + @Autowired + private IApsMaterialManagementJobService apsMaterialManagementJobService; + /** * 鏌ヨ瀹氭椂浠诲姟鍒楄〃 */ @@ -227,7 +230,10 @@ public void test(@RequestBody SysJob job) throws Exception { System.out.println("start"); - apsStandardProcessRouteHeaderJobService.syncProcessRouteData(159, 1000, "", ""); + //鍚屾鐗╂枡鏁版嵁 + apsMaterialManagementJobService.syncApsMaterialData(1, 1000, "FORTUNA", ""); + //鍚屾宸ヨ壓璺嚎鏁版嵁 +// apsStandardProcessRouteHeaderJobService.syncProcessRouteData(1, 1000, "", ""); //鑾峰彇Redis缂撳瓨涓殑BOM鏁版嵁 // JSONArray jsonArray = (JSONArray)redisTemplate.opsForValue().get("BOM:BOM_FORTUNA_A6501-001080"); //灏咮OM鏁版嵁瀛樿繘Redis涓� diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomHeaderJob.java b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomHeaderJob.java index 99d151e..dadd693 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomHeaderJob.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomHeaderJob.java @@ -40,14 +40,14 @@ /** 鐢熸晥鏃ユ湡 */ @JsonProperty("HEffectiveDate") - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date startDate; /** 澶辨晥鏃ユ湡 */ @JsonProperty("HDisableDate") - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date endDate; /** 宸ュ巶缂栫爜 */ diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomLineJob.java b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomLineJob.java index fa9f869..4958384 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomLineJob.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsBomLineJob.java @@ -45,14 +45,14 @@ /** 鐢熸晥鏃ユ湡 */ @JsonProperty("LEffectiveDate") - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date startDate; /** 澶辨晥鏃ユ湡 */ @JsonProperty("LDisableDate") - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date endDate; /** 宸ュ巶缂栫爜 */ diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialManagementJob.java b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialManagementJob.java new file mode 100644 index 0000000..c1f4bc7 --- /dev/null +++ b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialManagementJob.java @@ -0,0 +1,291 @@ +package com.aps.job.domain; + +import com.aps.common.core.annotation.Excel; +import com.aps.common.core.web.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * 鐗╂枡绠$悊瀵硅薄 aps_material_management_job + * + * @author hjy + * @date 2025-05-10 + */ +@Schema(description = "鐗╂枡绠$悊瀹炰綋绫�") +public class ApsMaterialManagementJob extends BaseEntity +{ + private static final long serialVersionUID = 1L; + + /** id */ + @Schema(description = "id") + private Long id; + + /** 鏂欏彿 */ + @Excel(name = "鏂欏彿") + @Schema(description = "鏂欏彿") + private String itemNumber; + + /** 鐗╂枡鎻忚堪 */ + @Excel(name = "鐗╂枡鎻忚堪") + @Schema(description = "鐗╂枡鎻忚堪") + private String materialDescription; + + /** 鐗╂枡鐘舵�� */ + @Excel(name = "鐗╂枡鐘舵��") + @Schema(description = "鐗╂枡鐘舵��") + private String materialStatus; + + /** 鐗╂枡绫诲瀷 */ + @Excel(name = "鐗╂枡绫诲瀷") + @Schema(description = "鐗╂枡绫诲瀷") + private String materialType; + + /** 涓撲笟褰掑睘 */ + @Excel(name = "涓撲笟褰掑睘") + @Schema(description = "涓撲笟褰掑睘") + private String professionalAffiliation; + + /** 鍥惧彿 */ + @Excel(name = "鍥惧彿") + @Schema(description = "鍥惧彿") + private String drawingNo; + + /** 鐗堟湰 */ + @Excel(name = "鐗堟湰") + @Schema(description = "鐗堟湰") + private String versionNumber; + + /** 鏈�鏃╁彲鎻愬墠鐢熶骇澶╂暟 */ + @Excel(name = "鏈�鏃╁彲鎻愬墠鐢熶骇澶╂暟") + @Schema(description = "鏈�鏃╁彲鎻愬墠鐢熶骇澶╂暟") + private BigDecimal advanceProductionDays; + + /** 鎷嗗垎鎵归噺 */ + @Excel(name = "鎷嗗垎鎵归噺") + @Schema(description = "鎷嗗垎鎵归噺") + private Integer splitBatch; + + /** 鏄惁鑷埗 */ + @Excel(name = "鏄惁鑷埗") + @Schema(description = "鏄惁鑷埗") + private String selfMade; + + /** 閫傜敤宸ュ巶 */ + @Excel(name = "閫傜敤宸ュ巶") + @Schema(description = "閫傜敤宸ュ巶") + private String applicableFactories; + + /** 閫傜敤杞﹂棿 */ + @Excel(name = "閫傜敤杞﹂棿") + @Schema(description = "閫傜敤杞﹂棿") + private String applicableWorkshop; + + /** 鐢熸晥鏃ユ湡 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @Schema(description = "鐢熸晥鏃ユ湡") + private Date effectiveDate; + + /** 澶辨晥鏃ユ湡 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @Schema(description = "澶辨晥鏃ユ湡") + private Date expiringDate; + + /** 闆嗘垚鏃ユ湡 */ + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "闆嗘垚鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + @Schema(description = "闆嗘垚鏃ユ湡") + private Date integrationDate; + + public void setId(Long id) + { + this.id = id; + } + + public Long getId() + { + return id; + } + + public void setItemNumber(String itemNumber) + { + this.itemNumber = itemNumber; + } + + public String getItemNumber() + { + return itemNumber; + } + + public void setMaterialDescription(String materialDescription) + { + this.materialDescription = materialDescription; + } + + public String getMaterialDescription() + { + return materialDescription; + } + + public void setMaterialStatus(String materialStatus) + { + this.materialStatus = materialStatus; + } + + public String getMaterialStatus() + { + return materialStatus; + } + + public void setMaterialType(String materialType) + { + this.materialType = materialType; + } + + public String getMaterialType() + { + return materialType; + } + + public void setProfessionalAffiliation(String professionalAffiliation) + { + this.professionalAffiliation = professionalAffiliation; + } + + public String getProfessionalAffiliation() + { + return professionalAffiliation; + } + + public void setDrawingNo(String drawingNo) + { + this.drawingNo = drawingNo; + } + + public String getDrawingNo() + { + return drawingNo; + } + + public void setVersionNumber(String versionNumber) + { + this.versionNumber = versionNumber; + } + + public String getVersionNumber() + { + return versionNumber; + } + + public void setAdvanceProductionDays(BigDecimal advanceProductionDays) + { + this.advanceProductionDays = advanceProductionDays; + } + + public BigDecimal getAdvanceProductionDays() + { + return advanceProductionDays; + } + + public void setSplitBatch(Integer splitBatch) + { + this.splitBatch = splitBatch; + } + + public Integer getSplitBatch() + { + return splitBatch; + } + + public void setSelfMade(String selfMade) + { + this.selfMade = selfMade; + } + + public String getSelfMade() + { + return selfMade; + } + + public void setApplicableFactories(String applicableFactories) + { + this.applicableFactories = applicableFactories; + } + + public String getApplicableFactories() + { + return applicableFactories; + } + + public void setApplicableWorkshop(String applicableWorkshop) + { + this.applicableWorkshop = applicableWorkshop; + } + + public String getApplicableWorkshop() + { + return applicableWorkshop; + } + + public void setEffectiveDate(Date effectiveDate) + { + this.effectiveDate = effectiveDate; + } + + public Date getEffectiveDate() + { + return effectiveDate; + } + + public void setExpiringDate(Date expiringDate) + { + this.expiringDate = expiringDate; + } + + public Date getExpiringDate() + { + return expiringDate; + } + + public void setIntegrationDate(Date integrationDate) + { + this.integrationDate = integrationDate; + } + + public Date getIntegrationDate() + { + return integrationDate; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("id", getId()) + .append("itemNumber", getItemNumber()) + .append("materialDescription", getMaterialDescription()) + .append("materialStatus", getMaterialStatus()) + .append("materialType", getMaterialType()) + .append("professionalAffiliation", getProfessionalAffiliation()) + .append("drawingNo", getDrawingNo()) + .append("versionNumber", getVersionNumber()) + .append("advanceProductionDays", getAdvanceProductionDays()) + .append("splitBatch", getSplitBatch()) + .append("selfMade", getSelfMade()) + .append("applicableFactories", getApplicableFactories()) + .append("applicableWorkshop", getApplicableWorkshop()) + .append("effectiveDate", getEffectiveDate()) + .append("expiringDate", getExpiringDate()) + .append("integrationDate", getIntegrationDate()) + .append("createBy", getCreateBy()) + .append("createTime", getCreateTime()) + .append("updateBy", getUpdateBy()) + .append("updateTime", getUpdateTime()) + .toString(); + } +} diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialStorageManagementJob.java b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialStorageManagementJob.java index 5d1a72c..0e76960 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialStorageManagementJob.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsMaterialStorageManagementJob.java @@ -41,14 +41,14 @@ private String applicableFactories; /** 闆嗘垚鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "闆嗘垚鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "闆嗘垚鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Schema(description = "闆嗘垚鏃ユ湡") private Date integrationDate; /** 鍒锋柊鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "鍒锋柊鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "鍒锋柊鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Schema(description = "鍒锋柊鏃ユ湡") private Date refreshDate; diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteHeaderJob.java b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteHeaderJob.java index 8544716..7706315 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteHeaderJob.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteHeaderJob.java @@ -36,14 +36,14 @@ private String version; /** 鐢熸晥鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Schema(description = "鐢熸晥鏃ユ湡") private Date startDate; /** 澶辨晥鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Schema(description = "澶辨晥鏃ユ湡") private Date endDate; diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteLineJob.java b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteLineJob.java index 59b3338..5067b58 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteLineJob.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/domain/ApsStandardProcessRouteLineJob.java @@ -41,14 +41,14 @@ private String routeName; /** 鐢熸晥鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "鐢熸晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Schema(description = "鐢熸晥鏃ユ湡") private Date startDate; /** 澶辨晥鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "澶辨晥鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") @Schema(description = "澶辨晥鏃ユ湡") private Date endDate; diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsMaterialManagementJobMapper.java b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsMaterialManagementJobMapper.java new file mode 100644 index 0000000..2833be7 --- /dev/null +++ b/aps-modules/aps-job/src/main/java/com/aps/job/mapper/ApsMaterialManagementJobMapper.java @@ -0,0 +1,87 @@ +package com.aps.job.mapper; + +import com.aps.job.domain.ApsMaterialManagementJob; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 鐗╂枡绠$悊Mapper鎺ュ彛 + * + * @author hjy + * @date 2025-05-10 + */ +public interface ApsMaterialManagementJobMapper +{ + /** + * 鏌ヨ鐗╂枡绠$悊 + * + * @param id 鐗╂枡绠$悊涓婚敭 + * @return 鐗╂枡绠$悊 + */ + public ApsMaterialManagementJob selectApsMaterialManagementJobById(String id); + + /** + * 鏌ヨ鐗╂枡绠$悊鍒楄〃 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 鐗╂枡绠$悊闆嗗悎 + */ + public List<ApsMaterialManagementJob> selectApsMaterialManagementJobList(ApsMaterialManagementJob apsMaterialManagementJob); + + /** + * 鏂板鐗╂枡绠$悊 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 缁撴灉 + */ + public int insertApsMaterialManagementJob(ApsMaterialManagementJob apsMaterialManagementJob); + + /** + * 淇敼鐗╂枡绠$悊 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 缁撴灉 + */ + public int updateApsMaterialManagementJob(ApsMaterialManagementJob apsMaterialManagementJob); + + /** + * 鍒犻櫎鐗╂枡绠$悊 + * + * @param id 鐗╂枡绠$悊涓婚敭 + * @return 缁撴灉 + */ + public int deleteApsMaterialManagementJobById(String id); + + /** + * 鎵归噺鍒犻櫎鐗╂枡绠$悊 + * + * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎 + * @return 缁撴灉 + */ + public int deleteApsMaterialManagementJobByIds(String[] ids); + + /** + * 鎵归噺鎻掑叆鐗╂枡鏁版嵁 + * @param list + * @return + */ + public int insertApsMaterialBatch(@Param("list") List<ApsMaterialManagementJob> list); + + /** + * 鎵归噺鎻掑叆鐗╂枡鏁版嵁鍒颁笟鍔¤〃 + * @return + */ + public void insertIntoApsMaterialManagement(); + + /** + * 鍒犻櫎鐗╂枡鏁版嵁 + * @return + */ + public void deleteApsMaterial(); + + /** + * 鍒犻櫎涓棿琛ㄧ墿鏂欐暟鎹� + */ + public void deleteApsMaterialJob(); +} diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsMaterialManagementJobService.java b/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsMaterialManagementJobService.java new file mode 100644 index 0000000..d8d8e8c --- /dev/null +++ b/aps-modules/aps-job/src/main/java/com/aps/job/service/IApsMaterialManagementJobService.java @@ -0,0 +1,82 @@ +package com.aps.job.service; + +import com.aps.job.domain.ApsMaterialManagementJob; + +import java.util.List; + +/** + * 鐗╂枡绠$悊Service鎺ュ彛 + * + * @author hjy + * @date 2025-05-10 + */ +public interface IApsMaterialManagementJobService +{ + /** + * 鏌ヨ鐗╂枡绠$悊 + * + * @param id 鐗╂枡绠$悊涓婚敭 + * @return 鐗╂枡绠$悊 + */ + public ApsMaterialManagementJob selectApsMaterialManagementJobById(String id); + + /** + * 鏌ヨ鐗╂枡绠$悊鍒楄〃 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 鐗╂枡绠$悊闆嗗悎 + */ + public List<ApsMaterialManagementJob> selectApsMaterialManagementJobList(ApsMaterialManagementJob apsMaterialManagementJob); + + /** + * 鏂板鐗╂枡绠$悊 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 缁撴灉 + */ + public int insertApsMaterialManagementJob(ApsMaterialManagementJob apsMaterialManagementJob); + + /** + * 淇敼鐗╂枡绠$悊 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 缁撴灉 + */ + public int updateApsMaterialManagementJob(ApsMaterialManagementJob apsMaterialManagementJob); + + /** + * 鎵归噺鍒犻櫎鐗╂枡绠$悊 + * + * @param ids 闇�瑕佸垹闄ょ殑鐗╂枡绠$悊涓婚敭闆嗗悎 + * @return 缁撴灉 + */ + public int deleteApsMaterialManagementJobByIds(String[] ids); + + /** + * 鍒犻櫎鐗╂枡绠$悊淇℃伅 + * + * @param id 鐗╂枡绠$悊涓婚敭 + * @return 缁撴灉 + */ + public int deleteApsMaterialManagementJobById(String id); + + /** + * 鍚屾鐗╂枡鏁版嵁 + * @param pageIndex + * @param pageSize + * @param orgCode + * @param itemCodeList + * @return + */ + public boolean syncApsMaterialData(int pageIndex, int pageSize, String orgCode, String itemCodeList); + + /** + * 鍚屾鍏ㄩ噺鐗╂枡鏁版嵁瀹氭椂浠诲姟 + * @param pageIndex + * @param pageSize + * @param orgCode + * @param itemCodeList + * @return + */ + public boolean syncApsMaterialDataJob(int pageIndex, int pageSize, String orgCode, String itemCodeList); +} diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsMaterialManagementJobServiceImpl.java b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsMaterialManagementJobServiceImpl.java new file mode 100644 index 0000000..cae8691 --- /dev/null +++ b/aps-modules/aps-job/src/main/java/com/aps/job/service/impl/ApsMaterialManagementJobServiceImpl.java @@ -0,0 +1,235 @@ +package com.aps.job.service.impl; + +import cn.hutool.core.util.IdUtil; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.aps.common.core.utils.DateUtils; +import com.aps.common.core.utils.StringUtils; +import com.aps.common.core.utils.uuid.IdUtils; +import com.aps.job.domain.ApsMaterialManagementJob; +import com.aps.job.domain.ApsWorkOrderJobLog; +import com.aps.job.mapper.ApsMaterialManagementJobMapper; +import com.aps.job.mapper.ApsWorkOrderJobLogMapper; +import com.aps.job.service.IApsMaterialManagementJobService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.http.HttpEntity; +import org.springframework.http.HttpHeaders; +import org.springframework.http.MediaType; +import org.springframework.http.ResponseEntity; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.client.RestTemplate; + +import java.util.ArrayList; +import java.util.List; + +/** + * 鐗╂枡绠$悊Service涓氬姟灞傚鐞� + * + * @author hjy + * @date 2025-05-10 + */ +@Service +public class ApsMaterialManagementJobServiceImpl implements IApsMaterialManagementJobService +{ + @Autowired + private ApsMaterialManagementJobMapper apsMaterialManagementJobMapper; + + @Value("${u9.materialUrl}") + private String getMaterialUrl; + + @Autowired + private ApsWorkOrderJobLogMapper jobLogMapper; + + @Autowired + private RestTemplate restTemplate; + + /** + * 鏌ヨ鐗╂枡绠$悊 + * + * @param id 鐗╂枡绠$悊涓婚敭 + * @return 鐗╂枡绠$悊 + */ + @Override + public ApsMaterialManagementJob selectApsMaterialManagementJobById(String id) + { + return apsMaterialManagementJobMapper.selectApsMaterialManagementJobById(id); + } + + /** + * 鏌ヨ鐗╂枡绠$悊鍒楄〃 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 鐗╂枡绠$悊 + */ + @Override + public List<ApsMaterialManagementJob> selectApsMaterialManagementJobList(ApsMaterialManagementJob apsMaterialManagementJob) + { + return apsMaterialManagementJobMapper.selectApsMaterialManagementJobList(apsMaterialManagementJob); + } + + /** + * 鏂板鐗╂枡绠$悊 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 缁撴灉 + */ + @Override + public int insertApsMaterialManagementJob(ApsMaterialManagementJob apsMaterialManagementJob) + { + apsMaterialManagementJob.setCreateTime(DateUtils.getNowDate()); + return apsMaterialManagementJobMapper.insertApsMaterialManagementJob(apsMaterialManagementJob); + } + + /** + * 淇敼鐗╂枡绠$悊 + * + * @param apsMaterialManagementJob 鐗╂枡绠$悊 + * @return 缁撴灉 + */ + @Override + public int updateApsMaterialManagementJob(ApsMaterialManagementJob apsMaterialManagementJob) + { + apsMaterialManagementJob.setUpdateTime(DateUtils.getNowDate()); + return apsMaterialManagementJobMapper.updateApsMaterialManagementJob(apsMaterialManagementJob); + } + + /** + * 鎵归噺鍒犻櫎鐗╂枡绠$悊 + * + * @param ids 闇�瑕佸垹闄ょ殑鐗╂枡绠$悊涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteApsMaterialManagementJobByIds(String[] ids) + { + return apsMaterialManagementJobMapper.deleteApsMaterialManagementJobByIds(ids); + } + + /** + * 鍒犻櫎鐗╂枡绠$悊淇℃伅 + * + * @param id 鐗╂枡绠$悊涓婚敭 + * @return 缁撴灉 + */ + @Override + public int deleteApsMaterialManagementJobById(String id) + { + return apsMaterialManagementJobMapper.deleteApsMaterialManagementJobById(id); + } + + @Override + public boolean syncApsMaterialData(int pageIndex, int pageSize, String orgCode, String itemCodeList) { + JSONObject requestBody = new JSONObject(); + ResponseEntity<String> response = null; + ApsWorkOrderJobLog jobLog = new ApsWorkOrderJobLog(); + String batchNum = ""; + try { + // 璁剧疆璇锋眰澶� + HttpHeaders headers = new HttpHeaders(); + headers.setContentType(MediaType.APPLICATION_JSON); + // 璁剧疆璇锋眰浣� + while (true) { + batchNum = IdUtils.fastSimpleUUID(); + jobLog = new ApsWorkOrderJobLog(); + requestBody = new JSONObject(); + requestBody.put("PageIndex", pageIndex); + requestBody.put("PageSize", pageSize); + if(!StringUtils.isEmpty(orgCode)){ + requestBody.put("OrgCode", orgCode); + } + // 鍒涘缓HttpEntity瀵硅薄 + HttpEntity<String> request = new HttpEntity<>(requestBody.toJSONString(), headers); + // 鍙戦�丳OST璇锋眰 + response = restTemplate.postForEntity(getMaterialUrl, request, String.class); + JSONObject responseBodyJson = JSONObject.parseObject(response.getBody()); + if (response.getStatusCode().is2xxSuccessful() && "200".equals(responseBodyJson.getString("status"))) { + JSONArray jsonArray = responseBodyJson.getJSONArray("data"); + if (!jsonArray.isEmpty()) { + List<ApsMaterialManagementJob> materialList = new ArrayList<>(); + for (Object o : jsonArray) { + JSONObject materialObj = (JSONObject) o; + ApsMaterialManagementJob material = new ApsMaterialManagementJob(); + material.setId(IdUtil.getSnowflakeNextId()); + material.setItemNumber(materialObj.getString("ItemCode")); + material.setMaterialDescription(materialObj.getString("ItemName")); + material.setMaterialStatus(materialObj.getString("Status")); + material.setMaterialType(materialObj.getString("ItemFormAttribute")); + material.setDrawingNo(materialObj.getString("ItemFigure")); + material.setVersionNumber(materialObj.getString("ItemFigureVersion")); + material.setAdvanceProductionDays(materialObj.getBigDecimal("FixedLT")); + material.setSplitBatch(materialObj.getInteger("CFPL")); + material.setApplicableFactories(materialObj.getString("OrgCode")); + material.setEffectiveDate(DateUtils.parseDate(materialObj.getString("EffectiveDate"))); + material.setExpiringDate(DateUtils.parseDate(materialObj.getString("DisableDate"))); + material.setCreateBy(batchNum); + materialList.add(material); + } + List<ApsMaterialManagementJob> temp = new ArrayList<>(); + for(int i=0;i<materialList.size();i++){ + temp.add(materialList.get(i)); + if(temp.size()>=20){ + apsMaterialManagementJobMapper.insertApsMaterialBatch(temp); + temp = new ArrayList<>(); + } + } + jobLog.setRequestData(requestBody.toJSONString()); + jobLog.setPageNum(Long.valueOf(pageIndex)); + jobLog.setPageCount(Long.valueOf(pageSize)); + jobLog.setCreateTime(DateUtils.getNowDate()); + jobLog.setBizType("material"); + jobLog.setResult("material:"+materialList.size()); + jobLog.setCreateBy(batchNum); + jobLogMapper.insertApsWorkOrderJobLog(jobLog); + pageIndex++; + }else{ + break; + } + }else{ + jobLog.setRequestData(requestBody.toJSONString()); + jobLog.setResponseData(response.getBody()); + jobLog.setPageNum(Long.valueOf(pageIndex)); + jobLog.setPageCount(Long.valueOf(pageSize)); + jobLog.setCreateTime(DateUtils.getNowDate()); + jobLog.setBizType("storage"); + jobLog.setResult("error"); + jobLog.setCreateBy(batchNum); + jobLogMapper.insertApsWorkOrderJobLog(jobLog); + break; + } + } + } catch (Exception e) { + e.printStackTrace(); + jobLog.setRequestData(requestBody.toJSONString()); + jobLog.setResponseData(response.getBody()); + jobLog.setPageNum(Long.valueOf(pageIndex)); + jobLog.setPageCount(Long.valueOf(pageSize)); + jobLog.setCreateTime(DateUtils.getNowDate()); + jobLog.setBizType("storage"); + jobLog.setResult("error"); + jobLog.setCreateBy(batchNum); + jobLogMapper.insertApsWorkOrderJobLog(jobLog); + return false; + } + return true; + } + + @Transactional(rollbackFor = Exception.class) + @Override + public boolean syncApsMaterialDataJob(int pageIndex, int pageSize, String orgCode, String itemCodeList) { + try { + apsMaterialManagementJobMapper.deleteApsMaterialJob(); + boolean res = syncApsMaterialData(pageIndex, pageSize, orgCode, itemCodeList); + if(!res){ + return false; + } + apsMaterialManagementJobMapper.deleteApsMaterial(); + apsMaterialManagementJobMapper.insertIntoApsMaterialManagement(); + return true; + } catch (Exception e) { + e.printStackTrace(); + throw new RuntimeException(e); + } + } +} diff --git a/aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java b/aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java index efecb7a..c73f228 100644 --- a/aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java +++ b/aps-modules/aps-job/src/main/java/com/aps/job/task/RyTask.java @@ -40,6 +40,9 @@ @Autowired private IApsStandardProcessRouteHeaderJobService apsStandardProcessRouteHeaderJobService; + @Autowired + private IApsMaterialManagementJobService apsMaterialManagementJobService; + public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) { System.out.println(StringUtils.format("鎵ц澶氬弬鏂规硶锛� 瀛楃涓茬被鍨媨}锛屽竷灏旂被鍨媨}锛岄暱鏁村瀷{}锛屾诞鐐瑰瀷{}锛屾暣褰}", s, b, l, d, i)); @@ -172,9 +175,17 @@ public void syncProcessRouteJob(Integer pageIndex, Integer pageSize, String orgCode, String itemCodeList) { boolean res = apsStandardProcessRouteHeaderJobService.syncProcessRouteDataJob(pageIndex, pageSize, orgCode, itemCodeList); -// if(res){ -// remoteCoreService.setBomDataToRedis(SecurityConstants.INNER); -// } + if(res){ + remoteCoreService.setProcessRouteDataToRedis(SecurityConstants.INNER); + } + } + + /** + * 鍚屾鍏ㄩ噺鐗╂枡鏁版嵁瀹氭椂浠诲姟 + */ + public void syncApsMaterialDataJob(Integer pageIndex, Integer pageSize, String orgCode, String itemCodeList) + { + apsMaterialManagementJobService.syncApsMaterialDataJob(pageIndex, pageSize, orgCode, itemCodeList); } diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsBomHeaderJobMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsBomHeaderJobMapper.xml index 1f527b8..1e0e925 100644 --- a/aps-modules/aps-job/src/main/resources/mapper/job/ApsBomHeaderJobMapper.xml +++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsBomHeaderJobMapper.xml @@ -110,6 +110,7 @@ start_date, end_date, org_code, + create_by, create_time ) VALUES <foreach collection="list" item="item" separator=","> @@ -121,6 +122,7 @@ #{item.startDate}, #{item.endDate}, #{item.orgCode}, + #{item.createBy}, now() ) </foreach> @@ -136,6 +138,7 @@ start_date, end_date, org_code, + create_by, create_time ) SELECT @@ -146,6 +149,7 @@ start_date, end_date, org_code, + create_by, now() FROM aps_bom_header_job </insert> diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsBomLineJobMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsBomLineJobMapper.xml index 84e470b..be153bf 100644 --- a/aps-modules/aps-job/src/main/resources/mapper/job/ApsBomLineJobMapper.xml +++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsBomLineJobMapper.xml @@ -152,6 +152,7 @@ end_date, org_code, num, + create_by, create_time ) VALUES <foreach collection="list" item="item" separator=","> @@ -165,6 +166,7 @@ #{item.endDate}, #{item.orgCode}, #{item.num}, + #{item.createBy}, now() ) </foreach> @@ -182,6 +184,7 @@ end_date, org_code, num, + create_by, create_time ) SELECT @@ -194,6 +197,7 @@ end_date, org_code, num, + create_by, now() FROM aps_bom_line_job </insert> diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialManagementJobMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialManagementJobMapper.xml new file mode 100644 index 0000000..42daefc --- /dev/null +++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialManagementJobMapper.xml @@ -0,0 +1,228 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper +PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" +"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.aps.job.mapper.ApsMaterialManagementJobMapper"> + + <resultMap type="ApsMaterialManagementJob" id="ApsMaterialManagementJobResult"> + <result property="id" column="id" /> + <result property="itemNumber" column="item_number" /> + <result property="materialDescription" column="material_description" /> + <result property="materialStatus" column="material_status" /> + <result property="materialType" column="material_type" /> + <result property="professionalAffiliation" column="professional_affiliation" /> + <result property="drawingNo" column="drawing_no" /> + <result property="versionNumber" column="version_number" /> + <result property="advanceProductionDays" column="advance_production_days" /> + <result property="splitBatch" column="split_batch" /> + <result property="selfMade" column="self_made" /> + <result property="applicableFactories" column="applicable_factories" /> + <result property="applicableWorkshop" column="applicable_workshop" /> + <result property="effectiveDate" column="effective_date" /> + <result property="expiringDate" column="expiring_date" /> + <result property="integrationDate" column="integration_date" /> + <result property="createBy" column="create_by" /> + <result property="createTime" column="create_time" /> + <result property="updateBy" column="update_by" /> + <result property="updateTime" column="update_time" /> + </resultMap> + + <sql id="selectApsMaterialManagementJobVo"> + select id, item_number, material_description, material_status, material_type, professional_affiliation, drawing_no, version_number, advance_production_days, split_batch, self_made, applicable_factories, applicable_workshop, effective_date, expiring_date, integration_date, create_by, create_time, update_by, update_time from aps_material_management_job + </sql> + + <select id="selectApsMaterialManagementJobList" parameterType="ApsMaterialManagementJob" resultMap="ApsMaterialManagementJobResult"> + <include refid="selectApsMaterialManagementJobVo"/> + <where> + <if test="itemNumber != null and itemNumber != ''"> and item_number = #{itemNumber}</if> + <if test="materialDescription != null and materialDescription != ''"> and material_description = #{materialDescription}</if> + <if test="materialStatus != null and materialStatus != ''"> and material_status = #{materialStatus}</if> + <if test="materialType != null and materialType != ''"> and material_type = #{materialType}</if> + <if test="professionalAffiliation != null and professionalAffiliation != ''"> and professional_affiliation = #{professionalAffiliation}</if> + <if test="drawingNo != null and drawingNo != ''"> and drawing_no = #{drawingNo}</if> + <if test="versionNumber != null and versionNumber != ''"> and version_number = #{versionNumber}</if> + <if test="advanceProductionDays != null "> and advance_production_days = #{advanceProductionDays}</if> + <if test="splitBatch != null "> and split_batch = #{splitBatch}</if> + <if test="selfMade != null and selfMade != ''"> and self_made = #{selfMade}</if> + <if test="applicableFactories != null and applicableFactories != ''"> and applicable_factories = #{applicableFactories}</if> + <if test="applicableWorkshop != null and applicableWorkshop != ''"> and applicable_workshop = #{applicableWorkshop}</if> + <if test="effectiveDate != null "> and effective_date = #{effectiveDate}</if> + <if test="expiringDate != null "> and expiring_date = #{expiringDate}</if> + <if test="integrationDate != null "> and integration_date = #{integrationDate}</if> + </where> + </select> + + <select id="selectApsMaterialManagementJobById" parameterType="String" resultMap="ApsMaterialManagementJobResult"> + <include refid="selectApsMaterialManagementJobVo"/> + where id = #{id} + </select> + + <insert id="insertApsMaterialManagementJob" parameterType="ApsMaterialManagementJob"> + insert into aps_material_management_job + <trim prefix="(" suffix=")" suffixOverrides=","> + <if test="id != null">id,</if> + <if test="itemNumber != null">item_number,</if> + <if test="materialDescription != null">material_description,</if> + <if test="materialStatus != null">material_status,</if> + <if test="materialType != null">material_type,</if> + <if test="professionalAffiliation != null">professional_affiliation,</if> + <if test="drawingNo != null">drawing_no,</if> + <if test="versionNumber != null">version_number,</if> + <if test="advanceProductionDays != null">advance_production_days,</if> + <if test="splitBatch != null">split_batch,</if> + <if test="selfMade != null">self_made,</if> + <if test="applicableFactories != null">applicable_factories,</if> + <if test="applicableWorkshop != null">applicable_workshop,</if> + <if test="effectiveDate != null">effective_date,</if> + <if test="expiringDate != null">expiring_date,</if> + <if test="integrationDate != null">integration_date,</if> + <if test="createBy != null">create_by,</if> + <if test="createTime != null">create_time,</if> + <if test="updateBy != null">update_by,</if> + <if test="updateTime != null">update_time,</if> + </trim> + <trim prefix="values (" suffix=")" suffixOverrides=","> + <if test="id != null">#{id},</if> + <if test="itemNumber != null">#{itemNumber},</if> + <if test="materialDescription != null">#{materialDescription},</if> + <if test="materialStatus != null">#{materialStatus},</if> + <if test="materialType != null">#{materialType},</if> + <if test="professionalAffiliation != null">#{professionalAffiliation},</if> + <if test="drawingNo != null">#{drawingNo},</if> + <if test="versionNumber != null">#{versionNumber},</if> + <if test="advanceProductionDays != null">#{advanceProductionDays},</if> + <if test="splitBatch != null">#{splitBatch},</if> + <if test="selfMade != null">#{selfMade},</if> + <if test="applicableFactories != null">#{applicableFactories},</if> + <if test="applicableWorkshop != null">#{applicableWorkshop},</if> + <if test="effectiveDate != null">#{effectiveDate},</if> + <if test="expiringDate != null">#{expiringDate},</if> + <if test="integrationDate != null">#{integrationDate},</if> + <if test="createBy != null">#{createBy},</if> + <if test="createTime != null">#{createTime},</if> + <if test="updateBy != null">#{updateBy},</if> + <if test="updateTime != null">#{updateTime},</if> + </trim> + </insert> + + <update id="updateApsMaterialManagementJob" parameterType="ApsMaterialManagementJob"> + update aps_material_management_job + <trim prefix="SET" suffixOverrides=","> + <if test="itemNumber != null">item_number = #{itemNumber},</if> + <if test="materialDescription != null">material_description = #{materialDescription},</if> + <if test="materialStatus != null">material_status = #{materialStatus},</if> + <if test="materialType != null">material_type = #{materialType},</if> + <if test="professionalAffiliation != null">professional_affiliation = #{professionalAffiliation},</if> + <if test="drawingNo != null">drawing_no = #{drawingNo},</if> + <if test="versionNumber != null">version_number = #{versionNumber},</if> + <if test="advanceProductionDays != null">advance_production_days = #{advanceProductionDays},</if> + <if test="splitBatch != null">split_batch = #{splitBatch},</if> + <if test="selfMade != null">self_made = #{selfMade},</if> + <if test="applicableFactories != null">applicable_factories = #{applicableFactories},</if> + <if test="applicableWorkshop != null">applicable_workshop = #{applicableWorkshop},</if> + <if test="effectiveDate != null">effective_date = #{effectiveDate},</if> + <if test="expiringDate != null">expiring_date = #{expiringDate},</if> + <if test="integrationDate != null">integration_date = #{integrationDate},</if> + <if test="createBy != null">create_by = #{createBy},</if> + <if test="createTime != null">create_time = #{createTime},</if> + <if test="updateBy != null">update_by = #{updateBy},</if> + <if test="updateTime != null">update_time = #{updateTime},</if> + </trim> + where id = #{id} + </update> + + <delete id="deleteApsMaterialManagementJobById" parameterType="String"> + delete from aps_material_management_job where id = #{id} + </delete> + + <delete id="deleteApsMaterialManagementJobByIds" parameterType="String"> + delete from aps_material_management_job where id in + <foreach item="id" collection="array" open="(" separator="," close=")"> + #{id} + </foreach> + </delete> + + <insert id="insertApsMaterialBatch"> + INSERT INTO aps_material_management_job ( + id, + item_number, + material_description, + material_status, + material_type, + drawing_no, + version_number, + advance_production_days, + split_batch, + applicable_factories, + effective_date, + expiring_date, + create_by, + create_time + ) VALUES + <foreach collection="list" item="item" separator=","> + ( + #{item.id}, + #{item.itemNumber}, + #{item.materialDescription}, + #{item.materialStatus}, + #{item.materialType}, + #{item.drawingNo}, + #{item.versionNumber}, + #{item.advanceProductionDays}, + #{item.splitBatch}, + #{item.applicableFactories}, + #{item.effectiveDate}, + #{item.expiringDate}, + #{item.createBy}, + now() + ) + </foreach> + </insert> + + <!-- 鎻掑叆鏁版嵁鍒� aps_material_management --> + <insert id="insertIntoApsMaterialManagement"> + INSERT INTO aps_material_management ( + id, + item_number, + material_description, + material_status, + material_type, + drawing_no, + version_number, + advance_production_days, + split_batch, + applicable_factories, + effective_date, + expiring_date, + create_by, + create_time + ) + SELECT + id, + item_number, + material_description, + material_status, + material_type, + drawing_no, + version_number, + advance_production_days, + split_batch, + applicable_factories, + effective_date, + expiring_date, + create_by, + now() + FROM aps_material_management_job + </insert> + + <!-- 鍒犻櫎 aps_material_management 琛ㄤ腑鐨勬暟鎹� --> + <delete id="deleteApsMaterial"> + DELETE FROM aps_material_management + </delete> + + <!-- 鍒犻櫎 aps_material_management_job 琛ㄤ腑鐨勬暟鎹� --> + <delete id="deleteApsMaterialJob"> + DELETE FROM aps_material_management_job + </delete> + +</mapper> \ No newline at end of file diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialStorageManagementJobMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialStorageManagementJobMapper.xml index ce3ec29..edaba5a 100644 --- a/aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialStorageManagementJobMapper.xml +++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsMaterialStorageManagementJobMapper.xml @@ -108,6 +108,7 @@ item_number, num, applicable_factories, + create_by, create_time ) VALUES <foreach collection="list" item="item" separator=","> @@ -116,6 +117,7 @@ #{item.itemNumber}, #{item.num}, #{item.applicableFactories}, + #{item.createBy}, now() ) </foreach> @@ -128,6 +130,7 @@ item_number, num, applicable_factories, + create_by, create_time ) SELECT @@ -135,6 +138,7 @@ item_number, num, applicable_factories, + create_by, now() FROM aps_material_storage_management_job </insert> diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteHeaderJobMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteHeaderJobMapper.xml index 1930d0e..185c84b 100644 --- a/aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteHeaderJobMapper.xml +++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteHeaderJobMapper.xml @@ -120,6 +120,7 @@ start_date, end_date, org_code, + create_by, create_time ) VALUES <foreach collection="list" item="item" separator=","> @@ -131,6 +132,7 @@ #{item.startDate}, #{item.endDate}, #{item.orgCode}, + #{item.createBy}, now() ) </foreach> @@ -146,6 +148,7 @@ start_date, end_date, org_code, + create_by, create_time ) SELECT @@ -156,6 +159,7 @@ start_date, end_date, org_code, + create_by, now() FROM aps_standard_process_route_header_job </insert> diff --git a/aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteLineJobMapper.xml b/aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteLineJobMapper.xml index f8f89f0..fcc081e 100644 --- a/aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteLineJobMapper.xml +++ b/aps-modules/aps-job/src/main/resources/mapper/job/ApsStandardProcessRouteLineJobMapper.xml @@ -130,6 +130,7 @@ org_code, shop_code, standard_time, + create_by, create_time ) VALUES <foreach collection="list" item="item" separator=","> @@ -144,6 +145,7 @@ #{item.orgCode}, #{item.shopCode}, #{item.standardTime}, + #{item.createBy}, now() ) </foreach> @@ -162,6 +164,7 @@ org_code, shop_code, standard_time, + create_by, create_time ) SELECT @@ -175,6 +178,7 @@ org_code, shop_code, standard_time, + create_by, now() FROM aps_standard_process_route_line_job </insert> -- Gitblit v1.9.3