|
@@ -3,7 +3,10 @@ package com.ruoyi.ams.nieyan.service;
|
|
import com.ruoyi.ams.business.IBusinessService;
|
|
import com.ruoyi.ams.business.IBusinessService;
|
|
import com.ruoyi.ams.config.domain.dto.AgvCallDTO;
|
|
import com.ruoyi.ams.config.domain.dto.AgvCallDTO;
|
|
import com.ruoyi.ams.config.domain.dto.AgvCallItemDTO;
|
|
import com.ruoyi.ams.config.domain.dto.AgvCallItemDTO;
|
|
|
|
+import com.ruoyi.ams.inv.domain.vo.InvLotLocIdLotattVO;
|
|
|
|
+import com.ruoyi.ams.inv.service.IInvLotLocIdService;
|
|
import com.ruoyi.base.constant.Constant;
|
|
import com.ruoyi.base.constant.Constant;
|
|
|
|
+import com.ruoyi.base.service.IBaseLocationInfoService;
|
|
import com.ruoyi.common.core.domain.AjaxResult;
|
|
import com.ruoyi.common.core.domain.AjaxResult;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import lombok.extern.slf4j.Slf4j;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@@ -25,6 +28,10 @@ public class AgvCallProxyService {
|
|
|
|
|
|
@Autowired
|
|
@Autowired
|
|
private IBusinessService iBusinessService;
|
|
private IBusinessService iBusinessService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private IInvLotLocIdService invLotLocIdService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private IBaseLocationInfoService baseLocationInfoService;
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -58,6 +65,10 @@ public class AgvCallProxyService {
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
public AjaxResult emptyFeedingLSN(String locationFrom, String locationTo, String createUser) {
|
|
public AjaxResult emptyFeedingLSN(String locationFrom, String locationTo, String createUser) {
|
|
|
|
+ // 1.释放目标点库存2.将目标点更改为无货
|
|
|
|
+ invLotLocIdService.deleteInvLotLocIdById(Long.valueOf(locationTo));
|
|
|
|
+ baseLocationInfoService.unOccupyLocation(Long.valueOf(locationTo), Constant.WAREHOUSE_ID, createUser);
|
|
|
|
+ // 1.起始点创建空托库存2.生成任务
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
@@ -79,6 +90,10 @@ public class AgvCallProxyService {
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
public AjaxResult emptyFeedingLHN(String locationFrom, String locationTo, String createUser) {
|
|
public AjaxResult emptyFeedingLHN(String locationFrom, String locationTo, String createUser) {
|
|
|
|
+ // 1.释放目标点库存2.将目标点更改为无货
|
|
|
|
+ invLotLocIdService.deleteInvLotLocIdById(Long.valueOf(locationTo));
|
|
|
|
+ baseLocationInfoService.unOccupyLocation(Long.valueOf(locationTo), Constant.WAREHOUSE_ID, createUser);
|
|
|
|
+ // 1.起始点创建空托库存2.生成任务
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
@@ -230,6 +245,19 @@ public class AgvCallProxyService {
|
|
*/
|
|
*/
|
|
public AjaxResult productsDownLineWrappingFilmLSN(String locationFrom, String locationTo, String createUser
|
|
public AjaxResult productsDownLineWrappingFilmLSN(String locationFrom, String locationTo, String createUser
|
|
, Boolean theWeighing) {
|
|
, Boolean theWeighing) {
|
|
|
|
+ // 查出裹膜位的库存
|
|
|
|
+ List<InvLotLocIdLotattVO> invLotLocIdLotattVOList = invLotLocIdService.selectInvLocIdLotattByLocationId(Long.valueOf(locationFrom));
|
|
|
|
+ if (invLotLocIdLotattVOList.size() > 0) {
|
|
|
|
+ InvLotLocIdLotattVO invLotLocIdLotattVO = invLotLocIdLotattVOList.get(0);
|
|
|
|
+ if (invLotLocIdLotattVO.getLotatt12() != null
|
|
|
|
+ && invLotLocIdLotattVO.getLotatt12().equals(Constant.IS_YES.Y.name())) {
|
|
|
|
+ theWeighing = true;
|
|
|
|
+ }else {
|
|
|
|
+ theWeighing = false;
|
|
|
|
+ }
|
|
|
|
+ }else {
|
|
|
|
+ return AjaxResult.error("裹膜点无货!");
|
|
|
|
+ }
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
@@ -292,6 +320,19 @@ public class AgvCallProxyService {
|
|
*/
|
|
*/
|
|
public AjaxResult productsDownLineWrappingFilmLHN(String locationFrom, String locationTo, String createUser
|
|
public AjaxResult productsDownLineWrappingFilmLHN(String locationFrom, String locationTo, String createUser
|
|
, Boolean theWeighing) {
|
|
, Boolean theWeighing) {
|
|
|
|
+ // 查出裹膜位的库存
|
|
|
|
+ List<InvLotLocIdLotattVO> invLotLocIdLotattVOList = invLotLocIdService.selectInvLocIdLotattByLocationId(Long.valueOf(locationFrom));
|
|
|
|
+ if (invLotLocIdLotattVOList.size() > 0) {
|
|
|
|
+ InvLotLocIdLotattVO invLotLocIdLotattVO = invLotLocIdLotattVOList.get(0);
|
|
|
|
+ if (invLotLocIdLotattVO.getLotatt12() != null
|
|
|
|
+ && invLotLocIdLotattVO.getLotatt12().equals(Constant.IS_YES.Y.name())) {
|
|
|
|
+ theWeighing = true;
|
|
|
|
+ }else {
|
|
|
|
+ theWeighing = false;
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ return AjaxResult.error("裹膜点无货!");
|
|
|
|
+ }
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
@@ -309,7 +350,11 @@ public class AgvCallProxyService {
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
public AjaxResult productsOutboundLSN(String locationFrom, String locationTo, String createUser) {
|
|
public AjaxResult productsOutboundLSN(String locationFrom, String locationTo, String createUser) {
|
|
- // todo 判断起始库位库存需要位合格
|
|
|
|
|
|
+ // todo 判断起始库位库存需要是合格
|
|
|
|
+ List<InvLotLocIdLotattVO> invLotLocIdLotattVOList = invLotLocIdService.selectInvLocIdLotattByLocationId(Long.valueOf(locationFrom));
|
|
|
|
+ if (invLotLocIdLotattVOList.size() == 0) {
|
|
|
|
+ return AjaxResult.error("所选库位无库存!");
|
|
|
|
+ }
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
@@ -326,7 +371,11 @@ public class AgvCallProxyService {
|
|
* @return
|
|
* @return
|
|
*/
|
|
*/
|
|
public AjaxResult productsOutboundLHN(String locationFrom, String locationTo, String createUser) {
|
|
public AjaxResult productsOutboundLHN(String locationFrom, String locationTo, String createUser) {
|
|
- // todo 判断起始库位库存需要位合格
|
|
|
|
|
|
+ // todo 判断起始库位库存需要是合格
|
|
|
|
+ List<InvLotLocIdLotattVO> invLotLocIdLotattVOList = invLotLocIdService.selectInvLocIdLotattByLocationId(Long.valueOf(locationFrom));
|
|
|
|
+ if (invLotLocIdLotattVOList.size() == 0) {
|
|
|
|
+ return AjaxResult.error("所选库位无库存!");
|
|
|
|
+ }
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
AgvCallDTO agvCallDTO = new AgvCallDTO();
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationFrom(locationFrom);
|
|
agvCallDTO.setLocationTo(locationTo);
|
|
agvCallDTO.setLocationTo(locationTo);
|