From 054e8e34d07b8372f43866ae0e18f8871df992aa Mon Sep 17 00:00:00 2001 From: LSH Date: 星期一, 13 十一月 2023 13:16:19 +0800 Subject: [PATCH] # --- src/main/resources/mapper/OrderDetlMapper.xml | 1 src/main/java/com/zy/asrs/entity/OrderDetl.java | 12 ++++ src/main/webapp/static/js/order/order.js | 2 src/main/java/com/zy/common/model/LocDto.java | 9 +++ src/main/java/com/zy/asrs/controller/OutController.java | 101 +++++++++++++++++++++++++++++++-- src/main/java/com/zy/asrs/entity/Order.java | 9 +++ src/main/webapp/views/order/order.html | 2 7 files changed, 127 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/zy/asrs/controller/OutController.java b/src/main/java/com/zy/asrs/controller/OutController.java index 1b41343..56c2cfe 100644 --- a/src/main/java/com/zy/asrs/controller/OutController.java +++ b/src/main/java/com/zy/asrs/controller/OutController.java @@ -1,17 +1,14 @@ package com.zy.asrs.controller; import com.core.annotations.ManagerAuth; -import com.core.common.BaseRes; -import com.core.common.Cools; -import com.core.common.R; -import com.zy.asrs.entity.BasDevp; -import com.zy.asrs.entity.LocDetl; -import com.zy.asrs.entity.Order; -import com.zy.asrs.entity.OrderDetl; +import com.core.common.*; +import com.core.exception.CoolException; +import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.StockOutParam; import com.zy.asrs.service.*; import com.zy.asrs.service.impl.WorkServiceImpl; import com.zy.asrs.utils.OutboundAllocationUtil; +import com.zy.common.model.DetlDto; import com.zy.common.model.LocDto; import com.zy.common.model.TaskDto; import com.zy.common.web.BaseController; @@ -45,6 +42,12 @@ private WorkService workService; @Autowired private BasDevpService basDevpService; + @Autowired + private DocTypeService docTypeService; + @Autowired + private SnowflakeIdWorker snowflakeIdWorker; + @Autowired + private MatService matService; @PostMapping("/out/pakout/orderDetlIds/auth") @@ -69,6 +72,7 @@ LocDto locDto = new LocDto(orderDetl.getManu(), orderDetl.getMatnr(), orderDetl.getMaktx(),orderDetl.getModel(),orderDetl.getSpecs(), orderDetl.getBatch(),orderDetl.getBrand(),orderDetl.getBarcode(), orderDetl.getOrderNo(),orderDetl.getAnfme()); locDto.setOrderDetlId(orderDetl.getId()); + locDto.setTkType(orderDetl.getTkType()); locDtos.add(locDto); } @@ -119,6 +123,7 @@ LocDto locDto = new LocDto(orderDetl.getManu(), orderDetl.getMatnr(), orderDetl.getMaktx(),orderDetl.getModel(),orderDetl.getSpecs(), orderDetl.getBatch(),orderDetl.getBrand(),orderDetl.getBarcode(), orderDetl.getOrderNo(),orderDetl.getAnfme()); locDto.setOrderDetlId(orderDetl.getId()); + locDto.setTkType(orderDetl.getTkType()); locDtos.add(locDto); } } @@ -205,7 +210,87 @@ @PostMapping("/out/refund/loc/auth") @ManagerAuth(memo = "璁㈠崟鍑哄簱") public synchronized R refundLoc(@RequestBody List<LocDto> locDtos) throws InterruptedException { - System.out.println(locDtos); + Long userId = getUserId(); + DocType docType = docTypeService.selectOrAdd("閫�璐у叆搴撳崟", Boolean.TRUE); + Date now = new Date(); + long nowOrderNo = System.currentTimeMillis(); + Order order = new Order( + String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖] + "TK"+nowOrderNo, // 璁㈠崟缂栧彿 + DateUtils.convert(now), // 鍗曟嵁鏃ユ湡 + docType.getDocId(), // 鍗曟嵁绫诲瀷 + null, // 椤圭洰缂栧彿 + null, // + null, // 璋冩嫧椤圭洰缂栧彿 + null, // 鍒濆绁ㄦ嵁鍙� + null, // 绁ㄦ嵁鍙� + null, // 瀹㈡埛缂栧彿 + null, // 瀹㈡埛 + null, // 鑱旂郴鏂瑰紡 + null, // 鎿嶄綔浜哄憳 + null, // 鍚堣閲戦 + null, // 浼樻儬鐜� + null, // 浼樻儬閲戦 + null, // 閿�鍞垨閲囪喘璐圭敤鍚堣 + null, // 瀹炰粯閲戦 + null, // 浠樻绫诲瀷 + null, // 涓氬姟鍛� + null, // 缁撶畻澶╂暟 + null, // 閭垂鏀粯绫诲瀷 + null, // 閭垂 + null, // 浠樻鏃堕棿 + null, // 鍙戣揣鏃堕棿 + null, // 鐗╂祦鍚嶇О + null, // 鐗╂祦鍗曞彿 +// 2L, // 璁㈠崟鐘舵�� + 1L, // 璁㈠崟鐘舵�� + 1, // 鐘舵�� + userId, // 娣诲姞浜哄憳 + now, // 娣诲姞鏃堕棿 + userId, // 淇敼浜哄憳 + now, // 淇敼鏃堕棿 + null // 澶囨敞 + ); + if (!orderService.insert(order)) { + throw new CoolException("淇濆瓨璁㈠崟涓绘。澶辫触"); + } + // 鍗曟嵁鏄庣粏妗� + int i=0; + for (LocDto locDto : locDtos) { + i++; + Mat mat = matService.selectByMatnr(locDto.getMatnr()); + if (Cools.isEmpty(mat)) { + throw new CoolException(locDto.getMatnr() + "鐗╂枡缂栫爜妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); + } + OrderDetl orderDetl = new OrderDetl(); + orderDetl.sync(mat); + orderDetl.setSuppCode(String.valueOf(i)); // 琛屽彿 + orderDetl.setManu(locDto.getLocNo()); //搴撲綅鍙� + orderDetl.setBatch(locDto.getBatch()); //鏈ㄧ缂栫爜 + orderDetl.setAnfme(locDto.getAnfme());//鍑哄簱鏁伴噺 + orderDetl.setModel(locDto.getModel());//鎵规 + orderDetl.setSpecs(locDto.getSpecs());//瑙勬牸 + orderDetl.setBrand(locDto.getBrand());//鏈ㄧ绫诲瀷 + orderDetl.setBarcode(locDto.getZpallet());//鏈ㄧ绫诲瀷 +// orderDetl.setWorkQty(locDetl.getAnfme()); + orderDetl.setWorkQty(0.0); + orderDetl.setOrderId(order.getId()); + orderDetl.setOrderNo(order.getOrderNo()); + orderDetl.setCreateBy(userId); + orderDetl.setCreateTime(now); + orderDetl.setUpdateBy(userId); + orderDetl.setUpdateTime(now); + orderDetl.setStatus(1); + orderDetl.setQty(0.0D); + if (!orderDetlService.insert(orderDetl)) { + throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); + } + + OrderDetl orderDetl1 = orderDetlService.selectById(locDto.getOrderDetlId()); + orderDetl1.setTkType(1); + orderDetlService.updateById(orderDetl1); + + } return R.ok(); } diff --git a/src/main/java/com/zy/asrs/entity/Order.java b/src/main/java/com/zy/asrs/entity/Order.java index 99abc64..3f535cb 100644 --- a/src/main/java/com/zy/asrs/entity/Order.java +++ b/src/main/java/com/zy/asrs/entity/Order.java @@ -437,5 +437,14 @@ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); } + public String getTkType(){ + DocTypeService service = SpringUtils.getBean(DocTypeService.class); + DocType docType = service.selectById(this.docType); + if (!Cools.isEmpty(docType)){ + return docType.getPakout().toString(); + } + return "0"; + } + } diff --git a/src/main/java/com/zy/asrs/entity/OrderDetl.java b/src/main/java/com/zy/asrs/entity/OrderDetl.java index f617ed9..6c1ba9c 100644 --- a/src/main/java/com/zy/asrs/entity/OrderDetl.java +++ b/src/main/java/com/zy/asrs/entity/OrderDetl.java @@ -295,6 +295,10 @@ @ApiModelProperty(value= "澶囨敞") private String memo; + @ApiModelProperty(value = "閫�搴撴爣璁�") + @TableField("tk_type") + private Integer tkType; + 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) { @@ -395,6 +399,14 @@ } } + public String getTkType$(){ + if (null == this.tkType) return "姝e父"; + if (this.tkType == 1) { + return "閫�搴�"; + } + return "姝e父"; + } + public String getDanger$(){ if (null == this.danger){ return null; } switch (this.danger){ diff --git a/src/main/java/com/zy/common/model/LocDto.java b/src/main/java/com/zy/common/model/LocDto.java index 16ebfaf..0677895 100644 --- a/src/main/java/com/zy/common/model/LocDto.java +++ b/src/main/java/com/zy/common/model/LocDto.java @@ -39,6 +39,7 @@ private List<Integer> staNos; private Integer staNo; + private Integer tkType; public LocDto() { } @@ -102,4 +103,12 @@ this.count=anfme; } + public String getTkType$(){ + if (null == this.tkType) return "姝e父"; + if (this.tkType == 1) { + return "閫�搴�"; + } + return "姝e父"; + } + } diff --git a/src/main/resources/mapper/OrderDetlMapper.xml b/src/main/resources/mapper/OrderDetlMapper.xml index 74ebaf0..a46edda 100644 --- a/src/main/resources/mapper/OrderDetlMapper.xml +++ b/src/main/resources/mapper/OrderDetlMapper.xml @@ -45,6 +45,7 @@ <result column="update_by" property="updateBy" /> <result column="update_time" property="updateTime" /> <result column="memo" property="memo" /> + <result column="tk_type" property="tkType" /> </resultMap> diff --git a/src/main/webapp/static/js/order/order.js b/src/main/webapp/static/js/order/order.js index f8e4e03..f7e8888 100644 --- a/src/main/webapp/static/js/order/order.js +++ b/src/main/webapp/static/js/order/order.js @@ -49,6 +49,7 @@ {type: 'numbers'}, {field: 'orderNo', title: '鍗曟嵁缂栧彿', templet: '#orderNoTpl'}, {field: 'docType$', align: 'center', title: '绫诲瀷', minWidth: 160, width: 160}, + {field: 'tkType', align: 'center', title: 'TK', minWidth: 160, width: 160,hide: true}, {align: 'center', title: '鏄庣粏', toolbar: '#tbLook', minWidth: 160, width: 160}, {field: 'createTime$', title: '鍒涘缓鏃堕棿', minWidth: 200, width: 200}, {field: 'settle$', align: 'center', title: '鐘舵��', templet: '#settleTpl', minWidth: 160, width: 160}, @@ -604,6 +605,7 @@ {field: 'anfme', title: '鏈ㄧ涓摐绠旀暟閲�', align: 'center', width: 90, style: 'font-weight: bold'}, {field: 'count', title: '鏈ㄧ涓摐绠旀暟閲�', align: 'center', width: 90, style: 'font-weight: bold'}, {field: 'locNo', title: '璐т綅', align: 'center', width: 100, templet: '#locNoTpl'}, + {field: 'tkType$', title: 'TK鏍囪', align: 'center', width: 100}, // {field: 'staNos', align: 'center', title: '鍑哄簱绔�', merge: ['locNo'], templet: '#tbBasicTbStaNos'}, // {type: 'checkbox', merge: ['locNo']}, ]], diff --git a/src/main/webapp/views/order/order.html b/src/main/webapp/views/order/order.html index c88b3e0..b7f44b2 100644 --- a/src/main/webapp/views/order/order.html +++ b/src/main/webapp/views/order/order.html @@ -106,7 +106,7 @@ <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="labelUp">涓婁紶鏍囩</a> <a class="layui-btn layui-btn-primary layui-border-blue layui-btn-xs btn-complete" lay-event="complete">瀹岀粨</a> {{# } }} - {{# if (d.settle == 4) { }} + {{# if (d.settle == 4 && d.tkType=='1') { }} <a class="layui-btn layui-btn-danger layui-btn-xs btn-delete" lay-event="refundLoc">閫�搴�</a> {{# } }} </script> -- Gitblit v1.9.1