Browse Source

Merge remote-tracking branch 'origin/master'

master
赵雪冰 2 years ago
parent
commit
c219f69a45
  1. 1
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreturnRequest/vo/CustomerreturnRequestMainBaseVO.java
  2. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countPlan/CountPlanMainDO.java
  3. 47
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/job/CountPlanCycleJob.java
  4. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countPlan/CountPlanMainService.java
  5. 21
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countPlan/CountPlanMainServiceImpl.java
  6. 24
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreceiptRequest/CustomerreceiptRequestMainServiceImpl.java
  7. 8
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnJob/CustomerreturnJobMainServiceImpl.java
  8. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnRecord/CustomerreturnRecordMainServiceImpl.java
  9. 7
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnRequest/CustomerreturnRequestMainServiceImpl.java
  10. 12
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customersettleRequest/CustomersettleRequestMainServiceImpl.java
  11. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverPlan/DeliverPlanMainServiceImpl.java
  12. 4
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverRequest/DeliverRequestMainServiceImpl.java
  13. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inventorymoveRequest/InventorymoveRequestMainServiceImpl.java
  14. 32
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/util/JobUtils.java

1
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/customerreturnRequest/vo/CustomerreturnRequestMainBaseVO.java

@ -30,7 +30,6 @@ public class CustomerreturnRequestMainBaseVO {
private String customerCode;
@Schema(description = "客户月台代码", requiredMode = Schema.RequiredMode.REQUIRED)
@NotBlank(message = "客户月台代码不能为空")
private String customerDockCode;
@Schema(description = "承运商")

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/dataobject/countPlan/CountPlanMainDO.java

@ -39,6 +39,10 @@ public class CountPlanMainDO extends BaseDO {
* 执行周期
*/
private String crontab;
/**
* 下一执行时间
*/
private LocalDateTime nextTime;
/**
* 维度
*
@ -131,6 +135,6 @@ public class CountPlanMainDO extends BaseDO {
/**
* 租户编号
*/
private Integer tenantId;
private Long tenantId;
}

47
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/job/CountPlanCycleJob.java

@ -0,0 +1,47 @@
package com.win.module.wms.job;
import com.win.framework.quartz.core.handler.JobHandler;
import com.win.framework.quartz.core.util.CronUtils;
import com.win.framework.tenant.core.context.TenantContextHolder;
import com.win.module.wms.dal.dataobject.countPlan.CountPlanMainDO;
import com.win.module.wms.dal.mysql.countPlan.CountPlanMainMapper;
import com.win.module.wms.service.countPlan.CountPlanMainService;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
@Component
public class CountPlanCycleJob implements JobHandler {
@Resource
private CountPlanMainService countPlanMainService;
@Resource
private CountPlanMainMapper countPlanMainMapper;
@Override
public String execute(String param) {
StringBuilder message = new StringBuilder();
TenantContextHolder.setIgnore(true);
List<CountPlanMainDO> countPlanMainDOList = countPlanMainService.getCountPlanCycle();
TenantContextHolder.setIgnore(false);
for(CountPlanMainDO countPlanMainDO : countPlanMainDOList) {
TenantContextHolder.setTenantId(countPlanMainDO.getTenantId());
LocalDateTime now = LocalDateTime.now();
if(now.isAfter(countPlanMainDO.getNextTime())) {
countPlanMainService.generateRequest(countPlanMainDO);
countPlanMainDO.setNextTime(null);
// 计算下一个执行时间
List<LocalDateTime> nextTimes = CronUtils.getNextTimes(countPlanMainDO.getCrontab(), 1);
if(!nextTimes.isEmpty()) {
countPlanMainDO.setNextTime(nextTimes.get(0));
}
countPlanMainMapper.updateById(countPlanMainDO);
message.append("盘点计划 ").append(countPlanMainDO.getNumber()).append(" 生成了盘点申请");
}
}
return message.toString();
}
}

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countPlan/CountPlanMainService.java

@ -144,4 +144,10 @@ public interface CountPlanMainService {
* @param mainDO 盘点申请主
*/
void generateRequest(CountPlanMainDO mainDO);
/**
* 获取所有循环盘点用于定时生成盘点申请
* @return 可用循环盘点
*/
List<CountPlanMainDO> getCountPlanCycle();
}

21
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/countPlan/CountPlanMainServiceImpl.java

@ -30,12 +30,12 @@ import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.countPlan.CountPlanDetailMapper;
import com.win.module.wms.dal.mysql.countPlan.CountPlanMainMapper;
import com.win.module.wms.dal.mysql.countRequest.CountRequestMainMapper;
import com.win.module.wms.enums.plan.PlanStatusEnum;
import com.win.module.wms.enums.plan.PlanStatusState;
import com.win.module.wms.service.countRequest.CountRequestMainService;
import com.win.module.wms.service.itembasic.ItembasicService;
import com.win.module.wms.service.location.LocationService;
import com.win.module.wms.util.JobUtils;
import org.quartz.SchedulerException;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@ -279,11 +279,10 @@ public class CountPlanMainServiceImpl implements CountPlanMainService {
if(mainDO.getType().equals("MANUAL")) {//指定盘点
this.generateRequest(mainDO);
} else if (mainDO.getType().equals("CYCLE")) {//循环盘点
// 添加 Job 到 Quartz 中
try {
schedulerManager.addJob(mainDO.getId() + 10000, "countPlanJob", String.valueOf(mainDO.getId()) + "," + mainDO.getTenantId(), mainDO.getCrontab(), 3, 60*10);
} catch (SchedulerException e) {
throw new ServiceException(COUNT_PLAN_CRON_ERROR);
// 计算下一个执行时间
List<LocalDateTime> nextTimes = CronUtils.getNextTimes(mainDO.getCrontab(), 1);
if(!nextTimes.isEmpty()) {
mainDO.setNextTime(nextTimes.get(0));
}
}
return countPlanMainMapper.updateById(mainDO);
@ -458,4 +457,14 @@ public class CountPlanMainServiceImpl implements CountPlanMainService {
}
return balanceMapper.selectList(queryWrapper);
}
@Override
public List<CountPlanMainDO> getCountPlanCycle() {
QueryWrapper<CountPlanMainDO> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("`type`", "CYCLE");
queryWrapper.eq("`status`", PlanStatusEnum.PUBLISHED.getCode());
queryWrapper.eq("available", "TRUE");
return countPlanMainMapper.selectList(queryWrapper);
}
}

24
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreceiptRequest/CustomerreceiptRequestMainServiceImpl.java

@ -86,7 +86,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
List<CustomerreceiptRequestDetailDO> subDOList = CustomerreceiptRequestDetailConvert.INSTANCE.convertList03(createReqVO.getSubList());
String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_RECEIPT_REQUEST.getCode());
customerreceiptRequestMain.setNumber(number);
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("CustomerreceiptRequest");
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("CustomerReceiptRequest");
RequestStatusState requestStatusState = new RequestStatusState();
requestStatusState.newObject(requestsettingDO.getAutoCommit(), requestsettingDO.getAutoAgree(), requestsettingDO.getAutoExecute());
customerreceiptRequestMain.setStatus(requestStatusState.getState().getCode());
@ -94,7 +94,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
customerreceiptRequestMain.setAutoAgree(requestsettingDO.getAutoAgree());
customerreceiptRequestMain.setAutoExecute(requestsettingDO.getAutoExecute());
customerreceiptRequestMain.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerreceiptRequest");
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerReceiptRequest");
customerreceiptRequestMain.setBusinessType(businesstypeDO.getCode());
customerreceiptRequestMain.setFromLocationTypes(businesstypeDO.getOutLocationTypes());
customerreceiptRequestMain.setToLocationTypes(businesstypeDO.getInLocationTypes());
@ -113,7 +113,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
customerreceiptRequestDetailDO.setNumber(number);
}
customerreceiptRequestDetailMapper.insertBatch(subDOList);
trendsApi.createTrends(requestsettingDO.getId(), "CustomerreceiptRequest", "增加了客户收货申请", TrendsTypeEnum.CREATE);
trendsApi.createTrends(requestsettingDO.getId(), "CustomerReceiptRequest", "增加了客户收货申请", TrendsTypeEnum.CREATE);
// 返回
return customerreceiptRequestMain.getId();
}
@ -125,7 +125,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
// 更新
CustomerreceiptRequestMainDO updateObj = CustomerreceiptRequestMainConvert.INSTANCE.convert(updateReqVO);
customerreceiptRequestMainMapper.updateById(updateObj);
trendsApi.createTrends(updateReqVO.getId(), "CustomerreceiptRequest", "修改了客户收货申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(updateReqVO.getId(), "CustomerReceiptRequest", "修改了客户收货申请", TrendsTypeEnum.UPDATE);
}
@Override
@ -186,7 +186,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
throw new ServiceException(CUSTOMERRECEIPT_REQUEST_CANNOT_CLOSE);
}
mainDO.setStatus(requestStatusState.getState().getCode());//增加操作记录
trendsApi.createTrends(id, "CustomerreceiptRequest", "关闭了客户收货申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerReceiptRequest", "关闭了客户收货申请", TrendsTypeEnum.UPDATE);
return customerreceiptRequestMainMapper.updateById(mainDO);
}
@ -206,7 +206,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
throw new ServiceException(CUSTOMERRECEIPT_REQUEST_CANNOT_RE_ADD);
}
mainDO.setStatus(requestStatusState.getState().getCode());//增加操作记录
trendsApi.createTrends(id, "CustomerreceiptRequest", "打开了客户收货申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerReceiptRequest", "打开了客户收货申请", TrendsTypeEnum.UPDATE);
return customerreceiptRequestMainMapper.updateById(mainDO);
}
@ -229,7 +229,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
if (RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) {
this.generateRecord(mainDO, customerreceiptRequestDetailMapper.selectList(mainDO.getId()));
}
trendsApi.createTrends(id, "CustomerreceiptRequest", "提交了客户收货申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerReceiptRequest", "提交了客户收货申请", TrendsTypeEnum.UPDATE);
return customerreceiptRequestMainMapper.updateById(mainDO);
}
@ -253,7 +253,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
if (RequestStatusEnum.HANDLING.getCode().equals(mainDO.getStatus())) {
this.generateRecord(mainDO, customerreceiptRequestDetailMapper.selectList(mainDO.getId()));
}
trendsApi.createTrends(id, "CustomerreceiptRequest", "审批同意了客户收货申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerReceiptRequest", "审批同意了客户收货申请", TrendsTypeEnum.UPDATE);
return customerreceiptRequestMainMapper.updateById(mainDO);
}
@ -275,7 +275,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
mainDO.setStatus(requestStatusState.getState().getCode());
//调用执行方法
this.generateRecord(mainDO, customerreceiptRequestDetailMapper.selectList(mainDO.getId()));
trendsApi.createTrends(id, "CustomerreceiptRequest", "执行了客户收货申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerReceiptRequest", "执行了客户收货申请", TrendsTypeEnum.UPDATE);
return customerreceiptRequestMainMapper.updateById(mainDO);
}
@ -295,7 +295,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
throw new ServiceException(CUSTOMERRECEIPT_REQUEST_CANNOT_REFUSED);
}
mainDO.setStatus(requestStatusState.getState().getCode());
trendsApi.createTrends(id, "CustomerreceiptRequest", "审批驳回了客户收货申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerReceiptRequest", "审批驳回了客户收货申请", TrendsTypeEnum.UPDATE);
return customerreceiptRequestMainMapper.updateById(mainDO);
}
@ -313,7 +313,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_RECEIPT_REQUEST.getCode());
customerreceiptRecordMainCreateReqVO.setNumber(number);
//增加业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerreceiptRecord");
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerReceiptRecord");
customerreceiptRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode());
customerreceiptRecordMainMapper.insert(CustomerreceiptRecordMainConvert.INSTANCE.convert(customerreceiptRecordMainCreateReqVO));
List<ExpectinCreateReqVO> expectinCreateReqVOList = new ArrayList<>();
@ -325,7 +325,7 @@ public class CustomerreceiptRequestMainServiceImpl implements CustomerreceiptReq
customerreceiptRecordDetailCreateReqVO.setNumber(number);
customerreceiptRecordDetailMapper.insert(CustomerreceiptRecordDetailConvert.INSTANCE.convert(customerreceiptRecordDetailCreateReqVO));
}
trendsApi.createTrends(mainDO.getId(), "CustomerreceiptRecord", "客户收货申请生成客户收货记录", TrendsTypeEnum.CREATE);
trendsApi.createTrends(mainDO.getId(), "CustomerReceiptRecord", "客户收货申请生成客户收货记录", TrendsTypeEnum.CREATE);
}
}
}

