Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
A
attendance-performance-platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
attendance-performance-platform
Commits
7138d154
Commit
7138d154
authored
Jul 13, 2023
by
姬鋆屾
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'master' of
http://gitlab.scsmile.cn/zxf/attendance-performance-platform
parents
eef1442e
61669359
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
503 additions
and
1 deletion
+503
-1
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/dao/FeedbackDao.java
...java/com/mortals/xhx/module/feedback/dao/FeedbackDao.java
+26
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/dao/ibatis/FeedbackDaoImpl.java
...rtals/xhx/module/feedback/dao/ibatis/FeedbackDaoImpl.java
+48
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/model/vo/FeedbackStaffInfoVo.java
...als/xhx/module/feedback/model/vo/FeedbackStaffInfoVo.java
+44
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/model/vo/FeedbackVo.java
.../com/mortals/xhx/module/feedback/model/vo/FeedbackVo.java
+1
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/model/vo/OptionSummaryVo.java
...mortals/xhx/module/feedback/model/vo/OptionSummaryVo.java
+39
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/model/vo/QuestionAnswerVo.java
...ortals/xhx/module/feedback/model/vo/QuestionAnswerVo.java
+44
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/service/FeedbackService.java
.../mortals/xhx/module/feedback/service/FeedbackService.java
+31
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/service/impl/FeedbackQuestionServiceImpl.java
...le/feedback/service/impl/FeedbackQuestionServiceImpl.java
+1
-1
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/service/impl/FeedbackServiceImpl.java
...xhx/module/feedback/service/impl/FeedbackServiceImpl.java
+32
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/web/FeedbackController.java
...m/mortals/xhx/module/feedback/web/FeedbackController.java
+133
-0
attendance-performance-manager/src/main/resources/sqlmap/module/feedback/FeedbackMapperExt.xml
...in/resources/sqlmap/module/feedback/FeedbackMapperExt.xml
+104
-0
No files found.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/dao/FeedbackDao.java
View file @
7138d154
package
com.mortals.xhx.module.feedback.dao
;
import
com.mortals.framework.dao.ICRUDDao
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.framework.model.Result
;
import
com.mortals.xhx.module.feedback.model.FeedbackEntity
;
import
com.mortals.xhx.module.feedback.model.vo.FeedbackStaffInfoVo
;
import
com.mortals.xhx.module.feedback.model.vo.OptionSummaryVo
;
import
com.mortals.xhx.module.feedback.model.vo.QuestionAnswerVo
;
import
java.util.List
;
/**
* 绩效反馈记录信息Dao
...
...
@@ -13,5 +19,25 @@ import java.util.List;
public
interface
FeedbackDao
extends
ICRUDDao
<
FeedbackEntity
,
Long
>{
/***
* 问卷反馈人员列表
* @param feedbackId
* @return
*/
List
<
FeedbackStaffInfoVo
>
getFeedbackStaffList
(
Long
feedbackId
);
/**
* 问卷单选多选反馈统计
* @param feedbackId
* @return
*/
List
<
OptionSummaryVo
>
getOptionSummaryList
(
Long
feedbackId
);
/**
* 问卷问题反馈详情
* @param questionId
* @param pageInfo
* @return
*/
Result
<
QuestionAnswerVo
>
getQuestionAnswerList
(
Long
questionId
,
PageInfo
pageInfo
);
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/dao/ibatis/FeedbackDaoImpl.java
View file @
7138d154
package
com.mortals.xhx.module.feedback.dao.ibatis
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.framework.model.ParamDto
;
import
com.mortals.framework.model.Result
;
import
com.mortals.framework.util.StringUtils
;
import
com.mortals.xhx.module.feedback.model.vo.FeedbackStaffInfoVo
;
import
com.mortals.xhx.module.feedback.model.vo.OptionSummaryVo
;
import
com.mortals.xhx.module.feedback.model.vo.QuestionAnswerVo
;
import
org.apache.ibatis.session.RowBounds
;
import
org.springframework.stereotype.Repository
;
import
com.mortals.xhx.module.feedback.dao.FeedbackDao
;
import
com.mortals.xhx.module.feedback.model.FeedbackEntity
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis
;
import
java.util.List
;
...
...
@@ -17,5 +27,43 @@ import java.util.List;
public
class
FeedbackDaoImpl
extends
BaseCRUDDaoMybatis
<
FeedbackEntity
,
Long
>
implements
FeedbackDao
{
@Override
public
List
<
FeedbackStaffInfoVo
>
getFeedbackStaffList
(
Long
feedbackId
)
{
return
this
.
getSqlSession
().
selectList
(
this
.
getSqlId
(
"getFeedbackStaffList"
),
feedbackId
);
}
@Override
public
List
<
OptionSummaryVo
>
getOptionSummaryList
(
Long
feedbackId
)
{
return
this
.
getSqlSession
().
selectList
(
this
.
getSqlId
(
"getOptionSummaryList"
),
feedbackId
);
}
@Override
public
Result
<
QuestionAnswerVo
>
getQuestionAnswerList
(
Long
questionId
,
PageInfo
pageInfo
)
{
String
sqlId
=
"getQuestionAnswerList"
;
Result
result
=
new
Result
();
List
list
=
null
;
int
count
=
this
.
getQuestionAnswerListCount
(
questionId
);
if
(
count
==
0
)
{
list
=
new
ArrayList
();
}
else
if
(
pageInfo
.
getPrePageResult
()
==
-
1
)
{
list
=
this
.
getSqlSession
().
selectList
(
this
.
getSqlId
(
sqlId
),
questionId
);
}
else
{
if
(
pageInfo
.
getBeginIndex
()
>
count
)
{
pageInfo
.
setCurrPage
(
1
);
}
RowBounds
rowBounds
=
new
RowBounds
(
pageInfo
.
getBeginIndex
(),
pageInfo
.
getPrePageResult
());
list
=
this
.
getSqlSession
().
selectList
(
this
.
getSqlId
(
sqlId
),
questionId
,
rowBounds
);
}
pageInfo
.
setTotalResult
(
count
);
result
.
setPageInfo
(
pageInfo
);
result
.
setList
((
List
)
list
);
return
result
;
}
private
int
getQuestionAnswerListCount
(
Long
questionId
)
{
return
(
Integer
)
this
.
getSqlSession
().
selectOne
(
this
.
getSqlId
(
"getQuestionAnswerListCount"
),
questionId
);
}
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/model/vo/FeedbackStaffInfoVo.java
0 → 100644
View file @
7138d154
package
com.mortals.xhx.module.feedback.model.vo
;
import
lombok.Data
;
import
java.util.Date
;
/**
* 问卷反馈人员信息视图
*/
@Data
public
class
FeedbackStaffInfoVo
{
/**
* 反馈问卷id号
*/
private
Long
feedbackId
;
/**
* 用户id
*/
private
Long
staffId
;
/**
* 员工姓名
*/
private
String
name
;
/**
* 所属部门Id
*/
private
Long
deptId
;
/**
* 所属部门名称
*/
private
String
deptName
;
/**
* 职位名称
*/
private
String
positionName
;
/**
* 反馈状态,0:未反馈,1:已反馈
*/
private
Integer
backStatus
;
/**
* 反馈时间
*/
private
Date
backTime
;
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/model/vo/FeedbackVo.java
View file @
7138d154
...
...
@@ -18,4 +18,5 @@ public class FeedbackVo extends BaseEntityLong {
private
List
<
Long
>
staffList
;
private
Long
questionId
;
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/model/vo/OptionSummaryVo.java
0 → 100644
View file @
7138d154
package
com.mortals.xhx.module.feedback.model.vo
;
import
lombok.Data
;
/**
* 问卷单选多选反馈统计视图
*/
@Data
public
class
OptionSummaryVo
{
/**
* 问题id号
*/
private
Long
questionId
;
/**
* 反馈问卷id号
*/
private
Long
feedbackId
;
/**
* 问题内容
*/
private
String
question
;
/**
* 问题类型 (1.单项选择,2.多项选择,3.文本框,4.多项文本框,5.文字,6.上传附件)
*/
private
Integer
questionType
;
/**
* 选项id号
*/
private
Long
optionId
;
/**
* 选项内容
*/
private
String
optionContent
;
/**
* 选项统计
*/
private
Integer
optionCount
;
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/model/vo/QuestionAnswerVo.java
0 → 100644
View file @
7138d154
package
com.mortals.xhx.module.feedback.model.vo
;
import
lombok.Data
;
import
java.util.Date
;
/**
* 问卷问题反馈详情视图
*/
@Data
public
class
QuestionAnswerVo
{
/**
* 问题id号
*/
private
Long
questionId
;
/**
* 反馈问卷id号
*/
private
Long
feedbackId
;
/**
* 问题内容
*/
private
String
question
;
/**
* 问题类型 (1.单项选择,2.多项选择,3.文本框,4.多项文本框,5.文字,6.上传附件)
*/
private
Integer
questionType
;
/**
* 用户id
*/
private
Long
staffId
;
/**
* 员工姓名
*/
private
String
name
;
/**
* 回答内容
*/
private
String
answer
;
/**
* 反馈时间
*/
private
Date
backTime
;
}
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/service/FeedbackService.java
View file @
7138d154
package
com.mortals.xhx.module.feedback.service
;
import
com.mortals.framework.exception.AppException
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.framework.model.Result
;
import
com.mortals.framework.service.ICRUDService
;
import
com.mortals.xhx.module.feedback.model.FeedbackEntity
;
import
com.mortals.xhx.module.feedback.dao.FeedbackDao
;
import
com.mortals.xhx.module.feedback.model.vo.FeedbackStaffInfoVo
;
import
com.mortals.xhx.module.feedback.model.vo.OptionSummaryVo
;
import
com.mortals.xhx.module.feedback.model.vo.QuestionAnswerVo
;
import
java.util.List
;
/**
* FeedbackService
*
...
...
@@ -13,4 +22,26 @@ import com.mortals.xhx.module.feedback.dao.FeedbackDao;
public
interface
FeedbackService
extends
ICRUDService
<
FeedbackEntity
,
Long
>{
FeedbackDao
getDao
();
/***
* 问卷反馈人员列表
* @param feedbackId
* @return
*/
List
<
FeedbackStaffInfoVo
>
getFeedbackStaffList
(
Long
feedbackId
)
throws
AppException
;
/**
* 问卷单选多选反馈统计
* @param feedbackId
* @return
*/
List
<
OptionSummaryVo
>
getOptionSummaryList
(
Long
feedbackId
)
throws
AppException
;
/**
* 问卷问题反馈详情
* @param questionId
* @param pageInfo
* @return
*/
Result
<
QuestionAnswerVo
>
getQuestionAnswerList
(
Long
questionId
,
PageInfo
pageInfo
)
throws
AppException
;
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/service/impl/FeedbackQuestionServiceImpl.java
View file @
7138d154
...
...
@@ -35,8 +35,8 @@ public class FeedbackQuestionServiceImpl extends AbstractCRUDServiceImpl<Feedbac
item
.
setQuestionId
(
entity
.
getId
());
item
.
setCreateUserId
(
this
.
getContextUserId
(
context
));
item
.
setCreateTime
(
new
Date
());
feedbackOptionService
.
save
(
item
);
}).
count
();
feedbackOptionService
.
save
(
entity
.
getFeedbackOptionList
());
}
super
.
saveAfter
(
entity
,
context
);
}
...
...
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/service/impl/FeedbackServiceImpl.java
View file @
7138d154
package
com.mortals.xhx.module.feedback.service.impl
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.framework.model.Result
;
import
com.mortals.xhx.module.feedback.model.*
;
import
com.mortals.xhx.module.feedback.model.vo.FeedbackStaffInfoVo
;
import
com.mortals.xhx.module.feedback.model.vo.OptionSummaryVo
;
import
com.mortals.xhx.module.feedback.model.vo.QuestionAnswerVo
;
import
com.mortals.xhx.module.feedback.service.FeedbackStaffService
;
import
org.springframework.stereotype.Service
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
...
...
@@ -103,4 +108,31 @@ public class FeedbackServiceImpl extends AbstractCRUDServiceImpl<FeedbackDao, Fe
feedbackStaffService
.
removeList
(
staffEntityList
,
context
);
super
.
removeAfter
(
ids
,
context
,
result
);
}
@Override
public
List
<
FeedbackStaffInfoVo
>
getFeedbackStaffList
(
Long
feedbackId
)
throws
AppException
{
if
(
feedbackId
==
null
){
throw
new
AppException
(
"绩效反馈记录Id不能为空"
);
}
return
dao
.
getFeedbackStaffList
(
feedbackId
);
}
@Override
public
List
<
OptionSummaryVo
>
getOptionSummaryList
(
Long
feedbackId
)
throws
AppException
{
if
(
feedbackId
==
null
){
throw
new
AppException
(
"绩效反馈记录Id不能为空"
);
}
return
dao
.
getOptionSummaryList
(
feedbackId
);
}
@Override
public
Result
<
QuestionAnswerVo
>
getQuestionAnswerList
(
Long
questionId
,
PageInfo
pageInfo
)
throws
AppException
{
if
(
questionId
==
null
){
throw
new
AppException
(
"绩效反馈记录问题Id不能为空"
);
}
if
(
pageInfo
==
null
){
pageInfo
=
new
PageInfo
();
}
return
dao
.
getQuestionAnswerList
(
questionId
,
pageInfo
);
}
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/feedback/web/FeedbackController.java
View file @
7138d154
package
com.mortals.xhx.module.feedback.web
;
import
com.mortals.framework.annotation.UnAuth
;
import
com.mortals.framework.common.Rest
;
import
com.mortals.framework.model.PageInfo
;
import
com.mortals.framework.model.Result
;
import
com.mortals.framework.web.BaseCRUDJsonBodyMappingController
;
import
com.mortals.xhx.base.system.param.service.ParamService
;
import
com.mortals.xhx.module.feedback.model.FeedbackAnswerEntity
;
import
com.mortals.xhx.module.feedback.model.vo.FeedbackStaffInfoVo
;
import
com.mortals.xhx.module.feedback.model.vo.OptionSummaryVo
;
import
com.mortals.xhx.module.feedback.model.vo.QuestionAnswerVo
;
import
org.apache.commons.collections4.CollectionUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.util.ObjectUtils
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
...
...
@@ -42,10 +52,133 @@ public class FeedbackController extends BaseCRUDJsonBodyMappingController<Feedba
@Override
protected
void
init
(
Map
<
String
,
Object
>
model
,
Context
context
)
{
Map
<
String
,
String
>
backStatus
=
new
HashMap
<>();
backStatus
.
put
(
"0"
,
"未反馈"
);
backStatus
.
put
(
"1"
,
"已反馈"
);
this
.
addDict
(
model
,
"processStatus"
,
paramService
.
getParamBySecondOrganize
(
"Feedback"
,
"processStatus"
));
this
.
addDict
(
model
,
"weblink"
,
paramService
.
getParamBySecondOrganize
(
"Feedback"
,
"weblink"
));
this
.
addDict
(
model
,
"backStatus"
,
backStatus
);
super
.
init
(
model
,
context
);
}
/**
* 查询问卷反馈人员列表
* @param feedbackId
* @return
*/
@RequestMapping
(
value
=
{
"getStaffList"
},
method
=
{
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@UnAuth
public
Rest
<
Object
>
getFeedbackStaffList
(
Long
feedbackId
)
{
Rest
<
Object
>
ret
=
new
Rest
();
Map
<
String
,
Object
>
model
=
new
HashMap
();
Context
context
=
this
.
getContext
();
String
busiDesc
=
"查询问卷反馈人员列表"
;
int
code
=
1
;
try
{
List
<
FeedbackStaffInfoVo
>
result
=
this
.
getService
().
getFeedbackStaffList
(
feedbackId
);
if
(
CollectionUtils
.
isNotEmpty
(
result
))
{
Map
<
Integer
,
List
<
FeedbackStaffInfoVo
>>
groupMap
=
result
.
stream
().
collect
(
Collectors
.
groupingBy
(
FeedbackStaffInfoVo:
:
getBackStatus
));
if
(
groupMap
.
containsKey
(
1
))
{
model
.
put
(
"feedBack"
,
groupMap
.
get
(
1
).
size
());
}
else
{
model
.
put
(
"feedBack"
,
0
);
}
if
(
groupMap
.
containsKey
(
0
))
{
model
.
put
(
"notBack"
,
groupMap
.
get
(
0
).
size
());
}
else
{
model
.
put
(
"notBack"
,
0
);
}
}
else
{
model
.
put
(
"feedBack"
,
0
);
model
.
put
(
"notBack"
,
0
);
}
model
.
put
(
"data"
,
result
);
model
.
put
(
"message_info"
,
busiDesc
+
"成功"
);
if
(!
ObjectUtils
.
isEmpty
(
context
)
&&
!
ObjectUtils
.
isEmpty
(
context
.
getUser
()))
{
this
.
recordSysLog
(
this
.
request
,
busiDesc
+
" 【成功】"
);
}
}
catch
(
Exception
var9
)
{
code
=
-
1
;
this
.
doException
(
this
.
request
,
busiDesc
,
model
,
var9
);
}
this
.
init
(
model
,
context
);
ret
.
setCode
(
code
);
ret
.
setData
(
model
);
ret
.
setDict
(
model
.
get
(
"dict"
));
ret
.
setMsg
(
model
.
get
(
"message_info"
)
==
null
?
""
:
model
.
remove
(
"message_info"
).
toString
());
return
ret
;
}
/**
* 问卷单选多选反馈统计
* @param feedbackId
* @return
*/
@RequestMapping
(
value
=
{
"getOptionSummaryList"
},
method
=
{
RequestMethod
.
POST
,
RequestMethod
.
GET
})
@UnAuth
public
Rest
<
Object
>
getOptionSummaryList
(
Long
feedbackId
)
{
Rest
<
Object
>
ret
=
new
Rest
();
Map
<
String
,
Object
>
model
=
new
HashMap
();
Context
context
=
this
.
getContext
();
String
busiDesc
=
"查询问卷单选多选反馈统计"
;
int
code
=
1
;
try
{
List
<
OptionSummaryVo
>
result
=
this
.
getService
().
getOptionSummaryList
(
feedbackId
);
model
.
put
(
"data"
,
result
);
model
.
put
(
"message_info"
,
busiDesc
+
"成功"
);
if
(!
ObjectUtils
.
isEmpty
(
context
)
&&
!
ObjectUtils
.
isEmpty
(
context
.
getUser
()))
{
this
.
recordSysLog
(
this
.
request
,
busiDesc
+
" 【成功】"
);
}
}
catch
(
Exception
var9
)
{
code
=
-
1
;
this
.
doException
(
this
.
request
,
busiDesc
,
model
,
var9
);
}
this
.
init
(
model
,
context
);
ret
.
setCode
(
code
);
ret
.
setData
(
model
);
ret
.
setDict
(
model
.
get
(
"dict"
));
ret
.
setMsg
(
model
.
get
(
"message_info"
)
==
null
?
""
:
model
.
remove
(
"message_info"
).
toString
());
return
ret
;
}
/**
* 问卷问题反馈详情
* @param query
* @return
*/
@PostMapping
({
"getQuestionAnswerList"
})
@UnAuth
public
Rest
<
Object
>
getQuestionAnswerList
(
@RequestBody
FeedbackEntity
query
)
{
Rest
<
Object
>
ret
=
new
Rest
();
Map
<
String
,
Object
>
model
=
new
HashMap
();
Context
context
=
this
.
getContext
();
String
busiDesc
=
"查询问卷问题反馈详情"
;
int
code
=
1
;
try
{
PageInfo
pageInfo
=
this
.
buildPageInfo
(
query
);
Result
<
QuestionAnswerVo
>
result
=
this
.
getService
().
getQuestionAnswerList
(
query
.
getQuestionId
(),
pageInfo
);
model
.
put
(
"data"
,
result
.
getList
());
model
.
put
(
"pageInfo"
,
result
.
getPageInfo
());
this
.
parsePageInfo
(
model
,
result
.
getPageInfo
());
code
=
this
.
doListAfter
(
query
,
(
Map
)
model
,
context
);
model
.
put
(
"message_info"
,
busiDesc
+
"成功"
);
if
(!
ObjectUtils
.
isEmpty
(
context
)
&&
!
ObjectUtils
.
isEmpty
(
context
.
getUser
()))
{
this
.
recordSysLog
(
this
.
request
,
busiDesc
+
" 【成功】"
);
}
}
catch
(
Exception
var9
)
{
code
=
-
1
;
this
.
doException
(
this
.
request
,
busiDesc
,
model
,
var9
);
}
this
.
init
(
model
,
context
);
ret
.
setCode
(
code
);
ret
.
setData
(
model
);
ret
.
setDict
(
model
.
get
(
"dict"
));
ret
.
setMsg
(
model
.
get
(
"message_info"
)
==
null
?
""
:
model
.
remove
(
"message_info"
).
toString
());
return
ret
;
}
}
\ No newline at end of file
attendance-performance-manager/src/main/resources/sqlmap/module/feedback/FeedbackMapperExt.xml
0 → 100644
View file @
7138d154
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"mybatis-3-mapper.dtd">
<mapper
namespace=
"com.mortals.xhx.module.feedback.dao.ibatis.FeedbackDaoImpl"
>
<!-- 问卷反馈人员列表 -->
<select
id=
"getFeedbackStaffList"
parameterType=
"long"
resultType=
"com.mortals.xhx.module.feedback.model.vo.FeedbackStaffInfoVo"
>
SELECT
s.feedbackId,
s.staffId,
s1.`name`,
s1.deptId,
s1.deptName,
s1.positionName,
CASE IFNULL(a.id, 0) WHEN 0 THEN 0 ELSE 1 END AS backStatus,
MAX(a.createTime) AS backTime
FROM
mortals_xhx_feedback_staff s
LEFT JOIN mortals_xhx_feedback_answer a ON s.staffId = a.staffId AND s.feedbackId = a.feedbackId
LEFT JOIN mortals_xhx_staff s1 ON s.staffId = s1.id
WHERE
s.feedbackId = #{feedbackId}
GROUP BY
s.staffId;
</select>
<!-- 问卷单选多选反馈统计 -->
<select
id=
"getOptionSummaryList"
parameterType=
"long"
resultType=
"com.mortals.xhx.module.feedback.model.vo.OptionSummaryVo"
>
SELECT
q.id AS questionId,
q.feedbackId,
q.content AS question,
q.questionType,
o.optionId,
o.optionContent,
count(o.id) optionCount
FROM
mortals_xhx_feedback_question q,
mortals_xhx_feedback_answer a,
mortals_xhx_feedback_answer_option o
WHERE
q.id = a.questionId
AND q.feedbackId = a.feedbackId
AND a.id = o.answerId
AND (q.questionType = 1 OR q.questionType = 2)
AND q.feedbackId = #{feedbackId}
GROUP BY
q.id,
o.optionId;
</select>
<!-- 问卷问题反馈详情 -->
<select
id=
"getQuestionAnswerList"
parameterType=
"long"
resultType=
"com.mortals.xhx.module.feedback.model.vo.QuestionAnswerVo"
>
SELECT
q.id AS questionId,
q.feedbackId,
q.content AS question,
q.questionType,
a.staffId,
s.`name`,
a.content AS answer,
a.createTime AS backTime
FROM
mortals_xhx_feedback_question q,
mortals_xhx_feedback_answer a,
mortals_xhx_staff s
WHERE
q.id = a.questionId
AND q.feedbackId = a.feedbackId
AND a.staffId = s.id
AND q.questionType != 1
AND q.questionType != 2
AND q.id = #{questionId}
</select>
<!-- 获取 -->
<select
id=
"getQuestionAnswerListCount"
parameterType=
"long"
resultType=
"int"
>
select count(1)
from
(
SELECT
q.id AS questionId,
q.feedbackId,
q.content AS question,
q.questionType,
a.staffId,
s.`name`,
a.content AS answer,
a.createTime AS backTime
FROM
mortals_xhx_feedback_question q,
mortals_xhx_feedback_answer a,
mortals_xhx_staff s
WHERE
q.id = a.questionId
AND q.feedbackId = a.feedbackId
AND a.staffId = s.id
AND q.questionType != 1
AND q.questionType != 2
AND q.id = #{questionId}
) as a
</select>
</mapper>
\ No newline at end of file
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