From 8ff78938faeb36f6dfed7fd3575167d774e780d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Wed, 14 Oct 2020 11:40:24 +0800 Subject: [PATCH 1/5] fix --- .../lz/modules/flow/dao/FlowRecordMapper.java | 3 +- .../flow/service/FlowRecordService.java | 5 ++- .../service/impl/FlowRecordServiceImpl.java | 11 ++++- .../controller/TaskController.java | 40 +++++++++++++++---- .../performance/req/AssessTaskReq.java | 14 +++++++ ...ticalRes.java => ChartStatisticalRes.java} | 2 +- 6 files changed, 63 insertions(+), 12 deletions(-) create mode 100644 src/main/java/com/lz/modules/performance/req/AssessTaskReq.java rename src/main/java/com/lz/modules/performance/res/{chartStatisticalRes.java => ChartStatisticalRes.java} (87%) diff --git a/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java b/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java index d0a33b7b..4c89e486 100644 --- a/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java +++ b/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java @@ -8,6 +8,7 @@ package com.lz.modules.flow.dao; * @since 2020-08-18 */ import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.lz.modules.flow.entity.FlowRecord; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -52,6 +53,6 @@ public interface FlowRecordMapper extends BaseMapper { Long copyFlowRecord(FlowRecord flowRecord); //查看自己要审批的记录 status为1代表流程走到了这里 - List selectFlowRecordIdsByApprovalStaffId(@Param("approvalStaffId") Long approvalStaffId); + List selectFlowRecordIdsByApprovalStaffId(@Param("status") int status,@Param("approvalStaffId") Long approvalStaffId, @Param("page") IPage page); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/flow/service/FlowRecordService.java b/src/main/java/com/lz/modules/flow/service/FlowRecordService.java index b4cc0c42..358a4ba1 100644 --- a/src/main/java/com/lz/modules/flow/service/FlowRecordService.java +++ b/src/main/java/com/lz/modules/flow/service/FlowRecordService.java @@ -1,7 +1,10 @@ package com.lz.modules.flow.service; import com.baomidou.mybatisplus.extension.service.IService; +import com.lz.common.utils.PageUtils; +import com.lz.modules.equipment.entity.model.BasePage; import com.lz.modules.flow.entity.FlowRecord; +import com.lz.modules.performance.req.AssessTaskReq; import com.lz.modules.sys.entity.app.ResultRecord; import java.util.List; @@ -53,5 +56,5 @@ public interface FlowRecordService extends IService { Long copyFlowRecord(FlowRecord flowRecord); - List selectFlowRecordIdsByApprovalStaffId(Long approvalStaffId); + PageUtils selectFlowRecordIdsByApprovalStaffId(AssessTaskReq req, Long approvalStaffId); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java index 3eed82ec..0faadb81 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java @@ -1,15 +1,19 @@ package com.lz.modules.flow.service.impl; +import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.lz.common.utils.Constant; +import com.lz.common.utils.PageUtils; import com.lz.modules.app.entity.StaffEntity; import com.lz.modules.app.service.StaffService; import com.lz.modules.app.utils.t.OneTuple; +import com.lz.modules.equipment.entity.model.BasePage; import com.lz.modules.flow.dao.FlowRecordMapper; import com.lz.modules.flow.entity.FlowRecord; import com.lz.modules.flow.enums.FlowRecordEnum; import com.lz.modules.flow.model.StaffRoleDto; import com.lz.modules.flow.service.FlowRecordService; +import com.lz.modules.performance.req.AssessTaskReq; import com.lz.modules.sys.entity.app.ResultRecord; import com.lz.modules.sys.service.app.ResultRecordService; import org.springframework.beans.factory.annotation.Autowired; @@ -139,7 +143,10 @@ public class FlowRecordServiceImpl extends ServiceImpl selectFlowRecordIdsByApprovalStaffId(Long approvalStaffId) { - return flowRecordMapper.selectFlowRecordIdsByApprovalStaffId(approvalStaffId); + public PageUtils selectFlowRecordIdsByApprovalStaffId(AssessTaskReq req, Long approvalStaffId) { + PageUtils pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()).doSelect( + page -> flowRecordMapper.selectFlowRecordIdsByApprovalStaffId(req.getStatus(),approvalStaffId,page) + ); + return pageUtils; } } diff --git a/src/main/java/com/lz/modules/performance/controller/TaskController.java b/src/main/java/com/lz/modules/performance/controller/TaskController.java index 2de967ab..a4884329 100644 --- a/src/main/java/com/lz/modules/performance/controller/TaskController.java +++ b/src/main/java/com/lz/modules/performance/controller/TaskController.java @@ -1,17 +1,23 @@ package com.lz.modules.performance.controller; +import com.lz.common.utils.DateUtils; +import com.lz.common.utils.PageUtils; import com.lz.common.utils.R; import com.lz.common.utils.StringUtil; import com.lz.modules.app.entity.StaffEntity; import com.lz.modules.app.service.StaffService; +import com.lz.modules.equipment.entity.model.BasePage; import com.lz.modules.flow.service.FlowChangeService; import com.lz.modules.flow.service.FlowRecordService; import com.lz.modules.performance.req.AssessDetailReq; import com.lz.modules.performance.req.AssessListReq; +import com.lz.modules.performance.req.AssessTaskReq; +import com.lz.modules.performance.res.ChartStatisticalRes; import com.lz.modules.performance.res.TaskListRes; import com.lz.modules.sys.controller.AbstractController; import com.lz.modules.sys.entity.app.ResultRecord; import com.lz.modules.sys.service.app.ResultRecordService; +import io.swagger.annotations.Api; import org.apache.commons.collections.CollectionUtils; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; @@ -28,41 +34,61 @@ import java.util.Optional; */ @RestController @RequestMapping("/performance") +@Api(value="任务事项", tags={"任务相关接口"}) public class TaskController extends AbstractController{ + private FlowRecordService flowRecordService; + private ResultRecordService resultRecordService; + private StaffService staffService; + private FlowChangeService flowChangeService; @RequestMapping("task/list") - public R list(int status){ + public R list(AssessTaskReq req){ List list = new ArrayList<>(); Long userId = getUserId(); - List flowRecordIds = flowRecordService.selectFlowRecordIdsByApprovalStaffId(userId); - if(CollectionUtils.isEmpty(flowRecordIds)){ + PageUtils pageUtils = flowRecordService.selectFlowRecordIdsByApprovalStaffId(req,userId); + if(pageUtils.getTotalCount() == 0){ return R.ok(); } + List flowRecordIds = pageUtils.getList(); flowRecordIds.stream().forEach(recordId -> { TaskListRes res = new TaskListRes(); ResultRecord resultRecord = resultRecordService.selectResultRecordById(recordId); StaffEntity staffEntity = staffService.selectStaffById(resultRecord.getStaffId()); res.setAvatar(Optional.ofNullable(staffEntity.getAvatar()).orElse(StringUtil.EMPTY)); - //res.setTitle(); 根据状态拼接文案 - //res.setTime(); - //res.setUrl(); + String name = staffEntity.getName(); + if(resultRecord.getStaffId().equals(resultRecord.getCurrentApprovalStaffId())){ + name = "您"; + } + //根据状态拼接文案 + res.setTitle(name + "的" + resultRecord.getMonthTime() + ""); + res.setTime(DateUtils.format(resultRecord.getGmtModified(),DateUtils.DATE_TIME_PATTERN)); + //跳转绩效详情页 + res.setUrl("?" + recordId); list.add(res); }); - return R.ok(); + PageUtils data = new PageUtils(); + data.setList(list); + data.setPageSize(req.getPageSize()); + data.setCurrPage(req.getCurrPage()); + data.setTotalCount(pageUtils.getTotalCount()); + data.setTotalPage(pageUtils.getTotalPage()); + return R.ok().put("page",data); } @RequestMapping("assess/group/list") public R groupList(@RequestBody AssessListReq req){ + ChartStatisticalRes res = new ChartStatisticalRes(); return R.ok(); } @RequestMapping("assess/group/detail") public R groupDetail(@RequestBody AssessDetailReq req){ + ChartStatisticalRes res = new ChartStatisticalRes(); return R.ok(); } diff --git a/src/main/java/com/lz/modules/performance/req/AssessTaskReq.java b/src/main/java/com/lz/modules/performance/req/AssessTaskReq.java new file mode 100644 index 00000000..41bfd27c --- /dev/null +++ b/src/main/java/com/lz/modules/performance/req/AssessTaskReq.java @@ -0,0 +1,14 @@ +package com.lz.modules.performance.req; + +import com.lz.modules.equipment.entity.model.BasePage; +import lombok.Data; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/14 11:38 + */ +@Data +public class AssessTaskReq extends BasePage{ + private int status; +} diff --git a/src/main/java/com/lz/modules/performance/res/chartStatisticalRes.java b/src/main/java/com/lz/modules/performance/res/ChartStatisticalRes.java similarity index 87% rename from src/main/java/com/lz/modules/performance/res/chartStatisticalRes.java rename to src/main/java/com/lz/modules/performance/res/ChartStatisticalRes.java index 8eb3ac05..3bb6e1dc 100644 --- a/src/main/java/com/lz/modules/performance/res/chartStatisticalRes.java +++ b/src/main/java/com/lz/modules/performance/res/ChartStatisticalRes.java @@ -8,7 +8,7 @@ import lombok.Data; * @Date: 2020/10/13 18:25 */ @Data -public class chartStatisticalRes { +public class ChartStatisticalRes { private String desc; //人数 From 9c7b65d9173ce29011531e4186ed693987ad14df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Wed, 14 Oct 2020 11:47:07 +0800 Subject: [PATCH 2/5] fix --- .../lz/modules/performance/controller/TaskController.java | 6 +++++- .../java/com/lz/modules/performance/res/TaskListRes.java | 7 +++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/lz/modules/performance/controller/TaskController.java b/src/main/java/com/lz/modules/performance/controller/TaskController.java index a4884329..1d7c4a96 100644 --- a/src/main/java/com/lz/modules/performance/controller/TaskController.java +++ b/src/main/java/com/lz/modules/performance/controller/TaskController.java @@ -7,6 +7,7 @@ import com.lz.common.utils.StringUtil; import com.lz.modules.app.entity.StaffEntity; import com.lz.modules.app.service.StaffService; import com.lz.modules.equipment.entity.model.BasePage; +import com.lz.modules.flow.entity.FlowChart; import com.lz.modules.flow.service.FlowChangeService; import com.lz.modules.flow.service.FlowRecordService; import com.lz.modules.performance.req.AssessDetailReq; @@ -17,7 +18,7 @@ import com.lz.modules.performance.res.TaskListRes; import com.lz.modules.sys.controller.AbstractController; import com.lz.modules.sys.entity.app.ResultRecord; import com.lz.modules.sys.service.app.ResultRecordService; -import io.swagger.annotations.Api; +import io.swagger.annotations.*; import org.apache.commons.collections.CollectionUtils; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; @@ -46,6 +47,9 @@ public class TaskController extends AbstractController{ private FlowChangeService flowChangeService; @RequestMapping("task/list") + @ApiOperation("获取待办/处理事项") + @ApiImplicitParam(name = "status",value = "状态 (0:待办 1:已处理)", required = true, dataType = "int",paramType = "query") + @ApiResponses({@ApiResponse(code = 200,message = "成功",response = TaskListRes.class)}) public R list(AssessTaskReq req){ List list = new ArrayList<>(); Long userId = getUserId(); diff --git a/src/main/java/com/lz/modules/performance/res/TaskListRes.java b/src/main/java/com/lz/modules/performance/res/TaskListRes.java index e034df09..da8e681e 100644 --- a/src/main/java/com/lz/modules/performance/res/TaskListRes.java +++ b/src/main/java/com/lz/modules/performance/res/TaskListRes.java @@ -1,5 +1,7 @@ package com.lz.modules.performance.res; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** @@ -8,13 +10,18 @@ import lombok.Data; * @Date: 2020/10/13 17:15 */ @Data +@ApiModel(value = "待办/处理事项列表返回") public class TaskListRes { //头像 + @ApiModelProperty(value = "头像", name = "avatar") private String avatar; //标题 + @ApiModelProperty(value = "标题", name = "title") private String title; //时间 + @ApiModelProperty(value = "时间", name = "time") private String time; //跳转路径 + @ApiModelProperty(value = "跳转路径url", name = "url") private String url; } From 8f71c7f2c4470d4b6922b60fc15f69ff4f964ed9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Wed, 14 Oct 2020 15:18:05 +0800 Subject: [PATCH 3/5] fix --- .../lz/modules/flow/dao/FlowRecordMapper.java | 3 +- .../flow/service/FlowRecordService.java | 2 +- .../service/impl/FlowRecordServiceImpl.java | 4 +- .../controller/TaskController.java | 34 +-------- .../modules/performance/dto/TaskListDto.java | 24 ++++++ .../service/AssessTaskService.java | 13 ++++ .../service/impl/AssessTaskServiceImpl.java | 74 +++++++++++++++++++ .../mapper/flow/FlowRecordMapper.xml | 11 ++- 8 files changed, 129 insertions(+), 36 deletions(-) create mode 100644 src/main/java/com/lz/modules/performance/dto/TaskListDto.java create mode 100644 src/main/java/com/lz/modules/performance/service/AssessTaskService.java create mode 100644 src/main/java/com/lz/modules/performance/service/impl/AssessTaskServiceImpl.java diff --git a/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java b/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java index 4c89e486..87486e5d 100644 --- a/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java +++ b/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java @@ -10,6 +10,7 @@ package com.lz.modules.flow.dao; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.lz.modules.flow.entity.FlowRecord; +import com.lz.modules.performance.dto.TaskListDto; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -53,6 +54,6 @@ public interface FlowRecordMapper extends BaseMapper { Long copyFlowRecord(FlowRecord flowRecord); //查看自己要审批的记录 status为1代表流程走到了这里 - List selectFlowRecordIdsByApprovalStaffId(@Param("status") int status,@Param("approvalStaffId") Long approvalStaffId, @Param("page") IPage page); + List selectTodoTasksByApprovalStaffId(@Param("approvalStaffId") Long approvalStaffId, @Param("page") IPage page); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/flow/service/FlowRecordService.java b/src/main/java/com/lz/modules/flow/service/FlowRecordService.java index 358a4ba1..7e1430fd 100644 --- a/src/main/java/com/lz/modules/flow/service/FlowRecordService.java +++ b/src/main/java/com/lz/modules/flow/service/FlowRecordService.java @@ -56,5 +56,5 @@ public interface FlowRecordService extends IService { Long copyFlowRecord(FlowRecord flowRecord); - PageUtils selectFlowRecordIdsByApprovalStaffId(AssessTaskReq req, Long approvalStaffId); + PageUtils selectTodoTasksByApprovalStaffId(AssessTaskReq req, Long approvalStaffId); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java index 0faadb81..28d63354 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java @@ -143,9 +143,9 @@ public class FlowRecordServiceImpl extends ServiceImpl flowRecordMapper.selectFlowRecordIdsByApprovalStaffId(req.getStatus(),approvalStaffId,page) + page -> flowRecordMapper.selectTodoTasksByApprovalStaffId(approvalStaffId,page) ); return pageUtils; } diff --git a/src/main/java/com/lz/modules/performance/controller/TaskController.java b/src/main/java/com/lz/modules/performance/controller/TaskController.java index 1d7c4a96..7ccc0d5a 100644 --- a/src/main/java/com/lz/modules/performance/controller/TaskController.java +++ b/src/main/java/com/lz/modules/performance/controller/TaskController.java @@ -10,6 +10,7 @@ import com.lz.modules.equipment.entity.model.BasePage; import com.lz.modules.flow.entity.FlowChart; import com.lz.modules.flow.service.FlowChangeService; import com.lz.modules.flow.service.FlowRecordService; +import com.lz.modules.performance.dto.TaskListDto; import com.lz.modules.performance.req.AssessDetailReq; import com.lz.modules.performance.req.AssessListReq; import com.lz.modules.performance.req.AssessTaskReq; @@ -27,6 +28,7 @@ import org.springframework.web.bind.annotation.RestController; import java.util.ArrayList; import java.util.List; import java.util.Optional; +import java.util.function.Consumer; /** * @Author: djc @@ -51,36 +53,8 @@ public class TaskController extends AbstractController{ @ApiImplicitParam(name = "status",value = "状态 (0:待办 1:已处理)", required = true, dataType = "int",paramType = "query") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = TaskListRes.class)}) public R list(AssessTaskReq req){ - List list = new ArrayList<>(); - Long userId = getUserId(); - PageUtils pageUtils = flowRecordService.selectFlowRecordIdsByApprovalStaffId(req,userId); - if(pageUtils.getTotalCount() == 0){ - return R.ok(); - } - List flowRecordIds = pageUtils.getList(); - flowRecordIds.stream().forEach(recordId -> { - TaskListRes res = new TaskListRes(); - ResultRecord resultRecord = resultRecordService.selectResultRecordById(recordId); - StaffEntity staffEntity = staffService.selectStaffById(resultRecord.getStaffId()); - res.setAvatar(Optional.ofNullable(staffEntity.getAvatar()).orElse(StringUtil.EMPTY)); - String name = staffEntity.getName(); - if(resultRecord.getStaffId().equals(resultRecord.getCurrentApprovalStaffId())){ - name = "您"; - } - //根据状态拼接文案 - res.setTitle(name + "的" + resultRecord.getMonthTime() + ""); - res.setTime(DateUtils.format(resultRecord.getGmtModified(),DateUtils.DATE_TIME_PATTERN)); - //跳转绩效详情页 - res.setUrl("?" + recordId); - list.add(res); - }); - PageUtils data = new PageUtils(); - data.setList(list); - data.setPageSize(req.getPageSize()); - data.setCurrPage(req.getCurrPage()); - data.setTotalCount(pageUtils.getTotalCount()); - data.setTotalPage(pageUtils.getTotalPage()); - return R.ok().put("page",data); + + return R.ok().put("page",""); } diff --git a/src/main/java/com/lz/modules/performance/dto/TaskListDto.java b/src/main/java/com/lz/modules/performance/dto/TaskListDto.java new file mode 100644 index 00000000..eb5b4004 --- /dev/null +++ b/src/main/java/com/lz/modules/performance/dto/TaskListDto.java @@ -0,0 +1,24 @@ +package com.lz.modules.performance.dto; + +import lombok.Data; + +import java.util.Date; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/14 14:41 + */ +@Data +public class TaskListDto { + + private Long recordId; + + private Long staffId; + + private Long currentApprovalStaffId; + + private String monthTime; + + private Date gmtModified; +} diff --git a/src/main/java/com/lz/modules/performance/service/AssessTaskService.java b/src/main/java/com/lz/modules/performance/service/AssessTaskService.java new file mode 100644 index 00000000..d9b27994 --- /dev/null +++ b/src/main/java/com/lz/modules/performance/service/AssessTaskService.java @@ -0,0 +1,13 @@ +package com.lz.modules.performance.service; + +import com.lz.common.utils.PageUtils; +import com.lz.modules.performance.req.AssessTaskReq; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/14 14:58 + */ +public interface AssessTaskService { + PageUtils assessTaskList(AssessTaskReq req,Long userId); +} diff --git a/src/main/java/com/lz/modules/performance/service/impl/AssessTaskServiceImpl.java b/src/main/java/com/lz/modules/performance/service/impl/AssessTaskServiceImpl.java new file mode 100644 index 00000000..c18f03ec --- /dev/null +++ b/src/main/java/com/lz/modules/performance/service/impl/AssessTaskServiceImpl.java @@ -0,0 +1,74 @@ +package com.lz.modules.performance.service.impl; + +import com.lz.common.utils.DateUtils; +import com.lz.common.utils.PageUtils; +import com.lz.common.utils.StringUtil; +import com.lz.modules.app.entity.StaffEntity; +import com.lz.modules.app.service.StaffService; +import com.lz.modules.flow.service.FlowChangeService; +import com.lz.modules.flow.service.FlowRecordService; +import com.lz.modules.performance.dto.TaskListDto; +import com.lz.modules.performance.req.AssessTaskReq; +import com.lz.modules.performance.res.TaskListRes; +import com.lz.modules.performance.service.AssessTaskService; +import org.apache.commons.collections.CollectionUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/14 14:59 + */ +@Service("assessTaskService") +public class AssessTaskServiceImpl implements AssessTaskService { + @Autowired + private FlowRecordService flowRecordService; + @Autowired + private StaffService staffService; + @Autowired + private FlowChangeService flowChangeService; + + @Override + public PageUtils assessTaskList(AssessTaskReq req,Long userId) { + PageUtils data = new PageUtils(); + List list = new ArrayList<>(); + //获取待办 + if(req.getStatus() == 0){ + PageUtils pageUtils = flowRecordService.selectTodoTasksByApprovalStaffId(req,userId); + if(CollectionUtils.isEmpty(pageUtils.getList())){ + return data; + } + List dtos = pageUtils.getList(); + dtos.stream().forEach(taskListDto -> { + TaskListRes res = new TaskListRes(); + StaffEntity staffEntity = staffService.selectStaffById(taskListDto.getStaffId()); + res.setAvatar(Optional.ofNullable(staffEntity.getAvatar()).orElse(StringUtil.EMPTY)); + String name = staffEntity.getName(); + if(taskListDto.getStaffId().equals(taskListDto.getCurrentApprovalStaffId())){ + name = "您"; + } + //根据状态拼接文案 + res.setTitle(name + "的" + taskListDto.getMonthTime() + ""); + res.setTime(DateUtils.format(taskListDto.getGmtModified(),DateUtils.DATE_TIME_PATTERN)); + //跳转绩效详情页 + res.setUrl("?" + taskListDto.getRecordId()); + list.add(res); + }); + data.setTotalCount(pageUtils.getTotalCount()); + data.setTotalPage(pageUtils.getTotalPage()); + } + //获取历史 + if(req.getStatus() == 0){ + + } + data.setList(list); + data.setPageSize(req.getPageSize()); + data.setCurrPage(req.getCurrPage()); + return data; + } +} diff --git a/src/main/resources/mapper/flow/FlowRecordMapper.xml b/src/main/resources/mapper/flow/FlowRecordMapper.xml index 6bf94bed..945db3e4 100644 --- a/src/main/resources/mapper/flow/FlowRecordMapper.xml +++ b/src/main/resources/mapper/flow/FlowRecordMapper.xml @@ -200,8 +200,15 @@ select * from lz_flow_record where is_delete = 0 and record_id = #{recordResultId} and type = #{type} and status = #{status} - + SELECT DISTINCT(record_id) from lz_flow_record f + LEFT JOIN lz_result_record r + ON f.record_id = r.id + where f.is_delete=0 and r.is_delete=0 + and approval_staff_id = #{approvalStaffId} + and r.status = 0 + and f.status = 1 From 441457439e5f4c173a830ff1d434b19a59f30b63 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Wed, 14 Oct 2020 15:39:01 +0800 Subject: [PATCH 4/5] fix --- .../performance/controller/TaskController.java | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/lz/modules/performance/controller/TaskController.java b/src/main/java/com/lz/modules/performance/controller/TaskController.java index 7ccc0d5a..87c69b47 100644 --- a/src/main/java/com/lz/modules/performance/controller/TaskController.java +++ b/src/main/java/com/lz/modules/performance/controller/TaskController.java @@ -16,11 +16,13 @@ import com.lz.modules.performance.req.AssessListReq; import com.lz.modules.performance.req.AssessTaskReq; import com.lz.modules.performance.res.ChartStatisticalRes; import com.lz.modules.performance.res.TaskListRes; +import com.lz.modules.performance.service.AssessTaskService; import com.lz.modules.sys.controller.AbstractController; import com.lz.modules.sys.entity.app.ResultRecord; import com.lz.modules.sys.service.app.ResultRecordService; import io.swagger.annotations.*; import org.apache.commons.collections.CollectionUtils; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @@ -39,21 +41,15 @@ import java.util.function.Consumer; @RequestMapping("/performance") @Api(value="任务事项", tags={"任务相关接口"}) public class TaskController extends AbstractController{ - - private FlowRecordService flowRecordService; - - private ResultRecordService resultRecordService; - - private StaffService staffService; - - private FlowChangeService flowChangeService; + @Autowired + private AssessTaskService assessTaskService; @RequestMapping("task/list") @ApiOperation("获取待办/处理事项") @ApiImplicitParam(name = "status",value = "状态 (0:待办 1:已处理)", required = true, dataType = "int",paramType = "query") @ApiResponses({@ApiResponse(code = 200,message = "成功",response = TaskListRes.class)}) public R list(AssessTaskReq req){ - + assessTaskService.assessTaskList(req,getUserId()); return R.ok().put("page",""); } From a2ce4c51a55f7cc18ed969603a13263d3b0ae587 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=BB=BA=E8=B6=85?= <3182967682@qq.com> Date: Wed, 14 Oct 2020 17:06:16 +0800 Subject: [PATCH 5/5] fix --- .../lz/modules/flow/dao/FlowRecordMapper.java | 2 + .../flow/service/FlowRecordService.java | 2 +- .../service/impl/FlowRecordServiceImpl.java | 17 +++++-- ...r.java => SmartPerformanceController.java} | 17 ++++--- .../modules/performance/dto/TaskListDto.java | 4 ++ .../enums/ResultFlowProcessEnum.java | 41 ++++++++++++++++ .../performance/req/ChartResultReq.java | 21 ++++++++ .../service/ChartResultService.java | 12 +++++ .../service/impl/AssessTaskServiceImpl.java | 49 ++++++++----------- .../service/impl/ChartResultServiceImpl.java | 23 +++++++++ .../mapper/flow/FlowRecordMapper.xml | 10 ++-- 11 files changed, 156 insertions(+), 42 deletions(-) rename src/main/java/com/lz/modules/performance/controller/{TaskController.java => SmartPerformanceController.java} (91%) create mode 100644 src/main/java/com/lz/modules/performance/enums/ResultFlowProcessEnum.java create mode 100644 src/main/java/com/lz/modules/performance/req/ChartResultReq.java create mode 100644 src/main/java/com/lz/modules/performance/service/ChartResultService.java create mode 100644 src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java diff --git a/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java b/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java index 87486e5d..ca0ebd15 100644 --- a/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java +++ b/src/main/java/com/lz/modules/flow/dao/FlowRecordMapper.java @@ -56,4 +56,6 @@ public interface FlowRecordMapper extends BaseMapper { //查看自己要审批的记录 status为1代表流程走到了这里 List selectTodoTasksByApprovalStaffId(@Param("approvalStaffId") Long approvalStaffId, @Param("page") IPage page); + List selectFinishTasksByApprovalStaffId(@Param("approvalStaffId") Long approvalStaffId, @Param("page") IPage page); + } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/flow/service/FlowRecordService.java b/src/main/java/com/lz/modules/flow/service/FlowRecordService.java index 7e1430fd..6f8086d9 100644 --- a/src/main/java/com/lz/modules/flow/service/FlowRecordService.java +++ b/src/main/java/com/lz/modules/flow/service/FlowRecordService.java @@ -56,5 +56,5 @@ public interface FlowRecordService extends IService { Long copyFlowRecord(FlowRecord flowRecord); - PageUtils selectTodoTasksByApprovalStaffId(AssessTaskReq req, Long approvalStaffId); + PageUtils selectTaskListByApprovalStaffId(AssessTaskReq req, Long approvalStaffId); } \ No newline at end of file diff --git a/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java b/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java index 28d63354..73664d5d 100644 --- a/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java +++ b/src/main/java/com/lz/modules/flow/service/impl/FlowRecordServiceImpl.java @@ -143,10 +143,19 @@ public class FlowRecordServiceImpl extends ServiceImpl flowRecordMapper.selectTodoTasksByApprovalStaffId(approvalStaffId,page) - ); + public PageUtils selectTaskListByApprovalStaffId(AssessTaskReq req, Long approvalStaffId) { + PageUtils pageUtils = new PageUtils(); + if(req.getStatus()==0){ + pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()).doSelect( + page -> flowRecordMapper.selectTodoTasksByApprovalStaffId(approvalStaffId,page) + ); + } + if(req.getStatus()==1){ + pageUtils = PageUtils.startPage(req.getCurrPage(), req.getPageSize()).doSelect( + page -> flowRecordMapper.selectFinishTasksByApprovalStaffId(approvalStaffId,page) + ); + } + return pageUtils; } } diff --git a/src/main/java/com/lz/modules/performance/controller/TaskController.java b/src/main/java/com/lz/modules/performance/controller/SmartPerformanceController.java similarity index 91% rename from src/main/java/com/lz/modules/performance/controller/TaskController.java rename to src/main/java/com/lz/modules/performance/controller/SmartPerformanceController.java index 87c69b47..49019058 100644 --- a/src/main/java/com/lz/modules/performance/controller/TaskController.java +++ b/src/main/java/com/lz/modules/performance/controller/SmartPerformanceController.java @@ -14,6 +14,7 @@ import com.lz.modules.performance.dto.TaskListDto; import com.lz.modules.performance.req.AssessDetailReq; import com.lz.modules.performance.req.AssessListReq; import com.lz.modules.performance.req.AssessTaskReq; +import com.lz.modules.performance.req.ChartResultReq; import com.lz.modules.performance.res.ChartStatisticalRes; import com.lz.modules.performance.res.TaskListRes; import com.lz.modules.performance.service.AssessTaskService; @@ -39,8 +40,8 @@ import java.util.function.Consumer; */ @RestController @RequestMapping("/performance") -@Api(value="任务事项", tags={"任务相关接口"}) -public class TaskController extends AbstractController{ +@Api(value="智能绩效", tags={"智能绩效部分接口"}) +public class SmartPerformanceController extends AbstractController{ @Autowired private AssessTaskService assessTaskService; @@ -54,6 +55,14 @@ public class TaskController extends AbstractController{ } + @RequestMapping("chart/result") + public R chartResult(@RequestBody ChartResultReq req){ + return R.ok(); + } + + + + @RequestMapping("assess/group/list") public R groupList(@RequestBody AssessListReq req){ ChartStatisticalRes res = new ChartStatisticalRes(); @@ -66,8 +75,4 @@ public class TaskController extends AbstractController{ return R.ok(); } - @RequestMapping("chart/result") - public R chartResult(@RequestBody AssessDetailReq req){ - return R.ok(); - } } diff --git a/src/main/java/com/lz/modules/performance/dto/TaskListDto.java b/src/main/java/com/lz/modules/performance/dto/TaskListDto.java index eb5b4004..4d68962f 100644 --- a/src/main/java/com/lz/modules/performance/dto/TaskListDto.java +++ b/src/main/java/com/lz/modules/performance/dto/TaskListDto.java @@ -21,4 +21,8 @@ public class TaskListDto { private String monthTime; private Date gmtModified; + + private int flowProcess; + + private int type; } diff --git a/src/main/java/com/lz/modules/performance/enums/ResultFlowProcessEnum.java b/src/main/java/com/lz/modules/performance/enums/ResultFlowProcessEnum.java new file mode 100644 index 00000000..1af5959e --- /dev/null +++ b/src/main/java/com/lz/modules/performance/enums/ResultFlowProcessEnum.java @@ -0,0 +1,41 @@ +package com.lz.modules.performance.enums; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/14 17:00 + */ +public enum ResultFlowProcessEnum { + TARGET(0,"制定目标"), + CONFIRM(1,"目标确认"), + DO(2,"执行中"), + SCORE(4,"评分"), + FINISH(5,"考核结束"), + ; + private int status; + + private String desc; + + + + ResultFlowProcessEnum(int status, String desc) { + this.status = status; + this.desc = desc; + } + + public int getStatus() { + return status; + } + + public void setStatus(int status) { + this.status = status; + } + + public String getDesc() { + return desc; + } + + public void setDesc(String desc) { + this.desc = desc; + } +} diff --git a/src/main/java/com/lz/modules/performance/req/ChartResultReq.java b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java new file mode 100644 index 00000000..0b879684 --- /dev/null +++ b/src/main/java/com/lz/modules/performance/req/ChartResultReq.java @@ -0,0 +1,21 @@ +package com.lz.modules.performance.req; + +import lombok.Data; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/14 16:50 + */ +@Data +public class ChartResultReq { + //考核类型 月度 季度 + private int assessType; + + private String month; + + private String startTime; + + private String endTime; + +} diff --git a/src/main/java/com/lz/modules/performance/service/ChartResultService.java b/src/main/java/com/lz/modules/performance/service/ChartResultService.java new file mode 100644 index 00000000..d72790eb --- /dev/null +++ b/src/main/java/com/lz/modules/performance/service/ChartResultService.java @@ -0,0 +1,12 @@ +package com.lz.modules.performance.service; + +import com.lz.modules.performance.req.ChartResultReq; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/14 16:52 + */ +public interface ChartResultService { + void ChartReport(ChartResultReq req); +} diff --git a/src/main/java/com/lz/modules/performance/service/impl/AssessTaskServiceImpl.java b/src/main/java/com/lz/modules/performance/service/impl/AssessTaskServiceImpl.java index c18f03ec..6036c886 100644 --- a/src/main/java/com/lz/modules/performance/service/impl/AssessTaskServiceImpl.java +++ b/src/main/java/com/lz/modules/performance/service/impl/AssessTaskServiceImpl.java @@ -37,35 +37,28 @@ public class AssessTaskServiceImpl implements AssessTaskService { public PageUtils assessTaskList(AssessTaskReq req,Long userId) { PageUtils data = new PageUtils(); List list = new ArrayList<>(); - //获取待办 - if(req.getStatus() == 0){ - PageUtils pageUtils = flowRecordService.selectTodoTasksByApprovalStaffId(req,userId); - if(CollectionUtils.isEmpty(pageUtils.getList())){ - return data; + PageUtils pageUtils = flowRecordService.selectTaskListByApprovalStaffId(req,userId); + if(CollectionUtils.isEmpty(pageUtils.getList())){ + return data; + } + List dtos = pageUtils.getList(); + dtos.stream().forEach(taskListDto -> { + TaskListRes res = new TaskListRes(); + StaffEntity staffEntity = staffService.selectStaffById(taskListDto.getStaffId()); + res.setAvatar(Optional.ofNullable(staffEntity.getAvatar()).orElse(StringUtil.EMPTY)); + String name = staffEntity.getName(); + if(taskListDto.getStaffId().equals(taskListDto.getCurrentApprovalStaffId())){ + name = "您"; } - List dtos = pageUtils.getList(); - dtos.stream().forEach(taskListDto -> { - TaskListRes res = new TaskListRes(); - StaffEntity staffEntity = staffService.selectStaffById(taskListDto.getStaffId()); - res.setAvatar(Optional.ofNullable(staffEntity.getAvatar()).orElse(StringUtil.EMPTY)); - String name = staffEntity.getName(); - if(taskListDto.getStaffId().equals(taskListDto.getCurrentApprovalStaffId())){ - name = "您"; - } - //根据状态拼接文案 - res.setTitle(name + "的" + taskListDto.getMonthTime() + ""); - res.setTime(DateUtils.format(taskListDto.getGmtModified(),DateUtils.DATE_TIME_PATTERN)); - //跳转绩效详情页 - res.setUrl("?" + taskListDto.getRecordId()); - list.add(res); - }); - data.setTotalCount(pageUtils.getTotalCount()); - data.setTotalPage(pageUtils.getTotalPage()); - } - //获取历史 - if(req.getStatus() == 0){ - - } + //根据状态拼接文案 + res.setTitle(name + "的" + taskListDto.getMonthTime() + ""); + res.setTime(DateUtils.format(taskListDto.getGmtModified(),DateUtils.DATE_TIME_PATTERN)); + //跳转绩效详情页 + res.setUrl("?" + taskListDto.getRecordId()); + list.add(res); + }); + data.setTotalCount(pageUtils.getTotalCount()); + data.setTotalPage(pageUtils.getTotalPage()); data.setList(list); data.setPageSize(req.getPageSize()); data.setCurrPage(req.getCurrPage()); diff --git a/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java b/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java new file mode 100644 index 00000000..00f120ae --- /dev/null +++ b/src/main/java/com/lz/modules/performance/service/impl/ChartResultServiceImpl.java @@ -0,0 +1,23 @@ +package com.lz.modules.performance.service.impl; + +import com.lz.modules.performance.req.ChartResultReq; +import com.lz.modules.performance.service.ChartResultService; +import com.lz.modules.sys.service.app.ResultRecordService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +/** + * @Author: djc + * @Desc: + * @Date: 2020/10/14 16:53 + */ +@Service("chartResultService") +public class ChartResultServiceImpl implements ChartResultService { + @Autowired + private ResultRecordService resultRecordService; + @Override + public void ChartReport(ChartResultReq req) { + + + } +} diff --git a/src/main/resources/mapper/flow/FlowRecordMapper.xml b/src/main/resources/mapper/flow/FlowRecordMapper.xml index 945db3e4..47e6523c 100644 --- a/src/main/resources/mapper/flow/FlowRecordMapper.xml +++ b/src/main/resources/mapper/flow/FlowRecordMapper.xml @@ -201,14 +201,18 @@ - + SELECT DISTINCT(record_id),flow_process,current_approval_staff_id,staff_id,month_time,r.gmt_modified,f.type from lz_flow_record f LEFT JOIN lz_result_record r ON f.record_id = r.id where f.is_delete=0 and r.is_delete=0 and approval_staff_id = #{approvalStaffId} - and r.status = 0 and f.status = 1 + order by r.gmt_modified desc + + +