Commit 67e60689aa2d25c9efcafb0302f26b9391d64eb6

Authored by 谢茂盛
1 parent 8e2b3476

feat: ERP升级

1、回退财务代码
Showing 55 changed files with 0 additions and 7383 deletions
sql/dml_erp_bill_v2.sql deleted 100644 → 0
1 -DROP TABLE IF EXISTS `invoice_bill_order`;  
2 -CREATE TABLE `invoice_bill_order` (  
3 - `id` bigint NOT NULL AUTO_INCREMENT,  
4 - `invoice_no` varchar(64) NOT NULL COMMENT '发票单号',  
5 - `bg_url` varchar(256) NOT NULL COMMENT '报关单url地址',  
6 - `back_refund_date` varchar(64) NOT null COMMENT '必须回款日期',  
7 - `deduct_amount` decimal(20,6) DEFAULT NULL COMMENT '发生扣款金额',  
8 - `deduct_url` varchar(256) NOT NULL COMMENT '扣款单url地址',  
9 - `actual_receivable_amount` decimal(20,6) DEFAULT NULL COMMENT '实际应收金额',  
10 - `actual_payed_amount1` decimal(20,6) DEFAULT NULL COMMENT '实际应付金额1',  
11 - `actual_payed_amount2` decimal(20,6) DEFAULT NULL COMMENT '实际应付金额2',  
12 - `actual_payed_amount3` decimal(20,6) DEFAULT NULL COMMENT '实际应付金额3',  
13 - `other_amount` decimal(20,6) DEFAULT NULL COMMENT '其他费用金额',  
14 - `status` INT NOT NULL COMMENT '总经理审核状态 0:待审核、1:审核通过,2:审核驳回',  
15 - `enable_flag` INT NOT NULL COMMENT '是否可用 10-可用 20-删除',  
16 - `create_time` DATETIME NOT NULL COMMENT '创建时间',  
17 - `create_by` varchar(64) NOT NULL COMMENT '创建人',  
18 - `modify_time` DATETIME DEFAULT NULL COMMENT '修改时间',  
19 - `modify_by` varchar(64) DEFAULT NULL COMMENT '修改人',  
20 - `version` INT DEFAULT NULL COMMENT '版本号--乐观锁预留字段',  
21 - PRIMARY KEY (`id`)  
22 -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='应收款账单表';  
23 -  
24 -DROP TABLE IF EXISTS `invoice_bill_mapping`;  
25 -CREATE TABLE `invoice_bill_mapping` (  
26 - `id` bigint NOT NULL AUTO_INCREMENT,  
27 - `invoice_no` varchar(64) NOT NULL COMMENT '发票单号',  
28 - `invoice_bill_id` bigint DEFAULT '0' COMMENT 'invoice账单id',  
29 - `order_id` bigint DEFAULT '0' COMMENT '订单id',  
30 - `enable_flag` INT NOT NULL COMMENT '是否可用 10-可用 20-删除',  
31 - `create_time` DATETIME NOT NULL COMMENT '创建时间',  
32 - `create_by` varchar(64) NOT NULL COMMENT '创建人',  
33 - `modify_time` DATETIME DEFAULT NULL COMMENT '修改时间',  
34 - `modify_by` varchar(64) DEFAULT NULL COMMENT '修改人',  
35 - `version` INT DEFAULT NULL COMMENT '版本号--乐观锁预留字段',  
36 - PRIMARY KEY (`id`)  
37 -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='应收款账单关联订单映射表';  
38 -  
39 -  
40 -DROP TABLE IF EXISTS `produce_payment_check_bill_order`;  
41 -CREATE TABLE `produce_payment_check_bill_order` (  
42 - `id` bigint NOT NULL AUTO_INCREMENT,  
43 - `check_no` varchar(64) NOT NULL COMMENT '生产科对账单',  
44 - `invoice_url` varchar(256) NOT NULL COMMENT '发票url地址',  
45 - `deduct_pdf_url` varchar(256) NOT NULL COMMENT '扣款单url地址',  
46 - `payed_date` varchar(64) NOT null COMMENT '生产科应付款日期',  
47 - `deduct_dept` varchar(64) NOT null COMMENT '生产科扣款责任部门',  
48 - `deduct_amount` decimal(20,6) DEFAULT NULL COMMENT '生产科扣款金额',  
49 - `actual_payed_amount` decimal(20,6) DEFAULT NULL COMMENT '实际应付金额',  
50 - `status` INT NOT NULL COMMENT '总经理审核状态 0:待审核、1:审核通过,2:审核驳回',  
51 - `enable_flag` INT NOT NULL COMMENT '是否可用 10-可用 20-删除',  
52 - `create_time` DATETIME NOT NULL COMMENT '创建时间',  
53 - `create_by` varchar(64) NOT NULL COMMENT '创建人',  
54 - `modify_time` DATETIME DEFAULT NULL COMMENT '修改时间',  
55 - `modify_by` varchar(64) DEFAULT NULL COMMENT '修改人',  
56 - `version` INT DEFAULT NULL COMMENT '版本号--乐观锁预留字段',  
57 - PRIMARY KEY (`id`)  
58 -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产科对账单应收账单';  
59 -  
60 -DROP TABLE IF EXISTS `check_bill_mapping`;  
61 -CREATE TABLE `check_bill_mapping` (  
62 - `id` bigint NOT NULL AUTO_INCREMENT,  
63 - `check_no` varchar(64) NOT NULL COMMENT '生产科对账单号',  
64 - `check_bill_id` bigint DEFAULT '0' COMMENT 'check账单id',  
65 - `order_id` bigint DEFAULT '0' COMMENT '订单id',  
66 - `enable_flag` INT NOT NULL COMMENT '是否可用 10-可用 20-删除',  
67 - `create_time` DATETIME NOT NULL COMMENT '创建时间',  
68 - `create_by` varchar(64) NOT NULL COMMENT '创建人',  
69 - `modify_time` DATETIME DEFAULT NULL COMMENT '修改时间',  
70 - `modify_by` varchar(64) DEFAULT NULL COMMENT '修改人',  
71 - `version` INT DEFAULT NULL COMMENT '版本号--乐观锁预留字段',  
72 - PRIMARY KEY (`id`)  
73 -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='生产科对账单应收账单映射表';  
74 -  
src/main/java/com/order/erp/controller/InvoiceBillOrderController.java deleted 100644 → 0
1 -package com.order.erp.controller;  
2 -  
3 -import com.order.erp.common.constant.ServerResult;  
4 -import com.order.erp.common.jsr303.OperateGroup;  
5 -import com.order.erp.domain.vo.order.*;  
6 -import com.order.erp.service.order.InvoiceBillOrderService;  
7 -import org.springframework.validation.annotation.Validated;  
8 -import org.springframework.web.bind.annotation.PostMapping;  
9 -import org.springframework.web.bind.annotation.RequestBody;  
10 -import org.springframework.web.bind.annotation.RequestMapping;  
11 -import org.springframework.web.bind.annotation.RestController;  
12 -  
13 -import javax.annotation.Resource;  
14 -  
15 -/**  
16 - * 应收款账单表(InvoiceBillOrder)表控制层  
17 - *  
18 - * @author makejava  
19 - * @since 2024-08-05 16:26:34  
20 - */  
21 -@RestController  
22 -@RequestMapping("/order/erp/invoice_bill")  
23 -public class InvoiceBillOrderController {  
24 - /**  
25 - * 服务对象  
26 - */  
27 - @Resource  
28 - private InvoiceBillOrderService invoiceBillOrderService;  
29 -  
30 - /**  
31 - * 分页查询  
32 - *  
33 - * @param invoiceBillOrderQueryVO 查询条件  
34 - * @return 查询结果  
35 - */  
36 - @PostMapping("/list_by_page")  
37 - public ServerResult listByPage(@RequestBody @Validated({OperateGroup.List.class}) InvoiceBillOrderQueryVO invoiceBillOrderQueryVO) {  
38 - return invoiceBillOrderService.listByPage(invoiceBillOrderQueryVO);  
39 - }  
40 -  
41 - /**  
42 - * 基础订单查询  
43 - *  
44 - * @param queryVO 查询条件  
45 - * @return 查询结果  
46 - */  
47 - @PostMapping("/list_base_order_info_by")  
48 - public ServerResult listBaseOrderInfoBy(@RequestBody @Validated({OperateGroup.List.class}) InvoiceBaseOrderQueryVO queryVO) {  
49 - return invoiceBillOrderService.listBaseOrderInfoBy(queryVO);  
50 - }  
51 -  
52 -  
53 - /**  
54 - * 创建invoice单据  
55 - *  
56 - * @param createVO 数据VO  
57 - * @return 新增结果  
58 - */  
59 - @PostMapping("/create")  
60 - public ServerResult create(@RequestBody InvoiceBillCreateVO createVO) {  
61 - return invoiceBillOrderService.create(createVO);  
62 - }  
63 -  
64 - /**  
65 - * 更新扣款信息  
66 - *  
67 - * @param deductInfoVO 数据VO  
68 - * @return 编辑结果  
69 - */  
70 - @PostMapping("/update_deduct_info")  
71 - public ServerResult updateDeductInfo(@RequestBody InvoiceBillDeductInfoVO deductInfoVO) {  
72 - return invoiceBillOrderService.updateDeductInfo(deductInfoVO);  
73 - }  
74 -  
75 - /**  
76 - * 更新其他金额信息  
77 - *  
78 - * @param amountInfoVO 数据VO  
79 - * @return 编辑结果  
80 - */  
81 - @PostMapping("/update_amount_info")  
82 - public ServerResult updateAmountInfo(@RequestBody InvoiceBillAmountInfoVO amountInfoVO) {  
83 - return invoiceBillOrderService.updateAmountInfo(amountInfoVO);  
84 - }  
85 -  
86 - /**  
87 - * 删除数据  
88 - *  
89 - * @param invoiceBillOrderQueryVO 查询条件  
90 - * @return 删除是否成功  
91 - */  
92 - @PostMapping("/delete_by_id")  
93 - public ServerResult deleteById(@RequestBody InvoiceBillOrderQueryVO invoiceBillOrderQueryVO) {  
94 - return invoiceBillOrderService.deleteById(invoiceBillOrderQueryVO);  
95 - }  
96 -  
97 -}  
98 -  
src/main/java/com/order/erp/controller/ProducePaymentCheckBillOrderController.java deleted 100644 → 0
1 -package com.order.erp.controller;  
2 -  
3 -import com.order.erp.common.constant.ServerResult;  
4 -import com.order.erp.common.jsr303.OperateGroup;  
5 -import com.order.erp.domain.vo.order.ProducePaymentCheckBillOrderQueryVO;  
6 -import com.order.erp.domain.vo.order.ProducePaymentCheckBillOrderVO;  
7 -import com.order.erp.service.order.ProducePaymentCheckBillOrderService;  
8 -import org.springframework.validation.annotation.Validated;  
9 -import org.springframework.web.bind.annotation.PostMapping;  
10 -import org.springframework.web.bind.annotation.RequestBody;  
11 -import org.springframework.web.bind.annotation.RequestMapping;  
12 -import org.springframework.web.bind.annotation.RestController;  
13 -  
14 -import javax.annotation.Resource;  
15 -  
16 -/**  
17 - * 生产科对账单应收账单(ProducePaymentCheckBillOrder)表控制层  
18 - *  
19 - * @author makejava  
20 - * @since 2024-08-05 16:26:35  
21 - */  
22 -@RestController  
23 -@RequestMapping("/order/erp/check_bill/")  
24 -public class ProducePaymentCheckBillOrderController {  
25 - /**  
26 - * 服务对象  
27 - */  
28 - @Resource  
29 - private ProducePaymentCheckBillOrderService producePaymentCheckBillOrderService;  
30 -  
31 - /**  
32 - * 分页查询  
33 - *  
34 - * @param producePaymentCheckBillOrderQueryVO 查询条件  
35 - * @return 查询结果  
36 - */  
37 - @PostMapping("/list")  
38 - public ServerResult list(@RequestBody @Validated({OperateGroup.List.class}) ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {  
39 - return producePaymentCheckBillOrderService.list(producePaymentCheckBillOrderQueryVO);  
40 - }  
41 -  
42 - /**  
43 - * 通过主键查询单条数据  
44 - *  
45 - * @param producePaymentCheckBillOrderQueryVO 查询条件  
46 - * @return 单条数据  
47 - */  
48 - @PostMapping("/query_by_id")  
49 - public ServerResult queryById(@RequestBody ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {  
50 - return producePaymentCheckBillOrderService.queryById(producePaymentCheckBillOrderQueryVO);  
51 - }  
52 -  
53 - /**  
54 - * 新增数据  
55 - *  
56 - * @param producePaymentCheckBillOrderVO 数据VO  
57 - * @return 新增结果  
58 - */  
59 - @PostMapping("/add")  
60 - public ServerResult add(@RequestBody ProducePaymentCheckBillOrderVO producePaymentCheckBillOrderVO) {  
61 - return producePaymentCheckBillOrderService.add(producePaymentCheckBillOrderVO);  
62 - }  
63 -  
64 - /**  
65 - * 编辑数据  
66 - *  
67 - * @param producePaymentCheckBillOrderVO 数据VO  
68 - * @return 编辑结果  
69 - */  
70 - @PostMapping("/edit")  
71 - public ServerResult edit(@RequestBody ProducePaymentCheckBillOrderVO producePaymentCheckBillOrderVO) {  
72 - return producePaymentCheckBillOrderService.edit(producePaymentCheckBillOrderVO);  
73 - }  
74 -  
75 - /**  
76 - * 删除数据  
77 - *  
78 - * @param producePaymentCheckBillOrderQueryVO 查询条件  
79 - * @return 删除是否成功  
80 - */  
81 - @PostMapping("/delete_by_id")  
82 - public ServerResult deleteById(@RequestBody ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {  
83 - return producePaymentCheckBillOrderService.deleteById(producePaymentCheckBillOrderQueryVO);  
84 - }  
85 -  
86 -}  
87 -  
src/main/java/com/order/erp/domain/dto/order/CheckBillMappingDO.java deleted 100644 → 0
1 -package com.order.erp.domain.dto.order;  
2 -  
3 -import com.baomidou.mybatisplus.annotation.TableName;  
4 -import com.order.erp.domain.dto.BaseDO;  
5 -import lombok.*;  
6 -import lombok.experimental.SuperBuilder;  
7 -  
8 -import java.io.Serializable;  
9 -  
10 -/**  
11 - * 生产科对账单应收账单映射表(CheckBillMapping)实体类  
12 - *  
13 - * @author makejava  
14 - * @since 2024-08-05 16:26:36  
15 - */  
16 -@TableName("check_bill_mapping")  
17 -@Data  
18 -@AllArgsConstructor  
19 -@ToString  
20 -@NoArgsConstructor  
21 -@EqualsAndHashCode(callSuper = false)  
22 -@SuperBuilder  
23 -public class CheckBillMappingDO extends BaseDO implements Serializable {  
24 - private static final long serialVersionUID = 199786248752278040L;  
25 -  
26 - private Long id;  
27 - /**  
28 - * 生产科对账单号  
29 - */  
30 - private String checkNo;  
31 - /**  
32 - * check账单id  
33 - */  
34 - private Long checkBillId;  
35 - /**  
36 - * 订单id  
37 - */  
38 - private Long orderId;  
39 -  
40 -}  
src/main/java/com/order/erp/domain/dto/order/InvoiceBillMappingDO.java deleted 100644 → 0
1 -package com.order.erp.domain.dto.order;  
2 -  
3 -import com.baomidou.mybatisplus.annotation.TableName;  
4 -import com.order.erp.domain.dto.BaseDO;  
5 -import lombok.*;  
6 -import lombok.experimental.SuperBuilder;  
7 -  
8 -import java.io.Serializable;  
9 -  
10 -/**  
11 - * 应收款账单关联订单映射表(InvoiceBillMapping)实体类  
12 - *  
13 - * @author makejava  
14 - * @since 2024-08-05 16:26:36  
15 - */  
16 -@TableName("invoice_bill_mapping")  
17 -@Data  
18 -@AllArgsConstructor  
19 -@ToString  
20 -@NoArgsConstructor  
21 -@EqualsAndHashCode(callSuper = false)  
22 -@SuperBuilder  
23 -public class InvoiceBillMappingDO extends BaseDO implements Serializable {  
24 -  
25 - private Long id;  
26 - /**  
27 - * 发票单号  
28 - */  
29 - private String invoiceNo;  
30 - /**  
31 - * invoice账单id  
32 - */  
33 - private Long invoiceBillId;  
34 - /**  
35 - * 订单id  
36 - */  
37 - private Long orderId;  
38 -  
39 -}  
src/main/java/com/order/erp/domain/dto/order/InvoiceBillOrderDO.java deleted 100644 → 0
1 -package com.order.erp.domain.dto.order;  
2 -  
3 -import com.baomidou.mybatisplus.annotation.TableName;  
4 -import com.order.erp.domain.dto.BaseDO;  
5 -import lombok.*;  
6 -import lombok.experimental.SuperBuilder;  
7 -  
8 -import java.io.Serializable;  
9 -import java.math.BigDecimal;  
10 -  
11 -/**  
12 - * 应收款账单表(InvoiceBillOrder)实体类  
13 - *  
14 - * @author makejava  
15 - * @since 2024-08-05 16:26:33  
16 - */  
17 -@TableName("invoice_bill_order")  
18 -@Data  
19 -@AllArgsConstructor  
20 -@ToString  
21 -@NoArgsConstructor  
22 -@EqualsAndHashCode(callSuper = false)  
23 -@SuperBuilder  
24 -public class InvoiceBillOrderDO extends BaseDO implements Serializable {  
25 -  
26 - private Long id;  
27 - /**  
28 - * 发票单号  
29 - */  
30 - private String invoiceNo;  
31 - /**  
32 - * 报关单url地址  
33 - */  
34 - private String bgUrl;  
35 - /**  
36 - * 必须回款日期  
37 - */  
38 - private String backRefundDate;  
39 - /**  
40 - * 发生扣款金额  
41 - */  
42 - private BigDecimal deductAmount;  
43 - /**  
44 - * 扣款单url地址  
45 - */  
46 - private String deductUrl;  
47 - /**  
48 - * 实际应收金额  
49 - */  
50 - private BigDecimal actualReceivableAmount;  
51 - /**  
52 - * 实际应付金额1  
53 - */  
54 - private BigDecimal actualPayedAmount1;  
55 - /**  
56 - * 实际应付金额2  
57 - */  
58 - private BigDecimal actualPayedAmount2;  
59 - /**  
60 - * 实际应付金额3  
61 - */  
62 - private BigDecimal actualPayedAmount3;  
63 - /**  
64 - * 其他费用金额  
65 - */  
66 - private BigDecimal otherAmount;  
67 - /**  
68 - * 总经理审核状态 0:待审核、1:审核通过,2:审核驳回  
69 - */  
70 - private Integer status;  
71 -  
72 -}  
src/main/java/com/order/erp/domain/dto/order/ProducePaymentCheckBillOrderDO.java deleted 100644 → 0
1 -package com.order.erp.domain.dto.order;  
2 -  
3 -import com.baomidou.mybatisplus.annotation.TableName;  
4 -import com.order.erp.domain.dto.BaseDO;  
5 -import lombok.*;  
6 -import lombok.experimental.SuperBuilder;  
7 -  
8 -import java.io.Serializable;  
9 -  
10 -/**  
11 - * 生产科对账单应收账单(ProducePaymentCheckBillOrder)实体类  
12 - *  
13 - * @author makejava  
14 - * @since 2024-08-05 16:26:35  
15 - */  
16 -@TableName("produce_payment_check_bill_order")  
17 -@Data  
18 -@AllArgsConstructor  
19 -@ToString  
20 -@NoArgsConstructor  
21 -@EqualsAndHashCode(callSuper = false)  
22 -@SuperBuilder  
23 -public class ProducePaymentCheckBillOrderDO extends BaseDO implements Serializable {  
24 -  
25 - private Long id;  
26 - /**  
27 - * 生产科对账单  
28 - */  
29 - private String checkNo;  
30 - /**  
31 - * 发票url地址  
32 - */  
33 - private String invoiceUrl;  
34 - /**  
35 - * 扣款单url地址  
36 - */  
37 - private String deductPdfUrl;  
38 - /**  
39 - * 生产科应付款日期  
40 - */  
41 - private String payedDate;  
42 - /**  
43 - * 生产科扣款责任部门  
44 - */  
45 - private String deductDept;  
46 - /**  
47 - * 生产科扣款金额  
48 - */  
49 - private Double deductAmount;  
50 - /**  
51 - * 实际应付金额  
52 - */  
53 - private Double actualPayedAmount;  
54 - /**  
55 - * 总经理审核状态 0:待审核、1:审核通过,2:审核驳回  
56 - */  
57 - private Integer status;  
58 -  
59 -}  
src/main/java/com/order/erp/domain/vo/order/CheckBillMappingQueryVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import com.order.erp.domain.vo.BasePageVO;  
4 -import lombok.*;  
5 -import lombok.experimental.SuperBuilder;  
6 -  
7 -import java.io.Serializable;  
8 -import java.util.List;  
9 -  
10 -/**  
11 - * 生产科对账单应收账单映射表(CheckBillMapping)实体类  
12 - *  
13 - * @author makejava  
14 - * @since 2024-08-05 16:26:37  
15 - */  
16 -@Data  
17 -@AllArgsConstructor  
18 -@ToString  
19 -@NoArgsConstructor  
20 -@EqualsAndHashCode(callSuper = false)  
21 -@SuperBuilder  
22 -public class CheckBillMappingQueryVO extends BasePageVO implements Serializable {  
23 -  
24 - private List<Long> ids;  
25 -  
26 -  
27 - private Long id;  
28 - /**  
29 - * 生产科对账单号  
30 - */  
31 - private String checkNo;  
32 - /**  
33 - * check账单id  
34 - */  
35 - private Long checkBillId;  
36 - /**  
37 - * 订单id  
38 - */  
39 - private Long orderId;  
40 -  
41 -  
42 -}  
43 -  
src/main/java/com/order/erp/domain/vo/order/CheckBillMappingVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import lombok.*;  
4 -import lombok.experimental.SuperBuilder;  
5 -  
6 -import java.io.Serializable;  
7 -  
8 -/**  
9 - * 生产科对账单应收账单映射表(CheckBillMapping)实体类  
10 - *  
11 - * @author makejava  
12 - * @since 2024-08-05 16:26:37  
13 - */  
14 -@Data  
15 -@AllArgsConstructor  
16 -@ToString  
17 -@NoArgsConstructor  
18 -@EqualsAndHashCode(callSuper = false)  
19 -@SuperBuilder  
20 -public class CheckBillMappingVO implements Serializable {  
21 -  
22 - private Long id;  
23 - /**  
24 - * 生产科对账单号  
25 - */  
26 - private String checkNo;  
27 - /**  
28 - * check账单id  
29 - */  
30 - private Long checkBillId;  
31 - /**  
32 - * 订单id  
33 - */  
34 - private Long orderId;  
35 -  
36 -  
37 -}  
src/main/java/com/order/erp/domain/vo/order/InvoiceBaseOrderQueryVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import com.order.erp.domain.vo.BasePageVO;  
4 -import lombok.*;  
5 -import lombok.experimental.SuperBuilder;  
6 -  
7 -import javax.validation.constraints.NotBlank;  
8 -import java.io.Serializable;  
9 -  
10 -/**  
11 - * 应收款账单表(InvoiceBillOrder)实体类  
12 - *  
13 - * @author makejava  
14 - * @since 2024-08-05 16:26:34  
15 - */  
16 -@Data  
17 -@AllArgsConstructor  
18 -@ToString  
19 -@NoArgsConstructor  
20 -@EqualsAndHashCode(callSuper = false)  
21 -@SuperBuilder  
22 -public class InvoiceBaseOrderQueryVO extends BasePageVO implements Serializable {  
23 -  
24 - /**  
25 - * 发票单号  
26 - */  
27 - @NotBlank(message = "发票单号不能为空")  
28 - private String invoiceNo;  
29 -}  
30 -  
src/main/java/com/order/erp/domain/vo/order/InvoiceBillAmountInfoVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import lombok.*;  
4 -import lombok.experimental.SuperBuilder;  
5 -  
6 -import java.io.Serializable;  
7 -import java.math.BigDecimal;  
8 -  
9 -/**  
10 - * 应收款账单 -- 其他金额信息  
11 - *  
12 - * @author makejava  
13 - * @since 2024-08-05 16:26:33  
14 - */  
15 -@Data  
16 -@AllArgsConstructor  
17 -@ToString  
18 -@NoArgsConstructor  
19 -@EqualsAndHashCode(callSuper = false)  
20 -@SuperBuilder  
21 -public class InvoiceBillAmountInfoVO implements Serializable {  
22 -  
23 - private Long id;  
24 -  
25 - /**  
26 - * 报关单url地址  
27 - */  
28 - private String bgUrl;  
29 -  
30 - /**  
31 - * 实际应收金额  
32 - */  
33 - private BigDecimal actualReceivableAmount;  
34 - /**  
35 - * 实际应付金额1  
36 - */  
37 - private BigDecimal actualPayedAmount1;  
38 - /**  
39 - * 实际应付金额2  
40 - */  
41 - private BigDecimal actualPayedAmount2;  
42 - /**  
43 - * 实际应付金额3  
44 - */  
45 - private BigDecimal actualPayedAmount3;  
46 - /**  
47 - * 其他费用金额  
48 - */  
49 - private BigDecimal otherAmount;  
50 -  
51 -}  
src/main/java/com/order/erp/domain/vo/order/InvoiceBillCreateVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import lombok.*;  
4 -import lombok.experimental.SuperBuilder;  
5 -  
6 -import java.io.Serializable;  
7 -import java.util.List;  
8 -  
9 -/**  
10 - * 应收款账单表(InvoiceBillOrder)实体类  
11 - *  
12 - * @author makejava  
13 - * @since 2024-08-05 16:26:33  
14 - */  
15 -@Data  
16 -@AllArgsConstructor  
17 -@ToString  
18 -@NoArgsConstructor  
19 -@EqualsAndHashCode(callSuper = false)  
20 -@SuperBuilder  
21 -public class InvoiceBillCreateVO implements Serializable {  
22 - private static final long serialVersionUID = 543899167451834300L;  
23 -  
24 - private Long id;  
25 -  
26 - /**  
27 - * 发票单号  
28 - */  
29 - private String invoiceNo;  
30 -  
31 - /**  
32 - * 报关单url地址  
33 - */  
34 - private String bgUrl;  
35 -  
36 - /**  
37 - * 必须回款日期  
38 - */  
39 - private String backRefundDate;  
40 -  
41 - /**  
42 - * 订单id集合  
43 - */  
44 - private List<Long> orderIds;  
45 -  
46 -  
47 -}  
src/main/java/com/order/erp/domain/vo/order/InvoiceBillDeductInfoVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import lombok.*;  
4 -import lombok.experimental.SuperBuilder;  
5 -  
6 -import java.io.Serializable;  
7 -import java.math.BigDecimal;  
8 -  
9 -/**  
10 - * 应收款账单 -- 扣款信息  
11 - *  
12 - * @author makejava  
13 - * @since 2024-08-05 16:26:33  
14 - */  
15 -@Data  
16 -@AllArgsConstructor  
17 -@ToString  
18 -@NoArgsConstructor  
19 -@EqualsAndHashCode(callSuper = false)  
20 -@SuperBuilder  
21 -public class InvoiceBillDeductInfoVO implements Serializable {  
22 -  
23 - private Long id;  
24 -  
25 - /**  
26 - * 发票单号  
27 - */  
28 - private String invoiceNo;  
29 -  
30 - /**  
31 - * 发生扣款金额  
32 - */  
33 - private BigDecimal deductAmount;  
34 -  
35 - /**  
36 - * 扣款单url地址  
37 - */  
38 - private String deductUrl;  
39 -  
40 -}  
src/main/java/com/order/erp/domain/vo/order/InvoiceBillMappingQueryVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import com.order.erp.domain.vo.BasePageVO;  
4 -import lombok.*;  
5 -import lombok.experimental.SuperBuilder;  
6 -  
7 -import java.io.Serializable;  
8 -import java.util.List;  
9 -  
10 -/**  
11 - * 应收款账单关联订单映射表(InvoiceBillMapping)实体类  
12 - *  
13 - * @author makejava  
14 - * @since 2024-08-05 16:26:36  
15 - */  
16 -@Data  
17 -@AllArgsConstructor  
18 -@ToString  
19 -@NoArgsConstructor  
20 -@EqualsAndHashCode(callSuper = false)  
21 -@SuperBuilder  
22 -public class InvoiceBillMappingQueryVO extends BasePageVO implements Serializable {  
23 - private static final long serialVersionUID = -10772282327497511L;  
24 -  
25 - private List<Long> ids;  
26 -  
27 -  
28 - private Long id;  
29 - /**  
30 - * 发票单号  
31 - */  
32 - private String invoiceNo;  
33 - /**  
34 - * invoice账单id  
35 - */  
36 - private Long invoiceBillId;  
37 - /**  
38 - * 订单id  
39 - */  
40 - private Long orderId;  
41 -  
42 -  
43 -}  
44 -  
src/main/java/com/order/erp/domain/vo/order/InvoiceBillMappingVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import lombok.*;  
4 -import lombok.experimental.SuperBuilder;  
5 -  
6 -import java.io.Serializable;  
7 -  
8 -/**  
9 - * 应收款账单关联订单映射表(InvoiceBillMapping)实体类  
10 - *  
11 - * @author makejava  
12 - * @since 2024-08-05 16:26:36  
13 - */  
14 -@Data  
15 -@AllArgsConstructor  
16 -@ToString  
17 -@NoArgsConstructor  
18 -@EqualsAndHashCode(callSuper = false)  
19 -@SuperBuilder  
20 -public class InvoiceBillMappingVO implements Serializable {  
21 - private static final long serialVersionUID = -55765026730369748L;  
22 -  
23 - private Long id;  
24 - /**  
25 - * 发票单号  
26 - */  
27 - private String invoiceNo;  
28 - /**  
29 - * invoice账单id  
30 - */  
31 - private Long invoiceBillId;  
32 - /**  
33 - * 订单id  
34 - */  
35 - private Long orderId;  
36 -  
37 -  
38 -}  
src/main/java/com/order/erp/domain/vo/order/InvoiceBillOrderQueryVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import com.order.erp.domain.vo.BasePageVO;  
4 -import lombok.*;  
5 -import lombok.experimental.SuperBuilder;  
6 -  
7 -import java.io.Serializable;  
8 -import java.util.List;  
9 -  
10 -/**  
11 - * 应收款账单表(InvoiceBillOrder)实体类  
12 - *  
13 - * @author makejava  
14 - * @since 2024-08-05 16:26:34  
15 - */  
16 -@Data  
17 -@AllArgsConstructor  
18 -@ToString  
19 -@NoArgsConstructor  
20 -@EqualsAndHashCode(callSuper = false)  
21 -@SuperBuilder  
22 -public class InvoiceBillOrderQueryVO extends BasePageVO implements Serializable {  
23 -  
24 - private List<Long> ids;  
25 -  
26 - /**  
27 - * 发票单号  
28 - */  
29 - private String invoiceNo;  
30 -  
31 - /**  
32 - * 总经理审核状态 0:待审核、1:审核通过,2:审核驳回  
33 - */  
34 - private Integer status;  
35 -  
36 - /**  
37 - * 客户编码  
38 - */  
39 - private String customerCode;  
40 -  
41 - /**  
42 - * 项目号  
43 - */  
44 - private String projectNo;  
45 -  
46 - /**  
47 - * 生产科  
48 - */  
49 - private String productionDepartment;  
50 -  
51 - /**  
52 - * 内部编号  
53 - */  
54 - private String innerNo;  
55 -  
56 - /**  
57 - * 客户po号  
58 - */  
59 - private String customerPo;  
60 -}  
61 -  
src/main/java/com/order/erp/domain/vo/order/InvoiceBillOrderVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import lombok.*;  
4 -import lombok.experimental.SuperBuilder;  
5 -  
6 -import java.io.Serializable;  
7 -import java.math.BigDecimal;  
8 -  
9 -/**  
10 - * 应收款账单表(InvoiceBillOrder)实体类  
11 - *  
12 - * @author makejava  
13 - * @since 2024-08-05 16:26:33  
14 - */  
15 -@Data  
16 -@AllArgsConstructor  
17 -@ToString  
18 -@NoArgsConstructor  
19 -@EqualsAndHashCode(callSuper = false)  
20 -@SuperBuilder  
21 -public class InvoiceBillOrderVO implements Serializable {  
22 - private static final long serialVersionUID = 543899167451834300L;  
23 -  
24 - private Long id;  
25 -  
26 - /**  
27 - * 发票单号  
28 - */  
29 - private String invoiceNo;  
30 -  
31 - /**  
32 - * 报关单url地址  
33 - */  
34 - private String bgUrl;  
35 -  
36 - /**  
37 - * 必须回款日期  
38 - */  
39 - private String backRefundDate;  
40 -  
41 - /**  
42 - * 发生扣款金额  
43 - */  
44 - private BigDecimal deductAmount;  
45 -  
46 - /**  
47 - * 扣款单url地址  
48 - */  
49 - private String deductUrl;  
50 -  
51 - /**  
52 - * 实际应收金额  
53 - */  
54 - private BigDecimal actualReceivableAmount;  
55 -  
56 - /**  
57 - * 实际应付金额1  
58 - */  
59 - private BigDecimal actualPayedAmount1;  
60 -  
61 - /**  
62 - * 实际应付金额2  
63 - */  
64 - private BigDecimal actualPayedAmount2;  
65 -  
66 - /**  
67 - * 实际应付金额3  
68 - */  
69 - private BigDecimal actualPayedAmount3;  
70 -  
71 - /**  
72 - * 其他费用金额  
73 - */  
74 - private BigDecimal otherAmount;  
75 -  
76 - /**  
77 - * 总经理审核状态 0:待审核、1:审核通过,2:审核驳回  
78 - */  
79 - private Integer status;  
80 -  
81 -  
82 -}  
src/main/java/com/order/erp/domain/vo/order/ProducePaymentCheckBillOrderQueryVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import com.order.erp.domain.vo.BasePageVO;  
4 -import lombok.*;  
5 -import lombok.experimental.SuperBuilder;  
6 -  
7 -import java.io.Serializable;  
8 -import java.util.List;  
9 -  
10 -/**  
11 - * 生产科对账单应收账单(ProducePaymentCheckBillOrder)实体类  
12 - *  
13 - * @author makejava  
14 - * @since 2024-08-05 16:26:35  
15 - */  
16 -@Data  
17 -@AllArgsConstructor  
18 -@ToString  
19 -@NoArgsConstructor  
20 -@EqualsAndHashCode(callSuper = false)  
21 -@SuperBuilder  
22 -public class ProducePaymentCheckBillOrderQueryVO extends BasePageVO implements Serializable {  
23 -  
24 - private List<Long> ids;  
25 -  
26 -  
27 - private Long id;  
28 - /**  
29 - * 生产科对账单  
30 - */  
31 - private String checkNo;  
32 - /**  
33 - * 发票url地址  
34 - */  
35 - private String invoiceUrl;  
36 - /**  
37 - * 扣款单url地址  
38 - */  
39 - private String deductPdfUrl;  
40 - /**  
41 - * 生产科应付款日期  
42 - */  
43 - private String payedDate;  
44 - /**  
45 - * 生产科扣款责任部门  
46 - */  
47 - private String deductDept;  
48 - /**  
49 - * 生产科扣款金额  
50 - */  
51 - private Double deductAmount;  
52 - /**  
53 - * 实际应付金额  
54 - */  
55 - private Double actualPayedAmount;  
56 - /**  
57 - * 总经理审核状态 0:待审核、1:审核通过,2:审核驳回  
58 - */  
59 - private Integer status;  
60 -  
61 -  
62 -}  
63 -  
src/main/java/com/order/erp/domain/vo/order/ProducePaymentCheckBillOrderVO.java deleted 100644 → 0
1 -package com.order.erp.domain.vo.order;  
2 -  
3 -import lombok.*;  
4 -import lombok.experimental.SuperBuilder;  
5 -  
6 -import java.io.Serializable;  
7 -  
8 -/**  
9 - * 生产科对账单应收账单(ProducePaymentCheckBillOrder)实体类  
10 - *  
11 - * @author makejava  
12 - * @since 2024-08-05 16:26:35  
13 - */  
14 -@Data  
15 -@AllArgsConstructor  
16 -@ToString  
17 -@NoArgsConstructor  
18 -@EqualsAndHashCode(callSuper = false)  
19 -@SuperBuilder  
20 -public class ProducePaymentCheckBillOrderVO implements Serializable {  
21 - private static final long serialVersionUID = 239047702576286556L;  
22 -  
23 - private Long id;  
24 - /**  
25 - * 生产科对账单  
26 - */  
27 - private String checkNo;  
28 - /**  
29 - * 发票url地址  
30 - */  
31 - private String invoiceUrl;  
32 - /**  
33 - * 扣款单url地址  
34 - */  
35 - private String deductPdfUrl;  
36 - /**  
37 - * 生产科应付款日期  
38 - */  
39 - private String payedDate;  
40 - /**  
41 - * 生产科扣款责任部门  
42 - */  
43 - private String deductDept;  
44 - /**  
45 - * 生产科扣款金额  
46 - */  
47 - private Double deductAmount;  
48 - /**  
49 - * 实际应付金额  
50 - */  
51 - private Double actualPayedAmount;  
52 - /**  
53 - * 总经理审核状态 0:待审核、1:审核通过,2:审核驳回  
54 - */  
55 - private Integer status;  
56 -  
57 -  
58 -}  
src/main/java/com/order/erp/mapper/order/CheckBillMappingMapper.java deleted 100644 → 0
1 -package com.order.erp.mapper.order;  
2 -  
3 -import com.baomidou.mybatisplus.core.mapper.BaseMapper;  
4 -import com.order.erp.domain.dto.order.CheckBillMappingDO;  
5 -  
6 -/**  
7 - * 生产科对账单应收账单映射表(CheckBillMapping)表数据库访问层  
8 - *  
9 - * @author makejava  
10 - * @since 2024-08-05 16:26:37  
11 - */  
12 -public interface CheckBillMappingMapper extends BaseMapper<CheckBillMappingDO> {  
13 -  
14 -  
15 -}  
16 -  
src/main/java/com/order/erp/mapper/order/InvoiceBillMappingMapper.java deleted 100644 → 0
1 -package com.order.erp.mapper.order;  
2 -  
3 -import com.baomidou.mybatisplus.core.mapper.BaseMapper;  
4 -import com.order.erp.domain.dto.order.InvoiceBillMappingDO;  
5 -  
6 -/**  
7 - * 应收款账单关联订单映射表(InvoiceBillMapping)表数据库访问层  
8 - *  
9 - * @author makejava  
10 - * @since 2024-08-05 16:26:36  
11 - */  
12 -public interface InvoiceBillMappingMapper extends BaseMapper<InvoiceBillMappingDO> {  
13 -  
14 -  
15 -}  
16 -  
src/main/java/com/order/erp/mapper/order/InvoiceBillOrderMapper.java deleted 100644 → 0
1 -package com.order.erp.mapper.order;  
2 -  
3 -import com.baomidou.mybatisplus.core.mapper.BaseMapper;  
4 -import com.order.erp.domain.dto.order.InvoiceBillOrderDO;  
5 -  
6 -/**  
7 - * 应收款账单表(InvoiceBillOrder)表数据库访问层  
8 - *  
9 - * @author makejava  
10 - * @since 2024-08-05 16:26:34  
11 - */  
12 -public interface InvoiceBillOrderMapper extends BaseMapper<InvoiceBillOrderDO> {  
13 -  
14 -  
15 -}  
16 -  
src/main/java/com/order/erp/mapper/order/ProducePaymentCheckBillOrderMapper.java deleted 100644 → 0
1 -package com.order.erp.mapper.order;  
2 -  
3 -import com.baomidou.mybatisplus.core.mapper.BaseMapper;  
4 -import com.order.erp.domain.dto.order.ProducePaymentCheckBillOrderDO;  
5 -  
6 -/**  
7 - * 生产科对账单应收账单(ProducePaymentCheckBillOrder)表数据库访问层  
8 - *  
9 - * @author makejava  
10 - * @since 2024-08-05 16:26:35  
11 - */  
12 -public interface ProducePaymentCheckBillOrderMapper extends BaseMapper<ProducePaymentCheckBillOrderDO> {  
13 -  
14 -  
15 -}  
16 -  
src/main/java/com/order/erp/service/order/CheckBillMappingService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.CheckBillMappingDO;  
6 -import com.order.erp.domain.vo.order.CheckBillMappingQueryVO;  
7 -import com.order.erp.domain.vo.order.CheckBillMappingVO;  
8 -  
9 -/**  
10 - * 生产科对账单应收账单映射表(CheckBillMapping)表服务接口  
11 - *  
12 - * @author makejava  
13 - * @since 2024-08-05 16:26:37  
14 - */  
15 -public interface CheckBillMappingService extends IService<CheckBillMappingDO> {  
16 -  
17 - /**  
18 - * 通过ID查询单条数据  
19 - *  
20 - * @param checkBillMappingQueryVO 主键  
21 - * @return 实例对象  
22 - */  
23 - ServerResult queryById(CheckBillMappingQueryVO checkBillMappingQueryVO);  
24 -  
25 - /**  
26 - * 分页查询  
27 - *  
28 - * @param checkBillMappingQueryVO 筛选条件  
29 - * @return 查询结果  
30 - */  
31 - ServerResult list(CheckBillMappingQueryVO checkBillMappingQueryVO);  
32 -  
33 - /**  
34 - * 新增数据  
35 - *  
36 - * @param checkBillMappingVO 数据VO  
37 - * @return 新增结果  
38 - */  
39 - ServerResult add(CheckBillMappingVO checkBillMappingVO);  
40 -  
41 - /**  
42 - * 修改数据  
43 - *  
44 - * @param checkBillMappingVO 数据VO  
45 - * @return 编辑结果  
46 - */  
47 - ServerResult edit(CheckBillMappingVO checkBillMappingVO);  
48 -  
49 - /**  
50 - * 通过主键删除数据  
51 - *  
52 - * @param checkBillMappingQueryVO 筛选条件  
53 - * @return 是否成功  
54 - */  
55 - ServerResult deleteById(CheckBillMappingQueryVO checkBillMappingQueryVO);  
56 -  
57 -}  
src/main/java/com/order/erp/service/order/EmailTemplateService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.EmailTemplateDO;  
6 -import com.order.erp.domain.vo.order.EmailTemplateQueryVO;  
7 -import com.order.erp.domain.vo.order.EmailTemplateVO;  
8 -  
9 -/**  
10 - * 邮件模板表(EmailTemplate)表服务接口  
11 - *  
12 - * @author makejava  
13 - * @since 2024-07-03 10:58:27  
14 - */  
15 -public interface EmailTemplateService extends IService<EmailTemplateDO> {  
16 -  
17 - /**  
18 - * 通过ID查询单条数据  
19 - *  
20 - * @param emailTemplateQueryVO 主键  
21 - * @return 实例对象  
22 - */  
23 - ServerResult queryById(EmailTemplateQueryVO emailTemplateQueryVO);  
24 -  
25 - /**  
26 - * 分页查询  
27 - *  
28 - * @param emailTemplateQueryVO 筛选条件  
29 - * @return 查询结果  
30 - */  
31 - ServerResult list(EmailTemplateQueryVO emailTemplateQueryVO);  
32 -  
33 - /**  
34 - * 新增数据  
35 - *  
36 - * @param emailTemplateVO 数据VO  
37 - * @return 新增结果  
38 - */  
39 - ServerResult add(EmailTemplateVO emailTemplateVO);  
40 -  
41 - /**  
42 - * 修改数据  
43 - *  
44 - * @param emailTemplateVO 数据VO  
45 - * @return 编辑结果  
46 - */  
47 - ServerResult edit(EmailTemplateVO emailTemplateVO);  
48 -  
49 - /**  
50 - * 通过主键删除数据  
51 - *  
52 - * @param emailTemplateQueryVO 筛选条件  
53 - * @return 是否成功  
54 - */  
55 - ServerResult deleteById(EmailTemplateQueryVO emailTemplateQueryVO);  
56 -  
57 -}  
src/main/java/com/order/erp/service/order/InvoiceBillMappingService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.InvoiceBillMappingDO;  
6 -import com.order.erp.domain.vo.order.InvoiceBillMappingQueryVO;  
7 -import com.order.erp.domain.vo.order.InvoiceBillMappingVO;  
8 -  
9 -/**  
10 - * 应收款账单关联订单映射表(InvoiceBillMapping)表服务接口  
11 - *  
12 - * @author makejava  
13 - * @since 2024-08-05 16:26:36  
14 - */  
15 -public interface InvoiceBillMappingService extends IService<InvoiceBillMappingDO> {  
16 -  
17 - /**  
18 - * 通过ID查询单条数据  
19 - *  
20 - * @param invoiceBillMappingQueryVO 主键  
21 - * @return 实例对象  
22 - */  
23 - ServerResult queryById(InvoiceBillMappingQueryVO invoiceBillMappingQueryVO);  
24 -  
25 - /**  
26 - * 分页查询  
27 - *  
28 - * @param invoiceBillMappingQueryVO 筛选条件  
29 - * @return 查询结果  
30 - */  
31 - ServerResult list(InvoiceBillMappingQueryVO invoiceBillMappingQueryVO);  
32 -  
33 - /**  
34 - * 新增数据  
35 - *  
36 - * @param invoiceBillMappingVO 数据VO  
37 - * @return 新增结果  
38 - */  
39 - ServerResult add(InvoiceBillMappingVO invoiceBillMappingVO);  
40 -  
41 - /**  
42 - * 修改数据  
43 - *  
44 - * @param invoiceBillMappingVO 数据VO  
45 - * @return 编辑结果  
46 - */  
47 - ServerResult edit(InvoiceBillMappingVO invoiceBillMappingVO);  
48 -  
49 - /**  
50 - * 通过主键删除数据  
51 - *  
52 - * @param invoiceBillMappingQueryVO 筛选条件  
53 - * @return 是否成功  
54 - */  
55 - ServerResult deleteById(InvoiceBillMappingQueryVO invoiceBillMappingQueryVO);  
56 -  
57 -}  
src/main/java/com/order/erp/service/order/InvoiceBillOrderService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.InvoiceBillOrderDO;  
6 -import com.order.erp.domain.vo.order.*;  
7 -  
8 -/**  
9 - * 应收款账单表(InvoiceBillOrder)表服务接口  
10 - *  
11 - * @author makejava  
12 - * @since 2024-08-05 16:26:34  
13 - */  
14 -public interface InvoiceBillOrderService extends IService<InvoiceBillOrderDO> {  
15 -  
16 - /**  
17 - * 分页查询  
18 - *  
19 - * @param invoiceBillOrderQueryVO 筛选条件  
20 - * @return 查询结果  
21 - */  
22 - ServerResult listByPage(InvoiceBillOrderQueryVO invoiceBillOrderQueryVO);  
23 -  
24 - /**  
25 - * @param queryVO  
26 - * @return  
27 - */  
28 - ServerResult listBaseOrderInfoBy(InvoiceBaseOrderQueryVO queryVO);  
29 -  
30 - /**  
31 - * 新增数据  
32 - *  
33 - * @param createVO 数据VO  
34 - * @return 新增结果  
35 - */  
36 - ServerResult create(InvoiceBillCreateVO createVO);  
37 -  
38 - /**  
39 - * 更新扣款信息  
40 - *  
41 - * @param deductInfoVO 数据VO  
42 - * @return 编辑结果  
43 - */  
44 - ServerResult updateDeductInfo(InvoiceBillDeductInfoVO deductInfoVO);  
45 -  
46 - /**  
47 - * 更新其他金额信息  
48 - *  
49 - * @param amountInfoVO  
50 - * @return  
51 - */  
52 - ServerResult updateAmountInfo(InvoiceBillAmountInfoVO amountInfoVO);  
53 -  
54 - /**  
55 - * 通过主键删除数据  
56 - *  
57 - * @param invoiceBillOrderQueryVO 筛选条件  
58 - * @return 是否成功  
59 - */  
60 - ServerResult deleteById(InvoiceBillOrderQueryVO invoiceBillOrderQueryVO);  
61 -  
62 -}  
src/main/java/com/order/erp/service/order/OrderAuditLogService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.OrderAuditLogDO;  
6 -import com.order.erp.domain.vo.order.OrderAuditLogQueryVO;  
7 -import com.order.erp.domain.vo.order.OrderAuditLogVO;  
8 -  
9 -import java.util.List;  
10 -  
11 -/**  
12 - * 用户订单审批日志表(OrderAuditLog)表服务接口  
13 - *  
14 - * @author makejava  
15 - * @since 2023-09-08 15:26:42  
16 - */  
17 -public interface OrderAuditLogService extends IService<OrderAuditLogDO> {  
18 -  
19 - /**  
20 - * 通过ID查询单条数据  
21 - *  
22 - * @param orderAuditLogQueryVO 主键  
23 - * @return 实例对象  
24 - */  
25 - ServerResult queryById(OrderAuditLogQueryVO orderAuditLogQueryVO);  
26 -  
27 - /**  
28 - * 分页查询  
29 - *  
30 - * @param orderAuditLogQueryVO 筛选条件  
31 - * @return 查询结果  
32 - */  
33 - ServerResult list(OrderAuditLogQueryVO orderAuditLogQueryVO);  
34 -  
35 -  
36 - /**  
37 - *  
38 - * @param queryVO  
39 - * @return  
40 - */  
41 - ServerResult listByPage(OrderAuditLogQueryVO queryVO);  
42 -  
43 - /**  
44 - * 新增数据  
45 - *  
46 - * @param orderAuditLogVO 数据VO  
47 - * @return 新增结果  
48 - */  
49 - ServerResult add(OrderAuditLogVO orderAuditLogVO);  
50 -  
51 - /**  
52 - * 修改数据  
53 - *  
54 - * @param orderAuditLogVO 数据VO  
55 - * @return 编辑结果  
56 - */  
57 - ServerResult edit(OrderAuditLogVO orderAuditLogVO);  
58 -  
59 - /**  
60 - * 通过主键删除数据  
61 - *  
62 - * @param orderAuditLogQueryVO 筛选条件  
63 - * @return 是否成功  
64 - */  
65 - ServerResult deleteById(OrderAuditLogQueryVO orderAuditLogQueryVO);  
66 -  
67 - boolean deleteByOrderId(Long getId);  
68 -  
69 - boolean deleteByOrderIds(List<Long> orderIds);  
70 -}  
src/main/java/com/order/erp/service/order/OrderBaseInfoService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
4 -import com.baomidou.mybatisplus.extension.service.IService;  
5 -import com.order.erp.common.constant.ServerResult;  
6 -import com.order.erp.common.excel4j.exceptions.Excel4JException;  
7 -import com.order.erp.domain.dto.order.OrderBaseInfoDO;  
8 -import com.order.erp.domain.vo.order.*;  
9 -  
10 -import javax.servlet.http.HttpServletResponse;  
11 -import java.io.IOException;  
12 -import java.util.List;  
13 -import java.util.Map;  
14 -  
15 -/**  
16 - * 订单基础信息表(OrderBaseInfo)表服务接口  
17 - *  
18 - * @author makejava  
19 - * @since 2023-09-08 15:26:43  
20 - */  
21 -public interface OrderBaseInfoService extends IService<OrderBaseInfoDO> {  
22 -  
23 - /**  
24 - *  
25 - * @param queryVO  
26 - * @return  
27 - */  
28 - LambdaQueryWrapper<OrderBaseInfoDO> buildQueryByParam(OrderBaseInfoQueryVO queryVO);  
29 -  
30 - /**  
31 - * 通过ID查询单条数据  
32 - *  
33 - * @param orderBaseInfoQueryVO 主键  
34 - * @return 实例对象  
35 - */  
36 - ServerResult queryById(OrderBaseInfoQueryVO orderBaseInfoQueryVO);  
37 -  
38 - /**  
39 - * 分页查询  
40 - *  
41 - * @param orderBaseInfoQueryVO 筛选条件  
42 - * @return 查询结果  
43 - */  
44 - ServerResult list(OrderBaseInfoQueryVO orderBaseInfoQueryVO);  
45 -  
46 - /**  
47 - * @param orderBaseInfoDOList  
48 - * @return  
49 - */  
50 - List<OrderInfoResultVO> wrapperOrderResultList(Boolean locked, List<OrderBaseInfoDO> orderBaseInfoDOList);  
51 -  
52 - /**  
53 - * @param orderBaseInfoQueryVO  
54 - * @return  
55 - */  
56 - ServerResult listByPage(OrderBaseInfoQueryVO orderBaseInfoQueryVO);  
57 -  
58 - /**  
59 - * 校验是否重复  
60 - * @param orderBaseInfoQueryVO  
61 - * @return  
62 - */  
63 - ServerResult check(OrderBaseInfoQueryVO orderBaseInfoQueryVO);  
64 -  
65 - /**  
66 - * @param response  
67 - * @param orderBaseInfoQueryVO  
68 - * @return  
69 - */  
70 - void export(HttpServletResponse response, OrderBaseInfoQueryVO orderBaseInfoQueryVO) throws IOException, Excel4JException;  
71 -  
72 - /**  
73 - * @param fieldVO  
74 - * @return  
75 - */  
76 - ServerResult fieldUnlockApply(OrderUnlockFieldApplyVO fieldVO);  
77 -  
78 - /**  
79 - * 新增数据  
80 - *  
81 - * @param orderAddVO 数据VO  
82 - * @return 新增结果  
83 - */  
84 - ServerResult add(OrderAddVO orderAddVO);  
85 -  
86 - /**  
87 - * 修改数据  
88 - *  
89 - * @param updateVO 数据VO  
90 - * @return 编辑结果  
91 - */  
92 - ServerResult edit(OrderUpdateVO updateVO);  
93 -  
94 - /**  
95 - * 通过主键删除数据  
96 - *  
97 - * @param orderBaseInfoQueryVO 筛选条件  
98 - * @return 是否成功  
99 - */  
100 - ServerResult deleteById(OrderBaseInfoQueryVO orderBaseInfoQueryVO);  
101 -  
102 - long countByOrderStatus(Integer orderFinish);  
103 -  
104 - long countRecentMonthByOrderStatus(Integer orderFinish);  
105 -  
106 -  
107 - List<Map<String, Integer>> countDaysOrder();  
108 -  
109 - long countAll();  
110 -  
111 - long countRecentYear();  
112 -  
113 - ServerResult checkChargeOrderCount(List<Long> orderIds);  
114 -}  
src/main/java/com/order/erp/service/order/OrderCompletionReportService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.common.excel4j.exceptions.Excel4JException;  
6 -import com.order.erp.domain.dto.order.OrderCompletionReportDO;  
7 -import com.order.erp.domain.vo.OrderReportAnalysisVo;  
8 -import com.order.erp.domain.vo.order.OrderBaseInfoQueryVO;  
9 -import com.order.erp.domain.vo.order.OrderCompletionReportQueryVO;  
10 -import com.order.erp.domain.vo.order.OrderCompletionReportVO;  
11 -  
12 -import javax.servlet.http.HttpServletResponse;  
13 -import java.io.IOException;  
14 -import java.util.List;  
15 -  
16 -/**  
17 - * 订单-项目完成报告书(OrderCompletionReport)表服务接口  
18 - *  
19 - * @author makejava  
20 - * @since 2023-09-08 15:26:44  
21 - */  
22 -public interface OrderCompletionReportService extends IService<OrderCompletionReportDO> {  
23 -  
24 - /**  
25 - * 通过ID查询单条数据  
26 - *  
27 - * @param orderCompletionReportQueryVO 主键  
28 - * @return 实例对象  
29 - */  
30 - ServerResult queryById(OrderCompletionReportQueryVO orderCompletionReportQueryVO);  
31 -  
32 - /**  
33 - * 分页查询  
34 - *  
35 - * @param orderCompletionReportQueryVO 筛选条件  
36 - * @return 查询结果  
37 - */  
38 - ServerResult list(OrderCompletionReportQueryVO orderCompletionReportQueryVO);  
39 -  
40 -  
41 - /**  
42 - * @param queryVO  
43 - * @return  
44 - */  
45 - ServerResult analysis(OrderBaseInfoQueryVO queryVO);  
46 -  
47 - /**  
48 - *  
49 - * @param response  
50 - * @param orderBaseInfoQueryVO  
51 - * @return  
52 - */  
53 - ServerResult export(HttpServletResponse response, OrderBaseInfoQueryVO orderBaseInfoQueryVO) throws IOException, Excel4JException;  
54 -  
55 - /**  
56 - * 新增数据  
57 - *  
58 - * @param orderCompletionReportVO 数据VO  
59 - * @return 新增结果  
60 - */  
61 - ServerResult add(OrderCompletionReportVO orderCompletionReportVO);  
62 -  
63 - /**  
64 - * 修改数据  
65 - *  
66 - * @param orderCompletionReportVO 数据VO  
67 - * @return 编辑结果  
68 - */  
69 - ServerResult edit(OrderCompletionReportVO orderCompletionReportVO);  
70 -  
71 - /**  
72 - * 通过主键删除数据  
73 - *  
74 - * @param orderCompletionReportQueryVO 筛选条件  
75 - * @return 是否成功  
76 - */  
77 - ServerResult deleteById(OrderCompletionReportQueryVO orderCompletionReportQueryVO);  
78 -  
79 - boolean deleteByOrderId(Long orderId);  
80 -  
81 - boolean deleteByOrderIds(List<Long> orderIds);  
82 -  
83 - long countByOrderStatus(Integer status);  
84 -  
85 - long countYearByOrderStatus(Integer status);  
86 -}  
src/main/java/com/order/erp/service/order/OrderFieldLockApplyService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.OrderFieldLockApplyDO;  
6 -import com.order.erp.domain.vo.order.AuditVO;  
7 -import com.order.erp.domain.vo.order.OrderFieldLockApplyQueryVO;  
8 -import com.order.erp.domain.vo.order.OrderFieldLockApplyVO;  
9 -  
10 -import java.util.List;  
11 -  
12 -/**  
13 - * 用户订单-字段锁定申请表(OrderFieldLockApply)表服务接口  
14 - *  
15 - * @author makejava  
16 - * @since 2023-09-08 15:26:45  
17 - */  
18 -public interface OrderFieldLockApplyService extends IService<OrderFieldLockApplyDO> {  
19 -  
20 - /**  
21 - * 通过ID查询单条数据  
22 - *  
23 - * @param orderFieldLockApplyQueryVO 主键  
24 - * @return 实例对象  
25 - */  
26 - ServerResult queryById(OrderFieldLockApplyQueryVO orderFieldLockApplyQueryVO);  
27 -  
28 - /**  
29 - * 分页查询  
30 - *  
31 - * @param orderFieldLockApplyQueryVO 筛选条件  
32 - * @return 查询结果  
33 - */  
34 - ServerResult list(OrderFieldLockApplyQueryVO orderFieldLockApplyQueryVO);  
35 -  
36 - /**  
37 - * @param orderFieldLockApplyQueryVO  
38 - * @return  
39 - */  
40 - ServerResult listByPage(OrderFieldLockApplyQueryVO orderFieldLockApplyQueryVO);  
41 -  
42 - /**  
43 - * 新增数据  
44 - *  
45 - * @param orderFieldLockApplyVO 数据VO  
46 - * @return 新增结果  
47 - */  
48 - ServerResult add(OrderFieldLockApplyVO orderFieldLockApplyVO);  
49 -  
50 - /**  
51 - * @param auditVO  
52 - * @return  
53 - */  
54 - ServerResult doAudit(AuditVO auditVO);  
55 -  
56 - /**  
57 - * 修改数据  
58 - *  
59 - * @param orderFieldLockApplyVO 数据VO  
60 - * @return 编辑结果  
61 - */  
62 - ServerResult edit(OrderFieldLockApplyVO orderFieldLockApplyVO);  
63 -  
64 - /**  
65 - * 通过主键删除数据  
66 - *  
67 - * @param orderFieldLockApplyQueryVO 筛选条件  
68 - * @return 是否成功  
69 - */  
70 - ServerResult deleteById(OrderFieldLockApplyQueryVO orderFieldLockApplyQueryVO);  
71 -  
72 - boolean deleteByOrderId(Long orderId);  
73 -  
74 - boolean deleteByOrderIds(List<Long> orderIds);  
75 -}  
src/main/java/com/order/erp/service/order/OrderFieldLockRecordService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.OrderFieldLockRecordDO;  
6 -import com.order.erp.domain.vo.order.OrderFieldLockRecordQueryVO;  
7 -import com.order.erp.domain.vo.order.OrderFieldLockRecordVO;  
8 -  
9 -import java.util.List;  
10 -  
11 -/**  
12 - * 用户订单-字段锁定记录表(OrderFieldLockRecord)表服务接口  
13 - *  
14 - * @author makejava  
15 - * @since 2023-09-08 15:26:45  
16 - */  
17 -public interface OrderFieldLockRecordService extends IService<OrderFieldLockRecordDO> {  
18 -  
19 - /**  
20 - * 通过ID查询单条数据  
21 - *  
22 - * @param orderFieldLockRecordQueryVO 主键  
23 - * @return 实例对象  
24 - */  
25 - ServerResult queryById(OrderFieldLockRecordQueryVO orderFieldLockRecordQueryVO);  
26 -  
27 - /**  
28 - * 分页查询  
29 - *  
30 - * @param orderFieldLockRecordQueryVO 筛选条件  
31 - * @return 查询结果  
32 - */  
33 - ServerResult list(OrderFieldLockRecordQueryVO orderFieldLockRecordQueryVO);  
34 -  
35 - /**  
36 - * 新增数据  
37 - *  
38 - * @param orderFieldLockRecordVO 数据VO  
39 - * @return 新增结果  
40 - */  
41 - ServerResult add(OrderFieldLockRecordVO orderFieldLockRecordVO);  
42 -  
43 - /**  
44 - * 修改数据  
45 - *  
46 - * @param orderFieldLockRecordVO 数据VO  
47 - * @return 编辑结果  
48 - */  
49 - ServerResult edit(OrderFieldLockRecordVO orderFieldLockRecordVO);  
50 -  
51 - /**  
52 - * 通过主键删除数据  
53 - *  
54 - * @param orderFieldLockRecordQueryVO 筛选条件  
55 - * @return 是否成功  
56 - */  
57 - ServerResult deleteById(OrderFieldLockRecordQueryVO orderFieldLockRecordQueryVO);  
58 -  
59 - boolean deleteByOrderId(Long orderId);  
60 -  
61 - boolean deleteByOrderIds(List<Long> orderIds);  
62 -}  
src/main/java/com/order/erp/service/order/OrderInspectionStageService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.OrderStatusEnum;  
6 -import com.order.erp.domain.dto.order.OrderInspectionStageDO;  
7 -import com.order.erp.domain.vo.order.OrderInspectionStageQueryVO;  
8 -import com.order.erp.domain.vo.order.OrderInspectionStageVO;  
9 -  
10 -import java.util.List;  
11 -  
12 -/**  
13 - * 订单-质检环节(OrderInspectionStage)表服务接口  
14 - *  
15 - * @author makejava  
16 - * @since 2023-09-08 15:26:46  
17 - */  
18 -public interface OrderInspectionStageService extends IService<OrderInspectionStageDO> {  
19 -  
20 - /**  
21 - * 通过ID查询单条数据  
22 - *  
23 - * @param orderInspectionStageQueryVO 主键  
24 - * @return 实例对象  
25 - */  
26 - ServerResult queryById(OrderInspectionStageQueryVO orderInspectionStageQueryVO);  
27 -  
28 - /**  
29 - * 分页查询  
30 - *  
31 - * @param orderInspectionStageQueryVO 筛选条件  
32 - * @return 查询结果  
33 - */  
34 - ServerResult list(OrderInspectionStageQueryVO orderInspectionStageQueryVO);  
35 -  
36 - /**  
37 - * 新增数据  
38 - *  
39 - * @param orderInspectionStageVO 数据VO  
40 - * @return 新增结果  
41 - */  
42 - ServerResult add(OrderInspectionStageVO orderInspectionStageVO);  
43 -  
44 - /**  
45 - * 修改数据  
46 - *  
47 - * @param orderInspectionStageVO 数据VO  
48 - * @return 编辑结果  
49 - */  
50 - ServerResult edit(OrderInspectionStageVO orderInspectionStageVO);  
51 -  
52 - /**  
53 - * 通过主键删除数据  
54 - *  
55 - * @param orderInspectionStageQueryVO 筛选条件  
56 - * @return 是否成功  
57 - */  
58 - ServerResult deleteById(OrderInspectionStageQueryVO orderInspectionStageQueryVO);  
59 -  
60 - boolean deleteByOrderId(Long orderId);  
61 -  
62 - boolean deleteByOrderIds(List<Long> orderIds);  
63 -  
64 - long countByOrderStatus(Integer orderStatus);  
65 -  
66 - long countRecentMonthByOrderStatus(Integer status);  
67 -}  
src/main/java/com/order/erp/service/order/OrderOptLogService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.OrderOptLogDO;  
6 -import com.order.erp.domain.vo.order.OrderOptLogQueryVO;  
7 -import com.order.erp.domain.vo.order.OrderOptLogVO;  
8 -  
9 -import java.util.List;  
10 -  
11 -/**  
12 - * 用户订单操作日志表(OrderOptLog)表服务接口  
13 - *  
14 - * @author makejava  
15 - * @since 2023-09-08 15:26:46  
16 - */  
17 -public interface OrderOptLogService extends IService<OrderOptLogDO> {  
18 -  
19 - /**  
20 - * 通过ID查询单条数据  
21 - *  
22 - * @param orderOptLogQueryVO 主键  
23 - * @return 实例对象  
24 - */  
25 - ServerResult queryById(OrderOptLogQueryVO orderOptLogQueryVO);  
26 -  
27 - /**  
28 - * 分页查询  
29 - *  
30 - * @param orderOptLogQueryVO 筛选条件  
31 - * @return 查询结果  
32 - */  
33 - ServerResult list(OrderOptLogQueryVO orderOptLogQueryVO);  
34 -  
35 - /**  
36 - *  
37 - * @param orderOptLogQueryVO  
38 - * @return  
39 - */  
40 - ServerResult listByPage(OrderOptLogQueryVO orderOptLogQueryVO);  
41 -  
42 - /**  
43 - * 新增数据  
44 - *  
45 - * @param orderOptLogVO 数据VO  
46 - * @return 新增结果  
47 - */  
48 - ServerResult add(OrderOptLogVO orderOptLogVO);  
49 -  
50 - /**  
51 - * 修改数据  
52 - *  
53 - * @param orderOptLogVO 数据VO  
54 - * @return 编辑结果  
55 - */  
56 - ServerResult edit(OrderOptLogVO orderOptLogVO);  
57 -  
58 - /**  
59 - * 通过主键删除数据  
60 - *  
61 - * @param orderOptLogQueryVO 筛选条件  
62 - * @return 是否成功  
63 - */  
64 - ServerResult deleteById(OrderOptLogQueryVO orderOptLogQueryVO);  
65 -  
66 - boolean deleteByOrderId(Long orderId);  
67 -  
68 - boolean deleteByOrderIds(List<Long> orderIds);  
69 -}  
src/main/java/com/order/erp/service/order/OrderProfitAnalysisService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.OrderProfitAnalysisDO;  
6 -import com.order.erp.domain.vo.OrderProfitAnalysisVo;  
7 -import com.order.erp.domain.vo.order.OrderProfitAnalysisQueryVO;  
8 -import com.order.erp.domain.vo.order.OrderProfitAnalysisVO;  
9 -import com.order.erp.domain.vo.order.ProfitCalculateVO;  
10 -  
11 -import java.util.List;  
12 -  
13 -/**  
14 - * 订单利润分析表(OrderProfitAnalysis)表服务接口  
15 - *  
16 - * @author makejava  
17 - * @since 2023-09-08 15:26:47  
18 - */  
19 -public interface OrderProfitAnalysisService extends IService<OrderProfitAnalysisDO> {  
20 -  
21 - /**  
22 - * 通过ID查询单条数据  
23 - *  
24 - * @param orderProfitAnalysisQueryVO 主键  
25 - * @return 实例对象  
26 - */  
27 - ServerResult queryById(OrderProfitAnalysisQueryVO orderProfitAnalysisQueryVO);  
28 -  
29 - /**  
30 - * 分页查询  
31 - *  
32 - * @param orderProfitAnalysisQueryVO 筛选条件  
33 - * @return 查询结果  
34 - */  
35 - ServerResult list(OrderProfitAnalysisQueryVO orderProfitAnalysisQueryVO);  
36 -  
37 - /**  
38 - * 新增数据  
39 - *  
40 - * @param orderProfitAnalysisVO 数据VO  
41 - * @return 新增结果  
42 - */  
43 - ServerResult add(OrderProfitAnalysisVO orderProfitAnalysisVO);  
44 -  
45 - /**  
46 - * 修改数据  
47 - *  
48 - * @param orderProfitAnalysisVO 数据VO  
49 - * @return 编辑结果  
50 - */  
51 - ServerResult edit(OrderProfitAnalysisVO orderProfitAnalysisVO);  
52 -  
53 - /**  
54 - * 通过主键删除数据  
55 - *  
56 - * @param orderProfitAnalysisQueryVO 筛选条件  
57 - * @return 是否成功  
58 - */  
59 - ServerResult deleteById(OrderProfitAnalysisQueryVO orderProfitAnalysisQueryVO);  
60 -  
61 - boolean deleteByOrderId(Long orderId);  
62 -  
63 - boolean deleteByOrderIds(List<Long> orderIds);  
64 -  
65 - ServerResult<OrderProfitAnalysisVO> analysisByOrderIds(OrderProfitAnalysisVo orderProfitAnalysisVo);  
66 -  
67 - ServerResult<OrderProfitAnalysisVO> analysis(OrderProfitAnalysisVo orderProfitAnalysisVo);  
68 -  
69 - ServerResult<OrderProfitAnalysisVO> analysisByQueryVO(OrderProfitAnalysisVo orderProfitAnalysisVo);  
70 -  
71 - ServerResult calculate(ProfitCalculateVO calculateVO);  
72 -  
73 - long countByOrderStatus(Integer status);  
74 -  
75 - long countRecentWeekByOrderStatus(Integer status);  
76 -}  
src/main/java/com/order/erp/service/order/OrderTrackStageService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.OrderTrackStageDO;  
6 -import com.order.erp.domain.vo.order.OrderTrackStageQueryVO;  
7 -import com.order.erp.domain.vo.order.OrderTrackStageVO;  
8 -  
9 -import java.util.List;  
10 -  
11 -/**  
12 - * 订单-跟单环节(OrderTrackStage)表服务接口  
13 - *  
14 - * @author makejava  
15 - * @since 2023-09-08 15:26:48  
16 - */  
17 -public interface OrderTrackStageService extends IService<OrderTrackStageDO> {  
18 -  
19 - /**  
20 - * 通过ID查询单条数据  
21 - *  
22 - * @param orderTrackStageQueryVO 主键  
23 - * @return 实例对象  
24 - */  
25 - ServerResult queryById(OrderTrackStageQueryVO orderTrackStageQueryVO);  
26 -  
27 - /**  
28 - * 分页查询  
29 - *  
30 - * @param orderTrackStageQueryVO 筛选条件  
31 - * @return 查询结果  
32 - */  
33 - ServerResult list(OrderTrackStageQueryVO orderTrackStageQueryVO);  
34 -  
35 - /**  
36 - * 新增数据  
37 - *  
38 - * @param orderTrackStageVO 数据VO  
39 - * @return 新增结果  
40 - */  
41 - ServerResult add(OrderTrackStageVO orderTrackStageVO);  
42 -  
43 - /**  
44 - * 修改数据  
45 - *  
46 - * @param orderTrackStageVO 数据VO  
47 - * @return 编辑结果  
48 - */  
49 - ServerResult edit(OrderTrackStageVO orderTrackStageVO);  
50 -  
51 - /**  
52 - * 通过主键删除数据  
53 - *  
54 - * @param orderTrackStageQueryVO 筛选条件  
55 - * @return 是否成功  
56 - */  
57 - ServerResult deleteById(OrderTrackStageQueryVO orderTrackStageQueryVO);  
58 -  
59 - boolean deleteByOrderId(Long orderId);  
60 -  
61 - boolean deleteByOrderIds(List<Long> orderIds);  
62 -}  
src/main/java/com/order/erp/service/order/OrderUpdateLogService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.OrderUpdateLogDO;  
6 -import com.order.erp.domain.vo.order.OrderUpdateLogQueryVO;  
7 -import com.order.erp.domain.vo.order.OrderUpdateLogVO;  
8 -  
9 -/**  
10 - * 订单更新日志表(OrderUpdateLog)表服务接口  
11 - *  
12 - * @author makejava  
13 - * @since 2024-07-03 17:30:32  
14 - */  
15 -public interface OrderUpdateLogService extends IService<OrderUpdateLogDO> {  
16 -  
17 - /**  
18 - * 通过ID查询单条数据  
19 - *  
20 - * @param orderUpdateLogQueryVO 主键  
21 - * @return 实例对象  
22 - */  
23 - ServerResult queryById(OrderUpdateLogQueryVO orderUpdateLogQueryVO);  
24 -  
25 - /**  
26 - * 分页查询  
27 - *  
28 - * @param orderUpdateLogQueryVO 筛选条件  
29 - * @return 查询结果  
30 - */  
31 - ServerResult list(OrderUpdateLogQueryVO orderUpdateLogQueryVO);  
32 -  
33 - /**  
34 - * 新增数据  
35 - *  
36 - * @param orderUpdateLogVO 数据VO  
37 - * @return 新增结果  
38 - */  
39 - ServerResult add(OrderUpdateLogVO orderUpdateLogVO);  
40 -  
41 - /**  
42 - * 修改数据  
43 - *  
44 - * @param orderUpdateLogVO 数据VO  
45 - * @return 编辑结果  
46 - */  
47 - ServerResult edit(OrderUpdateLogVO orderUpdateLogVO);  
48 -  
49 - /**  
50 - * 通过主键删除数据  
51 - *  
52 - * @param orderUpdateLogQueryVO 筛选条件  
53 - * @return 是否成功  
54 - */  
55 - ServerResult deleteById(OrderUpdateLogQueryVO orderUpdateLogQueryVO);  
56 -  
57 -}  
src/main/java/com/order/erp/service/order/ProducePaymentCheckBillOrderService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.ProducePaymentCheckBillOrderDO;  
6 -import com.order.erp.domain.vo.order.ProducePaymentCheckBillOrderQueryVO;  
7 -import com.order.erp.domain.vo.order.ProducePaymentCheckBillOrderVO;  
8 -  
9 -/**  
10 - * 生产科对账单应收账单(ProducePaymentCheckBillOrder)表服务接口  
11 - *  
12 - * @author makejava  
13 - * @since 2024-08-05 16:26:35  
14 - */  
15 -public interface ProducePaymentCheckBillOrderService extends IService<ProducePaymentCheckBillOrderDO> {  
16 -  
17 - /**  
18 - * 通过ID查询单条数据  
19 - *  
20 - * @param producePaymentCheckBillOrderQueryVO 主键  
21 - * @return 实例对象  
22 - */  
23 - ServerResult queryById(ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO);  
24 -  
25 - /**  
26 - * 分页查询  
27 - *  
28 - * @param producePaymentCheckBillOrderQueryVO 筛选条件  
29 - * @return 查询结果  
30 - */  
31 - ServerResult list(ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO);  
32 -  
33 - /**  
34 - * 新增数据  
35 - *  
36 - * @param producePaymentCheckBillOrderVO 数据VO  
37 - * @return 新增结果  
38 - */  
39 - ServerResult add(ProducePaymentCheckBillOrderVO producePaymentCheckBillOrderVO);  
40 -  
41 - /**  
42 - * 修改数据  
43 - *  
44 - * @param producePaymentCheckBillOrderVO 数据VO  
45 - * @return 编辑结果  
46 - */  
47 - ServerResult edit(ProducePaymentCheckBillOrderVO producePaymentCheckBillOrderVO);  
48 -  
49 - /**  
50 - * 通过主键删除数据  
51 - *  
52 - * @param producePaymentCheckBillOrderQueryVO 筛选条件  
53 - * @return 是否成功  
54 - */  
55 - ServerResult deleteById(ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO);  
56 -  
57 -}  
src/main/java/com/order/erp/service/order/ReceiveEmailMappingService.java deleted 100644 → 0
1 -package com.order.erp.service.order;  
2 -  
3 -import com.baomidou.mybatisplus.extension.service.IService;  
4 -import com.order.erp.common.constant.ServerResult;  
5 -import com.order.erp.domain.dto.order.ReceiveEmailMappingDO;  
6 -import com.order.erp.domain.vo.order.ReceiveEmailMappingQueryVO;  
7 -import com.order.erp.domain.vo.order.ReceiveEmailMappingVO;  
8 -  
9 -  
10 -/**  
11 - * 邮件接收人信息绑定表(ReceiveEmailMapping)表服务接口  
12 - *  
13 - * @author makejava  
14 - * @since 2024-07-03 10:58:52  
15 - */  
16 -public interface ReceiveEmailMappingService extends IService<ReceiveEmailMappingDO> {  
17 -  
18 - /**  
19 - * 通过ID查询单条数据  
20 - *  
21 - * @param receiveEmailMappingQueryVO 主键  
22 - * @return 实例对象  
23 - */  
24 - ServerResult queryById(ReceiveEmailMappingQueryVO receiveEmailMappingQueryVO);  
25 -  
26 - /**  
27 - * 分页查询  
28 - *  
29 - *  
30 - * @return 查询结果  
31 - */  
32 - ServerResult listGetAll();  
33 -  
34 - /**  
35 - * 新增数据  
36 - *  
37 - * @param receiveEmailMappingVO 数据VO  
38 - * @return 新增结果  
39 - */  
40 - ServerResult add(ReceiveEmailMappingVO receiveEmailMappingVO);  
41 -  
42 - /**  
43 - * 修改数据  
44 - *  
45 - * @param receiveEmailMappingVO 数据VO  
46 - * @return 编辑结果  
47 - */  
48 - ServerResult edit(ReceiveEmailMappingVO receiveEmailMappingVO);  
49 -  
50 - /**  
51 - * 通过主键删除数据  
52 - *  
53 - * @param receiveEmailMappingVO 筛选条件  
54 - * @return 是否成功  
55 - */  
56 - ServerResult deleteById(ReceiveEmailMappingVO receiveEmailMappingVO);  
57 -  
58 - ServerResult opt(ReceiveEmailMappingDO receiveEmailMappingDo);  
59 -  
60 -}  
src/main/java/com/order/erp/service/order/impl/CheckBillMappingServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
6 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
7 -import com.baomidou.mybatisplus.core.metadata.IPage;  
8 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
9 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
10 -import com.order.erp.common.constant.Constant;  
11 -import com.order.erp.common.constant.ServerResult;  
12 -import com.order.erp.common.utils.PageUtils;  
13 -import com.order.erp.domain.dto.order.CheckBillMappingDO;  
14 -import com.order.erp.domain.vo.order.CheckBillMappingQueryVO;  
15 -import com.order.erp.domain.vo.order.CheckBillMappingVO;  
16 -import com.order.erp.mapper.order.CheckBillMappingMapper;  
17 -import com.order.erp.service.order.CheckBillMappingService;  
18 -import lombok.extern.slf4j.Slf4j;  
19 -import org.springframework.stereotype.Service;  
20 -  
21 -import java.util.List;  
22 -import java.util.Objects;  
23 -  
24 -/**  
25 - * 生产科对账单应收账单映射表(CheckBillMapping)表服务实现类  
26 - *  
27 - * @author makejava  
28 - * @since 2024-08-05 16:26:37  
29 - */  
30 -@Slf4j  
31 -@Service  
32 -public class CheckBillMappingServiceImpl extends ServiceImpl<CheckBillMappingMapper, CheckBillMappingDO> implements CheckBillMappingService {  
33 -  
34 -  
35 - /**  
36 - * 通过ID查询单条数据  
37 - * <p>  
38 - * checkBillMappingQueryVO 主键  
39 - *  
40 - * @return 实例对象  
41 - */  
42 - @Override  
43 - public ServerResult queryById(CheckBillMappingQueryVO checkBillMappingQueryVO) {  
44 - if (Objects.isNull(checkBillMappingQueryVO.getId())) {  
45 - return ServerResult.fail("id 不能为空");  
46 - }  
47 - CheckBillMappingDO CheckBillMappingDo = getById(checkBillMappingQueryVO.getId());  
48 - if (Objects.isNull(CheckBillMappingDo)) {  
49 - return ServerResult.success(null);  
50 - }  
51 - return ServerResult.success(BeanUtil.copyProperties(CheckBillMappingDo, CheckBillMappingVO.class));  
52 - }  
53 -  
54 - /**  
55 - * 分页查询  
56 - *  
57 - * @param checkBillMappingQueryVO 筛选条件  
58 - * @return 查询结果  
59 - */  
60 - @Override  
61 - public ServerResult list(CheckBillMappingQueryVO checkBillMappingQueryVO) {  
62 -  
63 - LambdaQueryWrapper<CheckBillMappingDO> queryWapper = new LambdaQueryWrapper<CheckBillMappingDO>()  
64 - .eq(CheckBillMappingDO::getEnableFlag, Constant.ENABLE_TEN)  
65 - .orderByDesc(CheckBillMappingDO::getId);  
66 - Page page = new Page<>(checkBillMappingQueryVO.getPage(), checkBillMappingQueryVO.getPageSize());  
67 - IPage<CheckBillMappingDO> iPage = page(page, queryWapper);  
68 - checkBillMappingQueryVO.setTotal(Long.valueOf(iPage.getTotal()).intValue());  
69 - return ServerResult.success(PageUtils.getPageReturn(null, checkBillMappingQueryVO));  
70 - }  
71 -  
72 - /**  
73 - * 新增数据  
74 - *  
75 - * @param checkBillMappingVO 实例对象  
76 - * @return 实例对象  
77 - */  
78 - @Override  
79 - public ServerResult add(CheckBillMappingVO checkBillMappingVO) {  
80 - //todo 校验  
81 - if (Objects.nonNull(checkBillMappingVO.getId())) {  
82 - checkBillMappingVO.setId(null);  
83 - }  
84 - CheckBillMappingDO checkBillMappingDo = BeanUtil.copyProperties(checkBillMappingVO, CheckBillMappingDO.class);  
85 -  
86 - save(checkBillMappingDo);  
87 -  
88 - return ServerResult.success();  
89 - }  
90 -  
91 - /**  
92 - * 修改数据  
93 - *  
94 - * @param checkBillMappingVO 实例对象  
95 - * @return 实例对象  
96 - */  
97 - @Override  
98 - public ServerResult edit(CheckBillMappingVO checkBillMappingVO) {  
99 - //todo 校验  
100 - if (Objects.isNull(checkBillMappingVO.getId())) {  
101 - return ServerResult.fail("id 不能为空");  
102 - }  
103 - CheckBillMappingDO checkBillMappingDo = BeanUtil.copyProperties(checkBillMappingVO, CheckBillMappingDO.class);  
104 -  
105 - updateById(checkBillMappingDo);  
106 -  
107 - return ServerResult.success();  
108 - }  
109 -  
110 - /**  
111 - * 通过主键删除数据  
112 - *  
113 - * @param checkBillMappingQueryVO 筛选条件  
114 - * @return 是否成功  
115 - */  
116 - @Override  
117 - public ServerResult deleteById(CheckBillMappingQueryVO checkBillMappingQueryVO) {  
118 - List<Long> ids = checkBillMappingQueryVO.getIds();  
119 - if (CollUtil.isEmpty(ids)) {  
120 - return ServerResult.fail("ids 参数不能为空");  
121 - }  
122 - List<CheckBillMappingDO> checkBillMappingList = listByIds(ids);  
123 - if (CollUtil.isEmpty(checkBillMappingList)) {  
124 - return ServerResult.success();  
125 - }  
126 - //todo 校验是否可以逻辑删除  
127 - LambdaUpdateWrapper<CheckBillMappingDO> updateWrapper = new LambdaUpdateWrapper<CheckBillMappingDO>()  
128 - .in(CheckBillMappingDO::getId, ids)  
129 - .set(CheckBillMappingDO::getEnableFlag, Constant.UNABLE_TWENTY);  
130 - update(updateWrapper);  
131 - return ServerResult.success();  
132 - }  
133 -}  
src/main/java/com/order/erp/service/order/impl/EmailTemplateServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
6 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
7 -import com.order.erp.common.constant.Constant;  
8 -import com.order.erp.common.constant.ServerResult;  
9 -import com.order.erp.common.utils.PageUtils;  
10 -import com.order.erp.domain.dto.order.EmailTemplateDO;  
11 -import com.order.erp.domain.vo.order.EmailTemplateQueryVO;  
12 -import com.order.erp.domain.vo.order.EmailTemplateVO;  
13 -import com.order.erp.mapper.order.EmailTemplateMapper;  
14 -import com.order.erp.service.order.EmailTemplateService;  
15 -import lombok.extern.slf4j.Slf4j;  
16 -import org.springframework.stereotype.Service;  
17 -  
18 -import java.util.List;  
19 -import java.util.Objects;  
20 -  
21 -/**  
22 - * 邮件模板表(EmailTemplate)表服务实现类  
23 - *  
24 - * @author makejava  
25 - * @since 2024-07-03 10:58:28  
26 - */  
27 -@Slf4j  
28 -@Service  
29 -public class EmailTemplateServiceImpl extends ServiceImpl<EmailTemplateMapper, EmailTemplateDO> implements EmailTemplateService {  
30 -  
31 -  
32 - /**  
33 - * 通过ID查询单条数据  
34 - * <p>  
35 - * emailTemplateQueryVO 主键  
36 - *  
37 - * @return 实例对象  
38 - */  
39 - @Override  
40 - public ServerResult queryById(EmailTemplateQueryVO emailTemplateQueryVO) {  
41 - if (Objects.isNull(emailTemplateQueryVO.getId())) {  
42 - return ServerResult.fail("id 不能为空");  
43 - }  
44 - EmailTemplateDO EmailTemplateDo = getById(emailTemplateQueryVO.getId());  
45 - if (Objects.isNull(EmailTemplateDo)) {  
46 - return ServerResult.success(null);  
47 - }  
48 - return ServerResult.success(BeanUtil.copyProperties(EmailTemplateDo, EmailTemplateVO.class));  
49 - }  
50 -  
51 - /**  
52 - * 分页查询  
53 - *  
54 - * @param emailTemplateQueryVO 筛选条件  
55 - * @return 查询结果  
56 - */  
57 - @Override  
58 - public ServerResult list(EmailTemplateQueryVO emailTemplateQueryVO) {  
59 -  
60 - //todo  
61 - return ServerResult.success(PageUtils.getPageReturn(null, emailTemplateQueryVO));  
62 - }  
63 -  
64 - /**  
65 - * 新增数据  
66 - *  
67 - * @param emailTemplateVO 实例对象  
68 - * @return 实例对象  
69 - */  
70 - @Override  
71 - public ServerResult add(EmailTemplateVO emailTemplateVO) {  
72 - //todo 校验  
73 - if (Objects.nonNull(emailTemplateVO.getId())) {  
74 - emailTemplateVO.setId(null);  
75 - }  
76 - EmailTemplateDO emailTemplateDo = BeanUtil.copyProperties(emailTemplateVO, EmailTemplateDO.class);  
77 -  
78 - save(emailTemplateDo);  
79 -  
80 - return ServerResult.success();  
81 - }  
82 -  
83 - /**  
84 - * 修改数据  
85 - *  
86 - * @param emailTemplateVO 实例对象  
87 - * @return 实例对象  
88 - */  
89 - @Override  
90 - public ServerResult edit(EmailTemplateVO emailTemplateVO) {  
91 - //todo 校验  
92 - if (Objects.isNull(emailTemplateVO.getId())) {  
93 - return ServerResult.fail("id 不能为空");  
94 - }  
95 - EmailTemplateDO emailTemplateDo = BeanUtil.copyProperties(emailTemplateVO, EmailTemplateDO.class);  
96 -  
97 - updateById(emailTemplateDo);  
98 -  
99 - return ServerResult.success();  
100 - }  
101 -  
102 - /**  
103 - * 通过主键删除数据  
104 - *  
105 - * @param emailTemplateQueryVO 筛选条件  
106 - * @return 是否成功  
107 - */  
108 - @Override  
109 - public ServerResult deleteById(EmailTemplateQueryVO emailTemplateQueryVO) {  
110 - List<Long> ids = emailTemplateQueryVO.getIds();  
111 - if (CollUtil.isEmpty(ids)) {  
112 - return ServerResult.fail("ids 参数不能为空");  
113 - }  
114 - List<EmailTemplateDO> emailTemplateList = listByIds(ids);  
115 - if (CollUtil.isEmpty(emailTemplateList)) {  
116 - return ServerResult.success();  
117 - }  
118 - //todo 校验是否可以逻辑删除  
119 - LambdaUpdateWrapper<EmailTemplateDO> updateWrapper = new LambdaUpdateWrapper<EmailTemplateDO>()  
120 - .in(EmailTemplateDO::getId, ids)  
121 - .set(EmailTemplateDO::getEnableFlag, Constant.UNABLE_TWENTY);  
122 - update(updateWrapper);  
123 - return ServerResult.success();  
124 - }  
125 -}  
src/main/java/com/order/erp/service/order/impl/InvoiceBillMappingServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
6 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
7 -import com.baomidou.mybatisplus.core.metadata.IPage;  
8 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
9 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
10 -import com.order.erp.common.constant.Constant;  
11 -import com.order.erp.common.constant.ServerResult;  
12 -import com.order.erp.common.utils.PageUtils;  
13 -import com.order.erp.domain.dto.order.InvoiceBillMappingDO;  
14 -import com.order.erp.domain.vo.order.InvoiceBillMappingQueryVO;  
15 -import com.order.erp.domain.vo.order.InvoiceBillMappingVO;  
16 -import com.order.erp.mapper.order.InvoiceBillMappingMapper;  
17 -import com.order.erp.service.order.InvoiceBillMappingService;  
18 -import lombok.extern.slf4j.Slf4j;  
19 -import org.springframework.stereotype.Service;  
20 -  
21 -import java.util.List;  
22 -import java.util.Objects;  
23 -  
24 -/**  
25 - * 应收款账单关联订单映射表(InvoiceBillMapping)表服务实现类  
26 - *  
27 - * @author makejava  
28 - * @since 2024-08-05 16:26:36  
29 - */  
30 -@Slf4j  
31 -@Service  
32 -public class InvoiceBillMappingServiceImpl extends ServiceImpl<InvoiceBillMappingMapper, InvoiceBillMappingDO> implements InvoiceBillMappingService {  
33 -  
34 -  
35 - /**  
36 - * 通过ID查询单条数据  
37 - * <p>  
38 - * invoiceBillMappingQueryVO 主键  
39 - *  
40 - * @return 实例对象  
41 - */  
42 - @Override  
43 - public ServerResult queryById(InvoiceBillMappingQueryVO invoiceBillMappingQueryVO) {  
44 - if (Objects.isNull(invoiceBillMappingQueryVO.getId())) {  
45 - return ServerResult.fail("id 不能为空");  
46 - }  
47 - InvoiceBillMappingDO InvoiceBillMappingDo = getById(invoiceBillMappingQueryVO.getId());  
48 - if (Objects.isNull(InvoiceBillMappingDo)) {  
49 - return ServerResult.success(null);  
50 - }  
51 - return ServerResult.success(BeanUtil.copyProperties(InvoiceBillMappingDo, InvoiceBillMappingVO.class));  
52 - }  
53 -  
54 - /**  
55 - * 分页查询  
56 - *  
57 - * @param invoiceBillMappingQueryVO 筛选条件  
58 - * @return 查询结果  
59 - */  
60 - @Override  
61 - public ServerResult list(InvoiceBillMappingQueryVO invoiceBillMappingQueryVO) {  
62 -  
63 - LambdaQueryWrapper<InvoiceBillMappingDO> queryWapper = new LambdaQueryWrapper<InvoiceBillMappingDO>()  
64 - .eq(InvoiceBillMappingDO::getEnableFlag, Constant.ENABLE_TEN)  
65 - .orderByDesc(InvoiceBillMappingDO::getId);  
66 - Page page = new Page<>(invoiceBillMappingQueryVO.getPage(), invoiceBillMappingQueryVO.getPageSize());  
67 - IPage<InvoiceBillMappingDO> iPage = page(page, queryWapper);  
68 - invoiceBillMappingQueryVO.setTotal(Long.valueOf(iPage.getTotal()).intValue());  
69 - return ServerResult.success(PageUtils.getPageReturn(null, invoiceBillMappingQueryVO));  
70 - }  
71 -  
72 - /**  
73 - * 新增数据  
74 - *  
75 - * @param invoiceBillMappingVO 实例对象  
76 - * @return 实例对象  
77 - */  
78 - @Override  
79 - public ServerResult add(InvoiceBillMappingVO invoiceBillMappingVO) {  
80 - //todo 校验  
81 - if (Objects.nonNull(invoiceBillMappingVO.getId())) {  
82 - invoiceBillMappingVO.setId(null);  
83 - }  
84 - InvoiceBillMappingDO invoiceBillMappingDo = BeanUtil.copyProperties(invoiceBillMappingVO, InvoiceBillMappingDO.class);  
85 -  
86 - save(invoiceBillMappingDo);  
87 -  
88 - return ServerResult.success();  
89 - }  
90 -  
91 - /**  
92 - * 修改数据  
93 - *  
94 - * @param invoiceBillMappingVO 实例对象  
95 - * @return 实例对象  
96 - */  
97 - @Override  
98 - public ServerResult edit(InvoiceBillMappingVO invoiceBillMappingVO) {  
99 - //todo 校验  
100 - if (Objects.isNull(invoiceBillMappingVO.getId())) {  
101 - return ServerResult.fail("id 不能为空");  
102 - }  
103 - InvoiceBillMappingDO invoiceBillMappingDo = BeanUtil.copyProperties(invoiceBillMappingVO, InvoiceBillMappingDO.class);  
104 -  
105 - updateById(invoiceBillMappingDo);  
106 -  
107 - return ServerResult.success();  
108 - }  
109 -  
110 - /**  
111 - * 通过主键删除数据  
112 - *  
113 - * @param invoiceBillMappingQueryVO 筛选条件  
114 - * @return 是否成功  
115 - */  
116 - @Override  
117 - public ServerResult deleteById(InvoiceBillMappingQueryVO invoiceBillMappingQueryVO) {  
118 - List<Long> ids = invoiceBillMappingQueryVO.getIds();  
119 - if (CollUtil.isEmpty(ids)) {  
120 - return ServerResult.fail("ids 参数不能为空");  
121 - }  
122 - List<InvoiceBillMappingDO> invoiceBillMappingList = listByIds(ids);  
123 - if (CollUtil.isEmpty(invoiceBillMappingList)) {  
124 - return ServerResult.success();  
125 - }  
126 - //todo 校验是否可以逻辑删除  
127 - LambdaUpdateWrapper<InvoiceBillMappingDO> updateWrapper = new LambdaUpdateWrapper<InvoiceBillMappingDO>()  
128 - .in(InvoiceBillMappingDO::getId, ids)  
129 - .set(InvoiceBillMappingDO::getEnableFlag, Constant.UNABLE_TWENTY);  
130 - update(updateWrapper);  
131 - return ServerResult.success();  
132 - }  
133 -}  
src/main/java/com/order/erp/service/order/impl/InvoiceBillOrderServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.collection.CollUtil;  
4 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
5 -import com.baomidou.mybatisplus.core.metadata.IPage;  
6 -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;  
7 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
8 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
9 -import com.order.erp.common.constant.Constant;  
10 -import com.order.erp.common.constant.ServerResult;  
11 -import com.order.erp.common.exception.BusinessException;  
12 -import com.order.erp.common.utils.StringUtils;  
13 -import com.order.erp.common.utils.TransactionHelper;  
14 -import com.order.erp.domain.dto.BaseDO;  
15 -import com.order.erp.domain.dto.order.InvoiceBillMappingDO;  
16 -import com.order.erp.domain.dto.order.InvoiceBillOrderDO;  
17 -import com.order.erp.domain.dto.order.OrderBaseInfoDO;  
18 -import com.order.erp.domain.vo.order.*;  
19 -import com.order.erp.mapper.order.InvoiceBillOrderMapper;  
20 -import com.order.erp.service.order.InvoiceBillMappingService;  
21 -import com.order.erp.service.order.InvoiceBillOrderService;  
22 -import com.order.erp.service.order.OrderBaseInfoService;  
23 -import lombok.extern.slf4j.Slf4j;  
24 -import org.springframework.stereotype.Service;  
25 -  
26 -import javax.annotation.Resource;  
27 -import java.util.*;  
28 -import java.util.stream.Collectors;  
29 -  
30 -/**  
31 - * 应收款账单表(InvoiceBillOrder)表服务实现类  
32 - *  
33 - * @author makejava  
34 - * @since 2024-08-05 16:26:34  
35 - */  
36 -@Slf4j  
37 -@Service  
38 -public class InvoiceBillOrderServiceImpl extends ServiceImpl<InvoiceBillOrderMapper, InvoiceBillOrderDO> implements InvoiceBillOrderService {  
39 -  
40 -  
41 - @Resource  
42 - private OrderBaseInfoService orderBaseInfoService;  
43 -  
44 - @Resource  
45 - private InvoiceBillMappingService invoiceBillMappingService;  
46 -  
47 - @Resource  
48 - private TransactionHelper transactionHelper;  
49 -  
50 -  
51 - /**  
52 - * 分页查询  
53 - *  
54 - * @param queryVO 筛选条件  
55 - * @return 查询结果  
56 - */  
57 - @Override  
58 - public ServerResult listByPage(InvoiceBillOrderQueryVO queryVO) {  
59 - Set<Long> billOrderIds = filterBillOrderIdsBy(queryVO);  
60 -  
61 - LambdaQueryWrapper<InvoiceBillOrderDO> queryWrapper = new LambdaQueryWrapper<InvoiceBillOrderDO>()  
62 - .eq(InvoiceBillOrderDO::getEnableFlag, Constant.ENABLE_TEN)  
63 - .in(CollectionUtils.isNotEmpty(billOrderIds), InvoiceBillOrderDO::getId, billOrderIds)  
64 - .eq(StringUtils.isNotBlank(queryVO.getInvoiceNo()), InvoiceBillOrderDO::getInvoiceNo, queryVO.getInvoiceNo())  
65 - .eq(Objects.nonNull(queryVO.getStatus()), InvoiceBillOrderDO::getStatus, queryVO.getStatus())  
66 - .orderByDesc(InvoiceBillOrderDO::getId);  
67 - Page page = new Page<>(queryVO.getPage(), queryVO.getPageSize());  
68 - IPage<InvoiceBillOrderDO> iPage = page(page, queryWrapper);  
69 - return ServerResult.success(iPage);  
70 - }  
71 -  
72 - @Override  
73 - public ServerResult listBaseOrderInfoBy(InvoiceBaseOrderQueryVO queryVO) {  
74 - List<InvoiceBillMappingDO> mappingDOS = invoiceBillMappingService.list(new LambdaQueryWrapper<InvoiceBillMappingDO>()  
75 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
76 - .eq(InvoiceBillMappingDO::getInvoiceNo, queryVO.getInvoiceNo()));  
77 - if (CollectionUtils.isEmpty(mappingDOS)) {  
78 - return ServerResult.success();  
79 - }  
80 - Set<Long> orderIds = mappingDOS.stream().map(InvoiceBillMappingDO::getOrderId).collect(Collectors.toSet());  
81 - return ServerResult.success(orderBaseInfoService.listByIds(orderIds));  
82 - }  
83 -  
84 - /**  
85 - * @param queryVO  
86 - * @return  
87 - */  
88 - private Set<Long> filterBillOrderIdsBy(InvoiceBillOrderQueryVO queryVO) {  
89 - List<Long> orderIds = filterOrderIdsBy(queryVO);  
90 - if (CollectionUtils.isEmpty(orderIds)) {  
91 - return null;  
92 - }  
93 - List<InvoiceBillMappingDO> mappingDOS = invoiceBillMappingService.list(new LambdaQueryWrapper<InvoiceBillMappingDO>().eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
94 - .in(CollectionUtils.isNotEmpty(orderIds), InvoiceBillMappingDO::getOrderId, orderIds));  
95 - if (CollectionUtils.isEmpty(mappingDOS)) {  
96 - Set<Long> ids = new HashSet<>();  
97 - ids.add(-1L);  
98 - return ids;  
99 - }  
100 - return mappingDOS.stream().map(InvoiceBillMappingDO::getInvoiceBillId).collect(Collectors.toSet());  
101 - }  
102 -  
103 - /**  
104 - * @param queryVO  
105 - * @return  
106 - */  
107 - private List<Long> filterOrderIdsBy(InvoiceBillOrderQueryVO queryVO) {  
108 - Boolean flag = false;  
109 - if (StringUtils.isNotBlank(queryVO.getCustomerCode())) {  
110 - flag = flag | true;  
111 - }  
112 - if (StringUtils.isNotBlank(queryVO.getProductionDepartment())) {  
113 - flag = flag | true;  
114 - }  
115 - if (StringUtils.isNotBlank(queryVO.getCustomerPo())) {  
116 - flag = flag | true;  
117 - }  
118 - if (StringUtils.isNotBlank(queryVO.getInnerNo())) {  
119 - flag = flag | true;  
120 - }  
121 - if (StringUtils.isNotBlank(queryVO.getProjectNo())) {  
122 - flag = flag | true;  
123 - }  
124 - if (!flag) {  
125 - return null;  
126 - }  
127 - LambdaQueryWrapper<OrderBaseInfoDO> queryWrapper = new LambdaQueryWrapper<OrderBaseInfoDO>()  
128 - .eq(OrderBaseInfoDO::getEnableFlag, Constant.ENABLE_TEN)  
129 - .eq(StringUtils.isNotBlank(queryVO.getCustomerCode()), OrderBaseInfoDO::getCustomerCode, queryVO.getCustomerCode())  
130 - .eq(StringUtils.isNotBlank(queryVO.getProductionDepartment()), OrderBaseInfoDO::getProductionDepartment, queryVO.getProductionDepartment())  
131 - .eq(StringUtils.isNotBlank(queryVO.getCustomerPo()), OrderBaseInfoDO::getCustomerPo, queryVO.getCustomerPo())  
132 - .eq(StringUtils.isNotBlank(queryVO.getInnerNo()), OrderBaseInfoDO::getInnerNo, queryVO.getInnerNo())  
133 - .eq(StringUtils.isNotBlank(queryVO.getProjectNo()), OrderBaseInfoDO::getProjectNo, queryVO.getProjectNo());  
134 - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.list(queryWrapper);  
135 - if (CollectionUtils.isEmpty(orderBaseInfoDOList)) {  
136 - List<Long> orderIds = new ArrayList<>();  
137 - orderIds.add(-1L);  
138 - return orderIds;  
139 - }  
140 - return orderBaseInfoDOList.stream().map(OrderBaseInfoDO::getId).collect(Collectors.toList());  
141 - }  
142 -  
143 - /**  
144 - * 创建invoice单据  
145 - *  
146 - * @param createVO 实例对象  
147 - * @return 实例对象  
148 - */  
149 - @Override  
150 - public ServerResult create(InvoiceBillCreateVO createVO) {  
151 - if (Objects.nonNull(createVO.getId())) {  
152 - createVO.setId(null);  
153 - }  
154 -  
155 - validaBillOrder(createVO);  
156 -  
157 - InvoiceBillOrderDO invoiceBillOrderDO = buildInvoiceBillOrderDO(createVO);  
158 -  
159 - transactionHelper.run(() -> {  
160 - save(invoiceBillOrderDO);  
161 -  
162 - invoiceBillMappingService.saveBatch(buildInvoiceBillMappingDOS(createVO, invoiceBillOrderDO));  
163 - });  
164 -  
165 - return ServerResult.success();  
166 - }  
167 -  
168 - /**  
169 - * @param createVO  
170 - * @return  
171 - */  
172 - private InvoiceBillOrderDO buildInvoiceBillOrderDO(InvoiceBillCreateVO createVO) {  
173 - return InvoiceBillOrderDO.builder()  
174 - .invoiceNo(createVO.getInvoiceNo())  
175 - .bgUrl(createVO.getBgUrl())  
176 - .backRefundDate(createVO.getBackRefundDate())  
177 - .build();  
178 - }  
179 -  
180 - /**  
181 - * @param createVO  
182 - * @param invoiceBillOrderDO  
183 - * @return  
184 - */  
185 - private List<InvoiceBillMappingDO> buildInvoiceBillMappingDOS(InvoiceBillCreateVO createVO, InvoiceBillOrderDO invoiceBillOrderDO) {  
186 - return createVO.getOrderIds().stream().map(x -> {  
187 - return InvoiceBillMappingDO.builder()  
188 - .orderId(x)  
189 - .invoiceBillId(invoiceBillOrderDO.getId())  
190 - .invoiceNo(invoiceBillOrderDO.getInvoiceNo())  
191 - .build();  
192 - }).collect(Collectors.toList());  
193 - }  
194 -  
195 - /**  
196 - * @param createVO  
197 - */  
198 - private void validaBillOrder(InvoiceBillCreateVO createVO) {  
199 - if (CollectionUtils.isEmpty(createVO.getOrderIds())) {  
200 - throw new BusinessException("请勾选订单!");  
201 - }  
202 -  
203 - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.listByIds(createVO.getOrderIds());  
204 - if (CollectionUtils.isEmpty(orderBaseInfoDOList)) {  
205 - throw new BusinessException("勾选的订单信息不存在!");  
206 - }  
207 -  
208 - if (orderBaseInfoDOList.size() != createVO.getOrderIds().size()) {  
209 - throw new BusinessException("勾选的订单信息有误!");  
210 - }  
211 -  
212 - String invoiceNo = createVO.getInvoiceNo();  
213 -  
214 - List<InvoiceBillOrderDO> invoiceBillOrderDOS = list(new LambdaQueryWrapper<InvoiceBillOrderDO>()  
215 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
216 - .eq(InvoiceBillOrderDO::getInvoiceNo, invoiceNo));  
217 - if (CollectionUtils.isNotEmpty(invoiceBillOrderDOS)) {  
218 - throw new BusinessException("存在相同的invoice订单!");  
219 - }  
220 -  
221 - }  
222 -  
223 - /**  
224 - * 修改数据  
225 - *  
226 - * @param deductInfoVO 实例对象  
227 - * @return 实例对象  
228 - */  
229 - @Override  
230 - public ServerResult updateDeductInfo(InvoiceBillDeductInfoVO deductInfoVO) {  
231 - if (Objects.isNull(deductInfoVO.getId())) {  
232 - throw new BusinessException("id 不能为空");  
233 - }  
234 - InvoiceBillOrderDO invoiceBillOrderDo = getById(deductInfoVO.getId());  
235 - if (Objects.isNull(invoiceBillOrderDo)) {  
236 - throw new BusinessException("应收款单据不存在");  
237 - }  
238 - invoiceBillOrderDo.setDeductUrl(deductInfoVO.getDeductUrl());  
239 - invoiceBillOrderDo.setDeductAmount(deductInfoVO.getDeductAmount());  
240 - updateById(invoiceBillOrderDo);  
241 - return ServerResult.success();  
242 - }  
243 -  
244 - @Override  
245 - public ServerResult updateAmountInfo(InvoiceBillAmountInfoVO amountInfoVO) {  
246 - if (Objects.isNull(amountInfoVO.getId())) {  
247 - throw new BusinessException("id 不能为空");  
248 - }  
249 - InvoiceBillOrderDO invoiceBillOrderDo = getById(amountInfoVO.getId());  
250 - if (Objects.isNull(invoiceBillOrderDo)) {  
251 - throw new BusinessException("应收款单据不存在");  
252 - }  
253 - invoiceBillOrderDo.setBgUrl(amountInfoVO.getBgUrl());  
254 - invoiceBillOrderDo.setActualReceivableAmount(amountInfoVO.getActualReceivableAmount());  
255 - invoiceBillOrderDo.setActualPayedAmount1(amountInfoVO.getActualPayedAmount1());  
256 - invoiceBillOrderDo.setActualPayedAmount2(amountInfoVO.getActualPayedAmount2());  
257 - invoiceBillOrderDo.setActualPayedAmount3(amountInfoVO.getActualPayedAmount3());  
258 - invoiceBillOrderDo.setOtherAmount(amountInfoVO.getOtherAmount());  
259 - updateById(invoiceBillOrderDo);  
260 - return ServerResult.success();  
261 - }  
262 -  
263 - /**  
264 - * 通过主键删除数据  
265 - *  
266 - * @param invoiceBillOrderQueryVO 筛选条件  
267 - * @return 是否成功  
268 - */  
269 - @Override  
270 - public ServerResult deleteById(InvoiceBillOrderQueryVO invoiceBillOrderQueryVO) {  
271 - List<Long> ids = invoiceBillOrderQueryVO.getIds();  
272 - if (CollUtil.isEmpty(ids)) {  
273 - return ServerResult.fail("ids 参数不能为空");  
274 - }  
275 - List<InvoiceBillOrderDO> invoiceBillOrderList = listByIds(ids);  
276 - if (CollUtil.isEmpty(invoiceBillOrderList)) {  
277 - return ServerResult.success();  
278 - }  
279 - transactionHelper.run(() -> {  
280 - removeByIds(ids);  
281 - invoiceBillMappingService.remove(new LambdaQueryWrapper<InvoiceBillMappingDO>().in(InvoiceBillMappingDO::getInvoiceBillId, ids));  
282 - });  
283 -  
284 - return ServerResult.success();  
285 - }  
286 -}  
src/main/java/com/order/erp/service/order/impl/OrderAuditLogServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
6 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
7 -import com.baomidou.mybatisplus.core.metadata.IPage;  
8 -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;  
9 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
10 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
11 -import com.order.erp.common.constant.Constant;  
12 -import com.order.erp.common.constant.ServerResult;  
13 -import com.order.erp.domain.dto.BaseDO;  
14 -import com.order.erp.domain.dto.admin.AdminUserDO;  
15 -import com.order.erp.domain.dto.order.OrderAuditLogDO;  
16 -import com.order.erp.domain.dto.order.OrderFieldLockApplyDO;  
17 -import com.order.erp.domain.vo.order.OrderAuditLogQueryVO;  
18 -import com.order.erp.domain.vo.order.OrderAuditLogResultVO;  
19 -import com.order.erp.domain.vo.order.OrderAuditLogVO;  
20 -import com.order.erp.mapper.order.OrderAuditLogMapper;  
21 -import com.order.erp.service.admin.AdminUserService;  
22 -import com.order.erp.service.order.OrderAuditLogService;  
23 -import com.order.erp.service.order.OrderFieldLockApplyService;  
24 -import lombok.extern.slf4j.Slf4j;  
25 -import org.springframework.beans.BeanUtils;  
26 -import org.springframework.stereotype.Service;  
27 -  
28 -import javax.annotation.Resource;  
29 -import java.util.*;  
30 -import java.util.function.Function;  
31 -import java.util.stream.Collectors;  
32 -  
33 -/**  
34 - * 用户订单审批日志表(OrderAuditLog)表服务实现类  
35 - *  
36 - * @author makejava  
37 - * @since 2023-09-08 15:26:42  
38 - */  
39 -@Slf4j  
40 -@Service  
41 -public class OrderAuditLogServiceImpl extends ServiceImpl<OrderAuditLogMapper, OrderAuditLogDO> implements OrderAuditLogService {  
42 -  
43 -  
44 - @Resource  
45 - private AdminUserService userService;  
46 -  
47 - @Resource  
48 - private OrderFieldLockApplyService applyService;  
49 -  
50 - /**  
51 - * 通过ID查询单条数据  
52 - * <p>  
53 - * orderAuditLogQueryVO 主键  
54 - *  
55 - * @return 实例对象  
56 - */  
57 - @Override  
58 - public ServerResult queryById(OrderAuditLogQueryVO orderAuditLogQueryVO) {  
59 - if (Objects.isNull(orderAuditLogQueryVO.getId())) {  
60 - return ServerResult.fail("id 不能为空");  
61 - }  
62 - OrderAuditLogDO OrderAuditLogDo = getById(orderAuditLogQueryVO.getId());  
63 - if (Objects.isNull(OrderAuditLogDo)) {  
64 - return ServerResult.success(null);  
65 - }  
66 - return ServerResult.success(BeanUtil.copyProperties(OrderAuditLogDo, OrderAuditLogVO.class));  
67 - }  
68 -  
69 - /**  
70 - * 分页查询  
71 - *  
72 - * @param orderAuditLogQueryVO 筛选条件  
73 - * @return 查询结果  
74 - */  
75 - @Override  
76 - public ServerResult list(OrderAuditLogQueryVO orderAuditLogQueryVO) {  
77 -  
78 - return ServerResult.success();  
79 - }  
80 -  
81 - @Override  
82 - public ServerResult listByPage(OrderAuditLogQueryVO queryVO) {  
83 - LambdaQueryWrapper<OrderAuditLogDO> queryWrapper = buildQueryByParam(queryVO);  
84 - Page page = new Page<>(queryVO.getPage(), queryVO.getPageSize());  
85 - IPage<OrderAuditLogDO> iPage = page(page, queryWrapper);  
86 -  
87 - Page<OrderAuditLogResultVO> webVOPage = new Page<>();  
88 - List<OrderAuditLogDO> auditLogDOS = iPage.getRecords();  
89 - if (CollectionUtils.isNotEmpty(auditLogDOS)) {  
90 - Set<Long> applyIds = auditLogDOS.stream().map(OrderAuditLogDO::getApplyId).collect(Collectors.toSet());  
91 - Map<Long, AdminUserDO> userDOMap = new HashMap<>();  
92 - Map<Long, OrderFieldLockApplyDO> applyDOMap = new HashMap<>();  
93 - Set<Long> userIds = new HashSet<>();  
94 - if (CollectionUtils.isNotEmpty(applyIds)) {  
95 - List<OrderFieldLockApplyDO> applyDOS = applyService.listByIds(applyIds);  
96 - if (CollectionUtils.isNotEmpty(applyDOS)) {  
97 - userIds.addAll(applyDOS.stream().map(OrderFieldLockApplyDO::getApplyUserId).collect(Collectors.toSet()));  
98 - userIds.addAll(applyDOS.stream().map(OrderFieldLockApplyDO::getAuditUserId).collect(Collectors.toSet()));  
99 - applyDOMap = applyDOS.stream().collect(Collectors.toMap(OrderFieldLockApplyDO::getId, Function.identity()));  
100 - }  
101 - }  
102 - if (CollectionUtils.isNotEmpty(userIds)) {  
103 - List<AdminUserDO> userDOS = userService.listByIds(userIds);  
104 - if (CollectionUtils.isNotEmpty(userDOS)) {  
105 - userDOMap = userDOS.stream().collect(Collectors.toMap(AdminUserDO::getId, Function.identity()));  
106 - }  
107 - }  
108 - Map<Long, AdminUserDO> finalUserDOMap = userDOMap;  
109 - Map<Long, OrderFieldLockApplyDO> finalApplyDOMap = applyDOMap;  
110 - List<OrderAuditLogResultVO> resultVOList = auditLogDOS.stream().map(x -> {  
111 - OrderAuditLogResultVO resultVO = new OrderAuditLogResultVO();  
112 - BeanUtils.copyProperties(x, resultVO);  
113 - if (finalApplyDOMap.containsKey(x.getApplyId())) {  
114 - OrderFieldLockApplyDO applyDO = finalApplyDOMap.get(x.getApplyId());  
115 - if (finalUserDOMap.containsKey(applyDO.getApplyUserId())) {  
116 - resultVO.setApplyUserName(finalUserDOMap.get(applyDO.getApplyUserId()).getUserName());  
117 - }  
118 - if (finalUserDOMap.containsKey(applyDO.getAuditUserId())) {  
119 - resultVO.setAuditUserName(finalUserDOMap.get(applyDO.getAuditUserId()).getUserName());  
120 - }  
121 - resultVO.setApplyRemark(applyDO.getRemark());  
122 - resultVO.setFields(applyDO.getFields());  
123 - }  
124 - return resultVO;  
125 - }).collect(Collectors.toList());  
126 -  
127 - webVOPage.setRecords(resultVOList);  
128 - }  
129 - BeanUtils.copyProperties(page, webVOPage, "records");  
130 - return ServerResult.success(webVOPage);  
131 - }  
132 -  
133 - /**  
134 - * @param queryVO  
135 - * @return  
136 - */  
137 - private LambdaQueryWrapper<OrderAuditLogDO> buildQueryByParam(OrderAuditLogQueryVO queryVO) {  
138 - return new LambdaQueryWrapper<OrderAuditLogDO>()  
139 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
140 - .eq(Objects.nonNull(queryVO.getOrderId()), OrderAuditLogDO::getOrderId, queryVO.getOrderId())  
141 - .orderByDesc(OrderAuditLogDO::getId)  
142 - ;  
143 - }  
144 -  
145 - /**  
146 - * 新增数据  
147 - *  
148 - * @param orderAuditLogVO 实例对象  
149 - * @return 实例对象  
150 - */  
151 - @Override  
152 - public ServerResult add(OrderAuditLogVO orderAuditLogVO) {  
153 - //todo 校验  
154 - if (Objects.nonNull(orderAuditLogVO.getId())) {  
155 - orderAuditLogVO.setId(null);  
156 - }  
157 - OrderAuditLogDO orderAuditLogDo = BeanUtil.copyProperties(orderAuditLogVO, OrderAuditLogDO.class);  
158 -  
159 - save(orderAuditLogDo);  
160 -  
161 - return ServerResult.success();  
162 - }  
163 -  
164 - /**  
165 - * 修改数据  
166 - *  
167 - * @param orderAuditLogVO 实例对象  
168 - * @return 实例对象  
169 - */  
170 - @Override  
171 - public ServerResult edit(OrderAuditLogVO orderAuditLogVO) {  
172 - //todo 校验  
173 - if (Objects.isNull(orderAuditLogVO.getId())) {  
174 - return ServerResult.fail("id 不能为空");  
175 - }  
176 - OrderAuditLogDO orderAuditLogDo = BeanUtil.copyProperties(orderAuditLogVO, OrderAuditLogDO.class);  
177 -  
178 - updateById(orderAuditLogDo);  
179 -  
180 - return ServerResult.success();  
181 - }  
182 -  
183 - /**  
184 - * 通过主键删除数据  
185 - *  
186 - * @param orderAuditLogQueryVO 筛选条件  
187 - * @return 是否成功  
188 - */  
189 - @Override  
190 - public ServerResult deleteById(OrderAuditLogQueryVO orderAuditLogQueryVO) {  
191 - List<Long> ids = orderAuditLogQueryVO.getIds();  
192 - if (CollUtil.isEmpty(ids)) {  
193 - return ServerResult.fail("ids 参数不能为空");  
194 - }  
195 - List<OrderAuditLogDO> orderAuditLogList = listByIds(ids);  
196 - if (CollUtil.isEmpty(orderAuditLogList)) {  
197 - return ServerResult.success();  
198 - }  
199 - //todo 校验是否可以逻辑删除  
200 - LambdaUpdateWrapper<OrderAuditLogDO> updateWrapper = new LambdaUpdateWrapper<OrderAuditLogDO>()  
201 - .in(OrderAuditLogDO::getId, ids)  
202 - .set(OrderAuditLogDO::getEnableFlag, Constant.UNABLE_TWENTY);  
203 - update(updateWrapper);  
204 - return ServerResult.success();  
205 - }  
206 -  
207 - /**  
208 - * 逻辑删除,通过订单id删除 用户订单审批日志表(OrderAuditLog)实体类  
209 - *  
210 - * @param orderId  
211 - * @return  
212 - */  
213 - @Override  
214 - public boolean deleteByOrderId(Long orderId) {  
215 - LambdaUpdateWrapper<OrderAuditLogDO> updateWrapper = new LambdaUpdateWrapper<OrderAuditLogDO>()  
216 - .eq(OrderAuditLogDO::getOrderId, orderId)  
217 - .set(OrderAuditLogDO::getEnableFlag, Constant.UNABLE_TWENTY);  
218 - return update(updateWrapper);  
219 - }  
220 -  
221 - @Override  
222 - public boolean deleteByOrderIds(List<Long> orderIds) {  
223 - LambdaUpdateWrapper<OrderAuditLogDO> updateWrapper = new LambdaUpdateWrapper<OrderAuditLogDO>()  
224 - .in(OrderAuditLogDO::getOrderId, orderIds)  
225 - .set(OrderAuditLogDO::getEnableFlag, Constant.UNABLE_TWENTY);  
226 - return update(updateWrapper);  
227 - }  
228 -}  
src/main/java/com/order/erp/service/order/impl/OrderBaseInfoServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import cn.hutool.core.collection.CollectionUtil;  
6 -import com.alibaba.fastjson.JSONObject;  
7 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
8 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
9 -import com.baomidou.mybatisplus.core.metadata.IPage;  
10 -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;  
11 -import com.baomidou.mybatisplus.core.toolkit.StringUtils;  
12 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
13 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
14 -import com.github.stupdit1t.excel.common.PoiWorkbookType;  
15 -import com.github.stupdit1t.excel.core.ExcelHelper;  
16 -import com.github.stupdit1t.excel.style.CellPosition;  
17 -import com.order.erp.common.constant.Constant;  
18 -import com.order.erp.common.constant.ServerResult;  
19 -import com.order.erp.common.constant.ServerResultCode;  
20 -import com.order.erp.common.excel4j.exceptions.Excel4JException;  
21 -import com.order.erp.common.exception.BusinessException;  
22 -import com.order.erp.common.utils.DateUtils;  
23 -import com.order.erp.common.utils.FileUtil;  
24 -import com.order.erp.common.utils.OrderFieldUtils;  
25 -import com.order.erp.common.utils.ProfitUtils;  
26 -import com.order.erp.config.DataScope;  
27 -import com.order.erp.domain.*;  
28 -import com.order.erp.domain.dto.BaseDO;  
29 -import com.order.erp.domain.dto.SystemSettingDO;  
30 -import com.order.erp.domain.dto.admin.AdminUserDO;  
31 -import com.order.erp.domain.dto.order.*;  
32 -import com.order.erp.domain.vo.order.*;  
33 -import com.order.erp.mapper.order.OrderBaseInfoMapper;  
34 -import com.order.erp.service.SystemSettingService;  
35 -import com.order.erp.service.admin.AdminUserService;  
36 -import com.order.erp.service.order.*;  
37 -import lombok.extern.slf4j.Slf4j;  
38 -import org.joda.time.DateTime;  
39 -import org.springframework.beans.BeanUtils;  
40 -import org.springframework.beans.factory.annotation.Value;  
41 -import org.springframework.stereotype.Service;  
42 -import org.springframework.transaction.annotation.Transactional;  
43 -  
44 -import javax.annotation.Resource;  
45 -import javax.servlet.http.HttpServletResponse;  
46 -import java.io.IOException;  
47 -import java.io.InputStream;  
48 -import java.math.BigDecimal;  
49 -import java.math.RoundingMode;  
50 -import java.net.URL;  
51 -import java.util.*;  
52 -import java.util.function.Function;  
53 -import java.util.stream.Collectors;  
54 -  
55 -/**  
56 - * 订单基础信息表(OrderBaseInfo)表服务实现类  
57 - *  
58 - * @author makejava  
59 - * @since 2023-09-08 15:26:43  
60 - */  
61 -@Slf4j  
62 -@Service  
63 -public class OrderBaseInfoServiceImpl extends ServiceImpl<OrderBaseInfoMapper, OrderBaseInfoDO> implements OrderBaseInfoService {  
64 -  
65 - @Value("${file.path}")  
66 - private String path;  
67 -  
68 - @Value("${file.host}")  
69 - private String host;  
70 -  
71 - @Resource  
72 - private OrderProfitAnalysisService profitAnalysisService;  
73 -  
74 - @Resource  
75 - private OrderCompletionReportService reportService;  
76 -  
77 - @Resource  
78 - private OrderTrackStageService trackStageService;  
79 -  
80 - @Resource  
81 - private OrderInspectionStageService inspectionStageService;  
82 -  
83 - @Resource  
84 - private OrderFieldLockRecordService fieldLockRecordService;  
85 -  
86 - @Resource  
87 - private OrderFieldLockApplyService orderFieldLockApplyService;  
88 -  
89 - @Resource  
90 - private OrderAuditLogService orderAuditLogService;  
91 -  
92 - @Resource  
93 - private OrderCompletionReportService orderCompletionReportService;  
94 -  
95 - @Resource  
96 - private OrderInspectionStageService orderInspectionStageService;  
97 -  
98 - @Resource  
99 - private OrderOptLogService orderOptLogService;  
100 -  
101 - @Resource  
102 - private OrderFieldLockRecordService orderFieldLockRecordService;  
103 -  
104 - @Resource  
105 - private DataScope dataScope;  
106 -  
107 - @Resource  
108 - private AdminUserService userService;  
109 -  
110 - @Resource  
111 - private SystemSettingService systemSettingService;  
112 -  
113 - /**  
114 - * 通过ID查询单条数据  
115 - * <p>  
116 - * orderBaseInfoQueryVO 主键  
117 - *  
118 - * @return 实例对象  
119 - */  
120 - @Override  
121 - public ServerResult queryById(OrderBaseInfoQueryVO orderBaseInfoQueryVO) {  
122 - if (Objects.isNull(orderBaseInfoQueryVO.getId())) {  
123 - return ServerResult.fail("id 不能为空");  
124 - }  
125 - OrderBaseInfoDO OrderBaseInfoDo = getById(orderBaseInfoQueryVO.getId());  
126 - if (Objects.isNull(OrderBaseInfoDo)) {  
127 - return ServerResult.success(null);  
128 - }  
129 - return ServerResult.success(BeanUtil.copyProperties(OrderBaseInfoDo, OrderBaseInfoVO.class));  
130 - }  
131 -  
132 - /**  
133 - * 分页查询  
134 - *  
135 - * @param orderBaseInfoQueryVO 筛选条件  
136 - * @return 查询结果  
137 - */  
138 - @Override  
139 - public ServerResult list(OrderBaseInfoQueryVO orderBaseInfoQueryVO) {  
140 -  
141 - return ServerResult.success();  
142 - }  
143 -  
144 - @Override  
145 - public ServerResult check(OrderBaseInfoQueryVO orderBaseInfoQueryVO) {  
146 - List<OrderBaseInfoDO> orderBaseInfoDOS = list(new LambdaQueryWrapper<OrderBaseInfoDO>()  
147 - .in(CollectionUtils.isNotEmpty(orderBaseInfoQueryVO.getInnerNo()), OrderBaseInfoDO::getInnerNo, orderBaseInfoQueryVO.getInnerNo())  
148 - .in(CollectionUtils.isNotEmpty(orderBaseInfoQueryVO.getCustomerStyle()), OrderBaseInfoDO::getCustomerStyle, orderBaseInfoQueryVO.getCustomerStyle()));  
149 - if (CollectionUtils.isNotEmpty(orderBaseInfoDOS)) {  
150 - throw new BusinessException("款式重复,是否继续");  
151 - }  
152 - return ServerResult.success();  
153 - }  
154 -  
155 - @Override  
156 - public ServerResult listByPage(OrderBaseInfoQueryVO queryVO) {  
157 - LambdaQueryWrapper<OrderBaseInfoDO> queryWrapper = buildQueryByParam(queryVO);  
158 - Page page = new Page<>(queryVO.getPage(), queryVO.getPageSize());  
159 - IPage<OrderBaseInfoDO> iPage = page(page, queryWrapper);  
160 -  
161 - Page<OrderInfoResultVO> webVOPage = new Page<>();  
162 - List<OrderBaseInfoDO> orderBaseInfoDOList = iPage.getRecords();  
163 - webVOPage.setRecords(wrapperOrderResultList(true, orderBaseInfoDOList));  
164 - BeanUtils.copyProperties(page, webVOPage, "records");  
165 - return ServerResult.success(webVOPage);  
166 - }  
167 -  
168 - /**  
169 - * @param orderBaseInfoDOList  
170 - * @return  
171 - */  
172 - @Override  
173 - public List<OrderInfoResultVO> wrapperOrderResultList(Boolean locked, List<OrderBaseInfoDO> orderBaseInfoDOList) {  
174 - List<OrderInfoResultVO> resultVOList = new ArrayList<>();  
175 - if (CollectionUtils.isNotEmpty(orderBaseInfoDOList)) {  
176 - resultVOList = orderBaseInfoDOList.stream().map(x -> {  
177 - OrderInfoResultVO resultVO = new OrderInfoResultVO();  
178 - BeanUtils.copyProperties(x, resultVO);  
179 - return resultVO;  
180 - }).collect(Collectors.toList());  
181 -  
182 - // 填充利润分析  
183 - fillProfitAnalysisInfo(resultVOList);  
184 -  
185 - // 填充项目报告  
186 - fillReportInfo(resultVOList);  
187 -  
188 - // 填充跟单信息  
189 - fillTrackStageInfo(resultVOList);  
190 -  
191 - // 填充质检信息  
192 - fillInspectionStageInfo(resultVOList);  
193 -  
194 - if (locked) {  
195 - // 填充字段锁定信息  
196 - fillLockFields(resultVOList);  
197 - // 查询是否编辑未生效字段  
198 - fillOrderUpdateInfos(resultVOList);  
199 - }  
200 -  
201 - // 填充进度  
202 - fillSchedules(resultVOList);  
203 -  
204 - }  
205 - return resultVOList;  
206 - }  
207 -  
208 - @Override  
209 - public void export(HttpServletResponse response, OrderBaseInfoQueryVO queryVO) throws IOException, Excel4JException {  
210 - OrderLockFieldVO lockFieldVO = queryVO.getFieldVO();  
211 - if (Objects.isNull(lockFieldVO)) {  
212 - throw new BusinessException("请选择要导出的列!");  
213 - }  
214 - List<OrderBaseInfoDO> orderBaseInfoDOList = new ArrayList<>();  
215 - if (!Objects.isNull(queryVO.getFieldVO()) && !CollectionUtils.isEmpty(queryVO.getFieldVO().getOrderIds())) {  
216 - orderBaseInfoDOList = listByIds(queryVO.getFieldVO().getOrderIds());  
217 - } else {  
218 - LambdaQueryWrapper<OrderBaseInfoDO> queryWrapper = buildQueryByParam(queryVO);  
219 - orderBaseInfoDOList = list(queryWrapper);  
220 - }  
221 -  
222 - if (CollectionUtils.isNotEmpty(orderBaseInfoDOList)) {  
223 - List<OrderInfoResultVO> resultVOList = orderBaseInfoDOList.stream().map(x -> {  
224 - OrderInfoResultVO resultVO = new OrderInfoResultVO();  
225 - BeanUtils.copyProperties(x, resultVO);  
226 - return resultVO;  
227 - }).collect(Collectors.toList());  
228 -  
229 -  
230 - if (Objects.nonNull(lockFieldVO.getProfitAnalysisFields())) {  
231 - // 填充利润分析  
232 - fillProfitAnalysisInfo(resultVOList);  
233 - }  
234 -  
235 - if (Objects.nonNull(lockFieldVO.getReportFields())) {  
236 - // 填充项目报告  
237 - fillReportInfo(resultVOList);  
238 - }  
239 -  
240 - if (Objects.nonNull(lockFieldVO.getTrackStageFields())) {  
241 - // 填充跟单信息  
242 - fillTrackStageInfo(resultVOList);  
243 - }  
244 -  
245 - if (Objects.nonNull(lockFieldVO.getInspectionStageFields())) {  
246 - // 填充质检信息  
247 - fillInspectionStageInfo(resultVOList);  
248 - }  
249 -  
250 - if (CollectionUtils.isNotEmpty(resultVOList)) {  
251 - List<Map<String, Object>> list = buildExportMapVOS(resultVOList, lockFieldVO);  
252 - if (CollectionUtils.isNotEmpty(list)) {  
253 - List<String> keys = new ArrayList<>(list.get(Constant.ZERO).keySet());  
254 -  
255 - ExcelHelper.opsExport(PoiWorkbookType.XLSX)  
256 - .opsSheet(list)  
257 - .opsHeader().simple().texts(keys).done()  
258 - .opsColumn().fields(keys).done()  
259 - .height(CellPosition.CELL, 750)  
260 - .done()  
261 - .export(response.getOutputStream());  
262 - }  
263 - }  
264 - }  
265 - }  
266 -  
267 - /**  
268 - * @param resultVOList  
269 - * @param lockFieldVO  
270 - * @return  
271 - */  
272 - private List<Map<String, Object>> buildExportMapVOS(List<OrderInfoResultVO> resultVOList, OrderLockFieldVO lockFieldVO) throws IOException {  
273 - List<Map<String, Object>> list = new ArrayList<>();  
274 - for (OrderInfoResultVO orderInfoResultVO : resultVOList) {  
275 - Map<String, Object> map = new LinkedHashMap<>();  
276 - OrderBaseFieldVO baseFields = lockFieldVO.getBaseFields();  
277 - OrderProfitAnalysisFieldVO profitAnalysisFields = lockFieldVO.getProfitAnalysisFields();  
278 - OrderCompletionReportFieldVO reportFields = lockFieldVO.getReportFields();  
279 - OrderTrackStageFieldVO trackStageFields = lockFieldVO.getTrackStageFields();  
280 - OrderInspectionStageFieldVO inspectionStageFields = lockFieldVO.getInspectionStageFields();  
281 - if (Objects.nonNull(baseFields)) {  
282 - if (StringUtils.isNotBlank(baseFields.getCustomerCode()) &&  
283 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getCustomerCode())) {  
284 - map.put("客户编码", orderInfoResultVO.getCustomerCode());  
285 - }  
286 - if (StringUtils.isNotBlank(baseFields.getProjectNo()) &&  
287 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getProjectNo())) {  
288 - map.put("项目号", orderInfoResultVO.getProjectNo());  
289 - }  
290 - if (StringUtils.isNotBlank(baseFields.getProductionDepartment()) &&  
291 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getProductionDepartment())) {  
292 - map.put("生产科", orderInfoResultVO.getProductionDepartment());  
293 - }  
294 - if (StringUtils.isNotBlank(baseFields.getInnerNo()) &&  
295 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getInnerNo())) {  
296 - map.put("内部编号", orderInfoResultVO.getInnerNo());  
297 - }  
298 - if (StringUtils.isNotBlank(baseFields.getCustomerPo()) &&  
299 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getCustomerPo())) {  
300 - map.put("客户po号", orderInfoResultVO.getCustomerPo());  
301 - }  
302 - if (StringUtils.isNotBlank(baseFields.getCustomerStyle()) &&  
303 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getCustomerStyle())) {  
304 - map.put("客户STYLE#", orderInfoResultVO.getCustomerStyle());  
305 - }  
306 - if (StringUtils.isNotBlank(baseFields.getModeleLo()) &&  
307 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getModeleLo())) {  
308 - map.put("Modelo(REFERENCE)", orderInfoResultVO.getModeleLo());  
309 - }  
310 - if (StringUtils.isNotBlank(baseFields.getCollection()) &&  
311 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getCollection())) {  
312 - map.put("COLLECTION (style description)", orderInfoResultVO.getCollection());  
313 - }  
314 - if (StringUtils.isNotBlank(baseFields.getPoColor()) &&  
315 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getPoColor())) {  
316 - map.put("PO COLOR", orderInfoResultVO.getPoColor());  
317 - }  
318 - if (StringUtils.isNotBlank(baseFields.getPicUrl()) &&  
319 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getPicUrl())) {  
320 - if (StringUtils.isNotBlank(orderInfoResultVO.getSmallPicUrl())) {  
321 - URL url = new URL(orderInfoResultVO.getSmallPicUrl());  
322 - InputStream inputStream = url.openStream();  
323 - map.put("订单图片", FileUtil.imageParseBytes(inputStream));  
324 - } else {  
325 - map.put("订单图片", "");  
326 - }  
327 - }  
328 - if (StringUtils.isNotBlank(baseFields.getCnColor()) &&  
329 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getCnColor())) {  
330 - map.put("颜色中文", orderInfoResultVO.getCnColor());  
331 - }  
332 - if (StringUtils.isNotBlank(baseFields.getProductionComment()) &&  
333 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getProductionComment())) {  
334 - map.put("生产要求", orderInfoResultVO.getProductionComment());  
335 - }  
336 - if (StringUtils.isNotBlank(baseFields.getOrderCount()) &&  
337 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getOrderCount())) {  
338 - map.put("数量", orderInfoResultVO.getOrderCount());  
339 - }  
340 - if (StringUtils.isNotBlank(baseFields.getOrderComposition()) &&  
341 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getOrderComposition())) {  
342 - map.put("订单成分", orderInfoResultVO.getOrderComposition());  
343 - }  
344 - if (StringUtils.isNotBlank(baseFields.getProductStyle()) &&  
345 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getProductStyle())) {  
346 - map.put("款式类型", orderInfoResultVO.getProductStyle());  
347 - }  
348 - if (StringUtils.isNotBlank(baseFields.getProductionDepartmentConsignTime()) &&  
349 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getProductionDepartmentConsignTime())) {  
350 - try {  
351 - map.put("生产科拖货时间", StringUtils.isBlank(orderInfoResultVO.getProductionDepartmentConsignTime()) ?  
352 - orderInfoResultVO.getProductionDepartmentConsignTime() :  
353 - DateUtils.format(DateUtils.parseDate(orderInfoResultVO.getProductionDepartmentConsignTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
354 - } catch (Exception e) {  
355 - map.put("生产科拖货时间", orderInfoResultVO.getProductionDepartmentConsignTime());  
356 - }  
357 - }  
358 - if (StringUtils.isNotBlank(baseFields.getOrderHodTime()) &&  
359 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getOrderHodTime())) {  
360 - try {  
361 - map.put("订单上HOD时间", StringUtils.isBlank(orderInfoResultVO.getOrderHodTime()) ?  
362 - orderInfoResultVO.getOrderHodTime() :  
363 - DateUtils.format(DateUtils.parseDate(orderInfoResultVO.getOrderHodTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
364 - } catch (Exception e) {  
365 - map.put("订单上HOD时间", orderInfoResultVO.getOrderHodTime());  
366 - }  
367 - }  
368 - if (StringUtils.isNotBlank(baseFields.getOutboundType()) &&  
369 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getOutboundType())) {  
370 - map.put("出库类型", orderInfoResultVO.getOutboundType());  
371 - }  
372 - if (StringUtils.isNotBlank(baseFields.getPacketType()) &&  
373 - OrderLockFieldEnum.SELECTED.getStatus().equals(baseFields.getPacketType())) {  
374 - map.put("包装类型", orderInfoResultVO.getPacketType());  
375 - }  
376 - }  
377 - OrderProfitAnalysisVO profitAnalysisVO = Objects.nonNull(orderInfoResultVO.getProfitAnalysisInfo()) ?  
378 - orderInfoResultVO.getProfitAnalysisInfo() : new OrderProfitAnalysisVO();  
379 - if (Objects.nonNull(profitAnalysisFields)) {  
380 - if (StringUtils.isNotBlank(profitAnalysisFields.getCustomerPrice()) &&  
381 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getCustomerPrice())) {  
382 - map.put("客户单价$", profitAnalysisVO.getCustomerPrice());  
383 - }  
384 - if (StringUtils.isNotBlank(profitAnalysisFields.getCustomerTotalPrice()) &&  
385 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getCustomerTotalPrice())) {  
386 - map.put("客户总价$", profitAnalysisVO.getCustomerTotalPrice());  
387 - }  
388 - if (StringUtils.isNotBlank(profitAnalysisFields.getCustomerRmbPrice()) &&  
389 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getCustomerRmbPrice())) {  
390 - map.put("客户单价¥", profitAnalysisVO.getCustomerRmbPrice());  
391 - }  
392 - if (StringUtils.isNotBlank(profitAnalysisFields.getCustomerRmbTotalPrice()) &&  
393 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getCustomerRmbTotalPrice())) {  
394 - map.put("客户总价¥", profitAnalysisVO.getCustomerRmbTotalPrice());  
395 - }  
396 - if (StringUtils.isNotBlank(profitAnalysisFields.getProductionDepartmentPrice()) &&  
397 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getProductionDepartmentPrice())) {  
398 - map.put("生产科单价¥", profitAnalysisVO.getProductionDepartmentPrice());  
399 - }  
400 - if (StringUtils.isNotBlank(profitAnalysisFields.getProductionDepartmentTotalPrice()) &&  
401 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getProductionDepartmentTotalPrice())) {  
402 - map.put("生产科总价¥", profitAnalysisVO.getProductionDepartmentTotalPrice());  
403 - }  
404 - if (StringUtils.isNotBlank(profitAnalysisFields.getPacketPrice()) &&  
405 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getPacketPrice())) {  
406 - map.put("包装费用$", profitAnalysisVO.getPacketPrice());  
407 - }  
408 - if (StringUtils.isNotBlank(profitAnalysisFields.getPacketTotalPrice()) &&  
409 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getPacketTotalPrice())) {  
410 - map.put("包装费用合计$", profitAnalysisVO.getPacketTotalPrice());  
411 - }  
412 - if (StringUtils.isNotBlank(profitAnalysisFields.getExchangeRate()) &&  
413 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getExchangeRate())) {  
414 - map.put("汇率", profitAnalysisVO.getExchangeRate());  
415 - }  
416 - if (StringUtils.isNotBlank(profitAnalysisFields.getProfitRate()) &&  
417 - OrderLockFieldEnum.SELECTED.getStatus().equals(profitAnalysisFields.getProfitRate())) {  
418 - map.put("利润率", profitAnalysisVO.getProfitRate());  
419 - }  
420 - }  
421 - OrderCompletionReportVO reportInfo = Objects.nonNull(orderInfoResultVO.getReportInfo()) ?  
422 - orderInfoResultVO.getReportInfo() : new OrderCompletionReportVO();  
423 - if (Objects.nonNull(reportFields) && Objects.nonNull(reportInfo)) {  
424 - if (StringUtils.isNotBlank(reportFields.getIdeaSource()) &&  
425 - OrderLockFieldEnum.SELECTED.getStatus().equals(reportFields.getIdeaSource())) {  
426 - map.put("想法来源", reportInfo.getIdeaSource());  
427 - }  
428 - if (StringUtils.isNotBlank(reportFields.getIdeaSourceRate()) &&  
429 - OrderLockFieldEnum.SELECTED.getStatus().equals(reportFields.getIdeaSourceRate())) {  
430 - map.put("想法来源占比", reportInfo.getIdeaSourceRate());  
431 - }  
432 - if (StringUtils.isNotBlank(reportFields.getManualPreform1()) &&  
433 - OrderLockFieldEnum.SELECTED.getStatus().equals(reportFields.getManualPreform1())) {  
434 - map.put("手工初型1", reportInfo.getManualPreform1());  
435 - }  
436 - if (StringUtils.isNotBlank(reportFields.getManualPreform1Rate()) &&  
437 - OrderLockFieldEnum.SELECTED.getStatus().equals(reportFields.getManualPreform1Rate())) {  
438 - map.put("手工初型1占比", reportInfo.getManualPreform1Rate());  
439 - }  
440 - if (StringUtils.isNotBlank(reportFields.getManualPreform2()) &&  
441 - OrderLockFieldEnum.SELECTED.getStatus().equals(reportFields.getManualPreform2())) {  
442 - map.put("手工初型2", reportInfo.getManualPreform2());  
443 - }  
444 - if (StringUtils.isNotBlank(reportFields.getManualPreform2Rate()) &&  
445 - OrderLockFieldEnum.SELECTED.getStatus().equals(reportFields.getManualPreform2Rate())) {  
446 - map.put("手工初型2占比", reportInfo.getManualPreform2Rate());  
447 - }  
448 -  
449 - }  
450 - OrderTrackStageVO trackStageInfo = Objects.nonNull(orderInfoResultVO.getTrackStageInfo()) ?  
451 - orderInfoResultVO.getTrackStageInfo() : new OrderTrackStageVO();  
452 - if (Objects.nonNull(trackStageFields) && Objects.nonNull(trackStageInfo)) {  
453 - if (StringUtils.isNotBlank(trackStageFields.getPpTime()) &&  
454 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getPpTime())) {  
455 - try {  
456 - map.put("pp date", StringUtils.isBlank(trackStageInfo.getPpTime()) ?  
457 - trackStageInfo.getPpTime() :  
458 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getPpTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
459 - } catch (Exception e) {  
460 - map.put("pp date", trackStageInfo.getPpTime());  
461 - }  
462 - }  
463 - if (StringUtils.isNotBlank(trackStageFields.getPpConfirmResult()) &&  
464 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getPpConfirmResult())) {  
465 - map.put("pp样品确认意见", trackStageInfo.getPpConfirmResult());  
466 - }  
467 - if (StringUtils.isNotBlank(trackStageFields.getEsoSampleSendTime()) &&  
468 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getEsoSampleSendTime())) {  
469 - try {  
470 - map.put("EXTRA,SHOWROOM,ONLINE sample发送时间", StringUtils.isBlank(trackStageInfo.getEsoSampleSendTime()) ?  
471 - trackStageInfo.getEsoSampleSendTime() :  
472 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getEsoSampleSendTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
473 - } catch (Exception e) {  
474 - map.put("EXTRA,SHOWROOM,ONLINE sample发送时间", trackStageInfo.getEsoSampleSendTime());  
475 - }  
476 - }  
477 - if (StringUtils.isNotBlank(trackStageFields.getShippmentSampleSendTime()) &&  
478 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getShippmentSampleSendTime())) {  
479 - try {  
480 - map.put("shippment sample 发送时间", StringUtils.isBlank(trackStageInfo.getShippmentSampleSendTime()) ?  
481 - trackStageInfo.getShippmentSampleSendTime() :  
482 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getShippmentSampleSendTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
483 -  
484 - } catch (Exception e) {  
485 - map.put("shippment sample 发送时间", trackStageInfo.getShippmentSampleSendTime());  
486 -  
487 - }  
488 - }  
489 - if (StringUtils.isNotBlank(trackStageFields.getShippmentSampleConfirmResult()) &&  
490 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getShippmentSampleConfirmResult())) {  
491 - map.put("shipment sample确认意见", trackStageInfo.getShippmentSampleConfirmResult());  
492 - }  
493 - if (StringUtils.isNotBlank(trackStageFields.getSelfTestPassTime()) &&  
494 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getSelfTestPassTime())) {  
495 - try {  
496 - map.put("自测通过时间", StringUtils.isBlank(trackStageInfo.getSelfTestPassTime()) ?  
497 - trackStageInfo.getSelfTestPassTime() :  
498 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getSelfTestPassTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
499 - } catch (Exception e) {  
500 - map.put("自测通过时间", trackStageInfo.getSelfTestPassTime());  
501 - }  
502 - }  
503 - if (StringUtils.isNotBlank(trackStageFields.getAitexTestSendTime()) &&  
504 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getAitexTestSendTime())) {  
505 - try {  
506 - map.put("Aitex测试发送时间", StringUtils.isBlank(trackStageInfo.getAitexTestSendTime()) ?  
507 - trackStageInfo.getAitexTestSendTime() :  
508 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getAitexTestSendTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
509 - } catch (Exception e) {  
510 - map.put("Aitex测试发送时间", trackStageInfo.getAitexTestSendTime());  
511 - }  
512 - }  
513 - if (StringUtils.isNotBlank(trackStageFields.getAitexTestFinishResult()) &&  
514 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getAitexTestFinishResult())) {  
515 - map.put("Aitex测试结果", trackStageInfo.getAitexTestFinishResult());  
516 - }  
517 - if (StringUtils.isNotBlank(trackStageFields.getSgsTestSendTime()) &&  
518 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getSgsTestSendTime())) {  
519 - try {  
520 - map.put("SGS测试发送时间", StringUtils.isBlank(trackStageInfo.getSgsTestSendTime()) ?  
521 - trackStageInfo.getSgsTestSendTime() :  
522 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getSgsTestSendTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
523 - } catch (Exception e) {  
524 - map.put("SGS测试发送时间", trackStageInfo.getSgsTestSendTime());  
525 - }  
526 - }  
527 - if (StringUtils.isNotBlank(trackStageFields.getSgsTestFinishResult()) &&  
528 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getSgsTestFinishResult())) {  
529 - map.put("SGS测试结果", trackStageInfo.getSgsTestFinishResult());  
530 - }  
531 - if (StringUtils.isNotBlank(trackStageFields.getBarcodeStickerArrivalTime()) &&  
532 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getBarcodeStickerArrivalTime())) {  
533 - try {  
534 - map.put("Barcode sticker arrival time", StringUtils.isBlank(trackStageInfo.getBarcodeStickerArrivalTime()) ?  
535 - trackStageInfo.getBarcodeStickerArrivalTime() :  
536 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getBarcodeStickerArrivalTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
537 - } catch (Exception e) {  
538 - map.put("Barcode sticker arrival time", trackStageInfo.getBarcodeStickerArrivalTime());  
539 - }  
540 - }  
541 - if (StringUtils.isNotBlank(trackStageFields.getLatestArrivalTime()) &&  
542 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getLatestArrivalTime())) {  
543 - try {  
544 - map.put("最晚包材到货时间", StringUtils.isBlank(trackStageInfo.getLatestArrivalTime()) ?  
545 - trackStageInfo.getLatestArrivalTime() :  
546 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getLatestArrivalTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
547 - } catch (Exception e) {  
548 - map.put("最晚包材到货时间", trackStageInfo.getLatestArrivalTime());  
549 - }  
550 - }  
551 - if (StringUtils.isNotBlank(trackStageFields.getLatestBkTime()) &&  
552 - OrderLockFieldEnum.SELECTED.getStatus().equals(trackStageFields.getLatestBkTime())) {  
553 - try {  
554 - map.put("最晚订舱+报关资料时间", StringUtils.isBlank(trackStageInfo.getLatestBkTime()) ?  
555 - trackStageInfo.getLatestBkTime() :  
556 - DateUtils.format(DateUtils.parseDate(trackStageInfo.getLatestBkTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
557 - } catch (Exception e) {  
558 - map.put("最晚订舱+报关资料时间", trackStageInfo.getLatestBkTime());  
559 -  
560 - }  
561 - }  
562 - }  
563 - OrderInspectionStageVO inspectionStageInfo = Objects.nonNull(orderInfoResultVO.getInspectionStageInfo()) ?  
564 - orderInfoResultVO.getInspectionStageInfo() : new OrderInspectionStageVO();  
565 - if (Objects.nonNull(inspectionStageFields) && Objects.nonNull(inspectionStageInfo)) {  
566 - if (StringUtils.isNotBlank(inspectionStageFields.getMidCheckApplyTime()) &&  
567 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getMidCheckApplyTime())) {  
568 - try {  
569 - map.put("中期验货申请时间", StringUtils.isBlank(inspectionStageInfo.getMidCheckApplyTime()) ?  
570 - inspectionStageInfo.getMidCheckApplyTime() :  
571 - DateUtils.format(DateUtils.parseDate(inspectionStageInfo.getMidCheckApplyTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
572 - } catch (Exception e) {  
573 - map.put("中期验货申请时间", inspectionStageInfo.getMidCheckApplyTime());  
574 - }  
575 - }  
576 - if (StringUtils.isNotBlank(inspectionStageFields.getMidCheckComment()) &&  
577 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getMidCheckComment())) {  
578 - map.put("中期验货(功能性-拉力/跌落等、外观性-颜色/规格等、耐久性-烤厅等)", inspectionStageInfo.getMidCheckComment());  
579 - }  
580 - if (StringUtils.isNotBlank(inspectionStageFields.getMidCheckResult()) &&  
581 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getMidCheckResult())) {  
582 - map.put("中期验货结果PASS / FAIL", inspectionStageInfo.getMidCheckResult());  
583 - }  
584 - if (StringUtils.isNotBlank(inspectionStageFields.getEndCheckApplyTime()) &&  
585 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getEndCheckApplyTime())) {  
586 - try {  
587 - map.put("尾期验货申请时间", StringUtils.isBlank(inspectionStageInfo.getEndCheckApplyTime()) ?  
588 - inspectionStageInfo.getEndCheckApplyTime() :  
589 - DateUtils.format(DateUtils.parseDate(inspectionStageInfo.getEndCheckApplyTime(), DateUtils.DATE_TIME), DateUtils.DATE));  
590 - } catch (Exception e) {  
591 - map.put("尾期验货申请时间", inspectionStageInfo.getEndCheckApplyTime());  
592 - }  
593 - }  
594 - if (StringUtils.isNotBlank(inspectionStageFields.getSpecification()) &&  
595 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getSpecification())) {  
596 - map.put("长度/规格", inspectionStageInfo.getSpecification());  
597 - }  
598 - if (StringUtils.isNotBlank(inspectionStageFields.getFunctionality()) &&  
599 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getFunctionality())) {  
600 - map.put("功能性不良", inspectionStageInfo.getFunctionality());  
601 - }  
602 - if (StringUtils.isNotBlank(inspectionStageFields.getElectroplate()) &&  
603 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getElectroplate())) {  
604 - map.put("电镀不良", inspectionStageInfo.getElectroplate());  
605 - }  
606 - if (StringUtils.isNotBlank(inspectionStageFields.getValue1()) &&  
607 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getValue1())) {  
608 - map.put("不良1", inspectionStageInfo.getValue1());  
609 - }  
610 - if (StringUtils.isNotBlank(inspectionStageFields.getValue2()) &&  
611 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getValue2())) {  
612 - map.put("不良2", inspectionStageInfo.getValue2());  
613 - }  
614 - if (StringUtils.isNotBlank(inspectionStageFields.getValue3()) &&  
615 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getValue3())) {  
616 - map.put("不良3", inspectionStageInfo.getValue3());  
617 - }  
618 - if (StringUtils.isNotBlank(inspectionStageFields.getBoxPacket()) &&  
619 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getBoxPacket())) {  
620 - map.put("包装:卡片、条码、箱贴,箱单", inspectionStageInfo.getBoxPacket());  
621 - }  
622 - if (StringUtils.isNotBlank(inspectionStageFields.getEndCheckResult()) &&  
623 - OrderLockFieldEnum.SELECTED.getStatus().equals(inspectionStageFields.getEndCheckResult())) {  
624 - map.put("尾期验货结果PASS / FAIL", inspectionStageInfo.getEndCheckResult());  
625 - }  
626 - }  
627 - list.add(map);  
628 - }  
629 -  
630 - return list;  
631 - }  
632 -  
633 - @Override  
634 - public ServerResult fieldUnlockApply(OrderUnlockFieldApplyVO fieldVO) {  
635 - Long userId = dataScope.getLoginUserId();  
636 - checkApply(fieldVO, userId);  
637 -  
638 - OrderFieldLockApplyDO applyDO = initOrderFieldLockApplyDO(fieldVO, userId);  
639 - List<OrderFieldLockApplyDO> applyDOList = OrderFieldUtils.initOrderFieldLockApplyDOS(fieldVO, userId);  
640 - if (CollectionUtils.isNotEmpty(applyDOList)) {  
641 - orderFieldLockApplyService.saveBatch(applyDOList);  
642 - }  
643 -  
644 - orderOptLogService.save(buildOrderOptLogDo(fieldVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_FIELD_UNLOCK_APPLY.getDesc(), applyDO.getFields()));  
645 - return ServerResult.success();  
646 - }  
647 -  
648 - /**  
649 - * @param fieldVO  
650 - * @param userId  
651 - */  
652 - private void checkApply(OrderUnlockFieldApplyVO fieldVO, Long userId) {  
653 - List<OrderFieldLockApplyDO> applyDOS = orderFieldLockApplyService.list(new LambdaQueryWrapper<OrderFieldLockApplyDO>()  
654 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
655 - .eq(OrderFieldLockApplyDO::getOrderId, fieldVO.getOrderId())  
656 - .eq(OrderFieldLockApplyDO::getApplyUserId, userId)  
657 - .eq(OrderFieldLockApplyDO::getType, ApplyTypeEnum.FIELD_EDIT_APPLY.getType())  
658 - .eq(OrderFieldLockApplyDO::getStatus, ApplyStatusEnum.WAIT_AUDIT.getStatus()));  
659 - if (CollectionUtils.isNotEmpty(applyDOS)) {  
660 - throw new BusinessException(ServerResultCode.APPLY_UNLOCK_FIELD_EXIST);  
661 - }  
662 - }  
663 -  
664 - /**  
665 - * @param orderId  
666 - * @param userId  
667 - */  
668 - private void checkApply(Long orderId, Long userId, ApplyTypeEnum applyTypeEnum) {  
669 - List<OrderFieldLockApplyDO> applyDOS = orderFieldLockApplyService.list(new LambdaQueryWrapper<OrderFieldLockApplyDO>()  
670 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
671 - .eq(OrderFieldLockApplyDO::getOrderId, orderId)  
672 - .eq(OrderFieldLockApplyDO::getApplyUserId, userId)  
673 - .eq(OrderFieldLockApplyDO::getType, applyTypeEnum.getType())  
674 - .eq(OrderFieldLockApplyDO::getStatus, ApplyStatusEnum.WAIT_AUDIT.getStatus()));  
675 - if (CollectionUtils.isNotEmpty(applyDOS)) {  
676 - throw new BusinessException(ServerResultCode.APPLY_UNLOCK_FIELD_EXIST);  
677 - }  
678 - }  
679 -  
680 -  
681 - /**  
682 - * @param fieldVO  
683 - * @param userId  
684 - * @return  
685 - */  
686 - private OrderFieldLockApplyDO initOrderFieldLockApplyDO(OrderUnlockFieldApplyVO fieldVO, Long userId) {  
687 - OrderLockFieldVO lockFieldVO = new OrderLockFieldVO();  
688 - BeanUtils.copyProperties(fieldVO, lockFieldVO);  
689 - return OrderFieldLockApplyDO.builder()  
690 - .applyUserId(userId)  
691 - .auditUserId(null)  
692 - .fields(JSONObject.toJSONString(lockFieldVO))  
693 - .orderId(fieldVO.getOrderId())  
694 - .type(ApplyTypeEnum.FIELD_EDIT_APPLY.getType())  
695 - .remark(ApplyTypeEnum.FIELD_EDIT_APPLY.getDesc())  
696 - .status(ApplyStatusEnum.WAIT_AUDIT.getStatus())  
697 - .build();  
698 - }  
699 -  
700 -  
701 - /**  
702 - * @param reportVO  
703 - * @param userId  
704 - * @return  
705 - */  
706 - private OrderFieldLockApplyDO buildReportFieldLockApplyDO(OrderCompletionReportVO reportVO, Long userId) {  
707 - OrderCompletionReportFieldVO reportFieldVO = report2reportField(reportVO);  
708 - return OrderFieldLockApplyDO.builder()  
709 - .applyUserId(userId)  
710 - .auditUserId(null)  
711 - .fields(JSONObject.toJSONString(reportFieldVO))  
712 - .auditRoleCodes(RoleEnum.ADMIN.getCode())  
713 - .orderId(reportFieldVO.getOrderId())  
714 - .type(ApplyTypeEnum.ORDER_REPORT_APPLY.getType())  
715 - .remark(ApplyTypeEnum.ORDER_REPORT_APPLY.getDesc())  
716 - .status(ApplyStatusEnum.WAIT_AUDIT.getStatus())  
717 - .build();  
718 - }  
719 -  
720 - /**  
721 - * @param reportVO  
722 - * @return  
723 - */  
724 - private OrderCompletionReportFieldVO report2reportField(OrderCompletionReportVO reportVO) {  
725 - return OrderCompletionReportFieldVO.builder()  
726 - .orderId(reportVO.getOrderId())  
727 - .ideaSourceRate(Objects.nonNull(reportVO.getIdeaSourceRate()) ? reportVO.getIdeaSourceRate().toString() : null)  
728 - .ideaSource(StringUtils.isNotBlank(reportVO.getIdeaSource()) ? reportVO.getIdeaSource() : null)  
729 - .manualPreform1(StringUtils.isNotBlank(reportVO.getManualPreform1()) ? reportVO.getManualPreform1() : null)  
730 - .manualPreform1Rate(Objects.nonNull(reportVO.getManualPreform1Rate()) ? reportVO.getManualPreform1Rate().toString() : null)  
731 - .manualPreform2(StringUtils.isNotBlank(reportVO.getManualPreform2()) ? reportVO.getManualPreform2() : null)  
732 - .manualPreform2Rate(Objects.nonNull(reportVO.getManualPreform2Rate()) ? reportVO.getManualPreform2Rate().toString() : null)  
733 - .build();  
734 - }  
735 -  
736 -  
737 - /**  
738 - * @param profitAnalysisFieldVO  
739 - * @param userId  
740 - * @return  
741 - */  
742 - private OrderFieldLockApplyDO buildProfitFieldLockApplyDO(OrderProfitAnalysisFieldVO profitAnalysisFieldVO, Long userId) {  
743 - return OrderFieldLockApplyDO.builder()  
744 - .applyUserId(userId)  
745 - .auditUserId(null)  
746 - .fields(JSONObject.toJSONString(profitAnalysisFieldVO))  
747 - .auditRoleCodes(RoleEnum.ADMIN.getCode())  
748 - .orderId(profitAnalysisFieldVO.getOrderId())  
749 - .type(ApplyTypeEnum.ORDER_PROFIT_APPLY.getType())  
750 - .remark(ApplyTypeEnum.ORDER_PROFIT_APPLY.getDesc())  
751 - .status(ApplyStatusEnum.WAIT_AUDIT.getStatus())  
752 - .build();  
753 - }  
754 -  
755 - /**  
756 - * @param profitAnalysisVO  
757 - * @return  
758 - */  
759 - private OrderProfitAnalysisFieldVO profitAnalysis2profitAnalysisField(OrderBaseInfoDO orderBaseInfoDO, OrderProfitAnalysisVO profitAnalysisVO) {  
760 - if (Objects.nonNull(profitAnalysisVO.getCustomerPrice())) {  
761 - profitAnalysisVO.setCustomerTotalPrice(profitAnalysisVO.getCustomerPrice() * orderBaseInfoDO.getOrderCount());  
762 - }  
763 - if (Objects.nonNull(profitAnalysisVO.getPacketPrice())) {  
764 - profitAnalysisVO.setPacketTotalPrice(profitAnalysisVO.getPacketPrice() * orderBaseInfoDO.getOrderCount());  
765 - }  
766 - if (Objects.nonNull(profitAnalysisVO.getProductionDepartmentPrice())) {  
767 - profitAnalysisVO.setProductionDepartmentTotalPrice(profitAnalysisVO.getProductionDepartmentPrice() * orderBaseInfoDO.getOrderCount());  
768 - }  
769 - Double profitRate = null;  
770 - if (Objects.nonNull(profitAnalysisVO.getCustomerTotalPrice())  
771 - && Objects.nonNull(profitAnalysisVO.getExchangeRate())  
772 - && Objects.nonNull(profitAnalysisVO.getPacketTotalPrice())  
773 - && Objects.nonNull(profitAnalysisVO.getProductionDepartmentTotalPrice())) {  
774 - profitRate = ProfitUtils.calculateProfitRate(ProfitCalculateVO.builder()  
775 - .profitType(StringUtils.isBlank(profitAnalysisVO.getProfitType()) ? Constant.ZERO : Integer.parseInt(profitAnalysisVO.getProfitType()))  
776 - .customerTotalPrice(profitAnalysisVO.getCustomerTotalPrice())  
777 - .exchangeRate(profitAnalysisVO.getExchangeRate())  
778 - .packetTotalPrice(profitAnalysisVO.getPacketTotalPrice())  
779 - .productionDepartmentTotalPrice(profitAnalysisVO.getProductionDepartmentTotalPrice()).build());  
780 - }  
781 - return OrderProfitAnalysisFieldVO.builder()  
782 - .orderId(profitAnalysisVO.getOrderId())  
783 - .profitType(StringUtils.isBlank(profitAnalysisVO.getProfitType()) ? Constant.STRING_ZERO : profitAnalysisVO.getProfitType())  
784 - .customerRmbPrice(Objects.nonNull(profitAnalysisVO.getCustomerRmbPrice()) ? profitAnalysisVO.getCustomerRmbPrice().toString() : null)  
785 - .customerRmbTotalPrice(Objects.nonNull(profitAnalysisVO.getCustomerRmbTotalPrice()) ? profitAnalysisVO.getCustomerRmbTotalPrice().toString() : null)  
786 - .customerPrice(Objects.nonNull(profitAnalysisVO.getCustomerPrice()) ? profitAnalysisVO.getCustomerPrice().toString() : null)  
787 - .customerTotalPrice(Objects.nonNull(profitAnalysisVO.getCustomerTotalPrice()) ? profitAnalysisVO.getCustomerTotalPrice().toString() : null)  
788 - .customerCurrency(profitAnalysisVO.getCustomerCurrency())  
789 - .packetPrice(Objects.nonNull(profitAnalysisVO.getPacketPrice()) ? profitAnalysisVO.getPacketPrice().toString() : null)  
790 - .packetTotalPrice(Objects.nonNull(profitAnalysisVO.getPacketTotalPrice()) ? profitAnalysisVO.getPacketTotalPrice().toString() : null)  
791 - .packetCurrency(profitAnalysisVO.getPacketCurrency())  
792 - .productionDepartmentPrice(Objects.nonNull(profitAnalysisVO.getProductionDepartmentPrice()) ? profitAnalysisVO.getProductionDepartmentPrice().toString() : null)  
793 - .productionDepartmentTotalPrice(Objects.nonNull(profitAnalysisVO.getProductionDepartmentTotalPrice()) ? profitAnalysisVO.getProductionDepartmentTotalPrice().toString() : null)  
794 - .productionDepartmentCurrency(profitAnalysisVO.getProductionDepartmentCurrency())  
795 - .exchangeRate(Objects.nonNull(profitAnalysisVO.getExchangeRate()) ? profitAnalysisVO.getExchangeRate().toString() : null)  
796 - .profitRate(Objects.nonNull(profitRate) ? profitRate.toString() : "0").build();  
797 - }  
798 -  
799 - /**  
800 - * @param orderInfoResultVOList  
801 - */  
802 - private void fillProfitAnalysisInfo(List<OrderInfoResultVO> orderInfoResultVOList) {  
803 - if (CollectionUtils.isEmpty(orderInfoResultVOList)) {  
804 - return;  
805 - }  
806 -  
807 - Set<Long> orderIds = orderInfoResultVOList.stream().map(OrderInfoResultVO::getId).collect(Collectors.toSet());  
808 - List<OrderProfitAnalysisDO> orderProfitAnalysisDOS = profitAnalysisService.list(new LambdaQueryWrapper<OrderProfitAnalysisDO>()  
809 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
810 - .in(OrderProfitAnalysisDO::getOrderId, orderIds));  
811 -  
812 - if (CollectionUtils.isNotEmpty(orderProfitAnalysisDOS)) {  
813 - Map<Long, OrderProfitAnalysisDO> profitAnalysisDOMap = orderProfitAnalysisDOS.stream().collect(Collectors.toMap(OrderProfitAnalysisDO::getOrderId, Function.identity(), (v1, v2) -> v1));  
814 - orderInfoResultVOList.forEach(result -> {  
815 - if (profitAnalysisDOMap.containsKey(result.getId())) {  
816 - OrderProfitAnalysisDO profitAnalysisDO = profitAnalysisDOMap.get(result.getId());  
817 - OrderProfitAnalysisVO profitAnalysisVO = new OrderProfitAnalysisVO();  
818 - BeanUtils.copyProperties(profitAnalysisDO, profitAnalysisVO);  
819 - profitAnalysisVO.setProfitType(String.valueOf(profitAnalysisDO.getProfitType()));  
820 - result.setProfitAnalysisInfo(profitAnalysisVO);  
821 - }  
822 - });  
823 - }  
824 -  
825 - }  
826 -  
827 - /**  
828 - * @param orderInfoResultVOList  
829 - */  
830 - private void fillReportInfo(List<OrderInfoResultVO> orderInfoResultVOList) {  
831 - if (CollectionUtils.isEmpty(orderInfoResultVOList)) {  
832 - return;  
833 - }  
834 -  
835 - Set<Long> orderIds = orderInfoResultVOList.stream().map(OrderInfoResultVO::getId).collect(Collectors.toSet());  
836 - List<OrderCompletionReportDO> orderCompletionReportDOS = reportService.list(new LambdaQueryWrapper<OrderCompletionReportDO>()  
837 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
838 - .in(OrderCompletionReportDO::getOrderId, orderIds));  
839 - if (CollectionUtils.isEmpty(orderCompletionReportDOS)) {  
840 - return;  
841 - }  
842 - Map<Long, OrderCompletionReportDO> completionReportDOMap = orderCompletionReportDOS.stream().collect(Collectors.toMap(OrderCompletionReportDO::getOrderId, Function.identity(), (v1, v2) -> v1));  
843 - orderInfoResultVOList.forEach(result -> {  
844 - if (completionReportDOMap.containsKey(result.getId())) {  
845 - OrderCompletionReportDO completionReportDO = completionReportDOMap.get(result.getId());  
846 - OrderCompletionReportVO completionReportVO = new OrderCompletionReportVO();  
847 - BeanUtils.copyProperties(completionReportDO, completionReportVO);  
848 - result.setReportInfo(completionReportVO);  
849 - }  
850 - });  
851 - }  
852 -  
853 - /**  
854 - * @param orderInfoResultVOList  
855 - */  
856 - private void fillTrackStageInfo(List<OrderInfoResultVO> orderInfoResultVOList) {  
857 - if (CollectionUtils.isEmpty(orderInfoResultVOList)) {  
858 - return;  
859 - }  
860 -  
861 - Set<Long> orderIds = orderInfoResultVOList.stream().map(OrderInfoResultVO::getId).collect(Collectors.toSet());  
862 - List<OrderTrackStageDO> trackStageDOS = trackStageService.list(new LambdaQueryWrapper<OrderTrackStageDO>()  
863 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
864 - .in(OrderTrackStageDO::getOrderId, orderIds));  
865 - if (CollectionUtils.isEmpty(trackStageDOS)) {  
866 - return;  
867 - }  
868 - Map<Long, OrderTrackStageDO> trackStageDOMap = trackStageDOS.stream().collect(Collectors.toMap(OrderTrackStageDO::getOrderId, Function.identity()));  
869 - orderInfoResultVOList.forEach(result -> {  
870 - if (trackStageDOMap.containsKey(result.getId())) {  
871 - OrderTrackStageDO trackStageDO = trackStageDOMap.get(result.getId());  
872 - OrderTrackStageVO trackStageVO = new OrderTrackStageVO();  
873 - BeanUtils.copyProperties(trackStageDO, trackStageVO);  
874 - result.setTrackStageInfo(trackStageVO);  
875 - }  
876 - });  
877 - }  
878 -  
879 - /**  
880 - * @param orderInfoResultVOList  
881 - */  
882 - private void fillSchedules(List<OrderInfoResultVO> orderInfoResultVOList) {  
883 - if (CollectionUtils.isEmpty(orderInfoResultVOList)) {  
884 - return;  
885 - }  
886 -  
887 - orderInfoResultVOList.forEach(x -> {  
888 - int i = 0;  
889 - if (isFillOrderBaseInfo(x)) {  
890 - i++;  
891 - }  
892 - if (isFillProfitInfo(x.getProfitAnalysisInfo())) {  
893 - i++;  
894 - }  
895 - if (isFillReportInfo(x.getReportInfo())) {  
896 - i++;  
897 - }  
898 - if (isFillTrackInfo(x.getTrackStageInfo())) {  
899 - i++;  
900 - }  
901 - if (isFillInspectionInfo(x.getInspectionStageInfo())) {  
902 - i++;  
903 - }  
904 - x.setSchedule(new BigDecimal(i).divide(new BigDecimal(Constant.FOUR)).doubleValue());  
905 - });  
906 - }  
907 -  
908 - /**  
909 - * @param inspectionStageInfo  
910 - * @return  
911 - */  
912 - private boolean isFillInspectionInfo(OrderInspectionStageVO inspectionStageInfo) {  
913 - if (Objects.isNull(inspectionStageInfo)) {  
914 - return false;  
915 - }  
916 - if (StringUtils.isBlank(inspectionStageInfo.getMidCheckApplyTime())) {  
917 - return false;  
918 - }  
919 - if (StringUtils.isBlank(inspectionStageInfo.getMidCheckComment())) {  
920 - return false;  
921 - }  
922 - if (StringUtils.isBlank(inspectionStageInfo.getMidCheckResult())) {  
923 - return false;  
924 - }  
925 - if (StringUtils.isBlank(inspectionStageInfo.getEndCheckApplyTime())) {  
926 - return false;  
927 - }  
928 - if (StringUtils.isBlank(inspectionStageInfo.getSpecification())) {  
929 - return false;  
930 - }  
931 - if (StringUtils.isBlank(inspectionStageInfo.getFunctionality())) {  
932 - return false;  
933 - }  
934 - if (StringUtils.isBlank(inspectionStageInfo.getElectroplate())) {  
935 - return false;  
936 - }  
937 - if (StringUtils.isBlank(inspectionStageInfo.getBoxPacket())) {  
938 - return false;  
939 - }  
940 - if (StringUtils.isBlank(inspectionStageInfo.getEndCheckResult())) {  
941 - return false;  
942 - } else if ("FAIL".equals(inspectionStageInfo.getEndCheckResult())) {  
943 - return false;  
944 - }  
945 - return true;  
946 - }  
947 -  
948 - /**  
949 - * @param trackStageVO  
950 - * @return  
951 - */  
952 - private boolean isFillTrackInfo(OrderTrackStageVO trackStageVO) {  
953 - if (Objects.isNull(trackStageVO)) {  
954 - return false;  
955 - }  
956 - if (StringUtils.isBlank(trackStageVO.getPpTime())) {  
957 - return false;  
958 - }  
959 - if (StringUtils.isBlank(trackStageVO.getPpConfirmResult())) {  
960 - return false;  
961 - }  
962 - if (StringUtils.isBlank(trackStageVO.getEsoSampleSendTime())) {  
963 - return false;  
964 - }  
965 - if (StringUtils.isBlank(trackStageVO.getShippmentSampleSendTime())) {  
966 - return false;  
967 - }  
968 - if (StringUtils.isBlank(trackStageVO.getShippmentSampleConfirmResult())) {  
969 - return false;  
970 - }  
971 - if (StringUtils.isBlank(trackStageVO.getSelfTestPassTime())) {  
972 - return false;  
973 - }  
974 - if (StringUtils.isBlank(trackStageVO.getAitexTestSendTime())) {  
975 - return false;  
976 - }  
977 - if (StringUtils.isBlank(trackStageVO.getAitexTestFinishResult())) {  
978 - return false;  
979 - }  
980 - if (StringUtils.isBlank(trackStageVO.getSgsTestSendTime())) {  
981 - return false;  
982 - }  
983 - if (StringUtils.isBlank(trackStageVO.getSgsTestFinishResult())) {  
984 - return false;  
985 - }  
986 - if (StringUtils.isBlank(trackStageVO.getBarcodeStickerArrivalTime())) {  
987 - return false;  
988 - }  
989 - if (StringUtils.isBlank(trackStageVO.getLatestArrivalTime())) {  
990 - return false;  
991 - }  
992 - if (StringUtils.isBlank(trackStageVO.getLatestBkTime())) {  
993 - return false;  
994 - }  
995 - return true;  
996 - }  
997 -  
998 -  
999 - /**  
1000 - * @param reportInfo  
1001 - * @return  
1002 - */  
1003 - private boolean isFillReportInfo(OrderCompletionReportVO reportInfo) {  
1004 - if (Objects.isNull(reportInfo)) {  
1005 - return false;  
1006 - }  
1007 - if (StringUtils.isBlank(reportInfo.getIdeaSource())) {  
1008 - return false;  
1009 - }  
1010 - if (Objects.isNull(reportInfo.getIdeaSourceRate())) {  
1011 - return false;  
1012 - }  
1013 - if (StringUtils.isBlank(reportInfo.getManualPreform1())) {  
1014 - return false;  
1015 - }  
1016 - if (Objects.isNull(reportInfo.getManualPreform1Rate())) {  
1017 - return false;  
1018 - }  
1019 - if (StringUtils.isBlank(reportInfo.getManualPreform2())) {  
1020 - return false;  
1021 - }  
1022 - if (Objects.isNull(reportInfo.getManualPreform2Rate())) {  
1023 - return false;  
1024 - }  
1025 - return true;  
1026 - }  
1027 -  
1028 - /**  
1029 - * @param profitAnalysisInfo  
1030 - * @return  
1031 - */  
1032 - private boolean isFillProfitInfo(OrderProfitAnalysisVO profitAnalysisInfo) {  
1033 - if (Objects.isNull(profitAnalysisInfo)) {  
1034 - return false;  
1035 - }  
1036 - if (Objects.isNull(profitAnalysisInfo.getCustomerPrice())) {  
1037 - return false;  
1038 - }  
1039 - if (Objects.isNull(profitAnalysisInfo.getCustomerTotalPrice())) {  
1040 - return false;  
1041 - }  
1042 - if (Objects.isNull(profitAnalysisInfo.getProductionDepartmentPrice())) {  
1043 - return false;  
1044 - }  
1045 - if (Objects.isNull(profitAnalysisInfo.getProductionDepartmentTotalPrice())) {  
1046 - return false;  
1047 - }  
1048 - if (Objects.isNull(profitAnalysisInfo.getPacketPrice())) {  
1049 - return false;  
1050 - }  
1051 - if (Objects.isNull(profitAnalysisInfo.getPacketTotalPrice())) {  
1052 - return false;  
1053 - }  
1054 - if (Objects.isNull(profitAnalysisInfo.getExchangeRate())) {  
1055 - return false;  
1056 - }  
1057 - return true;  
1058 - }  
1059 -  
1060 - /**  
1061 - * @param resultVO  
1062 - * @return  
1063 - */  
1064 - private boolean isFillOrderBaseInfo(OrderInfoResultVO resultVO) {  
1065 - if (Objects.isNull(resultVO)) {  
1066 - return false;  
1067 - }  
1068 - if (StringUtils.isBlank(resultVO.getCustomerCode())) {  
1069 - return false;  
1070 - }  
1071 - if (StringUtils.isBlank(resultVO.getProjectNo())) {  
1072 - return false;  
1073 - }  
1074 - if (StringUtils.isBlank(resultVO.getProductionDepartment())) {  
1075 - return false;  
1076 - }  
1077 - if (StringUtils.isBlank(resultVO.getInnerNo())) {  
1078 - return false;  
1079 - }  
1080 - if (StringUtils.isBlank(resultVO.getCustomerPo())) {  
1081 - return false;  
1082 - }  
1083 - if (StringUtils.isBlank(resultVO.getCustomerStyle())) {  
1084 - return false;  
1085 - }  
1086 - if (StringUtils.isBlank(resultVO.getModeleLo())) {  
1087 - return false;  
1088 - }  
1089 - if (StringUtils.isBlank(resultVO.getCollection())) {  
1090 - return false;  
1091 - }  
1092 - if (StringUtils.isBlank(resultVO.getPoColor())) {  
1093 - return false;  
1094 - }  
1095 - if (StringUtils.isBlank(resultVO.getCnColor())) {  
1096 - return false;  
1097 - }  
1098 - if (StringUtils.isBlank(resultVO.getPicUrl())) {  
1099 - return false;  
1100 - }  
1101 - if (StringUtils.isBlank(resultVO.getProductionComment())) {  
1102 - return false;  
1103 - }  
1104 - if (Objects.isNull(resultVO.getOrderCount())) {  
1105 - return false;  
1106 - }  
1107 - if (StringUtils.isBlank(resultVO.getOrderComposition())) {  
1108 - return false;  
1109 - }  
1110 - if (StringUtils.isBlank(resultVO.getProductStyle())) {  
1111 - return false;  
1112 - }  
1113 - if (StringUtils.isBlank(resultVO.getProductionDepartmentConsignTime())) {  
1114 - return false;  
1115 - }  
1116 - if (StringUtils.isBlank(resultVO.getOrderHodTime())) {  
1117 - return false;  
1118 - }  
1119 - if (StringUtils.isBlank(resultVO.getOutboundType())) {  
1120 - return false;  
1121 - }  
1122 - if (StringUtils.isBlank(resultVO.getPacketType())) {  
1123 - return false;  
1124 - }  
1125 - return true;  
1126 - }  
1127 -  
1128 - /**  
1129 - * @param orderInfoResultVOList  
1130 - */  
1131 - private void fillOrderUpdateInfos(List<OrderInfoResultVO> orderInfoResultVOList) {  
1132 - if (CollectionUtils.isEmpty(orderInfoResultVOList)) {  
1133 - return;  
1134 - }  
1135 -  
1136 - Set<Long> orderIds = orderInfoResultVOList.stream().map(OrderInfoResultVO::getId).collect(Collectors.toSet());  
1137 -  
1138 - List<OrderFieldLockApplyDO> fieldLockApplyDOList = orderFieldLockApplyService.list(new LambdaQueryWrapper<OrderFieldLockApplyDO>()  
1139 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1140 - .eq(OrderFieldLockApplyDO::getApplyUserId, dataScope.getLoginUserId())  
1141 - .in(OrderFieldLockApplyDO::getStatus, new int[]{ApplyStatusEnum.WAIT_AUDIT.getStatus(), ApplyStatusEnum.AUDIT_REFUSE.getStatus()})  
1142 - .in(OrderFieldLockApplyDO::getOrderId, orderIds).orderByAsc(OrderFieldLockApplyDO::getId));  
1143 -  
1144 - if (CollectionUtils.isNotEmpty(fieldLockApplyDOList)) {  
1145 - Map<Long, OrderFieldLockApplyDO> applyDOMap = fieldLockApplyDOList.stream().collect(Collectors.toMap(OrderFieldLockApplyDO::getOrderId, Function.identity(), (v1, v2) -> v1));  
1146 - orderInfoResultVOList.forEach(x -> {  
1147 - OrderFieldLockApplyDO applyDO = applyDOMap.get(x.getId());  
1148 - if (Objects.nonNull(applyDO) && ApplyTypeEnum.ORDER_REPORT_APPLY.getType().equals(applyDO.getType())) {  
1149 - String fields = applyDO.getFields();  
1150 - if (StringUtils.isNotBlank(fields)) {  
1151 - OrderUpdateInfoVO fieldVO = OrderUpdateInfoVO.builder().reportFields(JSONObject.parseObject(fields, OrderCompletionReportFieldVO.class)).build();  
1152 - x.setOrderUpdateInfoVO(fieldVO);  
1153 - }  
1154 - }  
1155 - if (Objects.nonNull(applyDO) && ApplyTypeEnum.ORDER_PROFIT_APPLY.getType().equals(applyDO.getType())) {  
1156 - String fields = applyDO.getFields();  
1157 - if (StringUtils.isNotBlank(fields)) {  
1158 - OrderUpdateInfoVO fieldVO = OrderUpdateInfoVO.builder().profitAnalysisFields(JSONObject.parseObject(fields, OrderProfitAnalysisFieldVO.class)).build();  
1159 - x.setOrderUpdateInfoVO(fieldVO);  
1160 - }  
1161 - }  
1162 - });  
1163 - }  
1164 - }  
1165 -  
1166 - /**  
1167 - * @param orderInfoResultVOList  
1168 - */  
1169 - private void fillLockFields(List<OrderInfoResultVO> orderInfoResultVOList) {  
1170 - if (CollectionUtils.isEmpty(orderInfoResultVOList)) {  
1171 - return;  
1172 - }  
1173 -  
1174 - Set<Long> orderIds = orderInfoResultVOList.stream().map(OrderInfoResultVO::getId).collect(Collectors.toSet());  
1175 -  
1176 - List<OrderFieldLockRecordDO> fieldLockRecordDOList = fieldLockRecordService.list(new LambdaQueryWrapper<OrderFieldLockRecordDO>()  
1177 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1178 - .eq(OrderFieldLockRecordDO::getUserId, dataScope.getLoginUserId())  
1179 - .in(OrderFieldLockRecordDO::getOrderId, orderIds)  
1180 - .orderByAsc(OrderFieldLockRecordDO::getId));  
1181 -  
1182 - if (CollectionUtils.isNotEmpty(fieldLockRecordDOList)) {  
1183 - Map<Long, OrderFieldLockRecordDO> recordDOMap = fieldLockRecordDOList.stream().collect(Collectors.toMap(OrderFieldLockRecordDO::getOrderId, Function.identity(), (v1, v2) -> v1));  
1184 - orderInfoResultVOList.forEach(x -> {  
1185 - OrderFieldLockRecordDO recordDO = recordDOMap.get(x.getId());  
1186 - if (Objects.nonNull(recordDO)) {  
1187 - String fields = recordDO.getFields();  
1188 - if (StringUtils.isNotBlank(fields)) {  
1189 - OrderLockFieldVO fieldVO = JSONObject.parseObject(fields, OrderLockFieldVO.class);  
1190 - x.setLockFields(fieldVO);  
1191 - } else {  
1192 - x.setLockFields(OrderFieldUtils.initField(OrderLockFieldEnum.LOCKED));  
1193 - }  
1194 - } else {  
1195 - x.setLockFields(OrderFieldUtils.initField(OrderLockFieldEnum.LOCKED));  
1196 - }  
1197 - });  
1198 - } else {  
1199 - orderInfoResultVOList.forEach(x -> {  
1200 - x.setLockFields(OrderFieldUtils.initField(OrderLockFieldEnum.LOCKED));  
1201 - });  
1202 - }  
1203 -  
1204 - }  
1205 -  
1206 - /**  
1207 - * @param orderInfoResultVOList  
1208 - */  
1209 - private void fillInspectionStageInfo(List<OrderInfoResultVO> orderInfoResultVOList) {  
1210 - if (CollectionUtils.isEmpty(orderInfoResultVOList)) {  
1211 - return;  
1212 - }  
1213 -  
1214 - Set<Long> orderIds = orderInfoResultVOList.stream().map(OrderInfoResultVO::getId).collect(Collectors.toSet());  
1215 - List<OrderInspectionStageDO> inspectionStageDOS = inspectionStageService.list(new LambdaQueryWrapper<OrderInspectionStageDO>()  
1216 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1217 - .in(OrderInspectionStageDO::getOrderId, orderIds));  
1218 - if (CollectionUtils.isEmpty(inspectionStageDOS)) {  
1219 - return;  
1220 - }  
1221 - Map<Long, OrderInspectionStageDO> inspectionStageDOMap = inspectionStageDOS.stream().collect(Collectors.toMap(OrderInspectionStageDO::getOrderId, Function.identity()));  
1222 - orderInfoResultVOList.forEach(result -> {  
1223 - if (inspectionStageDOMap.containsKey(result.getId())) {  
1224 - OrderInspectionStageDO inspectionStageDO = inspectionStageDOMap.get(result.getId());  
1225 - OrderInspectionStageVO inspectionStageVO = new OrderInspectionStageVO();  
1226 - BeanUtils.copyProperties(inspectionStageDO, inspectionStageVO);  
1227 - result.setInspectionStageInfo(inspectionStageVO);  
1228 - }  
1229 - });  
1230 - }  
1231 -  
1232 - /**  
1233 - * @param queryVO  
1234 - * @return  
1235 - */  
1236 - @Override  
1237 - public LambdaQueryWrapper<OrderBaseInfoDO> buildQueryByParam(OrderBaseInfoQueryVO queryVO) {  
1238 - RoleEnum roleEnum = dataScope.getRole();  
1239 - // 跟单员  
1240 - if (Objects.nonNull(roleEnum) && roleEnum.getId().equals(RoleEnum.TRACKER_USER.getId())) {  
1241 - queryVO.setCreateBy(dataScope.getLoginUserName());  
1242 - }  
1243 - // 业务员  
1244 - if (Objects.nonNull(roleEnum) && roleEnum.getId().equals(RoleEnum.BUSINESS_USER.getId())) {  
1245 - queryVO.setBusinessPerson(Arrays.asList(dataScope.getUser().getNickName()));  
1246 - }  
1247 - if (StringUtils.isNotBlank(queryVO.getCommitUserPhone())) {  
1248 - AdminUserDO userDO = userService.getOne(new LambdaQueryWrapper<AdminUserDO>()  
1249 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1250 - .eq(AdminUserDO::getPhone, queryVO.getCommitUserPhone()).last("limit 1"));  
1251 - queryVO.setCommitUserName(userDO.getUserName());  
1252 - }  
1253 - Set<Long> orderIds = new HashSet<>();  
1254 - if (Objects.nonNull(queryVO.getProfitRateGqt()) || Objects.nonNull(queryVO.getProfitRateLqt())) {  
1255 - List<OrderProfitAnalysisDO> profitAnalysisDOS = profitAnalysisService.list(new LambdaQueryWrapper<OrderProfitAnalysisDO>()  
1256 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1257 - .ge(Objects.nonNull(queryVO.getProfitRateLqt()), OrderProfitAnalysisDO::getProfitRate, queryVO.getProfitRateLqt())  
1258 - .le(Objects.nonNull(queryVO.getProfitRateGqt()), OrderProfitAnalysisDO::getProfitRate, queryVO.getProfitRateGqt()));  
1259 - if (CollectionUtils.isNotEmpty(profitAnalysisDOS)) {  
1260 - orderIds.addAll(profitAnalysisDOS.stream().map(OrderProfitAnalysisDO::getOrderId).collect(Collectors.toSet()));  
1261 - } else {  
1262 - orderIds.add(-1L);  
1263 - }  
1264 - }  
1265 -  
1266 - if (StringUtils.isNotBlank(queryVO.getDesigner())) {  
1267 - List<OrderCompletionReportDO> reportDOS = reportService.list(new LambdaQueryWrapper<OrderCompletionReportDO>()  
1268 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1269 - .and(q -> q.eq(OrderCompletionReportDO::getIdeaSource, queryVO.getDesigner()).or()  
1270 - .eq(OrderCompletionReportDO::getManualPreform1, queryVO.getDesigner()).or()  
1271 - .eq(OrderCompletionReportDO::getManualPreform2, queryVO.getDesigner())));  
1272 - if (CollectionUtils.isNotEmpty(reportDOS)) {  
1273 - Set<Long> reportOrderIds = reportDOS.stream().map(OrderCompletionReportDO::getOrderId).collect(Collectors.toSet());  
1274 - if (CollectionUtils.isNotEmpty(orderIds)) {  
1275 - Collection<Long> set = CollectionUtil.intersection(orderIds, reportOrderIds);  
1276 - if (CollectionUtils.isEmpty(set)) {  
1277 - orderIds.add(-1L);  
1278 - } else {  
1279 - orderIds.addAll(set);  
1280 - }  
1281 - } else {  
1282 - orderIds.addAll(reportOrderIds);  
1283 - }  
1284 - } else {  
1285 - orderIds.add(-1L);  
1286 - }  
1287 - } else if (CollectionUtils.isNotEmpty(queryVO.getIdeaSource()) || CollectionUtils.isNotEmpty(queryVO.getManualPreform1()) || CollectionUtils.isNotEmpty(queryVO.getManualPreform2())) {  
1288 - List<OrderCompletionReportDO> reportDOS = reportService.list(new LambdaQueryWrapper<OrderCompletionReportDO>()  
1289 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1290 - .in(CollectionUtils.isNotEmpty(queryVO.getIdeaSource()), OrderCompletionReportDO::getIdeaSource, queryVO.getIdeaSource())  
1291 - .in(CollectionUtils.isNotEmpty(queryVO.getManualPreform2()), OrderCompletionReportDO::getManualPreform2, queryVO.getManualPreform2())  
1292 - .in(CollectionUtils.isNotEmpty(queryVO.getManualPreform1()), OrderCompletionReportDO::getManualPreform1, queryVO.getManualPreform1()));  
1293 - if (CollectionUtils.isNotEmpty(reportDOS)) {  
1294 - Set<Long> reportOrderIds = reportDOS.stream().map(OrderCompletionReportDO::getOrderId).collect(Collectors.toSet());  
1295 - if (CollectionUtils.isNotEmpty(orderIds)) {  
1296 - Collection<Long> set = CollectionUtil.intersection(orderIds, reportOrderIds);  
1297 - if (CollectionUtils.isEmpty(set)) {  
1298 - orderIds.add(-1L);  
1299 - } else {  
1300 - orderIds.addAll(set);  
1301 - }  
1302 - } else {  
1303 - orderIds.addAll(reportOrderIds);  
1304 - }  
1305 - } else {  
1306 - orderIds.add(-1L);  
1307 - }  
1308 - }  
1309 -  
1310 - if (CollectionUtils.isNotEmpty(queryVO.getPpConfirmResult()) || StringUtils.isNotBlank(queryVO.getSelfTestPassStartTime()) || StringUtils.isNotBlank(queryVO.getSelfTestPassEndTime())) {  
1311 - List<OrderTrackStageDO> trackStageDOS = trackStageService.list(new LambdaQueryWrapper<OrderTrackStageDO>()  
1312 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1313 - .in(CollectionUtils.isNotEmpty(queryVO.getPpConfirmResult()), OrderTrackStageDO::getPpConfirmResult, queryVO.getPpConfirmResult())  
1314 - .ge(StringUtils.isNotBlank(queryVO.getSelfTestPassStartTime()), OrderTrackStageDO::getSelfTestPassTime, queryVO.getSelfTestPassStartTime())  
1315 - .le(StringUtils.isNotBlank(queryVO.getSelfTestPassEndTime()), OrderTrackStageDO::getSelfTestPassTime, queryVO.getSelfTestPassEndTime())  
1316 - );  
1317 - if (CollectionUtils.isNotEmpty(trackStageDOS)) {  
1318 - Set<Long> trackOrderIds = trackStageDOS.stream().map(OrderTrackStageDO::getOrderId).collect(Collectors.toSet());  
1319 - if (CollectionUtils.isNotEmpty(orderIds)) {  
1320 - Collection<Long> set = CollectionUtil.intersection(orderIds, trackOrderIds);  
1321 - if (CollectionUtils.isEmpty(set)) {  
1322 - orderIds.add(-1L);  
1323 - } else {  
1324 - orderIds.addAll(set);  
1325 - }  
1326 - } else {  
1327 - orderIds.addAll(trackOrderIds);  
1328 - }  
1329 - } else {  
1330 - orderIds.add(-1L);  
1331 - }  
1332 - }  
1333 -  
1334 - if (CollectionUtils.isNotEmpty(queryVO.getMidCheckResult()) || CollectionUtils.isNotEmpty(queryVO.getEndCheckResult())) {  
1335 - List<OrderInspectionStageDO> inspectionStageDOS = inspectionStageService.list(new LambdaQueryWrapper<OrderInspectionStageDO>()  
1336 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1337 - .in(CollectionUtils.isNotEmpty(queryVO.getMidCheckResult()), OrderInspectionStageDO::getMidCheckResult, queryVO.getMidCheckResult())  
1338 - .in(CollectionUtils.isNotEmpty(queryVO.getEndCheckResult()), OrderInspectionStageDO::getEndCheckResult, queryVO.getEndCheckResult())  
1339 - );  
1340 - if (CollectionUtils.isNotEmpty(inspectionStageDOS)) {  
1341 - Set<Long> inspectOrderIds = inspectionStageDOS.stream().map(OrderInspectionStageDO::getOrderId).collect(Collectors.toSet());  
1342 - if (CollectionUtils.isNotEmpty(orderIds)) {  
1343 - Collection<Long> set = CollectionUtil.intersection(orderIds, inspectOrderIds);  
1344 - if (CollectionUtils.isEmpty(set)) {  
1345 - orderIds.add(-1L);  
1346 - } else {  
1347 - orderIds.addAll(set);  
1348 - }  
1349 - } else {  
1350 - orderIds.addAll(inspectOrderIds);  
1351 - }  
1352 - } else {  
1353 - orderIds.add(-1L);  
1354 - }  
1355 - }  
1356 -  
1357 - //wmr:修改代码,导出指定的订单,2023.12.28  
1358 -// if (queryVO.getFieldVO()!=null&&!CollectionUtils.isEmpty(queryVO.getFieldVO().getOrderIds())) {  
1359 -// if (CollectionUtils.isNotEmpty(orderIds)) {  
1360 -// Set<Long> collect = queryVO.getFieldVO().getOrderIds().stream()  
1361 -// .filter(orderIds::contains)  
1362 -// .collect(Collectors.toSet());  
1363 -// queryVO.setOrderIds(collect);  
1364 -// }  
1365 -// } else {  
1366 -// if (CollectionUtils.isNotEmpty(orderIds)) {  
1367 -// queryVO.setOrderIds(orderIds);  
1368 -// }  
1369 -// }  
1370 -  
1371 -// if (queryVO.getFieldVO() != null && queryVO.getFieldVO().getOrderIds() != null) {  
1372 -// Set<Long> collect = new HashSet<>(queryVO.getFieldVO().getOrderIds());  
1373 -// if (collect.size() > 0) {  
1374 -// queryVO.setOrderIds(collect);  
1375 -// }  
1376 -// }  
1377 -  
1378 - return new LambdaQueryWrapper<OrderBaseInfoDO>()  
1379 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1380 - .in(CollectionUtils.isNotEmpty(queryVO.getCustomerCode()), OrderBaseInfoDO::getCustomerCode, queryVO.getCustomerCode())  
1381 - .eq(StringUtils.isNotBlank(queryVO.getCommitUserName()), OrderBaseInfoDO::getCreateBy, queryVO.getCommitUserName())  
1382 - .ge(StringUtils.isNotBlank(queryVO.getCreateStartTime()), OrderBaseInfoDO::getCreateTime, queryVO.getCreateStartTime())  
1383 - .le(StringUtils.isNotBlank(queryVO.getCreateEndTime()), OrderBaseInfoDO::getCreateTime, queryVO.getCreateEndTime())  
1384 - .in(CollectionUtils.isNotEmpty(queryVO.getOrderStatus()), OrderBaseInfoDO::getOrderStatus, queryVO.getOrderStatus())  
1385 - .in(CollectionUtils.isNotEmpty(queryVO.getProjectNo()), OrderBaseInfoDO::getProjectNo, queryVO.getProjectNo())  
1386 - .in(CollectionUtils.isNotEmpty(queryVO.getInnerNo()), OrderBaseInfoDO::getInnerNo, queryVO.getInnerNo())  
1387 - .in(CollectionUtils.isNotEmpty(queryVO.getProductionDepartment()), OrderBaseInfoDO::getProductionDepartment, queryVO.getProductionDepartment())  
1388 - .eq(StringUtils.isNotBlank(queryVO.getCreateBy()), OrderBaseInfoDO::getCreateBy, queryVO.getCreateBy())  
1389 - .in(CollectionUtils.isNotEmpty(queryVO.getBusinessPerson()), OrderBaseInfoDO::getBusinessPerson, queryVO.getBusinessPerson())  
1390 - .ge(StringUtils.isNotBlank(queryVO.getProductionDepartmentConsignStartTime()), OrderBaseInfoDO::getProductionDepartmentConsignTime, queryVO.getProductionDepartmentConsignStartTime())  
1391 - .le(StringUtils.isNotBlank(queryVO.getProductionDepartmentConsignEndTime()), OrderBaseInfoDO::getProductionDepartmentConsignTime, queryVO.getProductionDepartmentConsignEndTime())  
1392 - .ge(StringUtils.isNotBlank(queryVO.getOrderHodStartTime()), OrderBaseInfoDO::getOrderHodTime, queryVO.getOrderHodStartTime())  
1393 - .le(StringUtils.isNotBlank(queryVO.getOrderHodEndTime()), OrderBaseInfoDO::getOrderHodTime, queryVO.getOrderHodEndTime())  
1394 - .in(CollectionUtils.isNotEmpty(queryVO.getOrderIds()), OrderBaseInfoDO::getId, queryVO.getOrderIds())  
1395 - .orderByDesc(OrderBaseInfoDO::getId)  
1396 - ;  
1397 - }  
1398 -  
1399 -  
1400 - /**  
1401 - * 新增数据  
1402 - *  
1403 - * @param orderAddVO 实例对象  
1404 - * @return 实例对象  
1405 - */  
1406 - @Override  
1407 - @Transactional(rollbackFor = Exception.class)  
1408 - public ServerResult add(OrderAddVO orderAddVO) {  
1409 - OrderBaseInfoVO baseInfoVO = orderAddVO.getBaseInfo();  
1410 - if (Objects.isNull(baseInfoVO)) {  
1411 - throw new BusinessException(ServerResultCode.ORDER_BASE_INFO_EMPTY);  
1412 - }  
1413 - Long userId = dataScope.getLoginUserId();  
1414 - OrderBaseInfoDO baseInfoDO = new OrderBaseInfoDO();  
1415 - BeanUtils.copyProperties(baseInfoVO, baseInfoDO);  
1416 - baseInfoDO.setOrderStatus(OrderStatusEnum.CREATE_FINISH.getStatus());  
1417 - save(baseInfoDO);  
1418 -  
1419 - OrderProfitAnalysisVO profitAnalysisVO = orderAddVO.getProfitAnalysisInfo();  
1420 - if (Objects.nonNull(profitAnalysisVO)) {  
1421 - OrderProfitAnalysisDO profitAnalysisDO = new OrderProfitAnalysisDO();  
1422 - BeanUtils.copyProperties(profitAnalysisVO, profitAnalysisDO);  
1423 - profitAnalysisDO.setOrderId(baseInfoDO.getId());  
1424 - profitAnalysisDO.setOrderStatus(OrderStatusEnum.PROFIT_WAIT_AUDIT.getStatus());  
1425 - if (Objects.nonNull(profitAnalysisDO.getCustomerTotalPrice())  
1426 - && Objects.nonNull(profitAnalysisDO.getExchangeRate())  
1427 - && Objects.nonNull(profitAnalysisDO.getPacketTotalPrice())  
1428 - && Objects.nonNull(profitAnalysisDO.getProductionDepartmentTotalPrice())) {  
1429 - profitAnalysisDO.setProfitRate(ProfitUtils.calculateProfitRate(ProfitCalculateVO.builder()  
1430 - .customerTotalPrice(profitAnalysisDO.getCustomerTotalPrice())  
1431 - .exchangeRate(profitAnalysisDO.getExchangeRate())  
1432 - .packetTotalPrice(profitAnalysisDO.getPacketTotalPrice())  
1433 - .productionDepartmentTotalPrice(profitAnalysisDO.getProductionDepartmentTotalPrice()).build()));  
1434 - }  
1435 -  
1436 - profitAnalysisService.save(profitAnalysisDO);  
1437 - }  
1438 -  
1439 - OrderCompletionReportVO reportVO = orderAddVO.getReportInfo();  
1440 - if (Objects.nonNull(reportVO)) {  
1441 - OrderCompletionReportDO reportDO = new OrderCompletionReportDO();  
1442 - BeanUtils.copyProperties(reportVO, reportDO);  
1443 - reportDO.setOrderId(baseInfoDO.getId());  
1444 - reportDO.setOrderStatus(OrderStatusEnum.REPORT_WAIT_AUDIT.getStatus());  
1445 - reportService.save(reportDO);  
1446 - }  
1447 -  
1448 - OrderTrackStageVO trackStageVO = orderAddVO.getTrackStageInfo();  
1449 - if (Objects.nonNull(trackStageVO)) {  
1450 - OrderTrackStageDO trackStageDO = new OrderTrackStageDO();  
1451 - BeanUtils.copyProperties(trackStageVO, trackStageDO);  
1452 - trackStageDO.setOrderId(baseInfoDO.getId());  
1453 - trackStageDO.setOrderStatus(OrderStatusEnum.TRACK_ING.getStatus());  
1454 - trackStageService.save(trackStageDO);  
1455 - }  
1456 -  
1457 - OrderInspectionStageVO inspectionStageVO = orderAddVO.getInspectionStageInfo();  
1458 - if (Objects.nonNull(inspectionStageVO)) {  
1459 - OrderInspectionStageDO inspectionStageDO = new OrderInspectionStageDO();  
1460 - BeanUtils.copyProperties(inspectionStageVO, inspectionStageDO);  
1461 - inspectionStageDO.setOrderId(baseInfoDO.getId());  
1462 - inspectionStageDO.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus());  
1463 - inspectionStageService.save(inspectionStageDO);  
1464 - }  
1465 -  
1466 - orderOptLogService.save(buildOrderOptLogDo(baseInfoDO.getId(), userId, OrderOptTypeEnum.ORDER_CREATE.getDesc(), null));  
1467 -  
1468 - return ServerResult.success();  
1469 - }  
1470 -  
1471 - /**  
1472 - * @param orderId  
1473 - * @param userId  
1474 - * @param optType  
1475 - * @param jsonString  
1476 - * @return  
1477 - */  
1478 - private OrderOptLogDO buildOrderOptLogDo(Long orderId, Long userId, String optType, String jsonString) {  
1479 - return OrderOptLogDO.builder().orderId(orderId).userId(userId).fields(jsonString).optType(optType).build();  
1480 - }  
1481 -  
1482 - /**  
1483 - * @param updateVO  
1484 - */  
1485 - private void initOrderId(OrderUpdateVO updateVO) {  
1486 - if (Objects.nonNull(updateVO.getBaseInfo())) {  
1487 - updateVO.getBaseInfo().setId(updateVO.getOrderId());  
1488 - }  
1489 - if (Objects.nonNull(updateVO.getReportInfo())) {  
1490 - updateVO.getReportInfo().setOrderId(updateVO.getOrderId());  
1491 - }  
1492 - if (Objects.nonNull(updateVO.getInspectionStageInfo())) {  
1493 - updateVO.getInspectionStageInfo().setOrderId(updateVO.getOrderId());  
1494 - }  
1495 - if (Objects.nonNull(updateVO.getProfitAnalysisInfo())) {  
1496 - updateVO.getProfitAnalysisInfo().setOrderId(updateVO.getOrderId());  
1497 - }  
1498 - if (Objects.nonNull(updateVO.getTrackStageInfo())) {  
1499 - updateVO.getTrackStageInfo().setOrderId(updateVO.getOrderId());  
1500 - }  
1501 - }  
1502 -  
1503 - /**  
1504 - * @param orderId  
1505 - * @param userId  
1506 - * @return  
1507 - */  
1508 - public OrderFieldLockRecordDO lockProfitField(Long orderId, Long userId) {  
1509 - return OrderFieldLockRecordDO.builder().orderId(orderId).userId(userId).fields(JSONObject.toJSONString(OrderFieldUtils.initProfitAnalysisField(OrderLockFieldEnum.LOCKED))).build();  
1510 - }  
1511 -  
1512 - /**  
1513 - * @param orderId  
1514 - * @param userId  
1515 - * @return  
1516 - */  
1517 - public OrderFieldLockRecordDO lockReportField(Long orderId, Long userId) {  
1518 - return OrderFieldLockRecordDO.builder().orderId(orderId).userId(userId).fields(JSONObject.toJSONString(OrderFieldUtils.initReportField(OrderLockFieldEnum.LOCKED))).build();  
1519 - }  
1520 -  
1521 - /**  
1522 - * @param profitAnalysisVO  
1523 - * @param orderBaseInfoDo  
1524 - * @param userId  
1525 - */  
1526 - public OrderFieldLockApplyDO handlerProfitRate(OrderProfitAnalysisVO profitAnalysisVO, OrderBaseInfoDO  
1527 - orderBaseInfoDo, Long userId) {  
1528 - OrderProfitAnalysisFieldVO profitAnalysisFieldVO = profitAnalysis2profitAnalysisField(orderBaseInfoDo, profitAnalysisVO);  
1529 -  
1530 - SystemSettingDO systemSettingDO = systemSettingService.getOne(new LambdaQueryWrapper<SystemSettingDO>()  
1531 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1532 - .eq(SystemSettingDO::getSettingCode, "customerCode")  
1533 - .eq(SystemSettingDO::getSettingValue, orderBaseInfoDo.getCustomerCode())  
1534 - .eq(SystemSettingDO::getRelationCode, "profitRate").last("limit 1"));  
1535 -  
1536 - double profitRate = Objects.nonNull(systemSettingDO) ? Double.parseDouble(systemSettingDO.getRelationValue()) : 0.3;  
1537 - OrderFieldLockApplyDO orderFieldLockApplyDO = buildProfitFieldLockApplyDO(profitAnalysisFieldVO, userId);  
1538 - orderFieldLockApplyService.save(orderFieldLockApplyDO);  
1539 -  
1540 - if (Double.parseDouble(profitAnalysisFieldVO.getProfitRate()) >= profitRate && !profitAnalysisVO.getIsEditPacketPrice()) {  
1541 - // 直接通过  
1542 - orderFieldLockApplyService.doAudit(AuditVO.builder()  
1543 - .id(orderFieldLockApplyDO.getId())  
1544 - .status(ApplyStatusEnum.AUDIT_PASS.getStatus())  
1545 - .build());  
1546 - orderFieldLockApplyDO.setStatus(ApplyStatusEnum.AUDIT_PASS.getStatus());  
1547 - }  
1548 - return orderFieldLockApplyDO;  
1549 - }  
1550 -  
1551 - /**  
1552 - * 修改数据  
1553 - *  
1554 - * @param updateVO 实例对象  
1555 - * @return 实例对象  
1556 - */  
1557 - @Override  
1558 - @Transactional  
1559 - public ServerResult edit(OrderUpdateVO updateVO) {  
1560 -  
1561 - //todo 校验  
1562 - if (Objects.isNull(updateVO.getOrderId())) {  
1563 - return ServerResult.fail("id 不能为空");  
1564 - }  
1565 - initOrderId(updateVO);  
1566 - Long userId = dataScope.getLoginUserId();  
1567 - OrderBaseInfoDO orderBaseInfoDo = getById(updateVO.getOrderId());  
1568 - if (Objects.isNull(orderBaseInfoDo)) {  
1569 - throw new BusinessException(ServerResultCode.ORDER_BASE_INFO_EMPTY);  
1570 - }  
1571 - OrderOptLogDO optLogDO = new OrderOptLogDO();  
1572 - if (Objects.nonNull(updateVO.getBaseInfo())) {  
1573 - buildUpdateVO(updateVO.getBaseInfo(), orderBaseInfoDo);  
1574 - orderBaseInfoDo.setId(updateVO.getOrderId());  
1575 - optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_EDIT.getDesc(), JSONObject.toJSONString(updateVO));  
1576 - clearLockedField(updateVO.getOrderId(), userId, LockedFieldTypeEnum.ORDER_BASE);  
1577 - }  
1578 - if (Objects.nonNull(updateVO.getProfitAnalysisInfo())) {  
1579 - checkApply(updateVO.getOrderId(), userId, ApplyTypeEnum.ORDER_PROFIT_APPLY);  
1580 - OrderFieldLockApplyDO orderFieldLockApplyDO = handlerProfitRate(updateVO.getProfitAnalysisInfo(), orderBaseInfoDo, userId);  
1581 -  
1582 - orderBaseInfoDo.setOrderStatus(ApplyStatusEnum.AUDIT_PASS.getStatus().equals(orderFieldLockApplyDO.getStatus()) ? OrderStatusEnum.PROFIT_AUDIT_PASS.getStatus()  
1583 - : OrderStatusEnum.PROFIT_WAIT_AUDIT.getStatus());  
1584 - optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_PROFIT_EDIT_APPLY.getDesc(), orderFieldLockApplyDO.getFields());  
1585 - clearLockedField(updateVO.getOrderId(), userId, LockedFieldTypeEnum.ORDER_PROFIT);  
1586 - }  
1587 -  
1588 - if (Objects.nonNull(updateVO.getReportInfo())) {  
1589 - checkApply(updateVO.getOrderId(), userId, ApplyTypeEnum.ORDER_REPORT_APPLY);  
1590 - OrderFieldLockApplyDO orderFieldLockApplyDO = buildReportFieldLockApplyDO(updateVO.getReportInfo(), userId);  
1591 - orderFieldLockApplyService.save(orderFieldLockApplyDO);  
1592 -  
1593 - orderBaseInfoDo.setOrderStatus(OrderStatusEnum.REPORT_WAIT_AUDIT.getStatus());  
1594 - optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_REPORT_EDIT_APPLY.getDesc(), orderFieldLockApplyDO.getFields());  
1595 - clearLockedField(updateVO.getOrderId(), userId, LockedFieldTypeEnum.ORDER_REPORT);  
1596 - }  
1597 -  
1598 - if (Objects.nonNull(updateVO.getTrackStageInfo())) {  
1599 - OrderTrackStageDO trackStageDO = trackStageService.getOne(new LambdaQueryWrapper<OrderTrackStageDO>()  
1600 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1601 - .eq(OrderTrackStageDO::getOrderId, updateVO.getOrderId()));  
1602 - OrderTrackStageVO trackStageInfo = updateVO.getTrackStageInfo();  
1603 - if (Objects.nonNull(trackStageDO)) {  
1604 - if (StringUtils.isNotBlank(trackStageInfo.getPpTime())) {  
1605 - trackStageDO.setPpTime(trackStageInfo.getPpTime());  
1606 - }  
1607 - if (StringUtils.isNotBlank(trackStageInfo.getPpConfirmResult())) {  
1608 - trackStageDO.setPpConfirmResult(trackStageInfo.getPpConfirmResult());  
1609 - }  
1610 - if (StringUtils.isNotBlank(trackStageInfo.getEsoSampleSendTime())) {  
1611 - trackStageDO.setEsoSampleSendTime(trackStageInfo.getEsoSampleSendTime());  
1612 - }  
1613 - if (StringUtils.isNotBlank(trackStageInfo.getShippmentSampleSendTime())) {  
1614 - trackStageDO.setShippmentSampleSendTime(trackStageInfo.getShippmentSampleSendTime());  
1615 - }  
1616 - if (StringUtils.isNotBlank(trackStageInfo.getShippmentSampleConfirmResult())) {  
1617 - trackStageDO.setShippmentSampleConfirmResult(trackStageInfo.getShippmentSampleConfirmResult());  
1618 - }  
1619 - if (StringUtils.isNotBlank(trackStageInfo.getSelfTestPassTime())) {  
1620 - trackStageDO.setSelfTestPassTime(trackStageInfo.getSelfTestPassTime());  
1621 - }  
1622 - if (StringUtils.isNotBlank(trackStageInfo.getAitexTestSendTime())) {  
1623 - trackStageDO.setAitexTestSendTime(trackStageInfo.getAitexTestSendTime());  
1624 - }  
1625 - if (StringUtils.isNotBlank(trackStageInfo.getAitexTestFinishResult())) {  
1626 - trackStageDO.setAitexTestFinishResult(trackStageInfo.getAitexTestFinishResult());  
1627 - }  
1628 - if (StringUtils.isNotBlank(trackStageInfo.getSgsTestSendTime())) {  
1629 - trackStageDO.setSgsTestSendTime(trackStageInfo.getSgsTestSendTime());  
1630 - }  
1631 - if (StringUtils.isNotBlank(trackStageInfo.getSgsTestFinishResult())) {  
1632 - trackStageDO.setSgsTestFinishResult(trackStageInfo.getSgsTestFinishResult());  
1633 - }  
1634 - if (StringUtils.isNotBlank(trackStageInfo.getBarcodeStickerArrivalTime())) {  
1635 - trackStageDO.setBarcodeStickerArrivalTime(trackStageInfo.getBarcodeStickerArrivalTime());  
1636 - }  
1637 - if (StringUtils.isNotBlank(trackStageInfo.getLatestArrivalTime())) {  
1638 - trackStageDO.setLatestArrivalTime(trackStageInfo.getLatestArrivalTime());  
1639 - }  
1640 - if (StringUtils.isNotBlank(trackStageInfo.getLatestBkTime())) {  
1641 - trackStageDO.setLatestBkTime(trackStageInfo.getLatestBkTime());  
1642 - }  
1643 - trackStageDO.setOrderId(updateVO.getOrderId());  
1644 - trackStageDO.setOrderStatus(OrderStatusEnum.TRACK_ING.getStatus());  
1645 - trackStageService.updateById(trackStageDO);  
1646 - } else {  
1647 - trackStageDO = new OrderTrackStageDO();  
1648 - BeanUtils.copyProperties(updateVO.getTrackStageInfo(), trackStageDO);  
1649 - trackStageDO.setOrderId(updateVO.getOrderId());  
1650 - trackStageDO.setOrderStatus(OrderStatusEnum.TRACK_ING.getStatus());  
1651 - trackStageService.save(trackStageDO);  
1652 - }  
1653 - orderBaseInfoDo.setOrderStatus(OrderStatusEnum.TRACK_ING.getStatus());  
1654 - optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_TRACKER_EDIT_APPLY.getDesc(), JSONObject.toJSONString(updateVO));  
1655 - clearLockedField(updateVO.getOrderId(), userId, LockedFieldTypeEnum.ORDER_TRACKER);  
1656 - }  
1657 -  
1658 - if (Objects.nonNull(updateVO.getInspectionStageInfo())) {  
1659 - OrderInspectionStageDO inspectionStageDO = inspectionStageService.getOne(new LambdaQueryWrapper<OrderInspectionStageDO>()  
1660 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1661 - .eq(OrderInspectionStageDO::getOrderId, updateVO.getOrderId()));  
1662 - OrderInspectionStageVO inspectionStageInfo = updateVO.getInspectionStageInfo();  
1663 - if (Objects.nonNull(inspectionStageDO)) {  
1664 - if (StringUtils.isNotBlank(inspectionStageInfo.getMidCheckApplyTime())) {  
1665 - inspectionStageDO.setMidCheckApplyTime(inspectionStageInfo.getMidCheckApplyTime());  
1666 - }  
1667 - if (StringUtils.isNotBlank(inspectionStageInfo.getMidCheckComment())) {  
1668 - inspectionStageDO.setMidCheckComment(inspectionStageInfo.getMidCheckComment());  
1669 - }  
1670 - if (StringUtils.isNotBlank(inspectionStageInfo.getMidCheckResult())) {  
1671 - inspectionStageDO.setMidCheckResult(inspectionStageInfo.getMidCheckResult());  
1672 - }  
1673 - if (StringUtils.isNotBlank(inspectionStageInfo.getEndCheckApplyTime())) {  
1674 - inspectionStageDO.setEndCheckApplyTime(inspectionStageInfo.getEndCheckApplyTime());  
1675 - }  
1676 - if (StringUtils.isNotBlank(inspectionStageInfo.getEndCheckResult())) {  
1677 - inspectionStageDO.setEndCheckResult(inspectionStageInfo.getEndCheckResult());  
1678 - }  
1679 - if (StringUtils.isNotBlank(inspectionStageInfo.getSpecification())) {  
1680 - inspectionStageDO.setSpecification(inspectionStageInfo.getSpecification());  
1681 - }  
1682 - if (StringUtils.isNotBlank(inspectionStageInfo.getFunctionality())) {  
1683 - inspectionStageDO.setFunctionality(inspectionStageInfo.getFunctionality());  
1684 - }  
1685 - if (StringUtils.isNotBlank(inspectionStageInfo.getElectroplate())) {  
1686 - inspectionStageDO.setElectroplate(inspectionStageInfo.getElectroplate());  
1687 - }  
1688 - if (StringUtils.isNotBlank(inspectionStageInfo.getValue1())) {  
1689 - inspectionStageDO.setValue1(inspectionStageInfo.getValue1());  
1690 - }  
1691 - if (StringUtils.isNotBlank(inspectionStageInfo.getValue2())) {  
1692 - inspectionStageDO.setValue2(inspectionStageInfo.getValue2());  
1693 - }  
1694 - if (StringUtils.isNotBlank(inspectionStageInfo.getValue3())) {  
1695 - inspectionStageDO.setValue3(inspectionStageInfo.getValue3());  
1696 - }  
1697 - if (StringUtils.isNotBlank(inspectionStageInfo.getBoxPacket())) {  
1698 - inspectionStageDO.setBoxPacket(inspectionStageInfo.getBoxPacket());  
1699 - }  
1700 - inspectionStageDO.setOrderId(updateVO.getOrderId());  
1701 - inspectionStageDO.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus());  
1702 - inspectionStageService.updateById(inspectionStageDO);  
1703 - } else {  
1704 - inspectionStageDO = new OrderInspectionStageDO();  
1705 - BeanUtils.copyProperties(updateVO.getInspectionStageInfo(), inspectionStageDO);  
1706 - inspectionStageDO.setOrderId(updateVO.getOrderId());  
1707 - inspectionStageDO.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus());  
1708 - inspectionStageService.save(inspectionStageDO);  
1709 - }  
1710 - orderBaseInfoDo.setOrderStatus(OrderStatusEnum.INSPECT_ING.getStatus());  
1711 - optLogDO = buildOrderOptLogDo(updateVO.getOrderId(), userId, OrderOptTypeEnum.ORDER_INSPECT_EDIT_APPLY.getDesc(), JSONObject.toJSONString(updateVO));  
1712 - clearLockedField(updateVO.getOrderId(), userId, LockedFieldTypeEnum.ORDER_INSPECT);  
1713 - }  
1714 - updateById(orderBaseInfoDo);  
1715 - orderOptLogService.save(optLogDO);  
1716 - return ServerResult.success();  
1717 - }  
1718 -  
1719 - /**  
1720 - * @param orderId  
1721 - * @param userId  
1722 - */  
1723 - public void clearLockedField(Long orderId, Long userId, LockedFieldTypeEnum fieldTypeEnum) {  
1724 - OrderFieldLockRecordDO recordDO = fieldLockRecordService.getOne(new LambdaQueryWrapper<OrderFieldLockRecordDO>()  
1725 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1726 - .eq(OrderFieldLockRecordDO::getOrderId, orderId)  
1727 - .eq(OrderFieldLockRecordDO::getUserId, userId)  
1728 - .orderByDesc(OrderFieldLockRecordDO::getId)  
1729 - .last("limit 1"));  
1730 - if (Objects.nonNull(recordDO)) {  
1731 - OrderLockFieldVO fieldVO = JSONObject.parseObject(recordDO.getFields(), OrderLockFieldVO.class);  
1732 - if (LockedFieldTypeEnum.ORDER_BASE.equals(fieldTypeEnum)) {  
1733 - fieldVO.setBaseFields(OrderFieldUtils.initOrderBaseField(OrderLockFieldEnum.LOCKED));  
1734 - }  
1735 - if (LockedFieldTypeEnum.ORDER_PROFIT.equals(fieldTypeEnum)) {  
1736 - fieldVO.setProfitAnalysisFields(OrderFieldUtils.initProfitAnalysisField(OrderLockFieldEnum.LOCKED));  
1737 - }  
1738 - if (LockedFieldTypeEnum.ORDER_REPORT.equals(fieldTypeEnum)) {  
1739 - fieldVO.setReportFields(OrderFieldUtils.initReportField(OrderLockFieldEnum.LOCKED));  
1740 - }  
1741 - if (LockedFieldTypeEnum.ORDER_TRACKER.equals(fieldTypeEnum)) {  
1742 - fieldVO.setTrackStageFields(OrderFieldUtils.initTrackStageField(OrderLockFieldEnum.LOCKED));  
1743 - }  
1744 - if (LockedFieldTypeEnum.ORDER_INSPECT.equals(fieldTypeEnum)) {  
1745 - fieldVO.setInspectionStageFields(OrderFieldUtils.initInspectionStageField(OrderLockFieldEnum.LOCKED));  
1746 - }  
1747 - recordDO.setFields(JSONObject.toJSONString(fieldVO));  
1748 - fieldLockRecordService.updateById(recordDO);  
1749 - }  
1750 - }  
1751 -  
1752 - /**  
1753 - * @param baseInfoVO  
1754 - * @param baseInfoDO  
1755 - */  
1756 - private void buildUpdateVO(OrderBaseInfoVO baseInfoVO, OrderBaseInfoDO baseInfoDO) {  
1757 - if (Objects.isNull(baseInfoVO)) {  
1758 - return;  
1759 - }  
1760 - if (StringUtils.isNotBlank(baseInfoVO.getCustomerCode())) {  
1761 - baseInfoDO.setCustomerCode(baseInfoVO.getCustomerCode());  
1762 - }  
1763 - if (StringUtils.isNotBlank(baseInfoVO.getProjectNo())) {  
1764 - baseInfoDO.setProjectNo(baseInfoVO.getProjectNo());  
1765 - }  
1766 - if (StringUtils.isNotBlank(baseInfoVO.getProductionDepartment())) {  
1767 - baseInfoDO.setProductionDepartment(baseInfoVO.getProductionDepartment());  
1768 - }  
1769 - if (StringUtils.isNotBlank(baseInfoVO.getInnerNo())) {  
1770 - baseInfoDO.setInnerNo(baseInfoVO.getInnerNo());  
1771 - }  
1772 - if (StringUtils.isNotBlank(baseInfoVO.getCustomerPo())) {  
1773 - baseInfoDO.setCustomerPo(baseInfoVO.getCustomerPo());  
1774 - }  
1775 - if (StringUtils.isNotBlank(baseInfoVO.getCustomerStyle())) {  
1776 - baseInfoDO.setCustomerStyle(baseInfoVO.getCustomerStyle());  
1777 - }  
1778 - if (StringUtils.isNotBlank(baseInfoVO.getModeleLo())) {  
1779 - baseInfoDO.setModeleLo(baseInfoVO.getModeleLo());  
1780 - }  
1781 - if (StringUtils.isNotBlank(baseInfoVO.getCollection())) {  
1782 - baseInfoDO.setCollection(baseInfoVO.getCollection());  
1783 - }  
1784 - if (StringUtils.isNotBlank(baseInfoVO.getPoColor())) {  
1785 - baseInfoDO.setPoColor(baseInfoVO.getPoColor());  
1786 - }  
1787 - if (StringUtils.isNotBlank(baseInfoVO.getCnColor())) {  
1788 - baseInfoDO.setCnColor(baseInfoVO.getCnColor());  
1789 - }  
1790 - if (StringUtils.isNotBlank(baseInfoVO.getPicUrl())) {  
1791 - baseInfoDO.setPicUrl(baseInfoVO.getPicUrl());  
1792 - }  
1793 - if (StringUtils.isNotBlank(baseInfoVO.getSmallPicUrl())) {  
1794 - baseInfoDO.setSmallPicUrl(baseInfoVO.getSmallPicUrl());  
1795 - }  
1796 - if (StringUtils.isNotBlank(baseInfoVO.getProductionComment())) {  
1797 - baseInfoDO.setProductionComment(baseInfoVO.getProductionComment());  
1798 - }  
1799 - if (Objects.nonNull(baseInfoVO.getOrderCount())) {  
1800 - baseInfoDO.setOrderCount(baseInfoVO.getOrderCount());  
1801 - checkChargeOrderCount(Arrays.asList(baseInfoVO.getId()));  
1802 - }  
1803 - if (StringUtils.isNotBlank(baseInfoVO.getOrderComposition())) {  
1804 - baseInfoDO.setOrderComposition(baseInfoVO.getOrderComposition());  
1805 - }  
1806 - if (StringUtils.isNotBlank(baseInfoVO.getProductStyle())) {  
1807 - baseInfoDO.setProductStyle(baseInfoVO.getProductStyle());  
1808 - }  
1809 - if (StringUtils.isNotBlank(baseInfoVO.getProductionDepartmentConsignTime())) {  
1810 - baseInfoDO.setProductionDepartmentConsignTime(baseInfoVO.getProductionDepartmentConsignTime());  
1811 - }  
1812 - if (StringUtils.isNotBlank(baseInfoVO.getOrderHodTime())) {  
1813 - baseInfoDO.setOrderHodTime(baseInfoVO.getOrderHodTime());  
1814 - }  
1815 - if (StringUtils.isNotBlank(baseInfoVO.getOutboundType())) {  
1816 - baseInfoDO.setOutboundType(baseInfoVO.getOutboundType());  
1817 - }  
1818 - if (StringUtils.isNotBlank(baseInfoVO.getPacketType())) {  
1819 - baseInfoDO.setPacketType(baseInfoVO.getPacketType());  
1820 - }  
1821 - if (StringUtils.isNotBlank(baseInfoVO.getBusinessPerson())) {  
1822 - baseInfoDO.setBusinessPerson(baseInfoVO.getBusinessPerson());  
1823 - }  
1824 - }  
1825 -  
1826 - /**  
1827 - * 通过主键删除数据  
1828 - *  
1829 - * @param orderBaseInfoQueryVO 筛选条件  
1830 - * @return 是否成功  
1831 - */  
1832 - @Override  
1833 - @Transactional  
1834 - public ServerResult deleteById(OrderBaseInfoQueryVO orderBaseInfoQueryVO) {  
1835 - List<Long> ids = orderBaseInfoQueryVO.getIds();  
1836 - if (CollUtil.isEmpty(ids)) {  
1837 - return ServerResult.fail("ids 参数不能为空");  
1838 - }  
1839 - Long userId = dataScope.getLoginUserId();  
1840 - List<OrderBaseInfoDO> orderBaseInfoList = listByIds(ids);  
1841 - if (CollUtil.isEmpty(orderBaseInfoList)) {  
1842 - return ServerResult.success();  
1843 - }  
1844 - //todo 校验是否可以逻辑删除  
1845 - //订单基本信息  
1846 - LambdaUpdateWrapper<OrderBaseInfoDO> updateWrapper = new LambdaUpdateWrapper<OrderBaseInfoDO>()  
1847 - .in(OrderBaseInfoDO::getId, ids)  
1848 - .set(OrderBaseInfoDO::getEnableFlag, Constant.UNABLE_TWENTY);  
1849 - update(updateWrapper);  
1850 -  
1851 -  
1852 - //删除订单关联信息  
1853 - //订单审批日志  
1854 - orderAuditLogService.deleteByOrderIds(ids);  
1855 -  
1856 - //订单-项目完成报告书  
1857 - orderCompletionReportService.deleteByOrderIds(ids);  
1858 -  
1859 - //用户订单-字段锁定申请表  
1860 - orderFieldLockApplyService.deleteByOrderIds(ids);  
1861 -  
1862 - //用户订单-字段锁定记录表  
1863 - orderFieldLockRecordService.deleteByOrderIds(ids);  
1864 -  
1865 - //订单-质检环节  
1866 - orderInspectionStageService.deleteByOrderIds(ids);  
1867 -  
1868 - //用户订单操作日志表  
1869 - orderOptLogService.deleteByOrderIds(ids);  
1870 -  
1871 - //订单利润分析表  
1872 - profitAnalysisService.deleteByOrderIds(ids);  
1873 -  
1874 - //订单-跟单环节  
1875 - trackStageService.deleteByOrderIds(ids);  
1876 -  
1877 - List<OrderOptLogDO> orderOptLogDOS = ids.stream().map(x -> {  
1878 - return buildOrderOptLogDo(x, userId, OrderOptTypeEnum.ORDER_DELETE.getDesc(), null);  
1879 - }).collect(Collectors.toList());  
1880 - orderOptLogService.saveBatch(orderOptLogDOS);  
1881 - return ServerResult.success();  
1882 - }  
1883 -  
1884 - /**  
1885 - * 根据订单状态统计订单数量  
1886 - *  
1887 - * @param orderStatus  
1888 - * @return  
1889 - */  
1890 - @Override  
1891 - public long countByOrderStatus(Integer orderStatus) {  
1892 - return this.count(new LambdaQueryWrapper<OrderBaseInfoDO>().eq(OrderBaseInfoDO::getOrderStatus, orderStatus)  
1893 - .eq(OrderBaseInfoDO::getEnableFlag, Constant.ENABLE_TEN));  
1894 - }  
1895 -  
1896 - @Override  
1897 - public long countRecentMonthByOrderStatus(Integer orderStatus) {  
1898 - return this.baseMapper.countRecentMonthByOrderStatus(orderStatus);  
1899 - }  
1900 -  
1901 - @Override  
1902 - public List<Map<String, Integer>> countDaysOrder() {  
1903 - return this.baseMapper.countDaysOrder();  
1904 - }  
1905 -  
1906 - @Override  
1907 - public long countAll() {  
1908 - return this.count(new LambdaQueryWrapper<OrderBaseInfoDO>().eq(OrderBaseInfoDO::getEnableFlag, Constant.ENABLE_TEN));  
1909 - }  
1910 -  
1911 - @Override  
1912 - public long countRecentYear() {  
1913 - return this.baseMapper.countRecentYear();  
1914 - }  
1915 -  
1916 -  
1917 - @Override  
1918 - public ServerResult checkChargeOrderCount(List<Long> ids) {  
1919 - LambdaQueryWrapper<OrderBaseInfoDO> queryWrapper = new LambdaQueryWrapper<OrderBaseInfoDO>()  
1920 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1921 - .in(CollectionUtils.isNotEmpty(ids), OrderBaseInfoDO::getId, ids)  
1922 - .ne(OrderBaseInfoDO::getOrderStatus, OrderStatusEnum.ORDER_FINISH.getStatus());  
1923 - List<OrderBaseInfoDO> ordersDOS = list(queryWrapper);  
1924 -  
1925 - List<OrderInfoResultVO> orderInfoResultVOS = wrapperOrderResultList(false, ordersDOS);  
1926 - if (CollectionUtils.isNotEmpty(orderInfoResultVOS)) {  
1927 - Set<Long> orderIds = orderInfoResultVOS.stream().map(OrderInfoResultVO::getId).collect(Collectors.toSet());  
1928 - if (CollectionUtils.isNotEmpty(orderIds)) {  
1929 - List<OrderProfitAnalysisDO> profitAnalysisDOS = profitAnalysisService.list(new LambdaQueryWrapper<OrderProfitAnalysisDO>()  
1930 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
1931 - .in(OrderProfitAnalysisDO::getOrderId, orderIds));  
1932 -  
1933 - Map<Long, OrderProfitAnalysisDO> profitAnalysisDOMap = new HashMap<>();  
1934 - if (CollectionUtils.isNotEmpty(profitAnalysisDOS)) {  
1935 - profitAnalysisDOMap = profitAnalysisDOS.stream().collect(Collectors.toMap(OrderProfitAnalysisDO::getOrderId, Function.identity(), (x, y) -> y));  
1936 - }  
1937 -  
1938 - for (OrderInfoResultVO resultVO : orderInfoResultVOS) {  
1939 - if (profitAnalysisDOMap.containsKey(resultVO.getId())) {  
1940 - OrderProfitAnalysisDO profitAnalysisDO = profitAnalysisDOMap.get(resultVO.getId());  
1941 - Integer orderCount = resultVO.getOrderCount();  
1942 - BigDecimal customerTotalPrice = new BigDecimal(profitAnalysisDO.getCustomerTotalPrice()).setScale(Constant.TWO, RoundingMode.HALF_UP);  
1943 - BigDecimal customerPrice = new BigDecimal(profitAnalysisDO.getCustomerPrice()).setScale(Constant.TWO, RoundingMode.HALF_UP);  
1944 -  
1945 - BigDecimal calculateTotalPrice = new BigDecimal(orderCount).multiply(customerPrice).setScale(Constant.TWO, RoundingMode.HALF_UP);  
1946 - if (customerTotalPrice.compareTo(calculateTotalPrice) != Constant.ZERO) {  
1947 - BigDecimal customerRmbPrice = new BigDecimal(profitAnalysisDO.getCustomerRmbPrice());  
1948 - BigDecimal customerRmbTotalPrice = new BigDecimal(orderCount).multiply(customerRmbPrice).setScale(Constant.TWO, RoundingMode.HALF_UP);  
1949 - BigDecimal productionDepartmentPrice = new BigDecimal(profitAnalysisDO.getProductionDepartmentPrice());  
1950 - BigDecimal productionDepartmentTotalPrice = new BigDecimal(orderCount).multiply(productionDepartmentPrice).setScale(Constant.TWO, RoundingMode.HALF_UP);  
1951 - BigDecimal packetPrice = new BigDecimal(profitAnalysisDO.getPacketPrice());  
1952 - BigDecimal packetTotalPrice = new BigDecimal(orderCount).multiply(packetPrice).setScale(Constant.TWO, RoundingMode.HALF_UP);  
1953 - Double profitRate = ProfitUtils.calculateProfitRate(ProfitCalculateVO.builder()  
1954 - .exchangeRate(profitAnalysisDO.getExchangeRate())  
1955 - .profitType(profitAnalysisDO.getProfitType())  
1956 - .customerTotalPrice(calculateTotalPrice.doubleValue())  
1957 - .productionDepartmentTotalPrice(productionDepartmentTotalPrice.doubleValue())  
1958 - .packetTotalPrice(packetTotalPrice.doubleValue()).build());  
1959 -  
1960 - profitAnalysisDO.setCustomerTotalPrice(calculateTotalPrice.doubleValue());  
1961 - profitAnalysisDO.setCustomerRmbTotalPrice(customerRmbTotalPrice.doubleValue());  
1962 - profitAnalysisDO.setProductionDepartmentTotalPrice(productionDepartmentTotalPrice.doubleValue());  
1963 - profitAnalysisDO.setPacketTotalPrice(packetTotalPrice.doubleValue());  
1964 - profitAnalysisDO.setProfitRate(profitRate);  
1965 - profitAnalysisService.updateById(profitAnalysisDO);  
1966 - }  
1967 - }  
1968 - }  
1969 - }  
1970 - }  
1971 - return ServerResult.success();  
1972 - }  
1973 -}  
src/main/java/com/order/erp/service/order/impl/OrderCompletionReportServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
6 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
7 -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;  
8 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
9 -import com.order.erp.common.constant.Constant;  
10 -import com.order.erp.common.constant.ServerResult;  
11 -import com.order.erp.common.excel4j.ExcelUtils;  
12 -import com.order.erp.common.excel4j.exceptions.Excel4JException;  
13 -import com.order.erp.domain.dto.order.OrderBaseInfoDO;  
14 -import com.order.erp.domain.dto.order.OrderCompletionReportDO;  
15 -import com.order.erp.domain.vo.OrderReportAnalysisExportVo;  
16 -import com.order.erp.domain.vo.OrderReportAnalysisResultVo;  
17 -import com.order.erp.domain.vo.OrderReportStatExportVo;  
18 -import com.order.erp.domain.vo.order.OrderBaseInfoQueryVO;  
19 -import com.order.erp.domain.vo.order.OrderCompletionReportQueryVO;  
20 -import com.order.erp.domain.vo.order.OrderCompletionReportVO;  
21 -import com.order.erp.domain.vo.order.OrderReportResultVO;  
22 -import com.order.erp.mapper.order.OrderCompletionReportMapper;  
23 -import com.order.erp.service.order.OrderBaseInfoService;  
24 -import com.order.erp.service.order.OrderCompletionReportService;  
25 -import lombok.extern.slf4j.Slf4j;  
26 -import org.springframework.stereotype.Service;  
27 -  
28 -import javax.annotation.Resource;  
29 -import javax.servlet.http.HttpServletResponse;  
30 -import java.io.IOException;  
31 -import java.math.BigDecimal;  
32 -import java.math.RoundingMode;  
33 -import java.util.*;  
34 -import java.util.function.Function;  
35 -import java.util.stream.Collectors;  
36 -  
37 -/**  
38 - * 订单-项目完成报告书(OrderCompletionReport)表服务实现类  
39 - *  
40 - * @author makejava  
41 - * @since 2023-09-08 15:26:44  
42 - */  
43 -@Slf4j  
44 -@Service  
45 -public class OrderCompletionReportServiceImpl extends ServiceImpl<OrderCompletionReportMapper, OrderCompletionReportDO> implements OrderCompletionReportService {  
46 -  
47 -  
48 - @Resource  
49 - private OrderBaseInfoService orderBaseInfoService;  
50 -  
51 - /**  
52 - * 通过ID查询单条数据  
53 - * <p>  
54 - * orderCompletionReportQueryVO 主键  
55 - *  
56 - * @return 实例对象  
57 - */  
58 - @Override  
59 - public ServerResult queryById(OrderCompletionReportQueryVO orderCompletionReportQueryVO) {  
60 - if (Objects.isNull(orderCompletionReportQueryVO.getId())) {  
61 - return ServerResult.fail("id 不能为空");  
62 - }  
63 - OrderCompletionReportDO OrderCompletionReportDo = getById(orderCompletionReportQueryVO.getId());  
64 - if (Objects.isNull(OrderCompletionReportDo)) {  
65 - return ServerResult.success(null);  
66 - }  
67 - return ServerResult.success(BeanUtil.copyProperties(OrderCompletionReportDo, OrderCompletionReportVO.class));  
68 - }  
69 -  
70 - /**  
71 - * 分页查询  
72 - *  
73 - * @param orderCompletionReportQueryVO 筛选条件  
74 - * @return 查询结果  
75 - */  
76 - @Override  
77 - public ServerResult list(OrderCompletionReportQueryVO orderCompletionReportQueryVO) {  
78 -  
79 - return ServerResult.success();  
80 - }  
81 -  
82 - @Override  
83 - public ServerResult export(HttpServletResponse response, OrderBaseInfoQueryVO queryVO) throws IOException, Excel4JException {  
84 - LambdaQueryWrapper<OrderBaseInfoDO> queryWrapper = orderBaseInfoService.buildQueryByParam(queryVO);  
85 - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.list(queryWrapper);  
86 - if (CollectionUtils.isNotEmpty(orderBaseInfoDOList)) {  
87 - Map<Long, OrderBaseInfoDO> orderBaseInfoDOMap = new HashMap<>();  
88 - Set<Long> orderIds = orderBaseInfoDOList.stream().map(OrderBaseInfoDO::getId).collect(Collectors.toSet());  
89 - Set<String> innerNoSet = new HashSet<>();  
90 - List<OrderCompletionReportDO> reportDOS = list(new LambdaQueryWrapper<OrderCompletionReportDO>().in(OrderCompletionReportDO::getOrderId, orderIds));  
91 - Map<String, OrderReportAnalysisExportVo> exportVoMap = new HashMap<>();  
92 - if (CollectionUtils.isNotEmpty(reportDOS)) {  
93 - OrderReportResultVO reportResultVO = filterBaseData(orderBaseInfoDOList, reportDOS);  
94 - orderBaseInfoDOList = reportResultVO.getOrderBaseInfoDOList();  
95 - reportDOS = reportResultVO.getReportDOS();  
96 - Map<Long, OrderCompletionReportDO> completionReportDOMap = new HashMap<>();  
97 - completionReportDOMap = reportDOS.stream().collect(Collectors.toMap(OrderCompletionReportDO::getOrderId, Function.identity(), (x, y) -> x));  
98 - for (OrderBaseInfoDO orderBaseInfoDO : orderBaseInfoDOList) {  
99 - if (completionReportDOMap.containsKey(orderBaseInfoDO.getId())) {  
100 - if (!innerNoSet.contains(orderBaseInfoDO.getInnerNo())) {  
101 - orderBaseInfoDOMap.put(orderBaseInfoDO.getId(), orderBaseInfoDO);  
102 - }  
103 - innerNoSet.add(orderBaseInfoDO.getInnerNo());  
104 - }  
105 - }  
106 - for (OrderCompletionReportDO reportDO : reportDOS) {  
107 - handlerExportMap(reportDO, exportVoMap);  
108 -  
109 - }  
110 - }  
111 - List<OrderReportAnalysisExportVo> exportVos = exportMap2exportList(exportVoMap);  
112 - if (CollectionUtils.isNotEmpty(exportVos)) {  
113 - List<OrderReportStatExportVo> statExportVos = exportVos.stream().map(x -> {  
114 - OrderReportStatExportVo statExportVo = new OrderReportStatExportVo();  
115 - statExportVo.setDesigner(x.getDesigner());  
116 - statExportVo.setIdeaSourceRate(x.getIdeaSourceRate().divide(new BigDecimal(innerNoSet.size()), Constant.SIX, RoundingMode.HALF_UP).toString());  
117 - statExportVo.setManualPreform1Rate(x.getManualPreform1Rate().divide(new BigDecimal(innerNoSet.size()), Constant.SIX, RoundingMode.HALF_UP).toString());  
118 - statExportVo.setManualPreform2Rate(x.getManualPreform2Rate().divide(new BigDecimal(innerNoSet.size()), Constant.SIX, RoundingMode.HALF_UP).toString());  
119 - return statExportVo;  
120 - }).collect(Collectors.toList());  
121 - ExcelUtils.getInstance().exportObjects2Excel(statExportVos, OrderReportStatExportVo.class, response.getOutputStream());  
122 - }  
123 - }  
124 -  
125 - return ServerResult.success();  
126 - }  
127 -  
128 - /**  
129 - * @param exportVoMap  
130 - * @return  
131 - */  
132 - private List<OrderReportAnalysisExportVo> exportMap2exportList(Map<String, OrderReportAnalysisExportVo> exportVoMap) {  
133 - List<OrderReportAnalysisExportVo> exportVos = new ArrayList<>();  
134 - if (CollectionUtils.isEmpty(exportVoMap)) {  
135 - return exportVos;  
136 - }  
137 - for (Map.Entry<String, OrderReportAnalysisExportVo> exportVoEntry : exportVoMap.entrySet()) {  
138 - String key = exportVoEntry.getKey();  
139 - OrderReportAnalysisExportVo exportVo = exportVoEntry.getValue();  
140 - exportVo.setDesigner(key);  
141 - exportVos.add(exportVo);  
142 - }  
143 - return exportVos;  
144 - }  
145 -  
146 - /**  
147 - * @param reportDO  
148 - * @param exportVoMap  
149 - */  
150 - private void handlerExportMap(OrderCompletionReportDO reportDO, Map<String, OrderReportAnalysisExportVo> exportVoMap) {  
151 -  
152 - String ideaSource = reportDO.getIdeaSource();  
153 - String manualPreform1 = reportDO.getManualPreform1();  
154 - String manualPreform2 = reportDO.getManualPreform2();  
155 - OrderReportAnalysisExportVo ideaSource4exportVo = exportVoMap.get(ideaSource);  
156 - if (Objects.isNull(ideaSource4exportVo)) {  
157 - ideaSource4exportVo = new OrderReportAnalysisExportVo();  
158 - ideaSource4exportVo.setIdeaSourceRate(new BigDecimal(0));  
159 - ideaSource4exportVo.setManualPreform1Rate(new BigDecimal(0));  
160 - ideaSource4exportVo.setManualPreform2Rate(new BigDecimal(0));  
161 - }  
162 - ideaSource4exportVo.setIdeaSourceRate(new BigDecimal(Objects.nonNull(reportDO.getIdeaSourceRate()) ? reportDO.getIdeaSourceRate() : 0).add(ideaSource4exportVo.getIdeaSourceRate()));  
163 - exportVoMap.put(ideaSource, ideaSource4exportVo);  
164 -  
165 - OrderReportAnalysisExportVo manualPreform14exportVo = exportVoMap.get(manualPreform1);  
166 - if (Objects.isNull(manualPreform14exportVo)) {  
167 - manualPreform14exportVo = new OrderReportAnalysisExportVo();  
168 - manualPreform14exportVo.setIdeaSourceRate(new BigDecimal(0));  
169 - manualPreform14exportVo.setManualPreform1Rate(new BigDecimal(0));  
170 - manualPreform14exportVo.setManualPreform2Rate(new BigDecimal(0));  
171 - }  
172 - manualPreform14exportVo.setManualPreform1Rate(new BigDecimal(Objects.nonNull(reportDO.getManualPreform1Rate()) ? reportDO.getManualPreform1Rate() : 0).add(manualPreform14exportVo.getManualPreform1Rate()));  
173 - exportVoMap.put(manualPreform1, manualPreform14exportVo);  
174 -  
175 - OrderReportAnalysisExportVo manualPreform24exportVo = exportVoMap.get(manualPreform2);  
176 - if (Objects.isNull(manualPreform24exportVo)) {  
177 - manualPreform24exportVo = new OrderReportAnalysisExportVo();  
178 - manualPreform24exportVo.setIdeaSourceRate(new BigDecimal(0));  
179 - manualPreform24exportVo.setManualPreform1Rate(new BigDecimal(0));  
180 - manualPreform24exportVo.setManualPreform2Rate(new BigDecimal(0));  
181 - }  
182 - manualPreform24exportVo.setManualPreform2Rate(new BigDecimal(Objects.nonNull(reportDO.getManualPreform2Rate()) ? reportDO.getManualPreform2Rate() : 0).add(manualPreform24exportVo.getManualPreform2Rate()));  
183 - exportVoMap.put(manualPreform2, manualPreform24exportVo);  
184 - }  
185 -  
186 - @Override  
187 - public ServerResult analysis(OrderBaseInfoQueryVO queryVO) {  
188 - LambdaQueryWrapper<OrderBaseInfoDO> queryWrapper = orderBaseInfoService.buildQueryByParam(queryVO);  
189 - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.list(queryWrapper);  
190 - OrderReportAnalysisResultVo resultVo = new OrderReportAnalysisResultVo();  
191 - Map<Long, OrderBaseInfoDO> orderBaseInfoDOMap = new HashMap<>();  
192 - Set<String> innerNoSet = new HashSet<>();  
193 - if (CollectionUtils.isNotEmpty(orderBaseInfoDOList)) {  
194 -  
195 - Set<Long> orderIds = orderBaseInfoDOList.stream().map(OrderBaseInfoDO::getId).collect(Collectors.toSet());  
196 - List<OrderCompletionReportDO> reportDOS = list(new LambdaQueryWrapper<OrderCompletionReportDO>().in(OrderCompletionReportDO::getOrderId, orderIds));  
197 - BigDecimal sum = new BigDecimal(0);  
198 - Map<Long, OrderCompletionReportDO> completionReportDOMap = new HashMap<>();  
199 - if (CollectionUtils.isNotEmpty(reportDOS)) {  
200 - OrderReportResultVO reportResultVO = filterBaseData(orderBaseInfoDOList, reportDOS);  
201 - orderBaseInfoDOList = reportResultVO.getOrderBaseInfoDOList();  
202 - reportDOS = reportResultVO.getReportDOS();  
203 - completionReportDOMap = reportDOS.stream().collect(Collectors.toMap(OrderCompletionReportDO::getOrderId, Function.identity(), (x, y) -> x));  
204 - for (OrderBaseInfoDO orderBaseInfoDO : orderBaseInfoDOList) {  
205 - if (completionReportDOMap.containsKey(orderBaseInfoDO.getId())) {  
206 - if (!innerNoSet.contains(orderBaseInfoDO.getInnerNo())) {  
207 - orderBaseInfoDOMap.put(orderBaseInfoDO.getId(), orderBaseInfoDO);  
208 - }  
209 - innerNoSet.add(orderBaseInfoDO.getInnerNo());  
210 - }  
211 - }  
212 - for (OrderCompletionReportDO reportDO : reportDOS) {  
213 - Double ideaSourceRate = queryVO.getDesigner().equals(reportDO.getIdeaSource()) && Objects.nonNull(reportDO.getIdeaSourceRate()) ? reportDO.getIdeaSourceRate() : 0;  
214 - Double manualPreform1Rate = queryVO.getDesigner().equals(reportDO.getManualPreform1()) && Objects.nonNull(reportDO.getManualPreform1Rate()) ? reportDO.getManualPreform1Rate() : 0;  
215 - Double manualPreform2Rate = queryVO.getDesigner().equals(reportDO.getManualPreform2()) && Objects.nonNull(reportDO.getManualPreform2Rate()) ? reportDO.getManualPreform2Rate() : 0;  
216 - sum = sum.add(new BigDecimal(ideaSourceRate)).add(new BigDecimal(manualPreform1Rate)).add(new BigDecimal(manualPreform2Rate));  
217 - }  
218 - }  
219 - resultVo.setRate(Double.parseDouble(sum.divide(new BigDecimal(innerNoSet.size()), Constant.SIX, RoundingMode.HALF_UP).toString()));  
220 - }  
221 - return ServerResult.success(resultVo);  
222 - }  
223 -  
224 - /**  
225 - * @param orderBaseInfoDOList  
226 - * @param reportDOS  
227 - * @return  
228 - */  
229 - private OrderReportResultVO filterBaseData(List<OrderBaseInfoDO> orderBaseInfoDOList, List<OrderCompletionReportDO> reportDOS) {  
230 - OrderReportResultVO result = new OrderReportResultVO();  
231 - List<OrderBaseInfoDO> result4orderBase = new ArrayList<>();  
232 - List<OrderCompletionReportDO> result4report = new ArrayList<>();  
233 - if (CollectionUtils.isEmpty(orderBaseInfoDOList)) {  
234 - return result;  
235 - }  
236 - Map<String, Long> innerOrderIdMap = new HashMap<>();  
237 - Map<Long, OrderCompletionReportDO> reportDOMap = reportDOS.stream().collect(Collectors.toMap(OrderCompletionReportDO::getOrderId, Function.identity(), (x, y) -> x));  
238 - for (OrderBaseInfoDO infoDO : orderBaseInfoDOList) {  
239 - if (reportDOMap.containsKey(infoDO.getId())) {  
240 - innerOrderIdMap.put(infoDO.getInnerNo(), infoDO.getId());  
241 - }  
242 - }  
243 - List<Long> orderIds = new ArrayList<>(innerOrderIdMap.values());  
244 - result4orderBase = orderBaseInfoDOList.stream().filter(x -> orderIds.contains(x.getId())).collect(Collectors.toList());  
245 - result4report = reportDOS.stream().filter(x -> orderIds.contains(x.getOrderId())).collect(Collectors.toList());  
246 - result.setOrderBaseInfoDOList(result4orderBase);  
247 - result.setReportDOS(result4report);  
248 - return result;  
249 - }  
250 -  
251 - /**  
252 - * 新增数据  
253 - *  
254 - * @param orderCompletionReportVO 实例对象  
255 - * @return 实例对象  
256 - */  
257 - @Override  
258 - public ServerResult add(OrderCompletionReportVO orderCompletionReportVO) {  
259 - //todo 校验  
260 - if (Objects.nonNull(orderCompletionReportVO.getId())) {  
261 - orderCompletionReportVO.setId(null);  
262 - }  
263 - OrderCompletionReportDO orderCompletionReportDo = BeanUtil.copyProperties(orderCompletionReportVO, OrderCompletionReportDO.class);  
264 -  
265 - save(orderCompletionReportDo);  
266 -  
267 - return ServerResult.success();  
268 - }  
269 -  
270 - /**  
271 - * 修改数据  
272 - *  
273 - * @param orderCompletionReportVO 实例对象  
274 - * @return 实例对象  
275 - */  
276 - @Override  
277 - public ServerResult edit(OrderCompletionReportVO orderCompletionReportVO) {  
278 - //todo 校验  
279 - if (Objects.isNull(orderCompletionReportVO.getId())) {  
280 - return ServerResult.fail("id 不能为空");  
281 - }  
282 - OrderCompletionReportDO orderCompletionReportDo = BeanUtil.copyProperties(orderCompletionReportVO, OrderCompletionReportDO.class);  
283 -  
284 - updateById(orderCompletionReportDo);  
285 -  
286 - return ServerResult.success();  
287 - }  
288 -  
289 - /**  
290 - * 通过主键删除数据  
291 - *  
292 - * @param orderCompletionReportQueryVO 筛选条件  
293 - * @return 是否成功  
294 - */  
295 - @Override  
296 - public ServerResult deleteById(OrderCompletionReportQueryVO orderCompletionReportQueryVO) {  
297 - List<Long> ids = orderCompletionReportQueryVO.getIds();  
298 - if (CollUtil.isEmpty(ids)) {  
299 - return ServerResult.fail("ids 参数不能为空");  
300 - }  
301 - List<OrderCompletionReportDO> orderCompletionReportList = listByIds(ids);  
302 - if (CollUtil.isEmpty(orderCompletionReportList)) {  
303 - return ServerResult.success();  
304 - }  
305 - //todo 校验是否可以逻辑删除  
306 - LambdaUpdateWrapper<OrderCompletionReportDO> updateWrapper = new LambdaUpdateWrapper<OrderCompletionReportDO>()  
307 - .in(OrderCompletionReportDO::getId, ids)  
308 - .set(OrderCompletionReportDO::getEnableFlag, Constant.UNABLE_TWENTY);  
309 - update(updateWrapper);  
310 - return ServerResult.success();  
311 - }  
312 -  
313 - /**  
314 - * 通过订单id逻辑删除  
315 - *  
316 - * @param orderId  
317 - * @return  
318 - */  
319 - @Override  
320 - public boolean deleteByOrderId(Long orderId) {  
321 - LambdaUpdateWrapper<OrderCompletionReportDO> updateWrapper = new LambdaUpdateWrapper<OrderCompletionReportDO>()  
322 - .eq(OrderCompletionReportDO::getOrderId, orderId)  
323 - .set(OrderCompletionReportDO::getEnableFlag, Constant.UNABLE_TWENTY);  
324 -  
325 - return update(updateWrapper);  
326 - }  
327 -  
328 - @Override  
329 - public boolean deleteByOrderIds(List<Long> orderIds) {  
330 - LambdaUpdateWrapper<OrderCompletionReportDO> updateWrapper = new LambdaUpdateWrapper<OrderCompletionReportDO>()  
331 - .in(OrderCompletionReportDO::getOrderId, orderIds)  
332 - .set(OrderCompletionReportDO::getEnableFlag, Constant.UNABLE_TWENTY);  
333 -  
334 - return update(updateWrapper);  
335 - }  
336 -  
337 - @Override  
338 - public long countByOrderStatus(Integer status) {  
339 - return baseMapper.selectCount(new LambdaQueryWrapper<OrderCompletionReportDO>()  
340 - .eq(OrderCompletionReportDO::getOrderStatus, status)  
341 - .eq(OrderCompletionReportDO::getEnableFlag, Constant.ENABLE_TEN));  
342 - }  
343 -  
344 - @Override  
345 - public long countYearByOrderStatus(Integer status) {  
346 - return baseMapper.countYearByOrderStatus(status);  
347 - }  
348 -}  
src/main/java/com/order/erp/service/order/impl/OrderFieldLockApplyServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.alibaba.fastjson.JSONObject;  
6 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
7 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
8 -import com.baomidou.mybatisplus.core.metadata.IPage;  
9 -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;  
10 -import com.baomidou.mybatisplus.core.toolkit.StringUtils;  
11 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
12 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
13 -import com.order.erp.common.constant.Constant;  
14 -import com.order.erp.common.constant.ServerResult;  
15 -import com.order.erp.common.constant.ServerResultCode;  
16 -import com.order.erp.common.exception.BusinessException;  
17 -import com.order.erp.common.utils.OrderFieldUtils;  
18 -import com.order.erp.config.DataScope;  
19 -import com.order.erp.domain.ApplyStatusEnum;  
20 -import com.order.erp.domain.ApplyTypeEnum;  
21 -import com.order.erp.domain.OrderStatusEnum;  
22 -import com.order.erp.domain.RoleEnum;  
23 -import com.order.erp.domain.dto.BaseDO;  
24 -import com.order.erp.domain.dto.order.*;  
25 -import com.order.erp.domain.vo.order.*;  
26 -import com.order.erp.mapper.order.OrderFieldLockApplyMapper;  
27 -import com.order.erp.service.order.*;  
28 -import lombok.extern.slf4j.Slf4j;  
29 -import org.springframework.beans.BeanUtils;  
30 -import org.springframework.stereotype.Service;  
31 -import org.springframework.transaction.annotation.Transactional;  
32 -  
33 -import javax.annotation.Resource;  
34 -import java.util.*;  
35 -import java.util.function.Function;  
36 -import java.util.stream.Collectors;  
37 -  
38 -/**  
39 - * 用户订单-字段锁定申请表(OrderFieldLockApply)表服务实现类  
40 - *  
41 - * @author makejava  
42 - * @since 2023-09-08 15:26:45  
43 - */  
44 -@Slf4j  
45 -@Service  
46 -public class OrderFieldLockApplyServiceImpl extends ServiceImpl<OrderFieldLockApplyMapper, OrderFieldLockApplyDO> implements OrderFieldLockApplyService {  
47 -  
48 - @Resource  
49 - private DataScope dataScope;  
50 -  
51 - @Resource  
52 - private OrderFieldLockRecordService fieldLockRecordService;  
53 -  
54 - @Resource  
55 - private OrderFieldLockApplyService applyService;  
56 -  
57 - @Resource  
58 - private OrderAuditLogService auditLogService;  
59 -  
60 - @Resource  
61 - private OrderBaseInfoService orderBaseInfoService;  
62 -  
63 - @Resource  
64 - private OrderCompletionReportService reportService;  
65 -  
66 - @Resource  
67 - private OrderProfitAnalysisService profitAnalysisService;  
68 -  
69 - @Resource  
70 - private OrderTrackStageService trackStageService;  
71 -  
72 - @Resource  
73 - private OrderInspectionStageService inspectionStageService;  
74 -  
75 - /**  
76 - * 通过ID查询单条数据  
77 - * <p>  
78 - * orderFieldLockApplyQueryVO 主键  
79 - *  
80 - * @return 实例对象  
81 - */  
82 - @Override  
83 - public ServerResult queryById(OrderFieldLockApplyQueryVO orderFieldLockApplyQueryVO) {  
84 - if (Objects.isNull(orderFieldLockApplyQueryVO.getId())) {  
85 - return ServerResult.fail("id 不能为空");  
86 - }  
87 - OrderFieldLockApplyDO OrderFieldLockApplyDo = getById(orderFieldLockApplyQueryVO.getId());  
88 - if (Objects.isNull(OrderFieldLockApplyDo)) {  
89 - return ServerResult.success(null);  
90 - }  
91 - return ServerResult.success(BeanUtil.copyProperties(OrderFieldLockApplyDo, OrderFieldLockApplyVO.class));  
92 - }  
93 -  
94 - /**  
95 - * 分页查询  
96 - *  
97 - * @param orderFieldLockApplyQueryVO 筛选条件  
98 - * @return 查询结果  
99 - */  
100 - @Override  
101 - public ServerResult list(OrderFieldLockApplyQueryVO orderFieldLockApplyQueryVO) {  
102 - return ServerResult.success();  
103 - }  
104 -  
105 - @Override  
106 - public ServerResult listByPage(OrderFieldLockApplyQueryVO queryVO) {  
107 - LambdaQueryWrapper<OrderFieldLockApplyDO> queryWrapper = buildQueryByParam(queryVO);  
108 - Page page = new Page<>(queryVO.getPage(), queryVO.getPageSize());  
109 - IPage<OrderFieldLockApplyDO> iPage = page(page, queryWrapper);  
110 -  
111 - Page<OrderApplyResultVO> webVOPage = new Page<>();  
112 - List<OrderFieldLockApplyDO> applyDOList = iPage.getRecords();  
113 - if (CollectionUtils.isNotEmpty(applyDOList)) {  
114 - List<OrderApplyResultVO> resultVOList = applyDOList.stream().map(x -> {  
115 - OrderApplyResultVO resultVO = new OrderApplyResultVO();  
116 - BeanUtils.copyProperties(x, resultVO);  
117 - String fields = x.getFields();  
118 - if (StringUtils.isNotBlank(fields)) {  
119 - if (ApplyTypeEnum.FIELD_EDIT_APPLY.getType() == x.getType()) {  
120 - resultVO.setFieldInfos(JSONObject.parseObject(fields, OrderLockFieldVO.class));  
121 - }  
122 - if (ApplyTypeEnum.ORDER_REPORT_APPLY.getType() == x.getType()) {  
123 - OrderLockFieldVO fieldVO = new OrderLockFieldVO();  
124 - fieldVO.setReportFields(JSONObject.parseObject(fields, OrderCompletionReportFieldVO.class));  
125 - resultVO.setFieldInfos(fieldVO);  
126 - }  
127 - if (ApplyTypeEnum.ORDER_PROFIT_APPLY.getType() == x.getType()) {  
128 - OrderLockFieldVO fieldVO = new OrderLockFieldVO();  
129 - fieldVO.setProfitAnalysisFields(JSONObject.parseObject(fields, OrderProfitAnalysisFieldVO.class));  
130 - resultVO.setFieldInfos(fieldVO);  
131 - }  
132 - }  
133 - return resultVO;  
134 - }).collect(Collectors.toList());  
135 -  
136 - fillOrderInfo(resultVOList);  
137 - webVOPage.setRecords(resultVOList);  
138 - }  
139 - BeanUtils.copyProperties(page, webVOPage, "records");  
140 - return ServerResult.success(webVOPage);  
141 - }  
142 -  
143 - /**  
144 - * @param resultVOList  
145 - */  
146 - private void fillOrderInfo(List<OrderApplyResultVO> resultVOList) {  
147 - if (CollectionUtils.isEmpty(resultVOList)) {  
148 - return;  
149 - }  
150 - Set<Long> orderIds = resultVOList.stream().map(OrderApplyResultVO::getOrderId).collect(Collectors.toSet());  
151 - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.listByIds(orderIds);  
152 -  
153 - if (CollectionUtils.isNotEmpty(orderBaseInfoDOList)) {  
154 - fillOrderBaseInfo(resultVOList, orderBaseInfoDOList);  
155 - }  
156 -  
157 -// List<OrderCompletionReportDO> reportDOList = reportService.list(new LambdaQueryWrapper<OrderCompletionReportDO>()  
158 -// .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN).in(OrderCompletionReportDO::getOrderId, orderIds));  
159 -//  
160 -// if (CollectionUtils.isNotEmpty(reportDOList)) {  
161 -// fillOrderReportInfo(resultVOList, reportDOList);  
162 -// }  
163 -//  
164 -// List<OrderProfitAnalysisDO> profitAnalysisDOList = profitAnalysisService.list(new LambdaQueryWrapper<OrderProfitAnalysisDO>()  
165 -// .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN).in(OrderProfitAnalysisDO::getOrderId, orderIds));  
166 -//  
167 -// if (CollectionUtils.isNotEmpty(profitAnalysisDOList)) {  
168 -// fillOrderProfitInfo(resultVOList, profitAnalysisDOList);  
169 -// }  
170 -//  
171 -// List<OrderTrackStageDO> trackStageDOList = trackStageService.list(new LambdaQueryWrapper<OrderTrackStageDO>()  
172 -// .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN).in(OrderTrackStageDO::getOrderId, orderIds));  
173 -//  
174 -// if (CollectionUtils.isNotEmpty(trackStageDOList)) {  
175 -// fillOrderTrackerInfo(resultVOList, trackStageDOList);  
176 -// }  
177 -//  
178 -// List<OrderInspectionStageDO> inspectionStageDOList = inspectionStageService.list(new LambdaQueryWrapper<OrderInspectionStageDO>()  
179 -// .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN).in(OrderInspectionStageDO::getOrderId, orderIds));  
180 -//  
181 -// if (CollectionUtils.isNotEmpty(inspectionStageDOList)) {  
182 -// fillOrderInspectInfo(resultVOList, inspectionStageDOList);  
183 -// }  
184 - }  
185 -  
186 - /**  
187 - * @param resultVOList  
188 - * @param orderBaseInfoDOList  
189 - */  
190 - private void fillOrderBaseInfo(List<OrderApplyResultVO> resultVOList, List<OrderBaseInfoDO> orderBaseInfoDOList) {  
191 - if (CollectionUtils.isEmpty(resultVOList)) {  
192 - return;  
193 - }  
194 - if (CollectionUtils.isEmpty(orderBaseInfoDOList)) {  
195 - return;  
196 - }  
197 - Map<Long, OrderBaseInfoDO> orderBaseInfoDOMap = orderBaseInfoDOList.stream().collect(Collectors.toMap(OrderBaseInfoDO::getId, Function.identity()));  
198 - resultVOList.forEach(x -> {  
199 - if (orderBaseInfoDOMap.containsKey(x.getOrderId())) {  
200 - OrderBaseInfoDO orderBaseInfoDO = orderBaseInfoDOMap.get(x.getOrderId());  
201 - OrderBaseInfoVO orderBaseInfo = new OrderBaseInfoVO();  
202 - BeanUtils.copyProperties(orderBaseInfoDO, orderBaseInfo);  
203 - x.setOrderBaseInfo(orderBaseInfo);  
204 - }  
205 - });  
206 - }  
207 -  
208 - /**  
209 - * @param resultVOList  
210 - * @param reportDOList  
211 - */  
212 - private void fillOrderReportInfo(List<OrderApplyResultVO> resultVOList, List<OrderCompletionReportDO> reportDOList) {  
213 - if (CollectionUtils.isEmpty(resultVOList)) {  
214 - return;  
215 - }  
216 - if (CollectionUtils.isEmpty(reportDOList)) {  
217 - return;  
218 - }  
219 - Map<Long, OrderCompletionReportDO> reportDOMap = reportDOList.stream().collect(Collectors.toMap(OrderCompletionReportDO::getId, Function.identity()));  
220 - resultVOList.forEach(x -> {  
221 - if (reportDOMap.containsKey(x.getOrderId())) {  
222 - OrderCompletionReportDO reportDO = reportDOMap.get(x.getOrderId());  
223 - OrderCompletionReportVO reportVO = new OrderCompletionReportVO();  
224 - BeanUtils.copyProperties(reportDO, reportVO);  
225 - x.setReportInfo(reportVO);  
226 - }  
227 - });  
228 - }  
229 -  
230 - /**  
231 - * @param resultVOList  
232 - * @param profitAnalysisDOS  
233 - */  
234 - private void fillOrderProfitInfo(List<OrderApplyResultVO> resultVOList, List<OrderProfitAnalysisDO> profitAnalysisDOS) {  
235 - if (CollectionUtils.isEmpty(resultVOList)) {  
236 - return;  
237 - }  
238 - if (CollectionUtils.isEmpty(profitAnalysisDOS)) {  
239 - return;  
240 - }  
241 - Map<Long, OrderProfitAnalysisDO> profitAnalysisDOMap = profitAnalysisDOS.stream().collect(Collectors.toMap(OrderProfitAnalysisDO::getId, Function.identity()));  
242 - resultVOList.forEach(x -> {  
243 - if (profitAnalysisDOMap.containsKey(x.getOrderId())) {  
244 - OrderProfitAnalysisDO profitAnalysisDO = profitAnalysisDOMap.get(x.getOrderId());  
245 - OrderProfitAnalysisVO profitAnalysisVO = new OrderProfitAnalysisVO();  
246 - BeanUtils.copyProperties(profitAnalysisDO, profitAnalysisVO);  
247 - x.setProfitAnalysisInfo(profitAnalysisVO);  
248 - }  
249 - });  
250 - }  
251 -  
252 - /**  
253 - * @param resultVOList  
254 - * @param trackStageDOS  
255 - */  
256 - private void fillOrderTrackerInfo(List<OrderApplyResultVO> resultVOList, List<OrderTrackStageDO> trackStageDOS) {  
257 - if (CollectionUtils.isEmpty(resultVOList)) {  
258 - return;  
259 - }  
260 - if (CollectionUtils.isEmpty(trackStageDOS)) {  
261 - return;  
262 - }  
263 - Map<Long, OrderTrackStageDO> trackStageDOMap = trackStageDOS.stream().collect(Collectors.toMap(OrderTrackStageDO::getId, Function.identity()));  
264 - resultVOList.forEach(x -> {  
265 - if (trackStageDOMap.containsKey(x.getOrderId())) {  
266 - OrderTrackStageDO trackStageDO = trackStageDOMap.get(x.getOrderId());  
267 - OrderTrackStageVO trackStageVO = new OrderTrackStageVO();  
268 - BeanUtils.copyProperties(trackStageDO, trackStageVO);  
269 - x.setTrackStageInfo(trackStageVO);  
270 - }  
271 - });  
272 - }  
273 -  
274 - /**  
275 - * @param resultVOList  
276 - * @param inspectionStageDOS  
277 - */  
278 - private void fillOrderInspectInfo(List<OrderApplyResultVO> resultVOList, List<OrderInspectionStageDO> inspectionStageDOS) {  
279 - if (CollectionUtils.isEmpty(resultVOList)) {  
280 - return;  
281 - }  
282 - if (CollectionUtils.isEmpty(inspectionStageDOS)) {  
283 - return;  
284 - }  
285 - Map<Long, OrderInspectionStageDO> inspectionStageDOMap = inspectionStageDOS.stream().collect(Collectors.toMap(OrderInspectionStageDO::getId, Function.identity()));  
286 - resultVOList.forEach(x -> {  
287 - if (inspectionStageDOMap.containsKey(x.getOrderId())) {  
288 - OrderInspectionStageDO inspectionStageDO = inspectionStageDOMap.get(x.getOrderId());  
289 - OrderInspectionStageVO inspectionStageVO = new OrderInspectionStageVO();  
290 - BeanUtils.copyProperties(inspectionStageDO, inspectionStageVO);  
291 - x.setInspectionStageInfo(inspectionStageVO);  
292 - }  
293 - });  
294 - }  
295 -  
296 - /**  
297 - * @param queryVO  
298 - * @return  
299 - */  
300 - private LambdaQueryWrapper<OrderFieldLockApplyDO> buildQueryByParam(OrderFieldLockApplyQueryVO queryVO) {  
301 - RoleEnum roleEnum = dataScope.getRole();  
302 - RoleEnum roleSelect = null;  
303 - if (RoleEnum.BUSINESS_USER.getCode().equals(roleEnum.getCode())) {  
304 - queryVO.setBusinessPerson(dataScope.getLoginUserName());  
305 - }  
306 - if (RoleEnum.ADMIN.getCode().equals(roleEnum.getCode())) {  
307 - if (Objects.nonNull(queryVO.getAuditType()) && 1 == queryVO.getAuditType()) {  
308 - roleEnum = RoleEnum.BUSINESS_USER;  
309 - }  
310 - if (Objects.nonNull(queryVO.getAuditType()) && 0 == queryVO.getAuditType()) {  
311 - roleSelect = RoleEnum.ADMIN;  
312 - }  
313 - }  
314 - Set<Long> orderIds = new HashSet<>();  
315 - if (StringUtils.isNotBlank(queryVO.getBusinessPerson()) || CollectionUtils.isNotEmpty(queryVO.getCustomerCode()) || CollectionUtils.isNotEmpty(queryVO.getInnerNo())  
316 - || CollectionUtils.isNotEmpty(queryVO.getProductionDepartment()) || CollectionUtils.isNotEmpty(queryVO.getProjectNo())) {  
317 - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.list(new LambdaQueryWrapper<OrderBaseInfoDO>()  
318 - .eq(StringUtils.isNotBlank(queryVO.getBusinessPerson()), OrderBaseInfoDO::getBusinessPerson, queryVO.getBusinessPerson())  
319 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
320 - .in(CollectionUtils.isNotEmpty(queryVO.getCustomerCode()), OrderBaseInfoDO::getCustomerCode, queryVO.getCustomerCode())  
321 - .in(CollectionUtils.isNotEmpty(queryVO.getInnerNo()), OrderBaseInfoDO::getInnerNo, queryVO.getInnerNo())  
322 - .in(CollectionUtils.isNotEmpty(queryVO.getProductionDepartment()), OrderBaseInfoDO::getProductionDepartment, queryVO.getProductionDepartment())  
323 - .in(CollectionUtils.isNotEmpty(queryVO.getProjectNo()), OrderBaseInfoDO::getProjectNo, queryVO.getProjectNo()));  
324 - if (CollectionUtils.isNotEmpty(orderBaseInfoDOList)) {  
325 - orderIds = orderBaseInfoDOList.stream().map(OrderBaseInfoDO::getId).collect(Collectors.toSet());  
326 - } else {  
327 - orderIds.add(-1L);  
328 - }  
329 - }  
330 - LambdaQueryWrapper<OrderFieldLockApplyDO> queryWrapper = new LambdaQueryWrapper<OrderFieldLockApplyDO>()  
331 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
332 - .eq(Objects.nonNull(queryVO.getApplyUserId()), OrderFieldLockApplyDO::getApplyUserId, queryVO.getApplyUserId())  
333 - .eq(Objects.nonNull(queryVO.getStatus()), OrderFieldLockApplyDO::getStatus, queryVO.getStatus())  
334 - .eq(Objects.nonNull(queryVO.getType()), OrderFieldLockApplyDO::getType, queryVO.getType())  
335 - .in(CollectionUtils.isNotEmpty(queryVO.getStatusList()), OrderFieldLockApplyDO::getStatus, queryVO.getStatusList())  
336 - .in(CollectionUtils.isNotEmpty(orderIds), OrderFieldLockApplyDO::getOrderId, orderIds);  
337 - if (Objects.isNull(roleSelect)) {  
338 - queryWrapper.like(Objects.nonNull(roleEnum), OrderFieldLockApplyDO::getAuditRoleCodes, roleEnum.getCode());  
339 - }else {  
340 - queryWrapper.eq(Objects.nonNull(roleSelect), OrderFieldLockApplyDO::getAuditRoleCodes, roleSelect.getCode());  
341 -  
342 - }  
343 - return queryWrapper;  
344 - }  
345 -  
346 - /**  
347 - * 新增数据  
348 - *  
349 - * @param orderFieldLockApplyVO 实例对象  
350 - * @return 实例对象  
351 - */  
352 - @Override  
353 - public ServerResult add(OrderFieldLockApplyVO orderFieldLockApplyVO) {  
354 - //todo 校验  
355 - if (Objects.nonNull(orderFieldLockApplyVO.getId())) {  
356 - orderFieldLockApplyVO.setId(null);  
357 - }  
358 - OrderFieldLockApplyDO orderFieldLockApplyDo = BeanUtil.copyProperties(orderFieldLockApplyVO, OrderFieldLockApplyDO.class);  
359 -  
360 - save(orderFieldLockApplyDo);  
361 -  
362 - return ServerResult.success();  
363 - }  
364 -  
365 - @Override  
366 - public ServerResult doAudit(AuditVO auditVO) {  
367 - OrderFieldLockApplyDO applyDO = getById(auditVO.getId());  
368 - if (Objects.isNull(applyDO)) {  
369 - throw new BusinessException(ServerResultCode.APPLY_NOT_EXIST);  
370 - }  
371 - Long auditUserId = dataScope.getLoginUserId();  
372 - // 申请通过  
373 - if (ApplyStatusEnum.AUDIT_PASS.getStatus().equals(auditVO.getStatus())) {  
374 - doPass(applyDO, auditUserId);  
375 - }  
376 - if (ApplyStatusEnum.AUDIT_REFUSE.getStatus().equals(auditVO.getStatus())) {  
377 - doRefuse(applyDO, auditUserId, auditVO.getRefuseRemark());  
378 - }  
379 - return ServerResult.success();  
380 - }  
381 -  
382 - @Transactional(rollbackFor = Exception.class)  
383 - public void doRefuse(OrderFieldLockApplyDO applyDO, Long auditUserId, String refuseRemark) {  
384 - applyDO.setAuditUserId(auditUserId);  
385 - applyDO.setStatus(ApplyStatusEnum.AUDIT_REFUSE.getStatus());  
386 - applyDO.setRefuseRemark(refuseRemark);  
387 - OrderBaseInfoDO orderBaseInfoDO = orderBaseInfoService.getById(applyDO.getOrderId());  
388 - if (Objects.isNull(orderBaseInfoDO)) {  
389 - throw new BusinessException(ServerResultCode.ORDER_BASE_INFO_EMPTY);  
390 - }  
391 - if (ApplyTypeEnum.ORDER_REPORT_APPLY.getType().equals(applyDO.getType())) {  
392 -  
393 - orderBaseInfoDO.setOrderStatus(OrderStatusEnum.REPORT_AUDIT_REFUSE.getStatus());  
394 - orderBaseInfoService.updateById(orderBaseInfoDO);  
395 - } else if (ApplyTypeEnum.ORDER_PROFIT_APPLY.getType().equals(applyDO.getType())) {  
396 - orderBaseInfoDO.setOrderStatus(OrderStatusEnum.PROFIT_AUDIT_REFUSE.getStatus());  
397 - orderBaseInfoService.updateById(orderBaseInfoDO);  
398 - }  
399 - OrderAuditLogDO auditLogDO = OrderAuditLogDO.builder().applyId(applyDO.getId()).orderId(applyDO.getOrderId()).optType(ApplyStatusEnum.AUDIT_REFUSE.getDesc()).build();  
400 -  
401 - applyService.updateById(applyDO);  
402 - auditLogService.save(auditLogDO);  
403 - }  
404 -  
405 - /**  
406 - * @param applyDO  
407 - * @param auditUserId  
408 - */  
409 - @Transactional(rollbackFor = Exception.class)  
410 - public void doPass(OrderFieldLockApplyDO applyDO, Long auditUserId) {  
411 -  
412 - if (ApplyTypeEnum.FIELD_EDIT_APPLY.getType().equals(applyDO.getType())) {  
413 - applyDO.setAuditUserId(auditUserId);  
414 - applyDO.setStatus(ApplyStatusEnum.AUDIT_PASS.getStatus());  
415 -  
416 - OrderFieldLockRecordDO recordDO = fieldLockRecordService.getOne(new LambdaQueryWrapper<OrderFieldLockRecordDO>()  
417 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
418 - .eq(OrderFieldLockRecordDO::getOrderId, applyDO.getOrderId())  
419 - .eq(OrderFieldLockRecordDO::getUserId, applyDO.getApplyUserId())  
420 - .orderByDesc(OrderFieldLockRecordDO::getId)  
421 - .last("limit 1"));  
422 - if (Objects.isNull(recordDO)) {  
423 - recordDO = OrderFieldLockRecordDO.builder()  
424 - .orderId(applyDO.getOrderId())  
425 - .userId(applyDO.getApplyUserId())  
426 - .fields(applyDO.getFields()).build();  
427 - }  
428 - OrderLockFieldVO applyField = OrderFieldUtils.string2orderField(applyDO.getFields());  
429 - OrderLockFieldVO recordField = StringUtils.isNotBlank(recordDO.getFields()) ? OrderFieldUtils.string2orderField(recordDO.getFields()) : null;  
430 - if (Objects.nonNull(recordDO)) {  
431 - if (applyDO.getAuditRoleCodes().contains(RoleEnum.BUSINESS_USER.getCode())) {  
432 - recordField.setBaseFields(applyField.getBaseFields());  
433 - recordDO.setFields(JSONObject.toJSONString(recordField));  
434 - } else {  
435 - recordField.setTrackStageFields(applyField.getTrackStageFields());  
436 - recordField.setReportFields(applyField.getReportFields());  
437 - recordField.setProfitAnalysisFields(applyField.getProfitAnalysisFields());  
438 - recordField.setInspectionStageFields(applyField.getInspectionStageFields());  
439 - recordDO.setFields(JSONObject.toJSONString(recordField));  
440 - }  
441 - } else {  
442 - recordDO.setFields(applyDO.getFields());  
443 - }  
444 -  
445 -  
446 - if (Objects.isNull(recordDO.getId())) {  
447 - fieldLockRecordService.save(recordDO);  
448 - } else {  
449 - fieldLockRecordService.updateById(recordDO);  
450 - }  
451 - } else if (ApplyTypeEnum.ORDER_REPORT_APPLY.getType().equals(applyDO.getType())) {  
452 - applyDO.setAuditUserId(auditUserId);  
453 - applyDO.setStatus(ApplyStatusEnum.AUDIT_PASS.getStatus());  
454 -  
455 - OrderCompletionReportFieldVO reportFieldVO = JSONObject.parseObject(applyDO.getFields(), OrderCompletionReportFieldVO.class);  
456 -  
457 - OrderBaseInfoDO orderBaseInfoDO = orderBaseInfoService.getById(applyDO.getOrderId());  
458 - if (Objects.isNull(orderBaseInfoDO)) {  
459 - throw new BusinessException(ServerResultCode.ORDER_BASE_INFO_EMPTY);  
460 - }  
461 -  
462 - OrderCompletionReportDO reportDO = reportService.getOne(new LambdaQueryWrapper<OrderCompletionReportDO>()  
463 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
464 - .eq(OrderCompletionReportDO::getOrderId, applyDO.getOrderId()));  
465 - if (Objects.isNull(reportDO)) {  
466 - reportDO = reportField2reportDo(reportFieldVO);  
467 - reportDO.setOrderStatus(OrderStatusEnum.REPORT_AUDIT_PASS.getStatus());  
468 - reportService.save(reportDO);  
469 - } else {  
470 - reportDO.setOrderStatus(OrderStatusEnum.REPORT_AUDIT_PASS.getStatus());  
471 - reportDO.setIdeaSourceRate(Objects.nonNull(reportFieldVO.getIdeaSourceRate()) ? Double.valueOf(reportFieldVO.getIdeaSourceRate()) : null);  
472 - reportDO.setIdeaSource(reportFieldVO.getIdeaSource());  
473 - reportDO.setManualPreform1(reportFieldVO.getManualPreform1());  
474 - reportDO.setManualPreform1Rate(Objects.nonNull(reportFieldVO.getManualPreform1Rate()) ? Double.valueOf(reportFieldVO.getManualPreform1Rate()) : null);  
475 - reportDO.setManualPreform2(reportFieldVO.getManualPreform2());  
476 - reportDO.setManualPreform2Rate(Objects.nonNull(reportFieldVO.getManualPreform2Rate()) ? Double.valueOf(reportFieldVO.getManualPreform2Rate()) : null);  
477 - reportService.updateById(reportDO);  
478 - }  
479 - orderBaseInfoDO.setOrderStatus(OrderStatusEnum.REPORT_AUDIT_PASS.getStatus());  
480 - orderBaseInfoService.updateById(orderBaseInfoDO);  
481 - } else if (ApplyTypeEnum.ORDER_PROFIT_APPLY.getType().equals(applyDO.getType())) {  
482 - applyDO.setAuditUserId(auditUserId);  
483 - applyDO.setStatus(ApplyStatusEnum.AUDIT_PASS.getStatus());  
484 -  
485 - OrderProfitAnalysisFieldVO profitAnalysisFieldVO = JSONObject.parseObject(applyDO.getFields(), OrderProfitAnalysisFieldVO.class);  
486 -  
487 - OrderBaseInfoDO orderBaseInfoDO = orderBaseInfoService.getById(applyDO.getOrderId());  
488 - if (Objects.isNull(orderBaseInfoDO)) {  
489 - throw new BusinessException(ServerResultCode.ORDER_BASE_INFO_EMPTY);  
490 - }  
491 -  
492 - OrderProfitAnalysisDO profitAnalysisDO = profitAnalysisService.getOne(new LambdaQueryWrapper<OrderProfitAnalysisDO>()  
493 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
494 - .eq(OrderProfitAnalysisDO::getOrderId, applyDO.getOrderId()));  
495 - if (Objects.isNull(profitAnalysisDO)) {  
496 - profitAnalysisDO = profitField2profitDo(profitAnalysisFieldVO);  
497 - profitAnalysisDO.setOrderStatus(OrderStatusEnum.PROFIT_AUDIT_PASS.getStatus());  
498 - profitAnalysisService.save(profitAnalysisDO);  
499 - } else {  
500 - profitAnalysisDO.setOrderStatus(OrderStatusEnum.PROFIT_AUDIT_PASS.getStatus());  
501 - profitAnalysisDO.setCustomerRmbPrice(Objects.nonNull(profitAnalysisFieldVO.getCustomerRmbPrice()) ? Double.valueOf(profitAnalysisFieldVO.getCustomerRmbPrice()) : null);  
502 - profitAnalysisDO.setCustomerRmbTotalPrice(Objects.nonNull(profitAnalysisFieldVO.getCustomerRmbTotalPrice()) ? Double.valueOf(profitAnalysisFieldVO.getCustomerRmbTotalPrice()) : null);  
503 - profitAnalysisDO.setCustomerPrice(Objects.nonNull(profitAnalysisFieldVO.getCustomerPrice()) ? Double.valueOf(profitAnalysisFieldVO.getCustomerPrice()) : null);  
504 - profitAnalysisDO.setCustomerTotalPrice(Objects.nonNull(profitAnalysisFieldVO.getCustomerTotalPrice()) ? Double.valueOf(profitAnalysisFieldVO.getCustomerTotalPrice()) : null);  
505 - profitAnalysisDO.setCustomerCurrency(StringUtils.isNotBlank(profitAnalysisFieldVO.getCustomerCurrency()) ? profitAnalysisFieldVO.getCustomerCurrency() : null);  
506 - profitAnalysisDO.setExchangeRate(Objects.nonNull(profitAnalysisFieldVO.getExchangeRate()) ? Double.valueOf(profitAnalysisFieldVO.getExchangeRate()) : null);  
507 - profitAnalysisDO.setPacketPrice(Objects.nonNull(profitAnalysisFieldVO.getPacketPrice()) ? Double.valueOf(profitAnalysisFieldVO.getPacketPrice()) : null);  
508 - profitAnalysisDO.setPacketCurrency(StringUtils.isNotBlank(profitAnalysisFieldVO.getPacketCurrency()) ? profitAnalysisFieldVO.getPacketCurrency() : null);  
509 - profitAnalysisDO.setPacketTotalPrice(Objects.nonNull(profitAnalysisFieldVO.getPacketTotalPrice()) ? Double.valueOf(profitAnalysisFieldVO.getPacketTotalPrice()) : null);  
510 - profitAnalysisDO.setProductionDepartmentPrice(Objects.nonNull(profitAnalysisFieldVO.getProductionDepartmentPrice()) ? Double.valueOf(profitAnalysisFieldVO.getProductionDepartmentPrice()) : null);  
511 - profitAnalysisDO.setProductionDepartmentTotalPrice(Objects.nonNull(profitAnalysisFieldVO.getProductionDepartmentTotalPrice()) ? Double.valueOf(profitAnalysisFieldVO.getProductionDepartmentTotalPrice()) : null);  
512 - profitAnalysisDO.setProductionDepartmentCurrency(StringUtils.isNotBlank(profitAnalysisFieldVO.getProductionDepartmentCurrency()) ? profitAnalysisFieldVO.getProductionDepartmentCurrency() : null);  
513 - profitAnalysisDO.setProfitRate(Objects.nonNull(profitAnalysisFieldVO.getProfitRate()) ? Double.valueOf(profitAnalysisFieldVO.getProfitRate()) : null);  
514 - profitAnalysisDO.setProfitType(StringUtils.isBlank(profitAnalysisFieldVO.getProfitType()) ? Constant.ZERO : Integer.parseInt(profitAnalysisFieldVO.getProfitType()));  
515 - profitAnalysisService.updateById(profitAnalysisDO);  
516 - }  
517 - orderBaseInfoDO.setOrderStatus(OrderStatusEnum.PROFIT_AUDIT_PASS.getStatus());  
518 - orderBaseInfoService.updateById(orderBaseInfoDO);  
519 - }  
520 -  
521 - OrderAuditLogDO auditLogDO = OrderAuditLogDO.builder().applyId(applyDO.getId()).orderId(applyDO.getOrderId()).optType(ApplyStatusEnum.AUDIT_PASS.getDesc()).build();  
522 -  
523 - applyService.updateById(applyDO);  
524 -  
525 - auditLogService.save(auditLogDO);  
526 - }  
527 -  
528 - /**  
529 - * @param reportFieldVO  
530 - * @return  
531 - */  
532 - private OrderCompletionReportDO reportField2reportDo(OrderCompletionReportFieldVO reportFieldVO) {  
533 - return OrderCompletionReportDO.builder()  
534 - .ideaSourceRate(StringUtils.isNotBlank(reportFieldVO.getIdeaSourceRate()) ? Double.valueOf(reportFieldVO.getIdeaSourceRate()) : null)  
535 - .ideaSource(reportFieldVO.getIdeaSource())  
536 - .manualPreform1(reportFieldVO.getManualPreform1())  
537 - .manualPreform1Rate(StringUtils.isNotBlank(reportFieldVO.getManualPreform1Rate()) ? Double.valueOf(reportFieldVO.getManualPreform1Rate()) : null)  
538 - .manualPreform2(reportFieldVO.getManualPreform2())  
539 - .manualPreform2Rate(StringUtils.isNotBlank(reportFieldVO.getManualPreform2Rate()) ? Double.valueOf(reportFieldVO.getManualPreform2Rate()) : null)  
540 - .orderId(reportFieldVO.getOrderId())  
541 - .build();  
542 - }  
543 -  
544 - /**  
545 - * @param profitAnalysisFieldVO  
546 - * @return  
547 - */  
548 - private OrderProfitAnalysisDO profitField2profitDo(OrderProfitAnalysisFieldVO profitAnalysisFieldVO) {  
549 - return OrderProfitAnalysisDO.builder()  
550 - .orderId(profitAnalysisFieldVO.getOrderId())  
551 - .profitType(StringUtils.isBlank(profitAnalysisFieldVO.getProfitType()) ? Constant.ZERO : Integer.parseInt(profitAnalysisFieldVO.getProfitType()))  
552 - .customerRmbPrice(Objects.nonNull(profitAnalysisFieldVO.getCustomerRmbPrice()) ? Double.valueOf(profitAnalysisFieldVO.getCustomerRmbPrice()) : null)  
553 - .customerRmbTotalPrice(Objects.nonNull(profitAnalysisFieldVO.getCustomerRmbTotalPrice()) ? Double.valueOf(profitAnalysisFieldVO.getCustomerRmbTotalPrice()) : null)  
554 - .customerPrice(Objects.nonNull(profitAnalysisFieldVO.getCustomerPrice()) ? Double.valueOf(profitAnalysisFieldVO.getCustomerPrice()) : null)  
555 - .customerTotalPrice(Objects.nonNull(profitAnalysisFieldVO.getCustomerTotalPrice()) ? Double.valueOf(profitAnalysisFieldVO.getCustomerTotalPrice()) : null)  
556 - .customerCurrency(StringUtils.isNotBlank(profitAnalysisFieldVO.getCustomerCurrency()) ? profitAnalysisFieldVO.getCustomerCurrency() : null)  
557 - .exchangeRate(Objects.nonNull(profitAnalysisFieldVO.getExchangeRate()) ? Double.valueOf(profitAnalysisFieldVO.getExchangeRate()) : null)  
558 - .packetPrice(Objects.nonNull(profitAnalysisFieldVO.getPacketPrice()) ? Double.valueOf(profitAnalysisFieldVO.getPacketPrice()) : null)  
559 - .packetTotalPrice(Objects.nonNull(profitAnalysisFieldVO.getPacketTotalPrice()) ? Double.valueOf(profitAnalysisFieldVO.getPacketTotalPrice()) : null)  
560 - .packetCurrency(StringUtils.isNotBlank(profitAnalysisFieldVO.getPacketCurrency()) ? profitAnalysisFieldVO.getPacketCurrency() : null)  
561 - .productionDepartmentPrice(Objects.nonNull(profitAnalysisFieldVO.getProductionDepartmentPrice()) ? Double.valueOf(profitAnalysisFieldVO.getProductionDepartmentPrice()) : null)  
562 - .productionDepartmentTotalPrice(Objects.nonNull(profitAnalysisFieldVO.getProductionDepartmentTotalPrice()) ? Double.valueOf(profitAnalysisFieldVO.getProductionDepartmentTotalPrice()) : null)  
563 - .productionDepartmentCurrency(StringUtils.isNotBlank(profitAnalysisFieldVO.getProductionDepartmentCurrency()) ? profitAnalysisFieldVO.getProductionDepartmentCurrency() : null)  
564 - .profitRate(Objects.nonNull(profitAnalysisFieldVO.getProfitRate()) ? Double.valueOf(profitAnalysisFieldVO.getProfitRate()) : null)  
565 - .build();  
566 - }  
567 -  
568 - /**  
569 - * 修改数据  
570 - *  
571 - * @param orderFieldLockApplyVO 实例对象  
572 - * @return 实例对象  
573 - */  
574 - @Override  
575 - public ServerResult edit(OrderFieldLockApplyVO orderFieldLockApplyVO) {  
576 - //todo 校验  
577 - if (Objects.isNull(orderFieldLockApplyVO.getId())) {  
578 - return ServerResult.fail("id 不能为空");  
579 - }  
580 - OrderFieldLockApplyDO orderFieldLockApplyDo = BeanUtil.copyProperties(orderFieldLockApplyVO, OrderFieldLockApplyDO.class);  
581 -  
582 - updateById(orderFieldLockApplyDo);  
583 -  
584 - return ServerResult.success();  
585 - }  
586 -  
587 - /**  
588 - * 通过主键删除数据  
589 - *  
590 - * @param orderFieldLockApplyQueryVO 筛选条件  
591 - * @return 是否成功  
592 - */  
593 - @Override  
594 - public ServerResult deleteById(OrderFieldLockApplyQueryVO orderFieldLockApplyQueryVO) {  
595 - List<Long> ids = orderFieldLockApplyQueryVO.getIds();  
596 - if (CollUtil.isEmpty(ids)) {  
597 - return ServerResult.fail("ids 参数不能为空");  
598 - }  
599 - List<OrderFieldLockApplyDO> orderFieldLockApplyList = listByIds(ids);  
600 - if (CollUtil.isEmpty(orderFieldLockApplyList)) {  
601 - return ServerResult.success();  
602 - }  
603 - //todo 校验是否可以逻辑删除  
604 - LambdaUpdateWrapper<OrderFieldLockApplyDO> updateWrapper = new LambdaUpdateWrapper<OrderFieldLockApplyDO>()  
605 - .in(OrderFieldLockApplyDO::getId, ids)  
606 - .set(OrderFieldLockApplyDO::getEnableFlag, Constant.UNABLE_TWENTY);  
607 - update(updateWrapper);  
608 - return ServerResult.success();  
609 - }  
610 -  
611 - /**  
612 - * 通过订单id逻辑删除  
613 - *  
614 - * @param orderId  
615 - * @return  
616 - */  
617 - @Override  
618 - public boolean deleteByOrderId(Long orderId) {  
619 - LambdaUpdateWrapper<OrderFieldLockApplyDO> updateWrapper = new LambdaUpdateWrapper<OrderFieldLockApplyDO>()  
620 - .in(OrderFieldLockApplyDO::getOrderId, orderId)  
621 - .set(OrderFieldLockApplyDO::getEnableFlag, Constant.UNABLE_TWENTY);  
622 -  
623 - return update(updateWrapper);  
624 - }  
625 -  
626 - @Override  
627 - public boolean deleteByOrderIds(List<Long> orderIds) {  
628 - LambdaUpdateWrapper<OrderFieldLockApplyDO> updateWrapper = new LambdaUpdateWrapper<OrderFieldLockApplyDO>()  
629 - .in(OrderFieldLockApplyDO::getOrderId, orderIds)  
630 - .set(OrderFieldLockApplyDO::getEnableFlag, Constant.UNABLE_TWENTY);  
631 -  
632 - return update(updateWrapper);  
633 - }  
634 -}  
src/main/java/com/order/erp/service/order/impl/OrderFieldLockRecordServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
6 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
7 -import com.order.erp.common.constant.Constant;  
8 -import com.order.erp.common.constant.ServerResult;  
9 -import com.order.erp.domain.dto.order.OrderFieldLockRecordDO;  
10 -import com.order.erp.domain.vo.order.OrderFieldLockRecordQueryVO;  
11 -import com.order.erp.domain.vo.order.OrderFieldLockRecordVO;  
12 -import com.order.erp.mapper.order.OrderFieldLockRecordMapper;  
13 -import com.order.erp.service.order.OrderFieldLockRecordService;  
14 -import lombok.extern.slf4j.Slf4j;  
15 -import org.springframework.stereotype.Service;  
16 -  
17 -import java.util.List;  
18 -import java.util.Objects;  
19 -  
20 -/**  
21 - * 用户订单-字段锁定记录表(OrderFieldLockRecord)表服务实现类  
22 - *  
23 - * @author makejava  
24 - * @since 2023-09-08 15:26:45  
25 - */  
26 -@Slf4j  
27 -@Service  
28 -public class OrderFieldLockRecordServiceImpl extends ServiceImpl<OrderFieldLockRecordMapper, OrderFieldLockRecordDO> implements OrderFieldLockRecordService {  
29 -  
30 -  
31 - /**  
32 - * 通过ID查询单条数据  
33 - * <p>  
34 - * orderFieldLockRecordQueryVO 主键  
35 - *  
36 - * @return 实例对象  
37 - */  
38 - @Override  
39 - public ServerResult queryById(OrderFieldLockRecordQueryVO orderFieldLockRecordQueryVO) {  
40 - if (Objects.isNull(orderFieldLockRecordQueryVO.getId())) {  
41 - return ServerResult.fail("id 不能为空");  
42 - }  
43 - OrderFieldLockRecordDO OrderFieldLockRecordDo = getById(orderFieldLockRecordQueryVO.getId());  
44 - if (Objects.isNull(OrderFieldLockRecordDo)) {  
45 - return ServerResult.success(null);  
46 - }  
47 - return ServerResult.success(BeanUtil.copyProperties(OrderFieldLockRecordDo, OrderFieldLockRecordVO.class));  
48 - }  
49 -  
50 - /**  
51 - * 分页查询  
52 - *  
53 - * @param orderFieldLockRecordQueryVO 筛选条件  
54 - * @return 查询结果  
55 - */  
56 - @Override  
57 - public ServerResult list(OrderFieldLockRecordQueryVO orderFieldLockRecordQueryVO) {  
58 -  
59 - return ServerResult.success();  
60 - }  
61 -  
62 - /**  
63 - * 新增数据  
64 - *  
65 - * @param orderFieldLockRecordVO 实例对象  
66 - * @return 实例对象  
67 - */  
68 - @Override  
69 - public ServerResult add(OrderFieldLockRecordVO orderFieldLockRecordVO) {  
70 - //todo 校验  
71 - if (Objects.nonNull(orderFieldLockRecordVO.getId())) {  
72 - orderFieldLockRecordVO.setId(null);  
73 - }  
74 - OrderFieldLockRecordDO orderFieldLockRecordDo = BeanUtil.copyProperties(orderFieldLockRecordVO, OrderFieldLockRecordDO.class);  
75 -  
76 - save(orderFieldLockRecordDo);  
77 -  
78 - return ServerResult.success();  
79 - }  
80 -  
81 - /**  
82 - * 修改数据  
83 - *  
84 - * @param orderFieldLockRecordVO 实例对象  
85 - * @return 实例对象  
86 - */  
87 - @Override  
88 - public ServerResult edit(OrderFieldLockRecordVO orderFieldLockRecordVO) {  
89 - //todo 校验  
90 - if (Objects.isNull(orderFieldLockRecordVO.getId())) {  
91 - return ServerResult.fail("id 不能为空");  
92 - }  
93 - OrderFieldLockRecordDO orderFieldLockRecordDo = BeanUtil.copyProperties(orderFieldLockRecordVO, OrderFieldLockRecordDO.class);  
94 -  
95 - updateById(orderFieldLockRecordDo);  
96 -  
97 - return ServerResult.success();  
98 - }  
99 -  
100 - /**  
101 - * 通过主键删除数据  
102 - *  
103 - * @param orderFieldLockRecordQueryVO 筛选条件  
104 - * @return 是否成功  
105 - */  
106 - @Override  
107 - public ServerResult deleteById(OrderFieldLockRecordQueryVO orderFieldLockRecordQueryVO) {  
108 - List<Long> ids = orderFieldLockRecordQueryVO.getIds();  
109 - if (CollUtil.isEmpty(ids)) {  
110 - return ServerResult.fail("ids 参数不能为空");  
111 - }  
112 - List<OrderFieldLockRecordDO> orderFieldLockRecordList = listByIds(ids);  
113 - if (CollUtil.isEmpty(orderFieldLockRecordList)) {  
114 - return ServerResult.success();  
115 - }  
116 - //todo 校验是否可以逻辑删除  
117 - LambdaUpdateWrapper<OrderFieldLockRecordDO> updateWrapper = new LambdaUpdateWrapper<OrderFieldLockRecordDO>()  
118 - .in(OrderFieldLockRecordDO::getId, ids)  
119 - .set(OrderFieldLockRecordDO::getEnableFlag, Constant.UNABLE_TWENTY);  
120 - update(updateWrapper);  
121 - return ServerResult.success();  
122 - }  
123 -  
124 - /**  
125 - * 通过订单id逻辑删除  
126 - * @param orderId  
127 - * @return  
128 - */  
129 - @Override  
130 - public boolean deleteByOrderId(Long orderId) {  
131 - LambdaUpdateWrapper<OrderFieldLockRecordDO> updateWrapper = new LambdaUpdateWrapper<OrderFieldLockRecordDO>()  
132 - .eq(OrderFieldLockRecordDO::getOrderId, orderId)  
133 - .set(OrderFieldLockRecordDO::getEnableFlag, Constant.UNABLE_TWENTY);  
134 -  
135 - return update(updateWrapper);  
136 - }  
137 -  
138 - @Override  
139 - public boolean deleteByOrderIds(List<Long> orderIds) {  
140 - LambdaUpdateWrapper<OrderFieldLockRecordDO> updateWrapper = new LambdaUpdateWrapper<OrderFieldLockRecordDO>()  
141 - .in(OrderFieldLockRecordDO::getOrderId, orderIds)  
142 - .set(OrderFieldLockRecordDO::getEnableFlag, Constant.UNABLE_TWENTY);  
143 -  
144 - return update(updateWrapper);  
145 - }  
146 -}  
src/main/java/com/order/erp/service/order/impl/OrderInspectionStageServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
6 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
7 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
8 -import com.order.erp.common.constant.Constant;  
9 -import com.order.erp.common.constant.ServerResult;  
10 -import com.order.erp.domain.OrderStatusEnum;  
11 -import com.order.erp.domain.dto.order.OrderBaseInfoDO;  
12 -import com.order.erp.domain.dto.order.OrderInspectionStageDO;  
13 -import com.order.erp.domain.vo.order.OrderInspectionStageQueryVO;  
14 -import com.order.erp.domain.vo.order.OrderInspectionStageVO;  
15 -import com.order.erp.mapper.order.OrderInspectionStageMapper;  
16 -import com.order.erp.service.order.OrderInspectionStageService;  
17 -import lombok.extern.slf4j.Slf4j;  
18 -import org.springframework.stereotype.Service;  
19 -  
20 -import java.util.List;  
21 -import java.util.Objects;  
22 -  
23 -/**  
24 - * 订单-质检环节(OrderInspectionStage)表服务实现类  
25 - *  
26 - * @author makejava  
27 - * @since 2023-09-08 15:26:46  
28 - */  
29 -@Slf4j  
30 -@Service  
31 -public class OrderInspectionStageServiceImpl extends ServiceImpl<OrderInspectionStageMapper, OrderInspectionStageDO> implements OrderInspectionStageService {  
32 -  
33 -  
34 - /**  
35 - * 通过ID查询单条数据  
36 - * <p>  
37 - * orderInspectionStageQueryVO 主键  
38 - *  
39 - * @return 实例对象  
40 - */  
41 - @Override  
42 - public ServerResult queryById(OrderInspectionStageQueryVO orderInspectionStageQueryVO) {  
43 - if (Objects.isNull(orderInspectionStageQueryVO.getId())) {  
44 - return ServerResult.fail("id 不能为空");  
45 - }  
46 - OrderInspectionStageDO OrderInspectionStageDo = getById(orderInspectionStageQueryVO.getId());  
47 - if (Objects.isNull(OrderInspectionStageDo)) {  
48 - return ServerResult.success(null);  
49 - }  
50 - return ServerResult.success(BeanUtil.copyProperties(OrderInspectionStageDo, OrderInspectionStageVO.class));  
51 - }  
52 -  
53 - /**  
54 - * 分页查询  
55 - *  
56 - * @param orderInspectionStageQueryVO 筛选条件  
57 - * @return 查询结果  
58 - */  
59 - @Override  
60 - public ServerResult list(OrderInspectionStageQueryVO orderInspectionStageQueryVO) {  
61 -  
62 - return ServerResult.success();  
63 - }  
64 -  
65 - /**  
66 - * 新增数据  
67 - *  
68 - * @param orderInspectionStageVO 实例对象  
69 - * @return 实例对象  
70 - */  
71 - @Override  
72 - public ServerResult add(OrderInspectionStageVO orderInspectionStageVO) {  
73 - //todo 校验  
74 - if (Objects.nonNull(orderInspectionStageVO.getId())) {  
75 - orderInspectionStageVO.setId(null);  
76 - }  
77 - OrderInspectionStageDO orderInspectionStageDo = BeanUtil.copyProperties(orderInspectionStageVO, OrderInspectionStageDO.class);  
78 -  
79 - save(orderInspectionStageDo);  
80 -  
81 - return ServerResult.success();  
82 - }  
83 -  
84 - /**  
85 - * 修改数据  
86 - *  
87 - * @param orderInspectionStageVO 实例对象  
88 - * @return 实例对象  
89 - */  
90 - @Override  
91 - public ServerResult edit(OrderInspectionStageVO orderInspectionStageVO) {  
92 - //todo 校验  
93 - if (Objects.isNull(orderInspectionStageVO.getId())) {  
94 - return ServerResult.fail("id 不能为空");  
95 - }  
96 - OrderInspectionStageDO orderInspectionStageDo = BeanUtil.copyProperties(orderInspectionStageVO, OrderInspectionStageDO.class);  
97 -  
98 - updateById(orderInspectionStageDo);  
99 -  
100 - return ServerResult.success();  
101 - }  
102 -  
103 - /**  
104 - * 通过主键删除数据  
105 - *  
106 - * @param orderInspectionStageQueryVO 筛选条件  
107 - * @return 是否成功  
108 - */  
109 - @Override  
110 - public ServerResult deleteById(OrderInspectionStageQueryVO orderInspectionStageQueryVO) {  
111 - List<Long> ids = orderInspectionStageQueryVO.getIds();  
112 - if (CollUtil.isEmpty(ids)) {  
113 - return ServerResult.fail("ids 参数不能为空");  
114 - }  
115 - List<OrderInspectionStageDO> orderInspectionStageList = listByIds(ids);  
116 - if (CollUtil.isEmpty(orderInspectionStageList)) {  
117 - return ServerResult.success();  
118 - }  
119 - //todo 校验是否可以逻辑删除  
120 - LambdaUpdateWrapper<OrderInspectionStageDO> updateWrapper = new LambdaUpdateWrapper<OrderInspectionStageDO>()  
121 - .in(OrderInspectionStageDO::getId, ids)  
122 - .set(OrderInspectionStageDO::getEnableFlag, Constant.UNABLE_TWENTY);  
123 - update(updateWrapper);  
124 - return ServerResult.success();  
125 - }  
126 -  
127 - @Override  
128 - public boolean deleteByOrderId(Long orderId) {  
129 - LambdaUpdateWrapper<OrderInspectionStageDO> updateWrapper = new LambdaUpdateWrapper<OrderInspectionStageDO>()  
130 - .eq(OrderInspectionStageDO::getOrderId, orderId)  
131 - .set(OrderInspectionStageDO::getEnableFlag, Constant.UNABLE_TWENTY);  
132 - return update(updateWrapper);  
133 - }  
134 -  
135 - @Override  
136 - public boolean deleteByOrderIds(List<Long> orderIds) {  
137 - LambdaUpdateWrapper<OrderInspectionStageDO> updateWrapper = new LambdaUpdateWrapper<OrderInspectionStageDO>()  
138 - .in(OrderInspectionStageDO::getOrderId, orderIds)  
139 - .set(OrderInspectionStageDO::getEnableFlag, Constant.UNABLE_TWENTY);  
140 - return update(updateWrapper);  
141 - }  
142 -  
143 - @Override  
144 - public long countByOrderStatus(Integer orderStatus) {  
145 - return this.count(new LambdaQueryWrapper<OrderInspectionStageDO>().eq(OrderInspectionStageDO::getOrderStatus,orderStatus)  
146 - .eq(OrderInspectionStageDO::getEnableFlag,Constant.ENABLE_TEN));  
147 - }  
148 -  
149 - @Override  
150 - public long countRecentMonthByOrderStatus(Integer status) {  
151 - return this.baseMapper.countRecentMonthByOrderStatus(status);  
152 - }  
153 -}  
src/main/java/com/order/erp/service/order/impl/OrderOptLogServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
6 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
7 -import com.baomidou.mybatisplus.core.metadata.IPage;  
8 -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;  
9 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
10 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
11 -import com.order.erp.common.constant.Constant;  
12 -import com.order.erp.common.constant.ServerResult;  
13 -import com.order.erp.domain.dto.BaseDO;  
14 -import com.order.erp.domain.dto.admin.AdminUserDO;  
15 -import com.order.erp.domain.dto.order.OrderOptLogDO;  
16 -import com.order.erp.domain.vo.order.OrderOptLogQueryVO;  
17 -import com.order.erp.domain.vo.order.OrderOptLogResultVO;  
18 -import com.order.erp.domain.vo.order.OrderOptLogVO;  
19 -import com.order.erp.mapper.order.OrderOptLogMapper;  
20 -import com.order.erp.service.admin.AdminUserService;  
21 -import com.order.erp.service.order.OrderOptLogService;  
22 -import lombok.extern.slf4j.Slf4j;  
23 -import org.springframework.beans.BeanUtils;  
24 -import org.springframework.stereotype.Service;  
25 -  
26 -import javax.annotation.Resource;  
27 -import java.util.*;  
28 -import java.util.function.Function;  
29 -import java.util.stream.Collectors;  
30 -  
31 -/**  
32 - * 用户订单操作日志表(OrderOptLog)表服务实现类  
33 - *  
34 - * @author makejava  
35 - * @since 2023-09-08 15:26:47  
36 - */  
37 -@Slf4j  
38 -@Service  
39 -public class OrderOptLogServiceImpl extends ServiceImpl<OrderOptLogMapper, OrderOptLogDO> implements OrderOptLogService {  
40 -  
41 -  
42 - @Resource  
43 - private AdminUserService userService;  
44 -  
45 - /**  
46 - * 通过ID查询单条数据  
47 - * <p>  
48 - * orderOptLogQueryVO 主键  
49 - *  
50 - * @return 实例对象  
51 - */  
52 - @Override  
53 - public ServerResult queryById(OrderOptLogQueryVO orderOptLogQueryVO) {  
54 - if (Objects.isNull(orderOptLogQueryVO.getId())) {  
55 - return ServerResult.fail("id 不能为空");  
56 - }  
57 - OrderOptLogDO OrderOptLogDo = getById(orderOptLogQueryVO.getId());  
58 - if (Objects.isNull(OrderOptLogDo)) {  
59 - return ServerResult.success(null);  
60 - }  
61 - return ServerResult.success(BeanUtil.copyProperties(OrderOptLogDo, OrderOptLogVO.class));  
62 - }  
63 -  
64 - /**  
65 - * 分页查询  
66 - *  
67 - * @param orderOptLogQueryVO 筛选条件  
68 - * @return 查询结果  
69 - */  
70 - @Override  
71 - public ServerResult list(OrderOptLogQueryVO orderOptLogQueryVO) {  
72 -  
73 - return ServerResult.success();  
74 - }  
75 -  
76 - @Override  
77 - public ServerResult listByPage(OrderOptLogQueryVO queryVO) {  
78 - LambdaQueryWrapper<OrderOptLogDO> queryWrapper = buildQueryByParam(queryVO);  
79 - Page page = new Page<>(queryVO.getPage(), queryVO.getPageSize());  
80 - IPage<OrderOptLogDO> iPage = page(page, queryWrapper);  
81 -  
82 - Page<OrderOptLogResultVO> webVOPage = new Page<>();  
83 - List<OrderOptLogDO> orderOptLogDOS = iPage.getRecords();  
84 - if (CollectionUtils.isNotEmpty(orderOptLogDOS)) {  
85 - Set<Long> userIds = orderOptLogDOS.stream().map(OrderOptLogDO::getUserId).collect(Collectors.toSet());  
86 - Map<Long, AdminUserDO> userDOMap = new HashMap<>();  
87 - if (CollectionUtils.isNotEmpty(userIds)) {  
88 - List<AdminUserDO> userDOS = userService.listByIds(userIds);  
89 - if (CollectionUtils.isNotEmpty(userDOS)) {  
90 - userDOMap = userDOS.stream().collect(Collectors.toMap(AdminUserDO::getId, Function.identity()));  
91 - }  
92 - }  
93 - Map<Long, AdminUserDO> finalUserDOMap = userDOMap;  
94 - List<OrderOptLogResultVO> resultVOList = orderOptLogDOS.stream().map(x -> {  
95 - OrderOptLogResultVO resultVO = new OrderOptLogResultVO();  
96 - BeanUtils.copyProperties(x, resultVO);  
97 - if (finalUserDOMap.containsKey(x.getUserId())) {  
98 - resultVO.setUserName(finalUserDOMap.get(x.getUserId()).getUserName());  
99 - }  
100 - return resultVO;  
101 - }).collect(Collectors.toList());  
102 -  
103 - webVOPage.setRecords(resultVOList);  
104 - }  
105 - BeanUtils.copyProperties(page, webVOPage, "records");  
106 - return ServerResult.success(webVOPage);  
107 - }  
108 -  
109 - /**  
110 - * @param queryVO  
111 - * @return  
112 - */  
113 - private LambdaQueryWrapper<OrderOptLogDO> buildQueryByParam(OrderOptLogQueryVO queryVO) {  
114 - return new LambdaQueryWrapper<OrderOptLogDO>()  
115 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
116 - .eq(Objects.nonNull(queryVO.getOrderId()), OrderOptLogDO::getOrderId, queryVO.getOrderId())  
117 - .orderByDesc(OrderOptLogDO::getId)  
118 - ;  
119 - }  
120 -  
121 - /**  
122 - * 新增数据  
123 - *  
124 - * @param orderOptLogVO 实例对象  
125 - * @return 实例对象  
126 - */  
127 - @Override  
128 - public ServerResult add(OrderOptLogVO orderOptLogVO) {  
129 - //todo 校验  
130 - if (Objects.nonNull(orderOptLogVO.getId())) {  
131 - orderOptLogVO.setId(null);  
132 - }  
133 - OrderOptLogDO orderOptLogDo = BeanUtil.copyProperties(orderOptLogVO, OrderOptLogDO.class);  
134 -  
135 - save(orderOptLogDo);  
136 -  
137 - return ServerResult.success();  
138 - }  
139 -  
140 - /**  
141 - * 修改数据  
142 - *  
143 - * @param orderOptLogVO 实例对象  
144 - * @return 实例对象  
145 - */  
146 - @Override  
147 - public ServerResult edit(OrderOptLogVO orderOptLogVO) {  
148 - //todo 校验  
149 - if (Objects.isNull(orderOptLogVO.getId())) {  
150 - return ServerResult.fail("id 不能为空");  
151 - }  
152 - OrderOptLogDO orderOptLogDo = BeanUtil.copyProperties(orderOptLogVO, OrderOptLogDO.class);  
153 -  
154 - updateById(orderOptLogDo);  
155 -  
156 - return ServerResult.success();  
157 - }  
158 -  
159 - /**  
160 - * 通过主键删除数据  
161 - *  
162 - * @param orderOptLogQueryVO 筛选条件  
163 - * @return 是否成功  
164 - */  
165 - @Override  
166 - public ServerResult deleteById(OrderOptLogQueryVO orderOptLogQueryVO) {  
167 - List<Long> ids = orderOptLogQueryVO.getIds();  
168 - if (CollUtil.isEmpty(ids)) {  
169 - return ServerResult.fail("ids 参数不能为空");  
170 - }  
171 - List<OrderOptLogDO> orderOptLogList = listByIds(ids);  
172 - if (CollUtil.isEmpty(orderOptLogList)) {  
173 - return ServerResult.success();  
174 - }  
175 - //todo 校验是否可以逻辑删除  
176 - LambdaUpdateWrapper<OrderOptLogDO> updateWrapper = new LambdaUpdateWrapper<OrderOptLogDO>()  
177 - .in(OrderOptLogDO::getId, ids)  
178 - .set(OrderOptLogDO::getEnableFlag, Constant.UNABLE_TWENTY);  
179 - update(updateWrapper);  
180 - return ServerResult.success();  
181 - }  
182 -  
183 - /**  
184 - * 通过订单id逻辑删除  
185 - *  
186 - * @param orderId  
187 - * @return  
188 - */  
189 - @Override  
190 - public boolean deleteByOrderId(Long orderId) {  
191 - LambdaUpdateWrapper<OrderOptLogDO> updateWrapper = new LambdaUpdateWrapper<OrderOptLogDO>()  
192 - .eq(OrderOptLogDO::getOrderId, orderId)  
193 - .set(OrderOptLogDO::getEnableFlag, Constant.UNABLE_TWENTY);  
194 - return update(updateWrapper);  
195 - }  
196 -  
197 - @Override  
198 - public boolean deleteByOrderIds(List<Long> orderIds) {  
199 - LambdaUpdateWrapper<OrderOptLogDO> updateWrapper = new LambdaUpdateWrapper<OrderOptLogDO>()  
200 - .in(OrderOptLogDO::getOrderId, orderIds)  
201 - .set(OrderOptLogDO::getEnableFlag, Constant.UNABLE_TWENTY);  
202 - return update(updateWrapper);  
203 - }  
204 -}  
src/main/java/com/order/erp/service/order/impl/OrderProfitAnalysisServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
6 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
7 -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;  
8 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
9 -import com.order.erp.common.constant.Constant;  
10 -import com.order.erp.common.constant.ServerResult;  
11 -import com.order.erp.common.exception.BusinessException;  
12 -import com.order.erp.common.utils.ProfitUtils;  
13 -import com.order.erp.common.utils.StringUtils;  
14 -import com.order.erp.domain.dto.BaseDO;  
15 -import com.order.erp.domain.dto.order.OrderBaseInfoDO;  
16 -import com.order.erp.domain.dto.order.OrderProfitAnalysisDO;  
17 -import com.order.erp.domain.vo.OrderProfitAnalysisVo;  
18 -import com.order.erp.domain.vo.order.OrderProfitAnalysisQueryVO;  
19 -import com.order.erp.domain.vo.order.OrderProfitAnalysisVO;  
20 -import com.order.erp.domain.vo.order.ProfitCalculateVO;  
21 -import com.order.erp.mapper.order.OrderProfitAnalysisMapper;  
22 -import com.order.erp.service.order.OrderBaseInfoService;  
23 -import com.order.erp.service.order.OrderProfitAnalysisService;  
24 -import lombok.extern.slf4j.Slf4j;  
25 -import org.springframework.beans.BeanUtils;  
26 -import org.springframework.stereotype.Service;  
27 -  
28 -import javax.annotation.Resource;  
29 -import java.math.BigDecimal;  
30 -import java.util.HashSet;  
31 -import java.util.List;  
32 -import java.util.Objects;  
33 -import java.util.Set;  
34 -import java.util.stream.Collectors;  
35 -  
36 -/**  
37 - * 订单利润分析表(OrderProfitAnalysis)表服务实现类  
38 - *  
39 - * @author makejava  
40 - * @since 2023-09-08 15:26:47  
41 - */  
42 -@Slf4j  
43 -@Service  
44 -public class OrderProfitAnalysisServiceImpl extends ServiceImpl<OrderProfitAnalysisMapper, OrderProfitAnalysisDO> implements OrderProfitAnalysisService {  
45 -  
46 - @Resource  
47 - private OrderBaseInfoService orderBaseInfoService;  
48 -  
49 - /**  
50 - * 通过ID查询单条数据  
51 - * <p>  
52 - * orderProfitAnalysisQueryVO 主键  
53 - *  
54 - * @return 实例对象  
55 - */  
56 - @Override  
57 - public ServerResult queryById(OrderProfitAnalysisQueryVO orderProfitAnalysisQueryVO) {  
58 - if (Objects.isNull(orderProfitAnalysisQueryVO.getId())) {  
59 - return ServerResult.fail("id 不能为空");  
60 - }  
61 - OrderProfitAnalysisDO OrderProfitAnalysisDo = getById(orderProfitAnalysisQueryVO.getId());  
62 - if (Objects.isNull(OrderProfitAnalysisDo)) {  
63 - return ServerResult.success(null);  
64 - }  
65 - return ServerResult.success(BeanUtil.copyProperties(OrderProfitAnalysisDo, OrderProfitAnalysisVO.class));  
66 - }  
67 -  
68 - /**  
69 - * 分页查询  
70 - *  
71 - * @param orderProfitAnalysisQueryVO 筛选条件  
72 - * @return 查询结果  
73 - */  
74 - @Override  
75 - public ServerResult list(OrderProfitAnalysisQueryVO orderProfitAnalysisQueryVO) {  
76 -  
77 - return ServerResult.success();  
78 - }  
79 -  
80 - /**  
81 - * 新增数据  
82 - *  
83 - * @param orderProfitAnalysisVO 实例对象  
84 - * @return 实例对象  
85 - */  
86 - @Override  
87 - public ServerResult add(OrderProfitAnalysisVO orderProfitAnalysisVO) {  
88 - //todo 校验  
89 - if (Objects.nonNull(orderProfitAnalysisVO.getId())) {  
90 - orderProfitAnalysisVO.setId(null);  
91 - }  
92 - OrderProfitAnalysisDO orderProfitAnalysisDo = BeanUtil.copyProperties(orderProfitAnalysisVO, OrderProfitAnalysisDO.class);  
93 -  
94 - save(orderProfitAnalysisDo);  
95 -  
96 - return ServerResult.success();  
97 - }  
98 -  
99 - /**  
100 - * 修改数据  
101 - *  
102 - * @param orderProfitAnalysisVO 实例对象  
103 - * @return 实例对象  
104 - */  
105 - @Override  
106 - public ServerResult edit(OrderProfitAnalysisVO orderProfitAnalysisVO) {  
107 - //todo 校验  
108 - if (Objects.isNull(orderProfitAnalysisVO.getId())) {  
109 - return ServerResult.fail("id 不能为空");  
110 - }  
111 - OrderProfitAnalysisDO orderProfitAnalysisDo = BeanUtil.copyProperties(orderProfitAnalysisVO, OrderProfitAnalysisDO.class);  
112 -  
113 - updateById(orderProfitAnalysisDo);  
114 -  
115 - return ServerResult.success();  
116 - }  
117 -  
118 - /**  
119 - * 通过主键删除数据  
120 - *  
121 - * @param orderProfitAnalysisQueryVO 筛选条件  
122 - * @return 是否成功  
123 - */  
124 - @Override  
125 - public ServerResult deleteById(OrderProfitAnalysisQueryVO orderProfitAnalysisQueryVO) {  
126 - List<Long> ids = orderProfitAnalysisQueryVO.getIds();  
127 - if (CollUtil.isEmpty(ids)) {  
128 - return ServerResult.fail("ids 参数不能为空");  
129 - }  
130 - List<OrderProfitAnalysisDO> orderProfitAnalysisList = listByIds(ids);  
131 - if (CollUtil.isEmpty(orderProfitAnalysisList)) {  
132 - return ServerResult.success();  
133 - }  
134 - //todo 校验是否可以逻辑删除  
135 - LambdaUpdateWrapper<OrderProfitAnalysisDO> updateWrapper = new LambdaUpdateWrapper<OrderProfitAnalysisDO>()  
136 - .in(OrderProfitAnalysisDO::getId, ids)  
137 - .set(OrderProfitAnalysisDO::getEnableFlag, Constant.UNABLE_TWENTY);  
138 - update(updateWrapper);  
139 - return ServerResult.success();  
140 - }  
141 -  
142 - /**  
143 - * 通过订单id逻辑删除  
144 - *  
145 - * @param orderId  
146 - * @return  
147 - */  
148 - @Override  
149 - public boolean deleteByOrderId(Long orderId) {  
150 - LambdaUpdateWrapper<OrderProfitAnalysisDO> updateWrapper = new LambdaUpdateWrapper<OrderProfitAnalysisDO>()  
151 - .eq(OrderProfitAnalysisDO::getOrderId, orderId)  
152 - .set(OrderProfitAnalysisDO::getEnableFlag, Constant.UNABLE_TWENTY);  
153 - return update(updateWrapper);  
154 - }  
155 -  
156 - @Override  
157 - public boolean deleteByOrderIds(List<Long> orderIds) {  
158 - LambdaUpdateWrapper<OrderProfitAnalysisDO> updateWrapper = new LambdaUpdateWrapper<OrderProfitAnalysisDO>()  
159 - .in(OrderProfitAnalysisDO::getOrderId, orderIds)  
160 - .set(OrderProfitAnalysisDO::getEnableFlag, Constant.UNABLE_TWENTY);  
161 - return update(updateWrapper);  
162 - }  
163 -  
164 - @Override  
165 - public ServerResult calculate(ProfitCalculateVO calculateVO) {  
166 - return ServerResult.success(ProfitUtils.calculateProfitRate(calculateVO));  
167 - }  
168 -  
169 - @Override  
170 - public ServerResult<OrderProfitAnalysisVO> analysisByQueryVO(OrderProfitAnalysisVo profitAnalysisVo) {  
171 - LambdaQueryWrapper<OrderBaseInfoDO> queryWrapper = orderBaseInfoService.buildQueryByParam(profitAnalysisVo.getQueryVO());  
172 - List<OrderBaseInfoDO> orderBaseInfoDOList = orderBaseInfoService.list(queryWrapper);  
173 - if (CollectionUtils.isEmpty(orderBaseInfoDOList)) {  
174 - throw new BusinessException("页面未查询到数据,请重置刷新页面后操作");  
175 - }  
176 - //查询订单id的利润分析数据  
177 - List<OrderProfitAnalysisDO> orderProfits = list(new LambdaQueryWrapper<OrderProfitAnalysisDO>()  
178 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
179 - .in(OrderProfitAnalysisDO::getOrderId, orderBaseInfoDOList.stream().map(OrderBaseInfoDO::getId).collect(Collectors.toSet())));  
180 -  
181 - if (CollectionUtils.isEmpty(orderProfits)) {  
182 - throw new BusinessException("选中的订单信息不存在");  
183 - }  
184 - return wrapperProfitResult(profitAnalysisVo, orderProfits);  
185 - }  
186 -  
187 - @Override  
188 - public ServerResult<OrderProfitAnalysisVO> analysis(OrderProfitAnalysisVo orderProfitAnalysisVo) {  
189 - if (CollectionUtils.isNotEmpty(orderProfitAnalysisVo.getOrderIds())) {  
190 - return analysisByOrderIds(orderProfitAnalysisVo);  
191 - }  
192 - return analysisByQueryVO(orderProfitAnalysisVo);  
193 - }  
194 -  
195 - @Override  
196 - public ServerResult<OrderProfitAnalysisVO> analysisByOrderIds(OrderProfitAnalysisVo profitAnalysisVo) {  
197 - //查询订单id的利润分析数据  
198 - List<OrderProfitAnalysisDO> orderProfits = list(new LambdaQueryWrapper<OrderProfitAnalysisDO>()  
199 - .eq(BaseDO::getEnableFlag, Constant.ENABLE_TEN)  
200 - .in(OrderProfitAnalysisDO::getOrderId, profitAnalysisVo.getOrderIds()));  
201 -  
202 - if (CollectionUtils.isEmpty(orderProfits)) {  
203 - throw new BusinessException("选中的订单信息不存在");  
204 - }  
205 -  
206 - return wrapperProfitResult(profitAnalysisVo, orderProfits);  
207 - }  
208 -  
209 - /**  
210 - * @param profitAnalysisVo  
211 - * @param orderProfits  
212 - * @return  
213 - */  
214 - private ServerResult<OrderProfitAnalysisVO> wrapperProfitResult(OrderProfitAnalysisVo profitAnalysisVo, List<OrderProfitAnalysisDO> orderProfits) {  
215 - BigDecimal packetTotalPrice = new BigDecimal(Constant.ZERO_STRING);  
216 - BigDecimal customerTotalPrice = new BigDecimal(Constant.ZERO_STRING);  
217 - BigDecimal productionDepartmentTotalPrice = new BigDecimal(Constant.ZERO_STRING);  
218 - for (OrderProfitAnalysisDO orderProfit : orderProfits) {  
219 - ProfitCalculateVO profitCalculateVO = new ProfitCalculateVO();  
220 - BeanUtils.copyProperties(orderProfit, profitCalculateVO);  
221 - packetTotalPrice = packetTotalPrice.add(new BigDecimal(orderProfit.getPacketTotalPrice()));  
222 - customerTotalPrice = customerTotalPrice.add(new BigDecimal(orderProfit.getCustomerTotalPrice()));  
223 - productionDepartmentTotalPrice = productionDepartmentTotalPrice.add(new BigDecimal(orderProfit.getProductionDepartmentTotalPrice()));  
224 - }  
225 - List<OrderBaseInfoDO> orderBaseInfoDOS = orderBaseInfoService.listByIds(orderProfits.stream().map(OrderProfitAnalysisDO::getOrderId).collect(Collectors.toSet()));  
226 - int orderTotalNum = 0;  
227 - Set<String> innerNoSet = new HashSet<>();  
228 - for (OrderBaseInfoDO orderBaseInfoDO : orderBaseInfoDOS) {  
229 - if (Objects.nonNull(orderBaseInfoDO.getOrderCount())) {  
230 - orderTotalNum += orderBaseInfoDO.getOrderCount();  
231 - }  
232 - innerNoSet.add(orderBaseInfoDO.getInnerNo());  
233 - }  
234 - OrderProfitAnalysisVO profitAnalysisVO = new OrderProfitAnalysisVO();  
235 - profitAnalysisVO.setPacketTotalPrice(packetTotalPrice.doubleValue());  
236 - profitAnalysisVO.setCustomerTotalPrice(customerTotalPrice.doubleValue());  
237 - profitAnalysisVO.setProductionDepartmentTotalPrice(productionDepartmentTotalPrice.doubleValue());  
238 - profitAnalysisVO.setProfitRate(ProfitUtils.calculateProfitRate(ProfitCalculateVO.builder()  
239 - .profitType(StringUtils.isBlank(profitAnalysisVo.getProfitType()) ? Constant.ZERO : Integer.parseInt(profitAnalysisVo.getProfitType()))  
240 - .exchangeRate(Double.parseDouble(profitAnalysisVo.getExchangeRate()))  
241 - .productionDepartmentTotalPrice(productionDepartmentTotalPrice.doubleValue())  
242 - .packetTotalPrice(packetTotalPrice.doubleValue())  
243 - .customerTotalPrice(customerTotalPrice.doubleValue()).build()));  
244 - profitAnalysisVO.setOrderTotalNum(orderTotalNum);  
245 - profitAnalysisVO.setRecordNum(innerNoSet.size());  
246 -  
247 - return ServerResult.success(profitAnalysisVO);  
248 - }  
249 -  
250 - @Override  
251 - public long countByOrderStatus(Integer status) {  
252 - return this.count(new LambdaQueryWrapper<OrderProfitAnalysisDO>().eq(OrderProfitAnalysisDO::getOrderStatus, status)  
253 - .eq(OrderProfitAnalysisDO::getEnableFlag, Constant.ENABLE_TEN));  
254 - }  
255 -  
256 - @Override  
257 - public long countRecentWeekByOrderStatus(Integer status) {  
258 - return this.baseMapper.countRecentWeekByOrderStatus(status);  
259 - }  
260 -}  
src/main/java/com/order/erp/service/order/impl/OrderTrackStageServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
6 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
7 -import com.order.erp.common.constant.Constant;  
8 -import com.order.erp.common.constant.ServerResult;  
9 -import com.order.erp.domain.dto.order.OrderTrackStageDO;  
10 -import com.order.erp.domain.vo.order.OrderTrackStageQueryVO;  
11 -import com.order.erp.domain.vo.order.OrderTrackStageVO;  
12 -import com.order.erp.mapper.order.OrderTrackStageMapper;  
13 -import com.order.erp.service.order.OrderTrackStageService;  
14 -import lombok.extern.slf4j.Slf4j;  
15 -import org.springframework.stereotype.Service;  
16 -  
17 -import java.util.List;  
18 -import java.util.Objects;  
19 -  
20 -/**  
21 - * 订单-跟单环节(OrderTrackStage)表服务实现类  
22 - *  
23 - * @author makejava  
24 - * @since 2023-09-08 15:26:48  
25 - */  
26 -@Slf4j  
27 -@Service  
28 -public class OrderTrackStageServiceImpl extends ServiceImpl<OrderTrackStageMapper, OrderTrackStageDO> implements OrderTrackStageService {  
29 -  
30 -  
31 - /**  
32 - * 通过ID查询单条数据  
33 - * <p>  
34 - * orderTrackStageQueryVO 主键  
35 - *  
36 - * @return 实例对象  
37 - */  
38 - @Override  
39 - public ServerResult queryById(OrderTrackStageQueryVO orderTrackStageQueryVO) {  
40 - if (Objects.isNull(orderTrackStageQueryVO.getId())) {  
41 - return ServerResult.fail("id 不能为空");  
42 - }  
43 - OrderTrackStageDO OrderTrackStageDo = getById(orderTrackStageQueryVO.getId());  
44 - if (Objects.isNull(OrderTrackStageDo)) {  
45 - return ServerResult.success(null);  
46 - }  
47 - return ServerResult.success(BeanUtil.copyProperties(OrderTrackStageDo, OrderTrackStageVO.class));  
48 - }  
49 -  
50 - /**  
51 - * 分页查询  
52 - *  
53 - * @param orderTrackStageQueryVO 筛选条件  
54 - * @return 查询结果  
55 - */  
56 - @Override  
57 - public ServerResult list(OrderTrackStageQueryVO orderTrackStageQueryVO) {  
58 -  
59 - return ServerResult.success();  
60 - }  
61 -  
62 - /**  
63 - * 新增数据  
64 - *  
65 - * @param orderTrackStageVO 实例对象  
66 - * @return 实例对象  
67 - */  
68 - @Override  
69 - public ServerResult add(OrderTrackStageVO orderTrackStageVO) {  
70 - //todo 校验  
71 - if (Objects.nonNull(orderTrackStageVO.getId())) {  
72 - orderTrackStageVO.setId(null);  
73 - }  
74 - OrderTrackStageDO orderTrackStageDo = BeanUtil.copyProperties(orderTrackStageVO, OrderTrackStageDO.class);  
75 -  
76 - save(orderTrackStageDo);  
77 -  
78 - return ServerResult.success();  
79 - }  
80 -  
81 - /**  
82 - * 修改数据  
83 - *  
84 - * @param orderTrackStageVO 实例对象  
85 - * @return 实例对象  
86 - */  
87 - @Override  
88 - public ServerResult edit(OrderTrackStageVO orderTrackStageVO) {  
89 - //todo 校验  
90 - if (Objects.isNull(orderTrackStageVO.getId())) {  
91 - return ServerResult.fail("id 不能为空");  
92 - }  
93 - OrderTrackStageDO orderTrackStageDo = BeanUtil.copyProperties(orderTrackStageVO, OrderTrackStageDO.class);  
94 -  
95 - updateById(orderTrackStageDo);  
96 -  
97 - return ServerResult.success();  
98 - }  
99 -  
100 - /**  
101 - * 通过主键删除数据  
102 - *  
103 - * @param orderTrackStageQueryVO 筛选条件  
104 - * @return 是否成功  
105 - */  
106 - @Override  
107 - public ServerResult deleteById(OrderTrackStageQueryVO orderTrackStageQueryVO) {  
108 - List<Long> ids = orderTrackStageQueryVO.getIds();  
109 - if (CollUtil.isEmpty(ids)) {  
110 - return ServerResult.fail("ids 参数不能为空");  
111 - }  
112 - List<OrderTrackStageDO> orderTrackStageList = listByIds(ids);  
113 - if (CollUtil.isEmpty(orderTrackStageList)) {  
114 - return ServerResult.success();  
115 - }  
116 - //todo 校验是否可以逻辑删除  
117 - LambdaUpdateWrapper<OrderTrackStageDO> updateWrapper = new LambdaUpdateWrapper<OrderTrackStageDO>()  
118 - .in(OrderTrackStageDO::getId, ids)  
119 - .set(OrderTrackStageDO::getEnableFlag, Constant.UNABLE_TWENTY);  
120 - update(updateWrapper);  
121 - return ServerResult.success();  
122 - }  
123 -  
124 - /**  
125 - * 通过订单id逻辑删除  
126 - * @param orderId  
127 - * @return  
128 - */  
129 - @Override  
130 - public boolean deleteByOrderId(Long orderId) {  
131 - LambdaUpdateWrapper<OrderTrackStageDO> updateWrapper = new LambdaUpdateWrapper<OrderTrackStageDO>()  
132 - .eq(OrderTrackStageDO::getOrderId, orderId)  
133 - .set(OrderTrackStageDO::getEnableFlag, Constant.UNABLE_TWENTY);  
134 - return update(updateWrapper);  
135 - }  
136 -  
137 - @Override  
138 - public boolean deleteByOrderIds(List<Long> orderIds) {  
139 - LambdaUpdateWrapper<OrderTrackStageDO> updateWrapper = new LambdaUpdateWrapper<OrderTrackStageDO>()  
140 - .in(OrderTrackStageDO::getOrderId, orderIds)  
141 - .set(OrderTrackStageDO::getEnableFlag, Constant.UNABLE_TWENTY);  
142 - return update(updateWrapper);  
143 - }  
144 -}  
src/main/java/com/order/erp/service/order/impl/OrderUpdateLogServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
6 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
7 -import com.order.erp.common.constant.Constant;  
8 -import com.order.erp.common.constant.ServerResult;  
9 -import com.order.erp.common.utils.PageUtils;  
10 -import com.order.erp.domain.dto.order.OrderUpdateLogDO;  
11 -import com.order.erp.domain.vo.order.OrderUpdateLogQueryVO;  
12 -import com.order.erp.domain.vo.order.OrderUpdateLogVO;  
13 -import com.order.erp.mapper.order.OrderUpdateLogMapper;  
14 -import com.order.erp.service.order.OrderUpdateLogService;  
15 -import lombok.extern.slf4j.Slf4j;  
16 -import org.springframework.stereotype.Service;  
17 -  
18 -import java.util.List;  
19 -import java.util.Objects;  
20 -  
21 -/**  
22 - * 订单更新日志表(OrderUpdateLog)表服务实现类  
23 - *  
24 - * @author makejava  
25 - * @since 2024-07-03 17:30:32  
26 - */  
27 -@Slf4j  
28 -@Service  
29 -public class OrderUpdateLogServiceImpl extends ServiceImpl<OrderUpdateLogMapper, OrderUpdateLogDO> implements OrderUpdateLogService {  
30 -  
31 -  
32 - /**  
33 - * 通过ID查询单条数据  
34 - * <p>  
35 - * orderUpdateLogQueryVO 主键  
36 - *  
37 - * @return 实例对象  
38 - */  
39 - @Override  
40 - public ServerResult queryById(OrderUpdateLogQueryVO orderUpdateLogQueryVO) {  
41 - if (Objects.isNull(orderUpdateLogQueryVO.getId())) {  
42 - return ServerResult.fail("id 不能为空");  
43 - }  
44 - OrderUpdateLogDO OrderUpdateLogDo = getById(orderUpdateLogQueryVO.getId());  
45 - if (Objects.isNull(OrderUpdateLogDo)) {  
46 - return ServerResult.success(null);  
47 - }  
48 - return ServerResult.success(BeanUtil.copyProperties(OrderUpdateLogDo, OrderUpdateLogVO.class));  
49 - }  
50 -  
51 - /**  
52 - * 分页查询  
53 - *  
54 - * @param orderUpdateLogQueryVO 筛选条件  
55 - * @return 查询结果  
56 - */  
57 - @Override  
58 - public ServerResult list(OrderUpdateLogQueryVO orderUpdateLogQueryVO) {  
59 -  
60 - return ServerResult.success(PageUtils.getPageReturn(null, orderUpdateLogQueryVO));  
61 - }  
62 -  
63 - /**  
64 - * 新增数据  
65 - *  
66 - * @param orderUpdateLogVO 实例对象  
67 - * @return 实例对象  
68 - */  
69 - @Override  
70 - public ServerResult add(OrderUpdateLogVO orderUpdateLogVO) {  
71 - //todo 校验  
72 - if (Objects.nonNull(orderUpdateLogVO.getId())) {  
73 - orderUpdateLogVO.setId(null);  
74 - }  
75 - OrderUpdateLogDO orderUpdateLogDo = BeanUtil.copyProperties(orderUpdateLogVO, OrderUpdateLogDO.class);  
76 -  
77 - save(orderUpdateLogDo);  
78 -  
79 - return ServerResult.success();  
80 - }  
81 -  
82 - /**  
83 - * 修改数据  
84 - *  
85 - * @param orderUpdateLogVO 实例对象  
86 - * @return 实例对象  
87 - */  
88 - @Override  
89 - public ServerResult edit(OrderUpdateLogVO orderUpdateLogVO) {  
90 - //todo 校验  
91 - if (Objects.isNull(orderUpdateLogVO.getId())) {  
92 - return ServerResult.fail("id 不能为空");  
93 - }  
94 - OrderUpdateLogDO orderUpdateLogDo = BeanUtil.copyProperties(orderUpdateLogVO, OrderUpdateLogDO.class);  
95 -  
96 - updateById(orderUpdateLogDo);  
97 -  
98 - return ServerResult.success();  
99 - }  
100 -  
101 - /**  
102 - * 通过主键删除数据  
103 - *  
104 - * @param orderUpdateLogQueryVO 筛选条件  
105 - * @return 是否成功  
106 - */  
107 - @Override  
108 - public ServerResult deleteById(OrderUpdateLogQueryVO orderUpdateLogQueryVO) {  
109 - List<Long> ids = orderUpdateLogQueryVO.getIds();  
110 - if (CollUtil.isEmpty(ids)) {  
111 - return ServerResult.fail("ids 参数不能为空");  
112 - }  
113 - List<OrderUpdateLogDO> orderUpdateLogList = listByIds(ids);  
114 - if (CollUtil.isEmpty(orderUpdateLogList)) {  
115 - return ServerResult.success();  
116 - }  
117 - //todo 校验是否可以逻辑删除  
118 - LambdaUpdateWrapper<OrderUpdateLogDO> updateWrapper = new LambdaUpdateWrapper<OrderUpdateLogDO>()  
119 - .in(OrderUpdateLogDO::getId, ids)  
120 - .set(OrderUpdateLogDO::getEnableFlag, Constant.UNABLE_TWENTY);  
121 - update(updateWrapper);  
122 - return ServerResult.success();  
123 - }  
124 -}  
src/main/java/com/order/erp/service/order/impl/ProducePaymentCheckBillOrderServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
6 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
7 -import com.baomidou.mybatisplus.core.metadata.IPage;  
8 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
9 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
10 -import com.order.erp.common.constant.Constant;  
11 -import com.order.erp.common.constant.ServerResult;  
12 -import com.order.erp.common.utils.PageUtils;  
13 -import com.order.erp.domain.dto.order.ProducePaymentCheckBillOrderDO;  
14 -import com.order.erp.domain.vo.order.ProducePaymentCheckBillOrderQueryVO;  
15 -import com.order.erp.domain.vo.order.ProducePaymentCheckBillOrderVO;  
16 -import com.order.erp.mapper.order.ProducePaymentCheckBillOrderMapper;  
17 -import com.order.erp.service.order.ProducePaymentCheckBillOrderService;  
18 -import lombok.extern.slf4j.Slf4j;  
19 -import org.springframework.stereotype.Service;  
20 -  
21 -import java.util.List;  
22 -import java.util.Objects;  
23 -  
24 -/**  
25 - * 生产科对账单应收账单(ProducePaymentCheckBillOrder)表服务实现类  
26 - *  
27 - * @author makejava  
28 - * @since 2024-08-05 16:26:35  
29 - */  
30 -@Slf4j  
31 -@Service  
32 -public class ProducePaymentCheckBillOrderServiceImpl extends ServiceImpl<ProducePaymentCheckBillOrderMapper, ProducePaymentCheckBillOrderDO> implements ProducePaymentCheckBillOrderService {  
33 -  
34 -  
35 - /**  
36 - * 通过ID查询单条数据  
37 - * <p>  
38 - * producePaymentCheckBillOrderQueryVO 主键  
39 - *  
40 - * @return 实例对象  
41 - */  
42 - @Override  
43 - public ServerResult queryById(ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {  
44 - if (Objects.isNull(producePaymentCheckBillOrderQueryVO.getId())) {  
45 - return ServerResult.fail("id 不能为空");  
46 - }  
47 - ProducePaymentCheckBillOrderDO ProducePaymentCheckBillOrderDo = getById(producePaymentCheckBillOrderQueryVO.getId());  
48 - if (Objects.isNull(ProducePaymentCheckBillOrderDo)) {  
49 - return ServerResult.success(null);  
50 - }  
51 - return ServerResult.success(BeanUtil.copyProperties(ProducePaymentCheckBillOrderDo, ProducePaymentCheckBillOrderVO.class));  
52 - }  
53 -  
54 - /**  
55 - * 分页查询  
56 - *  
57 - * @param producePaymentCheckBillOrderQueryVO 筛选条件  
58 - * @return 查询结果  
59 - */  
60 - @Override  
61 - public ServerResult list(ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {  
62 -  
63 - LambdaQueryWrapper<ProducePaymentCheckBillOrderDO> queryWapper = new LambdaQueryWrapper<ProducePaymentCheckBillOrderDO>()  
64 - .eq(ProducePaymentCheckBillOrderDO::getEnableFlag, Constant.ENABLE_TEN)  
65 - .orderByDesc(ProducePaymentCheckBillOrderDO::getId);  
66 - Page page = new Page<>(producePaymentCheckBillOrderQueryVO.getPage(), producePaymentCheckBillOrderQueryVO.getPageSize());  
67 - IPage<ProducePaymentCheckBillOrderDO> iPage = page(page, queryWapper);  
68 - producePaymentCheckBillOrderQueryVO.setTotal(Long.valueOf(iPage.getTotal()).intValue());  
69 - return ServerResult.success(PageUtils.getPageReturn(null, producePaymentCheckBillOrderQueryVO));  
70 - }  
71 -  
72 - /**  
73 - * 新增数据  
74 - *  
75 - * @param producePaymentCheckBillOrderVO 实例对象  
76 - * @return 实例对象  
77 - */  
78 - @Override  
79 - public ServerResult add(ProducePaymentCheckBillOrderVO producePaymentCheckBillOrderVO) {  
80 - //todo 校验  
81 - if (Objects.nonNull(producePaymentCheckBillOrderVO.getId())) {  
82 - producePaymentCheckBillOrderVO.setId(null);  
83 - }  
84 - ProducePaymentCheckBillOrderDO producePaymentCheckBillOrderDo = BeanUtil.copyProperties(producePaymentCheckBillOrderVO, ProducePaymentCheckBillOrderDO.class);  
85 -  
86 - save(producePaymentCheckBillOrderDo);  
87 -  
88 - return ServerResult.success();  
89 - }  
90 -  
91 - /**  
92 - * 修改数据  
93 - *  
94 - * @param producePaymentCheckBillOrderVO 实例对象  
95 - * @return 实例对象  
96 - */  
97 - @Override  
98 - public ServerResult edit(ProducePaymentCheckBillOrderVO producePaymentCheckBillOrderVO) {  
99 - //todo 校验  
100 - if (Objects.isNull(producePaymentCheckBillOrderVO.getId())) {  
101 - return ServerResult.fail("id 不能为空");  
102 - }  
103 - ProducePaymentCheckBillOrderDO producePaymentCheckBillOrderDo = BeanUtil.copyProperties(producePaymentCheckBillOrderVO, ProducePaymentCheckBillOrderDO.class);  
104 -  
105 - updateById(producePaymentCheckBillOrderDo);  
106 -  
107 - return ServerResult.success();  
108 - }  
109 -  
110 - /**  
111 - * 通过主键删除数据  
112 - *  
113 - * @param producePaymentCheckBillOrderQueryVO 筛选条件  
114 - * @return 是否成功  
115 - */  
116 - @Override  
117 - public ServerResult deleteById(ProducePaymentCheckBillOrderQueryVO producePaymentCheckBillOrderQueryVO) {  
118 - List<Long> ids = producePaymentCheckBillOrderQueryVO.getIds();  
119 - if (CollUtil.isEmpty(ids)) {  
120 - return ServerResult.fail("ids 参数不能为空");  
121 - }  
122 - List<ProducePaymentCheckBillOrderDO> producePaymentCheckBillOrderList = listByIds(ids);  
123 - if (CollUtil.isEmpty(producePaymentCheckBillOrderList)) {  
124 - return ServerResult.success();  
125 - }  
126 - //todo 校验是否可以逻辑删除  
127 - LambdaUpdateWrapper<ProducePaymentCheckBillOrderDO> updateWrapper = new LambdaUpdateWrapper<ProducePaymentCheckBillOrderDO>()  
128 - .in(ProducePaymentCheckBillOrderDO::getId, ids)  
129 - .set(ProducePaymentCheckBillOrderDO::getEnableFlag, Constant.UNABLE_TWENTY);  
130 - update(updateWrapper);  
131 - return ServerResult.success();  
132 - }  
133 -}  
src/main/java/com/order/erp/service/order/impl/ReceiveEmailMappingServiceImpl.java deleted 100644 → 0
1 -package com.order.erp.service.order.impl;  
2 -  
3 -import cn.hutool.core.bean.BeanUtil;  
4 -import cn.hutool.core.collection.CollUtil;  
5 -import com.alibaba.fastjson.JSONObject;  
6 -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;  
7 -import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;  
8 -import com.baomidou.mybatisplus.core.metadata.IPage;  
9 -import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;  
10 -import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;  
11 -import com.baomidou.mybatisplus.extension.plugins.pagination.Page;  
12 -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;  
13 -import com.order.erp.common.constant.Constant;  
14 -import com.order.erp.common.constant.ServerResult;  
15 -import com.order.erp.domain.dto.order.ReceiveEmailMappingDO;  
16 -import com.order.erp.domain.vo.order.ReceiveEmailMappingQueryVO;  
17 -import com.order.erp.domain.vo.order.ReceiveEmailMappingVO;  
18 -import com.order.erp.mapper.order.ReceiveEmailMappingMapper;  
19 -import com.order.erp.service.order.ReceiveEmailMappingService;  
20 -import lombok.extern.slf4j.Slf4j;  
21 -import org.springframework.stereotype.Service;  
22 -import java.util.List;  
23 -import java.util.Objects;  
24 -  
25 -/**  
26 - * 邮件接收人信息绑定表(ReceiveEmailMapping)表服务实现类  
27 - *  
28 - * @author makejava  
29 - * @since 2024-07-03 10:58:52  
30 - */  
31 -@Slf4j  
32 -@Service  
33 -public class ReceiveEmailMappingServiceImpl extends ServiceImpl<ReceiveEmailMappingMapper, ReceiveEmailMappingDO> implements ReceiveEmailMappingService {  
34 -  
35 -  
36 - /**  
37 - * 通过ID查询单条数据  
38 - * <p>  
39 - * receiveEmailMappingQueryVO 主键  
40 - *  
41 - * @return 实例对象  
42 - */  
43 - @Override  
44 - public ServerResult queryById(ReceiveEmailMappingQueryVO receiveEmailMappingQueryVO) {  
45 - if (Objects.isNull(receiveEmailMappingQueryVO.getId())) {  
46 - return ServerResult.fail("id 不能为空");  
47 - }  
48 - ReceiveEmailMappingDO ReceiveEmailMappingDo = getById(receiveEmailMappingQueryVO.getId());  
49 - if (Objects.isNull(ReceiveEmailMappingDo)) {  
50 - return ServerResult.success(null);  
51 - }  
52 - return ServerResult.success(BeanUtil.copyProperties(ReceiveEmailMappingDo, ReceiveEmailMappingVO.class));  
53 - }  
54 -  
55 - /**  
56 - * 分页查询  
57 - *  
58 - * @return 查询结果  
59 - */  
60 - @Override  
61 - public ServerResult listGetAll() {  
62 - Page<ReceiveEmailMappingDO> receiveEmailMappingDOPage = new Page<>();  
63 - List<ReceiveEmailMappingDO> receiveEmailMappingDOList = baseMapper.listGetAll(Constant.ENABLE_TEN, Constant.THIRTY);  
64 - receiveEmailMappingDOPage.setRecords(receiveEmailMappingDOList);  
65 - return ServerResult.success(receiveEmailMappingDOPage);  
66 - }  
67 -  
68 - /**  
69 - * 新增数据  
70 - *  
71 - * @param receiveEmailMappingVO 实例对象  
72 - * @return 实例对象  
73 - */  
74 - @Override  
75 - public ServerResult add(ReceiveEmailMappingVO receiveEmailMappingVO) {  
76 - //todo 校验  
77 - if (Objects.nonNull(receiveEmailMappingVO.getId())) {  
78 - receiveEmailMappingVO.setId(null);  
79 - }  
80 - ReceiveEmailMappingDO receiveEmailMappingDo = BeanUtil.copyProperties(receiveEmailMappingVO, ReceiveEmailMappingDO.class);  
81 - receiveEmailMappingDo.setConfigInfos(JSONObject.toJSONString(receiveEmailMappingVO.getConfigInfos()));  
82 - save(receiveEmailMappingDo);  
83 - return ServerResult.success();  
84 - }  
85 -  
86 - /**  
87 - * 修改数据  
88 - *  
89 - * @param receiveEmailMappingVO 实例对象  
90 - * @return 实例对象  
91 - */  
92 - @Override  
93 - public ServerResult edit(ReceiveEmailMappingVO receiveEmailMappingVO) {  
94 - //todo 校验  
95 - if (Objects.isNull(receiveEmailMappingVO.getId())) {  
96 - return ServerResult.fail("id 不能为空");  
97 - }  
98 - ReceiveEmailMappingDO receiveEmailMappingDo = BeanUtil.copyProperties(receiveEmailMappingVO, ReceiveEmailMappingDO.class);  
99 - receiveEmailMappingDo.setConfigInfos(JSONObject.toJSONString(receiveEmailMappingVO.getConfigInfos()));  
100 - updateById(receiveEmailMappingDo);  
101 - return ServerResult.success();  
102 - }  
103 -  
104 - /**  
105 - * 通过主键删除数据  
106 - *  
107 - * @param receiveEmailMappingVO 筛选条件  
108 - * @return 是否成功  
109 - */  
110 - @Override  
111 - public ServerResult deleteById(ReceiveEmailMappingVO receiveEmailMappingVO) {  
112 - if (ObjectUtils.isNull(receiveEmailMappingVO.getId())) {  
113 - return ServerResult.fail("id 参数不能为空");  
114 - }  
115 - ReceiveEmailMappingDO receiveEmailMappingDO = baseMapper.getReceiveEmailMappingDO(receiveEmailMappingVO.getId());  
116 - if (ObjectUtils.isNull(receiveEmailMappingDO)) {  
117 - return ServerResult.success();  
118 - }  
119 - baseMapper.updateEnable(receiveEmailMappingDO.getId(), Constant.UNABLE_TWENTY);  
120 - return ServerResult.success();  
121 - }  
122 - /**  
123 - * 启用/禁用记录  
124 - *  
125 - * @param receiveEmailMappingDo 实例对象  
126 - * @return 是否成功  
127 - */  
128 - @Override  
129 - public ServerResult opt(ReceiveEmailMappingDO receiveEmailMappingDo) {  
130 - if(ObjectUtils.isNull(receiveEmailMappingDo.getId())){  
131 - return ServerResult.fail("id 参数不能为空");  
132 - }  
133 - ReceiveEmailMappingDO receiveEmailMappingDO = baseMapper.getReceiveEmailMappingDO(receiveEmailMappingDo.getId());  
134 - if (Objects.isNull(receiveEmailMappingDO)){  
135 - return ServerResult.success();  
136 - }  
137 - if(Constant.ENABLE_TEN==receiveEmailMappingDo.getEnableFlag()){  
138 - baseMapper.updateEnable(receiveEmailMappingDO.getId(), Constant.ENABLE_TEN);  
139 - }else if(Constant.THIRTY==receiveEmailMappingDo.getEnableFlag()){  
140 - baseMapper.updateEnable(receiveEmailMappingDO.getId(), Constant.THIRTY);  
141 - }  
142 - return ServerResult.success();  
143 - }  
144 -}