From 901b2ab3e0e7c592602848cfa256f34c5b0c7bb8 Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期四, 11 一月 2024 09:57:01 +0800 Subject: [PATCH] # --- zy-asrs-common/src/main/java/com/zy/asrs/common/openapi/service/impl/ApiServiceImpl.java | 156 +++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 117 insertions(+), 39 deletions(-) diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/openapi/service/impl/ApiServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/openapi/service/impl/ApiServiceImpl.java index 276473f..a481329 100644 --- a/zy-asrs-common/src/main/java/com/zy/asrs/common/openapi/service/impl/ApiServiceImpl.java +++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/openapi/service/impl/ApiServiceImpl.java @@ -3,9 +3,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.asrs.common.domain.dto.DetlDto; import com.zy.asrs.common.openapi.entity.dto.OrderListDto; -import com.zy.asrs.common.openapi.entity.param.GenerateOrderPakInParam; -import com.zy.asrs.common.openapi.entity.param.GenerateOrderPakOutParam; -import com.zy.asrs.common.openapi.entity.param.OrderListParam; +import com.zy.asrs.common.openapi.entity.param.*; import com.zy.asrs.common.openapi.service.ApiService; import com.zy.asrs.common.wms.entity.*; import com.zy.asrs.common.wms.service.*; @@ -15,6 +13,7 @@ import com.zy.asrs.framework.exception.CoolException; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.Date; @@ -35,6 +34,8 @@ private MatService matService; @Autowired private OrderSettleService orderSettleService; + @Autowired + private TagService tagService; @Override public void generateOrderPakIn(GenerateOrderPakInParam param) { @@ -88,28 +89,16 @@ if (!orderService.save(order)) { throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"); } - // 鍗曟嵁鏄庣粏妗� - List<DetlDto> list = new ArrayList<>(); - List<DetlDto> orderDetails = param.getOrderDetails(); - for (DetlDto detail : orderDetails) { - DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getAnfme()); - if (DetlDto.has(list, dto)) { - DetlDto detlDto = DetlDto.find(list, dto.getMatnr(), dto.getBatch()); - assert detlDto != null; - detlDto.setAnfme(detlDto.getAnfme() + detail.getAnfme()); - } else { - list.add(dto); - } - } - for (DetlDto detlDto : list) { - Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, detlDto.getMatnr()).eq(Mat::getHostId, param.getHostId())); + List<GenerateOrderMatParam> mats = param.getMats(); + for (GenerateOrderMatParam matParam : mats) { + Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, matParam.getMatnr()).eq(Mat::getHostId, param.getHostId())); if (Cools.isEmpty(mat)) { - throw new CoolException(detlDto.getMatnr() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); + throw new CoolException(matParam.getMatnr() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); } OrderDetl orderDetl = new OrderDetl(); orderDetl.sync(mat); - orderDetl.setBatch(detlDto.getBatch()); - orderDetl.setAnfme(detlDto.getAnfme()); + orderDetl.setBatch(matParam.getBatch()); + orderDetl.setAnfme(matParam.getAnfme()); orderDetl.setOrderId(order.getId()); orderDetl.setOrderNo(order.getOrderNo()); orderDetl.setCreateBy(9527L); @@ -180,28 +169,16 @@ if (!orderService.save(order)) { throw new CoolException("鐢熸垚鍗曟嵁涓绘。澶辫触锛岃鑱旂郴绠$悊鍛�"); } - // 鍗曟嵁鏄庣粏妗� - List<DetlDto> list = new ArrayList<>(); - List<DetlDto> orderDetails = param.getOrderDetails(); - for (DetlDto detail : orderDetails) { - DetlDto dto = new DetlDto(detail.getMatnr(), detail.getBatch(), detail.getAnfme()); - if (DetlDto.has(list, dto)) { - DetlDto detlDto = DetlDto.find(list, dto.getMatnr(), dto.getBatch()); - assert detlDto != null; - detlDto.setAnfme(detlDto.getAnfme() + detail.getAnfme()); - } else { - list.add(dto); - } - } - for (DetlDto detlDto : list) { - Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, detlDto.getMatnr()).eq(Mat::getHostId, param.getHostId())); + List<GenerateOrderMatParam> mats = param.getMats(); + for (GenerateOrderMatParam matParam : mats) { + Mat mat = matService.getOne(new LambdaQueryWrapper<Mat>().eq(Mat::getMatnr, matParam.getMatnr()).eq(Mat::getHostId, param.getHostId())); if (Cools.isEmpty(mat)) { - throw new CoolException(detlDto.getMatnr() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); + throw new CoolException(matParam.getMatnr() + "缂栧彿鍟嗗搧妫�绱㈠け璐ワ紝璇峰厛娣诲姞鍟嗗搧"); } OrderDetl orderDetl = new OrderDetl(); orderDetl.sync(mat); - orderDetl.setBatch(detlDto.getBatch()); - orderDetl.setAnfme(detlDto.getAnfme()); + orderDetl.setBatch(matParam.getBatch()); + orderDetl.setAnfme(matParam.getAnfme()); orderDetl.setOrderId(order.getId()); orderDetl.setOrderNo(order.getOrderNo()); orderDetl.setCreateBy(9527L); @@ -253,4 +230,105 @@ } return listDtos; } + + @Override + @Transactional + public int createMat(CreateMatParam param) { + int count = 0; + Long hostId = param.getHostId(); + for (MatParam matParam : param.getMats()) { + //鑾峰彇鍒嗙被 + Tag tag = tagService.getTag(matParam.getFirstTag(), matParam.getSecondTag(), hostId); + + matService.remove(new LambdaQueryWrapper<Mat>() + .eq(Mat::getMatnr, matParam.getMatnr()) + .eq(Mat::getHostId, hostId)); + Mat mat = new Mat(); + mat.setMatnr(matParam.getMatnr());//鐗╂枡鍙� + mat.setHostId(hostId);//浠撳簱ID + mat.setTagId(tag.getId());//鍒嗙被ID + if (!Cools.isEmpty(matParam.getMaktx())) { + mat.setMaktx(matParam.getMaktx()); + } + if (!Cools.isEmpty(matParam.getMaktx())) { + mat.setMaktx(matParam.getMaktx()); + } + if (!Cools.isEmpty(matParam.getName())) { + mat.setName(matParam.getName()); + } + if (!Cools.isEmpty(matParam.getSpecs())) { + mat.setSpecs(matParam.getSpecs()); + } + if (!Cools.isEmpty(matParam.getModel())) { + mat.setModel(matParam.getModel()); + } + if (!Cools.isEmpty(matParam.getColor())) { + mat.setColor(matParam.getColor()); + } + if (!Cools.isEmpty(matParam.getBrand())) { + mat.setBrand(matParam.getBrand()); + } + if (!Cools.isEmpty(matParam.getUnit())) { + mat.setUnit(matParam.getUnit()); + } + if (!Cools.isEmpty(matParam.getPrice())) { + mat.setPrice(matParam.getPrice()); + } + if (!Cools.isEmpty(matParam.getSku())) { + mat.setSku(matParam.getSku()); + } + if (!Cools.isEmpty(matParam.getUnits())) { + mat.setUnits(matParam.getUnits()); + } + if (!Cools.isEmpty(matParam.getBarcode())) { + mat.setBarcode(matParam.getBarcode()); + } + if (!Cools.isEmpty(matParam.getOrigin())) { + mat.setOrigin(matParam.getOrigin()); + } + if (!Cools.isEmpty(matParam.getManu())) { + mat.setManu(matParam.getManu()); + } + if (!Cools.isEmpty(matParam.getManuDate())) { + mat.setManuDate(matParam.getManuDate()); + } + if (!Cools.isEmpty(matParam.getItemNum())) { + mat.setItemNum(matParam.getItemNum()); + } + if (!Cools.isEmpty(matParam.getWeight())) { + mat.setWeight(matParam.getWeight()); + } + if (!Cools.isEmpty(matParam.getLength())) { + mat.setLength(matParam.getLength()); + } + if (!Cools.isEmpty(matParam.getVolume())) { + mat.setVolume(matParam.getVolume()); + } + if (!Cools.isEmpty(matParam.getThreeCode())) { + mat.setThreeCode(matParam.getThreeCode()); + } + if (!Cools.isEmpty(matParam.getSupp())) { + mat.setSupp(matParam.getSupp()); + } + if (!Cools.isEmpty(matParam.getSuppCode())) { + mat.setSuppCode(matParam.getSuppCode()); + } + if (!Cools.isEmpty(matParam.getDeadTime())) { + mat.setDeadTime(matParam.getDeadTime()); + } + if (!Cools.isEmpty(matParam.getMemo())) { + mat.setMemo(matParam.getMemo()); + } + if (!Cools.isEmpty(matParam.getStatus())) { + mat.setStatus(matParam.getStatus()); + }else { + mat.setStatus(1); + } + + if (matService.save(mat)) { + count++; + } + } + return count; + } } -- Gitblit v1.9.1