Ver código fonte

新增评论功能以及评论查询功能

wangjun 4 anos atrás
pai
commit
0480bfa64c

+ 6 - 2
business/base-service/src/main/java/com/yihu/jw/hospital/message/dao/BaseUserMessageDao.java

@ -14,7 +14,11 @@ import java.util.List;
 * Created at 2020.07.08
 */
public interface BaseUserMessageDao extends PagingAndSortingRepository<BaseUserMessageDO, String>, JpaSpecificationExecutor<BaseUserMessageDO> {
    @Query(value = "select * from base_user_message t where t.relation_code = ?1 order by t.update_time asc limit 0,1",nativeQuery = true)
    List<BaseUserMessageDO> getMessageByCode(String relationCode);
    @Query(value = "select * from base_user_message t where t.relation_code = ?1 and t.status = 1 and t.id = ?2 order by t.update_time asc limit 0,1",nativeQuery = true)
    List<BaseUserMessageDO> getMessageByCode(String relationCode,String Id);
    @Query(value = "select * from base_user_message t where t.relation_code = ?1 order by t.update_time asc ",nativeQuery = true)
    List<BaseUserMessageDO> getAllMessageByCode(String relationCode);
}

+ 14 - 0
business/base-service/src/main/java/com/yihu/jw/hospital/message/dao/BaseUserMsgContentDao.java

@ -0,0 +1,14 @@
package com.yihu.jw.hospital.message.dao;
import com.yihu.jw.entity.hospital.message.BaseUserMessageDO;
import com.yihu.jw.entity.hospital.message.BaseUserMsgContentDO;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import java.util.List;
public interface BaseUserMsgContentDao extends PagingAndSortingRepository<BaseUserMsgContentDO, String>, JpaSpecificationExecutor<BaseUserMsgContentDO> {
    @Query(value = "select * from base_user_msg_content t where t.base_user_msg_id = ?1 order by t.update_time asc ",nativeQuery = true)
    List<BaseUserMsgContentDO> getContentListByID(String id);
}

+ 11 - 0
business/base-service/src/main/java/com/yihu/jw/hospital/message/dao/MsgContentDao.java

@ -0,0 +1,11 @@
package com.yihu.jw.hospital.message.dao;
import com.yihu.jw.entity.hospital.message.BaseUserMessageDO;
import com.yihu.jw.entity.hospital.message.BaseUserMsgContentDO;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface MsgContentDao extends JpaRepository<BaseUserMessageDO,Integer> {
    List<BaseUserMessageDO> findByRelationCode(String relationcode);
}

+ 1 - 1
business/base-service/src/main/java/com/yihu/jw/hospital/message/service/BaseBannerDoctorService.java

@ -43,7 +43,7 @@ public class BaseBannerDoctorService extends BaseJpaService<BaseBannerDoctorDO,
                baseBannerDoctorDO.setPatientId(patientId);
                baseBannerDoctorDO.setPatientName(patientName);
                baseBannerDoctorDO.setRelationType(1);
                baseBannerDoctorDO.setRerelationName("送锦旗留言");
                baseBannerDoctorDO.setRelationName("送锦旗留言");
                baseBannerDoctorDO.setRelationCode("system");
                baseBannerDoctorDao.save(baseBannerDoctorDO);
            }

+ 113 - 108
business/base-service/src/main/java/com/yihu/jw/hospital/message/service/BaseUserMsgService.java

@ -1,10 +1,14 @@
package com.yihu.jw.hospital.message.service;
import com.yihu.jw.entity.base.score.BaseEvaluateDO;
import com.yihu.jw.entity.base.score.BaseEvaluateScoreDO;
import com.yihu.jw.entity.hospital.message.BaseBannerDO;
import com.yihu.jw.entity.hospital.message.BaseUserMessageDO;
import com.yihu.jw.hospital.message.dao.BaseBannerDao;
import com.yihu.jw.hospital.message.dao.BaseBannerDoctorDao;
import com.yihu.jw.entity.hospital.message.BaseUserMsgContentDO;
import com.yihu.jw.evaluate.score.dao.BaseEvaluateDao;
import com.yihu.jw.evaluate.score.dao.BaseEvaluateScoreDao;
import com.yihu.jw.hospital.message.dao.BaseUserMessageDao;
import com.yihu.jw.hospital.message.dao.BaseUserMsgContentDao;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.jw.rm.hospital.BaseHospitalRequestMapping;
@ -34,9 +38,15 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
    @Autowired
    private BaseUserMessageDao baseUserMessageDao;
    @Autowired
    private BaseUserMsgContentDao baseUserMsgContentDao;
    @Autowired
    private JdbcTemplate jdbcTemplate;
    @Autowired
    private HibenateUtils hibenateUtils;
    @Autowired
    private BaseEvaluateScoreDao baseEvaluateScoreDao;
    @Autowired
    private BaseEvaluateDao baseEvaluateDao;
    @Value("${wechat.id}")
    private String wxId;
@ -46,13 +56,7 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
    private boolean flag;
    //患者给医生自身留言接口
    public void leaveMessage(String content, String reciverId, String reciverName, String senderId, String senderName, String relationCode) {
        List<BaseUserMessageDO> baseUserMessageDOS = baseUserMessageDao.getMessageByCode(relationCode);
        if (baseUserMessageDOS.size()>0){
        BaseUserMessageDO peiviousMessage = baseUserMessageDOS.get(0);
        peiviousMessage.setStatus(2);
        baseUserMessageDao.save(peiviousMessage);
    public void leaveMessage(String content, String reciverId, String reciverName, String senderId, String senderName, String relationCode,Boolean isReply) {
        BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
        baseUserMessageDO.setContent(content);
        baseUserMessageDO.setSender(senderId);
@ -62,46 +66,28 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
        baseUserMessageDO.setRelationCode(relationCode);
        baseUserMessageDO.setRelationName("自身留言");
        baseUserMessageDO.setRelationType(1);
        baseUserMessageDO.setStatus(2);
        baseUserMessageDO.setStatus(1);
        baseUserMessageDO.setDel(1);
        baseUserMessageDao.save(baseUserMessageDO);
        }
        else{
            BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
            baseUserMessageDO.setContent(content);
            baseUserMessageDO.setSender(senderId);
            baseUserMessageDO.setSenderName(senderName);
            baseUserMessageDO.setReceiver(reciverId);
            baseUserMessageDO.setReceiverName(reciverName);
            baseUserMessageDO.setRelationCode(relationCode);
            baseUserMessageDO.setRelationName("自身留言");
            baseUserMessageDO.setRelationType(1);
            baseUserMessageDO.setStatus(1);
            baseUserMessageDO.setDel(1);
            baseUserMessageDao.save(baseUserMessageDO);
        }
    }
    //回复留言接口
    @Transactional
    public void responseMessage(String content, String reciverId, String reciverName, String senderId, String senderName, String relationCode) {
        List<BaseUserMessageDO> baseUserMessageDOS = baseUserMessageDao.getMessageByCode(relationCode);
    public void responseMessage(String contentId,String content, String reciverId, String reciverName, String senderId, String senderName, String relationCode) {
        List<BaseUserMessageDO> baseUserMessageDOS = baseUserMessageDao.getMessageByCode(relationCode,contentId);
        BaseUserMessageDO peiviousMessage = baseUserMessageDOS.get(0);
        peiviousMessage.setStatus(2);
        baseUserMessageDao.save(peiviousMessage);
        BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
        baseUserMessageDO.setContent(content);
        baseUserMessageDO.setSender(senderId);
        baseUserMessageDO.setSenderName(senderName);
        baseUserMessageDO.setReceiver(reciverId);
        baseUserMessageDO.setReceiverName(reciverName);
        baseUserMessageDO.setRelationCode(relationCode);
        baseUserMessageDO.setRelationName("自身留言");
        baseUserMessageDO.setRelationType(1);
        baseUserMessageDO.setStatus(2);
        baseUserMessageDO.setDel(1);
        baseUserMessageDao.save(baseUserMessageDO);
        BaseUserMsgContentDO baseUserMsgContentDO =new BaseUserMsgContentDO();
        baseUserMsgContentDO.setBaseUserMsgId(contentId);
        baseUserMsgContentDO.setContent(content);
        baseUserMsgContentDO.setSender(senderId);
        baseUserMsgContentDO.setSenderName(senderName);
        baseUserMsgContentDO.setReceiver(reciverId);
        baseUserMsgContentDO.setReceiverName(reciverName);
        baseUserMsgContentDO.setDel(1);
        baseUserMsgContentDO.setStatus(1);
        baseUserMsgContentDao.save(baseUserMsgContentDO);
    }
    //评论留言展示
@ -151,14 +137,33 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
        List<Map<String,Object>> list = hibenateUtils.createSQLQuery(sql.toString(),params,page,pageSize);
        List<Map<String, Object>> returnList = new ArrayList<>();
        for (Map<String, Object> map : list) {
            Map<String,Object> returnMap = new HashMap<>();
            String relationCode = map.get("relation_code").toString();
            String id =  map.get("id").toString();
            BaseUserMessageDO baseUserMsgContentDO =new BaseUserMessageDO();
            baseUserMsgContentDO.setId(id);
            baseUserMsgContentDO.setReceiver(map.get("receiver").toString());
            baseUserMsgContentDO.setReceiverName(map.get("receiver_name").toString());
            baseUserMsgContentDO.setSenderName(map.get("sender_name").toString());
            baseUserMsgContentDO.setSenderName(map.get("sender").toString());
            baseUserMsgContentDO.setContent(map.get("content").toString());
            List<BaseUserMsgContentDO> contentlist=baseUserMsgContentDao.getContentListByID(id);
            baseUserMsgContentDO.setMsgList(contentlist);
            String updateTime = map.get("update_time").toString();
            map.put("update_time",DateUtil.dateToStrLong(DateUtil.strToDateLong(updateTime)));
            List<Map<String,Object>> scoreList = this.getListByRelationCode(relationCode);
            if(null!=scoreList){
                map.put("scoreList",scoreList);
            baseUserMsgContentDO.setUpdateTime(DateUtil.strToDateLong(updateTime));
            returnMap.put("contentList",baseUserMsgContentDO);
            //map.put("update_time",DateUtil.dateToStrLong(DateUtil.strToDateLong(updateTime)));
            List<BaseEvaluateDO> baseEvaluateDO=baseEvaluateDao.findByRelationCode(relationCode);
            if (baseEvaluateDO.size()>0){
                String findRC=baseEvaluateDO.get(0).getRelationCode();
                BaseEvaluateScoreDO scoreList = baseEvaluateScoreDao.findOne(relationCode);
                if(null!=scoreList){
                    returnMap.put("everangScore",scoreList);
                    returnMap.put("scoreList",baseEvaluateDO);
                }
            }
            returnList.add(map);
            returnList.add(returnMap);
        }
        return MixEnvelop.getSuccessListWithPage(BaseHospitalRequestMapping.Prescription.api_success, returnList, page, pageSize, count);
    }
@ -220,77 +225,77 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
    //专家咨询留言
    public void expertMessage(String content, String reciverId, String reciverName, String senderId, String senderName, String relationCode) {
        List<BaseUserMessageDO> baseUserMessageDOS = baseUserMessageDao.getMessageByCode(relationCode);
        if (baseUserMessageDOS.size()>0){
            BaseUserMessageDO peiviousMessage = baseUserMessageDOS.get(0);
            peiviousMessage.setStatus(2);
            baseUserMessageDao.save(peiviousMessage);
            BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
            baseUserMessageDO.setContent(content);
            baseUserMessageDO.setSender(senderId);
            baseUserMessageDO.setSenderName(senderName);
            baseUserMessageDO.setReceiver(reciverId);
            baseUserMessageDO.setReceiverName(reciverName);
            baseUserMessageDO.setRelationCode(relationCode);
            baseUserMessageDO.setRelationName("专家咨询");
            baseUserMessageDO.setRelationType(3);
            baseUserMessageDO.setStatus(2);
            baseUserMessageDO.setDel(1);
            baseUserMessageDao.save(baseUserMessageDO);
        BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
        baseUserMessageDO.setContent(content);
        baseUserMessageDO.setSender(senderId);
        baseUserMessageDO.setSenderName(senderName);
        baseUserMessageDO.setReceiver(reciverId);
        baseUserMessageDO.setReceiverName(reciverName);
        baseUserMessageDO.setRelationCode(relationCode);
        baseUserMessageDO.setRelationName("专家咨询");
        baseUserMessageDO.setRelationType(3);
        baseUserMessageDO.setStatus(1);
        baseUserMessageDO.setDel(1);
        baseUserMessageDao.save(baseUserMessageDO);
        }
        else{
            BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
            baseUserMessageDO.setContent(content);
            baseUserMessageDO.setSender(senderId);
            baseUserMessageDO.setSenderName(senderName);
            baseUserMessageDO.setReceiver(reciverId);
            baseUserMessageDO.setReceiverName(reciverName);
            baseUserMessageDO.setRelationCode(relationCode);
            baseUserMessageDO.setRelationName("专家咨询");
            baseUserMessageDO.setRelationType(3);
            baseUserMessageDO.setStatus(1);
            baseUserMessageDO.setDel(1);
            baseUserMessageDao.save(baseUserMessageDO);
        }
    }
    //在线复诊留言
    public void onlineVisitMessage(String content, String reciverId, String reciverName, String senderId, String senderName, String relationCode) {
        BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
        baseUserMessageDO.setContent(content);
        baseUserMessageDO.setSender(senderId);
        baseUserMessageDO.setSenderName(senderName);
        baseUserMessageDO.setReceiver(reciverId);
        baseUserMessageDO.setReceiverName(reciverName);
        baseUserMessageDO.setRelationCode(relationCode);
        baseUserMessageDO.setRelationName("在线复诊");
        baseUserMessageDO.setRelationType(4);
        baseUserMessageDO.setStatus(1);
        baseUserMessageDO.setDel(1);
        baseUserMessageDao.save(baseUserMessageDO);
        List<BaseUserMessageDO> baseUserMessageDOS = baseUserMessageDao.getMessageByCode(relationCode);
        if (baseUserMessageDOS.size()>0){
            BaseUserMessageDO peiviousMessage = baseUserMessageDOS.get(0);
            peiviousMessage.setStatus(2);
            baseUserMessageDao.save(peiviousMessage);
            BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
            baseUserMessageDO.setContent(content);
            baseUserMessageDO.setSender(senderId);
            baseUserMessageDO.setSenderName(senderName);
            baseUserMessageDO.setReceiver(reciverId);
            baseUserMessageDO.setReceiverName(reciverName);
            baseUserMessageDO.setRelationCode(relationCode);
            baseUserMessageDO.setRelationName("在线复诊");
            baseUserMessageDO.setRelationType(4);
            baseUserMessageDO.setStatus(2);
            baseUserMessageDO.setDel(1);
            baseUserMessageDao.save(baseUserMessageDO);
    }
    //评论回复展示
    public Envelop showReply(String relationCode, Integer page, Integer pageSize){
        String sql = dealSql(relationCode,false);
        String sqlCount = dealSql(relationCode,true);
        Map<String,Object> params = new HashedMap();
        if (StringUtils.isNotEmpty(relationCode)){
            params.put("relationCode",relationCode);
        }
        else{
            BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
            baseUserMessageDO.setContent(content);
            baseUserMessageDO.setSender(senderId);
            baseUserMessageDO.setSenderName(senderName);
            baseUserMessageDO.setReceiver(reciverId);
            baseUserMessageDO.setReceiverName(reciverName);
            baseUserMessageDO.setRelationCode(relationCode);
            baseUserMessageDO.setRelationName("在线复诊");
            baseUserMessageDO.setRelationType(4);
            baseUserMessageDO.setStatus(1);
            baseUserMessageDO.setDel(1);
            baseUserMessageDao.save(baseUserMessageDO);
        Long count = 0L;
        List<Map<String,Object>> total = hibenateUtils.createSQLQuery(sqlCount,params);
        if(total!=null){
            //mysql 与 Oracle 聚合函数返回类型不一致,需要判断装换
            count = hibenateUtils.objTransformLong(total.get(0).get("total"));
        }
        List<Map<String,Object>> list = hibenateUtils.createSQLQuery(sql,params,page,pageSize);
        for (Map<String,Object> map:list){
            String createTime= map.get("updateTime").toString();
            String updateTime = map.get("updateTime1").toString();
            map.put("updateTime",DateUtil.dateToStrLong(DateUtil.strToDateLong(createTime)));
            map.put("updateTime1",DateUtil.dateToStrLong(DateUtil.strToDateLong(updateTime)));
        }
        return MixEnvelop.getSuccessListWithPage(BaseHospitalRequestMapping.Prescription.api_success, list, page, pageSize, count);
    }
    private String dealSql(String relationCode,Boolean isCount){
        StringBuffer sql = new StringBuffer();
        if (isCount) {
            sql.append("SELECT COUNT(1) AS \"total\" FROM (");
        }
        sql.append("select " +"b.id AS \"id\",b.content AS \"topContent\",b.sender_name AS \"topSenderName\" " +
                ",a.content AS \"content\",b.update_time  AS \"updateTime\", a.sender_name AS \"senderName\",a.receiver_name AS \"receiverName\",a.update_time  AS \"updateTime1\""+
                "from base_user_msg_content a left join base_user_message b" +
                "on on b.id = a.base_user_msg_id");
        sql.append(" where 1=1 ");
        if (StringUtils.isNotEmpty(relationCode)){
            sql.append(" and a.relation_code = :relationCode");
        }
        if (isCount) {
            sql.append(") t");
        }
        return sql.toString();
    }
}

+ 37 - 0
business/base-service/src/main/java/com/yihu/jw/hospital/message/service/UserMsgContentService.java

@ -0,0 +1,37 @@
package com.yihu.jw.hospital.message.service;
import com.yihu.jw.entity.hospital.message.BaseUserMessageDO;
import com.yihu.jw.entity.hospital.message.BaseUserMsgContentDO;
import com.yihu.jw.hospital.message.dao.BaseUserMessageDao;
import com.yihu.jw.hospital.message.dao.BaseUserMsgContentDao;
import com.yihu.jw.hospital.message.dao.MsgContentDao;
import com.yihu.mysql.query.BaseJpaService;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class UserMsgContentService extends BaseJpaService<BaseUserMsgContentDO, BaseUserMsgContentDao> {
    @Autowired
    private BaseUserMsgContentDao baseUserMsgContentDao;
    @Autowired
    private BaseUserMessageDao userMessageDao;
    @Autowired
    private MsgContentDao msgContentDao;
    //获取评论
    public List getAllMessage(String relationCode){
        List<BaseUserMessageDO> list = msgContentDao.findByRelationCode(relationCode);
        for(int i=0;i<list.size();i++){
            String id = list.get(i).getId();
            List<BaseUserMsgContentDO> contentlist=baseUserMsgContentDao.getContentListByID(id);
            list.get(i).setMsgList(contentlist);
        }
        return  list;
    }
}

+ 16 - 6
business/im-service/src/main/java/com/yihu/jw/im/service/ImService.java

@ -1616,12 +1616,12 @@ public class ImService {
	 * @param type
	 */
	public void evaluationByConsultCode(String consult, String scoreContent, Integer type,String bannerList) throws Exception{
		JSONArray jsonArray =  JSONArray.parseArray(scoreContent);
		
		Integer totalScore = 0;
		
		ConsultTeamDo consultTeamDo = consultTeamDao.findByConsult(consult);
		
		if(!jsonArray.isEmpty() && jsonArray.size() >0){
			BaseEvaluateScoreDO evaluateScoreDO = new BaseEvaluateScoreDO();
			evaluateScoreDO.setDoctor(consultTeamDo.getDoctor());
@ -1671,8 +1671,13 @@ public class ImService {
					baseUserMessageDO.setSender(consultTeamDo.getPatient());
					baseUserMessageDO.setSenderName(consultTeamDo.getName());
					baseUserMessageDO.setRelationCode(baseEvaluateDO.getRelationCode());
					baseUserMessageDO.setRelationType(3);
					baseUserMessageDO.setRelationName("专家咨询");
					if(consultTeamDo.getType()==1||15==consultTeamDo.getType()){
						baseUserMessageDO.setRelationType(3);
						baseUserMessageDO.setRelationName("专家咨询");
					}else if(consultTeamDo.getType()==9||16==consultTeamDo.getType()){
						baseUserMessageDO.setRelationType(4);
						baseUserMessageDO.setRelationName("在线复诊");
					}
					baseUserMessageDO.setUpdateTime(new Date());
					userMessageDao.save(baseUserMessageDO);
					if (org.apache.commons.lang3.StringUtils.isNoneBlank(bannerList)){
@ -1682,13 +1687,18 @@ public class ImService {
							bannerDoctorDO.setCreateTime(new Date());
							bannerDoctorDO.setUpdateTime(new Date());
							bannerDoctorDO.setPatientId(baseUserMessageDO.getSender());
							bannerDoctorDO.setRerelationName(baseUserMessageDO.getSenderName());
							bannerDoctorDO.setRelationName(baseUserMessageDO.getSenderName());
							bannerDoctorDO.setDoctor(baseUserMessageDO.getReceiver());
							bannerDoctorDO.setDoctorName(baseUserMessageDO.getReceiverName());
							bannerDoctorDO.setBannerId(str[i]);
							bannerDoctorDO.setRelationCode(baseEvaluateDO.getRelationCode());
							bannerDoctorDO.setRelationType(3);
							bannerDoctorDO.setRerelationName("专家咨询");
							if(consultTeamDo.getType()==1||15==consultTeamDo.getType()){
								bannerDoctorDO.setRelationType(3);
								bannerDoctorDO.setRelationName("专家咨询");
							}else if(consultTeamDo.getType()==9||16==consultTeamDo.getType()){
								bannerDoctorDO.setRelationType(4);
								bannerDoctorDO.setRelationName("在线复诊");
							}
							bannerDoctorDO.setContent(baseEvaluateDO.getContent());
							baseBannerDoctorDao.save(bannerDoctorDO);
						}

+ 2 - 2
common/common-entity/src/main/java/com/yihu/jw/entity/base/im/ConsultTeamDo.java

@ -20,8 +20,8 @@ public class ConsultTeamDo extends UuidIdentityEntity {
	private String consult;         // 咨询标识
	private String doctor;          // 医生标识
	private String team;            // 三师团队标识
	private Integer type;           //  1、三师咨询,2、家庭医生咨询,
	// 6、患者名医咨询 7医生名医咨询 8续方咨询 9在线复诊咨询(居民直接咨询专家)
	private Integer type;           //  1、15三师咨询,2、家庭医生咨询,
	// 6、患者名医咨询 7医生名医咨询 8续方咨询 9、16在线复诊咨询(居民直接咨询专家)
	// 10医生发起的求助 11思明区上门服务在线咨询
	// 13、互联网医院专家咨询
	private String patient;         // 提问者标识

+ 5 - 5
common/common-entity/src/main/java/com/yihu/jw/entity/hospital/message/BaseBannerDoctorDO.java

@ -44,7 +44,7 @@ public class BaseBannerDoctorDO extends UuidIdentityEntityWithOperator {
    /**
     *业务名称
     */
    private String rerelationName;
    private String relationName;
    /**
     *内容
     */
@ -94,12 +94,12 @@ public class BaseBannerDoctorDO extends UuidIdentityEntityWithOperator {
        this.relationCode = relationCode;
    }
    @Column(name = "relation_name")
    public String getRerelationName() {
        return rerelationName;
    public String getRelationName() {
        return relationName;
    }
    public void setRerelationName(String rerelationName) {
        this.rerelationName = rerelationName;
    public void setRelationName(String rerelationName) {
        this.relationName = rerelationName;
    }
    @Column(name = "banner_id")
    public String getBannerId() {

+ 14 - 3
common/common-entity/src/main/java/com/yihu/jw/entity/hospital/message/BaseUserMessageDO.java

@ -2,8 +2,8 @@ package com.yihu.jw.entity.hospital.message;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.*;
import java.util.List;
/**
 * @author zmk
@ -44,7 +44,7 @@ public class BaseUserMessageDO extends UuidIdentityEntityWithOperator {
    private String relationCode;
    /**
     * 业务类型 1自身留言,2评论留言,3、锦旗留言,4、专家咨询,5、在线复诊
     * 业务类型 1自身留言,2、锦旗留言,3、专家咨询,4、在线复诊
     */
    private Integer relationType;
@ -64,6 +64,17 @@ public class BaseUserMessageDO extends UuidIdentityEntityWithOperator {
     */
    private Integer del;
    @Transient
    private List<BaseUserMsgContentDO> msgList;
    @Transient
    public List<BaseUserMsgContentDO> getMsgList() {
        return msgList;
    }
    public void setMsgList(List<BaseUserMsgContentDO> msgList) {
        this.msgList = msgList;
    }
    public String getContent() {
        return content;
    }

+ 118 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/hospital/message/BaseUserMsgContentDO.java

@ -0,0 +1,118 @@
package com.yihu.jw.entity.hospital.message;
import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.*;
@Entity
@Table(name = "base_user_msg_content")
public class BaseUserMsgContentDO extends UuidIdentityEntityWithOperator {
    /**
     *留言表Id
     */
    private String baseUserMsgId;
    /**
     *留言内容
     */
    private String content;
    /**
     *评论人Id
     */
    private String sender;
    /**
     *评论人Name
     */
    private String senderName;
    /**
     *接收人ID
     */
    private String receiver;
    /**
     *接收人Name
     */
    private String receiverName;
    /**
     *状态(1未回复、2回复)
     */
    private Integer status;
    /**
     *是否删除(1正常0删除)
     */
    private Integer del;
    private BaseUserMessageDO baseUserMessageDO;
    @Transient
    @ManyToOne
    @JoinColumn(name="id")
    public BaseUserMessageDO getBaseUserMessageDO() {
        return baseUserMessageDO;
    }
    public void setBaseUserMessageDO(BaseUserMessageDO baseUserMessageDO) {
        this.baseUserMessageDO = baseUserMessageDO;
    }
    public String getBaseUserMsgId() {
        return baseUserMsgId;
    }
    public void setBaseUserMsgId(String baseUserMsgId) {
        this.baseUserMsgId = baseUserMsgId;
    }
    public String getContent() {
        return content;
    }
    public void setContent(String content) {
        this.content = content;
    }
    public String getSender() {
        return sender;
    }
    public void setSender(String sender) {
        this.sender = sender;
    }
    public String getSenderName() {
        return senderName;
    }
    public void setSenderName(String senderName) {
        this.senderName = senderName;
    }
    public String getReceiver() {
        return receiver;
    }
    public void setReceiver(String receiver) {
        this.receiver = receiver;
    }
    public String getReceiverName() {
        return receiverName;
    }
    public void setReceiverName(String receiverName) {
        this.receiverName = receiverName;
    }
    public Integer getStatus() {
        return status;
    }
    public void setStatus(Integer status) {
        this.status = status;
    }
    public Integer getDel() {
        return del;
    }
    public void setDel(Integer del) {
        this.del = del;
    }
}

+ 1 - 0
common/common-request-mapping/src/main/java/com/yihu/jw/rm/hospital/BaseHospitalRequestMapping.java

@ -1146,6 +1146,7 @@ public class BaseHospitalRequestMapping {
        public static final String getSingleMessage  = "/getSingleMessage";
        public static final String expertMessage  = "/expertMessage";
        public static final String onlineVisitMessage  = "/onlineVisitMessage";
        public static final String getMessage  = "/getMessage";
    }
    /**

+ 35 - 20
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/message/BaseUserMsgController.java

@ -2,6 +2,7 @@ package com.yihu.jw.hospital.endpoint.message;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.hospital.message.service.BaseUserMsgService;
import com.yihu.jw.hospital.message.service.UserMsgContentService;
import com.yihu.jw.restmodel.web.Envelop;
import com.yihu.jw.restmodel.web.endpoint.EnvelopRestEndpoint;
import com.yihu.jw.rm.hospital.BaseHospitalRequestMapping;
@ -23,36 +24,42 @@ import java.util.Map;
public class BaseUserMsgController extends EnvelopRestEndpoint {
    @Autowired
    private BaseUserMsgService baseUserMsgService;
    /*@ApiOperation("评论留言")
    @PostMapping(value= BaseHospitalRequestMapping.UserMessage.leaveMessage)
    public Envelop leaveMessage(@ApiParam(name = "doctor", value = "doctor", required = false)
                              @RequestParam(value = "doctor", required = false)String doctor,
                              @ApiParam(name = "doctorName", value = "doctorName", required = false)
                              @RequestParam(value = "doctorName", required = false)String doctorName,
                              @ApiParam(name = "content", value = "content", required = false)
                                  @RequestParam(value = "content", required = false)String content,
                                          @ApiParam(name = "relationCode", value = "relationCode", required = false)
                                          @RequestParam(value = "relationCode", required = false)String relationCode){
    @Autowired
    private UserMsgContentService userMsgContentService;
    @ApiOperation("回复留言")
    @PostMapping(value= BaseHospitalRequestMapping.UserMessage.responseMessage)
    public Envelop responseMessage(@ApiParam(name = "reciverId", value = "reciverId", required = false)
                                       @RequestParam(value = "reciverId", required = false)String reciverId,
                                   @ApiParam(name = "reciverName", value = "reciverName", required = false)
                                       @RequestParam(value = "reciverName", required = false)String reciverName,
                                   @ApiParam(name = "content", value = "content", required = false)
                                       @RequestParam(value = "content", required = false)String content,
                                   @ApiParam(name = "relationCode", value = "relationCode", required = false)
                                       @RequestParam(value = "relationCode", required = false)String relationCode,
                                   @ApiParam(name = "contentId", value = "contentId", required = false)
                                       @RequestParam(value = "contentId", required = false)String  contentId){
        String patient = getUID();
        String patinetName = getUNAME();
        baseUserMsgService.leaveMessage(content,doctor,doctorName,patient,patinetName,relationCode);
        return success("评论成功" );
    }*/
        baseUserMsgService.responseMessage(contentId,content,reciverId,reciverName,patient,patinetName,relationCode);
        return success("回复成功" );
    }
    @ApiOperation("自身评论")
    @PostMapping(value= BaseHospitalRequestMapping.UserMessage.responseMessage)
    public Envelop responseMessage(@ApiParam(name = "reciverId", value = "reciverId", required = false)
    @PostMapping(value= BaseHospitalRequestMapping.UserMessage.leaveMessage)
    public Envelop leaveMessage(@ApiParam(name = "reciverId", value = "reciverId", required = false)
                              @RequestParam(value = "reciverId", required = false)String reciverId,
                              @ApiParam(name = "reciverName", value = "reciverName", required = false)
                              @RequestParam(value = "reciverName", required = false)String reciverName,
                              @ApiParam(name = "content", value = "content", required = false)
                              @RequestParam(value = "content", required = false)String content,
                              @ApiParam(name = "relationCode", value = "relationCode", required = false)
                              @RequestParam(value = "relationCode", required = false)String relationCode){
                              @RequestParam(value = "relationCode", required = false)String relationCode,
                                   @ApiParam(name = "isReply", value = "isReply", required = false)
                                       @RequestParam(value = "isReply", required = false)Boolean isReply){
        String senderId = getUID();
        String senderName = getUNAME();
        baseUserMsgService.leaveMessage(content,reciverId,reciverName,senderId,senderName,relationCode);
        baseUserMsgService.leaveMessage(content,reciverId,reciverName,senderId,senderName,relationCode,isReply);
        return success("留言成功" );
    }
}
    @ApiOperation("医生评论展示")
    @PostMapping(value= BaseHospitalRequestMapping.UserMessage.showMessage)
    public Envelop showMessage(@ApiParam(name = "doctor", value = "doctor", required = false)
@ -94,7 +101,7 @@ public class BaseUserMsgController extends EnvelopRestEndpoint {
                                   @RequestParam(value = "relationCode", required = false)String relationCode){
        String senderId = getUID();
        String senderName = getUNAME();
        baseUserMsgService.leaveMessage(content,reciverId,reciverName,senderId,senderName,relationCode);
        baseUserMsgService.onlineVisitMessage(content,reciverId,reciverName,senderId,senderName,relationCode);
        return success("留言成功" );
    }
    @ApiOperation("专家咨询")
@ -109,7 +116,15 @@ public class BaseUserMsgController extends EnvelopRestEndpoint {
                                   @RequestParam(value = "relationCode", required = false)String relationCode){
        String senderId = getUID();
        String senderName = getUNAME();
        baseUserMsgService.leaveMessage(content,reciverId,reciverName,senderId,senderName,relationCode);
        baseUserMsgService.expertMessage(content,reciverId,reciverName,senderId,senderName,relationCode);
        return success("留言成功" );
    }
    @ApiOperation("获取评论")
    @PostMapping(value= BaseHospitalRequestMapping.UserMessage.getMessage)
    public Envelop getMessage(
                                 @ApiParam(name = "relationCode", value = "relationCode", required = false)
                                 @RequestParam(value = "relationCode", required = false)String relationCode){
        return success(userMsgContentService.getAllMessage(relationCode));
    }
}