From a3917dfa5f40fb653046a03ea2acde81992f554e Mon Sep 17 00:00:00 2001 From: skyouc Date: 星期三, 02 四月 2025 16:10:25 +0800 Subject: [PATCH] no message --- rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java | 159 ++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 150 insertions(+), 9 deletions(-) diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java index ec32e23..ed48bfb 100644 --- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java +++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/MobileServiceImpl.java @@ -4,8 +4,12 @@ import com.vincent.rsf.framework.common.Cools; import com.vincent.rsf.framework.common.R; import com.vincent.rsf.framework.exception.CoolException; +import com.vincent.rsf.server.api.controller.params.CheckObjParams; import com.vincent.rsf.server.api.controller.params.OtherReceiptParams; import com.vincent.rsf.server.api.controller.params.ReceiptParams; +import com.vincent.rsf.server.api.entity.dto.CheckObjDto; +import com.vincent.rsf.server.api.entity.dto.InspectDetlDto; +import com.vincent.rsf.server.api.entity.dto.InspectItemDto; import com.vincent.rsf.server.api.entity.dto.ReceiptDetlsDto; import com.vincent.rsf.server.api.entity.enums.OrderWorkType; import com.vincent.rsf.server.api.service.MobileService; @@ -14,6 +18,7 @@ import com.vincent.rsf.server.common.security.JwtSubject; import com.vincent.rsf.server.common.utils.CommonUtil; import com.vincent.rsf.server.common.utils.JwtUtil; +import com.vincent.rsf.server.manager.controller.params.IsptItemsParams; import com.vincent.rsf.server.manager.controller.params.WaitPakinParam; import com.vincent.rsf.server.manager.entity.*; import com.vincent.rsf.server.manager.mapper.*; @@ -70,18 +75,22 @@ private WarehouseAreasService warehouseAreasService; @Resource private AsnOrderItemMapper asnOrderItemMapper; - @Resource - private AsnOrderMapper asnOrderMapper; + @Autowired + private AsnOrderService asnOrderMapper; @Resource private MatnrMapper matnrMapper; @Resource private QlyInspectMapper qlyInspectMapper; + @Autowired + private QlyIsptItemService qlyIsptItemService; @Resource private StockItemMapper stockItemMapper; @Resource private PurchaseItemMapper purchaseItemMapper; @Resource private FieldsMapper fieldsMapper; + @Autowired + private IsptHistoriesMapper isptHistoriesMapper; @Autowired private AsnOrderLogService asnOrderLogService; @@ -188,14 +197,14 @@ String asnCode = receipts.stream().findFirst().get().getAsnCode(); - AsnOrder asnOrder = asnOrderMapper.selectOne(new LambdaQueryWrapper<AsnOrder>() + AsnOrder asnOrder = asnOrderMapper.getOne(new LambdaQueryWrapper<AsnOrder>() .eq(AsnOrder::getCode, asnCode)); if (Objects.isNull(asnOrder)) { throw new CoolException("鏁版嵁閿欒锛氫富鍗曚笉瀛樺湪锛侊紒"); } asnOrder.setQty(receiptQty); - if (asnOrderMapper.updateById(asnOrder) < 1) { + if (!asnOrderMapper.updateById(asnOrder)) { throw new CoolException("宸叉敹璐ф暟閲忎慨鏀瑰け璐ワ紒锛�"); } @@ -216,6 +225,9 @@ .eq(AsnOrderItem::getMatnrId, dto.getMatnrId())); if (Objects.isNull(orderItem)) { throw new CoolException("閫氱煡鍗曟槑缁嗕笉瀛樺湪锛侊紒"); + } + if (Objects.isNull(dto.getReceiptQty()) || Double.compare(dto.getReceiptQty(), 0.0) == 0) { + throw new CoolException("鏀惰揣鏁伴噺涓嶈兘涓洪浂锛侊紒"); } orderItem.setQty(dto.getReceiptQty()) .setProdTime(dto.getProdTime()); @@ -305,7 +317,7 @@ * @time 2025/3/19 19:53 */ private void operateOrderLogs(AsnOrder asnOrder) { - if (asnOrderMapper.deleteById(asnOrder.getId()) < 1) { + if (!asnOrderMapper.removeById(asnOrder.getId())) { throw new CoolException("鍘熷崟鎹垹闄ゅけ璐ワ紒锛�"); } @@ -367,7 +379,7 @@ */ @Override public List<AsnOrder> getAllAsnOrders() { - List<AsnOrder> asnOrders = asnOrderMapper.selectList(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getWkType, OrderWorkType.ORDER_PURCHASE_IN.type)); + List<AsnOrder> asnOrders = asnOrderMapper.list(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getWkType, OrderWorkType.ORDER_PURCHASE_IN.type)); return asnOrders; } @@ -414,8 +426,136 @@ @Override public WaitPakin unBind(WaitPakinParam param) { - return waitPakinService.unBind(param); + } + + /** + * 鎶ユ鍔熻兘 + * @param code + * @param loginUserId + * @return + */ + @Override + public R inspect(String code, Long loginUserId) { + AsnOrder asnOrders = asnOrderMapper.getOne(new LambdaQueryWrapper<AsnOrder>().eq(AsnOrder::getCode, code)); + if (Objects.isNull(asnOrders)) { + throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�"); + } + InspectDetlDto detlDto = new InspectDetlDto(); + detlDto.setCode(asnOrders.getCode()).setId(asnOrders.getId()).setPoCode(asnOrders.getPoCode()); + List<AsnOrderItem> orderItems = asnOrderItemMapper.selectList(new LambdaQueryWrapper<AsnOrderItem>().eq(AsnOrderItem::getAsnCode, code)); + if (orderItems.isEmpty()) { + detlDto.setItems(new ArrayList<>()); + } else { + List<InspectItemDto> itemDtos = new ArrayList<>(); + orderItems.forEach(dto -> { + InspectItemDto itemDto = new InspectItemDto(); + if (!Objects.isNull(dto.getMatnrCode())) { + Matnr matnr = matnrMapper.selectOne(new LambdaQueryWrapper<Matnr>().eq(Matnr::getCode, dto.getMatnrCode())); + itemDto.setGroup(matnr.getGroupCode()); + } + itemDto.setMaktx(dto.getMaktx()) + .setMatnrCode(dto.getMatnrCode()) + .setPurUnit(dto.getPurUnit()) + .setSuplierCode(dto.getSplrCode()) + .setSuplierName(dto.getSplrName()) + .setPurQty(dto.getPurQty()); + itemDtos.add(itemDto); + }); + detlDto.setItems(itemDtos); + } + + List<IsptHistories> histories = isptHistoriesMapper.selectList(new LambdaQueryWrapper<IsptHistories>().eq(IsptHistories::getAsnId, asnOrders.getId())); + detlDto.setHistories(histories); + return R.ok(detlDto); + } + + /** + * @author Ryan + * @description 鎻愪氦鎶ユ + * @param + * @return + * @time 2025/4/1 16:47 + */ + @Override + public R confirmIspt(String id) { + if (org.apache.commons.lang3.StringUtils.isBlank(id)) { + throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + AsnOrder asnOrder = asnOrderMapper.getById(id); + if (Objects.isNull(asnOrder)) { + throw new CoolException("鍗曟嵁涓嶅瓨鍦紒锛�"); + } + List<AsnOrder> orders = new ArrayList<>(); + orders.add(asnOrder); + if (asnOrderMapper.notifyInspect(orders)) { + return R.ok("涓婃姤鎴愬姛锛侊紒"); + }else { + return R.error("涓婃姤澶辫触锛侊紒"); + } + } + + /** + * 閫氳繃鐗╂枡锛岃川妫�鍗曡幏鍙栭渶瑕佽川妫�鍗曟嵁 + * @param params + * @return + */ + @Override + public R checkObjs(CheckObjParams params) { + if (Objects.isNull(params.getIsptCode())) { + throw new CoolException("璐ㄦ鍗曚笉鑳戒负绌�"); + } + if (Objects.isNull(params.getMatnrCode())) { + throw new CoolException("鐗╂枡缂栫爜涓嶈兘涓虹┖锛�"); + } + QlyInspect inspect = qlyInspectMapper.selectOne(new LambdaQueryWrapper<QlyInspect>().eq(QlyInspect::getCode, params.getIsptCode())); + if (Objects.isNull(inspect)) { + throw new CoolException("璐ㄦ鍗曟嵁涓嶅瓨鍦紒!"); + } + QlyIsptItem isptItem = qlyIsptItemService.getOne(new LambdaQueryWrapper<QlyIsptItem>() + .eq(QlyIsptItem::getMatnrCode, params.getMatnrCode()) + .eq(QlyIsptItem::getIspectId, inspect.getId())); + if (Objects.isNull(isptItem)) { + throw new CoolException("璐ㄦ鍗曟槑缁嗕笉瀛樺湪锛侊紒"); + } + + CheckObjDto objDto = new CheckObjDto(); + objDto.setIsptCode(inspect.getCode()) + .setAsnCode(inspect.getAsnCode()) + .setId(isptItem.getId()) + .setMatnrCode(isptItem.getMatnrCode()) + .setMaktx(isptItem.getMaktx()) + .setDisQty(isptItem.getDisQty()) + .setDlyQty(isptItem.getDlyQty()) + .setRcptQty(isptItem.getRcptQty()) + .setIsptResult(isptItem.getIsptResult()) + .setSplrBatch(isptItem.getSplrBatch()) + .setSplrName(isptItem.getSplrName()) + .setPicPath(isptItem.getPicPath()) + .setMemo(isptItem.getMemo()) + .setSafeQty(isptItem.getSafeQty()); + return R.ok(objDto); + } + + /** + * 蹇�熻川妫� + * @param params + * @return + */ + @Override + public R checkUpdate(QlyIsptItem params) { + if (Objects.isNull(params.getId())) { + throw new CoolException("鍙傛暟涓嶈兘涓虹┖锛侊紒"); + } + IsptItemsParams itemsParams = new IsptItemsParams(); + List<QlyIsptItem> items = new ArrayList<>(); + items.add(params); + itemsParams.setIsptItem(items).setType("0"); + if (qlyIsptItemService.batchUpdate(itemsParams)) { + return R.ok(); + } else { + return R.error("淇濆瓨澶辫触锛侊紒"); + } } /** @@ -428,7 +568,8 @@ detlsDto.setAsnCode(asnOrderItem.getAsnCode()) .setMaktx(asnOrderItem.getMaktx()) - .setBarcode(asnOrderItem.getBarcode()) + .setBarcode(asnOrderItem.getTrackCode()) + .setQty(asnOrderItem.getQty()) .setPoCode(asnOrderItem.getPoCode()) .setAnfme(asnOrderItem.getAnfme()) .setPurQty(asnOrderItem.getPurQty()) @@ -443,7 +584,7 @@ .setMatnrId(matnr.getId()) .setStockUnit(matnr.getStockUnit()); QlyInspect inspect = qlyInspectMapper.selectOne(new LambdaQueryWrapper<QlyInspect>() - .eq(QlyInspect::getAsnItemId, asnOrderItem.getId())); + .eq(QlyInspect::getAsnId, asnOrderItem.getAsnId())); if (!Objects.isNull(inspect)) { //set 璐ㄦ缁撴灉 detlsDto.setInspect(inspect.getStatus$()); -- Gitblit v1.9.1