From 2b613ec7306bf62b6bebde76fe6b4cccc4fc64ff Mon Sep 17 00:00:00 2001 From: luxiaotao1123 <t1341870251@163.com> Date: 星期六, 13 六月 2020 15:02:12 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | 84 +++++++++++++++++++++++++++++++++++------- 1 files changed, 70 insertions(+), 14 deletions(-) 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 783dda8..7872863 100644 --- a/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java +++ b/src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java @@ -3,14 +3,21 @@ import com.core.common.BaseRes; import com.core.common.Cools; import com.core.exception.CoolException; +import com.zy.asrs.entity.BasDevp; +import com.zy.asrs.entity.LocMast; +import com.zy.asrs.entity.MatCodeCountDto; +import com.zy.asrs.entity.WrkMast; import com.zy.asrs.entity.param.FullStoreParam; -import com.zy.asrs.service.BasDevpService; -import com.zy.asrs.service.WorkService; -import com.zy.asrs.service.WrkMastService; +import com.zy.asrs.service.*; +import com.zy.common.model.StartupDto; import com.zy.common.service.CommonService; 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 @@ -24,16 +31,20 @@ private BasDevpService basDevpService; @Autowired private CommonService commonService; + @Autowired + private WrkDetlService wrkDetlService; + @Autowired + private LocMastService locMastService; @Override @Transactional - public void startupFullStore(FullStoreParam param) { + public void startupFullStore(FullStoreParam param, Long userId) { // 鍙傛暟闈炵┖鍒ゆ柇 if (Cools.isEmpty(param.getDevpNo(), param.getList())) { throw new CoolException(BaseRes.PARAM); } - // 绔欑偣鐘舵�佹娴� - basDevpService.checkSiteStatus(param.getDevpNo()); + // 婧愮珯鐐圭姸鎬佹娴� + BasDevp sourceStaNo = basDevpService.checkSiteStatus(param.getDevpNo()); // 鐢熸垚宸ヤ綔鍙� int workNo = commonService.getWorkNo(0); if (workNo == 0) { @@ -44,13 +55,58 @@ } } // 妫�绱㈠簱浣� - String locNo = commonService.getLocNo(1, param.getDevpNo()); - - -// if (staNo == null || staNo.get) - // 鑾峰彇鏈�鏂扮殑宸ヤ綔妗� -// WrkMast latestWrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().orderBy("appe_time")); - - + StartupDto dto = commonService.getLocNo(1, param.getDevpNo()); + // 鐢熸垚宸ヤ綔妗� + WrkMast wrkMast = new WrkMast(); + wrkMast.setWrkNo(workNo); + wrkMast.setIoTime(new Date()); + wrkMast.setWrkSts(1L); // 宸ヤ綔鐘舵�侊細鐢熸垚鍏ュ簱ID + wrkMast.setIoType(1); // 鍏ュ嚭搴撶姸鎬侊細1.鍏ュ簱 + wrkMast.setIoPri(10D); // 浼樺厛绾э細10 + wrkMast.setCrnNo(dto.getCrnNo()); + wrkMast.setSourceStaNo(dto.getSourceStaNo()); + wrkMast.setStaNo(dto.getStaNo()); + wrkMast.setLocNo(dto.getLocNo()); + wrkMast.setFullPlt("Y"); // 婊℃澘锛歒 + wrkMast.setPicking("N"); // 鎷f枡 + wrkMast.setExitMk("N"); // 閫�鍑� + wrkMast.setEmptyMk("N"); // 绌烘澘 + wrkMast.setLinkMis("N"); + wrkMast.setCtnType(sourceStaNo.getCtnType()); // 瀹瑰櫒绫诲瀷 + // 鎿嶄綔浜哄憳鏁版嵁 + wrkMast.setAppeUser(userId); + wrkMast.setAppeTime(new Date()); + wrkMast.setModiUser(userId); + wrkMast.setModiTime(new Date()); + boolean res = wrkMastService.insert(wrkMast); + if (!res) { + throw new CoolException("淇濆瓨宸ヤ綔妗eけ璐�"); + } + // 鐢熸垚宸ヤ綔妗f槑缁� + List<MatCodeCountDto> matDtos = new ArrayList<>(); + param.getList().forEach(elem -> { + matDtos.add(new MatCodeCountDto(elem.getMatNo(), elem.getCount())); + }); + wrkDetlService.createWorkDetail(workNo, matDtos, userId); + // 鏇存柊婧愮珯鐐逛俊鎭� + sourceStaNo.setWrkNo(workNo); + sourceStaNo.setModiUser(userId); + sourceStaNo.setModiTime(new Date()); + if (!basDevpService.updateById(sourceStaNo)){ + throw new CoolException("鏇存柊婧愮珯澶辫触"); + } + // 鏇存柊鐩爣搴撲綅鐘舵�� + LocMast locMast = locMastService.selectById(dto.getLocNo()); + if (locMast.getLocType().equals("O")){ + locMast.setLocType("S"); // S.鍏ュ簱棰勭害 + locMast.setModiUser(userId); + locMast.setModiTime(new Date()); + if (!locMastService.updateById(locMast)){ + throw new CoolException("鏀瑰彉搴撲綅鐘舵�佸け璐�"); + } + } else { + throw new CoolException(dto.getLocNo()+"鐩爣搴撲綅宸茶鍗犵敤"); + } } + } -- Gitblit v1.9.1