#EC_HJ153# 人员MQ同步优化接口

main
shilei 2 years ago
parent 5519bf896d
commit d48c77364f

@ -638,6 +638,8 @@ public class RocketmqUtil {
String roleCode = Util.null2String(jsonObject.get("roleCode")).replace(" ", ""); String roleCode = Util.null2String(jsonObject.get("roleCode")).replace(" ", "");
String roleName = Util.null2String(jsonObject.get("roleName")); String roleName = Util.null2String(jsonObject.get("roleName"));
String orgCode = Util.null2String(jsonObject.get("orgCode"));
String systemUserCode = Util.null2String(jsonObject.get("systemUserCode")); String systemUserCode = Util.null2String(jsonObject.get("systemUserCode"));
String systemUserName = Util.null2String(jsonObject.get("systemUserName")); String systemUserName = Util.null2String(jsonObject.get("systemUserName"));
@ -648,16 +650,27 @@ public class RocketmqUtil {
try { try {
String userId = ""; String userId = "";
String departmentcode = "" ;
String roleId = ""; String roleId = "";
if (StringUtils.isNotEmpty(systemUserCode)) { if (StringUtils.isNotEmpty(systemUserCode)) {
String sql = " select id from hrmresource where loginid=?"; String sql =" select h.id,d.departmentcode from hrmresource h \n" +
rs.executeQuery(sql, new Object[]{systemUserCode}); " inner join hrmdepartment d on d.id = h.departmentid \n" +
" where loginid='"+systemUserCode+"'";
bb.writeLog("sql:"+sql);
rs.executeQuery(sql);
if (rs.next()) { if (rs.next()) {
userId = Util.null2String(rs.getString("id")); userId = Util.null2String(rs.getString("id"));
departmentcode = Util.null2String(rs.getString("departmentcode"));
} }
} }
bb.writeLog("userId:"+userId);
bb.writeLog("departmentcode:"+departmentcode);
bb.writeLog("istrue:"+(StringUtils.isNotBlank(departmentcode) && departmentcode.equals(orgCode)));
if(StringUtils.isNotBlank(departmentcode) && departmentcode.equals(orgCode))
{
if(StringUtils.isNotEmpty(roleCode)) { if(StringUtils.isNotEmpty(roleCode)) {
String queryRoleIdSql = " select id from hrmroles where rolesmark=?"; String queryRoleIdSql = " select id from hrmroles where rolesmark=?";
@ -692,11 +705,34 @@ public class RocketmqUtil {
dataMap.put("errmessage","角色成员删除成功"); dataMap.put("errmessage","角色成员删除成功");
} }
recordErrorData(dataMap); recordErrorData(dataMap);
}else if("M".equals(actType)){
if("1100".equals(statusCd)){
String delHrmrolemembersSql = " delete from hrmrolemembers where id = ?";
boolean flag = rs.executeUpdate(delHrmrolemembersSql, releationId);
bb.writeLog("delHrmrolemembersSql : " + flag);
Map<String,String> dataMap = new HashMap<String,String>();
dataMap.put("syndate",nowDateTime);
dataMap.put("reqmessage",jsonObject.toJSONString());
dataMap.put("systable",tableName);
if (!flag) {
dataMap.put("errmessage","角色成员删除失败");
}else {
dataMap.put("errmessage","角色成员删除成功");
}
recordErrorData(dataMap);
}else{
Map<String,String> dataMap = new HashMap<String,String>();
dataMap.put("syndate",nowDateTime);
dataMap.put("reqmessage",jsonObject.toJSONString());
dataMap.put("errmessage","角色成员系统已存在,操作类型为"+actType+",statusCd为:"+statusCd);
dataMap.put("systable",tableName);
recordErrorData(dataMap);
}
}else{ }else{
Map<String,String> dataMap = new HashMap<String,String>(); Map<String,String> dataMap = new HashMap<String,String>();
dataMap.put("syndate",nowDateTime); dataMap.put("syndate",nowDateTime);
dataMap.put("reqmessage",jsonObject.toJSONString()); dataMap.put("reqmessage",jsonObject.toJSONString());
dataMap.put("errmessage","角色成员系统已存在操作类型为A或者M"); dataMap.put("errmessage","角色成员系统已存在操作类型为A");
dataMap.put("systable",tableName); dataMap.put("systable",tableName);
recordErrorData(dataMap); recordErrorData(dataMap);
} }
@ -715,11 +751,34 @@ public class RocketmqUtil {
dataMap.put("errmessage","角色成员新增成功"); dataMap.put("errmessage","角色成员新增成功");
} }
recordErrorData(dataMap); recordErrorData(dataMap);
}else if("M".equals(actType)){
if("1000".equals(statusCd)){
String insertHrmrolemembersSql = "insert into hrmrolemembers(roleid,resourceid,rolelevel,resourcetype,uuid) values(?,?,?,?,?)";
boolean flag = rs.executeUpdate(insertHrmrolemembersSql, new Object[]{roleId, userId, rolelevel, resourcetype, UUID.randomUUID().toString()});
bb.writeLog("insertHrmrolemembersSql : " + flag);
Map<String,String> dataMap = new HashMap<String,String>();
dataMap.put("syndate",nowDateTime);
dataMap.put("reqmessage",jsonObject.toJSONString());
dataMap.put("systable",tableName);
if (!flag) {
dataMap.put("errmessage","角色成员新增失败");
}else {
dataMap.put("errmessage","角色成员新增成功");
}
recordErrorData(dataMap);
}else{ }else{
Map<String,String> dataMap = new HashMap<String,String>(); Map<String,String> dataMap = new HashMap<String,String>();
dataMap.put("syndate",nowDateTime); dataMap.put("syndate",nowDateTime);
dataMap.put("reqmessage",jsonObject.toJSONString()); dataMap.put("reqmessage",jsonObject.toJSONString());
dataMap.put("errmessage","角色成员系统不存在操作类型为M或者D"); dataMap.put("errmessage","角色成员系统不存在,操作类型为"+actType+",statusCd为:"+statusCd);
dataMap.put("systable",tableName);
recordErrorData(dataMap);
}
}else{
Map<String,String> dataMap = new HashMap<String,String>();
dataMap.put("syndate",nowDateTime);
dataMap.put("reqmessage",jsonObject.toJSONString());
dataMap.put("errmessage","角色成员系统不存在操作类型为D");
dataMap.put("systable",tableName); dataMap.put("systable",tableName);
recordErrorData(dataMap); recordErrorData(dataMap);
} }
@ -732,6 +791,14 @@ public class RocketmqUtil {
dataMap.put("systable",tableName); dataMap.put("systable",tableName);
recordErrorData(dataMap); recordErrorData(dataMap);
} }
}else{
Map<String,String> dataMap = new HashMap<String,String>();
dataMap.put("syndate",nowDateTime);
dataMap.put("reqmessage",jsonObject.toJSONString());
dataMap.put("errmessage","数据中的orgCode:"+orgCode+"和"+systemUserName+"所属的部门编码不一致,无法更新数据");
dataMap.put("systable",tableName);
recordErrorData(dataMap);
}
} catch (Exception e) { } catch (Exception e) {
Map<String,String> dataMap = new HashMap<String,String>(); Map<String,String> dataMap = new HashMap<String,String>();
dataMap.put("syndate",nowDateTime); dataMap.put("syndate",nowDateTime);
@ -1424,7 +1491,7 @@ public class RocketmqUtil {
if(status1count == 0) { if(status1count == 0) {
int status5count = 0; int status5count = 0;
List<String> loginList = new ArrayList<String>(); List<String> loginList = new ArrayList<String>();
sql = " select id,status from hrmresource where loginid = '"+staffCode+"' and status = 5"; sql = " select id,status from hrmresource where (loginid = '"+staffCode+"' or loginid like '"+staffCode+"_cf%') and status = 5";
bb.writeLog("loginidisnotnull-sql:" + sql); bb.writeLog("loginidisnotnull-sql:" + sql);
rs.executeQuery(sql); rs.executeQuery(sql);
while (rs.next()) { while (rs.next()) {

Loading…
Cancel
Save