From 6651e73789a2e7cecfa65eec0f108c9c25a0a665 Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Mon, 18 Dec 2023 14:57:25 +0800
Subject: [PATCH] 评优结果

---
 src/main/java/org/springblade/modules/evaluate/excel/EvaluateResultExcel.java              |   87 +++++++
 src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskController.java      |   28 ++
 src/main/java/org/springblade/modules/assessment/wrapper/UserJsonObj.java                  |   15 +
 src/main/java/org/springblade/modules/evaluate/vo/EvaluateTaskVO.java                      |    4 
 src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java          |   50 ++++
 src/main/java/org/springblade/modules/evaluate/service/IEvaluateResultService.java         |   52 ++++
 src/main/java/org/springblade/modules/assessment/wrapper/CandidateJsonObj.java             |   24 ++
 src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java                    |   35 ++
 src/main/java/org/springblade/modules/evaluate/controller/EvaluateResultController.java    |  151 ++++++++++++
 src/main/java/org/springblade/modules/evaluate/mapper/EvaluateResultMapper.java            |   54 ++++
 src/main/java/org/springblade/modules/evaluate/mapper/EvaluateResultMapper.xml             |   33 ++
 src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateResultServiceImpl.java |   54 ++++
 src/main/java/org/springblade/modules/evaluate/dto/EvaluateResultDTO.java                  |   34 ++
 src/main/java/org/springblade/modules/evaluate/entity/EvaluateResultEntity.java            |   65 +++++
 14 files changed, 686 insertions(+), 0 deletions(-)

