|
|
|
@@ -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); |
|
|
|
|