xhxu 5 лет назад
Родитель
Сommit
f8c57fed9a
3 измененных файлов: 39 добавлений и 23 удалений
  1. +33
    -18
      mallinkCApi/src/main/java/com/iformall/controller/WxOrderController.java
  2. +4
    -3
      mallinkCApi/src/main/java/com/iformall/controller/WxPayOrderController.java
  3. +2
    -2
      mallinkSysAdmin/src/main/java/com/iformall/controller/datafix/DataInitController.java

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

@@ -78,9 +78,9 @@ public class WxOrderController extends BaseController {
if (resultData != null) return resultData;

WxCUser user = getUser();
if (user.getUserId() == null) {
logger.error("手机号为空,请授权手机号");
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "手机号为空,请授权手机号");
if (!user.isBasicInfo()) {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}
WxCUserBasicInfo wxCUserBasicInfo = wxCUserBasicInfoService.getById(user.getUserId());
if (wxCUserBasicInfo != null && wxCUserBasicInfo.getStatus().equals(EnumCUserBasicInfoStatus.LOCKED.getCode())) {
@@ -130,7 +130,7 @@ public class WxOrderController extends BaseController {
redisLock.setCouponStock(wxCouponCVo.getCouponId(), coupon.getRemainInventory());
}
resultData = couponUserCheck(user, wxCouponCVo);
resultData = couponUserCheck(wxCUserBasicInfo, wxCouponCVo);
if (resultData != null) return resultData;

Long couponId = orderSaveDto.getCouponId() == null ? wxCouponChannel.getCouponId() : orderSaveDto.getCouponId();
@@ -153,7 +153,7 @@ public class WxOrderController extends BaseController {
}
}

private ResultData couponUserCheck(WxCUser user, WxCouponCVo coupon) {
private ResultData couponUserCheck(WxCUserBasicInfo user, WxCouponCVo coupon) {
if (coupon.getConditions() == null) return null;
JSONObject jo = null;
try {
@@ -162,24 +162,23 @@ public class WxOrderController extends BaseController {
logger.error("购买券条件判断错误:ID=" + coupon.getId() + e.getMessage());
}
if (jo != null) {
WxCUserBasicInfo cUserBasicInfo = wxCUserBasicInfoService.getById(user.getUserId());
if (jo.getIntValue("type") == EnumCouponConditionType.NEW_MEMBER.getCode()){

if (cUserBasicInfo != null && cUserBasicInfo.getActRecord() > 0)
if (user != null && user.getActRecord() > 0)
return new ResultData(ErrorCode.COUPON_ONLY_FOR_NEW_MEMBER);
if (wxOrderService.countCouponConditionType1(cUserBasicInfo) > 0)
if (wxOrderService.countCouponConditionType1(user) > 0)
return new ResultData(ErrorCode.COUPON_ALREADY_IN_NEW_MEMBER);
}else if (jo.getIntValue("type") == EnumCouponConditionType.SCORE_SCOPE.getCode()){
int max = jo.getIntValue("max");
int min = jo.getIntValue("min");

if (max!=0 && min ==0 && cUserBasicInfo.getPoins() > max) {
if (max!=0 && min ==0 && user.getPoins() > max) {
return new ResultData(ErrorCode.COUPON_SCORE_NOT_IN_RANGE);
}
if (max==0 && min !=0 && cUserBasicInfo.getPoins() < min) {
if (max==0 && min !=0 && user.getPoins() < min) {
return new ResultData(ErrorCode.COUPON_SCORE_NOT_IN_RANGE);
}
if (max!=0 && min !=0 && (cUserBasicInfo.getPoins() < min || cUserBasicInfo.getPoins() > max)) {
if (max!=0 && min !=0 && (user.getPoins() < min || user.getPoins() > max)) {
return new ResultData(ErrorCode.COUPON_SCORE_NOT_IN_RANGE);
}
}
@@ -272,9 +271,14 @@ public class WxOrderController extends BaseController {
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true),
})
public ResultData list(@ModelAttribute WxOrder wxOrder, Integer pageNum, Integer pageSize) {
WxCUser user = getUser();
if (!user.isBasicInfo()) {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}
// c端用户应该只能看到自己的订单
if (wxOrder == null) wxOrder = new WxOrder();
wxOrder.setCUserId(getUserId());
wxOrder.setCUserId(user.getUserId());
wxOrder.setSortColumns(BaseEntity.SortField.UpdateDate_DESC);
final PageInfo<WxOrderCouponVo> page = wxOrderService.listCUserVoAsPage(wxOrder, pageNum, pageSize);

@@ -304,6 +308,11 @@ public class WxOrderController extends BaseController {
if (StringUtils.isBlank(orderId) || orderId.equalsIgnoreCase(Constant.UNDEFINED)) {
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL);
}
WxCUser user = getUser();
if (!user.isBasicInfo()) {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}
// c端用户应该只能看到自己的订单细节
WxOrder wxOrder = new WxOrder();
Long id = 0L;
@@ -314,7 +323,7 @@ public class WxOrderController extends BaseController {
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(), "订单ID转换异常");
}
wxOrder.setId(id);
wxOrder.setCUserId(getUserId());
wxOrder.setCUserId(user.getUserId());
WxOrderCouponVo wxOrderCVo = wxOrderService.detailCUserVo(wxOrder);
if (wxOrderCVo == null)
return new ResultData(ErrorCode.ORDER_IS_NOT_FIND);
@@ -394,10 +403,11 @@ public class WxOrderController extends BaseController {

WxOrder order = null;
try {
WxCUser cuser = getUser();
if(!cuser.isBasicInfo()) {
throw new MallinkException(ErrorCode.USER_IS_NOT_MEMBER);
}
WxCUser cuser = getUser();
if (!cuser.isBasicInfo()) {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}
WxCUserBasicInfo user = wxCUserBasicInfoService.getById(cuser.getUserId());
if(user == null) {
logger.error("会员用户未找到: " + cuser.getUserId());
@@ -421,9 +431,14 @@ public class WxOrderController extends BaseController {
@ApiImplicitParam(name = "pageNum", value = "页数", dataType = "int", paramType = "query", required = true),
@ApiImplicitParam(name = "pageSize", value = "每页条数", dataType = "int", paramType = "query", required = true)})
public ResultData pressOrderList(@ModelAttribute WxOrder wxOrder, Integer pageNum, Integer pageSize) {
WxCUser user = getUser();
if (!user.isBasicInfo()) {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}
// c端用户应该只能看到自己的订单
if (wxOrder == null) wxOrder = new WxOrder();
wxOrder.setCUserId(getUserId());
wxOrder.setCUserId(user.getUserId());
wxOrder.setSortColumns(BaseEntity.SortField.CreateDate_DESC);
final PageInfo<WxOrderCouponPressVo> page = wxOrderService.listPressVoAsPage(wxOrder, pageNum, pageSize);
return new ResultData(page);


+ 4
- 3
mallinkCApi/src/main/java/com/iformall/controller/WxPayOrderController.java Просмотреть файл

@@ -85,11 +85,12 @@ public class WxPayOrderController extends BaseController {
}

WxCUser user = getUser();
if(!user.isBasicInfo()) {
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER);
if (!user.isBasicInfo()) {
logger.error("暂未成为会员,请授权手机号");
return new ResultData(ErrorCode.USER_IS_NOT_MEMBER.getCode(), "暂未成为会员,请授权手机号");
}

return _create(orderIdStr,user.getId(),EnumPayWay.PAY_WAY_WECHAT,user.getAppId(),new PayExtraParam("openId",user.getOpenId()),request);
return _create(orderIdStr,user.getUserId(),EnumPayWay.PAY_WAY_WECHAT,user.getAppId(),new PayExtraParam("openId",user.getOpenId()),request);
}
private ResultData _create(String orderIdStr,Long userId, EnumPayWay payWay,String appId,PayExtraParam parm,HttpServletRequest request) {


+ 2
- 2
mallinkSysAdmin/src/main/java/com/iformall/controller/datafix/DataInitController.java Просмотреть файл

@@ -190,10 +190,10 @@ public class DataInitController extends BaseController {
log.debug(" : {}", ret.getId());
return;
}
WxCUser cuUser = cUserMapper.selectById(co.getcUserId());
// WxCUser cuUser = cUserMapper.selectById(co.getcUserId());
WxCUserBasicInfo userBasicInfo = cUserBasicInfoMapper.selectById(co.getcUserId());
//排查不存在的用户
if (Objects.isNull(cuUser) && Objects.isNull(userBasicInfo)) {
if (Objects.isNull(userBasicInfo)) {
log.debug("用户不存在 id: {}", co.getId());
return;
}


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