|
|
@@ -15,12 +15,17 @@ import com.cyksj.mapper.market.task.TaskMapper;
|
|
|
import com.cyksj.mapper.market.task.TaskTypeMapper;
|
|
|
import com.cyksj.mapper.market.task.TaskUserCompleteRecordMapper;
|
|
|
import com.cyksj.model.entity.*;
|
|
|
+import com.cyksj.model.views.TaskView;
|
|
|
import com.cyksj.service.market.task.TaskService;
|
|
|
+import com.cyksj.service.user.UserBenefitsService;
|
|
|
+import com.ejlchina.searcher.BeanSearcher;
|
|
|
+import com.ejlchina.searcher.util.MapUtils;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
+import java.math.BigDecimal;
|
|
|
import java.util.List;
|
|
|
|
|
|
/*
|
|
|
@@ -48,6 +53,10 @@ public class TaskServiceImpl implements TaskService {
|
|
|
|
|
|
private final UserPointsRecordMapper userPointsRecordMapper;
|
|
|
|
|
|
+ private final BeanSearcher beanSearcher;
|
|
|
+
|
|
|
+ private final UserBenefitsService userBenefitsService;
|
|
|
+
|
|
|
@Override
|
|
|
public void saveTask(Task task) {
|
|
|
checkTask(task);
|
|
|
@@ -137,6 +146,13 @@ public class TaskServiceImpl implements TaskService {
|
|
|
if (verifyStatus == success) {
|
|
|
record.setStatus(TaskUserCompleteRecord.Status.received);
|
|
|
this.pointsRecord(record.getUserId(), record.getPoints(), PointsRecordConst.TASK, false);
|
|
|
+ TaskView taskView = beanSearcher.searchFirst(TaskView.class, MapUtils.builder().field(TaskView::getId, dbPlatVerify.getTaskId()).build());
|
|
|
+ if (taskView != null) {
|
|
|
+ if ("关注引导".equals(taskView.getTypeName()) && taskView.getBalance().compareTo(BigDecimal.ZERO) > 0) {
|
|
|
+ //发送余额
|
|
|
+ userBenefitsService.addUserBalance(dbPlatVerify.getUserId(), taskView.getBalance());
|
|
|
+ }
|
|
|
+ }
|
|
|
} else if (verifyStatus == fail) {
|
|
|
record.setStatus(TaskUserCompleteRecord.Status.fail);
|
|
|
}
|
|
|
@@ -184,6 +200,11 @@ public class TaskServiceImpl implements TaskService {
|
|
|
if (selectOne != null) {
|
|
|
throw BusinessRuntimeException.getInstance("已新增对应的任务");
|
|
|
}
|
|
|
+ //关注引导 才配置奖励余额
|
|
|
+ task.setBalance(null);
|
|
|
+ }
|
|
|
+ if (task.getBalance() != null && task.getBalance().compareTo(BigDecimal.ZERO) < 0) {
|
|
|
+ throw BusinessRuntimeException.getInstance("请输入正确的奖励余额");
|
|
|
}
|
|
|
}
|
|
|
|