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 b6bdbc5..0effa6b 100644 --- a/talkonlineweb/src/main/java/com/lyms/talkonlineweb/controller/ChatGroupController.java +++ b/talkonlineweb/src/main/java/com/lyms/talkonlineweb/controller/ChatGroupController.java @@ -2,15 +2,10 @@ package com.lyms.talkonlineweb.controller; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.toolkit.Wrappers; -import com.lyms.talkonlineweb.domain.LymsChatgroup; -import com.lyms.talkonlineweb.domain.LymsDoctor; -import com.lyms.talkonlineweb.domain.LymsMessage; -import com.lyms.talkonlineweb.domain.PatientInfo; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.lyms.talkonlineweb.domain.*; import com.lyms.talkonlineweb.result.BaseResponse; -import com.lyms.talkonlineweb.service.LymsChatgroupService; -import com.lyms.talkonlineweb.service.LymsDoctorService; -import com.lyms.talkonlineweb.service.LymsMessageService; -import com.lyms.talkonlineweb.service.PatientInfoService; +import com.lyms.talkonlineweb.service.*; import com.lyms.talkonlineweb.util.HXService; import lombok.extern.log4j.Log4j2; import org.springframework.beans.BeanUtils; @@ -39,31 +34,36 @@ public class ChatGroupController { @Autowired private LymsDoctorService lymsDoctorService; - + @Autowired + private LymsHdepartService lymsHdepartService; + @Autowired + private LymsDictService lymsDictService; @Autowired private HXService hxService; + /** * 添加或删除聊天组 + * * @param group * @return */ @PostMapping("saveChatGroup") - public BaseResponse saveChatGroup(LymsChatgroup group){ - BaseResponse baseResponse=new BaseResponse(); - List gLst=lymsChatgroupService.list(Wrappers.query(group)); - if(group.getOwnerk()==null){ + public BaseResponse saveChatGroup(LymsChatgroup group) { + BaseResponse baseResponse = new BaseResponse(); + List gLst = lymsChatgroupService.list(Wrappers.query(group)); + if (group.getOwnerk() == null) { group.setOwnerk("test"); } - if(gLst.size()>0){ - LymsChatgroup group2=gLst.get(0); - group=group2; - }else{ - log.info("创建环信组:{} from:{} target:{}",group.getOwnerk(),group.getFromp(),group.getTarget()); - JSONObject rJson=hxService.addChatGroups(group.getFromp()+","+group.getTarget(),group.getOwnerk(), new String[]{group.getFromp(), group.getTarget()}); - log.info("rJson:"+rJson); + if (gLst.size() > 0) { + LymsChatgroup group2 = gLst.get(0); + group = group2; + } else { + log.info("创建环信组:{} from:{} target:{}", group.getOwnerk(), group.getFromp(), group.getTarget()); + JSONObject rJson = hxService.addChatGroups(group.getFromp() + "," + group.getTarget(), group.getOwnerk(), new String[]{group.getFromp(), group.getTarget()}); + log.info("rJson:" + rJson); group.setHxgroupid(rJson.getJSONObject("data").getString("groupid")); - group.setDescription(group.getFromp()+","+group.getTarget()); - group.setGroupname(group.getFromp()+","+group.getTarget()); + group.setDescription(group.getFromp() + "," + group.getTarget()); + group.setGroupname(group.getFromp() + "," + group.getTarget()); lymsChatgroupService.saveOrUpdate(group); } baseResponse.setObject(group); @@ -72,36 +72,57 @@ public class ChatGroupController { /** * 保存消息记录 + * * @param message * @return */ @PostMapping("saveMsg") - public BaseResponse saveMsg(LymsMessage message){ - BaseResponse baseResponse=new BaseResponse(); - boolean f=lymsMessageService.saveOrUpdate(message); - baseResponse.setErrorcode(f==true?0:1); + public BaseResponse saveMsg(LymsMessage message) { + BaseResponse baseResponse = new BaseResponse(); + boolean f = lymsMessageService.saveOrUpdate(message); + baseResponse.setErrorcode(f == true ? 0 : 1); return baseResponse; } @GetMapping("getPatDoc") - public BaseResponse getPatDoc(LymsChatgroup chatgroup){ - log.info(">>>>>>>>>>chatgroup:"+chatgroup); - BaseResponse baseResponse=new BaseResponse(); - Map rs=new HashMap<>(); + public BaseResponse getPatDoc(LymsChatgroup chatgroup) { + log.info(">>>>>>>>>>chatgroup:" + chatgroup); + BaseResponse baseResponse = new BaseResponse(); + Map rs = new HashMap<>(); - chatgroup=lymsChatgroupService.getOne(Wrappers.query(chatgroup)); - LymsDoctor doctor=new LymsDoctor(); - doctor=lymsDoctorService.getOne(Wrappers.query(doctor).eq("dlogin",chatgroup.getTarget())); + chatgroup = lymsChatgroupService.getOne(Wrappers.query(chatgroup)); + LymsDoctor doctor = new LymsDoctor(); + doctor = lymsDoctorService.getOne(Wrappers.query(doctor).eq("dlogin", chatgroup.getTarget())); - PatientInfo patientInfo=new PatientInfo(); + PatientInfo patientInfo = new PatientInfo(); patientInfo.setDid(doctor.getDpid()); patientInfo.setIdno(chatgroup.getFromp()); - List pLst=patientInfoService.list(Wrappers.query(patientInfo)); - - rs.put("doctor",doctor); - rs.put("patient",pLst); + List pLst = patientInfoService.list(Wrappers.query(patientInfo)); + conDocCode(doctor); + rs.put("doctor", doctor); + rs.put("patient", pLst); baseResponse.setObject(rs); return baseResponse; } + + public void conDocCode(LymsDoctor d) { + Map param = new HashMap(); + param.put("vtype", 4); + List dLst = lymsDictService.listByMap(param); + param.clear(); + param.put("did", d.getDpid()); + List departLst = lymsHdepartService.listByMap(param); + if (departLst.size() > 0) { + LymsHdepart depart = departLst.get(0); + d.setHname(depart.getHname()); + d.setDdname(depart.getDname()); + dLst.forEach(dd -> { + if (dd.getCode() == d.getLvl()) { + d.setLname(dd.getValue()); + } + }); + } + + } }