8
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnJob/CustomerreturnJobMainServiceImpl.java

@ -198,7 +198,7 @@ public class CustomerreturnJobMainServiceImpl implements CustomerreturnJobMainSe
customerreturnJobMainDO.setAcceptUserId(String.valueOf(userId));
customerreturnJobMainDO.setAcceptUserName(userRespDTO.getNickname());
customerreturnJobMainDO.setAcceptTime(LocalDateTime.now());
trendsApi.createTrends(id, "customerreturnJob", "承接了客户退货任务", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerRejectJob", "承接了客户退货任务", TrendsTypeEnum.UPDATE);
return customerreturnJobMainMapper.updateById(customerreturnJobMainDO);
}
@ -214,7 +214,7 @@ public class CustomerreturnJobMainServiceImpl implements CustomerreturnJobMainSe
customerreturnJobMainDO.setAcceptUserId(null);
customerreturnJobMainDO.setAcceptUserName(null);
customerreturnJobMainDO.setAcceptTime(null);
trendsApi.createTrends(id, "customerreturnJob", "取消了客户退货任务", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerRejectJob", "取消了客户退货任务", TrendsTypeEnum.UPDATE);
return customerreturnJobMainMapper.updateById(customerreturnJobMainDO);
}
@ -227,7 +227,7 @@ public class CustomerreturnJobMainServiceImpl implements CustomerreturnJobMainSe
throw exception(CUSTOMERRETURN_JOB_MAIN_STATUS_ERROR);
}
customerreturnJobMainDO.setStatus(jobStatusState.getState().getCode());
trendsApi.createTrends(id, "customerreturnJob", "关闭了客户退货任务", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(id, "CustomerRejectJob", "关闭了客户退货任务", TrendsTypeEnum.UPDATE);
return customerreturnJobMainMapper.updateById(customerreturnJobMainDO);
}
@ -346,7 +346,7 @@ public class CustomerreturnJobMainServiceImpl implements CustomerreturnJobMainSe
//移除预计出
expectoutService.deleteExpectoutByJobNumber(customerreturnJobMainDO.getNumber());
//变更记录
trendsApi.createTrends(customerreturnJobMainDO.getId(), "customerreturnJob", "执行了客户退货任务", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(customerreturnJobMainDO.getId(), "CustomerRejectJob", "执行了客户退货任务", TrendsTypeEnum.UPDATE);
return number;
}
}

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnRecord/CustomerreturnRecordMainServiceImpl.java

