Commit 3f425bd6 authored by hongguangwu's avatar hongguangwu

Merge branch 'develop'

parents af7b098a 9b28a970
......@@ -33,7 +33,7 @@ spec: # 资源规范字段
#dapr.io/sidecar-memory-limit: "800Mi" #Dapr sidecar可以使用的最大内存量。默认情况下未设置 请参阅 https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/ 的有效值。
#dapr.io/sidecar-cpu-request: 1 #Dapr sidecar要求的 CPU 数量
#dapr.io/sidecar-memory-request #Dapr sidecar 请求的内存数量
dapr.io/http-max-request-size: "100" #增加http和grpc服务器请求正文参数的最大大小,单位为MB,以处理大文件的上传。 默认值为 4 MB
dapr.io/http-max-request-size: "200" #增加http和grpc服务器请求正文参数的最大大小,单位为MB,以处理大文件的上传。 默认值为 4 MB
dapr.io/http-read-buffer-size: "16" #Dapr has a default limit of 4KB for the http header read buffer size. When sending http headers that are bigger than the default 4KB, you can increase this value. Otherwise, you may encounter a Too big request header
dapr.io/sidecar-listen-addresses: "0.0.0.0"
# 更多dapr配置请参考 https://www.bookstack.cn/read/dapr-1.5-zh/cc77b74e2cc2f4d4.md
......
......@@ -33,7 +33,7 @@ spec: # 资源规范字段
#dapr.io/sidecar-memory-limit: "800Mi" #Dapr sidecar可以使用的最大内存量。默认情况下未设置 请参阅 https://kubernetes.io/docs/tasks/administer-cluster/manage-resources/quota-memory-cpu-namespace/ 的有效值。
#dapr.io/sidecar-cpu-request: 1 #Dapr sidecar要求的 CPU 数量
#dapr.io/sidecar-memory-request #Dapr sidecar 请求的内存数量
dapr.io/http-max-request-size: "100" #增加http和grpc服务器请求正文参数的最大大小,单位为MB,以处理大文件的上传。 默认值为 4 MB
dapr.io/http-max-request-size: "200" #增加http和grpc服务器请求正文参数的最大大小,单位为MB,以处理大文件的上传。 默认值为 4 MB
dapr.io/http-read-buffer-size: "16" #Dapr has a default limit of 4KB for the http header read buffer size. When sending http headers that are bigger than the default 4KB, you can increase this value. Otherwise, you may encounter a Too big request header
#dapr.io/sidecar-listen-addresses: "0.0.0.0"
# 更多dapr配置请参考 https://www.bookstack.cn/read/dapr-1.5-zh/cc77b74e2cc2f4d4.md
......@@ -58,7 +58,7 @@ spec: # 资源规范字段
value: Asia/Shanghai
resources: #资源配置限制
limits: # 最大使用
memory: "2048Mi"
memory: "4096Mi"
#cpu: 300m # CPU,1核心 = 1000m
requests: # 容器运行时,最低资源需求,也就是说最少需要多少资源容器才能正常运行
#cpu: 100m
......
/*
* 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.alibaba.excel.annotation.write.style.HeadFontStyle;
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;
/**
* 档案导出限定表(限定后不可导出,除非清理掉数据或等10分钟)
*
* @author hgw
* @date 2024-10-24 15:22:51
*/
@Data
@TableName("t_archives_export_limit")
@EqualsAndHashCode(callSuper = true)
@Schema(description = "档案导出限定表(限定后不可导出,除非清理掉数据或等10分钟)")
public class TArchivesExportLimit extends BaseEntity {
/**
* id
*/
@TableId(type = IdType.ASSIGN_ID)
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty("id")
private String id;
/**
* 删除标志:0未删除;1已删除(1代表已完成导出,释放了锁)
*/
@ExcelAttribute(name = "删除标志:0未删除;1已删除(1代表已完成导出,释放了锁)", isNotEmpty = true, errorInfo = "删除标志:0未删除;1已删除(1代表已完成导入或删除,释放了锁)不能为空")
@NotBlank(message = "删除标志:0未删除;1已删除(1代表已完成导出,释放了锁)不能为空")
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty("删除标志:0未删除;1已删除(1代表已完成导出,释放了锁)")
private Integer deleteFlag;
/**
* 类型:1预入职导出;2完整度监控导出
*/
@ExcelAttribute(name = "类型", isNotEmpty = true, errorInfo = "类型:1预入职导出;2完整度监控导出不能为空")
@NotBlank(message = "类型:1预入职导出;2完整度监控导出不能为空")
@HeadFontStyle(fontHeightInPoints = 11)
@ExcelProperty("类型:1预入职导出;2完整度监控导出")
private Integer type;
@Length(max = 64, message = "进度条不能超过64个字符")
@Schema(description = "进度条")
private String progressBar;
}
/*
* 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.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 档案导入导出限制表
*
* @author hgw
* @date 2024-10-24 15:22:51
*/
@Data
@TableName("t_archives_limit")
@Schema(description = "档案导入导出限制表")
public class TArchivesLimit {
/**
* 主键(类型:1预入职导入;2档案更新;3:预入职导出;4档案完整度监控导出,具体的看remark里的说明)
*/
@TableId(type = IdType.AUTO)
@Schema(description = "主键")
private Integer id;
@Schema(description = "备注")
private String remark;
@Schema(description = "导出最大值(按类型)")
private Integer maxNum;
}
......@@ -113,11 +113,14 @@ public class TEmployeeInfo extends BaseEntity {
/**
* 出生日期
* Error attempting to get column 'EMP_BIRTHDAY' from result set. Cause: java.sql.SQLException: HOUR_OF_DAY
* 因为夏令时引起的。只有1940-06-03、1941-03-16、1986-05-04、1987-04-12、1988-04-10、1989-04-16、1990-04-15、1991-04-14几个时间会有如上错误抛出
* https://blog.csdn.net/weixin_51906670/article/details/130556793
*/
@DateTimeFormat("yyyy-MM-dd")
@Schema(description = "出生日期")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date empBirthday;
private java.sql.Date empBirthday;
/**
* 年龄
......@@ -567,4 +570,30 @@ public class TEmployeeInfo extends BaseEntity {
*/
@TableField(exist = false)
private List<TEmpOtherFile> otherFiles;
// 员工声明
@TableField(exist = false)
private TPreEmpDeclaration tPreEmpDeclaration;
// 档案编辑的其他附件之外的附件,例如:身份证正反面,户口本2页、员工声明、员工确认
@TableField(exist = false)
private List<TAttaInfo> attaList;
// 档案编辑的其他附件之外的附件,例如:身份证正反面,户口本2页、员工声明、员工确认
// 身份证9\24
@TableField(exist = false)
private TAttaInfo attaIdCardOne;
@TableField(exist = false)
private TAttaInfo attaIdCardTwo;
// 户口本10\25
@TableField(exist = false)
private TAttaInfo attaRegistrationOne;
@TableField(exist = false)
private TAttaInfo attaRegistrationTwo;
// 员工声明21\25
@TableField(exist = false)
private TAttaInfo attaDeclearOne;
@TableField(exist = false)
private TAttaInfo attaDeclearTwo;
}
......@@ -31,14 +31,14 @@ import java.io.Serializable;
import java.time.LocalDateTime;
/**
* 预入职-员工
* 预入职-员工
*
* @author hgw
* @date 2024-06-17 11:24:00
*/
@Data
@TableName("t_pre_emp_declaration")
@Schema(description = "预入职-员工明")
@Schema(description = "预入职-员工明")
public class TPreEmpDeclaration implements Serializable {
/**
......
......@@ -31,6 +31,7 @@ import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import java.util.Date;
import java.util.List;
/**
* 预入职-主表
......@@ -230,14 +231,20 @@ public class TPreEmpMain extends BaseEntity {
@Schema(description = "结算主体ID")
private String settleDomain;
/**
* 员工明表ID,新申明要加一条新数据,关联这个主表
* 员工明表ID,新申明要加一条新数据,关联这个主表
*/
@ExcelAttribute(name = "员工明表ID", maxLength = 32)
@Length(max = 32, message = "员工明表ID不能超过32个字符")
@ExcelProperty("员工明表ID")
@Schema(description = "员工明表ID,新申明要加一条新数据,关联这个主表")
@ExcelAttribute(name = "员工明表ID", maxLength = 32)
@Length(max = 32, message = "员工明表ID不能超过32个字符")
@ExcelProperty("员工明表ID")
@Schema(description = "员工明表ID,新申明要加一条新数据,关联这个主表")
private String declarationId;
// 数据来源 默认0: '扫码进入', 1: 'PC批量导入'
@ExcelAttribute(name = "数据来源", maxLength = 32)
@ExcelProperty("数据来源")
@Schema(description = "数据来源")
private String sourType;
@Schema(description = "状态多个")
@TableField(exist = false)
private String[] statusArray;
......@@ -266,4 +273,20 @@ public class TPreEmpMain extends BaseEntity {
@TableField(exist = false)
private String ids;
// 导入预入职使用
@TableField(exist = false)
private String firstWorkFlag;
@TableField(exist = false)
private String haveQualification;
/**
* 其他附件
*/
@TableField(exist = false)
private List<TPreEmpOtherFile> otherFiles;
// 档案编辑的其他附件之外的附件,例如:身份证正反面,户口本2页、学历学信、员工声明、员工确认
@TableField(exist = false)
private List<TAttaInfo> attaList;
}
......@@ -100,4 +100,11 @@ public class TPreEmpOtherFile {
**/
@TableField(exist = false)
private List<TAttaInfo> attaList;
/**
* 档案编辑其他附件分租信息处理类型 0 新增 1 更新 2 删除 3 不变
*/
@TableField(exist = false)
private String handleType;
}
......@@ -130,7 +130,7 @@ public class TPreEmployeeInfo extends BaseEntity {
@ExcelAttribute(name = "出生日期", isDate = true)
@ExcelProperty("出生日期")
@Schema(description = "出生日期")
private Date empBirthday;
private java.sql.Date empBirthday;
/**
* 年龄
*/
......
......@@ -35,10 +35,10 @@ public class IdCardUtil {
* @param idNum
* @return
*/
public static Date getBirthdate(String idNum){
public static java.sql.Date getBirthdate(String idNum){
Pattern idNumPattern = null;
Matcher idNumMatcher = null;
Date date = null;
java.sql.Date date = null;
//定义判别用户身份证号的正则表达式(要么是15位,要么是18位,最后一位可以为字母)
idNumPattern = compile("(\\d{14}[0-9a-zA-Z])|(\\d{17}[0-9a-zA-Z])");
//通过Pattern获得Matcher
......@@ -70,13 +70,13 @@ public class IdCardUtil {
String datetemp = birthDateMather.group(3);
String dateStr =year+"-"+month+"-"+datetemp;
SimpleDateFormat sdf = new SimpleDateFormat( "yyyy-MM-dd" );
Date shijian = null;
Date shijian = null;
try {
shijian =sdf.parse(dateStr);
String temp = sdf.format(shijian);
if(dateStr.equals(temp)){
//输出用户的出生年月日
date = shijian;
date = new java.sql.Date(shijian.getTime());
}
} catch (ParseException e) {
//数据有误
......
......@@ -22,7 +22,7 @@ public class EmpMainDetailVo implements Serializable {
private TEmpBadRecord tEmpBadRecord;
// 紧急联络人
private TEmpContactInfo tEmpContactInfo;
// 员工
// 员工
private TPreEmpDeclaration tEmpDeclaration;
// 员工伤残信息表
private TEmpDisabilityInfo tEmpDisabilityInfo;
......
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
/**
* C端登录处查系统用户数据
* @author chenyuxi
* @date 2024/10/15
* @since mvp1.7.0
*/
@Data
public class EmpMainToCVo implements Serializable {
private static final long serialVersionUID = 1L;
@Schema(description = "预入职审核状态(0草稿;1待完善;2待审核;3审核不通过;4审核通过;5初始未保存)")
private String preStatus;
@Schema(description = "员工姓名")
private String empName;
@Schema(description = "身份证号")
private String empIdcard;
@Schema(description = "手机号码")
private String empPhone;
@Schema(description = "来源(0:在档,1:预入职,2:不在系统)")
private String empFrom;
}
......@@ -70,7 +70,7 @@ public class EmployeeBusinessVo {
*/
@ExcelAttribute(name = "出生日期",isDate =true ,dateFormat = DateUtil.ISO_EXPANDED_DATE_FORMAT)
@Schema(description = "出生日期", name = "empBirthday")
private Date empBirthday;
private java.sql.Date empBirthday;
/**
* 民族
*/
......
......@@ -245,4 +245,35 @@ public class EmployeeInsertVO extends RowIndex implements Serializable {
@ExcelProperty(value = "通信地址-详细地址")
private String contactAddress;
/*
// 紧急联系人姓名 与本人关系 联系地址-省 联系地址-市 联系地址-区/县 联系地址-详细地址 手机号码(紧急联系人)
@ExcelAttribute(name = "紧急联系人姓名", isNotEmpty = true, errorInfo = "紧急联系人姓名不能为空", maxLength = 20)
private String contactEmpName;
@ExcelAttribute(name = "与本人关系", isNotEmpty = true, errorInfo = "与本人关系不能为空", maxLength = 50)
private String relationType;
@ExcelAttribute(name = "联系地址-省", isNotEmpty = true, isArea = true)
private String relationProvince;
@ExcelAttribute(name = "联系地址-市", isNotEmpty = true, isArea = true, parentField = "relationProvince")
private String relationCity;
@ExcelAttribute(name = "联系地址-区/县", isNotEmpty = true, isArea = true, parentField = "relationCity")
private String relationTown;
@ExcelAttribute(name = "联系地址-详细地址", isNotEmpty = true, errorInfo = "联系地址-街道、详情不能为空", maxLength = 100)
private String address;
@ExcelAttribute(name = "手机号码(紧急联系人)", isPhone = true, isNotEmpty = true, errorInfo = "手机号码(紧急联系人)不能为空", maxLength = 20)
private String tel;
// 银行卡号 开户总行 开户省 开户市 开户支行 计税月份
@ExcelAttribute(name = "银行卡号", isNotEmpty = true, maxLength = 50)
private String bankNo;
@ExcelAttribute(name = "开户行总行", maxLength = 50)
private String bankName;
@ExcelAttribute(name = "开户省", isArea = true)
private String bankProvince;
@ExcelAttribute(name = "开户市", isArea = true, parentField = "bankProvince")
private String bankCity;
@ExcelAttribute(name = "开户支行", maxLength = 50)
private String bankSubName;
@ExcelAttribute(name = "计税月份", isDate = true, dateFormat = "yyyyMM", maxLength = 6)
private String taxMonth;*/
}
......@@ -39,7 +39,7 @@ public class PreEmpMainDetailVo implements Serializable {
private TPreEmpBadRecord tpreEmpBadRecord;
// 预入职-紧急联络人
private TPreEmpContactInfo tpreEmpContactInfo;
// 预入职-员工
// 预入职-员工
private TPreEmpDeclaration tpreEmpDeclaration;
// 预入职-员工伤残信息表
private TPreEmpDisabilityInfo tpreEmpDisabilityInfo;
......
/*
* 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.baomidou.mybatisplus.annotation.TableField;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttribute;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.ExcelAttributeConstants;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* 档案批量更新导入的表格内容
*
* @author hgw
* @date 2024-10-17 15:30:41
*/
@Data
public class PreUploadEmpImportTwoVo implements Serializable {
// (字典值,0外包1派遣2代理)
@ExcelAttribute(name = "员工类型", isDataId = true, dataType = ExcelAttributeConstants.EMP_NATRUE, maxLength = 4)
private String empNatrue;
@ExcelAttribute(name = "员工姓名", maxLength = 32)
private String empName;
@ExcelAttribute(name = "身份证号", isNotEmpty = true, maxLength = 20)
private String empIdcard;
@ExcelAttribute(name = "身份证开始日期", isDate = true)
private String validityStart;
@ExcelAttribute(name = "身份证截止日期", isDate = true, pattern = "validityStart")
private String validityEnd;
@ExcelAttribute(name = "婚姻状况", isDataId = true, dataType = ExcelAttributeConstants.EMP_MARRIED, maxLength = 32)
private String empMarriStatus;
@ExcelAttribute(name = "民族", isDataId = true, dataType = ExcelAttributeConstants.EMP_NATIONAL, maxLength = 32)
private String empNational;
@ExcelAttribute(name = "政治面貌", isDataId = true, dataType = ExcelAttributeConstants.EMP_POLITICAL, maxLength = 32)
private String politicalStatus;
@ExcelAttribute(name = "手机号码", isPhone = true, maxLength = 32)
private String empPhone;
@ExcelAttribute(name = "邮箱", maxLength = 50)
private String empEmail;
// 区域ID
@ExcelAttribute(name = "户籍所在地-省", isArea = true)
private String idProvince;
@ExcelAttribute(name = "户籍所在地-市", isArea = true, parentField = "idProvince")
private String idCity;
@ExcelAttribute(name = "户籍所在地-区/县", isArea = true, parentField = "idCity")
private String idTown;
@ExcelAttribute(name = "户口性质", isDataId = true, dataType = ExcelAttributeConstants.EMP_REGISTYPE, maxLength = 32)
private String empRegisType;
@ExcelAttribute(name = "档案所在地-省", isArea = true)
private String fileProvince;
@ExcelAttribute(name = "档案所在地-市", isArea = true, parentField = "fileProvince")
private String fileCity;
@ExcelAttribute(name = "档案所在地-区/县", isArea = true, parentField = "fileCity")
private String fileTown;
@ExcelAttribute(name = "通信地址-省", isArea = true)
private String contactProvince;
@ExcelAttribute(name = "通信地址-市", isArea = true, parentField = "contactProvince")
private String contactCity;
@ExcelAttribute(name = "通信地址-区/县", isArea = true, parentField = "contactCity")
private String contactTown;
@ExcelAttribute(name = "通信地址-详细地址", maxLength = 200)
private String contactAddress;
@ExcelAttribute(name = "备注", maxLength = 200)
private String remark;
// 预入职-员工学历信息表
// private TPreEmpEducation tpreEmpEducation
// 学历 学校 专业 教育开始时间 教育结束时间 是否大专及以上 最高学历
@ExcelAttribute(name = "是否大专及以上", isDataId = true, readConverterExp = "0=否,1=是")
private String isCollege;
@ExcelAttribute(name = "最高学历", isDataId = true, dataType = ExcelAttributeConstants.EDUCATION, maxLength = 32)
private String educationName;
@ExcelAttribute(name = "学校", maxLength = 50)
private String school;
@ExcelAttribute(name = "专业", maxLength = 50)
private String major;
@ExcelAttribute(name = "入学时间", isDate = true)
private String entryDate;
@ExcelAttribute(name = "毕业时间", isDate = true, pattern = "entryDate")
private String gradutionDate;
// 紧急联系人
// private TPreEmpContactInfo tpreEmpContactInfo
// 紧急联系人姓名 与本人关系 联系地址-省 联系地址-市 联系地址-区/县 联系地址-详细地址 手机号码(紧急联系人)
@ExcelAttribute(name = "紧急联系人姓名", errorInfo = "紧急联系人姓名不能为空", maxLength = 20)
private String contactEmpName;
@ExcelAttribute(name = "紧急联系人与本人关系", errorInfo = "与本人关系不能为空", maxLength = 50)
private String relationType;
@ExcelAttribute(name = "联系地址-省", isArea = true)
private String relationProvince;
@ExcelAttribute(name = "联系地址-市", isArea = true, parentField = "relationProvince")
private String relationCity;
@ExcelAttribute(name = "联系地址-区/县", isArea = true, parentField = "relationCity")
private String relationTown;
@ExcelAttribute(name = "联系地址-详细地址", errorInfo = "联系地址-街道、详情不能为空", maxLength = 200)
private String address;
@ExcelAttribute(name = "手机号码(紧急联系人)", isPhone = true, errorInfo = "手机号码(紧急联系人)不能为空", maxLength = 20)
private String tel;
// 银行卡号 开户总行 开户省 开户市 开户支行 计税月份
@ExcelAttribute(name = "银行卡号", maxLength = 50)
private String bankNo;
@ExcelAttribute(name = "开户总行", maxLength = 50)
private String bankName;
@ExcelAttribute(name = "开户省", isArea = true)
private String bankProvince;
@ExcelAttribute(name = "开户市", isArea = true, parentField = "bankProvince")
private String bankCity;
@ExcelAttribute(name = "开户支行", maxLength = 50)
private String bankSubName;
@ExcelAttribute(name = "计税月份", isDate = true, dateFormat = "yyyyMM", maxLength = 6)
private String taxMonth;
// 字典值起始
@ExcelAttribute(name = "员工类型-值")
private String empNatrueValue;
@ExcelAttribute(name = "婚姻状况-值")
private String empMarriStatusValue;
@ExcelAttribute(name = "民族-值")
private String empNationalValue;
@ExcelAttribute(name = "政治面貌-值")
private String politicalStatusValue;
@ExcelAttribute(name = "户籍所在地-省-值")
private String idProvinceValue;
@ExcelAttribute(name = "户籍所在地-市-值")
private String idCityValue;
@ExcelAttribute(name = "户籍所在地-县-值")
private String idTownValue;
@ExcelAttribute(name = "户口性质-值")
private String empRegisTypeValue;
@ExcelAttribute(name = "档案所在地-省-值")
private String fileProvinceValue;
@ExcelAttribute(name = "档案所在地-市-值")
private String fileCityValue;
@ExcelAttribute(name = "档案所在地-县-值")
private String fileTownValue;
@ExcelAttribute(name = "通信地址-省-值")
private String contactProvinceValue;
@ExcelAttribute(name = "通信地址-市-值")
private String contactCityValue;
@ExcelAttribute(name = "通信地址-县-值")
private String contactTownValue;
// 紧急联系人
@ExcelAttribute(name = "联系地址-省-值")
private String relationProvinceValue;
@ExcelAttribute(name = "联系地址-市-值")
private String relationCityValue;
@ExcelAttribute(name = "联系地址-县-值")
private String relationTownValue;
@ExcelAttribute(name = "入学时间-值")
private Date entryDateValue;
@ExcelAttribute(name = "毕业时间-值")
private Date gradutionDateValue;
// 预入职-员工学历信息表
@ExcelAttribute(name = "是否大专及以上-值")
private String isCollegeValue;
@ExcelAttribute(name = "学历-值")
private String educationNameValue;
// 银行卡号 开户总行 开户省 开户市 开户支行 计税月份
@ExcelAttribute(name = "开户省-值")
private String bankProvinceValue;
@ExcelAttribute(name = "开户市-值")
private String bankCityValue;
@ExcelAttribute(name = "计税月份-值")
private String taxMonthValue;
@ExcelAttribute(name = "身份证开始日期-值")
private Date validityStartValue;
@ExcelAttribute(name = "身份证截止日期-值")
private Date validityEndValue;
// 字典值结束
@TableField(exist = false)
private int lineNum;
@TableField(exist = false)
private String errorInfo;
}
package com.yifu.cloud.plus.v1.yifu.archives.vo;
import lombok.Getter;
import lombok.Setter;
/**
* @author hgw
* @description 预入职导入入参
* @date 2024-10-12 11:16:17
*/
@Getter
@Setter
public class PreUploadImportParamVo {
// 结算主体;必填
String deptId;
// sheetName;必填
String sheetName;
}
......@@ -34,6 +34,9 @@ public class TCompleteMonitorInfoVo implements Serializable {
@Schema(description = "人员档案id")
private String empInfoId;
@Schema(description = "人员项目档案id")
private String empProjectId;
@Schema(description = "项目编码")
private String deptNo;
......
......@@ -105,6 +105,12 @@
<artifactId>javase</artifactId>
<version>3.5.1</version>
</dependency>
<!-- 读取excel -->
<dependency>
<groupId>com.monitorjbl</groupId>
<artifactId>xlsx-streamer</artifactId>
<version>2.2.0</version>
</dependency>
<!-- 二维码生成JAR结束 -->
</dependencies>
......
......@@ -46,6 +46,7 @@ public class TCompleteMonitorController {
**/
@Operation(description = "导出档案完整度监控管理-全量 权限:archves_tcompletemonitor_export_all")
@PostMapping("/exportAll")
@SysLog("导出档案完整度监控管理-全量")
//@PreAuthorize("@pms.hasPermission('archves_tcompletemonitor_export_all')")
public void exportAll(HttpServletResponse response, @RequestBody TCompleteMonitorSearchVo searchVo) {
YifuUser user = SecurityUtils.getUser();
......
......@@ -348,6 +348,21 @@ public class TEmployeeInfoController {
return tEmployeeInfoService.batchUpdateEmployee(file.getInputStream(),exportFields);
}
/**
* @Description: 批量更新人员和银行信息
* @Author: hgw
* @Date: 2024-10-16 17:41:04
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.util.List < com.pig4cloud.plugin.excel.vo.ErrorMessage>>
**/
@SneakyThrows
@Operation(summary = "批量更新人员和银行信息", description = "批量更新人员和银行信息 hasPermission('employee_batch_update_bank')")
@SysLog("批量更新人员和银行信息")
@PostMapping("/batchUpdateEmployeeAndBank")
// @PreAuthorize("@pms.hasPermission('employee_batch_update_bank')")
public R<List<PreUploadEmpImportTwoVo>> batchUpdateEmployeeAndBank(MultipartFile file, PreUploadImportParamVo vo) throws Exception {
return tEmployeeInfoService.batchUpdateEmployeeAndBank(file, vo);
}
/**
* 批量导出人员档案信息
*
......@@ -506,6 +521,13 @@ public class TEmployeeInfoController {
return tEmployeeInfoService.getHcmEmpInfo(idCard);
}
@Operation(description = "测试异常数据使用接口")
@SysLog("测试异常数据使用接口")
@PostMapping("/getListByDeptIdByLimit")
public List<TEmployeeInfo> getListByDeptIdByLimit(@RequestParam String deptId,@RequestParam Integer limit1, @RequestParam Integer limit2) {
return tEmployeeInfoService.getListByDeptIdByLimit(deptId, limit1,limit2);
}
/**
* @param idCardList
* @Description: HCM获取人员信息列表
......
......@@ -21,9 +21,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TPreEmpMain;
import com.yifu.cloud.plus.v1.yifu.archives.service.TPreEmpMainService;
import com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorVO;
import com.yifu.cloud.plus.v1.yifu.archives.vo.PreEmpMainDetailVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TPreEmpMainSearchVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.*;
import com.yifu.cloud.plus.v1.yifu.common.core.util.Common;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import com.yifu.cloud.plus.v1.yifu.common.core.vo.YifuUser;
......@@ -126,6 +125,7 @@ public class TPreEmpMainController {
/**
* 预入职批量完善信息
*
* @author hgw
* @date 2024-6-21 15:25:20
**/
......@@ -152,6 +152,7 @@ public class TPreEmpMainController {
/**
* 预入职批量审核
*
* @author hgw
* @date 2024-6-24 12:00:53
**/
......@@ -241,6 +242,7 @@ public class TPreEmpMainController {
**/
@Operation(summary = "导出预入职-全量", description = "导出预入职-全量 hasPermission('archives_tpreempmain-export-all')")
@PostMapping("/exportAll")
@SysLog("导出预入职-全量")
//@PreAuthorize("@pms.hasPermission('archives_tpreempmain-export-all')")
public void exportAll(HttpServletResponse response, @RequestBody TPreEmpMainSearchVo searchVo) {
YifuUser user = SecurityUtils.getUser();
......@@ -248,4 +250,77 @@ public class TPreEmpMainController {
tPreEmpMainService.exportAll(response, searchVo);
}
/**
* @param file
* @Description: 预入职批量导入
* @Author: hgw
* @Date: 2024/10/12 9:24
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<com.yifu.cloud.plus.v1.yifu.salary.vo.SalaryUploadParamVo>
**/
@SysLog("预入职批量导入")
@Operation(summary = "预入职批量导入", description = "预入职批量导入 hasPermission('pre_emp_batch_upload')")
@PostMapping("/uploadPreEmp")
// @PreAuthorize("@pms.hasPermission('pre_emp_batch_upload')")
public R<List<PreUploadEmpImportVo>> uploadPreEmp(MultipartFile file, PreUploadImportParamVo vo) throws Exception {
return tPreEmpMainService.uploadPreEmp(file, vo);
}
/**
* 根据身份证与姓名查询用户手机号和来源
*
* @param empIdCard 身份证
* @param empName 姓名
* @return R<EmpMainToCVo>
*
* @author chenyuxi
* @date 2024-10-24 16:01:47
* @since mvp1.7.0
*
**/
@Operation(summary = "根据身份证与姓名查询用户手机号和来源", description = "根据身份证与姓名查询用户手机号和来源")
@GetMapping("/getPhoneByCardAndName")
public R<EmpMainToCVo> getPhoneByCardAndName(@Param("empIdCard") String empIdCard, @Param("empName") String empName) {
return tPreEmpMainService.getPhoneByCardAndName(empIdCard, empName);
}
/**
* 发送手机验证码
*
* @param empPhone 手机号
* @return R<String>
*
* @author chenyuxi
* @date 2024-10-24 16:01:47
* @since mvp1.7.0
*/
@PostMapping("/sendCode")
public R<String> sendCode(@Param("empPhone") String empPhone) {
if (Common.isEmpty(empPhone)) {
return R.failed("手机号不能为空");
}
return tPreEmpMainService.sendCode(empPhone);
}
/**
* 校验手机验证码
*
* @param empPhone 手机号
* @param verifyCode 验证码
* @return R<String>
*
* @author chenyuxi
* @date 2024-10-24 16:01:47
* @since mvp1.7.0
*/
@PostMapping("/checkCode")
public R<String> checkCode(@Param("empPhone") String empPhone,@Param("verifyCode") String verifyCode) {
if (Common.isEmpty(empPhone)) {
return R.failed("手机号不能为空");
}
if (Common.isEmpty(verifyCode)) {
return R.failed("验证码不能为空");
}
return tPreEmpMainService.checkCode(empPhone, verifyCode);
}
}
/*
* 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.yifu.cloud.plus.v1.yifu.archives.entity.TArchivesExportLimit;
import org.apache.ibatis.annotations.Mapper;
/**
* 薪资导入、删除锁定表(锁定后不可导入删除,除非清理掉数据)
*
* @author hgw
* @date 2024-10-24 15:59:09
*/
@Mapper
public interface TArchivesExportLimitMapper extends BaseMapper<TArchivesExportLimit> {
}
/*
* 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.yifu.cloud.plus.v1.yifu.archives.entity.TArchivesLimit;
import org.apache.ibatis.annotations.Mapper;
/**
* 档案导入导出限制表
*
* @author hgw
* @date 2024-10-24 15:59:09
*/
@Mapper
public interface TArchivesLimitMapper extends BaseMapper<TArchivesLimit> {
}
......@@ -93,6 +93,13 @@ public interface TCompleteMonitorMapper extends BaseMapper<TCompleteMonitor> {
int getTEmpMainAllCount(@Param("tCompleteMonitor") TCompleteMonitor tCompleteMonitor);
// 导出详情使用 hgw 2024-6-26 11:05:41
List<TMainExportAllVO> getTEmpMainAllList(@Param("tCompleteMonitor") TCompleteMonitor tCompleteMonitor);
List<TMainExportAllVO> getTEmpMainAllListByContract(@Param("empIdList") List<String> empIdList);
List<TMainExportAllVO> getTEmpMainAllListByEducation(@Param("empIdList") List<String> empIdList);
List<TMainExportAllVO> getTEmpMainAllListByBad(@Param("empIdList") List<String> empIdList);
List<TMainExportAllVO> getTEmpMainAllListByDisability(@Param("empIdList") List<String> empIdList);
List<TMainExportAllVO> getTEmpMainAllListByWork(@Param("empIdList") List<String> empIdList);
List<TMainExportAllVO> getTEmpMainAllListByFamily(@Param("empIdList") List<String> empIdList);
List<TMainExportAllVO> getTEmpMainAllListByProfessional(@Param("empIdList") List<String> empIdList);
// 导出详情使用 hgw 2024-6-26 11:05:41
int getTEmpMainAllCountOneWork(@Param("tCompleteMonitor") TCompleteMonitor tCompleteMonitor);
......
......@@ -20,6 +20,9 @@ package com.yifu.cloud.plus.v1.yifu.archives.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TEmpBadRecord;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 员工不良记录
......@@ -29,5 +32,5 @@ import org.apache.ibatis.annotations.Mapper;
*/
@Mapper
public interface TEmpBadRecordMapper extends BaseMapper<TEmpBadRecord> {
List<TEmpBadRecord> getBadByIdCard(@Param("idCardList") List<String> idCardList);
}
......@@ -24,6 +24,8 @@ import com.yifu.cloud.plus.v1.yifu.archives.entity.TEmpContactInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @author fxj
* @date 2024-06-17 14:29:11
......@@ -37,4 +39,15 @@ public interface TEmpContactInfoMapper extends BaseMapper<TEmpContactInfo> {
* @return
*/
IPage<TEmpContactInfo> getTEmpContactInfoPage(Page<TEmpContactInfo> page, @Param("tEmpContactInfo") TEmpContactInfo tEmpContactInfo);
/**
* @param deptId
* @Description: 获取紧急联系人信息
* @Author: hgw
* @Date: 2024/10/17 19:42
* @return: java.util.List<com.yifu.cloud.plus.v1.yifu.archives.entity.TEmpContactInfo>
**/
List<TEmpContactInfo> getContactByDeptId(@Param("deptId") String deptId);
List<TEmpContactInfo> getContactByIdCardList(@Param("idCardList") List<String> idCardList);
}
......@@ -20,6 +20,9 @@ package com.yifu.cloud.plus.v1.yifu.archives.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TEmpDisabilityInfo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 员工伤残信息表
......@@ -30,4 +33,5 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface TEmpDisabilityInfoMapper extends BaseMapper<TEmpDisabilityInfo> {
List<TEmpDisabilityInfo> getTEmpDisabilityByIdCardList(@Param("idCardList") List<String> idCardList);
}
......@@ -40,4 +40,6 @@ public interface TEmpEducationMapper extends BaseMapper<TEmpEducation> {
List<TEmpEducationExportVo> noPageDiy(@Param("searchVo")EducationSearchVo searchVo,@Param("idList")List<String> idList);
int noPageCountDiy(@Param("searchVo")EducationSearchVo searchVo,@Param("idList")List<String> idList);
List<TEmpEducation> getTEmpEducationByIdCard(@Param("idCardList") List<String> idCardList);
}
......@@ -48,9 +48,15 @@ public interface TEmployeeInfoMapper extends BaseMapper<TEmployeeInfo> {
List<TEmployeeInfo> getList(@Param("tEmployeeInfo") TEmployeeInfo tEmployeeInfo);
// 批量更新使用,按项目查询人员信息
List<TEmployeeInfo> getListByDeptId(@Param("deptId") String deptId);
List<TEmployeeInfo> getListByDeptIdByLimit(@Param("deptId") String deptId, @Param("limit1") Integer limit1, @Param("limit2") Integer limit2);
// hgw 2022-6-22 15:32:39 根据身份证查询一批档案
List<TEmployeeInfo> getListByIdCard(@Param("idCardList") List<String> idCardList);
List<TEmployeeInfo> getListByIdCardList(@Param("idCardList") List<String> idCardList);
// hgw 2022-6-22 15:32:39 根据手机号查询一批档案
List<TEmployeeInfo> getListByPhone(@Param("phoneList") List<String> phoneList);
......
......@@ -22,7 +22,7 @@ import com.yifu.cloud.plus.v1.yifu.archives.entity.TPreEmpDeclaration;
import org.apache.ibatis.annotations.Mapper;
/**
* 预入职-员工
* 预入职-员工
*
* @author hgw
* @date 2024-06-17 11:24:00
......@@ -30,7 +30,7 @@ import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface TPreEmpDeclarationMapper extends BaseMapper<TPreEmpDeclaration> {
/**
* 预入职-员工明简单分页查询
* 预入职-员工明简单分页查询
*
* @return
*/
......
......@@ -52,6 +52,9 @@ public interface TPreEmpMainMapper extends BaseMapper<TPreEmpMain> {
int getTPreEmpMainAllCount(@Param("tPreEmpMain") TPreEmpMain tPreEmpMain);
List<TPreMainExportAllVO> getTPreEmpMainAllList(@Param("tPreEmpMain") TPreEmpMain tPreEmpMain);
List<TPreMainExportAllVO> getTPreEmpMainAllListByWork(@Param("preMainIdList") List<String> preMainIdList);
List<TPreMainExportAllVO> getTPreEmpMainAllListByFamily(@Param("preMainIdList") List<String> preMainIdList);
List<TPreMainExportAllVO> getTPreEmpMainAllListByProfessional(@Param("preMainIdList") List<String> preMainIdList);
// 导出详情使用 hgw 2024-6-26 11:05:41
int getTEmpMainAllCountOneWork(@Param("tPreEmpMain") TPreEmpMain tPreEmpMain);
......@@ -65,6 +68,9 @@ public interface TPreEmpMainMapper extends BaseMapper<TPreEmpMain> {
TPreEmpMain getTPreEmpMainByCardAndDept(@Param("empIdCard") String empIdCard, @Param("deptId") String deptId);
/* 导入预入职时,查询所有身份证的预入职使用的,查出来删除附属信息 */
List<String> getTPreEmpMainListByCardAndDept(@Param("empIdCardList") List<String> empIdCardList, @Param("deptId") String deptId);
TPreEmpMain getTPreEmpMainByCardAndDeptNo(@Param("empIdCard") String empIdCard, @Param("deptNo") String deptNo);
// 以下都是清空临时表的数据
......@@ -75,5 +81,19 @@ public interface TPreEmpMainMapper extends BaseMapper<TPreEmpMain> {
void deleteFamilyByMainId(@Param("preMainId") String preMainId);
void deleteEmployeeByMainId(@Param("preMainId") String preMainId);
void deleteProjectByMainId(@Param("preMainId") String preMainId);
// 以下都是清空临时表的数据
void deleteBadByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteContactByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteDisabilityByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteEducationByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteFamilyByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteEmployeeByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteProjectByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteWorkRecordingByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteProfessionalByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteOtherFileByMainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deleteAttaByDomainIdList(@Param("preMainIdList") List<String> preMainIdList);
void deletePreMainIdList(@Param("preMainIdList") List<String> preMainIdList);
}
......@@ -63,4 +63,12 @@ public interface TCompleteMonitorService extends IService<TCompleteMonitor> {
// 导出全量
void exportAll(HttpServletResponse response, TCompleteMonitorSearchVo searchVo);
/**
* @Description: 返回异常提示的文件
* @Author: hgw
* @Date: 2024/10/29 10:24
* @return: void
**/
void exportError(HttpServletResponse response, String errorMessage);
}
......@@ -56,4 +56,6 @@ public interface TEmpBadRecordService extends IService<TEmpBadRecord> {
**/
TEmpBadRecord getByEmpId(String empId);
List<TEmpBadRecord> getBadByIdCard(List<String> idList);
}
......@@ -48,6 +48,17 @@ public interface TEmpContactInfoService extends IService<TEmpContactInfo> {
void listExport(HttpServletResponse response, TEmpContactInfoSearchVo searchVo);
List<TEmpContactInfo> noPageDiy(TEmpContactInfoSearchVo searchVo);
/**
* @Description: 获取紧急联系人
* @Author: hgw
* @Date: 2024/10/17 19:40
* @return: java.util.List<com.yifu.cloud.plus.v1.yifu.archives.entity.TEmpContactInfo>
**/
List<TEmpContactInfo> getContactByDeptId(String deptId);
// 根据身份证获取
List<TEmpContactInfo> getContactByIdCardList(List<String> idList);
TEmpContactInfo getByEmpId(String empId);
}
......@@ -45,6 +45,8 @@ public interface TEmpDisabilityInfoService extends IService<TEmpDisabilityInfo>
List<TEmpDisabilityInfo> getTEmpDisabilityInfoNoPage(DisabilitySearchVo searchVo);
List<TEmpDisabilityInfo> getTEmpDisabilityByIdCardList(List<String> idList);
R<Boolean> updateByIdDiy(TEmpDisabilityInfo tEmpDisabilityInfo);
R<List<ErrorMessage>> importTmpDisabilityDiy(InputStream inputStream);
......
......@@ -77,4 +77,6 @@ public interface TEmpEducationService extends IService<TEmpEducation> {
**/
TEmpEducation getByEmpId(String empId);
List<TEmpEducation> getTEmpEducationByIdCard(List<String> idCardList);
}
......@@ -24,6 +24,7 @@ import com.pig4cloud.plugin.excel.vo.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeInfo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.*;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
......@@ -169,6 +170,9 @@ public interface TEmployeeInfoService extends IService<TEmployeeInfo> {
**/
R<List<ErrorMessage>> batchUpdateEmployee(InputStream inputStream,String[] exportFields);
// 批量更新人员和银行信息
R<List<PreUploadEmpImportTwoVo>> batchUpdateEmployeeAndBank(MultipartFile file, PreUploadImportParamVo paramVo) throws Exception ;
void updateEducationOfEmp(EmpEducationUpdateVO education);
/**
......@@ -260,4 +264,10 @@ public interface TEmployeeInfoService extends IService<TEmployeeInfo> {
R<TEmployeeInfo> getByIdAssociate(String id);
void exportEmployeeFile(String id, HttpServletResponse response) throws Exception;
// 预入职批量导入使用
List<TEmployeeInfo> getListByIdCardList(List<String> idList);
List<TEmployeeInfo> getListByDeptIdByLimit(String deptId, Integer limit1, Integer limit2);
}
......@@ -272,4 +272,14 @@ public interface TEmployeeProjectService extends IService<TEmployeeProject> {
void updateContractStatus(String empId, String deptId, int status);
void updatePostByEmpDeptNo(String deptNo, String post, String empIdcard);
/**
* @param deptId 项目id
* @Description: 获取项目下的未删除的在项的人员
* @Author: hgw
* @Date: 2024/10/14 16:28
* @return: java.util.Map<java.lang.String, com.yifu.cloud.plus.v1.yifu.archives.entity.TEmployeeProject>
**/
Map<String, TEmployeeProject> getMapByDeptIdAndDelete(String deptId);
}
......@@ -21,14 +21,14 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.yifu.cloud.plus.v1.yifu.archives.entity.TPreEmpDeclaration;
/**
* 预入职-员工
* 预入职-员工
*
* @author hgw
* @date 2024-06-17 11:24:00
*/
public interface TPreEmpDeclarationService extends IService<TPreEmpDeclaration> {
/**
* 预入职-员工明简单分页查询
* 预入职-员工明简单分页查询
*
* @return
*/
......
......@@ -21,11 +21,10 @@ 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.TPreEmpMain;
import com.yifu.cloud.plus.v1.yifu.archives.vo.ErrorVO;
import com.yifu.cloud.plus.v1.yifu.archives.vo.PreEmpMainDetailVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.TPreEmpMainSearchVo;
import com.yifu.cloud.plus.v1.yifu.archives.vo.*;
import com.yifu.cloud.plus.v1.yifu.common.core.util.ErrorMessage;
import com.yifu.cloud.plus.v1.yifu.common.core.util.R;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
......@@ -64,8 +63,10 @@ public interface TPreEmpMainService extends IService<TPreEmpMain> {
// 单个完善信息
R<String> doImproveInformation(PreEmpMainDetailVo vo);
// 草稿
R<String> saveDraftPreEmpMain(PreEmpMainDetailVo vo);
// 保存
R<String> savePreEmpMain(PreEmpMainDetailVo vo);
......@@ -74,6 +75,7 @@ public interface TPreEmpMainService extends IService<TPreEmpMain> {
// 导出
void listExport(HttpServletResponse response, TPreEmpMainSearchVo searchVo);
// 导出全量
void exportAll(HttpServletResponse response, TPreEmpMainSearchVo searchVo);
......@@ -85,4 +87,48 @@ public interface TPreEmpMainService extends IService<TPreEmpMain> {
// 批量审核
R<List<ErrorVO>> doBatchAudit(List<String> ids, String status, String auditRemark);
/**
* @Description: 预入职批量导入
* @Author: hgw
* @Date: 2024/10/12 9:27
* @return: com.yifu.cloud.plus.v1.yifu.common.core.util.R<java.util.List < com.yifu.cloud.plus.v1.yifu.archives.vo.PreEmpMainDetailVo>>
**/
R<List<PreUploadEmpImportVo>> uploadPreEmp(MultipartFile file, PreUploadImportParamVo vo) throws Exception;
/**
* 根据身份证与姓名查询用户手机号和来源
* @param empIdCard 身份证
* @param empName 姓名
* @author chenyuxi
* @date 2024-10-24 16:01:47
* @since mvp1.7.0
* @return EmpMainToCVo
**/
R<EmpMainToCVo> getPhoneByCardAndName(String empIdCard, String empName);
/**
* 发送手机验证码
*
* @param empPhone 手机号
* @return R<String>
*
* @author chenyuxi
* @date 2024-10-24 16:01:47
* @since mvp1.7.0
*/
R<String> sendCode(String empPhone);
/**
* 校验手机验证码
*
* @param empPhone 手机号
* @param verifyCode 验证码
* @return R<String>
*
* @author chenyuxi
* @date 2024-10-24 16:01:47
* @since mvp1.7.0
*/
R<String> checkCode(String empPhone, String verifyCode);
}
......@@ -332,7 +332,7 @@ public class FddContractAttachInfoServiceImpl extends ServiceImpl<FddContractAtt
newEmployeeInfo.setCreateName(fddContractAttachInfo.getCreateName());
newEmployeeInfo.setUpdateBy(fddContractAttachInfo.getUpdateBy());
newEmployeeInfo.setContractStatus(CommonConstants.ONE_INT);
Date date = IdCardUtil.getBirthdate(fddContractAttachInfo.getEmpIdcard());
java.sql.Date date = IdCardUtil.getBirthdate(fddContractAttachInfo.getEmpIdcard());
if (null != date) {
//初始化年龄
......
......@@ -318,4 +318,9 @@ public class TEmpBadRecordServiceImpl extends ServiceImpl<TEmpBadRecordMapper, T
}
return wrapper;
}
@Override
public List<TEmpBadRecord> getBadByIdCard(List<String> idList) {
return baseMapper.getBadByIdCard(idList);
}
}
......@@ -262,4 +262,14 @@ public class TEmpContactInfoServiceImpl extends ServiceImpl<TEmpContactInfoMappe
.orderByDesc(TEmpContactInfo::getCreateTime).last(CommonConstants.LAST_ONE_SQL));
}
@Override
public List<TEmpContactInfo> getContactByDeptId(String deptId) {
return baseMapper.getContactByDeptId(deptId);
}
@Override
public List<TEmpContactInfo> getContactByIdCardList(List<String> idList) {
return baseMapper.getContactByIdCardList(idList);
}
}
......@@ -196,6 +196,11 @@ public class TEmpDisabilityInfoServiceImpl extends ServiceImpl<TEmpDisabilityInf
return baseMapper.selectList(wrapper);
}
@Override
public List<TEmpDisabilityInfo> getTEmpDisabilityByIdCardList(List<String> idList) {
return baseMapper.getTEmpDisabilityByIdCardList(idList);
}
@Override
public R<Boolean> updateByIdDiy(TEmpDisabilityInfo tEmpDisabilityInfo) {
TEmpDisabilityInfo exist = baseMapper.selectOne(Wrappers.<TEmpDisabilityInfo>query().lambda()
......
......@@ -557,4 +557,9 @@ public class TEmpEducationServiceImpl extends ServiceImpl<TEmpEducationMapper, T
return empEducation;
}
@Override
public List<TEmpEducation> getTEmpEducationByIdCard(List<String> idCardList) {
return baseMapper.getTEmpEducationByIdCard(idCardList);
}
}
......@@ -1924,4 +1924,22 @@ public class TEmployeeProjectServiceImpl extends ServiceImpl<TEmployeeProjectMap
audit.setCreateName(tEmployeeContractInfo.getAuditUserName());
tEmployeeContractAuditService.save(audit);
}
@Override
public Map<String, TEmployeeProject> getMapByDeptIdAndDelete(String deptId) {
Map<String, TEmployeeProject> proMap = new HashMap<>();
if (Common.isNotNull(deptId)) {
List<TEmployeeProject> projectList = this.list(Wrappers.<TEmployeeProject>query().lambda()
.eq(TEmployeeProject::getDeptId, deptId)
.ne(TEmployeeProject::getProjectStatus, CommonConstants.ONE_INT)
.eq(TEmployeeProject::getDeleteFlag, CommonConstants.ZERO_STRING));
if (projectList != null && !projectList.isEmpty()) {
for (TEmployeeProject pro : projectList) {
proMap.put(pro.getEmpIdcard(), pro);
}
}
}
return proMap;
}
}
......@@ -24,7 +24,7 @@ import lombok.extern.log4j.Log4j2;
import org.springframework.stereotype.Service;
/**
* 预入职-员工
* 预入职-员工
*
* @author hgw
* @date 2024-06-17 11:24:00
......@@ -33,7 +33,7 @@ import org.springframework.stereotype.Service;
@Service
public class TPreEmpDeclarationServiceImpl extends ServiceImpl<TPreEmpDeclarationMapper, TPreEmpDeclaration> implements TPreEmpDeclarationService {
/**
* 预入职-员工明简单分页查询
* 预入职-员工明简单分页查询
*
* @return
*/
......
......@@ -50,6 +50,9 @@ security:
- /tpreempmain/saveDraftPreEmpMain
- /tpreempmain/savePreEmpMain
- /fileUpload/uploadFileReturnAtta
- /tpreempmain/getPhoneByCardAndName
- /tpreempmain/sendCode
- /tpreempmain/checkCode
......
<?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.TArchivesExportLimitMapper">
<resultMap id="tArchivesExportLimitMap" type="com.yifu.cloud.plus.v1.yifu.archives.entity.TArchivesExportLimit">
<id property="id" column="id"/>
<result property="deleteFlag" column="delete_flag"/>
<result property="type" column="type"/>
<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="progressBar" column="PROGRESS_BAR"/>
</resultMap>
<sql id="Base_Column_List">
a.id,
a.type,
a.delete_flag,
a.CREATE_BY,
a.CREATE_NAME,
a.CREATE_TIME,
a.UPDATE_BY,
a.UPDATE_TIME,
a.PROGRESS_BAR
</sql>
<sql id="tArchivesExportLimit_where">
<if test="tArchivesExportLimit != null">
<if test="tArchivesExportLimit.id != null and tArchivesExportLimit.id.trim() != ''">
AND a.id = #{tArchivesExportLimit.id}
</if>
<if test="tArchivesExportLimit.createBy != null and tArchivesExportLimit.createBy.trim() != ''">
AND a.CREATE_BY = #{tArchivesExportLimit.createBy}
</if>
<if test="tArchivesExportLimit.type != null">
AND a.type = #{tArchivesExportLimit.type}
</if>
</if>
</sql>
</mapper>
<?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.TArchivesLimitMapper">
<resultMap id="tArchivesExportLimitMap" type="com.yifu.cloud.plus.v1.yifu.archives.entity.TArchivesLimit">
<id property="id" column="id"/>
<result property="maxNum" column="MAX_NUM"/>
<result property="remark" column="REMARK"/>
</resultMap>
</mapper>
......@@ -42,4 +42,34 @@
<result property="updateTime" column="UPDATE_TIME"/>
<result property="badRecordFlag" column="BAD_RECORD_FLAG"/>
</resultMap>
<sql id="Base_Column_List">
a.ID,
a.EMP_NAME,
a.EMP_ID,
a.EMP_IDCARD,
a.PROJECT,
a.PROJECT_CODE,
a.HAPPEN_TIME,
a.REMARK,
a.LOSE_FEE,
a.LOSE_FEE_OTHER,
a.CREATE_BY,
a.UPDATE_BY,
a.CREATE_NAME,
a.CREATE_TIME,
a.UPDATE_TIME,
a.SETTLE_DOMAIN,
a.BAD_RECORD_FLAG
</sql>
<select id="getBadByIdCard" resultMap="tEmpBadRecordMap">
SELECT
<include refid="Base_Column_List"/>
FROM t_emp_bad_record a
where a.EMP_IDCARD in
<foreach item="item" index="index" collection="idCardList" open="(" separator="," close=")">
#{item}
</foreach>
GROUP BY a.EMP_IDCARD
</select>
</mapper>
......@@ -44,6 +44,7 @@
<sql id="Base_Column_List">
a.ID,
a.EMP_ID,
a.EMP_IDCARD,
a.EMP_NAME,
a.RELATION_TYPE,
a.ADDRESS,
......@@ -108,4 +109,24 @@
<include refid="tEmpContactInfo_where"/>
</where>
</select>
<select id="getContactByDeptId" resultMap="tEmpContactInfoMap">
SELECT
<include refid="Base_Column_List"/>
FROM t_emp_contact_info a
left join t_employee_project b on a.EMP_IDCARD = b.EMP_IDCARD
where b.DEPT_ID = #{deptId}
GROUP BY a.EMP_IDCARD
</select>
<select id="getContactByIdCardList" resultMap="tEmpContactInfoMap">
SELECT
<include refid="Base_Column_List"/>
FROM t_emp_contact_info a
where a.EMP_IDCARD in
<foreach item="item" index="index" collection="idCardList" open="(" separator="," close=")">
#{item}
</foreach>
GROUP BY a.EMP_IDCARD
</select>
</mapper>
This diff is collapsed.
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