zhibing.pu
2024-08-12 796dc4887bfc37eb29e5ac6c4737e51ff7ab4299
Merge branch '2.0' of http://120.76.84.145:10101/gitblit/r/java/IgoTravel into 2.0
7个文件已修改
2个文件已添加
319 ■■■■ 已修改文件
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java 176 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgreementController.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OrderCancel.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderCancelService.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderCancelServiceImpl.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/use.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/use.js 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/PlatformController.java
@@ -525,6 +525,10 @@
        EntityWrapper<TOrderLogistics> tOrderLogisticsEntityWrapper = new EntityWrapper<>();
        // 司机手动结算金额
        Wrapper<SettlementDetail> orderType1 = new EntityWrapper<SettlementDetail>();
        // 用户取消订单wrapper
        Wrapper<OrderCancel> orderCancelEntityWrapper = new EntityWrapper<>();
        // 用户取消订单记录
        List<OrderCancel> orderCancels = new ArrayList<>();
        if (time == 5 && !StringUtils.hasLength(insertTime)){
            // 余额充值wrapper
            orderType = new EntityWrapper<TPubTransactionDetails>()
@@ -580,6 +584,10 @@
                    .isNotNull("payMoney")
                    .in("payType",Arrays.asList(1, 2))
                    .between("insertTime", start, end);
            // 用户取消订单费用
            orderCancelEntityWrapper.eq("state", 2)
                    .eq("userType", 1)
                    .between("insertTime", start, end);
        }
@@ -589,7 +597,9 @@
                    // 只查询用户订单
                     tOrderPrivateCars = orderPrivateCarService.selectList(tOrderPrivateCarEntityWrapper);
                    tOrderLogistics = orderLogisticsService.selectList(tOrderLogisticsEntityWrapper);
                    // 用户取消订单费用
                    orderCancelEntityWrapper.eq("state", 2)
                            .eq("userType", 1);
                    break;
                case 2:
                    // 只查询用户充值
