feat: 企标详情-企标评价
This commit is contained in:
+10
-3
@@ -53,6 +53,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.InputStream;
|
||||
import java.net.URLEncoder;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.util.*;
|
||||
@@ -870,8 +871,8 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
||||
}
|
||||
|
||||
// 设置响应头和内容类型
|
||||
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
|
||||
response.setHeader("Content-Disposition", "attachment; filename=" + fileName + ".xlsx");
|
||||
String encodedFileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8");
|
||||
response.setHeader("Content-Disposition", "attachment; filename=" + encodedFileName);
|
||||
|
||||
// 写出到响应流
|
||||
workbook.write(response.getOutputStream());
|
||||
@@ -934,8 +935,14 @@ public class LawsCommonServiceImpl implements ILawsCommonService {
|
||||
workbook.close();
|
||||
|
||||
// 准备ZIP
|
||||
// 获取编码后的文件名
|
||||
String encodedZipName = URLEncoder.encode(fileName, "UTF-8");
|
||||
response.setContentType("application/zip");
|
||||
response.setHeader("Content-Disposition", "attachment; filename=" + fileName + ".zip");
|
||||
response.setHeader("Content-Disposition", "attachment; filename=" + encodedZipName);
|
||||
response.setHeader("Content-Transfer-Encoding", "binary");
|
||||
response.setHeader("Pragma", "public");
|
||||
response.setHeader("Cache-Control", "no-store");
|
||||
response.setHeader("Expires", "0");
|
||||
ZipOutputStream zipOut = new ZipOutputStream(response.getOutputStream());
|
||||
|
||||
// 将Excel加入ZIP
|
||||
|
||||
+1
-1
@@ -56,7 +56,7 @@ public class EnterpriseStandardReviewMeetingController extends JeroController<En
|
||||
}
|
||||
|
||||
/**
|
||||
* 评分详情
|
||||
* 评分详情 可以传“评审会的id”也可以传“企标编号”
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
|
||||
+4
@@ -23,7 +23,11 @@ public interface EnterpriseStandardReviewMeetingRecordMapper extends BaseMapper<
|
||||
|
||||
String getAvgScore(@Param("id") String id);
|
||||
|
||||
String getAvgScoreByStandardNo(@Param("standardNumber") String standardNumber);
|
||||
|
||||
List<EnterpriseStandardRmrEvaluateDetail> getScoreList(@Param("id") String rmrId);
|
||||
|
||||
List<EnterpriseStandardRmrEvaluateDetail> getScoreListByStandardNo(@Param("standardNumber") String studentNumber);
|
||||
}
|
||||
|
||||
|
||||
|
||||
+46
-1
@@ -109,6 +109,34 @@
|
||||
WHERE rmr.id = #{id}
|
||||
</select>
|
||||
|
||||
<select id="getAvgScoreByStandardNo" resultType="java.lang.String">
|
||||
SELECT
|
||||
(score.avg_score_item1 + score.avg_score_item2 + score.avg_score_item3 +
|
||||
score.avg_score_item4 + score.avg_score_item5 + score.avg_score_item6) AS avgScore
|
||||
FROM
|
||||
`laws_enterprise_standard_review_meeting_record` AS rmr
|
||||
LEFT JOIN
|
||||
(
|
||||
SELECT
|
||||
d.review_meeting_id,
|
||||
ROUND(COALESCE(AVG(CASE WHEN d.evaluate_item = '1' THEN CAST(d.evaluate_score AS DECIMAL(10, 2)) ELSE NULL END), 0), 2) AS avg_score_item1,
|
||||
ROUND(COALESCE(AVG(CASE WHEN d.evaluate_item = '2' THEN CAST(d.evaluate_score AS DECIMAL(10, 2)) ELSE NULL END), 0), 2) AS avg_score_item2,
|
||||
ROUND(COALESCE(AVG(CASE WHEN d.evaluate_item = '3' THEN CAST(d.evaluate_score AS DECIMAL(10, 2)) ELSE NULL END), 0), 2) AS avg_score_item3,
|
||||
ROUND(COALESCE(AVG(CASE WHEN d.evaluate_item = '4' THEN CAST(d.evaluate_score AS DECIMAL(10, 2)) ELSE NULL END), 0), 2) AS avg_score_item4,
|
||||
ROUND(COALESCE(AVG(CASE WHEN d.evaluate_item = '5' THEN CAST(d.evaluate_score AS DECIMAL(10, 2)) ELSE NULL END), 0), 2) AS avg_score_item5,
|
||||
ROUND(COALESCE(AVG(CASE WHEN d.evaluate_item = '6' THEN CAST(d.evaluate_score AS DECIMAL(10, 2)) ELSE NULL END), 0), 2) AS avg_score_item6
|
||||
FROM
|
||||
laws_enterprise_standard_review_meeting_record r
|
||||
LEFT JOIN
|
||||
laws_enterprise_standard_rmr_evaluate_detail d ON r.id = d.review_meeting_id
|
||||
GROUP BY
|
||||
r.id
|
||||
) AS score ON score.review_meeting_id = rmr.id
|
||||
LEFT JOIN laws_enterprise_standard AS s ON s.id = rmr.standard_id
|
||||
WHERE
|
||||
s.standard_number = #{standardNumber}
|
||||
</select>
|
||||
|
||||
<select id="getScoreList"
|
||||
resultType="com.jero.modules.laws.enterprise.entity.EnterpriseStandardRmrEvaluateDetail">
|
||||
SELECT
|
||||
@@ -120,7 +148,24 @@
|
||||
`laws_enterprise_standard_rmr_evaluate_detail` AS d
|
||||
LEFT JOIN sys_user AS u ON u.id = d.adjudicator_id
|
||||
WHERE
|
||||
review_meeting_id = #{id}
|
||||
d.review_meeting_id = #{id}
|
||||
ORDER BY u.username, evaluate_item
|
||||
</select>
|
||||
|
||||
<select id="getScoreListByStandardNo"
|
||||
resultType="com.jero.modules.laws.enterprise.entity.EnterpriseStandardRmrEvaluateDetail">
|
||||
SELECT
|
||||
CONCAT(u.username, '(', u.work_no, ')') AS adjudicatorName,
|
||||
d.evaluate_item,
|
||||
d.evaluate_score,
|
||||
d.deduction_score_reason
|
||||
FROM
|
||||
`laws_enterprise_standard_rmr_evaluate_detail` AS d
|
||||
LEFT JOIN sys_user AS u ON u.id = d.adjudicator_id
|
||||
LEFT JOIN laws_enterprise_standard_review_meeting_record AS rm ON rm.id = d.review_meeting_id
|
||||
LEFT JOIN laws_enterprise_standard AS s ON s.id = rm.standard_id
|
||||
WHERE
|
||||
s.standard_number = #{standardNumber}
|
||||
ORDER BY u.username, evaluate_item
|
||||
</select>
|
||||
|
||||
|
||||
+10
-2
@@ -34,8 +34,16 @@ public interface EnterpriseStandardReviewMeetingRecordService extends IService<E
|
||||
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> evaluateDetail(String id);
|
||||
|
||||
/**
|
||||
* 设置优质标准
|
||||
* @param standardNos
|
||||
* 企标详情-企标评价
|
||||
* @param standardNumber
|
||||
* @return
|
||||
*/
|
||||
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> evaluateDetailByStandardNo(String standardNumber);
|
||||
|
||||
|
||||
/**
|
||||
* 设置优质标准
|
||||
* @param standardNos
|
||||
*/
|
||||
void setQualityStandards(List<String> standardNos);
|
||||
}
|
||||
|
||||
+16
-3
@@ -51,10 +51,23 @@ public class EnterpriseStandardReviewMeetingRecordServiceImpl extends ServiceImp
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, List<EnterpriseStandardRmrEvaluateDetail>> evaluateDetail(String rmrId) {
|
||||
List<EnterpriseStandardRmrEvaluateDetail> scoreList = esReviewMeetingMapper.getScoreList(rmrId);
|
||||
public Map<String, List<EnterpriseStandardRmrEvaluateDetail>> evaluateDetail(String standardNumber) {
|
||||
List<EnterpriseStandardRmrEvaluateDetail> scoreList = esReviewMeetingMapper.getScoreList(standardNumber);
|
||||
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> scoreMap = scoreList.stream().collect(Collectors.groupingBy(EnterpriseStandardRmrEvaluateDetail::getAdjudicatorName));
|
||||
String avgScore = esReviewMeetingMapper.getAvgScore(rmrId);
|
||||
|
||||
String avgScore = esReviewMeetingMapper.getAvgScore(standardNumber);
|
||||
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> resultMap = new LinkedHashMap<>();
|
||||
resultMap.put(avgScore, null);
|
||||
resultMap.putAll(scoreMap);
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, List<EnterpriseStandardRmrEvaluateDetail>> evaluateDetailByStandardNo(String standardNumber) {
|
||||
List<EnterpriseStandardRmrEvaluateDetail> scoreList = esReviewMeetingMapper.getScoreListByStandardNo(standardNumber);
|
||||
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> scoreMap = scoreList.stream().collect(Collectors.groupingBy(EnterpriseStandardRmrEvaluateDetail::getAdjudicatorName));
|
||||
|
||||
String avgScore = esReviewMeetingMapper.getAvgScoreByStandardNo(standardNumber);
|
||||
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> resultMap = new LinkedHashMap<>();
|
||||
resultMap.put(avgScore, null);
|
||||
resultMap.putAll(scoreMap);
|
||||
|
||||
+21
-2
@@ -8,8 +8,10 @@ import com.jero.common.util.MessageUtils;
|
||||
import com.jero.modules.laws.common.constant.FieldCommon;
|
||||
import com.jero.modules.laws.common.constant.ResultCommon;
|
||||
import com.jero.modules.laws.common.service.ILawsCommonService;
|
||||
import com.jero.modules.laws.enterprise.entity.EnterpriseStandardRmrEvaluateDetail;
|
||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthDeptService;
|
||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardAuthUserService;
|
||||
import com.jero.modules.laws.enterprise.service.EnterpriseStandardReviewMeetingRecordService;
|
||||
import com.jero.modules.laws.standard.entity.LawsUpdateRecord;
|
||||
import com.jero.modules.laws.standard.entity.LawsStandardTempPermission;
|
||||
import com.jero.modules.laws.standard.service.ILawsNodeRelationService;
|
||||
@@ -20,6 +22,7 @@ import com.jero.modules.tag.entity.LawsTag;
|
||||
import com.jero.modules.tag.enums.TableNameEnum;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@@ -55,6 +58,9 @@ public class LawsEnterpriseController {
|
||||
@Resource
|
||||
private EnterpriseStandardAuthDeptService esAuthDeptService;
|
||||
|
||||
@Resource
|
||||
private EnterpriseStandardReviewMeetingRecordService esReviewMeetingService;
|
||||
|
||||
private static final String MODULE_VALUE = TableNameEnum.ENTERPRISE_STANDARDS.getValue();
|
||||
|
||||
@AutoLog(value = "企业法规标准-分页列表查询")
|
||||
@@ -175,17 +181,30 @@ public class LawsEnterpriseController {
|
||||
return Result.OK();
|
||||
}
|
||||
|
||||
/**
|
||||
* 企标评价
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@AutoLog(value = "企业法规标准-企标评价")
|
||||
@ApiOperation(value = "企业法规标准-企标评价", notes = "企业法规标准-企标评价")
|
||||
@GetMapping(value = "/evaluateDetail/{standardNumber}")
|
||||
public Result<?> evaluateDetail(@PathVariable("standardNumber") String standardNumber) {
|
||||
Map<String, List<EnterpriseStandardRmrEvaluateDetail>> resultMap = esReviewMeetingService.evaluateDetailByStandardNo(standardNumber);
|
||||
return Result.OK(resultMap);
|
||||
}
|
||||
|
||||
@AutoLog(value = "企业法规标准-导出")
|
||||
@ApiOperation(value="企业法规标准-导出", notes="企业法规标准-导出")
|
||||
@PostMapping("/exportData")
|
||||
public void exportData(HttpServletResponse response, @RequestBody Map<String,Object> parameterMap) {
|
||||
public void exportData(HttpServletResponse response, @RequestBody(required = false) Map<String,Object> parameterMap) {
|
||||
lawsCommonService.commonExport(response, parameterMap, "企标导出", "企标导出");
|
||||
}
|
||||
|
||||
@AutoLog(value = "企业法规标准-带文件导出")
|
||||
@ApiOperation(value="企业法规标准-带文件导出", notes="企业法规标准-带文件导出")
|
||||
@PostMapping("/exportDataWithFile")
|
||||
public void exportDataWithFile(HttpServletResponse response, @RequestBody Map<String,Object> parameterMap) {
|
||||
public void exportDataWithFile(HttpServletResponse response, @RequestBody(required = false) Map<String,Object> parameterMap) {
|
||||
lawsCommonService.exportDataWithFile(response, parameterMap, "企标导出", "企标导出");
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user