|
|
@ -1,71 +1,53 @@ |
|
|
|
package com.win.module.wms.service.productputawayRequest; |
|
|
|
|
|
|
|
import cn.hutool.core.collection.CollUtil; |
|
|
|
import cn.hutool.core.exceptions.UtilException; |
|
|
|
import cn.hutool.core.util.StrUtil; |
|
|
|
import com.google.common.annotations.VisibleForTesting; |
|
|
|
import com.win.framework.common.exception.ServiceException; |
|
|
|
import com.win.framework.common.pojo.CustomConditions; |
|
|
|
import com.win.framework.common.pojo.PageResult; |
|
|
|
import com.win.framework.common.util.validation.ValidationUtils; |
|
|
|
import com.win.framework.datapermission.core.util.DataPermissionUtils; |
|
|
|
import com.win.module.infra.api.trends.TrendsApi; |
|
|
|
import com.win.module.infra.enums.TrendsTypeEnum; |
|
|
|
import com.win.module.system.api.dict.DictDataApi; |
|
|
|
import com.win.module.system.api.dict.dto.DictDataRespDTO; |
|
|
|
import com.win.module.system.api.serialnumber.SerialNumberApi; |
|
|
|
import com.win.module.system.api.user.AdminUserApi; |
|
|
|
import com.win.module.system.enums.serialNumber.RuleCodeEnum; |
|
|
|
import com.win.module.wms.controller.expectin.vo.ExpectinCreateReqVO; |
|
|
|
import com.win.module.wms.controller.expectout.vo.ExpectoutCreateReqVO; |
|
|
|
import com.win.module.wms.controller.issueRequest.vo.IssueRequestMainCreateReqVO; |
|
|
|
import com.win.module.wms.controller.issueRequest.vo.IssueRequestMainUpdateReqVO; |
|
|
|
import com.win.module.wms.controller.productreceiptRequest.vo.ProductreceiptRequestMainBaseVO; |
|
|
|
import com.win.module.wms.controller.productreceiptRequest.vo.ProductreceiptRequestMainCreateReqVO; |
|
|
|
import com.win.module.wms.controller.productscrapRequest.vo.ProductscrapRequestImportErrorVO; |
|
|
|
import com.win.module.wms.controller.productputawayRequest.vo.*; |
|
|
|
import com.win.module.wms.controller.rule.vo.RuleRespVO; |
|
|
|
import com.win.module.wms.convert.issueRequest.IssueRequestMainConvert; |
|
|
|
import com.win.module.wms.convert.productreceiptRequest.ProductreceiptRequestMainConvert; |
|
|
|
import com.win.module.wms.convert.productscrapRequest.ProductscrapRequestMainConvert; |
|
|
|
import com.win.module.wms.convert.productputawayRequest.ProductputawayRequestDetailConvert; |
|
|
|
import com.win.module.wms.convert.productputawayRequest.ProductputawayRequestMainConvert; |
|
|
|
import com.win.module.wms.dal.dataobject.balance.BalanceDO; |
|
|
|
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO; |
|
|
|
import com.win.module.wms.dal.dataobject.issueRequest.IssueRequestDetailDO; |
|
|
|
import com.win.module.wms.dal.dataobject.issueRequest.IssueRequestMainDO; |
|
|
|
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO; |
|
|
|
import com.win.module.wms.dal.dataobject.jobsetting.JobsettingDO; |
|
|
|
import com.win.module.wms.dal.dataobject.location.LocationDO; |
|
|
|
import com.win.module.wms.dal.dataobject.productputawayJob.ProductputawayJobDetailDO; |
|
|
|
import com.win.module.wms.dal.dataobject.productputawayJob.ProductputawayJobMainDO; |
|
|
|
import com.win.module.wms.dal.dataobject.productreceiptRequest.ProductreceiptRequestMainDO; |
|
|
|
import com.win.module.wms.dal.dataobject.productscrapRequest.ProductscrapRequestDetailDO; |
|
|
|
import com.win.module.wms.dal.dataobject.productscrapRequest.ProductscrapRequestMainDO; |
|
|
|
import com.win.module.wms.dal.dataobject.productputawayRequest.ProductputawayRequestDetailDO; |
|
|
|
import com.win.module.wms.dal.dataobject.productputawayRequest.ProductputawayRequestMainDO; |
|
|
|
import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO; |
|
|
|
import com.win.module.wms.dal.mysql.productputawayJob.ProductputawayJobDetailMapper; |
|
|
|
import com.win.module.wms.dal.mysql.productputawayJob.ProductputawayJobMainMapper; |
|
|
|
import com.win.module.wms.dal.mysql.productputawayRequest.ProductputawayRequestDetailMapper; |
|
|
|
import com.win.module.wms.dal.mysql.productputawayRequest.ProductputawayRequestMainMapper; |
|
|
|
import com.win.module.wms.enums.job.JobStatusEnum; |
|
|
|
import com.win.module.wms.enums.request.RequestStatusEnum; |
|
|
|
import com.win.module.wms.enums.request.RequestStatusState; |
|
|
|
import com.win.module.wms.service.expectin.ExpectinService; |
|
|
|
import com.win.module.wms.service.expectout.ExpectoutService; |
|
|
|
import com.win.module.wms.service.itembasic.ItembasicService; |
|
|
|
import com.win.module.wms.service.jobsetting.JobsettingService; |
|
|
|
import com.win.module.wms.service.location.LocationService; |
|
|
|
import com.win.module.wms.service.requestsetting.RequestsettingService; |
|
|
|
import com.win.module.wms.service.rule.RuleService; |
|
|
|
import com.win.module.wms.util.*; |
|
|
|
import com.win.framework.common.pojo.CustomConditions; |
|
|
|
import com.win.framework.common.pojo.PageResult; |
|
|
|
import com.win.framework.dict.core.util.DictFrameworkUtils; |
|
|
|
import com.win.module.system.api.serialnumber.SerialNumberApi; |
|
|
|
import com.win.module.system.enums.serialNumber.RuleCodeEnum; |
|
|
|
import com.win.module.wms.controller.productputawayRequest.vo.*; |
|
|
|
import com.win.module.wms.convert.productputawayRequest.ProductputawayRequestMainConvert; |
|
|
|
import com.win.module.wms.dal.dataobject.productputawayRequest.ProductputawayRequestDetailDO; |
|
|
|
import com.win.module.wms.dal.dataobject.productputawayRequest.ProductputawayRequestMainDO; |
|
|
|
import com.win.module.wms.service.businesstype.*; |
|
|
|
import com.win.module.wms.dal.mysql.productputawayRequest.ProductputawayRequestMainMapper; |
|
|
|
import com.win.module.wms.enums.DictTypeConstants; |
|
|
|
import com.win.module.wms.util.JobUtils; |
|
|
|
import org.springframework.beans.BeanUtils; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
import org.springframework.transaction.interceptor.TransactionAspectSupport; |
|
|
|
import org.springframework.validation.annotation.Validated; |
|
|
|
import com.win.module.wms.convert.productputawayRequest.*; |
|
|
|
|
|
|
|
import javax.annotation.Resource; |
|
|
|
import javax.validation.Validator; |
|
|
|
import java.math.BigDecimal; |
|
|
@ -74,12 +56,10 @@ import java.util.ArrayList; |
|
|
|
import java.util.Arrays; |
|
|
|
import java.util.Collection; |
|
|
|
import java.util.List; |
|
|
|
import com.win.module.wms.service.location.*; |
|
|
|
|
|
|
|
import static com.win.framework.common.exception.util.ServiceExceptionUtil.exception; |
|
|
|
import static com.win.framework.security.core.util.SecurityFrameworkUtils.getLoginUserId; |
|
|
|
import static com.win.module.wms.enums.ErrorCodeConstants.*; |
|
|
|
import com.win.module.wms.service.recordsetting.*; |
|
|
|
import com.win.module.wms.service.itembasic.*; |
|
|
|
|
|
|
|
/** |
|
|
|
* 制品上架申请主 Service 实现类 |
|
|
@ -619,7 +599,7 @@ public class ProductputawayRequestMainServiceImpl implements ProductputawayReque |
|
|
|
BeanUtils.copyProperties(productputawayRequestDetailDO,productputawayJobDetailDO); |
|
|
|
// 获取上架策略 并赋值 to库位
|
|
|
|
RuleRespVO ruleRespVO = ruleService.grounding(null,null, productputawayJobDetailDO.getItemCode(),null,null,null,null,null,null); |
|
|
|
LocationDO locationDO = locationService.inspectLocation(ruleRespVO, productputawayJobDetailDO.getItemCode(), productputawayJobDetailDO.getBatch(), productputawayJobDetailDO.getInventoryStatus()); |
|
|
|
LocationDO locationDO = locationService.recommendLocation(ruleRespVO, productputawayJobDetailDO.getItemCode(), productputawayJobDetailDO.getBatch(), productputawayJobDetailDO.getInventoryStatus()); |
|
|
|
productputawayJobDetailDO.setToLocationCode(locationDO.getCode()); |
|
|
|
productputawayJobDetailDO.setNumber(productputawayJobMainDO.getNumber()); |
|
|
|
productputawayJobDetailDO.setMasterId(productputawayJobMainDO.getId()); |
|
|
|