package weaver.interfaces.shuzhi.cronjob; import com.time.util.DateUtil; import weaver.conn.RecordSet; import weaver.general.BaseBean; import weaver.general.Util; import weaver.interfaces.schedule.BaseCronJob; import weaver.interfaces.shuzhi.util.WorkflowUtil; import java.util.Date; import java.util.HashMap; import java.util.Map; /** * 员工关系提醒流程-计划任务 *
* 从转正记录(uf_zzjl)、员工调动记录(uf_ddjl)、离职办理查询表单(uf_lzblcxbd), * 1、生效日期早于当前日期且无归档日期,生成流程到人员,手动调整; * 2、生效日期等于当前日期,根据记录数据更新到hrmresource *
* uf_zzjl:生效日期=zzrq(转正日期)、归档日期=gdrq(归档日期) *
* uf_ddjl:生效日期=ddrq(调动日期)、归档日期=gdrq(归档日期) *
* uf_lzblcxbd:生效日期=jhlzrq(uf_lzblcxbd_dt1 计划离职日期)、归档日期=gdrq(归档日期)
*
* @author wangj
* @version 1.00版本
* @Date 2023/7/3
*/
public class RelationshipReminderJob extends BaseCronJob {
@Override
public void execute() {
BaseBean bb = new BaseBean();
String workflowid = bb.getPropValue("relationship", "workflowid");
String id = "";
String lastname = "";
String userid = "";
String sxrq = "";
String gdrq = "";
String date = DateUtil.getCurrentTime("yyyy-MM-dd");
RecordSet rs = new RecordSet();
//转正记录(uf_zzjl) uf_zzjl:生效日期=zzrq(转正日期)、归档日期=gdrq(归档日期)
String sql = "select a.id,b.lastname,a.zzry,a.zzrq,a.gdrq from uf_zzjl a left join hrmresource b on a.zzry = b.id where a.txlcid is null";
rs.execute(sql);
while (rs.next()) {
String zt = "";
id = Util.null2String(rs.getString("id"));
lastname = Util.null2String(rs.getString("lastname"));
sxrq = Util.null2String(rs.getString("zzrq"));
gdrq = Util.null2String(rs.getString("gdrq"));
userid = Util.null2String(rs.getString("zzry"));
if ("".equals(id) || "".equals(sxrq) || "".equals(userid)) {
continue;
}
if (sxrq.equals(date)) {
//2、生效日期等于当前日期,根据记录数据更新到hrmresource
zt = updateHrmStatus(userid, "1");
}
boolean flag = compareDate(sxrq, date);
if ("".equals(gdrq) && flag) {
//生效日期早于当前日期且无归档日期,生成流程到人员,手动调整;
String requestName = "员工关系更新提醒-" + lastname + "-" + date;
Map