From 9dd23778d5b9a97da390abc4e6f785e60767acf4 Mon Sep 17 00:00:00 2001 From: lsh <lsh@163.com> Date: 星期六, 26 十月 2024 15:12:13 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/WorkService.java | 1 src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java | 7 + src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 103 +++++++++++++++++++++++++ src/main/webapp/static/js/orderGift/orderGift.js | 4 src/main/java/com/zy/asrs/entity/param/StockOutParam.java | 2 src/main/java/com/zy/asrs/entity/OrderDetlGift.java | 4 + src/main/java/com/zy/common/model/LocDto.java | 13 +++ src/main/webapp/views/orderGift/orderGift.html | 2 src/main/java/com/zy/asrs/utils/OrderGiftProofreadingExcelListener.java | 93 ++++------------------- src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java | 10 +- 10 files changed, 153 insertions(+), 86 deletions(-) diff --git a/src/main/java/com/zy/asrs/entity/OrderDetlGift.java b/src/main/java/com/zy/asrs/entity/OrderDetlGift.java index 81634be..86bef2b 100644 --- a/src/main/java/com/zy/asrs/entity/OrderDetlGift.java +++ b/src/main/java/com/zy/asrs/entity/OrderDetlGift.java @@ -8,6 +8,7 @@ import com.core.common.Cools; import com.core.common.SpringUtils; import com.zy.asrs.service.OrderService; +import com.zy.common.utils.Synchro; import com.zy.system.entity.User; import com.zy.system.service.UserService; import io.swagger.annotations.ApiModelProperty; @@ -484,5 +485,8 @@ return new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this.updateTime); } + public void sync(Object source) { + Synchro.Copy(source, this); + } } 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 19da3e8..ded467b 100644 --- a/src/main/java/com/zy/asrs/entity/param/StockOutParam.java +++ b/src/main/java/com/zy/asrs/entity/param/StockOutParam.java @@ -53,6 +53,8 @@ // 鏈ㄧ涓摐绠旀暟閲� private Double count; + private Double volume; + private Double price; private String color; public void setAnfme(Double anfme){ diff --git a/src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java b/src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java index a53f304..43e0330 100644 --- a/src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java +++ b/src/main/java/com/zy/asrs/entity/result/OrderGiftProofreadingVo.java @@ -18,18 +18,20 @@ @ExcelProperty(value = "鍗峰彿") private String model=""; @ExcelProperty(value = "闀垮害") - private String price=""; + private Double price; @ExcelProperty(value = "鍑�閲�") - private String weight=""; + private Double weight; @ExcelProperty(value = "姣涢噸") - private String volume=""; + private Double volume; + @ExcelProperty(value = "鎺ュご") + private String specs; @ExcelProperty(value = "澶囨敞") private String memo=""; public OrderGiftProofreadingVo() { } - public OrderGiftProofreadingVo(String orderNo, String matnr, String batch, String model, String price, String weight, String volume, String memo) { + public OrderGiftProofreadingVo(String orderNo, String matnr, String batch, String model, Double price, Double weight, Double volume, String memo) { this.orderNo = orderNo; this.matnr = matnr; this.batch = batch; diff --git a/src/main/java/com/zy/asrs/service/WorkService.java b/src/main/java/com/zy/asrs/service/WorkService.java index 4d9cc0e..4f892db 100644 --- a/src/main/java/com/zy/asrs/service/WorkService.java +++ b/src/main/java/com/zy/asrs/service/WorkService.java @@ -31,6 +31,7 @@ * 鍑哄簱浣滀笟 */ void startupFullTakeStoreOrder(StockOutParam param, Long userId); + void startupFullTakeStoreOrderGift(StockOutParam param, Long userId); /** * 鍑哄簱浣滀笟 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 c058ecc..ed93308 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -80,6 +80,10 @@ private SlaveProperties slaveProperties; @Autowired private WaitPakinService waitPakinService; + @Autowired + private OrderGiftService orderGiftService; + @Autowired + private OrderDetlGiftService orderDetlGiftService; @Override @Transactional @@ -286,6 +290,105 @@ } + @Override + @Transactional + public void startupFullTakeStoreOrderGift(StockOutParam param, Long userId) { + if (Cools.isEmpty(param) || Cools.isEmpty(param.getLocDetls())){ + throw new CoolException("鍙傛暟涓虹┖"); + } + if (Cools.isEmpty(param.getOrderNo())){ + throw new CoolException("璁㈠崟鍙峰弬鏁颁负绌�"); + } + DocType docType = docTypeService.selectOrAdd("鎵嬪姩鍑哄簱鍗�", Boolean.FALSE); + OrderGift order = orderGiftService.selectByNo(param.getOrderNo()); + if (Cools.isEmpty(order)){ + Date now = new Date(); + order = new OrderGift( + String.valueOf(snowflakeIdWorker.nextId()), // 缂栧彿[闈炵┖] + param.getOrderNo(), // 璁㈠崟缂栧彿 + 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 (!orderGiftService.insert(order)) { + throw new CoolException("淇濆瓨璁㈠崟涓绘。澶辫触"); + } + // 鍗曟嵁鏄庣粏妗� + List<DetlDto> list = new ArrayList<>(); + List<StockOutParam.LocDetl> locDetls = param.getLocDetls(); + int i=0; + for (StockOutParam.LocDetl locDetl : locDetls) { + i++; + Mat mat = matService.selectByMatnr(locDetl.getMatnr()); + if (Cools.isEmpty(mat)) { + throw new CoolException(locDetl.getMatnr() + "鐗╂枡缂栫爜妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); + } + OrderDetlGift orderDetl = new OrderDetlGift(); + orderDetl.sync(mat); + orderDetl.setSuppCode(String.valueOf(i)); // 琛屽彿 + orderDetl.setManu(locDetl.getLocNo()); //搴撲綅鍙� + orderDetl.setBatch(locDetl.getBatch()); //鏈ㄧ缂栫爜 + orderDetl.setAnfme(locDetl.getAnfme());//鍑哄簱鏁伴噺 + orderDetl.setModel(locDetl.getModel());//鎵规 + orderDetl.setSpecs(locDetl.getSpecs());//瑙勬牸 + orderDetl.setBrand(locDetl.getBrand());//鏈ㄧ绫诲瀷 + orderDetl.setBarcode(locDetl.getZpallet());//鏈ㄧ绫诲瀷 + orderDetl.setWeight(locDetl.getWeight()); + orderDetl.setVolume(locDetl.getVolume()); + orderDetl.setPrice(locDetl.getPrice()); +// orderDetl.setWorkQty(locDetl.getAnfme()); + orderDetl.setWorkQty(0.0); + orderDetl.setOrderId(order.getId()); + orderDetl.setOrderNo(order.getOrderNo()); + orderDetl.setOrigin(locDetl.getOrigin()); + orderDetl.setCreateBy(userId); + orderDetl.setCreateTime(now); + orderDetl.setUpdateBy(userId); + orderDetl.setUpdateTime(now); + orderDetl.setStatus(1); + orderDetl.setQty(0.0D); + orderDetl.setMemo(locDetl.getMemo()); + if (!orderDetlGiftService.insert(orderDetl)) { + throw new CoolException("鐢熸垚鍗曟嵁鏄庣粏澶辫触锛岃鑱旂郴绠$悊鍛�"); + } + } + + } else { + throw new CoolException("璁㈠崟鍙烽噸澶嶏紝璁㈠崟"+param.getOrderNo()+"宸插瓨鍦紒锛侊紒"); + } + + } + @Override @Transactional diff --git a/src/main/java/com/zy/asrs/utils/OrderGiftProofreadingExcelListener.java b/src/main/java/com/zy/asrs/utils/OrderGiftProofreadingExcelListener.java index 23a8ce0..a486f8a 100644 --- a/src/main/java/com/zy/asrs/utils/OrderGiftProofreadingExcelListener.java +++ b/src/main/java/com/zy/asrs/utils/OrderGiftProofreadingExcelListener.java @@ -4,19 +4,21 @@ import com.alibaba.excel.event.AnalysisEventListener; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.core.common.Cools; +import com.core.common.DateUtils; import com.core.common.SpringUtils; import com.core.exception.CoolException; -import com.zy.asrs.entity.LocDetl; -import com.zy.asrs.entity.LocMast; +import com.zy.asrs.entity.*; import com.zy.asrs.entity.param.StockOutParam; import com.zy.asrs.service.LocDetlService; import com.zy.asrs.service.LocMastService; import com.zy.asrs.service.WorkService; -import com.zy.common.entity.OutLocBoxExcel; +import com.zy.common.entity.OrderGiftProofreadingExcel; +import com.zy.common.model.DetlDto; import com.zy.common.model.LocDto; import lombok.extern.slf4j.Slf4j; import java.util.ArrayList; +import java.util.Date; import java.util.List; import java.util.Map; @@ -24,13 +26,12 @@ * Created by vincent on 2019-11-25 */ @Slf4j -public class OrderGiftProofreadingExcelListener extends AnalysisEventListener<OutLocBoxExcel> { +public class OrderGiftProofreadingExcelListener extends AnalysisEventListener<OrderGiftProofreadingExcel> { private int total = 0; private String orderOneNo = null; - private String cstmrName = null; private Long userId; - List<String[]> OutLocBoxCs = new ArrayList<>(); + List<OrderGiftProofreadingExcel> OrderGiftProofreadingCs = new ArrayList<>(); public OrderGiftProofreadingExcelListener() { } @@ -44,7 +45,7 @@ */ private static final int BATCH_COUNT = 50; - private final List<OutLocBoxExcel> list = new ArrayList<>(); + private final List<OrderGiftProofreadingExcel> list = new ArrayList<>(); /** * 杩欓噷浼氫竴琛岃鐨勮繑鍥炲ご @@ -57,11 +58,7 @@ * 杩欎釜姣忎竴鏉℃暟鎹В鏋愰兘浼氭潵璋冪敤 */ @Override - public void invoke(OutLocBoxExcel excel, AnalysisContext ctx) { - String batch = excel.getBatch(); - String orderNo = excel.getOrderNo(); -// String cstmrName = excel.getCstmrName(); - String memo = excel.getMemo(); + public void invoke(OrderGiftProofreadingExcel excel, AnalysisContext ctx) { if (Cools.isEmpty(orderOneNo)){ if (!Cools.isEmpty(excel.getOrderNo())){ orderOneNo = excel.getOrderNo(); @@ -69,19 +66,7 @@ throw new CoolException("璁㈠崟鍙峰弬鏁颁负绌�"); } } - if (Cools.isEmpty(cstmrName)){ - if (!Cools.isEmpty(excel.getCstmrName())){ - cstmrName = excel.getCstmrName(); - } else { - throw new CoolException("瀹㈡埛鍚嶇О鍙傛暟涓虹┖"); - } - } - String[] s=new String[4]; - s[0] = batch; - s[1] = orderOneNo; - s[2] = cstmrName; - s[3] = memo; - OutLocBoxCs.add(s); + OrderGiftProofreadingCs.add(excel); total++; } @@ -91,53 +76,11 @@ */ @Override public void doAfterAllAnalysed(AnalysisContext ctx) { - if (!Cools.isEmpty(OutLocBoxCs) && OutLocBoxCs.size() != 0) { - LocDetlService locDetlService = SpringUtils.getBean(LocDetlService.class); - LocMastService locMastService = SpringUtils.getBean(LocMastService.class); + if (!Cools.isEmpty(OrderGiftProofreadingCs) && !OrderGiftProofreadingCs.isEmpty()) { WorkService workService = SpringUtils.getBean(WorkService.class); List<LocDto> locDtos = new ArrayList<>(); - List<String[]> outLocBoxCList = new ArrayList<>(); - List<String> outLocBoxCNew = new ArrayList<>(); - for (String[] outLocBoxC:OutLocBoxCs){ - total--; - if (!outLocBoxCNew.contains(outLocBoxC[0])){ - LocDetl locDetlSou = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("batch", outLocBoxC[0])); - if (Cools.isEmpty(locDetlSou)){ - throw new CoolException("绠卞彿锛�"+outLocBoxC[0]+" 鏈煡璇㈠埌鏁版嵁锛侊紒锛�"); - } - LocMast locMast = locMastService.selectOne(new EntityWrapper<LocMast>().eq("loc_no", locDetlSou.getLocNo())); - if (Cools.isEmpty(locMast)){ - throw new CoolException("绠卞彿锛�"+outLocBoxC[0]+" 鎵�鍦ㄥ簱浣嶄笉婊¤冻鍑哄簱鏉′欢锛侊紒锛佹湭鏌ヨ鍒版绠卞彿鎵�鍦ㄥ簱浣�"); - } - if (!locMast.getLocSts().equals("F")){ - throw new CoolException("绠卞彿锛�"+outLocBoxC[0]+" 鎵�鍦ㄥ簱浣嶄笉婊¤冻鍑哄簱鏉′欢锛侊紒锛佸簱浣嶇姸鎬佷笉涓篎锛侊紒锛佸簱浣嶇姸鎬侊細"+locMast.getLocSts$()); - } - List<LocDetl> locDetls = locDetlService.selectList(new EntityWrapper<LocDetl>() - .eq("loc_no", locDetlSou.getLocNo()).eq("origin", locDetlSou.getOrigin())); - for (LocDetl locDetl:locDetls){ - total++; - String[] locDetlNow=new String[4]; - locDetlNow[0] = locDetl.getBatch(); - locDetlNow[1] = outLocBoxC[1]; - locDetlNow[2] = outLocBoxC[2]; - locDetlNow[3] = outLocBoxC[3]; - outLocBoxCList.add(locDetlNow); - outLocBoxCNew.add(outLocBoxC[0]); - } - } - } - for (String[] outLocBoxC:outLocBoxCList){ - LocDetl locDetl = locDetlService.selectOne(new EntityWrapper<LocDetl>().eq("batch", outLocBoxC[0])); - if (Cools.isEmpty(locDetl)){ - total--; - continue; - } -// LocDto locDto = new LocDto(locDetl.getManu(), locDetl.getMatnr(), locDetl.getMaktx(),locDetl.getModel(),locDetl.getSpecs(), -// locDetl.getBatch(),locDetl.getBrand(),locDetl.getBarcode(), outLocBoxC[1],locDetl.getAnfme()); -// locDto.setOrigin(locDetl.getOrigin()); -// locDto.setWeight(locDetl.getWeight()); - locDetl.setMemo(outLocBoxC[3]); - LocDto locDto = new LocDto(locDetl); + for (OrderGiftProofreadingExcel orderGiftProofreadingExcel:OrderGiftProofreadingCs){ + LocDto locDto = new LocDto(orderGiftProofreadingExcel); locDtos.add(locDto); } @@ -164,20 +107,18 @@ locDetl.setOrigin(locDto.getOrigin()); locDetl.setWeight(locDto.getWeight()); locDetl.setMemo(locDto.getMemo()); - + locDetl.setVolume(locDto.getVolume()); + locDetl.setPrice(locDto.getPrice()); locDetls.add(locDetl); } param.setLocDetls(locDetls); param.setOrderNo(orderOneNo); - param.setCstmrName(cstmrName); - if (total>0){ - workService.startupFullTakeStoreOrder(param,9999L); + workService.startupFullTakeStoreOrderGift(param,9999L); } - } - log.info("鍑哄簱{}鏉$鍙凤紒", total); + log.info("瀵煎叆{}鏉℃牳瀵瑰崟鎹槑缁嗭紒", total); } public int getTotal() { diff --git a/src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java b/src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java index 99b2ae8..5837c70 100644 --- a/src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java +++ b/src/main/java/com/zy/common/entity/OrderGiftProofreadingExcel.java @@ -18,9 +18,10 @@ private String matnr; private String batch; private String model; - private String price; - private String weight; - private String volume; + private Double price; + private Double weight; + private Double volume; + private String specs; private String memo; } diff --git a/src/main/java/com/zy/common/model/LocDto.java b/src/main/java/com/zy/common/model/LocDto.java index 33323bb..e10d679 100644 --- a/src/main/java/com/zy/common/model/LocDto.java +++ b/src/main/java/com/zy/common/model/LocDto.java @@ -2,6 +2,7 @@ import com.core.common.Cools; import com.zy.asrs.entity.LocDetl; +import com.zy.common.entity.OrderGiftProofreadingExcel; import lombok.Data; import java.util.List; @@ -51,6 +52,18 @@ public LocDto() { } + public LocDto(OrderGiftProofreadingExcel excel) { + this.matnr = excel.getMatnr(); + this.model = excel.getModel(); + this.orderNo = excel.getOrderNo(); + this.batch = excel.getBatch(); + this.memo = excel.getMemo(); + this.weight = excel.getWeight(); + this.volume = excel.getVolume(); + this.price = excel.getPrice(); + this.specs = excel.getSpecs(); + } + public LocDto(String locNo, String matnr, String batch, Double anfme) { this.locNo = locNo; this.matnr = matnr; diff --git a/src/main/webapp/static/js/orderGift/orderGift.js b/src/main/webapp/static/js/orderGift/orderGift.js index 69d6a12..4fa5d6b 100644 --- a/src/main/webapp/static/js/orderGift/orderGift.js +++ b/src/main/webapp/static/js/orderGift/orderGift.js @@ -1,5 +1,6 @@ var insTbCount = 0; var tableCache2 = []; +var admin; layui.config({ base: baseUrl + "/static/layui/lay/modules/" }).extend({ @@ -11,7 +12,7 @@ var table = layui.table; var util = layui.util; var upload = layui.upload; - var admin = layui.admin; + admin = layui.admin; var xmSelect = layui.xmSelect; var layDate = layui.laydate; var laytpl = layui.laytpl; @@ -891,7 +892,6 @@ // excel瀵煎叆 function importExcel() { - console.log("瀵煎叆") $("#importExcel").trigger("click"); } function upload(obj){ diff --git a/src/main/webapp/views/orderGift/orderGift.html b/src/main/webapp/views/orderGift/orderGift.html index 834f3f6..5e0142e 100644 --- a/src/main/webapp/views/orderGift/orderGift.html +++ b/src/main/webapp/views/orderGift/orderGift.html @@ -90,6 +90,7 @@ <table id="order" lay-filter="order"></table> </div> </div> + <span style="display: none"><input id="importExcel" type="file" onchange="upload(this)">鍚姩鍑哄簱</span> <div class="layui-card"> <div class="layui-card-body"> <!-- 鍏ュ簱閫氱煡鍗曪細鐢盓RP鎻愪緵鍗曟嵁缂栧彿銆佺被鍨嬨�佸崟鎹椂闂村強鐗╂枡鏄庣粏锛岀敓鎴愬叆搴撲綔涓氬崟锛屼负缁存姢绯荤粺楂樺彲鐢紝鐢ㄦ埛鍙嚜琛屾坊鍔犲叆搴撻�氱煡鍗曟暟鎹紝瀹屾垚鐙珛鐨勫叆搴撲綔涓氥��--> @@ -98,7 +99,6 @@ </div> </div> </div> - <div id="myModal" style="display: none"> <div style="padding: 10px"> <div class="layui-upload"> -- Gitblit v1.9.1