From 29d330f60667cb479058cd640049dd6720eb5c87 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 06 二月 2024 17:01:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev
---
UserIGOTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/api/OrderController.java | 667 +++++++++++++++++++++++++++++++++++--------------------
1 files changed, 422 insertions(+), 245 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 4c810bb..dae9c77 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
@@ -1,5 +1,6 @@
package com.stylefeng.guns.modular.api;
+import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.stylefeng.guns.core.util.ToolUtil;
@@ -11,14 +12,18 @@
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.*;
import com.stylefeng.guns.modular.system.util.*;
+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;
@@ -86,19 +91,16 @@
private IOrderCharteredCarService orderCharteredCarService;
@Autowired
- private PushMinistryOfTransportUtil pushMinistryOfTransportUtil;
+ private ITransactionDetailsService transactionDetailsService;
@Autowired
- private ITransactionDetailsService transactionDetailsService;
+ private IPaymentRecordService paymentRecordService;
@Autowired
private IOrderCancelService orderCancelService;
@Autowired
private PayMoneyUtil payMoneyUtil;
-
- @Value("${pushMinistryOfTransport}")
- private boolean pushMinistryOfTransport;
@Value("${filePath}")
@@ -115,12 +117,15 @@
@ApiImplicitParams({
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil<List<OrderStatusWarpper>> queryServingOrder(HttpServletRequest request){
+ public ResultUtil<List<OrderStatusWarpper>> queryServingOrder(Integer language, HttpServletRequest request){
try {
Integer uid = userInfoService.getUserIdFormRedis(request);
if(null == uid){
return ResultUtil.tokenErr();
}
+ UserInfo userInfo = userInfoService.selectById(uid);
+ userInfo.setLanguage(language);
+ userInfoService.updateById(userInfo);
List<OrderStatusWarpper> data = new ArrayList<>();
List<OrderPrivateCar> orderPrivateCars = orderPrivateCarService.queryOrder(uid, 1, 2, 3, 4, 5, 6, 7, 11, 12);
for(OrderPrivateCar orderPrivateCar : orderPrivateCars){
@@ -182,7 +187,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){
@@ -191,19 +196,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));
@@ -228,18 +233,33 @@
@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<TravelRecordWarpper>> queryMyTravelRecord(Integer pageNum, Integer size, HttpServletRequest request){
+ public ResultUtil<List<TravelRecordWarpper>> queryMyTravelRecord(Integer pageNum, Integer size, Integer language, HttpServletRequest request){
try {
Integer uid = userInfoService.getUserIdFormRedis(request);
if(null == uid){
return ResultUtil.tokenErr();
}
+ 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>> list = orderPrivateCarService.queryMyTravelRecord(uid);//专车
- List<Map<String, Object>> list1 = orderTaxiService.queryMyTravelRecord(uid);//出租车
- List<Map<String, Object>> list2 = orderCrossCityService.queryMyTravelRecord(uid);//跨城车
- List<Map<String, Object>> list3 = orderLogisticsService.queryMyTravelRecord(uid);//小件物流
+ 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 ? "Ride order cancelled" : "Commande de trajet annulée");
+ }
+ if(4 == orderType){
+ map.put("name", language == 1 ? "包裹订单取消" : language == 2 ? "Parcel order cancellation" : "Annulation de commande de livraison");
+ }
+ }
+ List<Map<String, Object>> list = orderPrivateCarService.queryMyTravelRecord(language, uid);//专车
+ for (Map<String, Object> map : list) {
+ map.put("name", name);
+ }
+ name = language == 1 ? "包裹" : language == 2 ? "Delivery" : "Livraison";
+ List<Map<String, Object>> list3 = orderLogisticsService.queryMyTravelRecord(language, uid);//小件物流
+ for (Map<String, Object> map : list3) {
+ map.put("name", name);
+ }
List<TransactionDetails> transactionDetails = transactionDetailsService.selectList(new EntityWrapper<TransactionDetails>().eq("state", 1)
.eq("type", 1).eq("userType", 1).eq("userId", uid).eq("orderType", 3).like("remark", "%跨城订单取消退款%"));
List<Map<String, Object>> list4 = new ArrayList<>();
@@ -247,16 +267,16 @@
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);
}
list.addAll(maps);
- list.addAll(list1);
- list.addAll(list2);
+// list.addAll(list1);
+// list.addAll(list2);
list.addAll(list3);
- list.addAll(list4);
+// list.addAll(list4);
List<TravelRecordWarpper> orderWarpper = TravelRecordWarpper.getTravelRecordWarpper(list);
@@ -303,7 +323,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;
@@ -316,37 +336,37 @@
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);
- break;
- case 3://跨城
- list = orderCrossCityService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
- break;
+// case 2://出租车
+// list = orderTaxiService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
+// break;
+// case 3://跨城
+// 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);
- break;
+// case 5://跨城小件物流
+// list = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType);
+// break;
}
}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);
- list.addAll(list1);
- //跨城
- List<Map<String, Object>> list2 = orderCrossCityService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
- list.addAll(list2);
+// //出租车
+// List<Map<String, Object>> list1 = orderTaxiService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid);
+// list.addAll(list1);
+// //跨城
+// 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);
- list.addAll(list4);
+// //跨城小件物流
+// List<Map<String, Object>> list4 = orderLogisticsService.queryInvoiceOrder(type, startTime, endTime, startMoney, endMoney, uid, orderType);
+// list.addAll(list4);
}
//分页
@@ -378,13 +398,18 @@
@ApiImplicitParams({
@ApiImplicitParam(value = "订单id", name = "id", required = true, dataType = "int"),
@ApiImplicitParam(value = "订单类型(1=专车,2=出租车)", name = "orderType", required = true, dataType = "int"),
+ @ApiImplicitParam(value = "语言类型(1=简体中文,2=英语,3=法语)", name = "language", required = false, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil pushOrderTaxi(Integer id, Integer orderType){
+ public ResultUtil pushOrderTaxi(Integer id, Integer orderType, Integer language, HttpServletRequest request){
try {
+ Integer uid = userInfoService.getUserIdFormRedis(request);
+ if(null == uid){
+ return ResultUtil.tokenErr();
+ }
switch (orderType){
case 1:
- return orderPrivateCarService.pushOrderPrivateCar(id);
+ return orderPrivateCarService.pushOrderPrivateCar(uid, id, language);
case 2:
return orderTaxiService.pushOrderTaxi(id);
}
@@ -412,30 +437,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()){
//读取文件(字符流)
@@ -471,31 +505,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();
@@ -519,27 +561,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();
@@ -691,9 +742,9 @@
@ApiImplicitParam(value = "用户id", name = "uid", required = true, dataType = "int"),
@ApiImplicitParam(value = "附加参数{\"key\":\"value\"}", name = "content", required = true, dataType = "string")
})
- public ResultUtil weChatPay(Integer orderId, Integer orderType, Integer type, Integer userType, Integer uid, String content){
+ public ResultUtil weChatPay(Integer orderId, Integer orderType, Integer type, Integer userType, Integer uid, String content, Integer language){
try {
- return orderService.weChatPay(orderId, orderType, type, userType, uid, content);
+ return orderService.weChatPay(orderId, orderType, type, userType, uid, content, language);
}catch (Exception e){
e.printStackTrace();
return ResultUtil.runErr();
@@ -788,11 +839,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:
@@ -824,9 +875,10 @@
@ApiImplicitParam(value = "订单类型(1=专车,2=出租车,3=跨城)", name = "orderType", required = true, dataType = "int"),
@ApiImplicitParam(value = "取消原因", name = "reason", required = true, dataType = "string"),
@ApiImplicitParam(value = "备注", name = "remark", required = false, dataType = "string"),
+ @ApiImplicitParam(value = "语言类型(1=简体中文,2=英语,3=法语)", name = "language", required = false, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil addCancle(Integer id, Integer orderType, String reason, String remark, HttpServletRequest request){
+ public ResultUtil addCancle(Integer id, Integer orderType, String reason, String remark, Integer language, HttpServletRequest request){
try {
Integer uid = userInfoService.getUserIdFormRedis(request);
if(null == uid){
@@ -834,17 +886,17 @@
}
switch (orderType){
case 1:
- return orderPrivateCarService.addCancle(id, reason, remark, uid);
- case 2:
- return orderTaxiService.addCancle(id, reason, remark, uid);
- case 3:
- return orderCrossCityService.addCancle(id, reason, remark, uid);
+ return orderPrivateCarService.addCancle(id, reason, remark, uid, language);
+// case 2:
+// return orderTaxiService.addCancle(id, reason, remark, uid);
+// case 3:
+// return orderCrossCityService.addCancle(id, reason, remark, uid);
case 4:
- return orderLogisticsService.addCancle(id, reason, remark, uid);
- case 5:
- return orderLogisticsService.addCancle(id, reason, remark, uid);
- case 6:
- return orderCharteredCarService.addCancle(id, reason, remark, uid);
+ return orderLogisticsService.addCancle(id, reason, remark, uid, language);
+// case 5:
+// return orderLogisticsService.addCancle(id, reason, remark, uid);
+// case 6:
+// return orderCharteredCarService.addCancle(id, reason, remark, uid);
}
return ResultUtil.success();
}catch (Exception e){
@@ -852,6 +904,47 @@
return ResultUtil.runErr();
}
}
+
+
+ /**
+ * 取消订单退款回调
+ * @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;
+ }
+ }
+
@@ -863,16 +956,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=手机支付,2=银行卡支付,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, 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){
@@ -880,11 +974,11 @@
}
switch (orderType){
case 1:
- return orderPrivateCarService.cancleOrderPrivateCar(id, payType, cancleId, type);
- case 2:
- return orderTaxiService.cancleOrderTaxi(id, payType, cancleId, type);
- case 3:
- return orderCrossCityService.cancleOrderCrossCity(id, payType, cancleId, type);
+ return orderPrivateCarService.cancleOrderPrivateCar(id, payType, bankCardId, cancleId, type, language);
+// case 2:
+// return orderTaxiService.cancleOrderTaxi(id, payType, cancleId, type);
+// case 3:
+// return orderCrossCityService.cancleOrderCrossCity(id, payType, cancleId, type);
}
return ResultUtil.success();
}catch (Exception e){
@@ -910,15 +1004,16 @@
@ApiImplicitParam(value = "司机id", name = "driverId", required = true, dataType = "int"),
@ApiImplicitParam(value = "投诉原因", name = "reason", required = true, dataType = "String"),
@ApiImplicitParam(value = "投诉描述", name = "description", required = true, dataType = "String"),
+ @ApiImplicitParam(value = "语言类型(1=简体中文,2=英语,3=法语)", name = "language", required = false, dataType = "int"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil complaintService(Integer driverId, String reason, String description, HttpServletRequest request){
+ public ResultUtil complaintService(Integer driverId, String reason, String description, Integer language, HttpServletRequest request){
try {
Integer uid = userInfoService.getUserIdFormRedis(request);
if(null == uid){
return ResultUtil.tokenErr();
}
- complaintService.saveData(driverId, reason, description, uid);
+ complaintService.saveData(driverId, reason, description, uid, language);
return ResultUtil.success();
}catch (Exception e){
e.printStackTrace();
@@ -953,18 +1048,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){
@@ -993,7 +1088,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){
@@ -1002,17 +1097,17 @@
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 4:
-// list = orderLogisticsService.queryCoupon(orderId, uid, pageNum, size);
+// 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(language,orderId, uid, pageNum, size);
+ break;
// case 5:
// list = orderLogisticsService.queryCoupon(orderId, uid, pageNum, size);
// break;
@@ -1036,16 +1131,17 @@
*/
@ResponseBody
@PostMapping("/api/taxi/payTaxiOrder")
- @ApiOperation(value = "订单完成支付订单操作", tags = {"用户端-出租车", "用户端-专车", "用户端-跨城", "用户端-小件物流"}, notes = "")
+ @ApiOperation(value = "订单完成支付订单操作【1.1】", tags = {"用户端-出租车", "用户端-专车", "用户端-跨城", "用户端-小件物流"}, notes = "")
@ApiImplicitParams({
@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, 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){
@@ -1053,15 +1149,15 @@
}
switch (orderType){
case 1:
- return orderPrivateCarService.payPrivateCarOrder(payType, orderId, couponId, type);
- case 2:
- return orderTaxiService.payTaxiOrder(payType, orderId, couponId, type);
- case 3:
- return orderCrossCityService.payCrossCityOrder(payType, orderId, couponId, type);
+ 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, orderId, type);
- case 5:
- return orderLogisticsService.payLogisticsOrder(payType, orderId, type);
+ return orderLogisticsService.payLogisticsOrder(payType, bankCardId, orderId,couponId, type, language);
+// case 5:
+// return orderLogisticsService.payLogisticsOrder(payType, orderId, type, language);
}
return ResultUtil.success();
}catch (Exception e){
@@ -1089,24 +1185,15 @@
@ApiImplicitParam(value = "评价内容", name = "content", required = false, dataType = "String"),
@ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
})
- public ResultUtil orderEvaluate(Integer orderId, Integer orderType, Integer fraction, String content){
+ public ResultUtil orderEvaluate(Integer orderId, Integer orderType, Integer fraction, String content, Integer language){
try {
- ResultUtil resultUtil = orderEvaluateService.saveData(orderId, orderType, fraction, content);
+ ResultUtil resultUtil = orderEvaluateService.saveData(orderId, orderType, fraction, content, language);
if(resultUtil.getCode() == 200){
switch (orderType){
case 1:
OrderPrivateCar orderPrivateCar = orderPrivateCarService.selectById(orderId);
orderPrivateCar.setState(9);
orderPrivateCarService.updateById(orderPrivateCar);
- new Thread(new Runnable() {
- @Override
- public void run() {
- if(pushMinistryOfTransport){//上传数据
- pushMinistryOfTransportUtil.ratedPassenger(Integer.valueOf(resultUtil.getData().toString()));
- pushMinistryOfTransportUtil.ratedDriver(orderPrivateCar.getDriverId());
- }
- }
- }).start();
break;
case 2:
OrderTaxi orderTaxi = orderTaxiService.selectById(orderId);
@@ -1173,13 +1260,14 @@
@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){
+ public ResultUtil shareRedEnvelope(Integer orderId, Integer orderType, Integer language){
try {
switch (orderType){
case 1:
- return orderPrivateCarService.shareRedEnvelope(orderId);
+ return orderPrivateCarService.shareRedEnvelope(orderId, language);
case 2:
return orderTaxiService.shareRedEnvelope(orderId);
case 3:
@@ -1197,38 +1285,60 @@
/**
* 取消订单微信回调
- * @param request
+ * @param callbackRequest
*/
@ResponseBody
@PostMapping("/base/wxCancelOrderTaxi")
- public void wxCancelOrderTaxi(HttpServletRequest request, HttpServletResponse response){
+ public CallbackResponse wxCancelOrderTaxi(@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");
-
+ /**
+ * 指示服务是否成功或付费的总体请求代码。。
+ * 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)){
- String[] split = out_trade_no.split("_");
- Integer id = Integer.valueOf(split[0]);
- Integer type = Integer.valueOf(split[1]);
+ Integer type = 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){
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);
+ callbackResponse.setStatus_code("183");
+ callbackResponse.setStatus_description("Payment processed successfully");
+ callbackResponse.setReceipt_number(UUIDUtil.getRandomCode(16));
}
- response.getOutputStream().print("success");
+ }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;
}
@@ -1240,76 +1350,100 @@
@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();
}
}
+
/**
* 完成订单微信支付回调
- * @param request
+ * @param
*/
@ResponseBody
@PostMapping("/base/wxPayOrderTaxi")
- public void wxPayOrderTaxi(HttpServletRequest request, HttpServletResponse response){
+ public CallbackResponse wxPayOrderTaxi(@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");
+ /**
+ * 指示服务是否成功或付费的总体请求代码。。
+ * 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)){
- String[] split = out_trade_no.split("_");
- Integer id = Integer.valueOf(split[0]);
- Integer type = Integer.valueOf(split[1]);
- switch (type){
+ 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 (orderType){
case 1:
- orderPrivateCarService.payOrderPrivateCarCallback(id, order_id, 1);
+ 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);
+ orderLogisticsService.payOrderLogisticsCallback(id, order_id, language);
break;
- case 5:
- orderLogisticsService.payOrderLogisticsCallback(id, order_id, 1);
- break;
+// case 5:
+// orderLogisticsService.payOrderLogisticsCallback(id, order_id, 1, language);
+// break;
}
- response.getOutputStream().print("success");
+ 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));
}
+ }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;
}
@@ -1329,22 +1463,23 @@
String[] split = out_trade_no.split("_");
Integer id = Integer.valueOf(split[0]);
Integer type = Integer.valueOf(split[1]);
+ Integer language = Integer.valueOf(split[2]);
switch (type){
- case 1:
- orderPrivateCarService.payOrderPrivateCarCallback(id, order_id, 2);
- 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);
- break;
- case 5:
- orderLogisticsService.payOrderLogisticsCallback(id, order_id, 2);
- 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;
@@ -1363,30 +1498,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;
}
@@ -1398,24 +1552,47 @@
@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();
}
}
+
+
+
+ @ResponseBody
+ @PostMapping("/base/IGO/tinggPayoutCallback")
+ public PayoutCallbackResponse tinggPayoutCallback(@RequestBody PayoutCallbackRequest request){
+ 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 beepTransactionID = packet.getBeepTransactionID();
+ String payerTransactionID = packet.getPayerTransactionID();
+ results.setBeepTransactionID(beepTransactionID);
+ results.setPayerTransactionID(payerTransactionID);
+ results.setStatusCode("188");
+ results.setStatusDescription("Response was received");
+ payoutCallbackResponse.setResults(results);
+ return payoutCallbackResponse;
+ }
}
--
Gitblit v1.7.1