diff --git a/src/weaver/interfaces/kr/cornjob/SyncKqOrgDataJob.java b/src/weaver/interfaces/kr/cornjob/SyncKqOrgDataJob.java index 84ac2f6..83137d7 100644 --- a/src/weaver/interfaces/kr/cornjob/SyncKqOrgDataJob.java +++ b/src/weaver/interfaces/kr/cornjob/SyncKqOrgDataJob.java @@ -91,7 +91,7 @@ public class SyncKqOrgDataJob extends BaseCronJob { } - //TODO 按照指定时间 查询人员数据 + // 按照指定时间 查询人员数据 String sql = "select empno,empname,empsexid,empstatusid,dptsysid,empbirthday,empidno,empgrpdate,empnormaldate,empleavedate,empmobile,emplocaladdr,emphomeaddr from rs_emp "; if (!"all".equals(syncType)) { String currentDate = DateUtil.getCurrentDate(); @@ -210,14 +210,67 @@ public class SyncKqOrgDataJob extends BaseCronJob { updateDataById(dataMap, RESOURCE_TABLE); } - - + String sql = "select gzdno,gzdname,jobno,jobname ,gzjno,gzjname from vrs_emp where empno = '" + resourceData.getEmpno() + "' "; + rs.executeSqlWithDataSource(sql, "KAOQIN"); + if (rs.next()) { + // 岗位名称 + String gzdname = rs.getString("gzdname"); + String jobTitleIdByName = getJobTitleIdByName(rs, gzdname); + // 职务名称 + String jobname = rs.getString("jobname"); + // 职级名称 + String gzjname = rs.getString("gzjname"); + // 更新岗位、职位 + rs.executeUpdate("update hrmresource set jobtitle = ? where id = ?", jobTitleIdByName, id); + // 更新职级名称 + String levelValueByName = getLevelValueByName(rs, gzjname); + rs.executeUpdate("update cus_fielddata set field17 = ? where `SCOPE` ='HrmCustomFieldByInfoType' and SCOPEID = -1 and id = ?", levelValueByName, id); + } // 更新离职日期 rs.executeUpdate("update cus_fielddata set field16 = ? where `SCOPE` ='HrmCustomFieldByInfoType' and SCOPEID =3 and id = ?", resourceData.getEmpleavedate(), id); new ResourceComInfo().updateCache(id); } + /** + * 匹配职级名称 + * + * @param rs + * @param levelName + * @return + */ + private String getLevelValueByName(RecordSet rs, String levelName) { + rs.executeQuery("select selectvalue from cus_selectitem where fieldid =17 and selectname =?", levelName); + if (rs.next()) { + return rs.getString("selectvalue"); + } + return null; + + } + + /** + * 获取岗位ID + * + * @param rs + * @param jobTitleName + * @return + */ + private String getJobTitleIdByName(RecordSet rs, String jobTitleName) { + rs.executeQuery("select id from hrmjobtitles where jobtitlename = ?", jobTitleName); + if (rs.next()) { + return rs.getString("id"); + } + return null; + } + + private String getJobActivitiesIdByName(RecordSet rs, String jobActivityName) { + rs.executeQuery("select id from hrmjobactivities where jobactivityname = ?", jobActivityName); + if (rs.next()) { + return rs.getString("id"); + } + return null; + } + /** * 同步部门 *