mirror of
https://gitee.com/lab1024/smart-admin.git
synced 2025-10-02 18:26:38 +08:00
commit
c8cfdcb1c9
@ -5,7 +5,6 @@ import com.fasterxml.jackson.databind.ObjectMapper;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import net.lab1024.smartadmin.common.anno.OperateLog;
|
||||
import net.lab1024.smartadmin.common.constant.ResponseCodeConst;
|
||||
import net.lab1024.smartadmin.common.domain.ResponseDTO;
|
||||
import net.lab1024.smartadmin.common.heartbeat.StringUtil;
|
||||
import net.lab1024.smartadmin.constant.SwaggerTagConst;
|
||||
|
@ -3,6 +3,7 @@ package net.lab1024.smartadmin.module.system.royalcanin.good;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alipay.api.internal.util.AlipaySignature;
|
||||
import com.beust.jcommander.Parameter;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import net.lab1024.smartadmin.common.anno.OperateLog;
|
||||
@ -23,18 +24,22 @@ import net.lab1024.smartadmin.module.system.royalcanin.good.service.CartService;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.good.service.OrderService;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.orderMaster.OrderDatilListEntity;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.orderMaster.QueryEntity;
|
||||
import net.lab1024.smartadmin.module.system.wxpay.MyConfig;
|
||||
import net.lab1024.smartadmin.module.system.wxpay.WxpayService;
|
||||
import net.lab1024.smartadmin.module.system.wxpay.wxPayModel.WxPayEntity;
|
||||
import net.lab1024.smartadmin.util.GenerateSequenceUtil;
|
||||
import net.lab1024.smartadmin.util.MapRemoveNullUtil;
|
||||
import net.lab1024.smartadmin.util.SmartHttpUtil;
|
||||
import net.sf.json.JSONArray;
|
||||
import org.apache.http.client.methods.HttpPost;
|
||||
import org.apache.http.client.utils.URLEncodedUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.IOException;
|
||||
import java.net.URLEncoder;
|
||||
import java.util.*;
|
||||
|
||||
@Api(tags = {SwaggerTagConst.Admin.MANAGER_MALL_API})
|
||||
@ -129,7 +134,8 @@ public class OrderController {
|
||||
Map<String, String> returnMap = new HashMap<>();
|
||||
returnMap.put("orderNumber",ordersEntity.getOrderNo());
|
||||
returnMap.put("orderAmount",ordersEntity.getOrderAmount());
|
||||
return ResponseDTO.succData(returnMap,wxpayService.generateQRCode(wxPayEntity));
|
||||
// return ResponseDTO.succData(returnMap,wxpayService.generateQRCode(wxPayEntity));
|
||||
return ResponseDTO.succData(returnMap,wxpayService.testGenerateQRCode(wxPayEntity));
|
||||
}
|
||||
return ResponseDTO.wrap(OrderResponseCodeConst.GENERATE_ORDER_FAIL);
|
||||
}
|
||||
@ -198,7 +204,7 @@ public class OrderController {
|
||||
ordersEntity.setOrderNo(GenerateSequenceUtil.generateSequenceNo());
|
||||
ordersEntity.setOrderStatus("0");
|
||||
ordersEntity.setBasePoint(basePoint);
|
||||
|
||||
ordersEntity.setPayType("3");
|
||||
|
||||
if(orderService.generateOrder(ordersEntity,orderDatilListJson) == 1){
|
||||
wxPayEntity.setProduct_id(ordersEntity.getProductCode());
|
||||
@ -236,6 +242,15 @@ public class OrderController {
|
||||
return ResponseDTO.wrap(OrderResponseCodeConst.WITHOUT_ORDER);
|
||||
}
|
||||
}
|
||||
@ApiOperation(value = "重定向", notes = "重定向")
|
||||
@PostMapping("royalcanin/redirectUrlWXH5")
|
||||
public void redirectUrl(HttpServletRequest request, HttpServletResponse response,@RequestBody String url) throws IOException {
|
||||
response.addHeader("referer", MyConfig.NOTIFY_URL_H5);
|
||||
JSONObject jonUrl = JSONObject.parseObject(url);
|
||||
response.sendRedirect(jonUrl.getString("url"));
|
||||
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation(value = "重新支付(H5)", notes = "重新支付(H5)")
|
||||
@PostMapping("royalcanin/repayOrderWXH5")
|
||||
|
@ -13,4 +13,8 @@ public class QueryEntity {
|
||||
|
||||
private String phoneNumber;
|
||||
|
||||
private String page;
|
||||
|
||||
private String rows;
|
||||
|
||||
}
|
||||
|
@ -1,7 +1,6 @@
|
||||
package net.lab1024.smartadmin.module.system.wxpay;
|
||||
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.aliyun.oss.internal.SignUtils;
|
||||
import net.lab1024.smartadmin.common.heartbeat.StringUtil;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.MemberAccountService;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.good.model.OrderEntity;
|
||||
@ -10,7 +9,6 @@ import net.lab1024.smartadmin.module.system.royalcanin.good.service.OrderService
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.memberAccount.MemberAccountChangeEntity;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.notify.model.NotifyEntity;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.notify.service.NotifyService;
|
||||
import net.lab1024.smartadmin.module.system.royalcanin.orderMaster.QueryEntity;
|
||||
import net.lab1024.smartadmin.module.system.wxpay.sdk.WXPay;
|
||||
import net.lab1024.smartadmin.module.system.wxpay.sdk.WXPayUtil;
|
||||
import net.lab1024.smartadmin.module.system.wxpay.wxPayModel.WxPayEntity;
|
||||
@ -50,6 +48,27 @@ public class WxpayService {
|
||||
|
||||
String url = "https://miniapp-test.royalcanin.com.cn/rcmini/h5/";
|
||||
|
||||
private String urlNative = "https://api.mch.weixin.qq.com/v3/pay/transactions/native";
|
||||
|
||||
public String testGenerateQRCode(WxPayEntity wxPayEntity)throws Exception{
|
||||
String Authorization = "WECHATPAY2-SHA256-RSA2048";
|
||||
long timestamp = System.currentTimeMillis();
|
||||
SortedMap<String,String> data = new TreeMap<>();
|
||||
SortedMap<String, Integer> amount = new TreeMap<>();
|
||||
amount.put("total",Integer.parseInt(getMoney(wxPayEntity.getTotal_fee())));
|
||||
data.put("out_trade_no",wxPayEntity.getOut_trade_no());
|
||||
data.put("notify_url",config.notify_url);
|
||||
data.put("description","皇家宠物食品官方商城");
|
||||
data.put("appid",config.getAppID());
|
||||
data.put("mchid",config.getMchID());
|
||||
net.sf.json.JSONObject jsonObject = net.sf.json.JSONObject.fromObject(data);
|
||||
jsonObject.put("amount",amount);
|
||||
SortedMap<String ,String>hearder = new TreeMap<>();
|
||||
hearder.put("Accept","application/json");
|
||||
hearder.put("Authorization",Authorization +" mchid="+config.getMchID() +",nonce_str=" + WXPayUtil.generateNonceStr() + ",timestamp=" + timestamp + ",signature=" + WXPayUtil.generateSignature(data, config.getKey()) + ",serial_no=" + config.getKey());
|
||||
String sb = SmartHttpUtil.httpPostRaw(urlNative,jsonObject.toString(),hearder,"utf-8");
|
||||
return sb;
|
||||
}
|
||||
|
||||
|
||||
|
||||
@ -191,7 +210,7 @@ public class WxpayService {
|
||||
if (returnCode.equals("SUCCESS")) {
|
||||
returnMap.put("ok", "200");
|
||||
//拼接返回跳转地址
|
||||
String url= URLEncoder.encode(config.NOTIFY_URL_H5+"/myorder/usertion?orderNumber="+wxPayEntity.getOut_trade_no() + "&tradeType=MWEB","utf-8");
|
||||
String url= config.NOTIFY_URL_H5+"/myorder/usertion?orderNumber="+wxPayEntity.getOut_trade_no() + "&tradeType=MWEB";
|
||||
returnMap.put("url", response.get("mweb_url")+"&redirect_url="+url);
|
||||
return response.get("mweb_url") == null ? response.get("err_code_des"):returnMap.get("url");
|
||||
} else {
|
||||
|
Loading…
Reference in New Issue
Block a user