|
@@ -4,6 +4,7 @@ import cn.hutool.core.util.StrUtil;
|
|
import cn.hutool.crypto.symmetric.DES;
|
|
import cn.hutool.crypto.symmetric.DES;
|
|
import cn.hutool.db.sql.Order;
|
|
import cn.hutool.db.sql.Order;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
import com.alibaba.fastjson.JSONObject;
|
|
|
|
+import com.github.pagehelper.Page;
|
|
import com.jpsoft.bus.config.OSSConfig;
|
|
import com.jpsoft.bus.config.OSSConfig;
|
|
import com.jpsoft.bus.modules.base.dto.PassengerOrderDTO;
|
|
import com.jpsoft.bus.modules.base.dto.PassengerOrderDTO;
|
|
import com.jpsoft.bus.modules.base.entity.MergeOrderInfo;
|
|
import com.jpsoft.bus.modules.base.entity.MergeOrderInfo;
|
|
@@ -15,6 +16,7 @@ import com.jpsoft.bus.modules.bus.dto.VehicleStationDTO;
|
|
import com.jpsoft.bus.modules.bus.entity.*;
|
|
import com.jpsoft.bus.modules.bus.entity.*;
|
|
import com.jpsoft.bus.modules.bus.service.*;
|
|
import com.jpsoft.bus.modules.bus.service.*;
|
|
import com.jpsoft.bus.modules.common.dto.MessageResult;
|
|
import com.jpsoft.bus.modules.common.dto.MessageResult;
|
|
|
|
+import com.jpsoft.bus.modules.common.dto.Sort;
|
|
import com.jpsoft.bus.modules.common.utils.*;
|
|
import com.jpsoft.bus.modules.common.utils.*;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.ApiImplicitParam;
|
|
import io.swagger.annotations.ApiImplicitParam;
|
|
@@ -26,10 +28,7 @@ import org.joda.time.DateTime;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.beans.factory.annotation.Value;
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
import org.springframework.data.redis.core.RedisTemplate;
|
|
-import org.springframework.web.bind.annotation.PostMapping;
|
|
|
|
-import org.springframework.web.bind.annotation.RequestAttribute;
|
|
|
|
-import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
|
-import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
import sun.security.krb5.internal.crypto.Des3;
|
|
import sun.security.krb5.internal.crypto.Des3;
|
|
|
|
|
|
@@ -98,6 +97,7 @@ public class PassengerApiController {
|
|
|
|
|
|
}catch (Exception ex){
|
|
}catch (Exception ex){
|
|
log.error(ex.getMessage(),ex);
|
|
log.error(ex.getMessage(),ex);
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
messageResult.setMessage(ex.getMessage());
|
|
messageResult.setMessage(ex.getMessage());
|
|
}
|
|
}
|
|
@@ -135,7 +135,9 @@ public class PassengerApiController {
|
|
messageResult.setResult(true);
|
|
messageResult.setResult(true);
|
|
messageResult.setCode(200);
|
|
messageResult.setCode(200);
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
|
|
+ log.error(ex.getMessage(),ex);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setMessage(ex.getMessage());
|
|
messageResult.setMessage(ex.getMessage());
|
|
}
|
|
}
|
|
|
|
|
|
@@ -204,6 +206,7 @@ public class PassengerApiController {
|
|
messageResult.setCode(200);
|
|
messageResult.setCode(200);
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
log.error(ex.getMessage());
|
|
log.error(ex.getMessage());
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
messageResult.setMessage(ex.getMessage());
|
|
messageResult.setMessage(ex.getMessage());
|
|
}
|
|
}
|
|
@@ -266,6 +269,7 @@ public class PassengerApiController {
|
|
messageResult.setCode(200);
|
|
messageResult.setCode(200);
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
log.error(ex.getMessage());
|
|
log.error(ex.getMessage());
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
messageResult.setMessage(ex.getMessage());
|
|
messageResult.setMessage(ex.getMessage());
|
|
}
|
|
}
|
|
@@ -304,6 +308,7 @@ public class PassengerApiController {
|
|
messageResult.setCode(200);
|
|
messageResult.setCode(200);
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
log.error(ex.getMessage());
|
|
log.error(ex.getMessage());
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
messageResult.setMessage(ex.getMessage());
|
|
messageResult.setMessage(ex.getMessage());
|
|
}
|
|
}
|
|
@@ -342,6 +347,7 @@ public class PassengerApiController {
|
|
messageResult.setCode(200);
|
|
messageResult.setCode(200);
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
log.error(ex.getMessage());
|
|
log.error(ex.getMessage());
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
messageResult.setMessage(ex.getMessage());
|
|
messageResult.setMessage(ex.getMessage());
|
|
}
|
|
}
|
|
@@ -355,7 +361,7 @@ public class PassengerApiController {
|
|
@ApiImplicitParam(name = "id", value = "车辆id", required = true, paramType = "form"),
|
|
@ApiImplicitParam(name = "id", value = "车辆id", required = true, paramType = "form"),
|
|
@ApiImplicitParam(name = "openId", value = "openId", required = true, paramType = "form")
|
|
@ApiImplicitParam(name = "openId", value = "openId", required = true, paramType = "form")
|
|
})
|
|
})
|
|
- public MessageResult<Map> getVehicleInfo(String id,String openId) {
|
|
|
|
|
|
+ public MessageResult<Map> getPassengerInfo(String id,String openId) {
|
|
MessageResult<Map> messageResult = new MessageResult<>();
|
|
MessageResult<Map> messageResult = new MessageResult<>();
|
|
|
|
|
|
try {
|
|
try {
|
|
@@ -372,6 +378,7 @@ public class PassengerApiController {
|
|
//车辆信息
|
|
//车辆信息
|
|
VehicleInfo vehicleInfo = vehicleInfoService.get(id);
|
|
VehicleInfo vehicleInfo = vehicleInfoService.get(id);
|
|
|
|
|
|
|
|
+ String mergeOrderId = null;
|
|
List<MergeOrderInfo> mergeOrderInfoList = mergeOrderInfoService.findByOpenIdShiftIdPayStatus(openId,shiftInfo.getId(),10);
|
|
List<MergeOrderInfo> mergeOrderInfoList = mergeOrderInfoService.findByOpenIdShiftIdPayStatus(openId,shiftInfo.getId(),10);
|
|
|
|
|
|
BigDecimal totalAmount = BigDecimal.ZERO;
|
|
BigDecimal totalAmount = BigDecimal.ZERO;
|
|
@@ -379,6 +386,7 @@ public class PassengerApiController {
|
|
if (mergeOrderInfoList.size()>0){
|
|
if (mergeOrderInfoList.size()>0){
|
|
MergeOrderInfo mergeOrderInfo = mergeOrderInfoList.get(0);
|
|
MergeOrderInfo mergeOrderInfo = mergeOrderInfoList.get(0);
|
|
List<OrderInfo> orderInfoList = orderInfoService.findByMergeOrderId(mergeOrderInfo.getId());
|
|
List<OrderInfo> orderInfoList = orderInfoService.findByMergeOrderId(mergeOrderInfo.getId());
|
|
|
|
+ mergeOrderId = mergeOrderInfo.getId();
|
|
|
|
|
|
if (orderInfoList.size()>0){
|
|
if (orderInfoList.size()>0){
|
|
for (OrderInfo orderInfo : orderInfoList){
|
|
for (OrderInfo orderInfo : orderInfoList){
|
|
@@ -386,9 +394,9 @@ public class PassengerApiController {
|
|
|
|
|
|
PassengerInfo passengerInfo = passengerInfoService.get(orderInfo.getPassengerId());
|
|
PassengerInfo passengerInfo = passengerInfoService.get(orderInfo.getPassengerId());
|
|
//购票始发站
|
|
//购票始发站
|
|
- StationInfo start = stationInfoService.get(passengerInfo.getTicketUpStationId());
|
|
|
|
|
|
+ StationInfo start = stationInfoService.get(orderInfo.getTicketUpStationId());
|
|
//购票终点站
|
|
//购票终点站
|
|
- StationInfo end = stationInfoService.get(passengerInfo.getTicketDownStationId());
|
|
|
|
|
|
+ StationInfo end = stationInfoService.get(orderInfo.getTicketDownStationId());
|
|
PassengerOrderDTO passengerOrderDTO = new PassengerOrderDTO();
|
|
PassengerOrderDTO passengerOrderDTO = new PassengerOrderDTO();
|
|
passengerOrderDTO.setId(orderInfo.getPassengerId());
|
|
passengerOrderDTO.setId(orderInfo.getPassengerId());
|
|
passengerOrderDTO.setImageUrl(passengerInfo.getImageUrl());
|
|
passengerOrderDTO.setImageUrl(passengerInfo.getImageUrl());
|
|
@@ -413,11 +421,13 @@ public class PassengerApiController {
|
|
Map<String, Object> map = new HashMap<>();
|
|
Map<String, Object> map = new HashMap<>();
|
|
map.put("totalAmount", totalAmount);
|
|
map.put("totalAmount", totalAmount);
|
|
map.put("list", passengerOrderDTOList);
|
|
map.put("list", passengerOrderDTOList);
|
|
|
|
+ map.put("id",mergeOrderId);
|
|
messageResult.setData(map);
|
|
messageResult.setData(map);
|
|
messageResult.setResult(true);
|
|
messageResult.setResult(true);
|
|
messageResult.setCode(200);
|
|
messageResult.setCode(200);
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
log.error(ex.getMessage());
|
|
log.error(ex.getMessage());
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
messageResult.setMessage(ex.getMessage());
|
|
messageResult.setMessage(ex.getMessage());
|
|
}
|
|
}
|
|
@@ -447,6 +457,7 @@ public class PassengerApiController {
|
|
messageResult.setCode(200);
|
|
messageResult.setCode(200);
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
log.error(e.getMessage(), e);
|
|
log.error(e.getMessage(), e);
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
messageResult.setMessage(e.getMessage());
|
|
messageResult.setMessage(e.getMessage());
|
|
}
|
|
}
|
|
@@ -475,20 +486,57 @@ public class PassengerApiController {
|
|
throw new Exception("无匹配照片");
|
|
throw new Exception("无匹配照片");
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
|
+ messageResult.setData(map);
|
|
|
|
+ messageResult.setResult(true);
|
|
|
|
+ messageResult.setCode(200);
|
|
|
|
+ } catch (Exception ex) {
|
|
|
|
+ log.error(ex.getMessage());
|
|
|
|
+ messageResult.setCode(400);
|
|
|
|
+ messageResult.setResult(false);
|
|
|
|
+ messageResult.setMessage(ex.getMessage());
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ return messageResult;
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ @PostMapping("upBusNoTicketList")
|
|
|
|
+ @ApiOperation(value = "上传未购票乘客列表")
|
|
|
|
+ @ApiImplicitParams({
|
|
|
|
+ @ApiImplicitParam(name = "id", value = "车辆id", required = true, paramType = "form")
|
|
|
|
+ })
|
|
|
|
+ public MessageResult<Map> upBusNoTicketList(String id, @RequestParam(value = "pageIndex", defaultValue = "1") int pageIndex, @RequestParam(value = "pageSize", defaultValue = "20") int pageSize) {
|
|
|
|
+ MessageResult<Map> messageResult = new MessageResult<>();
|
|
|
|
|
|
|
|
+ try {
|
|
|
|
+ //车辆
|
|
|
|
+ VehicleInfo vehicleInfo = vehicleInfoService.get(id);
|
|
|
|
|
|
|
|
+ List<ShiftInfo> shiftInfoList = shiftInfoService.findByVehicleIdAndStatus(id, "1");
|
|
|
|
|
|
|
|
+ if (shiftInfoList.size() == 0) {
|
|
|
|
+ throw new Exception("当前车辆没有正运行的班次");
|
|
|
|
+ }
|
|
|
|
|
|
|
|
+ //班次信息
|
|
|
|
+ ShiftInfo shiftInfo = shiftInfoList.get(0);
|
|
|
|
|
|
|
|
+ Map<String,Object> searchParams = new HashMap<>();
|
|
|
|
+ searchParams.put("vehicleShiftId",shiftInfo.getId());
|
|
|
|
+ searchParams.put("status","1");
|
|
|
|
+ searchParams.put("payStatus","0");
|
|
|
|
+ List<Sort> sortList = new ArrayList<>();
|
|
|
|
+ sortList.add(new Sort("up_time","desc"));
|
|
|
|
+ Page<PassengerInfo> page = passengerInfoService.pageSearch(searchParams,pageIndex,pageSize,true,sortList);
|
|
|
|
|
|
|
|
|
|
- Map<String, Object> map = new HashMap<>();
|
|
|
|
- messageResult.setData(map);
|
|
|
|
|
|
+ messageResult.setData(PojoUtils.pageWrapper(page));
|
|
messageResult.setResult(true);
|
|
messageResult.setResult(true);
|
|
messageResult.setCode(200);
|
|
messageResult.setCode(200);
|
|
} catch (Exception ex) {
|
|
} catch (Exception ex) {
|
|
log.error(ex.getMessage());
|
|
log.error(ex.getMessage());
|
|
|
|
+ messageResult.setCode(400);
|
|
messageResult.setResult(false);
|
|
messageResult.setResult(false);
|
|
messageResult.setMessage(ex.getMessage());
|
|
messageResult.setMessage(ex.getMessage());
|
|
}
|
|
}
|
|
@@ -497,4 +545,48 @@ public class PassengerApiController {
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+ @PostMapping("createPassengerOrder")
|
|
|
|
+ @ApiOperation(value = "创建乘客订单")
|
|
|
|
+ @ApiImplicitParams({
|
|
|
|
+ @ApiImplicitParam(name = "id", value = "车辆id", required = true, paramType = "form"),
|
|
|
|
+ @ApiImplicitParam(name = "openId", value = "购票人openId", required = true, paramType = "form"),
|
|
|
|
+ @ApiImplicitParam(name = "mergeOrderId", value = "综合车票id", required = true, paramType = "form"),
|
|
|
|
+ @ApiImplicitParam(name = "passengerIds", value = "乘客ids", required = true, paramType = "form"),
|
|
|
|
+ @ApiImplicitParam(name = "ticketUpStationId", value = "购票起站", required = true, paramType = "form"),
|
|
|
|
+ @ApiImplicitParam(name = "ticketDownStationId", value = "购票终点站", required = true, paramType = "form"),
|
|
|
|
+ @ApiImplicitParam(name = "ticketType", value = "购票类型(1:儿童票,2:成人票)", required = true, paramType = "form"),
|
|
|
|
+ @ApiImplicitParam(name = "goodsTicket", value = "货票金额", required = true, paramType = "form"),
|
|
|
|
+ @ApiImplicitParam(name = "totalFee", value = "总金额", required = true, paramType = "form")
|
|
|
|
+ })
|
|
|
|
+ public MessageResult<Map> createPassengerOrder(String id,String openId,String mergeOrderId,String passengerIds,String ticketUpStationId,String ticketDownStationId,String ticketType,String goodsTicket,String totalFee) {
|
|
|
|
+ MessageResult<Map> messageResult = new MessageResult<>();
|
|
|
|
+
|
|
|
|
+ try {
|
|
|
|
+ //车辆
|
|
|
|
+ VehicleInfo vehicleInfo = vehicleInfoService.get(id);
|
|
|
|
+
|
|
|
|
+ List<ShiftInfo> shiftInfoList = shiftInfoService.findByVehicleIdAndStatus(id, "1");
|
|
|
|
+
|
|
|
|
+ if (shiftInfoList.size() == 0) {
|
|
|
|
+ throw new Exception("当前车辆没有正运行的班次");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //班次信息
|
|
|
|
+ ShiftInfo shiftInfo = shiftInfoList.get(0);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ passengerInfoService.createOrder(vehicleInfo,shiftInfo,openId,mergeOrderId,passengerIds,ticketUpStationId,ticketDownStationId,ticketType,goodsTicket,totalFee);
|
|
|
|
+
|
|
|
|
+ messageResult.setResult(true);
|
|
|
|
+ messageResult.setCode(200);
|
|
|
|
+ } catch (Exception ex) {
|
|
|
|
+ log.error(ex.getMessage());
|
|
|
|
+ messageResult.setCode(400);
|
|
|
|
+ messageResult.setResult(false);
|
|
|
|
+ messageResult.setMessage(ex.getMessage());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return messageResult;
|
|
|
|
+ }
|
|
|
|
+
|
|
}
|
|
}
|