diff --git a/src/main/java/org/springblade/modules/assessment/wrapper/CandidateJsonObj.java b/src/main/java/org/springblade/modules/assessment/wrapper/CandidateJsonObj.java
new file mode 100644
index 0000000..1048124
--- /dev/null
+++ b/src/main/java/org/springblade/modules/assessment/wrapper/CandidateJsonObj.java
@@ -0,0 +1,24 @@
+package org.springblade.modules.assessment.wrapper;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * @PROJECT_NAME: zttj-java-boot
+ * @DESCRIPTION:
+ * @USER: aix
+ * @DATE: 2023/12/18 9:34
+ */
+@Data
+public class CandidateJsonObj {
+
+	private Long deptId;
+
+	private String deptName;
+
+	private Integer val;
+
+	private List<UserJsonObj> users;
+
+}
diff --git a/src/main/java/org/springblade/modules/assessment/wrapper/UserJsonObj.java b/src/main/java/org/springblade/modules/assessment/wrapper/UserJsonObj.java
new file mode 100644
index 0000000..5e01b3b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/assessment/wrapper/UserJsonObj.java
@@ -0,0 +1,15 @@
+package org.springblade.modules.assessment.wrapper;
+
+import lombok.Data;
+
+/**
+ * @PROJECT_NAME: zttj-java-boot
+ * @DESCRIPTION:
+ * @USER: aix
+ * @DATE: 2023/12/18 9:58
+ */
+@Data
+public class UserJsonObj {
+	private Long id;
+	private String name;
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/controller/EvaluateResultController.java b/src/main/java/org/springblade/modules/evaluate/controller/EvaluateResultController.java
new file mode 100644
index 0000000..b2b300a
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/controller/EvaluateResultController.java
@@ -0,0 +1,151 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.controller;
+
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiParam;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
+import lombok.AllArgsConstructor;
+import javax.validation.Valid;
+
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.utils.Func;
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import org.springblade.modules.evaluate.vo.EvaluateResultVO;
+import org.springblade.modules.evaluate.excel.EvaluateResultExcel;
+import org.springblade.modules.evaluate.wrapper.EvaluateResultWrapper;
+import org.springblade.modules.evaluate.service.IEvaluateResultService;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.excel.util.ExcelUtil;
+import org.springblade.core.tool.constant.BladeConstant;
+import springfox.documentation.annotations.ApiIgnore;
+import java.util.Map;
+import java.util.List;
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * 评优结果 控制器
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("evaluate/evaluateResult")
+@Api(value = "评优结果", tags = "评优结果接口")
+public class EvaluateResultController extends BladeController {
+
+	private final IEvaluateResultService evaluateResultService;
+
+	/**
+	 * 评优结果 详情
+	 */
+	@GetMapping("/detail")
+	@ApiOperationSupport(order = 1)
+	@ApiOperation(value = "详情", notes = "传入evaluateResult")
+	public R<EvaluateResultVO> detail(EvaluateResultEntity evaluateResult) {
+		EvaluateResultEntity detail = evaluateResultService.getOne(Condition.getQueryWrapper(evaluateResult));
+		return R.data(EvaluateResultWrapper.build().entityVO(detail));
+	}
+	/**
+	 * 评优结果 分页
+	 */
+	@GetMapping("/list")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入evaluateResult")
+	public R<IPage<EvaluateResultVO>> list(@ApiIgnore @RequestParam Map<String, Object> evaluateResult, Query query) {
+		IPage<EvaluateResultEntity> pages = evaluateResultService.page(Condition.getPage(query), Condition.getQueryWrapper(evaluateResult, EvaluateResultEntity.class));
+		return R.data(EvaluateResultWrapper.build().pageVO(pages));
+	}
+
+	/**
+	 * 评优结果 自定义分页
+	 */
+	@GetMapping("/page")
+	@ApiOperationSupport(order = 3)
+	@ApiOperation(value = "分页", notes = "传入evaluateResult")
+	public R<IPage<EvaluateResultVO>> page(EvaluateResultVO evaluateResult, Query query) {
+		IPage<EvaluateResultVO> pages = evaluateResultService.selectEvaluateResultPage(Condition.getPage(query), evaluateResult);
+		return R.data(pages);
+	}
+
+	/**
+	 * 评优结果 新增
+	 */
+	@PostMapping("/save")
+	@ApiOperationSupport(order = 4)
+	@ApiOperation(value = "新增", notes = "传入evaluateResult")
+	public R save(@Valid @RequestBody EvaluateResultEntity evaluateResult) {
+		return R.status(evaluateResultService.save(evaluateResult));
+	}
+
+	/**
+	 * 评优结果 修改
+	 */
+	@PostMapping("/update")
+	@ApiOperationSupport(order = 5)
+	@ApiOperation(value = "修改", notes = "传入evaluateResult")
+	public R update(@Valid @RequestBody EvaluateResultEntity evaluateResult) {
+		return R.status(evaluateResultService.updateById(evaluateResult));
+	}
+
+	/**
+	 * 评优结果 新增或修改
+	 */
+	@PostMapping("/submit")
+	@ApiOperationSupport(order = 6)
+	@ApiOperation(value = "新增或修改", notes = "传入evaluateResult")
+	public R submit(@Valid @RequestBody EvaluateResultEntity evaluateResult) {
+		return R.status(evaluateResultService.saveOrUpdate(evaluateResult));
+	}
+
+	/**
+	 * 评优结果 删除
+	 */
+	@PostMapping("/remove")
+	@ApiOperationSupport(order = 7)
+	@ApiOperation(value = "逻辑删除", notes = "传入ids")
+	public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String ids) {
+		return R.status(evaluateResultService.deleteLogic(Func.toLongList(ids)));
+	}
+
+
+	/**
+	 * 导出数据
+	 */
+	@GetMapping("/export-evaluateResult")
+	@ApiOperationSupport(order = 9)
+	@ApiOperation(value = "导出数据", notes = "传入evaluateResult")
+	public void exportEvaluateResult(@ApiIgnore @RequestParam Map<String, Object> evaluateResult, BladeUser bladeUser, HttpServletResponse response) {
+		QueryWrapper<EvaluateResultEntity> queryWrapper = Condition.getQueryWrapper(evaluateResult, EvaluateResultEntity.class);
+		//if (!AuthUtil.isAdministrator()) {
+		//	queryWrapper.lambda().eq(EvaluateResult::getTenantId, bladeUser.getTenantId());
+		//}
+		queryWrapper.lambda().eq(EvaluateResultEntity::getIsDeleted, BladeConstant.DB_NOT_DELETED);
+		List<EvaluateResultExcel> list = evaluateResultService.exportEvaluateResult(queryWrapper);
+		ExcelUtil.export(response, "评优结果数据" + DateUtil.time(), "评优结果数据表", list, EvaluateResultExcel.class);
+	}
+
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskController.java b/src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskController.java
index 1b4eb08..b665f32 100644
--- a/src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskController.java
+++ b/src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskController.java
@@ -32,10 +32,13 @@
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.modules.assessment.wrapper.CandidateJsonObj;
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
 import org.springblade.modules.evaluate.entity.EvaluateTaskEntity;
 import org.springblade.modules.evaluate.excel.EvaluateTaskExcel;
+import org.springblade.modules.evaluate.service.IEvaluateResultService;
 import org.springblade.modules.evaluate.service.IEvaluateTaskService;
 import org.springblade.modules.evaluate.vo.EvaluateTaskVO;
+import org.springblade.modules.evaluate.wrapper.EvaluateResultWrapper;
 import org.springblade.modules.system.entity.User;
 import org.springblade.modules.system.service.IUserService;
 import org.springframework.web.bind.annotation.*;
@@ -67,6 +70,8 @@
 
 	private final IEvaluateTaskService evaluateTaskService;
 	private final IUserService userService;
+
+	private final IEvaluateResultService evaluateResultService;
 
 	/**
 	 * 评优任务表 详情
@@ -122,6 +127,29 @@
 						break;
 					}
 				}
+
+				//是否评论完成
+				QueryWrapper<EvaluateResultEntity> resultEntityQueryWrapper = new QueryWrapper<>();
+				resultEntityQueryWrapper.eq("score_user_id", userId);
+				resultEntityQueryWrapper.eq("type", 0);
+				resultEntityQueryWrapper.eq("evaluate_task_id", vo.getId());
+				long reqCount = evaluateResultService.count(resultEntityQueryWrapper);
+				vo.setIsEvaluateOk(reqCount > 0);
+				if (reqCount > 0) {
+					vo.setEvaluateResultVO(EvaluateResultWrapper.build().entityVO(evaluateResultService.getOne(resultEntityQueryWrapper)));
+				}
+
+			} else {
+				//是否评论完成
+				QueryWrapper<EvaluateResultEntity> resultEntityQueryWrapper = new QueryWrapper<>();
+				resultEntityQueryWrapper.eq("score_user_id", userId);
+				resultEntityQueryWrapper.eq("type", 1);
+				resultEntityQueryWrapper.eq("evaluate_task_id", vo.getId());
+				long reqCount = evaluateResultService.count(resultEntityQueryWrapper);
+				vo.setIsEvaluateOk(reqCount > 0);
+				if (reqCount > 0) {
+					vo.setEvaluateResultVO(EvaluateResultWrapper.build().entityVO(evaluateResultService.getOne(resultEntityQueryWrapper)));
+				}
 			}
 
 		}
diff --git a/src/main/java/org/springblade/modules/evaluate/dto/EvaluateResultDTO.java b/src/main/java/org/springblade/modules/evaluate/dto/EvaluateResultDTO.java
new file mode 100644
index 0000000..549972b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/dto/EvaluateResultDTO.java
@@ -0,0 +1,34 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.dto;
+
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 评优结果 数据传输对象实体类
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class EvaluateResultDTO extends EvaluateResultEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/entity/EvaluateResultEntity.java b/src/main/java/org/springblade/modules/evaluate/entity/EvaluateResultEntity.java
new file mode 100644
index 0000000..2b8f66d
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/entity/EvaluateResultEntity.java
@@ -0,0 +1,65 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import java.util.Date;
+import lombok.EqualsAndHashCode;
+import org.springblade.core.tenant.mp.TenantEntity;
+
+/**
+ * 评优结果 实体类
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+@Data
+@TableName("yw_evaluate_result")
+@ApiModel(value = "EvaluateResult对象", description = "评优结果")
+@EqualsAndHashCode(callSuper = true)
+public class EvaluateResultEntity extends TenantEntity {
+
+	/**
+	 * 评优任务
+	 */
+	@ApiModelProperty(value = "评优任务")
+	private Long evaluateTaskId;
+	/**
+	 * 被评优的人/部门
+	 */
+	@ApiModelProperty(value = "被评优的人/部门")
+	private Long beId;
+	/**
+	 * 评优人
+	 */
+	@ApiModelProperty(value = "评优人")
+	private Long scoreUserId;
+	/**
+	 * 评优说明
+	 */
+	@ApiModelProperty(value = "评优说明")
+	private String remark;
+	/**
+	 * 类型(0:员工评优,1:部门评优,2:公司评优)
+	 */
+	@ApiModelProperty(value = "类型(0:员工评优,1:部门评优,2:公司评优)")
+	private Integer type;
+
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/excel/EvaluateResultExcel.java b/src/main/java/org/springblade/modules/evaluate/excel/EvaluateResultExcel.java
new file mode 100644
index 0000000..4d108d1
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/excel/EvaluateResultExcel.java
@@ -0,0 +1,87 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.excel;
+
+
+import lombok.Data;
+
+import java.util.Date;
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.ContentRowHeight;
+import com.alibaba.excel.annotation.write.style.HeadRowHeight;
+import java.io.Serializable;
+
+
+/**
+ * 评优结果 Excel实体类
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+@Data
+@ColumnWidth(25)
+@HeadRowHeight(20)
+@ContentRowHeight(18)
+public class EvaluateResultExcel implements Serializable {
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 租户ID
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("租户ID")
+	private String tenantId;
+	/**
+	 * 评优任务
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("评优任务")
+	private Long assessmentTaskId;
+	/**
+	 * 被评优的人/部门
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("被评优的人/部门")
+	private Long beId;
+	/**
+	 * 评优人
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("评优人")
+	private Long scoreUserId;
+	/**
+	 * 评优说明
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("评优说明")
+	private String remark;
+	/**
+	 * 类型(0:员工评优,1:部门评优,2:公司评优)
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("类型(0:员工评优,1:部门评优,2:公司评优)")
+	private Integer type;
+	/**
+	 * 是否已删除
+	 */
+	@ColumnWidth(20)
+	@ExcelProperty("是否已删除")
+	private Integer isDeleted;
+
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateResultMapper.java b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateResultMapper.java
new file mode 100644
index 0000000..ea86ac5
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateResultMapper.java
@@ -0,0 +1,54 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.mapper;
+
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import org.springblade.modules.evaluate.vo.EvaluateResultVO;
+import org.springblade.modules.evaluate.excel.EvaluateResultExcel;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
+import java.util.List;
+
+/**
+ * 评优结果 Mapper 接口
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+public interface EvaluateResultMapper extends BaseMapper<EvaluateResultEntity> {
+
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param evaluateResult
+	 * @return
+	 */
+	List<EvaluateResultVO> selectEvaluateResultPage(IPage page, EvaluateResultVO evaluateResult);
+
+
+	/**
+	 * 获取导出数据
+	 *
+	 * @param queryWrapper
+	 * @return
+	 */
+	List<EvaluateResultExcel> exportEvaluateResult(@Param("ew") Wrapper<EvaluateResultEntity> queryWrapper);
+
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateResultMapper.xml b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateResultMapper.xml
new file mode 100644
index 0000000..fbb3dfd
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateResultMapper.xml
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.springblade.modules.evaluate.mapper.EvaluateResultMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="evaluateResultResultMap" type="org.springblade.modules.evaluate.entity.EvaluateResultEntity">
+        <result column="id" property="id"/>
+        <result column="tenant_id" property="tenantId"/>
+        <result column="assessment_task_id" property="assessmentTaskId"/>
+        <result column="be_id" property="beId"/>
+        <result column="score_user_id" property="scoreUserId"/>
+        <result column="remark" property="remark"/>
+        <result column="type" property="type"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_dept" property="createDept"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="status" property="status"/>
+        <result column="is_deleted" property="isDeleted"/>
+    </resultMap>
+
+
+    <select id="selectEvaluateResultPage" resultMap="evaluateResultResultMap">
+        select * from yw_evaluate_result where is_deleted = 0
+    </select>
+
+
+    <select id="exportEvaluateResult" resultType="org.springblade.modules.evaluate.excel.EvaluateResultExcel">
+        SELECT * FROM yw_evaluate_result ${ew.customSqlSegment}
+    </select>
+
+</mapper>
diff --git a/src/main/java/org/springblade/modules/evaluate/service/IEvaluateResultService.java b/src/main/java/org/springblade/modules/evaluate/service/IEvaluateResultService.java
new file mode 100644
index 0000000..83ea368
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/service/IEvaluateResultService.java
@@ -0,0 +1,52 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.service;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import org.springblade.modules.evaluate.vo.EvaluateResultVO;
+import org.springblade.modules.evaluate.excel.EvaluateResultExcel;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseService;
+import java.util.List;
+
+/**
+ * 评优结果 服务类
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+public interface IEvaluateResultService extends BaseService<EvaluateResultEntity> {
+	/**
+	 * 自定义分页
+	 *
+	 * @param page
+	 * @param evaluateResult
+	 * @return
+	 */
+	IPage<EvaluateResultVO> selectEvaluateResultPage(IPage<EvaluateResultVO> page, EvaluateResultVO evaluateResult);
+
+
+	/**
+	 * 导出数据
+	 *
+	 * @param queryWrapper
+	 * @return
+	 */
+	List<EvaluateResultExcel> exportEvaluateResult(Wrapper<EvaluateResultEntity> queryWrapper);
+
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateResultServiceImpl.java b/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateResultServiceImpl.java
new file mode 100644
index 0000000..420625b
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateResultServiceImpl.java
@@ -0,0 +1,54 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.service.impl;
+
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import org.springblade.modules.evaluate.vo.EvaluateResultVO;
+import org.springblade.modules.evaluate.excel.EvaluateResultExcel;
+import org.springblade.modules.evaluate.mapper.EvaluateResultMapper;
+import org.springblade.modules.evaluate.service.IEvaluateResultService;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.base.BaseServiceImpl;
+import java.util.List;
+
+/**
+ * 评优结果 服务实现类
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+@Service
+public class EvaluateResultServiceImpl extends BaseServiceImpl<EvaluateResultMapper, EvaluateResultEntity> implements IEvaluateResultService {
+
+	@Override
+	public IPage<EvaluateResultVO> selectEvaluateResultPage(IPage<EvaluateResultVO> page, EvaluateResultVO evaluateResult) {
+		return page.setRecords(baseMapper.selectEvaluateResultPage(page, evaluateResult));
+	}
+
+
+	@Override
+	public List<EvaluateResultExcel> exportEvaluateResult(Wrapper<EvaluateResultEntity> queryWrapper) {
+		List<EvaluateResultExcel> evaluateResultList = baseMapper.exportEvaluateResult(queryWrapper);
+		//evaluateResultList.forEach(evaluateResult -> {
+		//	evaluateResult.setTypeName(DictCache.getValue(DictEnum.YES_NO, EvaluateResult.getType()));
+		//});
+		return evaluateResultList;
+	}
+
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java b/src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java
new file mode 100644
index 0000000..24006d2
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java
@@ -0,0 +1,35 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.vo;
+
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import org.springblade.core.tool.node.INode;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * 评优结果 视图实体类
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class EvaluateResultVO extends EvaluateResultEntity {
+	private static final long serialVersionUID = 1L;
+
+}
diff --git a/src/main/java/org/springblade/modules/evaluate/vo/EvaluateTaskVO.java b/src/main/java/org/springblade/modules/evaluate/vo/EvaluateTaskVO.java
index 82d629c..b23a52c 100644
--- a/src/main/java/org/springblade/modules/evaluate/vo/EvaluateTaskVO.java
+++ b/src/main/java/org/springblade/modules/evaluate/vo/EvaluateTaskVO.java
@@ -33,4 +33,8 @@
 
 	private Object selfCandidate;// 当前部门的候选人
 
+	private Boolean isEvaluateOk;//是否评论完成
+
+	private EvaluateResultVO evaluateResultVO;//评论结果
+
 }
diff --git a/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java b/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java
new file mode 100644
index 0000000..ba81cbf
--- /dev/null
+++ b/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java
@@ -0,0 +1,50 @@
+/*
+ *      Copyright (c) 2018-2028, Chill Zhuang All rights reserved.
+ *
+ *  Redistribution and use in source and binary forms, with or without
+ *  modification, are permitted provided that the following conditions are met:
+ *
+ *  Redistributions of source code must retain the above copyright notice,
+ *  this list of conditions and the following disclaimer.
+ *  Redistributions in binary form must reproduce the above copyright
+ *  notice, this list of conditions and the following disclaimer in the
+ *  documentation and/or other materials provided with the distribution.
+ *  Neither the name of the dreamlu.net developer nor the names of its
+ *  contributors may be used to endorse or promote products derived from
+ *  this software without specific prior written permission.
+ *  Author: Chill 庄骞 (smallchill@163.com)
+ */
+package org.springblade.modules.evaluate.wrapper;
+
+import org.springblade.core.mp.support.BaseEntityWrapper;
+import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import org.springblade.modules.evaluate.vo.EvaluateResultVO;
+import java.util.Objects;
+
+/**
+ * 评优结果 包装类,返回视图层所需的字段
+ *
+ * @author aix
+ * @since 2023-12-18
+ */
+public class EvaluateResultWrapper extends BaseEntityWrapper<EvaluateResultEntity, EvaluateResultVO>  {
+
+	public static EvaluateResultWrapper build() {
+		return new EvaluateResultWrapper();
+ 	}
+
+	@Override
+	public EvaluateResultVO entityVO(EvaluateResultEntity evaluateResult) {
+		EvaluateResultVO evaluateResultVO = Objects.requireNonNull(BeanUtil.copy(evaluateResult, EvaluateResultVO.class));
+
+		//User createUser = UserCache.getUser(evaluateResult.getCreateUser());
+		//User updateUser = UserCache.getUser(evaluateResult.getUpdateUser());
+		//evaluateResultVO.setCreateUserName(createUser.getName());
+		//evaluateResultVO.setUpdateUserName(updateUser.getName());
+
+		return evaluateResultVO;
+	}
+
+
+}

--
Gitblit v1.9.3