|
|
@@ -13,32 +13,20 @@ import com.dk.common.response.ResponseResultVO;
|
|
|
import com.dk.common.service.BaseService;
|
|
|
import com.dk.mdm.infrastructure.convert.ivt.InboundConvert;
|
|
|
import com.dk.mdm.infrastructure.convert.ivt.InboundItemConvert;
|
|
|
-import com.dk.mdm.infrastructure.convert.ivt.IntoReturnConvert;
|
|
|
-import com.dk.mdm.infrastructure.convert.ivt.IntoReturnItemConvert;
|
|
|
import com.dk.mdm.mapper.ivt.InboundItemMapper;
|
|
|
import com.dk.mdm.mapper.ivt.InboundMapper;
|
|
|
-import com.dk.mdm.mapper.ivt.IntoReturnItemMapper;
|
|
|
-import com.dk.mdm.mapper.ivt.IntoReturnMapper;
|
|
|
-import com.dk.mdm.mapper.pur.PurchaseItemMapper;
|
|
|
-import com.dk.mdm.mapper.pur.PurchaseMapper;
|
|
|
+import com.dk.mdm.mapper.sale.OutReturnItemMapper;
|
|
|
+import com.dk.mdm.mapper.sale.OutReturnMapper;
|
|
|
import com.dk.mdm.model.pojo.ivt.Inbound;
|
|
|
import com.dk.mdm.model.pojo.ivt.InboundItem;
|
|
|
-import com.dk.mdm.model.pojo.ivt.IntoReturn;
|
|
|
-import com.dk.mdm.model.pojo.ivt.IntoReturnItem;
|
|
|
-import com.dk.mdm.model.pojo.pur.Purchase;
|
|
|
-import com.dk.mdm.model.pojo.pur.PurchaseItem;
|
|
|
+import com.dk.mdm.model.pojo.sale.OutReturn;
|
|
|
+import com.dk.mdm.model.pojo.sale.OutReturnItem;
|
|
|
import com.dk.mdm.model.query.ivt.InboundItemQuery;
|
|
|
import com.dk.mdm.model.query.ivt.InboundQuery;
|
|
|
-import com.dk.mdm.model.query.pur.PurchaseItemQuery;
|
|
|
import com.dk.mdm.model.response.ivt.InboundItemResponse;
|
|
|
import com.dk.mdm.model.response.ivt.InboundResponse;
|
|
|
-import com.dk.mdm.model.response.ivt.IntoReturnItemResponse;
|
|
|
-import com.dk.mdm.model.response.ivt.IntoReturnResponse;
|
|
|
-import com.dk.mdm.model.response.pur.PurchaseItemResponse;
|
|
|
-import com.dk.mdm.model.response.pur.PurchaseResponse;
|
|
|
import com.dk.mdm.model.vo.ivt.InboundItemVO;
|
|
|
import com.dk.mdm.model.vo.ivt.InboundVO;
|
|
|
-import com.dk.mdm.model.vo.pur.PurchaseVO;
|
|
|
import com.dk.mdm.service.common.CommonService;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
@@ -77,10 +65,10 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
private InboundItemConvert inboundItemConvert;
|
|
|
|
|
|
@Autowired
|
|
|
- private IntoReturnMapper intoReturnMapper;
|
|
|
+ private OutReturnMapper outReturnMapper;
|
|
|
|
|
|
@Autowired
|
|
|
- private IntoReturnItemMapper intoReturnItemMapper;
|
|
|
+ private OutReturnItemMapper outReturnItemMapper;
|
|
|
|
|
|
@Autowired
|
|
|
private CommonService commonService;
|
|
|
@@ -98,8 +86,8 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * @desc : 查询明细
|
|
|
- * @date : 2024/3/15 16:43
|
|
|
+ * @desc : 查询明细
|
|
|
+ * @date : 2024/3/15 16:43
|
|
|
* @author : 寇珊珊
|
|
|
*/
|
|
|
@Pagination
|
|
|
@@ -115,7 +103,6 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
}
|
|
|
|
|
|
|
|
|
-
|
|
|
/**
|
|
|
* @desc : 销售退货入库新建
|
|
|
* @date : 2024/3/7 14:13
|
|
|
@@ -149,7 +136,7 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
.setIntoingQty(BigDecimal.ZERO)
|
|
|
.setIntoingAmt(BigDecimal.ZERO)
|
|
|
;
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
inboundVO.setIntoQty(BigDecimal.ZERO)
|
|
|
.setIntoAmt(BigDecimal.ZERO)
|
|
|
;
|
|
|
@@ -162,22 +149,22 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
//region 销售退货
|
|
|
if (inboundVO.getFromId() != null) {
|
|
|
- IntoReturn intoReturn = new IntoReturn();
|
|
|
+ OutReturn outReturn = new OutReturn();
|
|
|
// IntoReturnResponse intoReturnResponse = intoReturnMapper.selectById(inboundVO.getFromId());
|
|
|
- intoReturn.setReturnId(inboundVO.getFromId());
|
|
|
// intoReturn.setOutingQty(intoReturnResponse.getOutingQty().subtract(inboundVO.getIntoingQty()));
|
|
|
// intoReturn.setOutingAmt(intoReturnResponse.getOutingAmt().subtract(inboundVO.getIntoingAmt()));
|
|
|
// intoReturn.setOutQty(intoReturnResponse.getOutQty().add(inboundVO.getIntoAmt()));
|
|
|
// intoReturn.setOutAmt(intoReturnResponse.getOutAmt().add(inboundVO.getIntoQty()));
|
|
|
- intoReturn.setOutingQty(inboundVO.getIntoingQty().negate());
|
|
|
- intoReturn.setOutingAmt(inboundVO.getIntoingAmt().negate());
|
|
|
- intoReturn.setOutQty(inboundVO.getIntoAmt());
|
|
|
- intoReturn.setOutAmt(inboundVO.getIntoQty());
|
|
|
- //出库状态
|
|
|
- String outStatus = this.setOutStatus(intoReturn.getOutingQty(), intoReturn.getOutQty());
|
|
|
- intoReturn.setOutStatus(outStatus);
|
|
|
+ outReturn.setReturnId(inboundVO.getFromId());
|
|
|
+ outReturn.setIntoingQty(inboundVO.getIntoingQty().negate());
|
|
|
+ outReturn.setIntoingAmt(inboundVO.getIntoingAmt().negate());
|
|
|
+ outReturn.setIntoQty(inboundVO.getIntoAmt());
|
|
|
+ outReturn.setIntoAmt(inboundVO.getIntoQty());
|
|
|
+ //入库状态
|
|
|
+ String intoStatus = this.setIntoStatus(outReturn.getIntoingQty(), outReturn.getIntoQty());
|
|
|
+ outReturn.setIntoStatus(intoStatus);
|
|
|
//修改
|
|
|
- int countRow = intoReturnMapper.updateById(intoReturn);
|
|
|
+ int countRow = outReturnMapper.updateById(outReturn);
|
|
|
//数量超出
|
|
|
if (countRow == 0) {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
@@ -203,8 +190,8 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
.setIntoAmt(inboundItemVO.getIntoingAmt())
|
|
|
.setIntoingQty(BigDecimal.ZERO)
|
|
|
.setIntoingAmt(BigDecimal.ZERO)
|
|
|
- ;
|
|
|
- }else{
|
|
|
+ ;
|
|
|
+ } else {
|
|
|
inboundItemVO
|
|
|
.setIntoQty(BigDecimal.ZERO)
|
|
|
.setIntoAmt(BigDecimal.ZERO);
|
|
|
@@ -228,22 +215,43 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
//region 销售退货明细
|
|
|
if (inboundItemVO.getFromItemId() != null) {
|
|
|
-// IntoReturnItemResponse intoReturnItemResponse = intoReturnItemMapper.selectById(inboundItemVO.getFromItemId());
|
|
|
- IntoReturnItem intoReturnItem = new IntoReturnItem();
|
|
|
- intoReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
-// intoReturnItem.setOutQty(intoReturnItemResponse.getOutQty().add(inboundItemVO.getIntoQty()));
|
|
|
+ //region todo 可能无用代码
|
|
|
+ // IntoReturnItemResponse intoReturnItemResponse = intoReturnItemMapper.selectById(inboundItemVO.getFromItemId());
|
|
|
+// intoReturnItem.setOutQty(intoReturnItemResponse.getOutQty().add(inboundItemVO.getIntoQty()));
|
|
|
// intoReturnItem.setOutAmt(intoReturnItemResponse.getOutAmt().add(inboundItemVO.getIntoAmt()));
|
|
|
// intoReturnItem.setOutingQty(intoReturnItemResponse.getOutingQty().add(inboundItemVO.getIntoingQty()));
|
|
|
// intoReturnItem.setOutingAmt(intoReturnItemResponse.getOutingAmt().add(inboundItemVO.getIntoingAmt()));
|
|
|
- intoReturnItem.setOutQty(inboundItemVO.getIntoQty());
|
|
|
- intoReturnItem.setOutAmt(inboundItemVO.getIntoAmt());
|
|
|
- intoReturnItem.setOutingQty(inboundItemVO.getIntoingQty());
|
|
|
- intoReturnItem.setOutingAmt(inboundItemVO.getIntoingAmt());
|
|
|
- //出库状态
|
|
|
- String outStatus = this.setOutStatus(intoReturnItem.getOutingQty(), intoReturnItem.getOutQty());
|
|
|
- intoReturnItem.setOutStatus(outStatus);
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ //region todo 出库可能用到 用不到记得删掉
|
|
|
+// IntoReturnItem intoReturnItem = new IntoReturnItem();
|
|
|
+// intoReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
+// intoReturnItem.setOutQty(inboundItemVO.getIntoQty());
|
|
|
+// intoReturnItem.setOutAmt(inboundItemVO.getIntoAmt());
|
|
|
+// intoReturnItem.setOutingQty(inboundItemVO.getIntoingQty());
|
|
|
+// intoReturnItem.setOutingAmt(inboundItemVO.getIntoingAmt());
|
|
|
+// //出库状态
|
|
|
+// String outStatus = this.setOutStatus(intoReturnItem.getOutingQty(), intoReturnItem.getOutQty());
|
|
|
+// intoReturnItem.setOutStatus(outStatus);
|
|
|
+// //修改
|
|
|
+// int countRow = intoReturnItemMapper.updateById(intoReturnItem);
|
|
|
+// //数量超出
|
|
|
+// if (countRow == 0) {
|
|
|
+// throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
+// }
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ OutReturnItem outReturnItem = new OutReturnItem();
|
|
|
+ outReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
+ outReturnItem.setIntoQty(inboundItemVO.getIntoQty());
|
|
|
+ outReturnItem.setIntoAmt(inboundItemVO.getIntoAmt());
|
|
|
+ outReturnItem.setIntoingQty(inboundItemVO.getIntoingQty());
|
|
|
+ outReturnItem.setIntoingAmt(inboundItemVO.getIntoingAmt());
|
|
|
+ //入库状态
|
|
|
+ String intoStatus = this.setIntoStatus(outReturnItem.getIntoingQty(), outReturnItem.getIntoQty());
|
|
|
+ outReturnItem.setIntoStatus(intoStatus);
|
|
|
//修改
|
|
|
- int countRow = intoReturnItemMapper.updateById(intoReturnItem);
|
|
|
+ int countRow = outReturnItemMapper.updateById(outReturnItem);
|
|
|
//数量超出
|
|
|
if (countRow == 0) {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
@@ -318,22 +326,43 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
//region 销售退货明细
|
|
|
if (inboundItemVO.getFromItemId() != null) {
|
|
|
+ //endregion todo 可能无用的代码
|
|
|
// IntoReturnItemResponse intoReturnItemResponse = intoReturnItemMapper.selectById(inboundItemVO.getFromItemId());
|
|
|
- IntoReturnItem intoReturnItem = new IntoReturnItem();
|
|
|
- intoReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
// intoReturnItem.setOutQty(intoReturnItemResponse.getOutQty().add(inboundItemVO.getIntoQty()));
|
|
|
// intoReturnItem.setOutAmt(intoReturnItemResponse.getOutAmt().add(inboundItemVO.getIntoAmt()));
|
|
|
// intoReturnItem.setOutingQty(intoReturnItemResponse.getOutingQty().add(inboundItemVO.getIntoingQty()));
|
|
|
// intoReturnItem.setOutingAmt(intoReturnItemResponse.getOutingAmt().add(inboundItemVO.getIntoingAmt()));
|
|
|
- intoReturnItem.setOutQty(inboundItemVO.getIntoQty());
|
|
|
- intoReturnItem.setOutAmt(inboundItemVO.getIntoAmt());
|
|
|
- intoReturnItem.setOutingQty(inboundItemVO.getIntoingQty());
|
|
|
- intoReturnItem.setOutingAmt(inboundItemVO.getIntoingAmt());
|
|
|
- //出库状态
|
|
|
- String outStatus = this.setOutStatus(intoReturnItem.getOutingQty(), intoReturnItem.getOutQty());
|
|
|
- intoReturnItem.setOutStatus(outStatus);
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ //region todo 出库可能用到的代码 用不到记得删掉
|
|
|
+// IntoReturnItem intoReturnItem = new IntoReturnItem();
|
|
|
+// intoReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
+//
|
|
|
+// intoReturnItem.setOutQty(inboundItemVO.getIntoQty());
|
|
|
+// intoReturnItem.setOutAmt(inboundItemVO.getIntoAmt());
|
|
|
+// intoReturnItem.setOutingQty(inboundItemVO.getIntoingQty());
|
|
|
+// intoReturnItem.setOutingAmt(inboundItemVO.getIntoingAmt());
|
|
|
+// //出库状态
|
|
|
+// String outStatus = this.setOutStatus(intoReturnItem.getOutingQty(), intoReturnItem.getOutQty());
|
|
|
+// intoReturnItem.setOutStatus(outStatus);
|
|
|
+// //修改
|
|
|
+// int countRow = intoReturnItemMapper.updateById(intoReturnItem);
|
|
|
+// //数量超出
|
|
|
+// if (countRow == 0) {
|
|
|
+// throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
+// }
|
|
|
+ //endregion
|
|
|
+ OutReturnItem outReturnItem = new OutReturnItem();
|
|
|
+ outReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
+ outReturnItem.setIntoQty(inboundItemVO.getIntoQty());
|
|
|
+ outReturnItem.setIntoAmt(inboundItemVO.getIntoAmt());
|
|
|
+ outReturnItem.setIntoingQty(inboundItemVO.getIntoingQty());
|
|
|
+ outReturnItem.setIntoingAmt(inboundItemVO.getIntoingAmt());
|
|
|
+ //入库状态
|
|
|
+ String intoStatus = this.setIntoStatus(outReturnItem.getIntoingQty(), outReturnItem.getIntoQty());
|
|
|
+ outReturnItem.setIntoStatus(intoStatus);
|
|
|
//修改
|
|
|
- int countRow = intoReturnItemMapper.updateById(intoReturnItem);
|
|
|
+ int countRow = outReturnItemMapper.updateById(outReturnItem);
|
|
|
//数量超出
|
|
|
if (countRow == 0) {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
@@ -344,15 +373,15 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
//endregion
|
|
|
|
|
|
//region 删除明细
|
|
|
- BigDecimal sumDelOutQty = BigDecimal.ZERO;
|
|
|
- BigDecimal sumDelOutAmt = BigDecimal.ZERO;
|
|
|
- BigDecimal sumDelOutingQty = BigDecimal.ZERO;
|
|
|
- BigDecimal sumDelOutingAmt = BigDecimal.ZERO;
|
|
|
+ BigDecimal sumDelIntoQty = BigDecimal.ZERO;
|
|
|
+ BigDecimal sumDelIntoAmt = BigDecimal.ZERO;
|
|
|
+ BigDecimal sumDelIntoingQty = BigDecimal.ZERO;
|
|
|
+ BigDecimal sumDelIntoingAmt = BigDecimal.ZERO;
|
|
|
if (inboundVO.getDeleteItemList() != null) {
|
|
|
- sumDelOutQty = inboundVO.getDeleteItemList().stream().map(InboundItemVO::getIntoQty).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(6, BigDecimal.ROUND_HALF_UP);
|
|
|
- sumDelOutAmt = inboundVO.getDeleteItemList().stream().map(InboundItemVO::getIntoAmt).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
- sumDelOutingQty = inboundVO.getDeleteItemList().stream().map(InboundItemVO::getIntoingQty).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(6, BigDecimal.ROUND_HALF_UP);
|
|
|
- sumDelOutingAmt = inboundVO.getDeleteItemList().stream().map(InboundItemVO::getIntoingAmt).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
+ sumDelIntoQty = inboundVO.getDeleteItemList().stream().map(InboundItemVO::getIntoQty).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(6, BigDecimal.ROUND_HALF_UP);
|
|
|
+ sumDelIntoAmt = inboundVO.getDeleteItemList().stream().map(InboundItemVO::getIntoAmt).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
+ sumDelIntoingQty = inboundVO.getDeleteItemList().stream().map(InboundItemVO::getIntoingQty).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(6, BigDecimal.ROUND_HALF_UP);
|
|
|
+ sumDelIntoingAmt = inboundVO.getDeleteItemList().stream().map(InboundItemVO::getIntoingAmt).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
for (InboundItemVO inboundItemVO : inboundVO.getDeleteItemList()) {
|
|
|
if (inboundItemVO.getItemId() != null) {
|
|
|
InboundItem inboundItem = inboundItemConvert.convertToPo(inboundItemVO);
|
|
|
@@ -365,23 +394,44 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
}
|
|
|
//region 销售退货明细
|
|
|
if (inboundItemVO.getFromItemId() != null) {
|
|
|
- //region 销售退货订单明细
|
|
|
+ //region todo 可能无用的代码
|
|
|
// IntoReturnItemResponse intoReturnItemResponse = intoReturnItemMapper.selectById(inboundItemVO.getFromItemId());
|
|
|
- IntoReturnItem intoReturnItem = new IntoReturnItem();
|
|
|
- intoReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
// intoReturnItem.setOutQty(intoReturnItemResponse.getOutQty().subtract(inboundItemVO.getIntoQty()));
|
|
|
// intoReturnItem.setOutAmt(intoReturnItemResponse.getOutAmt().subtract(inboundItemVO.getIntoAmt()));
|
|
|
// intoReturnItem.setOutingQty(intoReturnItemResponse.getOutingQty().subtract(inboundItemVO.getIntoingQty()));
|
|
|
// intoReturnItem.setOutingAmt(intoReturnItemResponse.getOutingAmt().subtract(inboundItemVO.getIntoingAmt()));
|
|
|
- intoReturnItem.setOutQty(inboundItemVO.getIntoQty().negate());
|
|
|
- intoReturnItem.setOutAmt(inboundItemVO.getIntoAmt().negate());
|
|
|
- intoReturnItem.setOutingQty(inboundItemVO.getIntoingQty().negate());
|
|
|
- intoReturnItem.setOutingAmt(inboundItemVO.getIntoingAmt().negate());
|
|
|
- //出库状态
|
|
|
- String outStatus = this.setOutStatus(intoReturnItem.getOutingQty(), intoReturnItem.getOutQty());
|
|
|
- intoReturnItem.setOutStatus(outStatus);
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ //region todo 出库可能用到的代码 用过后记得删除
|
|
|
+// IntoReturnItem intoReturnItem = new IntoReturnItem();
|
|
|
+// intoReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
+// intoReturnItem.setOutQty(inboundItemVO.getIntoQty().negate());
|
|
|
+// intoReturnItem.setOutAmt(inboundItemVO.getIntoAmt().negate());
|
|
|
+// intoReturnItem.setOutingQty(inboundItemVO.getIntoingQty().negate());
|
|
|
+// intoReturnItem.setOutingAmt(inboundItemVO.getIntoingAmt().negate());
|
|
|
+// //出库状态
|
|
|
+// String outStatus = this.setOutStatus(intoReturnItem.getOutingQty(), intoReturnItem.getOutQty());
|
|
|
+// intoReturnItem.setOutStatus(outStatus);
|
|
|
+// //修改
|
|
|
+// int countRow = intoReturnItemMapper.updateById(intoReturnItem);
|
|
|
+// //数量超出
|
|
|
+// if (countRow == 0) {
|
|
|
+// throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
+// }
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ //region 销售退货订单明细
|
|
|
+ OutReturnItem outReturnItem = new OutReturnItem();
|
|
|
+ outReturnItem.setItemId(inboundItemVO.getFromItemId());
|
|
|
+ outReturnItem.setIntoQty(inboundItemVO.getIntoQty().negate());
|
|
|
+ outReturnItem.setIntoAmt(inboundItemVO.getIntoAmt().negate());
|
|
|
+ outReturnItem.setIntoingQty(inboundItemVO.getIntoingQty().negate());
|
|
|
+ outReturnItem.setIntoingAmt(inboundItemVO.getIntoingAmt().negate());
|
|
|
+ //入库状态
|
|
|
+ String intoStatus = this.setIntoStatus(outReturnItem.getIntoingQty(), outReturnItem.getIntoQty());
|
|
|
+ outReturnItem.setIntoStatus(intoStatus);
|
|
|
//修改
|
|
|
- int countRow = intoReturnItemMapper.updateById(intoReturnItem);
|
|
|
+ int countRow = outReturnItemMapper.updateById(outReturnItem);
|
|
|
//数量超出
|
|
|
if (countRow == 0) {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
@@ -396,22 +446,17 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
//region 编辑总单
|
|
|
InboundResponse inboundResponse = inboundMapper.selectById(inboundVO.getIntoId());
|
|
|
- BigDecimal sumOutQty = inboundVO.getItemList().stream().map(InboundItemVO::getIntoQty).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(6, BigDecimal.ROUND_HALF_UP);
|
|
|
- BigDecimal sumOutAmt = inboundVO.getItemList().stream().map(InboundItemVO::getIntoAmt).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
- BigDecimal sumOutingQty = inboundVO.getItemList().stream().map(InboundItemVO::getIntoingQty).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(6, BigDecimal.ROUND_HALF_UP);
|
|
|
- BigDecimal sumOutingAmt = inboundVO.getItemList().stream().map(InboundItemVO::getIntoAmt).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
- inboundVO.setIntoQty(sumOutQty);
|
|
|
- inboundVO.setIntoAmt(sumOutAmt);
|
|
|
- inboundVO.setIntoingQty(inboundResponse.getIntoingQty().subtract(sumOutingQty));
|
|
|
- inboundVO.setIntoingAmt(inboundResponse.getIntoingAmt().subtract(sumOutingAmt));
|
|
|
- //已入库数量==入库中数量 入库完成
|
|
|
- if (inboundVO.getIntoQty().compareTo(inboundVO.getIntoingQty()) == 0) {
|
|
|
- //已入库
|
|
|
- inboundVO.setIntoStatus(Constant.IntoStatus.YIRUKU.getName());
|
|
|
- } else {
|
|
|
- //入库中
|
|
|
- inboundVO.setIntoStatus(Constant.IntoStatus.RUKUZHONG.getName());
|
|
|
- }
|
|
|
+ BigDecimal sumIntoQty = inboundVO.getItemList().stream().map(InboundItemVO::getIntoQty).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(6, BigDecimal.ROUND_HALF_UP);
|
|
|
+ BigDecimal sumIntoAmt = inboundVO.getItemList().stream().map(InboundItemVO::getIntoAmt).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
+ BigDecimal sumIntoingQty = inboundVO.getItemList().stream().map(InboundItemVO::getIntoingQty).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(6, BigDecimal.ROUND_HALF_UP);
|
|
|
+ BigDecimal sumIntoingAmt = inboundVO.getItemList().stream().map(InboundItemVO::getIntoAmt).reduce(BigDecimal.ZERO, BigDecimal::add).setScale(2, BigDecimal.ROUND_HALF_UP);
|
|
|
+ inboundVO.setIntoQty(sumIntoQty);
|
|
|
+ inboundVO.setIntoAmt(sumIntoAmt);
|
|
|
+ inboundVO.setIntoingQty(inboundResponse.getIntoingQty().subtract(sumIntoingQty));
|
|
|
+ inboundVO.setIntoingAmt(inboundResponse.getIntoingAmt().subtract(sumIntoingAmt));
|
|
|
+ //入库状态
|
|
|
+ String intoStatus = this.setIntoStatus(inboundVO.getIntoingQty(), inboundVO.getIntoQty());
|
|
|
+ inboundVO.setIntoStatus(intoStatus);
|
|
|
//实体转换
|
|
|
Inbound inbound = inboundConvert.convertToPo(inboundVO);
|
|
|
//修改
|
|
|
@@ -423,28 +468,50 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
//region 修改销售退货订单
|
|
|
if (inboundVO.getFromId() != null) {
|
|
|
+ //region todo 可能无用的代码
|
|
|
//查询
|
|
|
// IntoReturnResponse intoReturnResponse = intoReturnMapper.selectById(inboundVO.getFromId());
|
|
|
- IntoReturn intoReturn = new IntoReturn();
|
|
|
- intoReturn.setReturnId(inboundVO.getFromId());
|
|
|
-// intoReturn.setOutQty(intoReturnResponse.getOutQty().add(sumOutQty).subtract(sumDelOutQty));
|
|
|
-// intoReturn.setOutAmt(intoReturnResponse.getOutAmt().add(sumOutAmt).subtract(sumDelOutAmt));
|
|
|
-// intoReturn.setOutingQty(intoReturnResponse.getOutingQty().subtract(sumOutQty).subtract(sumDelOutingQty));
|
|
|
-// intoReturn.setOutingAmt(intoReturnResponse.getOutingAmt().subtract(sumOutAmt).subtract(sumDelOutingAmt));
|
|
|
- intoReturn.setOutQty(sumOutQty.subtract(sumDelOutQty));
|
|
|
- intoReturn.setOutAmt(sumOutAmt.subtract(sumDelOutAmt));
|
|
|
- intoReturn.setOutingQty((sumOutQty.add(sumDelOutingQty)).negate());
|
|
|
- intoReturn.setOutingAmt((sumOutAmt.add(sumDelOutingAmt)).negate());
|
|
|
+// intoReturn.setOutQty(intoReturnResponse.getOutQty().add(sumIntoQty).subtract(sumDelIntoQty));
|
|
|
+// intoReturn.setOutAmt(intoReturnResponse.getOutAmt().add(sumIntoAmt).subtract(sumDelIntoAmt));
|
|
|
+// intoReturn.setOutingQty(intoReturnResponse.getOutingQty().subtract(sumIntoQty).subtract(sumDelIntoingQty));
|
|
|
+// intoReturn.setOutingAmt(intoReturnResponse.getOutingAmt().subtract(sumIntoAmt).subtract(sumDelIntoingAmt));
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ //region todo 出库可能用到的代码 用完记得删除
|
|
|
+// IntoReturn intoReturn = new IntoReturn();
|
|
|
+// intoReturn.setReturnId(inboundVO.getFromId());
|
|
|
+// intoReturn.setOutQty(sumIntoQty.subtract(sumDelIntoQty));
|
|
|
+// intoReturn.setOutAmt(sumIntoAmt.subtract(sumDelIntoAmt));
|
|
|
+// intoReturn.setOutingQty((sumIntoQty.add(sumDelIntoingQty)).negate());
|
|
|
+// intoReturn.setOutingAmt((sumIntoAmt.add(sumDelIntoingAmt)).negate());
|
|
|
+// //入库状态
|
|
|
+// String outStatus = this.setOutStatus(intoReturn.getOutingQty(), intoReturn.getOutQty());
|
|
|
+// intoReturn.setOutStatus(outStatus);
|
|
|
+// //修改
|
|
|
+// int countRow = intoReturnMapper.updateById(intoReturn);
|
|
|
+// //数量超出
|
|
|
+// if (countRow == 0) {
|
|
|
+// throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
+// }
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ OutReturn outReturn = new OutReturn();
|
|
|
+ outReturn.setReturnId(inboundVO.getFromId());
|
|
|
+ outReturn.setIntoQty(sumIntoQty.subtract(sumDelIntoQty));
|
|
|
+ outReturn.setIntoAmt(sumIntoAmt.subtract(sumDelIntoAmt));
|
|
|
+ outReturn.setIntoingQty((sumIntoQty.add(sumDelIntoingQty)).negate());
|
|
|
+ outReturn.setIntoingAmt((sumIntoAmt.add(sumDelIntoingAmt)).negate());
|
|
|
//入库状态
|
|
|
- String outStatus = this.setOutStatus(intoReturn.getOutingQty(), intoReturn.getOutQty());
|
|
|
- intoReturn.setOutStatus(outStatus);
|
|
|
+ String outReturnIntoStatus = this.setIntoStatus(outReturn.getIntoingQty(), outReturn.getIntoQty());
|
|
|
+ outReturn.setIntoStatus(outReturnIntoStatus);
|
|
|
//修改
|
|
|
- int countRow = intoReturnMapper.updateById(intoReturn);
|
|
|
+ int countRow = outReturnMapper.updateById(outReturn);
|
|
|
//数量超出
|
|
|
if (countRow == 0) {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
}
|
|
|
|
|
|
+
|
|
|
}
|
|
|
//endregion
|
|
|
|
|
|
@@ -469,28 +536,51 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
//region 修改订单数据信息
|
|
|
if (inboundVO.getFromId() != null) {
|
|
|
+ //region todo 可能无用的代码
|
|
|
//查询
|
|
|
// IntoReturnResponse intoReturnResponse = intoReturnMapper.selectById(inboundVO.getFromId());
|
|
|
- //赋值
|
|
|
- IntoReturn intoReturn = new IntoReturn();
|
|
|
- intoReturn.setReturnId(inboundVO.getFromId());
|
|
|
// intoReturn.setOutQty(intoReturnResponse.getOutQty().add(inboundResponse.getIntoQty()));
|
|
|
// intoReturn.setOutAmt(intoReturnResponse.getOutAmt().add(inboundResponse.getIntoAmt()));
|
|
|
// intoReturn.setOutingQty(intoReturnResponse.getOutingQty().subtract(inboundResponse.getIntoQty()));
|
|
|
// intoReturn.setOutingAmt(intoReturnResponse.getOutingAmt().subtract(inboundResponse.getIntoAmt()));
|
|
|
- intoReturn.setOutQty(inboundResponse.getIntoQty());
|
|
|
- intoReturn.setOutAmt(inboundResponse.getIntoAmt());
|
|
|
- intoReturn.setOutingQty(inboundResponse.getIntoQty().negate());
|
|
|
- intoReturn.setOutingAmt(inboundResponse.getIntoAmt().negate());
|
|
|
- //出库状态
|
|
|
- String outStatus = this.setOutStatus(intoReturn.getOutingQty(), intoReturn.getOutQty());
|
|
|
- intoReturn.setOutStatus(outStatus);
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ //region todo 出库可能用到的代码 用完记得删除
|
|
|
+ //赋值
|
|
|
+// IntoReturn intoReturn = new IntoReturn();
|
|
|
+// intoReturn.setReturnId(inboundVO.getFromId());
|
|
|
+// intoReturn.setOutQty(inboundResponse.getIntoQty());
|
|
|
+// intoReturn.setOutAmt(inboundResponse.getIntoAmt());
|
|
|
+// intoReturn.setOutingQty(inboundResponse.getIntoQty().negate());
|
|
|
+// intoReturn.setOutingAmt(inboundResponse.getIntoAmt().negate());
|
|
|
+// //入库状态
|
|
|
+// String outStatus = this.setOutStatus(intoReturn.getOutingQty(), intoReturn.getOutQty());
|
|
|
+// intoReturn.setOutStatus(outStatus);
|
|
|
+// //修改
|
|
|
+// int countRow = intoReturnMapper.updateById(intoReturn);
|
|
|
+// //数量超出
|
|
|
+// if (countRow == 0) {
|
|
|
+// throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
+// }
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ //赋值
|
|
|
+ OutReturn outReturn = new OutReturn();
|
|
|
+ outReturn.setReturnId(inboundVO.getFromId());
|
|
|
+ outReturn.setIntoQty(inboundResponse.getIntoQty());
|
|
|
+ outReturn.setIntoAmt(inboundResponse.getIntoAmt());
|
|
|
+ outReturn.setIntoingQty(inboundResponse.getIntoQty().negate());
|
|
|
+ outReturn.setIntoingAmt(inboundResponse.getIntoAmt().negate());
|
|
|
+ //入库状态
|
|
|
+ String intoStatus = this.setIntoStatus(outReturn.getIntoingQty(), outReturn.getIntoQty());
|
|
|
+ outReturn.setIntoStatus(intoStatus);
|
|
|
//修改
|
|
|
- int countRow = intoReturnMapper.updateById(intoReturn);
|
|
|
+ int countRow = outReturnMapper.updateById(outReturn);
|
|
|
//数量超出
|
|
|
if (countRow == 0) {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
//endregion
|
|
|
|
|
|
@@ -514,27 +604,51 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
for (InboundItemResponse inboundItemResponse : orderEntryItemResponsesList) {
|
|
|
//region 修改销售退货明细数据信息
|
|
|
if (inboundItemResponse.getFromItemId() != null) {
|
|
|
+ //region todo 可能无用的代码
|
|
|
//查询
|
|
|
// IntoReturnItemResponse intoReturnItemResponse = intoReturnItemMapper.selectById(inboundItemResponse.getFromItemId());
|
|
|
- IntoReturnItem intoReturnItem = new IntoReturnItem();
|
|
|
- intoReturnItem.setItemId(inboundItemResponse.getFromItemId());
|
|
|
// intoReturnItem.setOutQty(intoReturnItemResponse.getOutQty().subtract(inboundItemResponse.getIntoQty()));
|
|
|
// intoReturnItem.setOutAmt(intoReturnItemResponse.getOutAmt().subtract(inboundItemResponse.getIntoAmt()));
|
|
|
// intoReturnItem.setOutingQty(intoReturnItemResponse.getOutingQty().add(inboundItemResponse.getIntoQty()));
|
|
|
// intoReturnItem.setOutingAmt(intoReturnItemResponse.getOutingAmt().add(inboundItemResponse.getIntoAmt()));
|
|
|
- intoReturnItem.setOutQty(inboundItemResponse.getIntoQty().negate());
|
|
|
- intoReturnItem.setOutAmt(inboundItemResponse.getIntoAmt().negate());
|
|
|
- intoReturnItem.setOutingQty(inboundItemResponse.getIntoQty());
|
|
|
- intoReturnItem.setOutingAmt(inboundItemResponse.getIntoAmt());
|
|
|
- //出库状态
|
|
|
- String outStatus = this.setOutStatus(intoReturnItem.getOutingQty(), intoReturnItem.getOutQty());
|
|
|
- intoReturnItem.setOutStatus(outStatus);
|
|
|
+ //endregion
|
|
|
+
|
|
|
+ //region todo 出库可能用到的代码 用完记得删除
|
|
|
+// IntoReturnItem intoReturnItem = new IntoReturnItem();
|
|
|
+// intoReturnItem.setItemId(inboundItemResponse.getFromItemId());
|
|
|
+// intoReturnItem.setOutQty(inboundItemResponse.getIntoQty().negate());
|
|
|
+// intoReturnItem.setOutAmt(inboundItemResponse.getIntoAmt().negate());
|
|
|
+// intoReturnItem.setOutingQty(inboundItemResponse.getIntoQty());
|
|
|
+// intoReturnItem.setOutingAmt(inboundItemResponse.getIntoAmt());
|
|
|
+// //入库状态
|
|
|
+// String outStatus = this.setOutStatus(intoReturnItem.getOutingQty(), intoReturnItem.getOutQty());
|
|
|
+// intoReturnItem.setOutStatus(outStatus);
|
|
|
+// //修改
|
|
|
+// int countRow = intoReturnItemMapper.updateById(intoReturnItem);
|
|
|
+// //数量超出
|
|
|
+// if (countRow == 0) {
|
|
|
+// throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
+// }
|
|
|
+ //endregion
|
|
|
+
|
|
|
+
|
|
|
+ OutReturnItem outReturnItem = new OutReturnItem();
|
|
|
+ outReturnItem.setItemId(inboundItemResponse.getFromItemId());
|
|
|
+ outReturnItem.setIntoQty(inboundItemResponse.getIntoQty().negate());
|
|
|
+ outReturnItem.setIntoAmt(inboundItemResponse.getIntoAmt().negate());
|
|
|
+ outReturnItem.setIntoingQty(inboundItemResponse.getIntoQty());
|
|
|
+ outReturnItem.setIntoingAmt(inboundItemResponse.getIntoAmt());
|
|
|
+ //入库状态
|
|
|
+ String intoStatus = this.setIntoStatus(outReturnItem.getIntoingQty(), outReturnItem.getIntoQty());
|
|
|
+ outReturnItem.setIntoStatus(intoStatus);
|
|
|
//修改
|
|
|
- int countRow = intoReturnItemMapper.updateById(intoReturnItem);
|
|
|
+ int countRow = outReturnItemMapper.updateById(outReturnItem);
|
|
|
//数量超出
|
|
|
if (countRow == 0) {
|
|
|
throw new BaseBusinessException(ResponseCodeEnum.OPERATE_FAIL.getCode(), ErrorCodeEnum.INVENTORY_QUANTITY_EXCEEDED.getMessage());
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
//endregion
|
|
|
|
|
|
@@ -575,7 +689,7 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
//入库状态
|
|
|
String intoStatus = null;
|
|
|
//已入库数量>0 入库中数量>0
|
|
|
- if (intoQty.compareTo(BigDecimal.ZERO) > 0 && intoingQty.compareTo(BigDecimal.ZERO) > 0 ) {
|
|
|
+ if (intoQty.compareTo(BigDecimal.ZERO) > 0 && intoingQty.compareTo(BigDecimal.ZERO) > 0) {
|
|
|
//入库中
|
|
|
intoStatus = Constant.IntoStatus.RUKUZHONG.getName();
|
|
|
}
|
|
|
@@ -585,7 +699,7 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
intoStatus = Constant.IntoStatus.DAIRUKU.getName();
|
|
|
}
|
|
|
//已入库数量>0 入库中数量=0
|
|
|
- else if (intoQty.compareTo(BigDecimal.ZERO) >0 && intoingQty.compareTo(BigDecimal.ZERO)==0) {
|
|
|
+ else if (intoQty.compareTo(BigDecimal.ZERO) > 0 && intoingQty.compareTo(BigDecimal.ZERO) == 0) {
|
|
|
//已入库
|
|
|
intoStatus = Constant.IntoStatus.YIRUKU.getName();
|
|
|
}
|
|
|
@@ -602,9 +716,9 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
//出库状态
|
|
|
String outStatus = null;
|
|
|
//已出库数量>0 出库中数量>0
|
|
|
- if (outQty.compareTo(BigDecimal.ZERO) > 0 && outingQty.compareTo(BigDecimal.ZERO) > 0 ) {
|
|
|
+ if (outQty.compareTo(BigDecimal.ZERO) > 0 && outingQty.compareTo(BigDecimal.ZERO) > 0) {
|
|
|
//出库中
|
|
|
- outStatus =Constant.OutStatus.CHUKUZHONG.getName();
|
|
|
+ outStatus = Constant.OutStatus.CHUKUZHONG.getName();
|
|
|
}
|
|
|
//出入库数量=0 出库中数量=0
|
|
|
else if (outQty.compareTo(BigDecimal.ZERO) == 0 && outingQty.compareTo(BigDecimal.ZERO) == 0) {
|
|
|
@@ -612,7 +726,7 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
outStatus = Constant.OutStatus.DAICHUKU.getName();
|
|
|
}
|
|
|
//已出库数量>0 出库中数量=0
|
|
|
- else if (outQty.compareTo(BigDecimal.ZERO) >0 && outingQty.compareTo(BigDecimal.ZERO)==0) {
|
|
|
+ else if (outQty.compareTo(BigDecimal.ZERO) > 0 && outingQty.compareTo(BigDecimal.ZERO) == 0) {
|
|
|
//已出库
|
|
|
outStatus = Constant.OutStatus.YICHUKU.getName();
|
|
|
}
|
|
|
@@ -621,4 +735,27 @@ public class InboundSaleReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
+ * @desc : 获取单据信息(编辑用)
|
|
|
+ * @date : 2024/3/16 16:28
|
|
|
+ * @author : 寇珊珊
|
|
|
+ */
|
|
|
+ public ResponseResultVO<?> selectByUpdate(String id) {
|
|
|
+ Map<String, Object> dataInfo = new HashMap<>();
|
|
|
+ //总单
|
|
|
+ InboundResponse inboundResponse = inboundMapper.selectMessageByOtherQuery(new InboundQuery().setIntoId(id).setIntoStatus(Constant.IntoStatus.RUKUZHONG.getName()));
|
|
|
+ //单据不存在
|
|
|
+ if(inboundResponse==null){
|
|
|
+ return ResponseResultUtil.error(ErrorCodeEnum.THERE_ORDER_IS_NOT_CAN_INBOUND_QUANTITY.getCode(),
|
|
|
+ ErrorCodeEnum.THERE_ORDER_IS_NOT_CAN_INBOUND_QUANTITY.getMessage());
|
|
|
+ }
|
|
|
+ dataInfo.put("data", inboundResponse);
|
|
|
+ // 明细
|
|
|
+ List<InboundItemResponse> inboundItemResponses = inboundItemMapper.selectByCond(new InboundItemQuery().setIntoId(inboundResponse.getIntoId()));
|
|
|
+ dataInfo.put("dataItem", inboundItemResponses);
|
|
|
+ return ResponseResultUtil.success(dataInfo);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|