绩效管理

liweidong
maxiangong 1 week ago
parent d3fcf94b7c
commit 416f6857d9
  1. 48
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/controller/BsEfficiencyTaskController.java
  2. 2
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/controller/BsEfficiencyTempParamController.java
  3. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/enums/BsEfficiencyTaskEnum.java
  4. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/mapper/BsEfficiencyTaskMapper.java
  5. 9
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/mapper/BsEfficiencyTaskReportMapper.java
  6. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/mapper/EfficiencyTaskMapper.xml
  7. 61
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/mapper/EfficiencyTaskReportMapper.xml
  8. 29
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/dto/BsEfficiencyTaskDTO.java
  9. 23
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/dto/BsEfficiencyTaskReportDTO.java
  10. 6
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/entity/BsEfficiencyTaskEntity.java
  11. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/vo/BsEfficiencyTaskReportVO.java
  12. 1
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/pojo/vo/BsEfficiencyTaskVO.java
  13. 5
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/service/IBsEfficiencyTaskReportService.java
  14. 3
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/service/IBsEfficiencyTaskService.java
  15. 8
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/service/impl/BsEfficiencyTaskReportServiceImpl.java
  16. 5
      blade-service/blade-desk/src/main/java/org/springblade/desk/efficiency/service/impl/BsEfficiencyTaskServiceImpl.java