@ -88,8 +88,8 @@ public class CustomerreturnRecordMainServiceImpl implements CustomerreturnRecord
List<CustomerreturnRecordDetailDO> subDOList = CustomerreturnRecordDetailConvert.INSTANCE.convertList03(createReqVO.getSubList());
String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_REJECT_RECORD.getCode());
mainDO.setNumber(number);
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerreturnRecord");
RecordsettingDO recordsettingDO = recordsettingService.selectRecordsettingExist("CustomerreturnRecord");
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerRejectRecord");
RecordsettingDO recordsettingDO = recordsettingService.selectRecordsettingExist("CustomerRejectRecord");
mainDO.setBusinessType(businesstypeDO.getCode());
AdminUserRespDTO user = userApi.getUser(Long.valueOf(createReqVO.getCreator()));
mainDO.setCreator(createReqVO.getCreator());
@ -168,7 +168,7 @@ public class CustomerreturnRecordMainServiceImpl implements CustomerreturnRecord
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
//增加操作记录
trendsApi.createTrends(mainDO.getId(), "customerreturnRecordMain", "增加了客户退货记录", TrendsTypeEnum.CREATE);
trendsApi.createTrends(mainDO.getId(), "CustomerRejectRecord", "增加了客户退货记录", TrendsTypeEnum.CREATE);
// 返回
return customerreturnRecordMain.getNumber();
}

