diff --git a/talkonlineweb/src/main/java/com/lyms/talkonlineweb/controller/ChatGroupController.java b/talkonlineweb/src/main/java/com/lyms/talkonlineweb/controller/ChatGroupController.java index 950be1b..ed7209b 100644 --- a/talkonlineweb/src/main/java/com/lyms/talkonlineweb/controller/ChatGroupController.java +++ b/talkonlineweb/src/main/java/com/lyms/talkonlineweb/controller/ChatGroupController.java @@ -691,23 +691,15 @@ public class ChatGroupController { */ public void getChatRecord(JSONArray rs,JSONObject jsonObject){ JSONArray rsrjson=new JSONArray(); - //登录账号 - String user_name=null!=jsonObject.get("user_name")?jsonObject.get("user_name").toString():""; - //1 环信管理员 2 医生 3 患者 - String type=jsonObject.get("type").toString(); - LymsChatgroup queryChatgroup=new LymsChatgroup(); - switch (type){ - case "1": - queryChatgroup.setOwnerk(hxuser); - break; - case "2": - queryChatgroup.setTarget(user_name); - break; - case "3": - queryChatgroup.setFromp(user_name); - break; + //环信组id + JSONArray groupData=jsonObject.getJSONArray("groupData"); + List groupidList=new ArrayList<>(); + for (Object groupDatum : groupData) { + groupidList.add(((JSONObject) JSON.toJSON(groupDatum)).get("groupid").toString()); } - List chatgroupList=lymsChatgroupService.list(Wrappers.query(queryChatgroup)); + LambdaQueryWrapper chatgroupQueryWrapper=new QueryWrapper().lambda(); + chatgroupQueryWrapper.in(LymsChatgroup::getHxgroupid,groupidList); + List chatgroupList=lymsChatgroupService.list(chatgroupQueryWrapper); for (LymsChatgroup lymsChatgroup : chatgroupList) { //组装结果 JSONObject reusltJsonObject = new JSONObject(); @@ -741,13 +733,18 @@ public class ChatGroupController { reusltJsonObject.put("from",lymsChatgroup.getFromp()); reusltJsonObject.put("to",lymsChatgroup.getHxgroupid()); reusltJsonObject.put("type","groupchat"); - reusltJsonObject.put("timestamp",lymsMessageList.size()>0?lymsMessageList.get(0).getSendtime():null); - for (Object r : rs) { - JSONObject rjson= (JSONObject) JSON.toJSON(r); - if (! rjson.get("to").toString().equals(lymsChatgroup.getHxgroupid())) { - rsrjson.add(reusltJsonObject); + reusltJsonObject.put("timestamp",lymsMessageList.size()>0?lymsMessageList.get(0).getSendtime().getTime():""); + if (CollectionUtils.isEmpty(rs)) { + rsrjson.add(reusltJsonObject); + }else { + for (Object r : rs) { + JSONObject rjson = (JSONObject) JSON.toJSON(r); + if (!rjson.get("to").toString().equals(lymsChatgroup.getHxgroupid())) { + rsrjson.add(reusltJsonObject); + } } } + } //结果集中添加 for (Object o : rsrjson) {