@ -19,10 +19,13 @@ import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.Func;
import org.springblade.desk.basic.util.ExcelExtUtil; import org.springblade.desk.basic.util.ExcelExtUtil;
import org.springblade.desk.efficiency.enums.BsEfficiencyTaskEnum; import org.springblade.desk.efficiency.enums.BsEfficiencyTaskEnum;
import org.springblade.desk.efficiency.pojo.dto.BsEfficiencyTaskDTO;
import org.springblade.desk.efficiency.pojo.dto.BsEfficiencyTaskReportDTO;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskParamEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskParamEntity;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTempParamEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTempParamEntity;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskReportVO;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskVO; import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskVO;
import org.springblade.desk.efficiency.service.IBsEfficiencyTaskParamService; import org.springblade.desk.efficiency.service.IBsEfficiencyTaskParamService;
import org.springblade.desk.efficiency.service.IBsEfficiencyTaskReportService; import org.springblade.desk.efficiency.service.IBsEfficiencyTaskReportService;
@ -127,6 +130,7 @@ public class BsEfficiencyTaskController extends BladeController {
BsEfficiencyTaskEntity upd = new BsEfficiencyTaskEntity(); BsEfficiencyTaskEntity upd = new BsEfficiencyTaskEntity();
upd.setId(bsEfficiencyTask.getId()); upd.setId(bsEfficiencyTask.getId());
upd.setStatus(BsEfficiencyTaskEnum.STATUS_REJECTED.getCode()); upd.setStatus(BsEfficiencyTaskEnum.STATUS_REJECTED.getCode());
upd.setRemark(bsEfficiencyTask.getRemark());
return R.status(bsEfficiencyTaskService.saveOrUpdate(upd)); return R.status(bsEfficiencyTaskService.saveOrUpdate(upd));
} }
@ -181,8 +185,8 @@ public class BsEfficiencyTaskController extends BladeController {
} }
BsEfficiencyTaskEntity upd = new BsEfficiencyTaskEntity(); BsEfficiencyTaskEntity upd = new BsEfficiencyTaskEntity();
upd.setId(bsEfficiencyTask.getId()); upd.setId(bsEfficiencyTask.getId());
upd.setAttachId(null); upd.setAttachId(-1L);
upd.setStatus(BsEfficiencyTaskEnum.STATUS_FINISHED.getCode()); upd.setStatus(BsEfficiencyTaskEnum.STATUS_IN_PROGRESS.getCode());
return R.status(bsEfficiencyTaskService.saveOrUpdate(upd)); return R.status(bsEfficiencyTaskService.saveOrUpdate(upd));
} }
@ -265,7 +269,7 @@ public class BsEfficiencyTaskController extends BladeController {
tableData.put(entry.getValue(), map.get(entry.getKey())); tableData.put(entry.getValue(), map.get(entry.getKey()));
} }
R<UserInfo> userInfoResult = userClient.userInfoByCode((String) tableData.get("employeeCode")); R<UserInfo> userInfoResult = userClient.userInfoByCode((String) tableData.get("employeeCode"));
if (userInfoResult.getData() == null || !userInfoResult.getData().getUser().getRealName().equals(tableData.get("employeeName"))) { if (userInfoResult.getData() == null || userInfoResult.getData().getUser() == null || !tableData.get("employeeName").equals(userInfoResult.getData().getUser().getRealName())) {
tableData.put("isSysUser", "0"); tableData.put("isSysUser", "0");
} else { } else {
tableData.put("isSysUser", "1"); tableData.put("isSysUser", "1");
@ -327,9 +331,13 @@ public class BsEfficiencyTaskController extends BladeController {
if (this.EMPLOYEE_CODE.equals(label)) { if (this.EMPLOYEE_CODE.equals(label)) {
report.setEmployeeCode(value); report.setEmployeeCode(value);
} else if (this.EMPLOYEE_NAME.equals(label)) { } else if (this.EMPLOYEE_NAME.equals(label)) {
report.setEmployeeCode(value); report.setEmployeeName(value);
} else if (this.TOTAL_SCORE.equals(label) && !StringUtils.isEmpty(value)) { } else if (this.TOTAL_SCORE.equals(label) && !StringUtils.isEmpty(value)) {
try {
report.setTotalScore(new BigDecimal(value)); report.setTotalScore(new BigDecimal(value));
} catch (Exception e) {
R.fail("总分请填写数字");
}
} }
} }
bsEfficiencyTaskReportService.save(report); bsEfficiencyTaskReportService.save(report);
@ -347,6 +355,17 @@ public class BsEfficiencyTaskController extends BladeController {
bsEfficiencyTaskParamService.save(param); bsEfficiencyTaskParamService.save(param);
} }
} }
BsEfficiencyTaskDTO sub = new BsEfficiencyTaskDTO();
sub.setParentId(task.getId());
sub.setType("2");
sub.setStatus(BsEfficiencyTaskEnum.STATUS_IN_PROGRESS.getCode());
List<BsEfficiencyTaskVO> subTasks = bsEfficiencyTaskService.selectBsEfficiencyTaskList(sub);
for (BsEfficiencyTaskVO bsEfficiencyTaskVO : subTasks) {
BsEfficiencyTaskEntity upd = new BsEfficiencyTaskEntity();
upd.setId(bsEfficiencyTaskVO.getId());
upd.setStatus(BsEfficiencyTaskEnum.STATUS_EXPIRED.getCode());
bsEfficiencyTaskService.saveOrUpdate(upd);
}
BsEfficiencyTaskEntity upd = new BsEfficiencyTaskEntity(); BsEfficiencyTaskEntity upd = new BsEfficiencyTaskEntity();
upd.setId(bsEfficiencyTask.getId()); upd.setId(bsEfficiencyTask.getId());
upd.setAttachId(bsEfficiencyTask.getAttachId()); upd.setAttachId(bsEfficiencyTask.getAttachId());
@ -362,18 +381,25 @@ public class BsEfficiencyTaskController extends BladeController {
*/ */
@GetMapping("/detail") @GetMapping("/detail")
@Operation(summary = "详情", description = "bsEfficiencyTask") @Operation(summary = "详情", description = "bsEfficiencyTask")
public R<BsEfficiencyTaskVO> detail(BsEfficiencyTaskVO bsEfficiencyTask) { public R<BsEfficiencyTaskVO> detail(BsEfficiencyTaskDTO bsEfficiencyTask) {
List<BsEfficiencyTaskVO> list = bsEfficiencyTaskService.selectBsEfficiencyTaskList(bsEfficiencyTask); List<BsEfficiencyTaskVO> list = bsEfficiencyTaskService.selectBsEfficiencyTaskList(bsEfficiencyTask);
if (CollectionUtils.isEmpty(list) || list.size() > 1) { if (CollectionUtils.isEmpty(list) || list.size() > 1) {
return R.fail("绩效填报详情查询失败"); return R.fail("绩效填报详情查询失败");
} }
BsEfficiencyTaskVO task = list.get(0); BsEfficiencyTaskVO task = list.get(0);
BsEfficiencyTaskVO sub = new BsEfficiencyTaskVO(); BsEfficiencyTaskDTO sub = new BsEfficiencyTaskDTO();
sub.setParentId(task.getId()); sub.setParentId(task.getId());
sub.setType("2"); sub.setType("2");
List<BsEfficiencyTaskVO> subTasks = bsEfficiencyTaskService.selectBsEfficiencyTaskList(sub); List<BsEfficiencyTaskVO> subTasks = bsEfficiencyTaskService.selectBsEfficiencyTaskList(sub);
task.setSubTasks(subTasks); task.setSubTasks(subTasks);
List<BsEfficiencyTaskReportEntity> reports = bsEfficiencyTaskReportService.list(new LambdaQueryWrapper<BsEfficiencyTaskReportEntity>().eq(BsEfficiencyTaskReportEntity::getTaskId, task.getId())); BsEfficiencyTaskReportDTO reportParam = new BsEfficiencyTaskReportDTO();
reportParam.setTaskId(task.getId());
reportParam.setEmployeeCode(bsEfficiencyTask.getEmployeeCode());
reportParam.setEmployeeName(bsEfficiencyTask.getEmployeeName());
reportParam.setEmployeeCodeExact(bsEfficiencyTask.getEmployeeCodeExact());
reportParam.setEmployeeNameExact(bsEfficiencyTask.getEmployeeNameExact());
reportParam.setYearMonth(bsEfficiencyTask.getYearMonth());
List<BsEfficiencyTaskReportVO> reports = bsEfficiencyTaskReportService.selectBsEfficiencyTaskReportList(reportParam);
List<BsEfficiencyTaskParamEntity> firstParams = bsEfficiencyTaskParamService.list(new LambdaQueryWrapper<BsEfficiencyTaskParamEntity>().eq(BsEfficiencyTaskParamEntity::getReportId, reports.get(0).getId())); List<BsEfficiencyTaskParamEntity> firstParams = bsEfficiencyTaskParamService.list(new LambdaQueryWrapper<BsEfficiencyTaskParamEntity>().eq(BsEfficiencyTaskParamEntity::getReportId, reports.get(0).getId()));
List<LinkedHashMap<String, Object>> tableColumnList = new ArrayList<>(); List<LinkedHashMap<String, Object>> tableColumnList = new ArrayList<>();
LinkedHashMap<String, String> headMap = new LinkedHashMap<>(); LinkedHashMap<String, String> headMap = new LinkedHashMap<>();
@ -404,11 +430,11 @@ public class BsEfficiencyTaskController extends BladeController {
} }
} }
} }
tableData.put(this.EMPLOYEE_CODE, report.getEmployeeCode()); tableData.put(headMap.get(this.EMPLOYEE_CODE), report.getEmployeeCode());
tableData.put(this.EMPLOYEE_NAME, report.getEmployeeName()); tableData.put(headMap.get(this.EMPLOYEE_NAME), report.getEmployeeName());
tableData.put(this.TOTAL_SCORE, report.getTotalScore()); tableData.put(headMap.get(this.TOTAL_SCORE), report.getTotalScore());
R<UserInfo> userInfoResult = userClient.userInfoByCode((String) tableData.get("employeeCode")); R<UserInfo> userInfoResult = userClient.userInfoByCode((String) tableData.get("employeeCode"));
if (userInfoResult.getData() == null || !userInfoResult.getData().getUser().getRealName().equals(tableData.get("employeeName"))) { if (userInfoResult.getData() == null || userInfoResult.getData().getUser() == null || !userInfoResult.getData().getUser().getRealName().equals(tableData.get("employeeName"))) {
tableData.put("isSysUser", "0"); tableData.put("isSysUser", "0");
} else { } else {
tableData.put("isSysUser", "1"); tableData.put("isSysUser", "1");

@ -60,7 +60,7 @@ public class BsEfficiencyTempParamController extends BladeController {
@PostMapping("/submit") @PostMapping("/submit")
@Operation(summary = "新增或修改", description = "传入bsEfficiencyTempParamList") @Operation(summary = "新增或修改", description = "传入bsEfficiencyTempParamList")
public R submit(@Valid @RequestBody List<BsEfficiencyTempParamEntity> bsEfficiencyTempParamList) { public R submit(@Valid @RequestBody List<BsEfficiencyTempParamEntity> bsEfficiencyTempParamList) {
List<BsEfficiencyTempParamEntity> list = bsEfficiencyTempParamService.list(new LambdaQueryWrapper<BsEfficiencyTempParamEntity>()); List<BsEfficiencyTempParamEntity> list = bsEfficiencyTempParamService.list();
List<Long> dbIds = list.stream() List<Long> dbIds = list.stream()
.map(BsEfficiencyTempParamEntity::getId) .map(BsEfficiencyTempParamEntity::getId)
.collect(Collectors.toList()); .collect(Collectors.toList());

@ -15,6 +15,7 @@ public enum BsEfficiencyTaskEnum {
STATUS_PENDING_APPROVAL("待审批", 3), STATUS_PENDING_APPROVAL("待审批", 3),
STATUS_APPROVED("审批通过", 4), STATUS_APPROVED("审批通过", 4),
STATUS_REJECTED("审批不通过", 5), STATUS_REJECTED("审批不通过", 5),
STATUS_EXPIRED("已超期", 6),
; ;
final String name; final String name;

@ -2,6 +2,7 @@ package org.springblade.desk.efficiency.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.desk.efficiency.pojo.dto.BsEfficiencyTaskDTO;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskVO; import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskVO;
@ -30,5 +31,5 @@ public interface BsEfficiencyTaskMapper extends BaseMapper<BsEfficiencyTaskEntit
* @param bsEfficiencyTask 查询参数 * @param bsEfficiencyTask 查询参数
* @return List<BsEfficiencyTaskVO> * @return List<BsEfficiencyTaskVO>
*/ */
List<BsEfficiencyTaskVO> selectBsEfficiencyTaskList(BsEfficiencyTaskVO bsEfficiencyTask); List<BsEfficiencyTaskVO> selectBsEfficiencyTaskList(BsEfficiencyTaskDTO bsEfficiencyTask);
} }

@ -2,9 +2,9 @@ package org.springblade.desk.efficiency.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.desk.efficiency.pojo.dto.BsEfficiencyTaskReportDTO;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskReportVO; import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskReportVO;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTempVO;
import java.util.List; import java.util.List;
@ -25,4 +25,11 @@ public interface BsEfficiencyTaskReportMapper extends BaseMapper<BsEfficiencyTas
*/ */
List<BsEfficiencyTaskReportVO> selectBsEfficiencyTaskReportPage(IPage page, BsEfficiencyTaskReportVO bsEfficiencyTaskReport); List<BsEfficiencyTaskReportVO> selectBsEfficiencyTaskReportPage(IPage page, BsEfficiencyTaskReportVO bsEfficiencyTaskReport);
/**
* 自定义查询
*
* @param bsEfficiencyTaskReport
* @return
*/
List<BsEfficiencyTaskReportVO> selectBsEfficiencyTaskReportList(BsEfficiencyTaskReportDTO bsEfficiencyTaskReport);
} }

@ -76,6 +76,9 @@
<if test="parentId!=null"> <if test="parentId!=null">
and t.parent_id = #{parentId} and t.parent_id = #{parentId}
</if> </if>
<if test="status!=null">
and t.status = #{status}
</if>
</where> </where>
ORDER BY t.year_month desc, t.create_time ORDER BY t.year_month desc, t.create_time
</select> </select>

@ -24,34 +24,63 @@
tr.EMPLOYEE_CODE, tr.EMPLOYEE_CODE,
tr.EMPLOYEE_NAME, tr.EMPLOYEE_NAME,
SUBSTR(t.year_month,1,4) AS year, SUBSTR(t.year_month,1,4) AS year,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '01' THEN tr.TOTAL_SCORE ELSE null END) AS m01Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '01' THEN tr.TOTAL_SCORE ELSE null END) AS m01Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '02' THEN tr.TOTAL_SCORE ELSE null END) AS m02Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '02' THEN tr.TOTAL_SCORE ELSE null END) AS m02Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '03' THEN tr.TOTAL_SCORE ELSE null END) AS m03Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '03' THEN tr.TOTAL_SCORE ELSE null END) AS m03Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '04' THEN tr.TOTAL_SCORE ELSE null END) AS m04Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '04' THEN tr.TOTAL_SCORE ELSE null END) AS m04Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '05' THEN tr.TOTAL_SCORE ELSE null END) AS m05Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '05' THEN tr.TOTAL_SCORE ELSE null END) AS m05Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '06' THEN tr.TOTAL_SCORE ELSE null END) AS m06Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '06' THEN tr.TOTAL_SCORE ELSE null END) AS m06Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '07' THEN tr.TOTAL_SCORE ELSE null END) AS m07Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '07' THEN tr.TOTAL_SCORE ELSE null END) AS m07Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '08' THEN tr.TOTAL_SCORE ELSE null END) AS m08Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '08' THEN tr.TOTAL_SCORE ELSE null END) AS m08Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '09' THEN tr.TOTAL_SCORE ELSE null END) AS m09Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '09' THEN tr.TOTAL_SCORE ELSE null END) AS m09Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '10' THEN tr.TOTAL_SCORE ELSE null END) AS m10Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '10' THEN tr.TOTAL_SCORE ELSE null END) AS m10Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '11' THEN tr.TOTAL_SCORE ELSE null END) AS m11Score, MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '11' THEN tr.TOTAL_SCORE ELSE null END) AS m11Score,
MAX(CASE WHEN SUBSTR(t.year_month,5,2) = '12' THEN tr.TOTAL_SCORE ELSE null END) AS m12Score MAX(CASE WHEN SUBSTR(t.year_month,6,2) = '12' THEN tr.TOTAL_SCORE ELSE null END) AS m12Score
FROM FROM
BS_EFFICIENCY_TASK_REPORT tr BS_EFFICIENCY_TASK_REPORT tr
INNER JOIN BS_EFFICIENCY_TASK t ON tr.TASK_ID = t.ID INNER JOIN BS_EFFICIENCY_TASK t ON tr.TASK_ID = t.ID
<where> <where>
tr.is_deleted = 0 and t.status = 4 tr.is_deleted = 0 and t.is_deleted = 0 and t.status = 4
<if test="bsEfficiencyTaskReport.employeeCode!=null"> <if test="bsEfficiencyTaskReport.employeeCode!=null">
and tr.EMPLOYEE_CODE = #{bsEfficiencyTaskReport.employeeCode} and tr.EMPLOYEE_CODE like concat(concat('%',#{bsEfficiencyTaskReport.employeeCode},'%')
</if> </if>
<if test="bsEfficiencyTaskReport.employeeName!=null"> <if test="bsEfficiencyTaskReport.employeeName!=null">
and tr.EMPLOYEE_NAME = #{bsEfficiencyTaskReport.employeeName} and tr.EMPLOYEE_NAME like concat(concat('%',#{bsEfficiencyTaskReport.employeeName},'%')
</if> </if>
</where> </where>
GROUP BY GROUP BY
tr.EMPLOYEE_CODE, tr.EMPLOYEE_NAME, SUBSTR(t.year_month,1,4) tr.EMPLOYEE_CODE, tr.EMPLOYEE_NAME, SUBSTR(t.year_month,1,4)
ORDER BY ORDER BY
SUBSTR(t.year_month,1,4) desc, tr.EMPLOYEE_CODE; SUBSTR(t.year_month,1,4) desc, tr.EMPLOYEE_CODE
</select>
<select id="selectBsEfficiencyTaskReportList" resultMap="bsEfficiencyTaskReportResultMap">
SELECT
tr.*
FROM
BS_EFFICIENCY_TASK_REPORT tr
INNER JOIN BS_EFFICIENCY_TASK t ON tr.TASK_ID = t.ID
<where>
tr.is_deleted = 0 and t.is_deleted = 0
<if test="taskId!=null">
and tr.TASK_ID = #{taskId}
</if>
<if test="employeeCode!=null">
and tr.EMPLOYEE_CODE like concat(concat('%',#{employeeCode},'%')
</if>
<if test="employeeName!=null">
and tr.EMPLOYEE_NAME like concat(concat('%',#{employeeName},'%')
</if>
<if test="employeeCodeExact!=null">
and tr.EMPLOYEE_CODE = #{employeeCodeExact}
</if>
<if test="employeeNameExact!=null">
and tr.EMPLOYEE_NAME = #{employeeNameExact}
</if>
<if test="yearMonth!=null">
and t.YEAR_MONTH = #{yearMonth}
</if>
</where>
</select> </select>
</mapper> </mapper>

@ -0,0 +1,29 @@
package org.springblade.desk.efficiency.pojo.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity;
@Data
@EqualsAndHashCode(callSuper = true)
public class BsEfficiencyTaskDTO extends BsEfficiencyTaskEntity {
/**
* 填报人名称
*/
private String reportUserName;
/**
* 员工工号
*/
private String employeeCode;
/**
* 姓名
*/
private String employeeName;
/**
* 精确匹配员工工号
*/
private String employeeCodeExact;
/**
* 精确匹配姓名
*/
private String employeeNameExact;
}

@ -0,0 +1,23 @@
package org.springblade.desk.efficiency.pojo.dto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity;
@Data
@EqualsAndHashCode(callSuper = true)
public class BsEfficiencyTaskReportDTO extends BsEfficiencyTaskReportEntity {
/**
* 年月
*/
private String yearMonth;
/**
* 精确匹配员工工号
*/
private String employeeCodeExact;
/**
* 精确匹配姓名
*/
private String employeeNameExact;
}

@ -72,4 +72,10 @@ public class BsEfficiencyTaskEntity extends BaseEntity {
@Schema(description = "填报时间") @Schema(description = "填报时间")
private Date reportTime; private Date reportTime;
/**
* 备注
*/
@Schema(description = "备注")
private String remark;
} }

@ -67,4 +67,5 @@ public class BsEfficiencyTaskReportVO extends BsEfficiencyTaskReportEntity {
*/ */
private BigDecimal m12Score; private BigDecimal m12Score;
} }

@ -1,5 +1,6 @@
package org.springblade.desk.efficiency.pojo.vo; package org.springblade.desk.efficiency.pojo.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data; import lombok.Data;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity;

@ -2,10 +2,13 @@ package org.springblade.desk.efficiency.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService; import org.springblade.core.mp.base.BaseService;
import org.springblade.desk.efficiency.pojo.dto.BsEfficiencyTaskReportDTO;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskReportVO; import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskReportVO;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTempVO; import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTempVO;
import java.util.List;
/** /**
* 绩效任务填报 服务类 * 绩效任务填报 服务类
* *
@ -23,4 +26,6 @@ public interface IBsEfficiencyTaskReportService extends BaseService<BsEfficiency
*/ */
IPage<BsEfficiencyTaskReportVO> selectBsEfficiencyTaskReportPage(IPage<BsEfficiencyTaskReportVO> page, BsEfficiencyTaskReportVO bsEfficiencyTaskReport); IPage<BsEfficiencyTaskReportVO> selectBsEfficiencyTaskReportPage(IPage<BsEfficiencyTaskReportVO> page, BsEfficiencyTaskReportVO bsEfficiencyTaskReport);
List<BsEfficiencyTaskReportVO> selectBsEfficiencyTaskReportList(BsEfficiencyTaskReportDTO bsEfficiencyTaskReport);
} }

