获取表字段方法优化

This commit is contained in:
Administrator 2025-05-29 10:04:39 +08:00
parent 10296a40f7
commit 608f99b202
3 changed files with 199 additions and 311 deletions

View File

@ -106,6 +106,7 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
List<String> customFieldDataKeys = customFieldList.stream()
.map(map -> (String) map.get("dataKey"))
.collect(Collectors.toList());
log.error("getEmployeeColumns.customFieldDataKeys:{}", customFieldDataKeys);
/**
* 人力资源-个人信息自定义字段
@ -118,6 +119,19 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
List<String> infcustomFieldDataKeys = infcustomFieldList.stream()
.map(map -> (String) map.get("dataKey"))
.collect(Collectors.toList());
log.error("getEmployeeColumns.infcustomFieldDataKeys:{}", infcustomFieldDataKeys);
//2查询基础信息自定义表
String tableName = "ft_"+personCustomfieldFormid;
String tableUserName = "ft_"+personInfCustomFormid;
log.error("SyncOrganizationPersonInfo.tableName:{}", tableName);
//查询基本信息自定义表字段
List<String> listOfEmployeeCustomizeColumns = getTableColumnsOfTableName(tableName);
log.error("SyncOrganizationPersonInfo1111.listOfEmployeeCustomizeColumns:{}", listOfEmployeeCustomizeColumns);
//查询个人信息自定义表字段
List<String> listOfUserInfoCustomizeColumns = getTableColumnsOfTableName(tableUserName);
log.error("SyncOrganizationPersonInfo.listOfUserInfoCustomizeColumns:{}", listOfUserInfoCustomizeColumns);
//当前时间
// 获取当前时间
@ -143,14 +157,14 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
if(StringUtils.isBlank(glzzyg)){
//新增员工
//1.查询employee表字段
//List<Map<String, Object>> employeeColumns = getTableColumnsOfTableName("employee");
Set<String> listOfEmployee = getTableColumnsOfTableName("eteams.employee");
// List<String> listOfEmployee = employeeColumns.stream()
// .map(map -> map.get("column_name").toString())
// .collect(Collectors.toList());
List<String> listOfEmployee = getTableColumnsOfTableName("employee");
//Set<String> listOfEmployee = getTableColumnsOfTableName("eteams.employee");
log.error("SyncOrganizationPersonInfo.listOfEmployee:{}", listOfEmployee);
// 遍历并移除(不包含则移除掉)
Map<String, Object> employee_new = new HashMap<>();
/**
* 创建不区分大小写的Map
*/
Map<String, Object> employee_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfEmployee) {
if (containsKeyIgnoreCase(employee_info,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -175,15 +189,14 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
employee_new.put("formdata",getIgnoreCase(employee_info, "id"));
employee_new.put("status","normal");
//状态字段换个对应
employee_new.put("PERSONNEL_STATUS",getIgnoreCase(employee_info, "personnel_status_jcl"));
employee_new.put("personnel_status",getIgnoreCase(employee_info, "personnel_status_jcl"));
//关联账号信息表
employee_new.put("user_id",getIgnoreCase(employee_info, "id"));
employee_new.put("create_time",nowData);
employee_new.remove("personnel_status");//多列
//employee_new.put("UPDATE_TIME",nowData);
employee_new.put("update_time",nowData);
cleanUpTime(employee_new);
//移除可能为null的数据
//employee_new.entrySet().removeIf(entry -> entry.getValue() == null);
employee_new.entrySet().removeIf(entry -> entry.getValue() == null);
log.error("SyncOrganizationPersonInfo.employee_info:{}", employee_info);
//插入数据到employee表
log.error("SyncOrganizationPersonInfo.employee_new:{}", employee_new);
@ -209,15 +222,16 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
}
log.error("SyncOrganizationPersonInfo.yggh:{}", yggh);
code = insert("eteams.employee",employee_new);
//2查询基础信息自定义表
String tableName = "ft_"+personCustomfieldFormid;
String tableUserName = "ft_"+personInfCustomFormid;
log.error("SyncOrganizationPersonInfo.tableName:{}", tableName);
// 遍历并移除(不包含则移除掉)
Map<String, Object> employeeCustomize_new = new HashMap<>();
for (String key : customFieldDataKeys) {
Map<String, Object> employeeCustomize_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfEmployeeCustomizeColumns) {
if (containsKeyIgnoreCase(employee_info,key)&&getIgnoreCase(employee_info, key)!=null) {
employeeCustomize_new.put(key,getIgnoreCase(employee_info, key));
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)||"FT_STATUS".equalsIgnoreCase(key)){
employeeCustomize_new.put(key,"0");
}else {
employeeCustomize_new.put(key,getIgnoreCase(employee_info, key));
}
}
}
//组装几个必填字段
@ -229,14 +243,14 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
cleanUpTime(employeeCustomize_new);
employeeCustomize_new.remove("hiredate");
//移除可能为null的数据
//employeeCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null);
employeeCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null||"".equalsIgnoreCase(String.valueOf(entry.getValue())));
//插入数据到基础信息表的自定义表
log.error("SyncOrganizationPersonInfo.employeeCustomize_new:{}", employeeCustomize_new);
code2 = insert(tableName,employeeCustomize_new);
//3查询个人信息表
Set<String> listOfUserInfoColumns = getTableColumnsOfTableName("hr_userinfo");
List<String> listOfUserInfoColumns = getTableColumnsOfTableName("hr_userinfo");
// 遍历并移除(不包含则移除掉)
Map<String, Object> userInfo_new = new HashMap<>();
Map<String, Object> userInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
log.error("SyncOrganizationPersonInfo.listOfUserInfoColumns:{}", listOfUserInfoColumns);
for (String key : listOfUserInfoColumns) {
if (containsKeyIgnoreCase(employee_info,key)) {
@ -269,16 +283,21 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
userInfo_new.put("update_time",nowData);
cleanUpTime(userInfo_new);
userInfo_new.remove("hiredate");
userInfo_new.remove("household_type");
//userInfo_new.remove("household_type");
//userInfo_new.remove("POLITICS_STATUS");
//移除可能为null的数据
userInfo_new.entrySet().removeIf(entry -> entry.getValue() == null);
//插入
log.error("SyncOrganizationPersonInfo.userInfo_new:{}", userInfo_new);
code3 = insert("hr_userinfo",userInfo_new);
Map<String, Object> userInfoCustomize_new = new HashMap<>();
for (String key : infcustomFieldDataKeys) {
Map<String, Object> userInfoCustomize_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfUserInfoCustomizeColumns) {
if (containsKeyIgnoreCase(employee_info,key)&&getIgnoreCase(employee_info, key)!=null) {
userInfoCustomize_new.put(key,getIgnoreCase(employee_info, key));
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)||"FT_STATUS".equalsIgnoreCase(key)){
userInfoCustomize_new.put(key,"0");
}else {
userInfoCustomize_new.put(key,getIgnoreCase(employee_info, key));
}
}
}
//组装几个必填字段
@ -289,7 +308,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
userInfoCustomize_new.put("TENANT_KEY",getIgnoreCase(employee_info, "TENANT_KEY"));
userInfoCustomize_new.remove("hiredate");
//移除可能为null的数据
//userInfoCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null);
userInfoCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null);
cleanUpTime(userInfoCustomize_new);
log.error("SyncOrganizationPersonInfo.userInfoCustomize_new:{}", userInfoCustomize_new);
code4 = insert(tableUserName,userInfoCustomize_new);
/**
@ -322,9 +342,9 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
cleanUpTime(employee_info);
//employee_info
//1.查询employee表字段
Set<String> listOfEmployee = getTableColumnsOfTableName("eteams.employee");
List<String> listOfEmployee = getTableColumnsOfTableName("employee");
// 遍历并移除(不包含则移除掉)
Map<String, Object> employee_new = new HashMap<>();
Map<String, Object> employee_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfEmployee) {
if (containsKeyIgnoreCase(employee_info,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -345,36 +365,37 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
}
//key为id的要移除掉防止串改组织人员id 导致对应不上员工关系表的:关联组织人员id
employee_new.remove("id");
//employee_new.entrySet().removeIf(entry -> entry.getValue() == null);
employee_new.entrySet().removeIf(entry -> entry.getValue() == null);
log.error("SyncOrganizationPersonInfo3333.employee_info:{}", employee_info);
log.error("SyncOrganizationPersonInfo3333.employee_new:{}", employee_new);
//更新employee表数据
code = update("eteams.employee", employee_new, "id", glzzyg);
//2查询基础信息自定义表
String tableName = "ft_"+personCustomfieldFormid;
String tableUserName = "ft_"+personInfCustomFormid;
log.error("SyncOrganizationPersonInfo333.tableName:{}", tableName);
// 遍历并移除(不包含则移除掉)
Map<String, Object> employeeCustomize_new = new HashMap<>();
for (String key : customFieldDataKeys) {
Map<String, Object> employeeCustomize_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfEmployeeCustomizeColumns) {
if (containsKeyIgnoreCase(employee_info,key)&&getIgnoreCase(employee_info, key)!=null) {
employeeCustomize_new.put(key,getIgnoreCase(employee_info, key));
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)||"FT_STATUS".equalsIgnoreCase(key)){
employeeCustomize_new.put(key,"0");
}else {
employeeCustomize_new.put(key,getIgnoreCase(employee_info, key));
}
}
}
//根据glzzid查询基础数据表的formdata
String formdata =getEmployeeFormData(glzzyg);
log.error("SyncOrganizationPersonInfo444.formdata:{}", formdata);
employeeCustomize_new.remove("hiredate");
//employeeCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null);
employeeCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null);
cleanUpTime(employeeCustomize_new);
//更新数据到基础信息表的自定义表
log.error("SyncOrganizationPersonInfo555.employeeCustomize_new:{}", employeeCustomize_new);
if(StringUtils.isNotBlank(formdata)){
code2 = update(tableName,employeeCustomize_new,"FORM_DATA_ID",formdata);
}
//3查询个人信息表
Set<String> listOfUserInfoColumns = getTableColumnsOfTableName("hr_userinfo");
List<String> listOfUserInfoColumns = getTableColumnsOfTableName("hr_userinfo");
// 遍历并移除(不包含则移除掉)
Map<String, Object> userInfo_new = new HashMap<>();
Map<String, Object> userInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfUserInfoColumns) {
if (containsKeyIgnoreCase(employee_info,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -402,12 +423,17 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
//更新个人信息表
log.error("SyncOrganizationPersonInfo666.userInfo_new:{}", userInfo_new);
userInfo_new.remove("hiredate");
//userInfo_new.entrySet().removeIf(entry -> entry.getValue() == null);
userInfo_new.entrySet().removeIf(entry -> entry.getValue() == null);
cleanUpTime(userInfo_new);
code3 = update("hr_userinfo",userInfo_new,"USER",glzzyg);
Map<String, Object> userInfoCustomize_new = new HashMap<>();
for (String key : infcustomFieldDataKeys) {
Map<String, Object> userInfoCustomize_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfUserInfoCustomizeColumns) {
if (containsKeyIgnoreCase(employee_info,key)&&getIgnoreCase(employee_info, key)!=null) {
userInfoCustomize_new.put(key,getIgnoreCase(employee_info, key));
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)||"FT_STATUS".equalsIgnoreCase(key)){
userInfoCustomize_new.put(key,"0");
}else{
userInfoCustomize_new.put(key,getIgnoreCase(employee_info, key));
}
}
}
//查询个人信息表的FORM_DATA
@ -415,7 +441,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
log.error("SyncOrganizationPersonInfo777.FORM_DATA:{}", FORM_DATA);
log.error("SyncOrganizationPersonInfo888.userInfoCustomize_new:{}", userInfoCustomize_new);
userInfoCustomize_new.remove("hiredate");
//userInfoCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null);
userInfoCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null);
cleanUpTime(userInfoCustomize_new);
if(StringUtils.isNotBlank(FORM_DATA)){
code4 = update(tableUserName,userInfoCustomize_new,"FORM_DATA_ID",FORM_DATA);
}
@ -452,11 +479,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
* */
String gzsql = "select * from uf_jcl_emp_gzll where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> gzllInfo = getYgxxDetailInfo(gzsql);
Set<String> listOfgzllColumns = getTableColumnsOfTableName("hr_employment_record");
List<String> listOfgzllColumns = getTableColumnsOfTableName("hr_employment_record");
log.error("getYgxxDetailInfo.gzllInfo:{}", gzllInfo);
log.error("getYgxxDetailInfo.listOfgzllColumns:{}", listOfgzllColumns);
for (Map<String, Object> map : gzllInfo) {
Map<String, Object> gzllInfo_new = new HashMap<>();
Map<String, Object> gzllInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfgzllColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -477,11 +504,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
* */
String jysql = "select * from uf_jcl_emp_jyjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> jyjlInfo = getYgxxDetailInfo(jysql);
Set<String> listOfjyjlColumns = getTableColumnsOfTableName("hr_education");
List<String> listOfjyjlColumns = getTableColumnsOfTableName("hr_education");
log.error("getYgxxDetailInfo.jyjlInfo:{}", jyjlInfo);
log.error("getYgxxDetailInfo.listOfjyjlColumns:{}", listOfjyjlColumns);
for (Map<String, Object> map : jyjlInfo) {
Map<String, Object> jyjlInfo_new = new HashMap<>();
Map<String, Object> jyjlInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjyjlColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -502,10 +529,10 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
* */
String jtxxsql = "select * from uf_jcl_emp_jtxx where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> jtxxInfo = getYgxxDetailInfo(jtxxsql);
Set<String> listOfjtxxColumns = getTableColumnsOfTableName("hr_family");
List<String> listOfjtxxColumns = getTableColumnsOfTableName("hr_family");
log.error("getYgxxDetailInfo.jtxxInfo:{}", jtxxInfo);
for (Map<String, Object> map : jtxxInfo) {
Map<String, Object> jtxxInfo_new = new HashMap<>();
Map<String, Object> jtxxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjtxxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -526,11 +553,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
* */
String bzsql = "select * from uf_jcl_emp_bzyjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> bzInfo = getYgxxDetailInfo(bzsql);
Set<String> listOfbzColumns = getTableColumnsOfTableName("hr_rewards_before");
List<String> listOfbzColumns = getTableColumnsOfTableName("hr_rewards_before");
log.error("getYgxxDetailInfo.bzInfo:{}", bzInfo);
log.error("getYgxxDetailInfo.listOfbzColumns:{}", listOfbzColumns);
for (Map<String, Object> map : bzInfo) {
Map<String, Object> bzInfo_new = new HashMap<>();
Map<String, Object> bzInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfbzColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -551,11 +578,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
* */
String pxsql = "select * from uf_jcl_emp_pxjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> pxInfo = getYgxxDetailInfo(pxsql);
Set<String> listOfpxColumns = getTableColumnsOfTableName("hr_train");
List<String> listOfpxColumns = getTableColumnsOfTableName("hr_train");
log.error("getYgxxDetailInfo.pxInfo:{}", pxInfo);
log.error("getYgxxDetailInfo.listOfpxColumns:{}", listOfpxColumns);
for (Map<String, Object> map : pxInfo) {
Map<String, Object> pxInfo_new = new HashMap<>();
Map<String, Object> pxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfpxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -576,11 +603,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
* */
String yysql = "select * from uf_jcl_emp_yynl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> yyInfo = getYgxxDetailInfo(yysql);
Set<String> listOfyyColumns = getTableColumnsOfTableName("hr_language");
List<String> listOfyyColumns = getTableColumnsOfTableName("hr_language");
log.error("getYgxxDetailInfo.yyInfo:{}", yyInfo);
log.error("getYgxxDetailInfo.listOfyyColumns:{}", listOfyyColumns);
for (Map<String, Object> map : yyInfo) {
Map<String, Object> yyInfo_new = new HashMap<>();
Map<String, Object> yyInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfyyColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -601,11 +628,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
* */
String qwsql = "select * from uf_jcl_emp_qwjgzgrz where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> qwInfo = getYgxxDetailInfo(qwsql);
Set<String> listOfqwColumns = getTableColumnsOfTableName("hr_certification");
List<String> listOfqwColumns = getTableColumnsOfTableName("hr_certification");
log.error("getYgxxDetailInfo.qwInfo:{}", qwInfo);
log.error("getYgxxDetailInfo.listOfqwColumns:{}", listOfqwColumns);
for (Map<String, Object> map : qwInfo) {
Map<String, Object> qwInfo_new = new HashMap<>();
Map<String, Object> qwInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfqwColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -638,11 +665,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
* */
String gzsql = "select * from uf_jcl_emp_gzll where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> gzllInfo = getYgxxDetailInfo(gzsql);
Set<String> listOfgzllColumns = getTableColumnsOfTableName("hr_employment_record");
List<String> listOfgzllColumns = getTableColumnsOfTableName("hr_employment_record");
log.error("getYgxxDetailInfo.gzllInfo:{}", gzllInfo);
log.error("getYgxxDetailInfo.listOfgzllColumns:{}", listOfgzllColumns);
for (Map<String, Object> map : gzllInfo) {
Map<String, Object> gzllInfo_new = new HashMap<>();
Map<String, Object> gzllInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfgzllColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -670,11 +697,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
deleteDetailData(sql);
String jysql = "select * from uf_jcl_emp_jyjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> jyjlInfo = getYgxxDetailInfo(jysql);
Set<String> listOfjyjlColumns = getTableColumnsOfTableName("hr_education");
List<String> listOfjyjlColumns = getTableColumnsOfTableName("hr_education");
log.error("getYgxxDetailInfo.jyjlInfo0172:{}", jyjlInfo);
log.error("getYgxxDetailInfo.listOfjyjlColumns:{}", listOfjyjlColumns);
for (Map<String, Object> map : jyjlInfo) {
Map<String, Object> jyjlInfo_new = new HashMap<>();
Map<String, Object> jyjlInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjyjlColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -702,10 +729,10 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
deleteDetailData(sql);
String jtxxsql = "select * from uf_jcl_emp_jtxx where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> jtxxInfo = getYgxxDetailInfo(jtxxsql);
Set<String> listOfjtxxColumns = getTableColumnsOfTableName("hr_family");
List<String> listOfjtxxColumns = getTableColumnsOfTableName("hr_family");
log.error("getYgxxDetailInfo.jtxxInfo:{}", jtxxInfo);
for (Map<String, Object> map : jtxxInfo) {
Map<String, Object> jtxxInfo_new = new HashMap<>();
Map<String, Object> jtxxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjtxxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -733,11 +760,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
deleteDetailData(sql);
String bzsql = "select * from uf_jcl_emp_bzyjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> bzInfo = getYgxxDetailInfo(bzsql);
Set<String> listOfbzColumns = getTableColumnsOfTableName("hr_rewards_before");
List<String> listOfbzColumns = getTableColumnsOfTableName("hr_rewards_before");
log.error("getYgxxDetailInfo.bzInfo:{}", bzInfo);
log.error("getYgxxDetailInfo.listOfbzColumns:{}", listOfbzColumns);
for (Map<String, Object> map : bzInfo) {
Map<String, Object> bzInfo_new = new HashMap<>();
Map<String, Object> bzInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfbzColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -765,11 +792,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
deleteDetailData(sql);
String pxsql = "select * from uf_jcl_emp_pxjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> pxInfo = getYgxxDetailInfo(pxsql);
Set<String> listOfpxColumns = getTableColumnsOfTableName("hr_train");
List<String> listOfpxColumns = getTableColumnsOfTableName("hr_train");
log.error("getYgxxDetailInfo.pxInfo:{}", pxInfo);
log.error("getYgxxDetailInfo.listOfpxColumns:{}", listOfpxColumns);
for (Map<String, Object> map : pxInfo) {
Map<String, Object> pxInfo_new = new HashMap<>();
Map<String, Object> pxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfpxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -797,11 +824,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
deleteDetailData(sql);
String yysql = "select * from uf_jcl_emp_yynl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> yyInfo = getYgxxDetailInfo(yysql);
Set<String> listOfyyColumns = getTableColumnsOfTableName("hr_language");
List<String> listOfyyColumns = getTableColumnsOfTableName("hr_language");
log.error("getYgxxDetailInfo.yyInfo:{}", yyInfo);
log.error("getYgxxDetailInfo.listOfyyColumns:{}", listOfyyColumns);
for (Map<String, Object> map : yyInfo) {
Map<String, Object> yyInfo_new = new HashMap<>();
Map<String, Object> yyInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfyyColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -829,11 +856,11 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
deleteDetailData(sql);
String qwsql = "select * from uf_jcl_emp_qwjgzgrz where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> qwInfo = getYgxxDetailInfo(qwsql);
Set<String> listOfqwColumns = getTableColumnsOfTableName("hr_certification");
List<String> listOfqwColumns = getTableColumnsOfTableName("hr_certification");
log.error("getYgxxDetailInfo.qwInfo:{}", qwInfo);
log.error("getYgxxDetailInfo.listOfqwColumns:{}", listOfqwColumns);
for (Map<String, Object> map : qwInfo) {
Map<String, Object> qwInfo_new = new HashMap<>();
Map<String, Object> qwInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfqwColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -868,176 +895,6 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
} while (randomNumber < 100000000000000000L || randomNumber > 999999999999999999L);
return String.valueOf(randomNumber);
}
/**
* 更新所有员工信息明细表
* @return
*/
public void updateAllYgxxDetailInfo_feichu(String ygxxid){
log.error("updateAllYgxxDetailInfo.ygxxid:{}", ygxxid);
/**
* 工作履历表
* */
//先删除原来记录
String sql = "update hr_employment_record set delete_type = '1',update_time ='" + nowData + "' where USER_ID = '" + ygxxid + "' ";
//deleteDetailData(sql);
String gzsql = "select * from uf_jcl_emp_gzll where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> gzllInfo = getYgxxDetailInfo(gzsql);
Set<String> listOfgzllColumns = getTableColumnsOfTableName("hr_employment_record");
log.error("updateAllYgxxDetailInfo.gzllInfo:{}", gzllInfo);
log.error("updateAllYgxxDetailInfo.listOfgzllColumns:{}", listOfgzllColumns);
for (Map<String, Object> map : gzllInfo) {
Map<String, Object> gzllInfo_new = new HashMap<>();
for (String key : listOfgzllColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
gzllInfo_new.put(key,"0");
}else{
gzllInfo_new.put(key,getIgnoreCase(map, key));
}
}
cleanUpTime(gzllInfo_new);
}
//更新组织工作履历表
update("hr_employment_record",gzllInfo_new,"id",getIgnoreCase(map, "id"));
}
/**
* 教育经历表
* */
String jysql = "select * from uf_jcl_emp_jyjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> jyjlInfo = getYgxxDetailInfo(jysql);
Set<String> listOfjyjlColumns = getTableColumnsOfTableName("hr_education");
log.error("updateAllYgxxDetailInfo.jyjlInfo:{}", jyjlInfo);
log.error("updateAllYgxxDetailInfo.listOfjyjlColumns:{}", listOfjyjlColumns);
for (Map<String, Object> map : jyjlInfo) {
Map<String, Object> jyjlInfo_new = new HashMap<>();
for (String key : listOfjyjlColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
jyjlInfo_new.put(key,"0");
}else{
jyjlInfo_new.put(key,getIgnoreCase(map, key));
}
}
cleanUpTime(jyjlInfo_new);
}
//更新教育经历表
update("hr_education",jyjlInfo_new,"id",getIgnoreCase(map, "id"));
}
/**
* 家庭信息表
* */
String jtxxsql = "select * from uf_jcl_emp_jtxx where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> jtxxInfo = getYgxxDetailInfo(jtxxsql);
Set<String> listOfjtxxColumns = getTableColumnsOfTableName("hr_family");
log.error("updateAllYgxxDetailInfo.jtxxInfo:{}", jtxxInfo);
for (Map<String, Object> map : jtxxInfo) {
Map<String, Object> jtxxInfo_new = new HashMap<>();
for (String key : listOfjtxxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
jtxxInfo_new.put(key,"0");
}else{
jtxxInfo_new.put(key,getIgnoreCase(map, key));
}
}
cleanUpTime(jtxxInfo_new);
}
//更新家庭信息表
update("hr_family",jtxxInfo_new,"id",getIgnoreCase(map, "id"));
}
/**
* 表彰与奖励
* */
String bzsql = "select * from uf_jcl_emp_bzyjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> bzInfo = getYgxxDetailInfo(bzsql);
Set<String> listOfbzColumns = getTableColumnsOfTableName("hr_rewards_before");
log.error("updateAllYgxxDetailInfo.bzInfo:{}", bzInfo);
log.error("updateAllYgxxDetailInfo.listOfbzColumns:{}", listOfbzColumns);
for (Map<String, Object> map : bzInfo) {
Map<String, Object> bzInfo_new = new HashMap<>();
for (String key : listOfbzColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
bzInfo_new.put(key,"0");
}else{
bzInfo_new.put(key,getIgnoreCase(map, key));
}
}
cleanUpTime(bzInfo_new);
}
//更新表彰表
update("hr_rewards_before",bzInfo_new,"id",getIgnoreCase(map, "id"));
}
/**
* 培训经历
* */
String pxsql = "select * from uf_jcl_emp_pxjl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> pxInfo = getYgxxDetailInfo(pxsql);
Set<String> listOfpxColumns = getTableColumnsOfTableName("hr_train");
log.error("updateAllYgxxDetailInfo.pxInfo:{}", pxInfo);
log.error("updateAllYgxxDetailInfo.listOfpxColumns:{}", listOfpxColumns);
for (Map<String, Object> map : pxInfo) {
Map<String, Object> pxInfo_new = new HashMap<>();
for (String key : listOfpxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
pxInfo_new.put(key,"0");
}else{
pxInfo_new.put(key,getIgnoreCase(map, key));
}
}
cleanUpTime(pxInfo_new);
}
//更新培训表
update("hr_train",pxInfo_new,"id",getIgnoreCase(map, "id"));
}
/**
* 语言能力
* */
String yysql = "select * from uf_jcl_emp_yynl where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> yyInfo = getYgxxDetailInfo(yysql);
Set<String> listOfyyColumns = getTableColumnsOfTableName("hr_language");
log.error("updateAllYgxxDetailInfo.yyInfo:{}", yyInfo);
log.error("updateAllYgxxDetailInfo.listOfyyColumns:{}", listOfyyColumns);
for (Map<String, Object> map : yyInfo) {
Map<String, Object> yyInfo_new = new HashMap<>();
for (String key : listOfyyColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
yyInfo_new.put(key,"0");
}else{
yyInfo_new.put(key,getIgnoreCase(map, key));
}
}
cleanUpTime(yyInfo_new);
}
//更新语言能力表
update("hr_language",yyInfo_new,"id",getIgnoreCase(map, "id"));
}
/**
* 权威机构资格
* */
String qwsql = "select * from uf_jcl_emp_qwjgzgrz where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
List<Map<String, Object>> qwInfo = getYgxxDetailInfo(qwsql);
Set<String> listOfqwColumns = getTableColumnsOfTableName("hr_certification");
log.error("updateAllYgxxDetailInfo.qwInfo:{}", qwInfo);
log.error("updateAllYgxxDetailInfo.listOfqwColumns:{}", listOfqwColumns);
for (Map<String, Object> map : qwInfo) {
Map<String, Object> qwInfo_new = new HashMap<>();
for (String key : listOfqwColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
qwInfo_new.put(key,"0");
}else{
qwInfo_new.put(key,getIgnoreCase(map, key));
}
}
cleanUpTime(qwInfo_new);
}
//更新权威机构表
update("hr_certification",qwInfo_new,"id",getIgnoreCase(map, "id"));
}
}
/**
* 根据明细表名称和关联id查询员工信息明细表数据
@ -1355,16 +1212,28 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
return form_data;
}
public Set<String> getTableColumnsOfTableName(String tableName) {
//OracleSELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE TABLE_NAME ='" + tableName + "' ";
//databaseUtils.getDataSourceList()
//String sql = "SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '" + tableName + "' ";
String sql = "SELECT * FROM " + tableName;
log.error("getTableColumnsOfTableName222.sql:{}", sql);
public List<String> getTableColumnsOfTableName(String tableName) {
String sql = "";
//String sql = "SELECT * FROM " + tableName;
//查询数据库类型
String databaseId = DatabaseUtil.getDatabaseId();
log.info("getTableColumnsOfTableName-databaseId{}",databaseId);
if(databaseId.equalsIgnoreCase("oracle")){
//oracle
sql = "SELECT column_name FROM ALL_TAB_COLUMNS WHERE TABLE_NAME ='" + tableName + "' ";
}else{
//mysql
sql = "SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '" + tableName + "' ";
}
log.error("getTableColumnsOfTableName.sql:{}", sql);
Map<String, Object> rs = databaseUtils.execute("LOGIC", "weaver-ebuilder-form-service", sql);
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(rs);
log.error("getTableColumnsOfTableName.recordList:{}", recordList);
return extractFieldNames(recordList);
List<String> listOfColumn = recordList.stream()
.map(map -> map.get("column_name").toString())
.collect(Collectors.toList());
return listOfColumn;
//return extractFieldNames(recordList);
}
public Set<String> extractFieldNames(List<Map<String, Object>> recordList) {

View File

@ -2,10 +2,6 @@ package com.weaver.seconddev.jcl.organization.esb;
import com.alibaba.nacos.common.utils.CollectionUtils;
import com.weaver.common.base.entity.result.WeaResult;
import com.weaver.common.cache.tablecache.impl.ComInfoCache;
import com.weaver.common.distribution.genid.IdGenerator;
import com.weaver.common.hrm.cache.HrmDepartmentComInfo;
import com.weaver.common.hrm.cache.HrmPositionComInfo;
import com.weaver.common.mybatis.util.DatabaseUtil;
import com.weaver.esb.api.rpc.EsbServerlessRpcRemoteInterface;
import com.weaver.seconddev.jcl.organization.util.DatabaseUtils;
@ -18,7 +14,6 @@ import org.springframework.stereotype.Service;
import java.security.SecureRandom;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
@ -459,10 +454,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> gzllInfo = getYgxxDetailInfo(gzsql);
log.error("getYgxxDetailInfo.gzllInfo:{}", gzllInfo);
if(CollectionUtils.isNotEmpty(gzllInfo)){
Set<String> listOfgzllColumns = getTableColumnsOfTableName("uf_jcl_emp_gzll");
List<String> listOfgzllColumns = getTableColumnsOfTableName("uf_jcl_emp_gzll");
log.error("getYgxxDetailInfo.listOfgzllColumns:{}", listOfgzllColumns);
for (Map<String, Object> map : gzllInfo) {
Map<String, Object> gzllInfo_new = new HashMap<>();
Map<String, Object> gzllInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfgzllColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -489,10 +484,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> jyjlInfo = getYgxxDetailInfo(jysql);
log.error("getYgxxDetailInfo.jyjlInfo:{}", jyjlInfo);
if(CollectionUtils.isNotEmpty(jyjlInfo)){
Set<String> listOfjyjlColumns = getTableColumnsOfTableName("uf_jcl_emp_jyjl");
List<String> listOfjyjlColumns = getTableColumnsOfTableName("uf_jcl_emp_jyjl");
log.error("getYgxxDetailInfo.listOfjyjlColumns:{}", listOfjyjlColumns);
for (Map<String, Object> map : jyjlInfo) {
Map<String, Object> jyjlInfo_new = new HashMap<>();
Map<String, Object> jyjlInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjyjlColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -519,10 +514,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> jtxxInfo = getYgxxDetailInfo(jtxxsql);
log.error("getYgxxDetailInfo.jtxxInfo:{}", jtxxInfo);
if(CollectionUtils.isNotEmpty(jtxxInfo)){
Set<String> listOfjtxxColumns = getTableColumnsOfTableName("uf_jcl_emp_jtxx");
List<String> listOfjtxxColumns = getTableColumnsOfTableName("uf_jcl_emp_jtxx");
log.error("getYgxxDetailInfo.listOfjtxxColumns:{}", listOfjtxxColumns);
for (Map<String, Object> map : jtxxInfo) {
Map<String, Object> jtxxInfo_new = new HashMap<>();
Map<String, Object> jtxxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjtxxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -549,10 +544,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> bzInfo = getYgxxDetailInfo(bzsql);
log.error("getYgxxDetailInfo.bzInfo:{}", bzInfo);
if(CollectionUtils.isNotEmpty(bzInfo)){
Set<String> listOfbzColumns = getTableColumnsOfTableName("uf_jcl_emp_bzyjl");
List<String> listOfbzColumns = getTableColumnsOfTableName("uf_jcl_emp_bzyjl");
log.error("getYgxxDetailInfo.listOfbzColumns:{}", listOfbzColumns);
for (Map<String, Object> map : bzInfo) {
Map<String, Object> bzInfo_new = new HashMap<>();
Map<String, Object> bzInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfbzColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -579,10 +574,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> pxInfo = getYgxxDetailInfo(pxsql);
log.error("getYgxxDetailInfo.pxInfo:{}", pxInfo);
if(CollectionUtils.isNotEmpty(pxInfo)){
Set<String> listOfpxColumns = getTableColumnsOfTableName("uf_jcl_emp_pxjl");
List<String> listOfpxColumns = getTableColumnsOfTableName("uf_jcl_emp_pxjl");
log.error("getYgxxDetailInfo.listOfpxColumns:{}", listOfpxColumns);
for (Map<String, Object> map : pxInfo) {
Map<String, Object> pxInfo_new = new HashMap<>();
Map<String, Object> pxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfpxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -609,10 +604,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> yyInfo = getYgxxDetailInfo(yysql);
log.error("getYgxxDetailInfo.yyInfo:{}", yyInfo);
if(CollectionUtils.isNotEmpty(yyInfo)){
Set<String> listOfyyColumns = getTableColumnsOfTableName("uf_jcl_emp_yynl");
List<String> listOfyyColumns = getTableColumnsOfTableName("uf_jcl_emp_yynl");
log.error("getYgxxDetailInfo.listOfyyColumns:{}", listOfyyColumns);
for (Map<String, Object> map : yyInfo) {
Map<String, Object> yyInfo_new = new HashMap<>();
Map<String, Object> yyInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfyyColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -639,10 +634,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> qwInfo = getYgxxDetailInfo(qwsql);
log.error("getYgxxDetailInfo.qwInfo:{}", qwInfo);
if(CollectionUtils.isNotEmpty(qwInfo)){
Set<String> listOfqwColumns = getTableColumnsOfTableName("uf_jcl_emp_qwjgzgrz");
List<String> listOfqwColumns = getTableColumnsOfTableName("uf_jcl_emp_qwjgzgrz");
log.error("getYgxxDetailInfo.listOfqwColumns:{}", listOfqwColumns);
for (Map<String, Object> map : qwInfo) {
Map<String, Object> qwInfo_new = new HashMap<>();
Map<String, Object> qwInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfqwColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -680,10 +675,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> gzllInfo = getYgxxDetailInfo(gzsql);
log.error("updateAllXxbgDetailInfo.gzllInfo:{}", gzllInfo);
if(CollectionUtils.isNotEmpty(gzllInfo)){
Set<String> listOfgzllColumns = getTableColumnsOfTableName("uf_jcl_emp_gzll");
List<String> listOfgzllColumns = getTableColumnsOfTableName("uf_jcl_emp_gzll");
log.error("updateAllXxbgDetailInfo.listOfgzllColumns:{}", listOfgzllColumns);
for (Map<String, Object> map : gzllInfo) {
Map<String, Object> gzllInfo_new = new HashMap<>();
Map<String, Object> gzllInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfgzllColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -715,10 +710,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> jyjlInfo = getYgxxDetailInfo(jysql);
log.error("getYgxxDetailInfo.jyjlInfo0172:{}", jyjlInfo);
if(CollectionUtils.isNotEmpty(jyjlInfo)){
Set<String> listOfjyjlColumns = getTableColumnsOfTableName("uf_jcl_emp_jyjl");
List<String> listOfjyjlColumns = getTableColumnsOfTableName("uf_jcl_emp_jyjl");
log.error("getYgxxDetailInfo.listOfjyjlColumns:{}", listOfjyjlColumns);
for (Map<String, Object> map : jyjlInfo) {
Map<String, Object> jyjlInfo_new = new HashMap<>();
Map<String, Object> jyjlInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjyjlColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -750,10 +745,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> jtxxInfo = getYgxxDetailInfo(jtxxsql);
log.error("getYgxxDetailInfo.jtxxInfo:{}", jtxxInfo);
if(CollectionUtils.isNotEmpty(jtxxInfo)){
Set<String> listOfjtxxColumns = getTableColumnsOfTableName("uf_jcl_emp_jtxx");
List<String> listOfjtxxColumns = getTableColumnsOfTableName("uf_jcl_emp_jtxx");
log.error("getYgxxDetailInfo.listOfjtxxColumns:{}", listOfjtxxColumns);
for (Map<String, Object> map : jtxxInfo) {
Map<String, Object> jtxxInfo_new = new HashMap<>();
Map<String, Object> jtxxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjtxxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -785,10 +780,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> bzInfo = getYgxxDetailInfo(bzsql);
log.error("getYgxxDetailInfo.bzInfo:{}", bzInfo);
if(CollectionUtils.isNotEmpty(bzInfo)){
Set<String> listOfbzColumns = getTableColumnsOfTableName("uf_jcl_emp_bzyjl");
List<String> listOfbzColumns = getTableColumnsOfTableName("uf_jcl_emp_bzyjl");
log.error("getYgxxDetailInfo.listOfbzColumns:{}", listOfbzColumns);
for (Map<String, Object> map : bzInfo) {
Map<String, Object> bzInfo_new = new HashMap<>();
Map<String, Object> bzInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfbzColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -820,10 +815,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> pxInfo = getYgxxDetailInfo(pxsql);
log.error("getYgxxDetailInfo.pxInfo:{}", pxInfo);
if(CollectionUtils.isNotEmpty(pxInfo)){
Set<String> listOfpxColumns = getTableColumnsOfTableName("uf_jcl_emp_pxjl");
List<String> listOfpxColumns = getTableColumnsOfTableName("uf_jcl_emp_pxjl");
log.error("getYgxxDetailInfo.listOfpxColumns:{}", listOfpxColumns);
for (Map<String, Object> map : pxInfo) {
Map<String, Object> pxInfo_new = new HashMap<>();
Map<String, Object> pxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfpxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -855,10 +850,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> yyInfo = getYgxxDetailInfo(yysql);
log.error("getYgxxDetailInfo.yyInfo:{}", yyInfo);
if(CollectionUtils.isNotEmpty(yyInfo)){
Set<String> listOfyyColumns = getTableColumnsOfTableName("uf_jcl_emp_yynl");
List<String> listOfyyColumns = getTableColumnsOfTableName("uf_jcl_emp_yynl");
log.error("getYgxxDetailInfo.listOfyyColumns:{}", listOfyyColumns);
for (Map<String, Object> map : yyInfo) {
Map<String, Object> yyInfo_new = new HashMap<>();
Map<String, Object> yyInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfyyColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -890,10 +885,10 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
List<Map<String, Object>> qwInfo = getYgxxDetailInfo(qwsql);
log.error("getYgxxDetailInfo.qwInfo:{}", qwInfo);
if(CollectionUtils.isNotEmpty(qwInfo)){
Set<String> listOfqwColumns = getTableColumnsOfTableName("uf_jcl_emp_qwjgzgrz");
List<String> listOfqwColumns = getTableColumnsOfTableName("uf_jcl_emp_qwjgzgrz");
log.error("getYgxxDetailInfo.listOfqwColumns:{}", listOfqwColumns);
for (Map<String, Object> map : qwInfo) {
Map<String, Object> qwInfo_new = new HashMap<>();
Map<String, Object> qwInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfqwColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -952,16 +947,28 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
return recordList;
}
public Set<String> getTableColumnsOfTableName(String tableName) {
//OracleSELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE TABLE_NAME ='" + tableName + "' ";
//databaseUtils.getDataSourceList()
//String sql = "SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '" + tableName + "' ";
String sql = "SELECT * FROM " + tableName;
log.error("getTableColumnsOfTableName222.sql:{}", sql);
public List<String> getTableColumnsOfTableName(String tableName) {
String sql = "";
//String sql = "SELECT * FROM " + tableName;
//查询数据库类型
String databaseId = DatabaseUtil.getDatabaseId();
log.info("getTableColumnsOfTableName-databaseId{}",databaseId);
if(databaseId.equalsIgnoreCase("oracle")){
//oracle
sql = "SELECT column_name FROM ALL_TAB_COLUMNS WHERE TABLE_NAME ='" + tableName + "' ";
}else{
//mysql
sql = "SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '" + tableName + "' ";
}
log.error("getTableColumnsOfTableName.sql:{}", sql);
Map<String, Object> rs = databaseUtils.execute("LOGIC", "weaver-ebuilder-form-service", sql);
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(rs);
//log.error("getTableColumnsOfTableName.recordList:{}", recordList);
return extractFieldNames(recordList);
log.error("getTableColumnsOfTableName.recordList:{}", recordList);
List<String> listOfColumn = recordList.stream()
.map(map -> map.get("column_name").toString())
.collect(Collectors.toList());
return listOfColumn;
//return extractFieldNames(recordList);
}
public Set<String> extractFieldNames(List<Map<String, Object>> recordList) {

View File

@ -347,11 +347,11 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
* */
String gzsql = "select * from uf_jcl_employ4944 where FORM_DATA_ID = '" + lcid + "' and delete_type=0";
List<Map<String, Object>> gzllInfo = getYgxxDetailInfo(gzsql);
Set<String> listOfgzllColumns = getTableColumnsOfTableName("uf_jcl_emp_gzll");
List<String> listOfgzllColumns = getTableColumnsOfTableName("uf_jcl_emp_gzll");
log.error("updateAllXxbgDetailInfo.gzllInfo:{}", gzllInfo);
log.error("updateAllXxbgDetailInfo.listOfgzllColumns:{}", listOfgzllColumns);
for (Map<String, Object> map : gzllInfo) {
Map<String, Object> gzllInfo_new = new HashMap<>();
Map<String, Object> gzllInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfgzllColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -379,11 +379,11 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
deleteDetailData(sql);
String jysql = "select * from uf_jcl_employ4991 where FORM_DATA_ID = '" + lcid + "' and delete_type=0";
List<Map<String, Object>> jyjlInfo = getYgxxDetailInfo(jysql);
Set<String> listOfjyjlColumns = getTableColumnsOfTableName("uf_jcl_emp_jyjl");
List<String> listOfjyjlColumns = getTableColumnsOfTableName("uf_jcl_emp_jyjl");
log.error("getYgxxDetailInfo.jyjlInfo0172:{}", jyjlInfo);
log.error("getYgxxDetailInfo.listOfjyjlColumns:{}", listOfjyjlColumns);
for (Map<String, Object> map : jyjlInfo) {
Map<String, Object> jyjlInfo_new = new HashMap<>();
Map<String, Object> jyjlInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjyjlColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -411,10 +411,10 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
deleteDetailData(sql);
String jtxxsql = "select * from uf_jcl_employ5051 where FORM_DATA_ID = '" + lcid + "' and delete_type=0";
List<Map<String, Object>> jtxxInfo = getYgxxDetailInfo(jtxxsql);
Set<String> listOfjtxxColumns = getTableColumnsOfTableName("uf_jcl_emp_jtxx");
List<String> listOfjtxxColumns = getTableColumnsOfTableName("uf_jcl_emp_jtxx");
log.error("getYgxxDetailInfo.jtxxInfo:{}", jtxxInfo);
for (Map<String, Object> map : jtxxInfo) {
Map<String, Object> jtxxInfo_new = new HashMap<>();
Map<String, Object> jtxxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfjtxxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -442,11 +442,11 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
deleteDetailData(sql);
String bzsql = "select * from uf_jcl_employ5105 where FORM_DATA_ID = '" + lcid + "' and delete_type=0";
List<Map<String, Object>> bzInfo = getYgxxDetailInfo(bzsql);
Set<String> listOfbzColumns = getTableColumnsOfTableName("uf_jcl_emp_bzyjl");
List<String> listOfbzColumns = getTableColumnsOfTableName("uf_jcl_emp_bzyjl");
log.error("getYgxxDetailInfo.bzInfo:{}", bzInfo);
log.error("getYgxxDetailInfo.listOfbzColumns:{}", listOfbzColumns);
for (Map<String, Object> map : bzInfo) {
Map<String, Object> bzInfo_new = new HashMap<>();
Map<String, Object> bzInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfbzColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -474,11 +474,11 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
deleteDetailData(sql);
String pxsql = "select * from uf_jcl_employ5165 where FORM_DATA_ID = '" + lcid + "' and delete_type=0";
List<Map<String, Object>> pxInfo = getYgxxDetailInfo(pxsql);
Set<String> listOfpxColumns = getTableColumnsOfTableName("uf_jcl_emp_pxjl");
List<String> listOfpxColumns = getTableColumnsOfTableName("uf_jcl_emp_pxjl");
log.error("getYgxxDetailInfo.pxInfo:{}", pxInfo);
log.error("getYgxxDetailInfo.listOfpxColumns:{}", listOfpxColumns);
for (Map<String, Object> map : pxInfo) {
Map<String, Object> pxInfo_new = new HashMap<>();
Map<String, Object> pxInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfpxColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -506,11 +506,11 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
deleteDetailData(sql);
String yysql = "select * from uf_jcl_employ5218 where FORM_DATA_ID = '" + lcid + "' and delete_type=0";
List<Map<String, Object>> yyInfo = getYgxxDetailInfo(yysql);
Set<String> listOfyyColumns = getTableColumnsOfTableName("uf_jcl_emp_yynl");
List<String> listOfyyColumns = getTableColumnsOfTableName("uf_jcl_emp_yynl");
log.error("getYgxxDetailInfo.yyInfo:{}", yyInfo);
log.error("getYgxxDetailInfo.listOfyyColumns:{}", listOfyyColumns);
for (Map<String, Object> map : yyInfo) {
Map<String, Object> yyInfo_new = new HashMap<>();
Map<String, Object> yyInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfyyColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -538,11 +538,11 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
deleteDetailData(sql);
String qwsql = "select * from uf_jcl_employ5265 where FORM_DATA_ID = '" + lcid + "' and delete_type=0";
List<Map<String, Object>> qwInfo = getYgxxDetailInfo(qwsql);
Set<String> listOfqwColumns = getTableColumnsOfTableName("uf_jcl_emp_qwjgzgrz");
List<String> listOfqwColumns = getTableColumnsOfTableName("uf_jcl_emp_qwjgzgrz");
log.error("getYgxxDetailInfo.qwInfo:{}", qwInfo);
log.error("getYgxxDetailInfo.listOfqwColumns:{}", listOfqwColumns);
for (Map<String, Object> map : qwInfo) {
Map<String, Object> qwInfo_new = new HashMap<>();
Map<String, Object> qwInfo_new = new TreeMap<>(String.CASE_INSENSITIVE_ORDER);
for (String key : listOfqwColumns) {
if (containsKeyIgnoreCase(map,key)) {
if("delete_type".equalsIgnoreCase(key)||"IS_DELETE".equalsIgnoreCase(key)){
@ -599,16 +599,28 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
return recordList;
}
public Set<String> getTableColumnsOfTableName(String tableName) {
//OracleSELECT COLUMN_NAME FROM ALL_TAB_COLUMNS WHERE TABLE_NAME ='" + tableName + "' ";
//databaseUtils.getDataSourceList()
//String sql = "SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '" + tableName + "' ";
String sql = "SELECT * FROM " + tableName;
log.error("getTableColumnsOfTableName222.sql:{}", sql);
public List<String> getTableColumnsOfTableName(String tableName) {
String sql = "";
//String sql = "SELECT * FROM " + tableName;
//查询数据库类型
String databaseId = DatabaseUtil.getDatabaseId();
log.info("getTableColumnsOfTableName-databaseId{}",databaseId);
if(databaseId.equalsIgnoreCase("oracle")){
//oracle
sql = "SELECT column_name FROM ALL_TAB_COLUMNS WHERE TABLE_NAME ='" + tableName + "' ";
}else{
//mysql
sql = "SELECT column_name FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = '" + tableName + "' ";
}
log.error("getTableColumnsOfTableName.sql:{}", sql);
Map<String, Object> rs = databaseUtils.execute("LOGIC", "weaver-ebuilder-form-service", sql);
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(rs);
//log.error("getTableColumnsOfTableName.recordList:{}", recordList);
return extractFieldNames(recordList);
log.error("getTableColumnsOfTableName.recordList:{}", recordList);
List<String> listOfColumn = recordList.stream()
.map(map -> map.get("column_name").toString())
.collect(Collectors.toList());
return listOfColumn;
//return extractFieldNames(recordList);
}
public Set<String> extractFieldNames(List<Map<String, Object>> recordList) {