Commit 614ccf2c authored by hubaoshan's avatar hubaoshan

1.4

parent 87a18607
......@@ -91,5 +91,8 @@ public class WmsGoods extends CyIdIncreEntity<WmsGoods> {
private String goodsBrand;
@Excel(name = "商品名称", orderNum = "9", width = 20)
private String goodsDictName;
private Integer inCounts;
private Integer outCounts;
}
......@@ -13,7 +13,7 @@ import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.rcisoft.bus.util.ExportExcelUtil;
import org.rcisoft.bus.wmsgoodsapply.dto.ExportEntryDto;
import org.rcisoft.bus.wmsgoodsapply.dto.addWmsGoodsApply;
import org.rcisoft.bus.wmsgoodsapply.dto.AddWmsGoodsApplyDTO;
import org.rcisoft.core.anno.CyEncryptSm4Anno;
import org.rcisoft.core.anno.CyOpeLogAnno;
import org.rcisoft.core.operlog.enums.CyLogTypeEnum;
......@@ -30,7 +30,6 @@ import org.rcisoft.core.util.CyResultGenUtil;
import org.rcisoft.core.model.CyPersistModel;
import org.rcisoft.core.constant.CyMessCons;
import org.rcisoft.core.controller.CyPaginationController;
import org.rcisoft.core.util.CyUserUtil;
import org.rcisoft.core.model.CyGridModel;
import org.rcisoft.core.exception.CyServiceException;
import javax.servlet.http.HttpServletResponse;
......@@ -39,7 +38,6 @@ import javax.validation.Valid;
import org.rcisoft.bus.wmsgoodsapply.entity.WmsGoodsApply;
import org.rcisoft.bus.wmsgoodsapply.service.WmsGoodsApplyService;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.io.OutputStream;
......@@ -75,7 +73,7 @@ public class WmsGoodsApplyController extends CyPaginationController<WmsGoodsAppl
@CyOpeLogAnno(title = "system-商品申请表管理-新增商品申请表", businessType = CyLogTypeEnum.INSERT)
@ApiOperation(value="添加商品申请表", notes="添加商品申请表")
@PostMapping(value = "/in")
public CyResult batchAdd(@RequestBody addWmsGoodsApply wmsGoodsApply) {
public CyResult batchAdd(@RequestBody AddWmsGoodsApplyDTO wmsGoodsApply) {
CyPersistModel data = wmsGoodsApplyServiceImpl.batchPersist(wmsGoodsApply);
return CyResultGenUtil.builder(data,
CyMessCons.MESSAGE_ALERT_SUCCESS,
......@@ -85,7 +83,7 @@ public class WmsGoodsApplyController extends CyPaginationController<WmsGoodsAppl
@CyOpeLogAnno(title = "system-商品申请表管理-新增商品申请表", businessType = CyLogTypeEnum.INSERT)
@ApiOperation(value="添加商品申请表", notes="添加商品申请表")
@PostMapping(value = "/Out")
public CyResult batchAddOut(@RequestBody addWmsGoodsApply wmsGoodsApply) {
public CyResult batchAddOut(@RequestBody AddWmsGoodsApplyDTO wmsGoodsApply) {
CyPersistModel data = wmsGoodsApplyServiceImpl.batchOutPersist(wmsGoodsApply);
return CyResultGenUtil.builder(data,
CyMessCons.MESSAGE_ALERT_SUCCESS,
......
package org.rcisoft.bus.wmsgoodsapply.dto;
import lombok.Data;
import org.rcisoft.bus.wmsgoods.entity.WmsGoods;
import org.rcisoft.bus.wmsgoodsapply.entity.WmsGoodsApply;
import java.util.List;
@Data
public class addWmsGoodsApply {
List<WmsGoodsApply>BoxList;
public class AddWmsGoodsApplyDTO {
List<WmsGoods> boxList;
private String ioType;
private String dealStatus;
private Integer goodsCounts;
......@@ -16,12 +17,5 @@ public class addWmsGoodsApply {
private String shipperAddress;
private String shipperPhone;
private String goodsCheck;
private String salesman;
private String maker;
private String inGoods;
private String outGoods;
private String goodsNumber;
private Integer goodsId;
private Integer inCounts;
}
......@@ -106,10 +106,6 @@ public class WmsGoodsApply extends CyIdIncreEntity<WmsGoodsApply> {
@Excel(name = "出库", orderNum = "17", width = 20)
private String outGoods;
private String goodsNumber;
private Integer inCounts;
private Integer outCounts;
private Integer goodsId;
}
package org.rcisoft.bus.wmsgoodsapply.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.rcisoft.bus.wmsgoodsapply.dto.ImportGoodsTempDto;
import org.rcisoft.bus.wmsgoodsapply.dto.addWmsGoodsApply;
import org.rcisoft.bus.wmsgoodsapply.dto.AddWmsGoodsApplyDTO;
import org.rcisoft.bus.wmsgoodsapply.entity.WmsGoodsApply;
import org.rcisoft.core.model.CyPersistModel;
import org.rcisoft.core.aop.CyPageUtilAsp;
import org.rcisoft.core.model.CyPageInfo;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
......@@ -77,6 +73,6 @@ public interface WmsGoodsApplyService {
*/
List<WmsGoodsApply> export(WmsGoodsApply wmsGoodsApply);
CyPersistModel batchPersist(addWmsGoodsApply wmsGoodsApply);
CyPersistModel batchOutPersist(addWmsGoodsApply wmsGoodsApply);
CyPersistModel batchPersist(AddWmsGoodsApplyDTO wmsGoodsApply);
CyPersistModel batchOutPersist(AddWmsGoodsApplyDTO wmsGoodsApply);
}
package org.rcisoft.bus.wmsgoodsapply.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.alipay.api.domain.Goods;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.rcisoft.bus.wmsgoods.service.WmsGoodsService;
import org.rcisoft.bus.wmsgoodsapply.dto.addWmsGoodsApply;
import org.rcisoft.bus.wmsgoods.entity.WmsGoods;
import org.rcisoft.bus.wmsgoodsapply.dto.AddWmsGoodsApplyDTO;
import org.rcisoft.bus.wmsgoodslog.dto.AddLogList;
import org.rcisoft.bus.wmsgoodslog.entity.WmsGoodsLog;
import org.rcisoft.bus.wmsgoodslog.service.WmsGoodsLogService;
......@@ -27,7 +25,6 @@ import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import org.rcisoft.core.model.CyPageInfo;
import java.math.BigInteger;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.ArrayList;
......@@ -47,7 +44,9 @@ public class WmsGoodsApplyServiceImpl extends ServiceImpl<WmsGoodsApplyRepositor
@Autowired
private WmsGoodsStockService wmsGoodsStockRepositoryImpl;
private WmsGoodsLogService wmsGoodsLogRepositoryImpl;
@Autowired
private WmsGoodsLogService wmsGoodsLogServiceImpl;
/**
......@@ -68,50 +67,47 @@ public class WmsGoodsApplyServiceImpl extends ServiceImpl<WmsGoodsApplyRepositor
}
@Transactional(propagation = Propagation.REQUIRED, isolation = Isolation.DEFAULT)
@Override
public CyPersistModel batchPersist(addWmsGoodsApply addwmsGoodsApply) {
public CyPersistModel batchPersist(AddWmsGoodsApplyDTO addwmsGoodsApply) {
//入库
WmsGoodsApply wmsGoodsApply=new WmsGoodsApply();
BeanUtils.copyProperties(addwmsGoodsApply,wmsGoodsApply);
wmsGoodsApply.setIoType("0");
wmsGoodsApply.setDealStatus("0");
wmsGoodsApply.setGoodsId(addwmsGoodsApply.getGoodsId());
baseMapper.insert(wmsGoodsApply);
//更新商品数量
List<WmsGoodsApply> boxList = addwmsGoodsApply.getBoxList();
for (WmsGoodsApply box : addwmsGoodsApply.getBoxList()) {
WmsGoodsStock goodsStock = wmsGoodsStockRepositoryImpl.findById(boxList.get(0).getGoodsId());
List<WmsGoods> boxList = addwmsGoodsApply.getBoxList();
//空
for (WmsGoods box : addwmsGoodsApply.getBoxList()) {
WmsGoodsStock goodsStock = wmsGoodsStockRepositoryImpl.findById(addwmsGoodsApply.getBoxList().get(0).getBusinessId());
if (goodsStock != null) {
goodsStock.setGoodsCounts(goodsStock.getGoodsCounts() + box.getInCounts());
wmsGoodsStockRepositoryImpl.updateCounts(goodsStock);
} else {
WmsGoodsStock newGoodsStock = new WmsGoodsStock();
newGoodsStock.setGoodsId(boxList.get(0).getGoodsId());
newGoodsStock.setGoodsId(addwmsGoodsApply.getBoxList().get(0).getBusinessId());
newGoodsStock.setGoodsCounts(box.getInCounts());
wmsGoodsStockRepositoryImpl.persist(newGoodsStock);
}
}
//日志
AddLogList addLogList = new AddLogList();
List<WmsGoodsLog> logList = new ArrayList<>();
for (WmsGoodsApply box : addwmsGoodsApply.getBoxList()) {
WmsGoodsStock goodsStock = wmsGoodsStockRepositoryImpl.findById(addwmsGoodsApply.getGoodsId());
//日志
AddLogList addLogList = new AddLogList();
List<WmsGoodsLog> logList = new ArrayList<>();
WmsGoodsStock wmsgoodsStock = wmsGoodsStockRepositoryImpl.findById(box.getBusinessId());
WmsGoodsLog log = new WmsGoodsLog();
log.setApplyId(wmsGoodsApply.getBusinessId());
log.setGoodsCounts(box.getGoodsCounts());
log.setGoodsCounts(box.getInCounts());
log.setIoType("0");
assert goodsStock != null;
log.setUpdateCounts(goodsStock.getGoodsCounts());
assert wmsgoodsStock != null;
log.setUpdateCounts(wmsgoodsStock.getGoodsCounts());
logList.add(log);
addLogList.setBoxList(logList);
wmsGoodsLogServiceImpl.batchPersist(addLogList);
}
addLogList.setBoxList(logList);
wmsGoodsLogRepositoryImpl.batchPersist(addLogList);
return new CyPersistModel(1);
}
@Transactional(propagation = Propagation.REQUIRED,isolation = Isolation.DEFAULT)
@Override
public CyPersistModel batchOutPersist(addWmsGoodsApply addwmsGoodsApply) {
public CyPersistModel batchOutPersist(AddWmsGoodsApplyDTO addwmsGoodsApply) {
// 出库
WmsGoodsApply wmsGoodsApplyOut = new WmsGoodsApply();
BeanUtils.copyProperties(addwmsGoodsApply, wmsGoodsApplyOut);
......@@ -120,31 +116,30 @@ public class WmsGoodsApplyServiceImpl extends ServiceImpl<WmsGoodsApplyRepositor
baseMapper.insert(wmsGoodsApplyOut);
// 更新商品数量
WmsGoodsStock goodsStock = wmsGoodsStockRepositoryImpl.findById(addwmsGoodsApply.getGoodsId());
for (WmsGoodsApply box : addwmsGoodsApply.getBoxList()) {
for (WmsGoods box : addwmsGoodsApply.getBoxList()) {
WmsGoodsStock goodsStock = wmsGoodsStockRepositoryImpl.findById(box.getBusinessId());
if (goodsStock != null) {
if (box.getGoodsCounts() > goodsStock.getGoodsCounts()) {
if (box.getOutCounts() > goodsStock.getGoodsCounts()) {
throw new CyServiceException(1001,"库存数量不足");
}
goodsStock.setGoodsCounts(goodsStock.getGoodsCounts() - box.getGoodsCounts());
goodsStock.setGoodsCounts(goodsStock.getGoodsCounts() - box.getOutCounts());
wmsGoodsStockRepositoryImpl.updateCounts(goodsStock);
}
}
// 日志
AddLogList addLogList = new AddLogList();
List<WmsGoodsLog> logList = new ArrayList<>();
for (WmsGoodsApply box : addwmsGoodsApply.getBoxList()) {
// 日志
AddLogList addLogList = new AddLogList();
List<WmsGoodsLog> logList = new ArrayList<>();
WmsGoodsLog log = new WmsGoodsLog();
log.setApplyId(wmsGoodsApplyOut.getBusinessId());
log.setGoodsCounts(box.getGoodsCounts());
log.setApplyId(box.getBusinessId());
log.setGoodsCounts(box.getOutCounts());
log.setIoType("1");
assert goodsStock != null;
log.setUpdateCounts(goodsStock.getGoodsCounts());
logList.add(log);
}
addLogList.setBoxList(logList);
wmsGoodsLogRepositoryImpl.batchPersist(addLogList);
addLogList.setBoxList(logList);
wmsGoodsLogServiceImpl.batchPersist(addLogList);
}
return new CyPersistModel(1);
}
......
......@@ -38,7 +38,7 @@ import lombok.extern.slf4j.Slf4j;
public class WmsGoodsLogServiceImpl extends ServiceImpl<WmsGoodsLogRepository, WmsGoodsLog> implements WmsGoodsLogService {
@Autowired
private WmsGoodsApplyService wmsGoodsApplyServiceImpl;
private WmsGoodsLogService wmsGoodsLogServiceImpl;
/**
* 保存 商品记录表
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment