diff --git a/src/com/customization/dito/sendtodo/SendPortalAgentCmd.java b/src/com/customization/dito/sendtodo/SendPortalAgentCmd.java index 63015345..dbb1c49f 100644 --- a/src/com/customization/dito/sendtodo/SendPortalAgentCmd.java +++ b/src/com/customization/dito/sendtodo/SendPortalAgentCmd.java @@ -34,23 +34,16 @@ public class SendPortalAgentCmd { public void DealPortalTodoAndDone(int agenterid, int beagenterid, String workflowids, User user){ RecordSet rs = new RecordSet(); RecordSet rs1 = new RecordSet(); - JSONArray taskObjectList = new JSONArray(); + String EMAIL_REGEX_DEFAULT = "^\\w+([-+.]\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*$"; Pattern regex = Pattern.compile(EMAIL_REGEX_DEFAULT); - JSONObject taskObject = new JSONObject(); + rs.writeLog("==================== SendPortalAgentCmd DealPortalTodoAndDone ==================="); rs.writeLog("==================== SendPortalAgentCmd DealPortalTodoAndDone agenterid ==================="+ agenterid); rs.writeLog("==================== SendPortalAgentCmd DealPortalTodoAndDone beagenterid ==================="+ beagenterid); try { - taskObject.put("objectAction", "0"); - taskObject.put("objectType", "0"); - taskObject.put("objectCode", new ResourceComInfo().getWorkcode(String.valueOf(agenterid))); - taskObject.put("objectId", getStaffId(agenterid)); - taskObject.put("operatorCode", new ResourceComInfo().getWorkcode(String.valueOf(agenterid))); - taskObjectList.add(taskObject); - HttpRequestUtil httpRequestUtil = new HttpRequestUtil(); SendPortalErrorUtil sendPortalErrorUtil = new SendPortalErrorUtil(); SendMailUtil sendMailUtil = new SendMailUtil(); @@ -89,6 +82,16 @@ public class SendPortalAgentCmd { while (rs1.next()) { String requestid = Util.null2String(rs1.getString("requestid")); + JSONArray taskObjectList = new JSONArray(); + JSONObject taskObject = new JSONObject(); + + taskObject.put("objectAction", "0"); + taskObject.put("objectType", "0"); + taskObject.put("objectCode", new ResourceComInfo().getWorkcode(String.valueOf(agenterid))); + taskObject.put("objectId", getStaffId(agenterid)); + taskObject.put("operatorCode", new ResourceComInfo().getWorkcode(String.valueOf(agenterid))); + taskObjectList.add(taskObject); + String workflowname = ""; String nodeId = ""; String nodeName = ""; diff --git a/src/com/engine/dito/reqremark/cmd/AtRequestRemarkCmd.java b/src/com/engine/dito/reqremark/cmd/AtRequestRemarkCmd.java index 26ec4e09..689187b5 100644 --- a/src/com/engine/dito/reqremark/cmd/AtRequestRemarkCmd.java +++ b/src/com/engine/dito/reqremark/cmd/AtRequestRemarkCmd.java @@ -43,7 +43,6 @@ public class AtRequestRemarkCmd extends AbstractCommonCommand public Map execute(CommandContext commandContext) { Map map = new HashMap(); int userid = user.getUID(); - BaseBean bb = new BaseBean(); String requestid = Util.null2String(params.get("requestid")); String nodeid = Util.null2String(params.get("nodeid")); @@ -174,6 +173,8 @@ public class AtRequestRemarkCmd extends AbstractCommonCommand if(!"0".equals(resultCode)){ String resultmsg = msgObject.getString("resultMsg"); sendPortalErrorUtil.doRecordPortalErrorInfo4Phase2(requestid,nodeid,nodename,userid,requestObject.toJSONString(),resultCode,resultmsg,zhjkbs,""); + }else{ + sendPortalErrorUtil.doRecordPortalErrorInfo4Phase2(requestid, nodeid, nodename, userid, requestObject.toJSONString(), resultCode, "", zhjkbs,""); } } } @@ -207,6 +208,8 @@ public class AtRequestRemarkCmd extends AbstractCommonCommand if (!"0".equals(resultCode)) { String resultmsg = msgObject.getString("resultMsg"); sendPortalErrorUtil.doRecordPortalErrorInfo4Phase2(requestid, nodeid, nodeName, user.getUID() + "", requestObject.toJSONString(), resultCode, resultmsg, zhjkbs,""); + }else{ + sendPortalErrorUtil.doRecordPortalErrorInfo4Phase2(requestid, nodeid, nodeName, user.getUID() + "", requestObject.toJSONString(), resultCode, "", zhjkbs,""); } } } diff --git a/src/weaver/interfaces/dito/mq/RocketmqUtil.java b/src/weaver/interfaces/dito/mq/RocketmqUtil.java index fe25f732..56cd544e 100644 --- a/src/weaver/interfaces/dito/mq/RocketmqUtil.java +++ b/src/weaver/interfaces/dito/mq/RocketmqUtil.java @@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject; import com.cloudstore.dev.api.bean.MessageBean; import com.cloudstore.dev.api.bean.MessageType; import com.cloudstore.dev.api.util.Util_Message; +import okhttp3.*; import org.apache.commons.codec.digest.DigestUtils; import org.apache.commons.lang.StringUtils; import weaver.conn.RecordSet; @@ -220,11 +221,11 @@ public class RocketmqUtil { bb.writeLog("status2:"+status); String userUpdateSql = " update hrmresource set loginid=?,lastname=?,departmentid=?,subcompanyid1=?," + - " creater=?,email=?,mobile=?,jobtitle=?,status=?,dsporder=?,lastmoddate=?,modified=? where workcode=? "; + " creater=?,email=?,mobile=?,status=?,dsporder=?,lastmoddate=?,modified=? where workcode=? "; bb.writeLog("updateSysUserData-userUpdateSql:"+userUpdateSql); boolean flag = rs.executeUpdate(userUpdateSql,new Object[]{loginid,lastname,deptId,subcompanyid1,creator,email, - pwdSmsTel,jobTitleId,status,loginedNum,currentDate,currentDateTime,staffCode}); + pwdSmsTel,status,loginedNum,currentDate,currentDateTime,staffCode}); bb.writeLog("flag:"+flag); Map dataMap = new HashMap(); dataMap.put("staffcodecount",datacount+""); @@ -642,6 +643,10 @@ public class RocketmqUtil { String systemUserCode = Util.null2String(jsonObject.get("systemUserCode")); String systemUserName = Util.null2String(jsonObject.get("systemUserName")); + String sysUserId = Util.null2String(jsonObject.get("sysUserId")); + + //所有角色 + Set set = getSysRoles(sysUserId); String actType = Util.null2String(jsonObject.get("actType")); String statusCd = Util.null2String(jsonObject.get("statusCd")); @@ -692,19 +697,22 @@ public class RocketmqUtil { 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 dataMap = new HashMap(); - dataMap.put("syndate",nowDateTime); - dataMap.put("reqmessage",jsonObject.toJSONString()); - dataMap.put("systable",tableName); - if (!flag) { - dataMap.put("errmessage","角色成员删除失败"); - }else { - dataMap.put("errmessage","角色成员删除成功"); + // 不包含 角色 + if(!set.contains(roleCode)){ + String delHrmrolemembersSql = " delete from hrmrolemembers where id = ?"; + boolean flag = rs.executeUpdate(delHrmrolemembersSql, releationId); + bb.writeLog("delHrmrolemembersSql : " + flag); + Map dataMap = new HashMap(); + dataMap.put("syndate",nowDateTime); + dataMap.put("reqmessage",jsonObject.toJSONString()); + dataMap.put("systable",tableName); + if (!flag) { + dataMap.put("errmessage","角色成员删除失败"); + }else { + dataMap.put("errmessage","角色成员删除成功"); + } + recordErrorData(dataMap); } - recordErrorData(dataMap); }else if("M".equals(actType)){ if("1100".equals(statusCd)){ String delHrmrolemembersSql = " delete from hrmrolemembers where id = ?"; @@ -1325,7 +1333,7 @@ public class RocketmqUtil { String cus_staff = PropBean.getUfPropValue("cus_staff") ; String cus_eid = PropBean.getUfPropValue("cus_eid") ; - + String cus_sysuserid = PropBean.getUfPropValue("cus_sysuserid") ; String currentDate = TimeUtil.getCurrentDateString();//当前日期 String currentDateTime = TimeUtil.getCurrentTimeString(); //当前时间 @@ -1358,7 +1366,7 @@ public class RocketmqUtil { } bb.writeLog("email:"+email); - String pwdSmsTel = Util.null2String(jsonObject.getString("pwdSmsTel"),"null"); + String pwdSmsTel = Util.null2String(jsonObject.getString("mobilePhone"),"null"); bb.writeLog("pwdSmsTel:"+pwdSmsTel); String loginedNum = Util.null2String(jsonObject.getString("sysUserId"),"null"); bb.writeLog("loginedNum:"+loginedNum); @@ -1377,9 +1385,10 @@ public class RocketmqUtil { }else if(jsonObject.containsKey("eId")){ eId = Util.null2String(jsonObject.get("eId")); } + String sysUserId = Util.null2String(jsonObject.get("sysUserId")); bb.writeLog("eId:"+eId); bb.writeLog("staffId:"+staffId); - + bb.writeLog("sysUserId:"+sysUserId); try { String subcompanyid1 = "" ; String deptId = ""; @@ -1657,9 +1666,9 @@ public class RocketmqUtil { seqorder = Util.null2String(rs.getString("seqorder")); } if (StringUtils.isNotEmpty(seqorder)) { - String cusUpdateSql = " update cus_fielddata set "+cus_staff+"=?,"+cus_eid+"=? where scope=? and scopeid=? and id=?"; + String cusUpdateSql = " update cus_fielddata set "+cus_staff+"=?,"+cus_eid+"=?,"+cus_sysuserid+"=? where scope=? and scopeid=? and id=?"; bb.writeLog(cusUpdateSql); - boolean deflag = rs.executeUpdate(cusUpdateSql, new Object[]{staffId, eId, scope,scopeid,userid}); + boolean deflag = rs.executeUpdate(cusUpdateSql, new Object[]{staffId, eId, sysUserId, scope,scopeid,userid}); Map dataMap = new HashMap(); dataMap.put("staffcodecount",datacount+""); dataMap.put("staffcode",staffCode); @@ -1673,9 +1682,9 @@ public class RocketmqUtil { } recordErrorData(dataMap); } else { - String cusInsertSql = " insert into cus_fielddata(scope,scopeid,id,"+cus_staff+","+cus_eid+") values(?,?,?,?,?)"; + String cusInsertSql = " insert into cus_fielddata(scope,scopeid,id,"+cus_staff+","+cus_eid+","+cus_sysuserid+") values(?,?,?,?,?,?)"; bb.writeLog(cusInsertSql); - boolean deflag = rs.executeUpdate(cusInsertSql, new Object[]{scope, scopeid, userid, staffId, eId}); + boolean deflag = rs.executeUpdate(cusInsertSql, new Object[]{scope, scopeid, userid, staffId, eId, sysUserId}); Map dataMap = new HashMap(); dataMap.put("staffcodecount",datacount+""); dataMap.put("staffcode",staffCode); @@ -1848,5 +1857,48 @@ public class RocketmqUtil { } } + public static Set getSysRoles(String sysUserId){ + Set set = new HashSet<>(); + BaseBean bb = new BaseBean(); + + String dataJson = "{\"sysUserId\": "+ sysUserId +",\"pageNum\": 1,\"pageSize\": 5555}"; + + String getAllSysUserRolesUrl = PropBean.getUfPropValue("getAllSysUserRolesUrl"); + String Authorization = PropBean.getUfPropValue("Authorization"); + try { + OkHttpClient client = new OkHttpClient().newBuilder().build(); + MediaType mediaType = MediaType.parse("application/json"); + RequestBody body = RequestBody.create(mediaType, dataJson); + Request request = new Request.Builder() + .url(getAllSysUserRolesUrl) + .method("POST", body) + .addHeader("Authorization", Authorization) + .addHeader("Content-Type", "application/json") + .build(); + + Response response = client.newCall(request).execute(); + int code = response.code(); + String bodyMsg = response.body().string(); + bb.writeLog("response.code():"+code); + bb.writeLog("response.body():"+bodyMsg); + if(code == 200){ + JSONObject msgObject = JSONObject.parseObject(bodyMsg); + if(msgObject.containsKey("list")){ + String roleList = msgObject.getString("list"); + JSONArray roleArray = JSONArray.parseArray(roleList); + for(int i=0;i