7
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customerreturnRequest/CustomerreturnRequestMainServiceImpl.java

@ -353,7 +353,7 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
customerreturnJobMainDO.setAllowModifyPackingNumber(jobsettingDO.getAllowModifyPackingNumber());
customerreturnJobMainDO.setAllowModifyBatch(jobsettingDO.getAllowModifyBach());
//增加业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerRejectJob");
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerRejectRequest");
customerreturnJobMainDO.setBusinessType(businesstypeDO.getCode());
customerreturnJobMainDO.setInInventoryStatuses(businesstypeDO.getInInventoryStatuses());
customerreturnJobMainDO.setOutInventoryStatuses(businesstypeDO.getOutInventoryStatuses());
@ -632,7 +632,9 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
DeliverRecordMainDO deliverRecordMainDO = deliverRecordMainService.selectsMainRecordExist(mainDo.getDeliverRecordNumber());
mainDo.setDeliverPlanNumber(deliverRecordMainDO.getDeliverPlanNumber());
mainDo.setCustomerCode(deliverRecordMainDO.getCustomerCode());
mainDo.setCustomerDockCode(deliverRecordMainDO.getCustomerDockCode());
if(deliverRecordMainDO.getCustomerDockCode() != null && !"".equals(deliverRecordMainDO.getCustomerDockCode())){
mainDo.setCustomerDockCode(deliverRecordMainDO.getCustomerDockCode());
}
return mainDo;
}
@ -792,5 +794,4 @@ public class CustomerreturnRequestMainServiceImpl implements CustomerreturnReque
throw new UtilException("退货数量" + qty1 + "不能大于库存数量" + qty2);
}
}
}

