فهرست منبع

Merge branch 'dev' of http://192.168.1.220:10080/Amoy/patient-co-management into dev

yeshijie 7 سال پیش
والد
کامیت
7b05b87a5e

+ 13 - 0
edu-article/JkEdu/src/com/yihu/jk/api/CategoryApi.java

@ -78,6 +78,19 @@ public class CategoryApi {
		return dao.addCategory(vo).toString();
	}
	public String checkCategory(InterfaceMessage im)throws SQLException{
		JSONObject json = JSONObject.fromObject(im.getParam());
		String categoryName = StringUtil.isEmpty(json.get("categoryName")) ? null : json.getString("categoryName");
		Integer categoryLevel = StringUtil.isEmpty(json.get("categoryLevel")) ? null : json.getInt("categoryLevel");
		Category vo = new Category();
		vo.setCategoryName(categoryName);
		vo.setCategoryLevel(categoryLevel);
		com.common.json.JSONObject  j =dao.getCategoryList(vo);
		return j.toString();
	}
	/**
	 * 更新文章分类
	 * @param im

+ 13 - 0
edu-article/JkEdu/src/com/yihu/jk/dao/CategoryDao.java

@ -46,7 +46,20 @@ public class CategoryDao {
//		sql.addVar("@UserId", paramUserId.toString());
		sql.addVar("@Condition", param.toString());
		return DB.me().queryForJson(MyDatabaseEnum.JkEduDB, sql, start, pageSize);
	}
	public JSONObject getCategoryList(Category vo) throws SQLException {
		Sql sql = DB.me().createSql(CategorySqlNameEnum.getCategoryList);
		StringBuffer param = new StringBuffer();
		StringBuffer paramUserId = new StringBuffer();
		if (StringUtil.isNotEmpty(vo.getCategoryLevel())) {
			param.append(" and CategoryName =").append(vo.getCategoryName());
		}
		if (StringUtil.isNotEmpty(vo.getFirstlevelId())) {
			param.append(" and CategoryLevel =").append(vo.getCategoryLevel());
		}
		sql.addVar("@Condition", param.toString());
		return DB.me().queryForJson(MyDatabaseEnum.JkEduDB, sql);
	}
	// 保存分类

+ 0 - 1
edu-article/JkEdu/src/com/yihu/jk/enums/CategorySqlNameEnum.java

@ -7,5 +7,4 @@ public enum CategorySqlNameEnum implements SqlNameEnum {
	getCategoryList,
	addCategory,
	updateCategory,
}

+ 72 - 28
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/jimeiJkEdu/JMJkEduArticleService.java

@ -29,8 +29,7 @@ import com.yihu.wlyy.web.third.gateway.service.GcLabelService;
import com.yihu.wlyy.web.third.gateway.vo.DictModel;
import com.yihu.wlyy.web.third.gateway.vo.HealthEduArticlePatientModel;
import io.searchbox.client.JestClient;
import io.searchbox.core.Search;
import io.searchbox.core.SearchResult;
import io.searchbox.core.*;
import org.elasticsearch.index.query.BoolQueryBuilder;
import org.elasticsearch.index.query.QueryBuilders;
import org.elasticsearch.search.builder.SearchSourceBuilder;
@ -117,10 +116,10 @@ public class JMJkEduArticleService extends BaseService {
            sql2.append(" and sendType='"+sendType+"' ");
        }
        if(!StringUtils.isEmpty(firstLevelCategoryId)){
            sql2.append("and level1Type="+firstLevelCategoryId);
            sql2.append("and firstLevelCategoryId="+firstLevelCategoryId);
        }
        if(!StringUtils.isEmpty(secondLevelCategoryId)){
            sql2.append("and level2Type="+secondLevelCategoryId);
            sql2.append("and secondLevelCategoryId="+secondLevelCategoryId);
        }
        if(myArticle==1){
            sql2.append(" and operatorId="+sendCode);
@ -139,7 +138,7 @@ public class JMJkEduArticleService extends BaseService {
            sql2.append(" and createTime <='"+sendTimeEnd+"'");
        }
        sql2.append("  order by createTime limit " + page + "," + pagesize);
        List<com.yihu.es.entity.HealthEduArticlePatient> esList = elasticsearchUtil.excute(sql2.toString(), com.yihu.es.entity.HealthEduArticlePatient.class, esIndex, esType);
        List<HealthEduArticleES> esList = elasticsearchUtil.excute(sql2.toString(), HealthEduArticleES.class, esIndex, esType);
        Map<String, HealthEduArticlePatientModel> result = new HashMap<>();
        HealthEduArticlePatientModel heapm = null;
        com.alibaba.fastjson.JSONObject article = null;
@ -147,7 +146,7 @@ public class JMJkEduArticleService extends BaseService {
    
        List<HealthEduArticlePatientModel> resultList = new ArrayList<>();
        
        for (HealthEduArticlePatient one : esList) {
        for (HealthEduArticleES one : esList) {
            article = thirdJkEduArticleService.getArticalById(one.getArticleId(),"");
            if (result.get(one.getArticleId()) != null) {
                heapm = result.get(one.getArticleId());
@ -162,19 +161,27 @@ public class JMJkEduArticleService extends BaseService {
            heapm.setAttachedTitle(article.getString("articleTitle"));
            heapm.setAttachedContent(article.getString("articleContent"));
            heapm.setArticleType(article.getString("articleType"));
            heapm.setLevel1Type(article.getString("firstLevelCategoryId"));
            heapm.setLevel2Type(article.getString("secondLevelCategoryId"));
            heapm.setLevel1Type(one.getFirstLevelCategoryId());
            heapm.setLevel1TypeName(one.getFirstLevelCategoryName());
            heapm.setLevel2Type(one.getSecondLevelCategoryId());
            heapm.setLevel2TypeName(one.getSecondLevelCategoryName());
            heapm.setLevel(article.getString("articlelevel"));
            heapm.setAllCount(heapm.getAllCount() + one.getPatients().size());
            if(article.getString("browseNumber") != null){
//            heapm.setAllCount(heapm.getAllCount() + one.getPatients().size());
            if(!StringUtils.isEmpty(article.getString("browseNumber"))){
                heapm.setBrowseNumbere(Integer.valueOf(article.getString("browseNumber")));//文章浏览数
            }else{
                heapm.setBrowseNumbere(0);//文章浏览数
            }
            if(article.getString("commentNumber") != null){
            if(!StringUtils.isEmpty(article.getString("commentNumber"))){
                heapm.setCommentNumber(Integer.valueOf(article.getString("commentNumber")));//文章评论数
            }else{
                heapm.setCommentNumber(0);//文章评论数
            }
            
            if(article.getString("pointNumber") != null){
            if(!StringUtils.isEmpty(article.getString("pointNumber"))){
                heapm.setPointNumber(Integer.valueOf(article.getString("pointNumber")));//文章点赞数
            }else{
                heapm.setPointNumber(0);//文章点赞数
            }
            
            heapm.setArticleCover(article.getString("articleCover"));//封面
@ -201,20 +208,20 @@ public class JMJkEduArticleService extends BaseService {
     * @return
     * @throws Exception
     */
    public List<HealthEduArticlePatient> pushArticleListCount(String sendCode,  String firstLevelCategoryId,String secondLevelCategoryId,Integer myArticle,Integer sendType,String currentUserRole,
    public List<HealthEduArticleES> pushArticleListCount(String sendCode,  String firstLevelCategoryId,String secondLevelCategoryId,Integer myArticle,Integer sendType,String currentUserRole,
                                                              String currentUserRoleLevel,String articleTitle,String sendTimeStart,String sendTimeEnd) throws Exception {
        StringBuffer sql2 = new StringBuffer("select *  from   " + esType +
                " where  doctorCode='" + sendCode + "'");
                " where  sendCode='" + sendCode + "'");
        if(sendType==1){
            sql2.append(" and sendType='"+sendType+"' ");
        }
        if(!StringUtils.isEmpty(firstLevelCategoryId)){
            sql2.append("and level1Type="+firstLevelCategoryId);
            sql2.append("and firstLevelCategoryId="+firstLevelCategoryId);
        }
        if(!StringUtils.isEmpty(secondLevelCategoryId)){
            sql2.append("and level2Type="+secondLevelCategoryId);
            sql2.append("and secondLevelCategoryId="+secondLevelCategoryId);
        }
        if(myArticle==1){
            sql2.append(" and operatorId="+sendCode);
@ -232,7 +239,7 @@ public class JMJkEduArticleService extends BaseService {
            sendTimeEnd = elasticsearchUtil.changeTime(sendTimeEnd);
            sql2.append(" and createTime <='"+sendTimeEnd+"'");
        }
        List<HealthEduArticlePatient> esList = elasticsearchUtil.excute(sql2.toString(), com.yihu.es.entity.HealthEduArticlePatient.class, esIndex, esType);
        List<HealthEduArticleES> esList = elasticsearchUtil.excute(sql2.toString(),HealthEduArticleES.class, esIndex, esType);
        return esList;
    }
@ -1041,31 +1048,68 @@ public class JMJkEduArticleService extends BaseService {
        
    }
    
    /**
     * 一键修改居民推送文章的文章为已读
     * @param patient
     */
    public void readAllArticleNew(String patient){
        JestClient jestClient = null;
    
        try {
            jestClient = elasticFactory.getJestClient();
            SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
            searchSourceBuilder.query(
                    new BoolQueryBuilder()
                            .must(QueryBuilders.matchQuery("patientCode", patient))
            );
            Search search = new Search.Builder(searchSourceBuilder.toString()).addIndex(esIndex).addType(esType).build();
            SearchResult result = jestClient.execute(search);
            List<HealthEduArticleES> dataList = result.getSourceAsObjectList(HealthEduArticleES.class);
            if(!dataList.isEmpty()){
                //根据id批量删除
                Bulk.Builder bulk = new Bulk.Builder().defaultIndex(esIndex).defaultType(esType);
                for (HealthEduArticleES obj : dataList) {
                    Delete index = new Delete.Builder(obj.getId()).build();
                    bulk.addAction(index);
                }
                BulkResult br = jestClient.execute(bulk.build());
            }
            for (HealthEduArticleES healthEduArticleES:dataList) {
                healthEduArticleES.setIsRead(1);
            }
            elastricSearchSave.save(dataList,esIndex,esType);
            jestClient.shutdownClient();
        }catch (Exception e){
            e.printStackTrace();
        } finally {
            if (jestClient != null) {
                jestClient.shutdownClient();
            }
        }
    }
    
    public JSONArray pushArticleLogs(int page, int pagesize, String patientCode,String level1Type) throws Exception {
        pagesize = page * pagesize;
        page = (page - 1) * pagesize;
//
//        StringBuffer sql2 = new StringBuffer("select *  from   " + esType +
//                " where  sendCode='" + sendCode + "' ");
//        sql2.append("  order by createTime limit " + page + "," + pagesize);
        String sql = "SELECT * FROM " + esType + "  where nested(patients.code)= '" + patientCode + "' ";
        String sql = "SELECT * FROM " + esType + "  where patientCode= '" + patientCode + "' ";
        
        if(!StringUtils.isEmpty(level1Type)){
            sql= sql + " and level1Type = '"+level1Type+"' ";
            sql= sql + " and firstLevelCategoryId = '"+level1Type+"' ";
        }
        
        if(page !=0 && pagesize !=0){
            sql= sql+  " order by createTime desc limit " + page + "," + pagesize;
        }
        
        List<com.yihu.es.entity.HealthEduArticlePatient> esList = elasticsearchUtil.excute(sql, com.yihu.es.entity.HealthEduArticlePatient.class, esIndex, esType);
        List<HealthEduArticleES> esList = elasticsearchUtil.excute(sql, HealthEduArticleES.class, esIndex, esType);
        HealthEduArticlePatientModel heapm = null;
        com.alibaba.fastjson.JSONObject article = null;
        List<HealthEduArticlePatientModel> result = new ArrayList<>();
        Doctor doctor = null;
        for (HealthEduArticlePatient one : esList) {
        for (HealthEduArticleES one : esList) {
            article = thirdJkEduArticleService.getArticalById(one.getArticleId(),"");
            heapm = new HealthEduArticlePatientModel();
            heapm.setSendName(one.getSendName());
@ -1078,7 +1122,7 @@ public class JMJkEduArticleService extends BaseService {
            heapm.setLevel1Type(article.getString("firstLevelCategoryId"));
            heapm.setLevel2Type(article.getString("secondLevelCategoryId"));
            heapm.setLevel(article.getString("articlelevel"));
            heapm.setAllCount(heapm.getAllCount() + one.getPatients().size());
//            heapm.setAllCount(heapm.getAllCount() + one.getPatients().size());
            heapm.setBrowseNumbere(Integer.valueOf(article.getString("browseNumber")));//文章浏览数
            heapm.setCommentNumber(Integer.valueOf(article.getString("commentNumber")));//文章评论数
            heapm.setPointNumber(Integer.valueOf(article.getString("pointNumber")));//文章点赞数
@ -1086,8 +1130,8 @@ public class JMJkEduArticleService extends BaseService {
            heapm.setComputeTime(computeTime(article.getString("insertTime")));
            heapm.setOperatorName(article.getString("operatorName"));
            heapm.setSendType(one.getSendType());//发送类型
            heapm.setIsread(one.getIsread());//已读未读标识,1已读,2未读
            heapm.setLeaveWords(one.getLeaveWords());
            heapm.setIsread(String.valueOf(one.getIsRead()));//已读未读标识,1已读,2未读
            heapm.setLeaveWords(one.getLeaveWords());//医生留言
            doctor = doctorDao.findByCode(one.getDoctorCode());
            heapm.setPhoto(doctor.getPhoto());
            result.add(heapm);

+ 23 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/service/third/jkEduArticle/ThirdJkEduArticleService.java

@ -94,6 +94,7 @@ public class ThirdJkEduArticleService extends BaseService {
    /*********************************************** Category ******************************************/
    private String getCategoryList = "JkEdu.Category.getCategoryList";//获取类别接口
    private String addCategory = "JkEdu.Category.addCategory";//新增类别接口
    private String checkCategory = "JkEdu.Category.checkCategory";//验证类别接口
    private String updateCategory = "JkEdu.Category.updateCategory";//更新类别接口
    /*********************************************** ConfigDicSho ***************************************/
    private String getConfigDicShoList = "JkEdu.ConfigDicSho.getConfigDicShoList";//更新类别接口
@ -724,6 +725,28 @@ public class ThirdJkEduArticleService extends BaseService {
        }
    }
    /**
     * 添加分类
     * @param categoryLevel
     * @return
     * @throws Exception
     */
    public void checkCategory(String categoryName,Integer categoryLevel) throws Exception {
        JSONObject json = null;
        try {
            JSONObject param = new JSONObject();
            param.put("categoryName", categoryName);
            param.put("categoryLevel", categoryLevel);
            String response = httpClientUtil.httpPost(articleBaseUrl+"/WsPlatform/rest", getParamsMap(checkCategory, param.toString(), "1"));
            json = JSON.parseObject(response);
        } catch (Exception e) {
            e.printStackTrace();
        }
        if (!"10000".equals(json.getString("Code"))) {
            new Exception(json.getString("Message"));
        }
    }
    /**
     * 更新文章分类
     * @param categoryId

+ 2 - 11
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/doctor/jimeiJkEduPC/DoctorJMJkEduArticlePCController.java

@ -2,15 +2,10 @@ package com.yihu.wlyy.web.doctor.jimeiJkEduPC;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.databind.node.ObjectNode;
import com.yihu.es.entity.HealthEduArticlePatient;
import com.yihu.es.entity.HealthEduArticleES;
import com.yihu.wlyy.service.jimeiJkEdu.JMJkEduArticleService;
import com.yihu.wlyy.service.third.jkEduArticle.ThirdJkEduArticleService;
import com.yihu.wlyy.util.fastdfs.FastDFSUtil;
import com.yihu.wlyy.web.BaseController;
import com.yihu.wlyy.web.third.gateway.vo.HealthEduArticlePatientModel;
import com.yihu.wlyy.web.third.gateway.vo.base.BaseResultModel;
import com.yihu.wlyy.web.third.gateway.vo.base.ResultPageListModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
@ -19,10 +14,6 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.io.File;
import java.io.InputStream;
import java.util.HashSet;
import java.util.List;
import java.util.Set;
@ -285,7 +276,7 @@ public class DoctorJMJkEduArticlePCController extends BaseController {
            }
            List<HealthEduArticlePatientModel> eduArticlePatients = jmJkEduArticleService.pushArticleList(page, pagesize, getUID(),firstLevelCategoryId,secondLevelCategoryId,myArticle,sendType,currentRoleCode,currentRoleLevel,articleTitle,sendTimeStart,sendTimeEnd);
//            Long count = jmJkEduArticleService.pushArticleListCount(getUID(),2);
            List<HealthEduArticlePatient> eduArticlePatientsCount = jmJkEduArticleService.pushArticleListCount(getUID(),firstLevelCategoryId,secondLevelCategoryId,myArticle,sendType,currentRoleCode,
            List<HealthEduArticleES> eduArticlePatientsCount = jmJkEduArticleService.pushArticleListCount(getUID(),firstLevelCategoryId,secondLevelCategoryId,myArticle,sendType,currentRoleCode,
                    currentRoleLevel, articleTitle,sendTimeStart, sendTimeEnd);
            net.sf.json.JSONObject obj = new net.sf.json.JSONObject();
            obj.put("Code", 100);

+ 4 - 2
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/patient/health/HealthEduArticleController.java

@ -9,6 +9,7 @@ import com.yihu.wlyy.service.app.health.HealthEduArticleOpHistoryService;
import com.yihu.wlyy.service.app.health.HealthEduArticlePatientService;
import com.yihu.wlyy.service.app.health.HealthEduArticleService;
import com.yihu.wlyy.service.common.account.DoctorService;
import com.yihu.wlyy.service.jimeiJkEdu.JMJkEduArticleService;
import com.yihu.wlyy.service.third.jkEduArticle.ThirdJkEduArticleService;
import com.yihu.wlyy.util.DateUtil;
import com.yihu.wlyy.web.BaseController;
@ -57,7 +58,7 @@ public class HealthEduArticleController extends BaseController {
    private ThirdJkEduArticleService healthEducationArticleService;
    
    @Autowired
    private ThirdJkEduArticleService thirdJkEduArticleService;
    private JMJkEduArticleService jmJkEduArticleService;
    /**
     * 查询文章列表
@ -210,7 +211,8 @@ public class HealthEduArticleController extends BaseController {
        try {
//            String patient = getUID();
            String patient = getRepUID();
            healthEduArticleService.readAllArticle(patient);
//            healthEduArticleService.readAllArticle(patient);
            jmJkEduArticleService.readAllArticleNew(patient);
            return write(200, "更改状态成功!");
        } catch (Exception e) {
            error(e);

+ 20 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/gateway/vo/HealthEduArticlePatientModel.java

@ -25,8 +25,12 @@ public class HealthEduArticlePatientModel {
    private String articleType;//文章类别
    @ApiModelProperty(value = "1级类别", required = false, access = "response")
    private String level1Type;//1级类别
    @ApiModelProperty(value = "1级类别名称", required = false, access = "response")
    private String level1TypeName;//1级类别
    @ApiModelProperty(value = "2级类别", required = false, access = "response")
    private String level2Type;//2级类别
    @ApiModelProperty(value = "2级类别名称", required = false, access = "response")
    private String level2TypeName;//2级类别
    @ApiModelProperty(value = "等级", required = false, access = "response")
    private String level;//等级
    @ApiModelProperty(value = "所有的推送数目", required = false, access = "response")
@ -217,4 +221,20 @@ public class HealthEduArticlePatientModel {
    public void setLeaveWords(String leaveWords) {
        this.leaveWords = leaveWords;
    }
    
    public String getLevel1TypeName() {
        return level1TypeName;
    }
    
    public void setLevel1TypeName(String level1TypeName) {
        this.level1TypeName = level1TypeName;
    }
    
    public String getLevel2TypeName() {
        return level2TypeName;
    }
    
    public void setLevel2TypeName(String level2TypeName) {
        this.level2TypeName = level2TypeName;
    }
}

+ 15 - 0
patient-co/patient-co-wlyy/src/main/java/com/yihu/wlyy/web/third/jkEduArticle/ThirdJkEduArticleController.java

@ -250,6 +250,21 @@ public class ThirdJkEduArticleController extends BaseController {
        }
    }
    @RequestMapping(value = "checkCategory",method = RequestMethod.POST)
    @ApiOperation("添加二级分类-仅向市级管理员开放编辑权限")
    public String checkCategory(@ApiParam(name = "categoryName", value = "文章分类名称")
                              @RequestParam(value = "categoryName", required = true) String categoryName,
                              @ApiParam(name = "categoryLevel", value = "分类级别-默认二级")
                              @RequestParam(value = "categoryLevel", required = true,defaultValue = "2") Integer categoryLevel){
        try {
            thirdJkEduArticleService.checkCategory(categoryName,categoryLevel);
            return success("添加成功!");
        }catch (Exception e){
            e.printStackTrace();
            return error(-1,"添加失败!");
        }
    }
    @RequestMapping(value = "updateCategory",method = RequestMethod.POST)
    @ApiOperation("更新二级分类-仅向市级管理员开放编辑权限")
    public String updateCategory(@ApiParam(name = "categoryId", value = "文章分类code")

+ 3 - 3
patient-co/patient-co-wlyy/src/main/resources/application-prod.yml

@ -119,9 +119,9 @@ jkEdu:
#消息队列
activemq:
  username: admin
  password: admin
  url: tcp://172.19.103.87:61616
  username: jkzl
  password: jkzlehr
  url: tcp://192.168.120.153:61616
  queue:
    healtHarticleQueue: healthArticleChannel  #健康文章推送