Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
platform
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王琮
platform
Commits
27421d88
Commit
27421d88
authored
Jun 06, 2023
by
赵桢
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
统计分数页面导出功能/条件查询功能
parent
0b9f7ac5
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
378 additions
and
1 deletion
+378
-1
QuestionnaireCtrl.java
src/main/java/com/tiptimes/ctrl/QuestionnaireCtrl.java
+48
-0
QuestionnaireDao.java
src/main/java/com/tiptimes/dao/QuestionnaireDao.java
+4
-0
PerformanceSummary.java
src/main/java/com/tiptimes/model/PerformanceSummary.java
+18
-0
PerformanceSummaryTotal.java
...com/tiptimes/model/exportDTO/PerformanceSummaryTotal.java
+7
-0
QuestionnaireService.java
src/main/java/com/tiptimes/service/QuestionnaireService.java
+4
-0
QuestionnaireServiceImpl.java
...a/com/tiptimes/service/impl/QuestionnaireServiceImpl.java
+76
-1
Questionnaire.xml
src/main/resources/mapper/Questionnaire.xml
+221
-0
No files found.
src/main/java/com/tiptimes/ctrl/QuestionnaireCtrl.java
View file @
27421d88
...
...
@@ -416,7 +416,47 @@ public class QuestionnaireCtrl {
map
.
put
(
"data"
,
data
);
return
map
;
}
/**
* 统计中众创空间的分数(新)
* @param
* @return
*/
@RequestMapping
({
"/selectPerformanceSummaryListNew"
})
@ResponseBody
public
Map
<
String
,
Object
>
selectPerformanceSummaryListNew
(
@RequestBody
PerformanceSummary
performanceSummary
){
Map
<
String
,
Object
>
map
=
new
HashMap
();
map
.
put
(
"result"
,
true
);
map
.
put
(
"msg"
,
""
);
Map
<
String
,
Object
>
data
=
new
HashMap
();
//列表排序
String
sorting
=
""
;
if
(
StringUtils
.
isEmpty
(
performanceSummary
.
getSorting
())){
sorting
=
"t_record.id asc"
;
}
else
if
(
performanceSummary
.
getSorting
().
equals
(
"desc"
)){
sorting
=
"basicIndicators desc,guideIndicators desc,rewardIndicators desc"
;
}
else
{
sorting
=
"t_record.id asc"
;
}
performanceSummary
.
setSorting
(
sorting
);
float
totalScore
=
0
;
//查询空间的不同指标的分数
List
<
PerformanceSummary
>
performanceSummaryList
=
questionnaireService
.
selectPerformanceSummaryListNew
(
performanceSummary
);
if
(
performanceSummaryList
.
size
()
>
0
){
for
(
PerformanceSummary
total
:
performanceSummaryList
){
//计算各个空间指标的总分
totalScore
=
total
.
getBasicIndicators
()
+
total
.
getGuideIndicators
()
+
total
.
getRewardIndicators
();
total
.
setTotalScore
(
totalScore
);
}
data
.
put
(
"performanceSummaryList"
,
performanceSummaryList
);
}
map
.
put
(
"data"
,
data
);
return
map
;
}
/**
* 2022年10月新增加功能问卷管理-审批页面根据基础指标、引导指标和奖励指标导出所有空间的数据
* @param request
...
...
@@ -438,6 +478,14 @@ public class QuestionnaireCtrl {
public
void
exportPerformanceSummary
(
HttpServletRequest
request
,
HttpServletResponse
response
)
{
questionnaireService
.
exportPerformanceSummary
(
request
,
response
);
}
/**
* 2023年问卷管理-绩效汇总列表导出
*/
@RequestMapping
(
value
=
{
"/exportPerformanceSummaryNew"
})
@ResponseBody
public
void
exportPerformanceSummaryNew
(
HttpServletRequest
request
,
HttpServletResponse
response
)
{
questionnaireService
.
exportPerformanceSummaryNew
(
request
,
response
);
}
@RequestMapping
(
value
=
"/checkComplete"
)
@ResponseBody
...
...
src/main/java/com/tiptimes/dao/QuestionnaireDao.java
View file @
27421d88
...
...
@@ -52,6 +52,8 @@ public interface QuestionnaireDao {
List
<
PerformanceSummary
>
selectPerformanceSummaryList
(
PerformanceSummary
performanceSummary
);
List
<
PerformanceSummary
>
selectPerformanceSummaryListNew
(
PerformanceSummary
performanceSummary
);
List
<
FullTimeWorkPerson
>
selectFullTimeWorkPersonList
(
@Param
(
"recordId"
)
String
recordId
);
List
<
SiteCondition
>
selectSiteConditionList
();
...
...
@@ -92,6 +94,8 @@ public interface QuestionnaireDao {
List
<
PerformanceSummaryTotal
>
queryGuideAndRewardIndexList
();
List
<
PerformanceSummaryTotal
>
queryGuideAndRewardIndexListNew
();
Integer
updateAnswerScore
(
Answer
answer
);
List
<
Review
>
selectAnswerByStatus
(
@Param
(
"recordId"
)
Long
recordId
);
...
...
src/main/java/com/tiptimes/model/PerformanceSummary.java
View file @
27421d88
...
...
@@ -7,6 +7,24 @@ public class PerformanceSummary {
private
float
guideIndicators
;
//引导指标得分
private
float
rewardIndicators
;
//奖励指标得分
private
float
totalScore
;
//合计得分
private
String
createBy
;
//众创空间名称
public
Integer
getQnYear
()
{
return
qnYear
;
}
private
Integer
qnYear
;
//上报年份
public
void
setQnYear
(
Integer
qnYear
)
{
this
.
qnYear
=
qnYear
;
}
public
String
getCreateBy
()
{
return
createBy
;
}
public
void
setCreateBy
(
String
createBy
)
{
this
.
createBy
=
createBy
;
}
private
String
sorting
;
//排序使用 - desc 默认 --asc 升
...
...
src/main/java/com/tiptimes/model/exportDTO/PerformanceSummaryTotal.java
View file @
27421d88
...
...
@@ -11,6 +11,13 @@ public class PerformanceSummaryTotal {
public
PerformanceSummaryTotal
(){
}
public
Integer
getQnYear
()
{
return
qnYear
;
}
private
Integer
qnYear
;
//上报年份
public
void
setQnYear
(
Integer
qnYear
)
{
this
.
qnYear
=
qnYear
;
}
@ExcelProperty
(
value
=
"序号"
,
index
=
0
)
private
Integer
index
;
...
...
src/main/java/com/tiptimes/service/QuestionnaireService.java
View file @
27421d88
...
...
@@ -100,10 +100,14 @@ public interface QuestionnaireService {
//统计众创空间的分数
List
<
PerformanceSummary
>
selectPerformanceSummaryList
(
PerformanceSummary
performanceSummary
);
List
<
PerformanceSummary
>
selectPerformanceSummaryListNew
(
PerformanceSummary
performanceSummary
);
void
exportFullTimeWorkPerson
(
HttpServletRequest
request
,
HttpServletResponse
response
,
String
index
,
String
recordId
);
void
exportPerformanceSummary
(
HttpServletRequest
request
,
HttpServletResponse
response
);
void
exportPerformanceSummaryNew
(
HttpServletRequest
request
,
HttpServletResponse
response
);
Integer
updateAnswerScore
(
Answer
answer
);
Review
selectOneReviewByRecordIdAndQuestionsId
(
Long
recordId
,
Long
questionsId
);
...
...
src/main/java/com/tiptimes/service/impl/QuestionnaireServiceImpl.java
View file @
27421d88
...
...
@@ -179,7 +179,10 @@ public class QuestionnaireServiceImpl implements QuestionnaireService {
public
List
<
PerformanceSummary
>
selectPerformanceSummaryList
(
PerformanceSummary
performanceSummary
){
return
questionnaireDao
.
selectPerformanceSummaryList
(
performanceSummary
);
}
@Override
public
List
<
PerformanceSummary
>
selectPerformanceSummaryListNew
(
PerformanceSummary
performanceSummary
){
return
questionnaireDao
.
selectPerformanceSummaryListNew
(
performanceSummary
);
}
/**
* 2022年10月新增加功能问卷管理-审批页面根据基础指标、引导指标和奖励指标导出所有空间的数据
* @param request
...
...
@@ -863,6 +866,78 @@ public class QuestionnaireServiceImpl implements QuestionnaireService {
}
}
@Override
public
void
exportPerformanceSummaryNew
(
HttpServletRequest
request
,
HttpServletResponse
response
){
try
{
WriteCellStyle
headWriteCellStyle
=
new
WriteCellStyle
();
//设置背景颜色
headWriteCellStyle
.
setFillForegroundColor
(
IndexedColors
.
GREY_25_PERCENT
.
getIndex
());
//设置头字体
WriteFont
headWriteFont
=
new
WriteFont
();
headWriteFont
.
setFontHeightInPoints
((
short
)
10
);
headWriteFont
.
setBold
(
true
);
headWriteCellStyle
.
setWriteFont
(
headWriteFont
);
//设置头居中
headWriteCellStyle
.
setHorizontalAlignment
(
HorizontalAlignment
.
CENTER
);
//内容策略
WriteCellStyle
contentWriteCellStyle
=
new
WriteCellStyle
();
contentWriteCellStyle
.
setWrapped
(
true
);
//设置 水平居中
contentWriteCellStyle
.
setHorizontalAlignment
(
HorizontalAlignment
.
CENTER
);
HorizontalCellStyleStrategy
horizontalCellStyleStrategy
=
new
HorizontalCellStyleStrategy
(
headWriteCellStyle
,
contentWriteCellStyle
);
response
.
setContentType
(
"application/vnd.ms-excel;charset=UTF-8"
);
response
.
setCharacterEncoding
(
"UTF-8"
);
//导出文件名称
String
fileName_a
=
"绩效汇总表"
;
response
.
setHeader
(
"Content-disposition"
,
"attachment;filename="
+
new
String
((
fileName_a
).
getBytes
(
"gb2312"
),
"ISO-8859-1"
)
+
".xlsx"
);
//查询引导指标和奖励指标数据
List
<
PerformanceSummaryTotal
>
summaryList
=
questionnaireDao
.
queryGuideAndRewardIndexListNew
();
if
(
summaryList
!=
null
)
{
for
(
int
i
=
0
;
i
<
summaryList
.
size
();
i
++){
//excel生成序号
summaryList
.
get
(
i
).
setIndex
(
i
+
1
);
//计算引导指标和奖励指标分数
float
guideIndexScore
=
summaryList
.
get
(
i
).
getGuideIndexOne
()
+
summaryList
.
get
(
i
).
getGuideIndexTwo
()
+
summaryList
.
get
(
i
).
getGuideIndexThree
()
+
summaryList
.
get
(
i
).
getGuideIndexFour
()
+
summaryList
.
get
(
i
).
getGuideIndexFive
()
+
summaryList
.
get
(
i
).
getGuideIndexSix
()
+
summaryList
.
get
(
i
).
getGuideIndexSeven
()
+
summaryList
.
get
(
i
).
getGuideIndexEight
()
+
summaryList
.
get
(
i
).
getGuideIndexNine
()
+
summaryList
.
get
(
i
).
getGuideIndexTen
()
+
summaryList
.
get
(
i
).
getGuideIndexEleven
()
+
summaryList
.
get
(
i
).
getGuideIndexTwelve
()
+
summaryList
.
get
(
i
).
getGuideIndexThirteen
();
if
(
guideIndexScore
>=
50.0
){
summaryList
.
get
(
i
).
setGuideIndexScore
(
50
);
}
else
{
summaryList
.
get
(
i
).
setGuideIndexScore
(
guideIndexScore
);
}
//计算奖励指标分数
float
rewardIndexScore
=
summaryList
.
get
(
i
).
getRewardIndexOne
()
+
summaryList
.
get
(
i
).
getRewardIndexTwo
()
+
summaryList
.
get
(
i
).
getRewardIndexThree
()
+
summaryList
.
get
(
i
).
getRewardIndexFour
()
+
summaryList
.
get
(
i
).
getRewardIndexFive
();
if
(
rewardIndexScore
>=
10.0
){
summaryList
.
get
(
i
).
setRewardIndexScore
(
10
);
}
else
{
summaryList
.
get
(
i
).
setRewardIndexScore
(
rewardIndexScore
);
}
//总分数
float
totalScore
=
summaryList
.
get
(
i
).
getBasisIndexScore
()
+
summaryList
.
get
(
i
).
getGuideIndexScore
()
+
summaryList
.
get
(
i
).
getRewardIndexScore
();
summaryList
.
get
(
i
).
setTotalScore
(
totalScore
);
}
//生成excel
EasyExcel
.
write
(
response
.
getOutputStream
(),
PerformanceSummaryTotal
.
class
).
sheet
(
"绩效汇总表"
).
registerWriteHandler
(
horizontalCellStyleStrategy
)
.
registerWriteHandler
(
new
SimpleColumnWidthStyleStrategy
(
30
))
.
doWrite
(
summaryList
);
response
.
flushBuffer
();
}
}
catch
(
Exception
e
){
e
.
printStackTrace
();
}
}
@Override
public
Integer
updateAnswerScore
(
Answer
answer
){
return
questionnaireDao
.
updateAnswerScore
(
answer
);
...
...
src/main/resources/mapper/Questionnaire.xml
View file @
27421d88
...
...
@@ -177,6 +177,49 @@
${sorting}
</if>
</select>
<!--绩效汇总列表查询(新)2023-->
<select
id=
"selectPerformanceSummaryListNew"
resultType=
"com.tiptimes.model.PerformanceSummary"
>
SELECT
DISTINCT t_record.id as id,
t_record.qn_year as qnYear,
t_record.create_by as createBy,
CASE WHEN t_record.process_status = 2 THEN '0' WHEN t_record.process_status = 3 THEN '30' ELSE '0' END as
basicIndicators,
(
SELECT
CASE WHEN SUM(t_review.score) > 50 THEN 50 WHEN SUM(t_review.score) THEN SUM(t_review.score) ELSE '0' END as
score
FROM t_review
WHERE t_review.questions_id IN(22,21,20,19,18,17,16,15,14,13,12,11,10) AND record_id=t_record.id
) as guideIndicators,
(
SELECT
CASE WHEN SUM(t_review.score) > 10 THEN 10 WHEN SUM(t_review.score) THEN SUM(t_review.score) ELSE '0' END as
score
FROM t_review
WHERE t_review.questions_id IN(27,26,25,24,23) AND record_id=t_record.id
) as rewardIndicators
FROM t_review
LEFT JOIN t_record ON t_review.record_id=t_record.id
LEFT JOIN t_answer ON t_answer.record_id=t_review.record_id
<where>
t_record.process_status=3 OR t_record.process_status=2
<if
test=
"qnYear == null or qnYear == ''"
>
<!-- 年份 -->
AND t_record.qn_year = YEAR(NOW())
</if>
<if
test=
"qnYear != null and qnYear != ''"
>
<!-- 年份 -->
AND t_record.qn_year = #{qnYear}
</if>
<if
test=
"createBy != null and createBy != ''"
>
<!-- 众创空间名称 -->
AND t_record.create_by = #{createBy}
</if>
ORDER BY
<if
test=
"sorting != null and sorting != ''"
>
${sorting}
</if>
</where>
</select>
<!--绩效汇总导出-->
<select
id=
"queryGuideAndRewardIndexList"
resultType=
"com.tiptimes.model.exportDTO.PerformanceSummaryTotal"
>
...
...
@@ -347,6 +390,184 @@
OR process_status = 3
</select>
<select
id=
"queryGuideAndRewardIndexListNew"
resultType=
"com.tiptimes.model.exportDTO.PerformanceSummaryTotal"
>
SELECT DISTINCT t_record.id as id,
t_record.create_by as spaceName,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 1
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexOne,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 2
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexTwo,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 3
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexThree,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 4
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexFour,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 5
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexFive,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 6
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexSix,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 7
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexSeven,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 8
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexEight,
(CASE
WHEN (SELECT t_review.approval_status
FROM t_review
WHERE t_review.questions_id = 9
AND t_review.record_id = t_record.id) = 0
THEN '驳回'
ELSE '通过'
END
) AS basisIndexNine,
(CASE
WHEN t_record.process_status = 2 THEN 0
WHEN t_record.process_status = 3 THEN 30
END
) AS basisIndexScore,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 10
AND t_review.record_id = t_record.id) AS guideIndexOne,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 11
AND t_review.record_id = t_record.id) AS guideIndexTwo,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 12
AND t_review.record_id = t_record.id) AS guideIndexThree,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 13
AND t_review.record_id = t_record.id) AS guideIndexFour,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 14
AND t_review.record_id = t_record.id) AS guideIndexFive,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 15
AND t_review.record_id = t_record.id) AS guideIndexSix,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 16
AND t_review.record_id = t_record.id) AS guideIndexSeven,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 17
AND t_review.record_id = t_record.id) AS guideIndexEight,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 18
AND t_review.record_id = t_record.id) AS guideIndexNine,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 19
AND t_review.record_id = t_record.id) AS guideIndexTen,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 20
AND t_review.record_id = t_record.id) AS guideIndexEleven,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 21
AND t_review.record_id = t_record.id) AS guideIndexTwelve,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 22
AND t_review.record_id = t_record.id) AS guideIndexThirteen,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 23
AND t_review.record_id = t_record.id) AS rewardIndexOne,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 24
AND t_review.record_id = t_record.id) AS rewardIndexTwo,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 25
AND t_review.record_id = t_record.id) AS rewardIndexThree,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 26
AND t_review.record_id = t_record.id) AS rewardIndexFour,
(SELECT t_review.score
FROM t_review
WHERE t_review.questions_id = 27
AND t_review.record_id = t_record.id) AS rewardIndexFive
FROM t_record
RIGHT JOIN t_review ON t_record.id = t_review.record_id
<where>
(t_record.process_status = 2
OR t_record.process_status = 3)
<if
test=
"qnYear == null or qnYear == ''"
>
<!-- 年份 -->
AND t_record.qn_year = YEAR(NOW())
</if>
<if
test=
"qnYear != null and qnYear != ''"
>
<!-- 年份 -->
AND t_record.qn_year = #{qnYear}
</if>
</where>
</select>
<!--2022年10月新增加功能问卷管理-审批页面根据基础指标、引导指标和奖励指标导出所有空间的数据-->
<!-- 问卷管理-导出基础指标1 众创空间场地情况、是否租赁场地-->
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment