diff --git a/src/main/java/com/zh/project0512/controller/TaskController.java b/src/main/java/com/zh/project0512/controller/TaskController.java index 784e48b..242a316 100644 --- a/src/main/java/com/zh/project0512/controller/TaskController.java +++ b/src/main/java/com/zh/project0512/controller/TaskController.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.zh.project0512.annotation.tokenValid; import com.zh.project0512.model.*; import com.zh.project0512.service.*; import com.zh.project0512.utils.JwtUtil; @@ -25,6 +26,7 @@ import javax.validation.Valid; import javax.validation.constraints.DecimalMin; import javax.validation.constraints.Min; import javax.validation.constraints.NotNull; +import java.time.LocalDateTime; import java.util.*; /** @@ -35,7 +37,7 @@ import java.util.*; * @author zh * @since 2022-05-21 */ -@Tag(name="任务管理") +@Tag(name = "任务管理") @Validated @RestController @RequestMapping("/task") @@ -56,10 +58,11 @@ public class TaskController { private IRewardRuleTemplateService rewardRuleTemplateService; @Autowired private ICustomerActionNoteService customerActionNoteService; + @Operation(summary = "新增") @PostMapping("/add") public Result add(@Validated @RequestBody Task task) { - taskService.save(task); + taskService.save(task); int id = task.getId(); taskTagService.addGroup(task.getTagList(), id); taskBrandService.addGroup(task.getReferenceList(), id); @@ -74,6 +77,7 @@ public class TaskController { @Schema(title = "任务id") private Integer id; } + @Operation(summary = "删除") @PostMapping("/del") public Result del(@Validated @RequestBody DelTaskParam param) { @@ -83,16 +87,16 @@ public class TaskController { @Operation(summary = "列表") @PostMapping("/list") public Result list(@RequestBody(required = false) JSONObject obj, - @RequestHeader(required = false,value="token") @Parameter(name="用户token",description = "关联用户信息") String token) { + @RequestHeader(required = false, value = "token") @Parameter(name = "用户token", description = "关联用户信息") String token) { Claims claims = new JwtUtil().parseJWT(token); String openid = null; - if(claims != null){ - openid =claims.getId(); + if (claims != null) { + openid = claims.getId(); } IPage ipage = taskService.taskIdList(MybatisPlusUtil.SetPage(obj)); List taskIdList = ipage.getRecords(); - if(taskIdList.size()>0){ - ipage.setRecords(taskService.taskList(openid,taskIdList)); + if (taskIdList.size() > 0) { + ipage.setRecords(taskService.taskList(openid, taskIdList)); } return Result.success(ipage); } @@ -108,7 +112,7 @@ public class TaskController { @Operation(summary = "详情") @PostMapping("/detail") public Result detail(@Validated @RequestBody DetTaskParam param) { - int id =param.getId(); + int id = param.getId(); Task task = taskService.getById(id); if (null == task) { return Result.fail(HttpStatusEnum.NOT_FOUND); @@ -143,6 +147,7 @@ public class TaskController { @Operation(summary = "用户线索搜集") @PostMapping("/customerNote") + @tokenValid public Result customerNote(@Validated @RequestBody CusNoteParam param, @RequestHeader("token") @Parameter(name = "登录token") String token) { Claims claims = new JwtUtil().parseJWT(token); Integer useId = userService.selByOpenid(claims.getId()).getId(); @@ -150,9 +155,15 @@ public class TaskController { return Result.fail(HttpStatusEnum.CUSTOM_EXCEPTION, "未找到该用户"); } customerActionNoteService.save( - new CustomerActionNote().setCustomerName(param.getCustomerName()).setTel(param.getTel()). - setArea(param.getArea()).setBrandId(param.getBrandId()).setRemarks(param.getRemarks()).setProvideId(useId)); - return Result.success("上传完成"); + new CustomerActionNote().setCustomerName(param.getCustomerName()).setTel(param.getTel()).setArea(param.getArea()) + .setBrandId(param.getBrandId()).setRemarks(param.getRemarks()).setProvideId(useId).setCreatAt(LocalDateTime.now())); + return Result.success("上传完成"); + } + + @Operation(summary = "线索搜集列表") + @PostMapping("/customerNoteList") + public Result customerNote(@Validated @RequestBody JSONObject obj) { + return Result.success(customerActionNoteService.pageList(MybatisPlusUtil.SetPage(obj))); } } diff --git a/src/main/java/com/zh/project0512/controller/UserReferenceController.java b/src/main/java/com/zh/project0512/controller/UserReferenceController.java index fe7279d..16708c5 100644 --- a/src/main/java/com/zh/project0512/controller/UserReferenceController.java +++ b/src/main/java/com/zh/project0512/controller/UserReferenceController.java @@ -14,6 +14,7 @@ import com.zh.project0512.service.IUserReferenceService; import com.zh.project0512.service.IUserService; import com.zh.project0512.utils.JwtUtil; import com.zh.project0512.utils.MybatisPlusUtil; +import com.zh.project0512.utils.result.HttpStatusEnum; import com.zh.project0512.utils.result.Result; import io.jsonwebtoken.Claims; import io.swagger.v3.oas.annotations.Operation; @@ -48,10 +49,6 @@ public class UserReferenceController { @Data static class AddURParam { - @Schema(title = "用户id") - @NotNull(message = "userId不能为空") - @Min(value = 1, message = "userId最小值为1") - private Integer userId; @Schema(title = "素材id") @NotNull(message = "referenceId不能为空") @Min(value = 1, message = "referenceId最小值为1") @@ -61,14 +58,19 @@ public class UserReferenceController { @Operation(summary = "添加到素材收藏夹") @tokenValid @PostMapping("/add") - public Result add(@Validated @RequestBody AddURParam param) { + public Result add(@Validated @RequestBody AddURParam param, @RequestHeader("token") @Parameter(name = "登录token") String token) { + Claims claims = new JwtUtil().parseJWT(token); + Integer userId = userService.selByOpenid(claims.getId()).getId(); + if(userId == null){ + return Result.fail(HttpStatusEnum.CUSTOM_EXCEPTION,"用户不存在"); + } QueryWrapper queryWrapper = new QueryWrapper<>(); // queryWrapper.eq("id",param.getId()).eq(); // userReferenceService.listObjs(queryWrapper) - if (null != userReferenceService.getMap(new QueryWrapper().eq("userId", param.getUserId()).eq("referenceId", param.getReferenceId()))) { - return Result.success("数据已存在"); + if (null != userReferenceService.getMap(new QueryWrapper().eq("userId", userId).eq("referenceId", param.getReferenceId()))) { + return Result.fail(HttpStatusEnum.CUSTOM_EXCEPTION,"数据已存在"); } - userReferenceService.save(new UserReference().setUserId(param.getUserId()).setReferenceId(param.getReferenceId())); + userReferenceService.save(new UserReference().setUserId(userId).setReferenceId(param.getReferenceId())); return Result.success("添加完成"); } diff --git a/src/main/java/com/zh/project0512/controller/UserTaskController.java b/src/main/java/com/zh/project0512/controller/UserTaskController.java index 8906eb6..36d9ae9 100644 --- a/src/main/java/com/zh/project0512/controller/UserTaskController.java +++ b/src/main/java/com/zh/project0512/controller/UserTaskController.java @@ -1,9 +1,26 @@ package com.zh.project0512.controller; -import org.springframework.web.bind.annotation.RequestMapping; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.zh.project0512.annotation.tokenValid; +import com.zh.project0512.model.UserReference; +import com.zh.project0512.model.UserTask; +import com.zh.project0512.service.IUserService; +import com.zh.project0512.service.IUserTaskService; +import com.zh.project0512.utils.JwtUtil; +import com.zh.project0512.utils.result.HttpStatusEnum; +import com.zh.project0512.utils.result.Result; +import io.jsonwebtoken.Claims; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; -import org.springframework.web.bind.annotation.RestController; +import javax.validation.constraints.Min; +import javax.validation.constraints.NotNull; /** *

@@ -14,7 +31,36 @@ import org.springframework.web.bind.annotation.RestController; * @since 2022-05-27 */ @RestController -@RequestMapping("/user-task") +@RequestMapping("/userTask") public class UserTaskController { + @Autowired + private IUserTaskService userTaskService; + @Autowired + private IUserService userService; + @Data + static class AddUTParam { + @Schema(title = "任务id") + @NotNull(message = "taskId不能为空") + @Min(value = 1, message = "taskId最小值为1") + private Integer taskId; + } + @Operation(summary = "用户接受任务") + @tokenValid + @PostMapping("/add") + public Result add(@Validated @RequestBody AddUTParam param, @RequestHeader("token") @Parameter(name = "登录token") String token) { + Claims claims = new JwtUtil().parseJWT(token); + Integer userId = userService.selByOpenid(claims.getId()).getId(); + if(userId == null){ + return Result.fail(HttpStatusEnum.CUSTOM_EXCEPTION,"用户不存在"); + } + QueryWrapper queryWrapper = new QueryWrapper<>(); +// queryWrapper.eq("id",param.getId()).eq(); +// userReferenceService.listObjs(queryWrapper) + if (null != userTaskService.getMap(new QueryWrapper().eq("userId", userId).eq("referenceId", param.getTaskId()))) { + return Result.fail(HttpStatusEnum.CUSTOM_EXCEPTION,"已接受该任务"); + } + userTaskService.save(new UserTask().setUserId(userId).setTaskId(param.getTaskId())); + return Result.success("添加完成"); + } } diff --git a/src/main/java/com/zh/project0512/mapper/CustomerActionNoteMapper.java b/src/main/java/com/zh/project0512/mapper/CustomerActionNoteMapper.java index 039bb8a..b539ff8 100644 --- a/src/main/java/com/zh/project0512/mapper/CustomerActionNoteMapper.java +++ b/src/main/java/com/zh/project0512/mapper/CustomerActionNoteMapper.java @@ -1,7 +1,11 @@ package com.zh.project0512.mapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zh.project0512.model.CustomerActionNote; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Select; + +import java.util.Map; /** *

@@ -12,5 +16,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; * @since 2022-05-30 */ public interface CustomerActionNoteMapper extends BaseMapper { - + @Select("select t1.*,t2.name from customerActionNote as t1 ,user as t2 WHERE t1.provideId = t2.id") + IPage pageList(IPage page); } diff --git a/src/main/java/com/zh/project0512/service/ICustomerActionNoteService.java b/src/main/java/com/zh/project0512/service/ICustomerActionNoteService.java index d5388c3..3471cec 100644 --- a/src/main/java/com/zh/project0512/service/ICustomerActionNoteService.java +++ b/src/main/java/com/zh/project0512/service/ICustomerActionNoteService.java @@ -1,8 +1,11 @@ package com.zh.project0512.service; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zh.project0512.model.CustomerActionNote; import com.baomidou.mybatisplus.extension.service.IService; +import java.util.Map; + /** *

* 服务类 @@ -12,5 +15,5 @@ import com.baomidou.mybatisplus.extension.service.IService; * @since 2022-05-30 */ public interface ICustomerActionNoteService extends IService { - + IPage pageList(IPage page); } diff --git a/src/main/java/com/zh/project0512/serviceImpl/CustomerActionNoteServiceImpl.java b/src/main/java/com/zh/project0512/serviceImpl/CustomerActionNoteServiceImpl.java index 5c21f33..910ddea 100644 --- a/src/main/java/com/zh/project0512/serviceImpl/CustomerActionNoteServiceImpl.java +++ b/src/main/java/com/zh/project0512/serviceImpl/CustomerActionNoteServiceImpl.java @@ -1,11 +1,15 @@ package com.zh.project0512.serviceImpl; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.zh.project0512.model.CustomerActionNote; import com.zh.project0512.mapper.CustomerActionNoteMapper; import com.zh.project0512.service.ICustomerActionNoteService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.Map; + /** *

* 服务实现类 @@ -16,5 +20,9 @@ import org.springframework.stereotype.Service; */ @Service public class CustomerActionNoteServiceImpl extends ServiceImpl implements ICustomerActionNoteService { - + @Autowired + private CustomerActionNoteMapper customerActionNoteMapper; + public IPage pageList(IPage page){ + return customerActionNoteMapper.pageList(page); + } }