@ -2,6 +2,7 @@ package org.springblade.desk.efficiency.service;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseService; import org.springblade.core.mp.base.BaseService;
import org.springblade.desk.efficiency.pojo.dto.BsEfficiencyTaskDTO;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskVO; import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskVO;
@ -30,7 +31,7 @@ public interface IBsEfficiencyTaskService extends BaseService<BsEfficiencyTaskEn
* @param bsEfficiencyTask * @param bsEfficiencyTask
* @return * @return
*/ */
List<BsEfficiencyTaskVO> selectBsEfficiencyTaskList(BsEfficiencyTaskVO bsEfficiencyTask); List<BsEfficiencyTaskVO> selectBsEfficiencyTaskList(BsEfficiencyTaskDTO bsEfficiencyTask);
void unreportedNotice(); void unreportedNotice();

@ -3,11 +3,14 @@ package org.springblade.desk.efficiency.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.desk.efficiency.mapper.BsEfficiencyTaskReportMapper; import org.springblade.desk.efficiency.mapper.BsEfficiencyTaskReportMapper;
import org.springblade.desk.efficiency.pojo.dto.BsEfficiencyTaskReportDTO;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskReportEntity;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskReportVO; import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskReportVO;
import org.springblade.desk.efficiency.service.IBsEfficiencyTaskReportService; import org.springblade.desk.efficiency.service.IBsEfficiencyTaskReportService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List;
/** /**
* 绩效任务填报 服务实现类 * 绩效任务填报 服务实现类
* *
@ -22,4 +25,9 @@ public class BsEfficiencyTaskReportServiceImpl extends BaseServiceImpl<BsEfficie
return page.setRecords(baseMapper.selectBsEfficiencyTaskReportPage(page, bsEfficiencyTaskReport)); return page.setRecords(baseMapper.selectBsEfficiencyTaskReportPage(page, bsEfficiencyTaskReport));
} }
@Override
public List<BsEfficiencyTaskReportVO> selectBsEfficiencyTaskReportList(BsEfficiencyTaskReportDTO bsEfficiencyTaskReport) {
return baseMapper.selectBsEfficiencyTaskReportList(bsEfficiencyTaskReport);
}
} }

@ -10,6 +10,7 @@ import org.springblade.desk.common.pojo.entity.MesNotifyMessageEntity;
import org.springblade.desk.common.service.IMesNotifyMessageService; import org.springblade.desk.common.service.IMesNotifyMessageService;
import org.springblade.desk.efficiency.enums.BsEfficiencyTaskEnum; import org.springblade.desk.efficiency.enums.BsEfficiencyTaskEnum;
import org.springblade.desk.efficiency.mapper.BsEfficiencyTaskMapper; import org.springblade.desk.efficiency.mapper.BsEfficiencyTaskMapper;
import org.springblade.desk.efficiency.pojo.dto.BsEfficiencyTaskDTO;
import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity; import org.springblade.desk.efficiency.pojo.entity.BsEfficiencyTaskEntity;
import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskVO; import org.springblade.desk.efficiency.pojo.vo.BsEfficiencyTaskVO;
import org.springblade.desk.efficiency.service.IBsEfficiencyTaskService; import org.springblade.desk.efficiency.service.IBsEfficiencyTaskService;
@ -37,7 +38,7 @@ public class BsEfficiencyTaskServiceImpl extends BaseServiceImpl<BsEfficiencyTas
bsEfficiencyTask.setType("1"); bsEfficiencyTask.setType("1");
List<BsEfficiencyTaskVO> list = baseMapper.selectBsEfficiencyTaskPage(page, bsEfficiencyTask); List<BsEfficiencyTaskVO> list = baseMapper.selectBsEfficiencyTaskPage(page, bsEfficiencyTask);
for (BsEfficiencyTaskVO bsEfficiencyTaskVO : list) { for (BsEfficiencyTaskVO bsEfficiencyTaskVO : list) {
BsEfficiencyTaskVO sub = new BsEfficiencyTaskVO(); BsEfficiencyTaskDTO sub = new BsEfficiencyTaskDTO();
sub.setParentId(bsEfficiencyTaskVO.getId()); sub.setParentId(bsEfficiencyTaskVO.getId());
sub.setType("2"); sub.setType("2");
List<BsEfficiencyTaskVO> subTasks = this.selectBsEfficiencyTaskList(sub); List<BsEfficiencyTaskVO> subTasks = this.selectBsEfficiencyTaskList(sub);
@ -47,7 +48,7 @@ public class BsEfficiencyTaskServiceImpl extends BaseServiceImpl<BsEfficiencyTas
} }
@Override @Override
public List<BsEfficiencyTaskVO> selectBsEfficiencyTaskList(BsEfficiencyTaskVO bsEfficiencyTask) { public List<BsEfficiencyTaskVO> selectBsEfficiencyTaskList(BsEfficiencyTaskDTO bsEfficiencyTask) {
return baseMapper.selectBsEfficiencyTaskList(bsEfficiencyTask); return baseMapper.selectBsEfficiencyTaskList(bsEfficiencyTask);
} }

Loading…
Cancel
Save