pos付款相关
This commit is contained in:
@@ -23,12 +23,14 @@ import cn.pluss.platform.merchantOrder.MerchantOrderService;
|
||||
import cn.pluss.platform.notice.NoticeService;
|
||||
import cn.pluss.platform.pay.PayService;
|
||||
import cn.pluss.platform.pos.BasePosReq;
|
||||
import cn.pluss.platform.pos.PosPay;
|
||||
import cn.pluss.platform.pos.PosTradeQueryReq;
|
||||
import cn.pluss.platform.pos.ReturnFundsReq;
|
||||
import cn.pluss.platform.ryx.pay.RyxPayService;
|
||||
import cn.pluss.platform.sxf.pay.SxfPayService;
|
||||
import cn.pluss.platform.user.impl.GeneralPushUtil;
|
||||
import cn.pluss.platform.userApp.UserAppService;
|
||||
import cn.pluss.platform.util.BeanUtils;
|
||||
import cn.pluss.platform.util.IpUtils;
|
||||
import cn.pluss.platform.util.StringUtil;
|
||||
import cn.pluss.platform.util.TokenUtil;
|
||||
@@ -47,6 +49,7 @@ import lombok.Setter;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Qualifier;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Lazy;
|
||||
import org.springframework.transaction.interceptor.TransactionAspectSupport;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@@ -441,24 +444,26 @@ public class MerchantOrderController {
|
||||
}
|
||||
/**
|
||||
* 博实结pos机反扫支付
|
||||
* @param merchantOrderDTO
|
||||
* @param
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/posScanPay")
|
||||
public Result<Object> posScanPay(HttpServletRequest request,@RequestBody MerChantOrderDTO merchantOrderDTO)throws Exception{
|
||||
public JSONObject posScanPay(HttpServletRequest request,@RequestBody BasePosReq req)throws Exception{
|
||||
//首先验签
|
||||
verify(merchantOrderDTO.getTimestamp(), merchantOrderDTO.getRequestId(), merchantOrderDTO.getAppId(), merchantOrderDTO.getToken(),
|
||||
merchantOrderDTO.getReqData());
|
||||
verify(req.getTimestamp(), req.getRequestId(), req.getAppId(), req.getToken(),
|
||||
req.getReqData());
|
||||
//拆分参数
|
||||
JSONObject jsonParam = JSONObject.parseObject(merchantOrderDTO.getReqData());
|
||||
Object sn = jsonParam.get("sn");
|
||||
Object authCode = jsonParam.get("authCode");
|
||||
Object consumeFee = jsonParam.get("consumeFee");
|
||||
Object type = jsonParam.get("type");
|
||||
Object mercOrderNo = jsonParam.get("mercOrderNo");
|
||||
Object remark = jsonParam.get("remark");
|
||||
PosPay posPay = JSONObject.parseObject(req.getReqData(), PosPay.class);
|
||||
MerChantOrderDTO merchantOrderDTO = new MerChantOrderDTO();
|
||||
merchantOrderDTO.setSn(posPay.getSn());
|
||||
merchantOrderDTO.setMercOrderNo(posPay.getMercOrderNo());
|
||||
merchantOrderDTO.setType(posPay.getType());
|
||||
merchantOrderDTO.setAuthCode(posPay.getAuthCode());
|
||||
merchantOrderDTO.setRemark(posPay.getRemark());
|
||||
merchantOrderDTO.setConsumeFee(Double.valueOf(posPay.getConsumeFee()));
|
||||
|
||||
//通过后查询商户信息
|
||||
DeviceStock deviceStock = deviceStockService.checkBind(sn.toString());
|
||||
DeviceStock deviceStock = deviceStockService.checkBind(posPay.getSn());
|
||||
MerchantBaseInfo merchantBaseInfoById = merchantBaseInfoService.getMerchantBaseInfoById(Integer.valueOf(deviceStock.getActMercId()));
|
||||
MsgException.checkNull(merchantBaseInfoById, "找不到商户");
|
||||
merchantOrderDTO.setMerchantCode(merchantBaseInfoById.getMerchantCode());
|
||||
@@ -472,20 +477,27 @@ public class MerchantOrderController {
|
||||
String result = activePay.toString();
|
||||
JSONObject jsonData = JSONObject.parseObject(result);
|
||||
Object orderNumber = jsonData.getJSONObject("data").get("orderNumber");
|
||||
String data = jsonData.getJSONObject("data").get("data").toString();
|
||||
JSONObject jsonDataInfo = JSONObject.parseObject(data);
|
||||
|
||||
HashMap<String, Object> map = new HashMap<>();
|
||||
map.put("orderNumber", orderNumber);
|
||||
return ResultGenerator.genSuccessResult(map);
|
||||
map.put("consumeFee", jsonDataInfo.get("consumeFee"));
|
||||
map.put("mercOrderNo", posPay.getMercOrderNo());
|
||||
map.put("remark", posPay.getRemark());
|
||||
map.put("status", jsonDataInfo.get("status"));
|
||||
return ResultGenerator.genSuccessJsonPos(map, req.getAppId(), req.getRequestId());
|
||||
} catch (Exception e){
|
||||
e.printStackTrace();
|
||||
return ResultGenerator.genFailResult(e.getMessage());
|
||||
return ResultGenerator.genFailJsonPos(e.getMessage(), req.getAppId(), req.getRequestId());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@PostMapping(value = "orderList")
|
||||
public Result<Object> posTradeQuery(HttpServletRequest request, @RequestBody BasePosReq req){
|
||||
public Result<Object> posTradeQuery(HttpServletRequest request, @RequestBody BasePosReq req)throws Exception{
|
||||
|
||||
verify(req.getTimestamp(),req.getRequestId(),req.getAppId(),req.getToken());
|
||||
verify(req.getTimestamp(),req.getRequestId(),req.getAppId(),req.getToken(), req.getReqData());
|
||||
|
||||
PosTradeQueryReq tradeQueryReq=JSONObject.parseObject(req.getReqData(),PosTradeQueryReq.class);
|
||||
DeviceStock deviceStock = deviceStockService.checkBind(tradeQueryReq.getSn());
|
||||
@@ -1380,7 +1392,6 @@ public class MerchantOrderController {
|
||||
//首先验证签
|
||||
Map<String, String> tokenMap = TokenUtil.getToken(timestamp, requestId, appId, reqData);
|
||||
boolean sign = tokenMap.get("TOKEN").equals(token);
|
||||
System.out.println(token);
|
||||
MsgException.check(!sign,"签名错误");
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user