diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java index 0cb16b39..16f70555 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderController.java @@ -26,9 +26,11 @@ import com.ghy.order.request.SysOrderAssignRequest; import com.ghy.order.service.OrderDetailService; import com.ghy.order.service.OrderGoodsService; import com.ghy.order.service.OrderMasterService; +import com.ghy.payment.domain.FinancialChangeRecord; import com.ghy.payment.domain.FinancialDetail; import com.ghy.payment.domain.FinancialMaster; import com.ghy.payment.domain.OrderTimeoutRecord; +import com.ghy.payment.service.FinancialChangeRecordService; import com.ghy.payment.service.FinancialDetailService; import com.ghy.payment.service.FinancialMasterService; import com.ghy.payment.service.OrderFineRecordService; @@ -103,6 +105,9 @@ public class OrderController extends BaseController { @Autowired private OrderFineRecordService orderFineRecordService; + @Autowired + private FinancialChangeRecordService financialChangeRecordService; + /** * 可派单商品数量 * */ @@ -528,6 +533,9 @@ public class OrderController extends BaseController { for (OrderMaster master : list) {// 初始化属性 OrderListResponse orderListResponse = new OrderListResponse(); List standardList = new ArrayList<>(); + // 查询所有子单 + List orderDetails = orderDetailService.selectByOrderMasterId(master.getId()); + List orderDetailIds = orderDetails.stream().map(OrderDetail::getId).collect(Collectors.toList()); // 师傅信息 Worker worker = master.getWorkerId() != null ? workerService.selectById(master.getWorkerId()) : null; @@ -546,6 +554,15 @@ public class OrderController extends BaseController { // 财务信息 FinancialMaster financialMaster = financialMasterService.selectByOrderMasterId(master.getId()); + // 查询加价价格 + BigDecimal changeMoney = BigDecimal.ZERO; + List changeRecords = financialChangeRecordService.selectByDetailIds(StringUtils.join(orderDetailIds, ",")); + for (FinancialChangeRecord changeRecord: changeRecords) { + if (PayStatus.WAIT_PAY.getCode().equals(changeRecord.getPayStatus())) { + changeMoney = changeMoney.add(changeRecord.getChangeMoney()); + } + } + // 地址信息 CustomerAddress customerAddress = addressService.selectByCustomerAddressId(master.getAddressId()); SysArea sysArea = sysAreaService.selectById(customerAddress.getCountryId()); @@ -592,6 +609,7 @@ public class OrderController extends BaseController { orderListResponse.setRemark(goods.getRemark()); orderListResponse.setCustomerRemark(master.getRemark()); orderListResponse.setOrderTimeoutRecords(timeoutRecords); + orderListResponse.setChangeMoney(changeMoney); orderListResponses.add(orderListResponse); } @@ -624,6 +642,10 @@ public class OrderController extends BaseController { // 财务信息 FinancialDetail financialDetail = financialDetailService.selectByOrderDetailId(detail.getId()); + // 查询子单加价记录 + FinancialChangeRecord financialChangeRecord = financialChangeRecordService.selectNotPayRecordByDetailId(detail.getId()); + BigDecimal changeMoney = financialChangeRecord == null ? BigDecimal.ZERO : financialChangeRecord.getChangeMoney(); + // 地址信息 CustomerAddress customerAddress = addressService.selectByCustomerAddressId(orderMaster.getAddressId()); SysArea sysArea = sysAreaService.selectById(customerAddress.getCountryId()); @@ -655,7 +677,7 @@ public class OrderController extends BaseController { orderListResponse.setTotalMoney(financialDetail.getTotalMoney()); orderListResponse.setPayMoney(financialDetail.getPayMoney()); orderListResponse.setWorkerName(worker.getName()); - orderListResponse.setWorkerPhone(worker.getPhone()); + orderListResponse.setWorkerPhone(worker == null ? "" : worker.getPhone()); orderListResponse.setCustomerName(customerAddress.getName()); orderListResponse.setCustomerPhone(customerAddress.getPhone()); orderListResponse.setOrderStatus(detail.getOrderStatus()); @@ -668,10 +690,12 @@ public class OrderController extends BaseController { orderListResponse.setExpectTimeEnd(detail.getExpectTimeEnd()); orderListResponse.setWorkBeginTime(detail.getWorkBeginTime()); orderListResponse.setWorkFinishTime(detail.getWorkFinishTime()); + orderListResponse.setClockInLocation(detail.getClockInLocation()); orderListResponse.setRemark(goods.getRemark()); orderListResponse.setCustomerRemark(orderMaster.getRemark()); orderListResponse.setOrderType(detail.getOrderType()); orderListResponse.setIsOverTime(isOverTime); + orderListResponse.setChangeMoney(changeMoney); orderListResponses.add(orderListResponse); } return orderListResponses; diff --git a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderDetailController.java b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderDetailController.java index b4c4fb91..b5c26e62 100644 --- a/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderDetailController.java +++ b/ghy-admin/src/main/java/com/ghy/web/controller/order/OrderDetailController.java @@ -272,13 +272,10 @@ public class OrderDetailController extends BaseController { // 财务信息 FinancialDetail financialDetail = financialDetailService.selectByOrderDetailId(detail.getId()); BigDecimal detailPayMoney = financialDetail.getPayMoney(); + // 查询子单加价记录 -// FinancialChangeRecord changeRecordQry = new FinancialChangeRecord(); -// changeRecordQry.setOrderDetailId(detail.getId()); -// List financialChangeRecords = financialChangeRecordService.selectFinancialChangeRecordList(changeRecordQry); -// if (CollectionUtils.isNotEmpty(financialChangeRecords)) { -// detailPayMoney = detailPayMoney.add(financialChangeRecords.get(0).getChangeMoney()); -// } + FinancialChangeRecord financialChangeRecord = financialChangeRecordService.selectNotPayRecordByDetailId(detail.getId()); + BigDecimal changeMoney = financialChangeRecord == null ? BigDecimal.ZERO : financialChangeRecord.getChangeMoney(); // 地址信息 CustomerAddress customerAddress = addressService.selectByCustomerAddressId(orderMaster.getAddressId()); @@ -323,10 +320,12 @@ public class OrderDetailController extends BaseController { orderListResponse.setExpectTimeEnd(detail.getExpectTimeEnd()); orderListResponse.setWorkBeginTime(detail.getWorkBeginTime()); orderListResponse.setWorkFinishTime(detail.getWorkFinishTime()); + orderListResponse.setClockInLocation(detail.getClockInLocation()); orderListResponse.setRemark(goods.getRemark()); orderListResponse.setCustomerRemark(orderMaster.getRemark()); orderListResponse.setOrderType(detail.getOrderType()); orderListResponse.setIsOverTime(isOverTime); + orderListResponse.setChangeMoney(changeMoney); orderListResponses.add(orderListResponse); }); return voDataTable(orderListResponses, list); diff --git a/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderListResponse.java b/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderListResponse.java index 200fc5d7..eee25974 100644 --- a/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderListResponse.java +++ b/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderListResponse.java @@ -49,6 +49,8 @@ public class OrderListResponse { private Date workFinishTime; + private String clockInLocation; + private String goodsName; private Integer orderType; diff --git a/ghy-order/src/main/java/com/ghy/order/domain/OrderDetail.java b/ghy-order/src/main/java/com/ghy/order/domain/OrderDetail.java index 2d566506..9d2e1c2b 100644 --- a/ghy-order/src/main/java/com/ghy/order/domain/OrderDetail.java +++ b/ghy-order/src/main/java/com/ghy/order/domain/OrderDetail.java @@ -56,6 +56,8 @@ public class OrderDetail extends BaseEntity { @Excel(name = "服务完成时间", cellType = Excel.ColumnType.STRING) private Date workFinishTime; + private String clockInLocation; + private Date createTime; private Long goodsCategoryId; diff --git a/ghy-order/src/main/java/com/ghy/order/service/impl/OrderDetailServiceImpl.java b/ghy-order/src/main/java/com/ghy/order/service/impl/OrderDetailServiceImpl.java index 2d255e1e..e2760ae3 100644 --- a/ghy-order/src/main/java/com/ghy/order/service/impl/OrderDetailServiceImpl.java +++ b/ghy-order/src/main/java/com/ghy/order/service/impl/OrderDetailServiceImpl.java @@ -367,7 +367,7 @@ public class OrderDetailServiceImpl implements OrderDetailService { throw new BaseException("子单不存在!"); } FinancialChangeRecord param = new FinancialChangeRecord(); - param.setPayStatus(0L); + param.setPayStatus(0); param.setOrderDetailId(orderDetailId); List list = financialChangeRecordService.selectFinancialChangeRecordList(param); FinancialChangeRecord financialChangeRecord; @@ -384,8 +384,8 @@ public class OrderDetailServiceImpl implements OrderDetailService { financialChangeRecord = new FinancialChangeRecord(); financialChangeRecord.setOrderDetailId(orderDetailId); financialChangeRecord.setChangeMoney(changeMoney); - financialChangeRecord.setStatus(0L); - financialChangeRecord.setPayStatus(0L); + financialChangeRecord.setStatus(0); + financialChangeRecord.setPayStatus(0); financialChangeRecord.setType(type); financialChangeRecord.setRemark(remark); affectedRows = financialChangeRecordService.insertFinancialChangeRecord(financialChangeRecord); diff --git a/ghy-order/src/main/resources/mapper/order/OrderDetailMapper.xml b/ghy-order/src/main/resources/mapper/order/OrderDetailMapper.xml index e1d531e6..a890f155 100644 --- a/ghy-order/src/main/resources/mapper/order/OrderDetailMapper.xml +++ b/ghy-order/src/main/resources/mapper/order/OrderDetailMapper.xml @@ -18,6 +18,7 @@ + @@ -39,6 +40,7 @@ expect_time_end, work_begin_time, work_finish_time, + clock_in_location, create_by, create_time, update_time, @@ -60,6 +62,7 @@ od.expect_time_end, od.work_begin_time, od.work_finish_time, + od.clock_in_location, od.create_by, od.create_time, od.remark @@ -203,6 +206,7 @@ expect_time_end = #{expectTimeEnd}, work_begin_time = #{workBeginTime}, work_finish_time = #{workFinishTime}, + clock_in_location = #{clockInLocation}, remark = #{remark}, update_by = #{updateBy}, update_time = SYSDATE() diff --git a/ghy-payment/src/main/java/com/ghy/payment/domain/FinancialChangeRecord.java b/ghy-payment/src/main/java/com/ghy/payment/domain/FinancialChangeRecord.java index b54694ae..adc987a2 100644 --- a/ghy-payment/src/main/java/com/ghy/payment/domain/FinancialChangeRecord.java +++ b/ghy-payment/src/main/java/com/ghy/payment/domain/FinancialChangeRecord.java @@ -29,11 +29,11 @@ public class FinancialChangeRecord extends BaseEntity /** 状态0.待审核 1.审核通过 2.审核拒绝 */ @Excel(name = "状态0.待审核 1.审核通过 2.审核拒绝") - private Long status; + private Integer status; /** 0 待支付 1.已支付 */ @Excel(name = "0 待支付 1.已支付") - private Long payStatus; + private Integer payStatus; /** 1.本单报价 2.加单报价 **/ @Excel(name = "1.本单报价 2.加单报价") @@ -66,21 +66,21 @@ public class FinancialChangeRecord extends BaseEntity { return changeMoney; } - public void setStatus(Long status) + public void setStatus(Integer status) { this.status = status; } - public Long getStatus() + public Integer getStatus() { return status; } - public void setPayStatus(Long payStatus) + public void setPayStatus(Integer payStatus) { this.payStatus = payStatus; } - public Long getPayStatus() + public Integer getPayStatus() { return payStatus; } diff --git a/ghy-payment/src/main/java/com/ghy/payment/service/impl/PayCallbackService.java b/ghy-payment/src/main/java/com/ghy/payment/service/impl/PayCallbackService.java index 41338fe4..478dd460 100644 --- a/ghy-payment/src/main/java/com/ghy/payment/service/impl/PayCallbackService.java +++ b/ghy-payment/src/main/java/com/ghy/payment/service/impl/PayCallbackService.java @@ -66,7 +66,7 @@ public class PayCallbackService implements CallBackService { if(payment.getOrderNo().split("_").length > 2){ FinancialChangeRecord financialChangeRecord = new FinancialChangeRecord(); financialChangeRecord.setId(payment.getOrderNo().split("_")[1]); - financialChangeRecord.setPayStatus(1L); + financialChangeRecord.setPayStatus(1); financialChangeRecordService.updateFinancialChangeRecord(financialChangeRecord); // 修改子订单的payMoney @@ -102,7 +102,7 @@ public class PayCallbackService implements CallBackService { if (financialChangeRecord != null) { totalChangeMoney = totalChangeMoney.add(financialChangeRecord.getChangeMoney()); // 更新加价记录为已支付 - financialChangeRecord.setPayStatus(1L); + financialChangeRecord.setPayStatus(1); financialChangeRecordService.updateFinancialChangeRecord(financialChangeRecord); // 更新子单的payMoney,及修改为已支付 FinancialDetail financialDetail2Update = new FinancialDetail();