Просмотр исходного кода

//tt product

release_toaliyun_real
xhxu 4 лет назад
Родитель
Сommit
119061023a
1 измененных файлов: 27 добавлений и 1 удалений
  1. +27
    -1
      mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java

+ 27
- 1
mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java Просмотреть файл

@@ -1,6 +1,7 @@
package com.iformall.controller;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.github.binarywang.wxpay.bean.ecommerce.SignatureHeader;
@@ -173,6 +174,31 @@ public class WxOrderController extends BaseController {
JSONObject jsonObject = JSONObject.parseObject(body);
String app_id = jsonObject.getString("app_id");
String open_id = jsonObject.getString("open_id");
//透传字段
String cp_extra = jsonObject.getString("cp_extra");
if(StringUtils.isBlank(cp_extra)){
map.put("err_no",ErrorCode.SYS_PARAMETER_NOT_NULL.getCode());
map.put("err_tips","缺少透传字段");
return map;
}
Map<String,Long> couponMap = new HashMap<>();
try{
JSONArray jsonArray = JSONObject.parseArray(cp_extra);
for(int i=0;i<jsonArray.size();i++){
String couponId = jsonArray.getJSONObject(i).getString("couponId");
Long couponChannelId = jsonArray.getJSONObject(i).getLongValue("couponChannelId");
if(StringUtils.isNotBlank(couponId) && couponChannelId != null){
couponMap.put(couponId,couponChannelId);
}
}
}catch(Exception e){
}
if(couponMap.isEmpty()){
map.put("err_no",ErrorCode.SYS_PARAMETER_NOT_NULL.getCode());
map.put("err_tips","透传字段格式不正确");
return map;
}

//验证app
WxAppinfo appinfo = wxAppinfoService.getByAppId(app_id);
if(appinfo == null || !EnumAppPlat.TOUTIAO.getCode().equals(appinfo.getPlat())
@@ -211,7 +237,7 @@ public class WxOrderController extends BaseController {
List<PlatPushOrderSaveDto> list = new ArrayList<>();
for (CreateOrderCallback.Good good:createOrderCallback.getGoods()) {
PlatPushOrderSaveDto dto = new PlatPushOrderSaveDto();
dto.setCouponChannelId(Long.parseLong(good.getGoodsId()));
dto.setCouponChannelId(couponMap.get(good.getGoodsId()));
dto.setCount(good.getQuantity());
dto.setExtParam(good.getItemOrderInfoList().toString());
list.add(dto);


Загрузка…
Отмена
Сохранить