server/admin/src/main/resources/application.yml
@@ -8,7 +8,7 @@ spring: profiles: active: dev active: pro # JSON返回配置 jackson: # 默认时区 server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -170,11 +170,10 @@ } return d.intValue(); } public static double getFormatMoney(Long d) { BigDecimal r = new BigDecimal(formatLongNum(d)); r = r.divide(new BigDecimal(100),2,BigDecimal.ROUND_HALF_UP); return r.doubleValue(); public static BigDecimal getFormatMoney(BigDecimal d) { BigDecimal r =formatBigDecimal(d); r = r.divide(new BigDecimal(1),2,BigDecimal.ROUND_HALF_UP); return r; } public static long formatLongNum(Long d) { server/services/src/main/java/com/doumee/dao/business/model/Refund.java
@@ -108,4 +108,10 @@ @ApiModelProperty("付款事由") @TableField(exist = false) private Integer orderType; @ApiModelProperty("统计量") @TableField(exist = false) private Long num; @ApiModelProperty("统计订单量") @TableField(exist = false) private Long orderNum; } server/services/src/main/java/com/doumee/dao/vo/IndexOrderCountVO.java
@@ -65,4 +65,12 @@ @ApiModelProperty(value = "延期款交易数量(支付失败)") private Long todayFailNum1; @ApiModelProperty(value = "总退款金额") private BigDecimal todayRefundMoney; @ApiModelProperty(value = "总退款笔数") private Long todayRefundNum; @ApiModelProperty(value = "总退款订单数") private Long todayRefundOrderNum; } server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
@@ -249,7 +249,7 @@ @Override public IndexOrderCountVO getIndexData(Orders pageWrap) { IndexOrderCountVO data = initIndexOrderCountMoel(); List<Orders> list = ordersMapper.selectList(new QueryWrapper<Orders>() List<Orders> list = ordersMapper.selectList(new QueryWrapper<Orders>() .select("status,type,count(id) as num,sum(money) as money") .lambda() .eq(Orders::getDeleted,Constants.ZERO ) @@ -310,6 +310,18 @@ } } Refund refund = refundMapper.selectJoinOne(Refund.class,new MPJLambdaWrapper<Refund>() .select("count(distinct(order_id)) as orderNum,count(id) as num,sum(money) as money") .eq(Orders::getDeleted,Constants.ZERO ) .eq(Orders::getStatus,Constants.ONE) .apply("to_days(create_time) =to_days(now())") .last("limit 1")); if(refund!=null){ data.setTodayRefundMoney(Constants.getFormatMoney(refund.getMoney())); data.setTodayRefundOrderNum(Constants.formatLongNum(refund.getOrderNum())); data.setTodayRefundNum(Constants.formatLongNum(refund.getNum())); } return data; } @@ -343,6 +355,10 @@ data.setTodayFailNum0(0l); data.setTodayFailNum1(0l); data.setTodayRefundMoney(new BigDecimal(0)); data.setTodayRefundOrderNum(0l); data.setTodayRefundNum(0l); return data; } server/services/src/main/java/com/doumee/service/business/impl/RefundServiceImpl.java
@@ -60,7 +60,7 @@ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"请按照要求填写信息!"); } model.setMoney(model.getMoney().multiply(new BigDecimal(100)));//单位分 model.setMoney(Constants.getFormatMoney(model.getMoney().multiply(new BigDecimal(100))));//单位分 Orders order = ordersMapper.selectById(model.getOrderId()); if(order==null){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"订单信息不存在!"); @@ -68,8 +68,8 @@ if(!Constants.equalsInteger(order.getStatus(),Constants.ONE)){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"订单未交易成功,不支持退款操作!"); } if( Constants.formatBigDecimal(model.getMoney()).compareTo(Constants.formatBigDecimal(order.getMoney())) >=0){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"退款金额不能超过订单金额!"); if( Constants.getFormatMoney(model.getMoney()).compareTo(Constants.getFormatMoney(order.getMoney())) >0){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"退款金额不能超过订单金额"+Constants.getFormatMoney(order.getMoney())+"!"); } Refund sum = refundMapper.selectOne(new QueryWrapper<Refund>().select("sum(money) as money").lambda() .eq(Refund::getDeleted,Constants.ZERO) @@ -206,6 +206,7 @@ .selectAs(SystemUser::getRealname,Refund::getUserRealname) .selectAs(SystemUser::getUsername,Refund::getUsername) .selectAs(Orders::getName,Refund::getMemberName) .selectAs(Orders::getType,Refund::getOrderType) .selectAs(Orders::getPhone,Refund::getMemberPhone) .leftJoin(Orders.class,Orders::getId,Refund::getOrderId) .leftJoin(SystemUser.class,SystemUser::getId,Refund::getCreateUser); @@ -230,7 +231,7 @@ queryWrapper.eq(pageWrap.getModel().getPayCode() != null,Refund::getPayCode, pageWrap.getModel().getPayCode()); queryWrapper.eq(pageWrap.getModel().getOrderType() != null,Orders::getType, pageWrap.getModel().getOrderType()); queryWrapper.eq(pageWrap.getModel().getOrderId() != null,Refund::getOrderId, pageWrap.getModel().getOrderId()); queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getMemberPhone() ) ,Orders::getName, pageWrap.getModel().getMemberPhone()); queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getMemberPhone() ) ,Orders::getPhone, pageWrap.getModel().getMemberPhone()); queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getMemberName() ) ,Orders::getName, pageWrap.getModel().getMemberName()); queryWrapper.ge(pageWrap.getModel().getStarttime()!=null,Refund::getCreateTime , pageWrap.getModel().getStarttime()); queryWrapper.le(pageWrap.getModel().getEndtime()!=null,Refund::getCreateTime , pageWrap.getModel().getEndtime());