@@ -617,6 +627,8 @@
            settlementDetails1 = settlementDetailService.selectList(orderType1);
            driver = pubWithdrawalService.selectList(between);
            user = pubWithdrawalService.selectList(userWrapper);
            orderCancels = orderCancelService.selectList(orderCancelEntityWrapper);
        }
        List<WaterVO> res = new ArrayList<>();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -630,6 +642,7 @@
        BigDecimal driverWithdrawal = new BigDecimal("0");
        // 用户提现金额
        BigDecimal userWithdrawal = new BigDecimal("0");
        // 用户订单消费
        for (TOrderPrivateCar tOrderPrivateCar : tOrderPrivateCars) {
            if (payType!=null){
@@ -704,7 +717,77 @@
            userConsume = userConsume.add(new BigDecimal(tOrderLogistic.getPayMoney().toString()));
            break;
        }
        for (OrderCancel orderCancel : orderCancels) {
            WaterVO waterVO = new WaterVO();
            switch (orderCancel.getOrderType()){
                case 1:
                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(orderCancel);
                    if (tOrderPrivateCar == null){
                        continue;
                    }
                    waterVO.setInsertTime(format.format(tOrderPrivateCar.getInsertTime()));
                    waterVO.setType("用户订单消费");
                    if (payType!=null){
                        if (!Objects.equals(tOrderPrivateCar.getPayType(), payType)){
                            continue;
                        }
                    }
                    switch (tOrderPrivateCar.getPayType()){
                        case 1:
                            waterVO.setPayType("手机支付");
                            break;
                        case 2:
                            waterVO.setPayType("银行卡支付");
                            break;
                    }
                    // 专车
                    waterVO.setCode(tOrderPrivateCar.getOrderNum());
                    String string = orderCancel.getMoney().toString();
                    waterVO.setMoney(new BigDecimal(string));
                    TUser user1 = appUserService.selectById(tOrderPrivateCar.getUserId());
                    if (user1!=null){
                        waterVO.setName(user1.getNickName());
                        waterVO.setPhone(user1.getPhone());
                    }
                    waterVO.setRemark(tOrderPrivateCar.getRemark());
                    res.add(waterVO);
                    userConsume = userConsume.add(new BigDecimal(orderCancel.getMoney().toString()));
                    break;
                case 2:
                    TOrderLogistics tOrderLogistics1 = orderLogisticsService.selectById(orderCancel.getOrderId());
                    if (payType!=null){
                        if (!Objects.equals(tOrderLogistics1.getPayType(), payType)){
                            continue;
                        }
                    }
                    WaterVO waterVO1 = new WaterVO();
                    waterVO1.setInsertTime(format.format(tOrderLogistics1.getInsertTime()));
                    waterVO1.setType("用户订单消费");
                    // 小件物流
                    waterVO1.setCode(tOrderLogistics1.getOrderNum());
                    String string1 = orderCancel.getMoney().toString();
                    waterVO1.setMoney(new BigDecimal(string1));
                    TUser user2 = appUserService.selectById(tOrderLogistics1.getUserId());
                    if (user2!=null){
                        waterVO1.setName(user2.getNickName());
                        waterVO1.setPhone(user2.getPhone());
                    }
                    waterVO1.setType("用户订单消费");
                    switch (tOrderLogistics1.getPayType()){
                        case 1:
                            waterVO1.setPayType("手机支付");
                            break;
                        case 2:
                            waterVO1.setPayType("银行卡支付");
                            break;
                    }
                    waterVO1.setRemark(tOrderLogistics1.getRemark());
                    res.add(waterVO1);
                    userConsume = userConsume.add(new BigDecimal(orderCancel.getMoney().toString()));
                    break;
            }
        }
        // 司机提现
        for (TPubWithdrawal tPubWithdrawal : driver) {
            if(payType!=null && payType == 1){
@@ -953,6 +1036,8 @@
    private IPaymentRecordService paymentRecordService;
    @Autowired
    private ITUserService appUserService;
    @Autowired
    private IOrderCancelService orderCancelService;
    @RequestMapping(value = "/water/list")
    @ResponseBody
    public Object list1(Integer time,String insertTime,Integer payType,Integer type) {
@@ -1027,6 +1112,8 @@
        // 用户小件物流订单记录
        List<TOrderPrivateCar> tOrderPrivateCars = new ArrayList<>();
        List<TOrderLogistics> tOrderLogistics = new ArrayList<>();
        // 用户取消订单记录
        List<OrderCancel> orderCancels = new ArrayList<>();
        // 用户充值
        List<TPubTransactionDetails> tPubTransactionDetails = new ArrayList<>();
        // 司机结算总额
@@ -1045,6 +1132,8 @@
        EntityWrapper<TOrderPrivateCar> tOrderPrivateCarEntityWrapper = new EntityWrapper<>();
        // 用户小件物流订单wrapper
        EntityWrapper<TOrderLogistics> tOrderLogisticsEntityWrapper = new EntityWrapper<>();
        // 用户取消订单wrapper
        Wrapper<OrderCancel> orderCancelEntityWrapper = new EntityWrapper<>();
        // 司机手动结算金额
        Wrapper<SettlementDetail> orderType1 = new EntityWrapper<SettlementDetail>();
        if (time == 5 && !StringUtils.hasLength(insertTime)){
@@ -1074,6 +1163,9 @@
            orderType1 = new EntityWrapper<SettlementDetail>()
                    .isNotNull("settlementRecordId")
                    .in("orderType", Arrays.asList(1, 4));
            // 用户取消订单费用
             orderCancelEntityWrapper.eq("state", 2)
                    .eq("userType", 1);
        }else{
            orderType = new EntityWrapper<TPubTransactionDetails>()
                    .eq("orderType", 5)
@@ -1104,6 +1196,10 @@
                    .isNotNull("payMoney")
                    .in("payType",Arrays.asList(1, 2))
                    .between("insertTime", start, end);
            // 用户取消订单费用
            orderCancelEntityWrapper.eq("state", 2)
                    .eq("userType", 1)
                    .between("insertTime", start, end);
        }
@@ -1113,7 +1209,7 @@
                    // 只查询用户订单
                    tOrderPrivateCars = orderPrivateCarService.selectList(tOrderPrivateCarEntityWrapper);
                    tOrderLogistics = orderLogisticsService.selectList(tOrderLogisticsEntityWrapper);
                    orderCancels = orderCancelService.selectList(orderCancelEntityWrapper);
                    break;
                case 2:
                    // 只查询用户充值
@@ -1141,6 +1237,7 @@
            settlementDetails1 = settlementDetailService.selectList(orderType1);
            driver = pubWithdrawalService.selectList(between);
            user = pubWithdrawalService.selectList(userWrapper);
            orderCancels = orderCancelService.selectList(orderCancelEntityWrapper);
        }
        List<WaterVO> res = new ArrayList<>();
        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@@ -1174,13 +1271,9 @@
                    break;
            }
            // 专车
            if (tOrderPrivateCar != null){
                waterVO.setCode(tOrderPrivateCar.getOrderNum());
                String string = tOrderPrivateCar.getPayMoney().toString();
                waterVO.setMoney(new BigDecimal(string));
            }else{
                waterVO.setMoney(new BigDecimal("0"));
            }
            TUser user1 = appUserService.selectById(tOrderPrivateCar.getUserId());
            if (user1!=null){
                waterVO.setName(user1.getNickName());
@@ -1228,6 +1321,77 @@
            userConsume = userConsume.add(new BigDecimal(tOrderLogistic.getPayMoney().toString()));
            break;
        }
        for (OrderCancel orderCancel : orderCancels) {
            WaterVO waterVO = new WaterVO();
            switch (orderCancel.getOrderType()){
                case 1:
                    TOrderPrivateCar tOrderPrivateCar = orderPrivateCarService.selectById(orderCancel);
                    if (tOrderPrivateCar == null){
                        continue;
                    }
                    waterVO.setInsertTime(format.format(tOrderPrivateCar.getInsertTime()));
                    waterVO.setType("用户订单消费");
                    if (payType!=null){
                        if (!Objects.equals(tOrderPrivateCar.getPayType(), payType)){
                            continue;
                        }
                    }
                    switch (tOrderPrivateCar.getPayType()){
                        case 1:
                            waterVO.setPayType("手机支付");
                            break;
                        case 2:
                            waterVO.setPayType("银行卡支付");
                            break;
                    }
                    // 专车
                    waterVO.setCode(tOrderPrivateCar.getOrderNum());
                    String string = orderCancel.getMoney().toString();
                    waterVO.setMoney(new BigDecimal(string));
                    TUser user1 = appUserService.selectById(tOrderPrivateCar.getUserId());
                    if (user1!=null){
                        waterVO.setName(user1.getNickName());
                        waterVO.setPhone(user1.getPhone());
                    }
                    waterVO.setRemark(tOrderPrivateCar.getRemark());
                    res.add(waterVO);
                    userConsume = userConsume.add(new BigDecimal(orderCancel.getMoney().toString()));
                    break;
                case 2:
                    TOrderLogistics tOrderLogistics1 = orderLogisticsService.selectById(orderCancel.getOrderId());
                    if (payType!=null){
                        if (!Objects.equals(tOrderLogistics1.getPayType(), payType)){
                            continue;
                        }
                    }
                    WaterVO waterVO1 = new WaterVO();
                    waterVO1.setInsertTime(format.format(tOrderLogistics1.getInsertTime()));
                    waterVO1.setType("用户订单消费");
                    // 小件物流
                    waterVO1.setCode(tOrderLogistics1.getOrderNum());
                    String string1 = orderCancel.getMoney().toString();
                    waterVO1.setMoney(new BigDecimal(string1));
                    TUser user2 = appUserService.selectById(tOrderLogistics1.getUserId());
                    if (user2!=null){
                        waterVO1.setName(user2.getNickName());
                        waterVO1.setPhone(user2.getPhone());
                    }
                    waterVO1.setType("用户订单消费");
                    switch (tOrderLogistics1.getPayType()){
                        case 1:
                            waterVO1.setPayType("手机支付");
                            break;
                        case 2:
                            waterVO1.setPayType("银行卡支付");
                            break;
                    }
                    waterVO1.setRemark(tOrderLogistics1.getRemark());
                    res.add(waterVO1);
                    userConsume = userConsume.add(new BigDecimal(orderCancel.getMoney().toString()));
                    break;
            }
        }
        // 司机提现
        for (TPubWithdrawal tPubWithdrawal : driver) {
            if(payType!=null && payType == 1){
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/TSubsidyController.java
@@ -27,6 +27,7 @@
import java.math.BigInteger;
import java.text.SimpleDateFormat;
import java.time.*;
import java.time.format.DateTimeFormatter;
import java.time.temporal.TemporalAdjusters;
import java.util.*;
import java.util.stream.Collectors;
@@ -478,10 +479,18 @@
            res.add(grantVO);
        }
        // 总额
        total = total.add(redPackage).add(coupon).add(discount).add(driverConsume).add(driverWithdrawal1);
        // 已使用司机奖励合计
        driver = driverConsume.add(driverWithdrawal1);
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        // 对集合进行排序
        res.sort((a, b) -> {
            LocalDateTime timeA = LocalDateTime.parse(a.getInsertTime(), formatter);
            LocalDateTime timeB = LocalDateTime.parse(b.getInsertTime(), formatter);
            return timeA.compareTo(timeB);
        });
        return res;
    }
@@ -882,7 +891,7 @@
        // 已使用司机奖励合计
        driver = driverConsume.add(driverWithdrawal1);
        UseMoneyVO useMoneyVO = new UseMoneyVO();
        useMoneyVO.setTotal(total);
        useMoneyVO.setTotal(total.add(driver));
        useMoneyVO.setDiscount(discount);
        useMoneyVO.setRedPackage(redPackage);
        useMoneyVO.setCoupon(coupon);
@@ -1006,6 +1015,7 @@
                    ;
            // 红包领取记录wrapper
            between3 = new EntityWrapper<UserRedPacketRecord>()
                    .ne("state",0)
                    ;
            // 司机奖励
            between4 = new EntityWrapper<DriverActivityHistory>()
@@ -1029,6 +1039,7 @@
                    .between("insertTime", start, end);
            // 红包领取记录wrapper
            between3 = new EntityWrapper<UserRedPacketRecord>()
                    .ne("state",0)
                    .between("insertTime", start, end);
            // 司机奖励
            between4 = new EntityWrapper<DriverActivityHistory>()
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgreementController.java
@@ -223,16 +223,22 @@
    @ResponseBody
    public Object updateAppParam(@RequestParam Integer id,@RequestParam String context, Integer id1, String context1) {
        TAgreement agreement = tAgreementService.selectById(id);
        agreement.setContent(context);
        agreement.setUpdateTime(new Date());
        agreement.setUpdateUser(ShiroKit.getUser().getId());
        tAgreementService.updateById(agreement);
        if (agreement!=null){
            agreement.setContent(context);
            agreement.setUpdateTime(new Date());
            agreement.setUpdateUser(ShiroKit.getUser().getId());
            tAgreementService.updateById(agreement);
        }
        TAgreement agreement1 = tAgreementService.selectById(id1);
        agreement1.setContent(context1);
        agreement1.setUpdateTime(new Date());
        agreement1.setUpdateUser(ShiroKit.getUser().getId());
        tAgreementService.updateById(agreement1);
        if (agreement1!=null){
            agreement1.setContent(context1);
            agreement1.setUpdateTime(new Date());
            agreement1.setUpdateUser(ShiroKit.getUser().getId());
            tAgreementService.updateById(agreement1);
        }
        return SUCCESS_TIP;
    }
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/specialTrain/TOrderPrivateCarController.java
@@ -245,53 +245,16 @@
            driver.setFrozenMoney(driver.getFrozenMoney().subtract(c));
            driverService.updateById(driver);
        }
//        if (orderPrivateCar.getIsFrozen() == 1){
//            // 冻结订单需要给司机播报一个语音内容
//            Integer language1 = tDriver.getLanguage();
//            String text = "";
//            switch (language1){
//                case 1:
//                    text = "" ;
//                    break;
//                case 2:
//                    text = "";
//                    break;
//                case 3:
//                    text = "";
//                    break;
//            }
//            TOrderPrivateCar finalOrderPrivateCar = orderPrivateCar;
//            String audioUrl = "";
//            try {
//                audioUrl = TextToSpeechUtil.create(language1 == 1 ? "cmn-CN" : language1 == 2 ? "en-US" : "fr-FR", text, "pushOrder" + orderPrivateCar.getDriverId() + ".mp3");
//            } catch (Exception e) {
//                throw new RuntimeException(e);
//            }
//            //定时任务删除语音文件
//            new Timer().schedule(new TimerTask() {
//                @Override
//                public void run() {
//                    Process process = null;
//                    try {
//                        process = Runtime.getRuntime().exec("rm -rf /usr/local/nginx/html/files/audio/pushOrder" + finalOrderPrivateCar.getDriverId() + ".mp3");
//                    } catch (IOException e) {
//                        throw new RuntimeException(e);
//                    }
//                    if (process != null) {
//                        process.destroy();
//                    }
//                }
//            }, 30000);
//
//            String finalAudioUrl = audioUrl;
//
//            new Thread(new Runnable() {
//                @Override
//                public void run() {
//                    pushUtil.pushOrderState(2, finalOrderPrivateCar.getDriverId(), finalOrderPrivateCar.getId(), 1, 2, 0, finalAudioUrl);
//                }
//            }).start();
//        }
        if (orderPrivateCar.getIsFrozen() == 1){
            // 冻结订单需要给司机推送一个消息;
            TOrderPrivateCar finalOrderPrivateCar = orderPrivateCar;
            new Thread(new Runnable() {
                @Override
                public void run() {
                    pushUtil.pushOrderState(2, finalOrderPrivateCar.getDriverId(), finalOrderPrivateCar.getId(), 1, 7, 0, "");
                }
            }).start();
        }
        orderPrivateCar.setIsFrozen(orderPrivateCar.getIsFrozen()==1?2:1);
        orderPrivateCar.setState(7);
        tOrderPrivateCarService.updateAllColumnById(orderPrivateCar);
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/OrderCancel.java
@@ -1,17 +1,19 @@
package com.stylefeng.guns.modular.system.model;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import com.baomidou.mybatisplus.enums.IdType;
import java.io.Serializable;
import java.util.Date;
/**
 * 取消订单
 */
@TableName("t_order_cancel")
public class OrderCancel {
public class OrderCancel extends Model<OrderCancel> {
    /**
     * 主键
     */
@@ -175,4 +177,9 @@
                ", userType=" + userType +
                '}';
    }
    @Override
    protected Serializable pkVal() {
        return null;
    }
}
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/IOrderCancelService.java
New file
@@ -0,0 +1,12 @@
package com.stylefeng.guns.modular.system.service;
import com.baomidou.mybatisplus.service.IService;
import com.stylefeng.guns.modular.system.model.OrderCancel;
import java.util.List;
import java.util.Map;
public interface IOrderCancelService extends IService<OrderCancel> {
}
ManagementIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OrderCancelServiceImpl.java
New file
@@ -0,0 +1,24 @@
package com.stylefeng.guns.modular.system.service.impl;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.stylefeng.guns.modular.system.dao.OrderCancelMapper;
import com.stylefeng.guns.modular.system.model.OrderCancel;
import com.stylefeng.guns.modular.system.service.IOrderCancelService;
import com.stylefeng.guns.modular.system.util.DateUtil;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Isolation;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
import java.util.Map;
@Service
@Transactional(isolation = Isolation.READ_UNCOMMITTED, propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public class OrderCancelServiceImpl extends ServiceImpl<OrderCancelMapper, OrderCancel> implements IOrderCancelService {
}
ManagementIGOTravel/guns-admin/src/main/webapp/WEB-INF/view/system/subsidy/use.html
@@ -129,7 +129,7 @@
                        <br>
                        <h2 id="text4">已使用优惠券总额(用户端)</h2>
                    </div>
                    <img style="margin-top: 70px" width="25px" height="25px" src="${ctxPath}/static/img/jianhao.png">
                    <img style="margin-top: 70px" width="25px" height="25px" src="${ctxPath}/static/img/jiahao.png">
                    <div class="rectangle4">
                        <h1 id="num5">0</h1>
                        <br>
ManagementIGOTravel/guns-admin/src/main/webapp/static/modular/system/subsidy/use.js
@@ -21,10 +21,10 @@
TUser.initColumn = function () {
    return [
        {field: 'selectItem', radio: true},
        {title: '领取时间', field: 'insertTime', visible: true, align: 'center', valign: 'middle'},
        {title: '使用时间', field: 'insertTime', visible: true, align: 'center', valign: 'middle'},
        {title: '补贴类型', field: 'type', visible: true, align: 'center', valign: 'middle'},
        {title: '金额', field: 'amount', visible: true, align: 'center', valign: 'middle'},
        {title: '领取用户id', field: 'name', visible: true, align: 'center', valign: 'middle',},
        {title: '领取用户昵称', field: 'name', visible: true, align: 'center', valign: 'middle',},
        {title: '备注', field: 'remark', visible: true, align: 'center', valign: 'middle',},
    ];
};