12
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/customersettleRequest/CustomersettleRequestMainServiceImpl.java

@ -100,7 +100,7 @@ public class CustomersettleRequestMainServiceImpl implements CustomersettleReque
if(RequestStatusEnum.HANDLING.getCode().equals(customersettleRequestMainDO.getStatus())) {
generateRecord(customersettleRequestMainDO,customersettleRequestDetailMapper.selectList(customersettleRequestMainDO.getId()));
}
trendsApi.createTrends(customersettleRequestMainDO.getId(), "CustomersettleRequest", "增加了客户结算申请", TrendsTypeEnum.CREATE);
trendsApi.createTrends(customersettleRequestMainDO.getId(), "CustomerSettleRequest", "增加了客户结算申请", TrendsTypeEnum.CREATE);
// 返回
return customersettleRequestMainDO.getId();
}
@ -114,7 +114,7 @@ public class CustomersettleRequestMainServiceImpl implements CustomersettleReque
if(RequestStatusEnum.HANDLING.getCode().equals(updateObj.getStatus())) {
generateRecord(updateObj,customersettleRequestDetailMapper.selectList(updateObj.getId()));
}
trendsApi.createTrends(updateObj.getId(), "CustomersettleRequest", "修改了客户结算申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(updateObj.getId(), "CustomerSettleRequest", "修改了客户结算申请", TrendsTypeEnum.UPDATE);
customersettleRequestMainMapper.updateById(updateObj);
}
@ -274,7 +274,7 @@ public class CustomersettleRequestMainServiceImpl implements CustomersettleReque
String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_SETTLE_RECORD.getCode());
customersettleRecordMainCreateReqVO.setNumber(number);
//增加业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomersettleRecord");
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("CustomerSettleRecord");
customersettleRecordMainCreateReqVO.setBusinessType(businesstypeDO.getCode());
CustomersettleRecordMainDO convert = CustomersettleRecordMainConvert.INSTANCE.convert(customersettleRecordMainCreateReqVO);
customersettleRecordMainMapper.insert(convert);
@ -306,7 +306,7 @@ public class CustomersettleRequestMainServiceImpl implements CustomersettleReque
transactionCreateReqVO.setLocationCode(recordDetailDO.getFromLocationCode());
transactionCreateReqVOList.add(transactionCreateReqVO);
}
trendsApi.createTrends(mainDO.getId(), "CustomersettleRecord", "客户结算申请生成客户结算记录", TrendsTypeEnum.CREATE);
trendsApi.createTrends(mainDO.getId(), "CustomerSettleRecord", "客户结算申请生成客户结算记录", TrendsTypeEnum.CREATE);
}
@Override
@ -344,7 +344,7 @@ public class CustomersettleRequestMainServiceImpl implements CustomersettleReque
//增加操作记录
String number = serialNumberApi.generateCode(RuleCodeEnum.CUSTOMER_SETTLE_REQUEST.getCode());
mainDO.setNumber(number);
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("CustomersettleRequest");
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("CustomerSettleRequest");
RequestStatusState requestStatusState = new RequestStatusState();
requestStatusState.newObject(requestsettingDO.getAutoCommit(), requestsettingDO.getAutoAgree(), requestsettingDO.getAutoExecute());
mainDO.setStatus(requestStatusState.getState().getCode());
@ -354,7 +354,7 @@ public class CustomersettleRequestMainServiceImpl implements CustomersettleReque
mainDO.setDirectCreateRecord(requestsettingDO.getDirectCreateRecord());
mainDO.setRequestTime(LocalDateTime.now());
customersettleRequestMainMapper.insert(mainDO);
trendsApi.createTrends(mainDO.getId(), "customersettleRequestMain", "导入了客户结算申请", TrendsTypeEnum.CREATE);
trendsApi.createTrends(mainDO.getId(), "CustomerSettleRequest", "导入了客户结算申请", TrendsTypeEnum.CREATE);
for (CustomersettleRequestDetailDO detailDO : subDOList) {
detailDO.setMasterId(mainDO.getId());
detailDO.setNumber(number);

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/deliverPlan/DeliverPlanMainServiceImpl.java

@ -23,7 +23,6 @@ import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.customer.CustomerDO;
import com.win.module.wms.dal.dataobject.deliverPlan.DeliverPlanDetailDO;
import com.win.module.wms.dal.dataobject.deliverPlan.DeliverPlanMainDO;
import com.win.module.wms.dal.dataobject.deliverRequest.DeliverRequestMainDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.requestsetting.RequestsettingDO;
import com.win.module.wms.dal.mysql.deliverPlan.DeliverPlanDetailMapper;
@ -111,9 +110,8 @@ public class DeliverPlanMainServiceImpl implements DeliverPlanMainService {
@Override
@Transactional
public Long createDeliverPlanMain(DeliverPlanMainCreateReqVO createReqVO) {
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist("DeliverPlan");
DeliverPlanMainDO deliverPlanMainDO = validatorToCreate(createReqVO);
trendsApi.createTrends(requestsettingDO.getId(), "DeliverPlanMain", "增加了发货计划", TrendsTypeEnum.CREATE);
trendsApi.createTrends(deliverPlanMainDO.getId(), "DeliverPlanMain", "增加了发货计划", TrendsTypeEnum.CREATE);
return deliverPlanMainDO.getId();
}
@ -127,7 +125,7 @@ public class DeliverPlanMainServiceImpl implements DeliverPlanMainService {
}
DeliverPlanMainDO mainDO = DeliverPlanMainConvert.INSTANCE.convert(updateReqVO);
deliverPlanMainMapper.updateById(mainDO);
trendsApi.createTrends(updateReqVO.getId(), "DeliverPlanMain", deliverPlanMainDO.toString(), TrendsTypeEnum.UPDATE);
trendsApi.createTrends(mainDO.getId(), "DeliverPlanMain", deliverPlanMainDO.toString(), TrendsTypeEnum.UPDATE);
}
@Override

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

@ -157,7 +157,7 @@ public class DeliverRequestMainServiceImpl implements DeliverRequestMainService
if(RequestStatusEnum.HANDLING.getCode().equals(deliverRequestMain.getStatus())) {
generateJob(deliverRequestMain,deliverRequestDetailMapper.selectList(deliverRequestMain.getId()));
}
trendsApi.createTrends(requestsettingDO.getId(), "DeliverRequest", "增加了制品上架申请", TrendsTypeEnum.CREATE);
trendsApi.createTrends(deliverRequestMain.getId(), "DeliverRequest", "增加了制品上架申请", TrendsTypeEnum.CREATE);
return deliverRequestMain.getId();
}
@ -174,7 +174,7 @@ public class DeliverRequestMainServiceImpl implements DeliverRequestMainService
if(RequestStatusEnum.HANDLING.getCode().equals(deliverRequestMainDO.getStatus())) {
generateJob(deliverRequestMainDO,deliverRequestDetailMapper.selectList(deliverRequestMainDO.getId()));
}
trendsApi.createTrends(requestsettingDO.getId(), "DeliverRequest", "修改了制品上架申请", TrendsTypeEnum.UPDATE);
trendsApi.createTrends(deliverRequestMainDO.getId(), "DeliverRequest", "修改了制品上架申请", TrendsTypeEnum.UPDATE);
}
@Override

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inventorymoveRequest/InventorymoveRequestMainServiceImpl.java

