From 9d38f2354b3a7267a2486d937bb7d256fcb949c1 Mon Sep 17 00:00:00 2001 From: lty <876263681@qq.com> Date: 星期五, 13 六月 2025 08:15:48 +0800 Subject: [PATCH] #增加生产日期,到期日期字段,增加库存明细超期库存检索 --- src/main/webapp/static/js/agvLocDetl/locDetl.js | 30 ++++ src/main/webapp/views/locDetl/locDetl.html | 2 src/main/java/com/zy/asrs/entity/param/CombParam.java | 10 + src/main/java/com/zy/asrs/controller/AgvLocDetlController.java | 13 + src/main/java/com/zy/asrs/entity/AgvLocDetl.java | 23 +++ src/main/java/com/zy/asrs/entity/AgvWaitPakin.java | 19 ++ src/main/java/com/zy/asrs/entity/AgvWrkDetl.java | 20 ++ src/main/java/com/zy/common/web/WcsController.java | 2 src/main/webapp/static/js/orderDetl/orderDetl.js | 2 src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 2 src/main/java/com/zy/asrs/entity/WrkDetl.java | 20 ++ src/main/java/com/zy/asrs/entity/param/StockOutParam.java | 3 src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java | 23 ++- src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java | 8 src/main/java/com/zy/common/model/DetlDto.java | 19 ++ src/main/webapp/static/js/common.js | 2 src/main/java/com/zy/asrs/entity/param/FullStoreParam.java | 7 + src/main/java/com/zy/asrs/entity/OrderDetl.java | 29 ++++ src/main/java/com/zy/asrs/controller/LocDetlController.java | 20 ++ src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java | 4 src/main/webapp/static/js/locDetlStatis/locDetlStatis.js | 3 src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java | 3 src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java | 4 src/main/webapp/views/agvLocDetl/locDetl.html | 1 src/main/java/com/zy/common/model/LocDto.java | 16 ++ src/main/webapp/static/js/locDetl/locDetl.js | 31 ++++ src/main/java/com/zy/asrs/entity/WaitPakin.java | 19 ++ src/main/webapp/static/js/waitPakin/waitPakin.js | 4 src/main/java/com/zy/asrs/entity/LocDetl.java | 24 +++ src/main/webapp/static/js/waitPakinLog/waitPakinLog.js | 4 src/main/resources/application.yml | 2 31 files changed, 335 insertions(+), 34 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/AgvLocDetlController.java b/src/main/java/com/zy/asrs/controller/AgvLocDetlController.java index f98d3f4..e376151 100644 --- a/src/main/java/com/zy/asrs/controller/AgvLocDetlController.java +++ b/src/main/java/com/zy/asrs/controller/AgvLocDetlController.java @@ -8,6 +8,7 @@ import com.core.common.DateUtils; import com.core.common.R; import com.zy.asrs.entity.AgvLocDetl; +import com.zy.asrs.entity.LocDetl; import com.zy.asrs.entity.Mat; import com.zy.asrs.service.AgvLocDetlService; import com.zy.asrs.service.MatService; @@ -20,6 +21,7 @@ import org.springframework.web.multipart.MultipartFile; import java.io.IOException; +import java.time.LocalDate; import java.util.List; import java.util.Map; @@ -40,14 +42,23 @@ @RequestParam(required = false)String orderByType, @RequestParam(required = false)String condition, @RequestParam Map<String, Object> param, - @RequestParam(required = false)Boolean unreason){ + @RequestParam(required = false)Boolean unreason, + @RequestParam(required = false)Boolean expired){ if (!Cools.isEmpty(unreason) && unreason) { return R.ok(agvLocDetlService.selectPage(new Page<>(curr, limit), new EntityWrapper<AgvLocDetl>() .where(" DATALENGTH( batch ) != 11 or\n" + " batch LIKE '%[a-z]%'"))); } + if (!Cools.isEmpty(expired) && expired) { + return R.ok(agvLocDetlService.selectPage( + new Page<>(curr, limit), + new EntityWrapper<AgvLocDetl>() + .where("deadline < {0}", LocalDate.now()) // 鏂板鐨勮繃鏈熷垽鏂� + )); + } param.remove("unreason"); + param.remove("expired"); String row = ""; EntityWrapper<AgvLocDetl> wrapper = new EntityWrapper<>(); if (param.get("row") != null) { diff --git a/src/main/java/com/zy/asrs/controller/LocDetlController.java b/src/main/java/com/zy/asrs/controller/LocDetlController.java index 3ab417a..be58971 100644 --- a/src/main/java/com/zy/asrs/controller/LocDetlController.java +++ b/src/main/java/com/zy/asrs/controller/LocDetlController.java @@ -19,6 +19,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.time.LocalDate; import java.util.*; @RestController @@ -86,14 +87,23 @@ @RequestParam(required = false)String orderByType, @RequestParam(required = false)String condition, @RequestParam Map<String, Object> param, - @RequestParam(required = false)Boolean unreason){ + @RequestParam(required = false)Boolean unreason, + @RequestParam(required = false)Boolean expired){ if (!Cools.isEmpty(unreason) && unreason) { - - return R.ok(locDetlService.selectPage(new Page<>(curr, limit), new EntityWrapper<LocDetl>() - .where(" DATALENGTH( batch ) != 11 or\n" + - " batch LIKE '%[a-z]%'"))); + return R.ok(locDetlService.selectPage( + new Page<>(curr, limit), + new EntityWrapper<LocDetl>() + .where(" DATALENGTH(batch) != 11 OR batch LIKE '%[a-z]%'"))); + } + if (!Cools.isEmpty(expired) && expired) { + return R.ok(locDetlService.selectPage( + new Page<>(curr, limit), + new EntityWrapper<LocDetl>() + .where("deadline < {0}", LocalDate.now()) // 鏂板鐨勮繃鏈熷垽鏂� + )); } param.remove("unreason"); + param.remove("expired"); String row = ""; EntityWrapper<LocDetl> wrapper = new EntityWrapper<>(); if (param.get("row") != null) { diff --git a/src/main/java/com/zy/asrs/entity/AgvLocDetl.java b/src/main/java/com/zy/asrs/entity/AgvLocDetl.java index 1ea03d2..e6c4e18 100644 --- a/src/main/java/com/zy/asrs/entity/AgvLocDetl.java +++ b/src/main/java/com/zy/asrs/entity/AgvLocDetl.java @@ -12,6 +12,7 @@ import com.zy.system.service.UserService; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.text.SimpleDateFormat; @@ -160,6 +161,15 @@ @TableField("stock_freeze") @ApiModelProperty(value= "搴撳瓨鍐荤粨{1:姝e父,0:鍐荤粨}") private Integer stockFreeze; + @ApiModelProperty(value= "鐢熶骇鏃ユ湡") + @TableField("proddate") + @DateTimeFormat(pattern="yyyy-MM-dd") + + private Date proddate; + @ApiModelProperty(value= "鍒版湡鏃ユ湡") + @TableField("deadline") + @DateTimeFormat(pattern="yyyy-MM-dd") + private Date deadline; public String getLocNo$(){ LocMastService service = SpringUtils.getBean(LocMastService.class); @@ -262,5 +272,16 @@ } return this.stockFreeze == 1 ? "姝e父" : "鍐荤粨"; } - + public String getProddate$(){ + if (Cools.isEmpty(this.proddate)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.proddate); + } + public String getDeadline$(){ + if (Cools.isEmpty(this.deadline)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.deadline); + } } diff --git a/src/main/java/com/zy/asrs/entity/AgvWaitPakin.java b/src/main/java/com/zy/asrs/entity/AgvWaitPakin.java index 2dc0a4e..db53ce1 100644 --- a/src/main/java/com/zy/asrs/entity/AgvWaitPakin.java +++ b/src/main/java/com/zy/asrs/entity/AgvWaitPakin.java @@ -150,7 +150,26 @@ @ApiModelProperty(value= "澶囨敞") private String memo; + @ApiModelProperty(value= "鐢熶骇鏃ユ湡") + @TableField("proddate") + private Date proddate; + @ApiModelProperty(value= "鍒版湡鏃ユ湡") + @TableField("deadline") + private Date deadline; + + public String getProddate$(){ + if (Cools.isEmpty(this.proddate)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.proddate); + } + public String getDeadline$(){ + if (Cools.isEmpty(this.deadline)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.deadline); + } public String getBeBatch$(){ if (null == this.beBatch){ return null; } switch (this.beBatch){ diff --git a/src/main/java/com/zy/asrs/entity/AgvWrkDetl.java b/src/main/java/com/zy/asrs/entity/AgvWrkDetl.java index 7f89042..3c20cef 100644 --- a/src/main/java/com/zy/asrs/entity/AgvWrkDetl.java +++ b/src/main/java/com/zy/asrs/entity/AgvWrkDetl.java @@ -268,7 +268,12 @@ */ @ApiModelProperty(value= "澶囨敞") private String memo; - + @ApiModelProperty(value= "鐢熶骇鏃ユ湡") + @TableField("proddate") + private Date proddate; + @ApiModelProperty(value= "鍒版湡鏃ユ湡") + @TableField("deadline") + private Date deadline; public String getIoTime$(){ if (Cools.isEmpty(this.ioTime)){ return ""; @@ -276,6 +281,19 @@ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.ioTime); } + public String getProddate$(){ + if (Cools.isEmpty(this.proddate)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.proddate); + } + public String getDeadline$(){ + if (Cools.isEmpty(this.deadline)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.deadline); + } + public String getBeBatch$(){ if (null == this.beBatch){ return null; } switch (this.beBatch){ diff --git a/src/main/java/com/zy/asrs/entity/LocDetl.java b/src/main/java/com/zy/asrs/entity/LocDetl.java index ccb2015..4353bb9 100644 --- a/src/main/java/com/zy/asrs/entity/LocDetl.java +++ b/src/main/java/com/zy/asrs/entity/LocDetl.java @@ -12,6 +12,7 @@ import com.zy.system.service.UserService; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.springframework.format.annotation.DateTimeFormat; import java.io.Serializable; import java.text.SimpleDateFormat; @@ -157,6 +158,17 @@ @ApiModelProperty(value= "澶囨敞") private String memo; + @ApiModelProperty(value= "鐢熶骇鏃ユ湡") + @TableField("proddate") + @DateTimeFormat(pattern="yyyy-MM-dd") + + private Date proddate; + @ApiModelProperty(value= "鍒版湡鏃ユ湡") + @TableField("deadline") + @DateTimeFormat(pattern="yyyy-MM-dd") + private Date deadline; + + @TableField("stock_freeze") @ApiModelProperty(value= "搴撳瓨鍐荤粨{1:姝e父,0:鍐荤粨}") private Integer stockFreeze; @@ -244,6 +256,18 @@ } return null; } + public String getProddate$(){ + if (Cools.isEmpty(this.proddate)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.proddate); + } + public String getDeadline$(){ + if (Cools.isEmpty(this.deadline)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.deadline); + } public String getAppeTime$(){ if (Cools.isEmpty(this.appeTime)){ diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java index 2d20f94..a09ec06 100644 --- a/src/main/java/com/zy/asrs/entity/OrderDetl.java +++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java @@ -279,6 +279,18 @@ @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss") private Date updateTime; + + @ApiModelProperty(value= "鐢熶骇鏃ユ湡") + @TableField("proddate") + @DateTimeFormat(pattern="yyyy-MM-dd") + + private Date proddate; + @ApiModelProperty(value= "鍒版湡鏃ユ湡") + @TableField("deadline") + @DateTimeFormat(pattern="yyyy-MM-dd") + + private Date deadline; + /** * 澶囨敞 */ @@ -287,7 +299,7 @@ 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) { + 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,Date proddate, Date deadline) { this.orderId = orderId; this.orderNo = orderNo; this.anfme = anfme; @@ -327,6 +339,8 @@ this.updateBy = updateBy; this.updateTime = updateTime; this.memo = memo; + this.proddate = proddate; + this.deadline = deadline; } public String getOrderId$(){ @@ -432,6 +446,19 @@ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); } + public String getProddate$(){ + if (Cools.isEmpty(this.proddate)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.proddate); + } + public String getDeadline$(){ + if (Cools.isEmpty(this.deadline)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.deadline); + } + public Double getEnableQty() { Double enableQty = null; if (null != this.anfme && this.qty != null) { diff --git a/src/main/java/com/zy/asrs/entity/WaitPakin.java b/src/main/java/com/zy/asrs/entity/WaitPakin.java index 5692c8d..bc4a45f 100644 --- a/src/main/java/com/zy/asrs/entity/WaitPakin.java +++ b/src/main/java/com/zy/asrs/entity/WaitPakin.java @@ -148,6 +148,12 @@ @ApiModelProperty(value= "鍒涘缓鑰�") @TableField("appe_user") private Long appeUser; + @ApiModelProperty(value= "鐢熶骇鏃ユ湡") + @TableField("proddate") + private Date proddate; + @ApiModelProperty(value= "鍒版湡鏃ユ湡") + @TableField("deadline") + private Date deadline; @ApiModelProperty(value= "澶囨敞") private String memo; @@ -215,7 +221,18 @@ } return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.appeTime); } - + public String getProddate$(){ + if (Cools.isEmpty(this.proddate)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.proddate); + } + public String getDeadline$(){ + if (Cools.isEmpty(this.deadline)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.deadline); + } public void sync(Object source) { Synchro.Copy(source, this); } diff --git a/src/main/java/com/zy/asrs/entity/WrkDetl.java b/src/main/java/com/zy/asrs/entity/WrkDetl.java index ae755c0..184d5b0 100644 --- a/src/main/java/com/zy/asrs/entity/WrkDetl.java +++ b/src/main/java/com/zy/asrs/entity/WrkDetl.java @@ -269,6 +269,13 @@ @ApiModelProperty(value= "澶囨敞") private String memo; + @ApiModelProperty(value= "鐢熶骇鏃ユ湡") + @TableField("proddate") + private Date proddate; + @ApiModelProperty(value= "鍒版湡鏃ユ湡") + @TableField("deadline") + private Date deadline; + public String getIoTime$(){ if (Cools.isEmpty(this.ioTime)){ return ""; @@ -287,7 +294,18 @@ return String.valueOf(this.beBatch); } } - + public String getProddate$(){ + if (Cools.isEmpty(this.proddate)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.proddate); + } + public String getDeadline$(){ + if (Cools.isEmpty(this.deadline)){ + return ""; + } + return new SimpleDateFormat("yyyy-MM-dd").format(this.deadline); + } public String getSource$(){ if (null == this.source){ return null; } switch (this.source){ diff --git a/src/main/java/com/zy/asrs/entity/param/CombParam.java b/src/main/java/com/zy/asrs/entity/param/CombParam.java index ff8690d..95bd641 100644 --- a/src/main/java/com/zy/asrs/entity/param/CombParam.java +++ b/src/main/java/com/zy/asrs/entity/param/CombParam.java @@ -1,7 +1,9 @@ package com.zy.asrs.entity.param; import lombok.Data; +import org.springframework.dao.DataAccessException; +import java.util.Date; import java.util.List; /** @@ -48,6 +50,14 @@ // 瑙勬牸 private String specs; + //鐢熶骇鏃ユ湡 + private Date proddate; + + //鍒版湡鏃ユ湡 + private Date deadline; + + + } } diff --git a/src/main/java/com/zy/asrs/entity/param/FullStoreParam.java b/src/main/java/com/zy/asrs/entity/param/FullStoreParam.java index aee3742..57f2b26 100644 --- a/src/main/java/com/zy/asrs/entity/param/FullStoreParam.java +++ b/src/main/java/com/zy/asrs/entity/param/FullStoreParam.java @@ -2,6 +2,7 @@ import lombok.Data; +import java.util.Date; import java.util.List; /** @@ -40,6 +41,12 @@ //閿�鍞鍗曡鍙� private String isoseq; + //鐢熶骇鏃ユ湡 + private Date proddate; + + //鍒版湡鏃ユ湡 + private Date deadline; + } } diff --git a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java index 3c9fd81..5f1d9d9 100644 --- a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java +++ b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java @@ -2,6 +2,7 @@ import lombok.Data; +import java.util.Date; import java.util.List; /** @@ -42,6 +43,8 @@ //閿�鍞鍗曡鍙� private String deadTime; + private Date proddate; + private Date deadline; } } diff --git a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java index 982fcbf..d61484a 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvMobileServiceImpl.java @@ -136,7 +136,7 @@ checkOrderQty(order,combMat); } - DetlDto detlDto = new DetlDto(combMat.getMatnr(), combMat.getBatch(), combMat.getAnfme(), combMat.getCsocode(), combMat.getIsoseq(),combMat.getContainerCode()); + DetlDto detlDto = new DetlDto(combMat.getMatnr(), combMat.getBatch(), combMat.getAnfme(), combMat.getCsocode(), combMat.getIsoseq(),combMat.getContainerCode(),combMat.getProddate(),combMat.getDeadline()); //鍚屼竴鎵樼洏涓嬬浉鍚岀墿鏂欎俊鎭拰鎵瑰彿杞负涓�涓叆搴撻�氱煡妗� if (DetlDto.has(detlDtos, detlDto)) { DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch(), detlDto.getCsocode(), detlDto.getIsoseq(),null); @@ -185,6 +185,8 @@ waitPakin.setIoStatus("N"); // 鍏ュ嚭鐘舵�� waitPakin.setAnfme(detlDto.getAnfme()); // 鏁伴噺 waitPakin.setStatus("Y"); // 鐘舵�� + waitPakin.setProddate(detlDto.getProddate()); + waitPakin.setDeadline(detlDto.getDeadline()); ////閿�鍞鍗曞彿 waitPakin.setThreeCode(detlDto.getCsocode()); diff --git a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java index 42f3d88..b8ec93b 100644 --- a/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/AgvWorkServiceImpl.java @@ -97,7 +97,7 @@ wrkMast.setMk(isConveyor ? "Y" : "N"); //鐢熸垚宸ヤ綔妗f槑缁� agvWaitPakinList.forEach(wp -> { - createWrkDetlReWrite(wp.getMatnr(),wrkMast.getWrkNo(),wp.getOrderNo(),wp.getBatch(),wp.getAnfme(),wp.getSuppCode(),now,userId,wp.getThreeCode(),wp.getDeadTime()); + createWrkDetlReWrite(wp.getMatnr(),wrkMast.getWrkNo(),wp.getOrderNo(),wp.getBatch(),wp.getAnfme(),wp.getSuppCode(),now,userId,wp.getThreeCode(),wp.getDeadTime(),wp.getProddate(),wp.getDeadline()); }); //鏇存柊婧愮珯鐐逛俊鎭� updateAgvBasDevp(agvBasDevp,"R"); @@ -149,7 +149,9 @@ now, userId, locDto.getCsocode(), - locDto.getIsoseq()); + locDto.getIsoseq(), + locDto.getProddate(), + locDto.getDeadline()); }else { List<OrderDto> orderDtoList = JSON.parseArray(locDto.getOrderNo(), OrderDto.class); orderDtoList.forEach(orderDto -> { @@ -163,7 +165,9 @@ now, userId, locDto.getCsocode(), - locDto.getIsoseq()); + locDto.getIsoseq(), + locDto.getProddate(), + locDto.getDeadline()); }); } @@ -241,7 +245,7 @@ List<TaskDto> taskDtos = new ArrayList<>(); param.getLocDetls().forEach(locDetl -> { - LocDto locDto = new LocDto(locDetl.getLocNo(),locDetl.getCount(),locDetl.getMatnr(),locDetl.getBatch(),locDetl.getThreeCode(),locDetl.getDeadTime(),locDetl.getSuppCode()); + LocDto locDto = new LocDto(locDetl.getLocNo(),locDetl.getCount(),locDetl.getMatnr(),locDetl.getBatch(),locDetl.getThreeCode(),locDetl.getDeadTime(),locDetl.getSuppCode(),locDetl.getProddate(),locDetl.getDeadline()); TaskDto taskDto = new TaskDto(locDetl.getLocNo(),station,locDto); if(TaskDto.has(taskDtos,taskDto)){ TaskDto.find(taskDtos,taskDto).getLocDtos().add(locDto); @@ -273,7 +277,9 @@ now, userId, locDto.getCsocode(), - locDto.getIsoseq()); + locDto.getIsoseq(), + locDto.getProddate(), + locDto.getDeadline()); }); updateAgvLocMast(agvLocMastService.selectById(wrkMast.getSourceLocNo()),"P"); //鏇存柊鐩爣绔欑偣鐘舵�� @@ -303,7 +309,7 @@ //鐢熸垚绉诲簱宸ヤ綔妗� AgvWrkMast wrkMast = createWrkMast(11, 21L, sourceLocNo, targetLocNo, sourceLocDetl.getSuppCode(), now, userId,false); //鐢熸垚宸ヤ綔鍏氭槑缁� - createWrkDetlReWrite(sourceLocDetl.getMatnr(),wrkMast.getWrkNo(),null,sourceLocDetl.getBatch(),sourceLocDetl.getAnfme(),sourceLocDetl.getZpallet(),now,userId,sourceLocDetl.getThreeCode(),sourceLocDetl.getDeadTime()); + createWrkDetlReWrite(sourceLocDetl.getMatnr(),wrkMast.getWrkNo(),null,sourceLocDetl.getBatch(),sourceLocDetl.getAnfme(),sourceLocDetl.getZpallet(),now,userId,sourceLocDetl.getThreeCode(),sourceLocDetl.getDeadTime(),sourceLocDetl.getProddate(),sourceLocDetl.getDeadline()); //淇敼鐩爣搴撲綅鐘舵�� updateAgvLocMast(targetLocMast,"S"); //淇敼鍘熷簱浣嶇姸鎬� @@ -613,7 +619,7 @@ /* 鐢熸垚宸ヤ綔妗f槑缁� */ - private void createWrkDetlReWrite(String matnr, int wrkNo, String orderNo,String batch, double anfme, String zpallet, Date now, Long userId, String csocode, String isoseq){ + private void createWrkDetlReWrite(String matnr, int wrkNo, String orderNo,String batch, double anfme, String zpallet, Date now, Long userId, String csocode, String isoseq, Date proddate,Date deadline){ Mat mat = matService.selectByMatnr(matnr); if (Cools.isEmpty(mat)) { throw new CoolException(matnr + "鍟嗗搧缁存姢澶辫触"); @@ -630,7 +636,8 @@ wrkDetl.setAppeTime(now); wrkDetl.setModiUser(userId); wrkDetl.setModiTime(now); - + wrkDetl.setProddate(proddate); + wrkDetl.setDeadline(deadline); wrkDetl.setThreeCode(csocode); wrkDetl.setDeadTime(isoseq); if (!agvWrkDetlService.insert(wrkDetl)) { diff --git a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java index 163d97b..f3a082a 100644 --- a/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/MobileServiceImpl.java @@ -142,7 +142,7 @@ // 鐢熸垚鍏ュ簱閫氱煡妗� List<DetlDto> detlDtos = new ArrayList<>(); param.getCombMats().forEach(elem -> { - DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(), elem.getCsocode(), elem.getIsoseq(),elem.getContainerCode()); + DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(), elem.getCsocode(), elem.getIsoseq(),elem.getContainerCode(),elem.getProddate(),elem.getDeadline()); if (DetlDto.has(detlDtos, detlDto)) { DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch(),detlDto.getCsocode(),detlDto.getIsoseq(),detlDto.getContainerCode()); assert one != null; @@ -169,6 +169,8 @@ waitPakin.setAppeTime(now); waitPakin.setModiUser(userId); waitPakin.setModiTime(now); + waitPakin.setProddate(detlDto.getProddate()); + waitPakin.setDeadline(detlDto.getDeadline()); waitPakin.setThreeCode(detlDto.getCsocode()); waitPakin.setDeadTime(detlDto.getIsoseq()); @@ -197,7 +199,7 @@ throw new CoolException("淇敼鍗曟嵁鏄庣粏鏁伴噺澶辫触"); } - DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(),elem.getCsocode(),elem.getIsoseq(),elem.getContainerCode()); + DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(),elem.getCsocode(),elem.getIsoseq(),elem.getContainerCode(),elem.getProddate(),elem.getDeadline()); if (DetlDto.has(detlDtos, detlDto)) { DetlDto one = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch(),detlDto.getCsocode(),detlDto.getIsoseq(),detlDto.getContainerCode()); assert one != null; @@ -223,6 +225,8 @@ waitPakin.setAppeTime(now); waitPakin.setModiUser(userId); waitPakin.setModiTime(now); + waitPakin.setProddate(detlDto.getProddate()); + waitPakin.setDeadline(detlDto.getDeadline()); waitPakin.setThreeCode(detlDto.getCsocode()); waitPakin.setDeadTime(detlDto.getIsoseq()); diff --git a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java index 3680f51..ecb96a9 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -131,7 +131,7 @@ // 鐢熸垚宸ヤ綔妗f槑缁� List<DetlDto> detlDtos = new ArrayList<>(); param.getList().forEach(elem -> { - DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(), elem.getCsocode(), elem.getIsoseq(),elem.getContainerCode()); + DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme(), elem.getCsocode(), elem.getIsoseq(),elem.getContainerCode(),elem.getProddate(),elem.getDeadline()); if (DetlDto.has(detlDtos, detlDto)) { DetlDto detlDto1 = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch(),detlDto.getCsocode(),detlDto.getIsoseq(),detlDto.getContainerCode()); assert detlDto1 != null; diff --git a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java index 89c9603..98988c4 100644 --- a/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WrkDetlServiceImpl.java @@ -46,7 +46,8 @@ wrkDetl.setAppeTime(now); wrkDetl.setModiUser(userId); wrkDetl.setModiTime(now); - + wrkDetl.setProddate(dto.getProddate()); + wrkDetl.setDeadline(dto.getDeadline()); wrkDetl.setThreeCode(dto.getCsocode()); wrkDetl.setDeadTime(dto.getIsoseq()); wrkDetl.setSuppCode(dto.getContainerCode()); diff --git a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java index 6665933..2d003aa 100644 --- a/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java +++ b/src/main/java/com/zy/asrs/task/handler/WorkMastHandler.java @@ -92,6 +92,8 @@ locDetl.sync(wrkDetl); locDetl.setLocNo(wrkMast.getLocNo()); // 搴撲綅鍙� locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺 + locDetl.setProddate(wrkDetl.getProddate());//鐢熶骇鏃ユ湡 + locDetl.setDeadline(wrkDetl.getDeadline());//鍒版湡鏃ユ湡 locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜 locDetl.setModiTime(now); locDetl.setAppeTime(now); @@ -203,6 +205,8 @@ locDetl.setAnfme(wrkDetl.getAnfme()); // 鏁伴噺 locDetl.setZpallet(wrkDetl.getZpallet()); // 鎵樼洏鏉$爜 locDetl.setModiTime(now); + locDetl.setProddate(wrkDetl.getProddate()); + locDetl.setDeadline(wrkDetl.getDeadline()); locDetl.setAppeTime(now); if (!locDetlService.insert(locDetl)) { exceptionHandle("骞舵澘鍏ュ簱 ===>> 鏂板搴撳瓨鏄庣粏澶辫触锛沎workNo={0}],[matnr={1}]", wrkMast.getWrkNo(), wrkDetl.getMatnr()); diff --git a/src/main/java/com/zy/common/model/DetlDto.java b/src/main/java/com/zy/common/model/DetlDto.java index d58542b..2058e7f 100644 --- a/src/main/java/com/zy/common/model/DetlDto.java +++ b/src/main/java/com/zy/common/model/DetlDto.java @@ -4,6 +4,7 @@ import com.zy.asrs.entity.OrderDetl; import lombok.Data; +import java.util.Date; import java.util.List; import java.util.Set; @@ -29,6 +30,12 @@ //閿�鍞鍗曡鍙� private String isoseq; + + //鐢熶骇鏃ユ湡 + private Date proddate; + + //鍒版湡鏃ユ湡 + private Date deadline; public DetlDto() { } @@ -56,6 +63,17 @@ this.csocode = csocode; this.isoseq = isoseq; this.containerCode = containerCode; + } + + public DetlDto(String matnr, String batch, Double anfme, String csocode, String isoseq, String containerCode, Date proddate, Date deadline) { + this.matnr = matnr; + this.batch = batch; + this.anfme = anfme; + this.csocode = csocode; + this.isoseq = isoseq; + this.containerCode = containerCode; + this.proddate = proddate; + this.deadline = deadline; } public DetlDto(String orderNo, String matnr, String batch, Double anfme, String csocode, String isoseq) { @@ -113,6 +131,7 @@ return null; } + public static void main(String[] args) { boolean a = Cools.eq("a", null); System.out.println(a); diff --git a/src/main/java/com/zy/common/model/LocDto.java b/src/main/java/com/zy/common/model/LocDto.java index 785eb50..9f70a46 100644 --- a/src/main/java/com/zy/common/model/LocDto.java +++ b/src/main/java/com/zy/common/model/LocDto.java @@ -3,6 +3,7 @@ import com.core.common.Cools; import lombok.Data; +import java.util.Date; import java.util.List; /** @@ -44,6 +45,9 @@ //鏂欑鐮� private String containerCode; + private Date proddate; + private Date deadline; + public LocDto() { } @@ -57,6 +61,18 @@ this.containerCode = containerCode; } + public LocDto(String locNo, Double anfme, String matnr, String batch, String csocode, String isoseq, String containerCode,Date proddate, Date deadline) { + this.locNo = locNo; + this.anfme = anfme; + this.matnr = matnr; + this.batch = batch; + this.csocode = csocode; + this.isoseq = isoseq; + this.containerCode = containerCode; + this.proddate = proddate; + this.deadline = deadline; + } + public LocDto(String locNo, String matnr, String batch, Double anfme) { this.locNo = locNo; this.matnr = matnr; diff --git a/src/main/java/com/zy/common/web/WcsController.java b/src/main/java/com/zy/common/web/WcsController.java index 3855940..2b79a7f 100644 --- a/src/main/java/com/zy/common/web/WcsController.java +++ b/src/main/java/com/zy/common/web/WcsController.java @@ -280,6 +280,8 @@ WrkDetl wrkDetl = new WrkDetl(); BeanUtils.copyProperties(waitPakin, wrkDetl); wrkDetl.setZpallet(barcode); + wrkDetl.setProddate(waitPakin.getProddate()); + wrkDetl.setDeadline(waitPakin.getDeadline()); wrkDetl.setWrkNo(wrkMast.getWrkNo()); wrkDetl.setIoTime(wrkMast.getIoTime()); wrkDetl.setAppeTime(now); diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index bde1d85..74c7ea8 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -1,5 +1,5 @@ server: - port: 8080 + port: 8081 servlet: context-path: /@pom.build.finalName@ diff --git a/src/main/webapp/static/js/agvLocDetl/locDetl.js b/src/main/webapp/static/js/agvLocDetl/locDetl.js index d408a1d..f1b970e 100644 --- a/src/main/webapp/static/js/agvLocDetl/locDetl.js +++ b/src/main/webapp/static/js/agvLocDetl/locDetl.js @@ -57,6 +57,8 @@ cols.push({field: 'modiUser$', align: 'center',title: '淇敼浜哄憳',hide: true} ,{field: 'modiTime$', align: 'center',title: '淇敼鏃堕棿'} ,{field: 'stockFreeze', align: 'center',title: '搴撳瓨鍐荤粨', templet: '#stockFreezeTpl'} + ,{field: 'proddate$', align: 'center',title: '鐢熶骇鏃ユ湡', hide:false} + ,{field: 'deadline$', align: 'center',title: '鍒版湡鏃ユ湡', hide:false} ) return cols; } @@ -79,7 +81,8 @@ page: true, limit: 20, where:{ - unreason: false + unreason: false, + expired: false }, limits: [20, 30, 50, 100, 200, 500], even: true, @@ -478,6 +481,28 @@ tableReload(false); }); + form.on('submit(expired)', function (data) { + pageCurr = 1; + + tableIns.reload({ + where: { + expired: true + }, + page: { + curr: pageCurr + }, + done: function (res, curr, count) { + + if (res.code === 403) { + top.location.href = baseUrl+"/"; + } + pageCurr=curr; + + limit(child); + } + }); + }); + //鏌ョ湅寮傚父鏁版嵁 form.on('submit(unreason)', function (data) { pageCurr = 1; @@ -539,7 +564,8 @@ function tableReload(child) { var searchData = { - unreason: false + unreason: false, + expired: false }; $.each($('#search-box [name]').serializeArray(), function() { searchData[this.name] = this.value; diff --git a/src/main/webapp/static/js/common.js b/src/main/webapp/static/js/common.js index cc817a0..9950aaf 100644 --- a/src/main/webapp/static/js/common.js +++ b/src/main/webapp/static/js/common.js @@ -246,6 +246,8 @@ ,{field: 'dsDate', align: 'center',title: '鍚敤鏃ユ湡', hide: true} ,{field: 'supp', align: 'center',title: '寤烘。浜�', hide: true} ,{field: 'dInvCreateDatetime', align: 'center',title: '寤烘。鏃ユ湡', hide: true} + ,{field: 'proddate$', align: 'center',title: '鐢熶骇鏃ユ湡', hide:false} + ,{field: 'deadline$', align: 'center',title: '鍒版湡鏃ユ湡', hide:false} // ,{field: 'specs', align: 'center',title: '瑙勬牸'} // ,{field: 'anfme', align: 'center',title: '鏁伴噺'} diff --git a/src/main/webapp/static/js/locDetl/locDetl.js b/src/main/webapp/static/js/locDetl/locDetl.js index 9999628..19bda12 100644 --- a/src/main/webapp/static/js/locDetl/locDetl.js +++ b/src/main/webapp/static/js/locDetl/locDetl.js @@ -20,7 +20,8 @@ ,{field: 'price', align: 'center',title: '杩涢」绋�', hide: true} ,{field: 'units', align: 'center',title: '閿�椤圭◣', hide: true} ,{field: 'memo', align: 'center',title: '澶囨敞', hide: true} - + ,{field: 'proddate$', align: 'center',title: '鐢熶骇鏃ユ湡', hide:false} + ,{field: 'deadline$', align: 'center',title: '鍒版湡鏃ユ湡', hide:false} ]; // cols.push.apply(cols, detlCols); @@ -46,7 +47,8 @@ page: true, limit: 20, where:{ - unreason: false + unreason: false, + expired: false }, limits: [20, 30, 50, 100, 200, 500], even: true, @@ -479,6 +481,28 @@ }); }); + form.on('submit(expired)', function (data) { + pageCurr = 1; + + tableIns.reload({ + where: { + expired: true + }, + page: { + curr: pageCurr + }, + done: function (res, curr, count) { + + if (res.code === 403) { + top.location.href = baseUrl+"/"; + } + pageCurr=curr; + + limit(child); + } + }); + }); + // 鏃堕棿閫夋嫨鍣� layDate.render({ elem: '#modiTime\\$', @@ -512,7 +536,8 @@ function tableReload(child) { var searchData = { - unreason: false + unreason: false, + expired: false }; $.each($('#search-box [name]').serializeArray(), function() { searchData[this.name] = this.value; diff --git a/src/main/webapp/static/js/locDetlStatis/locDetlStatis.js b/src/main/webapp/static/js/locDetlStatis/locDetlStatis.js index 9e80d36..c4fb55e 100644 --- a/src/main/webapp/static/js/locDetlStatis/locDetlStatis.js +++ b/src/main/webapp/static/js/locDetlStatis/locDetlStatis.js @@ -10,6 +10,9 @@ arrRemove(detlCols, "field", "threeCode"); arrRemove(detlCols, "field", "deadTime"); arrRemove(detlCols, "field", "batch"); + arrRemove(detlCols, "field", "proddate"); + arrRemove(detlCols, "field", "deadline"); + cols.push.apply(cols, detlCols); // cols.push({field: 'anfme', align: 'center',title: '鏁伴噺', style: 'font-weight: bold'} // ) diff --git a/src/main/webapp/static/js/orderDetl/orderDetl.js b/src/main/webapp/static/js/orderDetl/orderDetl.js index b6e3708..782a4d7 100644 --- a/src/main/webapp/static/js/orderDetl/orderDetl.js +++ b/src/main/webapp/static/js/orderDetl/orderDetl.js @@ -44,6 +44,8 @@ ,{field: 'updateBy$', align: 'center',title: '淇敼浜哄憳'} ,{field: 'updateTime$', align: 'center',title: '淇敼鏃堕棿'} ,{field: 'memo', align: 'center',title: '澶囨敞'} + ,{field: 'proddate$', align: 'center',title: '鐢熶骇鏃ユ湡', hide:false} + ,{field: 'deadline$', align: 'center',title: '鍒版湡鏃ユ湡', hide:false} ,{fixed: 'right', title:'鎿嶄綔', align: 'center', toolbar: '#operate', width:120} ]], diff --git a/src/main/webapp/static/js/waitPakin/waitPakin.js b/src/main/webapp/static/js/waitPakin/waitPakin.js index 35600fd..a791d85 100644 --- a/src/main/webapp/static/js/waitPakin/waitPakin.js +++ b/src/main/webapp/static/js/waitPakin/waitPakin.js @@ -15,7 +15,9 @@ return html; }} ,{field: 'modiUser$', align: 'center',title: '淇敼浜哄憳', hide:true} - ,{field: 'modiTime$', align: 'center',title: '淇敼鏃堕棿', hide:true}) + ,{field: 'modiTime$', align: 'center',title: '淇敼鏃堕棿', hide:true} + + ) return cols; } diff --git a/src/main/webapp/static/js/waitPakinLog/waitPakinLog.js b/src/main/webapp/static/js/waitPakinLog/waitPakinLog.js index 54fc129..8e3c832 100644 --- a/src/main/webapp/static/js/waitPakinLog/waitPakinLog.js +++ b/src/main/webapp/static/js/waitPakinLog/waitPakinLog.js @@ -14,9 +14,7 @@ if(row.ioStatus === 'Y'){html += " checked ";} html += ">"; return html; - }} - ,{field: 'modiUser$', align: 'center',title: '淇敼浜哄憳', hide:true} - ,{field: 'modiTime$', align: 'center',title: '淇敼鏃堕棿', hide:true}) + }}) return cols; } layui.use(['table','laydate', 'form'], function(){ diff --git a/src/main/webapp/views/agvLocDetl/locDetl.html b/src/main/webapp/views/agvLocDetl/locDetl.html index 2d4401d..1cb0541 100644 --- a/src/main/webapp/views/agvLocDetl/locDetl.html +++ b/src/main/webapp/views/agvLocDetl/locDetl.html @@ -47,6 +47,7 @@ <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> <button id="unreason" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="unreason">鏌ョ湅寮傚父鏁版嵁</button> + <button id="expired" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="expired">鏌ョ湅瓒呮湡鏁版嵁</button> </div> </div> diff --git a/src/main/webapp/views/locDetl/locDetl.html b/src/main/webapp/views/locDetl/locDetl.html index 83ed293..b9f625e 100644 --- a/src/main/webapp/views/locDetl/locDetl.html +++ b/src/main/webapp/views/locDetl/locDetl.html @@ -46,6 +46,8 @@ <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> <button id="unreason" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="unreason">鏌ョ湅寮傚父鏁版嵁</button> + <button id="expired" class="layui-btn layui-btn-primary layui-btn-radius" lay-submit lay-filter="expired">鏌ョ湅瓒呮湡鏁版嵁</button> + </div> </div> -- Gitblit v1.9.1