Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
Y
yifu-mvp
Project
Project
Details
Activity
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
fangxinjiang
yifu-mvp
Commits
1812fb11
Commit
1812fb11
authored
Jul 04, 2022
by
fangxinjiang
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/develop' into develop
parents
0f66413b
5668f0a8
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
12 changed files
with
580 additions
and
157 deletions
+580
-157
TEmployeeContractInfo.java
...d/plus/v1/yifu/archives/entity/TEmployeeContractInfo.java
+13
-13
EmployeeContractVO.java
...fu/cloud/plus/v1/yifu/archives/vo/EmployeeContractVO.java
+176
-0
EmployeeProjectExportVO.java
...oud/plus/v1/yifu/archives/vo/EmployeeProjectExportVO.java
+28
-3
EmployeeProjectVO.java
...ifu/cloud/plus/v1/yifu/archives/vo/EmployeeProjectVO.java
+6
-4
EmployeeVO.java
...a/com/yifu/cloud/plus/v1/yifu/archives/vo/EmployeeVO.java
+1
-0
TEmployeeContractInfoController.java
.../archives/controller/TEmployeeContractInfoController.java
+18
-0
TEmployeeProjectController.java
.../yifu/archives/controller/TEmployeeProjectController.java
+10
-5
TEmployeeContractInfoService.java
...1/yifu/archives/service/TEmployeeContractInfoService.java
+4
-0
TEmployeeProjectService.java
...lus/v1/yifu/archives/service/TEmployeeProjectService.java
+5
-5
TEmployeeContractInfoServiceImpl.java
...chives/service/impl/TEmployeeContractInfoServiceImpl.java
+179
-40
TEmployeeInfoServiceImpl.java
.../yifu/archives/service/impl/TEmployeeInfoServiceImpl.java
+3
-0
TEmployeeProjectServiceImpl.java
...fu/archives/service/impl/TEmployeeProjectServiceImpl.java
+137
-87
No files found.
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/entity/TEmployeeContractInfo.java
View file @
1812fb11
...
@@ -131,12 +131,12 @@ public class TEmployeeContractInfo extends BaseEntity {
...
@@ -131,12 +131,12 @@ public class TEmployeeContractInfo extends BaseEntity {
@Schema
(
description
=
"客户名称"
,
name
=
"subjectUnit"
)
@Schema
(
description
=
"客户名称"
,
name
=
"subjectUnit"
)
private
String
subjectUnit
;
private
String
subjectUnit
;
/**
/**
* 签订
情况
* 签订
类型
*/
*/
@NotBlank
(
message
=
"签订
情况
不能为空"
)
@NotBlank
(
message
=
"签订
类型
不能为空"
)
@Length
(
max
=
1
,
message
=
"签订
情况
不能超过1个字符"
)
@Length
(
max
=
1
,
message
=
"签订
类型
不能超过1个字符"
)
@ExcelAttribute
(
name
=
"签订
情况"
,
isNotEmpty
=
true
,
errorInfo
=
"签订情况
不能为空"
,
maxLength
=
100
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMPLOYEE_SITUATION_TYPE
)
@ExcelAttribute
(
name
=
"签订
类型"
,
isNotEmpty
=
true
,
errorInfo
=
"签订类型
不能为空"
,
maxLength
=
100
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMPLOYEE_SITUATION_TYPE
)
@Schema
(
description
=
"签订
情况
"
,
name
=
"situation"
)
@Schema
(
description
=
"签订
类型(字典)
"
,
name
=
"situation"
)
private
String
situation
;
private
String
situation
;
/**
/**
* 合同年限
* 合同年限
...
@@ -144,20 +144,20 @@ public class TEmployeeContractInfo extends BaseEntity {
...
@@ -144,20 +144,20 @@ public class TEmployeeContractInfo extends BaseEntity {
@NotBlank
(
message
=
"合同年限不能为空"
)
@NotBlank
(
message
=
"合同年限不能为空"
)
@ExcelAttribute
(
name
=
"合同年限"
,
errorInfo
=
"合同年限不能为空"
)
@ExcelAttribute
(
name
=
"合同年限"
,
errorInfo
=
"合同年限不能为空"
)
@Schema
(
description
=
"合同年限"
,
name
=
"contractTerm"
)
@Schema
(
description
=
"合同年限"
,
name
=
"contractTerm"
)
private
Double
contractTerm
;
private
String
contractTerm
;
/**
/**
* 合同编
号
* 合同编
码
*/
*/
@NotBlank
(
message
=
"合同编
号
不能为空"
)
@NotBlank
(
message
=
"合同编
码
不能为空"
)
@Length
(
max
=
128
,
message
=
"合同编号不能超过128
个字符"
)
@Length
(
max
=
50
,
message
=
"合同编码不能超过50
个字符"
)
@ExcelAttribute
(
name
=
"合同编
号"
,
maxLength
=
128
)
@ExcelAttribute
(
name
=
"合同编
码"
,
maxLength
=
50
)
@Schema
(
description
=
"合同编
号
"
,
name
=
"contractNo"
)
@Schema
(
description
=
"合同编
码
"
,
name
=
"contractNo"
)
private
String
contractNo
;
private
String
contractNo
;
/**
/**
* 备注
* 备注
*/
*/
@Length
(
max
=
512
,
message
=
"不能超过512
个字符"
)
@Length
(
max
=
200
,
message
=
"不能超过200
个字符"
)
@ExcelAttribute
(
name
=
"备注"
,
maxLength
=
512
)
@ExcelAttribute
(
name
=
"备注"
,
maxLength
=
200
)
@Schema
(
description
=
"备注"
,
name
=
"remark"
)
@Schema
(
description
=
"备注"
,
name
=
"remark"
)
private
String
remark
;
private
String
remark
;
...
...
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/vo/EmployeeContractVO.java
0 → 100644
View file @
1812fb11
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
archives
.
vo
;
import
com.alibaba.excel.annotation.format.DateTimeFormat
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttributeConstants
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.Size
;
import
java.io.Serializable
;
import
java.time.LocalDate
;
/**
* 员工合同-批量操作的VO
*
* @author hgw
* @date 2022-7-1 17:40:40
*/
@Data
@Schema
(
description
=
"员工合同-批量操作的VO"
)
public
class
EmployeeContractVO
extends
RowIndex
implements
Serializable
{
/**
* 员工姓名
*/
@Length
(
max
=
20
,
message
=
"员工姓名不能超过20个字符"
)
@ExcelAttribute
(
name
=
"员工姓名"
,
isNotEmpty
=
true
,
maxLength
=
20
,
needExport
=
true
)
@Schema
(
description
=
"员工姓名"
,
name
=
"empName"
)
private
String
empName
;
/**
* 员工身份证号
*/
@Length
(
max
=
20
,
message
=
"身份证号不能超过20个字符"
)
@ExcelAttribute
(
name
=
"身份证号"
,
isNotEmpty
=
true
,
maxLength
=
20
,
isIdCard
=
true
,
needExport
=
true
)
@Schema
(
description
=
"身份证号"
,
name
=
"empIdcard"
)
private
String
empIdcard
;
/**
* 项目编码
*/
@Length
(
max
=
20
,
message
=
"项目编码不能超过20个字符"
)
@ExcelAttribute
(
name
=
"项目编码"
,
isNotEmpty
=
true
,
maxLength
=
20
,
needExport
=
true
)
@Schema
(
description
=
"项目编码"
)
private
String
deptNo
;
/**
* 签订类型(字典)
*/
@NotBlank
(
message
=
"签订类型不能为空"
)
@Length
(
max
=
20
,
message
=
"签订类型不能超过20个字符"
)
@ExcelAttribute
(
name
=
"签订类型"
,
isNotEmpty
=
true
,
errorInfo
=
"签订情况不能为空"
,
maxLength
=
20
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMPLOYEE_SITUATION_TYPE
)
@Schema
(
description
=
"签订类型(字典)"
,
name
=
"situation"
)
private
String
situation
;
/**
* 合同类型
*/
@NotBlank
(
message
=
"合同类型不能为空"
)
@Length
(
max
=
32
,
message
=
"合同类型不能超过32个字符"
)
@ExcelAttribute
(
name
=
"合同类型"
,
isNotEmpty
=
true
,
errorInfo
=
"合同类型不能为空"
,
maxLength
=
32
,
needExport
=
true
)
@Schema
(
description
=
"合同类型"
,
name
=
"contractName"
)
private
String
contractName
;
/**
* 业务细分
*/
@NotBlank
(
message
=
"业务细分不能为空"
)
@Length
(
max
=
32
,
message
=
"业务细分不能超过32个字符"
)
@ExcelAttribute
(
name
=
"业务细分"
,
maxLength
=
32
,
needExport
=
true
)
@Schema
(
description
=
"业务细分"
,
name
=
"contractName"
)
private
String
contractSubName
;
/**
* 原因说明
*/
@Length
(
max
=
200
,
message
=
"原因说明不能超过200个字符"
)
@ExcelAttribute
(
name
=
"原因说明"
,
maxLength
=
200
,
needExport
=
true
)
@Schema
(
description
=
"原因说明"
,
name
=
"reason"
)
private
String
reason
;
/**
* 合同甲方
*/
@Length
(
max
=
50
,
message
=
"原因说明不能超过200个字符"
)
@ExcelAttribute
(
name
=
"合同甲方"
,
maxLength
=
50
,
needExport
=
true
)
@Schema
(
description
=
"合同甲方"
)
@Size
(
max
=
50
,
message
=
"合同甲方不可超过50位"
)
private
String
contractParty
;
/**
* 签订期限employee_contract_type
* 0 已完成一定工作任务为期限
* 1 固定期限
* 2 无固定期限
*/
@NotBlank
(
message
=
"签订期限不能为空"
)
@Length
(
max
=
32
,
message
=
"签订期限不能超过32个字符"
)
@ExcelAttribute
(
name
=
"签订期限"
,
isNotEmpty
=
true
,
errorInfo
=
"签订期限不能为空"
,
maxLength
=
32
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMPLOYEE_CONTRACT_TYPE
,
needExport
=
true
)
@Schema
(
description
=
"签订期限"
,
name
=
"contractType"
)
private
String
contractType
;
/**
* 合同起始时间
*/
@NotBlank
(
message
=
"起始日期不能为空"
)
@DateTimeFormat
(
"yyyy-MM-dd"
)
@ExcelAttribute
(
name
=
"起始日期"
,
isNotEmpty
=
true
,
errorInfo
=
"起始日期不能为空"
)
@Schema
(
description
=
"起始日期"
,
name
=
"contractStart"
)
private
LocalDate
contractStart
;
/**
* 合同到期时间
*/
@ExcelAttribute
(
name
=
"截止日期"
,
needExport
=
true
)
@DateTimeFormat
(
"yyyy-MM-dd"
)
@Schema
(
description
=
"截止日期"
,
name
=
"contractEnd"
)
private
LocalDate
contractEnd
;
/**
* 合同岗位
*/
@Length
(
max
=
32
,
message
=
"合同岗位不能超过32个字符"
)
@ExcelAttribute
(
name
=
"合同岗位"
,
maxLength
=
32
,
needExport
=
true
)
@Schema
(
description
=
"合同岗位"
,
name
=
"post"
)
private
String
post
;
/**
* 工时制(数据字典) 1标准工时 2 综合工时 3不定时工时制
*/
@Length
(
max
=
32
,
message
=
"工时制不能超过32个字符"
)
@ExcelAttribute
(
name
=
"工时制"
,
maxLength
=
32
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
WORKING_HOURS
)
@Schema
(
description
=
"工时制(数据字典) 1标准工时 2 综合工时 3不定时工时制"
,
name
=
"workingHours"
)
private
String
workingHours
;
/**
* 合同编码
*/
@NotBlank
(
message
=
"合同编码不能为空"
)
@Length
(
max
=
50
,
message
=
"合同编码不能超过50个字符"
)
@ExcelAttribute
(
name
=
"合同编码"
,
maxLength
=
50
)
@Schema
(
description
=
"合同编码"
,
name
=
"contractNo"
)
private
String
contractNo
;
/**
* 档案柜号
*/
@Length
(
max
=
50
,
message
=
"档案柜号不能超过50个字符"
)
@ExcelAttribute
(
name
=
"档案柜号"
,
maxLength
=
50
)
@Schema
(
description
=
"档案柜号"
,
name
=
"fileCabinetNo"
)
private
String
fileCabinetNo
;
/**
* 备注
*/
@Length
(
max
=
200
,
message
=
"不能超过200个字符"
)
@ExcelAttribute
(
name
=
"备注"
,
maxLength
=
200
)
@Schema
(
description
=
"备注"
,
name
=
"remark"
)
private
String
remark
;
}
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/vo/EmployeeProjectExportVO.java
View file @
1812fb11
...
@@ -19,6 +19,7 @@ package com.yifu.cloud.plus.v1.yifu.archives.vo;
...
@@ -19,6 +19,7 @@ package com.yifu.cloud.plus.v1.yifu.archives.vo;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttributeConstants
;
import
lombok.Data
;
import
lombok.Data
;
import
javax.validation.constraints.Past
;
import
javax.validation.constraints.Past
;
...
@@ -42,7 +43,7 @@ public class EmployeeProjectExportVO{
...
@@ -42,7 +43,7 @@ public class EmployeeProjectExportVO{
* 档案员工类型(字典值,0外包1派遣2代理)
* 档案员工类型(字典值,0外包1派遣2代理)
*/
*/
@ExcelProperty
(
value
=
"档案员工类型"
)
@ExcelProperty
(
value
=
"档案员工类型"
)
@ExcelAttribute
(
name
=
"档案员工类型"
,
is
NotEmpty
=
true
,
errorInfo
=
"档案员工类型不可为空"
,
isDataId
=
true
,
dataType
=
"emp_natrue"
)
@ExcelAttribute
(
name
=
"档案员工类型"
,
is
DataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMP_NATRUE
)
private
String
proEmpNatrue
;
private
String
proEmpNatrue
;
/**
/**
...
@@ -79,18 +80,21 @@ public class EmployeeProjectExportVO{
...
@@ -79,18 +80,21 @@ public class EmployeeProjectExportVO{
* 婚姻状况
* 婚姻状况
*/
*/
@ExcelProperty
(
value
=
"婚姻状况"
)
@ExcelProperty
(
value
=
"婚姻状况"
)
@ExcelAttribute
(
name
=
"婚姻状况"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMP_MARRIED
)
private
String
empMarriStatus
;
private
String
empMarriStatus
;
/**
/**
* 民族
* 民族
*/
*/
@ExcelProperty
(
value
=
"民族"
)
@ExcelProperty
(
value
=
"民族"
)
@ExcelAttribute
(
name
=
"民族"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMP_NATIONAL
)
private
String
empNational
;
private
String
empNational
;
/**
/**
* 政治面貌
* 政治面貌
*/
*/
@ExcelProperty
(
value
=
"政治面貌"
)
@ExcelProperty
(
value
=
"政治面貌"
)
@ExcelAttribute
(
name
=
"政治面貌"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMP_POLITICAL
)
private
String
politicalStatus
;
private
String
politicalStatus
;
/**
/**
...
@@ -108,6 +112,7 @@ public class EmployeeProjectExportVO{
...
@@ -108,6 +112,7 @@ public class EmployeeProjectExportVO{
/**
/**
* 身份证-省
* 身份证-省
*/
*/
@ExcelAttribute
(
name
=
"户籍所在省"
,
isArea
=
true
)
@ExcelProperty
(
value
=
"户籍所在省"
)
@ExcelProperty
(
value
=
"户籍所在省"
)
private
String
idProvince
;
private
String
idProvince
;
...
@@ -115,48 +120,56 @@ public class EmployeeProjectExportVO{
...
@@ -115,48 +120,56 @@ public class EmployeeProjectExportVO{
* 身份证-市
* 身份证-市
*/
*/
@ExcelProperty
(
value
=
"户籍所在市"
)
@ExcelProperty
(
value
=
"户籍所在市"
)
@ExcelAttribute
(
name
=
"户籍所在市"
,
isArea
=
true
,
parentField
=
"idProvince"
)
private
String
idCity
;
private
String
idCity
;
/**
/**
* 身份证-县
* 身份证-县
*/
*/
@ExcelProperty
(
value
=
"户籍所在县"
)
@ExcelProperty
(
value
=
"户籍所在县"
)
@ExcelAttribute
(
name
=
"户籍所在县"
,
isArea
=
true
,
parentField
=
"idCity"
)
private
String
idTown
;
private
String
idTown
;
/**
/**
* 户口性质
* 户口性质
*/
*/
@ExcelProperty
(
value
=
"户口性质"
)
@ExcelProperty
(
value
=
"户口性质"
)
@ExcelAttribute
(
name
=
"户口性质"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMP_REGISTYPE
)
private
String
empRegisType
;
private
String
empRegisType
;
/**
/**
* 档案-省
* 档案-省
*/
*/
@ExcelProperty
(
value
=
"档案所在省"
)
@ExcelProperty
(
value
=
"档案所在省"
)
@ExcelAttribute
(
name
=
"档案所在省"
,
isArea
=
true
)
private
String
fileProvince
;
private
String
fileProvince
;
/**
/**
* 档案-市
* 档案-市
*/
*/
@ExcelProperty
(
value
=
"档案所在市"
)
@ExcelProperty
(
value
=
"档案所在市"
)
@ExcelAttribute
(
name
=
"档案所在市"
,
isArea
=
true
,
parentField
=
"fileProvince"
)
private
String
fileCity
;
private
String
fileCity
;
/**
/**
* 档案-县
* 档案-县
*/
*/
@ExcelProperty
(
value
=
"档案所在县"
)
@ExcelProperty
(
value
=
"档案所在县"
)
@ExcelAttribute
(
name
=
"档案所在县"
,
isArea
=
true
,
parentField
=
"fileCity"
)
private
String
fileTown
;
private
String
fileTown
;
/**
/**
* 是否大专及以上(0否1是)
* 是否大专及以上(0否1是)
*/
*/
@ExcelProperty
(
value
=
"是否大专及以上"
)
@ExcelProperty
(
value
=
"是否大专及以上"
)
@ExcelAttribute
(
name
=
"是否大专及以上"
,
readConverterExp
=
"0=否,1=是"
)
private
String
isCollege
;
private
String
isCollege
;
/**
/**
* 最高学历(字典值)
* 最高学历(字典值)
*/
*/
@ExcelProperty
(
value
=
"最高学历"
)
@ExcelProperty
(
value
=
"最高学历"
)
@ExcelAttribute
(
name
=
"最高学历"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EDUCATION
)
private
String
hignEducation
;
private
String
hignEducation
;
/**
/**
...
@@ -175,13 +188,13 @@ public class EmployeeProjectExportVO{
...
@@ -175,13 +188,13 @@ public class EmployeeProjectExportVO{
* 入学时间
* 入学时间
*/
*/
@ExcelProperty
(
value
=
"入学时间"
)
@ExcelProperty
(
value
=
"入学时间"
)
private
LocalDate
admissionDate
;
private
LocalDate
Time
admissionDate
;
/**
/**
* 毕业时间
* 毕业时间
*/
*/
@ExcelProperty
(
value
=
"毕业时间"
)
@ExcelProperty
(
value
=
"毕业时间"
)
private
LocalDate
gradutionDate
;
private
LocalDate
Time
gradutionDate
;
/**
/**
* 备注
* 备注
...
@@ -193,18 +206,21 @@ public class EmployeeProjectExportVO{
...
@@ -193,18 +206,21 @@ public class EmployeeProjectExportVO{
* 人员档案来源(字典:4人员档案新建、5项目档案新建、1社保/公积金、3商险、2薪酬)
* 人员档案来源(字典:4人员档案新建、5项目档案新建、1社保/公积金、3商险、2薪酬)
*/
*/
@ExcelProperty
(
value
=
"人员档案来源"
)
@ExcelProperty
(
value
=
"人员档案来源"
)
@ExcelAttribute
(
name
=
"人员档案来源"
,
readConverterExp
=
"1=社保公积金,2=薪酬,3=商险,4=人员档案新建"
)
private
String
fileSource
;
private
String
fileSource
;
/**
/**
* 人员档案状态(0草稿、1已审核)
* 人员档案状态(0草稿、1已审核)
*/
*/
@ExcelProperty
(
value
=
"人员档案状态"
)
@ExcelProperty
(
value
=
"人员档案状态"
)
@ExcelAttribute
(
name
=
"人员档案状态"
,
readConverterExp
=
"0=草稿,1=已审核"
)
private
Integer
proStatus
;
private
Integer
proStatus
;
/**
/**
* 档案状态(0正常;1已减档)
* 档案状态(0正常;1已减档)
*/
*/
@ExcelProperty
(
value
=
"档案状态"
)
@ExcelProperty
(
value
=
"档案状态"
)
@ExcelAttribute
(
name
=
"人员档案状态"
,
readConverterExp
=
"0=正常,1=已减档"
)
private
Integer
fileStatus
;
private
Integer
fileStatus
;
/**
/**
...
@@ -248,12 +264,14 @@ public class EmployeeProjectExportVO{
...
@@ -248,12 +264,14 @@ public class EmployeeProjectExportVO{
* 合同类型(字典值)
* 合同类型(字典值)
*/
*/
@ExcelProperty
(
value
=
"合同类型"
)
@ExcelProperty
(
value
=
"合同类型"
)
@ExcelAttribute
(
name
=
"合同类型"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMPLOYEE_CONTRACT_TYPE
)
private
String
contractType
;
private
String
contractType
;
/**
/**
* 工时制
* 工时制
*/
*/
@ExcelProperty
(
value
=
"工时制"
)
@ExcelProperty
(
value
=
"工时制"
)
@ExcelAttribute
(
name
=
"工时制"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
WORKING_HOURS
)
private
String
workingHours
;
private
String
workingHours
;
/**
/**
...
@@ -279,6 +297,7 @@ public class EmployeeProjectExportVO{
...
@@ -279,6 +297,7 @@ public class EmployeeProjectExportVO{
* 项目员工类型
* 项目员工类型
*/
*/
@ExcelProperty
(
value
=
"项目员工类型"
)
@ExcelProperty
(
value
=
"项目员工类型"
)
@ExcelAttribute
(
name
=
"项目员工类型"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
PERSONNEL_STATE
)
private
String
empNatrue
;
private
String
empNatrue
;
/**
/**
...
@@ -309,6 +328,7 @@ public class EmployeeProjectExportVO{
...
@@ -309,6 +328,7 @@ public class EmployeeProjectExportVO{
* 员工合同状态(字典)
* 员工合同状态(字典)
*/
*/
@ExcelProperty
(
value
=
"合同状态"
)
@ExcelProperty
(
value
=
"合同状态"
)
@ExcelAttribute
(
name
=
"合同状态"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
PERSONNEL_STATE
)
private
Integer
contractStatus
;
private
Integer
contractStatus
;
/**
/**
...
@@ -333,30 +353,35 @@ public class EmployeeProjectExportVO{
...
@@ -333,30 +353,35 @@ public class EmployeeProjectExportVO{
* 商险状态(字典)
* 商险状态(字典)
*/
*/
@ExcelProperty
(
value
=
"商险状态"
)
@ExcelProperty
(
value
=
"商险状态"
)
@ExcelAttribute
(
name
=
"商险状态"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
COMMERCIAL_SATTE
)
private
Integer
insuranceStatus
;
private
Integer
insuranceStatus
;
/**
/**
* 社保状态(字典)
* 社保状态(字典)
*/
*/
@ExcelProperty
(
value
=
"社保状态"
)
@ExcelProperty
(
value
=
"社保状态"
)
@ExcelAttribute
(
name
=
"社保状态"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
SOCIAL_ECURITY_STATE
)
private
Integer
socialStatus
;
private
Integer
socialStatus
;
/**
/**
* 公积金状态(字典)
* 公积金状态(字典)
*/
*/
@ExcelProperty
(
value
=
"公积金状态"
)
@ExcelProperty
(
value
=
"公积金状态"
)
@ExcelAttribute
(
name
=
"公积金状态"
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
FUND_STATUS
)
private
Integer
fundStatus
;
private
Integer
fundStatus
;
/**
/**
* 近3个月发薪(0否;1是)
* 近3个月发薪(0否;1是)
*/
*/
@ExcelProperty
(
value
=
"近3个月发薪"
)
@ExcelProperty
(
value
=
"近3个月发薪"
)
@ExcelAttribute
(
name
=
"近3个月发薪"
,
readConverterExp
=
"0=无,1=是,2=否"
)
private
Integer
salaryStatus
;
private
Integer
salaryStatus
;
/**
/**
* 项目档案来源(字典:4人员档案新建、5项目档案新建、1社保/公积金、3商险、2薪酬)
* 项目档案来源(字典:4人员档案新建、5项目档案新建、1社保/公积金、3商险、2薪酬)
*/
*/
@ExcelProperty
(
value
=
"项目档案来源"
)
@ExcelProperty
(
value
=
"项目档案来源"
)
@ExcelAttribute
(
name
=
"项目档案来源"
,
readConverterExp
=
"1=社保/公积金,2=薪酬,3=商险,4=人员档案新建,5=项目档案新建"
)
private
String
projectSource
;
private
String
projectSource
;
/**
/**
...
...
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/vo/EmployeeProjectVO.java
View file @
1812fb11
...
@@ -19,6 +19,7 @@ package com.yifu.cloud.plus.v1.yifu.archives.vo;
...
@@ -19,6 +19,7 @@ package com.yifu.cloud.plus.v1.yifu.archives.vo;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.alibaba.excel.annotation.write.style.ColumnWidth
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttributeConstants
;
import
lombok.Data
;
import
lombok.Data
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.NotNull
;
...
@@ -34,7 +35,7 @@ import java.time.LocalDate;
...
@@ -34,7 +35,7 @@ import java.time.LocalDate;
*/
*/
@Data
@Data
@ColumnWidth
(
30
)
@ColumnWidth
(
30
)
public
class
EmployeeProjectVO
implements
Serializable
{
public
class
EmployeeProjectVO
extends
RowIndex
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
private
static
final
long
serialVersionUID
=
1L
;
...
@@ -42,7 +43,7 @@ public class EmployeeProjectVO implements Serializable {
...
@@ -42,7 +43,7 @@ public class EmployeeProjectVO implements Serializable {
* 员工类型(字典值,0外包1派遣2代理)
* 员工类型(字典值,0外包1派遣2代理)
*/
*/
@NotNull
(
message
=
"员工类型不能为空"
)
@NotNull
(
message
=
"员工类型不能为空"
)
@ExcelAttribute
(
name
=
"员工类型"
,
isNotEmpty
=
true
,
errorInfo
=
"员工类型不能为空"
,
maxLength
=
1
)
@ExcelAttribute
(
name
=
"员工类型"
,
isNotEmpty
=
true
,
errorInfo
=
"员工类型不能为空"
,
maxLength
=
1
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMP_NATRUE
)
@ExcelProperty
(
value
=
"员工类型"
)
@ExcelProperty
(
value
=
"员工类型"
)
private
String
empNatrue
;
private
String
empNatrue
;
...
@@ -93,7 +94,7 @@ public class EmployeeProjectVO implements Serializable {
...
@@ -93,7 +94,7 @@ public class EmployeeProjectVO implements Serializable {
*/
*/
@NotNull
(
message
=
"合同类型不能为空"
)
@NotNull
(
message
=
"合同类型不能为空"
)
@ExcelProperty
(
value
=
"合同类型"
)
@ExcelProperty
(
value
=
"合同类型"
)
@ExcelAttribute
(
name
=
"合同类型"
,
isNotEmpty
=
true
,
errorInfo
=
"
项目编码不能为空"
,
maxLength
=
2
)
@ExcelAttribute
(
name
=
"合同类型"
,
isNotEmpty
=
true
,
errorInfo
=
"
合同类型不能为空"
,
maxLength
=
2
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
EMPLOYEE_CONTRACT_TYPE
)
private
String
contractType
;
private
String
contractType
;
/**
/**
...
@@ -101,7 +102,7 @@ public class EmployeeProjectVO implements Serializable {
...
@@ -101,7 +102,7 @@ public class EmployeeProjectVO implements Serializable {
*/
*/
@NotNull
(
message
=
"工时制不能为空"
)
@NotNull
(
message
=
"工时制不能为空"
)
@ExcelProperty
(
value
=
"工时制"
)
@ExcelProperty
(
value
=
"工时制"
)
@ExcelAttribute
(
name
=
"工时制"
,
isNotEmpty
=
true
,
errorInfo
=
"工时制不能为空"
,
maxLength
=
1
)
@ExcelAttribute
(
name
=
"工时制"
,
isNotEmpty
=
true
,
errorInfo
=
"工时制不能为空"
,
maxLength
=
1
,
isDataId
=
true
,
dataType
=
ExcelAttributeConstants
.
WORKING_HOURS
)
private
String
workingHours
;
private
String
workingHours
;
/**
/**
...
@@ -125,6 +126,7 @@ public class EmployeeProjectVO implements Serializable {
...
@@ -125,6 +126,7 @@ public class EmployeeProjectVO implements Serializable {
*/
*/
@ExcelProperty
(
value
=
"试用期"
)
@ExcelProperty
(
value
=
"试用期"
)
@NotNull
(
message
=
"试用期不能为空"
)
@NotNull
(
message
=
"试用期不能为空"
)
@ExcelAttribute
(
name
=
"试用期"
,
isNotEmpty
=
true
,
errorInfo
=
"试用期不能为空"
,
maxLength
=
2
)
private
String
tryPeriod
;
private
String
tryPeriod
;
}
}
yifu-archives/yifu-archives-api/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/vo/EmployeeVO.java
View file @
1812fb11
...
@@ -21,6 +21,7 @@ import com.alibaba.excel.annotation.write.style.ColumnWidth;
...
@@ -21,6 +21,7 @@ import com.alibaba.excel.annotation.write.style.ColumnWidth;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.Data
;
import
javax.validation.constraints.Max
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.NotNull
;
import
javax.validation.constraints.Size
;
import
javax.validation.constraints.Size
;
import
java.io.Serializable
;
import
java.io.Serializable
;
...
...
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/controller/TEmployeeContractInfoController.java
View file @
1812fb11
...
@@ -34,9 +34,11 @@ import io.swagger.v3.oas.annotations.Operation;
...
@@ -34,9 +34,11 @@ import io.swagger.v3.oas.annotations.Operation;
import
io.swagger.v3.oas.annotations.security.SecurityRequirement
;
import
io.swagger.v3.oas.annotations.security.SecurityRequirement
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.SneakyThrows
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.util.List
;
import
java.util.List
;
...
@@ -205,4 +207,20 @@ public class TEmployeeContractInfoController {
...
@@ -205,4 +207,20 @@ public class TEmployeeContractInfoController {
return
tEmployeeContractInfoService
.
filingContract
(
tEmployeeContractInfo
);
return
tEmployeeContractInfoService
.
filingContract
(
tEmployeeContractInfo
);
}
}
/**
* 批量申请-合同
* @param file
* @return
* @Author hgw
* @Date 2022-7-1 18:45:22
**/
@SneakyThrows
@Operation
(
description
=
"批量申请-合同 hasPermission('temployeecontractinfo_batch_import')"
)
@SysLog
(
"批量申请-合同"
)
@PostMapping
(
"/batchImport"
)
@PreAuthorize
(
"@pms.hasPermission('temployeecontractinfo_batch_import')"
)
public
R
<
List
<
ErrorMessage
>>
batchImport
(
@RequestBody
MultipartFile
file
)
{
return
tEmployeeContractInfoService
.
batchImport
(
file
.
getInputStream
());
}
}
}
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/controller/TEmployeeProjectController.java
View file @
1812fb11
...
@@ -21,23 +21,26 @@ import com.alibaba.fastjson.JSONObject;
...
@@ -21,23 +21,26 @@ import com.alibaba.fastjson.JSONObject;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.pig4cloud.plugin.excel.annotation.RequestExcel
;
import
com.pig4cloud.plugin.excel.annotation.RequestExcel
;
import
com.pig4cloud.plugin.excel.vo.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeProject
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeProject
;
import
com.yifu.cloud.plus.v1.yifu.archives.service.TEmployeeProjectService
;
import
com.yifu.cloud.plus.v1.yifu.archives.service.TEmployeeProjectService
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeProjectExportVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeProjectExportVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeProjectVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeProjectVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog
;
import
com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.SneakyThrows
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.validation.Valid
;
import
javax.validation.Valid
;
import
java.io.IOException
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -198,12 +201,13 @@ public class TEmployeeProjectController {
...
@@ -198,12 +201,13 @@ public class TEmployeeProjectController {
* @Author huyc
* @Author huyc
* @Date 2022-06-20
* @Date 2022-06-20
**/
**/
@SneakyThrows
@Operation
(
description
=
"批量新增项目档案信息 hasPermission('wxhr:employeeProjectinfo_importListAdd')"
)
@Operation
(
description
=
"批量新增项目档案信息 hasPermission('wxhr:employeeProjectinfo_importListAdd')"
)
@SysLog
(
"批量新增项目档案信息"
)
@SysLog
(
"批量新增项目档案信息"
)
@PostMapping
(
"/importListAdd"
)
@PostMapping
(
"/importListAdd"
)
@PreAuthorize
(
"@pms.hasPermission('wxhr:employeeProjectinfo_importListAdd')"
)
@PreAuthorize
(
"@pms.hasPermission('wxhr:employeeProjectinfo_importListAdd')"
)
public
R
<
List
<
ErrorMessage
>>
importListAdd
(
@Request
Excel
List
<
EmployeeProjectVO
>
excelVOList
,
BindingResult
bindingResult
,
@RequestParam
(
"idAdd"
)
String
idAdd
)
{
public
R
<
List
<
ErrorMessage
>>
importListAdd
(
@Request
Body
MultipartFile
file
,
@RequestParam
(
"idAdd"
)
String
idAdd
)
throws
IOException
{
return
tEmployeeProjectService
.
importListAdd
(
excelVOList
,
bindingResult
,
idAdd
);
return
tEmployeeProjectService
.
importListAdd
(
file
.
getInputStream
()
,
idAdd
);
}
}
/**
/**
...
@@ -214,12 +218,13 @@ public class TEmployeeProjectController {
...
@@ -214,12 +218,13 @@ public class TEmployeeProjectController {
* @Author huyc
* @Author huyc
* @Date 2022-06-21
* @Date 2022-06-21
**/
**/
@SneakyThrows
@Operation
(
description
=
"批量更新项目档案信息 hasPermission('archives_project_importListUpdate')"
)
@Operation
(
description
=
"批量更新项目档案信息 hasPermission('archives_project_importListUpdate')"
)
@SysLog
(
"批量更新项目档案信息"
)
@SysLog
(
"批量更新项目档案信息"
)
@PostMapping
(
"/importListUpate"
)
@PostMapping
(
"/importListUpate"
)
@PreAuthorize
(
"@pms.hasPermission('archives_project_importListUpdate')"
)
@PreAuthorize
(
"@pms.hasPermission('archives_project_importListUpdate')"
)
public
R
<
List
<
ErrorMessage
>>
importListUpate
(
@Request
Excel
List
<
EmployeeProjectVO
>
excelVOList
,
BindingResult
bindingResult
)
{
public
R
<
List
<
ErrorMessage
>>
importListUpate
(
@Request
Body
MultipartFile
file
)
{
return
tEmployeeProjectService
.
importEmpProjectUpdate
(
excelVOList
,
bindingResult
);
return
tEmployeeProjectService
.
importEmpProjectUpdate
(
file
.
getInputStream
()
);
}
}
/**
/**
...
...
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/service/TEmployeeContractInfoService.java
View file @
1812fb11
...
@@ -22,11 +22,14 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
...
@@ -22,11 +22,14 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeContractInfo
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeContractInfo
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeInfo
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeInfo
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeContractVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorMessageVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorMessageVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
org.springframework.validation.BindingResult
;
import
java.io.InputStream
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -99,5 +102,6 @@ public interface TEmployeeContractInfoService extends IService<TEmployeeContract
...
@@ -99,5 +102,6 @@ public interface TEmployeeContractInfoService extends IService<TEmployeeContract
**/
**/
R
<
String
>
filingContract
(
TEmployeeContractInfo
tEmployeeContractInfo
);
R
<
String
>
filingContract
(
TEmployeeContractInfo
tEmployeeContractInfo
);
R
<
List
<
ErrorMessage
>>
batchImport
(
InputStream
inputStream
);
}
}
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/service/TEmployeeProjectService.java
View file @
1812fb11
...
@@ -21,15 +21,16 @@ import com.alibaba.fastjson.JSONObject;
...
@@ -21,15 +21,16 @@ import com.alibaba.fastjson.JSONObject;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.pig4cloud.plugin.excel.vo.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeInfo
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeInfo
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeProject
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeProject
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeProjectExportVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeProjectExportVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeProjectVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.EmployeeProjectVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
org.springframework.validation.BindingResult
;
import
org.springframework.validation.BindingResult
;
import
javax.servlet.http.HttpServletResponse
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.InputStream
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
...
@@ -66,15 +67,14 @@ public interface TEmployeeProjectService extends IService<TEmployeeProject> {
...
@@ -66,15 +67,14 @@ public interface TEmployeeProjectService extends IService<TEmployeeProject> {
R
<
List
<
ErrorMessage
>>
batchDeleteEmpPro
(
List
<
EmployeeProjectVO
>
list
,
BindingResult
bindingResult
);
R
<
List
<
ErrorMessage
>>
batchDeleteEmpPro
(
List
<
EmployeeProjectVO
>
list
,
BindingResult
bindingResult
);
/**
/**
* @param excelVOList
* @param inputStream
* @param bindingResult
* @param isAdd
* @param isAdd
* @Description: 批量新增项目档案
* @Description: 批量新增项目档案
* @Author: huyc
* @Author: huyc
* @Date: 2022/6/21 10:30
* @Date: 2022/6/21 10:30
* @return: R
* @return: R
**/
**/
R
<
List
<
ErrorMessage
>>
importListAdd
(
List
<
EmployeeProjectVO
>
excelVOList
,
BindingResult
bindingResult
,
String
isAdd
);
R
<
List
<
ErrorMessage
>>
importListAdd
(
InputStream
inputStream
,
String
isAdd
);
/**
/**
* @param projectStatus 传0才过滤
* @param projectStatus 传0才过滤
...
@@ -104,7 +104,7 @@ public interface TEmployeeProjectService extends IService<TEmployeeProject> {
...
@@ -104,7 +104,7 @@ public interface TEmployeeProjectService extends IService<TEmployeeProject> {
* @Date: 2022/6/21 10:30
* @Date: 2022/6/21 10:30
* @return: R
* @return: R
**/
**/
R
<
List
<
ErrorMessage
>>
importEmpProjectUpdate
(
List
<
EmployeeProjectVO
>
excelVOList
,
BindingResult
bindingResult
);
R
<
List
<
ErrorMessage
>>
importEmpProjectUpdate
(
InputStream
inputStream
);
/**
/**
* @param ids
* @param ids
...
...
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/service/impl/TEmployeeContractInfoServiceImpl.java
View file @
1812fb11
...
@@ -16,7 +16,12 @@
...
@@ -16,7 +16,12 @@
*/
*/
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
archives
.
service
.
impl
;
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
archives
.
service
.
impl
;
import
cn.hutool.core.collection.CollUtil
;
import
cn.hutool.core.bean.BeanUtil
;
import
com.alibaba.excel.EasyExcel
;
import
com.alibaba.excel.context.AnalysisContext
;
import
com.alibaba.excel.read.listener.ReadListener
;
import
com.alibaba.excel.read.metadata.holder.ReadRowHolder
;
import
com.alibaba.excel.util.ListUtils
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.core.toolkit.Wrappers
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
...
@@ -25,15 +30,17 @@ import com.yifu.cloud.plus.v1.yifu.archives.Constants.EmployeeContractConstants;
...
@@ -25,15 +30,17 @@ import com.yifu.cloud.plus.v1.yifu.archives.Constants.EmployeeContractConstants;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.*
;
import
com.yifu.cloud.plus.v1.yifu.archives.entity.*
;
import
com.yifu.cloud.plus.v1.yifu.archives.mapper.TEmployeeContractInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.archives.mapper.TEmployeeContractInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.archives.service.*
;
import
com.yifu.cloud.plus.v1.yifu.archives.service.*
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.E
rrorMessage
VO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.E
mployeeContract
VO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorVO
;
import
com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CacheConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CacheConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ResultConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ResultConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.exception.ErrorCodes
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.*
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.*
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser
;
import
com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils
;
import
com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils
;
import
lombok.RequiredArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
lombok.extern.log4j.Log4j2
;
import
org.springframework.cache.Cache
;
import
org.springframework.cache.Cache
;
import
org.springframework.cache.CacheManager
;
import
org.springframework.cache.CacheManager
;
import
org.springframework.cache.support.SimpleValueWrapper
;
import
org.springframework.cache.support.SimpleValueWrapper
;
...
@@ -41,11 +48,10 @@ import org.springframework.stereotype.Service;
...
@@ -41,11 +48,10 @@ import org.springframework.stereotype.Service;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
java.io.InputStream
;
import
java.time.LocalDateTime
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Set
;
/**
/**
* 员工合同
* 员工合同
...
@@ -53,6 +59,7 @@ import java.util.Set;
...
@@ -53,6 +59,7 @@ import java.util.Set;
* @author hgw
* @author hgw
* @date 2022-06-29 20:45:22
* @date 2022-06-29 20:45:22
*/
*/
@Log4j2
@Service
@Service
@RequiredArgsConstructor
@RequiredArgsConstructor
public
class
TEmployeeContractInfoServiceImpl
extends
ServiceImpl
<
TEmployeeContractInfoMapper
,
TEmployeeContractInfo
>
implements
TEmployeeContractInfoService
{
public
class
TEmployeeContractInfoServiceImpl
extends
ServiceImpl
<
TEmployeeContractInfoMapper
,
TEmployeeContractInfo
>
implements
TEmployeeContractInfoService
{
...
@@ -88,6 +95,14 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
...
@@ -88,6 +95,14 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
if
(
Common
.
isEmpty
(
tEmployeeContractInfo
.
getEmpId
())
||
Common
.
isEmpty
(
tEmployeeContractInfo
.
getSettleDomain
()))
{
if
(
Common
.
isEmpty
(
tEmployeeContractInfo
.
getEmpId
())
||
Common
.
isEmpty
(
tEmployeeContractInfo
.
getSettleDomain
()))
{
return
R
.
failed
(
EMPID_NOT_EMPTY
);
return
R
.
failed
(
EMPID_NOT_EMPTY
);
}
}
return
this
.
setBaseInfo
(
tEmployeeContractInfo
);
}
catch
(
Exception
e
)
{
log
.
error
(
"员工合同保存异常:"
+
e
.
getMessage
());
return
R
.
failed
(
"员工合同保存系统异常!"
);
}
}
private
R
<
List
<
ErrorMessage
>>
setBaseInfo
(
TEmployeeContractInfo
tEmployeeContractInfo
)
{
// 获取人员档案
// 获取人员档案
TEmployeeInfo
tEmployeeInfo
=
tEmployeeInfoService
.
getById
(
tEmployeeContractInfo
.
getEmpId
());
TEmployeeInfo
tEmployeeInfo
=
tEmployeeInfoService
.
getById
(
tEmployeeContractInfo
.
getEmpId
());
// 获取项目
// 获取项目
...
@@ -123,10 +138,6 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
...
@@ -123,10 +138,6 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
}
else
{
}
else
{
return
R
.
failed
();
return
R
.
failed
();
}
}
}
catch
(
Exception
e
)
{
log
.
error
(
"员工合同保存异常:"
+
e
.
getMessage
());
return
R
.
failed
(
"员工合同保存系统异常!"
);
}
}
}
@Override
@Override
...
@@ -387,7 +398,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
...
@@ -387,7 +398,7 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
for
(
int
i
=
0
;
i
<
idList
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
idList
.
size
();
i
++)
{
errorVo
=
new
ErrorVO
();
errorVo
=
new
ErrorVO
();
errorVo
.
setResult
(
CommonConstants
.
ZERO_INT
);
errorVo
.
setResult
(
CommonConstants
.
ZERO_INT
);
errorVo
.
setLineNum
(
i
+
1
);
errorVo
.
setLineNum
(
i
+
1
);
id
=
idList
.
get
(
i
);
id
=
idList
.
get
(
i
);
contractInfo
=
this
.
getById
(
id
);
contractInfo
=
this
.
getById
(
id
);
if
(
contractInfo
==
null
)
{
if
(
contractInfo
==
null
)
{
...
@@ -433,4 +444,132 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
...
@@ -433,4 +444,132 @@ public class TEmployeeContractInfoServiceImpl extends ServiceImpl<TEmployeeContr
}
}
return
R
.
failed
(
"参数不可为空"
);
return
R
.
failed
(
"参数不可为空"
);
}
}
@Override
public
R
<
List
<
ErrorMessage
>>
batchImport
(
InputStream
inputStream
)
{
List
<
ErrorMessage
>
errorMessageList
=
new
ArrayList
<>();
ExcelUtil
<
EmployeeContractVO
>
util1
=
new
ExcelUtil
<>(
EmployeeContractVO
.
class
);
// 写法2:
// 匿名内部类 不用额外写一个DemoDataListener
// 这里 需要指定读用哪个class去读,然后读取第一个sheet 文件流会自动关闭
try
{
EasyExcel
.
read
(
inputStream
,
EmployeeContractVO
.
class
,
new
ReadListener
<
EmployeeContractVO
>()
{
/**
* 单次缓存的数据量
*/
public
static
final
int
BATCH_COUNT
=
CommonConstants
.
BATCH_COUNT
;
/**
*临时存储
*/
private
List
<
EmployeeContractVO
>
cachedDataList
=
ListUtils
.
newArrayListWithExpectedSize
(
BATCH_COUNT
);
@Override
public
void
invoke
(
EmployeeContractVO
data
,
AnalysisContext
context
)
{
ReadRowHolder
readRowHolder
=
context
.
readRowHolder
();
Integer
rowIndex
=
readRowHolder
.
getRowIndex
();
data
.
setRowIndex
(
rowIndex
+
1
);
ErrorMessage
errorMessage
=
util1
.
checkEntity
(
data
,
data
.
getRowIndex
());
if
(
Common
.
isNotNull
(
errorMessage
))
{
errorMessageList
.
add
(
errorMessage
);
}
else
{
cachedDataList
.
add
(
data
);
}
if
(
cachedDataList
.
size
()
>=
BATCH_COUNT
)
{
saveData
();
// 存储完成清理 list
cachedDataList
=
ListUtils
.
newArrayListWithExpectedSize
(
BATCH_COUNT
);
}
}
@Override
public
void
doAfterAllAnalysed
(
AnalysisContext
context
)
{
saveData
();
}
/**
* 加上存储数据库
*/
private
void
saveData
()
{
log
.
info
(
"{}条数据,开始存储数据库!"
,
cachedDataList
.
size
());
importContract
(
cachedDataList
,
errorMessageList
);
log
.
info
(
"存储数据库成功!"
);
}
}).
sheet
().
doRead
();
}
catch
(
Exception
e
)
{
log
.
error
(
CommonConstants
.
IMPORT_DATA_ANALYSIS_ERROR
,
e
);
return
R
.
failed
(
CommonConstants
.
IMPORT_DATA_ANALYSIS_ERROR
);
}
return
R
.
ok
(
errorMessageList
);
}
/**
* @Author hgw
* @Description 批量导入
* @Date 2022-7-1 18:48:01
**/
@Transactional
public
void
importContract
(
List
<
EmployeeContractVO
>
excelVOList
,
List
<
ErrorMessage
>
errorMessageList
)
{
/// 个性化校验逻辑
List
<
TEmployeeContractInfo
>
list
=
this
.
list
();
ErrorMessage
errorMsg
;
EmployeeContractVO
excel
;
// 执行数据插入操作 组装
for
(
int
i
=
0
;
i
<
excelVOList
.
size
();
i
++)
{
excel
=
excelVOList
.
get
(
i
);
errorMsg
=
checkRes
(
excel
,
list
);
if
(
Common
.
isNotNull
(
errorMsg
))
{
errorMessageList
.
add
(
errorMsg
);
continue
;
}
// 存储
insertExcel
(
excel
,
errorMessageList
);
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
CommonConstants
.
SAVE_SUCCESS
));
}
}
private
ErrorMessage
checkRes
(
EmployeeContractVO
excel
,
List
<
TEmployeeContractInfo
>
list
)
{
// 检查添加是否已经存在
boolean
match
=
list
.
stream
().
anyMatch
(
info
->
excel
.
getEmpIdcard
().
equals
(
info
.
getEmpIdcard
()));
if
(
match
)
{
return
new
ErrorMessage
(
excel
.
getRowIndex
(),
MsgUtils
.
getMessage
(
ErrorCodes
.
ARCHIVES_EMP_EDUCATION_EXISTING
));
}
return
null
;
}
/**
* 插入excel education
*/
private
void
insertExcel
(
EmployeeContractVO
excel
,
List
<
ErrorMessage
>
errorMessageList
)
{
TEmployeeContractInfo
insert
=
new
TEmployeeContractInfo
();
BeanUtil
.
copyProperties
(
excel
,
insert
);
try
{
if
(
Common
.
isEmpty
(
insert
.
getEmpIdcard
())
||
Common
.
isEmpty
(
insert
.
getDeptNo
()))
{
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
EMPID_NOT_EMPTY
));
}
TEmployeeProject
project
=
tEmployeeProjectService
.
getOne
(
Wrappers
.<
TEmployeeProject
>
query
().
lambda
()
.
eq
(
TEmployeeProject:
:
getEmpIdcard
,
insert
.
getEmpIdcard
())
.
eq
(
TEmployeeProject:
:
getDeptNo
,
insert
.
getDeptNo
())
.
eq
(
TEmployeeProject:
:
getDeleteFlag
,
CommonConstants
.
STATUS_NORMAL
)
.
eq
(
TEmployeeProject:
:
getProjectStatus
,
CommonConstants
.
ZERO_INT
).
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(
project
==
null
)
{
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
EMPINFO_IS_NOT_EXITS_BYID
));
}
else
{
insert
.
setEmpId
(
project
.
getEmpId
());
insert
.
setSettleDomain
(
project
.
getDeptId
());
// 核心保存
R
<
List
<
ErrorMessage
>>
info
=
this
.
setBaseInfo
(
insert
);
if
(
info
.
getCode
()
!=
CommonConstants
.
SUCCESS
)
{
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
info
.
getMsg
()));
}
}
}
catch
(
Exception
e
)
{
log
.
error
(
"员工合同保存异常:"
+
e
.
getMessage
());
errorMessageList
.
add
(
new
ErrorMessage
(
excel
.
getRowIndex
(),
CommonConstants
.
SAVE_FAILED
));
}
}
}
}
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/service/impl/TEmployeeInfoServiceImpl.java
View file @
1812fb11
...
@@ -1228,6 +1228,9 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
...
@@ -1228,6 +1228,9 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
if
(
Common
.
isNotNull
(
excel
.
getEmpName
()))
{
if
(
Common
.
isNotNull
(
excel
.
getEmpName
()))
{
saveEmp
.
setEmpName
(
excel
.
getEmpName
());
saveEmp
.
setEmpName
(
excel
.
getEmpName
());
}
}
if
(
Common
.
isNotNull
(
excel
.
getEmpPhone
()))
{
saveEmp
.
setEmpPhone
(
excel
.
getEmpPhone
());
}
// 校验手机号
// 校验手机号
existEmp
=
existPhoneMap
.
get
(
excel
.
getEmpPhone
());
existEmp
=
existPhoneMap
.
get
(
excel
.
getEmpPhone
());
...
...
yifu-archives/yifu-archives-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/archives/service/impl/TEmployeeProjectServiceImpl.java
View file @
1812fb11
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