Browse Source

Merge remote-tracking branch 'origin/master'

master
赵雪冰 2 years ago
parent
commit
a15fa913b0
  1. 5
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java
  2. 24
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/issueRecord/IssueRecordMainServiceImpl.java
  3. 6
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationService.java
  4. 11
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationServiceImpl.java
  5. 22
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productdismantleRecord/ProductdismantleRecordMainServiceImpl.java
  6. 11
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productdismantleRequest/ProductdismantleRequestDetailbServiceImpl.java
  7. 24
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionreturnRecord/ProductionreturnRecordMainServiceImpl.java
  8. 11
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productputawayJob/ProductputawayJobDetailService.java
  9. 15
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productputawayJob/ProductputawayJobDetailServiceImpl.java
  10. 24
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productputawayRecord/ProductputawayRecordMainServiceImpl.java
  11. 14
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productreceiptJob/ProductreceiptJobMainServiceImpl.java
  12. 17
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productreceiptRecord/ProductreceiptRecordMainServiceImpl.java
  13. 24
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/repleinshRecord/RepleinshRecordMainServiceImpl.java

5
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/index/IndexController.java

@ -5,6 +5,7 @@ import com.win.module.wms.service.issueRequest.IssueRequestMainService;
import com.win.module.wms.service.location.LocationService;
import com.win.module.wms.service.preparetoissue.PreparetoissueMainService;
import com.win.module.wms.service.production.ProductionMainService;
import com.win.module.wms.service.productputawayJob.ProductputawayJobDetailService;
import com.win.module.wms.service.purchase.PurchaseMainService;
import com.win.module.wms.service.purchasePlan.PurchasePlanMainService;
import com.win.module.wms.service.purchaseclaimRecord.PurchaseclaimRecordDetailService;
@ -50,6 +51,8 @@ public class IndexController {
private LocationService locationService;
@Resource
private ProductionMainService productionMainService;
@Resource
private ProductputawayJobDetailService productputawayJobDetailService;
@GetMapping("/indexSupplier")
@Operation(summary = "供应商首页")
@ -84,6 +87,8 @@ public class IndexController {
public CommonResult<Map<String, Object>> indexProduce() {
Map<String, Object> dataMap = new HashMap<>();
dataMap.put("productionTodayList", productionMainService.getProductionToday());//今日生产计划
dataMap.put("safeLocationList", locationService.getSafeLocationList());//线边安全库存
dataMap.put("productputawayJobDetailList", productputawayJobDetailService.getProductputawayJobDetailList());//待上架成品库存
return success(dataMap);
}

24
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/issueRecord/IssueRecordMainServiceImpl.java

@ -13,12 +13,14 @@ import com.win.module.wms.controller.issueRecord.vo.IssueRecordMainPageReqVO;
import com.win.module.wms.controller.issueRecord.vo.IssueRecordMainUpdateReqVO;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.convert.issueRecord.IssueRecordDetailConvert;
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.issueRecord.IssueRecordDetailDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.location.LocationDO;
import com.win.module.wms.dal.dataobject.recordsetting.RecordsettingDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.issueRecord.IssueRecordDetailMapper;
import com.win.module.wms.service.itembasic.ItembasicService;
import com.win.module.wms.service.location.LocationService;
@ -55,6 +57,8 @@ import static com.win.module.wms.enums.ErrorCodeConstants.*;
@Validated
public class IssueRecordMainServiceImpl implements IssueRecordMainService {
@Resource
private BalanceMapper balanceMapper;
@Resource
private IssueRecordDetailMapper issueRecordDetailMapper;
@Resource
@ -89,6 +93,7 @@ public class IssueRecordMainServiceImpl implements IssueRecordMainService {
mainDO.setExecuteTime(LocalDateTime.now());
mainDO.setActiveDate(LocalDateTime.now());
mainDO.setAvailable("TRUE");
mainDO.setId(null);
// 业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("RepleinmentRecord");
mainDO.setToLocationTypes(businesstypeDO.getInLocationTypes());
@ -132,6 +137,11 @@ public class IssueRecordMainServiceImpl implements IssueRecordMainService {
} else {
throw exception(ITEMBASIC_NOT_EXISTS);
}
//查询库存余额
BalanceDO balanceDO = balanceMapper.getBalanceQty(detailDO.getFromPackingNumber(), detailDO.getItemCode(), detailDO.getFromBatch(), detailDO.getInventoryStatus(), detailDO.getFromLocationCode());
if (balanceDO == null) {
throw exception(UNPLANNEDISSUE_REQUEST_DETAIL_BALANCE_NOT_EXISTS);
}
// 库存事务——入
TransactionCreateReqVO transactionCreateReqVOIn = new TransactionCreateReqVO();
BeanUtils.copyProperties(detailDO, transactionCreateReqVOIn);
@ -144,8 +154,11 @@ public class IssueRecordMainServiceImpl implements IssueRecordMainService {
transactionCreateReqVOIn.setPackingNumber(detailDO.getToPackingNumber());
transactionCreateReqVOIn.setInventoryStatus(detailDO.getInventoryStatus());
transactionCreateReqVOIn.setLocationCode(detailDO.getToLocationCode());
transactionCreateReqVOIn.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOIn.setAmount(BigDecimal.ZERO);
transactionCreateReqVOIn.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOIn.setAmount(balanceDO.getAmount());
transactionCreateReqVOIn.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOIn.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOIn.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOIn.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOIn.setRecordNumber(number);
transactionCreateReqVOIn.setId(null);
@ -163,8 +176,11 @@ public class IssueRecordMainServiceImpl implements IssueRecordMainService {
transactionCreateReqVOOut.setBatch(detailDO.getFromBatch());
transactionCreateReqVOOut.setPackingNumber(detailDO.getFromPackingNumber());
transactionCreateReqVOOut.setLocationCode(detailDO.getFromLocationCode());
transactionCreateReqVOOut.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOOut.setAmount(BigDecimal.ZERO);
transactionCreateReqVOOut.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOOut.setAmount(balanceDO.getAmount());
transactionCreateReqVOOut.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOOut.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOOut.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOOut.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOOut.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVOOut);

6
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationService.java

@ -110,4 +110,10 @@ public interface LocationService {
* @return 空闲库位数
*/
Long getFreeLocationCount();
/**
* 线边安全库存
* @return 线边安全库存
*/
List<LocationRespVO> getSafeLocationList();
}

11
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/location/LocationServiceImpl.java

@ -397,6 +397,17 @@ public class LocationServiceImpl implements LocationService {
return locationMapper.selectCount(queryWrapper);
}
@Override
public List<LocationRespVO> getSafeLocationList() {
QueryWrapper<LocationDO> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("available", "TRUE");
queryWrapper.eq("`type`", "WIP");//线边库
queryWrapper.inSql("`code`", "SELECT DISTINCT location_code FROM transaction_balance");
queryWrapper.last("LIMIT 10");
List<LocationDO> locationDOList = locationMapper.selectList(queryWrapper);
return LocationConvert.INSTANCE.convertList(locationDOList);
}
/**
* 判断优先空库位和非空库位
*

22
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productdismantleRecord/ProductdismantleRecordMainServiceImpl.java

@ -17,6 +17,7 @@ import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.convert.productdismantleRecord.ProductdismantleRecordDetailaConvert;
import com.win.module.wms.convert.productdismantleRecord.ProductdismantleRecordMainConvert;
import com.win.module.wms.convert.repleinshRecord.RepleinshRecordDetailConvert;
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.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.location.LocationDO;
@ -29,6 +30,7 @@ import com.win.module.wms.dal.dataobject.recordsetting.RecordsettingDO;
import com.win.module.wms.dal.dataobject.repleinshRecord.RepleinshRecordDetailDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.dataobject.workstation.WorkstationDO;
import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.productdismantleRecord.ProductdismantleRecordDetailaMapper;
import com.win.module.wms.dal.mysql.productdismantleRecord.ProductdismantleRecordDetailbMapper;
import com.win.module.wms.dal.mysql.productdismantleRecord.ProductdismantleRecordMainMapper;
@ -64,6 +66,8 @@ import static com.win.module.wms.enums.ErrorCodeConstants.*;
@Validated
public class ProductdismantleRecordMainServiceImpl implements ProductdismantleRecordMainService {
@Resource
private BalanceMapper balanceMapper;
@Resource
private ProductdismantleRecordDetailbMapper productdismantleRecordDetailbMapper;
@Resource
@ -104,6 +108,7 @@ public class ProductdismantleRecordMainServiceImpl implements ProductdismantleRe
mainDO.setExecuteTime(LocalDateTime.now());
mainDO.setActiveDate(LocalDateTime.now());
mainDO.setAvailable("TRUE");
mainDO.setId(null);
// 业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ProductDisassemble");
mainDO.setFromLocationTypes(businesstypeDO.getOutLocationTypes());
@ -125,6 +130,11 @@ public class ProductdismantleRecordMainServiceImpl implements ProductdismantleRe
productdismantleRecordDetailaDO.setFromLocationGroupCode(locationDO.getLocationGroupCode());
productdismantleRecordDetailaDO.setMasterId(mainDO.getId());
productdismantleRecordDetailaMapper.insert(productdismantleRecordDetailaDO);
//查询库存余额
BalanceDO balanceDO = balanceMapper.getBalanceQty(productdismantleRecordDetailaDO.getPackingNumber(), productdismantleRecordDetailaDO.getItemCode(), productdismantleRecordDetailaDO.getBatch(), productdismantleRecordDetailaDO.getInventoryStatus(), productdismantleRecordDetailaDO.getFromLocationCode());
if (balanceDO == null) {
throw exception(UNPLANNEDISSUE_REQUEST_DETAIL_BALANCE_NOT_EXISTS);
}
//添加库存事务list
// 出动作
TransactionCreateReqVO transactionCreateReqVOOut = new TransactionCreateReqVO();
@ -140,7 +150,11 @@ public class ProductdismantleRecordMainServiceImpl implements ProductdismantleRe
transactionCreateReqVOOut.setPackingNumber(productdismantleRecordDetailaDO.getPackingNumber());
transactionCreateReqVOOut.setBatch(productdismantleRecordDetailaDO.getBatch());
transactionCreateReqVOOut.setContainerNumber(productdismantleRecordDetailaDO.getContainerNumber());
transactionCreateReqVOOut.setAmount(BigDecimal.ZERO);
transactionCreateReqVOOut.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOOut.setAmount(balanceDO.getAmount());
transactionCreateReqVOOut.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOOut.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOOut.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOOut.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOOut.setLocationCode(productdismantleRecordDetailaDO.getFromLocationCode());
transactionCreateReqVOList.add(transactionCreateReqVOOut);
@ -183,7 +197,11 @@ public class ProductdismantleRecordMainServiceImpl implements ProductdismantleRe
transactionCreateReqVO.setPackingNumber(productdismantleRecordDetailbDO.getPackingNumber());
transactionCreateReqVO.setBatch(productdismantleRecordDetailbDO.getBatch());
transactionCreateReqVO.setContainerNumber("");
transactionCreateReqVO.setAmount(BigDecimal.ZERO);
transactionCreateReqVO.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVO.setAmount(balanceDO.getAmount());
transactionCreateReqVO.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVO.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVO.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVO.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVO.setLocationCode(productdismantleRecordDetailbDO.getToLocationCode());
transactionCreateReqVOList.add(transactionCreateReqVO);

11
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productdismantleRequest/ProductdismantleRequestDetailbServiceImpl.java

@ -163,12 +163,15 @@ public class ProductdismantleRequestDetailbServiceImpl implements Productdismant
if(detailbDOMap.get(productdismantleRequestDetailbRespVO.getItemCode()) != null){
ProductdismantleRequestDetailbDO productdismantleRequestDetailbDO = detailbDOMap.get(productdismantleRequestDetailbRespVO.getItemCode());
productdismantleRequestDetailbRespVO = ProductdismantleRequestDetailbConvert.INSTANCE.convert(productdismantleRequestDetailbDO);
}else {
productdismantleRequestDetailbRespVO.setQty(BigDecimal.ZERO);
}
}else {
productdismantleRequestDetailbRespVO.setQty(BigDecimal.ZERO);
// else {
// productdismantleRequestDetailbRespVO.setQty(BigDecimal.ZERO);
// }
}
// else {
// productdismantleRequestDetailbRespVO.setQty(BigDecimal.ZERO);
// }
productdismantleRequestDetailbRespVO.setQty(new BigDecimal(map.get("qty").toString()));
productdismantleRequestDetailbRespVO.setUom(map.get("uom") != null?map.get("uom").toString():"");
productdismantleRequestDetailbRespVO.setVersion(map.get("version") != null?map.get("version").toString():"");
resultList.add(productdismantleRequestDetailbRespVO);

24
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productionreturnRecord/ProductionreturnRecordMainServiceImpl.java

@ -17,6 +17,7 @@ import com.win.module.wms.convert.issueRecord.IssueRecordDetailConvert;
import com.win.module.wms.convert.productionreturnRecord.ProductionreturnRecordDetailConvert;
import com.win.module.wms.convert.productionreturnRecord.ProductionreturnRecordMainConvert;
import com.win.module.wms.dal.dataobject.accountcalendar.AccountcalendarDO;
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.issueRecord.IssueRecordDetailDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
@ -26,6 +27,7 @@ import com.win.module.wms.dal.dataobject.productionreturnRecord.Productionreturn
import com.win.module.wms.dal.dataobject.recordsetting.RecordsettingDO;
import com.win.module.wms.dal.dataobject.repleinshRecord.RepleinshRecordDetailDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.productionreturnRecord.ProductionreturnRecordDetailMapper;
import com.win.module.wms.dal.mysql.productionreturnRecord.ProductionreturnRecordMainMapper;
import com.win.module.wms.service.itembasic.ItembasicService;
@ -58,6 +60,8 @@ import static com.win.module.wms.enums.ErrorCodeConstants.*;
@Validated
public class ProductionreturnRecordMainServiceImpl implements ProductionreturnRecordMainService {
@Resource
private BalanceMapper balanceMapper;
@Resource
private ProductionreturnRecordDetailMapper productionreturnRecordDetailMapper;
@Resource
@ -102,6 +106,7 @@ public class ProductionreturnRecordMainServiceImpl implements ProductionreturnRe
mainDO.setExecuteTime(LocalDateTime.now());
mainDO.setActiveDate(LocalDateTime.now());
mainDO.setAvailable("TRUE");
mainDO.setId(null);
// 业务类型
mainDO.setToLocationTypes(businesstypeDO.getInLocationTypes());
mainDO.setFromLocationTypes(businesstypeDO.getOutLocationTypes());
@ -143,6 +148,11 @@ public class ProductionreturnRecordMainServiceImpl implements ProductionreturnRe
} else {
throw exception(ITEMBASIC_NOT_EXISTS);
}
//查询库存余额
BalanceDO balanceDO = balanceMapper.getBalanceQty(detailDO.getFromPackingNumber(), detailDO.getItemCode(), detailDO.getFromBatch(), detailDO.getInventoryStatus(), detailDO.getFromLocationCode());
if (balanceDO == null) {
throw exception(UNPLANNEDISSUE_REQUEST_DETAIL_BALANCE_NOT_EXISTS);
}
// 库存事务——入
TransactionCreateReqVO transactionCreateReqVOIn = new TransactionCreateReqVO();
BeanUtils.copyProperties(detailDO, transactionCreateReqVOIn);
@ -155,8 +165,11 @@ public class ProductionreturnRecordMainServiceImpl implements ProductionreturnRe
transactionCreateReqVOIn.setPackingNumber(detailDO.getToPackingNumber());
transactionCreateReqVOIn.setInventoryStatus(detailDO.getInventoryStatus());
transactionCreateReqVOIn.setLocationCode(detailDO.getToLocationCode());
transactionCreateReqVOIn.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOIn.setAmount(BigDecimal.ZERO);
transactionCreateReqVOIn.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOIn.setAmount(balanceDO.getAmount());
transactionCreateReqVOIn.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOIn.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOIn.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOIn.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOIn.setRecordNumber(number);
transactionCreateReqVOIn.setId(null);
@ -174,8 +187,11 @@ public class ProductionreturnRecordMainServiceImpl implements ProductionreturnRe
transactionCreateReqVOOut.setBatch(detailDO.getFromBatch());
transactionCreateReqVOOut.setPackingNumber(detailDO.getFromPackingNumber());
transactionCreateReqVOOut.setLocationCode(detailDO.getFromLocationCode());
transactionCreateReqVOOut.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOOut.setAmount(BigDecimal.ZERO);
transactionCreateReqVOOut.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOOut.setAmount(balanceDO.getAmount());
transactionCreateReqVOOut.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOOut.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOOut.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOOut.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOOut.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVOOut);

11
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productputawayJob/ProductputawayJobDetailService.java

@ -2,10 +2,7 @@ package com.win.module.wms.service.productputawayJob;
import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.controller.productputawayJob.vo.ProductputawayJobDetailCreateReqVO;
import com.win.module.wms.controller.productputawayJob.vo.ProductputawayJobDetailExportReqVO;
import com.win.module.wms.controller.productputawayJob.vo.ProductputawayJobDetailPageReqVO;
import com.win.module.wms.controller.productputawayJob.vo.ProductputawayJobDetailUpdateReqVO;
import com.win.module.wms.controller.productputawayJob.vo.*;
import com.win.module.wms.dal.dataobject.productputawayJob.ProductputawayJobDetailDO;
import javax.validation.Valid;
@ -82,4 +79,10 @@ public interface ProductputawayJobDetailService {
PageResult<ProductputawayJobDetailDO> getProductputawayJobDetailSeniorList(CustomConditions conditions);
List<ProductputawayJobDetailDO> selectList(Long id);
/**
* 待上架成品库存
* @return 待上架成品库存列表
*/
List<ProductputawayJobDetailRespVO> getProductputawayJobDetailList();
}

15
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productputawayJob/ProductputawayJobDetailServiceImpl.java

@ -1,11 +1,9 @@
package com.win.module.wms.service.productputawayJob;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.win.framework.common.pojo.CustomConditions;
import com.win.framework.common.pojo.PageResult;
import com.win.module.wms.controller.productputawayJob.vo.ProductputawayJobDetailCreateReqVO;
import com.win.module.wms.controller.productputawayJob.vo.ProductputawayJobDetailExportReqVO;
import com.win.module.wms.controller.productputawayJob.vo.ProductputawayJobDetailPageReqVO;
import com.win.module.wms.controller.productputawayJob.vo.ProductputawayJobDetailUpdateReqVO;
import com.win.module.wms.controller.productputawayJob.vo.*;
import com.win.module.wms.convert.productputawayJob.ProductputawayJobDetailConvert;
import com.win.module.wms.dal.dataobject.productputawayJob.ProductputawayJobDetailDO;
import com.win.module.wms.dal.mysql.productputawayJob.ProductputawayJobDetailMapper;
@ -92,4 +90,13 @@ public class ProductputawayJobDetailServiceImpl implements ProductputawayJobDeta
public List<ProductputawayJobDetailDO> selectList(Long masterId) {
return productputawayJobDetailMapper.selectList(masterId);
}
@Override
public List<ProductputawayJobDetailRespVO> getProductputawayJobDetailList() {
QueryWrapper<ProductputawayJobDetailDO> queryWrapper = new QueryWrapper<>();
queryWrapper.inSql("number", "SELECT number FROM job_productputaway_main WHERE `status`=1 OR `status`=2");
queryWrapper.last("LIMIT 10");
List<ProductputawayJobDetailDO> productputawayJobDetailDOList = productputawayJobDetailMapper.selectList(queryWrapper);
return ProductputawayJobDetailConvert.INSTANCE.convertList(productputawayJobDetailDOList);
}
}

24
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productputawayRecord/ProductputawayRecordMainServiceImpl.java

@ -15,6 +15,7 @@ import com.win.module.wms.controller.productputawayRecord.vo.ProductputawayRecor
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.convert.productputawayRecord.ProductputawayRecordDetailConvert;
import com.win.module.wms.convert.productputawayRecord.ProductputawayRecordMainConvert;
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.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.location.LocationDO;
@ -22,6 +23,7 @@ import com.win.module.wms.dal.dataobject.productputawayRecord.ProductputawayReco
import com.win.module.wms.dal.dataobject.productputawayRecord.ProductputawayRecordMainDO;
import com.win.module.wms.dal.dataobject.recordsetting.RecordsettingDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.productputawayRecord.ProductputawayRecordDetailMapper;
import com.win.module.wms.dal.mysql.productputawayRecord.ProductputawayRecordMainMapper;
import com.win.module.wms.service.itembasic.ItembasicService;
@ -54,6 +56,8 @@ import static com.win.module.wms.enums.ErrorCodeConstants.*;
@Validated
public class ProductputawayRecordMainServiceImpl implements ProductputawayRecordMainService {
@Resource
private BalanceMapper balanceMapper;
@Resource
private ProductputawayRecordDetailMapper productputawayRecordDetailMapper;
@Resource
@ -88,6 +92,7 @@ public class ProductputawayRecordMainServiceImpl implements ProductputawayRecord
mainDO.setExecuteTime(LocalDateTime.now());
mainDO.setActiveDate(LocalDateTime.now());
mainDO.setAvailable("TRUE");
mainDO.setId(null);
// 业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ProductPutawayRecord");
mainDO.setToLocationTypes(businesstypeDO.getInLocationTypes());
@ -130,6 +135,11 @@ public class ProductputawayRecordMainServiceImpl implements ProductputawayRecord
} else {
throw exception(ITEMBASIC_NOT_EXISTS);
}
//查询库存余额
BalanceDO balanceDO = balanceMapper.getBalanceQty(detailDO.getFromPackingNumber(), detailDO.getItemCode(), detailDO.getFromBatch(), detailDO.getInventoryStatus(), detailDO.getFromLocationCode());
if (balanceDO == null) {
throw exception(UNPLANNEDISSUE_REQUEST_DETAIL_BALANCE_NOT_EXISTS);
}
// 库存事务——入
TransactionCreateReqVO transactionCreateReqVOIn = new TransactionCreateReqVO();
BeanUtils.copyProperties(detailDO, transactionCreateReqVOIn);
@ -142,8 +152,11 @@ public class ProductputawayRecordMainServiceImpl implements ProductputawayRecord
transactionCreateReqVOIn.setPackingNumber(detailDO.getToPackingNumber());
transactionCreateReqVOIn.setInventoryStatus(detailDO.getInventoryStatus());
transactionCreateReqVOIn.setLocationCode(detailDO.getToLocationCode());
transactionCreateReqVOIn.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOIn.setAmount(BigDecimal.ZERO);
transactionCreateReqVOIn.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOIn.setAmount(balanceDO.getAmount());
transactionCreateReqVOIn.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOIn.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOIn.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOIn.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOIn.setRecordNumber(number);
transactionCreateReqVOIn.setId(null);
@ -161,8 +174,11 @@ public class ProductputawayRecordMainServiceImpl implements ProductputawayRecord
transactionCreateReqVOOut.setBatch(detailDO.getFromBatch());
transactionCreateReqVOOut.setPackingNumber(detailDO.getFromPackingNumber());
transactionCreateReqVOOut.setLocationCode(detailDO.getFromLocationCode());
transactionCreateReqVOOut.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOOut.setAmount(BigDecimal.ZERO);
transactionCreateReqVOOut.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOOut.setAmount(balanceDO.getAmount());
transactionCreateReqVOOut.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOOut.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOOut.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOOut.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOOut.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVOOut);

14
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productreceiptJob/ProductreceiptJobMainServiceImpl.java

@ -43,6 +43,7 @@ import com.win.module.wms.dal.dataobject.supplieritem.SupplieritemDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.dataobject.workstation.WorkstationDO;
import com.win.module.wms.dal.mysql.backflushRequest.BackflushRequestDetailbMapper;
import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.offlinesettlementRecord.OfflinesettlementRecordDetailMapper;
import com.win.module.wms.dal.mysql.offlinesettlementRecord.OfflinesettlementRecordMainMapper;
import com.win.module.wms.dal.mysql.productreceiptJob.ProductreceiptJobMainMapper;
@ -93,6 +94,8 @@ import static com.win.module.wms.enums.ErrorCodeConstants.*;
@Validated
public class ProductreceiptJobMainServiceImpl implements ProductreceiptJobMainService {
@Resource
private BalanceMapper balanceMapper;
@Resource
private ProductputawayRequestMainService productputawayRequestMainService;
@Resource
@ -483,6 +486,11 @@ public class ProductreceiptJobMainServiceImpl implements ProductreceiptJobMainSe
BigDecimal qty = productreceiptRecordDetailDO.getQty().multiply(backflushRecordDetailbDO.getQty());
backflushRecordDetailbDO.setQty(qty);
backflushRecordDetailbDOList.add(backflushRecordDetailbDO);
//查询库存余额
BalanceDO balanceDO = balanceMapper.getBalanceQty(productreceiptRecordDetailDO.getPackingNumber(), productreceiptRecordDetailDO.getItemCode(), productreceiptRecordDetailDO.getBatch(), productreceiptRecordDetailDO.getInventoryStatus(), productreceiptRecordDetailDO.getToLocationCode());
if (balanceDO == null) {
throw exception(UNPLANNEDISSUE_REQUEST_DETAIL_BALANCE_NOT_EXISTS);
}
//添加库存事务list
// 出动作
TransactionCreateReqVO transactionCreateReqVO = new TransactionCreateReqVO();
@ -499,7 +507,11 @@ public class ProductreceiptJobMainServiceImpl implements ProductreceiptJobMainSe
transactionCreateReqVO.setPackingNumber(backflushRecordDetailbDO.getPackingNumber());
transactionCreateReqVO.setBatch(backflushRecordDetailbDO.getBatch());
transactionCreateReqVO.setContainerNumber("");
transactionCreateReqVO.setAmount(BigDecimal.ZERO);
transactionCreateReqVO.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVO.setAmount(balanceDO.getAmount());
transactionCreateReqVO.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVO.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVO.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVO.setWarehouseCode("");
transactionCreateReqVO.setLocationCode(backflushRecordDetailbDO.getFromLocationCode());
transactionCreateReqVO.setQty(qty);

17
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/productreceiptRecord/ProductreceiptRecordMainServiceImpl.java

@ -17,6 +17,7 @@ import com.win.module.wms.convert.productreceiptRecord.ProductreceiptRecordDetai
import com.win.module.wms.convert.productreceiptRecord.ProductreceiptRecordMainConvert;
import com.win.module.wms.convert.repleinshRecord.RepleinshRecordDetailConvert;
import com.win.module.wms.dal.dataobject.accountcalendar.AccountcalendarDO;
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.itembasic.ItembasicDO;
import com.win.module.wms.dal.dataobject.location.LocationDO;
@ -25,6 +26,7 @@ import com.win.module.wms.dal.dataobject.productreceiptRecord.ProductreceiptReco
import com.win.module.wms.dal.dataobject.recordsetting.RecordsettingDO;
import com.win.module.wms.dal.dataobject.repleinshRecord.RepleinshRecordDetailDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.productreceiptRecord.ProductreceiptRecordDetailMapper;
import com.win.module.wms.dal.mysql.productreceiptRecord.ProductreceiptRecordMainMapper;
import com.win.module.wms.service.itembasic.ItembasicService;
@ -58,6 +60,8 @@ import static com.win.module.wms.enums.ErrorCodeConstants.*;
@Validated
public class ProductreceiptRecordMainServiceImpl implements ProductreceiptRecordMainService {
@Resource
private BalanceMapper balanceMapper;
@Resource
private ProductreceiptJobMainService productreceiptJobMainService;
@Resource
@ -94,6 +98,7 @@ public class ProductreceiptRecordMainServiceImpl implements ProductreceiptRecord
mainDO.setExecuteTime(LocalDateTime.now());
mainDO.setActiveDate(LocalDateTime.now());
mainDO.setAvailable("TRUE");
mainDO.setId(null);
// 业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("ProductReceiptRecord");
mainDO.setToLocationTypes(businesstypeDO.getInLocationTypes());
@ -128,6 +133,11 @@ public class ProductreceiptRecordMainServiceImpl implements ProductreceiptRecord
throw exception(ITEMBASIC_NOT_EXISTS);
}
productreceiptRecordDetailMapper.insert(detailDO);
//查询库存余额
BalanceDO balanceDO = balanceMapper.getBalanceQty(detailDO.getPackingNumber(), detailDO.getItemCode(), detailDO.getBatch(), detailDO.getInventoryStatus(), detailDO.getToLocationCode());
if (balanceDO == null) {
throw exception(UNPLANNEDISSUE_REQUEST_DETAIL_BALANCE_NOT_EXISTS);
}
// 库存事务——入
TransactionCreateReqVO transactionCreateReqVOIn = new TransactionCreateReqVO();
BeanUtils.copyProperties(detailDO, transactionCreateReqVOIn);
@ -140,8 +150,11 @@ public class ProductreceiptRecordMainServiceImpl implements ProductreceiptRecord
transactionCreateReqVOIn.setPackingNumber(detailDO.getPackingNumber());
transactionCreateReqVOIn.setInventoryStatus(detailDO.getInventoryStatus());
transactionCreateReqVOIn.setLocationCode(detailDO.getToLocationCode());
transactionCreateReqVOIn.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOIn.setAmount(BigDecimal.ZERO);
transactionCreateReqVOIn.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOIn.setAmount(balanceDO.getAmount());
transactionCreateReqVOIn.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOIn.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOIn.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOIn.setWarehouseCode(mainDO.getToWarehouseCode());
transactionCreateReqVOIn.setRecordNumber(number);
transactionCreateReqVOIn.setId(null);

24
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/repleinshRecord/RepleinshRecordMainServiceImpl.java

@ -11,6 +11,7 @@ import com.win.module.wms.controller.repleinshRecord.vo.*;
import com.win.module.wms.controller.transaction.vo.TransactionCreateReqVO;
import com.win.module.wms.convert.purchasereturnRecord.PurchasereturnRecordDetailConvert;
import com.win.module.wms.convert.repleinshRecord.RepleinshRecordDetailConvert;
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.issueRecord.IssueRecordMainDO;
import com.win.module.wms.dal.dataobject.itembasic.ItembasicDO;
@ -19,6 +20,7 @@ import com.win.module.wms.dal.dataobject.purchasereturnRecord.PurchasereturnReco
import com.win.module.wms.dal.dataobject.recordsetting.RecordsettingDO;
import com.win.module.wms.dal.dataobject.repleinshRecord.RepleinshRecordDetailDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.mysql.balance.BalanceMapper;
import com.win.module.wms.dal.mysql.repleinshRecord.RepleinshRecordDetailMapper;
import com.win.module.wms.service.itembasic.ItembasicService;
import com.win.module.wms.service.location.LocationService;
@ -55,6 +57,8 @@ import static com.win.module.wms.enums.ErrorCodeConstants.*;
@Validated
public class RepleinshRecordMainServiceImpl implements RepleinshRecordMainService {
@Resource
private BalanceMapper balanceMapper;
@Resource
private TransactionService transactionService;
@Resource
@ -89,6 +93,7 @@ public class RepleinshRecordMainServiceImpl implements RepleinshRecordMainServic
mainDO.setExecuteTime(LocalDateTime.now());
mainDO.setActiveDate(LocalDateTime.now());
mainDO.setAvailable("TRUE");
mainDO.setId(null);
// 业务类型
BusinesstypeDO businesstypeDO = jobUtils.selectDocumentSettingFromBusinessType("RepleinmentRecord");
mainDO.setToLocationTypes(businesstypeDO.getInLocationTypes());
@ -131,6 +136,11 @@ public class RepleinshRecordMainServiceImpl implements RepleinshRecordMainServic
} else {
throw exception(ITEMBASIC_NOT_EXISTS);
}
//查询库存余额
BalanceDO balanceDO = balanceMapper.getBalanceQty(detailDO.getFromPackingNumber(), detailDO.getItemCode(), detailDO.getFromBatch(), detailDO.getInventoryStatus(), detailDO.getFromLocationCode());
if (balanceDO == null) {
throw exception(UNPLANNEDISSUE_REQUEST_DETAIL_BALANCE_NOT_EXISTS);
}
// 库存事务——入
TransactionCreateReqVO transactionCreateReqVOIn = new TransactionCreateReqVO();
BeanUtils.copyProperties(detailDO, transactionCreateReqVOIn);
@ -143,8 +153,11 @@ public class RepleinshRecordMainServiceImpl implements RepleinshRecordMainServic
transactionCreateReqVOIn.setPackingNumber(detailDO.getToPackingNumber());
transactionCreateReqVOIn.setInventoryStatus(detailDO.getInventoryStatus());
transactionCreateReqVOIn.setLocationCode(detailDO.getToLocationCode());
transactionCreateReqVOIn.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOIn.setAmount(BigDecimal.ZERO);
transactionCreateReqVOIn.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOIn.setAmount(balanceDO.getAmount());
transactionCreateReqVOIn.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOIn.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOIn.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOIn.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOIn.setRecordNumber(number);
transactionCreateReqVOIn.setId(null);
@ -162,8 +175,11 @@ public class RepleinshRecordMainServiceImpl implements RepleinshRecordMainServic
transactionCreateReqVOOut.setBatch(detailDO.getFromBatch());
transactionCreateReqVOOut.setPackingNumber(detailDO.getFromPackingNumber());
transactionCreateReqVOOut.setLocationCode(detailDO.getFromLocationCode());
transactionCreateReqVOOut.setSinglePrice(BigDecimal.ZERO);
transactionCreateReqVOOut.setAmount(BigDecimal.ZERO);
transactionCreateReqVOOut.setSinglePrice(balanceDO.getSinglePrice());
transactionCreateReqVOOut.setAmount(balanceDO.getAmount());
transactionCreateReqVOOut.setArriveDate(balanceDO.getArriveDate());
transactionCreateReqVOOut.setProduceDate(balanceDO.getProduceDate());
transactionCreateReqVOOut.setExpireDate(balanceDO.getExpireDate());
transactionCreateReqVOOut.setWarehouseCode(mainDO.getFromWarehouseCode());
transactionCreateReqVOOut.setId(null);
transactionCreateReqVOList.add(transactionCreateReqVOOut);

Loading…
Cancel
Save