jiangping
2025-03-18 34d668bf654e861b2c8b3eb8d1faa09e1ae6246a
jtt808初始化
已修改5个文件
63 ■■■■■ 文件已修改
server/services/src/main/java/com/doumee/dao/business/GoodsorderMapper.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/dao/business/model/WxBill.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/dao/business/vo/GoodsorderTotalDataVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/services/src/main/java/com/doumee/dao/business/GoodsorderMapper.java
@@ -3,11 +3,12 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.Goodsorder;
import com.github.yulichang.base.MPJBaseMapper;
/**
 * @author T14
 */
public interface GoodsorderMapper extends BaseMapper<Goodsorder> {
public interface GoodsorderMapper extends MPJBaseMapper<Goodsorder> {
server/services/src/main/java/com/doumee/dao/business/model/WxBill.java
@@ -69,6 +69,22 @@
    @ApiModelProperty(value = "自行车收入", example = "1")
    @ExcelColumn(name="自行车收入")
    private BigDecimal bikeFee;
    @ApiModelProperty(value = "套餐收入", example = "1")
    @ExcelColumn(name="套餐收入")
    private BigDecimal discountFee;
    @ApiModelProperty(value = "骑行订单退款", example = "1")
    @ExcelColumn(name="骑行订单退款")
    private BigDecimal bikeRefundFee;
    @ApiModelProperty(value = "套餐卡退款总金额", example = "1")
    @ExcelColumn(name="套餐卡退款总金额")
    private BigDecimal discountRefundFee;
    @ApiModelProperty(value = "骑行订单退款手续费", example = "1")
    @ExcelColumn(name="骑行订单退款手续费")
    private BigDecimal bikeRefundCmmsAmt;
    @ApiModelProperty(value = "套餐卡退款总金额手续费", example = "1")
    @ExcelColumn(name="套餐卡退款总金额手续费")
    private BigDecimal discountRefundCmmsAmt;
    @ApiModelProperty(value = "同步微信账单日期", example = "2023-10-08")
    @TableField(exist = false)
    @JsonFormat(pattern = "yyyy-MM-dd")
server/services/src/main/java/com/doumee/dao/business/vo/GoodsorderTotalDataVO.java
@@ -19,8 +19,12 @@
    @ApiModelProperty(value = "支付押金",example = "0")
    private BigDecimal payMoney;
    @ApiModelProperty(value = "套餐卡收入",example = "0")
    private BigDecimal discountMoney;
    @ApiModelProperty(value = "支付交易笔数",example = "0")
    private int payNum;
    @ApiModelProperty(value = "套餐卡交易笔数",example = "0")
    private int discountNum;
    @ApiModelProperty(value = "退款",example = "0")
    private BigDecimal refundMoney;
server/services/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -1016,6 +1016,7 @@
            model.setPayMoney(new BigDecimal(0.00));
            model.setRefundMoney(new BigDecimal(0.00));
            model.setClosedMoney(new BigDecimal(0.00));
            model.setDiscountMoney(new BigDecimal(0.00));
            model.setUnClosedMoney(new BigDecimal(0.00));
            model.setClosedNum(0);
            model.setUnClosedNum(0);
@@ -1030,12 +1031,14 @@
            }
            queryWrapper.lambda().eq(Goodsorder::getPayStatus, Constants.ONE);//已支付
            queryWrapper.lambda().eq(Goodsorder::getIsdeleted, Constants.ZERO);
            queryWrapper.lambda().groupBy(Goodsorder::getStatus);
            queryWrapper.select( "status ","count(id) as count_num"
            queryWrapper.lambda().groupBy(Goodsorder::getStatus,Goodsorder::getType);
            queryWrapper.select( "type","status ","count(id) as count_num"
                    ,"sum(money) as money","sum(close_money) as close_money" );
            //按订单状态分组统计
            List<Goodsorder> detailList = goodsorderMapper.selectList(queryWrapper);
            for(Goodsorder goodsorder : detailList){
                if(Constants.equalsInteger(goodsorder.getType(),Constants.ZERO)){
                    //如果是骑行订单押金,计算骑行收入
                if(Constants.formatIntegerNum(goodsorder.getStatus()) == Constants.GOODSORDER_STATUS.CLOSE.getKey()){
                    //已结算
                    model.setClosedNum(model.getClosedNum()+goodsorder.getCountNum());
@@ -1052,6 +1055,12 @@
                    model.setPayNum(model.getPayNum()+goodsorder.getCountNum());
                    model.setPayMoney(model.getPayMoney().add(Constants.translateMoney(goodsorder.getMoney())));
                }
                }else{
                    //套餐卡收入累计 (交易笔数和交易金额)
                    model.setDiscountNum(model.getDiscountNum()+goodsorder.getCountNum());
                    model.setDiscountMoney(model.getDiscountMoney().add(Constants.translateMoney(goodsorder.getMoney())));
                }
            }
        QueryWrapper<Refund> queryWrapper2 = new QueryWrapper<>();
        if(Objects.nonNull(param.getStartDate())) {
server/services/src/main/java/com/doumee/service/business/impl/WxBillServiceImpl.java
@@ -9,6 +9,7 @@
import com.doumee.core.utils.Utils;
import com.doumee.core.wx.WxMiniConfig;
import com.doumee.core.wx.WxPayProperties;
import com.doumee.dao.business.GoodsorderMapper;
import com.doumee.dao.business.WxBillDetailMapper;
import com.doumee.dao.business.WxBillMapper;
import com.doumee.dao.business.model.Goodsorder;
@@ -46,6 +47,8 @@
    @Autowired
    private WxBillMapper wxBillMapper;
    @Autowired
    private GoodsorderMapper goodsorderMapper;
    @Autowired
    private WxBillDetailMapper wxBillDetailMapper;
    @Override
@@ -262,6 +265,11 @@
        bill.setSumRefundCmmsAmt(new BigDecimal(0.00));
        bill.setTotal(new BigDecimal(0.00));
        bill.setBikeFee(new BigDecimal(0.00));
        bill.setDiscountFee(new BigDecimal(0.00));
        bill.setBikeRefundFee(new BigDecimal(0.00));
        bill.setDiscountRefundFee(new BigDecimal(0.00));
        bill.setDiscountRefundCmmsAmt(new BigDecimal(0.00));
        bill.setBikeRefundCmmsAmt(new BigDecimal(0.00));
        return bill;
    }
    @Override
@@ -427,6 +435,9 @@
                detail.setRefundApplyDate(DateUtil.getDateFromString2(info.getRefundTime())); //申请退款时间
                //计算自行车收入,匹配来自自行车小程序的所有支付成功和退款成功的金额,作为自行车收入(累计收款金额-累计退款成功金额)
                if(StringUtils.equals(detail.getAppid(), WxMiniConfig.wxPayV2Service.getConfig().getSubAppId())){
                    Goodsorder order = goodsorderMapper.selectOne(new QueryWrapper<Goodsorder>().lambda()
                            .eq(Goodsorder::getId,info.getOutTradeNo()));
                    if(Constants.equalsInteger(order.getType(),Constants.ZERO)){
                    //自行车收入累计收款金额(支付成功总金额-退款总金额)
                    if(StringUtils.equals(info.getTradeState(),"SUCCESS")){
                        //如果是交易(包含手续费)
@@ -435,8 +446,24 @@
                    }else  if(StringUtils.equals(info.getTradeState(),"REFUND" ) || StringUtils.equals(info.getTradeState(),"REVOKED" )){
                        //如果退款成功,扣除退款金额(包含手续费)
                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getRefundFee()) );
                            bill.setBikeRefundFee(bill.getBikeRefundFee().add(detail.getRefundFee()) );
                            bill.setBikeRefundCmmsAmt(bill.getBikeRefundCmmsAmt().add(detail.getCmmsAmt()) );
//                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) );
                    }
                    }else{
                        //自行车收入累计收款金额(支付成功总金额-退款总金额)
                        if(StringUtils.equals(info.getTradeState(),"SUCCESS")){
                            //如果是交易(包含手续费)
                            bill.setDiscountFee(bill.getDiscountFee().add(detail.getSettlementTotalFee()));
//                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) );
                        }else  if(StringUtils.equals(info.getTradeState(),"REFUND" ) || StringUtils.equals(info.getTradeState(),"REVOKED" )){
                            //如果退款成功,扣除退款金额(包含手续费)
                            bill.setDiscountFee(bill.getDiscountFee().subtract(detail.getRefundFee()) );
                            bill.setDiscountRefundFee(bill.getDiscountRefundFee().add(detail.getRefundFee()) );
                            bill.setDiscountRefundCmmsAmt(bill.getDiscountRefundCmmsAmt().add(detail.getCmmsAmt()) );
//                        bill.setBikeFee(bill.getBikeFee().subtract(detail.getCmmsAmt()) );
                        }
                    }
                }
                detailList.add(detail);
            }