Commit 0b4eee29 authored by huyuchen's avatar huyuchen

Merge remote-tracking branch 'origin/develop'

# Conflicts:
#	yifu-common/yifu-common-ekp/src/main/resources/ekpFundConfig.properties
#	yifu-common/yifu-common-ekp/src/main/resources/ekpIncomeConfig.properties
#	yifu-common/yifu-common-ekp/src/main/resources/ekpInsuranceConfig.properties
#	yifu-common/yifu-common-ekp/src/main/resources/ekpOrderConfig.properties
#	yifu-common/yifu-common-ekp/src/main/resources/ekpSalaryConfig.properties
#	yifu-common/yifu-common-ekp/src/main/resources/ekpSocialConfig.properties
parents ce4d1bdd 4df9dcbc
......@@ -157,4 +157,10 @@ public class ArchivesConstants {
public static final int MYEAR_MONTH=-717;
public static final int WYEAR_MONTH=-597;
/**
* @Author fxj
* 合同之前
**/
public static final String CONTRACT_CREATE_TYPE="合同之后";
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.entity;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity;
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 2023-08-23 17:31:05
*/
@Data
@TableName("t_company_info")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "收入证明 中的 单位信息维护表")
public class TCompanyInfo extends BaseEntity {
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@ExcelProperty("id")
@Schema(description = "id")
private String id;
/**
* 公司名称
*/
@ExcelAttribute(name = "公司名称", isNotEmpty = true, errorInfo = "公司名称不能为空", maxLength = 50)
@NotBlank(message = "公司名称不能为空")
@Length(max = 50, message = "公司名称不能超过50个字符")
@ExcelProperty("公司名称")
@Schema(description = "公司名称")
private String companyName;
/**
* 公司地址
*/
@ExcelAttribute(name = "公司地址", isNotEmpty = true, errorInfo = "公司地址不能为空", maxLength = 200)
@NotBlank(message = "公司地址不能为空")
@Length(max = 200, message = "公司地址不能超过200个字符")
@ExcelProperty("公司地址")
@Schema(description = "公司地址")
private String companyAddress;
/**
* 公司电话
*/
@ExcelAttribute(name = "公司电话", isNotEmpty = true, errorInfo = "公司电话不能为空", maxLength = 20)
@NotBlank(message = "公司电话不能为空")
@Length(max = 20, message = "公司电话不能超过20个字符")
@ExcelProperty("公司电话")
@Schema(description = "公司电话")
private String companyTel;
/**
* 创建人id
*/
@ExcelAttribute(name = "创建人id", isNotEmpty = true, errorInfo = "创建人id不能为空", maxLength = 32)
@NotBlank(message = "创建人id不能为空")
@Length(max = 32, message = "创建人id不能超过32个字符")
@ExcelProperty("创建人id")
@Schema(description = "创建人id")
private String createBy;
/**
* 创建人姓名
*/
@ExcelAttribute(name = "创建人姓名", maxLength = 32)
@Length(max = 32, message = "创建人姓名不能超过32个字符")
@ExcelProperty("创建人姓名")
@Schema(description = "创建人姓名")
private String createName;
/**
* 创建时间
*/
@ExcelAttribute(name = "创建时间", isNotEmpty = true, errorInfo = "创建时间不能为空", isDate = true)
@NotBlank(message = "创建时间不能为空")
@ExcelProperty("创建时间")
@Schema(description = "创建时间")
private LocalDateTime createTime;
/**
* 更新人id
*/
@ExcelAttribute(name = "更新人id", maxLength = 32)
@Length(max = 32, message = "更新人id不能超过32个字符")
@ExcelProperty("更新人id")
@Schema(description = "更新人id")
private String updateBy;
/**
* 更新时间
*/
@ExcelAttribute(name = "更新时间", isDate = true)
@ExcelProperty("更新时间")
@Schema(description = "更新时间")
private LocalDateTime updateTime;
/**
* 0 未删除 1 已删除
*/
@ExcelAttribute(name = "0 未删除 1 已删除", maxLength = 1)
@Length(max = 1, message = "0 未删除 1 已删除不能超过1个字符")
@ExcelProperty("0 未删除 1 已删除")
@Schema(description = "0 未删除 1 已删除")
private String deleteFlag;
}
......@@ -312,8 +312,9 @@ public class TEmployeeProject extends BaseEntity {
/**
* 公积金状态(字典)
* 0无公积金;1处理中;2正常;3已派减
*/
@Schema(description = "公积金状态(字典): 0 无公积金 1 处理中 2.部分购买 3.正常 4.已派减")
@Schema(description = "公积金状态(字典): 0无公积金;1处理中;2正常;3已派减")
private Integer fundStatus;
/**
......
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TCompanyInfo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
/**
* 收入证明 中的 单位信息维护表
*
* @author fxj
* @date 2023-08-23 17:31:05
*/
@Data
public class TCompanyInfoSearchVo extends TCompanyInfo {
/**
* 多选导出或删除等操作
*/
@Schema(description = "选中ID,多个逗号分割")
private String ids;
/**
* 创建时间区间 [开始时间,结束时间]
*/
@Schema(description = "创建时间区间")
private LocalDateTime[] createTimes;
/**
* @Author fxj
* 查询数据起
**/
@Schema(description = "查询limit 开始")
private int limitStart;
/**
* @Author fxj
* 查询数据止
**/
@Schema(description = "查询limit 数据条数")
private int limitEnd;
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yifu.cloud.plus.v1.yifu.common.core.vo.RowIndex;
import com.yifu.cloud.plus.v1.yifu.common.mybatis.base.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.Date;
/**
* 收入证明 中的 单位信息维护表
*
* @author fxj
* @date 2023-08-23 17:31:05
*/
@Data
public class TCompanyInfoVo extends RowIndex implements Serializable {
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@NotBlank(message = "id 不能为空")
@Length(max = 32, message = "id 不能超过32 个字符")
@ExcelAttribute(name = "id", isNotEmpty = true, errorInfo = "id 不能为空", maxLength = 32)
@Schema(description = "id")
@ExcelProperty("id")
private String id;
/**
* 公司名称
*/
@NotBlank(message = "公司名称 不能为空")
@Length(max = 50, message = "公司名称 不能超过50 个字符")
@ExcelAttribute(name = "公司名称", isNotEmpty = true, errorInfo = "公司名称 不能为空", maxLength = 50)
@Schema(description = "公司名称")
@ExcelProperty("公司名称")
private String 公司名称;
/**
* 公司地址
*/
@NotBlank(message = "公司地址 不能为空")
@Length(max = 200, message = "公司地址 不能超过200 个字符")
@ExcelAttribute(name = "公司地址", isNotEmpty = true, errorInfo = "公司地址 不能为空", maxLength = 200)
@Schema(description = "公司地址")
@ExcelProperty("公司地址")
private String companyAddress;
/**
* 公司电话
*/
@NotBlank(message = "公司电话 不能为空")
@Length(max = 20, message = "公司电话 不能超过20 个字符")
@ExcelAttribute(name = "公司电话", isNotEmpty = true, errorInfo = "公司电话 不能为空", maxLength = 20)
@Schema(description = "公司电话")
@ExcelProperty("公司电话")
private String companyTel;
/**
* 创建人id
*/
@NotBlank(message = "创建人id 不能为空")
@Length(max = 32, message = "创建人id 不能超过32 个字符")
@ExcelAttribute(name = "创建人id", isNotEmpty = true, errorInfo = "创建人id 不能为空", maxLength = 32)
@Schema(description = "创建人id")
@ExcelProperty("创建人id")
private String createBy;
/**
* 创建人姓名
*/
@Length(max = 32, message = "创建人姓名 不能超过32 个字符")
@ExcelAttribute(name = "创建人姓名", maxLength = 32)
@Schema(description = "创建人姓名")
@ExcelProperty("创建人姓名")
private String createName;
/**
* 创建时间
*/
@NotBlank(message = "创建时间 不能为空")
@ExcelAttribute(name = "创建时间", isNotEmpty = true, errorInfo = "创建时间 不能为空", isDate = true)
@Schema(description = "创建时间")
@ExcelProperty("创建时间")
private Date createTime;
/**
* 更新人id
*/
@Length(max = 32, message = "更新人id 不能超过32 个字符")
@ExcelAttribute(name = "更新人id", maxLength = 32)
@Schema(description = "更新人id")
@ExcelProperty("更新人id")
private String updateBy;
/**
* 更新时间
*/
@ExcelAttribute(name = "更新时间", isDate = true)
@Schema(description = "更新时间")
@ExcelProperty("更新时间")
private Date updateTime;
/**
* 0 未删除 1 已删除
*/
@Length(max = 1, message = "0 未删除 1 已删除 不能超过1 个字符")
@ExcelAttribute(name = "0 未删除 1 已删除", maxLength = 1)
@Schema(description = "0 未删除 1 已删除")
@ExcelProperty("0 未删除 1 已删除")
private String deleteFlag;
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.controller;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TCompanyInfo;
import com.yifu.cloud.plus.v1.yifu.archives.service.TCompanyInfoService;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TCompanyInfoSearchVo;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CommonConstants;
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.RequiredArgsConstructor;
import lombok.SneakyThrows;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 收入证明 中的 单位信息维护表
*
* @author fxj
* @date 2023-08-23 17:31:05
*/
@RestController
@RequiredArgsConstructor
@RequestMapping("/tcompanyinfo")
@Tag(name = "收入证明 中的 单位信息维护表管理")
public class TCompanyInfoController {
private final TCompanyInfoService tCompanyInfoService;
/**
* 简单分页查询
*
* @param page 分页对象
* @param tCompanyInfo 收入证明 中的 单位信息维护表
* @return
*/
@Operation(description = "简单分页查询")
@GetMapping("/page")
public R<IPage<TCompanyInfo>> getTCompanyInfoPage(Page<TCompanyInfo> page, TCompanyInfoSearchVo tCompanyInfo) {
return new R<>(tCompanyInfoService.getTCompanyInfoPage(page, tCompanyInfo));
}
/**
* 不分页查询
*
* @param tCompanyInfo 收入证明 中的 单位信息维护表
* @return
*/
@Operation(summary = "不分页查询", description = "不分页查询")
@PostMapping("/noPage")
//@PreAuthorize("@pms.hasPermission('demo_tcompanyinfo_get')" )
public R<List<TCompanyInfo>> getTCompanyInfoNoPage(@RequestBody TCompanyInfoSearchVo tCompanyInfo) {
return R.ok(tCompanyInfoService.noPageDiy(tCompanyInfo));
}
/**
* 通过id查询收入证明 中的 单位信息维护表
*
* @param id id
* @return R
*/
@Operation(summary = "通过id查询", description = "通过id查询:hasPermission('demo_tcompanyinfo_get')")
@GetMapping("/{id}")
@PreAuthorize("@pms.hasPermission('demo_tcompanyinfo_get')")
public R<TCompanyInfo> getById(@PathVariable("id") String id) {
return R.ok(tCompanyInfoService.getById(id));
}
/**
* 新增收入证明 中的 单位信息维护表
*
* @param tCompanyInfo 收入证明 中的 单位信息维护表
* @return R
*/
@Operation(summary = "新增收入证明 中的 单位信息维护表", description = "新增收入证明 中的 单位信息维护表:hasPermission('demo_tcompanyinfo_add')")
@SysLog("新增收入证明 中的 单位信息维护表")
@PostMapping
@PreAuthorize("@pms.hasPermission('demo_tcompanyinfo_add')")
public R<Boolean> save(@RequestBody TCompanyInfo tCompanyInfo) {
TCompanyInfo exits = tCompanyInfoService.getOne(Wrappers.<TCompanyInfo>query().lambda()
.eq(TCompanyInfo::getDeleteFlag,CommonConstants.ZERO_STRING)
.eq(TCompanyInfo::getCompanyName,tCompanyInfo.getCompanyName()).last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(exits)){
return R.failed("已存在相同公司名称的有效数据!");
}
return R.ok(tCompanyInfoService.save(tCompanyInfo));
}
/**
* 修改收入证明 中的 单位信息维护表
*
* @param tCompanyInfo 收入证明 中的 单位信息维护表
* @return R
*/
@Operation(summary = "修改收入证明 中的 单位信息维护表", description = "修改收入证明 中的 单位信息维护表:hasPermission('demo_tcompanyinfo_edit')")
@SysLog("修改收入证明 中的 单位信息维护表")
@PutMapping
@PreAuthorize("@pms.hasPermission('demo_tcompanyinfo_edit')")
public R<Boolean> updateById(@RequestBody TCompanyInfo tCompanyInfo) {
TCompanyInfo exits = tCompanyInfoService.getOne(Wrappers.<TCompanyInfo>query().lambda()
.eq(TCompanyInfo::getDeleteFlag,CommonConstants.ZERO_STRING)
.ne(TCompanyInfo::getId,tCompanyInfo.getId())
.eq(TCompanyInfo::getCompanyName,tCompanyInfo.getCompanyName()).last(CommonConstants.LAST_ONE_SQL));
if (Common.isNotNull(exits)){
return R.failed("已存在相同公司名称的有效数据!");
}
return R.ok(tCompanyInfoService.updateById(tCompanyInfo));
}
/**
* 通过id删除收入证明 中的 单位信息维护表
*
* @param id id
* @return R
*/
@Operation(summary = "通过id删除收入证明 中的 单位信息维护表", description = "通过id删除收入证明 中的 单位信息维护表:hasPermission('demo_tcompanyinfo_del')")
@SysLog("通过id删除收入证明 中的 单位信息维护表")
@DeleteMapping("/{id}")
@PreAuthorize("@pms.hasPermission('demo_tcompanyinfo_del')")
public R<Boolean> removeById(@PathVariable String id) {
return R.ok(tCompanyInfoService.removeById(id));
}
/**
* 收入证明 中的 单位信息维护表 批量导入
*
* @author fxj
* @date 2023-08-23 17:31:05
**/
@SneakyThrows
@Operation(description = "批量新增收入证明 中的 单位信息维护表 hasPermission('demo_tcompanyinfo-batch-import')")
@SysLog("批量新增收入证明 中的 单位信息维护表")
@PostMapping("/importListAdd")
@PreAuthorize("@pms.hasPermission('demo_tcompanyinfo-batch-import')")
public R<List<ErrorMessage>> importListAdd(@RequestBody MultipartFile file) {
return tCompanyInfoService.importDiy(file.getInputStream());
}
/**
* 收入证明 中的 单位信息维护表 批量导出
*
* @author fxj
* @date 2023-08-23 17:31:05
**/
@Operation(description = "导出收入证明 中的 单位信息维护表 hasPermission('demo_tcompanyinfo-export')")
@PostMapping("/export")
@PreAuthorize("@pms.hasPermission('demo_tcompanyinfo-export')")
public void export(HttpServletResponse response, @RequestBody TCompanyInfoSearchVo searchVo) {
tCompanyInfoService.listExport(response, searchVo);
}
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.mapper;
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.yifu.archives.entity.TCompanyInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
/**
* 收入证明 中的 单位信息维护表
*
* @author fxj
* @date 2023-08-23 17:31:05
*/
@Mapper
public interface TCompanyInfoMapper extends BaseMapper<TCompanyInfo> {
/**
* 收入证明 中的 单位信息维护表简单分页查询
*
* @param tCompanyInfo 收入证明 中的 单位信息维护表
* @return
*/
IPage<TCompanyInfo> getTCompanyInfoPage(Page<TCompanyInfo> page, @Param("tCompanyInfo") TCompanyInfo tCompanyInfo);
}
......@@ -115,5 +115,5 @@ public interface TEmployeeProjectMapper extends BaseMapper<TEmployeeProject> {
int updateChangeById(@Param("project")TEmployeeProject project);
void updateContractStatus(@Param("empId") String empId, @Param("status")int status);
void updateContractStatus(@Param("empId") String empId, @Param("deptId") String deptId, @Param("status")int status);
}
/*
* Copyright (c) 2018-2025, lengleng All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice,
* this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* Neither the name of the yifu4cloud.com developer nor the names of its
* contributors may be used to endorse or promote products derived from
* this software without specific prior written permission.
* Author: lengleng (wangiegie@gmail.com)
*/
package com.yifu.cloud.plus.v1.yifu.archives.service;
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.yifu.archives.entity.TCompanyInfo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TCompanyInfoSearchVo;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.util.List;
/**
* 收入证明 中的 单位信息维护表
*
* @author fxj
* @date 2023-08-23 17:31:05
*/
public interface TCompanyInfoService extends IService<TCompanyInfo> {
/**
* 收入证明 中的 单位信息维护表简单分页查询
*
* @param tCompanyInfo 收入证明 中的 单位信息维护表
* @return
*/
IPage<TCompanyInfo> getTCompanyInfoPage(Page<TCompanyInfo> page, TCompanyInfoSearchVo tCompanyInfo);
R<List<ErrorMessage>> importDiy(InputStream inputStream);
void listExport(HttpServletResponse response, TCompanyInfoSearchVo searchVo);
List<TCompanyInfo> noPageDiy(TCompanyInfoSearchVo searchVo);
}
......@@ -260,5 +260,5 @@ public interface TEmployeeProjectService extends IService<TEmployeeProject> {
void updateChangeById(TEmployeeProject oldEmpProject);
void updateContractStatus(String empId, int status);
void updateContractStatus(String empId, String deptId, int status);
}
......@@ -172,6 +172,8 @@ public class TEmpChangeInfoServiceImpl extends ServiceImpl<TEmpChangeInfoMapper,
errorMessageList.forEach(errorMessage -> errorMsgMap.put(errorMessage.getLineNum(),errorMessage));
}
// 老项目已减项,划转后将删除 hgw 2023-8-22 10:47:41
List<TEmployeeProject> oldUpdateList = new ArrayList<>();
List<TEmployeeProject> updateList = new ArrayList<>();
Set<String> errorMsg;
//对象声明
......@@ -216,10 +218,14 @@ public class TEmpChangeInfoServiceImpl extends ServiceImpl<TEmpChangeInfoMapper,
//待划转员工已在目标项目下不可划转
employeeProject = tEmployeeProjectService.getOne(Wrappers.<TEmployeeProject>query().lambda()
.eq(TEmployeeProject::getEmpIdcard, excel.getEmpIdcard()).eq(TEmployeeProject::getDeptNo,excel.getNewSettleCode())
.eq(TEmployeeProject::getDeleteFlag,CommonConstants.STATUS_NORMAL)
.eq(TEmployeeProject::getProjectStatus,CommonConstants.ZERO_INT));
.eq(TEmployeeProject::getDeleteFlag,CommonConstants.STATUS_NORMAL));
if (Common.isNotNull(employeeProject)) {
errorMsg.add(MsgUtils.getMessage(ErrorCodes.CHECKS_CHANGE_EMP_PROJECT, excel.getNewSettleCode()));
if (CommonConstants.ZERO_INT == employeeProject.getProjectStatus()) {
errorMsg.add(MsgUtils.getMessage(ErrorCodes.CHECKS_CHANGE_EMP_PROJECT, excel.getNewSettleCode()));
} else {
employeeProject.setDeleteFlag(CommonConstants.STATUS_DEL);
oldUpdateList.add(employeeProject);
}
}
// 数据合法情况
if (CollUtil.isEmpty(errorMsg)) {
......@@ -265,9 +271,15 @@ public class TEmpChangeInfoServiceImpl extends ServiceImpl<TEmpChangeInfoMapper,
if (CollUtil.isNotEmpty(errorMessageList)) {
return R.failed(errorMessageList);
} else {
// 将已减项的目标项目删除,免得出现两条同项目在项
if (!oldUpdateList.isEmpty()) {
tEmployeeProjectService.updateBatchById(oldUpdateList);
}
tEmployeeProjectService.updateBatchById(updateList);
// 循环里的申明
UpdateSocialFoundVo updateSocialFoundVo;
for (TEmployeeProject tEmployeeProject: updateList) {
UpdateSocialFoundVo updateSocialFoundVo = new UpdateSocialFoundVo();
updateSocialFoundVo = new UpdateSocialFoundVo();
updateSocialFoundVo.setOldDeptId(tEmployeeProject.getOdlDeptId());
updateSocialFoundVo.setEmpIdcard(tEmployeeProject.getEmpIdcard());
updateSocialFoundVo.setSettleDomainCode(tEmployeeProject.getDeptNo());
......@@ -423,9 +435,12 @@ public class TEmpChangeInfoServiceImpl extends ServiceImpl<TEmpChangeInfoMapper,
TEmployeeProject newEmpProject = tEmployeeProjectService.getOne(Wrappers.<TEmployeeProject>query().lambda()
.eq(TEmployeeProject::getEmpIdcard, vo.getEmpIdcard()).eq(TEmployeeProject::getDeptNo,vo.getNewDeptNo())
.eq(TEmployeeProject::getDeleteFlag,CommonConstants.STATUS_NORMAL));
// hgw 2023-8-21 16:31:18 目标项目是否已减项false:否。——2023-8-23 18:02:57 改为 目标的单个服务项 已派减,可以划过去
//boolean isSubtraction = false
if (Common.isNotNull(newEmpProject)
&& Common.isNotNull(newEmpProject.getProjectStatus())
&& newEmpProject.getProjectStatus().intValue() == CommonConstants.ONE_INT){
//isSubtraction = true
return R.failed("目标项目档案已减项,请复项后重新划转!");
}
//社保公积金派单处需要直接修改为最新的项目
......@@ -504,7 +519,8 @@ public class TEmpChangeInfoServiceImpl extends ServiceImpl<TEmpChangeInfoMapper,
resStr.append("社保项不存在,无法划转! <br>");
}else {
if (Common.isEmpty(newEmpProject.getSocialStatus())
|| CommonConstants.ZERO_INT == newEmpProject.getSocialStatus()){
|| CommonConstants.ZERO_INT == newEmpProject.getSocialStatus()
|| CommonConstants.FOUR_INT == newEmpProject.getSocialStatus()){
newEmpProject.setSocialStatus(oldEmpProject.getSocialStatus());
newEmpProject.setSocialProvince(oldEmpProject.getSocialProvince());
newEmpProject.setSocialCity(oldEmpProject.getSocialCity());
......@@ -528,13 +544,14 @@ public class TEmpChangeInfoServiceImpl extends ServiceImpl<TEmpChangeInfoMapper,
resStr.append("公积金项不存在,无法划转! <br>");
}else{
if (Common.isEmpty(newEmpProject.getFundStatus())
|| CommonConstants.ZERO_INT == newEmpProject.getFundStatus()){
|| CommonConstants.ZERO_INT == newEmpProject.getFundStatus()
|| CommonConstants.THREE_INT == newEmpProject.getFundStatus()){
newEmpProject.setFundStatus(oldEmpProject.getFundStatus());
updatesf.setFlag(CommonConstants.ONE_STRING);
socialDaprUtils.updateSocialAndFoundInfo(updatesf);
oldEmpProject.setFundStatus(CommonConstants.ZERO_INT);
resStr.append("公积金划转成功! <br>");
}else {
} else {
resStr.append("目标项目档案存在公积金数据,公积金划转失败! <br>");
}
}
......@@ -558,6 +575,10 @@ public class TEmpChangeInfoServiceImpl extends ServiceImpl<TEmpChangeInfoMapper,
}
}
}
/*if (isSubtraction) {
oldEmpProject.setProjectStatus(CommonConstants.ONE_INT)
newEmpProject.setProjectStatus(CommonConstants.ZERO_INT)
}*/
// 变更老的项目档案
tEmployeeProjectService.updateChangeById(oldEmpProject);
//新增或变更新的项目档案
......
......@@ -295,6 +295,7 @@ public class TEmpEducationServiceImpl extends ServiceImpl<TEmpEducationMapper, T
exist.setGradutionDate(education.getGradutionDate());
baseMapper.updateById(exist);
}else {
education.setSettleDomain(CommonConstants.ZERO_STRING);
baseMapper.insert(education);
}
return R.ok();
......
......@@ -2256,7 +2256,7 @@ public class TEmployeeInfoServiceImpl extends ServiceImpl<TEmployeeInfoMapper, T
contractAudit.setRemark(vo.getRemarkTemp());
contractAudit.setRootName("合同审核");
contractServicer.updateInUseStatusById(c.getEmpId(),c.getDeptNo(),c.getId());
tEmployeeProjectService.updateContractStatus(c.getEmpId(),CommonConstants.ONE_INT);
tEmployeeProjectService.updateContractStatus(c.getEmpId(), c.getSettleDomain(), CommonConstants.ONE_INT);
baseMapper.updateContractStatus(c.getEmpId(),CommonConstants.ONE_INT);
//审核不同
}else if (CommonConstants.ONE_STRING.equals(vo.getType())){
......
......@@ -1848,8 +1848,8 @@ public class TEmployeeProjectServiceImpl extends ServiceImpl<TEmployeeProjectMap
}
@Override
public void updateContractStatus(String empId, int status) {
baseMapper.updateContractStatus(empId,status);
public void updateContractStatus(String empId, String deptId, int status) {
baseMapper.updateContractStatus(empId,deptId,status);
}
/**
......
......@@ -288,9 +288,10 @@ public class TSettleDomainServiceImpl extends ServiceImpl<TSettleDomainMapper, T
/*if ( Common.isEmpty(domain.getCreateType())){
return "创建类型不可为空";
}*/
if (Common.isEmpty(domain.getBusinessPrimaryType())
if (ArchivesConstants.CONTRACT_CREATE_TYPE.equals(domain.getCreateType())
&& (Common.isEmpty(domain.getBusinessPrimaryType())
|| Common.isEmpty(domain.getBusinessSecondType())
|| Common.isEmpty(domain.getBusinessThirdType())){
|| Common.isEmpty(domain.getBusinessThirdType()))){
return ArchivesConstants.SETTLE_DOMAIN_BUSINESS_TYPE_NOT_EMPTY;
}
if (Common.isEmpty(domain.getStopFlag())){
......
<?xml version="1.0" encoding="UTF-8"?>
<!--
~
~ Copyright (c) 2018-2025, lengleng All rights reserved.
~
~ Redistribution and use in source and binary forms, with or without
~ modification, are permitted provided that the following conditions are met:
~
~ Redistributions of source code must retain the above copyright notice,
~ this list of conditions and the following disclaimer.
~ Redistributions in binary form must reproduce the above copyright
~ notice, this list of conditions and the following disclaimer in the
~ documentation and/or other materials provided with the distribution.
~ Neither the name of the yifu4cloud.com developer nor the names of its
~ contributors may be used to endorse or promote products derived from
~ this software without specific prior written permission.
~ Author: lengleng (wangiegie@gmail.com)
~
-->
<!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.yifu.archives.mapper.TCompanyInfoMapper">
<resultMap id="tCompanyInfoMap" type="com.yifu.cloud.plus.v1.yifu.archives.entity.TCompanyInfo">
<id property="id" column="id"/>
<result property="companyName" column="COMPANY_NAME"/>
<result property="companyAddress" column="COMPANY_ADDRESS"/>
<result property="companyTel" column="COMPANY_TEL"/>
<result property="createBy" column="CREATE_BY"/>
<result property="createName" column="CREATE_NAME"/>
<result property="createTime" column="CREATE_TIME"/>
<result property="updateBy" column="UPDATE_BY"/>
<result property="updateTime" column="UPDATE_TIME"/>
<result property="deleteFlag" column="DELETE_FLAG"/>
</resultMap>
<sql id="Base_Column_List">
a.id,
a.COMPANY_NAME,
a.COMPANY_ADDRESS,
a.COMPANY_TEL,
a.CREATE_BY,
a.CREATE_NAME,
a.CREATE_TIME,
a.UPDATE_BY,
a.UPDATE_TIME,
a.DELETE_FLAG
</sql>
<sql id="tCompanyInfo_where">
<if test="tCompanyInfo != null">
<if test="tCompanyInfo.id != null and tCompanyInfo.id.trim() != ''">
AND a.id = #{tCompanyInfo.id}
</if>
<if test="tCompanyInfo.companyName != null and tCompanyInfo.companyName.trim() != ''">
AND a.COMPANY_NAME = #{tCompanyInfo.companyName}
</if>
<if test="tCompanyInfo.companyAddress != null and tCompanyInfo.companyAddress.trim() != ''">
AND a.COMPANY_ADDRESS = #{tCompanyInfo.companyAddress}
</if>
<if test="tCompanyInfo.companyTel != null and tCompanyInfo.companyTel.trim() != ''">
AND a.COMPANY_TEL = #{tCompanyInfo.companyTel}
</if>
<if test="tCompanyInfo.createBy != null and tCompanyInfo.createBy.trim() != ''">
AND a.CREATE_BY = #{tCompanyInfo.createBy}
</if>
<if test="tCompanyInfo.createName != null and tCompanyInfo.createName.trim() != ''">
AND a.CREATE_NAME = #{tCompanyInfo.createName}
</if>
<if test="tCompanyInfo.createTime != null">
AND a.CREATE_TIME = #{tCompanyInfo.createTime}
</if>
<if test="tCompanyInfo.updateBy != null and tCompanyInfo.updateBy.trim() != ''">
AND a.UPDATE_BY = #{tCompanyInfo.updateBy}
</if>
<if test="tCompanyInfo.updateTime != null">
AND a.UPDATE_TIME = #{tCompanyInfo.updateTime}
</if>
<if test="tCompanyInfo.deleteFlag != null and tCompanyInfo.deleteFlag.trim() != ''">
AND a.DELETE_FLAG = #{tCompanyInfo.deleteFlag}
</if>
</if>
</sql>
<!--tCompanyInfo简单分页查询-->
<select id="getTCompanyInfoPage" resultMap="tCompanyInfoMap">
SELECT
<include refid="Base_Column_List"/>
FROM t_company_info a
<where>
1=1
<include refid="tCompanyInfo_where"/>
order by a.UPDATE_TIME desc
</where>
</select>
</mapper>
......@@ -1064,6 +1064,6 @@
<update id="updateContractStatus" >
update t_employee_project a
set CONTRACT_STATUS = #{status}
WHERE a.EMP_ID=#{empId}
WHERE a.EMP_ID=#{empId} and a.DEPT_ID=#{deptId}
</update>
</mapper>
......@@ -1599,4 +1599,31 @@ public class DateUtil {
return null;
}
}
public static boolean isDate(String dateText) {
if (dateText == null) {
return true;
}
DateFormat df = null;
try {
if (dateText.indexOf("-") >= 0) {
df = new SimpleDateFormat(ISO_EXPANDED_DATE_FORMAT);
df.setLenient(false);
df.parse(dateText);
}else if (dateText.indexOf("/") >= 0) {
df = new SimpleDateFormat(DateUtil.DATETIME_PATTERN_XIEGANG);
df.setLenient(false);
df.parse(dateText);
}else{
df = new SimpleDateFormat(ISO_DATE_FORMAT);
df.setLenient(false);
df.parse( dateText.replace("/","").replace("-","")
.replace(CommonConstants.YEAR,"").replace(CommonConstants.MONTH,"")
.replace(CommonConstants.DAY,""));
}
} catch (ParseException e) {
return true;
}
return false;
}
}
......@@ -21,7 +21,7 @@ spring:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: ll_mysql
jdbc-url: jdbc:mysql://192.168.1.106:23306/ekp?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
jdbc-url: jdbc:mysql://192.168.1.122:33306/ekp?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
hikari:
minimum-idle: 10 # 最小空闲连接数量
idle-timeout: 60000 # 空闲连接存活最大时间,默认600000(10分钟)
......
......@@ -16,5 +16,5 @@ public interface MesConstants {
**/
//String orderUrl ="http://ekp.wanxinwork.com/sys/modeling/main/modelingAppView.do?method=modelView&listviewId=185943766d6e9ff50d8fea1414eaf460&fdId=";
String orderUrl ="http://36.7.147.19:28080/sys/modeling/main/modelingAppView.do?method=modelView&listviewId=185943766d6e9ff50d8fea1414eaf460&fdId=";
String orderUrl ="http://36.7.147.29:27007/sys/modeling/main/modelingAppView.do?method=modelView&listviewId=185943766d6e9ff50d8fea1414eaf460&fdId=";
}
......@@ -14,7 +14,7 @@ spring:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: ll_mysql
url: jdbc:mysql://192.168.1.106:23306/ekp?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
url: jdbc:mysql://192.168.1.122:33306/ekp?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
hikari:
driver-class-name: ${spring.datasource.driver-class-name}
jdbc-url: ${spring.datasource.url}
......
......@@ -15,7 +15,7 @@ spring:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: ll_mysql
url: jdbc:mysql://192.168.1.106:23306/ekp?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
url: jdbc:mysql://192.168.1.122:33306/ekp?characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=false&allowMultiQueries=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true&allowPublicKeyRetrieval=true
hikari:
driver-class-name: ${spring.datasource.driver-class-name}
jdbc-url: ${spring.datasource.url}
......
......@@ -39,6 +39,12 @@ public class OrderDetailVO implements Serializable {
@Schema(description = "项目编码")
private String deptNo;
/**
* 项目ID
*/
@Schema(description = "项目ID")
private String deptId;
/**
* 项目名称
*/
......
......@@ -459,6 +459,13 @@ public class TSalaryStandard extends BaseEntity {
@Schema(description = "删除时间")
private Date deleteDate;
@Schema(description = "业务类型分类")
private String businessPrimaryType;
@Schema(description = "业务类型二级分类")
private String businessSecondType;
@Schema(description = "业务类型三级分类")
private String businessThirdType;
/**
* 工资月份-起
*/
......
......@@ -53,6 +53,12 @@ public class TSalaryAccountExportVo {
private String salaryMonth;
@ExcelProperty("出账单位")
private String invoiceTitle;
@ExcelProperty("业务类型分类")
private String businessPrimaryType;
@ExcelProperty("业务类型二级分类")
private String businessSecondType;
@ExcelProperty("业务类型三级分类")
private String businessThirdType;
@ExcelProperty("结算单位")
private String unitName;
@ExcelProperty("结算单位编码")
......@@ -98,12 +104,14 @@ public class TSalaryAccountExportVo {
private BigDecimal sumContinuingEducationMoney;
@ExcelProperty(value = "赡养老人专项扣除")
private BigDecimal sumSupportElderlyMoney;
@ExcelProperty(value = "婴幼儿照护费")
private BigDecimal sumBabyMoney;
@ExcelProperty(value = "累计个人养老金")
private BigDecimal sumPrivatePension;
@ExcelProperty(value = "婴幼儿照护费")
private BigDecimal sumBabyMoney;
@ExcelProperty("减除费用")
private BigDecimal costReduction;
@ExcelProperty("通讯补贴(不计税)")
private BigDecimal phoneSubsidy;
@ExcelProperty("表单上传人")
private String createName;
......@@ -120,4 +128,5 @@ public class TSalaryAccountExportVo {
@ExcelProperty("薪酬状态")
private String status;
}
......@@ -294,6 +294,9 @@ public class SalaryUploadServiceImpl extends ServiceImpl<TSalaryStandardMapper,
s.setStatus(SalaryConstants.AUDIT_STATUS[0]);
s.setBpoFlag(dept.getBpoFlag());
s.setIncomeMonth(sav.getSalaryMonth());
s.setBusinessPrimaryType(dept.getBusinessPrimaryType());
s.setBusinessSecondType(dept.getBusinessSecondType());
s.setBusinessThirdType(dept.getBusinessThirdType());
if (configSalary != null) {
s.setSetId(configSalary.getId());
if (Common.isNotNull(configSalary.getIncomeMonth())) {
......
......@@ -844,6 +844,10 @@
sum(ifnull(pdeduction.SALARY_MONEY,0)) pdeductionMoney,
if(a.PAY_SETTLE_FLAG = '0','已结算',if(a.PAY_SETTLE_FLAG = '1','结算中',if(a.PAY_SETTLE_FLAG = '2','未结算','-'))) paySettleFlag,
case s.STATUS when 0 then '待提交' when 1 then '待审核' when 2 then '待推送明细' when 3 then '已推送待发放' when 4 then '已发放' when 5 then '审核不通过' when 6 then '确认不通过' when 7 then '财务退回' when 10 then '推送失败' when 11 then '已审核生成收入中' when 12 then '已审核生成收入失败' else '-' end as status
,phoneSubsidy.SALARY_MONEY as phoneSubsidy
,s.BUSINESS_PRIMARY_TYPE as businessPrimaryType
,s.BUSINESS_SECOND_TYPE as businessSecondType
,s.BUSINESS_THIRD_TYPE as businessThirdType
from
t_salary_account a
left join t_salary_standard s on a.SALARY_FORM_ID = s.id
......@@ -851,6 +855,7 @@
left join t_salary_account_item exemptionPersionTax on exemptionPersionTax.SALARY_ACCOUNT_ID = a.id and exemptionPersionTax.JAVA_FIED_NAME='exemptionPersionTax'
left join t_salary_account_item enterpriseAnnuity on enterpriseAnnuity.SALARY_ACCOUNT_ID = a.id and enterpriseAnnuity.JAVA_FIED_NAME='enterpriseAnnuity'
left join t_salary_account_item pdeduction on pdeduction.SALARY_ACCOUNT_ID = a.id and pdeduction.JAVA_FIED_NAME='pdeduction'
left join t_salary_account_item phoneSubsidy on phoneSubsidy.SALARY_ACCOUNT_ID = a.id and phoneSubsidy.JAVA_FIED_NAME='phoneSubsidy'
<where>
a.DELETE_FLAG = 0
<include refid="where_export"/>
......
......@@ -45,4 +45,5 @@ public class PreDispatchConstants {
public static final String NO_SOCIAL_FUND_ADDRESS_REDUCE = "派减:养老城市和公积金城市不可同时为空,请确认表中有‘养老城市’和‘公积金城市’数据列及数据!";
public static final String GET_AREA_INFO = "获取区域数据失败!";
public static final String TEL_NOT_EMPTY = "联系电话2不可为空!";
public static final String LEAVE_DATE_FORMAT_ERROR = "离职日期格式错误,正确格式为'yyyy-MM-dd'";
}
......@@ -616,7 +616,7 @@ public class TDispatchInfoController {
@PostMapping("/doexportFundRecordChange")
@Operation(description = "导出公积金变更清册 hasPermission('wxhr:tdispatchinfo_doexportFundRecordChange')")
@SysLog("导出公积金变更清册")
@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_doexportFundRecordChange')")
//@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_doexportFundRecordChange')")
public void doexportFundRecordChange(HttpServletResponse response, HttpServletRequest request,
@RequestBody SocialHandleSearchVo searchVo) {
YifuUser user = SecurityUtils.getUser();
......@@ -637,7 +637,7 @@ public class TDispatchInfoController {
@GetMapping("/doExportFundSupplementaryRecord")
@Operation(description = "导出公积金补缴清册 hasPermission('wxhr:tdispatchinfo_doExportFundSupplementaryRecord')")
@SysLog("导出公积金补缴清册")
@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_doExportFundSupplementaryRecord')")
//@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_doExportFundSupplementaryRecord')")
public R<List<FundSupplementaryExportVo>> doExportFundSupplementaryRecord(HttpServletResponse response, HttpServletRequest request,
@RequestParam(name = "idStr", required = false) String idStr,
@RequestBody SocialHandleSearchVo searchVo) {
......@@ -765,7 +765,7 @@ public class TDispatchInfoController {
@PostMapping("/doexportMedicalInfo")
@Operation(description = "导出医保花名册")
@SysLog("导出医保花名册")
@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_doexportFundRecordChange')")
//@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_doexportFundRecordChange')")
public void doexportMedicalInfo(HttpServletResponse response, HttpServletRequest request,
@RequestBody SocialHandleSearchVo searchVo) {
YifuUser user = SecurityUtils.getUser();
......@@ -787,7 +787,7 @@ public class TDispatchInfoController {
@PostMapping("/doexportPensionInfo")
@Operation(description = "导出三险花名册")
@SysLog("导出三险花名册")
@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_doexportFundRecordChange')")
//@PreAuthorize("@pms.hasPermission('wxhr:tdispatchinfo_doexportFundRecordChange')")
public void doexportPensionInfo(HttpServletResponse response, HttpServletRequest request,
@RequestBody SocialHandleSearchVo searchVo) {
YifuUser user = SecurityUtils.getUser();
......
......@@ -1634,6 +1634,8 @@ public class TPaymentInfoServiceImpl extends ServiceImpl<TPaymentInfoMapper, TPa
//地区数据
HashMap<String, String> areaMap = new HashMap<>();
HashMap<String, String> areaMap2 = new HashMap<>();
//公积金唯一性检验条件:身份证编码+公积金缴纳月份
HashMap<String, Object> paymentInfoMap = new HashMap<>();
R<AreaVo> areaListR = upmsDaprUtils.getAreaListR();
if (Common.isNotNull(areaListR)) {
AreaVo areaList = areaListR.getData();
......@@ -1688,7 +1690,8 @@ public class TPaymentInfoServiceImpl extends ServiceImpl<TPaymentInfoMapper, TPa
*/
private void saveData() {
log.info("{}条数据,开始存储数据库!", cachedDataList.size());
batchSavePaymentFundInfo(cachedDataList, errorMessageList, batchInsertList, areaMap, areaMap2,domainMap);
batchSavePaymentFundInfo(cachedDataList, errorMessageList, batchInsertList, areaMap, areaMap2
,domainMap, paymentInfoMap);
log.info("存储数据库成功!");
}
}).sheet().doRead();
......@@ -1709,7 +1712,8 @@ public class TPaymentInfoServiceImpl extends ServiceImpl<TPaymentInfoMapper, TPa
private void batchSavePaymentFundInfo(List<TPaymentInfoVo> list, List<ErrorDetailVO> errorMessageList,
List<TPaymentInfo> batchInsertList,HashMap<String, String> areaMap,
HashMap<String, String> areaMap2,Map<String,TSettleDomainSelectVo> domainMap) {
HashMap<String, String> areaMap2,Map<String,TSettleDomainSelectVo> domainMap,
HashMap<String, Object> paymentInfoMap) {
try {
if (Common.isNotNull(list)) {
TPaymentInfo paymentInfo = null;
......@@ -1731,8 +1735,7 @@ public class TPaymentInfoServiceImpl extends ServiceImpl<TPaymentInfoMapper, TPa
//已存在社保缴费库数据 非删除状态
List<TPaymentInfo> paymentInfos = baseMapper.selectListForPaymentImport1(monthList, idcards);
//公积金唯一性检验条件:身份证编码+公积金缴纳月份
HashMap<String, Object> paymentInfoMap = new HashMap<>();
if (Common.isNotNull(paymentInfos)) {
for (TPaymentInfo info : paymentInfos) {
paymentInfoMap.put(info.getProvidentPayAddr()
......
......@@ -629,7 +629,11 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
}
}
if (Common.isNotNull(errorMsgList)) {
return R.ok(errorMsgList,"操作成功,存在异常数据,请核实");
for (ErrorMessage msg:errorMsgList){
if (CommonConstants.RED.equals(msg.getColor())){
return R.ok(errorMsgList,"操作成功,存在异常数据,请核实");
}
}
}
return R.ok();
}
......@@ -755,6 +759,10 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
if (checkAddRepeat(errorList, existsMap, i, info)) {
continue;
}
if (Common.isNotNull(info.getLeaveDate()) && DateUtil.isDate(info.getLeaveDate())){
errorList.add(new ErrorMessage(i, PreDispatchConstants.LEAVE_DATE_FORMAT_ERROR));
continue;
}
// 2.基础封装 其他
initReduceBaseInfo(null, info);
// 3.先校验已有数据
......@@ -2264,7 +2272,7 @@ public class TPreDispatchInfoServiceImpl extends ServiceImpl<TPreDispatchInfoMap
errorMsgList.add(new ErrorMessage(i,
pre.getEmpIdcard() +
CommonConstants.COLON_STRING +
errorMessage.getMessage()));
errorMessage.getMessage(),errorMessage.getColor()));
}
}
}
......
......@@ -1254,17 +1254,6 @@
</where>) a
</select>
<!--tDispatchInfo 社保花名册派单数据count-->
<select id="getSocialDisRecordCount" resultType="java.lang.Integer">
SELECT count(1) from (
SELECT 1
FROM t_dispatch_info a
<where>
<include refid="where_getSocialDisRecord"/>
</where>
group by a.EMP_IDCARD) h
</select>
<select id="getFCount" resultType="java.lang.Integer">
SELECT count(1) from (
SELECT 1
......
......@@ -492,7 +492,6 @@
<if test="tPaymentInfo.providentPayAddr != null and tPaymentInfo.providentPayAddr.trim() != ''">
AND a.PROVIDENT_PAY_ADDR = #{tPaymentInfo.providentPayAddr}
</if>
<!-- 区域 默认精准查询 0 包含下级查询 1 开始 2023-03-02 fxj -->
<if test='tPaymentInfo.areaFlag == null || tPaymentInfo.areaFlag == "1"'>
<if test="tPaymentInfo.socialTown == null">
......@@ -678,6 +677,9 @@
</foreach>
</if>
<if test="tPaymentInfo.idList == null">
<if test="tPaymentInfo.pushStatus != null and tPaymentInfo.pushStatus.trim() != ''">
AND a.PUSH_STATUS = #{tPaymentInfo.pushStatus}
</if>
<if test="tPaymentInfo.id != null and tPaymentInfo.id.trim() != ''">
AND a.ID = #{tPaymentInfo.id}
</if>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment