xuhy
2024-10-23 8bce927ce49c6cf9c7dd625e96571e83262d9e71
Merge remote-tracking branch 'origin/master'
6个文件已修改
110 ■■■■■ 已修改文件
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserTagController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java 72 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-api/ruoyi-api-integration/src/main/java/com/ruoyi/integration/api/model/UploadRealTimeMonitoringData.java
@@ -26,6 +26,7 @@
    private Integer insertion_status; // 是否插枪(0:否,1:是)
    private BigDecimal output_voltage; // 输出电压,精确到小数点后一位;待机置零
    private BigDecimal output_current; // 输出电流,精确到小数点后一位;待机置零
    private BigDecimal power; // 功率
    private Integer gun_line_temperature; // 枪线温度,整形,偏移量-50;待机置零
    private String gun_line_code; // 枪线编码,没有置零
    private Integer soc; // SOC待机置零;交流桩置零
ruoyi-api/ruoyi-api-order/src/main/java/com/ruoyi/order/api/vo/ChargingOrderListVO.java
@@ -36,6 +36,10 @@
    private Long chargingSecond;
    @ApiModelProperty(value = "充电电流 度")
    private BigDecimal chargingCapacity;
    @ApiModelProperty(value = "充电电流 度")
    private BigDecimal electricity;
    @ApiModelProperty(value = "充电到账金额")
    private BigDecimal orderAmount;
    @ApiModelProperty(value = "车牌号")
    private String licensePlate;
    @ApiModelProperty(value = "客户手机号")
