diff --git a/Cpop-Core/src/main/java/com/cpop/core/handler/GlobalExceptionHandler.java b/Cpop-Core/src/main/java/com/cpop/core/handler/GlobalExceptionHandler.java index 0986737..68ab15a 100644 --- a/Cpop-Core/src/main/java/com/cpop/core/handler/GlobalExceptionHandler.java +++ b/Cpop-Core/src/main/java/com/cpop/core/handler/GlobalExceptionHandler.java @@ -83,9 +83,11 @@ public class GlobalExceptionHandler { /** * 系统异常 - * @param e - * @param request - * @return + * @author DB + * @since 2023/12/04 + * @param e 异常 + * @param request 请求 + * @return R */ @ExceptionHandler(Exception.class) public R handleException(Exception e, HttpServletRequest request) { @@ -94,5 +96,4 @@ public class GlobalExceptionHandler { return R.fail(e.getMessage()); } - //TODO:可以自行后续拓展 } diff --git a/Cpop-Core/src/main/java/com/cpop/core/listen/SysOperationLogListen.java b/Cpop-Core/src/main/java/com/cpop/core/listen/SysOperationLogListen.java index 92a4838..e73db55 100644 --- a/Cpop-Core/src/main/java/com/cpop/core/listen/SysOperationLogListen.java +++ b/Cpop-Core/src/main/java/com/cpop/core/listen/SysOperationLogListen.java @@ -31,7 +31,6 @@ public class SysOperationLogListen { // 保存日志 operationLog.setId(IdUtils.fastSimpleUUID()); if (coreService.saveOperationLog(operationLog)) { - //TODO;后续可自定义其他操作 } } } diff --git a/Cpop-Core/src/main/java/com/cpop/core/service/impl/CoreServiceImpl.java b/Cpop-Core/src/main/java/com/cpop/core/service/impl/CoreServiceImpl.java index 2ffd775..06a4ebc 100644 --- a/Cpop-Core/src/main/java/com/cpop/core/service/impl/CoreServiceImpl.java +++ b/Cpop-Core/src/main/java/com/cpop/core/service/impl/CoreServiceImpl.java @@ -73,7 +73,6 @@ public class CoreServiceImpl implements CoreService { operationLog.setCreateUserId(loginUser.getUserId()); operationLog.setUpdateUserId(loginUser.getUserId()); if (coreMapper.insertOperationLog(operationLog)) { - //TODO:后续可自定义其他操作 } return operationLog.getId(); } diff --git a/Cpop-Jambox/src/main/java/com/cpop/jambox/business/service/impl/BrandExtendServiceImpl.java b/Cpop-Jambox/src/main/java/com/cpop/jambox/business/service/impl/BrandExtendServiceImpl.java index c2893c1..3a75481 100644 --- a/Cpop-Jambox/src/main/java/com/cpop/jambox/business/service/impl/BrandExtendServiceImpl.java +++ b/Cpop-Jambox/src/main/java/com/cpop/jambox/business/service/impl/BrandExtendServiceImpl.java @@ -14,40 +14,5 @@ import org.springframework.stereotype.Service; */ @Service("brandExtendService") public class BrandExtendServiceImpl extends ServiceImpl implements BrandExtendService { - /** - * @descriptions 查询品牌分页列表 - * @author DB - * @date 2023/09/13 17:55 - * @param bo 请求参数 - * @return com.cpop.core.base.R> - */ - /*@Override - public Page getBrandPage(BrandPageBo bo) { - PageDomain pageDomain = SqlUtils.getInstance().getPageDomain(); - return this.mapper.paginateAs(pageDomain.getPageNum(),pageDomain.getPageSize(), - QueryWrapper.create() - .select(BRAND.ID,BRAND.BRAND_CLOUD_ID,BRAND.NAME,BRAND.CREATE_TIME,BRAND.BACKGROUND_URL,BRAND.CONSULTANT_NAME) - .select(groupConcat(BRAND_STAFF_MID_CAMPUS.BRAND_STAFF_ID).as(BrandPageVo::getBrandStaffId)) - .select(groupConcat(BRAND_STAFF.NAME).as(BrandPageVo::getBrandStaffName)) - //管理员-品牌-校区表 - .leftJoin(BRAND_STAFF_MID_CAMPUS).on(BRAND_STAFF_MID_CAMPUS.BRAND_ID.eq(BRAND.ID)) - //管理员 - .leftJoin(BRAND_STAFF).on(BRAND_STAFF.ID.eq(BRAND_STAFF_MID_CAMPUS.BRAND_STAFF_ID)) - .and(BRAND.NAME.like(bo.getName())) - .groupBy(BRAND.ID), - BrandPageVo.class); - }*/ - /** - * @descriptions 修改品牌表 - * @author DB - * @date 2023/09/14 11:40 - * @param bo 请求参数 - */ - /*@Override - public void updateBrand(BrandBo bo) { - Brand entity = BeanUtils.mapToClass(bo, Brand.class); - this.updateById(entity); - //TODO:可能需要通知到云库 - }*/ } diff --git a/Cpop-Mall/Cpop-Mall-Web/src/test/java/com/cpop/mall/web/CpopCbcTests.java b/Cpop-Mall/Cpop-Mall-Web/src/test/java/com/cpop/mall/web/CpopCbcTests.java deleted file mode 100644 index 8888bc4..0000000 --- a/Cpop-Mall/Cpop-Mall-Web/src/test/java/com/cpop/mall/web/CpopCbcTests.java +++ /dev/null @@ -1,151 +0,0 @@ -package com.cpop.mall.web; - -import com.alibaba.excel.EasyExcel; -import com.alibaba.excel.annotation.ExcelProperty; -import com.alibaba.excel.annotation.write.style.ContentLoopMerge; -import lombok.Data; -import org.springframework.boot.test.context.SpringBootTest; - -/** - * @author DB - * @createTime 2023/11/15 17:15 - * @description CBC相关测试类 - */ -@SpringBootTest -public class CpopCbcTests { - - private final String FILE_NAME = "C:/Users/Administrator/Desktop/常规赛1v1对战信息" + System.currentTimeMillis() + ".xlsx"; - - /** - * @descriptions 导出比赛结果 - * @author DB - * @date 2023/11/15 17:16 - * @return: void - */ - public void exportGameResult() { - //TODO:获取数据 - //EasyExcel.write(FILE_NAME, GameResult.class).sheet("常规赛1v1对战信息").doWrite(data()); - } - - /** - * 比赛结果 - */ - @Data - public class GameResult { - - /** - * 场次 - */ - @ContentLoopMerge(eachRow = 10) - @ExcelProperty("场次") - private String session; - - /** - * "类型", "常规/OneMore" - */ - @ExcelProperty({"类型", "常规/OneMore"}) - private String type; - - /** - * 舞种 - */ - @ExcelProperty("舞种") - private String danceType; - - /** - * 轮次 - */ - @ExcelProperty("轮次") - private String turn; - - /** - * "战队A", "战队" - */ - @ExcelProperty({"战队A", "战队"}) - private String teamA; - - /** - * "战队A", "舞者" - */ - @ExcelProperty({"战队A", "舞者"}) - private String userA; - - /** - * "战队B", "战队" - */ - @ExcelProperty({"战队B", "战队"}) - private String teamB; - - /** - * "战队B", "舞者" - */ - @ExcelProperty({"战队B", "舞者"}) - private String userB; - - /** - * 胜负 - */ - @ExcelProperty("胜负") - private String winUser; - - /** - * 主裁 - */ - @ExcelProperty({"主裁", "名称"}) - private String masterReferee; - - /** - * "主裁", "打分" - */ - @ExcelProperty({"主裁", "打分"}) - private String masterRefereeMark; - - /** - * "副裁一", "名称" - */ - @ExcelProperty({"副裁一", "名称"}) - private String slaveRefereeA; - - /** - * "副裁一", "打分" - */ - @ExcelProperty({"副裁一", "打分"}) - private String slaveRefereeAMark; - - /** - * "副裁二", "名称" - */ - @ExcelProperty({"副裁二", "名称"}) - private String slaveRefereeB; - - /** - * "副裁二", "打分" - */ - @ExcelProperty({"副裁二", "打分"}) - private String slaveRefereeBMark; - - /** - * "副裁三", "名称" - */ - @ExcelProperty({"副裁三", "名称"}) - private String slaveRefereeC; - - /** - * "副裁三", "打分" - */ - @ExcelProperty({"副裁三", "打分"}) - private String slaveRefereeCMark; - - /** - * "副裁四", "名称" - */ - @ExcelProperty({"副裁四", "名称"}) - private String slaveRefereeD; - - /** - * "副裁四", "打分" - */ - @ExcelProperty({"副裁四", "打分"}) - private String slaveRefereeDMark; - } -} diff --git a/Cpop-Mall/src/main/java/com/cpop/mall/business/bo/StaffBo.java b/Cpop-Mall/src/main/java/com/cpop/mall/business/bo/StaffBo.java index 29d35a8..0d2e708 100644 --- a/Cpop-Mall/src/main/java/com/cpop/mall/business/bo/StaffBo.java +++ b/Cpop-Mall/src/main/java/com/cpop/mall/business/bo/StaffBo.java @@ -111,7 +111,7 @@ public class StaffBo implements Serializable { /** * 角色id */ - //TODO:@NotBlank(message = "角色id不能为空") + @NotBlank(message = "角色id不能为空") @ApiModelProperty(value = "角色id",required = true) private String roleId; diff --git a/Cpop-Mall/src/main/java/com/cpop/mall/business/service/impl/StaffServiceImpl.java b/Cpop-Mall/src/main/java/com/cpop/mall/business/service/impl/StaffServiceImpl.java index 6583f6f..0ad7c00 100644 --- a/Cpop-Mall/src/main/java/com/cpop/mall/business/service/impl/StaffServiceImpl.java +++ b/Cpop-Mall/src/main/java/com/cpop/mall/business/service/impl/StaffServiceImpl.java @@ -131,8 +131,7 @@ public class StaffServiceImpl extends ServiceImpl implements } //获取品牌信息 Brand brand = SpringUtils.getBean(BrandService.class).queryChain().where(BRAND.ID.eq(roleBrand.getBrandId())).one(); - //TODO:角色暂时不做处理,都是超级管理员 - //roleBrand.setRoleId(bo.getRoleId()); + roleBrand.setRoleId(bo.getRoleId()); //设置中间表 roleBrandService.save(roleBrand); staff.setUserId(sysUser.getId()) diff --git a/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopWxCpTests.java b/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopWxCpTests.java index 1ab9f6b..eb11ff1 100644 --- a/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopWxCpTests.java +++ b/Cpop-Oam/Cpop-Oam-Web/src/test/java/com/cpop/oam/web/CpopWxCpTests.java @@ -273,7 +273,6 @@ public class CpopWxCpTests { exportUsers.forEach(item -> { //创建用户 SysUser sysUser = new SysUser(); - //TODO:获取初始化密码 sysUser.setId(IdUtils.fastSimpleUUID()); sysUser.setPassword("$2a$10$6CA0M3iyO8u8zSVtmufYGO3KfLvjaE5fxdHCqTQ2NpxYH/Dxi/fBu") .setNickName(item.getAlias()) diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/PersonTaskPageBo.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/PersonTaskPageBo.java deleted file mode 100644 index 36a5455..0000000 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/PersonTaskPageBo.java +++ /dev/null @@ -1,44 +0,0 @@ -package com.cpop.oam.business.bo; - -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.experimental.Accessors; - -import java.io.Serializable; -import java.time.LocalDate; - -/** - * Description: - * date: 2023/5/15 16:20 - * - * @Author ST - */ -@Data -@Accessors(chain = true) -@ApiModel(value = "Task列表分页查询对象", description = "OAM-任务") -public class PersonTaskPageBo implements Serializable { - - private static final long serialVersionUID = 1L; - - /** - * 周一 - */ - @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8") - @ApiModelProperty("周一") - private LocalDate monday; - - /** - * 周末 - */ - @JsonFormat(pattern = "yyyy-MM-dd" , timezone = "GMT+8") - @ApiModelProperty("周末") - private LocalDate sunday; - - /** - * 任务状态 - */ - @ApiModelProperty("任务状态") - private Integer taskStatus; -} diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TaskAuditCommentsBo.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TaskAuditCommentsBo.java index 1d1d298..1a18d6b 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TaskAuditCommentsBo.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TaskAuditCommentsBo.java @@ -29,17 +29,11 @@ public class TaskAuditCommentsBo { private String id; /** - * 备注 + * 是否通过 */ - @ApiModelProperty("备注") - private String remark; - - /** - * 预期完成日期 - */ - @ApiModelProperty("预期完成日期") - @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") - private LocalDate expectedCompletionDate; + @NotNull(message = "是否通过不能为空") + @ApiModelProperty(value = "是否通过", required = true) + private Boolean isPass; /** * 任务评级(0:A;1:B;2:C;3:D;4:E) @@ -47,4 +41,9 @@ public class TaskAuditCommentsBo { @ApiModelProperty("任务评级(0:A;1:B;2:C;3:D;4:E)") private Integer taskRating; + /** + * 备注(不通过时可以写入备注) + */ + @ApiModelProperty("备注(不通过时可以写入备注)") + private String remark; } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TaskStaffGroupListBo.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TaskStaffGroupListBo.java deleted file mode 100644 index 7a1f4dc..0000000 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TaskStaffGroupListBo.java +++ /dev/null @@ -1,31 +0,0 @@ -package com.cpop.oam.business.bo; - -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; -import lombok.experimental.Accessors; - -import javax.validation.constraints.NotBlank; -import java.io.Serializable; - -/** - * OAM-任务-关联员工任务组表Bo - * - * @author DB.lost - * @since 2023-05-22 - */ -@Data -@Accessors(chain = true) -@ApiModel(value = "TaskStaffGroup对象", description = "OAM-任务-关联员工任务组表") -public class TaskStaffGroupListBo implements Serializable { - - private static final long serialVersionUID = 1L; - - /** - * 主键 - */ - @NotBlank(message = "不能为空") - @ApiModelProperty(value = "任务id",required = true) - private String taskId; - -} diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TransferTaskBo.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TransferTaskBo.java index a63a105..b4d32b8 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TransferTaskBo.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/bo/TransferTaskBo.java @@ -17,9 +17,7 @@ import java.io.Serializable; @Data @Accessors(chain = true) @ApiModel(value = "Task转交对象", description = "Task转交对象") -public class TransferTaskBo implements Serializable { - - private static final long serialVersionUID = 1L; +public class TransferTaskBo { /** * 主键 diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/controller/backstage/TaskTechnologyController.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/controller/backstage/TaskTechnologyController.java index 4d45bcf..f78a0ea 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/controller/backstage/TaskTechnologyController.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/controller/backstage/TaskTechnologyController.java @@ -16,6 +16,7 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import java.util.List; + import com.cpop.oam.business.service.TaskWorkOrderService; /** @@ -43,6 +44,7 @@ public class TaskTechnologyController { /** * 技术模块-今日事务-获取个人工单列表 + * * @author DB * @since 2023-11-30 19:41:32 */ @@ -56,182 +58,179 @@ public class TaskTechnologyController { /** * 工单模块-今日事务-工单记录列表 - * @author DB + * * @param workOrderId 工单id + * @author DB * @since 2023-11-29 11:25:28 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:record')") @ApiOperation("技术模块-今日事务-工单记录列表") @GetMapping("/getWorkOrderRecordList/{workOrderId}") public R> getWorkOrderRecordList(@PathVariable @ApiParam("工单id") - String workOrderId) { + String workOrderId) { List list = taskWorkOrderService.getWorkOrderRecordList(workOrderId); return R.ok(list); } /** * 工单模块-今日事务-新增工单记录 - * @author DB + * * @param bo 请求参数 + * @author DB * @since 2023-11-29 11:33:35 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:record')") @ApiOperation("技术模块-今日事务-新增工单记录") @PostMapping("/insertWorkOrderRecord") public R insertWorkOrderRecord(@RequestBody @Validated - TaskWorkOrderRecordBo bo) { + TaskWorkOrderRecordBo bo) { + //是否是第一个 + taskWorkOrderService.whetherReceive(bo.getTaskWorkOrderId()); taskWorkOrderService.insertWorkOrderRecord(bo); return R.ok(); } /** * 技术模块-任务归档-获取任务归档分页 - * @author DB - * @param subject 主体 + * + * @param subject 主体 * @param taskContent 任务内容 + * @author DB * @since 2023-11-30 21:11:47 */ @PreAuthorize("@aps.hasPermission('oamTask:taskArchiving:list')") @ApiOperation("技术模块-任务归档-获取任务归档分页") @GetMapping("/getTaskArchivingPage") public R> getTaskArchivingPage(@ApiParam(value = "主体") - String subject, @ApiParam(value = "任务内容") - String taskContent, @RequestParam("isFinish") @ApiParam(value = "是否已归档", required = true) - Boolean isFinish) { + String subject, @ApiParam(value = "任务内容") + String taskContent, @RequestParam("isFinish") @ApiParam(value = "是否已归档", required = true) + Boolean isFinish) { Page page = taskService.getTaskArchivingPage(subject, taskContent, isFinish); return R.ok(page); } /** * 技术模块-任务归档-设置任务归档 - * @author DB + * * @param taskId 任务id + * @author DB * @since 2023-11-30 21:49:05 */ @PreAuthorize("@aps.hasPermission('oamTask:taskArchiving:update')") @ApiOperation("技术模块-任务归档-设置任务归档") @PutMapping("/setTaskArchiving/{taskId}") public R setTaskArchiving(@PathVariable @ApiParam("任务id") - String taskId) { + String taskId) { taskService.setTaskArchiving(taskId); return R.ok(); } /** * 技术模块-任务领取-获取领取任务分页 + * + * @param subject 主体 + * @param taskContent 任务内容 + * @param taskGetStatus 任务领取状态(0:待领取;1:待评估;10:审核不通过) * @author DB - * @param subject 主体 - * @param taskContent 任务内容 - * @param toBeEvaluated 是否待评估 * @since 2023-11-30 22:21:58 */ @PreAuthorize("@aps.hasPermission('oamTask:task:list')") @ApiOperation("技术模块-任务领取-获取领取任务分页") @GetMapping("/getToBeClaimedPage") public R> getToBeClaimedPage(@ApiParam(value = "主体") - String subject, @ApiParam(value = "任务内容") - String taskContent, @RequestParam("toBeEvaluated") @ApiParam(value = "是否待评估", required = true) - Boolean toBeEvaluated) { - Page list = taskService.getToBeClaimedPage(subject, taskContent, toBeEvaluated); + String subject, @ApiParam(value = "任务内容") + String taskContent, @RequestParam("taskGetStatus") @ApiParam(value = "任务领取状态(0:待领取;1:待评估;2:审核不通过)", required = true) + Integer taskGetStatus) { + Page list = taskService.getToBeClaimedPage(subject, taskContent, taskGetStatus); return R.ok(list); } /** * 技术模块-任务领取-新增迭代任务 - * @author DB + * * @param bo 请求 + * @author DB * @since 2023-12-01 09:45:08 */ @PreAuthorize("@aps.hasPermission('oamTask:iterateTask:insert')") @ApiOperation("技术模块-任务领取-新增迭代任务") @PostMapping("/insertIterationTask") public R insertIterationTask(@RequestBody @Validated - TaskIterationBo bo) { + TaskIterationBo bo) { taskService.insertIterationTask(bo); return R.ok(); } /** * 技术模块-任务领取-技术人员领取任务 - * @author DB + * * @param id 任务id + * @author DB * @since 2023-12-01 10:15:28 */ @PreAuthorize("@aps.hasPermission('oamTask:iterateTask:update')") @ApiOperation("技术模块-任务领取-技术人员领取任务") @PutMapping("/claimTask/{id}") public R claimTask(@PathVariable @ApiParam("任务id") - String id) { + String id) { taskService.claimTask(id); return R.ok(); } /** * 技术模块-任务领取-任务审核 - * @author DB + * * @param bo 请求参数 + * @author DB * @since 2023-12-01 10:35:31 */ @PreAuthorize("@aps.hasPermission('oamTask:taskAudit:update')") @ApiOperation("技术模块-任务领取-任务审核") @PutMapping("/setTaskAuditComments") public R setTaskAuditComments(@RequestBody @Validated - TaskAuditCommentsBo bo) { + TaskAuditCommentsBo bo) { taskService.setTaskAuditComments(bo); return R.ok(); } /** - * @Description: 删除任务 - * @param id 主键 - * @return: R - * @Author: DB - * @Date: 2023/5/19 18:03 - **/ - @PreAuthorize("@aps.hasPermission('oamTask:task:remove')") - @ApiOperation("删除任务") - @DeleteMapping("/removeTask/{id}") - public R removeTask(@PathVariable - String id) { - taskService.removeById(id); - return R.ok(); - } - - /** - * @Description: 查询OAM-个人任务分页列表 - * @return: R> - * @Author: DB - * @Date: 2023/5/16 15:24 - **/ + * 技术模块-今日事务-个人任务分页列表 + * + * @return R> + * @author DB + * @since 2023/12/04 + */ @PreAuthorize("@aps.hasPermission('oamTask:task:list')") - @ApiOperation("个人任务分页列表") + @ApiOperation("技术模块-今日事务-个人任务分页列表") @GetMapping("/getPersonTaskPage") - public R> getPersonTaskPage(PersonTaskPageBo bo) { - Page list = taskService.getPersonTaskPage(bo); + public R> getPersonTaskPage() { + Page list = taskService.getPersonTaskPage(); return R.ok(list); } /** - * @Description: 查询OAM-任务成员组列表 - * @return: R> - * @Author: DB - * @Date: 2023/5/16 15:24 - **/ - @ApiOperation("任务成员组列表") - @GetMapping("/getTaskStaffGroupList") - public R> getTaskStaffGroupList(@Validated - TaskStaffGroupListBo bo) { - List list = taskStaffGroupService.getTaskStaffGroupList(bo); + * 技术模块-今日事务-任务成员组列表 + * + * @param taskId 任务id + * @return R> + * @author DB + * @since 2023/12/04 + */ + @ApiOperation("技术模块-今日事务-任务成员组列表") + @GetMapping("/getTaskStaffGroupList/{taskId}") + public R> getTaskStaffGroupList(@PathVariable String taskId) { + List list = taskStaffGroupService.getTaskStaffGroupList(taskId); return R.ok(list); } /** - * @Description: 查询技术员工列表 - * @return: R> - * @Author: DB - * @Date: 2023/5/11 17:50 - **/ - @ApiOperation("查询技术员工列表") + * 技术模块-今日事务-查询技术员工列表 + * + * @return R> + * @author DB + * @since 2023/12/04 + */ + @ApiOperation("技术模块-今日事务-查询技术员工列表") @GetMapping("/getTechnologyStaffList") public R> getTechnologyStaffList() { List list = staffService.getTechnologyStaffList(); @@ -239,83 +238,89 @@ public class TaskTechnologyController { } /** - * @Description: 新增任务员工组 + * 技术模块-今日事务-新增任务小组成员 + * * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/16 15:58 - **/ - @ApiOperation("新增任务小组成员") + * @return R + * @author DB + * @since 2023/12/04 + */ + @ApiOperation("技术模块-今日事务-新增任务小组成员") @PostMapping("/insertTaskStaffGroup") public R insertTaskStaffGroup(@RequestBody @Validated - TaskStaffGroupBo bo) { + TaskStaffGroupBo bo) { taskStaffGroupService.insertTaskStaffGroup(bo); return R.ok(); } /** - * @Description: 修改员工任务绩点 + * 技术模块-今日事务-修改任务负责人 + * * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/29 11:48 - **/ - @ApiOperation("修改员工任务绩点") - @PutMapping("/updateStaffGradePoint") - public R updateStaffGradePoint(@RequestBody @Validated - TaskStaffGroupBo bo) { - taskStaffGroupService.updateStaffGradePoint(bo); - return R.ok(); - } - - /** - * @Description: 删除成员组 - * @param id 主键 - * @return: R - * @Author: DB - * @Date: 2023/5/29 14:18 - **/ - @ApiOperation("删除成员组") - @DeleteMapping("/removeTaskStaffGroup/{id}") - public R removeTaskStaffGroup(@PathVariable - String id) { - taskStaffGroupService.removeTaskStaffGroupById(id); - return R.ok(); - } - - /** - * @Description: 修改任务进度 - * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/29 14:58 - **/ - @ApiOperation("修改任务进度") - @PutMapping("/updateTaskItem") - public R updateTaskItem(@RequestBody @Validated - TaskItemBo bo) { - taskService.updateTaskItem(bo); - return R.ok(); - } - - /** - * @Description: 修改任务负责人 - * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/29 14:58 - **/ - @ApiOperation("修改任务负责人") + * @return R + * @author DB + * @since 2023/12/04 + */ + @ApiOperation("技术模块-今日事务-修改任务负责人") @PutMapping("/updateTaskResponsibleStaff") public R updateTaskResponsibleStaff(@RequestBody @Validated - TransferTaskBo bo) { + TransferTaskBo bo) { taskService.updateTaskResponsibleStaff(bo); return R.ok(); } /** - * @Description: 完成任务 + * 技术模块-今日事务-修改员工任务绩点 + * + * @param bo 请求参数 + * @return R + * @author DB + * @since 2023/12/04 + */ + @ApiOperation("技术模块-今日事务-修改员工任务绩点") + @PutMapping("/updateStaffGradePoint") + public R updateStaffGradePoint(@RequestBody @Validated + TaskStaffGroupBo bo) { + taskStaffGroupService.updateStaffGradePoint(bo); + return R.ok(); + } + + /** + * 技术模块-今日事务-删除成员组 + * + * @param id 任务组id + * @return R + * @author DB + * @since 2023/12/04 + */ + @ApiOperation("技术模块-今日事务-删除成员组") + @DeleteMapping("/removeTaskStaffGroup/{id}") + public R removeTaskStaffGroup(@PathVariable + String id) { + taskStaffGroupService.removeTaskStaffGroupById(id); + return R.ok(); + } + + + + /** + * @param bo 请求参数 + * @Description: 修改任务进度 + * @return: R + * @Author: DB + * @Date: 2023/5/29 14:58 + **/ + @ApiOperation("技术模块-今日事务-转交任务") + @PutMapping("/updateTaskItem") + public R updateTaskItem(@RequestBody @Validated + TaskItemBo bo) { + taskService.updateTaskItem(bo); + return R.ok(); + } + + /** * @param id 主键 + * @Description: 完成任务 * @return: R * @Author: DB * @Date: 2023/5/31 16:24 @@ -324,15 +329,15 @@ public class TaskTechnologyController { @ApiOperation("完成任务") @PutMapping("/finishTask/{id}") public R finishTask(@PathVariable - String id) { + String id) { taskService.finishTask(id); return R.ok(); } /** - * @Description: 获取月度任务统计列表 * @param bo 请求参数 - * @return: R> + * @Description: 获取月度任务统计列表 + * @return: R> * @Author: DB * @Date: 2023/5/15 16:42 **/ diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/controller/backstage/TaskWorkOrderController.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/controller/backstage/TaskWorkOrderController.java index f768f71..7474663 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/controller/backstage/TaskWorkOrderController.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/controller/backstage/TaskWorkOrderController.java @@ -64,7 +64,6 @@ public class TaskWorkOrderController { * 工单模块-工单提交-获取当天值班人员 * @author DB * @since 2023-11-29 14:01:03 - * @version 1.0.0 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:list')") @ApiOperation("工单模块-工单提交-获取当天值班人员") @@ -78,7 +77,6 @@ public class TaskWorkOrderController { * 工单模块-工单提交-已办结分页列表 * @author DB * @since 2023-11-29 14:35:08 - * @version 1.0.0 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:list')") @ApiOperation("工单模块-工单提交-已办结分页列表") @@ -109,7 +107,6 @@ public class TaskWorkOrderController { * @author DB * @param workOrderId 工单id * @since 2023-11-29 11:25:28 - * @version 1.0.0 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:record')") @ApiOperation("工单模块-工单提交-工单记录列表") @@ -125,7 +122,6 @@ public class TaskWorkOrderController { * @author DB * @param bo 请求参数 * @since 2023-11-29 11:33:35 - * @version 1.0.0 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:record')") @ApiOperation("工单模块-工单提交-新增工单记录") @@ -141,7 +137,6 @@ public class TaskWorkOrderController { * @author DB * @param workOrderId 工单id * @since 2023-11-29 11:41:46 - * @version 1.0.0 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:record')") @ApiOperation("工单模块-工单提交-工单提醒") @@ -157,7 +152,6 @@ public class TaskWorkOrderController { * @author DB * @param workOrderId 工单id * @since 2023-11-29 12:30:21 - * @version 1.0.0 */ @Deprecated @PreAuthorize("@aps.hasPermission('oamTask:workOrder:update')") @@ -174,7 +168,6 @@ public class TaskWorkOrderController { * @author DB * @param bo 请求参数 * @since 2023-11-29 16:00:18 - * @version 1.0.0 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:update')") @ApiOperation("工单模块-工单提交-工单暂停") @@ -190,7 +183,6 @@ public class TaskWorkOrderController { * @author DB * @param workOrderId 工单id * @since 2023-11-29 15:44:08 - * @version 1.0.0 */ @PreAuthorize("@aps.hasPermission('oamTask:workOrder:update')") @ApiOperation("工单模块-工单提交-工单办结") @@ -211,8 +203,7 @@ public class TaskWorkOrderController { @GetMapping("/getBrandList") public R> getBrandList(@ApiParam("品牌名") String brandName) { - List list = - brandService.queryChain().and(BRAND.BRAND_NAME.like(brandName)).listAs(BrandListVo.class); + List list = brandService.queryChain().and(BRAND.BRAND_NAME.like(brandName)).listAs(BrandListVo.class); return R.ok(list); } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/entity/Task.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/entity/Task.java index 02d7d8d..2222e7d 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/entity/Task.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/entity/Task.java @@ -45,7 +45,7 @@ public class Task extends BaseEntity implements Serializable { private String responsibleStaffId; /** - * 任务状态(-1:失败;0:待审核;1:待接受;2:进行中;3:已完成;4:逾期;5:暂停;6:逾期完成;7:接收超时;8:待部署;9:待归档) + * 任务状态(-1:失败;0:待审核;1:待接受;2:进行中;3:已完成;4:逾期;5:暂停;6:逾期完成;7:接收超时;8:待部署;9:待归档;10:审核不通过) */ private Integer taskStatus; diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/StaffService.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/StaffService.java index 915f31f..34c4de9 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/StaffService.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/StaffService.java @@ -105,20 +105,11 @@ public interface StaffService extends IService { List getServiceStaffList(); /** - * @Description: 查询技术员工列表 - * @return: R> - * @Author: DB - * @Date: 2023/5/11 17:50 - **/ + * 技术模块-今日事务-查询技术员工列表 + * @author DB + * @since 2023/12/04 + * @return List + */ List getTechnologyStaffList(); - /** - * @descriptions 创建企业微信用户 - * @author DB - * @date 2023/10/13 14:31 - * @param wxMessage 企业微信用户信息 - * @return: void - */ - void createWxCpUser(WxCpXmlMessage wxMessage, WxCpService cpService); - } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskService.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskService.java index 69afbea..2bec1ba 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskService.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskService.java @@ -39,10 +39,10 @@ public interface TaskService extends IService { * @author DB * @param subject 主体 * @param taskContent 任务内容 - * @param toBeEvaluated 是否待评估 + * @param taskGetStatus 任务领取状态(0:待领取;1:待评估;10:审核不通过) * @since 2023-11-30 22:21:58 */ - Page getToBeClaimedPage(String subject, String taskContent, Boolean toBeEvaluated); + Page getToBeClaimedPage(String subject, String taskContent, Integer taskGetStatus); /** * 技术模块-任务领取-新增迭代任务 @@ -69,12 +69,12 @@ public interface TaskService extends IService { void setTaskAuditComments(TaskAuditCommentsBo bo); /** - * @Description: 查询OAM-个人任务分页列表 - * @return: R> - * @Author: DB - * @Date: 2023/5/16 15:24 - **/ - Page getPersonTaskPage(PersonTaskPageBo bo); + * 技术模块-今日事务-个人任务分页列表 + * @author DB + * @since 2023/12/04 + * @return Page + */ + Page getPersonTaskPage(); /** * @Description: 修改任务进度 @@ -86,12 +86,11 @@ public interface TaskService extends IService { void updateTaskItem(TaskItemBo bo); /** - * @Description: 修改任务负责人 + * 技术模块-今日事务-修改任务负责人 + * @author DB + * @since 2023/12/04 * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/29 14:58 - **/ + */ void updateTaskResponsibleStaff(TransferTaskBo bo); /** diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskStaffGroupService.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskStaffGroupService.java index 732658b..c1df832 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskStaffGroupService.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskStaffGroupService.java @@ -2,7 +2,6 @@ package com.cpop.oam.business.service; import com.mybatisflex.core.service.IService; import com.cpop.oam.business.bo.TaskStaffGroupBo; -import com.cpop.oam.business.bo.TaskStaffGroupListBo; import com.cpop.oam.business.entity.TaskStaffGroup; import com.cpop.oam.business.vo.TaskStaffGroupVo; @@ -17,37 +16,35 @@ import java.util.List; public interface TaskStaffGroupService extends IService { /** - * @Description: 查询OAM-任务成员组列表 - * @return: R> - * @Author: DB - * @Date: 2023/5/16 15:24 - **/ - List getTaskStaffGroupList(TaskStaffGroupListBo bo); + * 技术模块-今日事务-任务成员组列 + * @author DB + * @since 2023/12/04 + * @param taskId 任务id + * @return List + */ + List getTaskStaffGroupList(String taskId); /** - * @Description: 新增任务员工组 + * 技术模块-今日事务-新增任务小组成员 + * @author DB + * @since 2023/12/04 * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/16 15:58 - **/ + */ void insertTaskStaffGroup(TaskStaffGroupBo bo); /** - * @Description: 修改员工任务绩点 + * 技术模块-今日事务-修改员工任务绩点 + * @author DB + * @since 2023/12/04 * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/29 11:48 - **/ + */ void updateStaffGradePoint(TaskStaffGroupBo bo); /** - * @Description: 删除成员组 - * @param id 主键 - * @return: R - * @Author: DB - * @Date: 2023/5/29 14:18 - **/ + * 技术模块-今日事务-删除成员组 + * @author DB + * @since 2023/12/04 + * @param id 任务组id + */ void removeTaskStaffGroupById(String id); } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskWorkOrderService.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskWorkOrderService.java index 51a73fd..be1acbb 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskWorkOrderService.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/TaskWorkOrderService.java @@ -34,7 +34,6 @@ public interface TaskWorkOrderService extends IService { * 工单模块-工单提交-获取当天值班人员 * @author DB * @since 2023-11-29 14:01:03 - * @version 1.0.0 */ WorkOrderDutyVo getWorkOrderDutyStaff(); @@ -42,14 +41,12 @@ public interface TaskWorkOrderService extends IService { * 工单模块-工单提交-已办结分页列表 * @author DB * @since 2023-11-29 14:35:08 - * @version 1.0.0 */ Page finishWorkOrderPage(); /** * 工单模块-工单提交-新增工单 * @param bo 请求参数 - * @return R * @author DB * @since 2023/5/30 16:53 **/ @@ -60,7 +57,6 @@ public interface TaskWorkOrderService extends IService { * @author DB * @param workOrderId 工单id * @since 2023-11-29 11:25:28 - * @version 1.0.0 */ List getWorkOrderRecordList(String workOrderId); @@ -69,7 +65,6 @@ public interface TaskWorkOrderService extends IService { * @author DB * @param bo 请求参数 * @since 2023-11-29 11:33:35 - * @version 1.0.0 */ void insertWorkOrderRecord(TaskWorkOrderRecordBo bo); @@ -78,7 +73,6 @@ public interface TaskWorkOrderService extends IService { * @author DB * @param workOrderId 工单id * @since 2023-11-29 11:41:46 - * @version 1.0.0 */ void workOrderRemind(String workOrderId); @@ -87,7 +81,6 @@ public interface TaskWorkOrderService extends IService { * @author DB * @param workOrderId 工单id * @since 2023-11-29 12:30:21 - * @version 1.0.0 */ void workOrderToDemand(String workOrderId); @@ -96,7 +89,6 @@ public interface TaskWorkOrderService extends IService { * @author DB * @param bo 请求参数 * @since 2023-11-29 16:00:18 - * @version 1.0.0 */ void pauseWorkOrder(PauseWorkOrderBo bo); @@ -105,7 +97,6 @@ public interface TaskWorkOrderService extends IService { * @author DB * @param workOrderId 工单id * @since 2023-11-29 15:44:08 - * @version 1.0.0 */ void workOrderFinish(String workOrderId); @@ -115,4 +106,12 @@ public interface TaskWorkOrderService extends IService { * @since 2023-11-30 19:41:32 */ List getPersonWorkOrder(); + + /** + * 是否是第一个接收的技术员工 + * @param taskWorkOrderId 工单记录id + * @author DB + * @since 2023/12/04 + */ + void whetherReceive(String taskWorkOrderId); } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/StaffServiceImpl.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/StaffServiceImpl.java index ba33548..110ccdb 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/StaffServiceImpl.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/StaffServiceImpl.java @@ -364,11 +364,11 @@ public class StaffServiceImpl extends ServiceImpl implements } /** - * @Description: 查询技术员工列表 - * @return: R> - * @Author: DB - * @Date: 2023/5/11 17:50 - **/ + * 技术模块-今日事务-查询技术员工列表 + * @author DB + * @since 2023/12/04 + * @return List + */ @Override public List getTechnologyStaffList() { return this.listAs(QueryWrapper.create() @@ -381,17 +381,4 @@ public class StaffServiceImpl extends ServiceImpl implements StaffVo.class); } - /** - * @descriptions 创建企业微信用户 - * @author DB - * @date 2023/10/13 14:31 - * @param wxMessage 企业微信用户信息 - * @return: void - */ - @Override - public void createWxCpUser(WxCpXmlMessage wxMessage, WxCpService cpService) { - //TODO:先改造部门 - //insertStaff(wxCpUserToStaff(wxMessage, cpService)); - } - } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskServiceImpl.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskServiceImpl.java index 7ddef6e..97b52ac 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskServiceImpl.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskServiceImpl.java @@ -44,10 +44,7 @@ import java.time.ZoneId; import java.time.format.DateTimeFormatter; import java.time.temporal.ChronoUnit; import java.time.temporal.TemporalAdjusters; -import java.util.ArrayList; -import java.util.Date; -import java.util.List; -import java.util.Set; +import java.util.*; import java.util.stream.Collectors; import static com.cpop.oam.business.entity.table.StaffTableDef.STAFF; @@ -55,6 +52,7 @@ import static com.cpop.oam.business.entity.table.TaskDemandTableDef.TASK_DEMAND; import static com.cpop.oam.business.entity.table.TaskStaffGroupTableDef.TASK_STAFF_GROUP; import static com.cpop.oam.business.entity.table.TaskTableDef.TASK; import static com.mybatisflex.core.query.QueryMethods.groupConcat; + import org.springframework.transaction.annotation.Transactional; /** @@ -68,9 +66,10 @@ public class TaskServiceImpl extends ServiceImpl implements Ta /** * 技术模块-任务归档-获取任务归档分页 - * @author DB - * @param subject 品主体牌名 + * + * @param subject 品主体牌名 * @param taskContent 任务内容 + * @author DB * @since 2023-11-30 21:11:47 */ @Override @@ -79,105 +78,108 @@ public class TaskServiceImpl extends ServiceImpl implements Ta JSONObject loginUserInfo = SecurityUtils.getInstance().getLoginUserInfo(); PageDomain pageDomain = SqlUtils.getInstance().getPageDomain(); return this.mapper.paginateAs(Page.of(pageDomain.getPageNum(), pageDomain.getPageSize()), - QueryWrapper.create() - .select(TASK.ID, - TASK.RESPONSIBLE_STAFF_ID, - TASK.TASK_CONTENT, - TASK.TASK_RATING, - TASK.TASK_RECEIPT_TIME, - TASK.TEST_TO_FINISH_URL, - TASK.TO_TEST_TIME, - TASK.TO_FINISH_TIME, - TASK.SUBJECT) - .select(TASK_STAFF_GROUP.GRADE_POINT) - .from(TASK) - .leftJoin(TASK_STAFF_GROUP) - .on(TASK_STAFF_GROUP.TASK_ID.eq(TASK.ID)) - .where(TASK_STAFF_GROUP.STAFF_ID.eq(loginUserInfo.getString("id"))) - .and(TASK.TASK_STATUS.eq(isFinish ? 8 : 9).and(TASK.TASK_CONTENT.like(taskContent))) - .and(TASK.SUBJECT.like(subject)), - TaskArchivingPagVo.class, - // 负责人 - item -> item.field(TaskArchivingPagVo::getResponsibleStaffName) - .queryWrapper( - recordStaff -> queryChain().select(STAFF.NAME.as(TaskArchivingPagVo::getResponsibleStaffName)) - .from(STAFF) - .where(STAFF.ID.eq(recordStaff.getResponsibleStaffId()))), - // 小组成员 - item -> item.field(TaskArchivingPagVo::getTaskGroupStaffs) - .queryWrapper(taskGroupStaffs -> queryChain() - .select(groupConcat(STAFF.NAME).as(TaskArchivingPagVo::getTaskGroupStaffs)) - .from(STAFF) - .leftJoin(TASK_STAFF_GROUP) - .on(TASK_STAFF_GROUP.TASK_ID.eq(TASK.ID)) - .where(TASK_STAFF_GROUP.STAFF_ID.eq(taskGroupStaffs.getId())) - .groupBy(TASK.ID))); + QueryWrapper.create() + .select(TASK.ID, + TASK.RESPONSIBLE_STAFF_ID, + TASK.TASK_CONTENT, + TASK.TASK_RATING, + TASK.TASK_RECEIPT_TIME, + TASK.TEST_TO_FINISH_URL, + TASK.TO_TEST_TIME, + TASK.TO_FINISH_TIME, + TASK.SUBJECT) + .select(TASK_STAFF_GROUP.GRADE_POINT) + .from(TASK) + .leftJoin(TASK_STAFF_GROUP) + .on(TASK_STAFF_GROUP.TASK_ID.eq(TASK.ID)) + .where(TASK_STAFF_GROUP.STAFF_ID.eq(loginUserInfo.getString("id"))) + .and(TASK.TASK_STATUS.eq(isFinish ? 8 : 9).and(TASK.TASK_CONTENT.like(taskContent))) + .and(TASK.SUBJECT.like(subject)), + TaskArchivingPagVo.class, + // 负责人 + item -> item.field(TaskArchivingPagVo::getResponsibleStaffName) + .queryWrapper( + recordStaff -> queryChain().select(STAFF.NAME.as(TaskArchivingPagVo::getResponsibleStaffName)) + .from(STAFF) + .where(STAFF.ID.eq(recordStaff.getResponsibleStaffId()))), + // 小组成员 + item -> item.field(TaskArchivingPagVo::getTaskGroupStaffs) + .queryWrapper(taskGroupStaffs -> queryChain() + .select(groupConcat(STAFF.NAME).as(TaskArchivingPagVo::getTaskGroupStaffs)) + .from(STAFF) + .leftJoin(TASK_STAFF_GROUP) + .on(TASK_STAFF_GROUP.TASK_ID.eq(TASK.ID)) + .where(TASK_STAFF_GROUP.STAFF_ID.eq(taskGroupStaffs.getId())) + .groupBy(TASK.ID))); } /** * 技术模块-任务归档-设置任务归档 - * @author DB + * * @param taskId 任务id + * @author DB * @since 2023-11-30 21:49:05 */ @Override public void setTaskArchiving(String taskId) { this.updateChain() - .set(TASK.TASK_STATUS, 9) - .set(TASK.TO_FINISH_TIME, LocalDateTime.now()) - .where(TASK.ID.eq(taskId)) - .update(); + .set(TASK.TASK_STATUS, 9) + .set(TASK.TO_FINISH_TIME, LocalDateTime.now()) + .where(TASK.ID.eq(taskId)) + .update(); } /** * 技术模块-任务领取-获取领取任务分页 + * + * @param subject 主体 + * @param taskContent 任务内容 + * @param taskGetStatus 任务领取状态(0:待领取;1:待评估;10:审核不通过) * @author DB - * @param subject 主体 - * @param taskContent 任务内容 - * @param toBeEvaluated 是否待评估 * @since 2023-11-30 22:21:58 */ @Override - public Page getToBeClaimedPage(String subject, String taskContent, Boolean toBeEvaluated) { + public Page getToBeClaimedPage(String subject, String taskContent, Integer taskGetStatus) { // 获取当前员工 PageDomain pageDomain = SqlUtils.getInstance().getPageDomain(); return this.mapper.paginateAs(Page.of(pageDomain.getPageNum(), pageDomain.getPageSize()), - QueryWrapper.create() - .select(TASK.ID, - TASK.TASK_TYPE, - TASK.SUBJECT, - TASK.TASK_CONTENT, - TASK.ATTACHMENT_URL, - TASK.TASK_RATING, - TASK.CREATE_TIME) - .select(TASK_STAFF_GROUP.GRADE_POINT) - .from(TASK) - .leftJoin(TASK_STAFF_GROUP) - .on(TASK_STAFF_GROUP.TASK_ID.eq(TASK.ID)) - .where(TASK.TASK_STATUS.eq(toBeEvaluated ? 0 : 1)) - .and(TASK.TASK_CONTENT.like(taskContent)) - .and(TASK.SUBJECT.like(subject)) - .orderBy(TASK.IS_URGENT.desc(), TASK.CREATE_TIME.desc()), - TaskToBeClaimedPageVo.class, - // 对接人 - item -> item.field(TaskToBeClaimedPageVo::getDockingStaff).queryWrapper(dockingStaff -> { - if (dockingStaff.getTaskType() == 1) { - return queryChain().select(STAFF.NAME.as(TaskToBeClaimedPageVo::getDockingStaff)) - .select(STAFF.NAME) - .from(STAFF) - .leftJoin(TASK_DEMAND) - .on(TASK_DEMAND.RECORD_STAFF_ID.eq(STAFF.ID)) - .where(TASK_DEMAND.TASK_ID.eq(dockingStaff.getId())); - } else { - return null; - } - })); + QueryWrapper.create() + .select(TASK.ID, + TASK.TASK_TYPE, + TASK.SUBJECT, + TASK.TASK_CONTENT, + TASK.ATTACHMENT_URL, + TASK.TASK_RATING, + TASK.CREATE_TIME) + .select(TASK_STAFF_GROUP.GRADE_POINT) + .from(TASK) + .leftJoin(TASK_STAFF_GROUP) + .on(TASK_STAFF_GROUP.TASK_ID.eq(TASK.ID)) + .where(TASK.TASK_STATUS.eq(taskGetStatus)) + .and(TASK.TASK_CONTENT.like(taskContent)) + .and(TASK.SUBJECT.like(subject)) + .orderBy(TASK.IS_URGENT.desc(), TASK.CREATE_TIME.desc()), + TaskToBeClaimedPageVo.class, + // 对接人 + item -> item.field(TaskToBeClaimedPageVo::getDockingStaff).queryWrapper(dockingStaff -> { + if (dockingStaff.getTaskType() == 1) { + return queryChain().select(STAFF.NAME.as(TaskToBeClaimedPageVo::getDockingStaff)) + .select(STAFF.NAME) + .from(STAFF) + .leftJoin(TASK_DEMAND) + .on(TASK_DEMAND.RECORD_STAFF_ID.eq(STAFF.ID)) + .where(TASK_DEMAND.TASK_ID.eq(dockingStaff.getId())); + } else { + return null; + } + })); } /** * 技术模块-任务领取-新增迭代任务 - * @author DB + * * @param bo 请求 + * @author DB * @since 2023-12-01 09:45:08 */ @Override @@ -202,10 +204,10 @@ public class TaskServiceImpl extends ServiceImpl implements Ta phoneList.add(auditStaffPhone); try { SpringUtils.getBean(WebHookSendHandler.class) - .webHookSendText(WebHookKeyConstant.PRODUCT_BOT, - phoneList, - "==========您有一条新的迭代任务需要审核==========" + "\n" + entity.getTaskContent(), - false); + .webHookSendText(WebHookKeyConstant.PRODUCT_BOT, + phoneList, + "==========您有一条新的迭代任务需要审核==========" + "\n" + entity.getTaskContent(), + false); } catch (IOException e) { throw new ServiceException("发送迭代任务通知失败!"); } @@ -213,8 +215,9 @@ public class TaskServiceImpl extends ServiceImpl implements Ta /** * 技术模块-任务领取-技术人员领取任务 - * @author DB + * * @param id 任务id + * @author DB * @since 2023-12-01 10:15:28 */ @Override @@ -257,11 +260,11 @@ public class TaskServiceImpl extends ServiceImpl implements Ta } } // 获取当前用户 - LoginUser loginUser = SecurityUtils.getInstance().getLoginUser(); - if (!Constants.SUPER_ADMIN.equals(loginUser.getUsername())) { + JSONObject loginUser = SecurityUtils.getInstance().getLoginUserInfo(); + if (!Constants.SUPER_ADMIN.equals(loginUser.getString("userName"))) { // 获取当前员工 Staff staff = SpringUtils.getBean(StaffService.class) - .getOne(QueryWrapper.create().where(STAFF.USER_ID.eq(loginUser.getUserId()))); + .getOne(QueryWrapper.create().where(STAFF.USER_ID.eq(loginUser.getString("userId")))); task.setResponsibleStaffId(staff.getId()); } this.updateById(task); @@ -290,78 +293,82 @@ public class TaskServiceImpl extends ServiceImpl implements Ta } taskStaffGroup.setStaffId(task.getResponsibleStaffId()).setTaskId(id).setGradePoint(taskRatingPoint); SpringUtils.getBean(TaskStaffGroupService.class).save(taskStaffGroup); + // 通知所有人 + try { + SpringUtils.getBean(WebHookSendHandler.class) + .webHookSendText(WebHookKeyConstant.PRODUCT_BOT, + Collections.singletonList(loginUser.getString("phoneNumber")), + "==========任务领取==========" + "\n" + task.getTaskContent(), + false); + } catch (IOException e) { + throw new ServiceException("发送任务领取通知失败!"); + } } /** * 技术模块-任务领取-任务审核 - * @author DB + * * @param bo 请求参数 + * @author DB * @since 2023-12-01 10:35:31 */ @Override public void setTaskAuditComments(TaskAuditCommentsBo bo) { Task entity = BeanUtils.mapToClass(bo, Task.class); - entity.setTaskStatus(1); - this.updateById(entity); - // 通知所有人 - try { - SpringUtils.getBean(WebHookSendHandler.class) - .webHookSendText(WebHookKeyConstant.PRODUCT_BOT, - new ArrayList<>(), - "==========任务审核通过==========" + "\n" + entity.getTaskContent(), - true); - } catch (IOException e) { - throw new ServiceException("发送任务审核通过通知失败!"); + if (bo.getIsPass()) { + entity.setTaskStatus(1); + this.updateById(entity); + // 通知所有人 + try { + SpringUtils.getBean(WebHookSendHandler.class) + .webHookSendText(WebHookKeyConstant.PRODUCT_BOT, + new ArrayList<>(), + "==========任务审核通过==========" + "\n" + entity.getTaskContent(), + true); + } catch (IOException e) { + throw new ServiceException("发送任务审核通过通知失败!"); + } + } else { + entity.setTaskStatus(10); + this.updateById(entity); } } /** - * @Description: 查询OAM-个人任务分页列表 - * @return: R> - * @Author: DB - * @Date: 2023/5/16 15:24 - **/ + * 技术模块-今日事务-个人任务分页列表 + * + * @return Page + * @author DB + * @since 2023/12/04 + */ @Override - public Page getPersonTaskPage(PersonTaskPageBo bo) { - // 获取当前登录用户 - LoginUser loginUser = SecurityUtils.getInstance().getLoginUser(); - String staffId = null; - if (Constants.SUPER_ADMIN.equals(loginUser.getUsername())) { - // TODO:超级管理员暂时获取所有任务 - } else { - Staff staff = SpringUtils.getBean(StaffService.class) - .getOne(QueryWrapper.create().where(STAFF.USER_ID.eq(loginUser.getUserId()))); - staffId = staff.getId(); - } - // 任务状态 - QueryWrapper queryWrapper = QueryWrapper.create(); - if (null != bo.getTaskStatus()) { - queryWrapper.and(TASK.TASK_STATUS.in(3, 6)); - } else { - // 只查询接受与已逾期的任务 - queryWrapper.and(TASK.TASK_STATUS.in(2, 4)); - } + public Page getPersonTaskPage() { PageDomain pageDomain = SqlUtils.getInstance().getPageDomain(); return this.mapper.paginateAs(pageDomain.getPageNum(), - pageDomain.getPageSize(), - queryWrapper.select(TASK.ALL_COLUMNS) - .select(STAFF.NAME.as(PersonTaskPageVo::getResponsibleStaffName)) - .from(TASK) - // 员工表 - .leftJoin(STAFF) - .on(STAFF.ID.eq(TASK.RESPONSIBLE_STAFF_ID)) - // 任务员工组 - .leftJoin(TASK_STAFF_GROUP) - .on(TASK_STAFF_GROUP.TASK_ID.eq(TASK.ID)) - .where(TASK.TASK_TYPE.in(0, 1)) - .and(TASK_STAFF_GROUP.STAFF_ID.eq(staffId)) - .orderBy(TASK.EXPECTED_COMPLETION_DATE.asc()), - PersonTaskPageVo.class); + pageDomain.getPageSize(), + QueryWrapper.create() + .select(TASK.ID, TASK.TASK_STATUS, TASK.TASK_CONTENT, TASK.TASK_ITEM, TASK.TASK_RATING, TASK.TASK_RECEIPT_TIME, TASK.EXPECTED_COMPLETION_DATE) + .select(STAFF.NAME.as(PersonTaskPageVo::getResponsibleStaffName)) + //个人绩点 + .select(TASK_STAFF_GROUP.GRADE_POINT) + .from(TASK) + // 员工表 + .leftJoin(STAFF) + .on(STAFF.ID.eq(TASK.RESPONSIBLE_STAFF_ID)) + // 任务员工组 + .leftJoin(TASK_STAFF_GROUP) + .on(TASK_STAFF_GROUP.TASK_ID.eq(TASK.ID)) + .where(TASK.TASK_TYPE.in(0, 1)) + //进行中与已完成的任务 + .and(TASK.TASK_STATUS.in(2, 3, 4, 6)) + .and(STAFF.ID.eq(SecurityUtils.getInstance().getLoginUserInfo().getString("id"))) + .orderBy(TASK.EXPECTED_COMPLETION_DATE.asc()), + PersonTaskPageVo.class); } /** - * @Description: 修改任务进度 * @param bo 请求参数 + * @Description: 修改任务进度 * @return: R * @Author: DB * @Date: 2023/5/29 14:58 @@ -373,50 +380,50 @@ public class TaskServiceImpl extends ServiceImpl implements Ta } /** - * @Description: 修改任务负责人 + * 技术模块-今日事务-修改任务负责人 + * * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/29 14:58 - **/ + * @author DB + * @since 2023/12/04 + */ @Override public void updateTaskResponsibleStaff(TransferTaskBo bo) { isTaskResponsibleStaff(bo.getId()); // 新负责人在不在任务组内 TaskStaffGroupService taskStaffGroupService = SpringUtils.getBean(TaskStaffGroupService.class); long count = taskStaffGroupService.count(QueryWrapper.create() - .where(TASK_STAFF_GROUP.TASK_ID.eq(bo.getId())) - .and(TASK_STAFF_GROUP.STAFF_ID.eq(bo.getNewResponsibleStaffId()))); + .where(TASK_STAFF_GROUP.TASK_ID.eq(bo.getId())) + .and(TASK_STAFF_GROUP.STAFF_ID.eq(bo.getNewResponsibleStaffId()))); // 获取旧员工绩点 TaskStaffGroup oldStaffGroup = taskStaffGroupService.getOne(QueryWrapper.create() - .where(TASK_STAFF_GROUP.TASK_ID.eq(bo.getId())) - .and(TASK_STAFF_GROUP.STAFF_ID.eq(bo.getResponsibleStaffId()))); + .where(TASK_STAFF_GROUP.TASK_ID.eq(bo.getId())) + .and(TASK_STAFF_GROUP.STAFF_ID.eq(bo.getResponsibleStaffId()))); if (count == 0) { // 不在 TaskStaffGroup taskStaffGroup = new TaskStaffGroup(); taskStaffGroup.setStaffId(bo.getNewResponsibleStaffId()) - .setTaskId(bo.getId()) - .setGradePoint(oldStaffGroup.getGradePoint()); + .setTaskId(bo.getId()) + .setGradePoint(oldStaffGroup.getGradePoint()); taskStaffGroupService.save(taskStaffGroup); } else { // 在,直接添加绩点 TaskStaffGroup newStaffGroup = taskStaffGroupService.getOne(QueryWrapper.create() - .where(TASK_STAFF_GROUP.TASK_ID.eq(bo.getId())) - .and(TASK_STAFF_GROUP.STAFF_ID.eq(bo.getNewResponsibleStaffId()))); + .where(TASK_STAFF_GROUP.TASK_ID.eq(bo.getId())) + .and(TASK_STAFF_GROUP.STAFF_ID.eq(bo.getNewResponsibleStaffId()))); newStaffGroup.setGradePoint(newStaffGroup.getGradePoint() + oldStaffGroup.getGradePoint()); taskStaffGroupService.updateById(newStaffGroup); } taskStaffGroupService.removeById(oldStaffGroup.getId()); // 替换任务负责人 this.updateChain() - .set(TASK.RESPONSIBLE_STAFF_ID, bo.getNewResponsibleStaffId()) - .where(TASK.ID.eq(bo.getId())) - .update(); + .set(TASK.RESPONSIBLE_STAFF_ID, bo.getNewResponsibleStaffId()) + .where(TASK.ID.eq(bo.getId())) + .update(); } /** - * @Description: 是否是任务主要负责员工 * @param taskId 任务id + * @Description: 是否是任务主要负责员工 * @return: Boolean * @Author: DB * @Date: 2023/5/30 9:48 @@ -436,8 +443,8 @@ public class TaskServiceImpl extends ServiceImpl implements Ta } /** - * @Description: 完成任务 * @param id 主键 + * @Description: 完成任务 * @return: R * @Author: DB * @Date: 2023/5/31 16:24 @@ -467,9 +474,9 @@ public class TaskServiceImpl extends ServiceImpl implements Ta } /** - * @Description: 获取月度任务统计列表 * @param bo 请求参数 - * @return: R> + * @Description: 获取月度任务统计列表 + * @return: R> * @Author: DB * @Date: 2023/5/15 16:42 **/ @@ -480,16 +487,14 @@ public class TaskServiceImpl extends ServiceImpl implements Ta // 读取员工信息 JSONObject loginUserInfo = SecurityUtils.getInstance().getLoginUserInfo(); QueryWrapper queryWrapper = QueryWrapper.create(); - if (Constants.SUPER_ADMIN.equals(loginUserInfo.getString("userName"))) { - // TODO:超级管理员暂时获取所有任务 - } else { + if (!Constants.SUPER_ADMIN.equals(loginUserInfo.getString("userName"))) { // 查询个人涉及到的任务 TaskStaffGroupService taskStaffGroupService = SpringUtils.getBean(TaskStaffGroupService.class); taskStaffGroups = taskStaffGroupService - .list(QueryWrapper.create().where(TASK_STAFF_GROUP.STAFF_ID.eq(loginUserInfo.getString("id")))); + .list(QueryWrapper.create().where(TASK_STAFF_GROUP.STAFF_ID.eq(loginUserInfo.getString("id")))); if (!taskStaffGroups.isEmpty()) { queryWrapper.and( - TASK.ID.in(taskStaffGroups.stream().map(TaskStaffGroup::getTaskId).collect(Collectors.toSet()))); + TASK.ID.in(taskStaffGroups.stream().map(TaskStaffGroup::getTaskId).collect(Collectors.toSet()))); } if (taskStaffGroups.isEmpty()) { return new TaskMonthStatisticsVo(); @@ -508,8 +513,8 @@ public class TaskServiceImpl extends ServiceImpl implements Ta firstDay = now.with(TemporalAdjusters.firstDayOfMonth()); } List taskList = this.list(queryWrapper.select(TASK.ALL_COLUMNS) - .and(TASK.EXPECTED_COMPLETION_DATE.ge(firstDay)) - .orderBy(TASK.EXPECTED_COMPLETION_DATE.asc())); + .and(TASK.EXPECTED_COMPLETION_DATE.ge(firstDay)) + .orderBy(TASK.EXPECTED_COMPLETION_DATE.asc())); if (taskList.isEmpty()) { return new TaskMonthStatisticsVo(); } @@ -524,7 +529,7 @@ public class TaskServiceImpl extends ServiceImpl implements Ta * @Date: 2023/5/15 17:54 **/ private TaskMonthStatisticsVo buildMonthTaskStatistics(List taskList, TaskMonthStatisticsBo bo, - List taskStaffGroups) { + List taskStaffGroups) { TaskMonthStatisticsVo statisticsVo = new TaskMonthStatisticsVo(); List vos = new ArrayList<>(); statisticsVo.setVos(vos); @@ -533,7 +538,7 @@ public class TaskServiceImpl extends ServiceImpl implements Ta statisticsVo.setInProgress(taskList.stream().filter(s -> 2 == s.getTaskStatus()).count()); // 已完成 Set finishTaskSet = - taskList.stream().filter(s -> 3 == s.getTaskStatus()).map(Task::getId).collect(Collectors.toSet()); + taskList.stream().filter(s -> 3 == s.getTaskStatus()).map(Task::getId).collect(Collectors.toSet()); statisticsVo.setHaveCompleted(Long.parseLong(String.valueOf(finishTaskSet.size()))); // 已逾期 statisticsVo.setOverdue(taskList.stream().filter(s -> 4 == s.getTaskStatus()).count()); @@ -543,15 +548,15 @@ public class TaskServiceImpl extends ServiceImpl implements Ta statisticsVo.setOverdueCompletion(taskList.stream().filter(s -> 6 == s.getTaskStatus()).count()); // 逾期完成 Set overdueCompletionSet = - taskList.stream().filter(s -> 6 == s.getTaskStatus()).map(Task::getId).collect(Collectors.toSet()); + taskList.stream().filter(s -> 6 == s.getTaskStatus()).map(Task::getId).collect(Collectors.toSet()); if (null != taskStaffGroups) { // 统计绩点(计算已完成的和逾期完成) Long finishGpa = statisticalGPA(taskStaffGroups.stream() - .filter(s -> finishTaskSet.contains(s.getTaskId())) - .collect(Collectors.toList())); + .filter(s -> finishTaskSet.contains(s.getTaskId())) + .collect(Collectors.toList())); Long overdueCompletionGpa = statisticalGPA(taskStaffGroups.stream() - .filter(s -> overdueCompletionSet.contains(s.getTaskId())) - .collect(Collectors.toList())); + .filter(s -> overdueCompletionSet.contains(s.getTaskId())) + .collect(Collectors.toList())); statisticsVo.setGpaOfTheMonth(finishGpa + overdueCompletionGpa); } List allTheDateOfMonth; @@ -582,8 +587,8 @@ public class TaskServiceImpl extends ServiceImpl implements Ta } /** - * @Description: 统计绩点 * @param taskStaffGroups 绩点列表 + * @Description: 统计绩点 * @return: Long * @Author: DB * @Date: 2023/5/29 18:24 diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskStaffGroupServiceImpl.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskStaffGroupServiceImpl.java index 8b39561..bdd9083 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskStaffGroupServiceImpl.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskStaffGroupServiceImpl.java @@ -14,7 +14,6 @@ import com.cpop.core.service.RedisService; import com.cpop.core.utils.SecurityUtils; import com.cpop.core.utils.SpringUtils; import com.cpop.oam.business.bo.TaskStaffGroupBo; -import com.cpop.oam.business.bo.TaskStaffGroupListBo; import com.cpop.oam.business.entity.Task; import com.cpop.oam.business.entity.TaskStaffGroup; import com.cpop.oam.business.mapper.TaskStaffGroupMapper; @@ -45,42 +44,38 @@ public class TaskStaffGroupServiceImpl extends ServiceImpl> - * @Author: DB - * @Date: 2023/5/16 15:24 - **/ + * 技术模块-今日事务-任务成员组列 + * @author DB + * @since 2023/12/04 + * @param taskId 任务id + * @return List + */ @Override - public List getTaskStaffGroupList(TaskStaffGroupListBo bo) { + public List getTaskStaffGroupList(String taskId) { return this.listAs(QueryWrapper.create() .select(TASK_STAFF_GROUP.ALL_COLUMNS) .select(STAFF.NAME.as(TaskStaffGroupVo::getStaffName)) .from(TASK_STAFF_GROUP) .leftJoin(STAFF) .on(STAFF.ID.eq(TASK_STAFF_GROUP.STAFF_ID)) - .where(TASK_STAFF_GROUP.TASK_ID.eq(bo.getTaskId())), TaskStaffGroupVo.class); + .where(TASK_STAFF_GROUP.TASK_ID.eq(taskId)), TaskStaffGroupVo.class); } /** - * @Description: 新增任务员工组 + * 技术模块-今日事务-新增任务小组成员 + * @author DB + * @since 2023/12/04 * @param bo 请求参数 - * @return: R - * @Author: DB - * @Date: 2023/5/16 15:58 - **/ + */ @Override @Transactional(rollbackFor = Exception.class) public void insertTaskStaffGroup(TaskStaffGroupBo bo) { // 获取任务 TaskService taskService = SpringUtils.getBean(TaskService.class); Task task = taskService.getById(bo.getTaskId()); - // 当前操作员工是否是主要负责人,不是抛出异常 - LoginUser loginUser = SecurityUtils.getInstance().getLoginUser(); - // 读取员工信息 - RedisService redisService = SpringUtils.getBean(RedisService.class); - JSONObject cacheObject = redisService.getCacheObject(UserType.OAM_USER.getKey() + loginUser.getUsername()); - OamStaffLoginInfo loginInfo = cacheObject.getJSONObject("user").toJavaObject(OamStaffLoginInfo.class); - if (!StringUtils.equals(task.getResponsibleStaffId(), loginInfo.getId())) { + // 当前操作员工是否是主要负责人,不是抛出异常 + JSONObject loginUserInfo = SecurityUtils.getInstance().getLoginUserInfo(); + if (!StringUtils.equals(task.getResponsibleStaffId(), loginUserInfo.getString("id"))) { throw new ServiceException("当前操作员工不是当前任务主要负责人,不允许操作当前任务!"); } // 查询当前添加的员工是否存在在此任务中 @@ -106,16 +101,14 @@ public class TaskStaffGroupServiceImpl extends ServiceImpl phoneList = new ArrayList(); - phoneList.add(loginInfo.getPhoneNumber()); + phoneList.add(loginUserInfo.getString("phoneNumber")); // 获取新增员工信息 StaffInfoVo staffInfo = SpringUtils.getBean(StaffService.class).getStaffInfo(bo.getStaffId()); phoneList.add(staffInfo.getPhoneNumber()); try { - SpringUtils.getBean(WebHookSendHandler.class) - .webHookSendText(WebHookKeyConstant.PRODUCT_BOT, - phoneList, - loginInfo.getName() + "您的绩点调整为" + responsibleStaff.getGradePoint() + "\n" + staffInfo.getName() - + "您新加入任务:" + task.getTaskContent() + "绩点为:" + bo.getGradePoint(), + SpringUtils.getBean(WebHookSendHandler.class).webHookSendText(WebHookKeyConstant.PRODUCT_BOT, phoneList, + loginUserInfo.getString("name") + "您的绩点调整为" + responsibleStaff.getGradePoint() + "\n" + staffInfo.getName() + + "您新加入任务:" + task.getTaskContent() + "绩点为:" + bo.getGradePoint(), false); } catch (IOException e) { throw new ServiceException("发送通知失败!"); @@ -123,12 +116,11 @@ public class TaskStaffGroupServiceImpl extends ServiceImpl - * @Author: DB - * @Date: 2023/5/29 11:48 - **/ + */ @Override public void updateStaffGradePoint(TaskStaffGroupBo bo) { // 获取任务主负责人相关绩点 @@ -137,13 +129,8 @@ public class TaskStaffGroupServiceImpl extends ServiceImpl phoneList = new ArrayList(); - phoneList.add(loginInfo.getPhoneNumber()); + phoneList.add(loginUserInfo.getString("phoneNumber")); // 获取新增员工信息 StaffInfoVo staffInfo = SpringUtils.getBean(StaffService.class).getStaffInfo(bo.getStaffId()); phoneList.add(staffInfo.getPhoneNumber()); try { - SpringUtils.getBean(WebHookSendHandler.class) - .webHookSendText(WebHookKeyConstant.PRODUCT_BOT, - phoneList, - loginInfo.getName() + "您的绩点调整为" + responsibleStaffTaskInfo.getGradePoint() + "\n" - + staffInfo.getName() + "您的绩点调整为:" + bo.getGradePoint(), + SpringUtils.getBean(WebHookSendHandler.class).webHookSendText(WebHookKeyConstant.PRODUCT_BOT, phoneList, + loginUserInfo.getString("name") + "您的绩点调整为" + responsibleStaffTaskInfo.getGradePoint() + "\n" + + staffInfo.getName() + "您的绩点调整为:" + bo.getGradePoint(), false); } catch (IOException e) { throw new ServiceException("发送通知失败!"); @@ -198,24 +183,19 @@ public class TaskStaffGroupServiceImpl extends ServiceImpl - * @Author: DB - * @Date: 2023/5/29 14:18 - **/ + * 技术模块-今日事务-删除成员组 + * @author DB + * @since 2023/12/04 + * @param id 任务组id + */ @Override public void removeTaskStaffGroupById(String id) { // 获取任务 TaskStaffGroup taskStaffGroup = this.getById(id); TaskService taskService = SpringUtils.getBean(TaskService.class); Task task = taskService.getById(taskStaffGroup.getTaskId()); - // 当前操作员工是否是主要负责人,不是抛出异常 - LoginUser loginUser = SecurityUtils.getInstance().getLoginUser(); - // 读取员工信息 - RedisService redisService = SpringUtils.getBean(RedisService.class); - OamStaffLoginInfo loginInfo = redisService.getCacheObject(UserType.OAM_USER.getKey() + loginUser.getUsername()); - if (!StringUtils.equals(task.getResponsibleStaffId(), loginInfo.getId())) { + JSONObject loginUserInfo = SecurityUtils.getInstance().getLoginUserInfo(); + if (!StringUtils.equals(task.getResponsibleStaffId(), loginUserInfo.getString("id"))) { throw new ServiceException("当前操作员工不是当前任务主要负责人,不允许操作当前任务!"); } // 不允许删除主要负责人 diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskWorkOrderServiceImpl.java b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskWorkOrderServiceImpl.java index 44151ff..e729aa6 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskWorkOrderServiceImpl.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/business/service/impl/TaskWorkOrderServiceImpl.java @@ -172,7 +172,6 @@ public class TaskWorkOrderServiceImpl extends ServiceImpl finishWorkOrderPage() { @@ -215,7 +213,6 @@ public class TaskWorkOrderServiceImpl extends ServiceImpl * @author DB * @since 2023/5/30 16:53 **/ @@ -233,11 +230,12 @@ public class TaskWorkOrderServiceImpl extends ServiceImpl getWorkOrderRecordList(String workOrderId) { @@ -398,7 +393,6 @@ public class TaskWorkOrderServiceImpl extends ServiceImpl context, WxCpService cpService, WxSessionManager sessionManager) { if (wxMessage.getMsgType().equals(WxConsts.XmlMsgType.LOCATION)) { - //TODO 接收处理用户发送的地理位置消息 try { String content = "感谢反馈,您的的地理位置已收到!"; return new TextBuilder().build(content, wxMessage, null); @@ -34,8 +33,6 @@ public class LocationHandler extends AbstractHandler { this.logger.info("\n上报地理位置,纬度 : {}\n经度 : {}\n精度 : {}", wxMessage.getLatitude(), wxMessage.getLongitude(), String.valueOf(wxMessage.getPrecision())); - //TODO 可以将用户地理位置信息保存到本地数据库,以便以后使用 - return null; } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/MsgHandler.java b/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/MsgHandler.java index ce797ff..54bec69 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/MsgHandler.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/MsgHandler.java @@ -26,10 +26,10 @@ public class MsgHandler extends AbstractHandler { } if (!msgType.equals(WxConsts.XmlMsgType.EVENT)) { - //TODO 可以选择将消息保存到本地 + } - //TODO 组装回复消息 + String content = "收到信息内容:" + JsonUtils.toJson(wxMessage); return new TextBuilder().build(content, wxMessage, cpService); diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/SubscribeHandler.java b/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/SubscribeHandler.java index 4691160..784b37c 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/SubscribeHandler.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/SubscribeHandler.java @@ -27,7 +27,7 @@ public class SubscribeHandler extends AbstractHandler { WxCpUser userWxInfo = cpService.getUserService().getById(wxMessage.getFromUserName()); if (userWxInfo != null) { - // TODO 可以添加关注用户到本地 + } WxCpXmlOutMessage responseResult = null; @@ -54,7 +54,7 @@ public class SubscribeHandler extends AbstractHandler { * 处理特殊请求,比如如果是扫码进来的,可以做相应处理 */ private WxCpXmlOutMessage handleSpecial(WxCpXmlMessage wxMessage) { - //TODO + return null; } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/UnsubscribeHandler.java b/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/UnsubscribeHandler.java index 9bb5aa4..cff58cb 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/UnsubscribeHandler.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/framework/handler/wxCp/UnsubscribeHandler.java @@ -19,7 +19,6 @@ public class UnsubscribeHandler extends AbstractHandler { WxSessionManager sessionManager) { String openId = wxMessage.getFromUserName(); this.logger.info("取消关注用户 OPENID: " + openId); - // TODO 可以更新本地数据库为取消关注状态 return null; } diff --git a/Cpop-Oam/src/main/java/com/cpop/oam/framework/tasks/WorkOrderAcceptOverTimeTask.java b/Cpop-Oam/src/main/java/com/cpop/oam/framework/tasks/WorkOrderAcceptOverTimeTask.java index ad61f2c..aa0cd83 100644 --- a/Cpop-Oam/src/main/java/com/cpop/oam/framework/tasks/WorkOrderAcceptOverTimeTask.java +++ b/Cpop-Oam/src/main/java/com/cpop/oam/framework/tasks/WorkOrderAcceptOverTimeTask.java @@ -38,15 +38,15 @@ public class WorkOrderAcceptOverTimeTask implements Job { // 工单超时为接收,扣除5绩点 TaskStaffGroupService taskStaffGroupService = SpringUtils.getBean(TaskStaffGroupService.class); taskStaffGroupService.updateChain() - .set(TASK_STAFF_GROUP.GRADE_POINT, -5) - .where(TASK_STAFF_GROUP.TASK_ID.eq(task.getId()) - .and(TASK_STAFF_GROUP.STAFF_ID.eq(task.getResponsibleStaffId()))); + .set(TASK_STAFF_GROUP.GRADE_POINT, -5) + .where(TASK_STAFF_GROUP.TASK_ID.eq(task.getId()) + .and(TASK_STAFF_GROUP.STAFF_ID.eq(task.getResponsibleStaffId()))); // 更新任务为接收超时 taskService.updateChain() - .set(TASK.TASK_STATUS, 7) - .set(TASK.REMARK, "工单接收超时扣除5绩点 ") - .where(TASK.ID.eq(task.getId())) - .update(); + .set(TASK.TASK_STATUS, 7) + .set(TASK.REMARK, "工单接收超时扣除5绩点 ") + .where(TASK.ID.eq(task.getId())) + .update(); } } }