Преглед изворни кода

[停车][修改]:批量抵扣接口

release_toaliyun_real
Stormeye Wu пре 6 година
родитељ
комит
4141f2788b
2 измењених фајлова са 35 додато и 30 уклоњено
  1. +21
    -20
      mallinkAdmin/src/main/java/com/iformall/controller/car/WxCarController.java
  2. +14
    -10
      mallinkService/src/main/java/com/iformall/utils/car/TJDUtil.java

+ 21
- 20
mallinkAdmin/src/main/java/com/iformall/controller/car/WxCarController.java Прегледај датотеку

@@ -200,24 +200,27 @@ public class WxCarController extends BaseController {
logger.info(coupon.toString());
// Save to wx_counpon
Date curDate = new Date();
// check 同一个模板的券分配额是否超了
if (StringUtils.isBlank(coupon.getVendorParams())) {
logger.error("请填充停车厂商优免券参数");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "停车厂商参数为空");
}
JSONObject vendorParamsObj = JSON.parseObject(coupon.getVendorParams());
Long templateId = vendorParamsObj.getLong("id");
Integer amount = vendorParamsObj.getInteger("amount");
Integer avaliavleNum = vendorParamsObj.getInteger("avaliavleNum");
Integer amtCount = wxCouponCarService.getAmtCountByTemplateId(templateId);
Integer availCount = wxCouponCarService.getAvaibleCountByTemplateId(templateId);
if (amtCount >= amount) {
logger.error("总库存已达到停车厂商优免券数量限制");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "总库存已达到停车厂商优免券数量限制");
}
if (availCount >= avaliavleNum) {
logger.error("可用库存已达到停车厂商优免券数量限制");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "可用库存已达到停车厂商优免券数量限制");
WxPark park = getCurrentPark();
if (park.getVendorType().equals(EnumCarVendor.CAR_ETCP.getCode())) {
// check 同一个模板的券分配额是否超了
if (StringUtils.isBlank(coupon.getVendorParams())) {
logger.error("请填充停车厂商优免券参数");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "停车厂商参数为空");
}
JSONObject vendorParamsObj = JSON.parseObject(coupon.getVendorParams());
Long templateId = vendorParamsObj.getLong("id");
Integer amount = vendorParamsObj.getInteger("amount");
Integer avaliavleNum = vendorParamsObj.getInteger("avaliavleNum");
Integer amtCount = wxCouponCarService.getAmtCountByTemplateId(templateId);
Integer availCount = wxCouponCarService.getAvaibleCountByTemplateId(templateId);
if (amtCount >= amount) {
logger.error("总库存已达到停车厂商优免券数量限制");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "总库存已达到停车厂商优免券数量限制");
}
if (availCount >= avaliavleNum) {
logger.error("可用库存已达到停车厂商优免券数量限制");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "可用库存已达到停车厂商优免券数量限制");
}
}
// check End
coupon.setTenantId(getTenantId());
@@ -231,8 +234,6 @@ public class WxCarController extends BaseController {
WxCouponCar couponCar = new WxCouponCar();
couponCar.setId(coupon.getId());
couponCar.setTenantId(getTenantId());

WxPark park = getCurrentPark();
couponCar.setParkId(park.getId());
couponCar.setVendorType(park.getVendorType());
couponCar.setVendorParams(coupon.getVendorParams());


+ 14
- 10
mallinkService/src/main/java/com/iformall/utils/car/TJDUtil.java Прегледај датотеку

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

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.iformall.domain.po.WxCoupon;
import com.iformall.domain.po.WxCouponOrder;
@@ -385,22 +386,24 @@ public class TJDUtil {
paramMap.put(TJD_ACCOUNT_ID, accountId);
paramMap.put(TJD_PREPAY_TYPE, TJD_PREPAY_TYPE_3);

Map<String, String> detailMap = MapUtil.getOrderMap();
detailMap.put(TJD_OUT_TRADE_NO, String.valueOf(couponOrder.getId()));
detailMap.put(TJD_TYPE, TJD_TYPE_COUPON);
detailMap.put(TJD_CHANNEL, "2204");
JSONArray detailArr = new JSONArray();
JSONObject detailObj = new JSONObject();
detailObj.put(TJD_OUT_TRADE_NO, String.valueOf(couponOrder.getId()));
detailObj.put(TJD_TYPE, TJD_TYPE_COUPON);
detailObj.put(TJD_CHANNEL, "2204");
String memo = "会员优惠券";
if (coupon.getUnit().equals(0)) {
detailMap.put(TJD_COUPON_TYPE, "0");
detailMap.put(TJD_AMOUNT, coupon.getPriceStr());
detailObj.put(TJD_COUPON_TYPE, "0");
detailObj.put(TJD_AMOUNT, coupon.getPriceStr());
memo += "-金额";
} else {
detailMap.put(TJD_COUPON_TYPE, "1");
detailMap.put(TJD_MINUTES, String.valueOf(coupon.getPrice()*60));
detailObj.put(TJD_COUPON_TYPE, "1");
detailObj.put(TJD_MINUTES, String.valueOf(coupon.getPrice()*60));
memo += "-时长";
}
detailMap.put(TJD_MEMO, memo);
paramMap.put(TJD_DETAIL_LIST, JSON.toJSONString(detailMap));
detailObj.put(TJD_MEMO, memo);
detailArr.add(detailObj);
paramMap.put(TJD_DETAIL_LIST, JSON.toJSONString(detailArr));

paramMap.put(TJD_CHARSET, TJD_UTF_8);
paramMap.put(TJD_ACCOUNT, partner);
@@ -639,6 +642,7 @@ public class TJDUtil {
paramMap.put("signType", "md5");

String jsonstr = JSON.toJSONString(paramMap);
logger.info(jsonstr);

try {
StringEntity se = new StringEntity(jsonstr, Consts.UTF_8);


Loading…
Откажи
Сачувај