组织快照
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