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); if (agreement!=null){ agreement.setContent(context); agreement.setUpdateTime(new Date()); agreement.setUpdateUser(ShiroKit.getUser().getId()); tAgreementService.updateById(agreement); } TAgreement agreement1 = tAgreementService.selectById(id1); 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',}, ]; };