New file |
| | |
| | | package com.stylefeng.guns.modular.system.model.vo; |
| | | |
| | | import com.stylefeng.guns.modular.system.warpper.OrderWarpper; |
| | | import io.swagger.annotations.ApiModelProperty; |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.LocalDate; |
| | | import java.time.LocalDateTime; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.util.*; |
| | | |
| | | @Data |
| | | @AllArgsConstructor |
| | | @NoArgsConstructor |
| | | public class TripOrderVo implements Comparable{ |
| | | |
| | | @ApiModelProperty("订单id") |
| | | private Integer orderId; |
| | | @ApiModelProperty("订单日期") |
| | | private String orderTime; |
| | | @ApiModelProperty("出行时间/(小件物流的取货时间)") |
| | | private String time; |
| | | @ApiModelProperty("起点名称") |
| | | private String startAddress; |
| | | @ApiModelProperty("终点名称") |
| | | private String endAddress; |
| | | @ApiModelProperty("公司id(服务商)") |
| | | private Integer companyId; |
| | | @ApiModelProperty("司机id") |
| | | private Integer driverId; |
| | | @ApiModelProperty("车辆id") |
| | | private Integer carId; |
| | | @ApiModelProperty("行程人电话") |
| | | private String passengersPhone; |
| | | @ApiModelProperty("订单状态(1=待接单,2=待出发,3=待到达预约地点,4=待乘客上车,5=服务中,6=完成服务,7=待支付,8=待评价,9=已完成,10=已取消,11=改派中,12=取消待支付)<br/>" + |
| | | "小件物流订单状态(1=待接单,2=待出发,3=待到达预约地点,4=待取货,5=送货中,6=已送达,7=待支付,8=需补差价,9=已取货,10=已取消,11=已支付差价") |
| | | private Integer state; |
| | | @ApiModelProperty("用车时长") |
| | | private Integer carTime; |
| | | @ApiModelProperty("车型id") |
| | | private Integer serverCarModelId; |
| | | @ApiModelProperty("车型") |
| | | private String serverCarModel; |
| | | // @ApiModelProperty("订单金额") |
| | | // private Double orderMoney; |
| | | @ApiModelProperty("支付金额") |
| | | private Double payMoney; |
| | | // @ApiModelProperty("差价金额") |
| | | // private Double differenceMoney; |
| | | @ApiModelProperty("感谢费") |
| | | private Double thankYouFee; |
| | | // @ApiModelProperty("开票状态(1=未开票,2=已开票)") |
| | | // private Integer invoice; |
| | | @ApiModelProperty("订单名称") |
| | | private String orderName; |
| | | @ApiModelProperty("订单类型(1=专车,2=出租车,3=跨城出行,4=小件物流,5=包车)") |
| | | private Integer orderType; |
| | | @ApiModelProperty("下单时间") |
| | | private Long insertTime; |
| | | @ApiModelProperty("服务结束事件") |
| | | private String endServiceTime; |
| | | @ApiModelProperty("乘车类型(1=独享,2=一口价,3=拼车)") |
| | | private Integer rideType; |
| | | @ApiModelProperty("上车经度") |
| | | private Double boardingLon; |
| | | @ApiModelProperty("上车纬度") |
| | | private Double boardingLat; |
| | | @ApiModelProperty("上车时间") |
| | | private Date boardingTime; // 从LocalDateTime改为Date |
| | | |
| | | @ApiModelProperty("到达时间") |
| | | private Date arriveTime; // 从LocalDateTime改为Date |
| | | @ApiModelProperty("城市") |
| | | private String city; |
| | | @ApiModelProperty("服务商") |
| | | private String companyName; |
| | | |
| | | public static List<TripOrderVo> getTripOrderVo(List<Map<String, Object>> maps) { |
| | | List<TripOrderVo> list = new ArrayList<>(); |
| | | if (null != maps) { |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.S"); |
| | | for (Map<String, Object> map : maps) { |
| | | TripOrderVo tripOrderVo = new TripOrderVo(); |
| | | |
| | | tripOrderVo.setRideType(null != map.get("rideType") ? Integer.valueOf(String.valueOf(map.get("rideType"))) : 1); |
| | | tripOrderVo.setOrderId(null != map.get("orderId") ? Integer.valueOf(String.valueOf(map.get("orderId"))) : 0); |
| | | tripOrderVo.setOrderTime(null != map.get("orderTime") ? String.valueOf(map.get("orderTime")) : ""); |
| | | tripOrderVo.setTime(null != map.get("time") ? String.valueOf(map.get("time")) : ""); |
| | | tripOrderVo.setStartAddress(null != map.get("startAddress") ? String.valueOf(map.get("startAddress")) : ""); |
| | | tripOrderVo.setEndAddress(null != map.get("endAddress") ? String.valueOf(map.get("endAddress")) : ""); |
| | | tripOrderVo.setState(null != map.get("state") ? Integer.valueOf(String.valueOf(map.get("state"))) : 0); |
| | | // tripOrderVo.setOrderMoney(null != map.get("orderMoney") ? Double.valueOf(String.valueOf(map.get("orderMoney"))) : 0); |
| | | tripOrderVo.setPayMoney(null != map.get("payMoney") ? Double.valueOf(String.valueOf(map.get("payMoney"))) : 0); |
| | | // tripOrderVo.setInvoice(null != map.get("invoice") ? Integer.valueOf(String.valueOf(map.get("invoice"))) : 0); |
| | | tripOrderVo.setOrderName(null != map.get("orderName") ? String.valueOf(map.get("orderName")) : ""); |
| | | tripOrderVo.setInsertTime(null != map.get("insertTime") ? Long.valueOf(String.valueOf(map.get("insertTime"))) : 0); |
| | | tripOrderVo.setOrderType(null != map.get("orderType") ? Integer.valueOf(String.valueOf(map.get("orderType"))) : 0); |
| | | tripOrderVo.setDriverId(null != map.get("driverId") ? Integer.valueOf(String.valueOf(map.get("driverId"))) : 0); |
| | | tripOrderVo.setCarTime(null != map.get("carTime") ? Integer.valueOf(String.valueOf(map.get("carTime"))) : 0); |
| | | tripOrderVo.setServerCarModel(null != map.get("serverCarModel") ? String.valueOf(map.get("serverCarModel")) : ""); |
| | | // tripOrderVo.setDifferenceMoney(null != map.get("differenceMoney") ? Double.valueOf(map.get("differenceMoney").toString()) : 0D); |
| | | tripOrderVo.setThankYouFee(null != map.get("thankYouFee") ? Double.valueOf(map.get("thankYouFee").toString()) : 0D); |
| | | tripOrderVo.setEndServiceTime(null != map.get("endServiceTime") ? String.valueOf(map.get("endServiceTime")) : ""); |
| | | tripOrderVo.setCompanyId(null != map.get("companyId") ? Integer.valueOf(String.valueOf(map.get("companyId"))) : 0); |
| | | tripOrderVo.setPassengersPhone(null != map.get("passengersPhone") ? String.valueOf(map.get("passengersPhone")) : ""); |
| | | tripOrderVo.setBoardingLon(null != map.get("boardingLon") ? Double.valueOf(String.valueOf(map.get("boardingLon"))) : 0D); |
| | | tripOrderVo.setBoardingLat(null != map.get("boardingLat") ? Double.valueOf(String.valueOf(map.get("boardingLat"))) : 0D); |
| | | tripOrderVo.setCity(null != map.get("city") ? String.valueOf(map.get("city")) : ""); |
| | | try { |
| | | tripOrderVo.setBoardingTime(null != map.get("boardingTime") ? |
| | | sdf.parse(String.valueOf(map.get("boardingTime"))) : null); |
| | | } catch (ParseException e) { |
| | | // 处理解析异常 |
| | | tripOrderVo.setBoardingTime(null); |
| | | } |
| | | try { |
| | | tripOrderVo.setArriveTime(null != map.get("arriveTime") ? |
| | | sdf.parse(String.valueOf(map.get("arriveTime"))) : null); |
| | | } catch (ParseException e) { |
| | | // 处理解析异常 |
| | | tripOrderVo.setArriveTime(null); |
| | | } |
| | | tripOrderVo.setCompanyName(null != map.get("companyName") ? String.valueOf(map.get("companyName")) : ""); |
| | | tripOrderVo.setCarId(null != map.get("carId") ? Integer.valueOf(String.valueOf(map.get("carId"))) : 0); |
| | | tripOrderVo.setServerCarModelId(null != map.get("serverCarModelId") ? Integer.valueOf(String.valueOf(map.get("serverCarModelId"))) : 0); |
| | | list.add(tripOrderVo); |
| | | } |
| | | |
| | | } |
| | | Collections.sort(list); |
| | | return list; |
| | | } |
| | | |
| | | @Override |
| | | public int compareTo(Object o) { |
| | | if (o instanceof OrderWarpper) { |
| | | OrderWarpper s = (OrderWarpper) o; |
| | | if(this.insertTime == null || s.getInsertTime() == null){ |
| | | return -1; |
| | | } |
| | | if (this.insertTime > s.getInsertTime()) { |
| | | return -1; |
| | | } else if (this.insertTime == s.getInsertTime()) { |
| | | return 0; |
| | | } else { |
| | | return 1; |
| | | } |
| | | } |
| | | return 0; |
| | | } |
| | | } |