TaskOperationController.java
4.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
package com.topdraw.business.process.rest;
import com.topdraw.annotation.AnonymousAccess;
import com.topdraw.business.module.common.validated.CreateGroup;
import com.topdraw.business.module.task.domain.Task;
import com.topdraw.business.module.task.service.dto.TaskDTO;
import com.topdraw.business.process.domian.TempIptvUser;
import com.topdraw.business.process.service.TaskOperationService;
import com.topdraw.business.process.service.dto.TaskOperationQueryCriteria;
import com.topdraw.common.IResultInfo;
import com.topdraw.common.ResultInfo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.Arrays;
import java.util.Objects;
@Api("任务处理")
@RestController
@RequestMapping(value = "/uce/taskOperation")
@Slf4j
public class TaskOperationController {
@Autowired
private TaskOperationService taskOperationService;
/**
* 处理事件
*
* @param criteria 消息
*/
@PostMapping(value = "/dealTask")
@ApiOperation("事件处理")
@AnonymousAccess
public IResultInfo dealTask(@RequestBody @Validated TaskOperationQueryCriteria criteria) {
log.info("事件处理,参数 ==>> dealTask#==>>{}", criteria);
return this.taskOperationService.dealTask(criteria.getContent());
}
/**
* 新增任务
*uc_tr_task_progress
* @param task 消息
*/
@PostMapping(value = "/createTask")
@ApiOperation("新增任务")
@AnonymousAccess
public void createTask(@RequestBody @Validated(value = {CreateGroup.class}) Task task) {
log.info("taskOperation ==>> createTask ==>> param ==>> {}", task);
String code = task.getCode();
TaskDTO taskDTO = this.taskOperationService.findByCode(code);
if (Objects.isNull(taskDTO.getId())) {
// 新增任务
this.taskOperationService.createTask(task);
}
}
/**
* 修改任务
*
* @param content 消息
*/
@PostMapping(value = "/updateTask")
@ApiOperation("修改任务")
@AnonymousAccess
public void updateTask(@RequestBody @Validated Task content) {
log.info("taskOperation ==>> updateTask ==>> param ==>> {}", content);
Long id = content.getId();
TaskDTO taskDTO = this.taskOperationService.findById(id);
if (Objects.nonNull(taskDTO.getId())) {
content.setCode(taskDTO.getCode());
Task task = new Task();
BeanUtils.copyProperties(taskDTO, task);
task.copy(content);
// 修改任务
this.taskOperationService.updateTask(task);
}
}
/**
* 删除任务
*
* @param task 消息
*/
@PostMapping(value = "/deleteTask")
@ApiOperation("删除任务")
@AnonymousAccess
public ResultInfo deleteTask(@RequestBody @Validated Task task) {
log.info("taskOperation ==>> deleteTask ==>> param ==>> {}", task);
Long id = task.getId();
// 删除任务
Integer integer = this.taskOperationService.deleteTask(id);
if (integer > 1) {
return ResultInfo.success("删除成功");
} else {
return ResultInfo.failure("删除失败");
}
}
/**
* 针对重庆20211220号的积分兑换活动专门定制的接口
* 1.用户每天首次进入活动详情页的时候赠送5个积分
* 2.判断任务是否已经做过,没有做过的话,保存任务记录,任务记录通过redis保存即可
*/
@PostMapping(value = "/createPoint4ChongQing")
@ApiOperation("针对重庆大屏20211220号的积分兑换活动专门定制的接口")
@Deprecated
public ResultInfo createPoint4ChongQing(@RequestBody TempIptvUser tempIptvUser){
String platformAccount = tempIptvUser.getPlatformAccount();
Long points = tempIptvUser.getPoints();
// 判断任务是否已经做过
boolean result = this.taskOperationService.createPoint2ChongQing(platformAccount,points);
String message = "操作成功";
if (!result){
message = "操作失败,该会员今日已参加过活动";
}
return ResultInfo.success(Arrays.asList(result),message);
}
}