Browse Source

修复bug

master
chenfang 2 years ago
parent
commit
fa6744cdd4
  1. 11
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/BalanceController.java
  2. 32
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/balance/BalanceMapper.java
  3. 23
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverRequest/DeliverRequestMainServiceImpl.java
  4. 22
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java

11
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/balance/BalanceController.java

@ -11,6 +11,7 @@ import com.win.module.wms.controller.balance.vo.*;
import com.win.module.wms.convert.balance.BalanceConvert;
import com.win.module.wms.dal.dataobject.balance.BalanceDO;
import com.win.module.wms.service.balance.BalanceService;
import com.win.module.wms.util.JobUtils;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.security.access.prepost.PreAuthorize;
@ -36,6 +37,8 @@ public class BalanceController {
private BalanceService balanceService;
@Resource
private AdminUserApi userApi;
@Resource
private JobUtils jobUtils;
@PutMapping("/update")
@Operation(summary = "更新库存余额")
@ -116,4 +119,12 @@ public class BalanceController {
return success(result);
}
@GetMapping("/pageLocationCodeToBalance")
@Operation(summary = "获得库位代码筛选出的库存余额分页")
@PreAuthorize("@ss.hasPermission('wms:balance:query')")
public CommonResult<PageResult<BalanceRespVO>> selectLocationTypeToBalance() {
PageResult<BalanceDO> okToHold = jobUtils.selectLocationTypeToBalance("OkToHoldRequest");
PageResult<BalanceRespVO> balanceRespVOPageResult = BalanceConvert.INSTANCE.convertPage(okToHold);
return success(balanceRespVOPageResult);
}
}

32
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/balance/BalanceMapper.java

