From af6d43a41205f8c7fc1a965cb019c039063bf4f0 Mon Sep 17 00:00:00 2001
From: puzhibing <393733352@qq.com>
Date: 星期三, 13 十二月 2023 01:15:07 +0800
Subject: [PATCH] 更新接口
---
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java | 415 ++++++++++++++++++++++++++++++++++++----------------------
1 files changed, 256 insertions(+), 159 deletions(-)
diff --git a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
index 02a55ca..81f1296 100644
--- a/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
+++ b/UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java
@@ -12,6 +12,7 @@
import com.stylefeng.guns.modular.specialTrain.model.OrderPrivateCar;
import com.stylefeng.guns.modular.specialTrain.server.IOrderPrivateCarService;
import com.stylefeng.guns.modular.system.model.Driver;
+import com.stylefeng.guns.modular.system.model.OrderCancel;
import com.stylefeng.guns.modular.system.model.OrderPosition;
import com.stylefeng.guns.modular.system.model.UserInfo;
import com.stylefeng.guns.modular.system.service.*;
@@ -19,8 +20,10 @@
import com.stylefeng.guns.modular.system.util.Tingg.model.*;
import com.stylefeng.guns.modular.system.warpper.*;
import com.stylefeng.guns.modular.taxi.model.OrderTaxi;
+import com.stylefeng.guns.modular.taxi.model.PaymentRecord;
import com.stylefeng.guns.modular.taxi.model.TransactionDetails;
import com.stylefeng.guns.modular.taxi.service.IOrderTaxiService;
+import com.stylefeng.guns.modular.taxi.service.IPaymentRecordService;
import com.stylefeng.guns.modular.taxi.service.ITransactionDetailsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -89,6 +92,9 @@
@Autowired
private ITransactionDetailsService transactionDetailsService;
+
+ @Autowired
+ private IPaymentRecordService paymentRecordService;
@Autowired
private IOrderCancelService orderCancelService;
@@ -178,7 +184,7 @@
@ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil<List<OrderWarpper>> queryMyOrderList(Integer type, Integer pageNum, Integer size, HttpServletRequest request){
+ public ResultUtil<List<OrderWarpper>> queryMyOrderList(Integer type, Integer pageNum, Integer size, Integer language, HttpServletRequest request){
try {
Integer uid = userInfoService.getUserIdFormRedis(request);
if(null == uid){
@@ -187,19 +193,19 @@
List<Map<String, Object>> list = null;
switch (type){
case 1:
- list = orderPrivateCarService.queryMyOrderList(uid, pageNum, size);
+ list = orderPrivateCarService.queryMyOrderList(language, uid, pageNum, size);
break;
case 2:
- list = orderTaxiService.queryMyOrderList(uid, pageNum, size);
+ list = orderTaxiService.queryMyOrderList(language, uid, pageNum, size);
break;
case 3:
- list = orderCrossCityService.queryMyOrderList(uid, pageNum, size);
+ list = orderCrossCityService.queryMyOrderList(language, uid, pageNum, size);
break;
case 4:
- list = orderLogisticsService.queryMyOrderList(uid, pageNum, size);
+ list = orderLogisticsService.queryMyOrderList(uid, pageNum, size, language);
break;
case 5:
- list = orderCharteredCarService.queryMyOrderList(uid, pageNum, size);
+ list = orderCharteredCarService.queryMyOrderList(language, uid, pageNum, size);
break;
}
return ResultUtil.success(OrderWarpper.getOrderWarpper(list));
@@ -230,24 +236,24 @@
if(null == uid){
return ResultUtil.tokenErr();
}
- String name = language == 1 ? "专车订单" : language == 2 ? "Private car order" : "Commande de voiture exclusive";
+ String name = language == 1 ? "打车" : language == 2 ? "Ride" : "Course";
pageNum = (pageNum - 1) * size;
- List<Map<String, Object>> maps = orderCancelService.queryCancel(uid, 2);
+ List<Map<String, Object>> maps = orderCancelService.queryCancel(language, uid, 2);
for (Map<String, Object> map : maps) {
Integer orderType = Integer.valueOf(map.get("orderType").toString());
if(1 == orderType){
- map.put("name", language == 1 ? "专车订单取消" : language == 2 ? "Private car order cancelled" : "Annulation de commande de voiture exclusive");
+ map.put("name", language == 1 ? "打车订单取消" : language == 2 ? "Ride order cancelled" : "Commande de trajet annulée");
}
if(4 == orderType){
- map.put("name", language == 1 ? "市内小件物流订单取消" : language == 2 ? "The small parts logistics order in the city has been cancelled" : "Annulation de commande pour la logistique de petites pièces dans la ville");
+ map.put("name", language == 1 ? "包裹订单取消" : language == 2 ? "Parcel order cancellation" : "Annulation de commande de colis");
}
}
- List<Map<String, Object>> list = orderPrivateCarService.queryMyTravelRecord(uid);//专车
+ List<Map<String, Object>> list = orderPrivateCarService.queryMyTravelRecord(language, uid);//专车
for (Map<String, Object> map : list) {
map.put("name", name);
}
- name = language == 1 ? "市内小件物流" : language == 2 ? "Small parts logistics in the city" : "Logistique de petites pièces dans la ville";
- List<Map<String, Object>> list3 = orderLogisticsService.queryMyTravelRecord(uid);//小件物流
+ name = language == 1 ? "包裹" : language == 2 ? "Package" : "Livraison";
+ List<Map<String, Object>> list3 = orderLogisticsService.queryMyTravelRecord(language, uid);//小件物流
for (Map<String, Object> map : list3) {
map.put("name", name);
}
@@ -258,7 +264,7 @@
for(TransactionDetails transactionDetails1 : transactionDetails){
Map<String, Object> map = new HashMap<>();
map.put("money", transactionDetails1.getMoney());
- map.put("time", sdf.format(transactionDetails1.getInsertTime()));
+ map.put("time", DateUtil.conversionFormat(language, sdf.format(transactionDetails1.getInsertTime())));
map.put("name", "跨城订单取消退款");
map.put("insertTime", Double.valueOf(transactionDetails1.getInsertTime().getTime() / 1000).intValue());
list4.add(map);
@@ -314,7 +320,7 @@
@ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil<List<OrderWarpper>> queryInvoiceOrder(Integer type, Integer orderType, Date startTime,
+ public ResultUtil<List<OrderWarpper>> queryInvoiceOrder(Integer language, Integer type, Integer orderType, Date startTime,
Date endTime, Double startMoney, Double endMoney,
Integer pageNum, Integer size, HttpServletRequest request){
pageNum = (pageNum - 1) * size;
@@ -327,7 +333,7 @@
if(null != orderType){
switch (orderType){
case 1://专车
- list = orderPrivateCarService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
+ list = orderPrivateCarService.queryInvoiceOrder(language, type, startTime, endTime, startMoney, endMoney, uid);
break;
// case 2://出租车
// list = orderTaxiService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
@@ -336,7 +342,7 @@
// list = orderCrossCityService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
// break;
case 4://同城小件物流
- list = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType);
+ list = orderLogisticsService.queryInvoiceOrder(language, type, startTime, endTime, startMoney, endMoney, uid, orderType);
break;
// case 5://跨城小件物流
// list = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType);
@@ -344,7 +350,7 @@
}
}else{
//专车
- List<Map<String, Object>> maps = orderPrivateCarService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
+ List<Map<String, Object>> maps = orderPrivateCarService.queryInvoiceOrder(language, type, startTime, endTime, startMoney, endMoney, uid);
list.addAll(maps);
// //出租车
// List<Map<String, Object>> list1 = orderTaxiService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
@@ -353,7 +359,7 @@
// List<Map<String, Object>> list2 = orderCrossCityService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
// list.addAll(list2);
//同城小件物流
- List<Map<String, Object>> list3 = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType);
+ List<Map<String, Object>> list3 = orderLogisticsService.queryInvoiceOrder(language, type, startTime, endTime, startMoney, endMoney, uid, orderType);
list.addAll(list3);
// //跨城小件物流
// List<Map<String, Object>> list4 = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType);
@@ -428,30 +434,39 @@
@ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=城际,4=同城小件,5=跨城小件)", name = "orderType", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil<OrderInfoWarpper> queryOrderInfo(Integer orderId, Integer orderType){
+ public ResultUtil<OrderInfoWarpper> queryOrderInfo(Integer orderId, Integer orderType, Integer language){
try {
Map<String, Object> map = null;
switch (orderType){
case 1://专车
- map = orderPrivateCarService.queryOrderInfo(orderId);
+ map = orderPrivateCarService.queryOrderInfo(language, orderId);
break;
case 2://出租车
- map = orderTaxiService.queryOrderInfo(orderId);
+ map = orderTaxiService.queryOrderInfo(language, orderId);
break;
case 3://跨城
- map = orderCrossCityService.queryOrderInfo(orderId);
+ map = orderCrossCityService.queryOrderInfo(language, orderId);
break;
case 4://同城小件
- map = orderLogisticsService.queryOrderInfo(orderId);
+ map = orderLogisticsService.queryOrderInfo(language, orderId);
break;
case 5://跨城小件
- map = orderLogisticsService.queryOrderInfo(orderId);
+ map = orderLogisticsService.queryOrderInfo(language, orderId);
break;
}
if(map.get("telX") != null){
map.put("driverPhone", map.get("telX"));
}
OrderInfoWarpper orderInfoWarpper = OrderInfoWarpper.getOrderInfoWarpper(map);
+ String driverName = orderInfoWarpper.getDriverName();
+ if(language == 2){
+ driverName = "Master " + driverName.replace("师傅", "");
+ }
+ if(language == 3){
+ driverName = "Maître " + driverName.replace("师傅", "");
+ }
+ orderInfoWarpper.setDriverName(driverName);
+
File file = new File(filePath + orderId + "_1.txt");
if(file.exists()){
//读取文件(字符流)
@@ -487,31 +502,39 @@
@ApiImplicitParam(value = "订单id", name = "orderId", required = true, dataType = "int"),
@ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=城际,4=同城小件,5=跨城小件)", name = "orderType", required = true, dataType = "int"),
})
- public ResultUtil<OrderInfoWarpper> queryOrderInfo_(Integer orderId, Integer orderType){
+ public ResultUtil<OrderInfoWarpper> queryOrderInfo_(Integer orderId, Integer orderType, Integer language){
try {
Map<String, Object> map = null;
switch (orderType){
case 1://专车
- map = orderPrivateCarService.queryOrderInfo(orderId);
+ map = orderPrivateCarService.queryOrderInfo(language, orderId);
break;
case 2://出租车
- map = orderTaxiService.queryOrderInfo(orderId);
+ map = orderTaxiService.queryOrderInfo(language, orderId);
break;
case 3://跨城
- map = orderCrossCityService.queryOrderInfo(orderId);
+ map = orderCrossCityService.queryOrderInfo(language, orderId);
break;
case 4://同城小件
- map = orderLogisticsService.queryOrderInfo(orderId);
+ map = orderLogisticsService.queryOrderInfo(language, orderId);
break;
case 5://跨城小件
- map = orderLogisticsService.queryOrderInfo(orderId);
+ map = orderLogisticsService.queryOrderInfo(language, orderId);
break;
}
if(null != map.get("telX")){
map.put("driverPhone", map.get("telX"));
}
-
- return ResultUtil.success(OrderInfoWarpper.getOrderInfoWarpper(map));
+ OrderInfoWarpper orderInfoWarpper = OrderInfoWarpper.getOrderInfoWarpper(map);
+ String driverName = orderInfoWarpper.getDriverName();
+ if(language == 2){
+ driverName = "Master " + driverName.replace("师傅", "");
+ }
+ if(language == 3){
+ driverName = "Maître " + driverName.replace("师傅", "");
+ }
+ orderInfoWarpper.setDriverName(driverName);
+ return ResultUtil.success(orderInfoWarpper);
}catch (Exception e){
e.printStackTrace();
return ResultUtil.runErr();
@@ -535,27 +558,36 @@
@ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=城际)", name = "orderType", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil<OrderInfoWarpper> queryCancelPage(Integer orderId, Integer orderType){
+ public ResultUtil<OrderInfoWarpper> queryCancelPage(Integer orderId, Integer orderType, Integer language){
try {
Map<String, Object> map = null;
switch (orderType) {
case 1://专车
- map = orderPrivateCarService.queryOrderInfo(orderId);
- ResultUtil<BaseWarpper> res = orderPrivateCarService.queryCancleAmount(orderId);
+ map = orderPrivateCarService.queryOrderInfo(language, orderId);
+ ResultUtil<BaseWarpper> res = orderPrivateCarService.queryCancleAmount(orderId, language);
map.put("cancelPayMoney", res.getData().getAmount());
break;
case 2://出租车
- map = orderTaxiService.queryOrderInfo(orderId);
+ map = orderTaxiService.queryOrderInfo(language, orderId);
ResultUtil<BaseWarpper> re = orderTaxiService.queryCancleAmount(orderId);
map.put("cancelPayMoney", re.getData().getAmount());
break;
case 3://跨城
- map = orderCrossCityService.queryOrderInfo(orderId);
+ map = orderCrossCityService.queryOrderInfo(language, orderId);
ResultUtil<BaseWarpper> r = orderCrossCityService.queryCancleAmount(orderId);
map.put("cancelPayMoney", r.getData().getAmount());
break;
}
- return ResultUtil.success(OrderInfoWarpper.getOrderInfoWarpper(map));
+ OrderInfoWarpper orderInfoWarpper = OrderInfoWarpper.getOrderInfoWarpper(map);
+ String driverName = orderInfoWarpper.getDriverName();
+ if(language == 2){
+ driverName = "Master " + driverName.replace("师傅", "");
+ }
+ if(language == 3){
+ driverName = "Maître " + driverName.replace("师傅", "");
+ }
+ orderInfoWarpper.setDriverName(driverName);
+ return ResultUtil.success(orderInfoWarpper);
}catch (Exception e){
e.printStackTrace();
return ResultUtil.runErr();
@@ -804,11 +836,11 @@
@ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=跨城)", name = "orderType", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil<BaseWarpper> queryCancleAmount(Integer id, Integer orderType){
+ public ResultUtil<BaseWarpper> queryCancleAmount(Integer id, Integer orderType, Integer language){
try {
switch (orderType){
case 1:
- return orderPrivateCarService.queryCancleAmount(id);
+ return orderPrivateCarService.queryCancleAmount(id, language);
case 2:
return orderTaxiService.queryCancleAmount(id);
case 3:
@@ -871,6 +903,47 @@
}
+ /**
+ * 取消订单退款回调
+ * @param request
+ * @return
+ */
+ @ResponseBody
+ @PostMapping("/base/orderCancelRefundCallback")
+ public PayoutCallbackResponse orderCancelRefundCallback(@RequestBody PayoutCallbackRequest request){
+ try {
+ System.err.println("转账回调>>>>" + JSON.toJSONString(request));
+ PayoutCallbackResponse payoutCallbackResponse = new PayoutCallbackResponse();
+ AuthStatus authStatus = new AuthStatus();
+ authStatus.setAuthStatusCode(131);
+ authStatus.setAuthStatusDescription("Authentication was successful");
+ payoutCallbackResponse.setAuthStatus(authStatus);
+ Results results = new Results();
+ PayoutPacket packet = request.getPayload().getPacket();
+ String statusCode = packet.getStatusCode();
+ String beepTransactionID = packet.getBeepTransactionID();
+ String payerTransactionID = packet.getPayerTransactionID();
+
+ String id = payerTransactionID.substring(17);
+ OrderCancel orderCancel = orderCancelService.selectById(id);
+ OrderLogistics orderLogistics = orderLogisticsService.selectById(orderCancel.getOrderId());
+ PaymentRecord query = paymentRecordService.query(1, orderLogistics.getUserId(), 1, orderLogistics.getId(), orderLogistics.getType(), 1, 2);
+ transactionDetailsService.saveData(orderLogistics.getUserId(), "包裹取消退款", query.getAmount(), 1, 1, 1, 4, orderLogistics.getId());
+
+ results.setBeepTransactionID(beepTransactionID);
+ results.setPayerTransactionID(payerTransactionID);
+ results.setStatusCode("188");
+ results.setStatusDescription("Response was received");
+ payoutCallbackResponse.setResults(results);
+ return payoutCallbackResponse;
+ }catch (Exception e){
+ e.printStackTrace();
+ return null;
+ }
+ }
+
+
+
/**
* 取消操作支付
@@ -880,16 +953,17 @@
*/
@ResponseBody
@PostMapping("/api/taxi/cancleOrderTaxi")
- @ApiOperation(value = "取消操作支付", tags = {"用户端-出租车", "用户端-专车", "用户端-跨城"}, notes = "")
+ @ApiOperation(value = "取消操作支付【1.1】", tags = {"用户端-出租车", "用户端-专车", "用户端-跨城"}, notes = "")
@ApiImplicitParams({
@ApiImplicitParam(value = "订单id", name = "id", required = true, dataType = "int"),
@ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=跨城)", name = "orderType", required = true, dataType = "int"),
- @ApiImplicitParam(value = "支付方式(1=线上支付,3=余额)", name = "payType", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "支付方式(1=手机支付,2=银行卡支付,3=余额)", name = "payType", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "银行卡id", name = "bankCardId", required = false, dataType = "int"),
@ApiImplicitParam(value = "取消单id(取消操作返回)", name = "cancleId", required = false, dataType = "int"),
@ApiImplicitParam(value = "支付端(1=用户APP端,2=司机APP端,3=用户小程序端)", name = "type", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil cancleOrderTaxi(Integer id, Integer orderType, Integer payType, Integer cancleId, Integer type, Integer language, HttpServletRequest request){
+ public ResultUtil cancleOrderTaxi(Integer id, Integer orderType, Integer payType, Integer bankCardId, Integer cancleId, Integer type, Integer language, HttpServletRequest request){
try {
Integer uid = userInfoService.getUserIdFormRedis(request);
if(null == uid){
@@ -897,7 +971,7 @@
}
switch (orderType){
case 1:
- return orderPrivateCarService.cancleOrderPrivateCar(id, payType, "user_" + uid, cancleId, type, language);
+ return orderPrivateCarService.cancleOrderPrivateCar(id, payType, bankCardId, cancleId, type, language);
// case 2:
// return orderTaxiService.cancleOrderTaxi(id, payType, cancleId, type);
// case 3:
@@ -971,18 +1045,18 @@
case 1:
map = orderPrivateCarService.queryBalance(orderId, uid);
break;
- case 2:
- map = orderTaxiService.queryBalance(orderId, uid);
- break;
- case 3:
- map = orderCrossCityService.queryBalance(orderId, uid);
- break;
+// case 2:
+// map = orderTaxiService.queryBalance(orderId, uid);
+// break;
+// case 3:
+// map = orderCrossCityService.queryBalance(orderId, uid);
+// break;
case 4:
map = orderLogisticsService.queryBalance(orderId, uid);
break;
- case 5:
- map = orderLogisticsService.queryBalance(orderId, uid);
- break;
+// case 5:
+// map = orderLogisticsService.queryBalance(orderId, uid);
+// break;
}
return ResultUtil.success(map);
}catch (Exception e){
@@ -1011,7 +1085,7 @@
@ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil queryCoupon(Integer orderId, Integer orderType, Integer pageNum, Integer size, HttpServletRequest request){
+ public ResultUtil queryCoupon(Integer language, Integer orderId, Integer orderType, Integer pageNum, Integer size, HttpServletRequest request){
try {
Integer uid = userInfoService.getUserIdFormRedis(request);
if(null == uid){
@@ -1020,14 +1094,14 @@
List<Map<String, Object>> list = new ArrayList<>();
switch (orderType){
case 1:
- list = orderPrivateCarService.queryCoupon(orderId, uid, pageNum, size);
+ list = orderPrivateCarService.queryCoupon(language, orderId, uid, pageNum, size);
break;
- case 2:
- list = orderTaxiService.queryCoupon(orderId, uid, pageNum, size);
- break;
- case 3:
- list = orderCrossCityService.queryCoupon(orderId, uid, pageNum, size);
- break;
+// case 2:
+// list = orderTaxiService.queryCoupon(orderId, uid, pageNum, size);
+// break;
+// case 3:
+// list = orderCrossCityService.queryCoupon(orderId, uid, pageNum, size);
+// break;
// case 4:
// list = orderLogisticsService.queryCoupon(orderId, uid, pageNum, size);
// break;
@@ -1054,16 +1128,17 @@
*/
@ResponseBody
@PostMapping("/api/taxi/payTaxiOrder")
- @ApiOperation(value = "订单完成支付订单操作【1.0】", tags = {"用户端-出租车", "用户端-专车", "用户端-跨城", "用户端-小件物流"}, notes = "")
+ @ApiOperation(value = "订单完成支付订单操作【1.1】", tags = {"用户端-出租车", "用户端-专车", "用户端-跨城", "用户端-小件物流"}, notes = "")
@ApiImplicitParams({
- @ApiImplicitParam(value = "支付方式(1=线上支付,3=余额,4=线下支付)", name = "payType", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "支付方式(1=手机支付,2=银行卡支付,3=余额,4=线下支付)", name = "payType", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "银行卡id", name = "bankCardId", required = false, dataType = "int"),
@ApiImplicitParam(value = "订单id", name = "orderId", required = true, dataType = "int"),
@ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=跨城,4=同城小件物流,5=跨城小件物流)", name = "orderType", required = true, dataType = "int"),
@ApiImplicitParam(value = "优惠券id", name = "couponId", required = false, dataType = "int"),
@ApiImplicitParam(value = "支付端(1=用户APP端,2=司机APP端,3=用户小程序端)", name = "type", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil payTaxiOrder(Integer payType, Integer orderId, Integer orderType, Integer couponId, Integer type, Integer language, HttpServletRequest request){
+ public ResultUtil payTaxiOrder(Integer payType, Integer bankCardId, Integer orderId, Integer orderType, Integer couponId, Integer type, Integer language, HttpServletRequest request){
try {
Integer uid = userInfoService.getUserIdFormRedis(request);
if(null == uid){
@@ -1071,13 +1146,13 @@
}
switch (orderType){
case 1:
- return orderPrivateCarService.payPrivateCarOrder(payType, "user_" + uid, orderId, couponId, type, language);
+ return orderPrivateCarService.payPrivateCarOrder(payType, bankCardId, orderId, couponId, type, language);
// case 2:
// return orderTaxiService.payTaxiOrder(payType, orderId, couponId, type);
// case 3:
// return orderCrossCityService.payCrossCityOrder(payType, orderId, couponId, type);
case 4:
- return orderLogisticsService.payLogisticsOrder(payType, "user_" + uid, orderId, type, language);
+ return orderLogisticsService.payLogisticsOrder(payType, bankCardId, orderId, type, language);
// case 5:
// return orderLogisticsService.payLogisticsOrder(payType, orderId, type, language);
}
@@ -1182,6 +1257,7 @@
@ApiImplicitParams({
@ApiImplicitParam(value = "订单id", name = "orderId", required = true, dataType = "int"),
@ApiImplicitParam(value = "订单类型", name = "orderType", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "语言", name = "language", required = true, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
public ResultUtil shareRedEnvelope(Integer orderId, Integer orderType, Integer language){
@@ -1230,17 +1306,18 @@
String order_id = payments.getPayer_transaction_id();
if(ToolUtil.isNotEmpty(out_trade_no)){
Integer type = Integer.valueOf(out_trade_no.substring(17, 18));
- Integer id = Integer.valueOf(out_trade_no.substring(18));
+ Integer language = Integer.valueOf(out_trade_no.substring(18, 19));
+ Integer id = Integer.valueOf(out_trade_no.substring(19));
switch (type){
case 1:
- orderPrivateCarService.payCancelOrderPrivateCar(id, order_id, 1);
+ orderPrivateCarService.payCancelOrderPrivateCar(id, order_id, language);
break;
- case 2:
- orderTaxiService.payCancelOrderTaxi(id, order_id, 1);
- break;
- case 3:
- orderCrossCityService.payCancelOrderCrossCity(id, order_id, 1);
- break;
+// case 2:
+// orderTaxiService.payCancelOrderTaxi(id, order_id, 1);
+// break;
+// case 3:
+// orderCrossCityService.payCancelOrderCrossCity(id, order_id, 1);
+// break;
}
callbackResponse.setCheckout_request_id(order_id);
callbackResponse.setMerchant_transaction_id(out_trade_no);
@@ -1270,35 +1347,36 @@
@PostMapping("/base/aliCancelOrderTaxi")
public void aliCancelOrderTaxi(HttpServletRequest request, HttpServletResponse response){
try {
- Map<String, String> map = payMoneyUtil.alipayCallback(request);//icbcPayUtil.payCallback(request);
- if(null != map){
- String out_trade_no = map.get("out_trade_no");
- String order_id = map.get("trade_no");
- if(ToolUtil.isNotEmpty(out_trade_no)){
- String[] split = out_trade_no.split("_");
- Integer id = Integer.valueOf(split[0]);
- Integer type = Integer.valueOf(split[1]);
- switch (type){
- case 1:
- orderPrivateCarService.payCancelOrderPrivateCar(id, order_id, 2);
- break;
- case 2:
- orderTaxiService.payCancelOrderTaxi(id, order_id, 2);
- break;
- case 3:
- orderCrossCityService.payCancelOrderCrossCity(id, order_id, 2);
- break;
- }
- }
- response.setContentType("text/html;charset=UTF-8");
- PrintWriter out;
- out = response.getWriter();
- out.println("success"); // 请不要修改或删除
- }
+// Map<String, String> map = payMoneyUtil.alipayCallback(request);//icbcPayUtil.payCallback(request);
+// if(null != map){
+// String out_trade_no = map.get("out_trade_no");
+// String order_id = map.get("trade_no");
+// if(ToolUtil.isNotEmpty(out_trade_no)){
+// String[] split = out_trade_no.split("_");
+// Integer id = Integer.valueOf(split[0]);
+// Integer type = Integer.valueOf(split[1]);
+// switch (type){
+// case 1:
+// orderPrivateCarService.payCancelOrderPrivateCar(id, order_id, 2);
+// break;
+// case 2:
+// orderTaxiService.payCancelOrderTaxi(id, order_id, 2);
+// break;
+// case 3:
+// orderCrossCityService.payCancelOrderCrossCity(id, order_id, 2);
+// break;
+// }
+// }
+// response.setContentType("text/html;charset=UTF-8");
+// PrintWriter out;
+// out = response.getWriter();
+// out.println("success"); // 请不要修改或删除
+// }
}catch (Exception e){
e.printStackTrace();
}
}
+
/**
@@ -1326,25 +1404,25 @@
Payments payments = callbackRequest.getPayments().get(0);
String order_id = payments.getPayer_transaction_id();
if(ToolUtil.isNotEmpty(out_trade_no)){
- Integer type = Integer.valueOf(out_trade_no.substring(17, 18));
+ Integer orderType = Integer.valueOf(out_trade_no.substring(17, 18));
Integer language = Integer.valueOf(out_trade_no.substring(18, 19));
Integer id = Integer.valueOf(out_trade_no.substring(19));
- switch (type){
+ switch (orderType){
case 1:
- orderPrivateCarService.payOrderPrivateCarCallback(id, order_id, 1, language);
+ orderPrivateCarService.payOrderPrivateCarCallback(id, order_id, language);
break;
- case 2:
- orderTaxiService.payOrderTaxiCallback(id, order_id, 1);
- break;
- case 3:
- orderCrossCityService.payOrderCrossCityCallback(id, order_id, 1);
- break;
+// case 2:
+// orderTaxiService.payOrderTaxiCallback(id, order_id, 1);
+// break;
+// case 3:
+// orderCrossCityService.payOrderCrossCityCallback(id, order_id, 1);
+// break;
case 4:
- orderLogisticsService.payOrderLogisticsCallback(id, order_id, 1, language);
+ orderLogisticsService.payOrderLogisticsCallback(id, order_id, language);
break;
- case 5:
- orderLogisticsService.payOrderLogisticsCallback(id, order_id, 1, language);
- break;
+// case 5:
+// orderLogisticsService.payOrderLogisticsCallback(id, order_id, 1, language);
+// break;
}
callbackResponse.setCheckout_request_id(order_id);
callbackResponse.setMerchant_transaction_id(out_trade_no);
@@ -1384,21 +1462,21 @@
Integer type = Integer.valueOf(split[1]);
Integer language = Integer.valueOf(split[2]);
switch (type){
- case 1:
- orderPrivateCarService.payOrderPrivateCarCallback(id, order_id, 2, language);
- break;
- case 2:
- orderTaxiService.payOrderTaxiCallback(id, order_id, 2);
- break;
- case 3:
- orderCrossCityService.payOrderCrossCityCallback(id, order_id, 2);
- break;
- case 4:
- orderLogisticsService.payOrderLogisticsCallback(id, order_id, 2, language);
- break;
- case 5:
- orderLogisticsService.payOrderLogisticsCallback(id, order_id, 2, language);
- break;
+// case 1:
+// orderPrivateCarService.payOrderPrivateCarCallback(id, order_id, 2, language);
+// break;
+// case 2:
+// orderTaxiService.payOrderTaxiCallback(id, order_id, 2);
+// break;
+// case 3:
+// orderCrossCityService.payOrderCrossCityCallback(id, order_id, 2);
+// break;
+// case 4:
+// orderLogisticsService.payOrderLogisticsCallback(id, order_id, 2, language);
+// break;
+// case 5:
+// orderLogisticsService.payOrderLogisticsCallback(id, order_id, 2, language);
+// break;
}
response.setContentType("text/html;charset=UTF-8");
PrintWriter out;
@@ -1417,30 +1495,49 @@
/**
* 小件物流差价微信支付回调
- * @param request
*/
@ResponseBody
@PostMapping("/base/wxPayOrderLogisticsSpread")
- public void wxPayOrderLogisticsSpread(HttpServletRequest request, HttpServletResponse response){
+ public CallbackResponse wxPayOrderLogisticsSpread(@RequestBody CallbackRequest callbackRequest){
+ CallbackResponse callbackResponse = new CallbackResponse();
try {
- Map<String, String> map = payMoneyUtil.weixinpayCallback(request);//icbcPayUtil.payCallback(request);
- if(null != map){
- String out_trade_no = map.get("out_trade_no");
- String order_id = map.get("transaction_id");
- String s = null;//icbcPayUtil.queryTransaction("", order_id);
- if(!s.equals("") && !s.equals("2")){
- //icbcPayUtil.answer(response);//回调应答
+ /**
+ * 指示服务是否成功或付费的总体请求代码。。
+ * 177-部分付费请求
+ * 178-表明请求已全额支付
+ * 179-表示请求已部分支付但已过期。
+ * 129-请求已过期,未付款。
+ * 180.商户拒绝请求
+ * 183-商户接受请求,我们可以结算资金
+ * 188-商户收到请求。
+ */
+ String request_status_code = callbackRequest.getRequest_status_code();
+ String out_trade_no = callbackRequest.getMerchant_transaction_id();
+ if("177".equals(request_status_code) || "178".equals(request_status_code)){
+ Payments payments = callbackRequest.getPayments().get(0);
+ String order_id = payments.getPayer_transaction_id();
+ if(ToolUtil.isNotEmpty(out_trade_no)){
+ Integer orderType = Integer.valueOf(out_trade_no.substring(17, 18));
+ Integer language = Integer.valueOf(out_trade_no.substring(18, 19));
+ Integer id = Integer.valueOf(out_trade_no.substring(19));
+ orderLogisticsService.payOrderLogisticsSpreadCallback(id, order_id, language);
+ callbackResponse.setCheckout_request_id(order_id);
+ callbackResponse.setMerchant_transaction_id(out_trade_no);
+ callbackResponse.setStatus_code("183");
+ callbackResponse.setStatus_description("Payment processed successfully");
+ callbackResponse.setReceipt_number(UUIDUtil.getRandomCode(16));
}
- if(ToolUtil.isNotEmpty(out_trade_no) && ToolUtil.isNotEmpty(order_id) && s.equals("0")){
- String[] split = out_trade_no.split(",");
- Integer id = Integer.valueOf(split[0]);
- Integer type = Integer.valueOf(split[1]);
- orderLogisticsService.payOrderLogisticsSpreadCallback(id, order_id, 1);
- }
+ }else{
+ callbackResponse.setCheckout_request_id(UUIDUtil.getRandomCode(16));
+ callbackResponse.setMerchant_transaction_id(out_trade_no);
+ callbackResponse.setStatus_code("180");
+ callbackResponse.setStatus_description("means payment rejected.");
+ callbackResponse.setReceipt_number(UUIDUtil.getRandomCode(16));
}
}catch (Exception e){
e.printStackTrace();
}
+ return callbackResponse;
}
@@ -1452,22 +1549,22 @@
@PostMapping("/base/aliPayOrderLogisticsSpread")
public void aliPayOrderLogisticsSpread(HttpServletRequest request, HttpServletResponse response){
try {
- Map<String, String> map = payMoneyUtil.alipayCallback(request);//icbcPayUtil.payCallback(request);
- if(null != map){
- String out_trade_no = map.get("out_trade_no");
- String order_id = map.get("trade_no");
- String s = null;//icbcPayUtil.queryTransaction("", order_id);
- if(!s.equals("") && !s.equals("2")){
- //icbcPayUtil.answer(response);//回调应答
- }
- if(ToolUtil.isNotEmpty(out_trade_no) && ToolUtil.isNotEmpty(order_id) && s.equals("0")){
- String[] split = out_trade_no.split(",");
- Integer id = Integer.valueOf(split[0]);
- Integer type = Integer.valueOf(split[1]);
- orderLogisticsService.payOrderLogisticsSpreadCallback(id, order_id, 2);
- }
-
- }
+// Map<String, String> map = payMoneyUtil.alipayCallback(request);//icbcPayUtil.payCallback(request);
+// if(null != map){
+// String out_trade_no = map.get("out_trade_no");
+// String order_id = map.get("trade_no");
+// String s = null;//icbcPayUtil.queryTransaction("", order_id);
+// if(!s.equals("") && !s.equals("2")){
+// //icbcPayUtil.answer(response);//回调应答
+// }
+// if(ToolUtil.isNotEmpty(out_trade_no) && ToolUtil.isNotEmpty(order_id) && s.equals("0")){
+// String[] split = out_trade_no.split(",");
+// Integer id = Integer.valueOf(split[0]);
+// Integer type = Integer.valueOf(split[1]);
+// orderLogisticsService.payOrderLogisticsSpreadCallback(id, order_id, 2);
+// }
+//
+// }
}catch (Exception e){
e.printStackTrace();
}
--
Gitblit v1.7.1