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

Merge branch 'release_toaliyun_real_202211' of https://git.malls.iformall.com/server/formallProject into release_toaliyun_real_202211

release_toaliyun_real
xhxu 3 лет назад
Родитель
Сommit
bf8dc26649
8 измененных файлов: 64 добавлений и 14 удалений
  1. +17
    -5
      mallinkBApi/src/main/java/com/iformall/controller/BaseController.java
  2. +22
    -3
      mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java
  3. +5
    -0
      mallinkBApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java
  4. +2
    -0
      mallinkCApi/src/main/java/com/iformall/controller/BaseController.java
  5. +2
    -3
      mallinkCApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java
  6. +12
    -0
      mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java
  7. +3
    -3
      mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java
  8. +1
    -0
      mallinkService/src/main/java/com/iformall/utils/Constant.java

+ 17
- 5
mallinkBApi/src/main/java/com/iformall/controller/BaseController.java Просмотреть файл

@@ -138,12 +138,22 @@ public class BaseController {
throw new MallinkException(ErrorCode.USER_IS_EMPTY);
}
TenantEntity tenantEntity = getTenantInfo();
if (user.getTenantId() == null) {
user.setTenantId(tenantEntity.getTenantId());
}
if (user.getParentTenantId() == null) {
user.setParentTenantId(tenantEntity.getParentTenantId());
if (tenantEntity.isChildMall()) {
if (user.getTenantId() == null) {
user.setTenantId(tenantEntity.getParentTenantId());
}
if (user.getParentTenantId() == null) {
user.setParentTenantId(null);
}
}else {
if (user.getTenantId() == null) {
user.setTenantId(tenantEntity.getTenantId());
}
if (user.getParentTenantId() == null) {
user.setParentTenantId(tenantEntity.getParentTenantId());
}
}
return user;
}

@@ -158,9 +168,11 @@ public class BaseController {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String tenantId = (String) request.getAttribute(Constant.TENANT_ID);
String parentTenantId = (String) request.getAttribute(Constant.PARENT_TENANT_ID);
boolean isChildMall = (boolean)request.getAttribute(Constant.IS_CHILD_MALL);
TenantEntity tenantEntity = new TenantEntity();
tenantEntity.setTenantId(tenantId);
tenantEntity.setParentTenantId(parentTenantId);
tenantEntity.setChildMall(isChildMall);
return tenantEntity;
}



+ 22
- 3
mallinkBApi/src/main/java/com/iformall/controller/WxCouponOrderController.java Просмотреть файл

@@ -4,10 +4,12 @@ import com.alibaba.fastjson.JSONObject;
import com.github.pagehelper.PageInfo;
import com.iformall.annotation.AuthIgnore;
import com.iformall.annotation.RedisCache;
import com.iformall.annotation.TenantIgnore;
import com.iformall.common.ErrorCode;
import com.iformall.common.Result;
import com.iformall.common.ResultData;
import com.iformall.domain.po.*;
import com.iformall.domain.po.base.TenantEntity;
import com.iformall.domain.vo.WxCouponCVo;
import com.iformall.domain.vo.WxCouponOrderBVo;
import com.iformall.domain.vo.WxCouponOrderCVo;
@@ -282,6 +284,7 @@ public class WxCouponOrderController extends BaseController {
return new ResultData(wxCouponOrderCVo);
}

@TenantIgnore
@ApiOperation(value = "核销接口", notes = "{\"couponOrderId\":\"string\"}")
@PostMapping("verify")
public ResultData verify(@RequestBody Map<String, String> paramMap) {
@@ -313,8 +316,19 @@ public class WxCouponOrderController extends BaseController {
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
}

WxCouponOrderCVo wxCouponOrderCVo = wxCouponOrderService.detailCUserVo(couponOrderIdStr,getTenantInfo());

TenantEntity tenantEntity = getTenantInfo();
WxCouponOrderCVo wxCouponOrderCVo = null;
if (tenantEntity.isChildMall()) {
//查询父
TenantEntity parentTenant = new TenantEntity();
parentTenant.setTenantId(tenantEntity.getParentTenantId());
parentTenant.setParentTenantId(null);
wxCouponOrderCVo = wxCouponOrderService.detailCUserVo(couponOrderIdStr,parentTenant);
}else {
wxCouponOrderCVo = wxCouponOrderService.detailCUserVo(couponOrderIdStr,tenantEntity);
}
if (wxCouponOrderCVo == null)
return new ResultData(ErrorCode.COUPON_ORDER_IS_NULL);

@@ -353,7 +367,12 @@ public class WxCouponOrderController extends BaseController {
}
}

