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 e7f2c196..7c0e3a31 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 @@ -453,7 +453,8 @@ public class OrderDetailController extends BaseController { @ResponseBody public AjaxResult changePrice(@Valid @RequestBody OrderChangePriceRequest request){ try { - return toAjax(orderDetailService.changePrice(request.getOrderDetailId(), request.getChangeMoney())); + Assert.notNull(request.getChangeMoney(), "报价不能为空"); + return toAjax(orderDetailService.changePrice(request.getOrderDetailId(), request.getChangeMoney(), request.getType(), request.getRemark())); }catch (Exception e){ e.printStackTrace(); logger.error(ExceptionUtil.getExceptionMessage(e)); @@ -461,4 +462,15 @@ public class OrderDetailController extends BaseController { } } + @PostMapping("/app/getChangePrice") + @ResponseBody + public AjaxResult getChangePrice(@Valid @RequestBody OrderChangePriceRequest request){ + try { + return AjaxResult.success(orderDetailService.getChangedPriceRecord(request.getOrderDetailId())); + }catch (Exception e){ + e.printStackTrace(); + logger.error(ExceptionUtil.getExceptionMessage(e)); + return AjaxResult.error("查询改价失败!"); + } + } } diff --git a/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderChangePriceRequest.java b/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderChangePriceRequest.java index 63e1226c..ea16f033 100644 --- a/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderChangePriceRequest.java +++ b/ghy-admin/src/main/java/com/ghy/web/pojo/vo/OrderChangePriceRequest.java @@ -16,7 +16,9 @@ public class OrderChangePriceRequest implements Serializable { @NotNull private Long orderDetailId; - @NotNull private BigDecimal changeMoney; + private Integer type; + + private String remark; } diff --git a/ghy-common/src/main/java/com/ghy/common/enums/ChangePriceType.java b/ghy-common/src/main/java/com/ghy/common/enums/ChangePriceType.java new file mode 100644 index 00000000..ad0589ba --- /dev/null +++ b/ghy-common/src/main/java/com/ghy/common/enums/ChangePriceType.java @@ -0,0 +1,27 @@ +package com.ghy.common.enums; + +/** + * 上门报价类型枚举类 + * @author ydq + * @date : 2022-09-24 22:35 + */ +public enum ChangePriceType { + CUR_ORDER_CHANGE_MONEY(1, "本单报价"), + ADD_ORDER_CHANGE_MONEY(2, "加单报价"); + + private int code; + private String desc; + + ChangePriceType(int code, String desc) { + this.code = code; + this.desc = desc; + } + + public int getCode() { + return code; + } + + public String getDesc() { + return desc; + } +} diff --git a/ghy-order/src/main/java/com/ghy/order/service/OrderDetailService.java b/ghy-order/src/main/java/com/ghy/order/service/OrderDetailService.java index 613bdad2..036a0b75 100644 --- a/ghy-order/src/main/java/com/ghy/order/service/OrderDetailService.java +++ b/ghy-order/src/main/java/com/ghy/order/service/OrderDetailService.java @@ -1,6 +1,7 @@ package com.ghy.order.service; import com.ghy.order.domain.OrderDetail; +import com.ghy.payment.domain.FinancialChangeRecord; import com.huifu.adapay.core.exception.BaseAdaPayException; import java.math.BigDecimal; @@ -121,10 +122,13 @@ public interface OrderDetailService { * 子单改价接口 * @param orderDetailId 子单id * @param changeMoney 改价金额 + * @param type 报价类型 + * @param remark 备注 * @return 成功/失败 */ - int changePrice(Long orderDetailId, BigDecimal changeMoney); + int changePrice(Long orderDetailId, BigDecimal changeMoney, Integer type, String remark); int sureChange(Long financialChangeRecordId); + FinancialChangeRecord getChangedPriceRecord(Long orderDetailId); } 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 a2452ec8..cce10a66 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 @@ -360,7 +360,7 @@ public class OrderDetailServiceImpl implements OrderDetailService { } @Override - public int changePrice(Long orderDetailId, BigDecimal changeMoney) { + public int changePrice(Long orderDetailId, BigDecimal changeMoney, Integer type, String remark) { OrderDetail orderDetail = orderDetailMapper.selectById(orderDetailId); if(orderDetail==null){ throw new BaseException("子单不存在!"); @@ -374,6 +374,8 @@ public class OrderDetailServiceImpl implements OrderDetailService { // 修改现有 financialChangeRecord = list.get(0); financialChangeRecord.setChangeMoney(changeMoney); + financialChangeRecord.setType(type); + financialChangeRecord.setRemark(remark); return financialChangeRecordService.updateFinancialChangeRecord(financialChangeRecord); }else { // 创建改单记录 @@ -382,6 +384,8 @@ public class OrderDetailServiceImpl implements OrderDetailService { financialChangeRecord.setChangeMoney(changeMoney); financialChangeRecord.setStatus(0L); financialChangeRecord.setPayStatus(0L); + financialChangeRecord.setType(type); + financialChangeRecord.setRemark(remark); return financialChangeRecordService.insertFinancialChangeRecord(financialChangeRecord); } } @@ -390,4 +394,15 @@ public class OrderDetailServiceImpl implements OrderDetailService { public int sureChange(Long financialChangeRecordId) { return 0; } + + @Override + public FinancialChangeRecord getChangedPriceRecord(Long orderDetailId) { + FinancialChangeRecord param = new FinancialChangeRecord(); + param.setOrderDetailId(orderDetailId); + List list = financialChangeRecordService.selectFinancialChangeRecordList(param); + if (!CollectionUtils.isEmpty(list)) { + return list.get(0); + } + return null; + } } 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 fa00655f..b54694ae 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 @@ -35,6 +35,10 @@ public class FinancialChangeRecord extends BaseEntity @Excel(name = "0 待支付 1.已支付") private Long payStatus; + /** 1.本单报价 2.加单报价 **/ + @Excel(name = "1.本单报价 2.加单报价") + private Integer type; + public void setId(String id) { this.id = id; @@ -81,6 +85,14 @@ public class FinancialChangeRecord extends BaseEntity return payStatus; } + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + @Override public String toString() { return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) @@ -89,6 +101,7 @@ public class FinancialChangeRecord extends BaseEntity .append("changeMoney", getChangeMoney()) .append("status", getStatus()) .append("payStatus", getPayStatus()) + .append("type", getType()) .toString(); } } diff --git a/ghy-payment/src/main/resources/mapper/financial/FinancialChangeRecordMapper.xml b/ghy-payment/src/main/resources/mapper/financial/FinancialChangeRecordMapper.xml index 74fefe95..518d70c6 100644 --- a/ghy-payment/src/main/resources/mapper/financial/FinancialChangeRecordMapper.xml +++ b/ghy-payment/src/main/resources/mapper/financial/FinancialChangeRecordMapper.xml @@ -13,7 +13,7 @@ - select id, order_detail_id, change_money, status, pay_status from financial_change_record + select id, order_detail_id, change_money, status, pay_status, type, remark from financial_change_record