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
c2bf35c2
Commit
c2bf35c2
authored
Dec 28, 2022
by
hongguangwu
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
B端初次提交
parent
938b6ed6
Hide whitespace changes
Inline
Side-by-side
Showing
75 changed files
with
7770 additions
and
0 deletions
+7770
-0
TCertInfo.java
...om/yifu/cloud/plus/v1/business/entity/cert/TCertInfo.java
+159
-0
TUpdateRecord.java
...ifu/cloud/plus/v1/business/entity/cert/TUpdateRecord.java
+89
-0
OrganDataPermission.java
.../plus/v1/business/entity/manager/OrganDataPermission.java
+91
-0
RUserOrgan.java
...ifu/cloud/plus/v1/business/entity/manager/RUserOrgan.java
+92
-0
TBusSalary.java
...yifu/cloud/plus/v1/business/entity/salary/TBusSalary.java
+218
-0
TBusSalaryConfig.java
...loud/plus/v1/business/entity/salary/TBusSalaryConfig.java
+83
-0
TBusSalaryConfigTitleRes.java
...s/v1/business/entity/salary/TBusSalaryConfigTitleRes.java
+106
-0
TBusSalaryItem.java
.../cloud/plus/v1/business/entity/salary/TBusSalaryItem.java
+72
-0
TSalaryStatisticsDepart.java
...us/v1/business/entity/salary/TSalaryStatisticsDepart.java
+201
-0
TSalaryStatisticsPersonal.java
.../v1/business/entity/salary/TSalaryStatisticsPersonal.java
+189
-0
TBusSettle.java
...yifu/cloud/plus/v1/business/entity/settle/TBusSettle.java
+76
-0
SysBusDict.java
...yifu/cloud/plus/v1/business/entity/system/SysBusDict.java
+61
-0
TBusAttaInfo.java
...fu/cloud/plus/v1/business/entity/system/TBusAttaInfo.java
+98
-0
TBusDept.java
...m/yifu/cloud/plus/v1/business/entity/system/TBusDept.java
+108
-0
TBusLable.java
.../yifu/cloud/plus/v1/business/entity/system/TBusLable.java
+82
-0
TBusWarning.java
...ifu/cloud/plus/v1/business/entity/system/TBusWarning.java
+110
-0
TBusWarningEmployee.java
...d/plus/v1/business/entity/system/TBusWarningEmployee.java
+163
-0
TBusWarningMessage.java
...ud/plus/v1/business/entity/system/TBusWarningMessage.java
+80
-0
TBusLeave.java
...ifu/cloud/plus/v1/business/entity/vacation/TBusLeave.java
+145
-0
TVacationInfo.java
...cloud/plus/v1/business/entity/vacation/TVacationInfo.java
+127
-0
TVacationMonitor.java
...ud/plus/v1/business/entity/vacation/TVacationMonitor.java
+78
-0
TVacationMonitorClearLog.java
...v1/business/entity/vacation/TVacationMonitorClearLog.java
+62
-0
TVacationRuleConfig.java
...plus/v1/business/entity/vacation/TVacationRuleConfig.java
+86
-0
TSalaryCurDepartQuery.java
.../plus/v1/business/query/salary/TSalaryCurDepartQuery.java
+42
-0
TSalaryStatisticsDepartPageQuery.java
...siness/query/salary/TSalaryStatisticsDepartPageQuery.java
+40
-0
TSalaryStatisticsDepartQuery.java
...1/business/query/salary/TSalaryStatisticsDepartQuery.java
+66
-0
TSalaryStatisticsPersonalPageQuery.java
...ness/query/salary/TSalaryStatisticsPersonalPageQuery.java
+40
-0
TSalaryStatisticsPersonalQuery.java
...business/query/salary/TSalaryStatisticsPersonalQuery.java
+83
-0
BusSalaryExportVo.java
...u/cloud/plus/v1/business/vo/salary/BusSalaryExportVo.java
+24
-0
InitVo.java
...ava/com/yifu/cloud/plus/v1/business/vo/salary/InitVo.java
+20
-0
KeyValueVo.java
...com/yifu/cloud/plus/v1/business/vo/salary/KeyValueVo.java
+30
-0
SalaryImportVo.java
...yifu/cloud/plus/v1/business/vo/salary/SalaryImportVo.java
+33
-0
TSalaryStatisticsDepartVO.java
...plus/v1/business/vo/salary/TSalaryStatisticsDepartVO.java
+273
-0
TSalaryStatisticsPersonalVO.java
...us/v1/business/vo/salary/TSalaryStatisticsPersonalVO.java
+238
-0
TSalaryTotalVO.java
...yifu/cloud/plus/v1/business/vo/salary/TSalaryTotalVO.java
+69
-0
pom.xml
yifu-business/yifu-business-biz/pom.xml
+5
-0
TBusSalaryConfigController.java
...usiness/controller/salary/TBusSalaryConfigController.java
+113
-0
TBusSalaryConfigTitleResController.java
...controller/salary/TBusSalaryConfigTitleResController.java
+111
-0
TBusSalaryController.java
...s/v1/business/controller/salary/TBusSalaryController.java
+166
-0
TBusSalaryItemController.java
.../business/controller/salary/TBusSalaryItemController.java
+114
-0
TSalaryStatisticsController.java
...siness/controller/salary/TSalaryStatisticsController.java
+144
-0
TBusSalaryConfigMapper.java
...lus/v1/business/mapper/salary/TBusSalaryConfigMapper.java
+38
-0
TBusSalaryConfigTitleResMapper.java
...usiness/mapper/salary/TBusSalaryConfigTitleResMapper.java
+38
-0
TBusSalaryItemMapper.java
.../plus/v1/business/mapper/salary/TBusSalaryItemMapper.java
+30
-0
TBusSalaryMapper.java
...loud/plus/v1/business/mapper/salary/TBusSalaryMapper.java
+30
-0
TSalaryStatisticsDepartMapper.java
...business/mapper/salary/TSalaryStatisticsDepartMapper.java
+38
-0
TSalaryStatisticsPersonalMapper.java
...siness/mapper/salary/TSalaryStatisticsPersonalMapper.java
+34
-0
TBusDeptMapper.java
.../cloud/plus/v1/business/mapper/system/TBusDeptMapper.java
+46
-0
TBusSalaryConfigService.java
...s/v1/business/service/salary/TBusSalaryConfigService.java
+44
-0
TBusSalaryConfigTitleResService.java
...iness/service/salary/TBusSalaryConfigTitleResService.java
+51
-0
TBusSalaryItemService.java
...lus/v1/business/service/salary/TBusSalaryItemService.java
+35
-0
TBusSalaryService.java
...ud/plus/v1/business/service/salary/TBusSalaryService.java
+48
-0
TSalaryStatisticsDepartService.java
...siness/service/salary/TSalaryStatisticsDepartService.java
+68
-0
TSalaryStatisticsPersonalService.java
...ness/service/salary/TSalaryStatisticsPersonalService.java
+47
-0
TBusSalaryConfigServiceImpl.java
...ness/service/salary/impl/TBusSalaryConfigServiceImpl.java
+61
-0
TBusSalaryConfigTitleResServiceImpl.java
...vice/salary/impl/TBusSalaryConfigTitleResServiceImpl.java
+128
-0
TBusSalaryItemServiceImpl.java
...siness/service/salary/impl/TBusSalaryItemServiceImpl.java
+38
-0
TBusSalaryServiceImpl.java
...1/business/service/salary/impl/TBusSalaryServiceImpl.java
+376
-0
TSalaryStatisticsDepartServiceImpl.java
...rvice/salary/impl/TSalaryStatisticsDepartServiceImpl.java
+128
-0
TSalaryStatisticsPersonalServiceImpl.java
...ice/salary/impl/TSalaryStatisticsPersonalServiceImpl.java
+81
-0
TBusDeptService.java
...loud/plus/v1/business/service/system/TBusDeptService.java
+96
-0
TBusDeptServiceImpl.java
.../v1/business/service/system/impl/TBusDeptServiceImpl.java
+131
-0
BusinessCommonContants.java
...u/cloud/plus/v1/business/util/BusinessCommonContants.java
+20
-0
BusinessCommonUtils.java
...yifu/cloud/plus/v1/business/util/BusinessCommonUtils.java
+52
-0
BusinessResultErrorMsg.java
...u/cloud/plus/v1/business/util/BusinessResultErrorMsg.java
+66
-0
SalaryUtil.java
...java/com/yifu/cloud/plus/v1/business/util/SalaryUtil.java
+134
-0
spring.factories.txt
...ness-biz/src/main/resources/META-INF/spring.factories.txt
+0
-0
TBusDeptMapper.xml
...business-biz/src/main/resources/mapper/TBusDeptMapper.xml
+126
-0
TBusSalaryConfigMapper.xml
...-biz/src/main/resources/mapper/TBusSalaryConfigMapper.xml
+78
-0
TBusSalaryConfigTitleResMapper.xml
.../main/resources/mapper/TBusSalaryConfigTitleResMapper.xml
+85
-0
TBusSalaryItemMapper.xml
...ss-biz/src/main/resources/mapper/TBusSalaryItemMapper.xml
+62
-0
TBusSalaryMapper.xml
...siness-biz/src/main/resources/mapper/TBusSalaryMapper.xml
+166
-0
TSalaryStatisticsDepartMapper.xml
...c/main/resources/mapper/TSalaryStatisticsDepartMapper.xml
+758
-0
TSalaryStatisticsPersonalMapper.xml
...main/resources/mapper/TSalaryStatisticsPersonalMapper.xml
+442
-0
CommonConstants.java
...ud/plus/v1/yifu/common/core/constant/CommonConstants.java
+8
-0
No files found.
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/cert/TCertInfo.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
cert
;
import
com.baomidou.mybatisplus.annotation.*
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
/**
* 人员证书信息表
*
* @author fxj
* @date 2021-08-16 15:34:16
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_cert_info"
)
@Schema
(
description
=
"人员证书信息表"
)
public
class
TCertInfo
extends
Model
<
TCertInfo
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* b端员工工号 (电信工号)
*/
@ExcelAttribute
(
name
=
"电信工号"
,
maxLength
=
20
,
isNotEmpty
=
true
,
errorInfo
=
"电信工号不可为空"
)
@Schema
(
description
=
"电信工号"
)
private
String
businessTelecomNumber
;
/**
* 姓名
*/
@ExcelAttribute
(
name
=
"姓名"
,
isNotEmpty
=
true
,
errorInfo
=
"姓名不能为空"
,
maxLength
=
50
)
@Schema
(
description
=
"姓名"
)
private
String
empName
;
/**
* 员工身份证号
*/
@ExcelAttribute
(
name
=
"身份证号"
,
maxLength
=
20
,
isNotEmpty
=
true
,
errorInfo
=
"身份证号不可为空"
)
@Schema
(
description
=
"身份证号"
)
private
String
empIdcard
;
/**
* 部门
*/
@ExcelAttribute
(
name
=
"所属部门"
,
maxLength
=
20
)
@Schema
(
description
=
"所属部门"
)
private
String
organId
;
/**
* 岗位
*/
@ExcelAttribute
(
name
=
"岗位"
,
maxLength
=
20
)
@Schema
(
description
=
"岗位"
)
private
String
post
;
/**
* 标签
*/
@ExcelAttribute
(
name
=
"标签名称"
,
maxLength
=
20
)
@Schema
(
description
=
"标签名称"
)
private
String
label
;
/**
* 证件类型:电工证、登高证等
*/
@ExcelAttribute
(
name
=
"证件类型"
,
maxLength
=
32
,
isNotEmpty
=
true
,
errorInfo
=
"证件类型不可为空"
,
isDataId
=
true
,
dataType
=
"cert_type"
)
@Schema
(
description
=
"证件类型"
)
private
String
certType
;
/**
* 证件状态:0正常、1待复审、2已失效
*/
@ExcelAttribute
(
name
=
"证件状态"
,
errorInfo
=
"证件状态不能为空"
,
isDataId
=
true
,
dataType
=
"cert_status"
)
@Schema
(
description
=
"证件状态(0 正常 1 待复审 2 已失效)"
)
private
String
status
;
/**
* 证书号
*/
@ExcelAttribute
(
name
=
"证件号"
,
maxLength
=
50
,
isNotEmpty
=
true
,
errorInfo
=
"证件号不能为空"
)
@Schema
(
description
=
"证件号"
)
private
String
certNum
;
/**
* 作业类别
*/
@ExcelAttribute
(
name
=
"作业类别"
,
maxLength
=
50
,
isNotEmpty
=
true
,
errorInfo
=
"作业类别不能为空"
)
@Schema
(
description
=
"作业类别"
)
private
String
jobClass
;
/**
* 准操项目
*/
@ExcelAttribute
(
name
=
"准操项目"
,
maxLength
=
100
,
errorInfo
=
"准操项目不能为空"
)
@Schema
(
description
=
"准操项目"
)
private
String
operationItem
;
/**
* 初领日期
*/
@TableField
(
updateStrategy
=
FieldStrategy
.
IGNORED
)
@ExcelAttribute
(
name
=
"初领日期"
,
maxLength
=
20
,
errorInfo
=
"初领日期不能为空"
)
@Schema
(
description
=
"初领日期"
)
private
LocalDate
receiveTime
;
/**
* 有效期限
*/
@TableField
(
updateStrategy
=
FieldStrategy
.
IGNORED
)
@ExcelAttribute
(
name
=
"有效期-开始日"
,
maxLength
=
50
,
errorInfo
=
"有效期-开始日不能为空"
)
@Schema
(
description
=
"有效期-开始日"
)
private
LocalDate
termValidityStart
;
/**
* 有效期限
*/
@TableField
(
updateStrategy
=
FieldStrategy
.
IGNORED
)
@ExcelAttribute
(
name
=
"有效期-截止日"
,
maxLength
=
50
,
errorInfo
=
"有效期-截止日不能为空"
)
@Schema
(
description
=
"有效期-截止日"
)
private
LocalDate
termValidityEnd
;
/**
* 复审日期
*/
@ExcelAttribute
(
name
=
"复审日期"
,
isNotEmpty
=
true
,
errorInfo
=
"复审日期不能为空"
)
@Schema
(
description
=
"复审日期"
)
private
LocalDate
reviewDate
;
/**
* 证件照片地址-正面
*/
@ExcelAttribute
(
name
=
"证件照片地址-正面"
,
maxLength
=
100
)
@Schema
(
description
=
"证件照片地址-正面"
)
private
String
ossUrlFront
;
/**
* 证件照片地址-反面
*/
@ExcelAttribute
(
name
=
"证件照片地址-反面"
,
maxLength
=
100
)
@Schema
(
description
=
"证件照片地址-反面"
)
private
String
ossUrlBack
;
/**
* 创建人姓名
*/
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
20
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUser
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 删除状态:0未删除 1删除
*/
@ExcelAttribute
(
name
=
"删除状态"
,
errorInfo
=
"删除状态不能为空"
)
@Schema
(
description
=
"删除状态"
)
private
String
deleteFlag
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/cert/TUpdateRecord.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
cert
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_update_record"
)
@Schema
(
description
=
"B端修改记录表"
)
public
class
TUpdateRecord
extends
Model
<
TUpdateRecord
>
{
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
,
name
=
"id"
)
private
String
id
;
/**
* 创建人id
*/
@Length
(
max
=
32
,
message
=
"创建人id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人id"
,
isNotEmpty
=
true
,
errorInfo
=
"创建人id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人id"
,
name
=
"createUser"
)
private
String
createUser
;
/**
* 创建人名
*/
@Length
(
max
=
32
,
message
=
"创建人名不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人名"
,
isNotEmpty
=
true
,
errorInfo
=
"创建人名不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人名"
,
name
=
"createUserName"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
,
name
=
"createTime"
)
private
LocalDateTime
createTime
;
/**
* 实体id
*/
@Length
(
max
=
32
,
message
=
"实体id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"实体id"
,
isNotEmpty
=
true
,
errorInfo
=
"实体id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"实体id"
,
name
=
"domainId"
)
private
String
domainId
;
/**
* 模块0证件
*/
@NotBlank
(
message
=
"模块0证件不能为空"
)
@Length
(
max
=
2
,
message
=
"模块0证件不能超过2个字符"
)
@ExcelAttribute
(
name
=
"模块0证件"
,
isNotEmpty
=
true
,
errorInfo
=
"模块0证件不能为空"
,
maxLength
=
2
)
@Schema
(
description
=
"模块0证件"
,
name
=
"modul"
)
private
String
modul
;
/**
* 全类名
*/
@Length
(
max
=
100
,
message
=
"全类名不能超过100个字符"
)
@ExcelAttribute
(
name
=
"全类名"
,
maxLength
=
100
)
@Schema
(
description
=
"全类名"
,
name
=
"fullClassName"
)
private
String
fullClassName
;
/**
* 原来的信息
*/
@NotBlank
(
message
=
"原来的信息不能为空"
)
@ExcelAttribute
(
name
=
"原来的信息"
,
isNotEmpty
=
true
,
errorInfo
=
"原来的信息不能为空"
)
@Schema
(
description
=
"原来的信息"
,
name
=
"oldInfo"
)
private
String
oldInfo
;
/**
* 新的信息
*/
@NotBlank
(
message
=
"新的信息不能为空"
)
@ExcelAttribute
(
name
=
"新的信息"
,
isNotEmpty
=
true
,
errorInfo
=
"新的信息不能为空"
)
@Schema
(
description
=
"新的信息"
,
name
=
"newInfo"
)
private
String
newInfo
;
/**
* 差异的信息
*/
@ExcelAttribute
(
name
=
"差异的信息"
)
@Schema
(
description
=
"差异的信息"
,
name
=
"differenceInfo"
)
private
String
differenceInfo
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/manager/OrganDataPermission.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
manager
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* 部门数据权限表
*
* @author fxj
* @date 2021-08-11 16:54:35
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"organ_data_permission"
)
@Schema
(
description
=
"部门数据权限表"
)
public
class
OrganDataPermission
extends
Model
<
OrganDataPermission
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 是否是所有者
*/
@Length
(
max
=
1
,
message
=
"是否是所有者不能超过1个字符"
)
@ExcelAttribute
(
name
=
"是否是所有者"
,
maxLength
=
1
)
@Schema
(
description
=
"是否是所有者"
)
private
String
isOwner
;
/**
* 部门ID
*/
@Length
(
max
=
32
,
message
=
"部门ID不能超过32个字符"
)
@ExcelAttribute
(
name
=
"部门ID"
,
maxLength
=
32
)
@Schema
(
description
=
"部门ID"
)
private
String
organId
;
/**
* 部门CODE
*/
@Length
(
max
=
32
,
message
=
"部门CODE不能超过32个字符"
)
@ExcelAttribute
(
name
=
"部门CODE"
,
maxLength
=
32
)
@Schema
(
description
=
"部门CODE"
)
private
String
organCode
;
/**
* 授权来源
*/
@Length
(
max
=
50
,
message
=
"授权来源不能超过50个字符"
)
@ExcelAttribute
(
name
=
"授权来源"
,
maxLength
=
50
)
@Schema
(
description
=
"授权来源"
)
private
String
permissonSrc
;
/**
* 被授权人
*/
@NotBlank
(
message
=
"被授权人不能为空"
)
@Length
(
max
=
32
,
message
=
"被授权人不能超过32个字符"
)
@ExcelAttribute
(
name
=
"被授权人"
,
isNotEmpty
=
true
,
errorInfo
=
"被授权人不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"被授权人"
)
private
String
bePermissonUser
;
/**
* 被授权时间
*/
@ExcelAttribute
(
name
=
"被授权时间"
)
@Schema
(
description
=
"被授权时间"
)
private
LocalDateTime
bePermissionTime
;
/**
* 备注
*/
@Length
(
max
=
50
,
message
=
"备注不能超过50个字符"
)
@ExcelAttribute
(
name
=
"备注"
,
maxLength
=
50
)
@Schema
(
description
=
"备注"
)
private
String
remark
;
/**
* 授权人
*/
@Length
(
max
=
32
,
message
=
"授权人不能超过32个字符"
)
@ExcelAttribute
(
name
=
"授权人"
,
maxLength
=
32
)
@Schema
(
description
=
"授权人"
)
private
String
permissionUser
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/manager/RUserOrgan.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
manager
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* 客户的用户与客户的机构关系表
*
* @author fxj
* @date 2021-08-11 16:54:35
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"r_user_organ"
)
@Schema
(
description
=
"客户的用户与客户的机构关系表"
)
public
class
RUserOrgan
extends
Model
<
RUserOrgan
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
*
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
""
)
private
String
id
;
/**
* 部门ID
*/
@NotBlank
(
message
=
"部门ID不能为空"
)
@Length
(
max
=
32
,
message
=
"部门ID不能超过32个字符"
)
@ExcelAttribute
(
name
=
"部门ID"
,
isNotEmpty
=
true
,
errorInfo
=
"部门ID不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"部门ID"
)
private
String
organId
;
/**
* 部门CODE
*/
@Length
(
max
=
100
,
message
=
"部门CODE不能超过100个字符"
)
@ExcelAttribute
(
name
=
"部门CODE"
,
errorInfo
=
"部门CODE不能为空"
,
maxLength
=
100
)
@Schema
(
description
=
"部门CODE"
)
private
String
organCode
;
/**
* 部门等级
*/
@Length
(
max
=
2
,
message
=
"部门等级不能超过2个字符"
)
@ExcelAttribute
(
name
=
"部门等级"
,
maxLength
=
2
)
@Schema
(
description
=
"部门等级"
)
private
String
organLevel
;
/**
* 创建人姓名
*/
@Length
(
max
=
32
,
message
=
"创建人姓名不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 用户ID
*/
@NotBlank
(
message
=
"用户ID不能为空"
)
@Length
(
max
=
32
,
message
=
"用户ID不能超过32个字符"
)
@ExcelAttribute
(
name
=
"用户ID"
,
isNotEmpty
=
true
,
errorInfo
=
"用户ID不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"用户ID"
)
private
String
userId
;
/**
* 创建人ID
*/
@Length
(
max
=
32
,
message
=
"创建人ID不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人ID"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人ID"
)
private
String
createUserId
;
/**
* 部门名称
*/
@Length
(
max
=
50
,
message
=
"部门名称不能超过50个字符"
)
@ExcelAttribute
(
name
=
"部门名称"
,
maxLength
=
50
)
@Schema
(
description
=
"部门名称"
)
private
String
organName
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/salary/TBusSalary.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
salary
;
import
cn.hutool.core.date.DatePattern
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.HashSet
;
import
java.util.List
;
import
java.util.Set
;
/**
* B端-薪酬主表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_salary"
)
@Schema
(
description
=
"B端-薪酬主表"
)
public
class
TBusSalary
extends
Model
<
TBusSalary
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 电信工号
*/
@NotBlank
(
message
=
"电信工号不能为空"
)
@Length
(
max
=
50
,
message
=
"电信工号不能超过50个字符"
)
@ExcelAttribute
(
name
=
"电信工号"
,
isNotEmpty
=
true
,
errorInfo
=
"电信工号不能为空"
,
maxLength
=
50
)
@Schema
(
description
=
"电信工号"
)
private
String
teleNo
;
/**
* 姓名
*/
@Length
(
max
=
50
,
message
=
"姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"姓名"
)
private
String
empName
;
/**
* 身份证号
*/
@Length
(
max
=
50
,
message
=
"身份证号不能超过50个字符"
)
@ExcelAttribute
(
name
=
"身份证号"
,
maxLength
=
50
)
@Schema
(
description
=
"身份证号"
)
private
String
empIdCard
;
/**
* 部门id
*/
@ExcelAttribute
(
name
=
"部门id"
,
maxLength
=
11
)
@Schema
(
description
=
"部门id"
)
private
Integer
deptId
;
/**
* 部门Level
*/
@ExcelAttribute
(
name
=
"部门Level"
)
@Schema
(
description
=
"部门Level"
)
private
Integer
deptLevel
;
/**
* 所属部门
*/
@NotBlank
(
message
=
"所属部门不能为空"
)
@Length
(
max
=
100
,
message
=
"所属部门不能超过100个字符"
)
@ExcelAttribute
(
name
=
"所属部门"
,
isNotEmpty
=
true
,
errorInfo
=
"所属部门不能为空"
,
maxLength
=
100
)
@Schema
(
description
=
"所属部门"
)
private
String
deptName
;
/**
* 部门tree
*/
@Length
(
max
=
200
,
message
=
"部门tree不能超过200个字符"
)
@ExcelAttribute
(
name
=
"部门tree"
,
maxLength
=
200
)
@Schema
(
description
=
"部门tree"
)
private
String
deptTreeLogo
;
/**
* 岗位
*/
@Length
(
max
=
50
,
message
=
"岗位不能超过50个字符"
)
@ExcelAttribute
(
name
=
"岗位"
,
maxLength
=
50
)
@Schema
(
description
=
"岗位"
)
private
String
post
;
/**
* 工资月份
*/
@NotBlank
(
message
=
"工资月份不能为空"
)
@Length
(
max
=
6
,
message
=
"工资月份不能超过6个字符"
)
@ExcelAttribute
(
name
=
"工资月份"
,
isDate
=
true
,
errorInfo
=
"工资月份不能为空"
,
maxLength
=
6
,
dateFormat
=
"yyyyMM"
)
@Schema
(
description
=
"工资月份"
)
private
String
salaryMonth
;
/**
* 薪酬应发
*/
@ExcelAttribute
(
name
=
"薪酬应发"
,
maxLength
=
9
)
@Schema
(
description
=
"薪酬应发"
)
private
BigDecimal
relaySalary
;
/**
* 激励应发
*/
@ExcelAttribute
(
name
=
"激励应发"
,
maxLength
=
9
)
@Schema
(
description
=
"激励应发"
)
private
BigDecimal
relayIncent
;
/**
* 其他应发
*/
@ExcelAttribute
(
name
=
"其他应发"
,
maxLength
=
9
)
@Schema
(
description
=
"其他应发"
)
private
BigDecimal
relayOther
;
/**
* 应发合计
*/
@NotNull
(
message
=
"应发合计不能为空"
)
@ExcelAttribute
(
name
=
"应发合计"
,
isNotEmpty
=
true
,
errorInfo
=
"应发合计不能为空"
,
maxLength
=
9
)
@Schema
(
description
=
"应发合计"
)
private
BigDecimal
relaySum
;
/**
* 代扣个人社保
*/
@ExcelAttribute
(
name
=
"代扣个人社保"
,
maxLength
=
9
)
@Schema
(
description
=
"代扣个人社保"
)
private
BigDecimal
withholidPersonSocial
;
/**
* 代扣个人公积金
*/
@ExcelAttribute
(
name
=
"代扣个人公积金"
,
maxLength
=
9
)
@Schema
(
description
=
"代扣个人公积金"
)
private
BigDecimal
withholidPersonFund
;
/**
* 代扣个税
*/
@ExcelAttribute
(
name
=
"代扣个税"
,
maxLength
=
9
)
@Schema
(
description
=
"代扣个税"
)
private
BigDecimal
withholidPersonTax
;
/**
* 其他应扣————其他扣款
* 2021-9-17 15:39:02 张倩倩要求改名为 其他扣款
*/
@ExcelAttribute
(
name
=
"其他扣款"
,
maxLength
=
9
)
@Schema
(
description
=
"其他扣款"
)
private
BigDecimal
withholidOther
;
/**
* 扣款合计
*/
@NotNull
(
message
=
"扣款合计不能为空"
)
@ExcelAttribute
(
name
=
"扣款合计"
,
isNotEmpty
=
true
,
errorInfo
=
"扣款合计不能为空"
,
maxLength
=
9
)
@Schema
(
description
=
"扣款合计"
)
private
BigDecimal
withholidSum
;
/**
* 实发工资
*/
@NotNull
(
message
=
"实发工资不能为空"
)
@ExcelAttribute
(
name
=
"实发工资"
,
isNotEmpty
=
true
,
errorInfo
=
"实发工资不能为空"
,
maxLength
=
9
)
@Schema
(
description
=
"实发工资"
)
private
BigDecimal
actualSalary
;
/**
* 单位社保
*/
@ExcelAttribute
(
name
=
"单位社保"
,
maxLength
=
9
)
@Schema
(
description
=
"单位社保"
)
private
BigDecimal
unitSocial
;
/**
* 单位公积金
*/
@ExcelAttribute
(
name
=
"单位公积金"
,
maxLength
=
9
)
@Schema
(
description
=
"单位公积金"
)
private
BigDecimal
unitFund
;
/**
* 创建人id
*/
@NotBlank
(
message
=
"创建人id不能为空"
)
@Length
(
max
=
32
,
message
=
"创建人id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人id"
,
isNotEmpty
=
true
,
errorInfo
=
"创建人id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人id"
)
private
String
createUserId
;
/**
* 创建人姓名
*/
@Length
(
max
=
50
,
message
=
"创建人姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
@Schema
(
description
=
"工资附加项"
)
@TableField
(
exist
=
false
)
List
<
TBusSalaryItem
>
bisList
=
new
ArrayList
<>();
@Schema
(
description
=
"工资附加项-所有表头"
)
@TableField
(
exist
=
false
)
Set
<
String
>
titleSet
=
new
HashSet
<>();
/**
* id,导出使用
*/
@TableField
(
exist
=
false
)
String
idStr
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/salary/TBusSalaryConfig.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
salary
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* B端-薪资配置
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_salary_config"
)
@Schema
(
description
=
"B端-薪资配置"
)
public
class
TBusSalaryConfig
extends
Model
<
TBusSalaryConfig
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 中文名(Excel表头)
*/
@NotBlank
(
message
=
"中文名(Excel表头)不能为空"
)
@Length
(
max
=
32
,
message
=
"中文名(Excel表头)不能超过32个字符"
)
@ExcelAttribute
(
name
=
"中文名(Excel表头)"
,
isNotEmpty
=
true
,
errorInfo
=
"中文名(Excel表头)不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"中文名(Excel表头)"
)
private
String
cnName
;
/**
* 数据库字段名
*/
@Length
(
max
=
32
,
message
=
"数据库字段名不能超过32个字符"
)
@ExcelAttribute
(
name
=
"数据库字段名"
,
maxLength
=
32
)
@Schema
(
description
=
"数据库字段名"
)
private
String
dbFiedName
;
/**
* JAVA属性字段名
*/
@Length
(
max
=
32
,
message
=
"JAVA属性字段名不能超过32个字符"
)
@ExcelAttribute
(
name
=
"JAVA属性字段名"
,
maxLength
=
32
)
@Schema
(
description
=
"JAVA属性字段名"
)
private
String
javaFiedName
;
/**
* 校验字段:0:无所谓;1必填;2金额;3必填+金额
*/
@ExcelAttribute
(
name
=
"校验字段:0:无所谓;1必填;2金额;3必填+金额"
,
maxLength
=
1
)
@Schema
(
description
=
"校验字段:0:无所谓;1必填;2金额;3必填+金额"
)
private
Integer
isMustNeed
;
/**
* 创建人
*/
@NotBlank
(
message
=
"创建人不能为空"
)
@Length
(
max
=
32
,
message
=
"创建人不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人"
,
isNotEmpty
=
true
,
errorInfo
=
"创建人不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人"
)
private
String
createUser
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 排序项
*/
@ExcelAttribute
(
name
=
"排序项"
)
@Schema
(
description
=
"排序项"
)
private
Integer
orderLine
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/salary/TBusSalaryConfigTitleRes.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
salary
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* B端-原表表头与配置关联表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_salary_config_title_res"
)
@Schema
(
description
=
"B端-原表表头与配置关联表"
)
public
class
TBusSalaryConfigTitleRes
extends
Model
<
TBusSalaryConfigTitleRes
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 结算主体id
*/
@NotBlank
(
message
=
"结算主体id不能为空"
)
@Length
(
max
=
32
,
message
=
"结算主体id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"结算主体id"
,
isNotEmpty
=
true
,
errorInfo
=
"结算主体id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"结算主体id"
)
private
Integer
deptId
;
/**
* 结算主体Name
*/
@Length
(
max
=
32
,
message
=
"结算主体Name不能超过32个字符"
)
@ExcelAttribute
(
name
=
"结算主体Name"
,
maxLength
=
32
)
@Schema
(
description
=
"结算主体Name"
)
private
String
deptName
;
/**
* 结算主体No
*/
@Length
(
max
=
32
,
message
=
"结算主体No不能超过32个字符"
)
@ExcelAttribute
(
name
=
"结算主体No"
,
maxLength
=
32
)
@Schema
(
description
=
"结算主体No"
)
private
String
deptNo
;
/**
* 原表表头
*/
@NotBlank
(
message
=
"原表表头不能为空"
)
@Length
(
max
=
50
,
message
=
"原表表头不能超过50个字符"
)
@ExcelAttribute
(
name
=
"原表表头"
,
isNotEmpty
=
true
,
errorInfo
=
"原表表头不能为空"
,
maxLength
=
50
)
@Schema
(
description
=
"原表表头"
)
private
String
excelTitle
;
/**
* 配置id
*/
@NotBlank
(
message
=
"配置id不能为空"
)
@Length
(
max
=
32
,
message
=
"配置id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"配置id"
,
isNotEmpty
=
true
,
errorInfo
=
"配置id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"配置id"
)
private
String
configId
;
/**
* 配置名称
*/
@Length
(
max
=
32
,
message
=
"配置名称不能超过32个字符"
)
@ExcelAttribute
(
name
=
"配置名称"
,
maxLength
=
32
)
@Schema
(
description
=
"配置名称"
)
private
String
configName
;
/**
* 创建人id
*/
@Length
(
max
=
32
,
message
=
"创建人id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人id"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人id"
)
private
String
createUserId
;
/**
* 创建人姓名
*/
@Length
(
max
=
50
,
message
=
"创建人姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 保存类型:0:保存;1不保存
*/
@ExcelAttribute
(
name
=
"保存类型:0:保存;1不保存"
)
@Schema
(
description
=
"保存类型:0:保存;1不保存"
)
private
Integer
saveType
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/salary/TBusSalaryItem.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
salary
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
/**
* B端-薪酬明细表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_salary_item"
)
@Schema
(
description
=
"B端-薪酬明细表"
)
public
class
TBusSalaryItem
extends
Model
<
TBusSalaryItem
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 工资报账表ID
*/
@NotBlank
(
message
=
"工资报账表ID不能为空"
)
@Length
(
max
=
32
,
message
=
"工资报账表ID不能超过32个字符"
)
@ExcelAttribute
(
name
=
"工资报账表ID"
,
isNotEmpty
=
true
,
errorInfo
=
"工资报账表ID不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"工资报账表ID"
)
private
String
salaryId
;
/**
* 表头名称
*/
@NotBlank
(
message
=
"表头名称不能为空"
)
@Length
(
max
=
50
,
message
=
"表头名称不能超过50个字符"
)
@ExcelAttribute
(
name
=
"表头名称"
,
isNotEmpty
=
true
,
errorInfo
=
"表头名称不能为空"
,
maxLength
=
50
)
@Schema
(
description
=
"表头名称"
)
private
String
cnName
;
/**
* JAVA属性名称
*/
@NotBlank
(
message
=
"JAVA属性名称不能为空"
)
@Length
(
max
=
32
,
message
=
"JAVA属性名称不能超过32个字符"
)
@ExcelAttribute
(
name
=
"JAVA属性名称"
,
isNotEmpty
=
true
,
errorInfo
=
"JAVA属性名称不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"JAVA属性名称"
)
private
String
javaFiedName
;
/**
* 文本值
*/
@Length
(
max
=
100
,
message
=
"文本值不能超过100个字符"
)
@ExcelAttribute
(
name
=
"文本值"
,
maxLength
=
100
)
@Schema
(
description
=
"文本值"
)
private
String
textValue
;
/**
* 排序项
*/
@ExcelAttribute
(
name
=
"排序项"
)
@Schema
(
description
=
"排序项"
)
private
Integer
orderLine
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/salary/TSalaryStatisticsDepart.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
salary
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
lombok.Data
;
/**
* 部门薪资变动统计表
* @TableName t_salary_statistics_depart
*/
@TableName
(
value
=
"t_salary_statistics_depart"
)
@Data
public
class
TSalaryStatisticsDepart
implements
Serializable
{
@TableField
(
exist
=
false
)
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
private
String
id
;
/**
* 部门名称
*/
private
String
departName
;
/**
* 部门id
*/
private
Integer
departId
;
/**
* 部门父id
*/
private
Integer
departPid
;
/**
* 部门等级
*/
private
Integer
depatLevel
;
/**
* 工资月份-yyyyMM
*/
private
String
salaryMonth
;
/**
* 薪酬应发 8位整数 2位小数
*/
private
BigDecimal
payableSalary
;
/**
* 薪酬应发差额 8位整数 2位小数
*/
private
BigDecimal
payableSalaryOffset
;
/**
* 薪酬应发差额标识 0减少 1不变 2增加
*/
private
String
payableSalaryFlag
;
/**
* 激励应发 8位整数 2位小数
*/
private
BigDecimal
payableIncentiveSalary
;
/**
* 激励应发差额 8位整数 2位小数
*/
private
BigDecimal
payableIncentiveSalaryOffset
;
/**
* 激励应发差额标识 0减少 1不变 2增加
*/
private
String
payableIncentiveSalaryFlag
;
/**
* 其他应发 8位整数 2位小数
*/
private
BigDecimal
payableOtherSalary
;
/**
* 其他应发差额 8位整数 2位小数
*/
private
BigDecimal
payableOtherSalaryOffset
;
/**
* 其他应发差额标识 0减少 1不变 2增加
*/
private
String
payableOtherSalaryFlag
;
/**
* 应发合计 9位整数 2位小数
*/
private
BigDecimal
payableTotal
;
/**
* 应发合计差额 9位整数 2位小数
*/
private
BigDecimal
payableTotalOffset
;
/**
* 应发合计差额标识 0减少 1不变 2增加
*/
private
String
payableTotalFlag
;
/**
* 单位社保 6位整数 2位小数
*/
private
BigDecimal
companySocial
;
/**
* 单位社保差额 6位整数 2位小数
*/
private
BigDecimal
companySocialOffset
;
/**
* 单位社保差额标识 0减少 1不变 2增加
*/
private
String
companySocialFlag
;
/**
* 单位公积金 6位整数 2位小数
*/
private
BigDecimal
companyAccFund
;
/**
* 单位公积金差额 6位整数 2位小数
*/
private
BigDecimal
companyAccFundOffset
;
/**
* 单位公积金差额标识 0减少 1不变 2增加
*/
private
String
companyAccFundFlag
;
/**
* 个人社保 6位整数 2位小数
*/
private
BigDecimal
personalSocial
;
/**
* 个人社保差额 6位整数 2位小数
*/
private
BigDecimal
personalSocialOffset
;
/**
* 个人社保差额标识 0减少 1不变 2增加
*/
private
String
personalSocialFlag
;
/**
* 个人公积金 6位整数 2位小数
*/
private
BigDecimal
personalAccFund
;
/**
* 个人公积金差额 6位整数 2位小数
*/
private
BigDecimal
personalAccFundOffset
;
/**
* 个人公积金差额标识 0减少 1不变 2增加
*/
private
String
personalAccFundFlag
;
/**
* 个人所得税 6位整数 2位小数
*/
private
BigDecimal
indIncomeTax
;
/**
* 个人所得税差额 6位整数 2位小数
*/
private
BigDecimal
indIncomeTaxOffset
;
/**
* 个人所得税差额标识 0减少 1不变 2增加
*/
private
String
indIncomeTaxFlag
;
/**
* 其他扣款 6位整数 2位小数
*/
private
BigDecimal
otherDedutions
;
/**
* 其他扣款差额 6位整数 2位小数
*/
private
BigDecimal
otherDedutionOffset
;
/**
* 其他扣款差额标识 0减少 1不变 2增加
*/
private
String
otherDedutionFalg
;
/**
* 扣款合计 7位整数 2位小数
*/
private
BigDecimal
dedutionTotal
;
/**
* 扣款合计差额 7位整数 2位小数
*/
private
BigDecimal
dedutionTotalOffset
;
/**
* 扣款合计差额标识 0减少 1不变 2增加
*/
private
String
dedutionTotalFlag
;
/**
* 实发工资 8位整数 2位小数
*/
private
BigDecimal
actualSalary
;
/**
* 实发工资差额 8位整数 2位小数
*/
private
BigDecimal
actualSalaryOffset
;
/**
* 实发工资差额标识 0减少 1不变 2增加
*/
private
String
actualSalaryFlag
;
/**
* 人均成本 8位整数 2位小数
*/
private
BigDecimal
perCapita
;
/**
* 人均成本差额 8位整数 2位小数
*/
private
BigDecimal
perCapitaOffset
;
/**
* 人均成本差额标识 0减少 1不变 2增加
*/
private
String
perCapitaFlag
;
}
\ No newline at end of file
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/salary/TSalaryStatisticsPersonal.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
salary
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
lombok.Data
;
/**
* 个人薪资变动统计表
* @TableName t_salary_statistics_personal
*/
@TableName
(
value
=
"t_salary_statistics_personal"
)
@Data
public
class
TSalaryStatisticsPersonal
implements
Serializable
{
@TableField
(
exist
=
false
)
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
private
String
id
;
/**
* 电信工号
*/
private
String
telecomNumber
;
/**
* 姓名
*/
private
String
empName
;
/**
* 工资月份-yyyyMM
*/
private
String
salaryMonth
;
/**
* 人数 正整数
*/
private
Integer
peopleNumber
;
/**
* 人数差值 正整数
*/
private
Integer
peopleNumberOffset
;
/**
* 薪酬应发 8位整数 2位小数
*/
private
BigDecimal
payableSalary
;
/**
* 薪酬应发差额 8位整数 2位小数
*/
private
BigDecimal
payableSalaryOffset
;
/**
* 薪酬应发差额标识 0减少 1不变 2增加
*/
private
String
payableSalaryFlag
;
/**
* 激励应发 8位整数 2位小数
*/
private
BigDecimal
payableIncentiveSalary
;
/**
* 激励应发差额 8位整数 2位小数
*/
private
BigDecimal
payableIncentiveSalaryOffset
;
/**
* 激励应发差额标识 0减少 1不变 2增加
*/
private
String
payableIncentiveSalaryFlag
;
/**
* 其他应发 8位整数 2位小数
*/
private
BigDecimal
payableOtherSalary
;
/**
* 其他应发差额 8位整数 2位小数
*/
private
BigDecimal
payableOtherSalaryOffset
;
/**
* 其他应发差额标识 0减少 1不变 2增加
*/
private
String
payableOtherSalaryFlag
;
/**
* 应发合计 9位整数 2位小数
*/
private
BigDecimal
payableTotal
;
/**
* 应发合计差额 9位整数 2位小数
*/
private
BigDecimal
payableTotalOffset
;
/**
* 应发合计差额标识 0减少 1不变 2增加
*/
private
String
payableTotalFlag
;
/**
* 单位社保 6位整数 2位小数
*/
private
BigDecimal
companySocial
;
/**
* 单位社保差额 6位整数 2位小数
*/
private
BigDecimal
companySocialOffset
;
/**
* 单位社保差额标识 0减少 1不变 2增加
*/
private
String
companySocialFlag
;
/**
* 单位公积金 6位整数 2位小数
*/
private
BigDecimal
companyAccFund
;
/**
* 单位公积金差额 6位整数 2位小数
*/
private
BigDecimal
companyAccFundOffset
;
/**
* 单位公积金差额标识 0减少 1不变 2增加
*/
private
String
companyAccFundFlag
;
/**
* 个人社保 6位整数 2位小数
*/
private
BigDecimal
personalSocial
;
/**
* 个人社保差额 6位整数 2位小数
*/
private
BigDecimal
personalSocialOffset
;
/**
* 个人社保差额标识 0减少 1不变 2增加
*/
private
String
personalSocialFlag
;
/**
* 个人公积金 6位整数 2位小数
*/
private
BigDecimal
personalAccFund
;
/**
* 个人公积金差额 6位整数 2位小数
*/
private
BigDecimal
personalAccFundOffset
;
/**
* 个人公积金差额标识 0减少 1不变 2增加
*/
private
String
personalAccFundFlag
;
/**
* 个人所得税 6位整数 2位小数
*/
private
BigDecimal
indIncomeTax
;
/**
* 个人所得税差额 6位整数 2位小数
*/
private
BigDecimal
indIncomeTaxOffset
;
/**
* 个人所得税差额标识 0减少 1不变 2增加
*/
private
String
indIncomeTaxFlag
;
/**
* 其他扣款 6位整数 2位小数
*/
private
BigDecimal
otherDedutions
;
/**
* 其他扣款差额 6位整数 2位小数
*/
private
BigDecimal
otherDedutionOffset
;
/**
* 其他扣款差额标识 0减少 1不变 2增加
*/
private
String
otherDedutionFalg
;
/**
* 扣款合计 7位整数 2位小数
*/
private
BigDecimal
dedutionTotal
;
/**
* 扣款合计差额 7位整数 2位小数
*/
private
BigDecimal
dedutionTotalOffset
;
/**
* 扣款合计差额标识 0减少 1不变 2增加
*/
private
String
dedutionTotalFlag
;
/**
* 实发工资 8位整数 2位小数
*/
private
BigDecimal
actualSalary
;
/**
* 实发工资差额 8位整数 2位小数
*/
private
BigDecimal
actualSalaryOffset
;
/**
* 实发工资差额标识 0减少 1不变 2增加
*/
private
String
actualSalaryFlag
;
}
\ No newline at end of file
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/settle/TBusSettle.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
settle
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* B端结算表
*
* @author hgw
* @date 2021-08-16 15:58:09
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_settle"
)
@Schema
(
description
=
"B端结算表"
)
public
class
TBusSettle
extends
Model
<
TBusSettle
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
*
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
""
)
private
String
id
;
/**
* 报账部门
*/
@Length
(
max
=
100
,
message
=
"报账部门不能超过100个字符"
)
@ExcelAttribute
(
name
=
"报账部门"
,
maxLength
=
100
)
@Schema
(
description
=
"报账部门"
)
private
String
accountDeptName
;
/**
* 结算月
*/
@Length
(
max
=
6
,
message
=
"结算月不能超过6个字符"
)
@ExcelAttribute
(
name
=
"结算月"
,
maxLength
=
6
)
@Schema
(
description
=
"结算月"
)
private
String
settleMonth
;
/**
* 创建人id
*/
@NotBlank
(
message
=
"创建人id不能为空"
)
@Length
(
max
=
32
,
message
=
"创建人id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人id"
,
isNotEmpty
=
true
,
errorInfo
=
"创建人id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人id"
)
private
String
createUserId
;
/**
* 创建人姓名
*/
@Length
(
max
=
50
,
message
=
"创建人姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 删除标志,0未删除
*/
@ExcelAttribute
(
name
=
"删除标志,0未删除"
)
@Schema
(
description
=
"删除标志,0未删除"
)
private
Integer
deleteFlag
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/system/SysBusDict.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
system
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
/**
* @author fxj
* @date 2021-08-18 14:51:15
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"sys_bus_dict"
)
@Schema
(
description
=
""
)
public
class
SysBusDict
extends
Model
<
SysBusDict
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 字典名称
*/
@Length
(
max
=
20
,
message
=
"字典名称不能超过20个字符"
)
@ExcelAttribute
(
name
=
"字典名称"
,
maxLength
=
20
)
@Schema
(
description
=
"字典名称"
)
private
String
label
;
/**
* 字典值
*/
@Length
(
max
=
20
,
message
=
"字典值不能超过20个字符"
)
@ExcelAttribute
(
name
=
"字典值"
,
maxLength
=
20
)
@Schema
(
description
=
"字典值"
)
private
String
value
;
/**
* 字典编码
*/
@Length
(
max
=
20
,
message
=
"字典编码不能超过20个字符"
)
@ExcelAttribute
(
name
=
"字典编码"
,
maxLength
=
20
)
@Schema
(
description
=
"字典编码"
)
private
String
itemType
;
/**
* 字典状态 0 启用 1 禁用
*/
@NotBlank
(
message
=
"字典状态不能为空"
)
@Length
(
max
=
1
,
message
=
"字典状态不能超过1个字符"
)
@ExcelAttribute
(
name
=
"字典状态"
,
isNotEmpty
=
true
,
errorInfo
=
"字典状态不能为空"
,
maxLength
=
1
)
@Schema
(
description
=
"字典状态(0 启用 1 禁用)"
)
private
String
status
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/system/TBusAttaInfo.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
system
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* B端附件表
*
* @author hgw
* @date 2021-08-12 16:38:51
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_atta_info"
)
@Schema
(
description
=
"B端附件表"
)
public
class
TBusAttaInfo
extends
Model
<
TBusAttaInfo
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 资源名称
*/
@NotBlank
(
message
=
"资源名称不能为空"
)
@Length
(
max
=
50
,
message
=
"资源名称不能超过50个字符"
)
@ExcelAttribute
(
name
=
"资源名称"
,
isNotEmpty
=
true
,
errorInfo
=
"资源名称不能为空"
,
maxLength
=
50
)
@Schema
(
description
=
"资源名称"
)
private
String
attaName
;
/**
* 资源地址
*/
@NotBlank
(
message
=
"资源地址不能为空"
)
@Length
(
max
=
100
,
message
=
"资源地址不能超过100个字符"
)
@ExcelAttribute
(
name
=
"资源地址"
,
isNotEmpty
=
true
,
errorInfo
=
"资源地址不能为空"
,
maxLength
=
100
)
@Schema
(
description
=
"资源地址"
)
private
String
attaSrc
;
/**
* 资源大小
*/
@ExcelAttribute
(
name
=
"资源大小"
)
@Schema
(
description
=
"资源大小"
)
private
Long
attaSize
;
/**
* 资源类型
*/
@Length
(
max
=
10
,
message
=
"资源类型不能超过10个字符"
)
@ExcelAttribute
(
name
=
"资源类型"
,
maxLength
=
10
)
@Schema
(
description
=
"资源类型"
)
private
String
attaType
;
/**
* 创建人id
*/
@Length
(
max
=
32
,
message
=
"创建人id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人id"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人id"
)
private
String
createUserId
;
/**
* 创建人姓名
*/
@Length
(
max
=
50
,
message
=
"创建人姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 实体id和关系类型共同确定附件所属
*/
@Length
(
max
=
32
,
message
=
"实体id和关系类型共同确定附件所属不能超过32个字符"
)
@ExcelAttribute
(
name
=
"实体id和关系类型共同确定附件所属"
,
maxLength
=
32
)
@Schema
(
description
=
"实体id和关系类型共同确定附件所属"
)
private
String
relationId
;
/**
* 关系类型(0结算单;1社保;2公积金;3代发工资;4餐补;5春节大礼包;6证件附件)
*/
@Length
(
max
=
1
,
message
=
"关系类型(0结算单;1社保;2公积金;3代发工资;4餐补;5春节大礼包;6证件附件;7假勤信息附件8学信网证明)不能超过1个字符"
)
@ExcelAttribute
(
name
=
"关系类型"
,
isNotEmpty
=
true
,
errorInfo
=
"关系类型不能为空"
,
maxLength
=
1
)
@Schema
(
description
=
"关系类型(0结算单;1社保;2公积金;3代发工资;4餐补;5春节大礼包;6证件附件;7假勤信息附件8学信网证明)"
)
private
Integer
relationType
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/system/TBusDept.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
system
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
/**
* B端部门表
*
* @author hgw
* @date 2021-08-10 10:38:44
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_dept"
)
@Schema
(
description
=
"B端部门表"
)
public
class
TBusDept
extends
Model
<
TBusDept
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
AUTO
)
@Schema
(
description
=
"主键"
)
private
Integer
id
;
/**
* 部门名称
*/
@Length
(
max
=
100
,
message
=
"部门名称不能超过100个字符"
)
@ExcelAttribute
(
name
=
"部门名称"
,
maxLength
=
100
)
@Schema
(
description
=
"部门名称"
)
private
String
name
;
/**
* 级别
*/
@ExcelAttribute
(
name
=
"级别"
)
@Schema
(
description
=
"级别"
)
private
Integer
level
;
/**
* 父级id
*/
@NotNull
(
message
=
"父级id不能为空"
)
@ExcelAttribute
(
name
=
"父级id"
,
isNotEmpty
=
true
,
errorInfo
=
"父级id不能为空"
)
@Schema
(
description
=
"父级id"
)
private
Integer
pid
;
/**
* 创建人id
*/
@NotBlank
(
message
=
"创建人id不能为空"
)
@Length
(
max
=
32
,
message
=
"创建人id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人id"
,
isNotEmpty
=
true
,
errorInfo
=
"创建人id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人id"
)
private
String
createUserId
;
/**
* 创建人姓名
*/
@Length
(
max
=
50
,
message
=
"创建人姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 树标记:父tree_logo_id
*/
@Length
(
max
=
200
,
message
=
"树标记:父tree_logo_id不能超过200个字符"
)
@ExcelAttribute
(
name
=
"树标记:父tree_logo_id"
,
maxLength
=
200
)
@Schema
(
description
=
"树标记:父tree_logo_id"
)
private
String
treeLogo
;
/**
* 删除标志:0未删除
*/
@Length
(
max
=
1
,
message
=
"删除标志:0未删除不能超过1个字符"
)
@ExcelAttribute
(
name
=
"删除标志:0未删除"
,
maxLength
=
1
)
@Schema
(
description
=
"删除标志:0未删除"
)
private
Integer
deleteFlag
;
/**
* 部门子树
*/
@TableField
(
exist
=
false
)
private
List
<
TBusDept
>
children
;
/**
* 上级部门
*/
@TableField
(
exist
=
false
)
private
String
parentName
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/system/TBusLable.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
system
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* B端标签表
*
* @author hgw
* @date 2021-08-11 17:00:52
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_lable"
)
@Schema
(
description
=
"B端标签表"
)
public
class
TBusLable
extends
Model
<
TBusLable
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@TableId
(
type
=
IdType
.
AUTO
)
@Schema
(
description
=
"主键"
)
private
Integer
id
;
/**
* 标签名称
*/
@Length
(
max
=
100
,
message
=
"标签名称不能超过100个字符"
)
@ExcelAttribute
(
name
=
"标签名称"
,
maxLength
=
100
)
@Schema
(
description
=
"标签名称"
)
private
String
name
;
/**
* 说明
*/
@Length
(
max
=
200
,
message
=
"说明不能超过200个字符"
)
@ExcelAttribute
(
name
=
"说明"
,
maxLength
=
200
)
@Schema
(
description
=
"说明"
)
private
String
remark
;
/**
* 是否启用,0启用,1禁用
*/
@ExcelAttribute
(
name
=
"是否启用,0启用,1禁用"
)
@Schema
(
description
=
"是否启用,0启用,1禁用"
)
private
Integer
status
;
/**
* 创建人id
*/
@NotBlank
(
message
=
"创建人id不能为空"
)
@Length
(
max
=
32
,
message
=
"创建人id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人id"
,
isNotEmpty
=
true
,
errorInfo
=
"创建人id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人id"
)
private
String
createUserId
;
/**
* 创建人姓名
*/
@Length
(
max
=
50
,
message
=
"创建人姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 删除标志,0未删除
*/
@ExcelAttribute
(
name
=
"删除标志,0未删除"
)
@Schema
(
description
=
"删除标志,0未删除"
)
private
Integer
deleteFlag
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/system/TBusWarning.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
system
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
java.util.List
;
/**
* B端预警表
*
* @author hgw
* @date 2021-08-20 17:39:51
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_warning"
)
@Schema
(
description
=
"B端预警表"
)
public
class
TBusWarning
extends
Model
<
TBusWarning
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
*
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 类型:0短信;1系统消息
*/
@ExcelAttribute
(
name
=
"类型:0短信;1系统消息"
)
@Schema
(
description
=
"类型:0短信;1系统消息"
)
private
Integer
type
;
/**
* 提醒类型:0复审;1到期;2年假未休;3假期结束日期
*/
@ExcelAttribute
(
name
=
"提醒类型:0复审;1到期;2年假未休;3假期结束日期"
)
@Schema
(
description
=
"提醒类型:0复审;1到期;2年假未休;3假期结束日期"
)
private
Integer
remindType
;
/**
* 模板
*/
@Length
(
max
=
100
,
message
=
"模板不能超过100个字符"
)
@ExcelAttribute
(
name
=
"模板"
,
maxLength
=
100
)
@Schema
(
description
=
"模板"
)
private
String
remindTemplate
;
/**
* 发送方式:0自动;1手动
*/
@ExcelAttribute
(
name
=
"发送方式:0自动;1手动"
)
@Schema
(
description
=
"发送方式:0自动;1手动"
)
private
Integer
sendMethod
;
/**
* 提醒规则(到期天数)
*/
@ExcelAttribute
(
name
=
"提醒规则(到期天数)"
)
@Schema
(
description
=
"提醒规则(到期天数)"
)
private
Integer
remindRules
;
/**
* 提醒对象(为空,则提醒到人,否则为角色idStr,逗号分隔)
*/
@Length
(
max
=
50
,
message
=
"提醒对象(为空,则提醒到人,否则为角色idStr,逗号分隔)不能超过50个字符"
)
@ExcelAttribute
(
name
=
"提醒对象(为空,则提醒到人,否则为角色idStr,逗号分隔)"
,
maxLength
=
50
)
@Schema
(
description
=
"提醒对象(为空,则提醒到人,否则为角色idStr,逗号分隔)"
)
private
String
remindObject
;
/**
* 模板编码
*/
@Length
(
max
=
20
,
message
=
"模板编码不能超过20个字符"
)
@ExcelAttribute
(
name
=
"模板编码"
,
maxLength
=
20
)
@Schema
(
description
=
"模板编码"
,
name
=
"modelCode"
)
private
String
modelCode
;
/**
* 签名(例:安徽皖信)
*/
@Length
(
max
=
32
,
message
=
"签名不能超过32个字符"
)
@ExcelAttribute
(
name
=
"签名"
,
maxLength
=
32
)
@Schema
(
description
=
"签名(例:安徽皖信)"
,
name
=
"signName"
)
private
String
signName
;
/**
* 年假未休的发送日期(设计初始日期为'06-30'
*/
@Length
(
max
=
10
,
message
=
"年假未休的发送日期不能超过10个字符"
)
@ExcelAttribute
(
name
=
"年假未休的发送日期"
,
maxLength
=
10
)
@Schema
(
description
=
"年假未休的发送日期"
,
name
=
"sendDate"
)
private
String
sendDate
;
/**
* 备注
*/
@Schema
(
description
=
"备注"
,
name
=
"remark"
)
private
String
remark
;
/**
* 人员列表
**/
@TableField
(
exist
=
false
)
private
List
<
TBusWarningEmployee
>
empList
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/system/TBusWarningEmployee.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
system
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* B端短信发送记录表
*
* @author hgw
* @date 2021-08-23 16:27:34
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_warning_employee"
)
@Schema
(
description
=
"B端短信发送记录表"
)
public
class
TBusWarningEmployee
extends
Model
<
TBusWarningEmployee
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
*
*/
@TableId
@Schema
(
description
=
"主键"
,
name
=
"id"
)
private
Integer
id
;
/**
* 预警主表id
*/
@NotBlank
(
message
=
"预警主表id不能为空"
)
@Length
(
max
=
32
,
message
=
"预警主表id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"预警主表id"
,
isNotEmpty
=
true
,
errorInfo
=
"预警主表id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"预警主表id"
)
private
String
warningId
;
/**
* 客户id
*/
@Length
(
max
=
32
,
message
=
"B端部门id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"B端部门id"
,
maxLength
=
32
)
@Schema
(
description
=
"B端部门id"
)
private
String
busDeptId
;
/**
* 客户编码
*/
@Length
(
max
=
32
,
message
=
"B端部门编码不能超过32个字符"
)
@ExcelAttribute
(
name
=
"B端部门编码"
,
maxLength
=
32
)
@Schema
(
description
=
"B端部门编码"
)
private
String
busDeptCode
;
/**
* 客户名称
*/
@Length
(
max
=
50
,
message
=
"B端部门名称不能超过50个字符"
)
@ExcelAttribute
(
name
=
"B端部门名称"
,
maxLength
=
50
)
@Schema
(
description
=
"B端部门名称"
)
private
String
busDeptName
;
/**
* 姓名
*/
@Length
(
max
=
32
,
message
=
"姓名不能超过32个字符"
)
@ExcelAttribute
(
name
=
"姓名"
,
maxLength
=
32
)
@Schema
(
description
=
"姓名"
)
private
String
empName
;
/**
* 身份证
*/
@Length
(
max
=
50
,
message
=
"身份证不能超过50个字符"
)
@ExcelAttribute
(
name
=
"身份证"
,
maxLength
=
50
)
@Schema
(
description
=
"身份证"
)
private
String
empIdcard
;
/**
* 联系方式
*/
@Length
(
max
=
50
,
message
=
"联系方式不能超过50个字符"
)
@ExcelAttribute
(
name
=
"联系方式"
,
maxLength
=
50
)
@Schema
(
description
=
"联系方式"
)
private
String
empPhone
;
/**
* 发送时间
*/
@ExcelAttribute
(
name
=
"发送时间"
)
@Schema
(
description
=
"发送时间"
)
private
LocalDateTime
sendDate
;
/**
* 创建人
*/
@Length
(
max
=
32
,
message
=
"创建人不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人"
)
private
String
createUser
;
/**
* 发送状态:1等待回执;2:发送失败;3:发送成功;
*/
@Length
(
max
=
1
,
message
=
"发送状态:1等待回执;2:发送失败;3:发送成功;不能超过1个字符"
)
@ExcelAttribute
(
name
=
"发送状态:1等待回执;2:发送失败;3:发送成功;"
,
maxLength
=
1
)
@Schema
(
description
=
"发送状态:1等待回执;2:发送失败;3:发送成功;"
)
private
String
sendStatus
;
/**
* 备注
*/
@Length
(
max
=
100
,
message
=
"备注不能超过100个字符"
)
@ExcelAttribute
(
name
=
"备注"
,
maxLength
=
100
)
@Schema
(
description
=
"备注"
)
private
String
remark
;
/**
* 回执id
*/
@Length
(
max
=
50
,
message
=
"回执id不能超过50个字符"
)
@ExcelAttribute
(
name
=
"回执id"
,
maxLength
=
50
)
@Schema
(
description
=
"回执id"
)
private
String
bizId
;
/**
* 短信状态是否回执
*/
@Length
(
max
=
1
,
message
=
"短信状态是否回执不能超过1个字符"
)
@ExcelAttribute
(
name
=
"短信状态是否回执"
,
maxLength
=
1
)
@Schema
(
description
=
"短信状态是否回执"
)
private
String
updateStatus
;
/**
* 短信回执内容
*/
@Length
(
max
=
100
,
message
=
"短信回执内容不能超过100个字符"
)
@ExcelAttribute
(
name
=
"短信回执内容"
,
maxLength
=
100
)
@Schema
(
description
=
"短信回执内容"
)
private
String
message
;
/**
* 证件类型(中文)
*/
@Length
(
max
=
100
,
message
=
"证件类型(中文)不能超过100个字符"
)
@ExcelAttribute
(
name
=
"证件类型(中文)"
,
maxLength
=
100
)
@Schema
(
description
=
"证件类型(中文)"
)
private
String
certType
;
/**
* 未使用假期时长
*/
@ExcelAttribute
(
name
=
"未使用假期时长"
)
@Schema
(
description
=
"未使用假期时长"
)
private
String
notUsedVacationDuration
;
/**
* 电信工号
*/
@ExcelAttribute
(
name
=
"电信工号"
,
maxLength
=
32
)
@Schema
(
description
=
"电信工号"
)
private
String
businessTelecomNumber
;
@TableField
(
exist
=
false
)
@Schema
(
description
=
"发送时间起:例如2021-08-26"
)
private
String
sendDateStart
;
@TableField
(
exist
=
false
)
@Schema
(
description
=
"发送时间止:例如2021-08-26"
)
private
String
sendDateEnd
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/system/TBusWarningMessage.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
system
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDateTime
;
/**
* B端预警-系统消息表表
*
* @author hgw
* @date 2021-08-20 17:39:51
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_warning_message"
)
@Schema
(
description
=
"B端预警-系统消息表"
)
public
class
TBusWarningMessage
extends
Model
<
TBusWarningMessage
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
*
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
"主键"
)
private
String
id
;
/**
* 预警主表id
*/
@NotBlank
(
message
=
"预警主表id不能为空"
)
@Length
(
max
=
32
,
message
=
"预警主表id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"预警主表id"
,
isNotEmpty
=
true
,
errorInfo
=
"预警主表id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"预警主表id"
)
private
String
warningId
;
/**
* 提醒类型:0复审;1到期;2年假未休;3假期结束日期
*/
@ExcelAttribute
(
name
=
"提醒类型:0复审;1到期;2年假未休;3假期结束日期"
)
@Schema
(
description
=
"提醒类型:0复审;1到期;2年假未休;3假期结束日期"
)
private
Integer
remindType
;
/**
* 内容
*/
@Length
(
max
=
100
,
message
=
"内容不能超过100个字符"
)
@ExcelAttribute
(
name
=
"内容"
,
maxLength
=
100
)
@Schema
(
description
=
"内容"
)
private
String
remindContent
;
/**
* 提醒对象(角色idStr,逗号分隔)
*/
@Length
(
max
=
50
,
message
=
"提醒对象(角色idStr,逗号分隔)不能超过50个字符"
)
@ExcelAttribute
(
name
=
"提醒对象(角色idStr,逗号分隔)"
,
maxLength
=
50
)
@Schema
(
description
=
"提醒对象(角色idStr,逗号分隔)"
)
private
String
remindObject
;
/**
* 备注
*/
@Length
(
max
=
50
,
message
=
"备注不能超过50个字符"
)
@ExcelAttribute
(
name
=
"备注"
,
maxLength
=
50
)
@Schema
(
description
=
"备注"
)
private
String
remark
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createDate
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/vacation/TBusLeave.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
vacation
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
org.hibernate.validator.constraints.Length
;
import
javax.validation.constraints.NotBlank
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
/**
* B端离职信息表
*
* @author hgw
* @date 2021-08-17 17:02:47
*/
@Data
@EqualsAndHashCode
(
callSuper
=
true
)
@TableName
(
"t_bus_leave"
)
@Schema
(
description
=
"B端离职信息表"
)
public
class
TBusLeave
extends
Model
<
TBusLeave
>
{
private
static
final
long
serialVersionUID
=
1L
;
/**
*
*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@Schema
(
description
=
""
)
private
String
id
;
/**
* 电信工号
*/
@Length
(
max
=
50
,
message
=
"电信工号不能超过50个字符"
)
@ExcelAttribute
(
name
=
"电信工号"
,
maxLength
=
50
)
@Schema
(
description
=
"电信工号"
)
private
String
teleNo
;
/**
* 姓名
*/
@Length
(
max
=
50
,
message
=
"姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"姓名"
)
private
String
name
;
/**
* 身份证
*/
@Length
(
max
=
25
,
message
=
"身份证不能超过25个字符"
)
@ExcelAttribute
(
name
=
"身份证"
,
maxLength
=
25
)
@Schema
(
description
=
"身份证"
)
private
String
idCard
;
/**
* 岗位
*/
@Length
(
max
=
50
,
message
=
"岗位不能超过50个字符"
)
@ExcelAttribute
(
name
=
"岗位"
,
maxLength
=
50
)
@Schema
(
description
=
"岗位"
)
private
String
post
;
/**
* 部门id
*/
@ExcelAttribute
(
name
=
"部门id"
)
@Schema
(
description
=
"部门id"
)
private
Integer
deptId
;
/**
* 所属部门
*/
@Length
(
max
=
100
,
message
=
"所属部门不能超过100个字符"
)
@ExcelAttribute
(
name
=
"所属部门"
,
maxLength
=
100
)
@Schema
(
description
=
"所属部门"
)
private
String
deptName
;
/**
* 部门tree
*/
@Length
(
max
=
200
,
message
=
"部门tree不能超过200个字符"
)
@ExcelAttribute
(
name
=
"部门tree"
,
maxLength
=
200
)
@Schema
(
description
=
"部门tree"
)
private
String
deptTreeLogo
;
/**
* 离职日期
*/
@ExcelAttribute
(
name
=
"离职日期"
)
@Schema
(
description
=
"离职日期"
)
private
LocalDate
leaveDate
;
/**
* 离岗日期
*/
@ExcelAttribute
(
name
=
"离岗日期"
)
@Schema
(
description
=
"离岗日期"
)
private
LocalDate
leavePostDate
;
/**
* 离职原因
*/
@Length
(
max
=
200
,
message
=
"离职原因不能超过200个字符"
)
@ExcelAttribute
(
name
=
"离职原因"
,
maxLength
=
200
)
@Schema
(
description
=
"离职原因"
)
private
String
leaveReason
;
/**
* 创建人id
*/
@NotBlank
(
message
=
"创建人id不能为空"
)
@Length
(
max
=
32
,
message
=
"创建人id不能超过32个字符"
)
@ExcelAttribute
(
name
=
"创建人id"
,
isNotEmpty
=
true
,
errorInfo
=
"创建人id不能为空"
,
maxLength
=
32
)
@Schema
(
description
=
"创建人id"
)
private
String
createUserId
;
/**
* 创建人姓名
*/
@Length
(
max
=
50
,
message
=
"创建人姓名不能超过50个字符"
)
@ExcelAttribute
(
name
=
"创建人姓名"
,
maxLength
=
50
)
@Schema
(
description
=
"创建人姓名"
)
private
String
createUserName
;
/**
* 创建时间
*/
@ExcelAttribute
(
name
=
"创建时间"
)
@Schema
(
description
=
"创建时间"
)
private
LocalDateTime
createTime
;
/**
* 删除标志,0未删除
*/
@ExcelAttribute
(
name
=
"删除标志,0未删除"
)
@Schema
(
description
=
"删除标志,0未删除"
)
private
Integer
deleteFlag
;
@TableField
(
exist
=
false
)
@Schema
(
description
=
"离职日期开始"
)
private
LocalDate
leaveDateStart
;
@TableField
(
exist
=
false
)
@Schema
(
description
=
"离职日期截止"
)
private
LocalDate
leaveDateEnd
;
@TableField
(
exist
=
false
)
@Schema
(
description
=
"离岗日期开始"
)
private
LocalDate
leavePostStart
;
@TableField
(
exist
=
false
)
@Schema
(
description
=
"离岗日期截止"
)
private
LocalDate
leavePostEnd
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/vacation/TVacationInfo.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
vacation
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
/**
* 假勤信息表
* @TableName t_vacation_info
*/
@TableName
(
value
=
"t_vacation_info"
)
@Data
public
class
TVacationInfo
implements
Serializable
{
/**
* 主键
*/
@TableId
private
String
id
;
/**
* b端员工工号
*/
private
String
businessTelecomNumber
;
/**
* 人员姓名
*/
private
String
empName
;
/**
* 身份证号码
*/
private
String
empIdcard
;
/**
* 部门id
*/
private
Integer
departId
;
/**
* b端岗位
*/
private
String
businessPost
;
/**
* 假勤类型(字典值)
*/
private
String
vacationType
;
/**
* 假勤开始时间
*/
private
LocalDateTime
vacationStartTime
;
/**
* 假勤结束时间
*/
private
LocalDateTime
vacationEndTime
;
/**
* 假勤时长
*/
private
BigDecimal
vacationDuration
;
/**
* 假勤实际结束时间
*/
private
LocalDateTime
acturalVacationEndTime
;
/**
* 假勤事由
*/
private
String
vacationReason
;
/**
* 创建人
*/
private
String
createUser
;
/**
* 更新人
*/
private
String
updateUser
;
/**
* 创建人id
*/
private
Integer
createUserId
;
/**
* 更新人id
*/
private
Integer
updateUserId
;
/**
* 假勤状态 0待休 1休假中 2到期待销假 3已销假
*/
private
String
vacationStatus
;
/**
* 销假说明
*/
private
String
vacationNote
;
/**
* 创建时间
*/
private
LocalDateTime
createTime
;
/**
* 更新时间
*/
private
LocalDateTime
updateTime
;
/**
* 年假未休时长
*/
private
BigDecimal
vacationNotUsedDuration
;
@TableField
(
exist
=
false
)
private
static
final
long
serialVersionUID
=
1L
;
}
\ No newline at end of file
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/vacation/TVacationMonitor.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
vacation
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
/**
* 假期监控表
* @TableName t_vacation_monitor
*/
@TableName
(
value
=
"t_vacation_monitor"
)
@Data
public
class
TVacationMonitor
extends
Model
<
TVacationMonitor
>
{
/**
* 主键
*/
@TableId
(
type
=
IdType
.
AUTO
)
private
Integer
id
;
/**
* 年份
*/
private
String
vacationYear
;
/**
* 电信工号
*/
private
String
businessTelecomNumber
;
/**
* 身份证号码
*/
private
String
empIdcard
;
/**
* 姓名
*/
private
String
empName
;
/**
* 部门id
*/
private
Integer
departId
;
/**
* b端岗位
*/
private
String
businessPost
;
/**
* 假期时长
*/
private
BigDecimal
vacationDuration
;
/**
* 未使用假期时长
*/
private
BigDecimal
notUsedVacationDuration
;
/**
* 入职时间
*/
private
LocalDateTime
businessEnjoinDate
;
/**
* 休假状态 0未休完 1已休完
*/
private
String
vacationStatus
;
@TableField
(
exist
=
false
)
private
static
final
long
serialVersionUID
=
1L
;
}
\ No newline at end of file
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/vacation/TVacationMonitorClearLog.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
vacation
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
lombok.Data
;
/**
* 假期监控清零日志表
* @TableName t_vacation_monitor_clear_log
*/
@TableName
(
value
=
"t_vacation_monitor_clear_log"
)
@Data
public
class
TVacationMonitorClearLog
extends
Model
<
TVacationMonitorClearLog
>
{
/**
* 主键
*/
@TableId
private
String
id
;
/**
* 清零说明
*/
private
String
clearNote
;
/**
* 清零时长
*/
private
BigDecimal
clearDuration
;
/**
* 年份
*/
private
String
vacationYear
;
/**
* 清零人姓名
*/
private
String
clearUser
;
/**
* 清零人id
*/
private
Integer
clearUserId
;
/**
* 清零时间
*/
private
LocalDateTime
clearTime
;
/**
* 年假监控id
*/
private
Integer
vacationMonitorId
;
@TableField
(
exist
=
false
)
private
static
final
long
serialVersionUID
=
1L
;
}
\ No newline at end of file
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/entity/vacation/TVacationRuleConfig.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
entity
.
vacation
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.copier.CopyOptions
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.activerecord.Model
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.time.LocalDate
;
import
java.time.LocalDateTime
;
/**
* 假期规则配置
* @TableName t_vacation_rule_config
*/
@TableName
(
value
=
"t_vacation_rule_config"
)
@Data
public
class
TVacationRuleConfig
extends
Model
<
TVacationRuleConfig
>
{
/**
* 主键
*/
@TableId
private
Integer
id
;
/**
* 假期类型 1年假
*/
private
String
type
;
/**
* 是否自动发放假期时间 0否 1是
*/
private
String
vacationAutoInit
;
/**
* 假期初始化时间
*/
private
LocalDate
vacationInitDate
;
/**
* 时间刻度 1按小时(和TIME_VALUE字段一起保证一天可以被不同单位数量的时间转换)
*/
private
String
timeScale
;
/**
* 以时间刻度为单位的时间值(和TIME_SCALE字段一起保证一天可以被不同单位数量的时间转换)
*/
private
BigDecimal
timeValue
;
/**
* 创建时间
*/
private
LocalDateTime
createTime
;
/**
* 最后更新时间
*/
private
LocalDateTime
updateTime
;
/**
* 创建人id
*/
private
String
createUserId
;
/**
* 最后更新人id
*/
private
String
updateUserId
;
public
static
<
T
>
T
entityConvertToObj
(
T
t
,
TVacationRuleConfig
entity
)
{
BeanUtil
.
copyProperties
(
entity
,
t
,
CopyOptions
.
create
().
setIgnoreNullValue
(
true
));
return
t
;
}
public
static
TVacationRuleConfig
objConvertToEntity
(
Object
obj
)
{
TVacationRuleConfig
entity
=
new
TVacationRuleConfig
();
BeanUtil
.
copyProperties
(
obj
,
entity
,
CopyOptions
.
create
().
setIgnoreNullValue
(
true
));
return
entity
;
}
@TableField
(
exist
=
false
)
private
static
final
long
serialVersionUID
=
1L
;
}
\ No newline at end of file
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/query/salary/TSalaryCurDepartQuery.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
query
.
salary
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
/**
* 当前部门统计查询条件
*
* @author: wangweiguo
* @date: 2021/9/16
*/
@Setter
@Getter
@ToString
public
class
TSalaryCurDepartQuery
implements
Serializable
{
/**
* 部门id
*/
@Schema
(
description
=
"部门id"
)
@NotNull
(
message
=
"部门id不能为空"
)
private
Integer
departId
;
/**
* 工资月份
*/
@Schema
(
description
=
"工资月份 yyyyMM"
,
required
=
true
)
@NotBlank
(
message
=
"查询条件: 工资月份不能为空"
)
private
String
salaryMonth
;
/**
* 工资月份的上个月
*/
@Schema
(
description
=
"工资月份的上个月,前端无需传该参数"
)
private
String
lastSalaryMonth
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/query/salary/TSalaryStatisticsDepartPageQuery.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
query
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.OrderItem
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.util.List
;
/**
* @description: 部门薪资变动统计表 分页查询query
* @author: wangweiguo
* @date: 2021-09-06
*/
@Setter
@Getter
@ToString
public
class
TSalaryStatisticsDepartPageQuery
extends
TSalaryStatisticsDepartQuery
{
/**
* 当前页码 默认为1
*/
@Schema
(
description
=
"当前页码 默认为1"
)
private
long
current
=
1
;
/**
* 每页数量 默认为10
*/
@Schema
(
description
=
"每页数量 默认为10"
)
private
long
size
=
10
;
/**
* 排序字段
*/
@Schema
(
description
=
"排序字段"
)
private
List
<
OrderItem
>
orders
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/query/salary/TSalaryStatisticsDepartQuery.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
query
.
salary
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
javax.validation.constraints.NotBlank
;
import
javax.validation.constraints.NotNull
;
import
java.io.Serializable
;
/**
* @description: 部门薪资变动统计表 查询query
* @author: wangweiguo
* @date: 2021-09-06
*/
@Setter
@Getter
@ToString
public
class
TSalaryStatisticsDepartQuery
implements
Serializable
{
/**
* 部门treeLogo
*/
@Schema
(
description
=
"部门treeLogo"
)
@NotBlank
(
message
=
"部门treeLogo不能为空"
)
private
String
treeLogo
;
/**
* 工资月份
*/
@Schema
(
description
=
"工资月份 yyyyMM"
,
required
=
true
)
@NotBlank
(
message
=
"查询条件: 工资月份不能为空"
)
private
String
salaryMonth
;
/**
* 部门等级
*/
@Schema
(
description
=
"部门等级"
)
@NotNull
(
message
=
"部门等级不能为空"
)
private
Integer
departLevel
;
/**
* 工资月份的上个月
*/
@Schema
(
description
=
"工资月份的上个月,前端无需传该参数"
)
private
String
lastSalaryMonth
;
/**
* 变动类型 0应发增加,
* 1应发减少,
* 2应发不变,
* 3实发增加,
* 4实发减少,
* 5实发不变,
* 6人均成本增加,
* 7人均成本减少,
* 8人均成本不变,
* 9扣款增加,
* 10扣款减少,
* 11扣款不变
*/
@Schema
(
description
=
"变动类型: 0应发增加, 1应发减少, 2应发不变, 3实发增加, 4实发减少, 5实发不变, 6人均成本增加, 7人均成本减少, 8人均成本不变, 9扣款增加, 10扣款减少, 11扣款不变"
)
private
String
salaryChangeType
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/query/salary/TSalaryStatisticsPersonalPageQuery.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
query
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.OrderItem
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.util.List
;
/**
* 个人薪酬统计分页查询参数
*
* @author: wangweiguo
* @date: 2021/9/8
*/
@Getter
@Setter
@ToString
public
class
TSalaryStatisticsPersonalPageQuery
extends
TSalaryStatisticsPersonalQuery
{
/**
* 当前页码 默认为1
*/
@Schema
(
description
=
"当前页码 默认为1"
)
private
long
current
=
1
;
/**
* 每页数量 默认为10
*/
@Schema
(
description
=
"每页数量 默认为10"
)
private
long
size
=
10
;
/**
* 排序字段
*/
@Schema
(
description
=
"排序字段"
)
private
List
<
OrderItem
>
orders
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/query/salary/TSalaryStatisticsPersonalQuery.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
query
.
salary
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
javax.validation.constraints.NotBlank
;
import
java.io.Serializable
;
/**
* @description: 个人薪资变动统计表 查询query
* @author: wangweiguo
* @date: 2021-09-07
*/
@Setter
@Getter
@ToString
public
class
TSalaryStatisticsPersonalQuery
implements
Serializable
{
/**
* 姓名
*/
@Schema
(
description
=
"姓名"
)
private
String
empName
;
/**
* 身份证号
*/
@Schema
(
description
=
"身份证号"
)
private
String
empIdCard
;
/**
* 部门treeLogo
*/
@Schema
(
description
=
"部门treeLogo, 查询个人薪酬的时候不能为空"
)
@NotBlank
(
message
=
"查询条件: 部门treeLogo不能为空"
)
private
String
treeLogo
;
/**
* 电信工号
*/
@Schema
(
description
=
"电信工号"
)
private
String
teleNo
;
/**
* 工资月份
*/
@Schema
(
description
=
"工资月份 yyyyMM"
)
@NotBlank
(
message
=
"查询条件: 工资月份不能为空"
)
private
String
salaryMonth
;
/**
* 查询类型 0查询当前部门及下级 1仅查询当前部门, 默认为0
*/
@Schema
(
description
=
"查询类型 0查询当前部门及下级 1仅查询当前部门, 默认为0"
)
private
String
selectType
=
"0"
;
/**
* 工资月份的上个月
*/
@Schema
(
description
=
"工资月份的上个月,前端无需传该参数"
)
private
String
lastSalaryMonth
;
/**
* 变动类型 0应发增加,
* 1应发减少,
* 2应发不变,
* 3实发增加,
* 4实发减少,
* 5实发不变,
* 6人均成本增加,
* 7人均成本减少,
* 8人均成本不变,
* 9扣款增加,
* 10扣款减少,
* 11扣款不变
*/
@Schema
(
description
=
"变动类型: 0应发增加, 1应发减少, 2应发不变, 3实发增加, 4实发减少, 5实发不变, 6人均成本增加, 7人均成本减少, 8人均成本不变, 9扣款增加, 10扣款减少, 11扣款不变"
)
private
String
salaryChangeType
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/vo/salary/BusSalaryExportVo.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
vo
.
salary
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalary
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.util.List
;
import
java.util.Set
;
/**
* @Description: B端工资导出vo
* @Author: hgw
* @Date: 2021-9-13 17:12:16
* @return:
**/
@Data
public
class
BusSalaryExportVo
{
@Schema
(
description
=
"工资详情,包含明细"
)
private
List
<
TBusSalary
>
salaryList
;
@Schema
(
description
=
"所有表头"
)
private
Set
<
String
>
titleSet
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/vo/salary/InitVo.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
vo
.
salary
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfig
;
import
lombok.Data
;
import
java.util.HashMap
;
import
java.util.Map
;
/**
* @Description: 工资原表识别导入vo
* @Author: hgw
* @Date: 2021-9-10 15:02:12
* @return:
**/
@Data
public
class
InitVo
{
TBusSalaryConfig
otherText
;
Map
<
String
,
Integer
>
mustMap
=
new
HashMap
<>();
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/vo/salary/KeyValueVo.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
vo
.
salary
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
/**
* @description: 接收简单的键值关系
* @author: hgw
* @create: 2021-9-6 15:28:21
**/
@Data
public
class
KeyValueVo
{
/**
* 键
*
* @Author hgw
* @Date 2021-9-6 15:27:58
**/
@Schema
(
description
=
"键"
)
private
String
title
;
/**
* 值
*
* @Author hgw
* @Date 2021-9-6 15:27:58
**/
@Schema
(
description
=
"值"
)
private
String
content
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/vo/salary/SalaryImportVo.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
vo
.
salary
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfigTitleRes
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* @Description: 工资原表识别导入vo
* @Author: hgw
* @Date: 2021/1/12 19:45
* @return:
**/
@Data
public
class
SalaryImportVo
{
@Schema
(
description
=
"表格数据list"
)
private
List
<
List
<
KeyValueVo
>>
contentList
=
new
ArrayList
<>();
@Schema
(
description
=
"配置关系"
)
private
List
<
TBusSalaryConfigTitleRes
>
resList
=
new
ArrayList
<>();
@Schema
(
description
=
"部门id"
)
private
String
deptId
;
@Schema
(
description
=
"工资月份"
)
private
String
salaryMonth
;
@Schema
(
description
=
"保存类型:0:保存;1不保存"
)
private
Integer
saveType
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/vo/salary/TSalaryStatisticsDepartVO.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
vo
.
salary
;
import
com.fasterxml.jackson.annotation.JsonIgnore
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
* 部门薪资变动统计表 分页查询展示 vo
* @author: wangweiguo
* @date: 2021-09-06
*/
@Setter
@Getter
@ToString
public
class
TSalaryStatisticsDepartVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* ID
*/
@Schema
(
description
=
"id"
)
private
String
id
;
/**
* 部门名称
*/
@Schema
(
description
=
"部门名称"
)
private
String
departName
;
/**
* 部门id
*/
@Schema
(
description
=
"部门id"
)
private
Integer
departId
;
/**
* 部门treeLogo
*/
@Schema
(
description
=
"部门treeLogo"
)
private
String
treeLogo
;
/**
* 工资月份-yyyyMM
*/
@Schema
(
description
=
"工资月份-yyyyMM"
)
private
String
salaryMonth
;
/**
* 工资月份的上个月-yyyyMM
*/
@Schema
(
description
=
"工资月份的上个月-yyyyMM"
)
private
String
lastSalaryMonth
;
@JsonIgnore
private
String
salaryChangeType
;
/**
* 人数
*/
@Schema
(
description
=
"人数"
)
private
Integer
peopleNumber
;
/**
* 人数差额
*/
@Schema
(
description
=
"人数差额"
)
private
Integer
peopleNumberOffset
;
/**
* 人数差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"人数差额标识 0减少 1不变 2增加"
)
private
String
peopleNumberFlag
;
/**
* 薪酬应发 8位整数 2位小数
*/
@Schema
(
description
=
"薪酬应发"
)
private
BigDecimal
payableSalary
;
/**
* 薪酬应发差额 8位整数 2位小数
*/
@Schema
(
description
=
"薪酬应发差额"
)
private
BigDecimal
payableSalaryOffset
;
/**
* 薪酬应发差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"薪酬应发差额标识 0减少 1不变 2增加"
)
private
String
payableSalaryFlag
;
/**
* 激励应发 8位整数 2位小数
*/
@Schema
(
description
=
"激励应发"
)
private
BigDecimal
payableIncentiveSalary
;
/**
* 激励应发差额 8位整数 2位小数
*/
@Schema
(
description
=
"激励应发差额"
)
private
BigDecimal
payableIncentiveSalaryOffset
;
/**
* 激励应发差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"激励应发差额标识 0减少 1不变 2增加"
)
private
String
payableIncentiveSalaryFlag
;
/**
* 其他应发 8位整数 2位小数
*/
@Schema
(
description
=
"其他应发"
)
private
BigDecimal
payableOtherSalary
;
/**
* 其他应发差额 8位整数 2位小数
*/
@Schema
(
description
=
"其他应发差额"
)
private
BigDecimal
payableOtherSalaryOffset
;
/**
* 其他应发差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"其他应发差额标识 0减少 1不变 2增加"
)
private
String
payableOtherSalaryFlag
;
/**
* 应发合计 9位整数 2位小数
*/
@Schema
(
description
=
"应发合计"
)
private
BigDecimal
payableTotal
;
/**
* 应发合计差额 9位整数 2位小数
*/
@Schema
(
description
=
"应发合计差额"
)
private
BigDecimal
payableTotalOffset
;
/**
* 应发合计差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"应发合计差额标识 0减少 1不变 2增加"
)
private
String
payableTotalFlag
;
/**
* 单位社保 6位整数 2位小数
*/
@Schema
(
description
=
"单位社保"
)
private
BigDecimal
companySocial
;
/**
* 单位社保差额 6位整数 2位小数
*/
@Schema
(
description
=
"单位社保差额"
)
private
BigDecimal
companySocialOffset
;
/**
* 单位社保差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"单位社保差额标识 0减少 1不变 2增加"
)
private
String
companySocialFlag
;
/**
* 单位公积金 6位整数 2位小数
*/
@Schema
(
description
=
"单位公积金"
)
private
BigDecimal
companyAccFund
;
/**
* 单位公积金差额 6位整数 2位小数
*/
@Schema
(
description
=
"单位公积金差额"
)
private
BigDecimal
companyAccFundOffset
;
/**
* 单位公积金差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"单位公积金差额标识 0减少 1不变 2增加"
)
private
String
companyAccFundFlag
;
/**
* 个人社保 6位整数 2位小数
*/
@Schema
(
description
=
"个人社保"
)
private
BigDecimal
personalSocial
;
/**
* 个人社保差额 6位整数 2位小数
*/
@Schema
(
description
=
"个人社保差额"
)
private
BigDecimal
personalSocialOffset
;
/**
* 个人社保差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"个人社保差额标识 0减少 1不变 2增加"
)
private
String
personalSocialFlag
;
/**
* 个人公积金 6位整数 2位小数
*/
@Schema
(
description
=
"个人公积金"
)
private
BigDecimal
personalAccFund
;
/**
* 个人公积金差额 6位整数 2位小数
*/
@Schema
(
description
=
"个人公积金差额"
)
private
BigDecimal
personalAccFundOffset
;
/**
* 个人公积金差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"个人公积金差额标识 0减少 1不变 2增加"
)
private
String
personalAccFundFlag
;
/**
* 个人所得税 6位整数 2位小数
*/
@Schema
(
description
=
"个人所得税"
)
private
BigDecimal
indIncomeTax
;
/**
* 个人所得税差额 6位整数 2位小数
*/
@Schema
(
description
=
"个人所得税差额"
)
private
BigDecimal
indIncomeTaxOffset
;
/**
* 个人所得税差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"个人所得税差额标识 0减少 1不变 2增加"
)
private
String
indIncomeTaxFlag
;
/**
* 其他扣款 6位整数 2位小数
*/
@Schema
(
description
=
"其他扣款"
)
private
BigDecimal
otherDedutions
;
/**
* 其他扣款差额 6位整数 2位小数
*/
@Schema
(
description
=
"其他扣款差额"
)
private
BigDecimal
otherDedutionOffset
;
/**
* 其他扣款差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"其他扣款差额标识 0减少 1不变 2增加"
)
private
String
otherDedutionFalg
;
/**
* 扣款合计 7位整数 2位小数
*/
@Schema
(
description
=
"扣款合计"
)
private
BigDecimal
dedutionTotal
;
/**
* 扣款合计差额 7位整数 2位小数
*/
@Schema
(
description
=
"扣款合计差额"
)
private
BigDecimal
dedutionTotalOffset
;
/**
* 扣款合计差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"扣款合计差额标识 0减少 1不变 2增加"
)
private
String
dedutionTotalFlag
;
/**
* 实发工资 8位整数 2位小数
*/
@Schema
(
description
=
"实发工资"
)
private
BigDecimal
actualSalary
;
/**
* 实发工资差额 8位整数 2位小数
*/
@Schema
(
description
=
"实发工资差额"
)
private
BigDecimal
actualSalaryOffset
;
/**
* 实发工资差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"实发工资差额标识 0减少 1不变 2增加"
)
private
String
actualSalaryFlag
;
/**
* 人均成本 8位整数 2位小数
*/
@Schema
(
description
=
"人均成本"
)
private
BigDecimal
perCapita
;
/**
* 人均成本差额 8位整数 2位小数
*/
@Schema
(
description
=
"人均成本差额"
)
private
BigDecimal
perCapitaOffset
;
/**
* 人均成本差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"人均成本差额标识 0减少 1不变 2增加"
)
private
String
perCapitaFlag
;
@JsonIgnore
private
List
<
TSalaryStatisticsDepartVO
>
children
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/vo/salary/TSalaryStatisticsPersonalVO.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
vo
.
salary
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
/**
* @description: 个人薪资变动统计表 分页查询展示 vo
* @author: wangweiguo
* @date: 2021-09-07
*/
@Setter
@Getter
@ToString
public
class
TSalaryStatisticsPersonalVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* ID
*/
@Schema
(
description
=
"id"
)
private
String
id
;
/**
* 电信工号
*/
@Schema
(
description
=
"电信工号"
)
private
String
teleNo
;
/**
* 身份证号
*/
@Schema
(
description
=
"身份证号"
)
private
String
empIdCard
;
/**
* 姓名
*/
@Schema
(
description
=
"姓名"
)
private
String
empName
;
/**
* 部门treeLogo
*/
@Schema
(
description
=
"部门treeLogo"
)
private
String
treeLogo
;
/**
* 工资月份-yyyyMM
*/
@Schema
(
description
=
"工资月份-yyyyMM"
)
private
String
salaryMonth
;
/**
* 薪酬应发 8位整数 2位小数
*/
@Schema
(
description
=
"薪酬应发"
)
private
BigDecimal
payableSalary
;
/**
* 薪酬应发差额 8位整数 2位小数
*/
@Schema
(
description
=
"薪酬应发差额"
)
private
BigDecimal
payableSalaryOffset
;
/**
* 薪酬应发差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"薪酬应发差额标识 0减少 1不变 2增加"
)
private
String
payableSalaryFlag
;
/**
* 激励应发 8位整数 2位小数
*/
@Schema
(
description
=
"激励应发"
)
private
BigDecimal
payableIncentiveSalary
;
/**
* 激励应发差额 8位整数 2位小数
*/
@Schema
(
description
=
"激励应发差额"
)
private
BigDecimal
payableIncentiveSalaryOffset
;
/**
* 激励应发差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"激励应发差额标识 0减少 1不变 2增加"
)
private
String
payableIncentiveSalaryFlag
;
/**
* 其他应发 8位整数 2位小数
*/
@Schema
(
description
=
"其他应发"
)
private
BigDecimal
payableOtherSalary
;
/**
* 其他应发差额 8位整数 2位小数
*/
@Schema
(
description
=
"其他应发差额"
)
private
BigDecimal
payableOtherSalaryOffset
;
/**
* 其他应发差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"其他应发差额标识 0减少 1不变 2增加"
)
private
String
payableOtherSalaryFlag
;
/**
* 应发合计 9位整数 2位小数
*/
@Schema
(
description
=
"应发合计"
)
private
BigDecimal
payableTotal
;
/**
* 应发合计差额 9位整数 2位小数
*/
@Schema
(
description
=
"应发合计差额"
)
private
BigDecimal
payableTotalOffset
;
/**
* 应发合计差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"应发合计差额标识 0减少 1不变 2增加"
)
private
String
payableTotalFlag
;
/**
* 单位社保 6位整数 2位小数
*/
@Schema
(
description
=
"单位社保"
)
private
BigDecimal
companySocial
;
/**
* 单位社保差额 6位整数 2位小数
*/
@Schema
(
description
=
"单位社保差额"
)
private
BigDecimal
companySocialOffset
;
/**
* 单位社保差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"单位社保差额标识 0减少 1不变 2增加"
)
private
String
companySocialFlag
;
/**
* 单位公积金 6位整数 2位小数
*/
@Schema
(
description
=
"单位公积金"
)
private
BigDecimal
companyAccFund
;
/**
* 单位公积金差额 6位整数 2位小数
*/
@Schema
(
description
=
"单位公积金差额"
)
private
BigDecimal
companyAccFundOffset
;
/**
* 单位公积金差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"单位公积金差额标识 0减少 1不变 2增加"
)
private
String
companyAccFundFlag
;
/**
* 个人社保 6位整数 2位小数
*/
@Schema
(
description
=
"个人社保"
)
private
BigDecimal
personalSocial
;
/**
* 个人社保差额 6位整数 2位小数
*/
@Schema
(
description
=
"个人社保差额"
)
private
BigDecimal
personalSocialOffset
;
/**
* 个人社保差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"个人社保差额标识 0减少 1不变 2增加"
)
private
String
personalSocialFlag
;
/**
* 个人公积金 6位整数 2位小数
*/
@Schema
(
description
=
"个人公积金"
)
private
BigDecimal
personalAccFund
;
/**
* 个人公积金差额 6位整数 2位小数
*/
@Schema
(
description
=
"个人公积金差额"
)
private
BigDecimal
personalAccFundOffset
;
/**
* 个人公积金差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"个人公积金差额标识 0减少 1不变 2增加"
)
private
String
personalAccFundFlag
;
/**
* 个人所得税 6位整数 2位小数
*/
@Schema
(
description
=
"个人所得税"
)
private
BigDecimal
indIncomeTax
;
/**
* 个人所得税差额 6位整数 2位小数
*/
@Schema
(
description
=
"个人所得税差额"
)
private
BigDecimal
indIncomeTaxOffset
;
/**
* 个人所得税差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"个人所得税差额标识 0减少 1不变 2增加"
)
private
String
indIncomeTaxFlag
;
/**
* 其他扣款 6位整数 2位小数
*/
@Schema
(
description
=
"其他扣款"
)
private
BigDecimal
otherDedutions
;
/**
* 其他扣款差额 6位整数 2位小数
*/
@Schema
(
description
=
"其他扣款差额"
)
private
BigDecimal
otherDedutionOffset
;
/**
* 其他扣款差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"其他扣款差额标识 0减少 1不变 2增加"
)
private
String
otherDedutionFalg
;
/**
* 扣款合计 7位整数 2位小数
*/
@Schema
(
description
=
"扣款合计"
)
private
BigDecimal
dedutionTotal
;
/**
* 扣款合计差额 7位整数 2位小数
*/
@Schema
(
description
=
"扣款合计差额"
)
private
BigDecimal
dedutionTotalOffset
;
/**
* 扣款合计差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"扣款合计差额标识 0减少 1不变 2增加"
)
private
String
dedutionTotalFlag
;
/**
* 实发工资 8位整数 2位小数
*/
@Schema
(
description
=
"实发工资"
)
private
BigDecimal
actualSalary
;
/**
* 实发工资差额 8位整数 2位小数
*/
@Schema
(
description
=
"实发工资差额"
)
private
BigDecimal
actualSalaryOffset
;
/**
* 实发工资差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"实发工资差额标识 0减少 1不变 2增加"
)
private
String
actualSalaryFlag
;
}
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/vo/salary/TSalaryTotalVO.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
vo
.
salary
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
lombok.ToString
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
/**
* 部门合计VO
*
* @author: wangweiguo
* @date: 2021/9/7
*/
@Setter
@Getter
@ToString
public
class
TSalaryTotalVO
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 应发合计 9位整数 2位小数
*/
@Schema
(
description
=
"合计:应发合计"
)
private
BigDecimal
payableTotal
;
/**
* 应发合计差额 9位整数 2位小数
*/
@Schema
(
description
=
"合计:应发合计差额"
)
private
BigDecimal
payableTotalOffset
;
/**
* 应发合计差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"应发合计差额标识 0减少 1不变 2增加"
)
private
String
payableTotalFlag
;
/**
* 实发工资 8位整数 2位小数
*/
@Schema
(
description
=
"合计:实发工资"
)
private
BigDecimal
actualSalary
;
/**
* 实发工资差额 8位整数 2位小数
*/
@Schema
(
description
=
"合计:实发工资差额"
)
private
BigDecimal
actualSalaryOffset
;
/**
* 实发工资差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"实发工资差额标识 0减少 1不变 2增加"
)
private
String
actualSalaryFlag
;
/**
* 人均成本 8位整数 2位小数
*/
@Schema
(
description
=
"合计:人均成本"
)
private
BigDecimal
perCapita
;
/**
* 人均成本差额 8位整数 2位小数
*/
@Schema
(
description
=
"合计:人均成本差额"
)
private
BigDecimal
perCapitaOffset
;
/**
* 人均成本差额标识 0减少 1不变 2增加
*/
@Schema
(
description
=
"人均成本差额标识 0减少 1不变 2增加"
)
private
String
perCapitaFlag
;
}
yifu-business/yifu-business-biz/pom.xml
View file @
c2bf35c2
...
...
@@ -22,6 +22,11 @@
<groupId>com.yifu.cloud.plus.v1</groupId>
<artifactId>yifu-common-seata</artifactId>
</dependency>-->
<dependency>
<groupId>
com.yifu.cloud.plus.v1
</groupId>
<artifactId>
yifu-business-api
</artifactId>
<version>
1.0.0
</version>
</dependency>
<!--选配: orm 模块-->
<dependency>
<groupId>
com.baomidou
</groupId>
...
...
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/controller/salary/TBusSalaryConfigController.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
controller
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfig
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryConfigService
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.AllArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.Valid
;
import
java.util.List
;
/**
* B端-薪资配置
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@RestController
@RequiredArgsConstructor
@RequestMapping
(
"/tbussalaryconfig"
)
@Tag
(
name
=
"B端-薪资配置"
)
public
class
TBusSalaryConfigController
{
private
final
TBusSalaryConfigService
tBusSalaryConfigService
;
/**
* 简单分页查询
*
* @param page 分页对象
* @param tBusSalaryConfig B端-薪资配置
* @return
*/
@Operation
(
summary
=
"简单分页查询"
)
@GetMapping
(
"/page"
)
public
R
<
IPage
<
TBusSalaryConfig
>>
getTBusSalaryConfigPage
(
Page
<
TBusSalaryConfig
>
page
,
TBusSalaryConfig
tBusSalaryConfig
)
{
return
new
R
<>(
tBusSalaryConfigService
.
getTBusSalaryConfigPage
(
page
,
tBusSalaryConfig
));
}
/**
* @Description: 列表(专为前端展现所用)
* @Author: hgw
* @Date: 2021/9/13 16:50
* @return:
**/
@Operation
(
description
=
"列表(专为前端展现所用)"
)
@GetMapping
(
"/getConfigList"
)
public
R
<
List
<
TBusSalaryConfig
>>
getConfigList
()
{
return
new
R
<>(
tBusSalaryConfigService
.
getConfigList
());
}
/**
* 通过id查询单条记录
*
* @param id
* @return R
*/
@Operation
(
description
=
"id查询"
)
@GetMapping
(
"/{id}"
)
public
R
<
TBusSalaryConfig
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
return
new
R
<>(
tBusSalaryConfigService
.
getById
(
id
));
}
/**
* 新增记录
*
* @param tBusSalaryConfig
* @return R
*/
@Operation
(
description
=
"新增(yifu-hro-business:tbussalaryconfig_add)"
)
@PostMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryconfig_add')"
)
public
R
<
Boolean
>
save
(
@Valid
@RequestBody
TBusSalaryConfig
tBusSalaryConfig
)
{
return
new
R
<>(
tBusSalaryConfigService
.
save
(
tBusSalaryConfig
));
}
/**
* 修改记录
*
* @param tBusSalaryConfig
* @return R
*/
@Operation
(
description
=
"修改(yifu-hro-business:tbussalaryconfig_edit)"
)
@SysLog
(
"修改B端-薪资配置"
)
@PutMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryconfig_edit')"
)
public
R
<
Boolean
>
update
(
@RequestBody
TBusSalaryConfig
tBusSalaryConfig
)
{
return
new
R
<>(
tBusSalaryConfigService
.
updateById
(
tBusSalaryConfig
));
}
/**
* 通过id删除一条记录
*
* @param id
* @return R
*/
@Operation
(
description
=
"删除(yifu-hro-business:tbussalaryconfig_del)"
)
@SysLog
(
"删除B端-薪资配置"
)
@DeleteMapping
(
"/{id}"
)
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryconfig_del')"
)
public
R
<
Boolean
>
removeById
(
@PathVariable
String
id
)
{
return
new
R
<>(
tBusSalaryConfigService
.
removeById
(
id
));
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/controller/salary/TBusSalaryConfigTitleResController.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
controller
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfigTitleRes
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryConfigTitleResService
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.AllArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.Valid
;
import
java.util.List
;
/**
* B端-原表表头与配置关联表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@RestController
@RequiredArgsConstructor
@RequestMapping
(
"/tbussalaryconfigtitleres"
)
@Tag
(
name
=
"B端-原表表头与配置关联表"
)
public
class
TBusSalaryConfigTitleResController
{
private
final
TBusSalaryConfigTitleResService
tBusSalaryConfigTitleResService
;
/**
* 简单分页查询
*
* @param page 分页对象
* @param tBusSalaryConfigTitleRes B端-原表表头与配置关联表
* @return
*/
@Operation
(
summary
=
"简单分页查询"
)
@GetMapping
(
"/page"
)
public
R
<
IPage
<
TBusSalaryConfigTitleRes
>>
getTBusSalaryConfigTitleResPage
(
Page
<
TBusSalaryConfigTitleRes
>
page
,
TBusSalaryConfigTitleRes
tBusSalaryConfigTitleRes
)
{
return
new
R
<>(
tBusSalaryConfigTitleResService
.
getTBusSalaryConfigTitleResPage
(
page
,
tBusSalaryConfigTitleRes
));
}
/**
* 获取list
* @return
*/
@Operation
(
summary
=
"获取之前保存的list,deptId必填"
)
@GetMapping
(
"/getResListByDeptId"
)
public
R
<
List
<
TBusSalaryConfigTitleRes
>>
getResListByDeptId
(
@RequestParam
Integer
deptId
)
{
return
new
R
<>(
tBusSalaryConfigTitleResService
.
getResListByDeptId
(
deptId
));
}
/**
* 通过id查询单条记录
*
* @param id
* @return R
*/
@Operation
(
summary
=
"id查询"
)
@GetMapping
(
"/{id}"
)
public
R
<
TBusSalaryConfigTitleRes
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
return
new
R
<>(
tBusSalaryConfigTitleResService
.
getById
(
id
));
}
/**
* 新增记录
*
* @param tBusSalaryConfigTitleRes
* @return R
*/
@Operation
(
summary
=
"新增(yifu-hro-business:tbussalaryconfigtitleres_add)"
)
@PostMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryconfigtitleres_add')"
)
public
R
<
Boolean
>
save
(
@Valid
@RequestBody
TBusSalaryConfigTitleRes
tBusSalaryConfigTitleRes
)
{
return
new
R
<>(
tBusSalaryConfigTitleResService
.
save
(
tBusSalaryConfigTitleRes
));
}
/**
* 修改记录
*
* @param tBusSalaryConfigTitleRes
* @return R
*/
@Operation
(
summary
=
"修改(yifu-hro-business:tbussalaryconfigtitleres_edit)"
)
@SysLog
(
"修改B端-原表表头与配置关联表"
)
@PutMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryconfigtitleres_edit')"
)
public
R
<
Boolean
>
update
(
@RequestBody
TBusSalaryConfigTitleRes
tBusSalaryConfigTitleRes
)
{
return
new
R
<>(
tBusSalaryConfigTitleResService
.
updateById
(
tBusSalaryConfigTitleRes
));
}
/**
* 通过id删除一条记录
*
* @param id
* @return R
*/
@Operation
(
summary
=
"删除(yifu-hro-business:tbussalaryconfigtitleres_del)"
)
@SysLog
(
"删除B端-原表表头与配置关联表"
)
@DeleteMapping
(
"/{id}"
)
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryconfigtitleres_del')"
)
public
R
<
Boolean
>
removeById
(
@PathVariable
String
id
)
{
return
new
R
<>(
tBusSalaryConfigTitleResService
.
removeById
(
id
));
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/controller/salary/TBusSalaryController.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
controller
.
salary
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalary
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryService
;
import
com.yifu.cloud.plus.v1.business.vo.salary.BusSalaryExportVo
;
import
com.yifu.cloud.plus.v1.business.vo.salary.SalaryImportVo
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
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.log.annotation.SysLog
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.AllArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.Valid
;
import
java.util.List
;
/**
* B端-薪酬主表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@RestController
@RequiredArgsConstructor
@RequestMapping
(
"/tbussalary"
)
@Tag
(
name
=
"B端-薪酬主表"
)
public
class
TBusSalaryController
{
private
final
TBusSalaryService
tBusSalaryService
;
/**
* 简单分页查询
*
* @param page 分页对象
* @param tBusSalary B端-薪酬主表
* @return
*/
@Operation
(
summary
=
"简单分页查询"
)
@GetMapping
(
"/page"
)
public
R
<
IPage
<
TBusSalary
>>
getTBusSalaryPage
(
Page
<
TBusSalary
>
page
,
TBusSalary
tBusSalary
)
{
return
new
R
<>(
tBusSalaryService
.
getTBusSalaryPage
(
page
,
tBusSalary
));
}
/**
* 通过id查询单条记录
*
* @param id
* @return R
*/
@Operation
(
summary
=
"id查询"
)
@GetMapping
(
"/{id}"
)
public
R
<
TBusSalary
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
return
new
R
<>(
tBusSalaryService
.
getById
(
id
));
}
/**
* 新增记录
*
* @param tBusSalary
* @return R
*/
@Operation
(
summary
=
"新增(yifu-hro-business:tbussalary_add)"
)
@PostMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalary_add')"
)
public
R
<
Boolean
>
save
(
@Valid
@RequestBody
TBusSalary
tBusSalary
)
{
return
new
R
<>(
tBusSalaryService
.
save
(
tBusSalary
));
}
/**
* 修改记录
*
* @param tBusSalary
* @return R
*/
@Operation
(
summary
=
"修改(yifu-hro-business:tbussalary_edit)"
)
@SysLog
(
"修改B端-薪酬主表"
)
@PutMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalary_edit')"
)
public
R
<
Boolean
>
update
(
@RequestBody
TBusSalary
tBusSalary
)
{
return
new
R
<>(
tBusSalaryService
.
updateById
(
tBusSalary
));
}
/**
* 通过id删除一条记录
*
* @param id
* @return R
*/
@Operation
(
summary
=
"删除(yifu-hro-business:tbussalary_del)"
)
@SysLog
(
"删除B端-薪酬主表"
)
@DeleteMapping
(
"/{id}"
)
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalary_del')"
)
public
R
<
Boolean
>
removeById
(
@PathVariable
String
id
)
{
return
new
R
<>(
tBusSalaryService
.
removeById
(
id
));
}
/**
* 通过id删除一条记录
*
* @return R
*/
@Operation
(
summary
=
"删除-根据部门与月份(yifu-hro-business:tbussalary_delete)"
)
@SysLog
(
"删除B端-薪酬主表-根据部门与月份"
)
@PostMapping
(
"/deleteByDeptAndMonth"
)
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalary_delete')"
)
public
R
<
String
>
deleteByDeptAndMonth
(
String
idStr
,
Integer
deptId
,
String
salaryMonth
)
{
if
(
Common
.
isEmpty
(
idStr
)
&&
Common
.
isEmpty
(
deptId
))
{
return
R
.
failed
(
"请传参!"
);
}
int
count
=
0
;
if
(
Common
.
isNotNull
(
idStr
))
{
String
[]
idArr
=
idStr
.
split
(
","
);
for
(
String
id
:
idArr
)
{
if
(
tBusSalaryService
.
removeById
(
id
))
{
count
++;
}
}
}
else
if
(
Common
.
isNotNull
(
deptId
)
&&
Common
.
isNotNull
(
salaryMonth
))
{
TBusSalary
busSalary
=
new
TBusSalary
();
busSalary
.
setDeptId
(
deptId
);
busSalary
.
setSalaryMonth
(
salaryMonth
);
QueryWrapper
<
TBusSalary
>
queryWrapperSa
=
new
QueryWrapper
<>();
queryWrapperSa
.
setEntity
(
busSalary
);
count
=
(
int
)
tBusSalaryService
.
count
(
queryWrapperSa
);
tBusSalaryService
.
remove
(
queryWrapperSa
);
}
if
(
count
==
0
)
{
return
R
.
failed
(
"无数据可删除!"
);
}
return
R
.
ok
(
"已删除:"
+
count
+
"条数据!"
);
}
/**
* @param salaryVo
* @Description: 导入
* @Author: hgw/
* @Date: 2021/9/6 16:23
* @return: com.yifu.cloud.v1.common.core.util.R<java.lang.String>
**/
@Operation
(
summary
=
"导入表格数据:contentList:表格数据list;deptId:部门id;salaryMonth:工资月份;resList:配置关系list;saveType:保存类型:0:保存;1不保存"
)
@SysLog
(
"B端导入表格数据"
)
@PostMapping
(
"/importBusSalary"
)
public
R
<
List
<
ErrorMessage
>>
importBusSalary
(
@RequestBody
SalaryImportVo
salaryVo
)
{
return
tBusSalaryService
.
importBusSalary
(
salaryVo
);
}
/**
* 简单分页查询
* @param tBusSalary B端-薪酬主表
*/
@Operation
(
summary
=
"导出"
)
@PostMapping
(
"/doExport"
)
public
R
<
BusSalaryExportVo
>
doExport
(
@RequestBody
TBusSalary
tBusSalary
)
{
return
new
R
<>(
tBusSalaryService
.
doExport
(
tBusSalary
));
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/controller/salary/TBusSalaryItemController.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
controller
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryItem
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryItemService
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.yifu.cloud.plus.v1.yifu.common.log.annotation.SysLog
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.AllArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
import
javax.validation.Valid
;
import
java.util.List
;
/**
* B端-薪酬明细表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@RestController
@RequiredArgsConstructor
@RequestMapping
(
"/tbussalaryitem"
)
@Tag
(
name
=
"B端-薪酬明细表"
)
public
class
TBusSalaryItemController
{
private
final
TBusSalaryItemService
tBusSalaryItemService
;
/**
* 简单分页查询
*
* @param page 分页对象
* @param tBusSalaryItem B端-薪酬明细表
* @return
*/
@Operation
(
summary
=
"简单分页查询"
)
@GetMapping
(
"/page"
)
public
R
<
IPage
<
TBusSalaryItem
>>
getTBusSalaryItemPage
(
Page
<
TBusSalaryItem
>
page
,
TBusSalaryItem
tBusSalaryItem
)
{
return
new
R
<>(
tBusSalaryItemService
.
getTBusSalaryItemPage
(
page
,
tBusSalaryItem
));
}
/**
* @param salaryId
* @Description: 工资详情
* @Author: hgw
* @Date: 2021/9/15 15:18
* @return: com.yifu.cloud.v1.common.core.util.R<com.baomidou.mybatisplus.core.metadata.IPage < com.yifu.cloud.v1.hrobusiness.api.entity.salary.TBusSalaryItem>>
**/
@Operation
(
summary
=
"工资详情"
)
@GetMapping
(
"/getListBySalaryId"
)
public
R
<
List
<
TBusSalaryItem
>>
getListBySalaryId
(
@RequestParam
String
salaryId
)
{
return
new
R
<>(
tBusSalaryItemService
.
getListBySalaryId
(
salaryId
));
}
/**
* 通过id查询单条记录
*
* @param id
* @return R
*/
@Operation
(
summary
=
"id查询"
)
@GetMapping
(
"/{id}"
)
public
R
<
TBusSalaryItem
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
return
new
R
<>(
tBusSalaryItemService
.
getById
(
id
));
}
/**
* 新增记录
*
* @param tBusSalaryItem
* @return R
*/
@Operation
(
summary
=
"新增(yifu-hro-business:tbussalaryitem_add)"
)
@PostMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryitem_add')"
)
public
R
<
Boolean
>
save
(
@Valid
@RequestBody
TBusSalaryItem
tBusSalaryItem
)
{
return
new
R
<>(
tBusSalaryItemService
.
save
(
tBusSalaryItem
));
}
/**
* 修改记录
*
* @param tBusSalaryItem
* @return R
*/
@Operation
(
summary
=
"修改(yifu-hro-business:tbussalaryitem_edit)"
)
@SysLog
(
"修改B端-薪酬明细表"
)
@PutMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryitem_edit')"
)
public
R
<
Boolean
>
update
(
@RequestBody
TBusSalaryItem
tBusSalaryItem
)
{
return
new
R
<>(
tBusSalaryItemService
.
updateById
(
tBusSalaryItem
));
}
/**
* 通过id删除一条记录
*
* @param id
* @return R
*/
@Operation
(
summary
=
"删除(yifu-hro-business:tbussalaryitem_del)"
)
@SysLog
(
"删除B端-薪酬明细表"
)
@DeleteMapping
(
"/{id}"
)
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussalaryitem_del')"
)
public
R
<
Boolean
>
removeById
(
@PathVariable
String
id
)
{
return
new
R
<>(
tBusSalaryItemService
.
removeById
(
id
));
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/controller/salary/TSalaryStatisticsController.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
controller
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.yifu.cloud.plus.v1.business.query.salary.*
;
import
com.yifu.cloud.plus.v1.business.service.salary.TSalaryStatisticsDepartService
;
import
com.yifu.cloud.plus.v1.business.service.salary.TSalaryStatisticsPersonalService
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsDepartVO
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsPersonalVO
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.AllArgsConstructor
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.List
;
/**
* 薪资变动统计表 controller
* @author: wangweiguo
* @date: 2021-09-06
*/
@RestController
@RequiredArgsConstructor
@RequestMapping
(
"/salaryStatistics"
)
@Tag
(
name
=
"薪资变动统计表相关api"
)
public
class
TSalaryStatisticsController
{
private
final
TSalaryStatisticsDepartService
salaryStatisticsDepartService
;
private
final
TSalaryStatisticsPersonalService
salaryStatisticsPersonalService
;
/**
* 部门统计分页查询: 部门统计条件分页查询
* @param query 部门统计查询条件
* @return: R<IPage<TSalaryStatisticsDepartVO>>
* @author: wangweiguo
* @date: 2021-09-06
*/
@Operation
(
summary
=
"部门统计分页查询: 部门统计条件分页查询"
)
@GetMapping
(
"/depart/getListByPage"
)
public
R
<
IPage
<
TSalaryStatisticsDepartVO
>>
getDepartListByPage
(
TSalaryStatisticsDepartPageQuery
query
)
{
return
this
.
salaryStatisticsDepartService
.
getListByPage
(
query
);
}
/**
* 部门统计列表查询: 部门统计条件查询
* @param query 部门统计查询条件
* @return: R<List<TSalaryStatisticsDepartVO>>
* @author: wangweiguo
* @date: 2021-09-06
*/
@Operation
(
summary
=
"部门统计列表查询: 部门统计条件查询"
)
@GetMapping
(
"/depart/getList"
)
public
R
<
List
<
TSalaryStatisticsDepartVO
>>
getDepartList
(
TSalaryStatisticsDepartQuery
query
)
{
return
this
.
salaryStatisticsDepartService
.
getList
(
query
);
}
/**
* 部门合计: 条件查询部门合计
* @param query 部门统计查询条件
* @return: R<TSalaryTotalVO>
* @author: wangweiguo
* @date: 2021-09-07
*/
@Operation
(
summary
=
"部门合计: 条件查询部门合计"
)
@GetMapping
(
"/depart/getSumDepartByParams"
)
public
R
<
TSalaryTotalVO
>
getSumDepartByParams
(
TSalaryStatisticsDepartQuery
query
)
{
query
.
setDepartLevel
(
null
);
return
this
.
salaryStatisticsDepartService
.
getSumDepartByParams
(
query
);
}
/**
* 部门统计查询: 根据部门id查询当前部门合计
* @param query 单个部门统计查询条件
* @return: R<TSalaryTotalVO>
* @author: wangweiguo
* @date: 2021-09-16
*/
@Operation
(
summary
=
"部门统计查询: 根据部门id查询当前部门合计"
)
@GetMapping
(
"/depart/getCurDepartSumData"
)
public
R
<
TSalaryTotalVO
>
getCurDepartSumData
(
TSalaryCurDepartQuery
query
)
{
return
this
.
salaryStatisticsDepartService
.
getCurDepartSumData
(
query
);
}
/**
* 查询: 根据部门id查询当前部门统计数据
* @param query 部门统计查询条件
* @return: R<TSalaryTotalVO>
* @author: wangweiguo
* @date: 2021-09-16
*/
@Operation
(
summary
=
"部门统计查询: 根据部门id查询当前部门统计数据"
)
@GetMapping
(
"/depart/getCurDepartData"
)
public
R
<
TSalaryStatisticsDepartVO
>
getCurDepartData
(
TSalaryCurDepartQuery
query
)
{
return
this
.
salaryStatisticsDepartService
.
getCurDepartData
(
query
);
}
/**
* 分页查询: 条件分页查询
*
* @param query 单个部门统计查询条件
* @return: R<TSalaryStatisticsDepartVO>
* @author: wangweiguo
* @date: 2021-09-06
*/
@Operation
(
summary
=
"分页查询: 条件分页查询"
)
@GetMapping
(
"/person/getListByPage"
)
public
R
<
IPage
<
TSalaryStatisticsPersonalVO
>>
getPersonListByPage
(
TSalaryStatisticsPersonalPageQuery
query
)
{
return
this
.
salaryStatisticsPersonalService
.
getListByPage
(
query
);
}
/**
* 个人统计列表查询: 个人统计条件查询
* @param query 个人统计查询条件
* @return: R<List<TSalaryStatisticsPersonalVO>>
* @author: wangweiguo
* @date: 2021-09-07
*/
@Operation
(
summary
=
"个人统计列表查询: 个人统计条件查询"
)
@GetMapping
(
"/person/getList"
)
public
R
<
List
<
TSalaryStatisticsPersonalVO
>>
getPersonList
(
TSalaryStatisticsPersonalQuery
query
)
{
return
this
.
salaryStatisticsPersonalService
.
getList
(
query
);
}
/**
* 个人合计: 条件查询个人合计
* @param query 个人统计查询条件
* @return: R<TSalaryTotalVO>
* @author: wangweiguo
* @date: 2021-09-07
*/
@Operation
(
summary
=
"个人合计: 条件查询个人合计"
)
@GetMapping
(
"/person/getSumPersonByParams"
)
public
R
<
TSalaryTotalVO
>
getSumPersonByParams
(
TSalaryStatisticsPersonalQuery
query
)
{
return
this
.
salaryStatisticsPersonalService
.
getSumPersonalByParams
(
query
);
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/mapper/salary/TBusSalaryConfigMapper.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
mapper
.
salary
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfig
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* B端-薪资配置
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Mapper
public
interface
TBusSalaryConfigMapper
extends
BaseMapper
<
TBusSalaryConfig
>
{
/**
* B端-薪资配置简单分页查询
*
* @param tBusSalaryConfig B端-薪资配置
* @return
*/
IPage
<
TBusSalaryConfig
>
getTBusSalaryConfigPage
(
Page
<
TBusSalaryConfig
>
page
,
@Param
(
"tBusSalaryConfig"
)
TBusSalaryConfig
tBusSalaryConfig
);
List
<
TBusSalaryConfig
>
getConfigList
();
/**
* @Description: 获取必要列的list
* @Author: hgw
* @Date: 2021/9/10 14:52
* @return: java.util.List<java.lang.String>
**/
List
<
String
>
getMustList
();
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/mapper/salary/TBusSalaryConfigTitleResMapper.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
mapper
.
salary
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfigTitleRes
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* B端-原表表头与配置关联表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Mapper
public
interface
TBusSalaryConfigTitleResMapper
extends
BaseMapper
<
TBusSalaryConfigTitleRes
>
{
/**
* B端-原表表头与配置关联表简单分页查询
*
* @param tBusSalaryConfigTitleRes B端-原表表头与配置关联表
* @return
*/
IPage
<
TBusSalaryConfigTitleRes
>
getTBusSalaryConfigTitleResPage
(
Page
<
TBusSalaryConfigTitleRes
>
page
,
@Param
(
"tBusSalaryConfigTitleRes"
)
TBusSalaryConfigTitleRes
tBusSalaryConfigTitleRes
);
/**
* @param deptId
* @Description: list
* @Author: hgw
* @Date: 2021/9/10 16:35
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.salary.TBusSalaryConfigTitleRes>
**/
List
<
TBusSalaryConfigTitleRes
>
getResListByDeptId
(
@Param
(
"deptId"
)
Integer
deptId
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/mapper/salary/TBusSalaryItemMapper.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
mapper
.
salary
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryItem
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* B端-薪酬明细表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Mapper
public
interface
TBusSalaryItemMapper
extends
BaseMapper
<
TBusSalaryItem
>
{
/**
* B端-薪酬明细表简单分页查询
*
* @param tBusSalaryItem B端-薪酬明细表
* @return
*/
IPage
<
TBusSalaryItem
>
getTBusSalaryItemPage
(
Page
<
TBusSalaryItem
>
page
,
@Param
(
"tBusSalaryItem"
)
TBusSalaryItem
tBusSalaryItem
);
List
<
TBusSalaryItem
>
getListBySalaryId
(
@Param
(
"salaryId"
)
String
salaryId
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/mapper/salary/TBusSalaryMapper.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
mapper
.
salary
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalary
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* B端-薪酬主表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Mapper
public
interface
TBusSalaryMapper
extends
BaseMapper
<
TBusSalary
>
{
/**
* B端-薪酬主表简单分页查询
*
* @param tBusSalary B端-薪酬主表
* @return
*/
IPage
<
TBusSalary
>
getTBusSalaryPage
(
Page
<
TBusSalary
>
page
,
@Param
(
"tBusSalary"
)
TBusSalary
tBusSalary
);
List
<
TBusSalary
>
doExport
(
@Param
(
"idList"
)
List
<
String
>
idList
,
@Param
(
"tBusSalary"
)
TBusSalary
tBusSalary
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/mapper/salary/TSalaryStatisticsDepartMapper.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
mapper
.
salary
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TSalaryStatisticsDepart
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryCurDepartQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsDepartPageQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsDepartQuery
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsDepartVO
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @description: 部门薪资变动统计表 mapper
* @Entity com.yifu.cloud.v1.hrobusiness.api.entity.salary.TSalaryStatisticsDepart
* @author: wangweiguo
* @date: 2021-09-06
*/
@Mapper
public
interface
TSalaryStatisticsDepartMapper
extends
BaseMapper
<
TSalaryStatisticsDepart
>
{
Page
<
TSalaryStatisticsDepartVO
>
getListByPage
(
Page
<
TSalaryStatisticsDepartVO
>
page
,
@Param
(
"query"
)
TSalaryStatisticsDepartPageQuery
query
);
List
<
TSalaryStatisticsDepartVO
>
getListByPage
(
@Param
(
"query"
)
TSalaryStatisticsDepartQuery
query
);
TSalaryTotalVO
sumSalaryDepart
(
@Param
(
"query"
)
TSalaryStatisticsDepartQuery
query
);
TSalaryTotalVO
getCurDepartSumData
(
@Param
(
"query"
)
TSalaryCurDepartQuery
query
);
TSalaryStatisticsDepartVO
getCurDepartData
(
@Param
(
"query"
)
TSalaryCurDepartQuery
query
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/mapper/salary/TSalaryStatisticsPersonalMapper.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
mapper
.
salary
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TSalaryStatisticsPersonal
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsPersonalPageQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsPersonalQuery
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsPersonalVO
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* @description: 个人薪资变动统计表 mapper
* @Entity com.yifu.cloud.v1.hrobusiness.api.entity.salary.TSalaryStatisticsPersonal
* @author: wangweiguo
* @date: 2021-09-07
*/
@Mapper
public
interface
TSalaryStatisticsPersonalMapper
extends
BaseMapper
<
TSalaryStatisticsPersonal
>
{
Page
<
TSalaryStatisticsPersonalVO
>
getListByPage
(
Page
<
TSalaryStatisticsPersonalVO
>
page
,
@Param
(
"query"
)
TSalaryStatisticsPersonalPageQuery
query
);
List
<
TSalaryStatisticsPersonalVO
>
getListByPage
(
@Param
(
"query"
)
TSalaryStatisticsPersonalQuery
query
);
TSalaryTotalVO
sumSalaryPerson
(
@Param
(
"query"
)
TSalaryStatisticsPersonalQuery
query
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/mapper/system/TBusDeptMapper.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
mapper
.
system
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.system.TBusDept
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* B端部门表
*
* @author hgw
* @date 2021-08-10 10:38:44
*/
@Mapper
public
interface
TBusDeptMapper
extends
BaseMapper
<
TBusDept
>
{
/**
* B端部门表简单分页查询
*
* @param tBusDept B端部门表
* @return
*/
IPage
<
TBusDept
>
getTBusDeptPage
(
Page
<
TBusDept
>
page
,
@Param
(
"tBusDept"
)
TBusDept
tBusDept
);
List
<
TBusDept
>
getTBusDeptList
(
@Param
(
"tBusDept"
)
TBusDept
tBusDept
);
List
<
TBusDept
>
getTBusDeptListAsso
(
@Param
(
"tBusDept"
)
TBusDept
tBusDept
);
List
<
TBusDept
>
getTBusDeptSubList
(
@Param
(
"id"
)
int
id
,
@Param
(
"treeLogo"
)
String
treeLogo
);
List
<
TBusDept
>
getDeptByName
(
@Param
(
"id"
)
Integer
id
,
@Param
(
"name"
)
String
name
);
/**
* @param oldLogo
* @param newLogo
* @Description: 批量更新子集的treeLogo
* @Author: hgw
* @Date: 2021/8/13 17:05
* @return: int
**/
int
updateAllTreeLogo
(
@Param
(
"oldLogo"
)
String
oldLogo
,
@Param
(
"newLogo"
)
String
newLogo
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/TBusSalaryConfigService.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfig
;
import
java.util.List
;
import
java.util.Map
;
/**
* B端-薪资配置
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
public
interface
TBusSalaryConfigService
extends
IService
<
TBusSalaryConfig
>
{
/**
* B端-薪资配置简单分页查询
*
* @param tBusSalaryConfig B端-薪资配置
* @return
*/
IPage
<
TBusSalaryConfig
>
getTBusSalaryConfigPage
(
Page
<
TBusSalaryConfig
>
page
,
TBusSalaryConfig
tBusSalaryConfig
);
/**
* @Description: 列表
* @Author: hgw
* @Date: 2021/9/13 16:31
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.salary.TBusSalaryConfig>
**/
List
<
TBusSalaryConfig
>
getConfigList
();
/**
* @param
* @Description: 必填项map
* @Author: hgw
* @Date: 2021/9/13 16:30
* @return: java.util.Map<java.lang.String, java.lang.Integer>
**/
Map
<
String
,
Integer
>
getMustMap
();
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/TBusSalaryConfigTitleResService.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfigTitleRes
;
import
com.yifu.cloud.plus.v1.business.entity.system.TBusDept
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser
;
import
java.util.List
;
/**
* B端-原表表头与配置关联表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
public
interface
TBusSalaryConfigTitleResService
extends
IService
<
TBusSalaryConfigTitleRes
>
{
/**
* B端-原表表头与配置关联表简单分页查询
*
* @param tBusSalaryConfigTitleRes B端-原表表头与配置关联表
* @return
*/
IPage
<
TBusSalaryConfigTitleRes
>
getTBusSalaryConfigTitleResPage
(
Page
<
TBusSalaryConfigTitleRes
>
page
,
TBusSalaryConfigTitleRes
tBusSalaryConfigTitleRes
);
/**
* @param deptId
* @Description: 获取list
* @Author: hgw
* @Date: 2021/9/10 16:37
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.salary.TBusSalaryConfigTitleRes>
**/
List
<
TBusSalaryConfigTitleRes
>
getResListByDeptId
(
Integer
deptId
);
/**
* @param mTitleConfig
* @param saveType
* @param user
* @param dept
* @Description: 保存或更新-配置
* @Author: hgw
* @Date: 2021/9/8 18:22
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.salary.TBusSalaryConfigTitleRes>
**/
List
<
TBusSalaryConfigTitleRes
>
saveOrUpdateRes
(
List
<
TBusSalaryConfigTitleRes
>
mTitleConfig
,
Integer
saveType
,
YifuUser
user
,
TBusDept
dept
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/TBusSalaryItemService.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryItem
;
import
java.util.List
;
/**
* B端-薪酬明细表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
public
interface
TBusSalaryItemService
extends
IService
<
TBusSalaryItem
>
{
/**
* B端-薪酬明细表简单分页查询
*
* @param tBusSalaryItem B端-薪酬明细表
* @return
*/
IPage
<
TBusSalaryItem
>
getTBusSalaryItemPage
(
Page
<
TBusSalaryItem
>
page
,
TBusSalaryItem
tBusSalaryItem
);
/**
* @param salaryId
* @Description: 获取list
* @Author: hgw
* @Date: 2021/9/15 14:56
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.salary.TBusSalaryItem>
**/
List
<
TBusSalaryItem
>
getListBySalaryId
(
String
salaryId
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/TBusSalaryService.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalary
;
import
com.yifu.cloud.plus.v1.business.vo.salary.BusSalaryExportVo
;
import
com.yifu.cloud.plus.v1.business.vo.salary.SalaryImportVo
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
java.util.List
;
/**
* B端-薪酬主表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
public
interface
TBusSalaryService
extends
IService
<
TBusSalary
>
{
/**
* B端-薪酬主表简单分页查询
*
* @param tBusSalary B端-薪酬主表
* @return
*/
IPage
<
TBusSalary
>
getTBusSalaryPage
(
Page
<
TBusSalary
>
page
,
TBusSalary
tBusSalary
);
/**
* @param tBusSalary
* @Description: 导出
* @Author: hgw
* @Date: 2021/9/13 17:16
* @return: com.yifu.cloud.v1.hrobusiness.api.vo.salary.BusSalaryExportVo
**/
BusSalaryExportVo
doExport
(
TBusSalary
tBusSalary
);
/**
* @param salaryVo
* @Description: 导入
* @Author: hgw
* @Date: 2021/9/6 16:25
* @return: com.yifu.cloud.v1.common.core.util.R<java.util.List < java.util.List < com.yifu.cloud.v1.common.core.util.bean.ErrorMessage>>>
**/
R
<
List
<
ErrorMessage
>>
importBusSalary
(
SalaryImportVo
salaryVo
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/TSalaryStatisticsDepartService.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TSalaryStatisticsDepart
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryCurDepartQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsDepartPageQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsDepartQuery
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsDepartVO
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
java.util.List
;
/**
* @description: 薪资变动统计表 service层
* @author: wangweiguo
* @date: 2021-09-06
*/
public
interface
TSalaryStatisticsDepartService
extends
IService
<
TSalaryStatisticsDepart
>
{
/**
* 分页查询: 部门统计条件分页查询
* @param query 部门统计查询条件
* @return: R<IPage<TSalaryStatisticsDepartVO>>
* @author: wangweiguo
* @date: 2021-09-06
*/
R
<
IPage
<
TSalaryStatisticsDepartVO
>>
getListByPage
(
TSalaryStatisticsDepartPageQuery
query
);
/**
* 列表查询: 部门统计条件查询
* @param query 部门统计查询条件
* @return: R<List<TSalaryStatisticsDepartVO>>
* @author: wangweiguo
* @date: 2021-09-06
*/
R
<
List
<
TSalaryStatisticsDepartVO
>>
getList
(
TSalaryStatisticsDepartQuery
query
);
/**
* 查询: 根据部门id查询当前部门合计
*
* @param query 单个部门统计查询条件
* @return: R<TSalaryTotalVO>
* @author: wangweiguo
* @date: 2021-09-16
*/
R
<
TSalaryTotalVO
>
getCurDepartSumData
(
TSalaryCurDepartQuery
query
);
/**
* 查询: 根据部门id查询当前部门统计数据
*
* @param query 单个部门统计查询条件
* @return: R<TSalaryStatisticsDepartVO>
* @author: wangweiguo
* @date: 2021-09-16
*/
R
<
TSalaryStatisticsDepartVO
>
getCurDepartData
(
TSalaryCurDepartQuery
query
);
/**
* 合计: 条件查询部门合计
* @param query 部门统计查询条件
* @return: R<TSalaryDepartTotalVO>
* @author: wangweiguo
* @date: 2021-09-07
*/
R
<
TSalaryTotalVO
>
getSumDepartByParams
(
TSalaryStatisticsDepartQuery
query
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/TSalaryStatisticsPersonalService.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TSalaryStatisticsPersonal
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsPersonalPageQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsPersonalQuery
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsPersonalVO
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
java.util.List
;
/**
* @description: 个人薪资变动统计表 service层
* @author: wangweiguo
* @date: 2021-09-07
*/
public
interface
TSalaryStatisticsPersonalService
extends
IService
<
TSalaryStatisticsPersonal
>
{
/**
* @description: 分页查询: 条件分页查询
* @param query 查询条件
* @return: R<IPage<TSalaryStatisticsPersonalVO>>
* @author: wangweiguo
* @date: 2021-09-07
*/
R
<
IPage
<
TSalaryStatisticsPersonalVO
>>
getListByPage
(
TSalaryStatisticsPersonalPageQuery
query
);
/**
* 个人统计列表查询: 个人统计条件查询
* @param query 个人统计查询条件
* @return: R<List<TSalaryStatisticsPersonalVO>>
* @author: wangweiguo
* @date: 2021-09-07
*/
R
<
List
<
TSalaryStatisticsPersonalVO
>>
getList
(
TSalaryStatisticsPersonalQuery
query
);
/**
* 个人合计: 条件查询个人合计
* @param query 个人统计查询条件
* @return: R<TSalaryTotalVO>
* @author: wangweiguo
* @date: 2021-09-07
*/
R
<
TSalaryTotalVO
>
getSumPersonalByParams
(
TSalaryStatisticsPersonalQuery
query
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/impl/TBusSalaryConfigServiceImpl.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfig
;
import
com.yifu.cloud.plus.v1.business.mapper.salary.TBusSalaryConfigMapper
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryConfigService
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
org.springframework.stereotype.Service
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* B端-薪资配置
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Service
public
class
TBusSalaryConfigServiceImpl
extends
ServiceImpl
<
TBusSalaryConfigMapper
,
TBusSalaryConfig
>
implements
TBusSalaryConfigService
{
/**
* B端-薪资配置简单分页查询
*
* @param tBusSalaryConfig B端-薪资配置
* @return
*/
@Override
public
IPage
<
TBusSalaryConfig
>
getTBusSalaryConfigPage
(
Page
<
TBusSalaryConfig
>
page
,
TBusSalaryConfig
tBusSalaryConfig
)
{
return
baseMapper
.
getTBusSalaryConfigPage
(
page
,
tBusSalaryConfig
);
}
/**
* B端-薪资配置简单list
*
* @return
*/
@Override
public
List
<
TBusSalaryConfig
>
getConfigList
()
{
return
baseMapper
.
getConfigList
();
}
/**
* 获取必要列的Map
*/
@Override
public
Map
<
String
,
Integer
>
getMustMap
()
{
List
<
String
>
mustList
=
baseMapper
.
getMustList
();
Map
<
String
,
Integer
>
mustMap
=
new
HashMap
<>();
if
(
mustList
!=
null
&&
!
mustList
.
isEmpty
())
{
for
(
String
name
:
mustList
)
{
mustMap
.
put
(
name
,
CommonConstants
.
ONE_INT
);
}
}
return
mustMap
;
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/impl/TBusSalaryConfigTitleResServiceImpl.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfigTitleRes
;
import
com.yifu.cloud.plus.v1.business.entity.system.TBusDept
;
import
com.yifu.cloud.plus.v1.business.mapper.salary.TBusSalaryConfigTitleResMapper
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryConfigTitleResService
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
import
com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser
;
import
org.springframework.stereotype.Service
;
import
java.time.LocalDateTime
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* B端-原表表头与配置关联表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Service
public
class
TBusSalaryConfigTitleResServiceImpl
extends
ServiceImpl
<
TBusSalaryConfigTitleResMapper
,
TBusSalaryConfigTitleRes
>
implements
TBusSalaryConfigTitleResService
{
/**
* B端-原表表头与配置关联表简单分页查询
*
* @param tBusSalaryConfigTitleRes B端-原表表头与配置关联表
* @return
*/
@Override
public
IPage
<
TBusSalaryConfigTitleRes
>
getTBusSalaryConfigTitleResPage
(
Page
<
TBusSalaryConfigTitleRes
>
page
,
TBusSalaryConfigTitleRes
tBusSalaryConfigTitleRes
)
{
return
baseMapper
.
getTBusSalaryConfigTitleResPage
(
page
,
tBusSalaryConfigTitleRes
);
}
/**
* list
* @return
*/
@Override
public
List
<
TBusSalaryConfigTitleRes
>
getResListByDeptId
(
Integer
deptId
)
{
return
baseMapper
.
getResListByDeptId
(
deptId
);
}
/**
* @param mTitleConfig
* @param saveType
* @param user
* @param dept
* @Description: 保存或更新-配置
* @Author: hgw
* @Date: 2021/9/8 18:22
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.salary.TBusSalaryConfigTitleRes>
**/
@Override
public
List
<
TBusSalaryConfigTitleRes
>
saveOrUpdateRes
(
List
<
TBusSalaryConfigTitleRes
>
mTitleConfig
,
Integer
saveType
,
YifuUser
user
,
TBusDept
dept
)
{
TBusSalaryConfigTitleRes
mc
=
new
TBusSalaryConfigTitleRes
();
mc
.
setDeptId
(
dept
.
getId
());
mc
.
setSaveType
(
saveType
);
QueryWrapper
<
TBusSalaryConfigTitleRes
>
queryWrapperMc
=
new
QueryWrapper
<>();
queryWrapperMc
.
setEntity
(
mc
);
List
<
TBusSalaryConfigTitleRes
>
mcList
=
this
.
list
(
queryWrapperMc
);
Map
<
String
,
String
>
mcMap
=
new
HashMap
<>();
for
(
TBusSalaryConfigTitleRes
mcs
:
mcList
)
{
mcMap
.
put
(
mcs
.
getConfigId
(),
mcs
.
getId
());
}
// 回传list
List
<
TBusSalaryConfigTitleRes
>
mTitleConfigList
=
new
ArrayList
<>();
// 组装数据回传
this
.
initMcList
(
mTitleConfig
,
user
,
mcMap
,
mTitleConfigList
,
saveType
);
return
mTitleConfigList
;
}
/**
* @param mTitleConfig
* @param user
* @param mcMap
* @param mTitleConfigList
* @Description: 组装数据回传
* @Author: hgw
* @Date: 2021-9-8 18:19:52
* @return: void
**/
private
void
initMcList
(
List
<
TBusSalaryConfigTitleRes
>
mTitleConfig
,
YifuUser
user
,
Map
<
String
,
String
>
mcMap
,
List
<
TBusSalaryConfigTitleRes
>
mTitleConfigList
,
Integer
saveType
)
{
for
(
TBusSalaryConfigTitleRes
m
:
mTitleConfig
)
{
m
.
setSaveType
(
saveType
);
if
(
mcMap
.
get
(
m
.
getConfigId
())
!=
null
)
{
m
.
setId
(
mcMap
.
get
(
m
.
getConfigId
()));
}
if
(
Common
.
isEmpty
(
m
.
getId
()))
{
if
(
Common
.
isNotNull
(
m
.
getExcelTitle
()))
{
this
.
save
(
m
,
user
);
mTitleConfigList
.
add
(
m
);
}
}
else
{
if
(
Common
.
isEmpty
(
m
.
getExcelTitle
()))
{
this
.
removeById
(
m
);
}
else
{
this
.
updateById
(
m
);
mTitleConfigList
.
add
(
m
);
}
}
}
}
/**
* 新增记录
*
* @param mTitleConfig
* @return R
*/
private
void
save
(
TBusSalaryConfigTitleRes
mTitleConfig
,
YifuUser
user
)
{
mTitleConfig
.
setCreateUserId
(
user
.
getId
());
mTitleConfig
.
setCreateUserName
(
user
.
getNickname
());
mTitleConfig
.
setCreateTime
(
LocalDateTime
.
now
());
this
.
save
(
mTitleConfig
);
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/impl/TBusSalaryItemServiceImpl.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryItem
;
import
com.yifu.cloud.plus.v1.business.mapper.salary.TBusSalaryItemMapper
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryItemService
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* B端-薪酬明细表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Service
public
class
TBusSalaryItemServiceImpl
extends
ServiceImpl
<
TBusSalaryItemMapper
,
TBusSalaryItem
>
implements
TBusSalaryItemService
{
/**
* B端-薪酬明细表简单分页查询
*
* @param tBusSalaryItem B端-薪酬明细表
* @return
*/
@Override
public
IPage
<
TBusSalaryItem
>
getTBusSalaryItemPage
(
Page
<
TBusSalaryItem
>
page
,
TBusSalaryItem
tBusSalaryItem
)
{
return
baseMapper
.
getTBusSalaryItemPage
(
page
,
tBusSalaryItem
);
}
@Override
public
List
<
TBusSalaryItem
>
getListBySalaryId
(
String
salaryId
)
{
return
baseMapper
.
getListBySalaryId
(
salaryId
);
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/impl/TBusSalaryServiceImpl.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalary
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfig
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfigTitleRes
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryItem
;
import
com.yifu.cloud.plus.v1.business.entity.system.TBusDept
;
import
com.yifu.cloud.plus.v1.business.mapper.salary.TBusSalaryMapper
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryConfigService
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryConfigTitleResService
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryItemService
;
import
com.yifu.cloud.plus.v1.business.service.salary.TBusSalaryService
;
import
com.yifu.cloud.plus.v1.business.service.system.TBusDeptService
;
import
com.yifu.cloud.plus.v1.business.util.SalaryUtil
;
import
com.yifu.cloud.plus.v1.business.vo.salary.BusSalaryExportVo
;
import
com.yifu.cloud.plus.v1.business.vo.salary.InitVo
;
import
com.yifu.cloud.plus.v1.business.vo.salary.KeyValueVo
;
import
com.yifu.cloud.plus.v1.business.vo.salary.SalaryImportVo
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
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.vo.YifuUser
;
import
com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
java.lang.reflect.Field
;
import
java.math.BigDecimal
;
import
java.time.LocalDateTime
;
import
java.util.*
;
/**
* B端-薪酬主表
*
* @author hgw
* @date 2021-09-06 11:10:32
*/
@Service
public
class
TBusSalaryServiceImpl
extends
ServiceImpl
<
TBusSalaryMapper
,
TBusSalary
>
implements
TBusSalaryService
{
@Autowired
private
TBusDeptService
busDeptService
;
@Autowired
private
TBusSalaryConfigService
busSalaryConfigService
;
@Autowired
private
TBusSalaryItemService
busSalaryItemService
;
@Autowired
private
TBusSalaryConfigTitleResService
busSalaryConfigTitleResService
;
/**
* @param tBusSalary
* @Description: 导出
* @Author: hgw
* @Date: 2021/9/13 17:01
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.salary.TBusSalary>
**/
@Override
public
BusSalaryExportVo
doExport
(
TBusSalary
tBusSalary
)
{
BusSalaryExportVo
vo
=
new
BusSalaryExportVo
();
List
<
String
>
idList
=
null
;
if
(
Common
.
isNotNull
(
tBusSalary
.
getIdStr
()))
{
idList
=
Common
.
initStrToList
(
tBusSalary
.
getIdStr
(),
CommonConstants
.
COMMA_STRING
);
}
List
<
TBusSalary
>
salaryList
=
baseMapper
.
doExport
(
idList
,
tBusSalary
);
vo
.
setSalaryList
(
salaryList
);
if
(
salaryList
!=
null
&&
!
salaryList
.
isEmpty
())
{
Set
<
String
>
title
=
new
HashSet
<>();
List
<
TBusSalaryItem
>
itemList
;
for
(
TBusSalary
salary
:
salaryList
)
{
itemList
=
busSalaryItemService
.
getListBySalaryId
(
salary
.
getId
());
if
(
itemList
!=
null
&&
!
itemList
.
isEmpty
())
{
salary
.
setBisList
(
itemList
);
for
(
TBusSalaryItem
items
:
itemList
)
{
title
.
add
(
items
.
getCnName
());
}
}
}
vo
.
setTitleSet
(
title
);
}
return
vo
;
}
/**
* B端-薪酬主表简单分页查询
*
* @param tBusSalary B端-薪酬主表
* @return
*/
@Override
public
IPage
<
TBusSalary
>
getTBusSalaryPage
(
Page
<
TBusSalary
>
page
,
TBusSalary
tBusSalary
)
{
return
baseMapper
.
getTBusSalaryPage
(
page
,
tBusSalary
);
}
/**
* @param salaryVo
* @Description: 导入
* @Author: hgw
* @Date: 2021/9/6 16:33
* @return: com.yifu.cloud.v1.common.core.util.R<java.util.List < com.yifu.cloud.v1.common.core.util.bean.ErrorMessage>>
**/
@Override
public
R
<
List
<
ErrorMessage
>>
importBusSalary
(
SalaryImportVo
salaryVo
)
{
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
user
==
null
||
user
.
getId
()
==
null
)
{
return
R
.
failed
(
"未获取到登录人信息!"
);
}
List
<
ErrorMessage
>
errorList
=
new
ArrayList
<>();
StringBuilder
error
=
new
StringBuilder
();
// 初步判断全局属性有没有空的
Map
<
String
,
TBusDept
>
deptMap
=
busDeptService
.
getAllDeptMap
();
TBusDept
dept
=
this
.
judgeFirst
(
error
,
salaryVo
);
if
(
error
.
length
()
>
0
&&
!
""
.
equals
(
error
.
toString
())
&&
!
"null"
.
equals
(
error
.
toString
()))
{
return
R
.
failed
(
error
.
toString
());
}
// 再次判断每个人的详情
this
.
judgeSecond
(
user
,
deptMap
,
dept
,
errorList
,
salaryVo
);
if
(!
errorList
.
isEmpty
())
{
return
R
.
failed
(
errorList
,
"导入失败"
);
}
else
{
return
R
.
ok
();
}
}
/**
* @Description: 初步判断全局属性有没有空的
* @Author: hgw
* @Date: 2021/9/6 16:41
**/
private
TBusDept
judgeFirst
(
StringBuilder
error
,
SalaryImportVo
salaryVo
)
{
if
(
salaryVo
.
getContentList
()
==
null
||
salaryVo
.
getContentList
().
isEmpty
())
{
error
.
append
(
"表格数据不可为空!"
);
}
if
(
salaryVo
.
getResList
()
==
null
||
salaryVo
.
getResList
().
isEmpty
())
{
error
.
append
(
"配置关系不可为空!"
);
}
if
(
Common
.
isEmpty
(
salaryVo
.
getDeptId
()))
{
error
.
append
(
"部门名称不可为空!"
);
}
if
(
Common
.
isEmpty
(
salaryVo
.
getSaveType
()))
{
error
.
append
(
"是否保存不可为空!"
);
}
TBusDept
dept
=
busDeptService
.
getById
(
salaryVo
.
getDeptId
());
if
(
dept
==
null
)
{
error
.
append
(
"根据部门id未找到部门!id="
).
append
(
salaryVo
.
getDeptId
());
}
return
dept
;
}
/**
* @Description: 第二步判断与准备数据
* @Author: hgw
* @Date: 2021/9/9 14:21
* @return: void
**/
private
void
judgeSecond
(
YifuUser
user
,
Map
<
String
,
TBusDept
>
deptMap
,
TBusDept
dept
,
List
<
ErrorMessage
>
errorList
,
SalaryImportVo
salaryVo
)
{
List
<
TBusSalaryConfigTitleRes
>
resList
=
salaryVo
.
getResList
();
List
<
TBusSalaryConfig
>
configList
=
busSalaryConfigService
.
list
();
// 保存或更新-配置
busSalaryConfigTitleResService
.
saveOrUpdateRes
(
resList
,
salaryVo
.
getSaveType
(),
user
,
dept
);
Map
<
String
,
TBusSalaryConfig
>
salaryConfigMap
=
new
HashMap
<>();
//存放所有字段
for
(
TBusSalaryConfig
cl
:
configList
)
{
salaryConfigMap
.
put
(
cl
.
getId
(),
cl
);
}
// 表头配置Map
Map
<
String
,
TBusSalaryConfig
>
configMap
=
new
HashMap
<>();
for
(
TBusSalaryConfigTitleRes
tc
:
resList
)
{
configMap
.
put
(
tc
.
getExcelTitle
(),
salaryConfigMap
.
get
(
tc
.
getConfigId
()));
}
// 得到类的所有field
Field
[]
allFields
=
TBusSalary
.
class
.
getDeclaredFields
();
// 将有注解的field存放到fieldsMap中
Map
<
String
,
Field
>
fieldsMap
=
new
HashMap
<>();
for
(
Field
field
:
allFields
)
{
if
(
field
.
isAnnotationPresent
(
ExcelAttribute
.
class
))
{
// 设置类的私有字段属性可访问
field
.
setAccessible
(
true
);
fieldsMap
.
put
(
field
.
getName
(),
field
);
}
}
List
<
TBusSalary
>
salaryList
=
doCore
(
deptMap
,
dept
,
errorList
,
salaryVo
,
user
,
configMap
,
fieldsMap
);
// 保存工资与详情
this
.
saveSalaryAndItem
(
errorList
,
salaryList
);
}
/**
* @param errorList
* @param salaryList
* @Description: 保存工资与详情
* @Author: hgw
* @Date: 2021/9/14 17:49
* @return: void
**/
private
void
saveSalaryAndItem
(
List
<
ErrorMessage
>
errorList
,
List
<
TBusSalary
>
salaryList
)
{
if
(
errorList
.
isEmpty
())
{
this
.
saveBatch
(
salaryList
);
for
(
TBusSalary
bus
:
salaryList
)
{
if
(
bus
.
getBisList
()
!=
null
&&
!
bus
.
getBisList
().
isEmpty
())
{
for
(
TBusSalaryItem
item
:
bus
.
getBisList
())
{
item
.
setSalaryId
(
bus
.
getId
());
}
busSalaryItemService
.
saveBatch
(
bus
.
getBisList
());
}
}
}
}
private
List
<
TBusSalary
>
doCore
(
Map
<
String
,
TBusDept
>
deptMap
,
TBusDept
dept
,
List
<
ErrorMessage
>
errorList
,
SalaryImportVo
salaryVo
,
YifuUser
user
,
Map
<
String
,
TBusSalaryConfig
>
configMap
,
Map
<
String
,
Field
>
fieldsMap
)
{
List
<
List
<
KeyValueVo
>>
contentList
=
salaryVo
.
getContentList
();
String
salaryMonth
=
salaryVo
.
getSalaryMonth
();
// 其他附加项:
TBusSalaryConfig
otherText
=
busSalaryConfigService
.
getById
(
"100"
);
Map
<
String
,
Integer
>
mustMap
=
busSalaryConfigService
.
getMustMap
();
InitVo
initData
=
new
InitVo
();
initData
.
setOtherText
(
otherText
);
initData
.
setMustMap
(
mustMap
);
// 存放报账list
List
<
TBusSalary
>
salaryList
=
new
ArrayList
<>();
// 存放金额
// 循环的行标
int
i
=
0
;
// 工资详情
TBusSalary
bs
;
// 导入的表里的部门信息
TBusDept
depts
;
// 核心循环:
for
(
List
<
KeyValueVo
>
kvList
:
contentList
)
{
bs
=
new
TBusSalary
();
// 判断列
this
.
judgeColum
(
errorList
,
configMap
,
fieldsMap
,
initData
,
i
,
bs
,
kvList
);
// 录入了部门、工资月份,覆盖选择的公共的数据
if
(
Common
.
isEmpty
(
bs
.
getDeptName
()))
{
bs
.
setDeptId
(
dept
.
getId
());
bs
.
setDeptName
(
dept
.
getName
());
bs
.
setDeptTreeLogo
(
dept
.
getTreeLogo
());
bs
.
setDeptLevel
(
dept
.
getLevel
());
}
else
{
depts
=
deptMap
.
get
(
bs
.
getDeptName
());
if
(
depts
==
null
)
{
errorList
.
add
(
new
ErrorMessage
(
i
,
"部门不存在,请修改或清除:"
+
bs
.
getDeptName
()));
}
else
{
bs
.
setDeptId
(
depts
.
getId
());
bs
.
setDeptName
(
depts
.
getName
());
bs
.
setDeptTreeLogo
(
depts
.
getTreeLogo
());
bs
.
setDeptLevel
(
depts
.
getLevel
());
}
}
if
(
Common
.
isEmpty
(
bs
.
getSalaryMonth
()))
{
bs
.
setSalaryMonth
(
salaryMonth
);
}
bs
.
setCreateTime
(
LocalDateTime
.
now
());
bs
.
setCreateUserId
(
user
.
getId
());
bs
.
setCreateUserName
(
user
.
getNickname
());
salaryList
.
add
(
bs
);
i
++;
}
return
salaryList
;
}
/**
* @Description: 判断列
* @Author: hgw
* @Date: 2021/9/9 15:41
* @return: void
**/
private
void
judgeColum
(
List
<
ErrorMessage
>
errorList
,
Map
<
String
,
TBusSalaryConfig
>
configMap
,
Map
<
String
,
Field
>
fieldsMap
,
InitVo
initData
,
int
i
,
TBusSalary
bs
,
List
<
KeyValueVo
>
kvList
)
{
// 属性
Field
field
;
// 取得类型,并根据对象类型设置值.
Class
<?>
fieldType
;
// 单元格文本
String
valueStr
;
// 表头文本
String
titleStr
;
TBusSalaryConfig
scs
;
// 工资详情-附加明细
TBusSalaryItem
bsi
;
// 循环的列标排序号
int
j
=
0
;
// 附加明细List,追加在工资详情里
List
<
TBusSalaryItem
>
bsiList
=
new
ArrayList
<>();
Map
<
String
,
Integer
>
mustMap
=
new
HashMap
<>(
initData
.
getMustMap
());
TBusSalaryConfig
otherText
=
initData
.
getOtherText
();
// 获取属性对应的注解属性
ExcelAttribute
attr
;
//获取属性对应的注解属性
for
(
KeyValueVo
kv
:
kvList
)
{
valueStr
=
kv
.
getContent
();
titleStr
=
kv
.
getTitle
();
scs
=
configMap
.
get
(
titleStr
);
if
(
scs
==
null
)
{
scs
=
otherText
;
}
else
if
(
mustMap
.
get
(
scs
.
getDbFiedName
())
!=
null
)
{
mustMap
.
remove
(
scs
.
getDbFiedName
());
}
// 必填项不可为空
this
.
judgeMustAndMoney
(
errorList
,
i
,
valueStr
,
titleStr
,
scs
);
field
=
fieldsMap
.
get
(
scs
.
getJavaFiedName
());
// field != null:报账里的属性,否则属于附加表
if
(
field
==
null
)
{
bsi
=
new
TBusSalaryItem
();
bsi
.
setCnName
(
kv
.
getTitle
());
bsi
.
setJavaFiedName
(
scs
.
getJavaFiedName
());
bsi
.
setTextValue
(
valueStr
);
bsi
.
setOrderLine
(
j
);
bsiList
.
add
(
bsi
);
j
++;
}
else
{
attr
=
field
.
getAnnotation
(
ExcelAttribute
.
class
);
SalaryUtil
.
validateData
(
valueStr
,
attr
,
errorList
,
i
);
fieldType
=
field
.
getType
();
if
(
fieldType
!=
null
)
{
try
{
// 塞属性
SalaryUtil
.
setFields
(
field
,
valueStr
,
fieldType
,
bs
);
}
catch
(
IllegalAccessException
ex
)
{
log
.
error
(
"B端薪资原表导入解析失败!"
);
errorList
.
add
(
new
ErrorMessage
(
i
,
titleStr
+
"列:导入解析失败:"
+
valueStr
));
}
}
}
}
this
.
checkMustInfo
(
errorList
,
i
,
mustMap
);
bs
.
setBisList
(
bsiList
);
}
/**
* @Description: 必填项校验
* @Author: hgw
* @Date: 2021/9/10 15:29
* @return: void
**/
private
void
checkMustInfo
(
List
<
ErrorMessage
>
errorList
,
int
i
,
Map
<
String
,
Integer
>
mustMap
)
{
if
(!
mustMap
.
isEmpty
())
{
StringBuilder
sb
=
new
StringBuilder
(
"必填项不可缺少:"
);
for
(
String
s
:
mustMap
.
keySet
())
{
sb
.
append
(
s
).
append
(
" "
);
}
errorList
.
add
(
new
ErrorMessage
(
i
,
sb
.
toString
()));
}
}
/**
* @Description: 判断必填和金额
* @Author: hgw
* @Date: 2021/9/9 15:44
* @return: void
**/
private
void
judgeMustAndMoney
(
List
<
ErrorMessage
>
errorList
,
int
i
,
String
valueStr
,
String
titleStr
,
TBusSalaryConfig
scs
)
{
if
((
CommonConstants
.
ONE_INT
==
scs
.
getIsMustNeed
()
||
CommonConstants
.
THREE_INT
==
scs
.
getIsMustNeed
())
&&
Common
.
isEmpty
(
valueStr
))
{
errorList
.
add
(
new
ErrorMessage
(
i
,
titleStr
+
":不可为空!"
));
}
// 金额不可瞎写
if
((
CommonConstants
.
TWO_INT
==
scs
.
getIsMustNeed
()
||
CommonConstants
.
THREE_INT
==
scs
.
getIsMustNeed
())
&&
Common
.
isNotNull
(
valueStr
))
{
try
{
new
BigDecimal
(
valueStr
);
}
catch
(
Exception
ex
)
{
errorList
.
add
(
new
ErrorMessage
(
i
,
titleStr
+
"列:金额错误:"
+
valueStr
));
}
}
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/impl/TSalaryStatisticsDepartServiceImpl.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.bean.copier.CopyOptions
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TSalaryStatisticsDepart
;
import
com.yifu.cloud.plus.v1.business.mapper.salary.TSalaryStatisticsDepartMapper
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryCurDepartQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsDepartPageQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsDepartQuery
;
import
com.yifu.cloud.plus.v1.business.service.salary.TSalaryStatisticsDepartService
;
import
com.yifu.cloud.plus.v1.business.util.BusinessCommonUtils
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsDepartVO
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
lombok.AllArgsConstructor
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* @description: 部门薪资变动统计表 service实现层
* @author: wangweiguo
* @date: 2021-09-06
*/
@Service
@AllArgsConstructor
public
class
TSalaryStatisticsDepartServiceImpl
extends
ServiceImpl
<
TSalaryStatisticsDepartMapper
,
TSalaryStatisticsDepart
>
implements
TSalaryStatisticsDepartService
{
/**
* 分页查询: 部门统计条件分页查询
*
* @param query 部门统计查询条件
* @return: R<IPage < TSalaryStatisticsDepartVO>>
* @author: wangweiguo
* @date: 2021-09-06
*/
@Override
public
R
<
IPage
<
TSalaryStatisticsDepartVO
>>
getListByPage
(
TSalaryStatisticsDepartPageQuery
query
)
{
query
.
setLastSalaryMonth
(
BusinessCommonUtils
.
getLastMonthByCurMonth
(
query
.
getSalaryMonth
()));
Page
<
TSalaryStatisticsDepartVO
>
page
=
new
Page
<>(
query
.
getCurrent
(),
query
.
getSize
());
page
.
setOrders
(
query
.
getOrders
());
page
=
this
.
baseMapper
.
getListByPage
(
page
,
query
);
List
<
TSalaryStatisticsDepartVO
>
list
=
page
.
getRecords
();
initTreeData
(
list
);
return
R
.
ok
(
page
,
CommonConstants
.
SEARCH_SUCCESS
);
}
/**
* 列表查询: 部门统计条件查询
*
* @param query 部门统计查询条件
* @return: R<List < TSalaryStatisticsDepartVO>>
* @author: wangweiguo
* @date: 2021-09-06
*/
@Override
public
R
<
List
<
TSalaryStatisticsDepartVO
>>
getList
(
TSalaryStatisticsDepartQuery
query
)
{
query
.
setLastSalaryMonth
(
BusinessCommonUtils
.
getLastMonthByCurMonth
(
query
.
getSalaryMonth
()));
List
<
TSalaryStatisticsDepartVO
>
list
=
this
.
baseMapper
.
getListByPage
(
query
);
initTreeData
(
list
);
return
R
.
ok
(
list
,
CommonConstants
.
SEARCH_SUCCESS
);
}
/**
* 查询: 根据部门id查询当前部门合计
*
* @param query 单个部门统计查询条件
* @return: R<TSalaryTotalVO>
* @author: wangweiguo
* @date: 2021-09-16
*/
@Override
public
R
<
TSalaryTotalVO
>
getCurDepartSumData
(
TSalaryCurDepartQuery
query
)
{
query
.
setLastSalaryMonth
(
BusinessCommonUtils
.
getLastMonthByCurMonth
(
query
.
getSalaryMonth
()));
TSalaryTotalVO
vo
=
this
.
baseMapper
.
getCurDepartSumData
(
query
);
return
R
.
ok
(
vo
,
CommonConstants
.
SEARCH_SUCCESS
);
}
/**
* 查询: 根据部门id查询当前部门统计数据
*
* @param query 单个部门统计查询条件
* @return: R<TSalaryStatisticsDepartVO>
* @author: wangweiguo
* @date: 2021-09-16
*/
@Override
public
R
<
TSalaryStatisticsDepartVO
>
getCurDepartData
(
TSalaryCurDepartQuery
query
)
{
query
.
setLastSalaryMonth
(
BusinessCommonUtils
.
getLastMonthByCurMonth
(
query
.
getSalaryMonth
()));
TSalaryStatisticsDepartVO
vo
=
this
.
baseMapper
.
getCurDepartData
(
query
);
return
R
.
ok
(
vo
,
CommonConstants
.
SEARCH_SUCCESS
);
}
/**
* 将子查询的树状转为list
*
* @param list 包含children的
*/
private
void
initTreeData
(
List
<
TSalaryStatisticsDepartVO
>
list
)
{
for
(
TSalaryStatisticsDepartVO
vo
:
list
)
{
BeanUtil
.
copyProperties
(
vo
.
getChildren
().
get
(
0
),
vo
,
CopyOptions
.
create
().
setIgnoreProperties
(
"departName"
,
"departId"
,
"treeLogo"
).
setIgnoreNullValue
(
true
));
}
}
/**
* 合计: 条件查询部门合计
*
* @param query 部门统计查询条件
* @return: R<TSalaryDepartTotalVO>
* @author: wangweiguo
* @date: 2021-09-07
*/
@Override
public
R
<
TSalaryTotalVO
>
getSumDepartByParams
(
TSalaryStatisticsDepartQuery
query
)
{
query
.
setLastSalaryMonth
(
BusinessCommonUtils
.
getLastMonthByCurMonth
(
query
.
getSalaryMonth
()));
return
R
.
ok
(
this
.
baseMapper
.
sumSalaryDepart
(
query
),
CommonConstants
.
SEARCH_SUCCESS
);
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/salary/impl/TSalaryStatisticsPersonalServiceImpl.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
salary
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.business.entity.salary.TSalaryStatisticsPersonal
;
import
com.yifu.cloud.plus.v1.business.mapper.salary.TSalaryStatisticsPersonalMapper
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsPersonalPageQuery
;
import
com.yifu.cloud.plus.v1.business.query.salary.TSalaryStatisticsPersonalQuery
;
import
com.yifu.cloud.plus.v1.business.service.salary.TSalaryStatisticsPersonalService
;
import
com.yifu.cloud.plus.v1.business.util.BusinessCommonUtils
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsPersonalVO
;
import
com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
org.springframework.stereotype.Service
;
import
java.util.List
;
/**
* 个人薪资变动统计表 service实现层
*
* @author: wangweiguo
* @date: 2021-09-07
*/
@Service
public
class
TSalaryStatisticsPersonalServiceImpl
extends
ServiceImpl
<
TSalaryStatisticsPersonalMapper
,
TSalaryStatisticsPersonal
>
implements
TSalaryStatisticsPersonalService
{
/**
* 个人统计分页查询: 个人统计条件分页查询
*
* @param query 查询条件
* @return: R<IPage < TSalaryStatisticsPersonalVO>>
* @author: wangweiguo
* @date: 2021-09-07
*/
@Override
public
R
<
IPage
<
TSalaryStatisticsPersonalVO
>>
getListByPage
(
TSalaryStatisticsPersonalPageQuery
query
)
{
query
.
setLastSalaryMonth
(
BusinessCommonUtils
.
getLastMonthByCurMonth
(
query
.
getSalaryMonth
()));
Page
<
TSalaryStatisticsPersonalVO
>
page
=
new
Page
<>(
query
.
getCurrent
(),
query
.
getSize
());
page
.
setOrders
(
query
.
getOrders
());
page
=
this
.
baseMapper
.
getListByPage
(
page
,
query
);
return
R
.
ok
(
page
,
CommonConstants
.
SEARCH_SUCCESS
);
}
/**
* 个人统计列表查询: 个人统计条件查询
*
* @param query 个人统计查询条件
* @return: R<List < TSalaryStatisticsPersonalVO>>
* @author: wangweiguo
* @date: 2021-09-07
*/
@Override
public
R
<
List
<
TSalaryStatisticsPersonalVO
>>
getList
(
TSalaryStatisticsPersonalQuery
query
)
{
query
.
setLastSalaryMonth
(
BusinessCommonUtils
.
getLastMonthByCurMonth
(
query
.
getSalaryMonth
()));
List
<
TSalaryStatisticsPersonalVO
>
list
=
this
.
baseMapper
.
getListByPage
(
query
);
return
R
.
ok
(
list
,
CommonConstants
.
SEARCH_SUCCESS
);
}
/**
* 个人合计: 条件查询个人合计
*
* @param query 个人统计查询条件
* @return: R<TSalaryTotalVO>
* @author: wangweiguo
* @date: 2021-09-07
*/
@Override
public
R
<
TSalaryTotalVO
>
getSumPersonalByParams
(
TSalaryStatisticsPersonalQuery
query
)
{
query
.
setLastSalaryMonth
(
BusinessCommonUtils
.
getLastMonthByCurMonth
(
query
.
getSalaryMonth
()));
TSalaryTotalVO
salaryTotalVO
=
this
.
baseMapper
.
sumSalaryPerson
(
query
);
return
R
.
ok
(
salaryTotalVO
,
CommonConstants
.
SEARCH_SUCCESS
);
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/system/TBusDeptService.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
system
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yifu.cloud.plus.v1.business.entity.system.TBusDept
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
java.util.List
;
import
java.util.Map
;
/**
* B端部门表
*
* @author hgw
* @date 2021-08-10 10:38:44
*/
public
interface
TBusDeptService
extends
IService
<
TBusDept
>
{
/**
* B端部门表简单分页查询
*
* @param tBusDept B端部门表
* @return
*/
IPage
<
TBusDept
>
getTBusDeptPage
(
Page
<
TBusDept
>
page
,
TBusDept
tBusDept
);
/**
* @param tBusDept
* @Description: B端部门表 全部list
* @Author: hgw
* @Date: 2021/8/10 16:49
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.system.TBusDept>
**/
List
<
TBusDept
>
getTBusDeptList
(
TBusDept
tBusDept
);
List
<
TBusDept
>
getTBusDeptListAsso
(
TBusDept
tBusDept
);
/**
* @param tBusDept
* @Description: 获取部门名称Map
* @Author: hgw
* @Date: 2021/8/18 11:52
* @return: java.util.Map<java.lang.String, java.lang.Integer>
**/
Map
<
String
,
Integer
>
getTBusDeptMap
(
TBusDept
tBusDept
);
/**
* @param id
* @param treeLogo
* @Description: B端部门表 子集list,不含自己
* @Author: hgw
* @Date: 2021/8/10 16:49
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.system.TBusDept>
**/
List
<
TBusDept
>
getTBusDeptSubList
(
int
id
,
String
treeLogo
);
/**
* @param id
* @param name
* @Description: 获取部门list,判重
* @Author: hgw
* @Date: 2021/8/11 16:06
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.system.TBusDept>
**/
List
<
TBusDept
>
getDeptByName
(
Integer
id
,
String
name
);
/**
* @param oldLogo
* @param newLogo
* @Description: 批量更新子集的treeLogo
* @Author: hgw
* @Date: 2021/8/13 17:27
* @return: int
**/
int
updateAllTreeLogo
(
String
oldLogo
,
String
newLogo
);
/**
* 根据部门父id或等级查询部门列表
* @param pid 部门pid
* @param level 部门等级
* @return: com.yifu.cloud.v1.common.core.util.R<java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.system.TBusDept>>
* @author: wangweiguo
* @date: 2021/9/7
* @since hrob2.1
*/
R
<
List
<
TBusDept
>>
getBusDepartByLevelOrPid
(
Integer
pid
,
Integer
level
);
/**
* @Description: 获取部门名称Map
* @Author: hgw
* @Date: 2021/8/18 11:52
* @return: java.util.Map<java.lang.String, java.lang.Integer>
**/
Map
<
String
,
TBusDept
>
getAllDeptMap
();
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/system/impl/TBusDeptServiceImpl.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
system
.
impl
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.yifu.cloud.plus.v1.business.entity.system.TBusDept
;
import
com.yifu.cloud.plus.v1.business.mapper.system.TBusDeptMapper
;
import
com.yifu.cloud.plus.v1.business.service.system.TBusDeptService
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
org.springframework.stereotype.Service
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* B端部门表
*
* @author hgw
* @date 2021-08-10 10:38:44
*/
@Service
(
"tBusDeptService"
)
public
class
TBusDeptServiceImpl
extends
ServiceImpl
<
TBusDeptMapper
,
TBusDept
>
implements
TBusDeptService
{
/**
* B端部门表简单分页查询
*
* @param tBusDept B端部门表
* @return
*/
@Override
public
IPage
<
TBusDept
>
getTBusDeptPage
(
Page
<
TBusDept
>
page
,
TBusDept
tBusDept
)
{
return
baseMapper
.
getTBusDeptPage
(
page
,
tBusDept
);
}
/**
* B端部门表 全部list
*
* @param tBusDept B端部门表
* @return
*/
@Override
public
List
<
TBusDept
>
getTBusDeptList
(
TBusDept
tBusDept
)
{
return
baseMapper
.
getTBusDeptList
(
tBusDept
);
}
/**
* B端部门表 全部list 包括删除
*
* @param tBusDept B端部门表
* @return
*/
@Override
public
List
<
TBusDept
>
getTBusDeptListAsso
(
TBusDept
tBusDept
)
{
return
baseMapper
.
getTBusDeptListAsso
(
tBusDept
);
}
/**
* B端部门表 全部list
*
* @param tBusDept B端部门表
* @return
*/
@Override
public
Map
<
String
,
Integer
>
getTBusDeptMap
(
TBusDept
tBusDept
)
{
List
<
TBusDept
>
deptList
=
baseMapper
.
getTBusDeptList
(
tBusDept
);
Map
<
String
,
Integer
>
deptMap
=
new
HashMap
<>();
if
(
deptList
!=
null
&&
!
deptList
.
isEmpty
())
{
for
(
TBusDept
dept
:
deptList
)
{
deptMap
.
put
(
dept
.
getName
(),
dept
.
getId
());
}
}
return
deptMap
;
}
/**
* B端部门表 子集list,不含自己
* @return
*/
@Override
public
List
<
TBusDept
>
getTBusDeptSubList
(
int
id
,
String
treeLogo
)
{
return
baseMapper
.
getTBusDeptSubList
(
id
,
treeLogo
);
}
@Override
public
List
<
TBusDept
>
getDeptByName
(
Integer
id
,
String
name
)
{
return
baseMapper
.
getDeptByName
(
id
,
name
);
}
@Override
public
int
updateAllTreeLogo
(
String
oldLogo
,
String
newLogo
)
{
return
baseMapper
.
updateAllTreeLogo
(
oldLogo
,
newLogo
);
}
/**
* 根据部门父id或等级查询部门列表
* @param pid 部门pid
* @param level 部门等级
* @return: com.yifu.cloud.v1.common.core.util.R<java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.system.TBusDept>>
* @author: wangweiguo
* @date: 2021/9/7
* @since hrob2.1
*/
@Override
public
R
<
List
<
TBusDept
>>
getBusDepartByLevelOrPid
(
Integer
pid
,
Integer
level
)
{
List
<
TBusDept
>
list
=
this
.
lambdaQuery
()
.
eq
(
TBusDept:
:
getLevel
,
level
)
.
eq
(
pid
!=
null
,
TBusDept:
:
getPid
,
pid
)
.
eq
(
TBusDept:
:
getDeleteFlag
,
CommonConstants
.
ZERO_INT
)
.
list
();
return
R
.
ok
(
list
,
CommonConstants
.
SEARCH_SUCCESS
);
}
/**
* B端部门表 全部list
* @return
*/
@Override
public
Map
<
String
,
TBusDept
>
getAllDeptMap
()
{
List
<
TBusDept
>
deptList
=
baseMapper
.
getTBusDeptList
(
null
);
Map
<
String
,
TBusDept
>
deptMap
=
new
HashMap
<>();
if
(
deptList
!=
null
&&
!
deptList
.
isEmpty
())
{
for
(
TBusDept
dept
:
deptList
)
{
deptMap
.
put
(
dept
.
getName
(),
dept
);
}
}
return
deptMap
;
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/util/BusinessCommonContants.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
util
;
/**
* @description: BusinessCommonContants b端微服务通用常量
* @author: wangweiguo
* @date: 2021/8/17
*/
public
class
BusinessCommonContants
{
public
static
final
String
HRB_SETTLE_FILE_PATH
=
"hrb/settle"
;
public
static
final
String
HROB_VACATION_TYPE
=
"HROB_VACATION_TYPE"
;
public
static
final
String
BUSINESS_CLIENT_ID
=
"hrCustomer"
;
public
static
final
String
YEAR_VACATION_VALUE
=
"5"
;
// 202108
public
static
final
String
SETTLE_MONTH_MATCH
=
"([0-9]{3}[1-9]|[0-9]{2}[1-9][0-9]{1}|[0-9]{1}[1-9][0-9]{2}|[1-9][0-9]{3})(0[1-9]{1}|1[0-2]{1})"
;
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/util/BusinessCommonUtils.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
util
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
org.apache.commons.lang.StringUtils
;
import
java.time.LocalDate
;
import
java.time.format.DateTimeFormatter
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* @description: hro b端通用方法
* @author: wangweiguo
* @date: 2021/8/16
*/
public
class
BusinessCommonUtils
{
/**
* 格式化标签id
*
* @param employeeTags 标签字符串,英文逗号分割
* @return: java.lang.String
* @author: wangweiguo
* @date: 2021/8/19
*/
public
static
String
formatLabelId
(
String
employeeTags
)
{
// 标签id格式化处理
String
[]
tags
=
StringUtils
.
split
(
employeeTags
,
","
);
List
<
String
>
tagList
=
new
ArrayList
<>();
if
(
null
!=
tags
)
{
for
(
String
tag
:
tags
)
{
tagList
.
add
(
String
.
format
(
CommonConstants
.
TAG_FROMAT
,
Integer
.
valueOf
(
tag
)));
}
}
return
StringUtils
.
join
(
tagList
,
","
);
}
/**
* 根据当前月份获取上个月份
*
* @param curMonth 当前月份,格式yyyyMM
* @return String lastMonth 返回上个月份的字符串格式yyyyMM
* @author: wangweiguo
* @date: 2021-09-06
*/
public
static
String
getLastMonthByCurMonth
(
String
curMonth
)
{
DateTimeFormatter
dateTimeFormatter
=
DateTimeFormatter
.
ofPattern
(
"yyyyMMdd"
);
LocalDate
lastSalaryDate
=
LocalDate
.
parse
(
curMonth
+
"01"
,
dateTimeFormatter
).
plusMonths
(-
1L
);
return
String
.
format
(
lastSalaryDate
.
getYear
()
+
"%02d"
,
lastSalaryDate
.
getMonthValue
());
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/util/BusinessResultErrorMsg.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
util
;
/**
* @description: 返回错误码
* @author: wangweiguo
* @date: 2021/8/16
*/
public
class
BusinessResultErrorMsg
{
public
static
final
String
VACATION_MONITOR_ID_IS_NOT_NULL
=
"vacationMonitorId不能为空"
;
public
static
final
String
SUCCESS
=
"操作成功"
;
public
static
final
String
VACATION_MONITOR_DATA_IS_NOT_EXIST
=
"监控数据不存在"
;
public
static
final
String
USER_NOT_LOGIN
=
"用户未登录"
;
public
static
final
String
SAVE_SETTLE_ERROR
=
"保存结算记录出错"
;
public
static
final
String
DEPART_ALREADY_EXIST_MONTH_DATA
=
"该部门该结算月份已有数据,若要更新,请先将原数据删除后,再次导入!"
;
public
static
final
String
ZIP_FILE_NAME_VALID_FAILD
=
"zip压缩文件名格式不正确"
;
public
static
final
String
ZIP_EXTRACT_ERROR
=
"结算管理导入zip文件解压功能出错"
;
public
static
final
String
IMPORT_FILE_TYPE_ERROR
=
"导入的文件格式不正确"
;
public
static
final
String
VACATION_INFO_NOT_EXIST
=
"假勤信息不存在"
;
public
static
final
String
JSON_DATE_RESOLVER_ERROR
=
"批量导入假勤信息json日期格式解析失败,请使用正确的日期格式,如:XXXX-XX-XX,"
;
public
static
final
String
JSON_RESOLVER_ERROR
=
"批量导入假勤信息json数据格式解析失败,"
;
public
static
final
String
VACATION_TYPE_DATA_NOT_EXIST
=
"假勤类型数据不存在"
;
public
static
final
String
EMPLOYEE_EXTENT_DATA_NOT_EXIST
=
"人员拓展信息数据不存在"
;
public
static
final
String
DEPART_DATA_NOT_EXIST
=
"部门数据不存在"
;
public
static
final
String
VACATION_TYPE_NOT_EXIST
=
"假勤类型不存在"
;
public
static
final
String
BUSINESS_TELECOM_NUMBER_NOT_EXIST
=
"电信工号不存在"
;
public
static
final
String
START_END_TIME_ERROR
=
"假勤结束时间不能在假勤开始时间之前"
;
public
static
final
String
ACTURAL_START_END_TIME_ERROR
=
"真正结束时间不能在假勤结束时间之后"
;
public
static
final
String
FILE_NAME_ERROT
=
"命名格式不规范"
;
public
static
final
String
RELEASE_VACATION_DURATION_ERROR
=
"操作失败,释放年休假失败"
;
public
static
final
String
CONSUME_YEAR_VACATION_DURATION_ERROR
=
"操作失败,消耗年休假失败"
;
public
static
final
String
CONSUME_VACATION_DURATION_ERROR
=
"操作失败,消耗假勤失败"
;
public
static
final
String
SURPLUS_VACATION_NOT_ENOUGH
=
"剩余年假时长不足本次消耗"
;
public
static
final
String
VACATION_MONITOR_NOT_EXIST
=
"没有对应的年假信息"
;
public
static
final
String
IMPORT_SUCCESS
=
"导入成功!"
;
public
static
final
String
FILE_NAME_DATE_FORMAT_ERROR
=
"文件名格式中日期格式错误!"
;
public
static
final
String
EMPLOYEE_ALREADY_LEAVE
=
"添加失败,员工已离职!"
;
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/util/SalaryUtil.java
0 → 100644
View file @
c2bf35c2
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
util
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage
;
import
java.io.Serializable
;
import
java.lang.reflect.Field
;
import
java.math.BigDecimal
;
import
java.text.DateFormat
;
import
java.text.ParseException
;
import
java.text.SimpleDateFormat
;
import
java.util.List
;
/**
* @author hgw
* @Description: 工资表上传公共类
*/
public
class
SalaryUtil
implements
Serializable
{
/**
* @param c
* @param attr
* @Description: 验证属性的值的长度
* @Author: hgw
* @Date: 2021/9/17 9:47
* @return: java.lang.String
**/
public
static
void
validateData
(
String
c
,
ExcelAttribute
attr
,
List
<
ErrorMessage
>
errorList
,
int
i
)
{
//最大长度校验
if
(
Common
.
isNotNull
(
c
)
&&
Common
.
isNotNull
(
attr
)
)
{
if
(
attr
.
isDate
())
{
try
{
DateFormat
df
=
new
SimpleDateFormat
(
attr
.
dateFormat
());
df
.
parse
(
c
.
trim
());
}
catch
(
ParseException
e
)
{
errorList
.
add
(
new
ErrorMessage
(
i
,
attr
.
name
()
+
"列:日期格式不正确[正确格式‘199101’],实际:"
+
c
));
}
}
if
(
attr
.
maxLength
()
>
0
&&
c
.
length
()
>
attr
.
maxLength
())
{
errorList
.
add
(
new
ErrorMessage
(
i
,
attr
.
name
()
+
"列:超出最大长度["
+
attr
.
maxLength
()
+
"]:"
+
c
));
}
}
}
/**
* @param field
* @param cellValueStr
* @param fieldType
* @param entity
* @Description: 总入口:塞属性
* @Author: hgw
* @Date: 2021/1/11 11:18
* @return: void
**/
public
static
<
T
>
void
setFields
(
Field
field
,
String
cellValueStr
,
Class
<?>
fieldType
,
T
entity
)
throws
IllegalAccessException
{
if
(
String
.
class
==
fieldType
)
{
setStringField
(
field
,
cellValueStr
,
entity
);
}
else
if
(
BigDecimal
.
class
==
fieldType
)
{
setBigDecimalField
(
field
,
cellValueStr
,
entity
);
}
else
if
((
Integer
.
TYPE
==
fieldType
)
||
(
Integer
.
class
==
fieldType
))
{
setIntegerField
(
field
,
cellValueStr
,
entity
);
}
}
/**
* @param field
* @param cellValueStr
* @param entity
* @Description: 判断整型
* @Author: hgw
* @Date: 2021/1/11 11:48
* @return: void
**/
private
static
<
T
>
void
setIntegerField
(
Field
field
,
String
cellValueStr
,
T
entity
)
throws
IllegalAccessException
{
if
(
"否"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
0
);
}
else
if
(
"是"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
1
);
}
else
{
field
.
set
(
entity
,
Integer
.
parseInt
(
Common
.
isEmpty
(
cellValueStr
)?
"0"
:
cellValueStr
));
}
}
/**
* @param field
* @param cellValueStr
* @param entity
* @Description: 判断金额
* @Author: hgw
* @Date: 2021/1/11 11:48
* @return: void
**/
private
static
<
T
>
void
setBigDecimalField
(
Field
field
,
String
cellValueStr
,
T
entity
)
throws
IllegalAccessException
{
if
(
cellValueStr
.
indexOf
(
'%'
)
!=
-
1
)
{
cellValueStr
=
cellValueStr
.
replace
(
"%"
,
""
);
}
field
.
set
(
entity
,
BigDecimal
.
valueOf
(
Double
.
valueOf
(
cellValueStr
)));
}
/**
* @param field
* @param cellValueStr
* @param entity
* @Description: 判断固定字符串,塞值
* @Author: hgw
* @Date: 2021/1/11 11:47
* @return: void
**/
private
static
<
T
>
void
setStringField
(
Field
field
,
String
cellValueStr
,
T
entity
)
throws
IllegalAccessException
{
if
(
"否"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"0"
);
}
else
if
(
"是"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"1"
);
}
else
if
(
"暂停发"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"1"
);
}
else
if
(
"立即发"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"0"
);
}
else
if
(
"现金"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"0"
);
}
else
if
(
"银行"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"1"
);
}
else
if
(
"线下"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"2"
);
}
else
if
(
"合并"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"0"
);
}
else
if
(
"单独"
.
equals
(
cellValueStr
))
{
field
.
set
(
entity
,
"1"
);
}
else
{
field
.
set
(
entity
,
cellValueStr
);
}
}
}
yifu-business/yifu-business-biz/src/main/resources/META-INF/spring.factories
→
yifu-business/yifu-business-biz/src/main/resources/META-INF/spring.factories
.txt
View file @
c2bf35c2
File moved
yifu-business/yifu-business-biz/src/main/resources/mapper/TBusDeptMapper.xml
0 → 100644
View file @
c2bf35c2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yifu.cloud.plus.v1.business.mapper.system.TBusDeptMapper"
>
<resultMap
id=
"tBusDeptMap"
type=
"com.yifu.cloud.plus.v1.business.entity.system.TBusDept"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"name"
column=
"name"
/>
<result
property=
"level"
column=
"level"
/>
<result
property=
"pid"
column=
"pid"
/>
<result
property=
"createUserId"
column=
"create_user_id"
/>
<result
property=
"createUserName"
column=
"create_user_name"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"treeLogo"
column=
"tree_logo"
/>
<result
property=
"deleteFlag"
column=
"delete_flag"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
a.id,
a.name,
a.level,
a.pid,
a.create_user_id,
a.create_user_name,
a.create_time,
a.tree_logo,
a.delete_flag
</sql>
<sql
id=
"tBusDept_where"
>
<if
test=
"tBusDept != null"
>
<if
test=
"tBusDept.id != null"
>
AND a.id = #{tBusDept.id}
</if>
<if
test=
"tBusDept.name != null and tBusDept.name.trim() != ''"
>
AND a.name like concat('%', #{tBusDept.name},'%')
</if>
<if
test=
"tBusDept.level != null"
>
AND a.level = #{tBusDept.level}
</if>
<if
test=
"tBusDept.pid != null"
>
AND a.pid = #{tBusDept.pid}
</if>
<if
test=
"tBusDept.createUserId != null and tBusDept.createUserId.trim() != ''"
>
AND a.create_user_id = #{tBusDept.createUserId}
</if>
<if
test=
"tBusDept.createUserName != null and tBusDept.createUserName.trim() != ''"
>
AND a.create_user_name = #{tBusDept.createUserName}
</if>
<if
test=
"tBusDept.createTime != null"
>
AND a.create_time = #{tBusDept.createTime}
</if>
<if
test=
"tBusDept.treeLogo != null and tBusDept.treeLogo.trim() != ''"
>
AND a.tree_logo like concat(#{tBusDept.treeLogo},'%')
</if>
</if>
</sql>
<!--tBusDept简单分页查询-->
<select
id=
"getTBusDeptPage"
resultMap=
"tBusDeptMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_dept a
<where>
a.delete_flag = 0 and a.level != '-1'
<include
refid=
"tBusDept_where"
/>
</where>
ORDER BY a.level,a.create_time asc
</select>
<!--list-->
<select
id=
"getTBusDeptList"
resultMap=
"tBusDeptMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_dept a
<where>
a.delete_flag = 0
<if
test=
"tBusDept == null or tBusDept.level == null"
>
and a.level != '-1'
</if>
<include
refid=
"tBusDept_where"
/>
</where>
ORDER BY a.level,a.create_time asc
</select>
<!--list-->
<select
id=
"getTBusDeptListAsso"
resultMap=
"tBusDeptMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_dept a
<where>
<include
refid=
"tBusDept_where"
/>
</where>
ORDER BY a.level,a.create_time asc
</select>
<!--list-->
<select
id=
"getTBusDeptSubList"
resultMap=
"tBusDeptMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_dept a
where
a.delete_flag = 0
and a.id != #{id}
AND a.tree_logo like concat(#{treeLogo},'%')
</select>
<!--判重-->
<select
id=
"getDeptByName"
resultMap=
"tBusDeptMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_dept a
where
a.delete_flag = 0
<if
test=
"id != null"
>
and a.id != #{id}
</if>
AND a.name = #{name}
</select>
<!-- 批量更新子集的treeLogo -->
<update
id=
"updateAllTreeLogo"
>
update
t_bus_dept a
set
a.tree_logo = concat(#{newLogo},SUBSTRING(a.tree_logo,length(#{oldLogo}) + 1))
where
a.tree_logo like concat(#{oldLogo},'%')
</update>
</mapper>
yifu-business/yifu-business-biz/src/main/resources/mapper/TBusSalaryConfigMapper.xml
0 → 100644
View file @
c2bf35c2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yifu.cloud.plus.v1.business.mapper.salary.TBusSalaryConfigMapper"
>
<resultMap
id=
"tBusSalaryConfigMap"
type=
"com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfig"
>
<id
property=
"id"
column=
"ID"
/>
<result
property=
"cnName"
column=
"CN_NAME"
/>
<result
property=
"dbFiedName"
column=
"DB_FIED_NAME"
/>
<result
property=
"javaFiedName"
column=
"JAVA_FIED_NAME"
/>
<result
property=
"isMustNeed"
column=
"IS_MUST_NEED"
/>
<result
property=
"createUser"
column=
"CREATE_USER"
/>
<result
property=
"createTime"
column=
"CREATE_TIME"
/>
<result
property=
"orderLine"
column=
"order_line"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
a.ID,
a.CN_NAME,
a.DB_FIED_NAME,
a.JAVA_FIED_NAME,
a.IS_MUST_NEED,
a.CREATE_USER,
a.CREATE_TIME,
a.order_line
</sql>
<sql
id=
"tBusSalaryConfig_where"
>
<if
test=
"tBusSalaryConfig != null"
>
<if
test=
"tBusSalaryConfig.id != null and tBusSalaryConfig.id.trim() != ''"
>
AND a.ID = #{tBusSalaryConfig.id}
</if>
<if
test=
"tBusSalaryConfig.cnName != null and tBusSalaryConfig.cnName.trim() != ''"
>
AND a.CN_NAME = #{tBusSalaryConfig.cnName}
</if>
<if
test=
"tBusSalaryConfig.dbFiedName != null and tBusSalaryConfig.dbFiedName.trim() != ''"
>
AND a.DB_FIED_NAME = #{tBusSalaryConfig.dbFiedName}
</if>
<if
test=
"tBusSalaryConfig.javaFiedName != null and tBusSalaryConfig.javaFiedName.trim() != ''"
>
AND a.JAVA_FIED_NAME = #{tBusSalaryConfig.javaFiedName}
</if>
<if
test=
"tBusSalaryConfig.isMustNeed != null "
>
AND a.IS_MUST_NEED = #{tBusSalaryConfig.isMustNeed}
</if>
<if
test=
"tBusSalaryConfig.createUser != null and tBusSalaryConfig.createUser.trim() != ''"
>
AND a.CREATE_USER = #{tBusSalaryConfig.createUser}
</if>
<if
test=
"tBusSalaryConfig.createTime != null"
>
AND a.CREATE_TIME = #{tBusSalaryConfig.createTime}
</if>
<if
test=
"tBusSalaryConfig.orderLine != null"
>
AND a.order_line = #{tBusSalaryConfig.orderLine}
</if>
</if>
</sql>
<!--tBusSalaryConfig简单分页查询-->
<select
id=
"getTBusSalaryConfigPage"
resultMap=
"tBusSalaryConfigMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_salary_config a
<where>
1=1
<include
refid=
"tBusSalaryConfig_where"
/>
</where>
</select>
<!--tBusSalaryConfig简单list-->
<select
id=
"getConfigList"
resultMap=
"tBusSalaryConfigMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_salary_config a
where a.order_line != 999
order by a.order_line asc
</select>
<!--tBusSalaryConfig简单分页查询-->
<select
id=
"getMustList"
resultType=
"String"
>
SELECT
a.DB_FIED_NAME
FROM t_bus_salary_config a
where
a.IS_MUST_NEED in (1,3)
</select>
</mapper>
yifu-business/yifu-business-biz/src/main/resources/mapper/TBusSalaryConfigTitleResMapper.xml
0 → 100644
View file @
c2bf35c2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yifu.cloud.plus.v1.business.mapper.salary.TBusSalaryConfigTitleResMapper"
>
<resultMap
id=
"tBusSalaryConfigTitleResMap"
type=
"com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryConfigTitleRes"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"deptId"
column=
"dept_id"
/>
<result
property=
"deptName"
column=
"dept_name"
/>
<result
property=
"deptNo"
column=
"dept_no"
/>
<result
property=
"excelTitle"
column=
"excel_title"
/>
<result
property=
"configId"
column=
"config_id"
/>
<result
property=
"configName"
column=
"config_name"
/>
<result
property=
"createUserId"
column=
"create_user_id"
/>
<result
property=
"createUserName"
column=
"create_user_name"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"saveType"
column=
"save_type"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
a.id,
a.dept_id,
a.dept_name,
a.dept_no,
a.excel_title,
a.config_id,
a.config_name,
a.create_user_id,
a.create_user_name,
a.create_time,
a.save_type
</sql>
<sql
id=
"tBusSalaryConfigTitleRes_where"
>
<if
test=
"tBusSalaryConfigTitleRes != null"
>
<if
test=
"tBusSalaryConfigTitleRes.id != null and tBusSalaryConfigTitleRes.id.trim() != ''"
>
AND a.id = #{tBusSalaryConfigTitleRes.id}
</if>
<if
test=
"tBusSalaryConfigTitleRes.deptId != null and tBusSalaryConfigTitleRes.deptId.trim() != ''"
>
AND a.dept_id = #{tBusSalaryConfigTitleRes.deptId}
</if>
<if
test=
"tBusSalaryConfigTitleRes.deptName != null and tBusSalaryConfigTitleRes.deptName.trim() != ''"
>
AND a.dept_name = #{tBusSalaryConfigTitleRes.deptName}
</if>
<if
test=
"tBusSalaryConfigTitleRes.deptNo != null and tBusSalaryConfigTitleRes.deptNo.trim() != ''"
>
AND a.dept_no = #{tBusSalaryConfigTitleRes.deptNo}
</if>
<if
test=
"tBusSalaryConfigTitleRes.excelTitle != null and tBusSalaryConfigTitleRes.excelTitle.trim() != ''"
>
AND a.excel_title = #{tBusSalaryConfigTitleRes.excelTitle}
</if>
<if
test=
"tBusSalaryConfigTitleRes.configId != null and tBusSalaryConfigTitleRes.configId.trim() != ''"
>
AND a.config_id = #{tBusSalaryConfigTitleRes.configId}
</if>
<if
test=
"tBusSalaryConfigTitleRes.configName != null and tBusSalaryConfigTitleRes.configName.trim() != ''"
>
AND a.config_name = #{tBusSalaryConfigTitleRes.configName}
</if>
<if
test=
"tBusSalaryConfigTitleRes.createUserId != null and tBusSalaryConfigTitleRes.createUserId.trim() != ''"
>
AND a.create_user_id = #{tBusSalaryConfigTitleRes.createUserId}
</if>
<if
test=
"tBusSalaryConfigTitleRes.createUserName != null and tBusSalaryConfigTitleRes.createUserName.trim() != ''"
>
AND a.create_user_name = #{tBusSalaryConfigTitleRes.createUserName}
</if>
<if
test=
"tBusSalaryConfigTitleRes.createTime != null"
>
AND a.create_time = #{tBusSalaryConfigTitleRes.createTime}
</if>
<if
test=
"tBusSalaryConfigTitleRes.saveType != null"
>
AND a.save_type = #{tBusSalaryConfigTitleRes.saveType}
</if>
</if>
</sql>
<!--tBusSalaryConfigTitleRes简单分页查询-->
<select
id=
"getTBusSalaryConfigTitleResPage"
resultMap=
"tBusSalaryConfigTitleResMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_salary_config_title_res a
<where>
1=1
<include
refid=
"tBusSalaryConfigTitleRes_where"
/>
</where>
</select>
<!--tBusSalaryConfigTitleRes简单分页查询-->
<select
id=
"getResListByDeptId"
resultMap=
"tBusSalaryConfigTitleResMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_salary_config_title_res a
where a.dept_id = #{deptId} and a.save_type = 0
</select>
</mapper>
yifu-business/yifu-business-biz/src/main/resources/mapper/TBusSalaryItemMapper.xml
0 → 100644
View file @
c2bf35c2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yifu.cloud.plus.v1.business.mapper.salary.TBusSalaryItemMapper"
>
<resultMap
id=
"tBusSalaryItemMap"
type=
"com.yifu.cloud.plus.v1.business.entity.salary.TBusSalaryItem"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"salaryId"
column=
"SALARY_ID"
/>
<result
property=
"cnName"
column=
"CN_NAME"
/>
<result
property=
"javaFiedName"
column=
"JAVA_FIED_NAME"
/>
<result
property=
"textValue"
column=
"TEXT_VALUE"
/>
<result
property=
"orderLine"
column=
"order_line"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
a.id,
a.SALARY_ID,
a.CN_NAME,
a.JAVA_FIED_NAME,
a.TEXT_VALUE,
a.order_line
</sql>
<sql
id=
"tBusSalaryItem_where"
>
<if
test=
"tBusSalaryItem != null"
>
<if
test=
"tBusSalaryItem.id != null and tBusSalaryItem.id.trim() != ''"
>
AND a.id = #{tBusSalaryItem.id}
</if>
<if
test=
"tBusSalaryItem.salaryId != null and tBusSalaryItem.salaryId.trim() != ''"
>
AND a.SALARY_ID = #{tBusSalaryItem.salaryId}
</if>
<if
test=
"tBusSalaryItem.cnName != null and tBusSalaryItem.cnName.trim() != ''"
>
AND a.CN_NAME = #{tBusSalaryItem.cnName}
</if>
<if
test=
"tBusSalaryItem.javaFiedName != null and tBusSalaryItem.javaFiedName.trim() != ''"
>
AND a.JAVA_FIED_NAME = #{tBusSalaryItem.javaFiedName}
</if>
<if
test=
"tBusSalaryItem.textValue != null and tBusSalaryItem.textValue.trim() != ''"
>
AND a.TEXT_VALUE = #{tBusSalaryItem.textValue}
</if>
<if
test=
"tBusSalaryConfig.orderLine != null"
>
AND a.order_line = #{tBusSalaryConfig.orderLine}
</if>
</if>
</sql>
<!--tBusSalaryItem简单分页查询-->
<select
id=
"getTBusSalaryItemPage"
resultMap=
"tBusSalaryItemMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_salary_item a
<where>
1=1
<include
refid=
"tBusSalaryItem_where"
/>
</where>
</select>
<!--tBusSalaryItem简单list-->
<select
id=
"getListBySalaryId"
resultMap=
"tBusSalaryItemMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_salary_item a
where a.SALARY_ID = #{salaryId}
order by a.order_line asc
</select>
</mapper>
yifu-business/yifu-business-biz/src/main/resources/mapper/TBusSalaryMapper.xml
0 → 100644
View file @
c2bf35c2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yifu.cloud.plus.v1.business.mapper.salary.TBusSalaryMapper"
>
<resultMap
id=
"tBusSalaryMap"
type=
"com.yifu.cloud.plus.v1.business.entity.salary.TBusSalary"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"teleNo"
column=
"tele_no"
/>
<result
property=
"empName"
column=
"emp_name"
/>
<result
property=
"empIdCard"
column=
"emp_id_card"
/>
<result
property=
"deptId"
column=
"dept_id"
/>
<result
property=
"deptLevel"
column=
"dept_level"
/>
<result
property=
"deptName"
column=
"dept_name"
/>
<result
property=
"deptTreeLogo"
column=
"dept_tree_logo"
/>
<result
property=
"post"
column=
"post"
/>
<result
property=
"salaryMonth"
column=
"salary_month"
/>
<result
property=
"relaySalary"
column=
"relay_salary"
/>
<result
property=
"relayIncent"
column=
"relay_incent"
/>
<result
property=
"relayOther"
column=
"relay_other"
/>
<result
property=
"relaySum"
column=
"relay_sum"
/>
<result
property=
"withholidPersonSocial"
column=
"withholid_person_social"
/>
<result
property=
"withholidPersonFund"
column=
"withholid_person_fund"
/>
<result
property=
"withholidPersonTax"
column=
"withholid_person_tax"
/>
<result
property=
"withholidOther"
column=
"withholid_other"
/>
<result
property=
"withholidSum"
column=
"withholid_sum"
/>
<result
property=
"actualSalary"
column=
"actual_salary"
/>
<result
property=
"unitSocial"
column=
"unit_social"
/>
<result
property=
"unitFund"
column=
"unit_fund"
/>
<result
property=
"createUserId"
column=
"create_user_id"
/>
<result
property=
"createUserName"
column=
"create_user_name"
/>
<result
property=
"createTime"
column=
"create_time"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
a.id,
a.tele_no,
a.emp_name,
a.emp_id_card,
a.dept_id,
a.dept_level,
a.dept_name,
a.dept_tree_logo,
a.post,
a.salary_month,
a.relay_salary,
a.relay_incent,
a.relay_other,
a.relay_sum,
a.withholid_person_social,
a.withholid_person_fund,
a.withholid_person_tax,
a.withholid_other,
a.withholid_sum,
a.actual_salary,
a.unit_social,
a.unit_fund,
a.create_user_id,
a.create_user_name,
a.create_time
</sql>
<sql
id=
"tBusSalary_where"
>
<if
test=
"tBusSalary != null"
>
<if
test=
"tBusSalary.id != null and tBusSalary.id.trim() != ''"
>
AND a.id = #{tBusSalary.id}
</if>
<if
test=
"tBusSalary.teleNo != null and tBusSalary.teleNo.trim() != ''"
>
AND a.tele_no = #{tBusSalary.teleNo}
</if>
<if
test=
"tBusSalary.empName != null and tBusSalary.empName.trim() != ''"
>
AND a.emp_name like concat('%',#{tBusSalary.empName}, '%')
</if>
<if
test=
"tBusSalary.empIdCard != null and tBusSalary.empIdCard.trim() != ''"
>
AND a.emp_id_card like concat(#{tBusSalary.empIdCard}, '%')
</if>
/* 查找部门树以及底下的数据 */
<if
test=
"tBusSalary.deptId != null and tBusSalary.deptId != 1"
>
AND (a.dept_id = #{tBusSalary.deptId} or a.dept_tree_logo like concat('%-', #{tBusSalary.deptId},'-%'))
</if>
<if
test=
"tBusSalary.deptLevel != null"
>
AND a.dept_level = #{tBusSalary.deptLevel}
</if>
<if
test=
"tBusSalary.deptName != null and tBusSalary.deptName.trim() != ''"
>
AND a.dept_name like concat('%', #{tBusSalary.deptName}, '%')
</if>
<if
test=
"tBusSalary.deptTreeLogo != null and tBusSalary.deptTreeLogo.trim() != ''"
>
AND a.dept_tree_logo = #{tBusSalary.deptTreeLogo}
</if>
<if
test=
"tBusSalary.post != null and tBusSalary.post.trim() != ''"
>
AND a.post = #{tBusSalary.post}
</if>
<if
test=
"tBusSalary.salaryMonth != null and tBusSalary.salaryMonth.trim() != ''"
>
AND a.salary_month = #{tBusSalary.salaryMonth}
</if>
<if
test=
"tBusSalary.relaySalary != null"
>
AND a.relay_salary = #{tBusSalary.relaySalary}
</if>
<if
test=
"tBusSalary.relayIncent != null"
>
AND a.relay_incent = #{tBusSalary.relayIncent}
</if>
<if
test=
"tBusSalary.relayOther != null"
>
AND a.relay_other = #{tBusSalary.relayOther}
</if>
<if
test=
"tBusSalary.relaySum != null"
>
AND a.relay_sum = #{tBusSalary.relaySum}
</if>
<if
test=
"tBusSalary.withholidPersonSocial != null"
>
AND a.withholid_person_social = #{tBusSalary.withholidPersonSocial}
</if>
<if
test=
"tBusSalary.withholidPersonFund != null"
>
AND a.withholid_person_fund = #{tBusSalary.withholidPersonFund}
</if>
<if
test=
"tBusSalary.withholidPersonTax != null"
>
AND a.withholid_person_tax = #{tBusSalary.withholidPersonTax}
</if>
<if
test=
"tBusSalary.withholidOther != null"
>
AND a.withholid_other = #{tBusSalary.withholidOther}
</if>
<if
test=
"tBusSalary.withholidSum != null"
>
AND a.withholid_sum = #{tBusSalary.withholidSum}
</if>
<if
test=
"tBusSalary.actualSalary != null"
>
AND a.actual_salary = #{tBusSalary.actualSalary}
</if>
<if
test=
"tBusSalary.unitSocial != null"
>
AND a.unit_social = #{tBusSalary.unitSocial}
</if>
<if
test=
"tBusSalary.unitFund != null"
>
AND a.unit_fund = #{tBusSalary.unitFund}
</if>
<if
test=
"tBusSalary.createUserId != null and tBusSalary.createUserId.trim() != ''"
>
AND a.create_user_id = #{tBusSalary.createUserId}
</if>
<if
test=
"tBusSalary.createUserName != null and tBusSalary.createUserName.trim() != ''"
>
AND a.create_user_name = #{tBusSalary.createUserName}
</if>
<if
test=
"tBusSalary.createTime != null"
>
AND a.create_time = #{tBusSalary.createTime}
</if>
</if>
</sql>
<!--tBusSalary简单分页查询-->
<select
id=
"getTBusSalaryPage"
resultMap=
"tBusSalaryMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_salary a
<where>
1=1
<include
refid=
"tBusSalary_where"
/>
</where>
</select>
<!--tBusSalary导出-->
<select
id=
"doExport"
resultMap=
"tBusSalaryMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_salary a
<where>
1=1
<if
test=
"idList != null and idList.size > 0"
>
AND a.id in
<foreach
item=
"item"
index=
"index"
collection=
"idList"
open=
"("
separator=
","
close=
")"
>
#{item}
</foreach>
</if>
<if
test=
"idList == null or idList.size == 0"
>
<include
refid=
"tBusSalary_where"
/>
</if>
</where>
</select>
</mapper>
yifu-business/yifu-business-biz/src/main/resources/mapper/TSalaryStatisticsDepartMapper.xml
0 → 100644
View file @
c2bf35c2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yifu.cloud.plus.v1.business.mapper.salary.TSalaryStatisticsDepartMapper"
>
<resultMap
id=
"TSalaryStatisticsDepartVOMap"
type=
"com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsDepartVO"
>
<result
property=
"id"
column=
"ID"
jdbcType=
"VARCHAR"
/>
<result
property=
"departName"
column=
"DEPART_NAME"
jdbcType=
"VARCHAR"
/>
<result
property=
"departId"
column=
"DEPART_ID"
jdbcType=
"INTEGER"
/>
<result
property=
"treeLogo"
column=
"TREE_LOGO"
jdbcType=
"VARCHAR"
/>
<result
property=
"salaryMonth"
column=
"SALARY_MONTH"
jdbcType=
"CHAR"
/>
<result
property=
"lastSalaryMonth"
column=
"LAST_SALARY_MONTH"
jdbcType=
"CHAR"
/>
<result
property=
"peopleNumber"
column=
"PEOPLE_NUMBER"
jdbcType=
"INTEGER"
/>
<result
property=
"peopleNumberOffset"
column=
"PEOPLE_NUMBER_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"peopleNumberFlag"
column=
"PEOPLE_NUMBER_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"payableSalary"
column=
"PAYABLE_SALARY"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableSalaryOffset"
column=
"PAYABLE_SALARY_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableSalaryFlag"
column=
"PAYABLE_SALARY_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"payableIncentiveSalary"
column=
"PAYABLE_INCENTIVE_SALARY"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableIncentiveSalaryOffset"
column=
"PAYABLE_INCENTIVE_SALARY_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableIncentiveSalaryFlag"
column=
"PAYABLE_INCENTIVE_SALARY_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"payableOtherSalary"
column=
"PAYABLE_OTHER_SALARY"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableOtherSalaryOffset"
column=
"PAYABLE_OTHER_SALARY_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableOtherSalaryFlag"
column=
"PAYABLE_OTHER_SALARY_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"payableTotal"
column=
"PAYABLE_TOTAL"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableTotalOffset"
column=
"PAYABLE_TOTAL_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableTotalFlag"
column=
"PAYABLE_TOTAL_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"companySocial"
column=
"COMPANY_SOCIAL"
jdbcType=
"DECIMAL"
/>
<result
property=
"companySocialOffset"
column=
"COMPANY_SOCIAL_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"companySocialFlag"
column=
"COMPANY_SOCIAL_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"companyAccFund"
column=
"COMPANY_ACC_FUND"
jdbcType=
"DECIMAL"
/>
<result
property=
"companyAccFundOffset"
column=
"COMPANY_ACC_FUND_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"companyAccFundFlag"
column=
"COMPANY_ACC_FUND_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"personalSocial"
column=
"PERSONAL_SOCIAL"
jdbcType=
"DECIMAL"
/>
<result
property=
"personalSocialOffset"
column=
"PERSONAL_SOCIAL_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"personalSocialFlag"
column=
"PERSONAL_SOCIAL_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"personalAccFund"
column=
"PERSONAL_ACC_FUND"
jdbcType=
"DECIMAL"
/>
<result
property=
"personalAccFundOffset"
column=
"PERSONAL_ACC_FUND_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"personalAccFundFlag"
column=
"PERSONAL_ACC_FUND_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"indIncomeTax"
column=
"IND_INCOME_TAX"
jdbcType=
"DECIMAL"
/>
<result
property=
"indIncomeTaxOffset"
column=
"IND_INCOME_TAX_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"indIncomeTaxFlag"
column=
"IND_INCOME_TAX_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"otherDedutions"
column=
"OTHER_DEDUTIONS"
jdbcType=
"DECIMAL"
/>
<result
property=
"otherDedutionOffset"
column=
"OTHER_DEDUTION_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"otherDedutionFalg"
column=
"OTHER_DEDUTION_FALG"
jdbcType=
"CHAR"
/>
<result
property=
"dedutionTotal"
column=
"DEDUTION_TOTAL"
jdbcType=
"DECIMAL"
/>
<result
property=
"dedutionTotalOffset"
column=
"DEDUTION_TOTAL_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"dedutionTotalFlag"
column=
"DEDUTION_TOTAL_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"actualSalary"
column=
"ACTUAL_SALARY"
jdbcType=
"DECIMAL"
/>
<result
property=
"actualSalaryOffset"
column=
"ACTUAL_SALARY_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"actualSalaryFlag"
column=
"ACTUAL_SALARY_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"perCapita"
column=
"PER_CAPITA"
jdbcType=
"DECIMAL"
/>
<result
property=
"perCapitaOffset"
column=
"PER_CAPITA_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"perCapitaFlag"
column=
"PER_CAPITA_FLAG"
jdbcType=
"CHAR"
/>
<collection
property=
"children"
ofType=
"com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsDepartVO"
column=
"{salaryMonth=SALARY_MONTH, treeLogo=TREE_LOGO, lastSalaryMonth=LAST_SALARY_MONTH}"
select=
"sumChildSelect"
javaType=
"java.util.ArrayList"
/>
</resultMap>
<resultMap
id=
"TSalaryDepartTotalVO"
type=
"com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO"
>
</resultMap>
<sql
id=
"Where_TSalaryStatisticsDepartVO"
>
<if
test=
"query.treeLogo != null"
>
and temp.TREE_LOGO like concat(#{query.treeLogo}, '%')
</if>
<if
test=
"query.salaryMonth != null and query.salaryMonth.trim() != ''"
>
and temp.SALARY_MONTH = #{query.salaryMonth}
</if>
<if
test=
"query.departLevel != null"
>
and temp.DEPART_LEVEL = #{query.departLevel}
</if>
</sql>
<sql
id=
"Where_ChangeType"
>
<if
test=
"query.salaryChangeType != null and query.salaryChangeType.trim() != ''"
>
<!-- 0应发增加 -->
<if
test=
"query.salaryChangeType == '0'.toString()"
>
and PAYABLE_TOTAL_FLAG = '2'
</if>
<!-- 1应发减少 -->
<if
test=
"query.salaryChangeType == '1'.toString()"
>
and PAYABLE_TOTAL_FLAG = '0'
</if>
<!-- 2应发不变 -->
<if
test=
"query.salaryChangeType == '2'.toString()"
>
and PAYABLE_TOTAL_FLAG = '1'
</if>
<!-- 3实发增加 -->
<if
test=
"query.salaryChangeType == '3'.toString()"
>
and ACTUAL_SALARY_FLAG = '2'
</if>
<!-- 4实发减少 -->
<if
test=
"query.salaryChangeType == '4'.toString()"
>
and ACTUAL_SALARY_FLAG = '0'
</if>
<!-- 5实发不变 -->
<if
test=
"query.salaryChangeType == '5'.toString()"
>
and ACTUAL_SALARY_FLAG = '1'
</if>
<!-- 6人均成本增加 -->
<if
test=
"query.salaryChangeType == '6'.toString()"
>
and PER_CAPITA_FLAG = '2'
</if>
<!-- 7人均成本减少 -->
<if
test=
"query.salaryChangeType == '7'.toString()"
>
and PER_CAPITA_FLAG = '0'
</if>
<!-- 8人均成本不变 -->
<if
test=
"query.salaryChangeType == '8'.toString()"
>
and PER_CAPITA_FLAG = '1'
</if>
<!-- 9扣款增加 -->
<if
test=
"query.salaryChangeType == '9'.toString()"
>
and DEDUTION_TOTAL_FLAG = '2'
</if>
<!-- 10扣款减少 -->
<if
test=
"query.salaryChangeType == '10'.toString()"
>
and DEDUTION_TOTAL_FLAG = '0'
</if>
<!-- 11扣款不变 -->
<if
test=
"query.salaryChangeType == '11'.toString()"
>
and DEDUTION_TOTAL_FLAG = '1'
</if>
</if>
</sql>
<select
id=
"sumChildSelect"
resultType=
"com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsDepartVO"
>
select ID, DEPART_ID, DEPART_NAME, DEPART_LEVEL, SALARY_MONTH, LAST_SALARY_MONTH, PEOPLE_NUMBER,
PEOPLE_NUMBER_OFFSET,PEOPLE_NUMBER_FLAG, PAYABLE_SALARY, TREE_LOGO,
PAYABLE_SALARY_OFFSET, PAYABLE_SALARY_FLAG, PAYABLE_INCENTIVE_SALARY, PAYABLE_INCENTIVE_SALARY_OFFSET,
PAYABLE_INCENTIVE_SALARY_FLAG, PAYABLE_OTHER_SALARY, PAYABLE_OTHER_SALARY_OFFSET, PAYABLE_OTHER_SALARY_FLAG,
PAYABLE_TOTAL, PAYABLE_TOTAL_OFFSET, PAYABLE_TOTAL_FLAG, COMPANY_SOCIAL, COMPANY_SOCIAL_OFFSET,
COMPANY_SOCIAL_FLAG, COMPANY_ACC_FUND, COMPANY_ACC_FUND_OFFSET, COMPANY_ACC_FUND_FLAG, PERSONAL_SOCIAL,
PERSONAL_SOCIAL_OFFSET, PERSONAL_SOCIAL_FLAG, PERSONAL_ACC_FUND, PERSONAL_ACC_FUND_OFFSET,
PERSONAL_ACC_FUND_FLAG, IND_INCOME_TAX, IND_INCOME_TAX_OFFSET, IND_INCOME_TAX_FLAG, OTHER_DEDUTIONS,
OTHER_DEDUTION_OFFSET, OTHER_DEDUTION_FALG, DEDUTION_TOTAL, DEDUTION_TOTAL_OFFSET, DEDUTION_TOTAL_FLAG,
ACTUAL_SALARY, ACTUAL_SALARY_OFFSET, ACTUAL_SALARY_FLAG, round(sum(PER_CAPITA), 2) AS PER_CAPITA,
round(sum(PER_CAPITA_OFFSET), 2) AS PER_CAPITA_OFFSET, PER_CAPITA_FLAG
from (
select
`a`.`ID` AS `ID`,
`a`.`DEPART_ID` AS `DEPART_ID`,
`a`.`DEPART_NAME` AS `DEPART_NAME`,
`a`.`DEPART_LEVEL` AS `DEPART_LEVEL`,
`a`.`SALARY_MONTH` AS `SALARY_MONTH`,
`b`.`SALARY_MONTH` AS `LAST_SALARY_MONTH`,
`a`.`PAYABLE_SALARY` AS `PAYABLE_SALARY`,
`a`.`TREE_LOGO` AS `TREE_LOGO`,
`a`.`PEOPLE_NUMBER` AS `PEOPLE_NUMBER`,
abs((`a`.`PEOPLE_NUMBER` - `b`.`PEOPLE_NUMBER`)) AS `PEOPLE_NUMBER_OFFSET`,
(case
when ((`a`.`PEOPLE_NUMBER` - `b`.`PEOPLE_NUMBER`) > 0) then '2'
when ((`a`.`PEOPLE_NUMBER` - `b`.`PEOPLE_NUMBER`) = 0) then '1'
when ((`a`.`PEOPLE_NUMBER` - `b`.`PEOPLE_NUMBER`)
<![CDATA[<]]>
0)
then '0' end) AS `PEOPLE_NUMBER_FLAG`,
abs((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`)) AS `PAYABLE_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_SALARY_FLAG`,
`a`.`PAYABLE_INCENTIVE_SALARY` AS `PAYABLE_INCENTIVE_SALARY`,
abs((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`)) AS `PAYABLE_INCENTIVE_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_INCENTIVE_SALARY_FLAG`,
`a`.`PAYABLE_OTHER_SALARY` AS `PAYABLE_OTHER_SALARY`,
abs((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`)) AS `PAYABLE_OTHER_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_OTHER_SALARY_FLAG`,
`a`.`PAYABLE_TOTAL` AS `PAYABLE_TOTAL`,
abs((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)) AS `PAYABLE_TOTAL_OFFSET`,
(case
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) > 0) then '2'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) = 0) then '1'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_TOTAL_FLAG`,
`a`.`COMPANY_SOCIAL` AS `COMPANY_SOCIAL`,
abs((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`)) AS `COMPANY_SOCIAL_OFFSET`,
(case
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`) > 0) then '2'
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`) = 0) then '1'
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`)
<![CDATA[<]]>
0)
then '0' end) AS `COMPANY_SOCIAL_FLAG`,
`a`.`COMPANY_ACC_FUND` AS `COMPANY_ACC_FUND`,
abs((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`)) AS `COMPANY_ACC_FUND_OFFSET`,
(case
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`) > 0) then '2'
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`) = 0) then '1'
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`)
<![CDATA[<]]>
0)
then '0' end) AS `COMPANY_ACC_FUND_FLAG`,
`a`.`PERSONAL_SOCIAL` AS `PERSONAL_SOCIAL`,
abs((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`)) AS `PERSONAL_SOCIAL_OFFSET`,
(case
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`) > 0) then '2'
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`) = 0) then '1'
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PERSONAL_SOCIAL_FLAG`,
`a`.`PERSONAL_ACC_FUND` AS `PERSONAL_ACC_FUND`,
abs((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`)) AS `PERSONAL_ACC_FUND_OFFSET`,
(case
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`) > 0) then '2'
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`) = 0) then '1'
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`)
<![CDATA[<]]>
0)
then '0' end) AS `PERSONAL_ACC_FUND_FLAG`,
`a`.`IND_INCOME_TAX` AS `IND_INCOME_TAX`,
abs((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`)) AS `IND_INCOME_TAX_OFFSET`,
(case
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`) > 0) then '2'
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`) = 0) then '1'
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`)
<![CDATA[<]]>
0)
then '0' end) AS `IND_INCOME_TAX_FLAG`,
`a`.`OTHER_DEDUTIONS` AS `OTHER_DEDUTIONS`,
abs((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`)) AS `OTHER_DEDUTION_OFFSET`,
(case
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`) > 0) then '2'
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`) = 0) then '1'
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`)
<![CDATA[<]]>
0)
then '0' end) AS `OTHER_DEDUTION_FALG`,
`a`.`DEDUTION_TOTAL` AS `DEDUTION_TOTAL`,
abs((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)) AS `DEDUTION_TOTAL_OFFSET`,
(case
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) > 0) then '2'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) = 0) then '1'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `DEDUTION_TOTAL_FLAG`,
`a`.`ACTUAL_SALARY` AS `ACTUAL_SALARY`,
abs((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)) AS `ACTUAL_SALARY_OFFSET`,
(case
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) > 0) then '2'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) = 0) then '1'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `ACTUAL_SALARY_FLAG`,
`a`.`PER_CAPITA` AS `PER_CAPITA`,
abs((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)) AS `PER_CAPITA_OFFSET`,
(case
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) > 0) then '2'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) = 0) then '1'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)
<![CDATA[<]]>
0)
then '0' end) AS `PER_CAPITA_FLAG`
from (
SELECT `hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`dept_id` AS `DEPART_ID`,
`hr_business`.`t_bus_salary`.`dept_name` AS `DEPART_NAME`,
`hr_business`.`t_bus_salary`.`dept_level` AS `DEPART_LEVEL`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
concat(#{treeLogo}, '') AS `DOMAIN`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
if(`hr_business`.`t_bus_salary`.`dept_tree_logo`
<![CDATA[<>]]>
'', count(DISTINCT
`hr_business`.`t_bus_salary`.`emp_id_card`), null) AS `PEOPLE_NUMBER`,
(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`)) AS `PER_CAPITA`
FROM `hr_business`.`t_bus_salary`
WHERE
`salary_month` = #{salaryMonth}
and `dept_tree_logo` like concat(#{treeLogo}, '%')
) `a`
LEFT JOIN (
SELECT
`hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`dept_id` AS `DEPART_ID`,
`hr_business`.`t_bus_salary`.`dept_name` AS `DEPART_NAME`,
`hr_business`.`t_bus_salary`.`dept_level` AS `DEPART_LEVEL`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
concat(#{treeLogo}, '') AS `DOMAIN`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
if(`hr_business`.`t_bus_salary`.`dept_tree_logo`
<![CDATA[<>]]>
'', count(DISTINCT
`hr_business`.`t_bus_salary`.`emp_id_card`), null) AS `PEOPLE_NUMBER`,
(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`)) AS `PER_CAPITA`
FROM
`hr_business`.`t_bus_salary`
WHERE
salary_month = #{lastSalaryMonth}
and `dept_tree_logo` like concat(#{treeLogo}, '%')
) `b` ON `a`.DOMAIN = `b`.DOMAIN
) `temp`
<where>
1=1
and temp.TREE_LOGO like concat(#{treeLogo}, '%')
and temp.SALARY_MONTH = #{salaryMonth}
</where>
</select>
<select
id=
"getListByPage"
resultMap=
"TSalaryStatisticsDepartVOMap"
>
select distinct substring_index(a.dept_tree_logo, '-', (#{query.departLevel} + 2)) AS TREE_LOGO,
#{query.salaryMonth} AS SALARY_MONTH,
#{query.lastSalaryMonth} AS LAST_SALARY_MONTH,
b.ID AS ID,
b.NAME AS DEPART_NAME,
b.ID AS DEPART_ID
from hr_business.t_bus_salary a
left join hr_business.t_bus_dept b
on substring_index(a.dept_tree_logo, '-', (#{query.departLevel} + 2)) = b.tree_logo
<where>
1 = 1
and a.salary_month = #{query.salaryMonth}
and length(a.dept_tree_logo) - length(replace(a.dept_tree_logo, '-', '')) >= (#{query.departLevel} + 1)
and substring_index(a.dept_tree_logo, '-', (#{query.departLevel} + 2)) like concat(#{query.treeLogo}, '%')
</where>
</select>
<select
id=
"getCurDepartData"
resultType=
"com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsDepartVO"
>
select ID,
DEPART_ID,
DEPART_NAME,
DEPART_LEVEL,
SALARY_MONTH,
LAST_SALARY_MONTH,
PEOPLE_NUMBER,
PEOPLE_NUMBER_OFFSET,
PEOPLE_NUMBER_FLAG,
PAYABLE_SALARY,
TREE_LOGO,
PAYABLE_SALARY_OFFSET,
PAYABLE_SALARY_FLAG,
PAYABLE_INCENTIVE_SALARY,
PAYABLE_INCENTIVE_SALARY_OFFSET,
PAYABLE_INCENTIVE_SALARY_FLAG,
PAYABLE_OTHER_SALARY,
PAYABLE_OTHER_SALARY_OFFSET,
PAYABLE_OTHER_SALARY_FLAG,
PAYABLE_TOTAL,
PAYABLE_TOTAL_OFFSET,
PAYABLE_TOTAL_FLAG,
COMPANY_SOCIAL,
COMPANY_SOCIAL_OFFSET,
COMPANY_SOCIAL_FLAG,
COMPANY_ACC_FUND,
COMPANY_ACC_FUND_OFFSET,
COMPANY_ACC_FUND_FLAG,
PERSONAL_SOCIAL,
PERSONAL_SOCIAL_OFFSET,
PERSONAL_SOCIAL_FLAG,
PERSONAL_ACC_FUND,
PERSONAL_ACC_FUND_OFFSET,
PERSONAL_ACC_FUND_FLAG,
IND_INCOME_TAX,
IND_INCOME_TAX_OFFSET,
IND_INCOME_TAX_FLAG,
OTHER_DEDUTIONS,
OTHER_DEDUTION_OFFSET,
OTHER_DEDUTION_FALG,
DEDUTION_TOTAL,
DEDUTION_TOTAL_OFFSET,
DEDUTION_TOTAL_FLAG,
ACTUAL_SALARY,
ACTUAL_SALARY_OFFSET,
ACTUAL_SALARY_FLAG,
round(sum(PER_CAPITA), 2) AS PER_CAPITA,
round(sum(PER_CAPITA_OFFSET), 2) AS PER_CAPITA_OFFSET,
PER_CAPITA_FLAG
from (
select `a`.`ID` AS `ID`,
`a`.`DEPART_ID` AS `DEPART_ID`,
`a`.`DEPART_NAME` AS `DEPART_NAME`,
`a`.`DEPART_LEVEL` AS `DEPART_LEVEL`,
`a`.`SALARY_MONTH` AS `SALARY_MONTH`,
`b`.`SALARY_MONTH` AS `LAST_SALARY_MONTH`,
`a`.`PAYABLE_SALARY` AS `PAYABLE_SALARY`,
`a`.`TREE_LOGO` AS `TREE_LOGO`,
`a`.`PEOPLE_NUMBER` AS `PEOPLE_NUMBER`,
abs((`a`.`PEOPLE_NUMBER` - `b`.`PEOPLE_NUMBER`)) AS `PEOPLE_NUMBER_OFFSET`,
(case
when ((`a`.`PEOPLE_NUMBER` - `b`.`PEOPLE_NUMBER`) > 0) then '2'
when ((`a`.`PEOPLE_NUMBER` - `b`.`PEOPLE_NUMBER`) = 0) then '1'
when ((`a`.`PEOPLE_NUMBER` - `b`.`PEOPLE_NUMBER`)
<![CDATA[<]]>
0)
then '0' end) AS `PEOPLE_NUMBER_FLAG`,
abs((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`)) AS `PAYABLE_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_SALARY_FLAG`,
`a`.`PAYABLE_INCENTIVE_SALARY` AS `PAYABLE_INCENTIVE_SALARY`,
abs((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`)) AS `PAYABLE_INCENTIVE_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_INCENTIVE_SALARY_FLAG`,
`a`.`PAYABLE_OTHER_SALARY` AS `PAYABLE_OTHER_SALARY`,
abs((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`)) AS `PAYABLE_OTHER_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_OTHER_SALARY_FLAG`,
`a`.`PAYABLE_TOTAL` AS `PAYABLE_TOTAL`,
abs((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)) AS `PAYABLE_TOTAL_OFFSET`,
(case
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) > 0) then '2'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) = 0) then '1'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_TOTAL_FLAG`,
`a`.`COMPANY_SOCIAL` AS `COMPANY_SOCIAL`,
abs((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`)) AS `COMPANY_SOCIAL_OFFSET`,
(case
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`) > 0) then '2'
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`) = 0) then '1'
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`)
<![CDATA[<]]>
0)
then '0' end) AS `COMPANY_SOCIAL_FLAG`,
`a`.`COMPANY_ACC_FUND` AS `COMPANY_ACC_FUND`,
abs((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`)) AS `COMPANY_ACC_FUND_OFFSET`,
(case
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`) > 0) then '2'
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`) = 0) then '1'
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`)
<![CDATA[<]]>
0)
then '0' end) AS `COMPANY_ACC_FUND_FLAG`,
`a`.`PERSONAL_SOCIAL` AS `PERSONAL_SOCIAL`,
abs((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`)) AS `PERSONAL_SOCIAL_OFFSET`,
(case
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`) > 0) then '2'
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`) = 0) then '1'
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PERSONAL_SOCIAL_FLAG`,
`a`.`PERSONAL_ACC_FUND` AS `PERSONAL_ACC_FUND`,
abs((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`)) AS `PERSONAL_ACC_FUND_OFFSET`,
(case
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`) > 0) then '2'
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`) = 0) then '1'
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`)
<![CDATA[<]]>
0)
then '0' end) AS `PERSONAL_ACC_FUND_FLAG`,
`a`.`IND_INCOME_TAX` AS `IND_INCOME_TAX`,
abs((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`)) AS `IND_INCOME_TAX_OFFSET`,
(case
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`) > 0) then '2'
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`) = 0) then '1'
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`)
<![CDATA[<]]>
0)
then '0' end) AS `IND_INCOME_TAX_FLAG`,
`a`.`OTHER_DEDUTIONS` AS `OTHER_DEDUTIONS`,
abs((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`)) AS `OTHER_DEDUTION_OFFSET`,
(case
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`) > 0) then '2'
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`) = 0) then '1'
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`)
<![CDATA[<]]>
0)
then '0' end) AS `OTHER_DEDUTION_FALG`,
`a`.`DEDUTION_TOTAL` AS `DEDUTION_TOTAL`,
abs((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)) AS `DEDUTION_TOTAL_OFFSET`,
(case
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) > 0) then '2'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) = 0) then '1'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `DEDUTION_TOTAL_FLAG`,
`a`.`ACTUAL_SALARY` AS `ACTUAL_SALARY`,
abs((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)) AS `ACTUAL_SALARY_OFFSET`,
(case
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) > 0) then '2'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) = 0) then '1'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `ACTUAL_SALARY_FLAG`,
`a`.`PER_CAPITA` AS `PER_CAPITA`,
abs((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)) AS `PER_CAPITA_OFFSET`,
(case
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) > 0) then '2'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) = 0) then '1'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)
<![CDATA[<]]>
0)
then '0' end) AS `PER_CAPITA_FLAG`
from (
SELECT `hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`dept_id` AS `DEPART_ID`,
`hr_business`.`t_bus_salary`.`dept_name` AS `DEPART_NAME`,
`hr_business`.`t_bus_salary`.`dept_level` AS `DEPART_LEVEL`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
concat('domain', '') AS `DOMAIN`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
if(`hr_business`.`t_bus_salary`.`dept_tree_logo`
<![CDATA[<>]]>
'', count(DISTINCT
`hr_business`.`t_bus_salary`.`emp_id_card`),
null) AS `PEOPLE_NUMBER`,
(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`)) AS `PER_CAPITA`
FROM `hr_business`.`t_bus_salary`
WHERE 1 = 1
and salary_month = #{query.salaryMonth}
and `dept_id` = #{query.departId}
) `a`
LEFT JOIN (
SELECT `hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`dept_id` AS `DEPART_ID`,
`hr_business`.`t_bus_salary`.`dept_name` AS `DEPART_NAME`,
`hr_business`.`t_bus_salary`.`dept_level` AS `DEPART_LEVEL`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
concat('domain', '') AS `DOMAIN`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
if(`hr_business`.`t_bus_salary`.`dept_tree_logo`
<![CDATA[<>]]>
'', count(DISTINCT
`hr_business`.`t_bus_salary`.`emp_id_card`),
null) AS `PEOPLE_NUMBER`,
(sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`)) AS `PER_CAPITA`
FROM `hr_business`.`t_bus_salary`
WHERE 1 = 1
and salary_month = #{query.lastSalaryMonth}
and `dept_id` = #{query.departId}
) `b` ON `a`.DOMAIN = `b`.DOMAIN
) `temp`
</select>
<select
id=
"sumSalaryDepart"
resultMap=
"TSalaryDepartTotalVO"
>
select
sum(PAYABLE_TOTAL) AS PAYABLE_TOTAL,
sum(PAYABLE_TOTAL_OFFSET) AS PAYABLE_TOTAL_OFFSET,
PAYABLE_TOTAL_FLAG,
sum(DEDUTION_TOTAL) AS DEDUTION_TOTAL,
sum(DEDUTION_TOTAL_OFFSET) AS DEDUTION_TOTAL_OFFSET,
DEDUTION_TOTAL_FLAG,
sum(ACTUAL_SALARY) AS ACTUAL_SALARY,
sum(ACTUAL_SALARY_OFFSET) AS ACTUAL_SALARY_OFFSET,
ACTUAL_SALARY_FLAG,
round(sum(PER_CAPITA), 2) AS PER_CAPITA,
round(sum(PER_CAPITA_OFFSET), 2) AS PER_CAPITA_OFFSET,
PER_CAPITA_FLAG
from (
select
`a`.`PAYABLE_TOTAL` AS `PAYABLE_TOTAL`,
abs((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)) AS `PAYABLE_TOTAL_OFFSET`,
(case
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) > 0) then '2'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) = 0) then '1'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_TOTAL_FLAG`,
`a`.`DEDUTION_TOTAL` AS `DEDUTION_TOTAL`,
abs((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)) AS `DEDUTION_TOTAL_OFFSET`,
(case
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) > 0) then '2'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) = 0) then '1'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `DEDUTION_TOTAL_FLAG`,
`a`.`ACTUAL_SALARY` AS `ACTUAL_SALARY`,
abs((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)) AS `ACTUAL_SALARY_OFFSET`,
(case
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) > 0) then '2'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) = 0) then '1'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `ACTUAL_SALARY_FLAG`,
`a`.`PER_CAPITA` AS `PER_CAPITA`,
abs((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)) AS `PER_CAPITA_OFFSET`,
(case
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) > 0) then '2'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) = 0) then '1'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)
<![CDATA[<]]>
0)
then '0' end) AS `PER_CAPITA_FLAG`
from (
SELECT `hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`dept_id` AS `DEPART_ID`,
`hr_business`.`t_bus_salary`.`dept_name` AS `DEPART_NAME`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
#{query.treeLogo} AS `DOMAIN`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`) AS `PEOPLE_NUMBER`,
round(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`), 2) AS `PER_CAPITA`
FROM `hr_business`.`t_bus_salary`
WHERE
salary_month = #{query.salaryMonth}
and dept_tree_logo like concat(#{query.treeLogo}, '%')
) `a`
LEFT JOIN (
SELECT
`hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`dept_id` AS `DEPART_ID`,
`hr_business`.`t_bus_salary`.`dept_name` AS `DEPART_NAME`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
`hr_business`.`t_bus_salary`.`salary_month` AS `salary_month`,
#{query.treeLogo} AS `DOMAIN`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`) AS `PEOPLE_NUMBER`,
round(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`), 2) AS `PER_CAPITA`
FROM
`hr_business`.`t_bus_salary`
WHERE
salary_month = #{query.lastSalaryMonth}
and dept_tree_logo like concat(#{query.treeLogo}, '%')
) `b` ON `a`.DOMAIN = `b`.DOMAIN
) `temp`
</select>
<select
id=
"getCurDepartSumData"
resultMap=
"TSalaryDepartTotalVO"
>
select PAYABLE_TOTAL,
PAYABLE_TOTAL_OFFSET,
PAYABLE_TOTAL_FLAG,
ACTUAL_SALARY,
ACTUAL_SALARY_OFFSET,
ACTUAL_SALARY_FLAG,
round(sum(PER_CAPITA), 2) AS PER_CAPITA,
round(sum(PER_CAPITA_OFFSET), 2) AS PER_CAPITA_OFFSET,
PER_CAPITA_FLAG
from (
select `a`.`PAYABLE_TOTAL` AS `PAYABLE_TOTAL`,
abs((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)) AS `PAYABLE_TOTAL_OFFSET`,
(case
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) > 0) then '2'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) = 0) then '1'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_TOTAL_FLAG`,
`a`.`ACTUAL_SALARY` AS `ACTUAL_SALARY`,
abs((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)) AS `ACTUAL_SALARY_OFFSET`,
(case
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) > 0) then '2'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) = 0) then '1'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `ACTUAL_SALARY_FLAG`,
`a`.`PER_CAPITA` AS `PER_CAPITA`,
abs((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)) AS `PER_CAPITA_OFFSET`,
(case
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) > 0) then '2'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) = 0) then '1'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)
<![CDATA[<]]>
0)
then '0' end) AS `PER_CAPITA_FLAG`
from (
SELECT `hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`dept_id` AS `DEPART_ID`,
`hr_business`.`t_bus_salary`.`dept_name` AS `DEPART_NAME`,
`hr_business`.`t_bus_salary`.`dept_level` AS `DEPART_LEVEL`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
concat('domain', '') AS `DOMAIN`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
if(`hr_business`.`t_bus_salary`.`dept_tree_logo`
<![CDATA[<>]]>
'', count(DISTINCT
`hr_business`.`t_bus_salary`.`emp_id_card`),
null) AS `PEOPLE_NUMBER`,
(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`)) AS `PER_CAPITA`
FROM `hr_business`.`t_bus_salary`
WHERE 1 = 1
and salary_month = #{query.salaryMonth}
and `dept_id` = #{query.departId}
) `a`
LEFT JOIN (
SELECT `hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`dept_id` AS `DEPART_ID`,
`hr_business`.`t_bus_salary`.`dept_name` AS `DEPART_NAME`,
`hr_business`.`t_bus_salary`.`dept_level` AS `DEPART_LEVEL`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
concat('domain', '') AS `DOMAIN`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
if(`hr_business`.`t_bus_salary`.`dept_tree_logo`
<![CDATA[<>]]>
'', count(DISTINCT
`hr_business`.`t_bus_salary`.`emp_id_card`),
null) AS `PEOPLE_NUMBER`,
(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(DISTINCT `hr_business`.`t_bus_salary`.`emp_id_card`)) AS `PER_CAPITA`
FROM `hr_business`.`t_bus_salary`
WHERE 1 = 1
and salary_month = #{query.lastSalaryMonth}
and `dept_id` = #{query.departId}
) `b` ON `a`.DOMAIN = `b`.DOMAIN
) `temp`
</select>
</mapper>
yifu-business/yifu-business-biz/src/main/resources/mapper/TSalaryStatisticsPersonalMapper.xml
0 → 100644
View file @
c2bf35c2
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yifu.cloud.plus.v1.business.mapper.salary.TSalaryStatisticsPersonalMapper"
>
<resultMap
id=
"TSalaryStatisticsPersonVOMap"
type=
"com.yifu.cloud.plus.v1.business.vo.salary.TSalaryStatisticsPersonalVO"
>
<result
property=
"id"
column=
"ID"
jdbcType=
"VARCHAR"
/>
<result
property=
"teleNo"
column=
"TELE_NO"
jdbcType=
"VARCHAR"
/>
<result
property=
"empIdCard"
column=
"emp_id_card"
/>
<result
property=
"empName"
column=
"EMP_NAME"
jdbcType=
"VARCHAR"
/>
<result
property=
"salaryMonth"
column=
"SALARY_MONTH"
jdbcType=
"CHAR"
/>
<result
property=
"payableSalary"
column=
"PAYABLE_SALARY"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableSalaryOffset"
column=
"PAYABLE_SALARY_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableSalaryFlag"
column=
"PAYABLE_SALARY_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"payableIncentiveSalary"
column=
"PAYABLE_INCENTIVE_SALARY"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableIncentiveSalaryOffset"
column=
"PAYABLE_INCENTIVE_SALARY_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableIncentiveSalaryFlag"
column=
"PAYABLE_INCENTIVE_SALARY_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"payableOtherSalary"
column=
"PAYABLE_OTHER_SALARY"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableOtherSalaryOffset"
column=
"PAYABLE_OTHER_SALARY_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableOtherSalaryFlag"
column=
"PAYABLE_OTHER_SALARY_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"payableTotal"
column=
"PAYABLE_TOTAL"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableTotalOffset"
column=
"PAYABLE_TOTAL_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"payableTotalFlag"
column=
"PAYABLE_TOTAL_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"companySocial"
column=
"COMPANY_SOCIAL"
jdbcType=
"DECIMAL"
/>
<result
property=
"companySocialOffset"
column=
"COMPANY_SOCIAL_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"companySocialFlag"
column=
"COMPANY_SOCIAL_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"companyAccFund"
column=
"COMPANY_ACC_FUND"
jdbcType=
"DECIMAL"
/>
<result
property=
"companyAccFundOffset"
column=
"COMPANY_ACC_FUND_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"companyAccFundFlag"
column=
"COMPANY_ACC_FUND_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"personalSocial"
column=
"PERSONAL_SOCIAL"
jdbcType=
"DECIMAL"
/>
<result
property=
"personalSocialOffset"
column=
"PERSONAL_SOCIAL_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"personalSocialFlag"
column=
"PERSONAL_SOCIAL_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"personalAccFund"
column=
"PERSONAL_ACC_FUND"
jdbcType=
"DECIMAL"
/>
<result
property=
"personalAccFundOffset"
column=
"PERSONAL_ACC_FUND_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"personalAccFundFlag"
column=
"PERSONAL_ACC_FUND_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"indIncomeTax"
column=
"IND_INCOME_TAX"
jdbcType=
"DECIMAL"
/>
<result
property=
"indIncomeTaxOffset"
column=
"IND_INCOME_TAX_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"indIncomeTaxFlag"
column=
"IND_INCOME_TAX_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"otherDedutions"
column=
"OTHER_DEDUTIONS"
jdbcType=
"DECIMAL"
/>
<result
property=
"otherDedutionOffset"
column=
"OTHER_DEDUTION_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"otherDedutionFalg"
column=
"OTHER_DEDUTION_FALG"
jdbcType=
"CHAR"
/>
<result
property=
"dedutionTotal"
column=
"DEDUTION_TOTAL"
jdbcType=
"DECIMAL"
/>
<result
property=
"dedutionTotalOffset"
column=
"DEDUTION_TOTAL_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"dedutionTotalFlag"
column=
"DEDUTION_TOTAL_FLAG"
jdbcType=
"CHAR"
/>
<result
property=
"actualSalary"
column=
"ACTUAL_SALARY"
jdbcType=
"DECIMAL"
/>
<result
property=
"actualSalaryOffset"
column=
"ACTUAL_SALARY_OFFSET"
jdbcType=
"DECIMAL"
/>
<result
property=
"actualSalaryFlag"
column=
"ACTUAL_SALARY_FLAG"
jdbcType=
"CHAR"
/>
</resultMap>
<resultMap
id=
"TSalaryDepartTotalVO"
type=
"com.yifu.cloud.plus.v1.business.vo.salary.TSalaryTotalVO"
>
</resultMap>
<sql
id=
"Where_TSalaryStatisticsPersonVO"
>
<if
test=
"query.treeLogo != null"
>
and temp.TREE_LOGO like concat(#{query.treeLogo}, '%')
</if>
<if
test=
"query.teleNo != null and query.teleNo.trim() != ''"
>
and temp.TELE_NO like concat('%', #{query.teleNo}, '%')
</if>
<if
test=
"query.empName != null and query.empName.trim() != ''"
>
and temp.EMP_NAME like concat('%', #{query.empName}, '%')
</if>
<if
test=
"query.empIdCard != null and query.empIdCard.trim() != ''"
>
AND temp.emp_id_card like concat(#{query.empIdCard}, '%')
</if>
<if
test=
"query.salaryMonth != null and query.salaryMonth.trim() != ''"
>
and temp.SALARY_MONTH = #{query.salaryMonth}
</if>
<if
test=
"query.salaryChangeType != null and query.salaryChangeType.trim() != ''"
>
<!-- 0应发增加 -->
<if
test=
"query.salaryChangeType == '0'.toString()"
>
and temp.PAYABLE_TOTAL_FLAG = '2'
</if>
<!-- 1应发减少 -->
<if
test=
"query.salaryChangeType == '1'.toString()"
>
and temp.PAYABLE_TOTAL_FLAG = '0'
</if>
<!-- 2应发不变 -->
<if
test=
"query.salaryChangeType == '2'.toString()"
>
and temp.PAYABLE_TOTAL_FLAG = '1'
</if>
<!-- 3实发增加 -->
<if
test=
"query.salaryChangeType == '3'.toString()"
>
and temp.ACTUAL_SALARY_FLAG = '2'
</if>
<!-- 4实发减少 -->
<if
test=
"query.salaryChangeType == '4'.toString()"
>
and temp.ACTUAL_SALARY_FLAG = '0'
</if>
<!-- 5实发不变 -->
<if
test=
"query.salaryChangeType == '5'.toString()"
>
and temp.ACTUAL_SALARY_FLAG = '1'
</if>
<!-- 6人均成本增加 -->
<if
test=
"query.salaryChangeType == '6'.toString()"
>
and temp.PER_CAPITA_FLAG = '2'
</if>
<!-- 7人均成本减少 -->
<if
test=
"query.salaryChangeType == '7'.toString()"
>
and temp.PER_CAPITA_FLAG = '0'
</if>
<!-- 8人均成本不变 -->
<if
test=
"query.salaryChangeType == '8'.toString()"
>
and temp.PER_CAPITA_FLAG = '1'
</if>
<!-- 9扣款增加 -->
<if
test=
"query.salaryChangeType == '9'.toString()"
>
and temp.DEDUTION_TOTAL_FLAG = '2'
</if>
<!-- 10扣款减少 -->
<if
test=
"query.salaryChangeType == '10'.toString()"
>
and temp.DEDUTION_TOTAL_FLAG = '0'
</if>
<!-- 11扣款不变 -->
<if
test=
"query.salaryChangeType == '11'.toString()"
>
and temp.DEDUTION_TOTAL_FLAG = '1'
</if>
</if>
</sql>
<select
id=
"getListByPage"
resultMap=
"TSalaryStatisticsPersonVOMap"
>
select ID, TELE_NO,EMP_ID_CARD, EMP_NAME, SALARY_MONTH, PAYABLE_SALARY,TREE_LOGO,
PAYABLE_SALARY_OFFSET, PAYABLE_SALARY_FLAG, PAYABLE_INCENTIVE_SALARY, PAYABLE_INCENTIVE_SALARY_OFFSET,
PAYABLE_INCENTIVE_SALARY_FLAG, PAYABLE_OTHER_SALARY, PAYABLE_OTHER_SALARY_OFFSET, PAYABLE_OTHER_SALARY_FLAG,
PAYABLE_TOTAL, PAYABLE_TOTAL_OFFSET, PAYABLE_TOTAL_FLAG, COMPANY_SOCIAL, COMPANY_SOCIAL_OFFSET,
COMPANY_SOCIAL_FLAG, COMPANY_ACC_FUND, COMPANY_ACC_FUND_OFFSET, COMPANY_ACC_FUND_FLAG, PERSONAL_SOCIAL,
PERSONAL_SOCIAL_OFFSET, PERSONAL_SOCIAL_FLAG, PERSONAL_ACC_FUND, PERSONAL_ACC_FUND_OFFSET,
PERSONAL_ACC_FUND_FLAG, IND_INCOME_TAX, IND_INCOME_TAX_OFFSET, IND_INCOME_TAX_FLAG, OTHER_DEDUTIONS,
OTHER_DEDUTION_OFFSET, OTHER_DEDUTION_FALG, DEDUTION_TOTAL, DEDUTION_TOTAL_OFFSET, DEDUTION_TOTAL_FLAG,
ACTUAL_SALARY, ACTUAL_SALARY_OFFSET, ACTUAL_SALARY_FLAG
from (
select
`a`.`ID` AS `ID`,
`a`.`TELE_NO` AS `TELE_NO`,
`a`.`EMP_NAME` AS `EMP_NAME`,
`a`.`EMP_ID_CARD` AS `EMP_ID_CARD`,
`a`.`TREE_LOGO` AS `TREE_LOGO`,
`a`.`SALARY_MONTH` AS `SALARY_MONTH`,
`a`.`PAYABLE_SALARY` AS `PAYABLE_SALARY`,
abs((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`)) AS `PAYABLE_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_SALARY` - `b`.`PAYABLE_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_SALARY_FLAG`,
`a`.`PAYABLE_INCENTIVE_SALARY` AS `PAYABLE_INCENTIVE_SALARY`,
abs((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`)) AS `PAYABLE_INCENTIVE_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_INCENTIVE_SALARY` - `b`.`PAYABLE_INCENTIVE_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_INCENTIVE_SALARY_FLAG`,
`a`.`PAYABLE_OTHER_SALARY` AS `PAYABLE_OTHER_SALARY`,
abs((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`)) AS `PAYABLE_OTHER_SALARY_OFFSET`,
(case
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`) > 0) then '2'
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`) = 0) then '1'
when ((`a`.`PAYABLE_OTHER_SALARY` - `b`.`PAYABLE_OTHER_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_OTHER_SALARY_FLAG`,
`a`.`PAYABLE_TOTAL` AS `PAYABLE_TOTAL`,
abs((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)) AS `PAYABLE_TOTAL_OFFSET`,
(case
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) > 0) then '2'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) = 0) then '1'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_TOTAL_FLAG`,
`a`.`COMPANY_SOCIAL` AS `COMPANY_SOCIAL`,
abs((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`)) AS `COMPANY_SOCIAL_OFFSET`,
(case
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`) > 0) then '2'
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`) = 0) then '1'
when ((`a`.`COMPANY_SOCIAL` - `b`.`COMPANY_SOCIAL`)
<![CDATA[<]]>
0)
then '0' end) AS `COMPANY_SOCIAL_FLAG`,
`a`.`COMPANY_ACC_FUND` AS `COMPANY_ACC_FUND`,
abs((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`)) AS `COMPANY_ACC_FUND_OFFSET`,
(case
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`) > 0) then '2'
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`) = 0) then '1'
when ((`a`.`COMPANY_ACC_FUND` - `b`.`COMPANY_ACC_FUND`)
<![CDATA[<]]>
0)
then '0' end) AS `COMPANY_ACC_FUND_FLAG`,
`a`.`PERSONAL_SOCIAL` AS `PERSONAL_SOCIAL`,
abs((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`)) AS `PERSONAL_SOCIAL_OFFSET`,
(case
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`) > 0) then '2'
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`) = 0) then '1'
when ((`a`.`PERSONAL_SOCIAL` - `b`.`PERSONAL_SOCIAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PERSONAL_SOCIAL_FLAG`,
`a`.`PERSONAL_ACC_FUND` AS `PERSONAL_ACC_FUND`,
abs((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`)) AS `PERSONAL_ACC_FUND_OFFSET`,
(case
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`) > 0) then '2'
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`) = 0) then '1'
when ((`a`.`PERSONAL_ACC_FUND` - `b`.`PERSONAL_ACC_FUND`)
<![CDATA[<]]>
0)
then '0' end) AS `PERSONAL_ACC_FUND_FLAG`,
`a`.`IND_INCOME_TAX` AS `IND_INCOME_TAX`,
abs((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`)) AS `IND_INCOME_TAX_OFFSET`,
(case
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`) > 0) then '2'
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`) = 0) then '1'
when ((`a`.`IND_INCOME_TAX` - `b`.`IND_INCOME_TAX`)
<![CDATA[<]]>
0)
then '0' end) AS `IND_INCOME_TAX_FLAG`,
`a`.`OTHER_DEDUTIONS` AS `OTHER_DEDUTIONS`,
abs((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`)) AS `OTHER_DEDUTION_OFFSET`,
(case
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`) > 0) then '2'
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`) = 0) then '1'
when ((`a`.`OTHER_DEDUTIONS` - `b`.`OTHER_DEDUTIONS`)
<![CDATA[<]]>
0)
then '0' end) AS `OTHER_DEDUTION_FALG`,
`a`.`DEDUTION_TOTAL` AS `DEDUTION_TOTAL`,
abs((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)) AS `DEDUTION_TOTAL_OFFSET`,
(case
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) > 0) then '2'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) = 0) then '1'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `DEDUTION_TOTAL_FLAG`,
`a`.`ACTUAL_SALARY` AS `ACTUAL_SALARY`,
abs((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)) AS `ACTUAL_SALARY_OFFSET`,
(case
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) > 0) then '2'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) = 0) then '1'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `ACTUAL_SALARY_FLAG`
from (
SELECT
`hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`tele_no` AS `TELE_NO`,
`hr_business`.`t_bus_salary`.`emp_id_card` AS `EMP_ID_CARD`,
`hr_business`.`t_bus_salary`.`emp_name` AS `EMP_NAME`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`
FROM `hr_business`.`t_bus_salary`
<where>
1=1
and salary_month = #{query.salaryMonth}
<if
test=
"query.selectType == '0'.toString()"
>
and dept_tree_logo like concat(#{query.treeLogo}, '%')
</if>
<if
test=
"query.selectType == '1'.toString()"
>
and dept_tree_logo = #{query.treeLogo}
</if>
</where>
GROUP BY EMP_ID_CARD
) `a`
LEFT JOIN (
SELECT
`hr_business`.`t_bus_salary`.`id` AS `ID`,
`hr_business`.`t_bus_salary`.`tele_no` AS `TELE_NO`,
`hr_business`.`t_bus_salary`.`emp_name` AS `EMP_NAME`,
`hr_business`.`t_bus_salary`.`emp_id_card` AS `EMP_ID_CARD`,
`hr_business`.`t_bus_salary`.`salary_month` AS `salary_month`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `TREE_LOGO`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`
FROM
`hr_business`.`t_bus_salary`
<where>
1=1
and salary_month = #{query.lastSalaryMonth}
<if
test=
"query.selectType == '0'.toString()"
>
and dept_tree_logo like concat(#{query.treeLogo}, '%')
</if>
<if
test=
"query.selectType == '1'.toString()"
>
and dept_tree_logo = #{query.treeLogo}
</if>
</where>
GROUP BY emp_id_card
) `b` ON `a`.emp_id_card = `b`.emp_id_card
) `temp`
<where>
1=1
<include
refid=
"Where_TSalaryStatisticsPersonVO"
/>
</where>
</select>
<select
id=
"sumSalaryPerson"
resultMap=
"TSalaryDepartTotalVO"
>
select TREE_LOGO,
EMP_NAME,
TELE_NO,
SALARY_MONTH,
sum(PAYABLE_TOTAL) AS PAYABLE_TOTAL,
sum(PAYABLE_TOTAL_OFFSET) AS PAYABLE_TOTAL_OFFSET,
PAYABLE_TOTAL_FLAG,
sum(DEDUTION_TOTAL) AS DEDUTION_TOTAL,
sum(DEDUTION_TOTAL_OFFSET) AS DEDUTION_TOTAL_OFFSET,
DEDUTION_TOTAL_FLAG,
sum(ACTUAL_SALARY) AS ACTUAL_SALARY,
sum(ACTUAL_SALARY_OFFSET) AS ACTUAL_SALARY_OFFSET,
ACTUAL_SALARY_FLAG,
convert(sum(PER_CAPITA), DECIMAL(10,2)) AS PER_CAPITA,
convert(sum(PER_CAPITA_OFFSET), DECIMAL(10,2)) AS PER_CAPITA_OFFSET,
PER_CAPITA_FLAG
from (
select
`a`.`TELE_NO` AS `TELE_NO`,
`a`.`EMP_NAME` AS `EMP_NAME`,
`a`.`SALARY_MONTH` AS `SALARY_MONTH`,
`a`.`DEPART_TREE_LOGO` AS `TREE_LOGO`,
`a`.`PAYABLE_TOTAL` AS `PAYABLE_TOTAL`,
abs((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)) AS `PAYABLE_TOTAL_OFFSET`,
(case
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) > 0) then '2'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`) = 0) then '1'
when ((`a`.`PAYABLE_TOTAL` - `b`.`PAYABLE_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `PAYABLE_TOTAL_FLAG`,
`a`.`DEDUTION_TOTAL` AS `DEDUTION_TOTAL`,
abs((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)) AS `DEDUTION_TOTAL_OFFSET`,
(case
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) > 0) then '2'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`) = 0) then '1'
when ((`a`.`DEDUTION_TOTAL` - `b`.`DEDUTION_TOTAL`)
<![CDATA[<]]>
0)
then '0' end) AS `DEDUTION_TOTAL_FLAG`,
`a`.`ACTUAL_SALARY` AS `ACTUAL_SALARY`,
abs((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)) AS `ACTUAL_SALARY_OFFSET`,
(case
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) > 0) then '2'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`) = 0) then '1'
when ((`a`.`ACTUAL_SALARY` - `b`.`ACTUAL_SALARY`)
<![CDATA[<]]>
0)
then '0' end) AS `ACTUAL_SALARY_FLAG`,
`a`.`PER_CAPITA` AS `PER_CAPITA`,
abs((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)) AS `PER_CAPITA_OFFSET`,
(case
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) > 0) then '2'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`) = 0) then '1'
when ((`a`.`PER_CAPITA` - `b`.`PER_CAPITA`)
<![CDATA[<]]>
0)
then '0' end) AS `PER_CAPITA_FLAG`
from (
SELECT
`hr_business`.`t_bus_salary`.`tele_no` AS `TELE_NO`,
`hr_business`.`t_bus_salary`.`emp_name` AS `EMP_NAME`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `DEPART_TREE_LOGO`,
`hr_business`.`t_bus_salary`.`salary_month` AS `SALARY_MONTH`,
#{query.treeLogo} AS `DOMAIN`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(distinct emp_id_card)) AS `PER_CAPITA`
FROM `hr_business`.`t_bus_salary`
<where>
1=1
and salary_month = #{query.salaryMonth}
<if
test=
"query.selectType == '0'.toString()"
>
and dept_tree_logo like concat(#{query.treeLogo}, '%')
</if>
<if
test=
"query.selectType == '1'.toString()"
>
and dept_tree_logo = #{query.treeLogo}
</if>
<if
test=
"query.teleNo != null and query.teleNo.trim() != ''"
>
and TELE_NO like concat('%', #{query.teleNo}, '%')
</if>
<if
test=
"query.empName != null and query.empName.trim() != ''"
>
and EMP_NAME like concat('%', #{query.empName}, '%')
</if>
<if
test=
"query.empIdCard != null and query.empIdCard.trim() != ''"
>
AND EMP_ID_CARD like concat(#{query.empIdCard}, '%')
</if>
</where>
) `a`
LEFT JOIN
(
SELECT
`hr_business`.`t_bus_salary`.`tele_no` AS `TELE_NO`,
`hr_business`.`t_bus_salary`.`emp_name` AS `EMP_NAME`,
`hr_business`.`t_bus_salary`.`dept_tree_logo` AS `DEPART_TREE_LOGO`,
`hr_business`.`t_bus_salary`.`salary_month` AS `salary_month`,
#{query.treeLogo} AS `DOMAIN`,
sum(`hr_business`.`t_bus_salary`.`relay_salary`) AS `PAYABLE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_incent`) AS `PAYABLE_INCENTIVE_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_other`) AS `PAYABLE_OTHER_SALARY`,
sum(`hr_business`.`t_bus_salary`.`relay_sum`) AS `PAYABLE_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`unit_social`) AS `COMPANY_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`unit_fund`) AS `COMPANY_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_social`) AS `PERSONAL_SOCIAL`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_fund`) AS `PERSONAL_ACC_FUND`,
sum(`hr_business`.`t_bus_salary`.`withholid_person_tax`) AS `IND_INCOME_TAX`,
sum(`hr_business`.`t_bus_salary`.`withholid_other`) AS `OTHER_DEDUTIONS`,
sum(`hr_business`.`t_bus_salary`.`withholid_sum`) AS `DEDUTION_TOTAL`,
sum(`hr_business`.`t_bus_salary`.`actual_salary`) AS `ACTUAL_SALARY`,
(
sum(`hr_business`.`t_bus_salary`.`relay_sum`) /
count(distinct emp_id_card)) AS `PER_CAPITA`
FROM
`hr_business`.`t_bus_salary`
<where>
1=1
and salary_month = #{query.lastSalaryMonth}
<if
test=
"query.selectType == '0'.toString()"
>
and dept_tree_logo like concat(#{query.treeLogo}, '%')
</if>
<if
test=
"query.selectType == '1'.toString()"
>
and dept_tree_logo = #{query.treeLogo}
</if>
<if
test=
"query.teleNo != null and query.teleNo.trim() != ''"
>
and TELE_NO like concat('%', #{query.teleNo}, '%')
</if>
<if
test=
"query.empName != null and query.empName.trim() != ''"
>
and EMP_NAME like concat('%', #{query.empName}, '%')
</if>
<if
test=
"query.empIdCard != null and query.empIdCard.trim() != ''"
>
AND EMP_ID_CARD like concat(#{query.empIdCard}, '%')
</if>
</where>
) `b` ON `a`.DOMAIN = `b`.DOMAIN
) `temp`
</select>
</mapper>
yifu-common/yifu-common-core/src/main/java/com/yifu/cloud/plus/v1/yifu/common/core/constant/CommonConstants.java
View file @
c2bf35c2
...
...
@@ -512,4 +512,12 @@ public interface CommonConstants {
* @Author fxj
**/
public
static
final
long
HR_B_ORG_ID
=
295
;
public
static
final
String
TAG_FROMAT
=
"%04d"
;
/**
* SEARCH SUCESS
* @Author fxj
* @Date 2020-10-13
**/
public
static
final
String
SEARCH_SUCCESS
=
"查询成功!"
;
}
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