|
|
|
@ -638,6 +638,8 @@ public class RocketmqUtil {
|
|
|
|
|
String roleCode = Util.null2String(jsonObject.get("roleCode")).replace(" ", "");
|
|
|
|
|
String roleName = Util.null2String(jsonObject.get("roleName"));
|
|
|
|
|
|
|
|
|
|
String orgCode = Util.null2String(jsonObject.get("orgCode"));
|
|
|
|
|
|
|
|
|
|
String systemUserCode = Util.null2String(jsonObject.get("systemUserCode"));
|
|
|
|
|
String systemUserName = Util.null2String(jsonObject.get("systemUserName"));
|
|
|
|
|
|
|
|
|
@ -648,87 +650,152 @@ public class RocketmqUtil {
|
|
|
|
|
try {
|
|
|
|
|
|
|
|
|
|
String userId = "";
|
|
|
|
|
String departmentcode = "" ;
|
|
|
|
|
String roleId = "";
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotEmpty(systemUserCode)) {
|
|
|
|
|
String sql = " select id from hrmresource where loginid=?";
|
|
|
|
|
rs.executeQuery(sql, new Object[]{systemUserCode});
|
|
|
|
|
String sql =" select h.id,d.departmentcode from hrmresource h \n" +
|
|
|
|
|
" inner join hrmdepartment d on d.id = h.departmentid \n" +
|
|
|
|
|
" where loginid='"+systemUserCode+"'";
|
|
|
|
|
bb.writeLog("sql:"+sql);
|
|
|
|
|
rs.executeQuery(sql);
|
|
|
|
|
if (rs.next()) {
|
|
|
|
|
userId = Util.null2String(rs.getString("id"));
|
|
|
|
|
departmentcode = Util.null2String(rs.getString("departmentcode"));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if(StringUtils.isNotEmpty(roleCode)) {
|
|
|
|
|
bb.writeLog("userId:"+userId);
|
|
|
|
|
bb.writeLog("departmentcode:"+departmentcode);
|
|
|
|
|
bb.writeLog("istrue:"+(StringUtils.isNotBlank(departmentcode) && departmentcode.equals(orgCode)));
|
|
|
|
|
|
|
|
|
|
String queryRoleIdSql = " select id from hrmroles where rolesmark=?";
|
|
|
|
|
rs.executeQuery(queryRoleIdSql, new Object[]{roleCode});
|
|
|
|
|
if (rs.next()) {
|
|
|
|
|
roleId = rs.getString("id");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
bb.writeLog("userId:" + userId + " roleId:" + roleId);
|
|
|
|
|
if(StringUtils.isNotBlank(departmentcode) && departmentcode.equals(orgCode))
|
|
|
|
|
{
|
|
|
|
|
if(StringUtils.isNotEmpty(roleCode)) {
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotEmpty(userId) && StringUtils.isNotEmpty(roleId)) {
|
|
|
|
|
//查看是否已存在角色用户关系
|
|
|
|
|
String releationId = "";
|
|
|
|
|
String ifExistSql = "select id from hrmrolemembers where roleid=? and resourceid=?";
|
|
|
|
|
rs.executeQuery(ifExistSql,new Object[]{roleId, userId});
|
|
|
|
|
if (rs.next()) {
|
|
|
|
|
releationId = rs.getString("id");
|
|
|
|
|
String queryRoleIdSql = " select id from hrmroles where rolesmark=?";
|
|
|
|
|
rs.executeQuery(queryRoleIdSql, new Object[]{roleCode});
|
|
|
|
|
if (rs.next()) {
|
|
|
|
|
roleId = rs.getString("id");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
bb.writeLog("userId:" + userId + " roleId:" + roleId + "releationId:" + releationId);
|
|
|
|
|
if (StringUtils.isNotEmpty(releationId)) {
|
|
|
|
|
if ("D".equals(actType)) {
|
|
|
|
|
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","角色成员系统已存在,操作类型为A或者M");
|
|
|
|
|
dataMap.put("systable",tableName);
|
|
|
|
|
recordErrorData(dataMap);
|
|
|
|
|
bb.writeLog("userId:" + userId + " roleId:" + roleId);
|
|
|
|
|
|
|
|
|
|
if (StringUtils.isNotEmpty(userId) && StringUtils.isNotEmpty(roleId)) {
|
|
|
|
|
//查看是否已存在角色用户关系
|
|
|
|
|
String releationId = "";
|
|
|
|
|
String ifExistSql = "select id from hrmrolemembers where roleid=? and resourceid=?";
|
|
|
|
|
rs.executeQuery(ifExistSql,new Object[]{roleId, userId});
|
|
|
|
|
if (rs.next()) {
|
|
|
|
|
releationId = rs.getString("id");
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if ("A".equals(actType)) {
|
|
|
|
|
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","角色成员新增成功");
|
|
|
|
|
bb.writeLog("userId:" + userId + " roleId:" + roleId + "releationId:" + releationId);
|
|
|
|
|
if (StringUtils.isNotEmpty(releationId)) {
|
|
|
|
|
if ("D".equals(actType)) {
|
|
|
|
|
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 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{
|
|
|
|
|
Map<String,String> dataMap = new HashMap<String,String>();
|
|
|
|
|
dataMap.put("syndate",nowDateTime);
|
|
|
|
|
dataMap.put("reqmessage",jsonObject.toJSONString());
|
|
|
|
|
dataMap.put("errmessage","角色成员系统已存在,操作类型为A");
|
|
|
|
|
dataMap.put("systable",tableName);
|
|
|
|
|
recordErrorData(dataMap);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if ("A".equals(actType)) {
|
|
|
|
|
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 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{
|
|
|
|
|
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{
|
|
|
|
|
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);
|
|
|
|
|
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","角色成员系统不存在,操作类型为M或者D");
|
|
|
|
|
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","人员角色数据,人员或者角色系统不存在");
|
|
|
|
|
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","人员角色数据,人员或者角色系统不存在");
|
|
|
|
|
dataMap.put("errmessage","数据中的orgCode:"+orgCode+"和"+systemUserName+"所属的部门编码不一致,无法更新数据");
|
|
|
|
|
dataMap.put("systable",tableName);
|
|
|
|
|
recordErrorData(dataMap);
|
|
|
|
|
}
|
|
|
|
@ -1424,7 +1491,7 @@ public class RocketmqUtil {
|
|
|
|
|
if(status1count == 0) {
|
|
|
|
|
int status5count = 0;
|
|
|
|
|
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);
|
|
|
|
|
rs.executeQuery(sql);
|
|
|
|
|
while (rs.next()) {
|
|
|
|
|