src/main/java/com/zy/asrs/controller/WorkController.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/BasDevpService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/WorkService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/WrkMastService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/main/java/com/zy/common/service/DoubleDeepService.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/main/java/com/zy/asrs/controller/WorkController.java
@@ -32,9 +32,8 @@ @RequestMapping("/full/store/start") @ManagerAuth(memo = "全板入库") public R start(@RequestBody FullStoreParam fullStoreParam) { System.out.println(JSON.toJSONString(fullStoreParam)); workService.startupFullStore(fullStoreParam); return R.ok(); } src/main/java/com/zy/asrs/service/BasDevpService.java
@@ -9,4 +9,6 @@ List<Integer> getAvailableDevp(); void checkSiteStatus(String devpNo); } src/main/java/com/zy/asrs/service/WorkService.java
@@ -1,4 +1,13 @@ package com.zy.asrs.service; import com.zy.asrs.entity.param.FullStoreParam; public interface WorkService { /** * 全板入库 * @param param */ void startupFullStore(FullStoreParam param); } src/main/java/com/zy/asrs/service/WrkMastService.java
@@ -5,4 +5,6 @@ public interface WrkMastService extends IService<WrkMast> { int getWorkingMast(String devpNo); } src/main/java/com/zy/asrs/service/impl/BasDevpServiceImpl.java
@@ -1,9 +1,12 @@ package com.zy.asrs.service.impl; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.core.exception.CoolException; import com.zy.asrs.entity.BasDevp; import com.zy.asrs.mapper.BasDevpMapper; import com.zy.asrs.service.BasDevpService; import com.zy.asrs.service.WrkMastService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; @@ -11,8 +14,31 @@ @Service("basDevpService") public class BasDevpServiceImpl extends ServiceImpl<BasDevpMapper, BasDevp> implements BasDevpService { @Autowired private WrkMastService wrkMastService; @Override public List<Integer> getAvailableDevp() { return this.baseMapper.getAvailableDevp(); } @Override public void checkSiteStatus(String devpNo) { BasDevp station = selectById(devpNo); if (station == null){ throw new CoolException("站点不存在"); } if(station.getAutoing()==null || !station.getAutoing().equals("Y")) { throw new CoolException("入库站点不是自动状态"); } if(station.getLoading()==null || !station.getLoading().equals("Y")) { throw new CoolException("入库站点无物"); } if(station.getWrkNo()>0) { throw new CoolException("入库站点已有工作号"); } if(wrkMastService.getWorkingMast(devpNo)>0){ throw new CoolException("同一站点不能同时生成两笔入库工作档"); } } } src/main/java/com/zy/asrs/service/impl/WorkServiceImpl.java
@@ -1,11 +1,50 @@ package com.zy.asrs.service.impl; import com.core.common.BaseRes; import com.core.common.Cools; import com.core.exception.CoolException; import com.zy.asrs.entity.param.FullStoreParam; import com.zy.asrs.service.BasDevpService; import com.zy.asrs.service.WorkService; import com.zy.asrs.service.WrkLastnoService; import com.zy.asrs.service.WrkMastService; import com.zy.common.service.DoubleDeepService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; /** * Created by vincent on 2020/6/11 */ @Service public class WorkServiceImpl implements WorkService { @Autowired private WrkMastService wrkMastService; @Autowired private BasDevpService basDevpService; @Autowired private DoubleDeepService doubleDeepService; @Autowired private WrkLastnoService wrkLastnoService; @Override @Transactional public void startupFullStore(FullStoreParam param) { // 参数非空判断 if (Cools.isEmpty(param.getDevpNo(), param.getList())) { throw new CoolException(BaseRes.PARAM); } // 站点状态检测 basDevpService.checkSiteStatus(param.getDevpNo()); // 生成工作号 int workNo = doubleDeepService.getWorkNo(wrkLastnoService.selectById(0)); // if (staNo == null || staNo.get) // 获取最新的工作档 // WrkMast latestWrkMast = wrkMastService.selectOne(new EntityWrapper<WrkMast>().orderBy("appe_time")); } } src/main/java/com/zy/asrs/service/impl/WrkMastServiceImpl.java
@@ -1,5 +1,6 @@ package com.zy.asrs.service.impl; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.service.impl.ServiceImpl; import com.zy.asrs.entity.WrkMast; import com.zy.asrs.mapper.WrkMastMapper; @@ -9,4 +10,8 @@ @Service("wrkMastService") public class WrkMastServiceImpl extends ServiceImpl<WrkMastMapper, WrkMast> implements WrkMastService { @Override public int getWorkingMast(String devpNo) { return selectCount(new EntityWrapper<WrkMast>().eq("source_sta_no", devpNo).in("wrk_sts", 1, 6)); } } src/main/java/com/zy/common/service/DoubleDeepService.java
New file @@ -0,0 +1,56 @@ package com.zy.common.service; import com.core.common.Cools; import com.zy.asrs.entity.WrkLastno; import com.zy.asrs.entity.WrkMast; import com.zy.asrs.service.WrkMastService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; /** * 双深式货架核心功能 * Created by vincent on 2020/6/11 */ @Service public class DoubleDeepService { @Autowired private WrkMastService wrkMastService; /** * 生成工作号 * @param wrkLastno * @return */ public int getWorkNo(WrkLastno wrkLastno) { int workNo = 0; // 入出库类型 if (wrkLastno.getWrkMk() == 0) { if (!Cools.isEmpty(wrkLastno)){ workNo = wrkLastno.getWrkNo(); int sNo = wrkLastno.getSNo(); int eNo = wrkLastno.getENo(); workNo = workNo>=eNo ? sNo : workNo+1; while (true) { WrkMast wrkMast = wrkMastService.selectById(workNo); if (null != wrkMast) { workNo = workNo>=eNo ? sNo : workNo+1; } else { break; } } if (workNo > 0){ // todo } } } return workNo; } }