From 8f9aa473748e568d8a066271a38a1aa4a563a7f7 Mon Sep 17 00:00:00 2001
From: 44323 <443237572@qq.com>
Date: 星期五, 17 五月 2024 17:55:21 +0800
Subject: [PATCH] 车型、司机活动、平台佣金统计代码提交
---
DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java | 72 ++++++++++++++++++++++++-----------
1 files changed, 49 insertions(+), 23 deletions(-)
diff --git a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
index b4dd066..fba275b 100644
--- a/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
+++ b/DriverIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/crossCity/server/impl/OrderCrossCityServiceImpl.java
@@ -122,16 +122,10 @@
private IOrderPositionService orderPositionService;
@Autowired
- private PushMinistryOfTransportUtil pushMinistryOfTransportUtil;
-
- @Autowired
private IOrderCancelService orderCancelService;
@Value("${filePath}")
private String filePath;
-
- @Value("${pushMinistryOfTransport}")
- private boolean pushMinistryOfTransport;
@Value("${callbackPath}")
private String callbackPath;
@@ -158,8 +152,15 @@
* @throws Exception
*/
@Override
- public List<Map<String, Object>> queryOrderList(Integer state, Integer driverId) throws Exception {
- return orderCrossCityMapper.queryOrderList(state, driverId);
+ public List<Map<String, Object>> queryOrderList(Integer language, Integer state, Integer driverId) throws Exception {
+ List<Map<String, Object>> list = orderCrossCityMapper.queryOrderList(state, driverId);
+ for (Map<String, Object> map : list) {
+ if(null != map.get("time")){
+ String time = map.get("time").toString();
+ map.put("time", DateUtil.conversionFormat(language, time));
+ }
+ }
+ return list;
}
/**
@@ -170,8 +171,15 @@
* @throws Exception
*/
@Override
- public List<Map<String, Object>> queryMyAllOrder(Integer state, Integer uid) throws Exception {
- return orderCrossCityMapper.queryMyAllOrder(state, uid);
+ public List<Map<String, Object>> queryMyAllOrder(Integer language, Integer state, Integer uid) throws Exception {
+ List<Map<String, Object>> list = orderCrossCityMapper.queryMyAllOrder(state, uid);
+ for (Map<String, Object> map : list) {
+ if(null != map.get("time")){
+ String time = map.get("time").toString();
+ map.put("time", DateUtil.conversionFormat(language, time));
+ }
+ }
+ return list;
}
@@ -182,7 +190,7 @@
* @throws Exception
*/
@Override
- public Map<String, Object> queryOrderInfo(Integer orderId) throws Exception {
+ public Map<String, Object> queryOrderInfo(Integer language, Integer orderId) throws Exception {
Map<String, Object> map = new HashMap<>();
OrderCrossCity orderCrossCity = this.selectById(orderId);
List<Map<String, Object>> order = orderCrossCityMapper.queryOrderInfo(orderCrossCity.getOrderNum());
@@ -190,6 +198,18 @@
Double serverMoney = 0D;
Double totalMoney = 0D;
for(Map<String, Object> m : order){
+ if(null != m.get("travelTime_")){
+ String travelTime_ = m.get("travelTime_").toString();
+ m.put("travelTime_", DateUtil.conversionFormat1(language, travelTime_));
+ }
+ if(null != m.get("travelTime")){
+ String travelTime = m.get("travelTime").toString();
+ m.put("travelTime", DateUtil.conversionFormat(language, travelTime));
+ }
+ if(null != m.get("arriveTime")){
+ String arriveTime = m.get("arriveTime").toString();
+ m.put("arriveTime", DateUtil.conversionFormat(language, arriveTime));
+ }
num += Integer.valueOf(m.get("peopleNumber").toString());
totalMoney += Double.valueOf(m.get("payMoney").toString());
List<Income> incomes = incomeService.queryData(1, null, 2, Integer.valueOf(m.get("orderId").toString()), 3);
@@ -227,6 +247,7 @@
orderCrossCity.setState(3);
orderCrossCity.setSetOutTime(new Date());
systemNoticeService.addSystemNotice(1, "司机已出发,请耐心等待", orderCrossCity.getUserId());
+ pushUtil.pushDriverPosition(orderCrossCity.getId(), 3);//主动推送司机定位
break;
case 4://到达预约点,等待客户上车
orderCrossCity.setState(4);
@@ -240,8 +261,6 @@
orderCrossCity.setBoardingTime(new Date());
orderCrossCity.setState(5);
orderCrossCity.setStartServiceTime(new Date());
-
- pushUtil.pushDriverPosition(orderCrossCity.getId(), 3);//主动推送司机定位
break;
case 6://结束服务
orderCrossCity.setGetoffLon(lon);
@@ -293,8 +312,17 @@
* @throws Exception
*/
@Override
- public Map<String, Object> queryOrderCrossCityInfo(Integer orderId) throws Exception {
- return orderCrossCityMapper.queryOrderCrossCityInfo(orderId);
+ public Map<String, Object> queryOrderCrossCityInfo(Integer language, Integer orderId) throws Exception {
+ Map<String, Object> map = orderCrossCityMapper.queryOrderCrossCityInfo(orderId);
+ if(null != map.get("travelTime_")){
+ String travelTime_ = map.get("travelTime_").toString();
+ map.put("travelTime_", DateUtil.conversionFormat1(language, travelTime_));
+ }
+ if(null != map.get("arriveTime")){
+ String arriveTime = map.get("arriveTime").toString();
+ map.put("arriveTime", DateUtil.conversionFormat(language, arriveTime));
+ }
+ return map;
}
@@ -362,7 +390,7 @@
userInfo = new UserInfo();
Integer integer = userInfoMapper.selectCount(null) + 1000001;
userInfo.setNickName(ToolUtil.isNotEmpty(orderCrossCityWarpper.getPassengers()) ? orderCrossCityWarpper.getPassengers() : "OK" + String.valueOf(integer).substring(1));
- userInfo.setName(orderCrossCityWarpper.getPassengers());
+ userInfo.setLastName(orderCrossCityWarpper.getPassengers());
userInfo.setPhone(orderCrossCityWarpper.getPassengersPhone());
userInfo.setState(1);
userInfo.setFlag(1);
@@ -570,7 +598,7 @@
//添加已收入明细
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 d = new BigDecimal(orderCrossCity.getOrderMoney()).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100), new MathContext(2, RoundingMode.HALF_EVEN)));//企业收入
BigDecimal c = new BigDecimal(orderCrossCity.getOrderMoney()).subtract(d).setScale(2, BigDecimal.ROUND_HALF_EVEN);//司机收入
incomeService.saveData(1, orderCrossCity.getCompanyId(), 2, orderCrossCity.getId(), 1, d.doubleValue());
incomeService.saveData(2, orderCrossCity.getDriverId(), 2, orderCrossCity.getId(), 1, c.doubleValue());
@@ -586,7 +614,6 @@
public void run() {
pushUtil.pushOrderState(1, orderCrossCity.getUserId(), orderCrossCity.getId(), 3, orderCrossCity.getState());
pushUtil.pushOrderState(2, orderCrossCity.getDriverId(), orderCrossCity.getId(), 3, orderCrossCity.getState());
- pushUtil.pushDriverPosition(orderCrossCity.getId(), 3);
}
}).start();
@@ -707,7 +734,7 @@
//添加已收入明细
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 d = new BigDecimal(orderCrossCity.getOrderMoney()).multiply(new BigDecimal(speMoney).divide(new BigDecimal(100), new MathContext(2, RoundingMode.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());
@@ -723,7 +750,6 @@
public void run() {
pushUtil.pushOrderState(1, orderCrossCity.getUserId(), orderCrossCity.getId(), 3, orderCrossCity.getState());
pushUtil.pushOrderState(2, orderCrossCity.getDriverId(), orderCrossCity.getId(), 3, orderCrossCity.getState());
- pushUtil.pushDriverPosition(orderCrossCity.getId(), 3);
}
}).start();
@@ -751,10 +777,10 @@
if(null != orderPosition1){
String now = lon + "," + lat;
String old = orderPosition1.getLon() + "," + orderPosition1.getLat();
- Map<String, String> distance = gdMapElectricFenceUtil.getDistance(now, old, 0);//直线距离
+ Map<String, Double> distance = GeodesyUtil.getDistance(now, old);//直线距离
if(null != distance){
- String distance1 = distance.get("distance");
- if(Double.valueOf(distance1) > 50){//大于50米表示在移动
+ Double distance1 = distance.get("WGS84");
+ if(distance1 > 50){//大于50米表示在移动
orderCrossCity.setMileage(new BigDecimal(orderCrossCity.getMileage()).add(new BigDecimal(distance1)).setScale(2, BigDecimal.ROUND_HALF_EVEN).doubleValue());
this.updateById(orderCrossCity);
b = true;
--
Gitblit v1.7.1