@ -187,7 +187,7 @@ public class InventorymoveRequestMainServiceImpl implements InventorymoveRequest
if (itembasicDO != null){
jobUtils.ifInType(itembasicDO.getType(), businesstypeDO);
}
jobUtils.ifInInventoryStatuses(inventorymoveRequestDetailDO.getFromInventoryStatus(), businesstypeDO);
jobUtils.ifOutInventoryStatuses(inventorymoveRequestDetailDO.getFromInventoryStatus(), businesstypeDO);
jobUtils.ifInFromLocationType(inventorymoveRequestDetailDO.getFromLocationCode(), businesstypeDO);
jobUtils.ifInToLocationType(inventorymoveRequestDetailDO.getToLocationCode(), businesstypeDO);
RequestsettingDO requestsettingDO = requestsettingService.selectRequestsettingExist(businesstypeCode);

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

@ -211,10 +211,16 @@ public class JobUtils {
detailDOQueryWrapper.eq("available", "TRUE");
deliverPlanDetailDO = deliverPlanDetailMapper.selectOne(detailDOQueryWrapper);
BigDecimal shippedQty = deliverPlanDetailDO.getShippedQty();
// 如果已发货数量=计划数量,更新计划明细状态为(开放 => 关闭)
//修改已发货qty
deliverPlanDetailDO.setShippedQty(shippedQty.add(pshippedQty));
if (deliverPlanDetailDO.getPlanQty() == deliverPlanDetailDO.getShippedQty()) {
deliverPlanDetailDO.setAvailable("FALSE");
if(deliverPlanDetailDO.getShippedQty().compareTo(deliverPlanDetailDO.getPlanQty()) == 1){
throw exception(QTY_EXCEPTION, deliverPlanDetailDO.getItemCode() + "该物件已发货数量" + deliverPlanDetailDO.getShippedQty() + "大于发货计划数量" + deliverPlanDetailDO.getPlanQty() + "超出" + deliverPlanDetailDO.getShippedQty().subtract(deliverPlanDetailDO.getPlanQty()));
}else {
deliverPlanDetailMapper.updateById(deliverPlanDetailDO);
// 如果已发货数量=计划数量,更新计划明细状态为(开放 => 关闭)
if (deliverPlanDetailDO.getPlanQty() == deliverPlanDetailDO.getShippedQty()) {
deliverPlanDetailDO.setAvailable("FALSE");
}
}
// 如果全部明细状态为(关闭),更新计划状态为(已接受 => 完成)
QueryWrapper<DeliverPlanDetailDO> queryWrapper = new QueryWrapper<>();
@ -933,6 +939,7 @@ public class JobUtils {
// 任务子表数据
List<BalanceDO> balanceDOListJob = new ArrayList<>();
System.out.println(queryWrapper.toString());
List<BalanceDO> balanceDOList = balanceMapper.selectList(queryWrapper);
if (balanceDOList == null || balanceDOList.size() == 0 ) {
throw exception(BALANCE_NOT_EXISTS);
@ -976,6 +983,25 @@ public class JobUtils {
if (balanceDOListJob == null || balanceDOListJob.size() == 0) {
throw new UtilException("物品代码:" + itemCode + " 没有找到推荐的库存");
}
// 发料类型为按单件时 返回 库存余额数量 为需求数量
// 发料包装类型——按 包装 返回 当前库存余额数量
if (jsonObjectOffShelf.get("IssueStorageType") != null && jsonObjectOffShelf.get("IssueStorageType").equals("PACKAGE")) {
}
// 发料包装类型——按 容器
if (jsonObjectOffShelf.get("IssueStorageType") != null && jsonObjectOffShelf.get("IssueStorageType").equals("CONTAINER")) {
}
// 发料包装类型——按 单件 返回 库存余额数量 为需求数量
if (jsonObjectOffShelf.get("IssueStorageType") != null && jsonObjectOffShelf.get("IssueStorageType").equals("SINGLE")) {
BigDecimal residueQty = qty;
for(int i = 0; i< balanceDOListJob.size(); i++) {
// 最后一条数据 存储qty为需求qty所剩数量
if ( i == (balanceDOListJob.size()-1)) {
balanceDOListJob.get(i).setQty(residueQty);
}
// qty 减掉库存余额qty数量 求最后所剩
residueQty = residueQty.subtract(balanceDOListJob.get(i).getQty());
}
}
// 合并 相同【物品】和【批次】和【库位】的 数量求和
List<BalanceDO> balanceDOListRs = new ArrayList<>();
Map<String,BalanceDO> map = new HashMap<>();

Loading…
Cancel
Save