From e345b36025818615eb68d37819eaff312d1fb986 Mon Sep 17 00:00:00 2001 From: 无关风月 <443237572@qq.com> Date: 星期四, 26 六月 2025 12:51:36 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_add.html | 4 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_add.html | 32 -- ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_edit.html | 1 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgreementController.java | 3 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord_add.html | 1 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/IOrderCrossCityService.java | 6 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderCrossCityServiceImpl.java | 20 + ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_edit.html | 7 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_updateFranchisee.html | 6 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java | 9 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderCrossCityService.java | 4 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_edit.html | 4 DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java | 6 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityBusinessServiceImpl.java | 1 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/platformEdit.html | 7 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_add.html | 4 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java | 3 ManagementOKTravel/guns-admin/src/main/webapp/static/modular/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.js | 14 + DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java | 3 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_edit.html | 4 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSysReformistController.java | 18 + ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tSysReformist/tSysReformist.html | 10 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderCrossCityMapper.java | 9 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detail.html | 6 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OpenCityController.java | 1 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/FinancialStatementController.java | 45 +++ ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord.html | 1 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/DateUtil.java | 25 ++ ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tAgreement/tAgreement.html | 20 + UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java | 2 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java | 2 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderTaxiMapper.java | 2 UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java | 5 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderTaxiService.java | 2 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/home.html | 14 + UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java | 237 ++++++++++++++------- ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderTaxiServiceImpl.java | 5 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_addFranchisee.html | 7 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.html | 7 DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java | 6 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detailFranchisee.html | 7 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponActivity/sysCouponActivity.html | 1 ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderCrossCityMapper.xml | 45 ++++ ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml | 4 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/report/operationalData.html | 1 ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_add.html | 1 46 files changed, 487 insertions(+), 135 deletions(-) diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java index 7176f91..cb6156e 100644 --- a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java +++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java @@ -365,6 +365,9 @@ try { String[] split = orderId.split(","); Double aDouble = orderService.queryReassignMoney(Integer.valueOf(split[0]), orderType); + if(Objects.isNull(aDouble)){ + return ResultUtil.error("未设置改派金额",null); + } BaseWarpper baseWarpper = new BaseWarpper(); if(orderType == 3){ aDouble = aDouble * split.length; diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java index e210482..2914fc6 100644 --- a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java +++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/ZiOnController.java @@ -273,6 +273,9 @@ case 2: historyVo.setState("订单收入"); break; + case 3: + historyVo.setState("城际出行"); + break; default: historyVo.setState("充值"); break; @@ -311,6 +314,9 @@ case 2: historyVo.setState("订单收入"); break; + case 3: + historyVo.setState("城际出行"); + break; default: historyVo.setState("充值"); break; diff --git a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java index 62b38a9..7c789ad 100644 --- a/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java +++ b/DriverOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java @@ -351,6 +351,12 @@ * @return */ public Map<String, String> getDistance(String origins, String destination, Integer type){ + + String[] split = origins.split(","); + String[] split1 = destination.split(","); + origins = split[1] + "," + split[0]; + destination = split1[1] + "," + split1[0]; + String url = "https://api.map.baidu.com/directionlite/v1/driving?origin="+origins+"&destination="+destination+"&ak="+key; String forObject = restTemplate.getForObject(url, String.class); JSONObject jsonObject = JSON.parseObject(forObject); diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/FinancialStatementController.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/FinancialStatementController.java index 63b44a7..b738142 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/FinancialStatementController.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/FinancialStatementController.java @@ -6,6 +6,7 @@ import com.stylefeng.guns.core.util.DateUtil; import com.stylefeng.guns.core.util.ExcelExportUtil; import com.stylefeng.guns.core.util.SinataUtil; +import com.stylefeng.guns.modular.system.service.ITOrderCrossCityService; import com.stylefeng.guns.modular.system.service.ITOrderTaxiService; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; @@ -15,6 +16,8 @@ import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -33,7 +36,9 @@ @Resource private ITOrderTaxiService orderTaxiService; - + @Resource + private ITOrderCrossCityService orderCrossCityService; + /** * 跳转支付订单统计页 @@ -69,9 +74,24 @@ @ResponseBody @RequestMapping("/paymentOrderStatisticsList") public Object paymentOrderStatisticsList(String paymentCode, String orderCode, String userPhone, - String driverPhone, String createTime, String paymentTime){ + String driverPhone, String createTime, String paymentTime,Integer orderType){ Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage(); - List<Map<String, Object>> list = orderTaxiService.paymentOrderStatisticsList(page, paymentCode, orderCode, userPhone, driverPhone, createTime, paymentTime); + List<Map<String, Object>> list = orderTaxiService.paymentOrderStatisticsList(page, paymentCode, orderCode, userPhone, driverPhone, createTime, paymentTime,orderType); + List<Map<String, Object>> list1 = orderCrossCityService.paymentOrderStatisticsList(page, paymentCode, orderCode, userPhone, driverPhone, createTime, paymentTime,orderType); + list.addAll(list1); + list.sort((o1, o2) -> { + String insertTime = o1.get("insertTime").toString(); + String insertTime1 = o2.get("insertTime").toString(); + Date o1Date = null; + Date o2Date = null; + try { + o1Date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(insertTime); + o2Date = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(insertTime1); + return o2Date.compareTo(o1Date); + } catch (ParseException e) { + throw new RuntimeException(e); + } + }); return super.packForBT(page.setRecords(list)); } @@ -88,9 +108,10 @@ @ResponseBody @RequestMapping("/paymentOrderStatisticsList_export") public void paymentOrderStatisticsList_export(String paymentCode, String orderCode, String userPhone, - String driverPhone, String createTime, String paymentTime, HttpServletRequest request, HttpServletResponse response){ + String driverPhone, String createTime, String paymentTime,Integer orderType, + HttpServletRequest request, HttpServletResponse response){ Page<Map<String, Object>> page = new Page(1, 9999); - List<Map<String, Object>> list = orderTaxiService.paymentOrderStatisticsList(page, paymentCode, orderCode, userPhone, driverPhone, createTime, paymentTime); + List<Map<String, Object>> list = orderTaxiService.paymentOrderStatisticsList(page, paymentCode, orderCode, userPhone, driverPhone, createTime, paymentTime,orderType); // 表格数据【封装】 List<List<String>> dataList = new ArrayList<>(); @@ -99,6 +120,7 @@ List<String> shellList = new ArrayList<String>(); shellList.add("支付流水号"); shellList.add("订单号"); + shellList.add("订单类型"); shellList.add("支付用户手机号"); shellList.add("支付金额"); shellList.add("接单司机手机号"); @@ -121,6 +143,19 @@ }else{ shellList.add("-"); } + if(SinataUtil.isNotEmpty(object.get("orderType"))){ + int orderType1 = Integer.parseInt(object.get("orderType").toString()); + switch (orderType1){ + case 2: + shellList.add("出租车订单"); + break; + case 3: + shellList.add("跨城出行订单"); + break; + } + }else{ + shellList.add("-"); + } if(SinataUtil.isNotEmpty(object.get("userPhone"))){ shellList.add(object.get("userPhone").toString()); }else{ diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgreementController.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgreementController.java index e1e332e..52c9a43 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgreementController.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TAgreementController.java @@ -44,9 +44,12 @@ TAgreement two = tAgreementService.selectOne(new EntityWrapper<TAgreement>().eq("useType", 1).eq("type", 2)); //隐私协议 TAgreement three = tAgreementService.selectOne(new EntityWrapper<TAgreement>().eq("useType", 1).eq("type", 1)); + //隐私协议 + TAgreement four = tAgreementService.selectOne(new EntityWrapper<TAgreement>().eq("useType", 1).eq("type", 11)); model.addAttribute("one",one); model.addAttribute("two",two); model.addAttribute("three",three); + model.addAttribute("four",four); return PREFIX + "tAgreement.html"; } diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSysReformistController.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSysReformistController.java index 32cb704..c3c4760 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSysReformistController.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TSysReformistController.java @@ -59,10 +59,10 @@ @RequestMapping("") public String index(Model model) { //改派设置 - /*TSysReformist reformist = tSysReformistService.selectOne(new EntityWrapper<TSysReformist>().eq("companyId", ShiroKit.getUser().getObjectId())); + TSysReformist reformist = tSysReformistService.selectOne(new EntityWrapper<TSysReformist>().eq("companyId", ShiroKit.getUser().getObjectId())); model.addAttribute("reformist",reformist); //积分设置 - TSysIntegral integral = tSysIntegralService.selectOne(new EntityWrapper<TSysIntegral>().eq("companyId", ShiroKit.getUser().getObjectId())); + /*TSysIntegral integral = tSysIntegralService.selectOne(new EntityWrapper<TSysIntegral>().eq("companyId", ShiroKit.getUser().getObjectId())); model.addAttribute("integral",integral);*/ //人脸识别 TSysFaceDistinguish faceDistinguish = tSysFaceDistinguishService.selectOne(new EntityWrapper<TSysFaceDistinguish>().eq("companyId", ShiroKit.getUser().getObjectId())); @@ -134,9 +134,19 @@ @RequestParam Double czc4,@RequestParam Integer czc5,@RequestParam Double czc6, @RequestParam Double czc7,@RequestParam Integer czc8,@RequestParam Double czc9, @RequestParam String phone1,@RequestParam String phone2,@RequestParam String phone3 - ,@RequestParam String res,@RequestParam String money + ,@RequestParam String res,@RequestParam String money,@RequestParam Double one ) { - + //改派设置 + TSysReformist reformist = tSysReformistService.selectOne(new EntityWrapper<TSysReformist>().eq("companyId", ShiroKit.getUser().getObjectId())); + if (SinataUtil.isNotEmpty(reformist)){ + reformist.setMoney(new BigDecimal(one)); + tSysReformistService.updateById(reformist); + }else{ + reformist = new TSysReformist(); + reformist.setCompanyId(ShiroKit.getUser().getObjectId()); + reformist.setMoney(new BigDecimal(one)); + tSysReformistService.insert(reformist); + } //人脸识别 TSysFaceDistinguish faceDistinguish = tSysFaceDistinguishService.selectOne(new EntityWrapper<TSysFaceDistinguish>().eq("companyId", ShiroKit.getUser().getObjectId())); if (SinataUtil.isNotEmpty(faceDistinguish)){ diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderCrossCityMapper.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderCrossCityMapper.java index ab327bb..29edad9 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderCrossCityMapper.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderCrossCityMapper.java @@ -48,4 +48,13 @@ List<TOrderCrossCity> queryOrders(@Param("driverId") Integer driverId, @Param("lineShiftDriverId") Integer lineShiftDriverId, @Param("state") List<Integer> state); + + List<Map<String, Object>> paymentOrderStatisticsList(Page<Map<String, Object>> page, @Param("paymentCode") String paymentCode, + @Param("orderCode") String orderCode, @Param("userPhone") String userPhone, + @Param("driverPhone") String driverPhone, @Param("createTimeStart") String createTimeStart, + @Param("createTimeEnd") String createTimeEnd, @Param("paymentTimeStart") String paymentTimeStart, + @Param("paymentTimeEnd") String paymentTimeEnd,@Param("orderType") Integer orderType); + + + } diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderTaxiMapper.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderTaxiMapper.java index 4a34172..6900d8a 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderTaxiMapper.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOrderTaxiMapper.java @@ -95,7 +95,7 @@ @Param("orderCode") String orderCode, @Param("userPhone") String userPhone, @Param("driverPhone") String driverPhone, @Param("createTimeStart") String createTimeStart, @Param("createTimeEnd") String createTimeEnd, @Param("paymentTimeStart") String paymentTimeStart, - @Param("paymentTimeEnd") String paymentTimeEnd); + @Param("paymentTimeEnd") String paymentTimeEnd,@Param("orderType") Integer orderType); /** diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderCrossCityMapper.xml b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderCrossCityMapper.xml index 74d2fe5..2758937 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderCrossCityMapper.xml +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderCrossCityMapper.xml @@ -237,4 +237,49 @@ </foreach> </if> </select> + + <select id="paymentOrderStatisticsList" resultType="map"> + select + a.id, + b.code as paymentCode, + a.orderNum, + c.phone as userPhone, + b.amount, + d.phone as driverPhone, + e.name as company, + f.money as income, + b.orderType as orderType, + DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i:%s') as insertTime, + DATE_FORMAT(b.insertTime, '%Y-%m-%d %H:%i:%s') as paymentTime + from t_order_cross_city a + left join t_payment_record b on (a.id = b.orderId and b.orderType = 3 and b.state = 2) + left join t_user c on (a.userId = c.id) + left join t_driver d on (a.driverId = d.id) + left join t_company e on (d.companyId = e.id) + left join t_pub_transaction_details f on (a.id = f.orderId and f.userType = 2 and f.state = 2) + where a.state in (8, 9) and a.isDelete = 1 and a.payManner = 1 + <if test="null != paymentCode and '' != paymentCode"> + and b.code like CONCAT('%', #{paymentCode}, '%') + </if> + <if test="null != orderCode and '' != orderCode"> + and a.orderNum like CONCAT('%', #{orderCode}, '%') + </if> + <if test="null != orderType"> + and b.orderType = #{orderType} + </if> + <if test="null != userPhone and '' != userPhone"> + and c.phone like CONCAT('%', #{userPhone}, '%') + </if> + <if test="null != driverPhone and '' != driverPhone"> + and d.phone like CONCAT('%', #{driverPhone}, '%') + </if> + <if test="null != createTimeStart and '' != createTimeStart and null != createTimeEnd and '' != createTimeEnd"> + and a.insertTime between #{createTimeStart} and #{createTimeEnd} + </if> + <if test="null != paymentTimeStart and '' != paymentTimeStart and null != paymentTimeEnd and '' != paymentTimeEnd"> + and b.insertTime between #{paymentTimeStart} and #{paymentTimeEnd} + </if> + order by a.insertTime desc + </select> + </mapper> diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml index 7b3082d..0d7b42b 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOrderTaxiMapper.xml @@ -273,6 +273,7 @@ d.phone as driverPhone, e.name as company, f.money as income, + b.orderType as orderType, DATE_FORMAT(a.insertTime, '%Y-%m-%d %H:%i:%s') as insertTime, DATE_FORMAT(b.insertTime, '%Y-%m-%d %H:%i:%s') as paymentTime from t_order_taxi a @@ -288,6 +289,9 @@ <if test="null != orderCode and '' != orderCode"> and a.orderNum like CONCAT('%', #{orderCode}, '%') </if> + <if test="null != orderType"> + and b.orderType = #{orderType} + </if> <if test="null != userPhone and '' != userPhone"> and c.phone like CONCAT('%', #{userPhone}, '%') </if> diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderCrossCityService.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderCrossCityService.java index 668551f..93b45b3 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderCrossCityService.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderCrossCityService.java @@ -51,4 +51,8 @@ String getOrderNum(Integer driverId, Integer lineShiftDriverId) throws Exception; + + List<Map<String, Object>> paymentOrderStatisticsList(Page<Map<String, Object>> page, String paymentCode, String orderCode, String userPhone, String driverPhone, String createTime, String paymentTime, Integer orderType); + + } diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderTaxiService.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderTaxiService.java index 73177eb..9947a71 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderTaxiService.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/ITOrderTaxiService.java @@ -90,7 +90,7 @@ * @return */ List<Map<String, Object>> paymentOrderStatisticsList(Page<Map<String, Object>> page, String paymentCode, String orderCode, String userPhone, - String driverPhone, String createTime, String paymentTime); + String driverPhone, String createTime, String paymentTime, Integer orderType); /** diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderCrossCityServiceImpl.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderCrossCityServiceImpl.java index 248b9bb..4318c0a 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderCrossCityServiceImpl.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderCrossCityServiceImpl.java @@ -1,6 +1,7 @@ package com.stylefeng.guns.modular.system.service.impl; import com.baomidou.mybatisplus.plugins.Page; +import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.system.model.TOrderCrossCity; import com.stylefeng.guns.modular.system.dao.TOrderCrossCityMapper; import com.stylefeng.guns.modular.system.service.ITOrderCrossCityService; @@ -55,4 +56,23 @@ int size = this.selectCount(null); return "CROSS" + String.valueOf(1000000 + size + 1).substring(1); } + + @Override + public List<Map<String, Object>> paymentOrderStatisticsList(Page<Map<String, Object>> page, String paymentCode, String orderCode, String userPhone, String driverPhone, String createTime, String paymentTime, Integer orderType) { + String createTimeStart = null; + String createTimeEnd = null; + String paymentTimeStart = null; + String paymentTimeEnd = null; + if(ToolUtil.isNotEmpty(createTime)){ + String[] split = createTime.split(" - "); + createTimeStart = split[0]; + createTimeEnd = split[1]; + } + if(ToolUtil.isNotEmpty(paymentTime)){ + String[] split = paymentTime.split(" - "); + paymentTimeStart = split[0]; + paymentTimeEnd = split[1]; + } + return this.baseMapper.paymentOrderStatisticsList(page, paymentCode, orderCode, userPhone, driverPhone, createTimeStart, createTimeEnd, paymentTimeStart, paymentTimeEnd,orderType); + } } diff --git a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderTaxiServiceImpl.java b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderTaxiServiceImpl.java index 10d2742..88f3f97 100644 --- a/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderTaxiServiceImpl.java +++ b/ManagementOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/TOrderTaxiServiceImpl.java @@ -65,7 +65,8 @@ * @return */ @Override - public List<Map<String, Object>> paymentOrderStatisticsList(Page<Map<String, Object>> page, String paymentCode, String orderCode, String userPhone, String driverPhone, String createTime, String paymentTime) { + public List<Map<String, Object>> paymentOrderStatisticsList(Page<Map<String, Object>> page, String paymentCode, String orderCode, String userPhone, + String driverPhone, String createTime, String paymentTime,Integer orderType) { String createTimeStart = null; String createTimeEnd = null; String paymentTimeStart = null; @@ -80,7 +81,7 @@ paymentTimeStart = split[0]; paymentTimeEnd = split[1]; } - return this.baseMapper.paymentOrderStatisticsList(page, paymentCode, orderCode, userPhone, driverPhone, createTimeStart, createTimeEnd, paymentTimeStart, paymentTimeEnd); + return this.baseMapper.paymentOrderStatisticsList(page, paymentCode, orderCode, userPhone, driverPhone, createTimeStart, createTimeEnd, paymentTimeStart, paymentTimeEnd,orderType); } /** diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/home.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/home.html index aeea124..9de9c09 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/home.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/home.html @@ -61,6 +61,10 @@ <h1 class="no-margins" id="orderDetail2">0</h1> <small>出租车订单</small> </div> + <div class="ibox-content"> + <h1 class="no-margins" id="orderDetail3">0</h1> + <small>跨城出行订单</small> + </div> </div> </div> <div class="col-sm-3"> @@ -116,6 +120,10 @@ <small>出租车订单数</small> </div> <div class="ibox-content"> + <h1 class="no-margins" id="orderDetail31">0</h1> + <small>跨城出行订单数</small> + </div> + <div class="ibox-content"> <h1 class="no-margins" id="paiceSum1">0</h1> <small>交易总金额</small> </div> @@ -149,6 +157,12 @@ </h1> <small>出租车订单趋势图</small> </div> + <div class="ibox-content"> + <h1 class="no-margins"> + <span class="dynamicsparkline" id="orderDetail32">Loading..</span> + </h1> + <small>跨城订单趋势图</small> + </div> </div> </div> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.html index 74bda2e..6d9f5ff 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.html @@ -28,6 +28,13 @@ <#TimeCon id="paymentTime" name="支付时间" isTime="false"/> </div> <div class="col-sm-3"> + <#SelectCon id="orderType" name="订单类型" > + <option value="">全部</option> + <option value="2">出租车订单</option> + <option value="3">跨城出行订单</option> + </#SelectCon> + </div> + <div class="col-sm-3"> <#button name="搜索" icon="fa-search" clickFun="PaymentOrderStatistics.search()"/> <#button name="重置" icon="fa-trash" clickFun="PaymentOrderStatistics.resetSearch()" space="true"/> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/report/operationalData.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/report/operationalData.html index 69f26c6..8d8e262 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/report/operationalData.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/report/operationalData.html @@ -9,6 +9,7 @@ <div class="col-sm-3"> <#SelectCon id="type" name="类别" > <option value="2">出租车</option> + <option value="3">跨城出行</option> </#SelectCon> </div> <div class="col-sm-3"> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponActivity/sysCouponActivity.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponActivity/sysCouponActivity.html index 3201058..c4e819a 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponActivity/sysCouponActivity.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponActivity/sysCouponActivity.html @@ -16,6 +16,7 @@ <#SelectCon id="couponUseType" name="优惠券类型" > <option value="">全部</option> <option value="2">出租车券</option> + <option value="3">跨城出行券</option> </#SelectCon> </div> <div class="col-sm-3"> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord.html index 919eaa6..70ae4bf 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord.html @@ -16,6 +16,7 @@ <#SelectCon id="couponUseType" name="优惠券类型" > <option value="">全部</option> <option value="2">出租车券</option> + <option value="3">跨城出行券</option> </#SelectCon> </div> <div class="col-sm-3"> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord_add.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord_add.html index 6a4a929..ff192d3 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord_add.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/sysCouponRecord/sysCouponRecord_add.html @@ -19,6 +19,7 @@ </div> <#select id="couponUseType" name="服务类型" underline="true"> <option value="2">出租车券</option> + <option value="3">跨城出行券</option> </#select> <#input id="money" name="金额" underline="true" placeholder="最多4位数字"/> <div class="form-group" id="fullMoneys" style="display: none"> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tAgreement/tAgreement.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tAgreement/tAgreement.html index 78fc7fb..872df4d 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tAgreement/tAgreement.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tAgreement/tAgreement.html @@ -15,6 +15,7 @@ <li class="active"><a data-toggle="tab" href="#tab-1" aria-expanded="true">注册协议</a></li> <li class=""><a data-toggle="tab" href="#tab-2" aria-expanded="false">用户协议</a></li> <li class=""><a data-toggle="tab" href="#tab-3" aria-expanded="false">隐私协议</a></li> + <li class=""><a data-toggle="tab" href="#tab-4" aria-expanded="false">跨城出行须知</a></li> </ul> <div class="tab-content"> <div id="tab-1" class="tab-pane active"> @@ -47,6 +48,16 @@ </div> </div> </div> + <div id="tab-4" class="tab-pane"> + <div class="panel-body"> + <textarea type="text/plain" id="editor_4" style="width:1200px;height:400px;">${four.content}</textarea> + <div class="row btn-group-m-t"> + <div class="col-sm-10 col-sm-offset-5"> + <#button btnCss="info" name="保存" id="ensure" icon="fa-check" clickFun="update_4(${four.id});"/> + </div> + </div> + </div> + </div> </div> </div> @@ -61,11 +72,13 @@ var editor_1 = null; var editor_2 = null; var editor_3 = null; + var editor_4 = null; $(function () { //初始化编辑器 editor_1 = UE.getEditor('editor_1'); editor_2 = UE.getEditor('editor_2'); editor_3 = UE.getEditor('editor_3'); + editor_4 = UE.getEditor('editor_4'); }); function update_1(id){ @@ -89,6 +102,13 @@ } submitData($("#three").val(),id); } + function update_4(id){ + if (editor_4.getContentTxt() == ""){ + Feng.error("内容不能为空!"); + return; + } + submitData(editor_4.getContent(),id); + } function submitData(content,id) { //提交信息 diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_add.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_add.html index 4016760..3453d3b 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_add.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_add.html @@ -49,6 +49,10 @@ <input type="checkbox" checked name="serverBox" id="serverBox2" value="2"> <label for="serverBox2"> 出租车 </label> </div> + <div class="checkbox checkbox-success checkbox-inline"> + <input type="checkbox" name="serverBox" id="serverBox3" value="3" onclick="TCarInfoDlg.kcServerClick()"> + <label for="serverBox3"> 跨城 </label> + </div> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_edit.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_edit.html index 2cb028a..2609f04 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_edit.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCar/tCar_edit.html @@ -51,6 +51,10 @@ <input type="checkbox" name="serverBox" id="serverBox2" value="2" ${2 == two ? 'checked=checked' : ''}> <label for="serverBox2"> 出租车 </label> </div> + <div class="checkbox checkbox-success checkbox-inline"> + <input type="checkbox" name="serverBox" id="serverBox3" value="3" ${2 == three ? 'checked=checked' : ''} onclick="TCarInfoDlg.kcServerClick()"> + <label for="serverBox3"> 跨城 </label> + </div> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/platformEdit.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/platformEdit.html index 9ecd84b..7e31dbf 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/platformEdit.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/platformEdit.html @@ -52,7 +52,12 @@ <label for="checkbox2"> 出租车 </label> - + </div> + <div class="checkbox checkbox-success"> + <input name="checkbox" id="checkbox3" type="checkbox" value="3" ${1 == item.isCross ? 'checked=checked' : ''} onclick="TCompanyInfoDlg.checkbox3()"> + <label for="checkbox3"> + 跨城出行 + </label> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_add.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_add.html index 40ac907..afe1eb7 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_add.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_add.html @@ -57,32 +57,12 @@ <label for="checkbox2"> 出租车 </label> -<!-- <fieldset>--> -<!-- <div class="row" style="display: none;" id="czDiv">--> -<!-- <div class="col-sm-6">--> -<!-- <div class="checkbox checkbox-circle">--> -<!-- <input type="radio" name="cz" id="cz1" value="1" checked="">--> -<!-- <label for="cz1">--> -<!-- <div style="position: relative;top: -8px;">--> -<!-- <span>按比例抽成,每笔订单抽取</span>--> -<!-- <input style="width: 50%;display: inline-block;" type="text" class="form-control" id="czPercent" name="czPercent">--> -<!-- <span>%</span>--> -<!-- </div>--> -<!-- </label>--> -<!-- </div>--> -<!-- <div class="checkbox checkbox-circle">--> -<!-- <input type="radio" name="cz" id="cz2" value="2">--> -<!-- <label for="cz2">--> -<!-- <div style="position: relative;top: -8px;">--> -<!-- <span>按固定金额抽成,每笔订单抽取</span>--> -<!-- <input style="width: 50%;display: inline-block;" type="text" class="form-control" id="czMoney" name="czMoney">--> -<!-- <span>元</span>--> -<!-- </div>--> -<!-- </label>--> -<!-- </div>--> -<!-- </div>--> -<!-- </div>--> -<!-- </fieldset>--> + </div> + <div class="checkbox checkbox-success"> + <input name="checkbox" id="checkbox3" type="checkbox" value="3" onclick="TCompanyInfoDlg.checkbox3()"> + <label for="checkbox3"> + 跨城 + </label> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_addFranchisee.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_addFranchisee.html index 2a01fdd..4f6b489 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_addFranchisee.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_addFranchisee.html @@ -38,7 +38,12 @@ <label for="checkbox2"> 出租车 </label> - + </div> + <div class="checkbox checkbox-success"> + <input name="checkbox" id="checkbox3" type="checkbox" value="3" onclick="FranchiseeInfoDlg.checkbox3()"> + <label for="checkbox3"> + 跨城 + </label> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detail.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detail.html index 83c16bb..0d946a9 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detail.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detail.html @@ -99,6 +99,12 @@ 出租车 </label> </div> + <div class="checkbox checkbox-success"> + <input name="checkbox" id="checkbox3" type="checkbox" disabled value="3" ${1 == item.isCross ? 'checked=checked' : ''} > + <label for="checkbox3"> + 跨城 + </label> + </div> </fieldset> </div> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detailFranchisee.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detailFranchisee.html index 9b2581f..bfb4130 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detailFranchisee.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_detailFranchisee.html @@ -30,7 +30,12 @@ <label for="checkbox2"> 出租车 </label> - + </div> + <div class="checkbox checkbox-success"> + <input name="checkbox" id="checkbox3" type="checkbox" disabled value="3" ${1 == item.isCross ? 'checked=checked' : ''} > + <label for="checkbox3"> + 跨城 + </label> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_edit.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_edit.html index f847f0a..a67be9f 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_edit.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_edit.html @@ -57,7 +57,12 @@ <label for="checkbox2"> 出租车 </label> - + </div> + <div class="checkbox checkbox-success"> + <input name="checkbox" id="checkbox3" type="checkbox" value="3" ${1 == item.isCross ? 'checked=checked' : ''} onclick="TCompanyInfoDlg.checkbox3()"> + <label for="checkbox3"> + 跨城 + </label> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_updateFranchisee.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_updateFranchisee.html index 462c966..12f2ab3 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_updateFranchisee.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tCompany/tCompany_updateFranchisee.html @@ -39,6 +39,12 @@ 出租车 </label> </div> + <div class="checkbox checkbox-success"> + <input name="checkbox" id="checkbox3" type="checkbox" value="3" ${1 == item.isCross ? 'checked=checked' : ''} onclick="FranchiseeInfoDlg.checkbox3()"> + <label for="checkbox3"> + 跨城 + </label> + </div> </fieldset> </div> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_add.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_add.html index 626b86e..80105d8 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_add.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_add.html @@ -74,6 +74,10 @@ <input type="checkbox" name="serverBox" id="serverBox2" value="2"> <label for="serverBox2"> 出租车 </label> </div> + <div class="checkbox checkbox-success checkbox-inline"> + <input type="checkbox" name="serverBox" id="serverBox3" value="3" onclick="YesDriverInfoDlg.checkBox()" > + <label for="serverBox3"> 跨城 </label> + </div> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_edit.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_edit.html index c1fb728..a69b25b 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_edit.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tDriver/tDriver_edit.html @@ -77,6 +77,10 @@ <input type="checkbox" name="serverBox" id="serverBox2" value="2" ${2 == two ? 'checked=checked' : ''}> <label for="serverBox2"> 出租车 </label> </div> + <div class="checkbox checkbox-success checkbox-inline"> + <input type="checkbox" name="serverBox" id="serverBox3" value="3" ${2 == three ? 'checked=checked' : ''} onclick="YesDriverInfoDlg.checkBox()" > + <label for="serverBox3"> 跨城 </label> + </div> </div> </fieldset> </div> diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_add.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_add.html index 93c4d4c..a2e861c 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_add.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_add.html @@ -27,6 +27,7 @@ <select class="form-control" id="businessType"> <option value="">选择经营业务</option> <option value="2">出租车</option> + <option value="3">跨城出行</option> </select> </div> <div class="col-sm-3" > diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_edit.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_edit.html index 2d6e338..2c06fbf 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_edit.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_edit.html @@ -34,6 +34,7 @@ <select class="form-control" id="businessType"> <option value="">选择经营业务</option> <option value="2">出租车</option> + <option value="3">跨城出行</option> </select> </div> <div class="col-sm-3" > diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tSysReformist/tSysReformist.html b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tSysReformist/tSysReformist.html index 52c6f6f..441728a 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tSysReformist/tSysReformist.html +++ b/ManagementOKTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tSysReformist/tSysReformist.html @@ -13,7 +13,7 @@ <h3>系统设置:</h3> </div> - <!--<div class="form-group"> + <div class="form-group"> <label class="col-sm-2 control-label">改派设置:</label> <div class="col-sm-10"> 改派费用为 <input type="text" oninput="checkIsDouble(this)" @@ -26,7 +26,7 @@ </div> </div> - <div class="form-group"> + <!--<div class="form-group"> <label class="col-sm-2 control-label">积分设置:</label> <div class="col-sm-10"> 消费一元积 <input type="text" oninput="checkIsInt(this)" @@ -459,6 +459,7 @@ } }); var openValue = $("#openValue").val(); + var one = $("#one").val().trim(); var czc1 = $("#czc1").val().trim(); var czc2 = $("#czc2").val().trim(); var czc3 = $("#czc3").val().trim(); @@ -477,13 +478,13 @@ if ( "" == czc1 || "" == czc2 || "" == czc3 || "" == czc4 || "" == czc5 || "" == czc6 || "" == czc7 || "" == czc8 || "" == czc9 - || "" == phone1 || "" == phone2 ) { + || "" == phone1 || "" == phone2 || "" == one) { Feng.info("输入框不能为空!"); return; } else if ( !regDouble.test(czc1) || !regInt.test(czc2) || !regDouble.test(czc3) || !regDouble.test(czc4) || !regInt.test(czc5) || !regDouble.test(czc6) - || !regDouble.test(czc7) || !regInt.test(czc8) || !regDouble.test(czc9) + || !regDouble.test(czc7) || !regInt.test(czc8) || !regDouble.test(czc9)|| !regDouble.test(one) ) { Feng.info("格式不正确!"); return ; @@ -496,6 +497,7 @@ },function(data){ Feng.error("操作失败!" + data.responseJSON.message + "!"); }); + ajax.set("one", one); ajax.set("czc1", czc1); ajax.set("czc2", czc2); ajax.set("czc3", czc3); diff --git a/ManagementOKTravel/guns-admin/src/main/webapp/static/modular/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.js b/ManagementOKTravel/guns-admin/src/main/webapp/static/modular/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.js index 1b5542c..2d10f43 100644 --- a/ManagementOKTravel/guns-admin/src/main/webapp/static/modular/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.js +++ b/ManagementOKTravel/guns-admin/src/main/webapp/static/modular/system/financialStatement/paymentOrderStatistics/paymentOrderStatistics.js @@ -17,6 +17,15 @@ {title: '', field: 'id', visible: false, align: 'center', valign: 'middle'}, {title: '支付流水号', field: 'paymentCode', visible: true, align: 'center', valign: 'middle'}, {title: '订单号', field: 'orderNum', visible: true, align: 'center', valign: 'middle'}, + {title: '订单类型', field: 'orderType', visible: true, align: 'center', valign: 'middle', + formatter: function (value, row) { + if(row.orderType == 2) { + return '出租车订单'; + } else { + return '跨城出行订单'; + } + } + }, {title: '支付用户手机号', field: 'userPhone', visible: true, align: 'center', valign: 'middle'}, {title: '支付金额', field: 'amount', visible: true, align: 'center', valign: 'middle'}, {title: '接单司机手机号', field: 'driverPhone', visible: true, align: 'center', valign: 'middle'}, @@ -85,8 +94,9 @@ let driverPhone = $("#driverPhone").val(); let createTime = $("#createTime").val(); let paymentTime = $("#paymentTime").val(); + let orderType = $("#orderType").val(); window.location.href = Feng.ctxPath + '/financialStatement/paymentOrderStatisticsList_export?paymentCode=' + paymentCode + "&orderCode=" + orderCode + - "&userPhone=" + userPhone + "&driverPhone=" + driverPhone + "&createTime=" + createTime + "&paymentTime=" + paymentTime + "&userPhone=" + userPhone + "&driverPhone=" + driverPhone + "&createTime=" + createTime + "&paymentTime=" + paymentTime + "&orderType=" + orderType } @@ -102,6 +112,7 @@ queryData['driverPhone'] = $("#driverPhone").val(); queryData['createTime'] = $("#createTime").val(); queryData['paymentTime'] = $("#paymentTime").val(); + queryData['orderType'] = $("#orderType").val(); PaymentOrderStatistics.table.refresh({query: queryData}); }; @@ -113,6 +124,7 @@ $("#driverPhone").val(""); $("#createTime").val(""); $("#paymentTime").val(""); + $("#orderType").val(""); PaymentOrderStatistics.search(); }; diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java index f23851f..556f941 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/DriverController.java @@ -81,7 +81,9 @@ }) public ResultUtil<DriverInfoWarpper> queryDriverInfo(Integer id){ try { + System.err.println(id); Map<String, Object> map = driverService.queryDriverInfo(id); + System.err.println(map); String name = String.valueOf(map.get("name")); map.put("name", name.substring(0, 1) + "师傅"); List<BaseWarpper> list = driverService.queryBusiness(id); diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OpenCityController.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OpenCityController.java index b6c78c2..cc528ed 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OpenCityController.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OpenCityController.java @@ -71,6 +71,7 @@ public ResultUtil<List<BaseWarpper>> queryBusiness(String province, String city, String district){ try { List<BaseWarpper> list = openCityBusinessService.queryBusiness(province, city, district); + System.err.println(list); return ResultUtil.success(list); }catch (Exception e){ e.printStackTrace(); diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java index 85f6856..08a409e 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java @@ -1257,7 +1257,7 @@ @PostMapping("/base/wxPayOrderTaxi") public void wxPayOrderTaxi(HttpServletRequest request, HttpServletResponse response){ try { - System.out.println("完成订单微信支付回调"); + System.err.println("完成订单微信支付回调"); Map<String, String> map = payMoneyUtil.weixinpayCallback(request); System.out.println("wx支付信息:"+map); @@ -1284,6 +1284,7 @@ orderTaxiService.payOrderTaxiCallback(id, order_id, 1); break; case 3: + orderCrossCityService.payOrderCrossCityCallback(id, order_id, 1); break; case 4: break; diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/IOrderCrossCityService.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/IOrderCrossCityService.java index 488e3a9..991d2ea 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/IOrderCrossCityService.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/IOrderCrossCityService.java @@ -258,4 +258,10 @@ List<OrderCrossCity> queryListOrder(Integer driverId, Integer lineShiftId, List<Integer> state, String day) throws Exception; + + /** + * 自动取消订单 + */ + void autoCancelOrder(); + } diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java index 16dc5a7..e88c6e3 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotations.TableField; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.service.impl.ServiceImpl; +import com.stylefeng.guns.core.util.GpsCoordinateUtils; import com.stylefeng.guns.core.util.ToolUtil; import com.stylefeng.guns.modular.crossCity.dao.LinePriceMapper; import com.stylefeng.guns.modular.crossCity.dao.LineShiftDriverMapper; @@ -43,6 +44,7 @@ import org.springframework.transaction.annotation.Isolation; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; import org.springframework.web.client.RestTemplate; @@ -51,6 +53,7 @@ import java.math.BigDecimal; import java.math.MathContext; import java.math.RoundingMode; +import java.time.LocalDateTime; import java.util.*; import static com.stylefeng.guns.modular.taxi.service.impl.OrderTaxiServiceImpl.orderIds; @@ -167,7 +170,10 @@ @Autowired private IOpenCityService openCityService; - + @Autowired + private PayMoneyUtil payMoneyUtil; + @Autowired + private ICompanyService companyService; @Value("${callbackPath}") private String callbackPath; @@ -317,13 +323,16 @@ }else{ appletsOpenId = userInfo.getAppletsOpenId(); } - Map<String, String> map = icbcPayUtil.placeAnOrder(orderId + ",3", 9, 5, uid.toString(), "完成订单", orderMoney, callbackPath + "/base/wxPayOrderTaxi", "", type, appletsOpenId); - if(map.get("code").equals("200")){ - paymentRecordService.saveData(1, orderCrossCity.getUserId(), 1, orderId, 3, 1, orderMoney, map.get("order_id"), 1);//添加预支付数据 - resultUtil = ResultUtil.success(map.get("data")); - }else{ - resultUtil = ResultUtil.error(map.get("msg"), ""); - } +// Map<String, String> map = icbcPayUtil.placeAnOrder(orderId + ",3", 9, 5, uid.toString(), "完成订单", orderMoney, callbackPath + "/base/wxPayOrderTaxi", "", type, appletsOpenId); +// if(map.get("code").equals("200")){ +// paymentRecordService.saveData(1, orderCrossCity.getUserId(), 1, orderId, 3, 1, orderMoney, map.get("order_id"), 1);//添加预支付数据 +// resultUtil = ResultUtil.success(map.get("data")); +// }else{ +// resultUtil = ResultUtil.error(map.get("msg"), ""); +// } + String app = type == 1 ? "APP" : "JSAPI"; + resultUtil = payMoneyUtil.weixinpay("完成订单", "", orderId + "_3_" + UUIDUtil.getRandomCode(5), orderMoney.toString(), "/base/wxPayOrderTaxi", app, userInfo.getAppletsOpenId()); + paymentRecordService.saveData(1, orderCrossCity.getUserId(), 1, orderId, 3, 1, orderMoney, "", 1);//添加预支付数据 } if(payType == 2){//支付宝支付 Map<String, String> map = icbcPayUtil.placeAnOrder(orderId + ",3", 10, 5, uid.toString(), "完成订单", orderMoney, callbackPath + "/base/aliPayOrderTaxi", "", type, null); @@ -407,6 +416,24 @@ OrderCrossCity orderCrossCity = this.selectById(id); PaymentRecord query = paymentRecordService.query(1, orderCrossCity.getUserId(), 1, Integer.valueOf(id), 3, type, 1); if(null != query){ + Integer placeOrderWay = null; + switch (orderCrossCity.getOrderSource()){ + case 2: + placeOrderWay = 4; + break; + case 3: + placeOrderWay = 4; + break; + case 6: + placeOrderWay = 1; + break; + case 7: + placeOrderWay = 2; + break; + case 5: + placeOrderWay = 3; + break; + } //添加交易明细 transactionDetailsService.saveData(orderCrossCity.getUserId(), "完成订单", query.getAmount(), 2, 1, 1, 3, query.getOrderId()); orderCrossCity.setState(2);//先支付再服务 @@ -414,10 +441,10 @@ orderCrossCity.setPayMoney(query.getAmount()); this.updateById(orderCrossCity); - UserInfo userInfo = userInfoService.selectById(orderCrossCity.getUserId()); - SysIntegral query1 = sysIntegralMapper.query(orderCrossCity.getCompanyId()); - userInfo.setIntegral(userInfo.getIntegral() + (query.getAmount().intValue() * query1.getIntegral()));//积分 - userInfoService.updateById(userInfo); +// UserInfo userInfo = userInfoService.selectById(orderCrossCity.getUserId()); +// SysIntegral query1 = sysIntegralMapper.query(orderCrossCity.getCompanyId()); +// userInfo.setIntegral(userInfo.getIntegral() + (query.getAmount().intValue() * query1.getIntegral()));//积分 +// userInfoService.updateById(userInfo); //处理优惠券和红包 if(null != orderCrossCity.getCouponId()){ @@ -439,16 +466,40 @@ paymentRecordService.updateById(query); //添加已收入明细 - Line line = lineService.selectById(orderCrossCity.getLineId()); - Double speMoney = Double.valueOf(line.getRakeRate()); - BigDecimal d = new BigDecimal(orderCrossCity.getOrderMoney()).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN);//企业收入 - BigDecimal c = new BigDecimal(orderCrossCity.getOrderMoney()).subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);//司机收入 - incomeService.saveData(1, orderCrossCity.getCompanyId(), 2, orderCrossCity.getId(), 3, d.doubleValue()); - incomeService.saveData(2, orderCrossCity.getDriverId(), 2, orderCrossCity.getId(), 3, c.doubleValue()); +// Line line = lineService.selectById(orderCrossCity.getLineId()); +// Double speMoney = Double.valueOf(line.getRakeRate()); +// BigDecimal d = new BigDecimal(orderCrossCity.getOrderMoney()).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100))).setScale(2, BigDecimal.ROUND_HALF_EVEN);//企业收入 +// BigDecimal c = new BigDecimal(orderCrossCity.getOrderMoney()).subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);//司机收入 +// incomeService.saveData(1, orderCrossCity.getCompanyId(), 2, orderCrossCity.getId(), 3, d.doubleValue()); +// incomeService.saveData(2, orderCrossCity.getDriverId(), 2, orderCrossCity.getId(), 3, c.doubleValue()); Driver driver = driverService.selectById(orderCrossCity.getDriverId()); - driver.setBusinessMoney(new BigDecimal(null != driver.getBusinessMoney() ? driver.getBusinessMoney() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); - driver.setLaveBusinessMoney(new BigDecimal(null != driver.getLaveBusinessMoney() ? driver.getLaveBusinessMoney() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); - driver.setBalance(new BigDecimal(null != driver.getBalance() ? driver.getBalance() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); +// driver.setBusinessMoney(new BigDecimal(null != driver.getBusinessMoney() ? driver.getBusinessMoney() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); +// driver.setLaveBusinessMoney(new BigDecimal(null != driver.getLaveBusinessMoney() ? driver.getLaveBusinessMoney() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); +// driver.setBalance(new BigDecimal(null != driver.getBalance() ? driver.getBalance() : 0).add(c).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue()); +// driverService.updateById(driver); + + Company company = companyService.selectById(driver.getFranchiseeId()); + if(Objects.isNull(company)){ + company = companyService.selectById(driver.getCompanyId()); + } + // 司机收入 + double moneyTwo; + // 平台收入 + double money; + if(orderCrossCity.getOrderSource() == 2 || orderCrossCity.getOrderSource() == 3){ + double v = company.getPercentageDeduction() / 100; + money = v * orderCrossCity.getOrderMoney(); + moneyTwo = orderCrossCity.getOrderMoney()-money; + }else { + money = company.getFixedDeduction(); + moneyTwo = orderCrossCity.getOrderMoney()-money; + } + driver.setBalance(driver.getBalance() + moneyTwo); + // 新增扣除使用费记录 + transactionDetailsService.saveDataTaxi(driver.getId(), "软件使用费", money, 2, 1, 2, 6, orderCrossCity.getId(),placeOrderWay,company.getId()); + // 司机订单收入 + transactionDetailsService.saveDataTaxi(driver.getId(), "完成订单", moneyTwo, 1, 1, 2, 3, orderCrossCity.getId(),placeOrderWay,company.getId()); + driverService.updateById(driver); // TODO: 2020/5/24 这里需要给司机和用户推送订单状态 @@ -463,6 +514,8 @@ systemNoticeService.addSystemNotice(1, "您已使用" + (type == 1 ? "微信" : "支付宝") + "成功完成出行订单支付,谢谢使用!", orderCrossCity.getUserId(), 1); + //添加司机消息提醒 + systemNoticeService.addSystemNotice(2, "用户已线上完成支付", driver.getId(), 1); }else{ System.err.println("预支付数据异常(orderId = " + id + ")"); } @@ -1186,38 +1239,39 @@ } //还原座位 - CancleOrder query1 = cancleOrderService.query(1, 3, orderCrossCity.getCompanyId()); - if (null != query1) { - integer = orderCancelService.saveData(id, 3, reason, remark, null, null, 2, 1, uid); - orderCrossCity.setState(10); - this.updateById(orderCrossCity); +// CancleOrder query1 = cancleOrderService.query(1, 3, orderCrossCity.getCompanyId()); +// if (null != query1) { + integer = orderCancelService.saveData(id, 3, reason, remark, null, null, 2, 1, uid); + orderCrossCity.setState(10); + this.updateById(orderCrossCity); - if(orderCrossCity.getState() != 7){//已经支付的情况推送给司机提醒 - new Thread(new Runnable() { - @Override - public void run() { - pushUtil.pushOrderState(2, orderCrossCity.getDriverId(), orderCrossCity.getId(), 3, orderCrossCity.getState(), 0); - System.err.println("推送取消操作---------------------"); - } - }).start(); - } - - //修改司机座位 - LineShiftDriver lineShiftDriver = lineShiftDriverMapper.selectById(orderCrossCity.getLineShiftDriverId()); - lineShiftDriver.setLaveSeat(lineShiftDriver.getLaveSeat() + orderCrossCity.getPeopleNumber()); - lineShiftDriver.setLaveSeatNumber(lineShiftDriver.getLaveSeatNumber() + (orderCrossCity.getTravelMode() == 1 ? "," : "") + orderCrossCity.getSeatNumber()); - lineShiftDriverMapper.updateById(lineShiftDriver); - - //修改司机为空闲 - List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.queryByDriverId(orderCrossCity.getDriverId(), 2, 3, 4, 5, 11); - if(orderCrossCities.size() == 0){ - Driver driver = driverService.selectById(orderCrossCity.getDriverId()); - driver.setState(2); - driverService.updateById(driver); - } - }else{ - return ResultUtil.error("请完善后台取消规则设置"); + if(orderCrossCity.getState() != 7){//已经支付的情况推送给司机提醒 + new Thread(new Runnable() { + @Override + public void run() { + pushUtil.pushOrderState(2, orderCrossCity.getDriverId(), orderCrossCity.getId(), 3, orderCrossCity.getState(), 0); + System.err.println("推送取消操作---------------------"); + } + }).start(); } + + //修改司机座位 + LineShiftDriver lineShiftDriver = lineShiftDriverMapper.selectById(orderCrossCity.getLineShiftDriverId()); + lineShiftDriver.setLaveSeat(lineShiftDriver.getLaveSeat() + orderCrossCity.getPeopleNumber()); + lineShiftDriver.setLaveSeatNumber(lineShiftDriver.getLaveSeatNumber() + (orderCrossCity.getTravelMode() == 1 ? "," : "") + orderCrossCity.getSeatNumber()); + lineShiftDriverMapper.updateById(lineShiftDriver); + + //修改司机为空闲 + List<OrderCrossCity> orderCrossCities = orderCrossCityMapper.queryByDriverId(orderCrossCity.getDriverId(), 2, 3, 4, 5, 11); + if(orderCrossCities.size() == 0){ + Driver driver = driverService.selectById(orderCrossCity.getDriverId()); + driver.setState(2); + driverService.updateById(driver); + } +// } +// else{ +// return ResultUtil.error("请完善后台取消规则设置"); +// } //已支付的情况下进行退款操作 if(null != orderCrossCity.getPayType() && null != orderCrossCity.getPayMoney()){ @@ -1232,39 +1286,30 @@ if(null == query){ return ResultUtil.error("订单还未进行支付"); } - Map<String, Object> merrefund = icbcPayUtil.merrefund(query.getCode(), "", query.getAmount(), id + "_3", orderCrossCity.getOrderNum()); - if(Integer.valueOf(merrefund.get("code").toString()) == 0){ - Map<String, Object> refundqry = icbcPayUtil.refundqry("", query.getCode(), orderCrossCity.getOrderNum()); - if(Integer.valueOf(refundqry.get("code").toString()) == 0 && Integer.valueOf(refundqry.get("pay_status").toString()) == 0){//成功 - //添加交易明细 - transactionDetailsService.saveData(orderCrossCity.getUserId(), "跨城订单取消退款", query.getAmount(), 1, 1, 1, 3, id); - } - if(Integer.valueOf(refundqry.get("code").toString()) == 0 && Integer.valueOf(refundqry.get("pay_status").toString()) == 1){//失败 - return ResultUtil.error("订单取消失败(退款不成功)"); - } - if(Integer.valueOf(refundqry.get("code").toString()) == 0 && Integer.valueOf(refundqry.get("pay_status").toString()) == 2){//未知 - return ResultUtil.error("退款返回未知异常"); - } - } + Map<String, String> merrefund = payMoneyUtil.wxRefund(query.getCode(), orderCrossCity.getOrderNum(), String.valueOf(query.getAmount()), String.valueOf(query.getAmount()), ""); + System.err.println("跨城退款数据:::"+merrefund); + //添加交易明细 + transactionDetailsService.saveData(orderCrossCity.getUserId(), "跨城订单取消退款", query.getAmount(), 1, 1, 1, 3, id); + integer = orderCancelService.saveData(id, 3, reason, remark, null, null, 2, 1, uid); } //添加负的收入明细 - List<Income> incomes = incomeService.selectList(new EntityWrapper<Income>().eq("type", 2).eq("incomeId", id).eq("orderType", 3)); - for(Income income : incomes){ - if(income.getUserType() == 2){//处理司机的收入 - Driver driver = driverService.selectById(income.getObjectId()); - driver.setBalance(driver.getBalance() - income.getMoney()); - driver.setBusinessMoney(driver.getBusinessMoney() - income.getMoney()); - driver.setLaveBusinessMoney(driver.getLaveBusinessMoney() - income.getMoney()); - driverService.updateById(driver); - } - Income income1 = new Income(); - BeanUtils.copyProperties(income, income1); - income1.setMoney(income.getMoney() * -1); - income1.setId(null); - income1.setInsertTime(new Date()); - incomeService.insert(income1); - } +// List<Income> incomes = incomeService.selectList(new EntityWrapper<Income>().eq("type", 2).eq("incomeId", id).eq("orderType", 3)); +// for(Income income : incomes){ +// if(income.getUserType() == 2){//处理司机的收入 +// Driver driver = driverService.selectById(income.getObjectId()); +// driver.setBalance(driver.getBalance() - income.getMoney()); +// driver.setBusinessMoney(driver.getBusinessMoney() - income.getMoney()); +// driver.setLaveBusinessMoney(driver.getLaveBusinessMoney() - income.getMoney()); +// driverService.updateById(driver); +// } +// Income income1 = new Income(); +// BeanUtils.copyProperties(income, income1); +// income1.setMoney(income.getMoney() * -1); +// income1.setId(null); +// income1.setInsertTime(new Date()); +// incomeService.insert(income1); +// } } //添加消息 @@ -1303,8 +1348,8 @@ if(null == distance){ System.err.println("查询距离出错了"); }else{ - d = new BigDecimal(distance.get("distance")).divide(new BigDecimal(1000)).setScale(2, BigDecimal.ROUND_HALF_EVEN).toString(); - t = new BigDecimal(distance.get("duration")).divide(new BigDecimal(60)).setScale(2, BigDecimal.ROUND_HALF_EVEN).intValue() + ""; + d = new BigDecimal(distance.get("distance")).divide(new BigDecimal(1000),2, BigDecimal.ROUND_HALF_EVEN).toString(); + t = new BigDecimal(distance.get("duration")).divide(new BigDecimal(60),2,BigDecimal.ROUND_HALF_EVEN).toString(); } OrderServerWarpper orderServerWarpper = new OrderServerWarpper(); orderServerWarpper.setOrderId(orderCrossCity.getId()); @@ -1312,6 +1357,18 @@ orderServerWarpper.setState(orderCrossCity.getState()); orderServerWarpper.setLon(null != value ? value.split(",")[0] : "0.0"); orderServerWarpper.setLat(null != value ? value.split(",")[1] : "0.0"); + value = value == null ? "0.0,0.0" : value; + double[] doubles = GpsCoordinateUtils.calBD09toGCJ02(Double.parseDouble(value.split(",")[1]), Double.parseDouble(value.split(",")[0])); + orderServerWarpper.setNextLongitude(String.valueOf(doubles[0])); + orderServerWarpper.setNextLatitude(String.valueOf(doubles[1])); + // 起点地址转换 + doubles = GpsCoordinateUtils.calBD09toGCJ02(orderCrossCity.getStartLat(), orderCrossCity.getStartLon()); + orderServerWarpper.setStartLat(String.valueOf(doubles[0])); + orderServerWarpper.setStartLon(String.valueOf(doubles[1])); + // 终点地址转换 + doubles = GpsCoordinateUtils.calBD09toGCJ02(orderCrossCity.getEndLat(), orderCrossCity.getEndLon()); + orderServerWarpper.setEndLat(String.valueOf(doubles[0])); + orderServerWarpper.setEndLon(String.valueOf(doubles[1])); orderServerWarpper.setReassignNotice(orderCrossCity.getReassignNotice()); if(orderCrossCity.getState() == 2 || orderCrossCity.getState() == 3){//前往预约地 orderServerWarpper.setReservationMileage(d); @@ -1740,6 +1797,20 @@ return orderCrossCityMapper.queryListOrder(driverId, lineShiftId, state, day); } + @Override + public void autoCancelOrder() { + LocalDateTime localDateTime = LocalDateTime.now(); + LocalDateTime dateTime = localDateTime.minusMinutes(30); + String time = dateUtil.localDateTimeToStringHHmm(dateTime); + List<OrderCrossCity> orderCrossCities = this.selectList(new EntityWrapper<OrderCrossCity>().eq("state", 7).like("insertTime", time)); + if(!CollectionUtils.isEmpty(orderCrossCities)){ + for (OrderCrossCity orderCrossCity : orderCrossCities) { + orderCrossCity.setState(10); + } + this.updateBatchById(orderCrossCities); + } + } + /** * 获取订单编号 * @return diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityBusinessServiceImpl.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityBusinessServiceImpl.java index 20720c1..c14690e 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityBusinessServiceImpl.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/service/impl/OpenCityBusinessServiceImpl.java @@ -36,6 +36,7 @@ if(openCityBusinesses.size() == 0){ openCityBusinesses = openCityBusinessMapper.queryBusiness(province, null, null); } + System.err.println(openCityBusinesses); List<BaseWarpper> list = new ArrayList<>(); for(OpenCityBusiness b : openCityBusinesses){ BaseWarpper baseWarpper = new BaseWarpper(); diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/DateUtil.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/DateUtil.java index 9519160..1b6fa9c 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/DateUtil.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/DateUtil.java @@ -5,6 +5,9 @@ import java.text.ParseException; import java.text.SimpleDateFormat; +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.*; /** @@ -110,6 +113,28 @@ return list; } + /** + * localdate转为字符串 + * + * @param time localdate + * @return 字符串 + */ + public String localDateToString(LocalDate time) { + DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd"); + return df.format(time); + } + + /** + * localdatetime转为字符串 + * + * @param time localdatetime + * @return 字符串 + */ + public static String localDateTimeToStringHHmm(LocalDateTime time) { + DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"); + return df.format(time); + } + /** * 获取月初和月末日期 diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java index 58322c9..d3f4a9e 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/GDMapElectricFenceUtil.java @@ -351,21 +351,24 @@ * @return */ public Map<String, String> getDistance(String origins, String destination, Integer type){ + + String[] split = origins.split(","); + String[] split1 = destination.split(","); + origins = split[1] + "," + split[0]; + destination = split1[1] + "," + split1[0]; + String url = "https://api.map.baidu.com/directionlite/v1/driving?origin="+origins+"&destination="+destination+"&ak="+key; String forObject = restTemplate.getForObject(url, String.class); JSONObject jsonObject = JSON.parseObject(forObject); - System.err.println("获取距离"+jsonObject); String status = jsonObject.getString("status"); // gdInterfaceService.saveData("https://restapi.amap.com/v3/distance", "查询两点间的距离"); if(status.equals("0")){ JSONObject result = jsonObject.getJSONObject("result"); JSONArray results = result.getJSONArray("routes"); - System.err.println("路线数组"+results); JSONObject jsonObject1 = results.getJSONObject(0); Map<String, String> map = new HashMap<>(); map.put("distance", jsonObject1.getString("distance"));//距离(米) map.put("duration", jsonObject1.getString("duration"));//预计时间(秒) - System.err.println("返回map"); return map; }else{ System.err.println(forObject); diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java index 5d768f1..82b0efe 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/PayMoneyUtil.java @@ -527,6 +527,7 @@ Map<String, String> map1 = null; String body1 = httpClientUtil.pushHttpRequsetXml(url, xmlString.toString(), new HashMap<>()); + System.err.println("退款返回信息========"+body1); //将结果xml解析成map body1 = body1.replaceAll("<!\\[CDATA\\[",""); body1 = body1.replaceAll("]]>", ""); @@ -537,6 +538,7 @@ } catch (DocumentException e) { e.printStackTrace(); } + System.err.println("跨城推送取消====="+map1); String return_code = map1.get("return_code"); Map<String, String> map2 = new HashMap<>(); if("SUCCESS".equals(return_code)){ diff --git a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java index 9965c15..d1445ad 100644 --- a/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java +++ b/UserOKTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/util/TaskUtil.java @@ -1,6 +1,7 @@ package com.stylefeng.guns.modular.system.util; +import com.stylefeng.guns.modular.crossCity.server.IOrderCrossCityService; import com.stylefeng.guns.modular.system.service.IUserCouponRecordService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; @@ -15,6 +16,8 @@ @Autowired private IUserCouponRecordService userCouponRecordService; + @Autowired + private IOrderCrossCityService orderCrossCityService; @@ -26,6 +29,8 @@ try { //修改过期的优惠券 userCouponRecordService.updateTimeOut(); + // 自动取消未支付订单 + orderCrossCityService.autoCancelOrder(); } catch (Exception e) { e.printStackTrace(); } -- Gitblit v1.7.1