Commit 988bc254 by 杨浩

查询接口退款订单调整

parent f86e3c65
......@@ -35,20 +35,24 @@ public enum SaleOrderPickUpStatus implements ArrayValuable<String> {
/* ----- 退款 ------ */
// 生成销售退货单
RETURNS_PROCESS("RETURNS_PROCESS", "退款 - 审核中", Boolean.TRUE, 6),
RETURNS_PROCESS("RETURNS_PROCESS", "退款 - 审核中", Boolean.TRUE, 6),
// 销售退货单申请通过
RETURNS_APPROVE("RETURNS_APPROVE", "退款 - 已审核", Boolean.TRUE, 7),
RETURNS_APPROVE("RETURNS_APPROVE", "退款中 - 已审核", Boolean.TRUE, 7),
// 销售退货单申请驳回
RETURNS_REJECT("RETURNS_REJECT", "退款失败 - 已驳回", Boolean.TRUE, 7),
// 销售退货单根据供应商拆分为采购退货单
// 配送员接受采购退货单
RETURNS_STAFF_ACCEPT("RETURNS_STAFF_ACCEPT", "退款 - 配送员接单", Boolean.TRUE, 8),
RETURNS_STAFF_ACCEPT("RETURNS_STAFF_ACCEPT", "退款 - 配送员接单", Boolean.TRUE, 8),
// 配送员取件发货
RETURNS_STAFF_ALREADY("RETURNS_STAFF_ALREADY", "退款 - 配送员已取件", Boolean.TRUE, 9),
RETURNS_STAFF_ALREADY("RETURNS_STAFF_ALREADY", "退款 - 配送员已取件", Boolean.TRUE, 9),
// 确认收获
RETURNS_FINISH("RETURNS_FINISH", "退款 - 退货完成", Boolean.TRUE, 10),
RETURNS_FINISH("RETURNS_FINISH", "退款完成 - 退货完成", Boolean.TRUE, 10),
;
......
......@@ -219,7 +219,7 @@ public class ErpSaleReturnServiceImpl implements ErpSaleReturnService {
// 2. 更新状态
int updateCount = saleReturnMapper.updateByIdAndStatus(id, saleReturn.getStatus(),
new ErpSaleReturnDO().setStatus(status).setAuditReason(reqVO.getAuditReason()).setAuditTime(LocalDateTime.now()).setReturnsStatus(RETURNS_APPROVE.getType()));
new ErpSaleReturnDO().setStatus(status).setAuditReason(reqVO.getAuditReason()).setAuditTime(LocalDateTime.now()).setReturnsStatus(approve ? RETURNS_APPROVE.getType() : RETURNS_REJECT.getType()));
if (updateCount == 0) {
throw exception(approve ? SALE_RETURN_APPROVE_FAIL : SALE_RETURN_PROCESS_FAIL);
}
......@@ -260,7 +260,7 @@ public class ErpSaleReturnServiceImpl implements ErpSaleReturnService {
// 销售订单状态变更
ErpSaleOrderDO updateSaleOrder = new ErpSaleOrderDO();
updateSaleOrder.setId(saleReturn.getOrderId());
updateSaleOrder.setPickUpStatus(RETURNS_APPROVE);
updateSaleOrder.setPickUpStatus(approve ? RETURNS_APPROVE : RETURNS_REJECT);
saleOrderService.update(updateSaleOrder, null);
// TODO 退款确认后才进行库存变更
......@@ -290,7 +290,7 @@ public class ErpSaleReturnServiceImpl implements ErpSaleReturnService {
purchaseReturnSave.setOrderId(purchaseOrder.getId());
purchaseReturnSave.setFilesUrl(saleReturn.getFilesUrl());
purchaseReturnSave.setRemark(saleReturn.getRemark());
purchaseReturnSave.setReturnsStatus(RETURNS_APPROVE.getType());
purchaseReturnSave.setReturnsStatus(approve ? RETURNS_APPROVE.getType() : RETURNS_REJECT.getType());
purchaseReturnSave.setAddressId(saleReturn.getAddressId());
purchaseReturnSave.setAddressInfo(saleReturn.getAddressInfo());
purchaseReturnSave.setWarehouseId(saleReturn.getWarehouseId());
......
......@@ -38,6 +38,12 @@ public class AppCustomerOrderReturnRespVO {
@Schema(description = "当前状态")
private String returnsStatus;
@Schema(description = "退货单审核情况")
private Integer auditStatus;
@Schema(description = "退货单审核备注")
private String auditReason;
@Schema(description = "当前退货进度")
private ReturnsRecords currentReturnsRecords;
......
......@@ -8,6 +8,7 @@ import cn.iocoder.foodnexus.framework.security.core.LoginUser;
import cn.iocoder.foodnexus.framework.security.core.util.SecurityFrameworkUtils;
import cn.iocoder.foodnexus.module.customerpermission.core.annotation.CustomerVisible;
import cn.iocoder.foodnexus.module.erp.api.PurchaseOrderSplitEvent;
import cn.iocoder.foodnexus.module.erp.api.enums.ErpAuditStatus;
import cn.iocoder.foodnexus.module.erp.api.service.ErpCustomerApi;
import cn.iocoder.foodnexus.module.erp.api.service.ErpSupplierApi;
import cn.iocoder.foodnexus.module.erp.api.service.ErpWarehouseApi;
......@@ -748,6 +749,8 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO
result.setRemark(saleReturn.getRemark());
result.setRemarkFiles(saleReturn.getFilesUrl());
result.setReturnsStatus(saleReturn.getReturnsStatus());
result.setAuditStatus(saleReturn.getStatus());
result.setAuditReason(saleReturn.getAuditReason());
List<AppCustomerOrderReturnRespVO.ReturnsRecords> transform = this.transform(saleReturn);
result.setReturnsRecords(transform);
Optional<AppCustomerOrderReturnRespVO.ReturnsRecords> first = Optional.ofNullable(transform).orElse(Lists.newArrayList())
......@@ -778,7 +781,7 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO
}
private List<AppCustomerOrderReturnRespVO.ReturnsRecords> transform(ErpSaleReturnDO saleReturn) {
return Arrays.stream(SaleOrderPickUpStatus.values()).filter(SaleOrderPickUpStatus::isReturns).map(em -> {
List<AppCustomerOrderReturnRespVO.ReturnsRecords> collect = Arrays.stream(SaleOrderPickUpStatus.values()).filter(SaleOrderPickUpStatus::isReturns).map(em -> {
AppCustomerOrderReturnRespVO.ReturnsRecords returnsRecords = new AppCustomerOrderReturnRespVO.ReturnsRecords();
switch (em) {
case RETURNS_PROCESS:
......@@ -786,8 +789,16 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO
returnsRecords.setReturnsStatus(em.getType());
break;
case RETURNS_APPROVE:
returnsRecords.setRecordTime(saleReturn.getAuditTime());
returnsRecords.setReturnsStatus(em.getType());
if (ErpAuditStatus.APPROVE.getStatus().equals(saleReturn.getStatus())) {
returnsRecords.setRecordTime(saleReturn.getAuditTime());
returnsRecords.setReturnsStatus(em.getType());
}
break;
case RETURNS_REJECT:
if (ErpAuditStatus.REJECT.getStatus().equals(saleReturn.getStatus())) {
returnsRecords.setRecordTime(saleReturn.getAuditTime());
returnsRecords.setReturnsStatus(em.getType());
}
break;
case RETURNS_STAFF_ACCEPT:
returnsRecords.setRecordTime(saleReturn.getAcceptTime());
......@@ -801,10 +812,12 @@ public class CustomerOrderServiceImpl implements CustomerOrderService, CustomerO
returnsRecords.setRecordTime(saleReturn.getArrivalTime());
returnsRecords.setReturnsStatus(em.getType());
break;
default:break;
default:
break;
}
return returnsRecords;
}).collect(Collectors.toList());
}).toList();
return collect.stream().filter(item -> CommonUtil.isNotEmpty(item.getRecordTime())).collect(Collectors.toList());
}
/**
......
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