多租户获取实例方式优化
This commit is contained in:
parent
f009c9625f
commit
edd61e2e88
|
|
@ -345,7 +345,7 @@ public class EmployeeRelationController {
|
|||
|
||||
|
||||
/**
|
||||
* 在职员工时点花名册
|
||||
* 系统打标签方式获取明细表
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getDetailTableNameByMasterId")
|
||||
|
|
@ -358,4 +358,15 @@ public class EmployeeRelationController {
|
|||
|
||||
}
|
||||
|
||||
/**
|
||||
* 系统表籍贯(字符串)同步到员工信息表(id)
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/syncSysNativePlace")
|
||||
@WeaPermission(publicPermission = true)
|
||||
public List<Map<String, Object>> syncSysNativePlace(){
|
||||
return employeeRelationService.syncSysNativePlace();
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
|
@ -774,6 +774,8 @@ public class SyncAllYgxxInfoOfOrg implements EsbServerlessRpcRemoteInterface {
|
|||
create_time = Long.parseLong(time);
|
||||
Date date = new Date(create_time);
|
||||
createDate = sdf.format(date);
|
||||
}else {
|
||||
createDate=time;
|
||||
}
|
||||
}
|
||||
if (StringUtils.isNotBlank(getIgnoreCase(employee_info, "update_time"))) {
|
||||
|
|
@ -782,6 +784,8 @@ public class SyncAllYgxxInfoOfOrg implements EsbServerlessRpcRemoteInterface {
|
|||
update_time = Long.parseLong(time);
|
||||
Date date = new Date(update_time);
|
||||
updateDate = sdf.format(date);
|
||||
}else {
|
||||
updateDate=time;
|
||||
}
|
||||
}
|
||||
// if (StringUtils.isNotBlank(getIgnoreCase(employee_info, "hiredate"))) {
|
||||
|
|
|
|||
|
|
@ -77,17 +77,21 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
String yggh = "";
|
||||
String ygxxid = null!=params.get("ygxxid")?String.valueOf(params.get("ygxxid").toString()):"";
|
||||
String glzzyg = null!=params.get("glzzyg")?String.valueOf(params.get("glzzyg").toString()):"";
|
||||
String form_id = null!=params.get("form_id")?String.valueOf(params.get("form_id").toString()):"";
|
||||
String layout_id = null!=params.get("layout_id")?String.valueOf(params.get("layout_id").toString()):"";
|
||||
String user_form_id = null!=params.get("user_form_id")?String.valueOf(params.get("user_form_id").toString()):"";
|
||||
String user_layout_id = null!=params.get("user_layout_id")?String.valueOf(params.get("user_layout_id").toString()):"";
|
||||
//String tenant_key = null!=params.get("tenant_key")?String.valueOf(params.get("tenant_key").toString()):"";
|
||||
log.error("SyncOrganizationPersonInfo.ygxxid : [{}].glzzyg:[{}]",ygxxid,glzzyg);
|
||||
log.error("SyncOrganizationPersonInfo.ygxxid : [{}].glzzyg:[{}],form_id:{},layout_id:{},user_form_id:{},user_layout_id:{}",ygxxid,glzzyg,form_id,layout_id,user_form_id,user_layout_id);
|
||||
SimpleEmployee employee = new SimpleEmployee();
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
String sql = "select form_id from form_table where table_name=? and delete_type='0'";
|
||||
List<String> paramList = Lists.newArrayList();
|
||||
paramList.add(Constants.EMPLOYEE_INFORMATION);
|
||||
String employee_form_id = CommonUtils.null2String(databaseUtils.getSqlList(sql,paramList).get(0).get("form_id"));
|
||||
log.error("employee_form_id : [{}]",employee_form_id);
|
||||
// String sql = "select form_id from form_table where table_name=? and delete_type='0'";
|
||||
// List<String> paramList = Lists.newArrayList();
|
||||
// paramList.add(Constants.EMPLOYEE_INFORMATION);
|
||||
// String employee_form_id = CommonUtils.null2String(databaseUtils.getSqlList(sql,paramList).get(0).get("form_id"));
|
||||
// log.error("employee_form_id : [{}]",employee_form_id);
|
||||
|
||||
sql = "select id,module from FORM where (module='hrm' and ownership='personal') or module='hruserinfo' and delete_type='0'";
|
||||
String sql = "select id,module from FORM where (module='hrm' and ownership='personal') or module='hruserinfo' and delete_type='0' and TENANT_KEY= '"+RecruitModuleUtils.getCurrentTenantKey()+"'";
|
||||
Map<String, Object> rs = databaseUtils.execute("LOGIC", "weaver-ebuilder-form-service", sql);
|
||||
List<Map<String, Object>> personFormList = databaseUtils.getDataSourceList(rs);
|
||||
log.error("getEmployeeColumns.personFormList:{}", personFormList);
|
||||
|
|
@ -197,7 +201,9 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
}
|
||||
}
|
||||
//增加一个关联自定义表的formdata
|
||||
employee_new.put("formdata",getIgnoreCase(employee_info, "id"));
|
||||
// 生成随机 ID
|
||||
long formdataid = IdGenerator.generate();
|
||||
employee_new.put("formdata",formdataid);
|
||||
employee_new.put("status","normal");
|
||||
//状态字段换个对应
|
||||
employee_new.put("personnel_status",getIgnoreCase(employee_info, "personnel_status_jcl"));
|
||||
|
|
@ -246,8 +252,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
}
|
||||
}
|
||||
//组装几个必填字段
|
||||
employeeCustomize_new.put("id",getIgnoreCase(employee_info, "id"));
|
||||
employeeCustomize_new.put("FORM_DATA_ID",getIgnoreCase(employee_info, "id"));
|
||||
employeeCustomize_new.put("id",formdataid);
|
||||
employeeCustomize_new.put("FORM_DATA_ID",formdataid);
|
||||
employeeCustomize_new.put("DATA_INDEX",0);
|
||||
employeeCustomize_new.put("create_time",nowData);
|
||||
employeeCustomize_new.put("TENANT_KEY",getIgnoreCase(employee_info, "TENANT_KEY"));
|
||||
|
|
@ -258,6 +264,10 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
//插入数据到基础信息表的自定义表
|
||||
log.error("SyncOrganizationPersonInfo.employeeCustomize_new:{}", employeeCustomize_new);
|
||||
code2 = insert(tableName,employeeCustomize_new);
|
||||
/**
|
||||
* 写入表单引擎数据大表
|
||||
*/
|
||||
insertFormdata(employeeCustomize_new,form_id,layout_id,"hrm");
|
||||
//3查询个人信息表
|
||||
List<String> listOfUserInfoColumns = getTableColumnsOfTableName("hr_userinfo");
|
||||
// 遍历并移除(不包含则移除掉)
|
||||
|
|
@ -287,7 +297,9 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
}
|
||||
//增加必填字段
|
||||
userInfo_new.put("USER", getIgnoreCase(employee_info, "id"));
|
||||
userInfo_new.put("FORM_DATA",getIgnoreCase(employee_info, "id"));
|
||||
// 生成随机 ID
|
||||
long formuserdataid = IdGenerator.generate();
|
||||
userInfo_new.put("FORM_DATA",formuserdataid);
|
||||
//学位字段
|
||||
//userInfo_new.put("DEGREE",containsKeyIgnoreCase(employee_info,"degreename")?getIgnoreCase(employee_info, "degreename"):null);
|
||||
//userInfo_new.put("CREATE_TIME",nowData);
|
||||
|
|
@ -312,8 +324,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
}
|
||||
}
|
||||
//组装几个必填字段
|
||||
userInfoCustomize_new.put("id",getIgnoreCase(employee_info, "id"));
|
||||
userInfoCustomize_new.put("FORM_DATA_ID",getIgnoreCase(employee_info, "id"));
|
||||
userInfoCustomize_new.put("id",formuserdataid);
|
||||
userInfoCustomize_new.put("FORM_DATA_ID",formuserdataid);
|
||||
userInfoCustomize_new.put("DATA_INDEX",0);
|
||||
userInfoCustomize_new.put("create_time",nowData);
|
||||
userInfoCustomize_new.put("TENANT_KEY",getIgnoreCase(employee_info, "TENANT_KEY"));
|
||||
|
|
@ -323,6 +335,10 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
userInfoCustomize_new.entrySet().removeIf(entry -> entry.getValue() == null);
|
||||
log.error("SyncOrganizationPersonInfo.userInfoCustomize_new:{}", userInfoCustomize_new);
|
||||
code4 = insert(tableUserName,userInfoCustomize_new);
|
||||
/**
|
||||
* 写入表单引擎数据大表
|
||||
*/
|
||||
insertFormdata(userInfoCustomize_new,user_form_id,user_layout_id,"hruserinfo");
|
||||
/**
|
||||
* 账户信息部分同步直接写死
|
||||
*/
|
||||
|
|
@ -376,6 +392,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
}
|
||||
//key为id的要移除掉,防止串改组织人员id 导致对应不上员工关系表的:关联组织人员id
|
||||
employee_new.remove("id");
|
||||
//状态字段换个对应
|
||||
employee_new.put("personnel_status",getIgnoreCase(employee_info, "personnel_status_jcl"));
|
||||
employee_new.entrySet().removeIf(entry -> entry.getValue() == null);
|
||||
log.error("SyncOrganizationPersonInfo3333.employee_info:{}", employee_info);
|
||||
log.error("SyncOrganizationPersonInfo3333.employee_new:{}", employee_new);
|
||||
|
|
@ -479,6 +497,22 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
return WeaResult.success(result);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 写入表单引擎数据大表
|
||||
* @return
|
||||
*/
|
||||
public void insertFormdata(Map<String, Object> map,String form_id, String layout_id,String module){
|
||||
String sql="insert into formdata(id, form_id, layout_id, data_status, tenant_key, operator, create_time, update_time, " +
|
||||
" module, client, is_delete, creator, delete_type)" +
|
||||
" values('" + map.get("id") + "','" + form_id + "','" + layout_id + "','submit','" + map.get("tenant_key") + "','" + map.get("updater") + "','" + map.get("create_time") + "'," +
|
||||
" '" + map.get("update_time") + "','"+module+"','import','" + map.get("delete_type") + "','" + map.get("creator") + "','" + map.get("delete_type") + "')";
|
||||
log.error("insertFormdata.sql:{}", sql);
|
||||
Map<String, Object> rs = databaseUtils.execute("LOGIC", "weaver-ebuilder-form-service", sql);
|
||||
List<Map<String, Object>> recordList = databaseUtils.getDataSourceList(rs);
|
||||
log.error("insertFormdata.recordList:{}", recordList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 数据同步处理明细表
|
||||
* @return
|
||||
|
|
@ -708,7 +742,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
gzllInfo_new.put("USER_ID",ygxxid);
|
||||
}
|
||||
//跟换id值,然后主键冲突
|
||||
String primarykey = createPrimarykey();
|
||||
//String primarykey = createPrimarykey();
|
||||
long primarykey = IdGenerator.generate();
|
||||
log.error("getYgxxDetailInfo.primarykey:{}", primarykey);
|
||||
gzllInfo_new.put("ID",primarykey);
|
||||
//插入组织工作履历表
|
||||
|
|
@ -742,7 +777,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
jyjlInfo_new.put("employee_id",ygxxid);
|
||||
}
|
||||
//跟换id值,然后主键冲突
|
||||
String primarykey = createPrimarykey();
|
||||
//String primarykey = createPrimarykey();
|
||||
long primarykey = IdGenerator.generate();
|
||||
log.error("getYgxxDetailInfo.primarykey:{}", primarykey);
|
||||
jyjlInfo_new.put("id",primarykey);
|
||||
//插入教育经历表
|
||||
|
|
@ -775,7 +811,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
jtxxInfo_new.put("employee_id",ygxxid);
|
||||
}
|
||||
//跟换id值,然后主键冲突
|
||||
String primarykey = createPrimarykey();
|
||||
//String primarykey = createPrimarykey();
|
||||
long primarykey = IdGenerator.generate();
|
||||
log.error("getYgxxDetailInfo.primarykey:{}", primarykey);
|
||||
jtxxInfo_new.put("id",primarykey);
|
||||
//插入家庭信息表
|
||||
|
|
@ -809,7 +846,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
bzInfo_new.put("Employeeid",ygxxid);
|
||||
}
|
||||
//跟换id值,然后主键冲突
|
||||
String primarykey = createPrimarykey();
|
||||
//String primarykey = createPrimarykey();
|
||||
long primarykey = IdGenerator.generate();
|
||||
log.error("getYgxxDetailInfo.primarykey:{}", primarykey);
|
||||
bzInfo_new.put("id",primarykey);
|
||||
//插入家庭信息表
|
||||
|
|
@ -843,7 +881,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
pxInfo_new.put("employee_id",ygxxid);
|
||||
}
|
||||
//跟换id值,然后主键冲突
|
||||
String primarykey = createPrimarykey();
|
||||
//String primarykey = createPrimarykey();
|
||||
long primarykey = IdGenerator.generate();
|
||||
log.error("getYgxxDetailInfo.primarykey:{}", primarykey);
|
||||
pxInfo_new.put("id",primarykey);
|
||||
//插入培训表
|
||||
|
|
@ -877,7 +916,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
yyInfo_new.put("employee_id",ygxxid);
|
||||
}
|
||||
//跟换id值,然后主键冲突
|
||||
String primarykey = createPrimarykey();
|
||||
//String primarykey = createPrimarykey();
|
||||
long primarykey = IdGenerator.generate();
|
||||
log.error("getYgxxDetailInfo.primarykey:{}", primarykey);
|
||||
yyInfo_new.put("id",primarykey);
|
||||
//插入培训表
|
||||
|
|
@ -911,7 +951,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
qwInfo_new.put("employee_id",ygxxid);
|
||||
}
|
||||
//跟换id值,然后主键冲突
|
||||
String primarykey = createPrimarykey();
|
||||
//String primarykey = createPrimarykey();
|
||||
long primarykey = IdGenerator.generate();
|
||||
log.error("getYgxxDetailInfo.primarykey:{}", primarykey);
|
||||
qwInfo_new.put("id",primarykey);
|
||||
//插入权威机构表
|
||||
|
|
@ -1157,6 +1198,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
Date date = new Date(create_time);
|
||||
createDate = sdf.format(date);
|
||||
//parsedDate1 = new Date(sdf.parse(createDate).getTime());
|
||||
}else {
|
||||
createDate = time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "update_time"))){
|
||||
|
|
@ -1166,6 +1209,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
Date date = new Date(update_time);
|
||||
updateDate = sdf.format(date);
|
||||
//parsedDate2 = new Date(sdf.parse(updateDate).getTime());
|
||||
}else {
|
||||
updateDate = time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "hiredate"))){
|
||||
|
|
@ -1175,7 +1220,8 @@ public class SyncOrganizationPersonInfo implements EsbServerlessRpcRemoteInterfa
|
|||
Date date = new Date(hiredate_time);
|
||||
hiredate = sdf2.format(date);
|
||||
//parsedDate3 = new Date(sdf2.parse(hiredate).getTime());
|
||||
|
||||
}else {
|
||||
hiredate = time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "ft_status"))){
|
||||
|
|
|
|||
|
|
@ -404,6 +404,8 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
|
|||
Date date = new Date(create_time);
|
||||
createDate = sdf.format(date);
|
||||
//parsedDate1 = new Date(sdf.parse(createDate).getTime());
|
||||
}else{
|
||||
createDate=time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "update_time"))){
|
||||
|
|
@ -413,6 +415,8 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
|
|||
Date date = new Date(update_time);
|
||||
updateDate = sdf.format(date);
|
||||
//parsedDate2 = new Date(sdf.parse(updateDate).getTime());
|
||||
}else{
|
||||
updateDate=time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "hiredate"))){
|
||||
|
|
@ -422,7 +426,8 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
|
|||
Date date = new Date(hiredate_time);
|
||||
hiredate = sdf2.format(date);
|
||||
//parsedDate3 = new Date(sdf2.parse(hiredate).getTime());
|
||||
|
||||
}else{
|
||||
hiredate=time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "ft_status"))){
|
||||
|
|
@ -555,7 +560,7 @@ public class SyncRzglPersonInfo implements EsbServerlessRpcRemoteInterface {
|
|||
String uf_jcl_emp_jtxx = recruitModuleUtils.getDetailTableNameByMasterId(objId, "uf_jcl_emp_jtxx");
|
||||
log.error("syncAllYgxxDetailInfo.uf_jcl_emp_jtxx:{}", uf_jcl_emp_jtxx);
|
||||
|
||||
String jtxxsql = "select * from "+uf_jcl_rzgl0867+ "where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
|
||||
String jtxxsql = "select * from "+uf_jcl_rzgl0867+ " where FORM_DATA_ID = '" + ygxxid + "' and delete_type=0";
|
||||
List<Map<String, Object>> jtxxInfo = getYgxxDetailInfo(jtxxsql);
|
||||
log.error("getYgxxDetailInfo.jtxxInfo:{}", jtxxInfo);
|
||||
if(CollectionUtils.isNotEmpty(jtxxInfo)){
|
||||
|
|
|
|||
|
|
@ -295,6 +295,8 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
|
|||
Date date = new Date(create_time);
|
||||
createDate = sdf.format(date);
|
||||
//parsedDate1 = new Date(sdf.parse(createDate).getTime());
|
||||
}else {
|
||||
createDate=time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "update_time"))){
|
||||
|
|
@ -304,6 +306,8 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
|
|||
Date date = new Date(update_time);
|
||||
updateDate = sdf.format(date);
|
||||
//parsedDate2 = new Date(sdf.parse(updateDate).getTime());
|
||||
}else {
|
||||
updateDate=time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "hiredate"))){
|
||||
|
|
@ -313,7 +317,8 @@ public class SyncXxbgPersonInfo implements EsbServerlessRpcRemoteInterface {
|
|||
Date date = new Date(hiredate_time);
|
||||
hiredate = sdf2.format(date);
|
||||
//parsedDate3 = new Date(sdf2.parse(hiredate).getTime());
|
||||
|
||||
}else {
|
||||
hiredate=time;
|
||||
}
|
||||
}
|
||||
if(StringUtils.isNotBlank(getIgnoreCase(employee_info, "ft_status"))){
|
||||
|
|
|
|||
|
|
@ -32,4 +32,6 @@ public interface EmployeeRelationService {
|
|||
List<Map<String, Object>> getRosterInfoByDateRange(String stratDate,String endDate,String subCompany,String department);
|
||||
|
||||
String getDetailTableNameByMasterId(long objId, String originTableName);
|
||||
|
||||
List<Map<String, Object>> syncSysNativePlace();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -65,6 +65,8 @@ public class EmployeeRelationServiceImpl implements EmployeeRelationService {
|
|||
private static String nowData;
|
||||
@RpcReference(group = "ebuilderform")
|
||||
RemoteEBObjService remoteEBObjService;
|
||||
@Autowired
|
||||
PublishKitRuntimeUtil publishKitRuntimeUtil;
|
||||
|
||||
|
||||
@Override
|
||||
|
|
@ -1318,6 +1320,25 @@ public class EmployeeRelationServiceImpl implements EmployeeRelationService {
|
|||
return result.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* 字符串转化
|
||||
*/
|
||||
private String splitStrBySlash(String str){
|
||||
// 使用 split 方法将字符串分割为数组
|
||||
String[] parts = str.split("/");
|
||||
// 使用 StringBuilder 构建结果字符串
|
||||
StringBuilder result = new StringBuilder();
|
||||
for (String part : parts) {
|
||||
// 在每个部分前后添加单引号
|
||||
result.append("'").append(part).append("',");
|
||||
}
|
||||
// 移除最后一个多余的逗号
|
||||
if (result.length() > 0) {
|
||||
result.setLength(result.length() - 1);
|
||||
}
|
||||
return result.toString();
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询员工类型名称
|
||||
*/
|
||||
|
|
@ -1451,7 +1472,9 @@ public class EmployeeRelationServiceImpl implements EmployeeRelationService {
|
|||
* @return
|
||||
*/
|
||||
public String getDetailTableNameByMasterId(long objId, String originTableName) {
|
||||
List<Obj> detailForms = remoteEBObjService.getAllTablesByMasterId(objId, tenantKey);
|
||||
RemoteEBObjService ebuilderform = publishKitRuntimeUtil.buildRpcService(RemoteEBObjService.class, "ebuilderform", "1109718089457483777");
|
||||
log.info("getDetailTableNameByMasterId.ebuilderform:{}",ebuilderform);
|
||||
List<Obj> detailForms = ebuilderform.getAllTablesByMasterId(objId, tenantKey);
|
||||
log.info("getDetailTableNameByMasterId.detailForms:{}",detailForms);
|
||||
if (CollectionUtils.isEmpty(detailForms)) {
|
||||
return null;
|
||||
|
|
@ -1471,4 +1494,53 @@ public class EmployeeRelationServiceImpl implements EmployeeRelationService {
|
|||
return tableName;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> syncSysNativePlace() {
|
||||
List<Map<String, Object>> recordList3 = new ArrayList<>();
|
||||
String sql = "select id,user,native_place from hr_userinfo where NATIVE_PLACE is not null and TENANT_KEY = '"+RecruitModuleUtils.getCurrentTenantKey()+"'";
|
||||
List<Map<String, Object>> recordList = databaseUtils.getSqlList(sql);
|
||||
log.info("syncSysNativePlace-recordList{}",recordList);
|
||||
if(CollectionUtils.isNotEmpty(recordList)){
|
||||
//2.拆分、组装籍贯字段数据
|
||||
for (Map<String, Object> map : recordList) {
|
||||
String native_place = map.get("native_place")!=null?String.valueOf(map.get("native_place")):"";
|
||||
String user = map.get("user")!=null?String.valueOf(map.get("user")):"";
|
||||
if(StringUtils.isNotBlank(native_place)&&StringUtils.isNotBlank(user)){
|
||||
String s = splitStrBySlash(native_place);
|
||||
//3.根据组装好的name查询data_id
|
||||
sql="select distinct data_id from eteams.administrative_area where name in (" + s + " ) ";
|
||||
List<Map<String, Object>> recordList2 = databaseUtils.getSqlList(sql);
|
||||
log.info("syncSysNativePlace-recordList2{}",recordList2);
|
||||
List<String> listOfNativeId = recordList2.stream()
|
||||
.map(map1 -> map1.get("data_id").toString())
|
||||
.collect(Collectors.toList());
|
||||
String dataId = joinStringsWithComma(listOfNativeId);
|
||||
log.info("syncSysNativePlace-dataId{}",dataId);
|
||||
//4.更新次id到员工信息表籍贯字段中,根据userid对应
|
||||
sql = "update uf_jcl_employee_information set native_place = '" + dataId + "' where id = '" + user + "' and TENANT_KEY = '"+RecruitModuleUtils.getCurrentTenantKey()+"'";
|
||||
recordList3 = databaseUtils.getSqlList(sql);
|
||||
log.info("syncSysNativePlace-recordList3{}",recordList3);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
return recordList3;
|
||||
}
|
||||
|
||||
public static String joinStringsWithComma(List<String> list) {
|
||||
if (list == null || list.isEmpty()) {
|
||||
return "";
|
||||
}
|
||||
|
||||
StringBuilder joined = new StringBuilder();
|
||||
for (int i = 0; i < list.size(); i++) {
|
||||
if (i > 0) {
|
||||
joined.append(",");
|
||||
}
|
||||
joined.append(list.get(i));
|
||||
}
|
||||
|
||||
return joined.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ import com.weaver.ebuilder.form.client.entity.obj.Obj;
|
|||
import com.weaver.ebuilder.form.client.service.obj.RemoteEBObjService;
|
||||
import com.weaver.framework.rpc.annotation.RpcReference;
|
||||
import com.weaver.framework.rpc.context.impl.TenantRpcContext;
|
||||
import com.weaver.publishkit.api.util.PublishKitRuntimeUtil;
|
||||
import com.weaver.seconddev.jcl.organization.controller.EmployeeRelationController;
|
||||
import com.weaver.teams.api.tenant.Tenant;
|
||||
import com.weaver.teams.domain.user.SimpleEmployee;
|
||||
|
|
@ -58,6 +59,8 @@ public class RecruitModuleUtils {
|
|||
}
|
||||
@Autowired
|
||||
private DatabaseUtils databaseUtils;
|
||||
@Autowired
|
||||
PublishKitRuntimeUtil publishKitRuntimeUtil;
|
||||
|
||||
private static final Logger LOGGER = LoggerFactory.getLogger(RecruitModuleUtils.class);
|
||||
|
||||
|
|
@ -302,7 +305,10 @@ public class RecruitModuleUtils {
|
|||
* @return
|
||||
*/
|
||||
public String getDetailTableNameByMasterId(long objId, String originTableName) {
|
||||
List<Obj> detailForms = remoteEBObjService.getAllTablesByMasterId(objId, RecruitModuleUtils.getCurrentTenantKey());
|
||||
//List<Obj> detailForms = remoteEBObjService.getAllTablesByMasterId(objId, RecruitModuleUtils.getCurrentTenantKey());
|
||||
RemoteEBObjService remoteEBService = publishKitRuntimeUtil.buildRpcService(RemoteEBObjService.class, "ebuilderform", getEbAppId("uf_jcl_employee_information_apptag"));
|
||||
log.info("getDetailTableNameByMasterId.remoteEBService:{}",remoteEBService);
|
||||
List<Obj> detailForms = remoteEBService.getAllTablesByMasterId(objId, RecruitModuleUtils.getCurrentTenantKey());
|
||||
log.info("getDetailTableNameByMasterId.detailForms:{}",detailForms);
|
||||
if (CollectionUtils.isEmpty(detailForms)) {
|
||||
return null;
|
||||
|
|
|
|||
Loading…
Reference in New Issue