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
776608d9
Commit
776608d9
authored
Jan 06, 2023
by
fangxinjiang
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/MVP1.4' into MVP1.4
parents
fa0b2e34
020a113e
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
31 changed files
with
3953 additions
and
8 deletions
+3953
-8
SettleAdditionTypeEnum.java
...ud/plus/v1/business/vo/settle/SettleAdditionTypeEnum.java
+40
-0
TBusSettleController.java
...s/v1/business/controller/settle/TBusSettleController.java
+142
-0
TBusSettleMapper.java
...loud/plus/v1/business/mapper/settle/TBusSettleMapper.java
+37
-0
TBusSettleService.java
...ud/plus/v1/business/service/settle/TBusSettleService.java
+45
-0
TBusSettleServiceImpl.java
...1/business/service/settle/impl/TBusSettleServiceImpl.java
+199
-0
TBusSettleMapper.xml
...siness-biz/src/main/resources/mapper/TBusSettleMapper.xml
+71
-0
ExcelAttributeConstants.java
...v1/yifu/common/core/constant/ExcelAttributeConstants.java
+2
-0
SalaryAccountAndItemVo.java
.../cloud/plus/v1/yifu/salary/vo/SalaryAccountAndItemVo.java
+136
-0
SettlementFormVo.java
...m/yifu/cloud/plus/v1/yifu/salary/vo/SettlementFormVo.java
+56
-0
BusinessSalaryController.java
...s/v1/yifu/salary/controller/BusinessSalaryController.java
+236
-0
TSalaryAccountMapper.java
...loud/plus/v1/yifu/salary/mapper/TSalaryAccountMapper.java
+34
-0
TSalaryAccountService.java
...ud/plus/v1/yifu/salary/service/TSalaryAccountService.java
+33
-0
TSalaryAccountServiceImpl.java
...1/yifu/salary/service/impl/TSalaryAccountServiceImpl.java
+42
-0
TSalaryAccountMapper.xml
...ry-biz/src/main/resources/mapper/TSalaryAccountMapper.xml
+106
-0
TPaymentInfo.java
...m/yifu/cloud/plus/v1/yifu/social/entity/TPaymentInfo.java
+6
-0
FundAddAndReduceVo.java
...yifu/cloud/plus/v1/yifu/social/vo/FundAddAndReduceVo.java
+69
-0
PaymentBusinessPageDetail.java
...oud/plus/v1/yifu/social/vo/PaymentBusinessPageDetail.java
+46
-0
PaymentBusinessPageVo.java
...u/cloud/plus/v1/yifu/social/vo/PaymentBusinessPageVo.java
+272
-0
SocialAddAndReduceVo.java
...fu/cloud/plus/v1/yifu/social/vo/SocialAddAndReduceVo.java
+71
-0
SocialAndFundBusinessPageVo.java
...d/plus/v1/yifu/social/vo/SocialAndFundBusinessPageVo.java
+42
-0
SocialAndFundReduceBusinessVo.java
...plus/v1/yifu/social/vo/SocialAndFundReduceBusinessVo.java
+36
-0
TPaymentAllInfoVo.java
.../yifu/cloud/plus/v1/yifu/social/vo/TPaymentAllInfoVo.java
+531
-0
DispatchBusinessController.java
...v1/yifu/social/controller/DispatchBusinessController.java
+255
-0
TPaymentInfoMapper.java
.../cloud/plus/v1/yifu/social/mapper/TPaymentInfoMapper.java
+73
-4
TPaymentInfoService.java
...loud/plus/v1/yifu/social/service/TPaymentInfoService.java
+62
-3
TProvidentFundService.java
...ud/plus/v1/yifu/social/service/TProvidentFundService.java
+10
-0
TSocialInfoService.java
...cloud/plus/v1/yifu/social/service/TSocialInfoService.java
+10
-0
TPaymentInfoServiceImpl.java
.../v1/yifu/social/service/impl/TPaymentInfoServiceImpl.java
+371
-0
TProvidentFundServiceImpl.java
...1/yifu/social/service/impl/TProvidentFundServiceImpl.java
+149
-0
TSocialInfoServiceImpl.java
...s/v1/yifu/social/service/impl/TSocialInfoServiceImpl.java
+186
-1
TPaymentInfoMapper.xml
...cial-biz/src/main/resources/mapper/TPaymentInfoMapper.xml
+585
-0
No files found.
yifu-business/yifu-business-api/src/main/java/com/yifu/cloud/plus/v1/business/vo/settle/SettleAdditionTypeEnum.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
vo
.
settle
;
import
lombok.Getter
;
import
org.apache.commons.lang.StringUtils
;
/**
* @description: SettleAdditionTypeEnum 结算相关附件类型
* @author: wangweiguo
* @date: 2021/8/19
*/
@Getter
public
enum
SettleAdditionTypeEnum
{
SETTLE_RECORD
(
"结算单"
,
0
),
PROVE_SOCIAL
(
"流水证明_社保"
,
1
),
PROVE_FUND
(
"流水证明_公积金"
,
2
),
PROVE_SALARY_RECORD
(
"流水证明_代发工资单"
,
3
),
PROVE_MEAL_FEE
(
"流水证明_餐补"
,
4
),
PROVE_GIFT_BAG
(
"流水证明_春节大礼包"
,
5
);
private
String
typeName
;
private
int
type
;
SettleAdditionTypeEnum
(
String
typeName
,
int
type
)
{
this
.
typeName
=
typeName
;
this
.
type
=
type
;
}
public
static
SettleAdditionTypeEnum
getTypeEnumByFileName
(
String
fileName
)
{
for
(
SettleAdditionTypeEnum
setteAdditionTypeEnum
:
values
())
{
if
(!
StringUtils
.
contains
(
fileName
,
setteAdditionTypeEnum
.
typeName
))
{
continue
;
}
return
setteAdditionTypeEnum
;
}
return
null
;
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/controller/settle/TBusSettleController.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
controller
.
settle
;
import
com.baomidou.mybatisplus.core.metadata.IPage
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yifu.cloud.plus.v1.business.entity.settle.TBusSettle
;
import
com.yifu.cloud.plus.v1.business.service.settle.TBusSettleService
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
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.log.annotation.SysLog
;
import
com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.RequiredArgsConstructor
;
import
org.springframework.security.access.prepost.PreAuthorize
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.time.LocalDateTime
;
import
java.util.List
;
/**
* B端结算表
*
* @author hgw
* @date 2021-08-16 15:58:09
*/
@RestController
@RequiredArgsConstructor
@RequestMapping
(
"/tbussettle"
)
@Tag
(
name
=
"B端结算表"
)
public
class
TBusSettleController
{
private
final
TBusSettleService
tBusSettleService
;
/**
* 简单分页查询
*
* @param page 分页对象
* @param tBusSettle B端结算表
* @return
*/
@Operation
(
summary
=
"简单分页查询"
)
@GetMapping
(
"/page"
)
public
R
<
IPage
<
TBusSettle
>>
getTBusSettlePage
(
Page
<
TBusSettle
>
page
,
TBusSettle
tBusSettle
)
{
return
new
R
<>(
tBusSettleService
.
getTBusSettlePage
(
page
,
tBusSettle
));
}
/**
* 列表,可用来查重
*
* @param tBusSettle B端结算表
* @return
*/
@Operation
(
summary
=
"列表,可用来查重"
)
@GetMapping
(
"/getTBusSettleList"
)
public
R
<
List
<
TBusSettle
>>
getTBusSettleList
(
TBusSettle
tBusSettle
)
{
return
new
R
<>(
tBusSettleService
.
getTBusSettleList
(
tBusSettle
));
}
/**
* 通过id查询单条记录
*
* @param id
* @return R
*/
@Operation
(
summary
=
"id查询"
)
@GetMapping
(
"/{id}"
)
public
R
<
TBusSettle
>
getById
(
@PathVariable
(
"id"
)
String
id
)
{
return
new
R
<>(
tBusSettleService
.
getById
(
id
));
}
/**
* 新增记录
*
* @param tBusSettle
* @return R
*/
@Operation
(
summary
=
"新增(yifu-hro-business:tbussettle_add)"
)
@PostMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussettle_add')"
)
public
R
<
Boolean
>
save
(
@RequestBody
TBusSettle
tBusSettle
)
{
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
user
!=
null
&&
user
.
getId
()
!=
null
)
{
tBusSettle
.
setCreateTime
(
LocalDateTime
.
now
());
tBusSettle
.
setCreateUserId
(
String
.
valueOf
(
user
.
getId
()));
tBusSettle
.
setCreateUserName
(
user
.
getNickname
());
return
new
R
<>(
tBusSettleService
.
save
(
tBusSettle
));
}
else
{
return
R
.
failed
(
"未获取到登录人信息!"
);
}
}
/**
* 修改记录
*
* @param tBusSettle
* @return R
*/
@Operation
(
summary
=
"修改(yifu-hro-business:tbussettle_edit)"
)
@SysLog
(
"修改B端结算表"
)
@PutMapping
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussettle_edit')"
)
public
R
<
Boolean
>
update
(
@RequestBody
TBusSettle
tBusSettle
)
{
return
new
R
<>(
tBusSettleService
.
updateById
(
tBusSettle
));
}
/**
* 通过id删除一条记录
*
* @param id
* @return R
*/
@Operation
(
summary
=
"假删除(yifu-hro-business:tbussettle_del)"
)
@SysLog
(
"假删除B端结算表"
)
@DeleteMapping
(
"/{id}"
)
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:tbussettle_del')"
)
public
R
<
Boolean
>
removeById
(
@PathVariable
String
id
)
{
TBusSettle
tBusSettle
=
new
TBusSettle
();
tBusSettle
.
setId
(
id
);
tBusSettle
.
setDeleteFlag
(
CommonConstants
.
ONE_INT
);
return
new
R
<>(
tBusSettleService
.
updateById
(
tBusSettle
));
}
/**
* @param file zip文件包
* @description: 解析zip文件包中的多个附件,并生成结算记录
* @return: com.yifu.cloud.v1.common.core.util.R<java.lang.Boolean>
* @author: wangweiguo
* @date: 2021/8/19
*/
@Operation
(
summary
=
"导入:(yifu-hro-business:import_zip)"
)
@PostMapping
(
"/importZip"
)
@PreAuthorize
(
"@pms.hasPermission('yifu-hro-business:import_zip')"
)
//@ApiImplicitParam(value = "zip文件", name = "file", paramType = "form", required = true)
public
R
<
Boolean
>
importZip
(
@RequestParam
(
"file"
)
MultipartFile
file
)
{
return
this
.
tBusSettleService
.
importZip
(
file
);
}
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/mapper/settle/TBusSettleMapper.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
mapper
.
settle
;
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.settle.TBusSettle
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* B端结算表
*
* @author hgw
* @date 2021-08-16 15:58:09
*/
@Mapper
public
interface
TBusSettleMapper
extends
BaseMapper
<
TBusSettle
>
{
/**
* B端结算表简单分页查询
*
* @param tBusSettle B端结算表
* @return
*/
IPage
<
TBusSettle
>
getTBusSettlePage
(
Page
<
TBusSettle
>
page
,
@Param
(
"tBusSettle"
)
TBusSettle
tBusSettle
);
/**
* @param tBusSettle
* @Description: 列表
* @Author: hgw
* @Date: 2021/8/16 16:37
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.settle.TBusSettle>
**/
List
<
TBusSettle
>
getTBusSettleList
(
@Param
(
"tBusSettle"
)
TBusSettle
tBusSettle
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/settle/TBusSettleService.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
settle
;
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.settle.TBusSettle
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.R
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.util.List
;
/**
* B端结算表
*
* @author hgw
* @date 2021-08-16 15:58:09
*/
public
interface
TBusSettleService
extends
IService
<
TBusSettle
>
{
/**
* B端结算表简单分页查询
*
* @param tBusSettle B端结算表
* @return
*/
IPage
<
TBusSettle
>
getTBusSettlePage
(
Page
<
TBusSettle
>
page
,
TBusSettle
tBusSettle
);
/**
* @param tBusSettle
* @Description: 列表
* @Author: hgw
* @Date: 2021/8/16 16:37
* @return: java.util.List<com.yifu.cloud.v1.hrobusiness.api.entity.settle.TBusSettle>
**/
List
<
TBusSettle
>
getTBusSettleList
(
TBusSettle
tBusSettle
);
/**
* @description: 解析zip文件包中的多个附件,并生成结算记录
* @param file zip文件包
* @return: com.yifu.cloud.v1.common.core.util.R<java.lang.Boolean>
* @author: wangweiguo
* @date: 2021/8/19
*/
R
<
Boolean
>
importZip
(
MultipartFile
file
);
}
yifu-business/yifu-business-biz/src/main/java/com/yifu/cloud/plus/v1/business/service/settle/impl/TBusSettleServiceImpl.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
business
.
service
.
settle
.
impl
;
import
cn.hutool.core.io.FileTypeUtil
;
import
cn.hutool.core.io.FileUtil
;
import
cn.hutool.core.util.CharsetUtil
;
import
cn.hutool.core.util.ZipUtil
;
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.settle.TBusSettle
;
import
com.yifu.cloud.plus.v1.business.mapper.settle.TBusSettleMapper
;
import
com.yifu.cloud.plus.v1.business.service.settle.TBusSettleService
;
import
com.yifu.cloud.plus.v1.business.service.system.TBusAttaInfoService
;
import
com.yifu.cloud.plus.v1.business.vo.BusFileVo
;
import
com.yifu.cloud.plus.v1.business.vo.settle.SettleAdditionTypeEnum
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.exception.CheckedException
;
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
lombok.AllArgsConstructor
;
import
lombok.extern.slf4j.Slf4j
;
import
org.apache.commons.fileupload.FileItem
;
import
org.apache.commons.fileupload.FileItemFactory
;
import
org.apache.commons.fileupload.disk.DiskFileItemFactory
;
import
org.apache.commons.lang3.StringUtils
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.web.multipart.MultipartFile
;
import
org.springframework.web.multipart.commons.CommonsMultipartFile
;
import
java.io.File
;
import
java.io.FileInputStream
;
import
java.io.IOException
;
import
java.io.OutputStream
;
import
java.time.LocalDateTime
;
import
java.util.List
;
import
java.util.UUID
;
/**
* B端结算表
*
* @author hgw
* @date 2021-08-16 15:58:09
*/
@AllArgsConstructor
@Slf4j
@Service
public
class
TBusSettleServiceImpl
extends
ServiceImpl
<
TBusSettleMapper
,
TBusSettle
>
implements
TBusSettleService
{
private
final
TBusAttaInfoService
busAttaInfoService
;
public
static
final
String
DEPART_ALREADY_EXIST_MONTH_DATA
=
"该部门该结算月份已有数据,若要更新,请先将原数据删除后,再次导入!"
;
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})"
;
public
static
final
String
FILE_NAME_DATE_FORMAT_ERROR
=
"文件名格式中日期格式错误!"
;
public
static
final
String
SAVE_SETTLE_ERROR
=
"保存结算记录出错"
;
public
static
final
String
FILE_NAME_ERROT
=
"命名格式不规范"
;
public
static
final
String
HRB_SETTLE_FILE_PATH
=
"hrb/settle"
;
public
static
final
String
ZIP_FILE_NAME_VALID_FAILD
=
"zip压缩文件名格式不正确"
;
public
static
final
String
ZIP_EXTRACT_ERROR
=
"结算管理导入zip文件解压功能出错"
;
/**
* B端结算表简单分页查询
*
* @param tBusSettle B端结算表
* @return
*/
@Override
public
IPage
<
TBusSettle
>
getTBusSettlePage
(
Page
<
TBusSettle
>
page
,
TBusSettle
tBusSettle
)
{
return
baseMapper
.
getTBusSettlePage
(
page
,
tBusSettle
);
}
@Override
public
List
<
TBusSettle
>
getTBusSettleList
(
TBusSettle
tBusSettle
)
{
return
baseMapper
.
getTBusSettleList
(
tBusSettle
);
}
/**
* @param file zip文件包
* @description: 解析zip文件包中的多个附件,并生成结算记录
* @return: com.yifu.cloud.v1.common.core.util.R<java.lang.Boolean>
* @author: wangweiguo
* @date: 2021/8/19
*/
@Override
@Transactional
public
R
<
Boolean
>
importZip
(
MultipartFile
file
)
{
File
unzip
=
null
;
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
null
==
user
)
{
return
R
.
failed
(
"用户未登录"
);
}
File
etractFile
=
null
;
try
{
String
fileType
=
FileTypeUtil
.
getType
(
file
.
getInputStream
());
if
(!
StringUtils
.
equalsIgnoreCase
(
fileType
,
CommonConstants
.
ZIP_TYPE
))
{
return
R
.
failed
(
"导入的文件格式不正确"
);
}
String
[]
destoryName
=
StringUtils
.
split
(
StringUtils
.
removeEndIgnoreCase
(
file
.
getOriginalFilename
()
,
CommonConstants
.
SPOT
.
concat
(
fileType
)),
CommonConstants
.
DOWN_LINE_CHAR
);
if
(
null
!=
destoryName
&&
destoryName
.
length
==
2
)
{
TBusSettle
busSettle
=
this
.
lambdaQuery
()
.
eq
(
TBusSettle:
:
getSettleMonth
,
destoryName
[
1
])
.
eq
(
TBusSettle:
:
getAccountDeptName
,
destoryName
[
0
])
.
eq
(
TBusSettle:
:
getDeleteFlag
,
CommonConstants
.
ZERO_INT
)
.
last
(
CommonConstants
.
LAST_ONE_SQL
).
one
();
if
(
null
!=
busSettle
)
{
return
R
.
failed
(
DEPART_ALREADY_EXIST_MONTH_DATA
);
}
etractFile
=
new
File
(
UUID
.
randomUUID
().
toString
());
unzip
=
ZipUtil
.
unzip
(
file
.
getInputStream
(),
etractFile
,
CharsetUtil
.
CHARSET_GBK
);
// 正常解压后创建结算记录
busSettle
=
new
TBusSettle
();
busSettle
.
setAccountDeptName
(
destoryName
[
0
]);
busSettle
.
setSettleMonth
(
destoryName
[
1
]);
busSettle
.
setCreateUserId
(
String
.
valueOf
(
user
.
getId
()));
busSettle
.
setCreateUserName
(
user
.
getNickname
());
busSettle
.
setCreateTime
(
LocalDateTime
.
now
());
if
(!
busSettle
.
getSettleMonth
().
matches
(
SETTLE_MONTH_MATCH
))
{
return
R
.
failed
(
FILE_NAME_DATE_FORMAT_ERROR
);
}
boolean
saveBusSettleSuccess
=
this
.
save
(
busSettle
);
if
(!
saveBusSettleSuccess
)
{
return
R
.
failed
(
SAVE_SETTLE_ERROR
);
}
List
<
File
>
files
=
FileUtil
.
loopFiles
(
unzip
);
for
(
File
fl
:
files
)
{
String
fileName
=
FileUtil
.
getName
(
fl
);
SettleAdditionTypeEnum
settleAdditionTypeEnum
=
SettleAdditionTypeEnum
.
getTypeEnumByFileName
(
fileName
);
if
(
null
==
settleAdditionTypeEnum
)
{
runTimeExceptionDiy
(
fileName
+
":"
+
FILE_NAME_ERROT
);
}
R
<
BusFileVo
>
busFileVoR
=
this
.
busAttaInfoService
.
uploadFile
(
fileCovertMultipartFile
(
fl
)
,
HRB_SETTLE_FILE_PATH
,
settleAdditionTypeEnum
.
getType
(),
busSettle
.
getId
());
if
(!
R
.
isSuccess
(
busFileVoR
))
{
runTimeExceptionDiy
(
busFileVoR
.
getMsg
());
}
}
}
else
{
return
R
.
failed
(
ZIP_FILE_NAME_VALID_FAILD
);
}
}
catch
(
IOException
e
)
{
runTimeExceptionDiy
(
ZIP_EXTRACT_ERROR
.
concat
(
": "
).
concat
(
e
.
getCause
().
toString
()));
}
finally
{
if
(
etractFile
!=
null
)
{
FileUtil
.
del
(
etractFile
);
}
}
return
R
.
ok
();
}
private
static
void
runTimeExceptionDiy
(
String
errorInfo
)
{
throw
new
CheckedException
(
errorInfo
);
}
/**
* File转MultipartFile
*
* @param file 需要转换的文件
* @description: File转MultipartFile
* @return: org.springframework.web.multipart.MultipartFile
* @author: wangweiguo
* @date: 2021/8/19
*/
private
MultipartFile
fileCovertMultipartFile
(
File
file
)
{
FileItemFactory
factory
=
new
DiskFileItemFactory
(
16
,
null
);
String
textFieldName
=
"textField"
;
FileItem
item
=
factory
.
createItem
(
textFieldName
,
"text/plain"
,
true
,
file
.
getName
());
int
bytesRead
=
0
;
byte
[]
buffer
=
new
byte
[
8192
];
try
{
FileInputStream
fis
=
new
FileInputStream
(
file
);
OutputStream
os
=
item
.
getOutputStream
();
while
((
bytesRead
=
fis
.
read
(
buffer
,
0
,
8192
))
!=
-
1
)
{
os
.
write
(
buffer
,
0
,
bytesRead
);
}
os
.
close
();
fis
.
close
();
}
catch
(
IOException
e
)
{
e
.
printStackTrace
();
}
return
new
CommonsMultipartFile
(
item
);
}
}
yifu-business/yifu-business-biz/src/main/resources/mapper/TBusSettleMapper.xml
0 → 100644
View file @
776608d9
<?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.settle.TBusSettleMapper"
>
<resultMap
id=
"tBusSettleMap"
type=
"com.yifu.cloud.plus.v1.business.entity.settle.TBusSettle"
>
<id
property=
"id"
column=
"id"
/>
<result
property=
"accountDeptName"
column=
"account_dept_name"
/>
<result
property=
"settleMonth"
column=
"settle_month"
/>
<result
property=
"createUserId"
column=
"create_user_id"
/>
<result
property=
"createUserName"
column=
"create_user_name"
/>
<result
property=
"createTime"
column=
"create_time"
/>
<result
property=
"deleteFlag"
column=
"delete_flag"
/>
</resultMap>
<sql
id=
"Base_Column_List"
>
a.id,
a.account_dept_name,
a.settle_month,
a.create_user_id,
a.create_user_name,
a.create_time,
a.delete_flag
</sql>
<sql
id=
"tBusSettle_where"
>
<if
test=
"tBusSettle != null"
>
<if
test=
"tBusSettle.id != null and tBusSettle.id.trim() != ''"
>
AND a.id = #{tBusSettle.id}
</if>
<if
test=
"tBusSettle.accountDeptName != null and tBusSettle.accountDeptName.trim() != ''"
>
AND a.account_dept_name like concat('%',#{tBusSettle.accountDeptName},'%')
</if>
<if
test=
"tBusSettle.settleMonth != null and tBusSettle.settleMonth.trim() != ''"
>
AND a.settle_month = #{tBusSettle.settleMonth}
</if>
<if
test=
"tBusSettle.createUserId != null and tBusSettle.createUserId.trim() != ''"
>
AND a.create_user_id = #{tBusSettle.createUserId}
</if>
<if
test=
"tBusSettle.createUserName != null and tBusSettle.createUserName.trim() != ''"
>
AND a.create_user_name = #{tBusSettle.createUserName}
</if>
<if
test=
"tBusSettle.createTime != null"
>
AND a.create_time = #{tBusSettle.createTime}
</if>
<if
test=
"tBusSettle.deleteFlag != null"
>
AND a.delete_flag = #{tBusSettle.deleteFlag}
</if>
</if>
</sql>
<!--tBusSettle简单分页查询-->
<select
id=
"getTBusSettlePage"
resultMap=
"tBusSettleMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_settle a
<where>
a.delete_flag = 0
<include
refid=
"tBusSettle_where"
/>
</where>
ORDER BY a.create_time desc
</select>
<!--tBusSettle简单查询list-->
<select
id=
"getTBusSettleList"
resultMap=
"tBusSettleMap"
>
SELECT
<include
refid=
"Base_Column_List"
/>
FROM t_bus_settle a
<where>
a.delete_flag = 0
<include
refid=
"tBusSettle_where"
/>
</where>
ORDER BY a.create_time desc
</select>
</mapper>
yifu-common/yifu-common-core/src/main/java/com/yifu/cloud/plus/v1/yifu/common/core/constant/ExcelAttributeConstants.java
View file @
776608d9
...
...
@@ -152,4 +152,6 @@ public class ExcelAttributeConstants {
// B端人员使用的
public
static
final
String
CUSTOMER
=
"customer"
;
public
static
final
String
HOUSEHOLD
=
"household"
;
}
yifu-salary/yifu-salary-api/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/vo/SalaryAccountAndItemVo.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
salary
.
vo
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccountItem
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.io.Serializable
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
/**
* @Description: B端-结算单Vo
* @Author: hgw
* @Date: 2020-8-21 11:31:03
* @return:
**/
@Getter
@Setter
public
class
SalaryAccountAndItemVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**
* 主键
*/
@Schema
(
description
=
"主键"
,
name
=
"id"
)
private
String
id
;
/**
* 工资表id
*/
@Schema
(
description
=
"工资表id"
,
name
=
"salaryFormId"
)
private
String
salaryFormId
;
/**
* 工资月
*/
@Schema
(
description
=
"工资月"
,
name
=
"salaryDate"
)
private
String
salaryDate
;
/**
* 员工姓名
*/
@Schema
(
description
=
"员工姓名"
,
name
=
"empName"
)
private
String
empName
;
/**
* 员工身份证号
*/
@Schema
(
description
=
"员工身份证号"
,
name
=
"empIdcard"
)
private
String
empIdcard
;
/**
* 工资发放时间(0立即发、1暂停发)
*/
@Schema
(
description
=
"工资发放时间(0立即发、1暂停发)"
,
name
=
"salaryGiveTime"
)
private
String
salaryGiveTime
;
/**
* 发放状态 0: 未发放 1: 发放成功 2:发放失败
*/
@Schema
(
description
=
"发放状态 0: 未发放 1: 发放成功 2:发放失败"
,
name
=
"distributionFlag"
)
private
String
distributionFlag
;
/**
* 社保扣缴月份
*/
@Schema
(
description
=
"社保扣缴月份"
,
name
=
"deduSocialMonth"
)
private
String
deduSocialMonth
;
/**
* 公积金扣缴月份
*/
@Schema
(
description
=
"公积金扣缴月份"
,
name
=
"deduProvidentMonth"
)
private
String
deduProvidentMonth
;
/**
* 财务类型 0:工资;1:绩效;2:其他
*/
@Schema
(
description
=
"财务类型 0:工资;1:绩效;2:其他"
,
name
=
"salaryType"
)
private
String
salaryType
;
/**
* 结算月
*/
@Schema
(
description
=
"结算月"
,
name
=
"settlementMonth"
)
private
String
settlementMonth
;
/**
* 应发工资
*/
@Schema
(
description
=
"应发工资"
,
name
=
"relaySalary"
)
private
String
relaySalary
;
/**
* 实发工资
*/
@Schema
(
description
=
"实发工资"
,
name
=
"actualSalarySum"
)
private
String
actualSalarySum
;
/**
* 个税
*/
@Schema
(
description
=
"个税"
,
name
=
"salaryTax"
)
private
String
salaryTax
;
/**
* 年
*/
@Schema
(
description
=
"年"
,
name
=
"years"
)
private
String
years
;
/**
* 单位社保
*/
@Schema
(
description
=
"单位社保"
,
name
=
"unitSocial"
)
private
String
unitSocial
;
/**
* 个人社保
*/
@Schema
(
description
=
"个人社保"
,
name
=
"personalSocial"
)
private
String
personalSocial
;
/**
* 单位公积金
*/
@Schema
(
description
=
"单位公积金"
,
name
=
"unitFund"
)
private
String
unitFund
;
/**
* 个人公积金
*/
@Schema
(
description
=
"个人公积金"
,
name
=
"personalFund"
)
private
String
personalFund
;
/**
* 发放时间
*/
@Schema
(
description
=
"发放时间"
,
name
=
"revenueTime"
)
private
Date
revenueTime
;
/**
* 工资组成部分明细
*/
private
List
<
TSalaryAccountItem
>
saiList
=
new
ArrayList
<>();
}
yifu-salary/yifu-salary-api/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/vo/SettlementFormVo.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
salary
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Getter
;
import
lombok.Setter
;
import
java.io.Serializable
;
/**
* @Description: B端-结算单Vo
* @Author: hgw
* @Date: 2020-8-21 11:31:03
* @return:
**/
@Getter
@Setter
public
class
SettlementFormVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/*
* 工资月份
**/
@Schema
(
description
=
"工资月份"
,
name
=
"salaryMonth"
)
private
String
salaryMonth
;
/*
* 发薪人次
**/
@Schema
(
description
=
"发薪人次"
,
name
=
"personTime"
)
private
String
personTime
;
/*
* 应发工资
**/
@Schema
(
description
=
"应发工资"
,
name
=
"salarySum"
)
private
String
salarySum
;
/*
* 实发工资
**/
@Schema
(
description
=
"实发工资"
,
name
=
"cardPay"
)
private
String
cardPay
;
/*
* 年
**/
@Schema
(
description
=
"年"
,
name
=
"years"
)
private
String
years
;
/*
* 人工成本
**/
@Schema
(
description
=
"人工成本"
,
name
=
"laborCosts"
)
private
String
laborCosts
;
}
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/controller/BusinessSalaryController.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
salary
.
controller
;
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.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.ServiceNameConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.Common
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.DateUtil
;
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.dapr.util.MenuUtil
;
import
com.yifu.cloud.plus.v1.yifu.common.security.util.SecurityUtils
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccountItem
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryStandard
;
import
com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryAccountItemService
;
import
com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryAccountService
;
import
com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryStandardService
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.SalaryAccountAndItemVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.SettlementFormVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryStandardSearchVo
;
import
io.swagger.v3.oas.annotations.Operation
;
import
io.swagger.v3.oas.annotations.tags.Tag
;
import
lombok.AllArgsConstructor
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
import
java.util.Date
;
import
java.util.List
;
/**
* B端工资接口
*
* @author hgw
* @date 2020-8-19 09:39:06
*/
@RestController
@AllArgsConstructor
@RequestMapping
(
"/customerBusiness/businessSalary"
)
@Tag
(
name
=
"B端工资接口"
)
public
class
BusinessSalaryController
{
// 工资表服务
private
final
TSalaryStandardService
tSalaryStandardService
;
// 工资报表服务
private
final
TSalaryAccountService
tSalaryAccountService
;
// 工资明细
private
final
TSalaryAccountItemService
tSalaryAccountItemService
;
private
final
MenuUtil
menuUtil
;
// 工资明细属性
private
static
final
String
JAVA_FIED_NAME
=
"JAVA_FIED_NAME"
;
// 应发
private
static
final
String
RELAY_SALARY
=
"relaySalary"
;
// 实发
private
static
final
String
ACTUAL_SALARY_SUM
=
"actualSalarySum"
;
// 个税
private
static
final
String
SALARY_TAX
=
"salaryTax"
;
// 单位社保
private
static
final
String
UNIT_SOCIAL
=
"unitSocial"
;
// 个人社保
private
static
final
String
PERSONAL_SOCIAL
=
"personalSocial"
;
// 单位社保
private
static
final
String
UNIT_FUND
=
"unitFund"
;
// 个人公积金
private
static
final
String
PERSONAL_FUND
=
"personalFund"
;
/**
* @param page 分页
* @param settlementFormVo 结算单vo
* @Description: B端薪酬第一个统计列表
* @Author: hgw
* @Date: 2020-8-21 16:17:51
* @return: com.yifu.cloud.v1.common.core.util.R<com.baomidou.mybatisplus.core.metadata.IPage < com.yifu.cloud.v1.hrms.api.vo.SettlementFormVo>>
**/
@Operation
(
description
=
"1薪酬首列表-分页查询"
)
@GetMapping
(
"/getSettlementFormVoPage"
)
public
R
<
IPage
<
SettlementFormVo
>>
getSettlementFormVoPage
(
Page
<
SettlementFormVo
>
page
,
SettlementFormVo
settlementFormVo
)
{
if
(
Boolean
.
TRUE
.
equals
(
Common
.
isEmpty
(
settlementFormVo
.
getYears
())))
{
// 当前年份
String
curYear
=
DateUtil
.
getYear
(
new
Date
());
settlementFormVo
.
setYears
(
curYear
);
}
YifuUser
user
=
SecurityUtils
.
getUser
();
if
(
user
==
null
)
{
return
R
.
failed
(
"请登录!"
);
}
List
<
String
>
settleDepartIdList
=
null
;
if
(!
SecurityUtils
.
isHaveAllOrg
(
ServiceNameConstants
.
CLIENT_ID_HR_B
,
user
))
{
settleDepartIdList
=
user
.
getSettleIdList
();
if
(
settleDepartIdList
==
null
||
settleDepartIdList
.
isEmpty
())
{
return
R
.
failed
(
"无结算主体权限,请联系管理员分配!"
);
}
}
return
new
R
<>(
tSalaryAccountService
.
getSettlementFormVoPage
(
page
,
settlementFormVo
,
settleDepartIdList
));
}
/**
* @param page 分页信息
* @param tSalaryStandard 工资表
* @Description: 工资列表-分页查询
* @Author: hgw
* @Date: 2020-8-21 16:17:45
* @return: com.yifu.cloud.v1.common.core.util.R<com.baomidou.mybatisplus.core.metadata.IPage < com.yifu.cloud.v1.hrms.api.entity.TSalaryStandard>>
**/
@Operation
(
description
=
"2工资列表-分页查询(salaryMonth必传)"
)
@GetMapping
(
"/getSalaryStandardPage"
)
public
R
<
IPage
<
TSalaryStandard
>>
getSalaryStandardPage
(
Page
<
TSalaryStandard
>
page
,
TSalaryStandardSearchVo
tSalaryStandard
,
String
createTimeStart
,
String
createTimeEnd
,
String
revenueTimeStart
,
String
revenueTimeEnd
)
{
if
(
Boolean
.
TRUE
.
equals
(
Common
.
isEmpty
(
tSalaryStandard
.
getSalaryMonth
())))
{
tSalaryStandard
.
setSalaryMonth
(
"-1"
);
}
tSalaryStandard
.
setDeleteFlag
(
CommonConstants
.
ZERO_INT
);
YifuUser
user
=
SecurityUtils
.
getUser
();
menuUtil
.
setAuthSql
(
user
,
tSalaryStandard
);
return
new
R
<>(
tSalaryStandardService
.
getTSalaryStandardPageApply
(
page
,
tSalaryStandard
));
}
/**
* 工资详情-报账列表-分页查询
*
* @param page 分页对象
* @param salaryAccountAndItemVo 工资详情-报账列表-分页查询
* @return
* @Author: hgw
* @Date: 2020-8-21 16:16:24
*/
@Operation
(
description
=
"3工资详情-报账列表-分页查询(salaryFormId必传)"
)
@GetMapping
(
"/getSalaryAccountAndItemVoPage"
)
public
R
<
IPage
<
SalaryAccountAndItemVo
>>
getSalaryAccountPage
(
Page
<
SalaryAccountAndItemVo
>
page
,
SalaryAccountAndItemVo
salaryAccountAndItemVo
)
{
if
(
Boolean
.
TRUE
.
equals
(
Common
.
isEmpty
(
salaryAccountAndItemVo
.
getSalaryFormId
())))
{
salaryAccountAndItemVo
.
setSalaryFormId
(
CommonConstants
.
ZERO_STRING
);
}
// 分页报账以及详情数据
IPage
<
SalaryAccountAndItemVo
>
accountPage
=
getSalaryAccountAndItemVoIPage
(
page
,
salaryAccountAndItemVo
);
return
new
R
<>(
accountPage
);
}
/**
* @param salaryAccountId 报账id
* @Description: 获取报账明细
* @Author: hgw
* @Date: 2020/8/21 17:39
* @return: java.util.List<com.yifu.cloud.v1.hrms.api.entity.TSalaryAccountItem>
**/
private
List
<
TSalaryAccountItem
>
gettSalaryAccountItemList
(
String
salaryAccountId
)
{
TSalaryAccountItem
item
=
new
TSalaryAccountItem
();
item
.
setSalaryAccountId
(
salaryAccountId
);
QueryWrapper
<
TSalaryAccountItem
>
queryWrapperAi
=
new
QueryWrapper
<>();
queryWrapperAi
.
setEntity
(
item
);
queryWrapperAi
.
ne
(
JAVA_FIED_NAME
,
RELAY_SALARY
);
queryWrapperAi
.
ne
(
JAVA_FIED_NAME
,
ACTUAL_SALARY_SUM
);
queryWrapperAi
.
ne
(
JAVA_FIED_NAME
,
SALARY_TAX
);
queryWrapperAi
.
ne
(
JAVA_FIED_NAME
,
UNIT_SOCIAL
);
queryWrapperAi
.
ne
(
JAVA_FIED_NAME
,
PERSONAL_SOCIAL
);
queryWrapperAi
.
ne
(
JAVA_FIED_NAME
,
UNIT_FUND
);
queryWrapperAi
.
ne
(
JAVA_FIED_NAME
,
PERSONAL_FUND
);
return
tSalaryAccountItemService
.
list
(
queryWrapperAi
);
}
/**
* 工资详情-报账列表-分页查询
*
* @param page 分页对象
* @param salaryAccountAndItemVo 工资详情-报账列表-分页查询
* @return
* @Author: hgw
* @Date: 2020-8-21 16:16:24
*/
@Operation
(
description
=
"3.2人员-报账列表(empIdcard必传)"
)
@GetMapping
(
"/getAccountByIdCardPage"
)
public
R
<
IPage
<
SalaryAccountAndItemVo
>>
getAccountByIdCardPage
(
Page
<
SalaryAccountAndItemVo
>
page
,
SalaryAccountAndItemVo
salaryAccountAndItemVo
)
{
if
(
Boolean
.
TRUE
.
equals
(
Common
.
isEmpty
(
salaryAccountAndItemVo
.
getEmpIdcard
())))
{
salaryAccountAndItemVo
.
setEmpIdcard
(
"-1"
);
}
if
(
Boolean
.
TRUE
.
equals
(
Common
.
isEmpty
(
salaryAccountAndItemVo
.
getYears
())))
{
// 当前年份
String
curYear
=
DateUtil
.
getYear
(
new
Date
());
salaryAccountAndItemVo
.
setYears
(
curYear
);
}
// 发放状态 0: 未发放 1: 发放成功 2:发放失败
salaryAccountAndItemVo
.
setDistributionFlag
(
CommonConstants
.
ONE_STRING
);
// 分页报账以及详情数据
IPage
<
SalaryAccountAndItemVo
>
accountPage
=
getSalaryAccountAndItemVoIPage
(
page
,
salaryAccountAndItemVo
);
return
new
R
<>(
accountPage
);
}
/**
* @param page 分页
* @param salaryAccountAndItemVo 报账信息
* @Description: 获取报账分页数据
* @Author: hgw
* @Date: 2020/8/21 17:42
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SalaryAccountAndItemVo>
**/
private
IPage
<
SalaryAccountAndItemVo
>
getSalaryAccountAndItemVoIPage
(
Page
<
SalaryAccountAndItemVo
>
page
,
SalaryAccountAndItemVo
salaryAccountAndItemVo
)
{
IPage
<
SalaryAccountAndItemVo
>
accountPage
=
tSalaryAccountService
.
getSalaryAccountAndItemVoPage
(
page
,
salaryAccountAndItemVo
);
// 报账列表
List
<
SalaryAccountAndItemVo
>
accountList
=
accountPage
.
getRecords
();
if
(
accountList
!=
null
&&
!
accountList
.
isEmpty
())
{
// 获取报账明细
for
(
SalaryAccountAndItemVo
a
:
accountList
)
{
a
.
setSaiList
(
gettSalaryAccountItemList
(
a
.
getId
()));
}
}
return
accountPage
;
}
/**
* @param salaryFormId 工资id
* @Description: 工资详情-上面的统计
* @Author: hgw
* @Date: 2020/8/21 17:54
* @return: com.yifu.cloud.v1.common.core.util.R<com.yifu.cloud.v1.hrms.api.vo.SettlementFormVo>
**/
@Operation
(
description
=
"3.3工资详情-上面的统计(salaryFormId必传)"
)
@GetMapping
(
"/getSettlementStasticsBySalaryFormId"
)
public
R
<
SettlementFormVo
>
getSettlementStasticsBySalaryFormId
(
String
salaryFormId
)
{
if
(
Boolean
.
TRUE
.
equals
(
Common
.
isEmpty
(
salaryFormId
)))
{
salaryFormId
=
CommonConstants
.
ZERO_STRING
;
}
// 分页报账以及详情数据
SettlementFormVo
settlementFormVo
=
tSalaryAccountService
.
getSettlementFormVoBySalaryFormId
(
salaryFormId
);
return
new
R
<>(
settlementFormVo
);
}
}
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/mapper/TSalaryAccountMapper.java
View file @
776608d9
...
...
@@ -24,6 +24,8 @@ import com.yifu.cloud.plus.v1.yifu.ekp.vo.EkpSalaryParamVo;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.THaveSalaryNosocial
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccount
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.AccountCheckVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.SalaryAccountAndItemVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.SettlementFormVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryAccountSearchVo
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -129,4 +131,36 @@ public interface TSalaryAccountMapper extends BaseMapper<TSalaryAccount> {
* @return: void
**/
void
backSalaryBySalaryId
(
@Param
(
"salaryId"
)
String
salaryId
);
/**
* @param page 分页
* @param settlementFormVo 结算单Vo
* @Description: B端薪酬第一个统计列表
* @Author: hgw
* @Date: 2020/8/21 11:38
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SettlementFormVo>
**/
IPage
<
SettlementFormVo
>
getSettlementFormVoPage
(
Page
<
SettlementFormVo
>
page
,
@Param
(
"settlementFormVo"
)
SettlementFormVo
settlementFormVo
,
@Param
(
"settleDepartIdList"
)
List
<
String
>
settleDepartIdList
);
/**
* @param salaryFormId 结算单id
* @Description: 工资详情-上面的统计
* @Author: hgw
* @Date: 2020-8-21 17:55:24
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SettlementFormVo>
**/
SettlementFormVo
getSettlementFormVoBySalaryFormId
(
@Param
(
"salaryFormId"
)
String
salaryFormId
);
/**
* @param page
* @param salaryAccountAndItemVo
* @Description: 获取报账以及薪资
* @Author: hgw
* @Date: 2020/8/21 15:32
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SalaryAccountAndItemVo>
**/
IPage
<
SalaryAccountAndItemVo
>
getSalaryAccountAndItemVoPage
(
Page
<
SalaryAccountAndItemVo
>
page
,
@Param
(
"salaryAccountAndItemVo"
)
SalaryAccountAndItemVo
salaryAccountAndItemVo
);
}
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/service/TSalaryAccountService.java
View file @
776608d9
...
...
@@ -24,6 +24,8 @@ import com.yifu.cloud.plus.v1.yifu.ekp.vo.EkpSalaryParamVo;
import
com.yifu.cloud.plus.v1.yifu.insurances.vo.EkpSocialViewVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.THaveSalaryNosocial
;
import
com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccount
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.SalaryAccountAndItemVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.SettlementFormVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryAccountSearchVo
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -133,4 +135,35 @@ public interface TSalaryAccountService extends IService<TSalaryAccount> {
* @return: R
**/
void
updateSalarySettleStatus
(
List
<
EkpSocialViewVo
>
viewVo
);
/**
* @param page 分页
* @param settlementFormVo 结算单Vo
* @Description: B端薪酬第一个统计列表
* @Author: hgw
* @Date: 2020/8/21 11:38
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SettlementFormVo>
**/
IPage
<
SettlementFormVo
>
getSettlementFormVoPage
(
Page
<
SettlementFormVo
>
page
,
SettlementFormVo
settlementFormVo
,
List
<
String
>
settleDepartIdList
);
/**
* @param salaryFormId 结算单id
* @Description: 工资详情-上面的统计
* @Author: hgw
* @Date: 2020-8-21 17:55:24
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SettlementFormVo>
**/
SettlementFormVo
getSettlementFormVoBySalaryFormId
(
String
salaryFormId
);
/**
* @param page
* @param salaryAccountAndItemVo
* @Description: 获取报账以及薪资
* @Author: hgw
* @Date: 2020/8/21 15:32
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SalaryAccountAndItemVo>
**/
IPage
<
SalaryAccountAndItemVo
>
getSalaryAccountAndItemVoPage
(
Page
<
SalaryAccountAndItemVo
>
page
,
SalaryAccountAndItemVo
salaryAccountAndItemVo
);
}
yifu-salary/yifu-salary-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/salary/service/impl/TSalaryAccountServiceImpl.java
View file @
776608d9
...
...
@@ -34,6 +34,8 @@ import com.yifu.cloud.plus.v1.yifu.salary.entity.TSalaryAccount;
import
com.yifu.cloud.plus.v1.yifu.salary.mapper.TSalaryAccountMapper
;
import
com.yifu.cloud.plus.v1.yifu.salary.service.TSalaryAccountService
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.AccountCheckVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.SalaryAccountAndItemVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.SettlementFormVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TSalaryAccountSearchVo
;
import
lombok.extern.log4j.Log4j2
;
import
org.springframework.stereotype.Service
;
...
...
@@ -255,4 +257,44 @@ public class TSalaryAccountServiceImpl extends ServiceImpl<TSalaryAccountMapper,
}
}
/**
* @param page 分页
* @param settlementFormVo 结算单Vo
* @Description: B端薪酬第一个统计列表
* @Author: hgw
* @Date: 2020/8/21 11:38
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SettlementFormVo>
**/
@Override
public
IPage
<
SettlementFormVo
>
getSettlementFormVoPage
(
Page
<
SettlementFormVo
>
page
,
SettlementFormVo
settlementFormVo
,
List
<
String
>
settleDepartIdList
){
return
baseMapper
.
getSettlementFormVoPage
(
page
,
settlementFormVo
,
settleDepartIdList
);
}
/**
* @param salaryFormId 结算单id
* @Description: 工资详情-上面的统计
* @Author: hgw
* @Date: 2020-8-21 17:55:24
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SettlementFormVo>
**/
@Override
public
SettlementFormVo
getSettlementFormVoBySalaryFormId
(
String
salaryFormId
)
{
return
baseMapper
.
getSettlementFormVoBySalaryFormId
(
salaryFormId
);
}
/**
* @param page
* @param salaryAccountAndItemVo
* @Description: 获取报账以及薪资
* @Author: hgw
* @Date: 2020/8/21 15:32
* @return: com.baomidou.mybatisplus.core.metadata.IPage<com.yifu.cloud.v1.hrms.api.vo.SalaryAccountAndItemVo>
**/
@Override
public
IPage
<
SalaryAccountAndItemVo
>
getSalaryAccountAndItemVoPage
(
Page
<
SalaryAccountAndItemVo
>
page
,
SalaryAccountAndItemVo
salaryAccountAndItemVo
)
{
return
baseMapper
.
getSalaryAccountAndItemVoPage
(
page
,
salaryAccountAndItemVo
);
}
}
yifu-salary/yifu-salary-biz/src/main/resources/mapper/TSalaryAccountMapper.xml
View file @
776608d9
...
...
@@ -98,6 +98,37 @@
<result
property=
"payCollectFlag"
column=
"PAY_SETTLE_FLAG"
/>
</resultMap>
<!-- B端薪酬第一个统计列表 -->
<resultMap
id=
"settlementFormVoMap"
type=
"com.yifu.cloud.plus.v1.yifu.salary.vo.SettlementFormVo"
>
<result
property=
"salaryMonth"
column=
"SALARY_MONTH"
/>
<result
property=
"personTime"
column=
"PERSON_TIME"
/>
<result
property=
"salarySum"
column=
"SALARY_SUM"
/>
<result
property=
"cardPay"
column=
"CARD_PAY"
/>
<result
property=
"laborCosts"
column=
"LABOR_COSTS"
/>
</resultMap>
<!-- B端工资报账信息 -->
<resultMap
id=
"salaryAccountAndItemVoMap"
type=
"com.yifu.cloud.plus.v1.yifu.salary.vo.SalaryAccountAndItemVo"
>
<id
property=
"id"
column=
"ID"
/>
<result
property=
"salaryDate"
column=
"SALARY_DATE"
/>
<result
property=
"empName"
column=
"EMP_NAME"
/>
<result
property=
"empIdcard"
column=
"EMP_IDCARD"
/>
<result
property=
"salaryGiveTime"
column=
"SALARY_GIVE_TIME"
/>
<result
property=
"distributionFlag"
column=
"DISTRIBUTION_FLAG"
/>
<result
property=
"deduSocialMonth"
column=
"DEDU_SOCIAL_MONTH"
/>
<result
property=
"deduProvidentMonth"
column=
"DEDU_PROVIDENT_MONTH"
/>
<result
property=
"salaryType"
column=
"SALARY_TYPE"
/>
<result
property=
"settlementMonth"
column=
"SETTLEMENT_MONTH"
/>
<result
property=
"relaySalary"
column=
"RELAY_SALARY"
/>
<result
property=
"actualSalarySum"
column=
"ACTUAL_SALARY_SUM"
/>
<result
property=
"salaryTax"
column=
"SALARY_TAX"
/>
<result
property=
"unitSocial"
column=
"UNIT_SOCIAL"
/>
<result
property=
"personalSocial"
column=
"PERSONAL_SOCIAL"
/>
<result
property=
"unitFund"
column=
"UNIT_FUND"
/>
<result
property=
"personalFund"
column=
"PERSONAL_FUND"
/>
<result
property=
"revenueTime"
column=
"REVENUE_TIME"
/>
</resultMap>
<!-- 对接EKP的参数 -->
<resultMap
id=
"ekpSalaryParamVoMap"
type=
"com.yifu.cloud.plus.v1.yifu.ekp.vo.EkpSalaryParamVo"
>
<result
property=
"fd_3b10af838eab5c"
column=
"fd_3b10af838eab5c"
/>
...
...
@@ -848,4 +879,79 @@
<update
id=
"backSalaryBySalaryId"
>
update t_salary_account a set a.SEND_STATUS = '0' where a.SALARY_FORM_ID = #{salaryId}
</update>
<!-- B端薪酬第一个统计列表 -->
<select
id=
"getSettlementFormVoPage"
resultMap=
"settlementFormVoMap"
>
select s.SALARY_MONTH,count(1) PERSON_TIME,sum(ifnull(s.RELAY_SALARY,0)) SALARY_SUM,sum(ifnull(s.ACTUAL_SALARY,0)) CARD_PAY
from t_salary_account s
where s.SALARY_MONTH like '${settlementFormVo.years}%'
<if
test=
"settleDepartIdList != null"
>
AND s.DEPT_ID in
<foreach
collection=
"settleDepartIdList"
item=
"ids"
open=
"("
separator=
","
close=
")"
>
#{ids}
</foreach>
</if>
and s.DELETE_FLAG=0
GROUP BY s.SALARY_MONTH desc
</select>
<!-- B端工资详情-上面的统计 -->
<select
id=
"getSettlementFormVoBySalaryFormId"
resultMap=
"settlementFormVoMap"
>
SELECT
count(1) PERSON_TIME,
sum(ifnull(s.RELAY_SALARY,0)) SALARY_SUM,
sum(ifnull(s.ACTUAL_SALARY,0)) CARD_PAY,
sum(ifnull(s.RELAY_SALARY,0)) + sum(ifnull(s.UNIT_SOCIAL, 0)) + sum(ifnull(s.UNIT_FUND, 0)) LABOR_COSTS
FROM
t_salary_account s
where s.SALARY_FORM_ID = #{salaryFormId}
GROUP BY s.SALARY_FORM_ID
</select>
<!--获取报账以及薪资 -->
<select
id=
"getSalaryAccountAndItemVoPage"
resultMap=
"salaryAccountAndItemVoMap"
>
select a.id,a.SALARY_MONTH SALARY_DATE,a.EMP_NAME,a.EMP_IDCARD,a.SALARY_GIVE_TIME
,a.DISTRIBUTION_FLAG,a.DEDU_SOCIAL_MONTH,a.DEDU_PROVIDENT_MONTH
,a.FORM_TYPE SALARY_TYPE,a.SETTLEMENT_MONTH
,a.RELAY_SALARY RELAY_SALARY
,a.ACTUAL_SALARY ACTUAL_SALARY_SUM
,a.SALARY_TAX SALARY_TAX
,a.UNIT_SOCIAL UNIT_SOCIAL
,a.PERSON_SOCIAL PERSONAL_SOCIAL
,a.UNIT_FUND UNIT_FUND
,a.PERSON_FUND PERSONAL_FUND
,a.SEND_TIME REVENUE_TIME
from t_salary_account a
where a.DELETE_FLAG = 0
<if
test=
"salaryAccountAndItemVo.salaryFormId != null and salaryAccountAndItemVo.salaryFormId.trim() != ''"
>
AND a.SALARY_FORM_ID = #{salaryAccountAndItemVo.salaryFormId}
</if>
<if
test=
"salaryAccountAndItemVo.empName != null and salaryAccountAndItemVo.empName.trim() != ''"
>
AND a.EMP_NAME = #{salaryAccountAndItemVo.empName}
</if>
<if
test=
"salaryAccountAndItemVo.empIdcard != null and salaryAccountAndItemVo.empIdcard.trim() != ''"
>
AND a.EMP_IDCARD = #{salaryAccountAndItemVo.empIdcard}
</if>
<if
test=
"salaryAccountAndItemVo.salaryGiveTime != null and salaryAccountAndItemVo.salaryGiveTime.trim() != ''"
>
AND a.SALARY_GIVE_TIME = #{salaryAccountAndItemVo.salaryGiveTime}
</if>
<if
test=
"salaryAccountAndItemVo.distributionFlag != null and salaryAccountAndItemVo.distributionFlag.trim() != ''"
>
AND a.DISTRIBUTION_FLAG = #{salaryAccountAndItemVo.distributionFlag}
</if>
<if
test=
"salaryAccountAndItemVo.deduSocialMonth != null and salaryAccountAndItemVo.deduSocialMonth.trim() != ''"
>
AND a.DEDU_SOCIAL_MONTH = #{salaryAccountAndItemVo.deduSocialMonth}
</if>
<if
test=
"salaryAccountAndItemVo.deduProvidentMonth != null and salaryAccountAndItemVo.deduProvidentMonth.trim() != ''"
>
AND a.DEDU_PROVIDENT_MONTH = #{salaryAccountAndItemVo.deduProvidentMonth}
</if>
<if
test=
"salaryAccountAndItemVo.salaryType != null and salaryAccountAndItemVo.salaryType.trim() != ''"
>
AND a.FORM_TYPE = #{salaryAccountAndItemVo.salaryType}
</if>
<if
test=
"salaryAccountAndItemVo.settlementMonth != null and salaryAccountAndItemVo.settlementMonth.trim() != ''"
>
AND a.SETTLEMENT_MONTH = #{salaryAccountAndItemVo.settlementMonth}
</if>
<if
test=
"salaryAccountAndItemVo.years != null and salaryAccountAndItemVo.years.trim() != ''"
>
AND a.SALARY_MONTH like concat(#{salaryAccountAndItemVo.years},'%')
</if>
</select>
</mapper>
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/entity/TPaymentInfo.java
View file @
776608d9
...
...
@@ -714,5 +714,11 @@ public class TPaymentInfo extends BaseEntity {
@ExcelIgnore
private
String
bjSameFlg
;
/**
* B端按年查询专用
*/
@TableField
(
exist
=
false
)
@ExcelIgnore
private
String
likeYear
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/FundAddAndReduceVo.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
vo
;
import
lombok.Data
;
/**
* 返回公积金派增和派减数据
* @Author fxj
* @Date 2020-08-25
**/
@Data
public
class
FundAddAndReduceVo
{
/**
* 公积金办理单位
**/
private
String
fundHouse
;
/**
* 公积金缴纳地-省
**/
private
Integer
fundProvince
;
/**
* 公积金缴纳地-市
**/
private
Integer
fundCity
;
/**
* 公积金缴纳地-县
**/
private
Integer
fundTown
;
/**
* 公积金办理单位-派减
**/
private
String
fundHouseReduce
;
/**
* 公积金缴纳地-省-派减
**/
private
Integer
fundProvinceReduce
;
/**
* 公积金缴纳地-市-派减
**/
private
Integer
fundCityReduce
;
/**
* 公积金缴纳地-县-派减
**/
private
Integer
fundTownReduce
;
/**
* 公积金派增办理状态 0 派单开始 1办理成功 2办理失败
**/
private
String
fundAddStatus
;
/**
* 公积金派减办理状态 0 派单开始 1 办理成功 2 办理失败
**/
private
String
fundReduceStatus
;
/**
* 公积金派增时间
**/
private
String
fundStartDate
;
/**
* 公积金派减时间
**/
private
String
fundEndDate
;
/**
* 公积金派增派单时间
**/
private
String
fundAddDispatchDate
;
/**
* 公积金派减派单时间
**/
private
String
fundReduceDispatchDate
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/PaymentBusinessPageDetail.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* 获取对应单位或结算主体权限下的缴费库统计情况
* @Author fxj
* @Date 2020-08-31
**/
@Data
public
class
PaymentBusinessPageDetail
{
/**
* 账单人数 退费不计数
**/
@Schema
(
description
=
"账单人数"
,
name
=
"personalSum"
)
private
Integer
personalCount
;
/**
* 增员
**/
@Schema
(
description
=
"增员"
,
name
=
"personalSum"
)
private
Integer
personalAdd
;
/**
* 减员
**/
@Schema
(
description
=
"减员"
,
name
=
"personalSum"
)
private
Integer
personalReduce
;
/**
* 个人合计
**/
@Schema
(
description
=
"个人合计"
,
name
=
"personalSum"
)
private
BigDecimal
personalSum
;
/**
* 单位合计
**/
@Schema
(
description
=
"单位合计"
,
name
=
"unitSum"
)
private
BigDecimal
unitSum
;
/**
* 合计
**/
@Schema
(
description
=
"合计"
,
name
=
"sum"
)
private
BigDecimal
sum
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/PaymentBusinessPageVo.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
vo
;
import
io.swagger.v3.oas.annotations.media.Schema
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* 个人社保公积金账单列表对象
* @Author fxj
* @Date 2020-08-25
**/
@Data
public
class
PaymentBusinessPageVo
{
/**
* 员工姓名
**/
@Schema
(
description
=
"员工姓名"
,
name
=
"empName"
)
private
String
empName
;
/**
* 员工ID
**/
@Schema
(
description
=
"员工ID"
,
name
=
"empName"
)
private
String
empId
;
/**
* 缴费月份
**/
@Schema
(
description
=
"缴费月份"
,
name
=
"month"
)
private
String
month
;
/**
* 结算主体ID
**/
private
String
settleDomainId
;
/**
* 社保个人缴费
**/
@Schema
(
description
=
"社保个人缴费"
,
name
=
"socialPersonalSum"
)
private
BigDecimal
socialPersonalSum
;
/**
* 社保公司合计
**/
@Schema
(
description
=
"社保公司合计"
,
name
=
"socialUnitSum"
)
private
BigDecimal
socialUnitSum
;
/**
* 公积金个人合计
**/
@Schema
(
description
=
"公积金个人合计"
,
name
=
"fundPersonalSum"
)
private
BigDecimal
fundPersonalSum
;
/**
* 公积金公司合计
**/
@Schema
(
description
=
"公积金公司合计"
,
name
=
"fundUnitSum"
)
private
BigDecimal
fundUnitSum
;
/**
* 个人合计
**/
@Schema
(
description
=
"个人合计"
,
name
=
"personalSum"
)
private
BigDecimal
personalSum
;
/**
* 单位合计
**/
@Schema
(
description
=
"单位合计"
,
name
=
"unitSum"
)
private
BigDecimal
unitSum
;
/**
* 合计
**/
@Schema
(
description
=
"合计"
,
name
=
"sum"
)
private
BigDecimal
sum
;
/***************************社保明细**************************/
/**
* 单位社保补缴利息
*/
@Schema
(
description
=
"单位社保补缴利息"
,
name
=
"companyAccrual"
)
private
BigDecimal
companyAccrual
;
/**
* 个人社保补缴利息
*/
@Schema
(
description
=
"个人社保补缴利息"
,
name
=
"personalAccrual"
)
private
BigDecimal
personalAccrual
;
/**
* 单位养老基数
*/
@Schema
(
description
=
"养老基数"
,
name
=
"unitPensionSet"
)
private
BigDecimal
unitPensionSet
;
/**
* 单位医疗基数
*/
@Schema
(
description
=
"医保基数"
,
name
=
"unitMedicalSet"
)
private
BigDecimal
unitMedicalSet
;
/**
* 单位失业基数
*/
@Schema
(
description
=
"失业基数"
,
name
=
"unitUnemploymentSet"
)
private
BigDecimal
unitUnemploymentSet
;
/**
* 单位工伤基数
*/
@Schema
(
description
=
"工伤基数"
,
name
=
"unitInjurySet"
)
private
BigDecimal
unitInjurySet
;
/**
* 单位生育基数
*/
@Schema
(
description
=
"生育基数"
,
name
=
"unitBirthSet"
)
private
BigDecimal
unitBirthSet
;
/**
* 个人养老基数
*/
@Schema
(
description
=
"个人养老基数"
,
name
=
"personalPensionSet"
)
private
BigDecimal
personalPensionSet
;
/**
* 个人医疗基数
*/
@Schema
(
description
=
"个人医疗基数"
,
name
=
"personalMedicalSet"
)
private
BigDecimal
personalMedicalSet
;
/**
* 个人失业基数
*/
@Schema
(
description
=
"个人失业基数"
,
name
=
"personalUnemploymentSet"
)
private
BigDecimal
personalUnemploymentSet
;
/**
* 单位养老比例
*/
@Schema
(
description
=
"单位养老比例"
,
name
=
"unitPensionPer"
)
private
BigDecimal
unitPensionPer
;
/**
* 单位医疗比例
*/
@Schema
(
description
=
"单位医疗比例"
,
name
=
"unitMedicalPer"
)
private
BigDecimal
unitMedicalPer
;
/**
* 单位失业比例
*/
@Schema
(
description
=
"单位失业比例"
,
name
=
"unitUnemploymentPer"
)
private
BigDecimal
unitUnemploymentPer
;
/**
* 单位工伤比例
*/
@Schema
(
description
=
"单位工伤比例"
,
name
=
"unitInjuryPer"
)
private
BigDecimal
unitInjuryPer
;
/**
* 单位生育比例
*/
@Schema
(
description
=
"单位生育比例"
,
name
=
"unitBirthPer"
)
private
BigDecimal
unitBirthPer
;
/**
* 个人养老比例
*/
@Schema
(
description
=
"个人养老比例"
,
name
=
"personalPensionPer"
)
private
BigDecimal
personalPensionPer
;
/**
* 个人医疗比例
*/
@Schema
(
description
=
"个人医疗比例"
,
name
=
"personalMedicalPer"
)
private
BigDecimal
personalMedicalPer
;
/**
* 个人失业比例
*/
@Schema
(
description
=
"个人失业比例"
,
name
=
"personalUnemploymentPer"
)
private
BigDecimal
personalUnemploymentPer
;
/**
* 单位大病比例
*/
@Schema
(
description
=
"单位大病比例"
,
name
=
"unitBigailmentPer"
)
private
BigDecimal
unitBigailmentPer
;
/**
* 个人大病比例
*/
@Schema
(
description
=
"个人大病比例"
,
name
=
"personalBigailmentPer"
)
private
BigDecimal
personalBigailmentPer
;
/**
* 单位养老金额
*/
@Schema
(
description
=
"养老单位缴费"
,
name
=
"unitPensionMoney"
)
private
BigDecimal
unitPensionMoney
;
/**
* 单位医疗金额
*/
@Schema
(
description
=
"医保单位缴费"
,
name
=
"unitMedicalMoney"
)
private
BigDecimal
unitMedicalMoney
;
/**
* 单位失业金额
*/
@Schema
(
description
=
"失业单位缴费"
,
name
=
"unitUnemploymentMoney"
)
private
BigDecimal
unitUnemploymentMoney
;
/**
* 单位工伤金额
*/
@Schema
(
description
=
"工伤缴费"
,
name
=
"unitInjuryMoney"
)
private
BigDecimal
unitInjuryMoney
;
/**
* 单位生育金额
*/
@Schema
(
description
=
"生育缴费"
,
name
=
"unitBirthMoney"
)
private
BigDecimal
unitBirthMoney
;
/**
* 单位大病金额
*/
@Schema
(
description
=
"单位医疗救助金"
,
name
=
"unitBigmailmentMoney"
)
private
BigDecimal
unitBigmailmentMoney
;
/**
* 个人养老金额
*/
@Schema
(
description
=
"养老个人缴费"
,
name
=
"personalPensionMoney"
)
private
BigDecimal
personalPensionMoney
;
/**
* 个人医疗金额
*/
@Schema
(
description
=
"医保个人缴费"
,
name
=
"personalMedicalMoney"
)
private
BigDecimal
personalMedicalMoney
;
/**
* 个人失业金额
*/
@Schema
(
description
=
"失业个人缴费"
,
name
=
"personalUnemploymentMoney"
)
private
BigDecimal
personalUnemploymentMoney
;
/**
* 个人大病金额
*/
@Schema
(
description
=
"个人医疗救助金"
,
name
=
"personalBigmailmentMoney"
)
private
BigDecimal
personalBigmailmentMoney
;
/************************公积金明细***************************/
/**
* 公积金编号
*/
@Schema
(
description
=
"公积金编号"
,
name
=
"providentNo"
)
private
String
providentNo
;
/**
* 单位公积金基数
*/
@Schema
(
description
=
"公积金单边基数"
,
name
=
"unitProvidentSet"
)
private
BigDecimal
unitProvidentSet
;
/**
* 单边公积金比例
*/
@Schema
(
description
=
"公积金单边比例"
,
name
=
"providentPercent"
)
private
BigDecimal
providentPercent
;
/**
* 个人公积金基数
*/
@Schema
(
description
=
"个人公积金基数"
,
name
=
"personalProidentSet"
)
private
BigDecimal
personalProidentSet
;
/**
* 个人退费
*/
@Schema
(
description
=
"个人退费"
,
name
=
"personalRefund"
)
private
BigDecimal
personalRefund
;
/**
* 公司退费
*/
@Schema
(
description
=
"公司退费"
,
name
=
"unitRefund"
)
private
BigDecimal
unitRefund
;
/**
* 兼职工伤基数
*/
@Schema
(
description
=
"兼职工伤基数"
,
name
=
"injuryAloneSet"
)
private
BigDecimal
injuryAloneSet
;
/**
* 兼职工伤比例
*/
@Schema
(
description
=
"兼职工伤比例"
,
name
=
"injuryAlonePer"
)
private
BigDecimal
injuryAlonePer
;
/**
* 兼职工伤金额
*/
@Schema
(
description
=
"兼职工伤金额"
,
name
=
"injuryAloneMoney"
)
private
BigDecimal
injuryAloneMoney
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/SocialAddAndReduceVo.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
vo
;
import
lombok.Data
;
/**
* 返回社保派增和派减数据
* @Author fxj
* @Date 2020-08-25
**/
@Data
public
class
SocialAddAndReduceVo
{
/**
* 社保办理单位
**/
private
String
socialHouse
;
/**
* 社保办理单位- 派减
**/
private
String
socialHouseReduce
;
/**
* 社保缴纳地-省
**/
private
Integer
socialProvince
;
/**
* 社保缴纳地-市
**/
private
Integer
socialCity
;
/**
* 社保缴纳地-县
**/
private
Integer
socialTown
;
/**
* 社保缴纳地-省- 派减
**/
private
Integer
socialProvinceReduce
;
/**
* 社保缴纳地-市- 派减
**/
private
Integer
socialCityReduce
;
/**
* 社保缴纳地-县- 派减
**/
private
Integer
socialTownReduce
;
/**
* 社保派增办理状态 0 派单开始 1 办理中 2 办理成功 3 办理失败 4 部分办理成功
**/
private
String
socialAddStatus
;
/**
* 社保派减办理状态 0 派单开始 1 办理中 2 办理成功 3 办理失败
**/
private
String
socialReduceStatus
;
/**
* 社保派增时间
**/
private
String
socialStartDate
;
/**
* 社保派减时间
**/
private
String
socialEndDate
;
/**
* 社保派增派单时间
**/
private
String
socialAddDispatchDate
;
/**
* 社保派减派单时间
**/
private
String
socialReduceDispatchDate
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/SocialAndFundBusinessPageVo.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
vo
;
import
lombok.Data
;
import
java.math.BigDecimal
;
/**
* 社保公积金列表数据统计
* @Author fxj
* @Date 2020-08-28
**/
@Data
public
class
SocialAndFundBusinessPageVo
{
/**
* 月份
**/
private
String
month
;
/**
* 人数
**/
private
Integer
peopleCount
;
/**
* 个人缴费合计
**/
private
BigDecimal
personalSum
;
/**
* 单位缴费合计
**/
private
BigDecimal
unitSum
;
/**
* 单位ID
**/
private
String
unitId
;
/**
* 结算主体ID
**/
private
String
settleDomainId
;
/**
* 查询条件年
**/
private
String
year
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/SocialAndFundReduceBusinessVo.java
0 → 100644
View file @
776608d9
package
com
.
yifu
.
cloud
.
plus
.
v1
.
yifu
.
social
.
vo
;
import
lombok.Data
;
/**
*
* @Author fxj
* @Date 2020-09-01
**/
@Data
public
class
SocialAndFundReduceBusinessVo
{
/**
* 员工姓名
**/
private
String
empName
;
/**
* 离职日期
**/
private
String
leaveDate
;
/**
* 社保状态
**/
private
String
socialStatus
;
/**
* 公积金状态
**/
private
String
fundStatus
;
/**
* 社保派减日期
**/
private
String
socialReduceDate
;
/**
* 公积金派减日期
**/
private
String
fundReduceDate
;
}
yifu-social/yifu-social-api/src/main/java/com/yifu/cloud/plus/v1/yifu/social/vo/TPaymentAllInfoVo.java
0 → 100644
View file @
776608d9
This diff is collapsed.
Click to expand it.
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/controller/DispatchBusinessController.java
0 → 100644
View file @
776608d9
This diff is collapsed.
Click to expand it.
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/mapper/TPaymentInfoMapper.java
View file @
776608d9
...
...
@@ -24,10 +24,7 @@ import com.yifu.cloud.plus.v1.yifu.archives.vo.TSettleDomainSelectVo;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TPaymentBySalaryVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.UpdateSocialFoundVo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TPaymentInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TPaymentInfoBatchVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TPaymentInfoExportVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TPaymentInfoSearchVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TPaymentInfoVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.*
;
import
org.apache.ibatis.annotations.Mapper
;
import
org.apache.ibatis.annotations.Param
;
...
...
@@ -240,4 +237,76 @@ public interface TPaymentInfoMapper extends BaseMapper<TPaymentInfo> {
*/
long
getTPaymentFundIncomeCount
(
@Param
(
"tPaymentInfo"
)
TPaymentInfoSearchVo
searchVo
,
@Param
(
"userId"
)
String
userId
);
/**
* B端使用,查询缴费库信息
* @Author fxj
* @Date 2019-10-12
* @param paymentInfo
* @param settleDomainIds
* @param idsStr
* @param empIds
* @return
**/
List
<
TPaymentAllInfoVo
>
getPaymentAllInfoList
(
@Param
(
"tPaymentInfo"
)
TPaymentInfo
paymentInfo
,
@Param
(
"settleDomainIds"
)
List
<
String
>
settleDomainIds
,
@Param
(
"idsStr"
)
List
<
String
>
idsStr
,
@Param
(
"empIds"
)
List
<
String
>
empIds
);
/**
* B端社保公积金列表查询
* @Author fxj
* @Date 2020-08-28
* @param socialAndFundBusinessPageVo
* @param settleDomainIds
* @return
**/
List
<
SocialAndFundBusinessPageVo
>
getSocialAndFundBusinessDataPage
(
@Param
(
"socialAndFundBusinessPageVo"
)
SocialAndFundBusinessPageVo
socialAndFundBusinessPageVo
,
@Param
(
"settleDomainIds"
)
List
<
String
>
settleDomainIds
);
/**
* B端社保公积金列表查询
* @Author fxj
* @Date 2020-08-28
* @param socialAndFundBusinessPageVo
* @param settleDomainIds
* @return
**/
List
<
SocialAndFundBusinessPageVo
>
getSocialAndFundBusinessDataCount
(
@Param
(
"socialAndFundBusinessPageVo"
)
SocialAndFundBusinessPageVo
socialAndFundBusinessPageVo
,
@Param
(
"settleDomainIds"
)
List
<
String
>
settleDomainIds
);
// B端
List
<
String
>
getSocialOrFundAddEmpIds
(
@Param
(
"month"
)
String
month
,
@Param
(
"settleDomainId"
)
String
settleDomainId
,
@Param
(
"settleDomainIds"
)
List
<
String
>
settleDomainIds
);
// B端
IPage
<
PaymentBusinessPageVo
>
getPaymentBusinessPageVo
(
Page
page
,
@Param
(
"paymentBusinessPageVo"
)
PaymentBusinessPageVo
paymentBusinessPageVo
,
@Param
(
"settleDomainIds"
)
List
<
String
>
settleDomainIds
,
@Param
(
"empIds"
)
List
<
String
>
empIds
);
/**
* B端-获取派增社保或公积金人数
* @Author fxj
* @Date 2020-08-31
* @param month
* @param settleDomainId
* @param settleDomainIds
* @param type 0 获取所有办理成功状态的社保和公积金人数 1 获取所有本月派增办理成功的社保或公积金人数
* @return
**/
int
getSocialOrFundAddCount
(
@Param
(
"month"
)
String
month
,
@Param
(
"settleDomainId"
)
String
settleDomainId
,
@Param
(
"settleDomainIds"
)
List
<
String
>
settleDomainIds
,
@Param
(
"type"
)
Integer
type
);
/**
* B端
* @Author fxj
* @Date 2020-08-31
* @param month
* @param settleDomainId
* @param settleDomainIds
* @return
**/
int
getSocialOrFundReduceCount
(
@Param
(
"month"
)
String
month
,
@Param
(
"settleDomainId"
)
String
settleDomainId
,
@Param
(
"settleDomainIds"
)
List
<
String
>
settleDomainIds
);
IPage
<
SocialAndFundReduceBusinessVo
>
getSocialAndFundReduceInfo
(
Page
page
,
@Param
(
"month"
)
String
month
,
@Param
(
"settleDomainId"
)
String
settleDomainId
,
@Param
(
"settleDomainIds"
)
List
<
String
>
settleDomainIds
);
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/TPaymentInfoService.java
View file @
776608d9
...
...
@@ -25,9 +25,7 @@ import com.yifu.cloud.plus.v1.yifu.salary.vo.TPaymentBySalaryVo;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.TPaymentVo
;
import
com.yifu.cloud.plus.v1.yifu.salary.vo.UpdateSocialFoundVo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TPaymentInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.ChangeDeptVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TPaymentInfoSearchVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TPaymentInfoVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.*
;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.InputStream
;
...
...
@@ -171,4 +169,65 @@ public interface TPaymentInfoService extends IService<TPaymentInfo> {
void
updateSocialSettleStatus
(
List
<
EkpSocialViewVo
>
viewVo
);
// hgw2023-1-6 10:42:06:以下:B端相关接口:
/**
* hgwB端相关接口-按年查询指定人的缴费库数据
* @Author fxj
* @Date 2020-08-25
* @param year
* @param empId
* @return
**/
List
<
PaymentBusinessPageVo
>
getPaymentByYearAndEmpId
(
String
year
,
String
empId
);
/**
* hgwB端相关接口-按年月查询指定人的缴费库数据:年月格式 yyyyMM
* @Author fxj
* @Date 2020-08-25
* @param month
* @param empId
* @return
**/
PaymentBusinessPageVo
getPaymentByMonthAndEmpId
(
String
month
,
String
empId
);
/**
* hgwB端相关接口-B端社保公积金列表查询
* @Author fxj
* @Date 2020-08-28
* @param page
* @param socialAndFundBusinessPageVo
* @param settleDomainIds
* @return
**/
List
<
SocialAndFundBusinessPageVo
>
getSocialAndFundBusinessPage
(
Page
<
SocialAndFundBusinessPageVo
>
page
,
SocialAndFundBusinessPageVo
socialAndFundBusinessPageVo
,
List
<
String
>
settleDomainIds
);
/**
* hgwB端相关接口-按月查询对应权限的缴费库数据
* @Author fxj
* @Date 2020-08-25
* @param paymentBusinessPageVo
* @param settleDomainIds
* @param type
* @return
**/
IPage
<
PaymentBusinessPageVo
>
getPaymentByMonthAndAuth
(
Page
<
PaymentBusinessPageVo
>
page
,
PaymentBusinessPageVo
paymentBusinessPageVo
,
List
<
String
>
settleDomainIds
,
String
type
);
/**
* hgwB端相关接口-按年月查询指定结算主体或权限内的缴费库数据统计
* @Author fxj
* @Date 2020-08-31
* @param month
* @param settleDomainId
* @return
**/
PaymentBusinessPageDetail
getPaymentBusinessPageDetailByMonthAndAuth
(
String
month
,
String
settleDomainId
,
List
<
String
>
settleDomainIds
);
/**
* hgwB端相关接口-查询派减的社保和公积金的分页数据
* @Author fxj
* @Date 2020-08-31
* @param page
* @param month
* @param settleDomainId
* @return
**/
IPage
<
SocialAndFundReduceBusinessVo
>
getSocialAndFundReduceInfo
(
Page
<
SocialAndFundReduceBusinessVo
>
page
,
String
month
,
String
settleDomainId
,
List
<
String
>
settleDomainIds
);
// hgw2023-1-6 10:42:06:以上:B端相关接口
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/TProvidentFundService.java
View file @
776608d9
...
...
@@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
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.social.entity.TProvidentFund
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.FundAddAndReduceVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TProvidentFundSearchVo
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -47,4 +48,13 @@ public interface TProvidentFundService extends IService<TProvidentFund> {
void
listExport
(
HttpServletResponse
response
,
TProvidentFundSearchVo
searchVo
);
List
<
TProvidentFund
>
noPageDiy
(
TProvidentFundSearchVo
searchVo
);
/**
* B端使用-通过ID查询员工对应的派增派减数据
* @Author fxj
* @Date 2020-08-25
* @param empId
* @return
**/
FundAddAndReduceVo
getAddOrReduceInfoByEmpId
(
String
empId
);
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/TSocialInfoService.java
View file @
776608d9
...
...
@@ -23,6 +23,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
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.social.entity.TSocialInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.SocialAddAndReduceVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TSocialInfoSearchVo
;
import
javax.servlet.http.HttpServletResponse
;
...
...
@@ -47,4 +48,13 @@ public interface TSocialInfoService extends IService<TSocialInfo> {
void
listExport
(
HttpServletResponse
response
,
TSocialInfoSearchVo
searchVo
);
List
<
TSocialInfo
>
noPageDiy
(
TSocialInfoSearchVo
searchVo
);
/**
* B端使用-通过ID查询员工对应的派增派减数据
* @Author fxj
* @Date 2020-08-25
* @param empId
* @return
**/
SocialAddAndReduceVo
getAddOrReduceInfoByEmpId
(
String
empId
);
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TPaymentInfoServiceImpl.java
View file @
776608d9
This diff is collapsed.
Click to expand it.
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TProvidentFundServiceImpl.java
View file @
776608d9
...
...
@@ -33,11 +33,17 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.*
;
import
com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.SysHouseHoldInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TDispatchInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TProvidentFund
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.SysHouseHoldInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.TDispatchInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.TProvidentFundMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.service.TProvidentFundService
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.FundAddAndReduceVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TProvidentFundSearchVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TProvidentFundVo
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.log4j.Log4j2
;
import
org.springframework.stereotype.Service
;
...
...
@@ -54,9 +60,15 @@ import java.util.List;
* @author fxj
* @date 2022-07-15 11:38:05
*/
@AllArgsConstructor
@Log4j2
@Service
public
class
TProvidentFundServiceImpl
extends
ServiceImpl
<
TProvidentFundMapper
,
TProvidentFund
>
implements
TProvidentFundService
{
private
final
TDispatchInfoMapper
dispatchInfoMapper
;
private
final
SysHouseHoldInfoMapper
sysHouseHoldInfoMapper
;
/**
* 公积金信息简单分页查询
* @param tProvidentFund 公积金信息
...
...
@@ -244,4 +256,141 @@ public class TProvidentFundServiceImpl extends ServiceImpl<TProvidentFundMapper,
BeanUtil
.
copyProperties
(
excel
,
insert
);
this
.
save
(
insert
);
}
/**
* 通过ID查询员工对应的派增派减数据
* @Author fxj
* @Date 2020-08-25
* @param empId
* @return
**/
@Override
public
FundAddAndReduceVo
getAddOrReduceInfoByEmpId
(
String
empId
)
{
FundAddAndReduceVo
fundAddAndReduceVo
=
new
FundAddAndReduceVo
();
TProvidentFund
fund
=
null
;
TDispatchInfo
dispatchInfoAdd
=
dispatchInfoMapper
.
selectOne
(
Wrappers
.<
TDispatchInfo
>
query
().
lambda
()
.
eq
(
TDispatchInfo:
:
getEmpId
,
empId
)
.
eq
(
TDispatchInfo:
:
getDeleteFlag
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
TDispatchInfo:
:
getType
,
CommonConstants
.
ZERO_STRING
)
.
isNotNull
(
TDispatchInfo:
:
getFundId
)
.
orderByDesc
(
TDispatchInfo:
:
getCreateTime
)
.
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(
null
!=
dispatchInfoAdd
){
fund
=
baseMapper
.
selectById
(
dispatchInfoAdd
.
getFundId
());
initFundAddAndReduce
(
fundAddAndReduceVo
,
fund
,
dispatchInfoAdd
);
if
(
null
!=
dispatchInfoAdd
.
getCreateTime
()){
fundAddAndReduceVo
.
setFundAddDispatchDate
(
LocalDateTimeUtils
.
formatTime
(
dispatchInfoAdd
.
getCreateTime
()
,
LocalDateTimeUtils
.
DATE_TIME_PATTERN_DEFAULT
));
}
}
TDispatchInfo
dispatchInfoReduce
=
dispatchInfoMapper
.
selectOne
(
Wrappers
.<
TDispatchInfo
>
query
().
lambda
()
.
eq
(
TDispatchInfo:
:
getEmpId
,
empId
)
.
eq
(
TDispatchInfo:
:
getDeleteFlag
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
TDispatchInfo:
:
getType
,
CommonConstants
.
ONE_STRING
)
.
isNotNull
(
TDispatchInfo:
:
getFundId
)
.
orderByDesc
(
TDispatchInfo:
:
getCreateTime
)
.
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(
null
!=
dispatchInfoReduce
){
fund
=
baseMapper
.
selectById
(
dispatchInfoReduce
.
getFundId
());
initFundAddAndReduce
(
fundAddAndReduceVo
,
fund
,
dispatchInfoReduce
);
if
(
Common
.
isNotNull
(
dispatchInfoReduce
.
getFundReduceDate
()))
{
fundAddAndReduceVo
.
setFundEndDate
(
DateUtil
.
formatDate
(
dispatchInfoReduce
.
getFundReduceDate
()));
}
if
(
null
!=
dispatchInfoReduce
.
getCreateTime
()){
fundAddAndReduceVo
.
setFundReduceDispatchDate
(
LocalDateTimeUtils
.
formatTime
(
dispatchInfoReduce
.
getCreateTime
(),
LocalDateTimeUtils
.
DATE_TIME_PATTERN_DEFAULT
));
}
}
return
fundAddAndReduceVo
;
}
/**
* 初始化社保派增派减数据
* @Author fxj
* @Date 2020-08-25
* @param fundAddAndReduceVo
* @param fund
* @param dispatchInfo
* @return
**/
private
void
initFundAddAndReduce
(
FundAddAndReduceVo
fundAddAndReduceVo
,
TProvidentFund
fund
,
TDispatchInfo
dispatchInfo
)
{
SysHouseHoldInfo
houseHoldInfo
=
null
;
if
(
null
!=
fund
)
{
if
(
null
!=
fund
.
getProvidentHousehold
()){
houseHoldInfo
=
sysHouseHoldInfoMapper
.
selectById
(
fund
.
getProvidentHousehold
());
}
// 派增派单状态处理 待提交和待审核都属于派单开始
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
dispatchInfo
.
getType
())){
fundAddAndReduceVo
.
setFundHouse
(
null
==
houseHoldInfo
?
""
:
houseHoldInfo
.
getName
());
fundAddAndReduceVo
.
setFundProvince
(
Common
.
isNotNull
(
fund
.
getFundProvince
())?
Integer
.
parseInt
(
fund
.
getFundProvince
()):
null
);
fundAddAndReduceVo
.
setFundCity
(
Common
.
isNotNull
(
fund
.
getFundCity
())?
Integer
.
parseInt
(
fund
.
getFundCity
()):
null
);
fundAddAndReduceVo
.
setFundTown
(
Common
.
isNotNull
(
fund
.
getFundTown
())?
Integer
.
parseInt
(
fund
.
getFundTown
()):
null
);
if
(
null
!=
fund
.
getProvidentStart
())
{
fundAddAndReduceVo
.
setFundStartDate
(
DateUtil
.
formatDate
(
fund
.
getProvidentStart
()));
}
initFundAddStatus
(
fundAddAndReduceVo
,
dispatchInfo
);
// 派减派单状态处理 待提交和待审核都属于派单开始
}
else
{
fundAddAndReduceVo
.
setFundHouseReduce
(
null
==
houseHoldInfo
?
""
:
houseHoldInfo
.
getName
());
fundAddAndReduceVo
.
setFundProvinceReduce
(
Common
.
isNotNull
(
fund
.
getFundProvince
())?
Integer
.
parseInt
(
fund
.
getFundProvince
()):
null
);
fundAddAndReduceVo
.
setFundCityReduce
(
Common
.
isNotNull
(
fund
.
getFundCity
())?
Integer
.
parseInt
(
fund
.
getFundCity
()):
null
);
fundAddAndReduceVo
.
setFundTownReduce
(
Common
.
isNotNull
(
fund
.
getFundTown
())?
Integer
.
parseInt
(
fund
.
getFundTown
()):
null
);
if
(
null
!=
fund
.
getProvidentStart
())
{
fundAddAndReduceVo
.
setFundStartDate
(
DateUtil
.
formatDate
(
fund
.
getProvidentStart
()));
}
initFundReduceStatus
(
fundAddAndReduceVo
,
dispatchInfo
);
}
}
}
/**
* 初始化公积金派减状态
* @Author fxj
* @Date 2020-08-25
* @param fundAddAndReduceVo
* @param dispatchInfo
* @return
**/
private
void
initFundReduceStatus
(
FundAddAndReduceVo
fundAddAndReduceVo
,
TDispatchInfo
dispatchInfo
)
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
ONE_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
THREE_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
TWO_STRING
.
equals
(
dispatchInfo
.
getStatus
()))
{
fundAddAndReduceVo
.
setFundReduceStatus
(
CommonConstants
.
ZERO_STRING
);
}
// 办理成功
if
(
CommonConstants
.
ONE_STRING
.
equals
(
dispatchInfo
.
getFundHandleStatus
()))
{
fundAddAndReduceVo
.
setFundReduceStatus
(
CommonConstants
.
ONE_STRING
);
}
// 办理失败
if
(
CommonConstants
.
TWO_STRING
.
equals
(
dispatchInfo
.
getFundHandleStatus
()))
{
fundAddAndReduceVo
.
setFundReduceStatus
(
CommonConstants
.
TWO_STRING
);
}
// 部分办理失败 TODO
}
/**
* 初始化公积金派增办理状态
* @Author fxj
* @Date 2020-08-25
* @param fundAddAndReduceVo
* @param dispatchInfo
* @return
**/
private
void
initFundAddStatus
(
FundAddAndReduceVo
fundAddAndReduceVo
,
TDispatchInfo
dispatchInfo
)
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
ONE_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
THREE_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
TWO_STRING
.
equals
(
dispatchInfo
.
getStatus
()))
{
fundAddAndReduceVo
.
setFundAddStatus
(
CommonConstants
.
ZERO_STRING
);
}
// 办理成功
if
(
CommonConstants
.
ONE_STRING
.
equals
(
dispatchInfo
.
getFundHandleStatus
()))
{
fundAddAndReduceVo
.
setFundAddStatus
(
CommonConstants
.
ONE_STRING
);
}
// 办理失败
if
(
CommonConstants
.
TWO_STRING
.
equals
(
dispatchInfo
.
getFundHandleStatus
()))
{
fundAddAndReduceVo
.
setFundAddStatus
(
CommonConstants
.
TWO_STRING
);
}
}
}
yifu-social/yifu-social-biz/src/main/java/com/yifu/cloud/plus/v1/yifu/social/service/impl/TSocialInfoServiceImpl.java
View file @
776608d9
...
...
@@ -33,11 +33,17 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import
com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants
;
import
com.yifu.cloud.plus.v1.yifu.common.core.util.*
;
import
com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.SysHouseHoldInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TDispatchInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.entity.TSocialInfo
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.SysHouseHoldInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.TDispatchInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.mapper.TSocialInfoMapper
;
import
com.yifu.cloud.plus.v1.yifu.social.service.TSocialInfoService
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.SocialAddAndReduceVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TSocialInfoSearchVo
;
import
com.yifu.cloud.plus.v1.yifu.social.vo.TSocialInfoVo
;
import
lombok.AllArgsConstructor
;
import
lombok.extern.log4j.Log4j2
;
import
org.springframework.stereotype.Service
;
...
...
@@ -54,9 +60,15 @@ import java.util.List;
* @author fxj
* @date 2022-07-15 11:38:05
*/
@AllArgsConstructor
@Log4j2
@Service
public
class
TSocialInfoServiceImpl
extends
ServiceImpl
<
TSocialInfoMapper
,
TSocialInfo
>
implements
TSocialInfoService
{
private
final
TDispatchInfoMapper
dispatchInfoMapper
;
private
final
SysHouseHoldInfoMapper
sysHouseHoldInfoMapper
;
/**
* 社保明细表简单分页查询
* @param tSocialInfo 社保明细表
...
...
@@ -114,7 +126,7 @@ public class TSocialInfoServiceImpl extends ServiceImpl<TSocialInfoMapper, TSoci
WriteSheet
writeSheet
=
EasyExcel
.
writerSheet
(
"社保明细表"
+
index
).
build
();
excelWriter
.
write
(
list
,
writeSheet
);
}
if
(
Common
.
isNotNull
(
list
)){
if
(
Common
.
isNotNull
(
list
)){
list
.
clear
();
}
out
.
flush
();
...
...
@@ -243,4 +255,177 @@ public class TSocialInfoServiceImpl extends ServiceImpl<TSocialInfoMapper, TSoci
BeanUtil
.
copyProperties
(
excel
,
insert
);
this
.
save
(
insert
);
}
/**
* 通过ID查询员工对应的派增派减数据
* @Author fxj
* @Date 2020-08-25
* @param empId
* @return
**/
@Override
public
SocialAddAndReduceVo
getAddOrReduceInfoByEmpId
(
String
empId
)
{
SocialAddAndReduceVo
socialAddAndReduceVo
=
new
SocialAddAndReduceVo
();
TSocialInfo
socialInfo
;
TDispatchInfo
dispatchInfoAdd
=
dispatchInfoMapper
.
selectOne
(
Wrappers
.<
TDispatchInfo
>
query
().
lambda
()
.
eq
(
TDispatchInfo:
:
getEmpId
,
empId
)
.
eq
(
TDispatchInfo:
:
getDeleteFlag
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
TDispatchInfo:
:
getType
,
CommonConstants
.
ZERO_STRING
)
.
isNotNull
(
TDispatchInfo:
:
getSocialId
)
.
orderByDesc
(
TDispatchInfo:
:
getCreateTime
)
.
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(
null
!=
dispatchInfoAdd
){
socialInfo
=
baseMapper
.
selectById
(
dispatchInfoAdd
.
getSocialId
());
initSocialAddAndReduce
(
socialAddAndReduceVo
,
socialInfo
,
dispatchInfoAdd
);
if
(
null
!=
dispatchInfoAdd
.
getCreateTime
()){
socialAddAndReduceVo
.
setSocialAddDispatchDate
(
LocalDateTimeUtils
.
formatTime
(
dispatchInfoAdd
.
getCreateTime
(),
LocalDateTimeUtils
.
DATE_TIME_PATTERN_DEFAULT
));
}
}
TDispatchInfo
dispatchInfoReduce
=
dispatchInfoMapper
.
selectOne
(
Wrappers
.<
TDispatchInfo
>
query
().
lambda
()
.
eq
(
TDispatchInfo:
:
getEmpId
,
empId
)
.
eq
(
TDispatchInfo:
:
getDeleteFlag
,
CommonConstants
.
ZERO_STRING
)
.
eq
(
TDispatchInfo:
:
getType
,
CommonConstants
.
ONE_STRING
)
.
isNotNull
(
TDispatchInfo:
:
getSocialId
)
.
orderByDesc
(
TDispatchInfo:
:
getCreateTime
)
.
last
(
CommonConstants
.
LAST_ONE_SQL
));
if
(
null
!=
dispatchInfoReduce
){
socialInfo
=
baseMapper
.
selectById
(
dispatchInfoReduce
.
getSocialId
());
initSocialAddAndReduce
(
socialAddAndReduceVo
,
socialInfo
,
dispatchInfoReduce
);
if
(
Common
.
isNotNull
(
dispatchInfoReduce
.
getSocialReduceDate
()))
{
socialAddAndReduceVo
.
setSocialEndDate
(
DateUtil
.
formatDate
(
dispatchInfoReduce
.
getSocialReduceDate
()));
}
if
(
null
!=
dispatchInfoReduce
.
getCreateTime
()){
socialAddAndReduceVo
.
setSocialReduceDispatchDate
(
LocalDateTimeUtils
.
formatTime
(
dispatchInfoReduce
.
getCreateTime
(),
LocalDateTimeUtils
.
DATE_TIME_PATTERN_DEFAULT
));
}
}
return
socialAddAndReduceVo
;
}
/**
* 初始化社保派增派减数据
* @Author fxj
* @Date 2020-08-25
* @param socialAddAndReduceVo
* @param socialInfo
* @param dispatchInfo
* @return
**/
private
void
initSocialAddAndReduce
(
SocialAddAndReduceVo
socialAddAndReduceVo
,
TSocialInfo
socialInfo
,
TDispatchInfo
dispatchInfo
)
{
// 初始化户和区域数据
initSocialHouseAndAddress
(
socialAddAndReduceVo
,
socialInfo
,
dispatchInfo
.
getType
());
// 派增派单状态处理 待提交和待审核都属于派单开始
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
dispatchInfo
.
getType
())){
initSocialAddStatus
(
socialAddAndReduceVo
,
dispatchInfo
);
// 派减派单状态处理 待提交和待审核都属于派单开始
}
else
{
initSocialReduceStatus
(
socialAddAndReduceVo
,
dispatchInfo
);
}
}
/**
* 初始化派增派减地址
* @Author fxj
* @Date 2020-08-25
* @param socialAddAndReduceVo
* @param socialInfo
* @param type
* @param houseHoldInfo
* @return
**/
private
void
initSocialAddress
(
SocialAddAndReduceVo
socialAddAndReduceVo
,
TSocialInfo
socialInfo
,
String
type
,
SysHouseHoldInfo
houseHoldInfo
)
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
type
)){
socialAddAndReduceVo
.
setSocialHouse
(
null
==
houseHoldInfo
?
""
:
houseHoldInfo
.
getName
());
socialAddAndReduceVo
.
setSocialProvince
(
Common
.
isNotNull
(
socialInfo
.
getSocialProvince
())?
Integer
.
parseInt
(
socialInfo
.
getSocialProvince
()):
null
);
socialAddAndReduceVo
.
setSocialCity
(
Common
.
isNotNull
(
socialInfo
.
getSocialCity
())?
Integer
.
parseInt
(
socialInfo
.
getSocialCity
()):
null
);
socialAddAndReduceVo
.
setSocialTown
(
Common
.
isNotNull
(
socialInfo
.
getSocialTown
())?
Integer
.
parseInt
(
socialInfo
.
getSocialTown
()):
null
);
if
(
null
!=
socialInfo
.
getSocialStartDate
())
{
socialAddAndReduceVo
.
setSocialStartDate
(
DateUtil
.
formatDate
(
socialInfo
.
getSocialStartDate
()));
}
}
else
{
socialAddAndReduceVo
.
setSocialHouseReduce
(
null
==
houseHoldInfo
?
""
:
houseHoldInfo
.
getName
());
socialAddAndReduceVo
.
setSocialProvinceReduce
(
Common
.
isNotNull
(
socialInfo
.
getSocialProvince
())?
Integer
.
parseInt
(
socialInfo
.
getSocialProvince
()):
null
);
socialAddAndReduceVo
.
setSocialCityReduce
(
Common
.
isNotNull
(
socialInfo
.
getSocialCity
())?
Integer
.
parseInt
(
socialInfo
.
getSocialCity
()):
null
);
socialAddAndReduceVo
.
setSocialTownReduce
(
Common
.
isNotNull
(
socialInfo
.
getSocialTown
())?
Integer
.
parseInt
(
socialInfo
.
getSocialTown
()):
null
);
if
(
null
!=
socialInfo
.
getSocialStartDate
())
{
socialAddAndReduceVo
.
setSocialStartDate
(
DateUtil
.
formatDate
(
socialInfo
.
getSocialStartDate
()));
}
}
}
/**
* 初始化社保派减办理状态
* @Author fxj
* @Date 2020-08-25
* @param socialAddAndReduceVo
* @param dispatchInfo
* @return
**/
private
void
initSocialAddStatus
(
SocialAddAndReduceVo
socialAddAndReduceVo
,
TDispatchInfo
dispatchInfo
)
{
//new:社保办理状态 0 未办理 1 全部办理成功(原-已办理) 2 全部办理失败(原-办理失败) 3已派减 4办理中 (20210609派单拆分新增fxj) 5部分办理失败 (20210609派单拆分新增fxj)
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
ONE_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
THREE_STRING
.
equals
(
dispatchInfo
.
getStatus
()))
{
socialAddAndReduceVo
.
setSocialAddStatus
(
CommonConstants
.
ZERO_STRING
);
// 审核不通过和 审核通过 都属于办理中
}
else
if
(
CommonConstants
.
TWO_STRING
.
equals
(
dispatchInfo
.
getStatus
()))
{
socialAddAndReduceVo
.
setSocialAddStatus
(
CommonConstants
.
ONE_STRING
);
}
// 办理成功
if
(
CommonConstants
.
ONE_STRING
.
equals
(
dispatchInfo
.
getSocialHandleStatus
()))
{
socialAddAndReduceVo
.
setSocialAddStatus
(
CommonConstants
.
TWO_STRING
);
}
// 办理失败
if
(
CommonConstants
.
TWO_STRING
.
equals
(
dispatchInfo
.
getSocialHandleStatus
()))
{
socialAddAndReduceVo
.
setSocialAddStatus
(
CommonConstants
.
THREE_STRING
);
}
// 部分办理失败
if
(
CommonConstants
.
FIVE_STRING
.
equals
(
dispatchInfo
.
getSocialHandleStatus
()))
{
socialAddAndReduceVo
.
setSocialAddStatus
(
CommonConstants
.
FOUR_STRING
);
}
}
/**
* 初始化社保户和社保缴纳地
* @Author fxj
* @Date 2020-08-25
* @param socialAddAndReduceVo
* @param socialInfo
* @param type
* @return
**/
private
void
initSocialHouseAndAddress
(
SocialAddAndReduceVo
socialAddAndReduceVo
,
TSocialInfo
socialInfo
,
String
type
)
{
if
(
null
!=
socialInfo
)
{
SysHouseHoldInfo
houseHoldInfo
=
null
;
if
(
null
!=
socialInfo
.
getSocialHousehold
())
{
houseHoldInfo
=
sysHouseHoldInfoMapper
.
selectById
(
socialInfo
.
getSocialHousehold
());
}
initSocialAddress
(
socialAddAndReduceVo
,
socialInfo
,
type
,
houseHoldInfo
);
}
}
/**
* 初始化派增办理状态
* @Author fxj
* @Date 2020-08-25
* @param socialAddAndReduceVo
* @param dispatchInfo
* @return
**/
private
void
initSocialReduceStatus
(
SocialAddAndReduceVo
socialAddAndReduceVo
,
TDispatchInfo
dispatchInfo
)
{
if
(
CommonConstants
.
ZERO_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
ONE_STRING
.
equals
(
dispatchInfo
.
getStatus
())
||
CommonConstants
.
THREE_STRING
.
equals
(
dispatchInfo
.
getStatus
()))
{
socialAddAndReduceVo
.
setSocialReduceStatus
(
CommonConstants
.
ZERO_STRING
);
// 审核不通过和 审核通过 都属于办理中
}
else
if
(
CommonConstants
.
TWO_STRING
.
equals
(
dispatchInfo
.
getStatus
()))
{
socialAddAndReduceVo
.
setSocialReduceStatus
(
CommonConstants
.
ONE_STRING
);
}
// 办理成功
if
(
CommonConstants
.
ONE_STRING
.
equals
(
dispatchInfo
.
getSocialHandleStatus
()))
{
socialAddAndReduceVo
.
setSocialReduceStatus
(
CommonConstants
.
TWO_STRING
);
}
// 办理失败
if
(
CommonConstants
.
TWO_STRING
.
equals
(
dispatchInfo
.
getSocialHandleStatus
()))
{
socialAddAndReduceVo
.
setSocialReduceStatus
(
CommonConstants
.
THREE_STRING
);
}
}
}
yifu-social/yifu-social-biz/src/main/resources/mapper/TPaymentInfoMapper.xml
View file @
776608d9
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment