|
|
@@ -283,7 +283,7 @@ public class UnifyOrderManager {
|
|
|
//匹配规则 每报价()次,可得()次抽奖机会,每日最多()次抽奖
|
|
|
HttpResult<List<LotteryActivityVO>> result = localLivingClient.queryActivityRules(lotteryScene);
|
|
|
if (result == null || result.getCode() != 200 || result.getData() == null) {
|
|
|
- log.error("活动列表异常");
|
|
|
+ log.error("统一报价,查询本地生活的活动列表异常");
|
|
|
} else {
|
|
|
for (LotteryActivityVO activity : result.getData()) {
|
|
|
// 检查活动是否有效
|
|
|
@@ -323,7 +323,7 @@ public class UnifyOrderManager {
|
|
|
// 业务员报价次数是否大于等于本活动规定时间范围内的报价次数
|
|
|
// 统计业务员的报价次数
|
|
|
int count = insOrdersService.countQuoteNum(baseController.getUserSystemCode(), quoteVo.getOrder().getRealQuoteUserId(), activity.getActivityStartTime(), activity.getActivityEndTime());
|
|
|
- if (count >= Integer.parseInt(table.getQutNum())) {
|
|
|
+ if (count >= Integer.parseInt(table.getQutNum()) && count <= Integer.parseInt(table.getQutLotteryMax())) {
|
|
|
// 存本地记录 等绑定后更新本地记录的同步状态字段即可
|
|
|
completeRule(baseController.getUserSystemCode(), quoteVo.getOrder().getRealQuoteUserId(), null, activity.getId(),
|
|
|
table.getId(), table.getQutNum() ,table.getQutLotteryNum() ,table.getQutLotteryMax() ,YesNoEnum.NO.getCode(), 6);
|
|
|
@@ -376,9 +376,15 @@ public class UnifyOrderManager {
|
|
|
*/
|
|
|
private void completeRule(String tenantId, String userId, String userPhone, String activityId,
|
|
|
String tableId, String qutNum, String qutLotteryNum, String qutLotteryMax,Integer status, Integer activityType) {
|
|
|
+ SysUserActivityCompleteInRule exist = null;
|
|
|
// 先查询是否已存在记录(防重入)
|
|
|
- SysUserActivityCompleteInRule exist = insOrdersService.selectByRule(
|
|
|
- tenantId, userId, activityId, qutNum, activityType);
|
|
|
+ if (9 != activityType) {
|
|
|
+ exist = insOrdersService.selectByRule(
|
|
|
+ tenantId, userId, activityId, qutNum, activityType);
|
|
|
+ } else {
|
|
|
+ exist = insOrdersService.selectByRuleAndUserPhone(
|
|
|
+ activityId, userPhone, qutNum, activityType);
|
|
|
+ }
|
|
|
|
|
|
if (exist != null) {
|
|
|
return;
|