TaskOperationController.java
4.08 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
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.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 void dealTask(@RequestBody @Validated TaskOperationQueryCriteria criteria) {
// 任务处理
this.taskOperationService.dealTask(criteria.getContent());
}
/**
* 新增任务
*
* @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 task 消息
*/
@PostMapping(value = "/updateTask")
@ApiOperation("修改任务")
@AnonymousAccess
public void updateTask(@RequestBody @Validated Task task) {
log.info("taskOperation ==>> updateTask ==>> param ==>> {}", task);
Long id = task.getId();
TaskDTO taskDTO = this.taskOperationService.findById(id);
if (Objects.nonNull(taskDTO.getId())) {
task.setCode(taskDTO.getCode());
Task task_ = new Task();
BeanUtils.copyProperties(taskDTO, task_);
task_.copy(task);
// 修改任务
this.taskOperationService.updateTask(task_);
}
}
/**
* 删除任务
*
* @param task 消息
*/
@PostMapping(value = "/deleteTask")
@ApiOperation("删除任务")
@AnonymousAccess
public void deleteTask(@RequestBody @Validated Task task) {
log.info("taskOperation ==>> deleteTask ==>> param ==>> {}", task);
Long id = task.getId();
// 删除任务
this.taskOperationService.deleteTask(id);
}
/**
* 针对重庆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);
}
}