diff --git a/erp-turbo-admin/src/main/java/com/xunhong/erp/turbo/admin/controller/OrderController.java b/erp-turbo-admin/src/main/java/com/xunhong/erp/turbo/admin/controller/OrderController.java index 22471af..2d42403 100644 --- a/erp-turbo-admin/src/main/java/com/xunhong/erp/turbo/admin/controller/OrderController.java +++ b/erp-turbo-admin/src/main/java/com/xunhong/erp/turbo/admin/controller/OrderController.java @@ -10,6 +10,7 @@ import com.alibaba.cola.dto.SingleResponse; import com.xunhong.erp.turbo.api.biz.api.OrderServiceI; import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.*; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; import com.xunhong.erp.turbo.api.biz.dto.vo.OrderVO; import com.xunhong.erp.turbo.api.rbac.dto.constants.RoleConstant; import com.xunhong.erp.turbo.api.user.api.AdminServiceI; @@ -86,49 +87,49 @@ public class OrderController { @SaCheckLogin @PostMapping("submitReviewOrder") @Operation(summary = "采购订单提审(产地/市场采购员提审)", method = "POST") - public Response submitReviewOrder(@RequestBody @Validated OrderSubmitReviewCmd orderSubmitReviewCmd) { - orderService.submitReview(orderSubmitReviewCmd); - return Response.buildSuccess(); + public SingleResponse submitReviewOrder(@RequestBody @Validated OrderSubmitReviewCmd orderSubmitReviewCmd) { + AuditVO auditVO = orderService.submitReview(orderSubmitReviewCmd); + return SingleResponse.of(auditVO); } @SaCheckLogin @PostMapping("withdrawReviewOrder") @Operation(summary = "采购订单撤回提审(产地/市场采购员撤回提审)", method = "POST") - public Response withdrawReviewOrder(@RequestBody @Validated OrderWithdrawReviewCmd orderWithdrawReviewCmd) { - orderService.withdrawReview(orderWithdrawReviewCmd); - return Response.buildSuccess(); + public SingleResponse withdrawReviewOrder(@RequestBody @Validated OrderWithdrawReviewCmd orderWithdrawReviewCmd) { + AuditVO auditVO = orderService.withdrawReview(orderWithdrawReviewCmd); + return SingleResponse.of(auditVO); } @SaCheckLogin @PostMapping("approveOrder") @Operation(summary = "采购订单审核(审核员审核)", method = "POST") - public Response approveOrder(@RequestBody @Validated OrderApproveCmd orderApproveCmd) { - orderService.approve(orderApproveCmd); - return Response.buildSuccess(); + public SingleResponse approveOrder(@RequestBody @Validated OrderApproveCmd orderApproveCmd) { + AuditVO auditVO = orderService.approve(orderApproveCmd); + return SingleResponse.of(auditVO); } @SaCheckLogin @PostMapping("rejectApproveOrder") @Operation(summary = "采购订单驳回审核(审核员驳回审核)", method = "POST") - public Response rejectApproveOrder(@RequestBody @Validated OrderRejectApproveCmd orderRejectApproveCmd) { - orderService.rejectApprove(orderRejectApproveCmd); - return Response.buildSuccess(); + public SingleResponse rejectApproveOrder(@RequestBody @Validated OrderRejectApproveCmd orderRejectApproveCmd) { + AuditVO auditVO = orderService.rejectApprove(orderRejectApproveCmd); + return SingleResponse.of(auditVO); } @SaCheckLogin @PostMapping("finalApproveOrder") @Operation(summary = "采购订单审批(老板审批)", method = "POST") - public Response finalApproveOrder(@RequestBody @Validated OrderFinalApproveCmd orderFinalApproveCmd) { - orderService.finalApprove(orderFinalApproveCmd); - return Response.buildSuccess(); + public SingleResponse finalApproveOrder(@RequestBody @Validated OrderFinalApproveCmd orderFinalApproveCmd) { + AuditVO auditVO = orderService.finalApprove(orderFinalApproveCmd); + return SingleResponse.of(auditVO); } @SaCheckLogin @PostMapping("rejectFinalOrder") @Operation(summary = "采购订单驳回审批(老板驳回审批)", method = "POST") - public Response rejectFinalOrder(@RequestBody @Validated OrderRejectFinalCmd orderRejectFinalCmd) { - orderService.rejectFinal(orderRejectFinalCmd); - return Response.buildSuccess(); + public SingleResponse rejectFinalOrder(@RequestBody @Validated OrderRejectFinalCmd orderRejectFinalCmd) { + AuditVO auditVO = orderService.rejectFinal(orderRejectFinalCmd); + return SingleResponse.of(auditVO); } @SaCheckLogin diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderApproveCmdExe.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderApproveCmdExe.java index 7805e8a..54cf45d 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderApproveCmdExe.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderApproveCmdExe.java @@ -1,10 +1,15 @@ package com.xunhong.erp.turbo.biz.app.executor.cmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderApproveCmd; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; +import com.xunhong.erp.turbo.biz.app.assembler.AuditAssembler; +import com.xunhong.erp.turbo.biz.domain.entity.Audit; +import com.xunhong.erp.turbo.biz.domain.gateway.AuditGateway; import com.xunhong.erp.turbo.biz.domain.gateway.OrderGateway; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; /** * @author shenyifei @@ -15,8 +20,15 @@ import org.springframework.stereotype.Component; public class OrderApproveCmdExe { private final OrderGateway orderGateway; + private final AuditGateway auditGateway; - public void execute(OrderApproveCmd orderApproveCmd) { + private final AuditAssembler auditAssembler; + + @Transactional + public AuditVO execute(OrderApproveCmd orderApproveCmd) { + Audit audit = auditGateway.approve(orderApproveCmd); orderGateway.approve(orderApproveCmd); + + return auditAssembler.toAuditVO(audit); } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderFinalApproveCmdExe.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderFinalApproveCmdExe.java index a832454..bb9fd40 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderFinalApproveCmdExe.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderFinalApproveCmdExe.java @@ -1,6 +1,10 @@ package com.xunhong.erp.turbo.biz.app.executor.cmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderFinalApproveCmd; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; +import com.xunhong.erp.turbo.biz.app.assembler.AuditAssembler; +import com.xunhong.erp.turbo.biz.domain.entity.Audit; +import com.xunhong.erp.turbo.biz.domain.gateway.AuditGateway; import com.xunhong.erp.turbo.biz.domain.gateway.ExpenseRecordGateway; import com.xunhong.erp.turbo.biz.domain.gateway.OrderGateway; import lombok.RequiredArgsConstructor; @@ -20,11 +24,17 @@ public class OrderFinalApproveCmdExe { private final ExpenseRecordGateway expenseRecordGateway; + private final AuditGateway auditGateway; + private final AuditAssembler auditAssembler; + @Transactional - public void execute(OrderFinalApproveCmd orderFinalApproveCmd) { + public AuditVO execute(OrderFinalApproveCmd orderFinalApproveCmd) { + Audit audit = auditGateway.finalApprove(orderFinalApproveCmd); + orderGateway.finalApprove(orderFinalApproveCmd); // 计提费计入发货日期的花销 expenseRecordGateway.addProvision(orderFinalApproveCmd.getOrderId()); + return auditAssembler.toAuditVO(audit); } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderRejectApproveCmdExe.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderRejectApproveCmdExe.java index 41c6e82..459a102 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderRejectApproveCmdExe.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderRejectApproveCmdExe.java @@ -1,10 +1,15 @@ package com.xunhong.erp.turbo.biz.app.executor.cmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderRejectApproveCmd; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; +import com.xunhong.erp.turbo.biz.app.assembler.AuditAssembler; +import com.xunhong.erp.turbo.biz.domain.entity.Audit; +import com.xunhong.erp.turbo.biz.domain.gateway.AuditGateway; import com.xunhong.erp.turbo.biz.domain.gateway.OrderGateway; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; /** * @author shenyifei @@ -15,8 +20,13 @@ import org.springframework.stereotype.Component; public class OrderRejectApproveCmdExe { private final OrderGateway orderGateway; + private final AuditGateway auditGateway; + private final AuditAssembler auditAssembler; - public void execute(OrderRejectApproveCmd orderRejectApproveCmd) { + @Transactional + public AuditVO execute(OrderRejectApproveCmd orderRejectApproveCmd) { + Audit audit = auditGateway.rejectApprove(orderRejectApproveCmd); orderGateway.rejectApprove(orderRejectApproveCmd); + return auditAssembler.toAuditVO(audit); } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderRejectFinalCmdExe.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderRejectFinalCmdExe.java index f330198..5d1fcf2 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderRejectFinalCmdExe.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderRejectFinalCmdExe.java @@ -1,10 +1,15 @@ package com.xunhong.erp.turbo.biz.app.executor.cmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderRejectFinalCmd; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; +import com.xunhong.erp.turbo.biz.app.assembler.AuditAssembler; +import com.xunhong.erp.turbo.biz.domain.entity.Audit; +import com.xunhong.erp.turbo.biz.domain.gateway.AuditGateway; import com.xunhong.erp.turbo.biz.domain.gateway.OrderGateway; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; /** * @author shenyifei @@ -15,8 +20,14 @@ import org.springframework.stereotype.Component; public class OrderRejectFinalCmdExe { private final OrderGateway orderGateway; + private final AuditGateway auditGateway; - public void execute(OrderRejectFinalCmd orderRejectFinalCmd) { + private final AuditAssembler auditAssembler; + + @Transactional + public AuditVO execute(OrderRejectFinalCmd orderRejectFinalCmd) { + Audit audit = auditGateway.rejectFinal(orderRejectFinalCmd); orderGateway.rejectFinal(orderRejectFinalCmd); + return auditAssembler.toAuditVO(audit); } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderSubmitReviewCmdExe.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderSubmitReviewCmdExe.java index 6232881..ce7a7ce 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderSubmitReviewCmdExe.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderSubmitReviewCmdExe.java @@ -1,10 +1,15 @@ package com.xunhong.erp.turbo.biz.app.executor.cmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderSubmitReviewCmd; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; +import com.xunhong.erp.turbo.biz.app.assembler.AuditAssembler; +import com.xunhong.erp.turbo.biz.domain.entity.Audit; +import com.xunhong.erp.turbo.biz.domain.gateway.AuditGateway; import com.xunhong.erp.turbo.biz.domain.gateway.OrderGateway; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; /** * @author shenyifei @@ -15,8 +20,15 @@ import org.springframework.stereotype.Component; public class OrderSubmitReviewCmdExe { private final OrderGateway orderGateway; + private final AuditAssembler auditAssembler; - public void execute(OrderSubmitReviewCmd orderSubmitReviewCmd) { + private final AuditGateway auditGateway; + + @Transactional + public AuditVO execute(OrderSubmitReviewCmd orderSubmitReviewCmd) { + Audit audit = auditGateway.submitReview(orderSubmitReviewCmd); orderGateway.submitReview(orderSubmitReviewCmd); + + return auditAssembler.toAuditVO(audit); } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderWithdrawReviewCmdExe.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderWithdrawReviewCmdExe.java index d61e056..04cef06 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderWithdrawReviewCmdExe.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/executor/cmd/OrderWithdrawReviewCmdExe.java @@ -1,10 +1,15 @@ package com.xunhong.erp.turbo.biz.app.executor.cmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderWithdrawReviewCmd; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; +import com.xunhong.erp.turbo.biz.app.assembler.AuditAssembler; +import com.xunhong.erp.turbo.biz.domain.entity.Audit; +import com.xunhong.erp.turbo.biz.domain.gateway.AuditGateway; import com.xunhong.erp.turbo.biz.domain.gateway.OrderGateway; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; /** * @author shenyifei @@ -15,8 +20,14 @@ import org.springframework.stereotype.Component; public class OrderWithdrawReviewCmdExe { private final OrderGateway orderGateway; + private final AuditGateway auditGateway; - public void execute(OrderWithdrawReviewCmd orderWithdrawReviewCmd) { + private final AuditAssembler auditAssembler; + + @Transactional + public AuditVO execute(OrderWithdrawReviewCmd orderWithdrawReviewCmd) { + Audit audit = auditGateway.withdrawReview(orderWithdrawReviewCmd); orderGateway.withdrawReview(orderWithdrawReviewCmd); + return auditAssembler.toAuditVO(audit); } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/service/OrderServiceImpl.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/service/OrderServiceImpl.java index d6b9e2b..29f13cc 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/service/OrderServiceImpl.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/app/service/OrderServiceImpl.java @@ -3,6 +3,7 @@ package com.xunhong.erp.turbo.biz.app.service; import com.xunhong.erp.turbo.api.biz.api.OrderServiceI; import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.*; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; import com.xunhong.erp.turbo.api.biz.dto.vo.OrderVO; import com.xunhong.erp.turbo.base.dto.PageDTO; import com.xunhong.erp.turbo.biz.app.executor.cmd.*; @@ -75,33 +76,33 @@ public class OrderServiceImpl implements OrderServiceI { } @Override - public void approve(OrderApproveCmd orderApproveCmd) { - orderApproveCmdExe.execute(orderApproveCmd); + public AuditVO approve(OrderApproveCmd orderApproveCmd) { + return orderApproveCmdExe.execute(orderApproveCmd); } @Override - public void submitReview(OrderSubmitReviewCmd orderSubmitReviewCmd) { - orderSubmitReviewCmdExe.execute(orderSubmitReviewCmd); + public AuditVO submitReview(OrderSubmitReviewCmd orderSubmitReviewCmd) { + return orderSubmitReviewCmdExe.execute(orderSubmitReviewCmd); } @Override - public void withdrawReview(OrderWithdrawReviewCmd orderWithdrawReviewCmd) { - orderWithdrawReviewCmdExe.execute(orderWithdrawReviewCmd); + public AuditVO withdrawReview(OrderWithdrawReviewCmd orderWithdrawReviewCmd) { + return orderWithdrawReviewCmdExe.execute(orderWithdrawReviewCmd); } @Override - public void rejectApprove(OrderRejectApproveCmd orderRejectApproveCmd) { - orderRejectApproveCmdExe.execute(orderRejectApproveCmd); + public AuditVO rejectApprove(OrderRejectApproveCmd orderRejectApproveCmd) { + return orderRejectApproveCmdExe.execute(orderRejectApproveCmd); } @Override - public void finalApprove(OrderFinalApproveCmd orderFinalApproveCmd) { - orderFinalApproveCmdExe.execute(orderFinalApproveCmd); + public AuditVO finalApprove(OrderFinalApproveCmd orderFinalApproveCmd) { + return orderFinalApproveCmdExe.execute(orderFinalApproveCmd); } @Override - public void rejectFinal(OrderRejectFinalCmd orderRejectFinalCmd) { - orderRejectFinalCmdExe.execute(orderRejectFinalCmd); + public AuditVO rejectFinal(OrderRejectFinalCmd orderRejectFinalCmd) { + return orderRejectFinalCmdExe.execute(orderRejectFinalCmd); } @Override diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Cost.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Cost.java index 5f9b3e2..3c063ef 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Cost.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Cost.java @@ -64,6 +64,11 @@ public class Cost extends DTO { */ private Boolean status; + /** + * 是否默认 + */ + private Boolean isDefault; + private List costItemIds; private List costItemList; diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Dealer.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Dealer.java index 0bc1d0d..1eb9826 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Dealer.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Dealer.java @@ -138,4 +138,14 @@ public class Dealer extends DTO { */ private BigDecimal lossAmount; + /** + * 是否启用初始车次号 + */ + private Boolean enableInitialTrainNo; + + /** + * 初始车次号 + */ + private Integer initialTrainNo; + } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Order.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Order.java index 74f632d..e945b62 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Order.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/Order.java @@ -52,7 +52,7 @@ public class Order extends DTO { private OrderPricingMethodEnum pricingMethod; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ private OrderStateEnum state; @@ -129,6 +129,6 @@ public class Order extends DTO { /** * 采购订单发货信息 */ - private List orderShipList; + private List orderShipList; } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderCost.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderCost.java index 753f183..1d1ded3 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderCost.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderCost.java @@ -92,7 +92,7 @@ public class OrderCost extends DTO { private Order order; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ private OrderStateEnum poState; diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderRebate.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderRebate.java index ae190f0..6f38dc7 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderRebate.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderRebate.java @@ -75,7 +75,7 @@ public class OrderRebate extends DTO { private Order order; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ private OrderStateEnum poState; diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderSupplier.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderSupplier.java index 25f6fe6..05c31c2 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderSupplier.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/entity/OrderSupplier.java @@ -221,7 +221,7 @@ public class OrderSupplier extends DTO { private Order order; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ private OrderStateEnum poState; diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/gateway/AuditGateway.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/gateway/AuditGateway.java index f060a2d..0811723 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/gateway/AuditGateway.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/domain/gateway/AuditGateway.java @@ -1,7 +1,7 @@ package com.xunhong.erp.turbo.biz.domain.gateway; import com.baomidou.mybatisplus.core.metadata.IPage; -import com.xunhong.erp.turbo.api.biz.dto.cmd.AuditUpdateCmd; +import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.AuditPageQry; import com.xunhong.erp.turbo.api.biz.dto.qry.AuditShowQry; import com.xunhong.erp.turbo.biz.domain.entity.Audit; @@ -16,5 +16,17 @@ public interface AuditGateway { Audit update(AuditUpdateCmd auditUpdateCmd); Audit show(AuditShowQry auditShowQry); + + Audit submitReview(OrderSubmitReviewCmd orderSubmitReviewCmd); + + Audit withdrawReview(OrderWithdrawReviewCmd orderWithdrawReviewCmd); + + Audit rejectApprove(OrderRejectApproveCmd orderRejectApproveCmd); + + Audit finalApprove(OrderFinalApproveCmd orderFinalApproveCmd); + + Audit rejectFinal(OrderRejectFinalCmd orderRejectFinalCmd); + + Audit approve(OrderApproveCmd orderApproveCmd); } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/DealerConvert.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/DealerConvert.java index 8cccf79..b13adc8 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/DealerConvert.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/DealerConvert.java @@ -29,6 +29,8 @@ public interface DealerConvert { @Mapping(target = "enableAccrualTax", source = "setting.enableAccrualTax") @Mapping(target = "companyRebateRatio", source = "setting.companyRebateRatio") @Mapping(target = "accrualTaxRatio", source = "setting.accrualTaxRatio") + @Mapping(target = "enableInitialTrainNo", source = "setting.enableInitialTrainNo") + @Mapping(target = "initialTrainNo", source = "setting.initialTrainNo") @Mapping(target = "dealerPaymentAccountList", source = "dealerPaymentAccountDOList") Dealer toDealer(DealerDO dealerDO); @@ -57,6 +59,8 @@ public interface DealerConvert { dealerSettingDO.setShareAdjusted(dealerCreateCmd.getShareAdjusted()); dealerSettingDO.setEnableLoss(dealerCreateCmd.getEnableLoss()); dealerSettingDO.setLossAmount(dealerCreateCmd.getLossAmount()); + dealerSettingDO.setEnableInitialTrainNo(dealerCreateCmd.getEnableInitialTrainNo()); + dealerSettingDO.setInitialTrainNo(dealerCreateCmd.getInitialTrainNo()); return dealerSettingDO; } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/OrderConvert.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/OrderConvert.java index ca87cc8..08808a6 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/OrderConvert.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/OrderConvert.java @@ -1,14 +1,9 @@ package com.xunhong.erp.turbo.biz.infrastructure.convert; import com.xunhong.erp.turbo.api.biz.dto.cmd.*; -import com.xunhong.erp.turbo.api.biz.dto.common.OrderCost; -import com.xunhong.erp.turbo.api.biz.dto.common.OrderRebate; -import com.xunhong.erp.turbo.api.biz.dto.common.OrderSupplier; +import com.xunhong.erp.turbo.api.biz.dto.common.*; import com.xunhong.erp.turbo.biz.domain.entity.Order; -import com.xunhong.erp.turbo.biz.infrastructure.entity.OrderCostDO; -import com.xunhong.erp.turbo.biz.infrastructure.entity.OrderDO; -import com.xunhong.erp.turbo.biz.infrastructure.entity.OrderRebateDO; -import com.xunhong.erp.turbo.biz.infrastructure.entity.OrderSupplierDO; +import com.xunhong.erp.turbo.biz.infrastructure.entity.*; import org.mapstruct.Mapper; import org.mapstruct.Mapping; import org.mapstruct.MappingTarget; @@ -19,7 +14,7 @@ import java.util.List; /** * @author shenyifei */ -@Mapper(componentModel = "spring", nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS, uses = {OrderVehicleConvert.class, OrderCostConvert.class, OrderPackageConvert.class, OrderDealerConvert.class, OrderRebateConvert.class, OrderCompanyConvert.class, OrderPackageConvert.class, OrderShipItemConvert.class}) +@Mapper(componentModel = "spring", nullValueCheckStrategy = NullValueCheckStrategy.ALWAYS, uses = {OrderVehicleConvert.class, OrderCostConvert.class, OrderPackageConvert.class, OrderDealerConvert.class, OrderRebateConvert.class, OrderCompanyConvert.class, OrderPackageConvert.class}) public interface OrderConvert { @Mapping(target = "orderShipList", source = "orderShipDOList") @@ -31,7 +26,7 @@ public interface OrderConvert { @Mapping(target = "orderCostItemList", source = "orderCostItemDOList") @Mapping(target = "orderSupplierList", source = "orderSupplierDOList") @Mapping(target = "orderVehicle", source = "orderVehicleDO") - Order toOrder(OrderDO orderDO); + Order toOrder(OrderDO orderDO); @Mapping(target = "orderShipDOList", ignore = true) @Mapping(target = "orderCostItemDOList", ignore = true) @@ -187,5 +182,33 @@ public interface OrderConvert { OrderRebateDO toOrderRebateDO(OrderRebate orderRebate); OrderRebate toOrderRebate(OrderRebateDO orderRebateDO); + + @Mapping(target = "file", ignore = true) + @Mapping(target = "orderDO", ignore = true) + @Mapping(target = "orderCostDOList", ignore = true) + @Mapping(target = "orderShipItemDOList", ignore = true) + @Mapping(target = "version", ignore = true) + @Mapping(target = "updatedAt", ignore = true) + @Mapping(target = "isDelete", ignore = true) + @Mapping(target = "createdAt", ignore = true) + @Mapping(target = "farmerInfo", ignore = true) + OrderShipDO toOrderShipDO(OrderShip orderShip); + + List toOrderShipList(List orderShipDOList); + + @Mapping(target = "picUrl", source = "file.picUrl") + @Mapping(target = "pdfUrl", source = "file.pdfUrl") + @Mapping(target = "orderShipItemList", source = "orderShipItemDOList") + OrderShip toOrderShip(OrderShipDO orderShipDO); + + List toOrderShipItemList(List orderShipItemDOList); + + OrderShipItem toOrderShipItem(OrderShipItemDO orderShipItemDO); + + @Mapping(target = "version", ignore = true) + @Mapping(target = "updatedAt", ignore = true) + @Mapping(target = "isDelete", ignore = true) + @Mapping(target = "createdAt", ignore = true) + OrderShipItemDO toOrderShipItemDO(OrderShipItem orderShipItem); } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/OrderShipConvert.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/OrderShipConvert.java index a12c16c..4e9cb8f 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/OrderShipConvert.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/convert/OrderShipConvert.java @@ -3,7 +3,7 @@ package com.xunhong.erp.turbo.biz.infrastructure.convert; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderShipCreateCmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderShipGenerateDocumentCmd; import com.xunhong.erp.turbo.api.biz.dto.cmd.OrderShipUpdateCmd; -import com.xunhong.erp.turbo.api.biz.dto.common.OrderShip; +import com.xunhong.erp.turbo.biz.domain.entity.OrderShip; import com.xunhong.erp.turbo.biz.infrastructure.entity.OrderShipDO; import com.xunhong.erp.turbo.biz.infrastructure.entity.OrderShipFileDO; import org.mapstruct.Mapper; @@ -22,7 +22,7 @@ public interface OrderShipConvert { @Mapping(target = "order", source = "orderDO") @Mapping(target = "orderCostList", source = "orderCostDOList") @Mapping(target = "orderShipItemList", source = "orderShipItemDOList") - com.xunhong.erp.turbo.biz.domain.entity.OrderShip toOrderShip(OrderShipDO orderShipDO); + OrderShip toOrderShip(OrderShipDO orderShipDO); @Mapping(target = "type", ignore = true) @Mapping(target = "file", ignore = true) @@ -91,16 +91,5 @@ public interface OrderShipConvert { orderShipFileDO.setPdfUrl(orderShipGenerateDocumentCmd.getPdfUrl()); return orderShipFileDO; } - - @Mapping(target = "file", ignore = true) - @Mapping(target = "orderDO", ignore = true) - @Mapping(target = "orderCostDOList", ignore = true) - @Mapping(target = "orderShipItemDOList", ignore = true) - @Mapping(target = "version", ignore = true) - @Mapping(target = "updatedAt", ignore = true) - @Mapping(target = "isDelete", ignore = true) - @Mapping(target = "createdAt", ignore = true) - @Mapping(target = "farmerInfo", ignore = true) - OrderShipDO toOrderShipDO(OrderShip orderShip); } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/CostDO.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/CostDO.java index c5220b9..1477110 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/CostDO.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/CostDO.java @@ -82,6 +82,12 @@ public class CostDO extends BaseDO { @TableField(value = "status") private Boolean status; + /** + * 是否默认:1_是;0_否 + */ + @TableField(value = "is_default") + private Boolean isDefault; + @TableField(exist = false) private List costItemDOList; diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/DealerSettingDO.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/DealerSettingDO.java index 0c47eef..d1ea642 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/DealerSettingDO.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/DealerSettingDO.java @@ -77,4 +77,35 @@ public class DealerSettingDO extends DTO { * 损耗金额 */ private BigDecimal lossAmount; + + /** + * 是否启用初始车次号 + */ + private Boolean enableInitialTrainNo; + + /** + * 初始车次号 + */ + private Integer initialTrainNo; + + + public static DealerSettingDO getDefaultSetting() { + DealerSettingDO setting = new DealerSettingDO(); + setting.setEnableShare(false); + setting.setShareRatio(new BigDecimal(0)); + setting.setFreightCostFlag(false); + setting.setStrawMatCostFlag(false); + setting.setIncludePackingFlag(false); + setting.setIncludeFreightFlag(false); + setting.setEnableAccrualTax(false); + setting.setAccrualTaxRatio(new BigDecimal(0)); + setting.setEnableCompanyRebate(false); + setting.setCompanyRebateRatio(new BigDecimal(0)); + setting.setShareAdjusted(false); + setting.setEnableLoss(false); + setting.setLossAmount(new BigDecimal(0)); + setting.setEnableInitialTrainNo(false); + setting.setInitialTrainNo(0); + return setting; + } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/OrderDO.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/OrderDO.java index cf65e39..38eff12 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/OrderDO.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/entity/OrderDO.java @@ -59,7 +59,7 @@ public class OrderDO extends BaseDO { private OrderPricingMethodEnum pricingMethod; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ @TableField(value = "state") private OrderStateEnum state; diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/AuditGatewayImpl.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/AuditGatewayImpl.java index ea09a22..4a07f4e 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/AuditGatewayImpl.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/AuditGatewayImpl.java @@ -5,10 +5,14 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import com.xunhong.erp.turbo.api.biz.dto.cmd.AuditUpdateCmd; +import com.xunhong.erp.turbo.api.biz.dto.cmd.*; +import com.xunhong.erp.turbo.api.biz.dto.enums.AuditStateEnum; import com.xunhong.erp.turbo.api.biz.dto.enums.AuditSubjectTypeEnum; +import com.xunhong.erp.turbo.api.biz.dto.enums.AuditTypeEnum; import com.xunhong.erp.turbo.api.biz.dto.qry.AuditPageQry; import com.xunhong.erp.turbo.api.biz.dto.qry.AuditShowQry; +import com.xunhong.erp.turbo.api.biz.exception.BizErrorCode; +import com.xunhong.erp.turbo.api.biz.exception.BizException; import com.xunhong.erp.turbo.biz.domain.entity.Audit; import com.xunhong.erp.turbo.biz.domain.gateway.AuditGateway; import com.xunhong.erp.turbo.biz.infrastructure.convert.AuditConvert; @@ -19,6 +23,7 @@ import com.xunhong.erp.turbo.biz.infrastructure.mapper.OrderMapper; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Repository; +import java.time.LocalDateTime; import java.util.List; import java.util.Map; import java.util.Objects; @@ -32,14 +37,14 @@ import java.util.stream.Collectors; @Repository @RequiredArgsConstructor public class AuditGatewayImpl implements AuditGateway { - private final AuditMapper auditMapper; - private final AuditConvert auditConvert; + private final AuditMapper auditMapper; + private final AuditConvert auditConvert; private final OrderMapper orderMapper; - @Override - public IPage page(AuditPageQry auditPageQry) { - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(AuditDO.class); + @Override + public IPage page(AuditPageQry auditPageQry) { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(AuditDO.class); queryWrapper.eq(Objects.nonNull(auditPageQry.getAuditId()), AuditDO::getAuditId, auditPageQry.getAuditId()); queryWrapper.eq(Objects.nonNull(auditPageQry.getType()), AuditDO::getType, auditPageQry.getType()); @@ -48,8 +53,8 @@ public class AuditGatewayImpl implements AuditGateway { queryWrapper.orderByDesc(AuditDO::getCreatedAt); - IPage page = new Page<>(auditPageQry.getPageIndex(), auditPageQry.getPageSize()); - page = auditMapper.selectPage(page, queryWrapper); + IPage page = new Page<>(auditPageQry.getPageIndex(), auditPageQry.getPageSize()); + page = auditMapper.selectPage(page, queryWrapper); Set orderIdList = page.getRecords().stream().filter(auditDO -> auditDO.getSubjectType().equals(AuditSubjectTypeEnum.PURCHASE_ORDER)).map(AuditDO::getSubjectId).collect(Collectors.toSet()); if (CollUtil.isNotEmpty(orderIdList)) { List orderDOList = orderMapper.selectByOrderIdList(orderIdList); @@ -61,10 +66,10 @@ public class AuditGatewayImpl implements AuditGateway { } return page.convert(auditConvert::toAudit); - } + } - @Override - public Audit update(AuditUpdateCmd auditUpdateCmd) { + @Override + public Audit update(AuditUpdateCmd auditUpdateCmd) { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(AuditDO.class); queryWrapper.eq(AuditDO::getAuditId, auditUpdateCmd.getAuditId()); queryWrapper.last("limit 1"); @@ -74,17 +79,185 @@ public class AuditGatewayImpl implements AuditGateway { auditConvert.toAuditDO(auditDO, auditUpdateCmd); auditMapper.updateById(auditDO); - return auditConvert.toAudit(auditDO); - } + return auditConvert.toAudit(auditDO); + } - @Override - public Audit show(AuditShowQry auditShowQry) { - LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(AuditDO.class); - queryWrapper.eq(AuditDO::getAuditId, auditShowQry.getAuditId()); - queryWrapper.last("limit 1"); + @Override + public Audit show(AuditShowQry auditShowQry) { + LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(AuditDO.class); + queryWrapper.eq(AuditDO::getAuditId, auditShowQry.getAuditId()); + queryWrapper.last("limit 1"); - AuditDO auditDO = auditMapper.selectOne(queryWrapper); - return auditConvert.toAudit(auditDO); - } + AuditDO auditDO = auditMapper.selectOne(queryWrapper); + if (Objects.nonNull(auditDO)) { + if (auditDO.getSubjectType().equals(AuditSubjectTypeEnum.PURCHASE_ORDER)) { + OrderDO orderDO = orderMapper.selectByOrderId(auditDO.getSubjectId()); + auditDO.setOrderDO(orderDO); + } + } + return auditConvert.toAudit(auditDO); + } + + @Override + public Audit submitReview(OrderSubmitReviewCmd orderSubmitReviewCmd) { + LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); + auditQueryWrapper.eq(AuditDO::getSubjectId, orderSubmitReviewCmd.getOrderId()); + auditQueryWrapper.eq(AuditDO::getSubjectType, AuditSubjectTypeEnum.PURCHASE_ORDER); + auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.REVIEWER_AUDIT); + auditQueryWrapper.last("limit 1"); + AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); + + if (Objects.isNull(auditDO)) { + auditDO = new AuditDO(); + auditDO.setSubjectId(orderSubmitReviewCmd.getOrderId()); + auditDO.setSubjectType(AuditSubjectTypeEnum.PURCHASE_ORDER); + auditDO.setType(AuditTypeEnum.REVIEWER_AUDIT); + auditDO.setState(AuditStateEnum.WAITING_AUDIT); + auditDO.setCreatedBy(orderSubmitReviewCmd.getCreatedBy()); + auditDO.setCreatedByName(orderSubmitReviewCmd.getCreatedByName()); + auditMapper.insert(auditDO); + } else { + auditDO.setState(AuditStateEnum.WAITING_AUDIT); + auditMapper.updateById(auditDO); + } + + return auditConvert.toAudit(auditDO); + } + + @Override + public Audit withdrawReview(OrderWithdrawReviewCmd orderWithdrawReviewCmd) { + // 更新审核记录状态为草稿(撤回审核) + LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); + auditQueryWrapper.eq(AuditDO::getSubjectId, orderWithdrawReviewCmd.getOrderId()); + auditQueryWrapper.eq(AuditDO::getSubjectType, AuditSubjectTypeEnum.PURCHASE_ORDER); + auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); + auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.REVIEWER_AUDIT); + auditQueryWrapper.last("limit 1"); + AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); + + if (auditDO != null) { + auditDO.setState(AuditStateEnum.AUDIT_CANCEL); + auditDO.setAuditAt(LocalDateTime.now()); + auditDO.setAuditBy(orderWithdrawReviewCmd.getCreatedBy()); + auditDO.setAuditByName(orderWithdrawReviewCmd.getCreatedByName()); + auditMapper.updateById(auditDO); + } + return auditConvert.toAudit(auditDO); + } + + @Override + public Audit rejectApprove(OrderRejectApproveCmd orderRejectApproveCmd) { + // 更新审核记录 + LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); + auditQueryWrapper.eq(AuditDO::getAuditId, orderRejectApproveCmd.getAuditId()); + auditQueryWrapper.eq(AuditDO::getSubjectId, orderRejectApproveCmd.getOrderId()); + auditQueryWrapper.eq(AuditDO::getSubjectType, AuditSubjectTypeEnum.PURCHASE_ORDER); + auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); + auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.REVIEWER_AUDIT); + auditQueryWrapper.last("limit 1"); + AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); + + if (auditDO != null) { + auditDO.setState(AuditStateEnum.AUDIT_REJECTED); + auditDO.setAuditReason(orderRejectApproveCmd.getRejectReason()); + auditDO.setAuditAt(LocalDateTime.now()); + auditDO.setAuditBy(orderRejectApproveCmd.getCreatedBy()); + auditDO.setAuditByName(orderRejectApproveCmd.getCreatedByName()); + auditMapper.updateById(auditDO); + } else { + // 如果审核记录不存在,抛出异常 + throw new BizException(BizErrorCode.B_BIZ_AUDIT_NOT_FOUND); + } + return auditConvert.toAudit(auditDO); + } + + @Override + public Audit finalApprove(OrderFinalApproveCmd orderFinalApproveCmd) { + // 更新审核记录为审核成功 + LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); + auditQueryWrapper.eq(AuditDO::getSubjectId, orderFinalApproveCmd.getOrderId()); + auditQueryWrapper.eq(AuditDO::getSubjectType, AuditSubjectTypeEnum.PURCHASE_ORDER); + auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); + auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.BOSS_AUDIT); + auditQueryWrapper.eq(AuditDO::getAuditId, orderFinalApproveCmd.getAuditId()); + auditQueryWrapper.last("limit 1"); + AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); + + if (auditDO != null) { + auditDO.setState(AuditStateEnum.AUDIT_SUCCESS); + auditDO.setAuditAt(LocalDateTime.now()); + auditDO.setAuditBy(orderFinalApproveCmd.getCreatedBy()); + auditDO.setAuditByName(orderFinalApproveCmd.getCreatedByName()); + auditMapper.updateById(auditDO); + } else { + // 如果审核记录不存在,抛出异常 + throw new BizException(BizErrorCode.B_BIZ_AUDIT_NOT_FOUND); + } + return auditConvert.toAudit(auditDO); + } + + @Override + public Audit rejectFinal(OrderRejectFinalCmd orderRejectFinalCmd) { + // 更新审核记录 + LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); + auditQueryWrapper.eq(AuditDO::getSubjectId, orderRejectFinalCmd.getOrderId()); + auditQueryWrapper.eq(AuditDO::getSubjectType, AuditSubjectTypeEnum.PURCHASE_ORDER); + auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); + auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.BOSS_AUDIT); + auditQueryWrapper.eq(AuditDO::getAuditId, orderRejectFinalCmd.getAuditId()); + auditQueryWrapper.last("limit 1"); + AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); + + if (auditDO != null) { + auditDO.setState(AuditStateEnum.AUDIT_REJECTED); + auditDO.setAuditReason(orderRejectFinalCmd.getRejectReason()); + auditDO.setAuditAt(LocalDateTime.now()); + auditDO.setAuditBy(orderRejectFinalCmd.getCreatedBy()); + auditDO.setAuditByName(orderRejectFinalCmd.getCreatedByName()); + auditMapper.updateById(auditDO); + } else { + // 如果审核记录不存在,抛出异常 + throw new BizException(BizErrorCode.B_BIZ_AUDIT_NOT_FOUND); + } + return auditConvert.toAudit(auditDO); + } + + @Override + public Audit approve(OrderApproveCmd orderApproveCmd) { + // 更新审核记录状态为审核成功 + LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); + auditQueryWrapper.eq(AuditDO::getSubjectId, orderApproveCmd.getOrderId()); + auditQueryWrapper.eq(AuditDO::getSubjectType, AuditSubjectTypeEnum.PURCHASE_ORDER); + auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); + auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.REVIEWER_AUDIT); + AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); + + if (Objects.isNull(auditDO)) { + // 如果审核记录不存在,抛出异常 + throw new BizException(BizErrorCode.B_BIZ_AUDIT_NOT_FOUND); + } + + if (orderApproveCmd.getDraft()) { + return auditConvert.toAudit(auditDO); + } + + auditDO.setState(AuditStateEnum.AUDIT_SUCCESS); + auditDO.setAuditAt(LocalDateTime.now()); + auditDO.setAuditBy(orderApproveCmd.getCreatedBy()); + auditDO.setAuditByName(orderApproveCmd.getCreatedByName()); + auditMapper.updateById(auditDO); + + // 自动生成报老板待审核记录(每次都创建新记录) + AuditDO auditDO1 = new AuditDO(); + auditDO1.setSubjectId(orderApproveCmd.getOrderId()); + auditDO1.setSubjectType(AuditSubjectTypeEnum.PURCHASE_ORDER); + auditDO1.setType(AuditTypeEnum.BOSS_AUDIT); + auditDO1.setState(AuditStateEnum.WAITING_AUDIT); + auditDO1.setCreatedBy(orderApproveCmd.getCreatedBy()); + auditDO1.setCreatedByName(orderApproveCmd.getCreatedByName()); + auditMapper.insert(auditDO1); + return auditConvert.toAudit(auditDO1); + + } } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/DealerGatewayImpl.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/DealerGatewayImpl.java index be8f224..2796e20 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/DealerGatewayImpl.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/DealerGatewayImpl.java @@ -19,6 +19,7 @@ import com.xunhong.erp.turbo.biz.domain.gateway.DealerGateway; import com.xunhong.erp.turbo.biz.infrastructure.convert.DealerConvert; import com.xunhong.erp.turbo.biz.infrastructure.entity.DealerDO; import com.xunhong.erp.turbo.biz.infrastructure.entity.DealerPaymentAccountDO; +import com.xunhong.erp.turbo.biz.infrastructure.entity.DealerSettingDO; import com.xunhong.erp.turbo.biz.infrastructure.mapper.DealerMapper; import com.xunhong.erp.turbo.biz.infrastructure.mapper.DealerPaymentAccountMapper; import lombok.RequiredArgsConstructor; @@ -45,6 +46,8 @@ public class DealerGatewayImpl implements DealerGateway { @Override public Dealer save(DealerCreateCmd dealerCreateCmd) { DealerDO dealerDO = dealerConvert.toDealerDO(dealerCreateCmd); + DealerSettingDO defaultSetting = DealerSettingDO.getDefaultSetting(); + dealerDO.setSetting(defaultSetting); dealerMapper.insert(dealerDO); return dealerConvert.toDealer(dealerDO); diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/OrderGatewayImpl.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/OrderGatewayImpl.java index de80fb5..7a10dd9 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/OrderGatewayImpl.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/gateway/OrderGatewayImpl.java @@ -22,7 +22,7 @@ import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Repository; import org.springframework.transaction.annotation.Transactional; -import java.time.LocalDateTime; +import java.math.BigDecimal; import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -68,7 +68,7 @@ public class OrderGatewayImpl implements OrderGateway { private final SupplierMapper supplierMapper; private final SupplierConvert supplierConvert; - private final AuditMapper auditMapper; + private final DealerMapper dealerMapper; @Override @Transactional @@ -225,11 +225,10 @@ public class OrderGatewayImpl implements OrderGateway { } @Override - @Transactional public void approve(OrderApproveCmd orderApproveCmd) { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(OrderDO.class); queryWrapper.eq(OrderDO::getOrderId, orderApproveCmd.getOrderId()); - queryWrapper.eq(OrderDO::getState, OrderStateEnum.WAITING_AUDIT); + queryWrapper.eq(OrderDO::getState, OrderStateEnum.AUDITING); queryWrapper.last("limit 1"); OrderDO orderDO = orderMapper.selectOne(queryWrapper); @@ -238,37 +237,8 @@ public class OrderGatewayImpl implements OrderGateway { throw new BizException(BizErrorCode.B_BIZ_ORDER_NOT_WAITING_AUDIT); } orderDO.setPricingMethod(orderApproveCmd.getPricingMethod()); - if (!orderApproveCmd.getDraft()) { orderDO.setAuditState(OrderAuditStateEnum.PENDING_BOSS_APPROVAL); - - // 更新审核记录状态为审核成功 - LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); - auditQueryWrapper.eq(AuditDO::getSubjectId, orderApproveCmd.getOrderId()); - auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); - auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.REVIEWER_AUDIT); - AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); - - if (auditDO != null) { - auditDO.setState(AuditStateEnum.AUDIT_SUCCESS); - auditDO.setAuditAt(LocalDateTime.now()); - auditDO.setAuditBy(orderApproveCmd.getCreatedBy()); - auditDO.setAuditByName(orderApproveCmd.getCreatedByName()); - auditMapper.updateById(auditDO); - } else { - // 如果审核记录不存在,抛出异常 - throw new BizException(BizErrorCode.B_BIZ_AUDIT_NOT_FOUND); - } - - - // 自动生成报老板待审核记录(每次都创建新记录) - AuditDO auditDO1 = new AuditDO(); - auditDO1.setSubjectId(orderApproveCmd.getOrderId()); - auditDO1.setType(AuditTypeEnum.BOSS_AUDIT); - auditDO1.setState(AuditStateEnum.WAITING_AUDIT); - auditDO1.setCreatedBy(orderApproveCmd.getCreatedBy()); - auditDO1.setCreatedByName(orderApproveCmd.getCreatedByName()); - auditMapper.insert(auditDO1); } orderMapper.updateById(orderDO); @@ -400,7 +370,7 @@ public class OrderGatewayImpl implements OrderGateway { for (OrderShip updatedShip : orderShipList) { updatedShip.setOrderId(orderId); - OrderShipDO orderShipDO = orderShipConvert.toOrderShipDO(updatedShip); + OrderShipDO orderShipDO = orderConvert.toOrderShipDO(updatedShip); orderShipDO.setCreatedBy(orderApproveCmd.getCreatedBy()); orderShipDO.setCreatedByName(orderApproveCmd.getCreatedByName()); if (orderApproveCmd.getDraft()) { @@ -417,6 +387,7 @@ public class OrderGatewayImpl implements OrderGateway { existingShipMap.remove(updatedShip.getOrderShipId()); } else { // 新增发货单 + orderShipDO.setOrderShipId(null); // 生成发货单编号 if (StrUtil.isBlank(orderShipDO.getOrderSn())) { orderShipDO.setOrderSn("FH" + generateOrderShipSn()); @@ -435,6 +406,7 @@ public class OrderGatewayImpl implements OrderGateway { .map(item -> { OrderShipItemDO itemDO = orderShipItemConvert.toOrderShipItemDO(item); itemDO.setOrderShipId(null); // 稍后设置 + itemDO.setOrderShipItemId(null); return itemDO; }) .collect(Collectors.toList()); @@ -469,6 +441,7 @@ public class OrderGatewayImpl implements OrderGateway { /** * 保存发货单明细 + * 根据 orderShipId 和 unitPrice 两个字段判断是否新增、更新或删除 */ private void saveOrderShipItems(OrderShipDO orderShipDO, List orderShipItemList) { if (CollUtil.isEmpty(orderShipItemList)) { @@ -480,34 +453,50 @@ public class OrderGatewayImpl implements OrderGateway { itemQueryWrapper.eq(OrderShipItemDO::getOrderShipId, orderShipDO.getOrderShipId()); List existingItems = orderShipItemMapper.selectList(itemQueryWrapper); - // 将现有明细映射到 itemId 字典中便于查找 - Map existingItemMap = existingItems.stream() - .filter(item -> item.getOrderShipItemId() != null) - .collect(Collectors.toMap(OrderShipItemDO::getOrderShipItemId, Function.identity())); + // 将现有明细映射到 unitPrice 字典中便于查找 + // 使用 BigDecimal 的 compareTo 作为比较器,确保精确匹配 + Map existingItemMap = existingItems.stream() + .filter(item -> item.getUnitPrice() != null) + .collect(Collectors.toMap( + OrderShipItemDO::getUnitPrice, + Function.identity(), + (existing, replacement) -> existing // 如果有重复的unitPrice,保留第一个 + )); // 收集需要更新和新增的明细 List itemsToInsert = new ArrayList<>(); List itemsToUpdate = new ArrayList<>(); for (OrderShipItem updatedItem : orderShipItemList) { - OrderShipItemDO itemDO = orderShipItemConvert.toOrderShipItemDO(updatedItem); + if (updatedItem.getUnitPrice() == null) { + continue; // 跳过单价为空的记录 + } - if (existingItemMap.containsKey(updatedItem.getOrderShipItemId())) { - // 更新已存在的明细 - itemDO.setOrderShipItemId(updatedItem.getOrderShipItemId()); - itemDO.setOrderShipId(orderShipDO.getOrderShipId()); + // 查找是否存在相同 unitPrice 的记录 + OrderShipItemDO existingItem = existingItemMap.entrySet().stream() + .filter(entry -> entry.getKey().compareTo(updatedItem.getUnitPrice()) == 0) + .map(Map.Entry::getValue) + .findFirst() + .orElse(null); + + OrderShipItemDO itemDO = orderShipItemConvert.toOrderShipItemDO(updatedItem); + itemDO.setOrderShipId(orderShipDO.getOrderShipId()); + + if (existingItem != null) { + // 更新已存在的明细(基于 unitPrice 匹配) + itemDO.setOrderShipItemId(existingItem.getOrderShipItemId()); itemsToUpdate.add(itemDO); // 从现有映射中移除,剩下的就是需要删除的 - existingItemMap.remove(updatedItem.getOrderShipItemId()); + existingItemMap.remove(existingItem.getUnitPrice()); } else { + itemDO.setOrderShipItemId(null); // 新增明细 - itemDO.setOrderShipId(orderShipDO.getOrderShipId()); itemsToInsert.add(itemDO); } } - // 删除不再需要的明细 - existingItemMap.values().forEach(OrderShipItemDO::deleteById); + // 删除不再需要的明细(数据库中存在但新列表中没有的 unitPrice) + existingItemMap.values().forEach(item -> orderShipItemMapper.deleteById(item.getOrderShipItemId())); // 执行更新操作 itemsToUpdate.forEach(orderShipItemMapper::updateById); @@ -517,7 +506,6 @@ public class OrderGatewayImpl implements OrderGateway { } @Override - @Transactional public void submitReview(OrderSubmitReviewCmd orderSubmitReviewCmd) { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(OrderDO.class); queryWrapper.eq(OrderDO::getOrderId, orderSubmitReviewCmd.getOrderId()); @@ -530,27 +518,17 @@ public class OrderGatewayImpl implements OrderGateway { throw new BizException(BizErrorCode.B_BIZ_ORDER_NOT_DRAFT); } - orderDO.setState(OrderStateEnum.WAITING_AUDIT); + orderDO.setState(OrderStateEnum.AUDITING); orderDO.setAuditState(OrderAuditStateEnum.PENDING_QUOTE_APPROVAL); orderMapper.updateById(orderDO); - - // 自动生成报价审核员待审核记录(每次都创建新记录) - AuditDO auditDO = new AuditDO(); - auditDO.setSubjectId(orderSubmitReviewCmd.getOrderId()); - auditDO.setType(AuditTypeEnum.REVIEWER_AUDIT); - auditDO.setState(AuditStateEnum.WAITING_AUDIT); - auditDO.setCreatedBy(orderSubmitReviewCmd.getCreatedBy()); - auditDO.setCreatedByName(orderSubmitReviewCmd.getCreatedByName()); - auditMapper.insert(auditDO); } @Override - @Transactional public void withdrawReview(OrderWithdrawReviewCmd orderWithdrawReviewCmd) { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(OrderDO.class); queryWrapper.eq(OrderDO::getOrderId, orderWithdrawReviewCmd.getOrderId()); - queryWrapper.eq(OrderDO::getState, OrderStateEnum.WAITING_AUDIT); + queryWrapper.eq(OrderDO::getState, OrderStateEnum.AUDITING); queryWrapper.eq(OrderDO::getAuditState, OrderAuditStateEnum.PENDING_QUOTE_APPROVAL); queryWrapper.last("limit 1"); @@ -560,33 +538,16 @@ public class OrderGatewayImpl implements OrderGateway { throw new BizException(BizErrorCode.B_BIZ_ORDER_NOT_WAITING_FOR_WITHDRAW); } - orderDO.setState(OrderStateEnum.DRAFT); orderDO.setAuditState(OrderAuditStateEnum.NONE); orderMapper.updateById(orderDO); - - // 更新审核记录状态为草稿(撤回审核) - LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); - auditQueryWrapper.eq(AuditDO::getSubjectId, orderWithdrawReviewCmd.getOrderId()); - auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); - auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.REVIEWER_AUDIT); - AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); - - if (auditDO != null) { - auditDO.setState(AuditStateEnum.AUDIT_CANCEL); - auditDO.setAuditAt(LocalDateTime.now()); - auditDO.setAuditBy(orderWithdrawReviewCmd.getCreatedBy()); - auditDO.setAuditByName(orderWithdrawReviewCmd.getCreatedByName()); - auditMapper.updateById(auditDO); - } } @Override - @Transactional public void rejectApprove(OrderRejectApproveCmd orderRejectApproveCmd) { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(OrderDO.class); queryWrapper.eq(OrderDO::getOrderId, orderRejectApproveCmd.getOrderId()); - queryWrapper.eq(OrderDO::getState, OrderStateEnum.WAITING_AUDIT); + queryWrapper.eq(OrderDO::getState, OrderStateEnum.AUDITING); queryWrapper.eq(OrderDO::getAuditState, OrderAuditStateEnum.PENDING_QUOTE_APPROVAL); queryWrapper.last("limit 1"); @@ -596,30 +557,11 @@ public class OrderGatewayImpl implements OrderGateway { throw new BizException(BizErrorCode.B_BIZ_ORDER_NOT_WAITING_AUDIT); } - orderDO.setState(OrderStateEnum.REJECTED); + orderDO.setState(OrderStateEnum.DRAFT); orderDO.setAuditState(OrderAuditStateEnum.QUOTE_REJECTED); orderMapper.updateById(orderDO); - // 更新审核记录 - LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); - auditQueryWrapper.eq(AuditDO::getSubjectId, orderRejectApproveCmd.getOrderId()); - auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); - auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.REVIEWER_AUDIT); - AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); - - if (auditDO != null) { - auditDO.setState(AuditStateEnum.AUDIT_REJECTED); - auditDO.setAuditReason(orderRejectApproveCmd.getRejectReason()); - auditDO.setAuditAt(LocalDateTime.now()); - auditDO.setAuditBy(orderRejectApproveCmd.getCreatedBy()); - auditDO.setAuditByName(orderRejectApproveCmd.getCreatedByName()); - auditMapper.updateById(auditDO); - } else { - // 如果审核记录不存在,抛出异常 - throw new BizException(BizErrorCode.B_BIZ_AUDIT_NOT_FOUND); - } - // 发货单改成(草稿) LambdaUpdateWrapper updateWrapper = Wrappers.lambdaUpdate(OrderShipDO.class); updateWrapper.eq(OrderShipDO::getOrderId, orderDO.getOrderId()); @@ -631,7 +573,7 @@ public class OrderGatewayImpl implements OrderGateway { public void finalApprove(OrderFinalApproveCmd orderFinalApproveCmd) { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(OrderDO.class); queryWrapper.eq(OrderDO::getOrderId, orderFinalApproveCmd.getOrderId()); - queryWrapper.eq(OrderDO::getState, OrderStateEnum.WAITING_AUDIT); + queryWrapper.eq(OrderDO::getState, OrderStateEnum.AUDITING); queryWrapper.eq(OrderDO::getAuditState, OrderAuditStateEnum.PENDING_BOSS_APPROVAL); queryWrapper.last("limit 1"); @@ -645,24 +587,6 @@ public class OrderGatewayImpl implements OrderGateway { orderDO.setState(OrderStateEnum.COMPLETED); orderDO.setAuditState(OrderAuditStateEnum.BOSS_APPROVED); - // 更新审核记录为审核成功 - LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); - auditQueryWrapper.eq(AuditDO::getSubjectId, orderFinalApproveCmd.getOrderId()); - auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); - auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.BOSS_AUDIT); - AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); - - if (auditDO != null) { - auditDO.setState(AuditStateEnum.AUDIT_SUCCESS); - auditDO.setAuditAt(LocalDateTime.now()); - auditDO.setAuditBy(orderFinalApproveCmd.getCreatedBy()); - auditDO.setAuditByName(orderFinalApproveCmd.getCreatedByName()); - auditMapper.updateById(auditDO); - } else { - // 如果审核记录不存在,抛出异常 - throw new BizException(BizErrorCode.B_BIZ_AUDIT_NOT_FOUND); - } - orderMapper.updateById(orderDO); // 发货单改成已发货(待回款) @@ -684,11 +608,10 @@ public class OrderGatewayImpl implements OrderGateway { } @Override - @Transactional public void rejectFinal(OrderRejectFinalCmd orderRejectFinalCmd) { LambdaQueryWrapper queryWrapper = Wrappers.lambdaQuery(OrderDO.class); queryWrapper.eq(OrderDO::getOrderId, orderRejectFinalCmd.getOrderId()); - queryWrapper.eq(OrderDO::getState, OrderStateEnum.WAITING_AUDIT); + queryWrapper.eq(OrderDO::getState, OrderStateEnum.AUDITING); queryWrapper.eq(OrderDO::getAuditState, OrderAuditStateEnum.PENDING_BOSS_APPROVAL); queryWrapper.last("limit 1"); @@ -698,28 +621,8 @@ public class OrderGatewayImpl implements OrderGateway { throw new BizException(BizErrorCode.B_BIZ_ORDER_NOT_WAITING_FOR_REJECT_FINAL); } - orderDO.setState(OrderStateEnum.REJECTED); orderDO.setAuditState(OrderAuditStateEnum.BOSS_REJECTED); orderMapper.updateById(orderDO); - - // 更新审核记录 - LambdaQueryWrapper auditQueryWrapper = Wrappers.lambdaQuery(AuditDO.class); - auditQueryWrapper.eq(AuditDO::getSubjectId, orderRejectFinalCmd.getOrderId()); - auditQueryWrapper.eq(AuditDO::getState, AuditStateEnum.WAITING_AUDIT); - auditQueryWrapper.eq(AuditDO::getType, AuditTypeEnum.BOSS_AUDIT); - AuditDO auditDO = auditMapper.selectOne(auditQueryWrapper); - - if (auditDO != null) { - auditDO.setState(AuditStateEnum.AUDIT_REJECTED); - auditDO.setAuditReason(orderRejectFinalCmd.getRejectReason()); - auditDO.setAuditAt(LocalDateTime.now()); - auditDO.setAuditBy(orderRejectFinalCmd.getCreatedBy()); - auditDO.setAuditByName(orderRejectFinalCmd.getCreatedByName()); - auditMapper.updateById(auditDO); - } else { - // 如果审核记录不存在,抛出异常 - throw new BizException(BizErrorCode.B_BIZ_AUDIT_NOT_FOUND); - } } @Override @@ -1034,7 +937,18 @@ public class OrderGatewayImpl implements OrderGateway { queryWrapper.last("limit 1"); OrderVehicleDO orderVehicleDO = orderVehicleMapper.selectOne(queryWrapper); - return orderVehicleDO != null ? orderVehicleDO.getVehicleNo() : null; + + if (Objects.nonNull(orderVehicleDO)) { + return orderVehicleDO.getVehicleNo(); + } + + DealerDO dealerDO = dealerMapper.selectById(lastVehicleNoQry.getDealerId()); + + if (dealerDO.getSetting().getEnableInitialTrainNo()) { + return dealerDO.getSetting().getInitialTrainNo().toString(); + } else { + return "0"; + } } /** diff --git a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/mapper/OrderMapper.java b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/mapper/OrderMapper.java index 4cf0821..364088f 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/mapper/OrderMapper.java +++ b/erp-turbo-business/erp-turbo-biz/src/main/java/com/xunhong/erp/turbo/biz/infrastructure/mapper/OrderMapper.java @@ -19,6 +19,7 @@ import java.util.Set; public interface OrderMapper extends BaseMapper { List selectByOrderIdList(@Param("orderIdList") Set orderIdList); + OrderDO selectByOrderId(@Param("orderId") Long orderId); IPage selectPage(IPage page, @Param(Constants.WRAPPER) LambdaQueryWrapper queryWrapper, @Param("query") OrderPageQry orderPageQry); } diff --git a/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/CostItemMapper.xml b/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/CostItemMapper.xml index 6b671a3..4285d3b 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/CostItemMapper.xml +++ b/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/CostItemMapper.xml @@ -12,7 +12,6 @@ - diff --git a/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/CostMapper.xml b/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/CostMapper.xml index 515c3c2..ca0a9e8 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/CostMapper.xml +++ b/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/CostMapper.xml @@ -11,6 +11,7 @@ + diff --git a/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/OrderMapper.xml b/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/OrderMapper.xml index 08614bb..4afb17e 100644 --- a/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/OrderMapper.xml +++ b/erp-turbo-business/erp-turbo-biz/src/main/resources/mapper/OrderMapper.xml @@ -114,5 +114,20 @@ + + diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/api/OrderServiceI.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/api/OrderServiceI.java index d4c84c3..d1c6615 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/api/OrderServiceI.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/api/OrderServiceI.java @@ -2,6 +2,7 @@ package com.xunhong.erp.turbo.api.biz.api; import com.xunhong.erp.turbo.api.biz.dto.cmd.*; import com.xunhong.erp.turbo.api.biz.dto.qry.*; +import com.xunhong.erp.turbo.api.biz.dto.vo.AuditVO; import com.xunhong.erp.turbo.api.biz.dto.vo.OrderVO; import com.xunhong.erp.turbo.base.dto.PageDTO; @@ -23,17 +24,17 @@ public interface OrderServiceI { void destroy(OrderDestroyCmd orderDestroyCmd); - void approve(OrderApproveCmd orderApproveCmd); + AuditVO approve(OrderApproveCmd orderApproveCmd); - void submitReview(OrderSubmitReviewCmd orderSubmitReviewCmd); + AuditVO submitReview(OrderSubmitReviewCmd orderSubmitReviewCmd); - void withdrawReview(OrderWithdrawReviewCmd orderWithdrawReviewCmd); + AuditVO withdrawReview(OrderWithdrawReviewCmd orderWithdrawReviewCmd); - void rejectApprove(OrderRejectApproveCmd orderRejectApproveCmd); + AuditVO rejectApprove(OrderRejectApproveCmd orderRejectApproveCmd); - void finalApprove(OrderFinalApproveCmd orderFinalApproveCmd); + AuditVO finalApprove(OrderFinalApproveCmd orderFinalApproveCmd); - void rejectFinal(OrderRejectFinalCmd orderRejectFinalCmd); + AuditVO rejectFinal(OrderRejectFinalCmd orderRejectFinalCmd); Long countOrderByState(OrderCountQry orderCountQry); diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/CostCreateCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/CostCreateCmd.java index 5db84ad..ea5529f 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/CostCreateCmd.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/CostCreateCmd.java @@ -60,6 +60,12 @@ public class CostCreateCmd extends Command { @Schema(title = "备注") private String remark; + /** + * 是否默认 + */ + @Schema(title = "是否默认") + private Boolean isDefault; + /** * 排序号 */ diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerCreateCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerCreateCmd.java index 7c99853..11912be 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerCreateCmd.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/DealerCreateCmd.java @@ -136,5 +136,17 @@ public class DealerCreateCmd extends Command { @Schema(title = "损耗金额") private BigDecimal lossAmount; + /** + * 是否启用初始车次号 + */ + @Schema(title = "是否启用初始车次号") + private Boolean enableInitialTrainNo; + + /** + * 初始车次号 + */ + @Schema(title = "初始车次号") + private Integer initialTrainNo; + } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderApproveCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderApproveCmd.java index b88aff7..d5c83ea 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderApproveCmd.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderApproveCmd.java @@ -21,6 +21,9 @@ public class OrderApproveCmd extends OrderCreateCmd { @Schema(title = "采购订单ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") private Long orderId; + @Schema(title = "审核ID", type = "string", requiredMode = Schema.RequiredMode.REQUIRED) + private Long auditId; + @Schema(title = "是否是暂存", type = "boolean", requiredMode = Schema.RequiredMode.REQUIRED) private Boolean draft; diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderFinalApproveCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderFinalApproveCmd.java index b19aa45..e32d682 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderFinalApproveCmd.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderFinalApproveCmd.java @@ -15,5 +15,8 @@ public class OrderFinalApproveCmd extends Command { @Schema(title = "采购订单ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") private Long orderId; + + @Schema(title = "审核ID", type = "string", requiredMode = Schema.RequiredMode.REQUIRED) + private Long auditId; } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderRejectApproveCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderRejectApproveCmd.java index e85d911..26122e4 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderRejectApproveCmd.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderRejectApproveCmd.java @@ -16,6 +16,9 @@ public class OrderRejectApproveCmd extends Command { @Schema(title = "采购订单ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") private Long orderId; + @Schema(title = "审核ID", type = "string", requiredMode = Schema.RequiredMode.REQUIRED) + private Long auditId; + @Schema(title = "审核原因", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") private String rejectReason; } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderRejectFinalCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderRejectFinalCmd.java index d173939..fee7643 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderRejectFinalCmd.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderRejectFinalCmd.java @@ -16,6 +16,9 @@ public class OrderRejectFinalCmd extends Command { @Schema(title = "采购订单ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") private Long orderId; + @Schema(title = "审核ID", type = "string", requiredMode = Schema.RequiredMode.REQUIRED) + private Long auditId; + @Schema(title = "驳回原因", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") private String rejectReason; } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderWithdrawReviewCmd.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderWithdrawReviewCmd.java index d60d0b1..cda2c97 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderWithdrawReviewCmd.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/cmd/OrderWithdrawReviewCmd.java @@ -15,5 +15,8 @@ public class OrderWithdrawReviewCmd extends Command { @Schema(title = "采购订单ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") private Long orderId; + + @Schema(title = "审核ID", requiredMode = Schema.RequiredMode.REQUIRED, type = "string") + private Long auditId; } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/common/OrderSupplier.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/common/OrderSupplier.java index f3cdb2e..f38a00a 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/common/OrderSupplier.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/common/OrderSupplier.java @@ -256,9 +256,9 @@ public class OrderSupplier extends Command { private Boolean selected; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ - @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭;") + @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭;") private OrderStateEnum poState; /** diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/enums/OrderStateEnum.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/enums/OrderStateEnum.java index a802889..671a7d0 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/enums/OrderStateEnum.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/enums/OrderStateEnum.java @@ -8,13 +8,12 @@ import lombok.RequiredArgsConstructor; @RequiredArgsConstructor public enum OrderStateEnum { /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;4_已关闭; */ DRAFT(0, "草稿"), - WAITING_AUDIT(1, "审核中"), + AUDITING(1, "审核中"), COMPLETED(2, "已完结"), - REJECTED(3, "已驳回"), - CLOSED(4, "已关闭"), + CLOSED(3, "已关闭"), ; @EnumValue diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderCountQry.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderCountQry.java index 7375179..cebab44 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderCountQry.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderCountQry.java @@ -17,9 +17,9 @@ import lombok.EqualsAndHashCode; public class OrderCountQry extends Query { /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ - @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭;") + @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭;") private OrderStateEnum state; /** diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderListQry.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderListQry.java index d709bd8..220291b 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderListQry.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderListQry.java @@ -23,9 +23,9 @@ public class OrderListQry extends Query { private String orderSn; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ - @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭;") + @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭;") private OrderStateEnum state; /** diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderPageQry.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderPageQry.java index 168c7a9..a877e3b 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderPageQry.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/qry/OrderPageQry.java @@ -26,9 +26,9 @@ public class OrderPageQry extends PageQuery { private String orderSn; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ - @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭;") + @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭;") private OrderStateEnum state; /** diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/CostVO.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/CostVO.java index 67d1c91..bd0c15b 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/CostVO.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/CostVO.java @@ -61,6 +61,12 @@ public class CostVO extends DTO { @Schema(title = "备注") private String remark; + /** + * 是否默认 + */ + @Schema(title = "是否默认") + private Boolean isDefault; + /** * 排序号 */ diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/DealerVO.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/DealerVO.java index 241053d..c191935 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/DealerVO.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/DealerVO.java @@ -155,5 +155,17 @@ public class DealerVO extends DTO { */ @Schema(title = "损耗金额") private BigDecimal lossAmount; + + /** + * 是否启用初始车次号 + */ + @Schema(title = "是否启用初始车次号") + private Boolean enableInitialTrainNo; + + /** + * 初始车次号 + */ + @Schema(title = "初始车次号") + private Integer initialTrainNo; } diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderCostVO.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderCostVO.java index f38c58e..cc26b53 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderCostVO.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderCostVO.java @@ -96,9 +96,9 @@ public class OrderCostVO extends Command { private LocalDateTime createdAt; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ - @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭;") + @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭;") private OrderStateEnum poState; /** diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderRebateVO.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderRebateVO.java index 9394969..2134cb2 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderRebateVO.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderRebateVO.java @@ -75,9 +75,9 @@ public class OrderRebateVO extends Command { private LocalDateTime createdAt; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ - @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭;") + @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭;") private OrderStateEnum poState; /** diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderShipVO.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderShipVO.java index ff903c4..0639378 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderShipVO.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderShipVO.java @@ -38,19 +38,19 @@ public class OrderShipVO extends DTO { /** * 经销商ID */ - @Schema(title = "经销商ID", type = "string") + @Schema(title = "经销商ID", type = "string", requiredMode = Schema.RequiredMode.REQUIRED) private Long dealerId; /** * 经销商名称 */ - @Schema(title = "经销商名称") + @Schema(title = "经销商名称", requiredMode = Schema.RequiredMode.REQUIRED) private String dealerName; /** * 发货单编号 */ - @Schema(title = "发货单编号") + @Schema(title = "发货单编号", requiredMode = Schema.RequiredMode.REQUIRED) private String orderSn; /** diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderSupplierVO.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderSupplierVO.java index 09817db..0edcac7 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderSupplierVO.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderSupplierVO.java @@ -228,9 +228,9 @@ public class OrderSupplierVO extends DTO { private LocalDateTime createdAt; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ - @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭;") + @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭;") private OrderStateEnum poState; /** diff --git a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderVO.java b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderVO.java index 01d00b2..dc37a26 100644 --- a/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderVO.java +++ b/erp-turbo-common/erp-turbo-api/src/main/java/com/xunhong/erp/turbo/api/biz/dto/vo/OrderVO.java @@ -66,9 +66,9 @@ public class OrderVO extends DTO { private OrderPricingMethodEnum pricingMethod; /** - * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭; + * 采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭; */ - @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已驳回;4_已关闭;", requiredMode = Schema.RequiredMode.REQUIRED) + @Schema(title = "采购订单状态: 0_草稿;1_审核中;2_已完成;3_已关闭;", requiredMode = Schema.RequiredMode.REQUIRED) private OrderStateEnum state; /**