组织快照
This commit is contained in:
parent
09b5dee199
commit
c3b71201a4
|
|
@ -0,0 +1,428 @@
|
||||||
|
package com.engine.salary.entity.hrm.po;
|
||||||
|
|
||||||
|
import com.engine.hrmelog.annotation.ElogTransform;
|
||||||
|
import lombok.AllArgsConstructor;
|
||||||
|
import lombok.Builder;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.NoArgsConstructor;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Builder
|
||||||
|
@NoArgsConstructor
|
||||||
|
@AllArgsConstructor
|
||||||
|
public class HrmSnapshotPO {
|
||||||
|
|
||||||
|
@ElogTransform(name = "id")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 快照时间
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "快照时间")
|
||||||
|
private Date snapshotTime;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 人员id
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "人员id")
|
||||||
|
private Long employeeId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 姓名
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "姓名")
|
||||||
|
private String lastname;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工资帐号1
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "工资帐号1")
|
||||||
|
private String accountid1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工资账号户名
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "工资账号户名")
|
||||||
|
private String accountname;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 帐号类型
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "帐号类型")
|
||||||
|
private Integer accounttype;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 公积金帐号
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "公积金帐号")
|
||||||
|
private String accumfundaccount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 助理
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "助理")
|
||||||
|
private Integer assistantid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工资银行1
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "工资银行1")
|
||||||
|
private Integer bankid1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所属主帐号
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "所属主帐号")
|
||||||
|
private Integer belongto;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入团时间
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "入团时间")
|
||||||
|
private String bememberdate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入党时间
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "入党时间")
|
||||||
|
private String bepartydate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生日
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "生日")
|
||||||
|
private String birthday;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出生地
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "出生地")
|
||||||
|
private String birthplace;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 身份证号码
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "身份证号码")
|
||||||
|
private String certificatenum;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 公司开始日期
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "公司开始日期")
|
||||||
|
private String companystartdate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 公司年限
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "公司年限")
|
||||||
|
private BigDecimal companyworkyear;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所属成本中心
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "所属成本中心")
|
||||||
|
private Integer costcenterid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 国家id
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "国家id")
|
||||||
|
private Integer countryid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 学位
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "学位")
|
||||||
|
private String degree;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所属部门
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "所属部门")
|
||||||
|
private Integer departmentid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 部门名称
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "部门名称")
|
||||||
|
private String departmentname;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 学历
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "学历")
|
||||||
|
private Integer educationlevel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电子邮件
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "电子邮件")
|
||||||
|
private String email;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 合同结束日期
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "合同结束日期")
|
||||||
|
private String enddate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分机
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "分机")
|
||||||
|
private String extphone;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 传真
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "传真")
|
||||||
|
private String fax;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 民族
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "民族")
|
||||||
|
private String folk;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 健康状况
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "健康状况")
|
||||||
|
private String healthinfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 家庭住址
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "家庭住址")
|
||||||
|
private String homeaddress;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否为工会会员
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "是否为工会会员")
|
||||||
|
private String islabouunion;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 职责描述
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "职责描述")
|
||||||
|
private String jobactivitydesc;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 职称
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "职称")
|
||||||
|
private Integer jobcall;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工作级别
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "工作级别")
|
||||||
|
private Integer joblevel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 岗位
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "岗位")
|
||||||
|
private Integer jobtitle;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 岗位名称
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "岗位名称")
|
||||||
|
private String jobtitlename;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 最后登陆日期
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "最后登陆日期")
|
||||||
|
private String lastlogindate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工作地点
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "工作地点")
|
||||||
|
private Integer locationid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 系统登陆帐号
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "系统登陆帐号")
|
||||||
|
private String loginid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 经理
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "经理")
|
||||||
|
private Integer managerid;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所有上级
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "所有上级")
|
||||||
|
private String managerstr;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 婚姻状况
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "婚姻状况")
|
||||||
|
private String maritalstatus;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 手机
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "手机")
|
||||||
|
private String mobile;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 其他电话
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "其他电话")
|
||||||
|
private String mobilecall;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 国籍
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "国籍")
|
||||||
|
private Integer nationality;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 籍贯
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "籍贯")
|
||||||
|
private String nativeplace;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 政治面貌
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "政治面貌")
|
||||||
|
private String policy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 试用期结束日期
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "试用期结束日期")
|
||||||
|
private String probationenddate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 户口
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "户口")
|
||||||
|
private String regresidentplace;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 居住地电话
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "居住地电话")
|
||||||
|
private String residentphone;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 居住地
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "居住地")
|
||||||
|
private String residentplace;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 居住地邮编
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "居住地邮编")
|
||||||
|
private String residentpostcode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用户类别
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "用户类别")
|
||||||
|
private String resourcetype;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 安全级别
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "安全级别")
|
||||||
|
private Integer seclevel;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 性别
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "性别")
|
||||||
|
private String sex;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 合同开始日期
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "合同开始日期")
|
||||||
|
private String startdate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 0:试用<br>1:正式<br>2:临时<br>3:试用延期<br>4:解聘<br>5:离职<br>6:退休<br>7:无效
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = " 0:试用<br>1:正式<br>2:临时<br>3:试用延期<br>4:解聘<br>5:离职<br>6:退休<br>7:无效")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 所属分部1
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "所属分部1")
|
||||||
|
private Integer subcompanyid1;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分部名称
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "分部名称")
|
||||||
|
private String subcompanyname;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电话
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "电话")
|
||||||
|
private String telephone;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 暂住证号码
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "暂住证号码")
|
||||||
|
private String tempresidentnumber;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用工性质
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "用工性质")
|
||||||
|
private Integer usekind;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编号
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "编号")
|
||||||
|
private String workcode;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 办公室
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "办公室")
|
||||||
|
private String workroom;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工作开始日期
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "工作开始日期")
|
||||||
|
private String workstartdate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 工作年限
|
||||||
|
*/
|
||||||
|
@ElogTransform(name = "工作年限")
|
||||||
|
private BigDecimal workyear;
|
||||||
|
|
||||||
|
|
||||||
|
//主键id集合
|
||||||
|
private Collection<Long> ids;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,90 @@
|
||||||
|
package com.engine.salary.mapper.hrm;
|
||||||
|
|
||||||
|
import com.engine.salary.entity.hrm.po.HrmSnapshotPO;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.Collection;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public interface HrmSnapshotMapper {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询所有记录
|
||||||
|
*
|
||||||
|
* @return 返回集合,没有返回空List
|
||||||
|
*/
|
||||||
|
List<HrmSnapshotPO> listAll();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 条件查询
|
||||||
|
*
|
||||||
|
* @return 返回集合,没有返回空List
|
||||||
|
*/
|
||||||
|
List<HrmSnapshotPO> listSome(HrmSnapshotPO hrmSnapshot);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据主键查询
|
||||||
|
*
|
||||||
|
* @param id 主键
|
||||||
|
* @return 返回记录,没有返回null
|
||||||
|
*/
|
||||||
|
HrmSnapshotPO getById(Long id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增,忽略null字段
|
||||||
|
*
|
||||||
|
* @param hrmSnapshot 新增的记录
|
||||||
|
* @return 返回影响行数
|
||||||
|
*/
|
||||||
|
int insertIgnoreNull(HrmSnapshotPO hrmSnapshot);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量插入
|
||||||
|
*
|
||||||
|
* @param hrmSnapshot
|
||||||
|
*/
|
||||||
|
void batchInsert(@Param("collection") List<HrmSnapshotPO> hrmSnapshot);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改,修改所有字段
|
||||||
|
*
|
||||||
|
* @param hrmSnapshot 修改的记录
|
||||||
|
* @return 返回影响行数
|
||||||
|
*/
|
||||||
|
int update(HrmSnapshotPO hrmSnapshot);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改,忽略null字段
|
||||||
|
*
|
||||||
|
* @param hrmSnapshot 修改的记录
|
||||||
|
* @return 返回影响行数
|
||||||
|
*/
|
||||||
|
int updateIgnoreNull(HrmSnapshotPO hrmSnapshot);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除记录
|
||||||
|
*
|
||||||
|
* @param hrmSnapshot 待删除的记录
|
||||||
|
* @return 返回影响行数
|
||||||
|
*/
|
||||||
|
int delete(HrmSnapshotPO hrmSnapshot);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 批量删除记录
|
||||||
|
*
|
||||||
|
* @param ids 主键id集合
|
||||||
|
*/
|
||||||
|
void deleteByIds(@Param("ids") Collection<Long> ids);
|
||||||
|
|
||||||
|
void deleteBySnapshotTime(Date snapshotTime);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询所有记录
|
||||||
|
*
|
||||||
|
* @return 返回集合,没有返回空List
|
||||||
|
*/
|
||||||
|
List<HrmSnapshotPO> currentEmpData();
|
||||||
|
|
||||||
|
}
|
||||||
File diff suppressed because it is too large
Load Diff
|
|
@ -0,0 +1,51 @@
|
||||||
|
package com.engine.salary.timer;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import com.engine.salary.entity.hrm.po.HrmSnapshotPO;
|
||||||
|
import com.engine.salary.mapper.hrm.HrmSnapshotMapper;
|
||||||
|
import com.engine.salary.util.SalaryDateUtil;
|
||||||
|
import com.engine.salary.util.db.IdGenerator;
|
||||||
|
import com.engine.salary.util.db.MapperProxyFactory;
|
||||||
|
import weaver.hrm.User;
|
||||||
|
import weaver.interfaces.schedule.BaseCronJob;
|
||||||
|
|
||||||
|
import java.time.LocalDate;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
public class HrmSnapshotJob extends BaseCronJob {
|
||||||
|
|
||||||
|
private String appointSnapshotTime;
|
||||||
|
|
||||||
|
private HrmSnapshotMapper getHrmSnapshotMapper() {
|
||||||
|
return MapperProxyFactory.getProxy(HrmSnapshotMapper.class);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void execute() {
|
||||||
|
User user = new User();
|
||||||
|
user.setUid(1);
|
||||||
|
user.setLoginid("sysadmin");
|
||||||
|
|
||||||
|
List<HrmSnapshotPO> hrmSnapshotPOS = getHrmSnapshotMapper().currentEmpData();
|
||||||
|
|
||||||
|
Date snapshotTime = StrUtil.isNotBlank(appointSnapshotTime) && SalaryDateUtil.checkDay(appointSnapshotTime) ? SalaryDateUtil.dateStrToLocalDate(appointSnapshotTime) : SalaryDateUtil.localDateToDate(LocalDate.now());
|
||||||
|
|
||||||
|
//先删除当日快照
|
||||||
|
getHrmSnapshotMapper().deleteBySnapshotTime(snapshotTime);
|
||||||
|
|
||||||
|
hrmSnapshotPOS.forEach(hrmSnapshotPO -> {
|
||||||
|
|
||||||
|
hrmSnapshotPO.setId(IdGenerator.generate());
|
||||||
|
hrmSnapshotPO.setSnapshotTime(snapshotTime);
|
||||||
|
|
||||||
|
getHrmSnapshotMapper().insertIgnoreNull(hrmSnapshotPO);
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
System.out.println(hrmSnapshotPOS);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue