|
|
|
@ -77,7 +77,9 @@ public class ErpSaleReturnServiceImpl implements ErpSaleReturnService {
|
|
|
|
// 1.2 校验退货项的有效性
|
|
|
|
// 1.2 校验退货项的有效性
|
|
|
|
List<ErpSaleReturnItemDO> saleReturnItems = validateSaleReturnItems(createReqVO.getItems());
|
|
|
|
List<ErpSaleReturnItemDO> saleReturnItems = validateSaleReturnItems(createReqVO.getItems());
|
|
|
|
// 1.3 校验结算账户
|
|
|
|
// 1.3 校验结算账户
|
|
|
|
accountService.validateAccount(createReqVO.getAccountId());
|
|
|
|
if (createReqVO.getAccountId() != null) {
|
|
|
|
|
|
|
|
accountService.validateAccount(createReqVO.getAccountId());
|
|
|
|
|
|
|
|
}
|
|
|
|
// 1.4 校验销售人员
|
|
|
|
// 1.4 校验销售人员
|
|
|
|
if (createReqVO.getSaleUserId() != null) {
|
|
|
|
if (createReqVO.getSaleUserId() != null) {
|
|
|
|
adminUserApi.validateUser(createReqVO.getSaleUserId());
|
|
|
|
adminUserApi.validateUser(createReqVO.getSaleUserId());
|
|
|
|
@ -87,7 +89,15 @@ public class ErpSaleReturnServiceImpl implements ErpSaleReturnService {
|
|
|
|
if (saleReturnMapper.selectByNo(no) != null) {
|
|
|
|
if (saleReturnMapper.selectByNo(no) != null) {
|
|
|
|
throw exception(SALE_RETURN_NO_EXISTS);
|
|
|
|
throw exception(SALE_RETURN_NO_EXISTS);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
//检查数据是否有空值
|
|
|
|
|
|
|
|
if(createReqVO.getOtherPrice() ==null)createReqVO.setOtherPrice(BigDecimal.ZERO);
|
|
|
|
|
|
|
|
if(createReqVO.getDiscountPercent() ==null)createReqVO.setDiscountPercent(BigDecimal.ZERO);
|
|
|
|
|
|
|
|
saleReturnItems.forEach(o -> o
|
|
|
|
|
|
|
|
.setTaxPrice(o.getTaxPrice()==null?BigDecimal.ZERO:o.getTaxPrice())
|
|
|
|
|
|
|
|
.setTaxPercent(o.getTaxPercent()==null?BigDecimal.ZERO:o.getTaxPercent())
|
|
|
|
|
|
|
|
.setProductPrice(o.getProductPrice()==null?BigDecimal.ZERO:o.getProductPrice())
|
|
|
|
|
|
|
|
.setCount(o.getCount()==null?BigDecimal.ZERO:o.getCount())
|
|
|
|
|
|
|
|
);
|
|
|
|
// 2.1 插入退货
|
|
|
|
// 2.1 插入退货
|
|
|
|
ErpSaleReturnDO saleReturn = BeanUtils.toBean(createReqVO, ErpSaleReturnDO.class, in -> in
|
|
|
|
ErpSaleReturnDO saleReturn = BeanUtils.toBean(createReqVO, ErpSaleReturnDO.class, in -> in
|
|
|
|
.setNo(no).setStatus(ErpAuditStatus.PROCESS.getStatus()))
|
|
|
|
.setNo(no).setStatus(ErpAuditStatus.PROCESS.getStatus()))
|
|
|
|
@ -114,14 +124,24 @@ public class ErpSaleReturnServiceImpl implements ErpSaleReturnService {
|
|
|
|
// 1.2 校验销售订单已审核
|
|
|
|
// 1.2 校验销售订单已审核
|
|
|
|
ErpSaleOrderDO saleOrder = saleOrderService.validateSaleOrder(updateReqVO.getOrderId());
|
|
|
|
ErpSaleOrderDO saleOrder = saleOrderService.validateSaleOrder(updateReqVO.getOrderId());
|
|
|
|
// 1.3 校验结算账户
|
|
|
|
// 1.3 校验结算账户
|
|
|
|
accountService.validateAccount(updateReqVO.getAccountId());
|
|
|
|
if (updateReqVO.getAccountId() != null) {
|
|
|
|
|
|
|
|
accountService.validateAccount(updateReqVO.getAccountId());
|
|
|
|
|
|
|
|
}
|
|
|
|
// 1.4 校验销售人员
|
|
|
|
// 1.4 校验销售人员
|
|
|
|
if (updateReqVO.getSaleUserId() != null) {
|
|
|
|
if (updateReqVO.getSaleUserId() != null) {
|
|
|
|
adminUserApi.validateUser(updateReqVO.getSaleUserId());
|
|
|
|
adminUserApi.validateUser(updateReqVO.getSaleUserId());
|
|
|
|
}
|
|
|
|
}
|
|
|
|
// 1.5 校验订单项的有效性
|
|
|
|
// 1.5 校验订单项的有效性
|
|
|
|
List<ErpSaleReturnItemDO> saleReturnItems = validateSaleReturnItems(updateReqVO.getItems());
|
|
|
|
List<ErpSaleReturnItemDO> saleReturnItems = validateSaleReturnItems(updateReqVO.getItems());
|
|
|
|
|
|
|
|
//检查数据是否有空值
|
|
|
|
|
|
|
|
if(updateReqVO.getOtherPrice() ==null)updateReqVO.setOtherPrice(BigDecimal.ZERO);
|
|
|
|
|
|
|
|
if(updateReqVO.getDiscountPercent() ==null)updateReqVO.setDiscountPercent(BigDecimal.ZERO);
|
|
|
|
|
|
|
|
saleReturnItems.forEach(o -> o
|
|
|
|
|
|
|
|
.setTaxPrice(o.getTaxPrice()==null?BigDecimal.ZERO:o.getTaxPrice())
|
|
|
|
|
|
|
|
.setTaxPercent(o.getTaxPercent()==null?BigDecimal.ZERO:o.getTaxPercent())
|
|
|
|
|
|
|
|
.setProductPrice(o.getProductPrice()==null?BigDecimal.ZERO:o.getProductPrice())
|
|
|
|
|
|
|
|
.setCount(o.getCount()==null?BigDecimal.ZERO:o.getCount())
|
|
|
|
|
|
|
|
);
|
|
|
|
// 2.1 更新退货
|
|
|
|
// 2.1 更新退货
|
|
|
|
ErpSaleReturnDO updateObj = BeanUtils.toBean(updateReqVO, ErpSaleReturnDO.class)
|
|
|
|
ErpSaleReturnDO updateObj = BeanUtils.toBean(updateReqVO, ErpSaleReturnDO.class)
|
|
|
|
.setOrderNo(saleOrder.getNo()).setCustomerId(saleOrder.getCustomerId());
|
|
|
|
.setOrderNo(saleOrder.getNo()).setCustomerId(saleOrder.getCustomerId());
|
|
|
|
|