@ -221,6 +221,38 @@ public interface BalanceMapper extends BaseMapperX<BalanceDO> {
.orderByDesc(BalanceDO::getId));
}
default PageResult<BalanceDO> getBalanceInLocationTypesPage(BalancePageReqVO reqVO){
PageResult<BalanceDO> page = selectPage(reqVO,new LambdaQueryWrapperX<BalanceDO>()
.eqIfPresent(BalanceDO::getPackingNumber, reqVO.getPackingNumber())
.eqIfPresent(BalanceDO::getContainerNumber, reqVO.getContainerNumber())
.eqIfPresent(BalanceDO::getItemCode, reqVO.getItemCode())
.eqIfPresent(BalanceDO::getBatch, reqVO.getBatch())
.eqIfPresent(BalanceDO::getAltBatch, reqVO.getAltBatch())
.betweenIfPresent(BalanceDO::getArriveDate, reqVO.getArriveDate())
.betweenIfPresent(BalanceDO::getProduceDate, reqVO.getProduceDate())
.betweenIfPresent(BalanceDO::getExpireDate, reqVO.getExpireDate())
.eqIfPresent(BalanceDO::getInventoryStatus, reqVO.getInventoryStatus())
.inIfPresent(BalanceDO::getLocationCode, reqVO.getLocationCode().split(","))
.eqIfPresent(BalanceDO::getLocationGroupCode, reqVO.getLocationGroupCode())
.eqIfPresent(BalanceDO::getAreaCode, reqVO.getAreaCode())
.eqIfPresent(BalanceDO::getWarehouseCode, reqVO.getWarehouseCode())
.eqIfPresent(BalanceDO::getErpLocationCode, reqVO.getErpLocationCode())
.eqIfPresent(BalanceDO::getOwnerCode, reqVO.getOwnerCode())
.eqIfPresent(BalanceDO::getUom, reqVO.getUom())
.eqIfPresent(BalanceDO::getQty, reqVO.getQty())
.eqIfPresent(BalanceDO::getSinglePrice, reqVO.getSinglePrice())
.eqIfPresent(BalanceDO::getAmount, reqVO.getAmount())
.betweenIfPresent(BalanceDO::getPutInTime, reqVO.getPutInTime())
.eqIfPresent(BalanceDO::getFrozen, reqVO.getFrozen())
.eqIfPresent(BalanceDO::getFrozenReason, reqVO.getFrozenReason())
.eqIfPresent(BalanceDO::getLastTransNumber, reqVO.getLastTransNumber())
.eqIfPresent(BalanceDO::getWeight, reqVO.getWeight())
.eqIfPresent(BalanceDO::getArea, reqVO.getArea())
.eqIfPresent(BalanceDO::getVolume, reqVO.getVolume())
.orderByDesc(BalanceDO::getId));
return page;
}
default PageResult<BalanceDO> getBalanceItemsPage(BalancePageReqVO reqVO){
PageResult<BalanceDO> page = selectPage(reqVO,new LambdaQueryWrapperX<BalanceDO>()
.eqIfPresent(BalanceDO::getPackingNumber, reqVO.getPackingNumber())

23
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverRequest/DeliverRequestMainServiceImpl.java

@ -366,9 +366,6 @@ public class DeliverRequestMainServiceImpl implements DeliverRequestMainService
mainDo.setAutoCommit(requestsettingDO.getAutoCommit());
mainDo.setAutoExecute(requestsettingDO.getAutoExecute());
mainDo.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
RequestStatusState requestStatusState = new RequestStatusState();
requestStatusState.newObject(mainDo.getAutoCommit(), mainDo.getAutoAgree(), mainDo.getAutoExecute());
mainDo.setStatus(requestStatusState.getState().getCode());
}
if(businesstypeDO == null){
message.append("根据单据设置未查找到发料申请的相关业务类型");
@ -380,7 +377,11 @@ public class DeliverRequestMainServiceImpl implements DeliverRequestMainService
mainDo.setToAreaCodes(businesstypeDO.getInAreaCodes());
mainDo.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses());
mainDo.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses());
mainDo.setRequestTime(LocalDateTime.now());
}
RequestStatusState requestStatusState = new RequestStatusState();
requestStatusState.newObject(mainDo.getAutoCommit(), mainDo.getAutoAgree(), mainDo.getAutoExecute());
mainDo.setStatus(requestStatusState.getState().getCode());
try {
ValidationUtils.validate(validator, mainDo);
} catch (Exception ex) {
@ -467,11 +468,10 @@ public class DeliverRequestMainServiceImpl implements DeliverRequestMainService
}
//写入数据
if (flag) {
String number = serialNumberApi.generateCode(RuleCodeEnum.PURCHASE_RECEIPT_REQUEST.getCode());
String number = serialNumberApi.generateCode(RuleCodeEnum.DELIVER_REQUEST.getCode());
mainDo.setNumber(number);
String customerDeliverNumber = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_DELIVER_NUMBER.getCode());
mainDo.setCustomerDeliverNumber(customerDeliverNumber);
mainDo.setStatus(DictFrameworkUtils.parseDictDataValue(DictTypeConstants.REQUEST_STATUS, "1"));
deliverRequestMainMapper.insert(mainDo);
for (DeliverRequestDetailDO detailDO : subDOList) {
detailDO.setMasterId(mainDo.getId());
@ -656,8 +656,17 @@ public class DeliverRequestMainServiceImpl implements DeliverRequestMainService
}
//校验发货计划是否存在
private DeliverPlanMainDO validatorDeliverPlanExist(String number){
return deliverPlanMainMapper.selectByNumber(number);
private DeliverPlanMainDO validatorDeliverPlanExist(String number) {
if (number != null && !"".equals(number)) {
DeliverPlanMainDO deliverPlanMainDO = deliverPlanMainMapper.selectByNumber(number);
if (deliverPlanMainDO != null) {
return deliverPlanMainDO;
} else {
throw exception(DELIVER_PLAN_MAIN_NOT_EXISTS);
}
}else {
return null;
}
}
//校验客户是否存在

22
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java

@ -4,8 +4,11 @@ import cn.hutool.core.exceptions.UtilException;
import cn.hutool.json.JSONObject;
import cn.hutool.json.JSONUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.controller.balance.vo.BalancePageReqVO;
import com.win.module.wms.controller.bom.vo.BomExportReqVO;
import com.win.module.wms.controller.rule.vo.RuleRespVO;
import com.win.module.wms.convert.balance.BalanceConvert;
import com.win.module.wms.dal.dataobject.balance.BalanceDO;
import com.win.module.wms.dal.dataobject.bom.BomDO;
import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
@ -190,14 +193,25 @@ public class JobUtils {
return result;
}
public void demo(String pcode){
//根据业务类型查出的库位类型进行库存余额数据筛选进行分页查询
public PageResult<BalanceDO> selectLocationTypeToBalance(String pcode){
BusinesstypeDO businesstypeDO = selectDocumentSettingFromBusinessType(pcode);
String inLocationTypes = businesstypeDO.getInLocationTypes();
String[] split = inLocationTypes.split(",");
ArrayList<BalanceDO> balanceDOArrayList = new ArrayList<>();
for (String s : split) {
// balanceService.getBalancePage()
BalancePageReqVO balancePageReqVO = new BalancePageReqVO();
if(split.length > 1){
for (String s : split) {
String locationCode = balancePageReqVO.getLocationCode();
if(locationCode == null){
balancePageReqVO.setLocationCode(s);
}else {
balancePageReqVO.setLocationCode(locationCode + ","+s);
}
}
}else {
balancePageReqVO.setLocationCode(inLocationTypes);
}
return balanceMapper.getBalanceInLocationTypesPage(balancePageReqVO);
}
/**

Loading…
Cancel
Save