From 30fd349a0bdec5f88021161d20263c4bee5dba11 Mon Sep 17 00:00:00 2001 From: Junjie <540245094@qq.com> Date: 星期四, 28 十二月 2023 09:10:03 +0800 Subject: [PATCH] # --- zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 107 insertions(+), 1 deletions(-) diff --git a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java index dffe8f5..2872342 100644 --- a/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java +++ b/zy-asrs-common/src/main/java/com/zy/asrs/common/wms/service/impl/WorkServiceImpl.java @@ -1,8 +1,25 @@ package com.zy.asrs.common.wms.service.impl; -import com.zy.asrs.common.wms.service.WorkService; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.zy.asrs.common.domain.dto.DetlDto; +import com.zy.asrs.common.domain.dto.LocTypeDto; +import com.zy.asrs.common.domain.dto.StartupDto; +import com.zy.asrs.common.domain.param.FullStoreParam; +import com.zy.asrs.common.wms.entity.BasDevp; +import com.zy.asrs.common.wms.entity.LocMast; +import com.zy.asrs.common.wms.entity.WrkMast; +import com.zy.asrs.common.wms.service.*; +import com.zy.asrs.framework.common.BaseRes; +import com.zy.asrs.framework.common.Cools; +import com.zy.asrs.framework.exception.CoolException; import lombok.extern.slf4j.Slf4j; +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; +import java.util.List; /** * Created by vincent on 2020/6/11 @@ -11,4 +28,93 @@ @Service public class WorkServiceImpl implements WorkService { + // 搴撲綅鎺掑彿鍒嗛厤榛樿绫诲埆 + private static final int DEFAULT_ROW_NO_TYPE = 1; + + @Autowired + private BasDevpService basDevpService; + @Autowired + private CommonService commonService; + @Autowired + private WrkMastService wrkMastService; + @Autowired + private WrkDetlService wrkDetlService; + @Autowired + private LocMastService locMastService; + + @Override + @Transactional + public String startupFullPutStore(FullStoreParam param, Long userId) { + // 鍙傛暟闈炵┖鍒ゆ柇 + if (Cools.isEmpty(param.getDevpNo(), param.getList())) { + throw new CoolException(BaseRes.PARAM); + } + Date now = new Date(); +// // 婧愮珯鐐圭姸鎬佹娴� +// BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo(), true); +// // 妫�绱㈠簱浣� +// LocTypeDto locTypeDto = new LocTypeDto(sourceStaNo); + LocTypeDto locTypeDto = new LocTypeDto(); + StartupDto dto = commonService.getLocNo(DEFAULT_ROW_NO_TYPE, 1, param.getDevpNo(), null, locTypeDto, 0); + // 鐢熸垚宸ヤ綔鍙� + int workNo = dto.getWorkNo(); + // 鐢熸垚宸ヤ綔妗� + WrkMast wrkMast = new WrkMast(); + wrkMast.setWrkNo(workNo); + wrkMast.setIoTime(new Date()); +// wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID +// wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱 +// wrkMast.setIoPri(13D); // 浼樺厛绾э細13 +// wrkMast.setCrnNo(dto.getCrnNo()); +// wrkMast.setSourceStaNo(dto.getSourceStaNo()); +// wrkMast.setStaNo(dto.getStaNo()); +// wrkMast.setLocNo(dto.getLocNo()); +// wrkMast.setBarcode(param.getBarcode()); // 鎵樼洏鐮� +// wrkMast.setFullPlt("Y"); // 婊℃澘锛歒 +// wrkMast.setPicking("N"); // 鎷f枡 +// wrkMast.setExitMk("N"); // 閫�鍑� +// wrkMast.setEmptyMk("N"); // 绌烘澘 +// wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷 +// wrkMast.setAppeUser(String.valueOf(userId)); +// wrkMast.setAppeTime(now); +// wrkMast.setModiUser(String.valueOf(userId)); +// wrkMast.setModiTime(now); + if (!wrkMastService.save(wrkMast)) { + throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); + } + // 鐢熸垚宸ヤ綔妗f槑缁� + List<DetlDto> detlDtos = new ArrayList<>(); + param.getList().forEach(elem -> { + DetlDto detlDto = new DetlDto(elem.getMatnr(), elem.getBatch(), elem.getAnfme()); + if (DetlDto.has(detlDtos, detlDto)) { + DetlDto detlDto1 = DetlDto.find(detlDtos, detlDto.getMatnr(), detlDto.getBatch()); + assert detlDto1 != null; + detlDto1.setAnfme(detlDto1.getAnfme() + detlDto.getAnfme()); + } else { + detlDtos.add(detlDto); + } + }); +// wrkDetlService.createWorkDetail(workNo, detlDtos, param.getBarcode(), userId); +// // 鏇存柊婧愮珯鐐逛俊鎭� +// sourceStaNo.setWrkNo(workNo); +// sourceStaNo.setModiUser(userId); +// sourceStaNo.setModiTime(now); +// if (!basDevpService.updateById(sourceStaNo)){ +// throw new CoolException("鏇存柊婧愮珯澶辫触"); +// } +// // 鏇存柊鐩爣搴撲綅鐘舵�� +// LocMast locMast = locMastService.getOne(new LambdaQueryWrapper<LocMast>().eq(LocMast::getLocNo, dto.getLocNo())); +// if (locMast.getLocSts().equals("O")){ +// locMast.setLocSts("S"); // S.鍏ュ簱棰勭害 +// locMast.setModiUser(userId); +// locMast.setModiTime(now); +// if (!locMastService.updateById(locMast)){ +// throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�"); +// } +// } else { +// throw new CoolException(dto.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤"); +// } + return dto.getLocNo(); + } + } -- Gitblit v1.9.1