Procházet zdrojové kódy

咨询结束添加结束人、结束人类型字段、结束咨询发送IM消息修改

lyr před 8 roky
rodič
revize
83f64cc320

+ 17 - 0
patient-co-wlyy/src/main/java/com/yihu/wlyy/entity/consult/ConsultTeam.java

@ -47,6 +47,10 @@ public class ConsultTeam extends IdEntity {
	private Integer startMsgId;
	//结束消息id
	private Integer endMsgId;
	// 结束人
	private String endOperator;
	// 结束人类型
	private Integer endType;
	@Column(name = "admin_team_code")
	public Long getAdminTeamId() {
@ -268,4 +272,17 @@ public class ConsultTeam extends IdEntity {
		this.endMsgId = endMsgId;
	}
	public String getEndOperator() {
		return endOperator;
	}
	public void setEndOperator(String endOperator) {
		this.endOperator = endOperator;
	}
	public Integer getEndType() {
		return endType;
	}
	public void setEndType(Integer endType) {
		this.endType = endType;
	}
}

+ 33 - 6
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/consult/ConsultTeamService.java

@ -893,15 +893,42 @@ public class ConsultTeamService extends ConsultService {
     * @param consult 三师咨询标识
     * @return
     */
    public int finish(String consult) {
    public int finish(String consult, String endOperator, int endType) throws Exception {
        ConsultTeam consultTeam = consultTeamDao.findByConsult(consult);
        String name = "";
        String returnJson = "";
        //推送给IM文字消息
        String returnJson = sendIM(consultTeam.getPatient(), consultTeam.getDoctor(), "7", "本次咨询结束");
        ;
        JSONObject jo = new JSONObject(returnJson);
        //设置消息ID
        consultTeam.setEndMsgId(jo.getInt("startId"));
        if (endType == 1) {
            Patient p = patientDao.findByCode(endOperator);
            name = p.getName();
            returnJson = sendIM(consultTeam.getPatient(), consultTeam.getDoctor(), "7", name + "结束了本次咨询");
        } else {
            Doctor d = doctorDao.findByCode(endOperator);
            name = d.getName();
            returnJson = sendIM(consultTeam.getDoctor(), consultTeam.getPatient(), "7", name + "结束了本次咨询");
        }
        if (StringUtils.isEmpty(returnJson)) {
            throw new Exception("send consult finished IM message failed");
        } else {
            JSONObject jo = new JSONObject(returnJson);
            //设置消息ID
            consultTeam.setEndMsgId(jo.getInt("startId"));
            consultTeam.setEndOperator(endOperator);
            consultTeam.setEndType(endType);
        }
        JSONObject group = talkGroupService.findConsultTalkGroup(consultTeam.getConsult());
        if (group != null) {
            String json = sendGroupIM(endOperator, group.getString("code"), "7", name + "结束了本次咨询");
            if (StringUtils.isEmpty(json)) {
                throw new Exception("send consult finished IM message failed");
            }
        }
        return consultTeamDao.updateStatusByConsult(consult);
    }

+ 1 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/service/app/talk/TalkGroupService.java

@ -179,7 +179,7 @@ public class TalkGroupService extends BaseService {
    }
    /**
     * 查询咨询对应的求组
     * 查询咨询对应的求助
     *
     * @param consult
     * @return

+ 1 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/consult/DoctorConsultController.java

@ -352,7 +352,7 @@ public class DoctorConsultController extends WeixinBaseController {
    @ResponseBody
    public String finish(String consult) {
        try {
            int flag = consultTeamService.finish(consult);
            int flag = consultTeamService.finish(consult, getUID(), 2);
            if (flag > 0) {
                return success("咨询已关闭");
            } else {

+ 1 - 1
patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/consult/ConsultController.java

@ -568,7 +568,7 @@ public class ConsultController extends WeixinBaseController {
    @ResponseBody
    public String finish(String code) {
        try {
            int row = consultTeamService.finish(code);
            int row = consultTeamService.finish(code, getUID(), 1);
            if (row > 0) {
                return success("操作成功!");
            } else {