Переглянути джерело

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 роки тому
батько
коміт
13761e69e7

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

@ -30,4 +30,5 @@ public interface BaseBannerDao extends PagingAndSortingRepository<BaseBannerDO,
    BaseBannerDO upBanner(Integer sort);
    @Query(value = "select * from base_banner where id = ( select id from base_banner where sort < ?1 order by sort desc limit 0,1)",nativeQuery = true)
    BaseBannerDO downBanner(Integer sort);
}

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

@ -18,6 +18,6 @@ public interface BaseBannerDoctorDao extends PagingAndSortingRepository<BaseBann
    //获取医生获得锦旗总量的接口
    @Query( value = "SELECT COUNT(1) AS \"total\"  FROM base_banner_doctor a LEFT JOIN base_banner b on a.banner_id= b.id where a.doctor = ?1",nativeQuery = true)
    Integer getTotalBannerCount(String doctor);
    @Query( value = "SELECT * from base_banner_doctor t where t.doctor = ?1 and t.patient_id =?2" ,nativeQuery = true)
    List<BaseBannerDoctorDO> getBanners(String doctor,String patientId);
    @Query( value = "SELECT * from base_banner_doctor t where t.doctor = ?1 and t.patient_id =?2 and t.relation_code =?3" ,nativeQuery = true)
    List<BaseBannerDoctorDO> getBanners(String doctor,String patientId,String relationCode);
}

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

@ -23,6 +23,11 @@ public interface BaseUserMessageDao extends PagingAndSortingRepository<BaseUserM
    List<BaseUserMessageDO> getAllMessageByDoctor(String doctor,Integer page,Integer pageSize);
    @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);
    @Query(value = "select count(1) from base_user_message t where t.receiver = ?1 and t.is_read = 0 order by t.update_time desc ",nativeQuery = true)
    Integer getMessageNotReadCount(String doctor);
    @Query(value = "select * from base_user_message t where t.receiver = ?1 and t.is_read = 0 order by t.update_time desc limit ?2,?3",nativeQuery = true)
    List<BaseUserMessageDO> getMessageNotRead(String doctor,Integer page ,Integer pageSize);
}

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

@ -44,6 +44,7 @@ public class BaseBannerDoctorService extends BaseJpaService<BaseBannerDoctorDO,
        String patientName = null;
        BasePatientDO basePatientDO=patientDao.findById(patientId);
        List<BaseBannerDoctorDO> bannerList = new ArrayList<>();
        String relationCode= UUID.randomUUID().toString();
        if(null!=basePatientDO){
            patientName = basePatientDO.getName();
        }
@ -58,14 +59,14 @@ public class BaseBannerDoctorService extends BaseJpaService<BaseBannerDoctorDO,
                baseBannerDoctorDO.setPatientName(patientName);
                baseBannerDoctorDO.setRelationType(1);
                baseBannerDoctorDO.setRelationName("赠送锦旗");
                baseBannerDoctorDO.setRelationCode("system");
                baseBannerDoctorDO.setRelationCode(relationCode);
                bannerList.add(baseBannerDoctorDO);
                baseBannerDoctorDao.save(baseBannerDoctorDO);
            }
            BaseUserMessageDO baseUserMessageDO = new BaseUserMessageDO();
            baseUserMessageDO.setReceiver(doctor);
            baseUserMessageDO.setReceiverName(doctorName);
            baseUserMessageDO.setRelationCode(UUID.randomUUID().toString());
            baseUserMessageDO.setRelationCode(relationCode);
            baseUserMessageDO.setSender(patientId);
            baseUserMessageDO.setSenderName(patientName);
            baseUserMessageDO.setRelationName("赠送锦旗");
@ -73,6 +74,7 @@ public class BaseBannerDoctorService extends BaseJpaService<BaseBannerDoctorDO,
            baseUserMessageDO.setStatus(1);
            baseUserMessageDO.setDel(1);
            baseUserMessageDO.setType(type);
            baseUserMessageDO.setIsRead(0);
            baseUserMessageDao.save(baseUserMessageDO);
        }
        return bannerList;
@ -93,4 +95,24 @@ public class BaseBannerDoctorService extends BaseJpaService<BaseBannerDoctorDO,
        return jsonObject;
    }
    //未读消息改为已读的接口
    public void isRead(String messageId){
        BaseUserMessageDO baseUserMessageDO = baseUserMessageDao.findOne(messageId);
        if (null!=baseUserMessageDO){
            baseUserMessageDO.setIsRead(1);
            baseUserMessageDao.save(baseUserMessageDO);
        }
    }
    //获取未读消息
    public JSONObject getMessageNotRead(String doctor,Integer page,Integer pageSize){
        Integer pagecount = (page-1)*pageSize;
        int count = baseUserMessageDao.getMessageNotReadCount(doctor);
        List<BaseUserMessageDO> list = baseUserMessageDao.getMessageNotRead(doctor,pagecount,pageSize);
        JSONObject jsonObject = new JSONObject();
        if (list.size()>0){
            jsonObject.put("messageNotRead",list);
        }
        jsonObject.put("totalCount",count);
        return jsonObject;
    }
}

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

@ -12,6 +12,7 @@ import com.yihu.jw.entity.hospital.message.BaseUserMessageDO;
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.BaseBannerDao;
import com.yihu.jw.hospital.message.dao.BaseBannerDoctorDao;
import com.yihu.jw.hospital.message.dao.BaseUserMessageDao;
import com.yihu.jw.hospital.message.dao.BaseUserMsgContentDao;
@ -60,6 +61,8 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
    private BaseDoctorDao baseDoctorDao;
    @Autowired
    private BaseBannerDoctorDao baseBannerDoctorDao;
    @Autowired
    private BaseBannerDao bannerDao;
    @Value("${wechat.id}")
    private String wxId;
@ -88,6 +91,7 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
        baseUserMessageDO.setStatus(1);
        baseUserMessageDO.setDel(1);
        baseUserMessageDO.setType(type);
        baseUserMessageDO.setIsRead(0);
        baseUserMessageDao.save(baseUserMessageDO);
    }
@ -97,6 +101,7 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
        BaseUserMessageDO baseUserMessageDOS = baseUserMessageDao.findOne(contentId);
        if(null!=baseUserMessageDOS){
            baseUserMessageDOS.setStatus(2);
            baseUserMessageDOS.setIsRead(1);
        }
        baseUserMessageDao.save(baseUserMessageDOS);
        BaseUserMsgContentDO baseUserMsgContentDO =new BaseUserMsgContentDO();
@ -217,7 +222,11 @@ public class BaseUserMsgService extends BaseJpaService<BaseUserMessageDO, BaseUs
            baseUserMsgDO.setStatus(Integer.valueOf(map.get("status").toString()));
            BasePatientDO patientDO = basePatientDao.findById(map.get("sender").toString());
            if(baseUserMsgDO.getRelationType()==2){
                List<BaseBannerDoctorDO> ba =  baseBannerDoctorDao.getBanners(baseUserMsgDO.getReceiver(),baseUserMsgDO.getSender());
                List<BaseBannerDoctorDO> ba =  baseBannerDoctorDao.getBanners(baseUserMsgDO.getReceiver(),baseUserMsgDO.getSender(),baseUserMsgDO.getRelationCode());
                for (BaseBannerDoctorDO bannerDoctorDO:ba){
                    BaseBannerDO bannerDO = bannerDao.findOne(bannerDoctorDO.getBannerId());
                    bannerDoctorDO.setBaseBannerDO(bannerDO);
                }
                baseUserMsgDO.setBannerList(ba);
            }
            String icon = null;

+ 1 - 0
business/im-service/src/main/java/com/yihu/jw/im/service/ImService.java

@ -1686,6 +1686,7 @@ public class ImService {
					baseUserMessageDO.setStatus(1);
					baseUserMessageDO.setType(type);
					baseUserMessageDO.setUpdateTime(new Date());
					baseUserMessageDO.setIsRead(0);
					userMessageDao.save(baseUserMessageDO);
					if (org.apache.commons.lang3.StringUtils.isNoneBlank(bannerList)){
						String str[]=bannerList.split(",");

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

@ -5,6 +5,7 @@ import com.yihu.jw.entity.UuidIdentityEntityWithOperator;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.persistence.Transient;
/**
 * @author zmk
@ -54,6 +55,9 @@ public class BaseBannerDoctorDO extends UuidIdentityEntityWithOperator {
     */
    private Integer relationType;
    @Transient
    private BaseBannerDO baseBannerDO;
    public Integer getRelationType() {
        return relationType;
    }
@ -125,4 +129,13 @@ public class BaseBannerDoctorDO extends UuidIdentityEntityWithOperator {
    public void setDoctorName(String doctorName) {
        this.doctorName = doctorName;
    }
    @Transient
    public BaseBannerDO getBaseBannerDO() {
        return baseBannerDO;
    }
    public void setBaseBannerDO(BaseBannerDO baseBannerDO) {
        this.baseBannerDO = baseBannerDO;
    }
}

+ 12 - 0
common/common-entity/src/main/java/com/yihu/jw/entity/hospital/message/BaseUserMessageDO.java

@ -67,6 +67,18 @@ public class BaseUserMessageDO extends UuidIdentityEntityWithOperator {
     * 是否匿名1、实名,2、匿名
     */
    private Integer type;
    /**
     * 是否匿名1、已读,2、未读
     */
    private Integer isRead;
    public Integer getIsRead() {
        return isRead;
    }
    public void setIsRead(Integer isRead) {
        this.isRead = isRead;
    }
    public Integer getType() {
        return type;

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

@ -1148,6 +1148,8 @@ public class BaseHospitalRequestMapping {
        public static final String doctorBanner  = "/doctorBanner";
        public static final String giveBanner  = "/giveBanner";
        public static final String getBanner  = "/getBanner";
        public static final String getMessageNotRead  = "/getMessageNotRead";
        public static final String changeIsRead = "/changeIsRead";
    }
    /**

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

@ -11,6 +11,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.Page;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
@ -54,4 +55,22 @@ public class BannerDoctorController extends EnvelopRestEndpoint {
        JSONObject jsonObject = baseBannerDoctorService.getDoctorBanners(doctor);
        return success(jsonObject);
    }
    @ApiOperation("查询未读消息")
    @PostMapping(value= BaseHospitalRequestMapping.DoctorBanner.getMessageNotRead)
    public Envelop getNotRead(@ApiParam(name = "doctor", value = "doctor", required = false)
                              @RequestParam(value = "doctor", required = false)String doctor,
                              @ApiParam(name = "page", value = "page", required = false)
                              @RequestParam(value = "page", required = false)Integer page,
                              @ApiParam(name = "pageSize", value = "pageSize", required = false)
                                  @RequestParam(value = "pageSize", required = false)Integer pageSize){
        JSONObject jsonObject = baseBannerDoctorService.getMessageNotRead(doctor,page,pageSize);
        return success(jsonObject);
    }
    @ApiOperation("修改消息已读状态")
    @PostMapping(value= BaseHospitalRequestMapping.DoctorBanner.changeIsRead)
    public Envelop changeIsRead(@ApiParam(name = "id", value = "id", required = false)
                              @RequestParam(value = "id", required = false)String id){
         baseBannerDoctorService.isRead(id);
        return success("success");
    }
}