WxCouponOrder wxCouponOrder = wxCouponOrderService.getById(couponOrderId,getTenantInfo().getTenantId());
WxCouponOrder wxCouponOrder = null;
if (tenantEntity.isChildMall()) {
wxCouponOrder = wxCouponOrderService.getById(couponOrderId,tenantEntity.getParentTenantId());
}else {
wxCouponOrder = wxCouponOrderService.getById(couponOrderId,tenantEntity.getTenantId());
}
if (wxCouponOrder == null) {
logger.error("券ID不存在:" + couponOrderId);
return new ResultData(ErrorCode.COUPON_ORDER_IS_NULL);


+ 5
- 0
mallinkBApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java Просмотреть файл

@@ -79,6 +79,7 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter {
// 查询token信息
String tenantId = null;
String parenTenantId = null;
boolean isChildMall = false;
if (!StringUtils.isBlank(token)) {
BaseCUserEntity user = cUserTokenService.getBByToken(token);
if (user == null || user.getExpireTime().getTime() < System.currentTimeMillis()) {
@@ -90,11 +91,13 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter {
}else {
tenantId = mallTenantId;
parenTenantId = user.getTenantId();
isChildMall = true;
}
request.setAttribute(Constant.LOGIN_USER_KEY, user.getId());
request.setAttribute(Constant.TENANT_ID, tenantId);
request.setAttribute(Constant.REQUEST_C_USER_KEY, user);
request.setAttribute(Constant.APP_INFO, user.getAppinfo());
request.setAttribute(Constant.IS_CHILD_MALL,isChildMall);
if (StringUtils.isNotBlank(parenTenantId)) {
request.setAttribute(Constant.PARENT_TENANT_ID, parenTenantId);
}
@@ -111,8 +114,10 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter {
}else {
tenantId = mallTenantId;
parenTenantId = buser.getTenantId();
isChildMall = true;
}
request.setAttribute(Constant.LOGIN_B_USER_KEY, buser.getId());
request.setAttribute(Constant.IS_CHILD_MALL,isChildMall);
request.setAttribute(Constant.TENANT_ID, tenantId);
if (StringUtils.isNotBlank(parenTenantId)) {
request.setAttribute(Constant.PARENT_TENANT_ID, parenTenantId);


+ 2
- 0
mallinkCApi/src/main/java/com/iformall/controller/BaseController.java Просмотреть файл

@@ -113,9 +113,11 @@ public class BaseController {
HttpServletRequest request = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getRequest();
String tenantId = (String) request.getAttribute(Constant.TENANT_ID);
String parentTenantId = (String) request.getAttribute(Constant.PARENT_TENANT_ID);
boolean isChildMall = (boolean)request.getAttribute(Constant.IS_CHILD_MALL);
TenantEntity tenantEntity = new TenantEntity() ;
tenantEntity.setTenantId(tenantId);
tenantEntity.setParentTenantId(parentTenantId);
tenantEntity.setChildMall(isChildMall);
return tenantEntity;
}



+ 2
- 3
mallinkCApi/src/main/java/com/iformall/interceptor/AuthorizationInterceptor.java Просмотреть файл

@@ -69,20 +69,19 @@ public class AuthorizationInterceptor extends HandlerInterceptorAdapter {
if(StringUtils.isBlank(mallTenantId)){
mallTenantId = request.getParameter("mallTenantId");
}
//设置userId到request里,后续根据userId,获取用户信息
request.setAttribute(Constant.LOGIN_USER_KEY, cUser.getId());
if (StringUtils.isNotBlank(mallTenantId)) {
request.setAttribute(Constant.TENANT_ID, mallTenantId);
request.setAttribute(Constant.PARENT_TENANT_ID, cUser.getTenantId());
request.setAttribute(Constant.IS_CHILD_MALL,true);
}else {
request.setAttribute(Constant.TENANT_ID, cUser.getTenantId());
if (StringUtils.isNotBlank(cUser.getParentTenantId())) {
request.setAttribute(Constant.PARENT_TENANT_ID, cUser.getParentTenantId());
}
request.setAttribute(Constant.IS_CHILD_MALL,false);
}
request.setAttribute(Constant.REQUEST_C_USER_KEY, cUser);
request.setAttribute(Constant.APP_INFO,cUser.getAppinfo());


+ 12
- 0
mallinkService/src/main/java/com/iformall/domain/po/base/TenantEntity.java Просмотреть файл

@@ -26,6 +26,10 @@ public class TenantEntity extends BaseEntity {
@io.swagger.annotations.ApiModelProperty(value="父租户ID",name="parentTenantId")
@TableField(exist = false)
protected String finalTenantId;
@io.swagger.annotations.ApiModelProperty(value="是否是集团统一小程序版本下的子广场",name="isChildMall")
@TableField(exist = false)
protected boolean isChildMall;

@JsonIgnore
@TableField(exist = false)
@@ -97,5 +101,13 @@ public class TenantEntity extends BaseEntity {
public void setTenantIdList(List<String> tenantIdList) {
this.tenantIdList = tenantIdList;
}

public boolean isChildMall() {
return isChildMall;
}

public void setChildMall(boolean isChildMall) {
this.isChildMall = isChildMall;
}
}

+ 3
- 3
mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java Просмотреть файл

@@ -1266,7 +1266,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
if(EnumCouponType.COUPON_DISTRIBUTION.getCode().equals(wxCoupon.getType())){
//可配送商品
WxCouponMerchant wxCouponMerchant = new WxCouponMerchant();
wxCouponMerchant.updateTenantInfo(wxCoupon);
wxCouponMerchant.updateTenantInfo(bUser);
wxCouponMerchant.setProductId(wxCoupon.getId());
wxCouponMerchant.setStatus(EnumCouponMerchantStatus.COUPON_MERCHANT_STATUS_VALID.getCode());
WxCouponMerchant cm = null;
@@ -1295,7 +1295,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
throw new MallinkException(ErrorCode.VERIFY_COUPON_TYPE_NOT_SUPPORT);
}
WxCouponMerchant wxCouponMerchant = new WxCouponMerchant();
wxCouponMerchant.updateTenantInfo(wxCoupon);
wxCouponMerchant.updateTenantInfo(bUser);
wxCouponMerchant.setProductId(wxCoupon.getId());
wxCouponMerchant.setStatus(EnumCouponMerchantStatus.COUPON_MERCHANT_STATUS_VALID.getCode());
List<WxCouponMerchant> couponMerchantList = wxCouponMerchantMapper.findList(wxCouponMerchant);
@@ -1315,7 +1315,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService {
if(wxPayOrder != null && EnumPayMchType.TOTAL.getCode().equals(wxPayOrder.getMchType())
&& EnumPayShare.YES.getCode().equals(wxPayOrder.getShare())){
WxProfitSharingReceiver receiver = payServiceFactory.getPayShareAdapterService(wxPayOrder.getPayVendor(),couponOrder.getPayVersion())
.getReceiver(couponOrder, merchantId, wxPayOrder.getTtPayWay(),wxPayOrder.getMchType());
.getReceiver(bUser, merchantId, wxPayOrder.getTtPayWay(),wxPayOrder.getMchType());
if (null == receiver) {
throw new MallinkException(ErrorCode.VERIFY_COUPON_ORDER_MERCHANT_IS_NULL.getCode(),"当前商户没有配置收款账号。");
}


+ 1
- 0
mallinkService/src/main/java/com/iformall/utils/Constant.java Просмотреть файл

@@ -64,6 +64,7 @@ public class Constant {
public static final String APP_Id = "APP_Id";
public static final String APP_NAME = "APP_NAME";
public static final String APP_INFO = "APPINFO";
public static final String IS_CHILD_MALL = "IS_CHILD_MALL";
public static final String LOGIN_B_USER_KEY = "LOGIN_B_USER_KEY";



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