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
a6576662
Commit
a6576662
authored
1 year ago
by
赵啸非
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加用户类型修改
parent
29b3ce20
Changes
20
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
6468 additions
and
2355 deletions
+6468
-2355
attendance-performance-manager-ui/admin/src/router.js
attendance-performance-manager-ui/admin/src/router.js
+2
-1
attendance-performance-manager-ui/admin/src/views/staff/onboard/dialogshow.vue
...e-manager-ui/admin/src/views/staff/onboard/dialogshow.vue
+142
-0
attendance-performance-manager-ui/admin/src/views/staff/onboard/list.vue
...ormance-manager-ui/admin/src/views/staff/onboard/list.vue
+74
-0
attendance-performance-manager-ui/admin/src/views/staff/onboard/view.vue
...ormance-manager-ui/admin/src/views/staff/onboard/view.vue
+111
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/common/code/OnBoardStatusEnum.java
...n/java/com/mortals/xhx/common/code/OnBoardStatusEnum.java
+66
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/model/PerformAttendRecordEntity.java
...s/xhx/module/perform/model/PerformAttendRecordEntity.java
+84
-84
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/model/PerformAttendRecordQuery.java
...ls/xhx/module/perform/model/PerformAttendRecordQuery.java
+1154
-1154
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/dao/StaffOnboardDao.java
...ava/com/mortals/xhx/module/staff/dao/StaffOnboardDao.java
+17
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/dao/ibatis/StaffOnboardDaoImpl.java
...tals/xhx/module/staff/dao/ibatis/StaffOnboardDaoImpl.java
+21
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/model/StaffOnboardEntity.java
...om/mortals/xhx/module/staff/model/StaffOnboardEntity.java
+140
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/model/StaffOnboardQuery.java
...com/mortals/xhx/module/staff/model/StaffOnboardQuery.java
+2157
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/model/vo/StaffOnboardVo.java
...com/mortals/xhx/module/staff/model/vo/StaffOnboardVo.java
+19
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/service/StaffOnboardService.java
...mortals/xhx/module/staff/service/StaffOnboardService.java
+16
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/service/impl/StaffOnboardServiceImpl.java
...hx/module/staff/service/impl/StaffOnboardServiceImpl.java
+21
-0
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/web/StaffOnboardController.java
.../mortals/xhx/module/staff/web/StaffOnboardController.java
+53
-0
attendance-performance-manager/src/main/resources/sqlmap/module/perform/PerformAttendRecordMapper.xml
...urces/sqlmap/module/perform/PerformAttendRecordMapper.xml
+1116
-1116
attendance-performance-manager/src/main/resources/sqlmap/module/staff/StaffOnboardMapper.xml
...main/resources/sqlmap/module/staff/StaffOnboardMapper.xml
+1173
-0
attendance-performance-manager/src/test/java/com/mortals/httpclient/staff/StaffOnboardController.http
.../com/mortals/httpclient/staff/StaffOnboardController.http
+71
-0
db/add.sql
db/add.sql
+31
-0
doc/考勤绩效管理系统.docx
doc/考勤绩效管理系统.docx
+0
-0
No files found.
attendance-performance-manager-ui/admin/src/router.js
View file @
a6576662
...
...
@@ -49,6 +49,7 @@ const router = new Router({
...
restBuilder
(
"
job
"
,
"
job
"
),
// 职位信息
...
restBuilder
(
"
staff/adjust/log
"
,
"
staff/adjust/log
"
),
// 员工调岗信息
...
restBuilder
(
"
staff/onboard
"
,
"
staff/onboard
"
),
// 员工入职信息
...
restBuilder
(
"
staff/regular
"
,
"
staff/regular
"
),
// 员工转正信息
...
restBuilder
(
"
staff/leave
"
,
"
staff/leave
"
),
// 员工离职信息
...
restBuilder
(
"
staff/contract
"
,
"
staff/contract
"
),
// 员工合同信息
...
...
This diff is collapsed.
Click to expand it.
attendance-performance-manager-ui/admin/src/views/staff/onboard/dialogshow.vue
0 → 100644
View file @
a6576662
<
template
>
<!-- 弹出框表单 -->
<el-dialog
:title=
"title"
:visible.sync=
"open"
width=
"90%"
append-to-body
>
<el-form
ref=
"form"
:model=
"form"
:rules=
"rules"
label-width=
"120px"
>
<el-row>
<Field
label=
"员工ID"
prop=
"staffId"
v-model=
"form.staffId"
placeholder=
"请输入员工ID"
/>
<Field
label=
"员工姓名"
prop=
"staffName"
v-model=
"form.staffName"
placeholder=
"请输入员工姓名"
/>
<Field
label=
"性别"
prop=
"gender"
v-model=
"form.gender"
type=
"select"
:enumData=
"dict.gender"
placeholder=
"请选择性别"
/>
<Field
label=
"出生日期"
prop=
"birthday"
v-model=
"form.birthday"
type=
"date"
/>
<Field
label=
"照片"
prop=
"photoPath"
v-model=
"form.photoPath"
type=
"textarea"
placeholder=
"请输入照片"
/>
<Field
label=
"联系电话"
prop=
"phoneNumber"
v-model=
"form.phoneNumber"
placeholder=
"请输入联系电话"
/>
<Field
label=
"身份证号码"
prop=
"idCard"
v-model=
"form.idCard"
placeholder=
"请输入身份证号码"
/>
<Field
label=
"工号"
prop=
"workNum"
v-model=
"form.workNum"
placeholder=
"请输入工号"
/>
<Field
label=
"入职登记表"
><fileUpload
v-model=
"form.filePath"
prePath=
"/file/fileupload"
/></Field>
<Field
label=
"政治面貌 "
prop=
"politicalstatus"
v-model=
"form.politicalstatus"
type=
"select"
:enumData=
"dict.politicalstatus"
placeholder=
"请选择政治面貌 "
/>
<Field
label=
"所属部门"
prop=
"deptId"
v-model=
"form.deptId"
placeholder=
"请输入所属部门"
/>
<Field
label=
"所属部门名称"
prop=
"deptName"
v-model=
"form.deptName"
placeholder=
"请输入所属部门名称"
/>
<Field
label=
"职位ID"
prop=
"jobId"
v-model=
"form.jobId"
placeholder=
"请输入职位ID"
/>
<Field
label=
"职位名称"
prop=
"jobName"
v-model=
"form.jobName"
placeholder=
"请输入职位名称"
/>
<Field
label=
"员工类型"
prop=
"staffType"
v-model=
"form.staffType"
type=
"select"
:enumData=
"dict.staffType"
placeholder=
"请选择员工类型"
/>
<Field
label=
"员工状态"
prop=
"onBoardStatus"
v-model=
"form.onBoardStatus"
type=
"select"
:enumData=
"dict.onBoardStatus"
placeholder=
"请选择员工状态"
/>
<Field
label=
"入职时间"
prop=
"entryDate"
v-model=
"form.entryDate"
type=
"date"
/>
</el-row>
</el-form>
<div
slot=
"footer"
class=
"dialog-footer"
>
<el-button
type=
"primary"
v-if=
"pageInfo.type !== 'view'"
@
click=
"submitForm"
>
确 定
</el-button>
<el-button
@
click=
"cancel"
>
取 消
</el-button>
</div>
</el-dialog>
</
template
>
<
script
>
import
form
from
"
@/assets/mixins/formdialog
"
;
import
dialogShow
from
"
./dialogshow
"
;
import
FileUpload
from
'
@/components/FileUpload
'
;
export
default
{
mixins
:
[
form
],
components
:
{
dialogShow
,
FileUpload
,
},
data
()
{
return
{
// 遮罩层
loading
:
true
,
// 弹出层标题
title
:
"
员工入职信息
"
,
// 是否显示弹出层
open
:
false
,
toString
:[
"
gender
"
,
"
politicalstatus
"
,
"
staffType
"
,
"
onBoardStatus
"
,
],
// 表单校验
rules
:
{
staffName
:
[
{
required
:
true
,
message
:
"
请输入员工姓名
"
,
trigger
:
"
blur
"
},
{
max
:
64
,
message
:
"
最多只能录入64个字符
"
,
trigger
:
"
blur
"
,},
],
createTime
:
[
{
required
:
true
,
message
:
"
请选择创建时间
"
},
],
}
};
},
methods
:
{
/** 编辑 */
edit
(
row
)
{
this
.
reset
()
this
.
query
=
{
id
:
row
.
id
};
this
.
urls
.
currUrl
=
"
staff/onboard/edit
"
;
this
.
getData
();
this
.
pageInfo
.
type
=
"
edit
"
this
.
title
=
"
修改员工入职信息
"
;
},
/** 新增 */
add
(
row
)
{
this
.
reset
()
this
.
urls
.
currUrl
=
"
staff/onboard/add
"
;
this
.
getData
();
this
.
pageInfo
.
type
=
"
add
"
this
.
title
=
"
新增员工入职信息
"
;
},
/** 查看*/
view
(
row
)
{
this
.
reset
()
this
.
query
=
{
id
:
row
.
id
};
this
.
urls
.
currUrl
=
"
staff/onboard/view
"
;
this
.
getData
();
this
.
pageInfo
.
type
=
"
view
"
this
.
title
=
"
员工入职信息详细
"
;
},
/**取消按钮 */
cancel
()
{
this
.
open
=
false
;
},
/**获取数据后弹框 */
afterRender
(
data
)
{
this
.
open
=
true
;
},
afterSubmit
(
data
)
{
this
.
open
=
false
;
this
.
$emit
(
"
ok
"
);
},
// 表单重置
reset
()
{
this
.
form
=
{
staffId
:
null
,
staffName
:
""
,
gender
:
1
,
birthday
:
null
,
photoPath
:
""
,
phoneNumber
:
""
,
idCard
:
""
,
workNum
:
""
,
filePath
:
""
,
politicalstatus
:
1
,
deptId
:
null
,
deptName
:
""
,
jobId
:
null
,
jobName
:
""
,
staffType
:
1
,
onBoardStatus
:
1
,
entryDate
:
null
,
};
this
.
resetForm
(
"
form
"
);
},
resetForm
(
refName
)
{
if
(
this
.
$refs
[
refName
])
{
this
.
$refs
[
refName
].
resetFields
();
}
},
},
};
</
script
>
This diff is collapsed.
Click to expand it.
attendance-performance-manager-ui/admin/src/views/staff/onboard/list.vue
0 → 100644
View file @
a6576662
<
template
>
<div
class=
"page"
>
<LayoutTable
:data=
"tableData"
:config=
"tableConfig"
>
</LayoutTable>
<dialog-show
ref=
"dialogform"
@
ok=
"getData"
/>
</div>
</
template
>
<
script
>
/** 表单弹出框模式需引入 */
import
dialogShow
from
"
./dialogshow
"
;
import
table
from
"
@/assets/mixins/table
"
;
export
default
{
name
:
"
StaffOnboardList
"
,
components
:
{
dialogShow
},
mixins
:
[
table
],
created
()
{
},
methods
:
{
/** 重写新增方法 */
toAdd
(
row
)
{
this
.
$refs
.
dialogform
.
add
(
row
);
},
/** 重写编辑方法 */
toEdit
(
row
)
{
this
.
$refs
.
dialogform
.
edit
(
row
);
},
/** 重写查看方法 */
toView
(
row
)
{
this
.
$refs
.
dialogform
.
view
(
row
);
},
},
data
()
{
return
{
config
:
{
search
:
[
],
columns
:
[
{
type
:
"
selection
"
,
width
:
60
},
{
type
:
"
index
"
,
label
:
"
序号
"
,
width
:
50
},
{
label
:
"
员工姓名
"
,
prop
:
"
staffName
"
},
{
label
:
"
性别
"
,
prop
:
"
gender
"
,
formatter
:
this
.
formatter
},
{
label
:
"
政治面貌
"
,
prop
:
"
politicalstatus
"
,
formatter
:
this
.
formatter
},
{
label
:
"
员工类型
"
,
prop
:
"
staffType
"
,
formatter
:
this
.
formatter
},
{
label
:
"
员工状态
"
,
prop
:
"
onBoardStatus
"
,
formatter
:
this
.
formatter
},
{
label
:
"
入职时间
"
,
prop
:
"
entryDate
"
,
formatter
:
this
.
formatterDate
},
{
label
:
"
创建用户
"
,
prop
:
"
createUserId
"
,
formatter
:
this
.
formatter
},
{
label
:
"
操作
"
,
width
:
240
,
formatter
:
row
=>
{
return
(
<
table
-
buttons
noAdd
row
=
{
row
}
onEdit
=
{
this
.
toEdit
}
onView
=
{
this
.
toView
}
onDel
=
{
this
.
toDel
}
/
>
);
}
}
]
}
};
}
};
</
script
>
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager-ui/admin/src/views/staff/onboard/view.vue
0 → 100644
View file @
a6576662
<
template
>
<layout-view>
<el-descriptions
:title=
"title"
:column=
"column"
:size=
"size"
:colon=
"false"
border
>
<template
slot=
"title"
>
<i
class=
"el-icon-tickets"
></i>
基本详细信息
</
template
>
<
template
slot=
"extra"
>
<el-button
type=
"primary"
@
click=
"$router.go(-1)"
size=
"small"
>
返回
</el-button>
</
template
>
<el-descriptions-item
label=
"员工ID"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.staffId}}
</el-descriptions-item>
<el-descriptions-item
label=
"员工姓名"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.staffName}}
</el-descriptions-item>
<el-descriptions-item
label=
"性别"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatters("gender", form.gender) }}
</el-descriptions-item>
<el-descriptions-item
label=
"出生日期"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatterDate(form.birthday)}}
</el-descriptions-item>
<el-descriptions-item
label=
"照片"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.photoPath}}
</el-descriptions-item>
<el-descriptions-item
label=
"联系电话"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.phoneNumber}}
</el-descriptions-item>
<el-descriptions-item
label=
"身份证号码"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.idCard}}
</el-descriptions-item>
<el-descriptions-item
label=
"工号"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.workNum}}
</el-descriptions-item>
<el-descriptions-item
label=
"入职登记表"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
<fileUpload
v-model=
"form.filePath"
prePath=
"/file/fileupload"
/>
</el-descriptions-item>
<el-descriptions-item
label=
"政治面貌 "
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatters("politicalstatus", form.politicalstatus) }}
</el-descriptions-item>
<el-descriptions-item
label=
"所属部门"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.deptId}}
</el-descriptions-item>
<el-descriptions-item
label=
"所属部门名称"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.deptName}}
</el-descriptions-item>
<el-descriptions-item
label=
"职位ID"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.jobId}}
</el-descriptions-item>
<el-descriptions-item
label=
"职位名称"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{form.jobName}}
</el-descriptions-item>
<el-descriptions-item
label=
"员工类型"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatters("staffType", form.staffType) }}
</el-descriptions-item>
<el-descriptions-item
label=
"员工状态"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatters("onBoardStatus", form.onBoardStatus) }}
</el-descriptions-item>
<el-descriptions-item
label=
"入职时间"
label-class-name=
"labelClass"
content-class-name=
"contentClass"
>
{{ util_formatterDate(form.entryDate)}}
</el-descriptions-item>
</el-descriptions>
</layout-view>
</template>
<
script
>
import
view
from
"
@/assets/mixins/view
"
;
import
FileUpload
from
'
@/components/FileUpload
'
;
export
default
{
mixins
:
[
view
],
components
:
{
FileUpload
,
},
methods
:
{
},
data
()
{
return
{
size
:
"
small
"
,
column
:
2
,
toString
:[
"
gender
"
,
"
politicalstatus
"
,
"
staffType
"
,
"
onBoardStatus
"
,
],
toArrays
:
[
],
toDate
:
[
]
}
}
}
</
script
>
<
style
lang=
"less"
>
.labelClass{
width: 200px;
}
.el-descriptions__body{
margin-left: 5px;
margin-right: 5px;
color: #606266;
background-color: #FFF;
}
.contentClass{
width: 600px;
}
</
style
>
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/common/code/OnBoardStatusEnum.java
0 → 100644
View file @
a6576662
package
com.mortals.xhx.common.code
;
import
java.util.LinkedHashMap
;
import
java.util.Map
;
/**
* 员工状态(1.待入职,2.试用中,3.超期)枚举类
*
* @author zxfei
*/
public
enum
OnBoardStatusEnum
{
待入职
(
1
,
"待入职"
),
试用中
(
2
,
"试用中"
),
超期
(
3
,
"超期"
);
private
Integer
value
;
private
String
desc
;
OnBoardStatusEnum
(
Integer
value
,
String
desc
)
{
this
.
value
=
value
;
this
.
desc
=
desc
;
}
public
Integer
getValue
()
{
return
this
.
value
;
}
public
String
getDesc
()
{
return
this
.
desc
;
}
public
static
OnBoardStatusEnum
getByValue
(
Integer
value
)
{
for
(
OnBoardStatusEnum
onBoardStatusEnum
:
OnBoardStatusEnum
.
values
())
{
if
(
onBoardStatusEnum
.
getValue
()
==
value
)
{
return
onBoardStatusEnum
;
}
}
return
null
;
}
/**
* 获取Map集合
*
* @param eItem 不包含项
* @return
*/
public
static
Map
<
String
,
String
>
getEnumMap
(
Integer
...
eItem
)
{
Map
<
String
,
String
>
resultMap
=
new
LinkedHashMap
<>();
for
(
OnBoardStatusEnum
item
:
OnBoardStatusEnum
.
values
())
{
try
{
boolean
hasE
=
false
;
for
(
Integer
e
:
eItem
)
{
if
(
item
.
getValue
()
==
e
)
{
hasE
=
true
;
break
;
}
}
if
(!
hasE
)
{
resultMap
.
put
(
item
.
getValue
()
+
""
,
item
.
getDesc
());
}
}
catch
(
Exception
ex
)
{
}
}
return
resultMap
;
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/model/PerformAttendRecordEntity.java
View file @
a6576662
...
...
@@ -9,11 +9,11 @@ import com.mortals.framework.model.BaseEntityLong;
import
com.mortals.xhx.module.perform.model.vo.PerformAttendRecordVo
;
import
lombok.Data
;
/**
* 考勤绩效记录信息实体对象
*
* @author zxfei
* @date 2023-07-10
*/
* 考勤绩效记录信息实体对象
*
* @author zxfei
* @date 2023-07-16
*/
@Data
public
class
PerformAttendRecordEntity
extends
PerformAttendRecordVo
{
private
static
final
long
serialVersionUID
=
1L
;
...
...
@@ -55,10 +55,6 @@ public class PerformAttendRecordEntity extends PerformAttendRecordVo {
*/
private
Long
ruleId
;
/**
* 规则名称
*/
private
String
ruleNme
;
/**
* 异常时间
*/
private
Date
errorTime
;
...
...
@@ -121,6 +117,10 @@ public class PerformAttendRecordEntity extends PerformAttendRecordVo {
* 规则名称
*/
private
String
categoryName
;
/**
* 规则名称
*/
private
String
ruleName
;
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
...
...
@@ -157,8 +157,6 @@ public class PerformAttendRecordEntity extends PerformAttendRecordVo {
this
.
ruleId
=
-
1L
;
this
.
ruleNme
=
""
;
this
.
errorTime
=
null
;
this
.
goOffTimeStr
=
""
;
...
...
@@ -188,5 +186,7 @@ public class PerformAttendRecordEntity extends PerformAttendRecordVo {
this
.
categoryId
=
-
1L
;
this
.
categoryName
=
""
;
this
.
ruleName
=
""
;
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/perform/model/PerformAttendRecordQuery.java
View file @
a6576662
...
...
@@ -5,11 +5,11 @@ import java.util.Date;
import
java.util.List
;
import
com.mortals.xhx.module.perform.model.PerformAttendRecordEntity
;
/**
* 考勤绩效记录信息查询对象
*
* @author zxfei
* @date 2023-07-10
*/
* 考勤绩效记录信息查询对象
*
* @author zxfei
* @date 2023-07-16
*/
public
class
PerformAttendRecordQuery
extends
PerformAttendRecordEntity
{
/** 开始 序号,主键,自增长 */
private
Long
idStart
;
...
...
@@ -112,11 +112,6 @@ public class PerformAttendRecordQuery extends PerformAttendRecordEntity {
/** 绩效规则id排除列表 */
private
List
<
Long
>
ruleIdNotList
;
/** 规则名称 */
private
List
<
String
>
ruleNmeList
;
/** 规则名称排除列表 */
private
List
<
String
>
ruleNmeNotList
;
/** 开始 异常时间 */
private
String
errorTimeStart
;
...
...
@@ -287,6 +282,11 @@ public class PerformAttendRecordQuery extends PerformAttendRecordEntity {
/** 规则名称排除列表 */
private
List
<
String
>
categoryNameNotList
;
/** 规则名称 */
private
List
<
String
>
ruleNameList
;
/** 规则名称排除列表 */
private
List
<
String
>
ruleNameNotList
;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private
List
<
PerformAttendRecordQuery
>
orConditionList
;
...
...
@@ -860,38 +860,6 @@ public class PerformAttendRecordQuery extends PerformAttendRecordEntity {
}
/**
* 获取 规则名称
* @return ruleNmeList
*/
public
List
<
String
>
getRuleNmeList
(){
return
this
.
ruleNmeList
;
}
/**
* 设置 规则名称
* @param ruleNmeList
*/
public
void
setRuleNmeList
(
List
<
String
>
ruleNmeList
){
this
.
ruleNmeList
=
ruleNmeList
;
}
/**
* 获取 规则名称
* @return ruleNmeNotList
*/
public
List
<
String
>
getRuleNmeNotList
(){
return
this
.
ruleNmeNotList
;
}
/**
* 设置 规则名称
* @param ruleNmeNotList
*/
public
void
setRuleNmeNotList
(
List
<
String
>
ruleNmeNotList
){
this
.
ruleNmeNotList
=
ruleNmeNotList
;
}
/**
* 获取 开始 异常时间
* @return errorTimeStart
...
...
@@ -1843,6 +1811,38 @@ public class PerformAttendRecordQuery extends PerformAttendRecordEntity {
this
.
categoryNameNotList
=
categoryNameNotList
;
}
/**
* 获取 规则名称
* @return ruleNameList
*/
public
List
<
String
>
getRuleNameList
(){
return
this
.
ruleNameList
;
}
/**
* 设置 规则名称
* @param ruleNameList
*/
public
void
setRuleNameList
(
List
<
String
>
ruleNameList
){
this
.
ruleNameList
=
ruleNameList
;
}
/**
* 获取 规则名称
* @return ruleNameNotList
*/
public
List
<
String
>
getRuleNameNotList
(){
return
this
.
ruleNameNotList
;
}
/**
* 设置 规则名称
* @param ruleNameNotList
*/
public
void
setRuleNameNotList
(
List
<
String
>
ruleNameNotList
){
this
.
ruleNameNotList
=
ruleNameNotList
;
}
/**
* 设置 序号,主键,自增长
* @param id
...
...
@@ -2191,25 +2191,6 @@ public class PerformAttendRecordQuery extends PerformAttendRecordEntity {
}
/**
* 设置 规则名称
* @param ruleNme
*/
public
PerformAttendRecordQuery
ruleNme
(
String
ruleNme
){
setRuleNme
(
ruleNme
);
return
this
;
}
/**
* 设置 规则名称
* @param ruleNmeList
*/
public
PerformAttendRecordQuery
ruleNmeList
(
List
<
String
>
ruleNmeList
){
this
.
ruleNmeList
=
ruleNmeList
;
return
this
;
}
/**
* 设置 上下班时间
...
...
@@ -2725,6 +2706,25 @@ public class PerformAttendRecordQuery extends PerformAttendRecordEntity {
return
this
;
}
/**
* 设置 规则名称
* @param ruleName
*/
public
PerformAttendRecordQuery
ruleName
(
String
ruleName
){
setRuleName
(
ruleName
);
return
this
;
}
/**
* 设置 规则名称
* @param ruleNameList
*/
public
PerformAttendRecordQuery
ruleNameList
(
List
<
String
>
ruleNameList
){
this
.
ruleNameList
=
ruleNameList
;
return
this
;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
...
...
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/dao/StaffOnboardDao.java
0 → 100644
View file @
a6576662
package
com.mortals.xhx.module.staff.dao
;
import
com.mortals.framework.dao.ICRUDDao
;
import
com.mortals.xhx.module.staff.model.StaffOnboardEntity
;
import
java.util.List
;
/**
* 员工入职信息Dao
* 员工入职信息 DAO接口
*
* @author zxfei
* @date 2023-07-16
*/
public
interface
StaffOnboardDao
extends
ICRUDDao
<
StaffOnboardEntity
,
Long
>{
}
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/dao/ibatis/StaffOnboardDaoImpl.java
0 → 100644
View file @
a6576662
package
com.mortals.xhx.module.staff.dao.ibatis
;
import
org.springframework.stereotype.Repository
;
import
com.mortals.xhx.module.staff.dao.StaffOnboardDao
;
import
com.mortals.xhx.module.staff.model.StaffOnboardEntity
;
import
java.util.Date
;
import
com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis
;
import
java.util.List
;
/**
* 员工入职信息DaoImpl DAO接口
*
* @author zxfei
* @date 2023-07-16
*/
@Repository
(
"staffOnboardDao"
)
public
class
StaffOnboardDaoImpl
extends
BaseCRUDDaoMybatis
<
StaffOnboardEntity
,
Long
>
implements
StaffOnboardDao
{
}
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/model/StaffOnboardEntity.java
0 → 100644
View file @
a6576662
package
com.mortals.xhx.module.staff.model
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.ArrayList
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
com.mortals.framework.annotation.Excel
;
import
com.mortals.framework.model.BaseEntityLong
;
import
com.mortals.xhx.module.staff.model.vo.StaffOnboardVo
;
import
lombok.Data
;
/**
* 员工入职信息实体对象
*
* @author zxfei
* @date 2023-07-16
*/
@Data
public
class
StaffOnboardEntity
extends
StaffOnboardVo
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 员工ID
*/
private
Long
staffId
;
/**
* 员工姓名
*/
private
String
staffName
;
/**
* 性别(1.男,2.女)
*/
private
Integer
gender
;
/**
* 出生日期
*/
private
Date
birthday
;
/**
* 照片
*/
private
String
photoPath
;
/**
* 联系电话
*/
private
String
phoneNumber
;
/**
* 身份证号码
*/
private
String
idCard
;
/**
* 工号
*/
private
String
workNum
;
/**
* 入职登记表
*/
private
String
filePath
;
/**
* 政治面貌 (1.中共党员,2.中共预备党员,3.共青团员,4.群众,5.其它)
*/
private
Integer
politicalstatus
;
/**
* 所属部门
*/
private
Long
deptId
;
/**
* 所属部门名称
*/
private
String
deptName
;
/**
* 职位ID
*/
private
Long
jobId
;
/**
* 职位名称
*/
private
String
jobName
;
/**
* 员工类型(1.全职,2.兼职,3.实习)
*/
private
Integer
staffType
;
/**
* 员工状态(1.待入职,2.试用中,3.超期)
*/
private
Integer
onBoardStatus
;
/**
* 入职时间
*/
private
Date
entryDate
;
@Override
public
int
hashCode
()
{
return
this
.
getId
().
hashCode
();
}
@Override
public
boolean
equals
(
Object
obj
)
{
if
(
obj
==
null
)
return
false
;
if
(
obj
instanceof
StaffOnboardEntity
)
{
StaffOnboardEntity
tmp
=
(
StaffOnboardEntity
)
obj
;
if
(
this
.
getId
()
==
tmp
.
getId
())
{
return
true
;
}
}
return
false
;
}
public
void
initAttrValue
(){
this
.
staffId
=
-
1L
;
this
.
staffName
=
""
;
this
.
gender
=
1
;
this
.
birthday
=
null
;
this
.
photoPath
=
""
;
this
.
phoneNumber
=
""
;
this
.
idCard
=
""
;
this
.
workNum
=
""
;
this
.
filePath
=
""
;
this
.
politicalstatus
=
1
;
this
.
deptId
=
-
1L
;
this
.
deptName
=
""
;
this
.
jobId
=
-
1L
;
this
.
jobName
=
""
;
this
.
staffType
=
1
;
this
.
onBoardStatus
=
1
;
this
.
entryDate
=
null
;
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/model/StaffOnboardQuery.java
0 → 100644
View file @
a6576662
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/model/vo/StaffOnboardVo.java
0 → 100644
View file @
a6576662
package
com.mortals.xhx.module.staff.model.vo
;
import
com.mortals.framework.model.BaseEntityLong
;
import
com.mortals.xhx.module.staff.model.StaffOnboardEntity
;
import
java.util.ArrayList
;
import
java.util.List
;
import
lombok.Data
;
import
com.mortals.framework.annotation.Excel
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
* 员工入职信息视图对象
*
* @author zxfei
* @date 2023-07-16
*/
@Data
public
class
StaffOnboardVo
extends
BaseEntityLong
{
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/service/StaffOnboardService.java
0 → 100644
View file @
a6576662
package
com.mortals.xhx.module.staff.service
;
import
com.mortals.framework.service.ICRUDService
;
import
com.mortals.xhx.module.staff.model.StaffOnboardEntity
;
import
com.mortals.xhx.module.staff.dao.StaffOnboardDao
;
/**
* StaffOnboardService
*
* 员工入职信息 service接口
*
* @author zxfei
* @date 2023-07-16
*/
public
interface
StaffOnboardService
extends
ICRUDService
<
StaffOnboardEntity
,
Long
>{
StaffOnboardDao
getDao
();
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/service/impl/StaffOnboardServiceImpl.java
0 → 100644
View file @
a6576662
package
com.mortals.xhx.module.staff.service.impl
;
import
org.springframework.stereotype.Service
;
import
com.mortals.framework.service.impl.AbstractCRUDServiceImpl
;
import
com.mortals.framework.exception.AppException
;
import
com.mortals.framework.model.Context
;
import
com.mortals.xhx.module.staff.dao.StaffOnboardDao
;
import
com.mortals.xhx.module.staff.model.StaffOnboardEntity
;
import
com.mortals.xhx.module.staff.service.StaffOnboardService
;
import
lombok.extern.slf4j.Slf4j
;
/**
* StaffOnboardService
* 员工入职信息 service实现
*
* @author zxfei
* @date 2023-07-16
*/
@Service
(
"staffOnboardService"
)
@Slf4j
public
class
StaffOnboardServiceImpl
extends
AbstractCRUDServiceImpl
<
StaffOnboardDao
,
StaffOnboardEntity
,
Long
>
implements
StaffOnboardService
{
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/java/com/mortals/xhx/module/staff/web/StaffOnboardController.java
0 → 100644
View file @
a6576662
package
com.mortals.xhx.module.staff.web
;
import
com.mortals.framework.web.BaseCRUDJsonBodyMappingController
;
import
com.mortals.xhx.base.system.param.service.ParamService
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
com.mortals.framework.model.Context
;
import
javax.servlet.http.HttpServletRequest
;
import
javax.servlet.http.HttpServletResponse
;
import
com.mortals.framework.web.BaseCRUDJsonBodyMappingController
;
import
com.mortals.xhx.module.staff.model.StaffOnboardEntity
;
import
com.mortals.xhx.module.staff.service.StaffOnboardService
;
import
org.apache.commons.lang3.ArrayUtils
;
import
com.mortals.framework.util.StringUtils
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
import
com.alibaba.fastjson.JSONObject
;
import
java.util.Arrays
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
static
com
.
mortals
.
framework
.
ap
.
SysConstains
.*;
/**
*
* 员工入职信息
*
* @author zxfei
* @date 2023-07-16
*/
@RestController
@RequestMapping
(
"staff/onboard"
)
public
class
StaffOnboardController
extends
BaseCRUDJsonBodyMappingController
<
StaffOnboardService
,
StaffOnboardEntity
,
Long
>
{
@Autowired
private
ParamService
paramService
;
public
StaffOnboardController
(){
super
.
setModuleDesc
(
"员工入职信息"
);
}
@Override
protected
void
init
(
Map
<
String
,
Object
>
model
,
Context
context
)
{
this
.
addDict
(
model
,
"gender"
,
paramService
.
getParamBySecondOrganize
(
"StaffOnboard"
,
"gender"
));
this
.
addDict
(
model
,
"politicalstatus"
,
paramService
.
getParamBySecondOrganize
(
"StaffOnboard"
,
"politicalstatus"
));
this
.
addDict
(
model
,
"staffType"
,
paramService
.
getParamBySecondOrganize
(
"StaffOnboard"
,
"staffType"
));
this
.
addDict
(
model
,
"onBoardStatus"
,
paramService
.
getParamBySecondOrganize
(
"StaffOnboard"
,
"onBoardStatus"
));
super
.
init
(
model
,
context
);
}
}
\ No newline at end of file
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/resources/sqlmap/module/perform/PerformAttendRecordMapper.xml
View file @
a6576662
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/main/resources/sqlmap/module/staff/StaffOnboardMapper.xml
0 → 100644
View file @
a6576662
This diff is collapsed.
Click to expand it.
attendance-performance-manager/src/test/java/com/mortals/httpclient/staff/StaffOnboardController.http
0 → 100644
View file @
a6576662
###登录
POST {{baseUrl}}/login/login
Content-Type: application/json
{
"loginName":"admin",
"password":"admin",
"securityCode":"8888"
}
> {%
client.global.set("SmsSet_id", JSON.parse(response.body).data.id);
client.global.set("authToken", JSON.parse(response.body).data.token);
%}
###员工入职信息列表
POST {{baseUrl}}/staff/onboard/list
Content-Type: application/json
{
"page":1,
"size":10
}
###员工入职信息更新与保存
POST {{baseUrl}}/staff/onboard/save
Authorization: {{authToken}}
Content-Type: application/json
{
"staffId":41,
"staffName":"x2t0e0",
"gender":1,
"birthday":"1689436800000",
"photoPath":"5yrbfh",
"phoneNumber":"0u5r86",
"idCard":"4d9xj3",
"workNum":"37mcc3",
"filePath":"s8j5i3",
"politicalstatus":1,
"deptId":862,
"deptName":"t6ei4m",
"jobId":69,
"jobName":"g088vz",
"staffType":1,
"onBoardStatus":1,
"entryDate":"1689436800000",
}
> {%
client.global.set("StaffOnboard_id", JSON.parse(response.body).data.id);
%}
###员工入职信息查看
GET {{baseUrl}}/staff/onboard/info?id={{StaffOnboard_id}}
Accept: application/json
###员工入职信息编辑
GET {{baseUrl}}/staff/onboard/edit?id={{StaffOnboard_id}}
Accept: application/json
###员工入职信息删除
GET {{baseUrl}}/staff/onboard/delete?id={{StaffOnboard_id}}
Authorization: {{authToken}}
Accept: application/json
This diff is collapsed.
Click to expand it.
db/add.sql
View file @
a6576662
...
...
@@ -657,3 +657,34 @@ ALTER TABLE mortals_xhx_user ADD COLUMN `dingUserId` varchar(64) DEFAULT ''
ALTER
TABLE
mortals_xhx_check_attend_record
ADD
COLUMN
`deductPerson`
varchar
(
128
)
DEFAULT
''
COMMENT
'扣分人员'
AFTER
subMethod
;
ALTER
TABLE
mortals_xhx_check_attend_record
ADD
COLUMN
`deductTime`
datetime
COMMENT
'扣分时间'
AFTER
deductPerson
;
-- ----------------------------
-- 员工入职信息表
-- ----------------------------
DROP
TABLE
IF
EXISTS
`mortals_xhx_staff_onboard`
;
CREATE
TABLE
mortals_xhx_staff_onboard
(
`id`
bigint
(
20
)
AUTO_INCREMENT
COMMENT
'序号,主键,自增长'
,
`staffId`
bigint
(
20
)
COMMENT
'员工ID'
,
`staffName`
varchar
(
64
)
NOT
NULL
COMMENT
'员工姓名'
,
`gender`
tinyint
(
2
)
DEFAULT
'1'
COMMENT
'性别(1.男,2.女)'
,
`birthday`
datetime
COMMENT
'出生日期'
,
`photoPath`
varchar
(
255
)
COMMENT
'照片'
,
`phoneNumber`
varchar
(
128
)
COMMENT
'联系电话'
,
`idCard`
varchar
(
128
)
COMMENT
'身份证号码'
,
`workNum`
varchar
(
128
)
COMMENT
'工号'
,
`filePath`
varchar
(
128
)
COMMENT
'入职登记表'
,
`politicalstatus`
tinyint
(
2
)
DEFAULT
'1'
COMMENT
'政治面貌 (1.中共党员,2.中共预备党员,3.共青团员,4.群众,5.其它)'
,
`deptId`
bigint
(
20
)
COMMENT
'所属部门'
,
`deptName`
varchar
(
128
)
COMMENT
'所属部门名称'
,
`jobId`
bigint
(
20
)
COMMENT
'职位ID'
,
`jobName`
varchar
(
128
)
COMMENT
'职位名称'
,
`staffType`
tinyint
(
2
)
DEFAULT
'1'
COMMENT
'员工类型(1.全职,2.兼职,3.实习)'
,
`onBoardStatus`
tinyint
(
2
)
DEFAULT
'1'
COMMENT
'员工状态(1.待入职,2.试用中,3.超期)'
,
`entryDate`
datetime
COMMENT
'入职时间'
,
`createUserId`
bigint
(
20
)
NOT
NULL
COMMENT
'创建用户'
,
`createTime`
datetime
NOT
NULL
COMMENT
'创建时间'
,
`updateUserId`
bigint
(
20
)
COMMENT
'更新用户'
,
`updateTime`
datetime
COMMENT
'更新时间'
,
PRIMARY
KEY
(
`id`
)
)
ENGINE
=
InnoDB
DEFAULT
CHARSET
=
utf8
COMMENT
=
'员工入职信息'
;
This diff is collapsed.
Click to expand it.
doc/考勤绩效管理系统.docx
View file @
a6576662
No preview for this file type
This diff is collapsed.
Click to expand it.
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