ruoyi-service/ruoyi-account/src/main/java/com/ruoyi/account/controller/TAppUserTagController.java
@@ -73,7 +73,7 @@
        //拿到单位列表
        String[] split = ids.split(",");
         List<TAppUserTag> list = appUserTagService.lambdaQuery().in(TAppUserTag::getUserTagId).list();
         List<TAppUserTag> list = appUserTagService.lambdaQuery().in(TAppUserTag::getUserTagId,split).list();
         if (!list.isEmpty()){
             return R.fail("当前标签已有用户获取,无法删除");
         }
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TChargingOrderServiceImpl.java
@@ -1260,6 +1260,12 @@
        PageInfo<ChargingOrderListVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
        List<ChargingOrderListVO> list = this.baseMapper.chargingList(pageInfo,dto,startTime1,startTime2,endTime1,endTime2);
        for (ChargingOrderListVO chargingOrderListVO : list) {
            chargingOrderListVO.setChargingCapacity(chargingOrderListVO.getElectricity());
            chargingOrderListVO.setPaymentAmount(chargingOrderListVO.getOrderAmount());
            BigDecimal bigDecimal = new BigDecimal("0.006");
            if (chargingOrderListVO.getServiceCharge()!=null){
                chargingOrderListVO.setCommissionAmount(chargingOrderListVO.getServiceCharge().multiply(bigDecimal));
            }
            chargingOrderListVO.setPaymentAmount(chargingOrderListVO.getResidualAmount()==null?chargingOrderListVO.getPaymentAmount():chargingOrderListVO.getPaymentAmount().subtract(chargingOrderListVO.getResidualAmount()));
            chargingOrderListVO.setUid(chargingOrderListVO.getId()+"");
            List<Integer> integers = new ArrayList<>();
@@ -1317,6 +1323,9 @@
            BigDecimal gu = new BigDecimal("0");
            BigDecimal total = new BigDecimal("0");
            for (TChargingOrderAccountingStrategy temp : list2) {
                if (temp.getChargingCapacity() == null){
                    temp.setChargingCapacity(BigDecimal.ZERO);
                }
                switch (temp.getType()) {
                    case 1:
                        jian = jian.add(temp.getChargingCapacity());
@@ -1377,9 +1386,9 @@
        BigDecimal ping = new BigDecimal("0");
        BigDecimal gu = new BigDecimal("0");
        for (ChargingOrderListVO chargingOrderListVO : list1) {
            if (chargingOrderListVO.getChargingCapacity()!=null)electronic = electronic.add(chargingOrderListVO.getChargingCapacity());
            if (chargingOrderListVO.getChargingCapacity()!=null)electronic = electronic.add(chargingOrderListVO.getElectricity());
            if (chargingOrderListVO.getPaymentAmount()!=null)paymentAmount = paymentAmount.add(chargingOrderListVO.getPaymentAmount());
            if (chargingOrderListVO.getPaymentAmount()!=null)paymentAmount = paymentAmount.add(chargingOrderListVO.getOrderAmount());
            if (chargingOrderListVO.getElectrovalence()!=null)electrovalence = electrovalence.add(chargingOrderListVO.getElectrovalence());
            if (chargingOrderListVO.getServiceCharge()!=null)serviceCharge = serviceCharge.add(chargingOrderListVO.getServiceCharge());
            List<TChargingOrderAccountingStrategy> list2 = chargingOrderAccountingStrategyService.lambdaQuery()
@@ -1466,6 +1475,10 @@
        TChargingOrder chargingOrder= this.getById(uid);
        ChargingOrderListInfoVO chargingOrderListInfoVO = new ChargingOrderListInfoVO();
        BigDecimal bigDecimal = new BigDecimal("0.006");
        if (chargingOrder.getServiceCharge()!=null){
            chargingOrderListInfoVO.setCommissionAmount(chargingOrder.getServiceCharge().multiply(bigDecimal));
        }
        chargingOrderListInfoVO.setElectrovalence(chargingOrder.getElectrovalence());
        chargingOrderListInfoVO.setServiceCharge(chargingOrder.getServiceCharge());
        if (chargingOrder.getElectrovalence()!=null && chargingOrder.getServiceCharge()!=null){
@@ -1505,6 +1518,13 @@
        if (chargingOrder.getCode()!=null){
            List<UploadRealTimeMonitoringData> data6 = uploadRealTimeMonitoringDataClient.getDataByOrderCode(chargingOrder.getCode()).getData();
            if (data6!=null){
                for (UploadRealTimeMonitoringData uploadRealTimeMonitoringData : data6) {
                    if (uploadRealTimeMonitoringData.getOutput_current()!=null&&
                            uploadRealTimeMonitoringData.getOutput_voltage()!=null){
                        uploadRealTimeMonitoringData.setPower(uploadRealTimeMonitoringData.getOutput_voltage()
                                .multiply(uploadRealTimeMonitoringData.getOutput_current()));
                    }
                }
                if (!data6.isEmpty()){
                    // 第一条数据soc为开始 最后一条数据soc为结束soc
                    chargingOrderListInfoVO.setStartSoc(data6.get(0).getSoc().toString());
ruoyi-service/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/TShoppingOrderServiceImpl.java
@@ -102,7 +102,10 @@
        PageInfo<TActivityStatisticslVO> pageInfo = new PageInfo<>(dto.getPageCurr(),dto.getPageSize());
        PageInfo<TActivityStatisticslVO> pageInfo1 = new PageInfo<>(1,9999999);
        List<TActivityStatisticslVO> list = this.baseMapper.activityStatistics(pageInfo,dto);
        List<TActivityStatisticslVO> list1 = this.baseMapper.activityStatistics(pageInfo1,dto);
        list.sort((o1, o2) -> o2.getCreateTime().compareTo(o1.getCreateTime()));
        // 优惠券金额
        BigDecimal coupon = new BigDecimal("0");
@@ -113,7 +116,76 @@
        // 赠送会员
        BigDecimal grantVip = new BigDecimal("0");
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        for (TActivityStatisticslVO tActivityStatisticslVO : list1) {
            // 判断享有了哪些类型
            switch (tActivityStatisticslVO.getOrderType()){
                case 1:
                    StringBuilder stringBuilder = new StringBuilder();
                    // 充电订单 优惠券金额大于0
                    if (tActivityStatisticslVO.getCouponDiscountAmount()!=null
                            &&
                            (tActivityStatisticslVO.getCouponDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
                        coupon = coupon.add(tActivityStatisticslVO.getCouponDiscountAmount());
                        stringBuilder.append("优惠券抵扣").append("+");
                    }
                    if (tActivityStatisticslVO.getVipDiscountAmount()!=null &&(tActivityStatisticslVO.getVipDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
                        discount = discount.add(tActivityStatisticslVO.getVipDiscountAmount());
                        stringBuilder.append("会员抵扣").append("+");
                    }
                    if (stringBuilder.length()>0){
                        stringBuilder.deleteCharAt(stringBuilder.length()-1);
                        tActivityStatisticslVO.setType(stringBuilder.toString());
                    }
                    tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
                    break;
                case 2:
                    StringBuilder stringBuilder1 = new StringBuilder();
                    // 购物订单 优惠券金额大于0
                    if (tActivityStatisticslVO.getCouponDiscountAmount()!=null
                            &&
                            (tActivityStatisticslVO.getCouponDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
                        coupon = coupon.add(tActivityStatisticslVO.getCouponDiscountAmount());
                        stringBuilder1.append("优惠券抵扣").append("+");
                    }
                    if (tActivityStatisticslVO.getVipDiscountAmount()!=null
                            &&
                            (tActivityStatisticslVO.getVipDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
                        discount = discount.add(tActivityStatisticslVO.getVipDiscountAmount());
                        stringBuilder1.append("会员抵扣").append("+");
                    }
                    if (stringBuilder1.length()>0){
                        stringBuilder1.deleteCharAt(stringBuilder1.length()-1);
                    }
                    tActivityStatisticslVO.setType(stringBuilder1.toString());
                    tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
                    break;
                case 3:
                    // 会员订单 优惠金额大于0
                    if (tActivityStatisticslVO.getVipDiscountAmount()!=null
                            &&
                            (tActivityStatisticslVO.getCouponDiscountAmount().compareTo(BigDecimal.ZERO)>0)){
                        vipActivity = vipActivity.add(tActivityStatisticslVO.getVipDiscountAmount());
                    }
                    tActivityStatisticslVO.setType("会员活动");
                    tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
                    break;
                case 4:
                    // 赠送会员订单 如果支付金额为0 那么就是后台赠送的会员
                    if (tActivityStatisticslVO.getPaymentAmount().compareTo(BigDecimal.ZERO)==0){
                        grantVip = grantVip.add(tActivityStatisticslVO.getOrderAmount());
                        tActivityStatisticslVO.setType("赠送会员");
                        tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
                    }else{
                        // 赠送
                        grantVip = grantVip.add(tActivityStatisticslVO.getVipDiscountAmount());
                        tActivityStatisticslVO.setType("赠送会员");
                        tActivityStatisticslVO.setTime(tActivityStatisticslVO.getCreateTime());
                    }
                    break;
            }
        }
        for (TActivityStatisticslVO tActivityStatisticslVO : list) {
            // 判断享有了哪些类型
            switch (tActivityStatisticslVO.getOrderType()){
ruoyi-service/ruoyi-order/src/main/resources/mapper/order/TChargingOrderMapper.xml
@@ -92,6 +92,9 @@
        <if test="req.status != null ">
            and t1.status = #{req.status}
        </if>
        <if test="req.orderSource != null and req.orderSource != 1 ">
            and t1.orderSource = #{req.orderSource}
        </if>
        <if test="req.siteId != null ">
            and t1.site_id = #{req.siteId}
        </if>
@@ -108,6 +111,7 @@
            and (t1.end_time between #{endTime1} and #{endTime2})
        </if>
        and t1.del_flag = 0
        order by t1.create_time desc
    </select>
    <select id="payOrderQuery" resultType="com.ruoyi.order.dto.PayOrderDto">
        SELECT o.*,i.phone FROM (SELECT
@@ -872,6 +876,9 @@
        <if test="endTime1 != null and endTime1!=''">
            and (t1.end_time between #{endTime1} and #{endTime2})
        </if>
        AND t1.del_flag = 0
        and t1.start_time IS NOT NULL
        order by t1.create_time desc
    </select>
    <select id="chargingListNoPage" resultType="com.ruoyi.order.api.vo.ChargingOrderListVO">
        select t1.* from t_charging_order t1