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