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
a683a00f
Commit
a683a00f
authored
Apr 22, 2024
by
赵啸非
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
9a162b73
e0e60418
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
180 additions
and
141 deletions
+180
-141
attendance-performance-manager-ui/admin/src/views/attendance/leave/record/drawershow.vue
...ui/admin/src/views/attendance/leave/record/drawershow.vue
+92
-130
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceGroupServiceImpl.java
...e/attendance/service/impl/AttendanceGroupServiceImpl.java
+2
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceLeaveRecordServiceImpl.java
...ndance/service/impl/AttendanceLeaveRecordServiceImpl.java
+74
-10
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/service/impl/PerformAttendRecordServiceImpl.java
.../perform/service/impl/PerformAttendRecordServiceImpl.java
+1
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/window/service/impl/WindowWorkmanPerformServiceImpl.java
.../window/service/impl/WindowWorkmanPerformServiceImpl.java
+4
-0
attendance-performance-manager/src/main/resources/sqlmap/module/staff/StaffPerformSummaryMapper.xml
...sources/sqlmap/module/staff/StaffPerformSummaryMapper.xml
+7
-1
No files found.
attendance-performance-manager-ui/admin/src/views/attendance/leave/record/drawershow.vue
View file @
a683a00f
<
template
>
<!-- 弹出框表单 -->
<el-drawer
:title=
"title"
:visible.sync=
"open"
:direction=
"direction"
size=
"60%"
>
<el-drawer
:title=
"title"
:visible.sync=
"open"
:direction=
"direction"
size=
"60%"
>
<div
style=
"padding:15px"
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<el-row>
<!--
<Field
label=
"请假人"
prop=
"leavePersonId"
v-model=
"form.leavePersonId"
placeholder=
"请输入请假人"
/>
-->
<Field
<
!--
<
Field
label=
"请假人"
prop=
"leavePerson"
v-model=
"form.leavePerson"
placeholder=
"请输入请假人"
:maxLength=
"10"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"所属部门"
prop=
"deptId"
v-model=
"form.deptId"
type=
"select"
placeholder=
"请选择所属部门"
:enumData=
"dict.deptId"
:disabled=
"pageInfo.type == 'view'"
/>
/>
-->
<Field
label=
"请假人"
prop=
"leavePerson"
type=
"select"
filterable
remote
v-model=
"form.leavePerson"
placeholder=
"请输入请假人"
:remote-method=
"remoteMethod"
:maxLength=
"10"
:enumData=
"staffList"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"所属部门"
prop=
"deptId"
v-model=
"form.deptId"
type=
"select"
placeholder=
"请选择所属部门"
:enumData=
"dict.deptId"
:disabled=
"pageInfo.type == 'view'"
/>
<!--
<Field
label=
"所属部门"
prop=
"deptName"
v-model=
"form.deptName"
type=
"textarea"
placeholder=
"请输入所属部门"
/>
-->
<Field
label=
"电话号码"
prop=
"phoneNumber"
v-model=
"form.phoneNumber"
placeholder=
"请输入电话号码"
:maxLength=
"11"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"请假类型"
prop=
"leaveType"
v-model=
"form.leaveType"
type=
"select"
:enumData=
"dict.leaveType"
placeholder=
"请选择请假类型"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"电话号码"
prop=
"phoneNumber"
v-model=
"form.phoneNumber"
placeholder=
"请输入电话号码"
:maxLength=
"11"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"请假类型"
prop=
"leaveType"
v-model=
"form.leaveType"
type=
"select"
:enumData=
"dict.leaveType"
placeholder=
"请选择请假类型"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"开始时间"
prop=
"startTime"
v-model=
"form.startTime"
type=
"datetime"
@
change=
"changedate"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"结束时间"
prop=
"endTime"
v-model=
"form.endTime"
type=
"datetime"
@
change=
"changedate"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"开始时间"
prop=
"startTime"
v-model=
"form.startTime"
type=
"datetime"
@
change=
"changedate"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"结束时间"
prop=
"endTime"
v-model=
"form.endTime"
type=
"datetime"
@
change=
"changedate"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"时长(单位:小时)"
disabled
prop=
"duration"
v-model=
"form.duration / 60 / 60"
placeholder=
"请输入时长(秒)"
:maxLength=
"4"
/>
<Field
label=
"请假事由"
prop=
"reason"
v-model=
"form.reason"
type=
"textarea"
placeholder=
"请输入请假事由"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"审核结果"
prop=
"auditResult"
v-model=
"form.auditResult"
type=
"radioCol"
:enumData=
"dict.auditResult"
placeholder=
"请选择审核结果"
:disabled=
"pageInfo.type == 'view'"
style=
"width: 100%;"
/>
<Field
label=
"时长(单位:小时)"
disabled
prop=
"duration"
v-model=
"form.duration / 60 / 60"
placeholder=
"请输入时长(秒)"
:maxLength=
"4"
/>
<Field
label=
"请假事由"
prop=
"reason"
v-model=
"form.reason"
type=
"textarea"
placeholder=
"请输入请假事由"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"审核结果"
prop=
"auditResult"
v-model=
"form.auditResult"
type=
"radioCol"
:enumData=
"dict.auditResult"
placeholder=
"请选择审核结果"
:disabled=
"pageInfo.type == 'view'"
style=
"width: 100%;"
/>
<Field
label=
"审批负责人"
prop=
"approverId"
type=
"select"
v-model=
"form.approverId"
placeholder=
"请选择审批负责人"
:enumData=
"dict.approverId"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"申请时间"
prop=
"createTime"
v-model=
"form.createTime"
type=
"datetime"
disabled
/>
<Field
label=
"审核说明"
prop=
"auditDesc"
type=
"textarea"
v-model=
"form.auditDesc"
placeholder=
"请输入审核说明"
:disabled=
"pageInfo.type == 'view'"
style=
"width: 100%;"
/>
<Field
label=
"审批负责人"
prop=
"approverId"
type=
"select"
v-model=
"form.approverId"
placeholder=
"请选择审批负责人"
:enumData=
"dict.approverId"
:disabled=
"pageInfo.type == 'view'"
/>
<Field
label=
"申请时间"
prop=
"createTime"
v-model=
"form.createTime"
type=
"datetime"
disabled
/>
<Field
label=
"审核说明"
prop=
"auditDesc"
type=
"textarea"
v-model=
"form.auditDesc"
placeholder=
"请输入审核说明"
:disabled=
"pageInfo.type == 'view'"
style=
"width: 100%;"
/>
</el-row>
<!--
<Field
label=
"审批负责人"
prop=
"approver"
v-model=
"form.approver"
placeholder=
"请输入审批负责人"
/>
-->
<!--
<Field
label=
"附件"
prop=
"attachment"
v-model=
"form.attachment"
type=
"textarea"
placeholder=
"请输入附件"
/>
-->
<Field
label=
"备注"
prop=
"remark"
v-model=
"form.remark"
type=
"textarea"
placeholder=
"请输入备注"
:disabled=
"pageInfo.type == 'view'"
style=
"width: 100%;"
/>
<Field
label=
"备注"
prop=
"remark"
v-model=
"form.remark"
type=
"textarea"
placeholder=
"请输入备注"
:disabled=
"pageInfo.type == 'view'"
style=
"width: 100%;"
/>
<el-form-item
label=
"附件路径"
prop=
"attachmentPathList"
>
<FileUpload
@
input=
"uploadFn"
:value=
"form.attachmentPathList"
:fileNumber=
"1"
:pageInfoType=
"pageInfo.type"
/>
<FileUpload
@
input=
"uploadFn"
:value=
"form.attachmentPathList"
:fileNumber=
"1"
:pageInfoType=
"pageInfo.type"
/>
</el-form-item>
<form-buttons
@
submit=
"submitForm"
noCancelBtn
v-if=
"pageInfo.type !== 'view'"
/>
<form-buttons
@
submit=
"submitForm"
noCancelBtn
v-if=
"pageInfo.type !== 'view'"
/>
</el-form>
</div>
</el-drawer>
...
...
@@ -163,6 +74,7 @@ export default {
loading
:
true
,
// 弹出层标题
title
:
"
请假记录信息
"
,
staffList
:
{},
// 是否显示弹出层
open
:
false
,
direction
:
"
rtl
"
,
...
...
@@ -172,9 +84,19 @@ export default {
// 表单校验
rules
:
{
leavePerson
:
[
{
required
:
true
,
message
:
"
请输入请假人
"
,
trigger
:
"
blur
"
},
{
required
:
true
,
message
:
"
请输入请假人
"
,
trigger
:
"
blur
"
,
},
],
deptId
:
[
{
required
:
true
,
message
:
"
请选择部门
"
,
trigger
:
"
change
"
,
},
],
deptId
:
[{
required
:
true
,
message
:
"
请选择部门
"
,
trigger
:
"
change
"
}],
// phoneNumber: [
// { required: true, message: "请输入电话号码", trigger: "blur" },
// {
...
...
@@ -184,33 +106,71 @@ export default {
// },
// ],
leaveType
:
[
{
required
:
true
,
message
:
"
请选择请假类型
"
,
trigger
:
"
change
"
},
{
required
:
true
,
message
:
"
请选择请假类型
"
,
trigger
:
"
change
"
,
},
],
startTime
:
[
{
required
:
true
,
message
:
"
请选择开始时间
"
,
trigger
:
"
change
"
},
{
required
:
true
,
message
:
"
请选择开始时间
"
,
trigger
:
"
change
"
,
},
],
endTime
:
[
{
required
:
true
,
message
:
"
请选择结束时间
"
,
trigger
:
"
change
"
},
{
required
:
true
,
message
:
"
请选择结束时间
"
,
trigger
:
"
change
"
,
},
],
duration
:
[
{
required
:
true
,
message
:
"
请输入时长
"
,
trigger
:
"
blur
"
},
],
duration
:
[{
required
:
true
,
message
:
"
请输入时长
"
,
trigger
:
"
blur
"
}],
// reason: [
// { required: true, message: "请输入请假理由", trigger: "blur" },
// ],
approverId
:
[
{
required
:
true
,
message
:
"
请选择审批人
"
,
trigger
:
"
change
"
},
{
required
:
true
,
message
:
"
请选择审批人
"
,
trigger
:
"
change
"
,
},
],
// attachmentPathList: [
// { required: true, message: "请上传附件文件", trigger: "change" },
// ],
auditResult
:
[
{
required
:
true
,
message
:
"
请选择审核结果
"
,
trigger
:
"
change
"
},
{
required
:
true
,
message
:
"
请选择审核结果
"
,
trigger
:
"
change
"
,
},
],
},
attachmentPath
:
""
,
};
},
watch
:
{},
mounted
()
{
this
.
remoteMethod
()
},
methods
:
{
async
remoteMethod
()
{
await
this
.
$post
(
`/staff/list`
,
{
page
:
1
,
size
:
-
1
,
}).
then
((
res
)
=>
{
let
data
=
res
.
data
.
data
let
obj
=
{}
for
(
let
key
in
data
)
{
obj
[
key
]
=
data
[
key
].
name
}
this
.
staffList
=
obj
});
},
// beforeSubmit() {
// if (this.form.endTime.valueOf() > this.form.startTime.valueOf()) {
// // this.submitForm();
...
...
@@ -285,7 +245,9 @@ export default {
},
changedate
(
val
)
{
if
(
this
.
form
.
startTime
&&
this
.
form
.
endTime
)
{
if
(
this
.
form
.
endTime
.
valueOf
()
>
this
.
form
.
startTime
.
valueOf
())
{
if
(
this
.
form
.
endTime
.
valueOf
()
>
this
.
form
.
startTime
.
valueOf
()
)
{
// this.form.duration = getSec(this.form.startTime, this.form.endTime);
this
.
$post
(
"
/attendance/getTimeCount
"
,
{
startTime
:
this
.
form
.
startTime
,
...
...
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceGroupServiceImpl.java
View file @
a683a00f
...
...
@@ -32,6 +32,7 @@ public class AttendanceGroupServiceImpl extends AbstractCRUDServiceImpl<Attendan
if
(!
ObjectUtils
.
isEmpty
(
entity
.
getAttendanceGroupStaffList
())){
entity
.
getAttendanceGroupStaffList
().
stream
().
peek
(
item
->{
item
.
setGroupId
(
entity
.
getId
());
item
.
setGroupName
(
entity
.
getGroupName
());
item
.
setCreateUser
(
context
.
getUser
().
getLoginName
());
item
.
setCreateUserId
(
context
.
getUser
().
getId
());
item
.
setCreateTime
(
new
Date
());
...
...
@@ -48,6 +49,7 @@ public class AttendanceGroupServiceImpl extends AbstractCRUDServiceImpl<Attendan
attendanceGroupStaffService
.
remove
(
attendanceGroupStaffIds
,
context
);
entity
.
getAttendanceGroupStaffList
().
stream
().
peek
(
item
->{
item
.
setGroupId
(
entity
.
getId
());
item
.
setGroupName
(
entity
.
getGroupName
());
item
.
setCreateUser
(
context
.
getUser
().
getLoginName
());
item
.
setCreateUserId
(
context
.
getUser
().
getId
());
item
.
setCreateTime
(
new
Date
());
...
...
attendance-performance-manager/src/main/java/com/mortals/xhx/module/attendance/service/impl/AttendanceLeaveRecordServiceImpl.java
View file @
a683a00f
...
...
@@ -11,19 +11,21 @@ import com.mortals.framework.util.DateUtils;
import
com.mortals.framework.util.ThreadPool
;
import
com.mortals.xhx.base.system.user.model.UserEntity
;
import
com.mortals.xhx.base.system.user.service.UserService
;
import
com.mortals.xhx.common.code.AppealResultEnum
;
import
com.mortals.xhx.common.code.AuditStatusEnum
;
import
com.mortals.xhx.common.code.ProcessInstanceEnum
;
import
com.mortals.xhx.common.code.YesNoEnum
;
import
com.mortals.xhx.common.code.*
;
import
com.mortals.xhx.common.utils.AddAttendThread
;
import
com.mortals.xhx.common.utils.AttendSummaryThread
;
import
com.mortals.xhx.module.attendance.model.AttendanceLeaveRecordQuery
;
import
com.mortals.xhx.module.attendance.model.AttendanceRecordHikEntity
;
import
com.mortals.xhx.module.attendance.model.AttendanceRecordHikQuery
;
import
com.mortals.xhx.module.attendance.model.*
;
import
com.mortals.xhx.module.attendance.model.vo.AttendanceSummaryQuery
;
import
com.mortals.xhx.module.attendance.service.AttendanceGroupStaffService
;
import
com.mortals.xhx.module.attendance.service.AttendanceRecordHikService
;
import
com.mortals.xhx.module.attendance.service.AttendanceStatService
;
import
com.mortals.xhx.module.dingding.personal.service.IDingPersonService
;
import
com.mortals.xhx.module.perform.model.PerformAttendRecordEntity
;
import
com.mortals.xhx.module.perform.model.PerformRulesEntity
;
import
com.mortals.xhx.module.perform.model.PerformRulesQuery
;
import
com.mortals.xhx.module.perform.service.PerformAttendRecordService
;
import
com.mortals.xhx.module.perform.service.PerformRulesService
;
import
com.mortals.xhx.module.staff.model.StaffEntity
;
import
com.mortals.xhx.module.staff.service.StaffService
;
import
org.apache.commons.lang3.ObjectUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
...
@@ -32,9 +34,9 @@ import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import
com.mortals.framework.exception.AppException
;
import
com.mortals.framework.model.Context
;
import
com.mortals.xhx.module.attendance.dao.AttendanceLeaveRecordDao
;
import
com.mortals.xhx.module.attendance.model.AttendanceLeaveRecordEntity
;
import
com.mortals.xhx.module.attendance.service.AttendanceLeaveRecordService
;
import
java.math.BigDecimal
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Date
;
...
...
@@ -65,6 +67,12 @@ public class AttendanceLeaveRecordServiceImpl extends AbstractCRUDServiceImpl<At
private
AttendanceRecordHikService
hikService
;
@Autowired
private
IDingPersonService
dingPersonService
;
@Autowired
private
PerformAttendRecordService
performAttendRecordService
;
@Autowired
private
AttendanceGroupStaffService
attendanceGroupStaffService
;
@Autowired
private
PerformRulesService
performRulesService
;
@Override
protected
void
updateAfter
(
AttendanceLeaveRecordEntity
entity
,
Context
context
)
throws
AppException
{
...
...
@@ -77,7 +85,7 @@ public class AttendanceLeaveRecordServiceImpl extends AbstractCRUDServiceImpl<At
query.setSummaryTimeEnd(DateUtils.getStrDate(entity.getEndTime()));
cacheService.lpush(KEY_ATTENDANCE_STAT_CACHE, query);
}*/
creatPerformAttend
(
entity
,
context
);
doUpdateRecordAndSummary
(
entity
,
context
);
}
...
...
@@ -109,7 +117,7 @@ public class AttendanceLeaveRecordServiceImpl extends AbstractCRUDServiceImpl<At
@Override
protected
void
saveAfter
(
AttendanceLeaveRecordEntity
entity
,
Context
context
)
throws
AppException
{
super
.
saveAfter
(
entity
,
context
);
creatPerformAttend
(
entity
,
context
);
doUpdateRecordAndSummary
(
entity
,
context
);
}
...
...
@@ -210,4 +218,60 @@ public class AttendanceLeaveRecordServiceImpl extends AbstractCRUDServiceImpl<At
}
}
}
private
void
creatPerformAttend
(
AttendanceLeaveRecordEntity
entity
,
Context
context
){
try
{
if
(
AppealResultEnum
.
通过
.
getValue
()
==
entity
.
getAuditResult
()
&&
LeaveTypeEnum
.
事假
.
getValue
()
==
entity
.
getLeaveType
()){
//以半天4小时为计算单位进行扣分
int
multiple
=
entity
.
getDuration
()/
14400
;
if
(
multiple
>
0
)
{
PerformAttendRecordEntity
recordEntity
=
conversionLeaveRecord
(
entity
);
recordEntity
.
setCreateTime
(
new
Date
());
recordEntity
.
setCreateUserId
(
1
l
);
recordEntity
.
setErrorTime
(
entity
.
getStartTime
());
recordEntity
.
setScore
(
recordEntity
.
getScore
().
multiply
(
new
BigDecimal
(
multiple
)));
performAttendRecordService
.
save
(
recordEntity
,
context
);
}
}
}
catch
(
Exception
e
){
log
.
error
(
e
.
getMessage
());
}
}
private
PerformAttendRecordEntity
conversionLeaveRecord
(
AttendanceLeaveRecordEntity
entity
){
PerformAttendRecordEntity
recordEntity
=
new
PerformAttendRecordEntity
();
recordEntity
.
initAttrValue
();
StaffEntity
staffEntity
=
staffService
.
get
(
entity
.
getLeavePersonId
());
recordEntity
.
setStaffId
(
entity
.
getLeavePersonId
());
recordEntity
.
setStaffName
(
entity
.
getLeavePerson
());
if
(
staffEntity
!=
null
){
recordEntity
.
setWorkNum
(
staffEntity
.
getWorkNum
());
}
recordEntity
.
setDeptId
(
entity
.
getDeptId
());
recordEntity
.
setDeptName
(
entity
.
getDeptName
());
recordEntity
.
setSalaId
(
entity
.
getSalaId
());
recordEntity
.
setSalaName
(
entity
.
getSalaName
());
AttendanceGroupStaffEntity
groupStaffEntity
=
attendanceGroupStaffService
.
selectOne
(
new
AttendanceGroupStaffQuery
().
staffId
(
entity
.
getLeavePersonId
()));
if
(
groupStaffEntity
!=
null
){
recordEntity
.
setAttendanceGroupId
(
groupStaffEntity
.
getGroupId
());
recordEntity
.
setAttendanceGroupName
(
groupStaffEntity
.
getGroupName
());
}
PerformRulesEntity
performRulesEntity
=
performRulesService
.
selectOne
(
new
PerformRulesQuery
().
ruleCode
(
"ATTEND1009"
));
if
(
performRulesEntity
!=
null
){
recordEntity
.
setRuleId
(
performRulesEntity
.
getId
());
recordEntity
.
setRuleName
(
performRulesEntity
.
getName
());
recordEntity
.
setCategoryId
(
performRulesEntity
.
getCategoryId
());
recordEntity
.
setCategoryName
(
performRulesEntity
.
getCategoryName
());
recordEntity
.
setSubAddType
(
performRulesEntity
.
getSubAddType
());
recordEntity
.
setScore
(
performRulesEntity
.
getScore
());
recordEntity
.
setRemark
(
performRulesEntity
.
getContent
());
}
else
{
throw
new
AppException
(
"没有查询到请假扣分规则:ATTEND1009"
);
}
recordEntity
.
setSubMethod
(
SubMethodEnum
.
系统自动
.
getValue
());
recordEntity
.
setDeductPerson
(
"系统管理员"
);
return
recordEntity
;
}
}
\ No newline at end of file
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/service/impl/PerformAttendRecordServiceImpl.java
View file @
a683a00f
...
...
@@ -95,6 +95,7 @@ public class PerformAttendRecordServiceImpl extends AbstractCRUDServiceImpl<Perf
entity
.
setDeptName
(
staffCache
==
null
?
""
:
staffCache
.
getDeptName
());
entity
.
setSalaId
(
staffCache
==
null
?
null
:
staffCache
.
getSalaId
());
entity
.
setSalaName
(
staffCache
==
null
?
""
:
staffCache
.
getSalaName
());
entity
.
setWorkNum
(
staffCache
==
null
?
""
:
staffCache
.
getWorkNum
());
}
entity
.
setErrorResult
(
entity
.
getRuleName
());
entity
.
setDeductTime
(
new
Date
());
...
...
attendance-performance-manager/src/main/java/com/mortals/xhx/module/window/service/impl/WindowWorkmanPerformServiceImpl.java
View file @
a683a00f
...
...
@@ -106,6 +106,8 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win
item
.
setDeptName
(
staff
.
getDeptName
());
item
.
setSalaId
(
staff
.
getSalaId
());
item
.
setSalaName
(
staff
.
getSalaName
());
item
.
setYear
(
entity
.
getYear
());
item
.
setMonth
(
entity
.
getMonth
());
}
});
windowWorkmanPerformDetailService
.
save
(
entity
.
getWorkmanPerformDetailList
());
...
...
@@ -133,6 +135,8 @@ public class WindowWorkmanPerformServiceImpl extends AbstractCRUDServiceImpl<Win
item
.
setDeptName
(
staff
.
getDeptName
());
item
.
setSalaId
(
staff
.
getSalaId
());
item
.
setSalaName
(
staff
.
getSalaName
());
item
.
setYear
(
entity
.
getYear
());
item
.
setMonth
(
entity
.
getMonth
());
}
});
windowWorkmanPerformDetailService
.
save
(
entity
.
getWorkmanPerformDetailList
());
...
...
attendance-performance-manager/src/main/resources/sqlmap/module/staff/StaffPerformSummaryMapper.xml
View file @
a683a00f
...
...
@@ -557,7 +557,13 @@
<include
refid=
"_orderColsNew_"
/>
</select>
<sql
id=
"_orderColsNew_"
>
order by CONVERT(a.salaName USING gbk),CONVERT(a.deptName USING gbk),CONVERT(a.staffName USING gbk)
order by
<if
test=
"orderColList != null and !orderColList.isEmpty()"
>
<foreach
collection=
"orderColList"
open=
""
close=
","
index=
"index"
item=
"item"
separator=
","
>
a.${item.colName} ${item.sortKind}
</foreach>
</if>
CONVERT(a.salaName USING gbk),CONVERT(a.deptName USING gbk),CONVERT(a.staffName USING gbk)
</sql>
...
...
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