Compare commits
4 Commits
2db5d05a12
...
0efe7b0fc3
| Author | SHA1 | Date |
|---|---|---|
|
|
0efe7b0fc3 | |
|
|
d05e9db96f | |
|
|
b07e9c8cd2 | |
|
|
e55e848589 |
|
|
@ -1,6 +1,9 @@
|
|||
package com.cpxt.web.task;
|
||||
|
||||
|
||||
import cn.hutool.json.JSONArray;
|
||||
import cn.hutool.json.JSONObject;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.cpxt.biz.domain.BizCar;
|
||||
import com.cpxt.biz.domain.BizCarState;
|
||||
|
|
@ -21,6 +24,8 @@ import org.springframework.stereotype.Component;
|
|||
import javax.annotation.PostConstruct;
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
import java.math.BigDecimal;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
|
||||
@Component("getLocationTask")
|
||||
|
|
@ -28,11 +33,19 @@ public class GetLocationTask {
|
|||
|
||||
// 域名
|
||||
private static final String ADDRESS = "http://api.e6yun.com/";
|
||||
|
||||
private static final String APP_KEY_JSON = "[{ 'APP_KEY':'FEB9F91D-BCD7-4DC2-97D1-CB599EEAF9D5','SECRET_KEY':'A8211E8F-9E95-4C80-9414-CD5E1F675FEF' }, " +
|
||||
"{ 'APP_KEY':'ECB3CDEA-ACD1-4E62-840D-717DCFBEAE79','SECRET_KEY':'BE3544F5-C488-41E8-9DA5-0172BF767210' }]";
|
||||
// 公钥
|
||||
private static final String APP_KEY = "FEB9F91D-BCD7-4DC2-97D1-CB599EEAF9D5";
|
||||
// 密钥
|
||||
private static final String SECRET_KEY = "A8211E8F-9E95-4C80-9414-CD5E1F675FEF";
|
||||
|
||||
// 公钥
|
||||
private static final String APP_KEY2 = "ECB3CDEA-ACD1-4E62-840D-717DCFBEAE79";
|
||||
// 密钥
|
||||
private static final String SECRET_KEY2 = "BE3544F5-C488-41E8-9DA5-0172BF767210";
|
||||
|
||||
/*添加代码 begin*/
|
||||
private static GetLocationTask getLocationTask;
|
||||
|
||||
|
|
@ -54,110 +67,121 @@ public class GetLocationTask {
|
|||
|
||||
// 同步车辆定位数据
|
||||
public void syncLocationData(){
|
||||
// 创建 E6SdkApi 以使用SDK API
|
||||
E6SdkApi e6SdkApi = new E6SdkApi(ADDRESS, APP_KEY, SECRET_KEY);
|
||||
try {
|
||||
// 通过 e6SdkApi 来使用API
|
||||
GetVehicleInfoVO vehicleInfoVO = e6SdkApi.GetVehcileInfo("-1");
|
||||
System.out.println(vehicleInfoVO);
|
||||
JSONArray array = JSONUtil.parseArray(APP_KEY_JSON);
|
||||
for (int i = 0; i < array.size(); i++) {
|
||||
JSONObject apikey = array.getJSONObject(i);
|
||||
|
||||
if (Helper.FInt(vehicleInfoVO.getCode())==1){
|
||||
List<VehicleInfoResp> list = vehicleInfoVO.getData();
|
||||
for (VehicleInfoResp info : list) {
|
||||
String carNo = info.getVehicleNO();
|
||||
String APPKEY = apikey.getStr("APP_KEY");
|
||||
String APPSECRET = apikey.getStr("SECRET_KEY");
|
||||
|
||||
BizCar dbcar = getLocationTask.carMapper.selectByCarNo(carNo);
|
||||
if (dbcar!=null){
|
||||
BizCarState newstate = new BizCarState();
|
||||
// 创建 E6SdkApi 以使用SDK API
|
||||
E6SdkApi e6SdkApi = new E6SdkApi(ADDRESS, APPKEY, APPSECRET);
|
||||
try {
|
||||
// 通过 e6SdkApi 来使用API
|
||||
GetVehicleInfoVO vehicleInfoVO = e6SdkApi.GetVehcileInfo("-1");
|
||||
System.out.println(vehicleInfoVO);
|
||||
|
||||
newstate.setCarId(dbcar.getId());
|
||||
newstate.setCarNo(dbcar.getCarNo());
|
||||
newstate.setVin(dbcar.getVin());
|
||||
newstate.setVehicleNo(info.getVehicleNO());
|
||||
newstate.setRegName(info.getRegName());
|
||||
if (!Helper.NStr(info.getGpsTime()).equals(""))
|
||||
newstate.setGpsTime(DateUtils.parseDate(Helper.NStr(info.getGpsTime()).replace(".0","")));
|
||||
newstate.setSpeed(Helper.FLong(info.getSpeed()));
|
||||
newstate.setOdometer(BigDecimal.valueOf(Helper.FDouble(info.getOdometer())));
|
||||
newstate.setLat(info.getLat02());
|
||||
newstate.setLon(info.getLon02());
|
||||
newstate.setDirection(Helper.FInt(info.getDirection()));
|
||||
newstate.setStatus(info.getStatus());
|
||||
newstate.setPlaceName(info.getPlaceName());
|
||||
newstate.setProvice(info.getProvice());
|
||||
newstate.setCity(info.getCity());
|
||||
newstate.setDistrict(info.getDistrict());
|
||||
newstate.setRoadName(info.getRoadName());
|
||||
newstate.setT1(info.getT1());
|
||||
newstate.setT2(info.getT2());
|
||||
newstate.setT3(info.getT3());
|
||||
newstate.setT4(info.getT4());
|
||||
newstate.setT5(info.getT5());
|
||||
newstate.setT6(info.getT6());
|
||||
newstate.setT7(info.getT7());
|
||||
newstate.setT8(info.getT8());
|
||||
newstate.setLat02(info.getLat());
|
||||
newstate.setLon02(info.getLon());
|
||||
newstate.setAreaName(info.getAreaName());
|
||||
newstate.setTime1(info.getTime1());
|
||||
newstate.setTime2(info.getTime2());
|
||||
newstate.setTime3(info.getTime3());
|
||||
newstate.setTime4(info.getTime4());
|
||||
newstate.setTime5(info.getTime5());
|
||||
newstate.setTime6(info.getTime6());
|
||||
newstate.setTime7(info.getTime7());
|
||||
newstate.setTime8(info.getTime8());
|
||||
newstate.setH1(info.getH1());
|
||||
newstate.setH2(info.getH2());
|
||||
newstate.setH3(info.getH3());
|
||||
newstate.setH4(info.getH4());
|
||||
newstate.setH5(info.getH5());
|
||||
newstate.setH6(info.getH6());
|
||||
newstate.setH7(info.getH7());
|
||||
newstate.setH8(info.getH8());
|
||||
newstate.setHt1(info.getHt1());
|
||||
newstate.setHt2(info.getHt2());
|
||||
newstate.setHt3(info.getHt3());
|
||||
newstate.setHt4(info.getHt4());
|
||||
newstate.setHt5(info.getHt5());
|
||||
newstate.setHt6(info.getHt6());
|
||||
newstate.setHt7(info.getHt7());
|
||||
newstate.setHt8(info.getHt8());
|
||||
newstate.setDeviceTypeStr(info.getDeviceTypeStr());
|
||||
newstate.setEquipCode(info.getEquipCode());
|
||||
newstate.setOil(info.getOil());
|
||||
newstate.setHeight(Helper.FLong(info.getHeight()));
|
||||
newstate.setStopSec(Helper.FInt(info.getStopSec()));
|
||||
newstate.setAcc(info.getAcc());
|
||||
newstate.setOhm(info.getOhm());
|
||||
newstate.setCurAccSta(info.getCurAccSta());
|
||||
newstate.setCommIds(info.getCommIds());
|
||||
if (Helper.FInt(vehicleInfoVO.getCode())==1){
|
||||
List<VehicleInfoResp> list = vehicleInfoVO.getData();
|
||||
for (VehicleInfoResp info : list) {
|
||||
String serialNo = info.getEquipCode();
|
||||
|
||||
BizCar dbcar = getLocationTask.carMapper.selectBySerialNo(serialNo);
|
||||
if (dbcar!=null){
|
||||
Long carId = dbcar.getId();
|
||||
// String carNo = dbcar.getCarNo();
|
||||
BizCarState newstate = new BizCarState();
|
||||
|
||||
newstate.setCarId(dbcar.getId());
|
||||
newstate.setCarNo(dbcar.getCarNo());
|
||||
newstate.setVin(dbcar.getVin());
|
||||
newstate.setVehicleNo(info.getVehicleNO());
|
||||
newstate.setRegName(info.getRegName());
|
||||
if (!Helper.NStr(info.getGpsTime()).equals(""))
|
||||
newstate.setGpsTime(DateUtils.parseDate(Helper.NStr(info.getGpsTime()).replace(".0","")));
|
||||
newstate.setSpeed(Helper.FLong(info.getSpeed()));
|
||||
newstate.setOdometer(BigDecimal.valueOf(Helper.FDouble(info.getOdometer())));
|
||||
newstate.setLat(info.getLat02());
|
||||
newstate.setLon(info.getLon02());
|
||||
newstate.setDirection(Helper.FInt(info.getDirection()));
|
||||
newstate.setStatus(info.getStatus());
|
||||
newstate.setPlaceName(info.getPlaceName());
|
||||
newstate.setProvice(info.getProvice());
|
||||
newstate.setCity(info.getCity());
|
||||
newstate.setDistrict(info.getDistrict());
|
||||
newstate.setRoadName(info.getRoadName());
|
||||
newstate.setT1(info.getT1());
|
||||
newstate.setT2(info.getT2());
|
||||
newstate.setT3(info.getT3());
|
||||
newstate.setT4(info.getT4());
|
||||
newstate.setT5(info.getT5());
|
||||
newstate.setT6(info.getT6());
|
||||
newstate.setT7(info.getT7());
|
||||
newstate.setT8(info.getT8());
|
||||
newstate.setLat02(info.getLat());
|
||||
newstate.setLon02(info.getLon());
|
||||
newstate.setAreaName(info.getAreaName());
|
||||
newstate.setTime1(info.getTime1());
|
||||
newstate.setTime2(info.getTime2());
|
||||
newstate.setTime3(info.getTime3());
|
||||
newstate.setTime4(info.getTime4());
|
||||
newstate.setTime5(info.getTime5());
|
||||
newstate.setTime6(info.getTime6());
|
||||
newstate.setTime7(info.getTime7());
|
||||
newstate.setTime8(info.getTime8());
|
||||
newstate.setH1(info.getH1());
|
||||
newstate.setH2(info.getH2());
|
||||
newstate.setH3(info.getH3());
|
||||
newstate.setH4(info.getH4());
|
||||
newstate.setH5(info.getH5());
|
||||
newstate.setH6(info.getH6());
|
||||
newstate.setH7(info.getH7());
|
||||
newstate.setH8(info.getH8());
|
||||
newstate.setHt1(info.getHt1());
|
||||
newstate.setHt2(info.getHt2());
|
||||
newstate.setHt3(info.getHt3());
|
||||
newstate.setHt4(info.getHt4());
|
||||
newstate.setHt5(info.getHt5());
|
||||
newstate.setHt6(info.getHt6());
|
||||
newstate.setHt7(info.getHt7());
|
||||
newstate.setHt8(info.getHt8());
|
||||
newstate.setDeviceTypeStr(info.getDeviceTypeStr());
|
||||
newstate.setEquipCode(info.getEquipCode());
|
||||
newstate.setOil(info.getOil());
|
||||
newstate.setHeight(Helper.FLong(info.getHeight()));
|
||||
newstate.setStopSec(Helper.FInt(info.getStopSec()));
|
||||
newstate.setAcc(info.getAcc());
|
||||
newstate.setOhm(info.getOhm());
|
||||
newstate.setCurAccSta(info.getCurAccSta());
|
||||
newstate.setCommIds(info.getCommIds());
|
||||
|
||||
// 更新实时定位信息
|
||||
BizCarState carState = getLocationTask.stateMapper.selectBizCarStateByCarId(carId);
|
||||
if (carState!=null){
|
||||
newstate.setId(carState.getId());
|
||||
getLocationTask.stateMapper.updateById(newstate);
|
||||
}else{
|
||||
getLocationTask.stateMapper.insert(newstate);
|
||||
}
|
||||
|
||||
// 插入轨迹信息
|
||||
try {
|
||||
TrackTemp track = new TrackTemp();
|
||||
PropertyUtils.copyProperties(track, newstate);
|
||||
getLocationTask.trackMapper.insertTrack(track);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
// 更新实时定位信息
|
||||
BizCarState carState = getLocationTask.stateMapper.selectByCarNo(carNo);
|
||||
if (carState!=null){
|
||||
newstate.setId(carState.getId());
|
||||
getLocationTask.stateMapper.updateById(newstate);
|
||||
}else{
|
||||
getLocationTask.stateMapper.insert(newstate);
|
||||
}
|
||||
|
||||
// 插入轨迹信息
|
||||
try {
|
||||
TrackTemp track = new TrackTemp();
|
||||
PropertyUtils.copyProperties(track, newstate);
|
||||
getLocationTask.trackMapper.insertTrack(track);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
} catch (ApiException e) {
|
||||
// 异常捕获
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
} catch (ApiException e) {
|
||||
// 异常捕获
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -7,11 +7,13 @@ import com.cpxt.biz.domain.BizCustomerWarehouse;
|
|||
import com.cpxt.biz.domain.BizOrder;
|
||||
import com.cpxt.biz.domain.BizOrderTask;
|
||||
import com.cpxt.biz.mapper.*;
|
||||
import com.cpxt.common.utils.DateUtils;
|
||||
import com.cpxt.common.utils.Helper;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.PostConstruct;
|
||||
import java.util.Calendar;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -57,6 +59,15 @@ public class OrderTask {
|
|||
for (Long shopId : shopIds ) {
|
||||
BizOrder order = new BizOrder();
|
||||
order.setOrderSn(getNewOrderSn());
|
||||
if (task.getOrderDateMode()==2){
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
calendar.add(Calendar.DAY_OF_YEAR, 1);
|
||||
Date tomorrow = calendar.getTime();
|
||||
order.setOrderDate(tomorrow);
|
||||
}else{
|
||||
order.setOrderDate(new Date());
|
||||
}
|
||||
|
||||
order.setCustomerId(task.getCustomerId());
|
||||
order.setCustomerName(task.getCustomerName());
|
||||
|
||||
|
|
|
|||
|
|
@ -46,6 +46,21 @@ public class StatTask {
|
|||
private StatCarMapper statCarMapper;
|
||||
@Autowired
|
||||
private StatDriverMapper statDriverMapper;
|
||||
@Autowired
|
||||
private BizOrderMapper orderMapper;
|
||||
@Autowired
|
||||
private BizCustomerMapper customerMapper;
|
||||
@Autowired
|
||||
private BizCustomerRouteMapper routeMapper;
|
||||
@Autowired
|
||||
private BizCustomerShopMapper shopMapper;
|
||||
@Autowired
|
||||
private BizCustomerStateMapper customerStateMapper;
|
||||
@Autowired
|
||||
private BizCustomerRouteStateMapper routeStateMapper;
|
||||
@Autowired
|
||||
private BizCustomerShopStateMapper shopStateMapper;
|
||||
|
||||
|
||||
@PostConstruct
|
||||
public void init(){
|
||||
|
|
@ -56,6 +71,132 @@ public class StatTask {
|
|||
statTask.driverMapper = this.driverMapper;
|
||||
statTask.stateMapper = this.stateMapper;
|
||||
statTask.trackMapper = this.trackMapper;
|
||||
statTask.orderMapper = this.orderMapper;
|
||||
statTask.customerMapper = this.customerMapper;
|
||||
statTask.routeMapper = this.routeMapper;
|
||||
statTask.shopMapper = this.shopMapper;
|
||||
statTask.customerStateMapper = this.customerStateMapper;
|
||||
statTask.routeStateMapper = this.routeStateMapper;
|
||||
statTask.shopStateMapper = this.shopStateMapper;
|
||||
}
|
||||
|
||||
public void statCustomerData(){
|
||||
Date now = new Date();
|
||||
|
||||
// 统计各路线平均配送时间
|
||||
List<Map> route_avgtime_list = statTask.routeStateMapper.selectAvgTimes();
|
||||
for (Map item : route_avgtime_list) {
|
||||
int routeId = Helper.FInt(item.get("route_id"));
|
||||
int avgtimes = Helper.FInt(item.get("avgtimes"));
|
||||
if (routeId>0) {
|
||||
BizCustomerRouteState routeState = statTask.routeStateMapper.selectOneByRouteId(routeId);
|
||||
if (routeState==null || routeState.getId()==0)
|
||||
routeState = new BizCustomerRouteState();
|
||||
|
||||
routeState.setRouteId(routeId);
|
||||
routeState.setAvgTimes(avgtimes);
|
||||
|
||||
if (Helper.FInt(routeState.getId())>0)
|
||||
statTask.routeStateMapper.updateById(routeState);
|
||||
else
|
||||
statTask.routeStateMapper.insert(routeState);
|
||||
}
|
||||
}
|
||||
|
||||
// 统计各路线今日订单数据
|
||||
List<Map> route_order_count_list = statTask.routeStateMapper.selectOrderCount();
|
||||
for (Map item : route_order_count_list) {
|
||||
int routeId = Helper.FInt(item.get("route_id"));
|
||||
int order_count = Helper.FInt(item.get("order_count"));
|
||||
int finish_count = Helper.FInt(item.get("finish_count"));
|
||||
|
||||
if (routeId>0) {
|
||||
BizCustomerRouteState routeState = statTask.routeStateMapper.selectOneByRouteId(routeId);
|
||||
if (routeState==null || routeState.getId()==0)
|
||||
routeState = new BizCustomerRouteState();
|
||||
|
||||
routeState.setRouteId(routeId);
|
||||
routeState.setTodayOrders(order_count);
|
||||
routeState.setFinishOrders(finish_count);
|
||||
|
||||
if (Helper.FInt(routeState.getId())>0)
|
||||
statTask.routeStateMapper.updateById(routeState);
|
||||
else
|
||||
statTask.routeStateMapper.insert(routeState);
|
||||
}
|
||||
}
|
||||
|
||||
// 统计各路线当前订单数据
|
||||
List<Map> route_order_list = statTask.routeStateMapper.selectCurrentOrder();
|
||||
for (Map item : route_order_list) {
|
||||
int routeId = Helper.FInt(item.get("route_id"));
|
||||
String orderSn = Helper.NStr(item.get("order_sn"));
|
||||
int carId = Helper.FInt(item.get("car_id"));
|
||||
int driverId = Helper.FInt(item.get("driver_id"));
|
||||
int copilotId = Helper.FInt(item.get("copilot_id"));
|
||||
|
||||
if (routeId>0) {
|
||||
BizCustomerRouteState routeState = statTask.routeStateMapper.selectOneByRouteId(routeId);
|
||||
if (routeState==null || routeState.getId()==0)
|
||||
routeState = new BizCustomerRouteState();
|
||||
|
||||
routeState.setRouteId(routeId);
|
||||
routeState.setCurrentOrder(orderSn);
|
||||
routeState.setCurrentCarId(carId);
|
||||
routeState.setCurrentDriverId(driverId);
|
||||
routeState.setCurrentCopilotId(copilotId);
|
||||
|
||||
if (Helper.FInt(routeState.getId())>0)
|
||||
statTask.routeStateMapper.updateById(routeState);
|
||||
else
|
||||
statTask.routeStateMapper.insert(routeState);
|
||||
}
|
||||
}
|
||||
|
||||
// 统计各门店平均配送时间
|
||||
List<Map> shop_avgtime_list = statTask.shopStateMapper.selectAvgTimes();
|
||||
for (Map item : shop_avgtime_list) {
|
||||
int shopId = Helper.FInt(item.get("shop_id"));
|
||||
int avgtimes = Helper.FInt(item.get("avgtimes"));
|
||||
if (shopId>0) {
|
||||
BizCustomerShopState state = statTask.shopStateMapper.selectOneByShopId(shopId);
|
||||
if (state==null || state.getId()==0)
|
||||
state = new BizCustomerShopState();
|
||||
|
||||
state.setShopId(shopId);
|
||||
state.setAvgTimes(avgtimes);
|
||||
|
||||
if (Helper.FInt(state.getId())>0)
|
||||
statTask.shopStateMapper.updateById(state);
|
||||
else
|
||||
statTask.shopStateMapper.insert(state);
|
||||
}
|
||||
}
|
||||
|
||||
// 统计各门店平均配送时间
|
||||
List<Map> shop_order_list = statTask.shopStateMapper.selectCurrentOrder();
|
||||
for (Map item : shop_order_list) {
|
||||
int shopId = Helper.FInt(item.get("shop_id"));
|
||||
int avgtimes = Helper.FInt(item.get("avgtimes"));
|
||||
if (shopId>0) {
|
||||
BizCustomerShopState state = statTask.shopStateMapper.selectOneByShopId(shopId);
|
||||
if (state==null || state.getId()==0)
|
||||
state = new BizCustomerShopState();
|
||||
|
||||
state.setShopId(shopId);
|
||||
state.setIsFinish(Helper.FInt(item.get("order_status"))==3?1:0);
|
||||
state.setCurrentOrder(Helper.NStr(item.get("order_sn")));
|
||||
state.setCurrentCarId(Helper.FInt(item.get("car_id")));
|
||||
state.setCurrentDriverId(Helper.FInt(item.get("driver_id")));
|
||||
state.setCurrentCopilotId(Helper.FInt(item.get("copilot_id")));
|
||||
|
||||
if (Helper.FInt(state.getId())>0)
|
||||
statTask.shopStateMapper.updateById(state);
|
||||
else
|
||||
statTask.shopStateMapper.insert(state);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
// 定时统计车辆使用情况
|
||||
|
|
|
|||
|
|
@ -291,6 +291,11 @@ public class BizOrder
|
|||
/** 备注 */
|
||||
private String remark;
|
||||
|
||||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@Excel(name = "所属日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||
private Date orderDate;
|
||||
|
||||
// 下单开始时间
|
||||
@TableField(exist = false)
|
||||
private String beginTime;
|
||||
|
|
|
|||
|
|
@ -29,6 +29,9 @@ public interface BizCarMapper extends BaseMapper<BizCar>
|
|||
@Select("select * from biz_car where car_no = #{carNo}")
|
||||
BizCar selectByCarNo(String carNo);
|
||||
|
||||
@Select("select * from biz_car where serial_no = #{serialNo}")
|
||||
BizCar selectBySerialNo(String serialNo);
|
||||
|
||||
@Select("select * from ${tableName} where gps_time >= #{startTime} and gps_time <= #{endTime}")
|
||||
List<Map> selectBizTrackList(@Param("tableName") String tableName,@Param("startTime") String startTime,@Param("endTime") String endTime);
|
||||
|
||||
|
|
|
|||
|
|
@ -3,6 +3,10 @@ package com.cpxt.biz.mapper;
|
|||
import com.cpxt.biz.domain.BizCustomerRouteState;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author LuoJian
|
||||
|
|
@ -13,6 +17,22 @@ import org.apache.ibatis.annotations.Mapper;
|
|||
@Mapper
|
||||
public interface BizCustomerRouteStateMapper extends BaseMapper<BizCustomerRouteState> {
|
||||
|
||||
@Select("select * from biz_customer_route_state where route_id = #{routeId}")
|
||||
BizCustomerRouteState selectOneByRouteId(int routeId);
|
||||
|
||||
@Select("select route_id, ROUND(AVG(TIME_TO_SEC(TIMEDIFF(arrive_time, start_time ))),0) AS avgtimes from biz_order " +
|
||||
" where order_status = 3 and start_time is not null and arrive_time is not null group by route_id")
|
||||
List<Map> selectAvgTimes();
|
||||
|
||||
@Select("select route_id, count(id) order_count, sum(case when order_status = 3 then 1 else 0 end) finish_count " +
|
||||
" from biz_order where order_date = curdate() group by route_id ")
|
||||
List<Map> selectOrderCount();
|
||||
|
||||
@Select("select * from (select distinct order_sn,order_status, route_id,car_id, driver_id, copilot_id " +
|
||||
" from biz_order where order_date = curdate() and (order_status = '1' or order_status = '2') " +
|
||||
" order by create_time asc ) as t group by t.route_id ")
|
||||
List<Map> selectCurrentOrder();
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
|
|
@ -1,8 +1,13 @@
|
|||
package com.cpxt.biz.mapper;
|
||||
|
||||
import com.cpxt.biz.domain.BizCustomerRouteState;
|
||||
import com.cpxt.biz.domain.BizCustomerShopState;
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @author LuoJian
|
||||
|
|
@ -13,6 +18,21 @@ import org.apache.ibatis.annotations.Mapper;
|
|||
@Mapper
|
||||
public interface BizCustomerShopStateMapper extends BaseMapper<BizCustomerShopState> {
|
||||
|
||||
@Select("select * from biz_customer_shop_state where shop_id = #{routeId}")
|
||||
BizCustomerShopState selectOneByShopId(int shopId);
|
||||
|
||||
@Select("select shop_id, ROUND(AVG(TIME_TO_SEC(TIMEDIFF(arrive_time, start_time ))),0) AS avgtimes from biz_order " +
|
||||
" where order_status = 3 and start_time is not null and arrive_time is not null group by shop_id")
|
||||
List<Map> selectAvgTimes();
|
||||
|
||||
@Select("select shop_id, count(id) order_count, sum(case when order_status = 3 then 1 else 0 end) finish_count " +
|
||||
" from biz_order where order_date = curdate() group by shop_id ")
|
||||
List<Map> selectOrderCount();
|
||||
|
||||
@Select("select * from (select distinct order_sn,order_status, shop_id, car_id, driver_id, copilot_id " +
|
||||
" from biz_order where order_date = curdate() and (order_status = '1' or order_status = '2') " +
|
||||
" order by create_time asc ) as t group by t.shop_id ")
|
||||
List<Map> selectCurrentOrder();
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue