Forráskód Böngészése

Merge branch 'dev' of http://192.168.1.220:10080/Amoy2/wlyy2.0 into dev

# Conflicts:
#	common/common-entity/src/main/java/com/yihu/jw/entity/base/doctor/BaseDoctorBackgroundDO.java
wangjun 4 éve
szülő
commit
767ba470ed

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

@ -14,11 +14,15 @@ 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.status = 1 and t.id = ?1 order by t.update_time asc limit 0,1",nativeQuery = true)
    @Query(value = "select * from base_user_message t where  t.status = 1 and t.id = ?1 order by t.update_time desc limit 0,1",nativeQuery = true)
    List<BaseUserMessageDO> getMessageByCode(String Id);
    @Query(value = "select * from base_user_message t where t.relation_code = ?1 order by t.update_time asc ",nativeQuery = true)
    @Query(value = "select * from base_user_message t where t.relation_code = ?1 order by t.update_time desc ",nativeQuery = true)
    List<BaseUserMessageDO> getAllMessageByCode(String relationCode);
    @Query(value = "select * from base_user_message t where t.receiver = ?1 order by t.update_time desc ",nativeQuery = true)
    List<BaseUserMessageDO> getAllMessageByDoctor(String doctor);
    @Query(value = "select count(1) from base_user_message t where t.receiver = ?1 order by t.update_time desc ",nativeQuery = true)
    Integer getAllMessageTotalCount(String doctor);
}

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

@ -153,6 +153,7 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
        if (StringUtils.isNotEmpty(endTime)) {
            sql.append(" and t.update_time < '" + endTime+"'");//DateUtil.stringToDate(endTime,"yyyy-MM-dd HH:mm:ss")
        }
        sql.append(" GROUP BY t.relation_code ORDER BY t.update_time Desc");
        String sqlcount = "SELECT COUNT(1) AS \"total\" FROM ("+sql.toString()+") t";
        Long count = 0L;
        List<Map<String,Object>> total = hibenateUtils.createSQLQuery(sqlcount,params);
@ -160,7 +161,6 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
            //mysql 与 Oracle 聚合函数返回类型不一致,需要判断装换
            count = hibenateUtils.objTransformLong(total.get(0).get("total"));
        }
        sql.append(" GROUP BY t.relation_code ORDER BY t.update_time Desc");
        System.out.println(sql.toString());
        List<Map<String,Object>> list = hibenateUtils.createSQLQuery(sql.toString(),params,page,pageSize);
        List<Map<String, Object>> returnList = new ArrayList<>();
@ -354,4 +354,5 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
        }
        return sql.toString();
    }
}

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

@ -1,5 +1,6 @@
package com.yihu.jw.hospital.message.service;
import com.alibaba.fastjson.JSONObject;
import com.yihu.jw.entity.hospital.message.BaseUserMessageDO;
import com.yihu.jw.entity.hospital.message.BaseUserMsgContentDO;
import com.yihu.jw.hospital.message.dao.BaseUserMessageDao;
@ -29,6 +30,8 @@ public class UserMsgContentService extends BaseJpaService<BaseUserMsgContentDO,
    private MsgContentDao msgContentDao;
    @Autowired
    private HibenateUtils hibenateUtils;
    @Autowired
    private BaseBannerDoctorService bannerDoctorService;
    //获取评论
    public List getAllMessage(String relationCode){
        List<BaseUserMessageDO> list = msgContentDao.findByRelationCode(relationCode);
@ -121,5 +124,49 @@ public class UserMsgContentService extends BaseJpaService<BaseUserMsgContentDO,
        }
        return sqlForExpert.toString();
    }
    //医生主页展示的医生信息
    public JSONObject showContentByDoctor(String doctor){
        //锦旗总数和各个锦旗数量
        JSONObject jsonObject = bannerDoctorService.getDoctorBanners(doctor);
        //留言总数
        int messageTotal = userMessageDao.getAllMessageTotalCount(doctor);
        //查询医生各项评价平均分
        String sqlscore = "SELECT " +
                "AVG(a.score) AS \"score\"," +
                "a.score_type AS \"score_type\" " +
                "FROM base_evaluate a,base_evaluate_score b " +
                "WHERE " +
                "a.relation_code=b.id " +
                "AND b.doctor='" + doctor + "' " +
                "GROUP BY a.score_type ORDER BY  a.score_type ASC ";
        List<Map<String, Object>> listscore = jdbcTemplate.queryForList(sqlscore);
        Double doctorScore = new Double("0");
        if (listscore != null && listscore.size() > 0) {
            for (Map<String, Object> _listscore : listscore) {
                doctorScore += Double.parseDouble(_listscore.get("score").toString());
            }
        }
        doctorScore = doctorScore / 3;
        //总评
        jsonObject.put("doctorScore", doctorScore);
        if (listscore != null && listscore.size() > 0) {
            //各项平均分
            jsonObject.put("scoreDoctor", listscore);
        } else {
            jsonObject.put("scoreDoctor", null);
        }
        List<BaseUserMessageDO> messageList= userMessageDao.getAllMessageByDoctor(doctor);
        if (null!=messageList){
            for (BaseUserMessageDO baseUserMessageDO:messageList){
                String id = baseUserMessageDO.getId();
                List<BaseUserMsgContentDO> contentlist=baseUserMsgContentDao.getContentListByID(id);
                baseUserMessageDO.setMsgList(contentlist);
            }
            jsonObject.put("messageList", messageList);
        }
        return jsonObject;
    }
}

+ 8 - 2
business/im-service/src/main/java/com/yihu/jw/im/service/ImService.java

@ -1632,7 +1632,7 @@ public class ImService {
			evaluateScoreDO.setEvaluateType(1);
			evaluateScoreDO.setType(type);
			evaluateScoreDO.setId(UUID.randomUUID().toString());
			
			String content = "";//评价内容
			
			List<BaseEvaluateDO> baseEvaluateDOS = new ArrayList<>();
@ -1667,7 +1667,10 @@ public class ImService {
					BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
					baseUserMessageDO.setCreateTime(new Date());
					baseUserMessageDO.setReceiver(consultTeamDo.getDoctor());
					baseUserMessageDO.setReceiverName(consultTeamDo.getDoctorName());
					BaseDoctorDO baseDoctorDO = baseDoctorDao.findById(consultTeamDo.getDoctor());
					if (baseDoctorDO!=null){
						baseUserMessageDO.setReceiverName(baseDoctorDO.getName());
					}
					baseUserMessageDO.setSender(consultTeamDo.getPatient());
					baseUserMessageDO.setSenderName(consultTeamDo.getName());
					baseUserMessageDO.setRelationCode(baseEvaluateDO.getRelationCode());
@ -1678,6 +1681,9 @@ public class ImService {
						baseUserMessageDO.setRelationType(4);
						baseUserMessageDO.setRelationName("在线复诊");
					}
					baseUserMessageDO.setContent(baseEvaluateDO.getContent());
					baseUserMessageDO.setDel(1);
					baseUserMessageDO.setStatus(1);
					baseUserMessageDO.setUpdateTime(new Date());
					userMessageDao.save(baseUserMessageDO);
					if (org.apache.commons.lang3.StringUtils.isNoneBlank(bannerList)){

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

@ -1175,6 +1175,7 @@ public class BaseHospitalRequestMapping {
        public static final String onlineVisitMessage  = "/onlineVisitMessage";
        public static final String getMessage  = "/getMessage";
        public static final String getPoint  = "/getPoint";
        public static final String showDoctorMessage  = "/showDoctorMessage";
    }
    /**

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

@ -132,4 +132,17 @@ public class BaseUserMsgController extends EnvelopRestEndpoint {
        return success(userMsgContentService.countPoint(doctor));
    }
    /*@ApiOperation("医生评论展示")
    @PostMapping(value= BaseHospitalRequestMapping.UserMessage.showDoctorMessage)
    public Envelop showDoctorMessage(@ApiParam(name = "doctor", value = "doctor", required = false)
                               @RequestParam(value = "doctor", required = false)String doctor,
                               @ApiParam(name = "page", value = "第几页,从1开始", required = true, defaultValue = "1")
                               @RequestParam(value = "page", required = true,defaultValue = "1")Integer page,
                               @ApiParam(name = "pageSize", value = "每页分页大小", required = true, defaultValue = "10")
                               @RequestParam(value = "pageSize", required = true,defaultValue = "10")Integer pageSize){
        return baseUserMsgService.getMessage(doctor,showAll,showAllType,beginTime,endTime,page,pageSize);
    }*/
}