Commit 1738bc65 authored by hanfeng's avatar hanfeng

Merge remote-tracking branch 'origin/dev' into dev

parents 91ab69bc 6a9fddc7
...@@ -69,7 +69,7 @@ public class GlobalExceptionHandler extends ResponseEntityExceptionHandler { ...@@ -69,7 +69,7 @@ public class GlobalExceptionHandler extends ResponseEntityExceptionHandler {
if(0 == ex.getStatus()) { if(0 == ex.getStatus()) {
response.setStatus(500); response.setStatus(500);
} }
HttpRequestUtil.httpGet("http://10.5.52.3:8765/api/universal/mail/app/unauth/send?toUser=jiaoruizhen@126.com&subject=服务器异常&content=" + ex); HttpRequestUtil.httpGet("http://10.5.52.3:8765/api/universal/mail/app/unauth/send?toUser=jiaoruizhen@126.com&subject=服务器异常&content=" + ex.getStackTrace().toString());
return new BaseResponse(ex.getStatus(), ex.getMessage()); return new BaseResponse(ex.getStatus(), ex.getMessage());
} }
...@@ -85,7 +85,7 @@ public class GlobalExceptionHandler extends ResponseEntityExceptionHandler { ...@@ -85,7 +85,7 @@ public class GlobalExceptionHandler extends ResponseEntityExceptionHandler {
HttpRequestUtil.httpGet("http://10.5.52.3:8765/api/universal/mail/app/unauth/send?toUser=jiaoruizhen@126.com&subject=服务器异常&content=" + stringWriter.toString()); HttpRequestUtil.httpGet("http://10.5.52.3:8765/api/universal/mail/app/unauth/send?toUser=jiaoruizhen@126.com&subject=服务器异常&content=" + stringWriter.toString());
return new BaseResponse(5000, "Server exception: " + ex.getMessage()); return new BaseResponse(5000, "Server exception: " + ex.getMessage());
} }
HttpRequestUtil.httpGet("http://10.5.52.3:8765/api/universal/mail/app/unauth/send?toUser=jiaoruizhen@126.com&subject=服务器异常&content=" + ex); HttpRequestUtil.httpGet("http://10.5.52.3:8765/api/universal/mail/app/unauth/send?toUser=jiaoruizhen@126.com&subject=服务器异常&content=" + ex.getStackTrace().toString());
return new BaseResponse(CommonConstants.EX_OTHER_CODE, ex.getMessage()); return new BaseResponse(CommonConstants.EX_OTHER_CODE, ex.getMessage());
} }
} }
...@@ -39,7 +39,7 @@ public class PlatformExceptionHandler { ...@@ -39,7 +39,7 @@ public class PlatformExceptionHandler {
return assembleResult(ObjectRestResponse.createFailedResult(5000, "服务器开小差了,请稍后重试!"), "Server exception: " + e.getMessage()); return assembleResult(ObjectRestResponse.createFailedResult(5000, "服务器开小差了,请稍后重试!"), "Server exception: " + e.getMessage());
} }
log.error("Server exception: ", e); log.error("Server exception: ", e);
HttpRequestUtil.httpGet("http://10.5.52.3:8765/api/universal/mail/app/unauth/send?toUser=jiaoruizhen@126.com&subject=服务器异常&content=" + e); HttpRequestUtil.httpGet("http://10.5.52.3:8765/api/universal/mail/app/unauth/send?toUser=jiaoruizhen@126.com&subject=服务器异常&content=" + e.getStackTrace().toString());
return assembleResult(ObjectRestResponse.createFailedResult(5000, "服务器开小差了,请稍后重试!"), "Server exception: " + e.getMessage()); return assembleResult(ObjectRestResponse.createFailedResult(5000, "服务器开小差了,请稍后重试!"), "Server exception: " + e.getMessage());
} }
......
...@@ -218,7 +218,7 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper, A ...@@ -218,7 +218,7 @@ public class AppUserSellingWaterBiz extends BaseBiz<AppUserSellingWaterMapper, A
log.info("租车订单完成-----完成价格大于支付价格"); log.info("租车订单完成-----完成价格大于支付价格");
continue; continue;
} }
price=price.subtract(sellingWater.getPrice()); price=sellingWater.getPrice().subtract(price);
Integer extract=sellingWater.getExtract(); Integer extract=sellingWater.getExtract();
log.info("租车订单完成-----price====="+price+"---extract===="+extract); log.info("租车订单完成-----price====="+price+"---extract===="+extract);
BigDecimal commission = price.multiply(new BigDecimal(extract + "")).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP); BigDecimal commission = price.multiply(new BigDecimal(extract + "")).divide(new BigDecimal("100"), 2, BigDecimal.ROUND_HALF_UP);
......
...@@ -82,7 +82,7 @@ FROM ...@@ -82,7 +82,7 @@ FROM
and `waiting`= #{wating} and <![CDATA[ and `waiting`= #{wating} and <![CDATA[
o.`type`<>1 ]]> o.`type`<>1 ]]>
</if> </if>
ORDER BY `crt_time` ORDER BY `crt_time` DESC
</select> </select>
<select id="selectSellingWaterPage" <select id="selectSellingWaterPage"
resultType="com.github.wxiaoqi.security.admin.dto.UserSellingWaterAdminDTO"> resultType="com.github.wxiaoqi.security.admin.dto.UserSellingWaterAdminDTO">
......
...@@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil; ...@@ -4,7 +4,6 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.bean.copier.CopyOptions; import cn.hutool.core.bean.copier.CopyOptions;
import cn.hutool.core.collection.CollectionUtil; import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.alibaba.druid.sql.visitor.functions.If;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.github.wxiaoqi.security.admin.feign.UserFeign; import com.github.wxiaoqi.security.admin.feign.UserFeign;
...@@ -24,7 +23,6 @@ import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum; ...@@ -24,7 +23,6 @@ import com.xxfc.platform.order.contant.enumerate.OrderStatusEnum;
import com.xxfc.platform.order.entity.*; import com.xxfc.platform.order.entity.*;
import com.xxfc.platform.order.mapper.OrderVehicaleCrosstownMapper; import com.xxfc.platform.order.mapper.OrderVehicaleCrosstownMapper;
import com.xxfc.platform.order.pojo.DedDetailDTO; import com.xxfc.platform.order.pojo.DedDetailDTO;
import com.xxfc.platform.order.pojo.account.OrderAccountDeduction;
import com.xxfc.platform.order.pojo.account.OrderAccountDetail; import com.xxfc.platform.order.pojo.account.OrderAccountDetail;
import com.xxfc.platform.order.pojo.mq.OrderMQDTO; import com.xxfc.platform.order.pojo.mq.OrderMQDTO;
import com.xxfc.platform.order.pojo.order.CheckUserInfoDto; import com.xxfc.platform.order.pojo.order.CheckUserInfoDto;
...@@ -40,9 +38,7 @@ import com.xxfc.platform.vehicle.feign.VehicleFeign; ...@@ -40,9 +38,7 @@ import com.xxfc.platform.vehicle.feign.VehicleFeign;
import com.xxfc.platform.vehicle.pojo.CompanyDetail; import com.xxfc.platform.vehicle.pojo.CompanyDetail;
import com.xxfc.platform.vehicle.pojo.VehicleArrivalVo; import com.xxfc.platform.vehicle.pojo.VehicleArrivalVo;
import com.xxfc.platform.vehicle.pojo.VehicleDepartureVo; import com.xxfc.platform.vehicle.pojo.VehicleDepartureVo;
import jodd.util.StringUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.map.HashedMap; import org.apache.commons.collections4.map.HashedMap;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.assertj.core.util.Lists; import org.assertj.core.util.Lists;
...@@ -296,6 +292,9 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp ...@@ -296,6 +292,9 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
try { try {
RestResponse restResponse = vehicleFeign.departureBySmall(vehicleDepartureVo); RestResponse restResponse = vehicleFeign.departureBySmall(vehicleDepartureVo);
if (restResponse.getStatus() != 200) {
return ObjectRestResponse.createFailedResult(1001, restResponse.getMessage());
}
log.error("返回信息: " + restResponse.toString()); log.error("返回信息: " + restResponse.toString());
} catch (Exception e) { } catch (Exception e) {
return ObjectRestResponse.createFailedResult(1001, e.getMessage()); return ObjectRestResponse.createFailedResult(1001, e.getMessage());
...@@ -312,7 +311,10 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp ...@@ -312,7 +311,10 @@ public class OrderVehicleCrosstownBiz extends BaseBiz<OrderVehicaleCrosstownMapp
vehicleArrivalVo.setBookRecordId(orderRentVehicleDetail.getBookRecordId()); vehicleArrivalVo.setBookRecordId(orderRentVehicleDetail.getBookRecordId());
try { try {
RestResponse restResponse = vehicleFeign.arrivalBySmall(vehicleArrivalVo); RestResponse restResponse = vehicleFeign.arrivalBySmall(vehicleArrivalVo);
log.info("返回信息: " + restResponse.toString()); if (restResponse.getStatus() != 200) {
return ObjectRestResponse.createFailedResult(1001, restResponse.getMessage());
}
log.error("返回信息: " + restResponse.toString());
} catch (Exception e) { } catch (Exception e) {
return ObjectRestResponse.createFailedResult(500, e.getMessage()); return ObjectRestResponse.createFailedResult(500, e.getMessage());
} }
......
...@@ -331,6 +331,7 @@ public class BackStageOrderController extends CommonBaseController implements Us ...@@ -331,6 +331,7 @@ public class BackStageOrderController extends CommonBaseController implements Us
for (OrderPageVO orderPageVO : pageDataVO.getData()) { for (OrderPageVO orderPageVO : pageDataVO.getData()) {
if (orderPageVO.getOrderRentVehicleDetail() != null && orderPageVO.getOrderRentVehicleDetail().getVehicleId() != null) { if (orderPageVO.getOrderRentVehicleDetail() != null && orderPageVO.getOrderRentVehicleDetail().getVehicleId() != null) {
ObjectRestResponse<Vehicle> restResponse = vehicleFeign.get(orderPageVO.getOrderRentVehicleDetail().getVehicleId()); ObjectRestResponse<Vehicle> restResponse = vehicleFeign.get(orderPageVO.getOrderRentVehicleDetail().getVehicleId());
log.info("获取车辆信息返回消息:{}", restResponse.getMessage());
if (restResponse.getData() != null) { if (restResponse.getData() != null) {
orderPageVO.setVehicalNumberPlat(restResponse.getData().getNumberPlate()); orderPageVO.setVehicalNumberPlat(restResponse.getData().getNumberPlate());
orderPageVO.setCode(restResponse.getData().getCode()); orderPageVO.setCode(restResponse.getData().getCode());
......
...@@ -401,7 +401,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes ...@@ -401,7 +401,7 @@ public class BaseOrderController extends CommonBaseController implements UserRes
}}); }});
orv.setAmount(baseOrder.getRealAmount().multiply(new BigDecimal("100")).intValue()); orv.setAmount(baseOrder.getRealAmount().multiply(new BigDecimal("100")).intValue());
orv.setOrderNo(baseOrder.getNo()); orv.setOrderNo(baseOrder.getNo());
orv.setRefundDesc(""); orv.setRefundDesc("退款");
orv.setRefundAmount(refundAmount.multiply(new BigDecimal("100")).intValue()); orv.setRefundAmount(refundAmount.multiply(new BigDecimal("100")).intValue());
ObjectRestResponse<String> result = thirdFeign.refund(orv); ObjectRestResponse<String> result = thirdFeign.refund(orv);
return ObjectRestResponse.succ(result); return ObjectRestResponse.succ(result);
......
...@@ -260,7 +260,6 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -260,7 +260,6 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
} }
return ObjectRestResponse.createDefaultFail().getMessage(); return ObjectRestResponse.createDefaultFail().getMessage();
} }
/** /**
* 支付宝生成支付信息 * 支付宝生成支付信息
* *
...@@ -319,7 +318,6 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -319,7 +318,6 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
//这里和普通的接口调用不同,使用的是sdkExecute //这里和普通的接口调用不同,使用的是sdkExecute
AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request); AlipayTradeAppPayResponse response = alipayClient.sdkExecute(request);
log.info(response.getBody());//就是orderString 可以直接给客户端请求,无需再做处理。 log.info(response.getBody());//就是orderString 可以直接给客户端请求,无需再做处理。
return response.getBody(); return response.getBody();
} catch (AlipayApiException e) { } catch (AlipayApiException e) {
log.error(e.getMessage(), e);; log.error(e.getMessage(), e);;
...@@ -341,12 +339,12 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -341,12 +339,12 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
"\"amount\": \"" + realAmount.toString() + "\" }"); "\"amount\": \"" + realAmount.toString() + "\" }");
request.setNotifyUrl(notifyUrl);//异步通知地址,必填,该接口只通过该参数进行异步通知 request.setNotifyUrl(notifyUrl);//异步通知地址,必填,该接口只通过该参数进行异步通知
AlipayFundAuthOrderAppFreezeResponse response = alipayClient.sdkExecute(request);//注意这里是sdkExecute,可以获取签名参数 AlipayFundAuthOrderAppFreezeResponse response = alipayClient.sdkExecute(request);//注意这里是sdkExecute,可以获取签名参数
log.info("response: {}" + response.getBody());//签名后的参数,直接入参到
if (response.isSuccess()) { if (response.isSuccess()) {
log.info("调用成功"); log.info("预授权冻结调用成功");
log.info("response: {}" + response.getBody());//签名后的参数,直接入参到
return response.getBody(); return response.getBody();
} else { } else {
log.info("调用失败"); log.info("预授权冻结调用失败");
return null; return null;
} }
} }
...@@ -423,6 +421,7 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -423,6 +421,7 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
request.setGrantType("authorization_code"); request.setGrantType("authorization_code");
request.setCode(code); request.setCode(code);
AlipaySystemOauthTokenResponse response = alipayClient.execute(request); AlipaySystemOauthTokenResponse response = alipayClient.execute(request);
log.info("获取用户token调用成功,获取用户信息 {}", response.getBody());
if(response.isSuccess()){ if(response.isSuccess()){
log.info("获取用户token调用成功,获取用户信息 {}", response.getBody()); log.info("获取用户token调用成功,获取用户信息 {}", response.getBody());
if(response.getAccessToken() != null) { if(response.getAccessToken() != null) {
...@@ -478,10 +477,12 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -478,10 +477,12 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
"\"is_mobile\":\"true\"" + "\"is_mobile\":\"true\"" +
" }"); " }");
AlipayUserInfoAuthResponse response = alipayClient.execute(request); AlipayUserInfoAuthResponse response = alipayClient.execute(request);
log.info("解冻预授权response: {}" + response.getBody());
log.info(response.toString());
if(response.isSuccess()){ if(response.isSuccess()){
System.out.println("调用成功"); log.info("用户授权调用成功");
} else { } else {
System.out.println("调用失败"); log.info("用户授权调用失败");
} }
return response.getBody(); return response.getBody();
} }
...@@ -501,15 +502,14 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -501,15 +502,14 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
//选填字段,信用授权订单,针对信用全免订单,传入该值完结信用订单,形成芝麻履约记录 //选填字段,信用授权订单,针对信用全免订单,传入该值完结信用订单,形成芝麻履约记录
// model.setExtraParam("{\"unfreezeBizInfo\":\"{\\\"bizComplete\\\":\\\"true\\\"}\"}"); // model.setExtraParam("{\"unfreezeBizInfo\":\"{\\\"bizComplete\\\":\\\"true\\\"}\"}");
request.setBizModel(model); request.setBizModel(model);
request.setNotifyUrl(notifyUrl);//异步通知地址,必填,该接口只通过该参数进行异步通知 // request.setNotifyUrl(notifyUrl);//异步通知地址,必填,该接口只通过该参数进行异步通知
AlipayFundAuthOrderUnfreezeResponse response = alipayClient.execute(request); AlipayFundAuthOrderUnfreezeResponse response = alipayClient.execute(request);
log.info("response: {}" + response.getBody()); log.info("解冻预授权response: {}" + response.getBody());
if (response.isSuccess()) { if (response.isSuccess()) {
log.info("调用成功"); log.info("解冻预授权调用成功");
log.info("response: {}" + response.getBody());//签名后的参数,直接入参到
return true; return true;
} else { } else {
log.info("调用失败"); log.info("解冻预授权调用失败");
return false; return false;
} }
} }
...@@ -526,16 +526,15 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -526,16 +526,15 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
model.setOutRequestNo(serialNumber);//与支付宝的授权资金操作流水号不能同时为空,与冻结流水号相同 model.setOutRequestNo(serialNumber);//与支付宝的授权资金操作流水号不能同时为空,与冻结流水号相同
model.setRemark(refundReason); // 商户对本次撤销操作的附言描述,长度不超过100个字母或50个汉字 model.setRemark(refundReason); // 商户对本次撤销操作的附言描述,长度不超过100个字母或50个汉字
request.setBizModel(model); request.setBizModel(model);
request.setNotifyUrl(notifyUrl);//异步通知地址,必填,该接口只通过该参数进行异步通知 // request.setNotifyUrl(notifyUrl);//异步通知地址,必填,该接口只通过该参数进行异步通知
AlipayFundAuthOperationCancelResponse response = alipayClient.execute(request); AlipayFundAuthOperationCancelResponse response = alipayClient.execute(request);
log.info("response: {}" + response.getBody()); log.info("取消预授权response: {}" + response.getBody());
if (response.isSuccess()) { if (response.isSuccess()) {
log.info("调用成功"); log.info("取消预授权调用成功");
log.info("response: {}" + response.getBody());//签名后的参数,直接入参到
return response.getBody(); return response.getBody();
} else { } else {
log.info("调用失败"); log.info("取消预授权调用失败");
return null; return null;
} }
} }
...@@ -566,14 +565,14 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -566,14 +565,14 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
//如果需要从一笔授权中完成多笔订单支付,保持auth_no不变,不同订单根据outTradeNo进行标识,此时auth_confirm_mode不传或者传入NOT_COMPLETE;进行到最后一笔转支付时,auth_confirm_mode传入COMPLETE由支付宝完成剩余金额自动解冻,或者商户自行调用解冻接口将剩余金额解冻。 //如果需要从一笔授权中完成多笔订单支付,保持auth_no不变,不同订单根据outTradeNo进行标识,此时auth_confirm_mode不传或者传入NOT_COMPLETE;进行到最后一笔转支付时,auth_confirm_mode传入COMPLETE由支付宝完成剩余金额自动解冻,或者商户自行调用解冻接口将剩余金额解冻。
model.setAuthConfirmMode("NOT_COMPLETE");//传入该值用户剩余金额不会自动解冻 model.setAuthConfirmMode("NOT_COMPLETE");//传入该值用户剩余金额不会自动解冻
request.setBizModel(model); request.setBizModel(model);
request.setNotifyUrl(notifyUrl);//异步通知地址,必填,该接口只通过该参数进行异步通知 // request.setNotifyUrl(notifyUrl);//异步通知地址,必填,该接口只通过该参数进行异步通知
AlipayTradePayResponse response = alipayClient.execute(request); AlipayTradePayResponse response = alipayClient.execute(request);
log.info("预授权转支付response: {}" + response.getBody());
if (response.isSuccess()) { if (response.isSuccess()) {
log.info("response: {}" + response.getBody());
return true; return true;
} else { } else {
log.info("调用失败"); log.info("预授权转支付调用失败");
return false; return false;
} }
} }
...@@ -604,6 +603,7 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -604,6 +603,7 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
try { try {
log.info("支付宝退款中:outTradeNo = {}, tradNo = {}, refundAmount = {}, refundReason = {}", outTradeNo, tradNo, refundAmount, refundReason); log.info("支付宝退款中:outTradeNo = {}, tradNo = {}, refundAmount = {}, refundReason = {}", outTradeNo, tradNo, refundAmount, refundReason);
AlipayTradeRefundResponse response = alipayClient.execute(request); AlipayTradeRefundResponse response = alipayClient.execute(request);
log.info("APP支付退款response: {}" + response.getBody());
if (response.isSuccess()) { if (response.isSuccess()) {
return true; return true;
} else { } else {
...@@ -617,6 +617,30 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -617,6 +617,30 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
return false; return false;
} }
/**
* 查询预授权订单
* @param tradNo
* @throws AlipayApiException
*/
public ObjectRestResponse fundAuthQuery(String tradNo){
AlipayClient alipayClient = getAlipayClient();
AlipayFundAuthOperationDetailQueryRequest request = new AlipayFundAuthOperationDetailQueryRequest();
AlipayFundAuthOperationDetailQueryModel model = new AlipayFundAuthOperationDetailQueryModel();
//model.setAuthNo("2017120110002001390206804295"); // 支付宝资金授权订单号,在授权冻结成功时返回参数中获得
model.setOutOrderNo(tradNo); //商户的授权资金订单号,与支付宝的授权资金订单号不能同时为空
//model.setOperationId("20171201317348823902"); //支付宝的授权资金操作流水号,冻结成功同步返回
model.setOutRequestNo(tradNo);//商户的授权资金操作流水号,与支付宝的授权资金操作流水号不能同时为空,该值为冻结或解冻是的outRequestNo
request.setBizModel(model);
AlipayFundAuthOperationDetailQueryResponse response = null;
try {
response = alipayClient.execute(request);
log.info("response: {}"+response.getBody());
} catch (AlipayApiException e) {
e.printStackTrace();
}
return ObjectRestResponse.succ(response.getBody());
}
public static void main(String[] args) throws AlipayApiException { public static void main(String[] args) throws AlipayApiException {
OrderPayBiz orderPayBiz = new OrderPayBiz(); OrderPayBiz orderPayBiz = new OrderPayBiz();
OrderPayVo orderPayVo = new OrderPayVo(); OrderPayVo orderPayVo = new OrderPayVo();
...@@ -626,9 +650,11 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{ ...@@ -626,9 +650,11 @@ public class OrderPayBiz extends BaseBiz<OrderPayMapper, OrderPay>{
orderPayVo.setAmount(3); orderPayVo.setAmount(3);
orderPayVo.setBody("扣除租车订单费用"); orderPayVo.setBody("扣除租车订单费用");
orderPayVo.setSubject("租车订单交易费用"); orderPayVo.setSubject("租车订单交易费用");
//orderPayBiz.fundAuthOrderUnFreeze(orderPayVo, ""); //orderPayBiz.fundAuthOrderUnFreeze("201911150924550001122", "2019111510002001530506470085", 1, "退还违约金");
//orderPayBiz.alipayOrderRefund("20191024153859000003","2019102422001421530513773694", 2, "xxxx", ""); //orderPayBiz.alipayOrderRefund("20191024153859000003","2019102422001421530513773694", 2, "xxxx", "");
//orderPayBiz.tradePay(orderPayVo, ""); //orderPayBiz.tradePay("20191108195202000020", "2019110810002001710518149012", 120000,"退还押金", "退还押金");
//orderPayBiz.fundAuthCancel(orderPayVo, ""); //orderPayBiz.fundAuthCancel(orderPayVo, "");
//orderPayBiz.tradePay("20191114182254000019", "2019111410002001530505959461", 1,"扣除违约金", "扣除违约金");
orderPayBiz.fundAuthQuery("20191115092455000004");
} }
} }
...@@ -86,16 +86,39 @@ public class OrderRefundBiz extends BaseBiz<OrderRefundMapper, OrderRefund> { ...@@ -86,16 +86,39 @@ public class OrderRefundBiz extends BaseBiz<OrderRefundMapper, OrderRefund> {
boolean flag = false; boolean flag = false;
if (orderPay.getPayWay() == 2 && orderPay.getPayType() == 1) { if (orderPay.getPayWay() == 2 && orderPay.getPayType() == 1) {
log.info("======支付宝APP支付退款中==========="); log.info("======支付宝APP支付退款中===========");
flag = payBiz.alipayOrderRefund(out_trade_no, orderPay.getSerialNumber(), refundAmount, refundDesc, out_trade_no + System.currentTimeMillis()); flag = payBiz.alipayOrderRefund(out_trade_no, orderPay.getSerialNumber(), refundAmount, refundDesc,
out_trade_no + System.currentTimeMillis());
} else if (orderPay.getPayWay() == 2 && orderPay.getPayType() == 2) { } else if (orderPay.getPayWay() == 2 && orderPay.getPayType() == 2) {
log.info("======支付宝预授权支付退款中==========="); log.info("======支付宝预授权支付退款中===========");
//需要根据实际传过来的参数类型来进行解冻或者预授权转支付 //需要根据实际传过来的参数类型来进行解冻或者预授权转支付
if (orderRefundVo.getRefundAmount() != 0) { //解冻金额 if (orderRefundVo.getRefundAmount() != 0) { //解冻金额
flag = payBiz.fundAuthOrderUnFreeze(orderPay.getTradeNo() + System.currentTimeMillis(), orderPay.getSerialNumber(), orderRefundVo.getRefundAmount(), orderRefundVo.getRefundDesc()); flag = payBiz.fundAuthOrderUnFreeze(out_refund_no,
orderPay.getSerialNumber(), orderRefundVo.getRefundAmount(), orderRefundVo.getRefundDesc());
} }
//预授权转支付 //预授权转支付
if(orderRefundVo.getFreeze2PayAmount() != 0) { if(orderRefundVo.getFreeze2PayAmount() != null && orderRefundVo.getFreeze2PayAmount() != 0) {
flag = payBiz.tradePay(orderPay.getTradeNo() + System.currentTimeMillis(), orderPay.getSerialNumber(), orderRefundVo.getFreeze2PayAmount(), orderRefundVo.getFreeze2PayDesc(), orderRefundVo.getFreeze2PayDesc()); log.info("======预授权转支付===========");
String refundTradeNo = Snowflake.build() + "";
boolean isComplete = payBiz.tradePay(refundTradeNo,
orderPay.getSerialNumber(), orderRefundVo.getFreeze2PayAmount(),
orderRefundVo.getFreeze2PayDesc(), orderRefundVo.getFreeze2PayDesc());
if (isComplete) {
OrderRefund orderRefund = new OrderRefund();
BeanUtils.copyProperties(orderRefund, orderRefundVo);
if (StringUtils.isNotBlank(orderRefundVo.getFreeze2PayDesc())) {
orderRefund.setRefundDesc("预授权转支付:" + orderRefundVo.getFreeze2PayDesc());
} else {
orderRefund.setRefundDesc("预授权转支付");
}
orderRefund.setRefundAmount(orderRefundVo.getFreeze2PayAmount());
orderRefund.setUserId(orderPay.getUserId());
orderRefund.setStatus(2);
orderRefund.setFinishTime(System.currentTimeMillis());
orderRefund.setRefundTradeNo(refundTradeNo);
orderRefund.setOutRefundNo(out_trade_no);
orderRefund.setSerialNumber(orderPay.getSerialNumber());
insertSelective(orderRefund);
}
} }
} else if(orderPay.getPayWay() == 1){ } else if(orderPay.getPayWay() == 1){
log.info("======微信退款中==========="); log.info("======微信退款中===========");
......
...@@ -105,6 +105,11 @@ public class OrderPayController extends BaseController<OrderPayBiz,OrderPay> { ...@@ -105,6 +105,11 @@ public class OrderPayController extends BaseController<OrderPayBiz,OrderPay> {
return baseBiz.alipayNotify(); return baseBiz.alipayNotify();
} }
@PostMapping(value = "/app/unauth/notify/fundAuthQuery")
@IgnoreUserToken
public ObjectRestResponse fundAuthQuery(String tradNo){
return baseBiz.fundAuthQuery(tradNo);
}
@PostMapping("/app/unauth/transfer_account") @PostMapping("/app/unauth/transfer_account")
@IgnoreUserToken @IgnoreUserToken
......
...@@ -121,6 +121,11 @@ public class Vehicle { ...@@ -121,6 +121,11 @@ public class Vehicle {
*/ */
private String drivingLicensePath; private String drivingLicensePath;
/**
*行驶证副本
*/
private String drivingLicenseDuplicatePath;
/** /**
* 发动机号 * 发动机号
*/ */
......
...@@ -118,6 +118,11 @@ public class AddOrUpdateVehicleVo { ...@@ -118,6 +118,11 @@ public class AddOrUpdateVehicleVo {
*/ */
private String drivingLicensePath; private String drivingLicensePath;
/**
* 行驶副本
*/
private String drivingLicenseDuplicatePath;
/** /**
* 发动机号 * 发动机号
*/ */
......
...@@ -316,7 +316,7 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany ...@@ -316,7 +316,7 @@ public class BranchCompanyBiz extends BaseBiz<BranchCompanyMapper, BranchCompany
} }
} }
} catch (Exception e) { } catch (Exception e) {
log.error(e.getMessage(), e);; e.printStackTrace();
return RestResponse.codeAndMessage(10001, "网络异常!"); return RestResponse.codeAndMessage(10001, "网络异常!");
} }
return RestResponse.suc(); return RestResponse.suc();
......
...@@ -705,7 +705,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR ...@@ -705,7 +705,7 @@ public class VehicleBiz extends BaseBiz<VehicleMapper, Vehicle> implements UserR
DateTime startDay = DateTime.parse(bookVehicleVo.getBookStartDate(), DATE_TIME_FORMATTER); DateTime startDay = DateTime.parse(bookVehicleVo.getBookStartDate(), DATE_TIME_FORMATTER);
DateTime endDay = DateTime.parse(bookVehicleVo.getBookEndDate(), DATE_TIME_FORMATTER); DateTime endDay = DateTime.parse(bookVehicleVo.getBookEndDate(), DATE_TIME_FORMATTER);
//转换日期范围为列表,并检查是否合法 //转换日期范围为列表,并检查是否合法
fillDateList4DatePeriod(yearMonthAndDate, startDay, endDay); fillDateList4DatePeriod(yearMonthAndDate, DateTime.parse(startDay.toString(DEFAULT_DATE_TIME_FORMATTER), DEFAULT_DATE_TIME_FORMATTER), DateTime.parse(endDay.toString(DEFAULT_DATE_TIME_FORMATTER), DEFAULT_DATE_TIME_FORMATTER));
if (yearMonthAndDate.size() > 3) {//连续的日期最多夸3个月 if (yearMonthAndDate.size() > 3) {//连续的日期最多夸3个月
throw new BaseException(ResultCode.ONLY_BOOK_TWO_MONTH); throw new BaseException(ResultCode.ONLY_BOOK_TWO_MONTH);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment