Explorar el Código

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

LAPTOP-KB9HII50\70708 hace 9 meses
padre
commit
34815a4eeb
Se han modificado 13 ficheros con 911 adiciones y 857 borrados
  1. 2 1
      business/base-service/src/main/java/com/yihu/jw/article/service/BaseMenuManageService.java
  2. 35 19
      business/base-service/src/main/java/com/yihu/jw/article/service/KnowledgeArticleDictService.java
  3. 7 0
      business/base-service/src/main/java/com/yihu/jw/wlyy/service/WlyyBusinessService.java
  4. 2 1
      common/common-entity/src/main/java/com/yihu/jw/entity/base/patient/BasePatientBusinessDO.java
  5. 361 338
      svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/article/ArticleEndpoint.java
  6. 296 300
      svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/article/ArticleDictEndpoint.java
  7. 17 2
      svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/article/ArticleEndpoint.java
  8. 93 126
      svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/article/BaseMenuManageEndpoint.java
  9. 11 0
      svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/specialist/BaseDiseaseHospitalController.java
  10. 0 1
      svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/service/consult/BasePatientBusinessService.java
  11. 82 61
      svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/service/consult/KnowledgeCategoryService.java
  12. 1 3
      svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/template/controller/DoctorGuidanceTempController.java
  13. 4 5
      svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/template/service/DoctorGuidanceTempService.java

+ 2 - 1
business/base-service/src/main/java/com/yihu/jw/article/service/BaseMenuManageService.java

@ -1019,7 +1019,8 @@ public class BaseMenuManageService {
                "\twlyy_knowledge_article_user kau\n" +
                "LEFT JOIN wlyy_knowledge_article_dict kad ON kad.id = kau.relation_code\n" +
                "WHERE\n" +
                "\tkau.user_code = '"+userCode+"' AND kad.category_second IN(SELECT md.id from base_menu_dict md where md.status=1 and md.is_del= 1) AND kad.category_first IN(SELECT md.parent_id from base_menu_dict md where md.status=1 and md.is_del= 1) ";
                "\tkau.user_code = '"+userCode+"' AND kad.category_second IN(SELECT md.id from base_menu_dict md where md.status=1 and md.is_del= 1) " +
                "  AND kad.category_first IN(SELECT md.parent_id from base_menu_dict md where md.status=1 and md.is_del= 1) ";
        String condition = "";
        if (flag==1){
            condition+=" and kau.fabulous = "+status;

+ 35 - 19
business/base-service/src/main/java/com/yihu/jw/article/service/KnowledgeArticleDictService.java

@ -25,17 +25,13 @@ import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.jw.user.UserDao;
import com.yihu.jw.util.date.DateUtil;
import com.yihu.jw.utils.EntityUtils;
import com.yihu.jw.utils.StringUtil;
import com.yihu.jw.utils.hibernate.HibenateUtils;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.*;
/**
 * 健康文章业务层代码
@ -160,7 +156,7 @@ public class KnowledgeArticleDictService extends BaseJpaService<KnowledgeArticle
        KnowledgeCategoryDO knowledgeCategoryDO = knowledgeCategoryDao.findById(knowledgeArticleDO.getCategorySecond()).orElse(null);
        Boolean articleNeedCheck = true;
        if (knowledgeCategoryDO != null) {
            if (knowledgeCategoryDO.getIsCheck()==null||knowledgeCategoryDO.getIsCheck()!=1) {
            if (knowledgeCategoryDO.getIsCheck() == null || knowledgeCategoryDO.getIsCheck() != 1) {
                articleNeedCheck = false;
            }
        }
@ -201,7 +197,6 @@ public class KnowledgeArticleDictService extends BaseJpaService<KnowledgeArticle
            }
            knowledgeArticleDO = knowledgeArticleDictDao.save(knowledgeArticleDO);
            return knowledgeArticleDO;
        } else {
@ -463,19 +458,10 @@ public class KnowledgeArticleDictService extends BaseJpaService<KnowledgeArticle
                patientBusinessDO.setCollection(0);
                patientBusinessDO.setDel(1);
                patientBusinessDO = patientBusinessDao.save(patientBusinessDO);
                if (patientBusinessDO.getRelationType() == 1) {
                    KnowledgeArticleDictDO knowledgeArticleDO = findByIdAndDel(patientBusinessDO.getRelationCode());
                    System.out.println("content:" + JSON.toJSONString(knowledgeArticleDO));
                    JSONObject object = new JSONObject();
                    object.put("id", knowledgeArticleDO.getId());
                    object.put("title", knowledgeArticleDO.getTitle());
                    object.put("content", knowledgeArticleDO.getIntro());
                    object.put("img", knowledgeArticleDO.getImage());
                } else {
                if (patientBusinessDO.getRelationType() == 2) {
                    WlyySurveyUserDO wlyySurveyUserDO = new WlyySurveyUserDO();
                    String doctor = patientBusinessDO.getDoctor();
                    BaseDoctorDO doctorDO = doctorDao.findById(doctor).orElse(null);
                    ;
                    wlyySurveyUserDO.setDept(doctorDO.getVisitDept());
                    wlyySurveyUserDO.setDeptName(doctorDO.getVisitDeptName());
                    wlyySurveyUserDO.setDoctor(doctor);
@ -490,14 +476,20 @@ public class KnowledgeArticleDictService extends BaseJpaService<KnowledgeArticle
                    wlyySurveyUserDO = surveyUserDao.save(wlyySurveyUserDO);
                    JSONObject object = new JSONObject();
                    WlyySurveyTemplateDO wlyySurveyTemplateDO = surveyTemplateDao.findById(wlyySurveyUserDO.getSurveyTempCode()).orElse(null);
                    ;
                    if (null != wlyySurveyTemplateDO) {
                        object.put("title", wlyySurveyTemplateDO.getTitle());
                        object.put("content", wlyySurveyTemplateDO.getTemplateComment());
                        object.put("id", wlyySurveyTemplateDO.getId());
                    }
                } else {
                    KnowledgeArticleDictDO knowledgeArticleDO = findByIdAndDel(patientBusinessDO.getRelationCode());
                    System.out.println("content:" + JSON.toJSONString(knowledgeArticleDO));
                    JSONObject object = new JSONObject();
                    object.put("id", knowledgeArticleDO.getId());
                    object.put("title", knowledgeArticleDO.getTitle());
                    object.put("content", knowledgeArticleDO.getIntro());
                    object.put("img", knowledgeArticleDO.getImage());
                }
            }
        }
        return businessDOS;
@ -707,4 +699,28 @@ public class KnowledgeArticleDictService extends BaseJpaService<KnowledgeArticle
        return result;
    }
    /**
     * 业务类型1、文章2、问卷   relationType
     */
    public HashMap<String, Object> findSendPatientList(String doctorCode, String patientCode, String sendType, int page, int pageSize) {
        String sql = " SELECT DISTINCT \n" +
                " b.doctor 'sendDoctorCode',b.doctor_name 'sendDoctorName',a.* \n" +
                " FROM wlyy_knowledge_article_dict a INNER JOIN base_patient_business b ON a.id=b.relation_code\n" +
                " WHERE 1=1 AND b.relation_type='" + sendType + "' ";
        if (StringUtils.isNotBlank(doctorCode)) {
            sql += " and  b.doctor='" + doctorCode + "' ";
        }
        if (StringUtils.isNotBlank(doctorCode)) {
            sql += " and  b.patient='" + patientCode + "' ";
        }
        String countSql = " slect count(1) from (" + sql + ") qqq";
        sql += " order by create_time desc " + " LIMIT " + (page - 1) * pageSize + "," + pageSize + "";
        List<BasePatientBusinessDO> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(BasePatientBusinessDO.class));
        Integer count = jdbcTemplate.queryForObject(countSql, Integer.class);
        HashMap<String, Object> resultMap = new HashMap<>();
        resultMap.put("data", list);
        resultMap.put("count", count);
        return resultMap;
    }
}

+ 7 - 0
business/base-service/src/main/java/com/yihu/jw/wlyy/service/WlyyBusinessService.java

@ -1048,4 +1048,11 @@ public class WlyyBusinessService {
        JSONObject re = wlyyHttpService.sendWlyyMesGet("getPatientCount_IJK", param);
        return re;
    }
    public JSONObject getSpecilalistDiseaseType_IJK(String doctor) {
        String param = "?doctor=" + nullToTransfor(doctor);
        JSONObject re = wlyyHttpService.sendWlyyMesGet("getSpecilalistDiseaseType_IJK", param);
        return re;
    }
}

+ 2 - 1
common/common-entity/src/main/java/com/yihu/jw/entity/base/patient/BasePatientBusinessDO.java

@ -52,10 +52,11 @@ public class BasePatientBusinessDO extends UuidIdentityEntityWithOperator {
    private String relationName;
    /**
     * 业务类型1、文章2、问卷
     * 业务类型 1、文章 2、问卷  3、指导  4、im咨询
     */
    private Integer relationType;
    /**
     * 是否收藏
     */

+ 361 - 338
svr/svr-base/src/main/java/com/yihu/jw/base/endpoint/article/ArticleEndpoint.java

@ -27,355 +27,378 @@ import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
/**
 * 官网-文章
 *
 * @author huangwenjie
 */
@RestController
@RequestMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.PREFIX)
@Api(value = "官网-文章管理接口",  tags = {"官网-文章管理接口"})
@Api(value = "官网-文章管理接口", tags = {"官网-文章管理接口"})
public class ArticleEndpoint extends EnvelopRestEndpoint {
	
	@Autowired
	private KnowledgeArticleDictService knowledgeArticleDictService;
	
	@Autowired
	private KnowledgeCategoryService knowledgeCategoryService;
	@Autowired
	private KnowledgeArticleDictDao knowledgeArticleDictDao;
	@Autowired
	private UserDao userdao;
	@Autowired
	private RoleDao roleDao;
	@Autowired
	private JdbcTemplate jdbcTemplate;
	
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchKnowledgePageList)
	@ApiOperation(value = "获取文章列表")
	public Envelop searchKnowledgePageList(
			@ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
			@RequestParam(value = "fields", required = false) String fields,
			@ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
			@RequestParam(value = "filters", required = false) String filters,
			@ApiParam(name = "sorts", value = "排序,规则参见说明文档")
			@RequestParam(value = "sorts", required = false) String sorts,
			@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)throws Exception{
		try {
			String userId=getUID();
			UserDO userDO = userdao.findById(userId).orElse(null);
			boolean queryAll=false;
			if (userDO!=null){
				RoleDO roleDO= roleDao.findById(userDO.getRoleId()).orElse(null);
				if (roleDO!=null){
					if ("admin".equalsIgnoreCase(roleDO.getCode())
							||"hosAdmin".equalsIgnoreCase(roleDO.getCode())
							||"saasAdmin".equalsIgnoreCase(roleDO.getCode())){
						queryAll=true;
					}
				}
			}
			if (queryAll){
				if(StringUtils.isBlank(filters)){
					filters=filters+"del=1";
				}else{
					filters=filters+";del=1";
				}
			}else {
				if(StringUtils.isBlank(filters)){
					filters=filters+"del=1"+";createUser="+userId+"";
				}else{
					filters=filters+";del=1"+";createUser="+userId+"";
				}
			}
			filters += ";type=1";
			List<KnowledgeArticleDictDO> list  = knowledgeArticleDictService.search(fields,filters,sorts,page,pageSize);
			List<KnowledgeArticleDictDO> totals  = knowledgeArticleDictService.search(fields,filters,sorts);
			JSONObject result = new JSONObject();
			result.put("total",totals.size());
			result.put("detailModelList",list);
			return success(result);
		}catch (Exception e){
			return failedException(e);
		}
	}
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchKnowledgeList)
	@ApiOperation(value = "获取文章列表")
	public Envelop searchKnowledgeList(
			@ApiParam(name = "first", value = "second")
			@RequestParam(value = "first", required = false) String first,
			@ApiParam(name = "second", value = "second")
			@RequestParam(value = "second", required = false) String second,
			@ApiParam(name = "key", value = "关键字")
			@RequestParam(value = "key", required = false) String key,
			@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)throws Exception{
		try {
			return success(knowledgeArticleDictService.findArticleList(first,second,1,key,page,pageSize));
		}catch (Exception e){
			return failedException(e);
		}
	}
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.queryById)
	@ApiOperation(value = "根据id查询文章")
	public Envelop queryByCode(
			@ApiParam(name = "id", value = "id", required = true)
			@RequestParam(value = "id", required = true)String id) throws Exception{
		try {
			KnowledgeArticleDictDO articleDO = knowledgeArticleDictDao.findById(id).orElse(null);
			return success(articleDO);
		}catch (Exception e){
			return failedException(e);
		}
	}
	
	@PostMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.deleteById)
	@ApiOperation(value = "根据id删除文章")
	public Envelop deleteById(
			@ApiParam(name = "id", value = "id,多个使用英文逗号分隔", required = true)
			@RequestParam(value = "id", required = true)String id)throws Exception {
			try {
				knowledgeArticleDictService.delArticle(id);
				return success("操作成功");
			}catch (Exception e){
				return failedException(e);
			}
	}
	
	@PostMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.saveArticle)
	@ApiOperation(value = "保存/更新文章")
	public Envelop saveArticle(
			@ApiParam(name = "jsonData", value = "Json数据", required = true) @RequestParam String jsonData
	)throws Exception {
		try {
			knowledgeArticleDictService.saveArticle(jsonData,1);
			return success("操作成功");
		}catch (Exception e){
			e.printStackTrace();
			return failedException(e);
		}
	}
	
	@PostMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.reviewArticle)
	@ApiOperation(value = "审核/退回文章")
	public Envelop saveArticle(
			@ApiParam(name = "articleId", value = "文章ID")
			@RequestParam(value = "articleId", required = true) String articleId,
			@ApiParam(name = "status", value = "0未审核,1已审核,2退回")
			@RequestParam(value = "status", required = true) Integer status,
			@ApiParam(name = "reason", value = "退回理由")
			@RequestParam(value = "reason", required = false) String reason
	)throws Exception {
		try {
			knowledgeArticleDictService.reviewArticle(articleId,status,reason);
			return success("操作成功");
		}catch (Exception e){
			return failedException(e);
		}
	}
	
	
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchCategoryList)
	@ApiOperation(value = "获取分类列表")
	public ListEnvelop searchCategoryList(
			@ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
			@RequestParam(value = "fields", required = false) String fields,
			@ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
			@RequestParam(value = "filters", required = false) String filters,
			@ApiParam(name = "sorts", value = "排序,规则参见说明文档")
			@RequestParam(value = "sorts", required = false) String sorts,
			@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)throws Exception{
		try {
			if(StringUtils.isNotBlank(filters)){
				filters += ";del=1";
			}else {
				filters = "del=1";
			}
			List<KnowledgeCategoryDO> list  = knowledgeCategoryService.search(fields,filters,sorts,page,pageSize);
			return success(list);
		}catch (Exception e){
			return failedListEnvelopException(e);
		}
	}
	
	@PostMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.saveCategory)
	@ApiOperation(value = "保存/更新分类")
	public Envelop saveCategory(
			@ApiParam(name = "jsonData", value = "Json数据", required = true)
			@RequestParam String jsonData)throws Exception {
		try {
			knowledgeCategoryService.saveCategory(jsonData);
			return success("操作成功");
		} catch (Exception e){
			return failedException(e);
		}
	}
	
	@PostMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.updateDel)
	@ApiOperation(value = "根据分类code删除分类")
	public Envelop updateDel(
			@ApiParam(name = "id", value = "id", required = true)
			@RequestParam(value = "id", required = true)String id)throws Exception {
		try {
			Boolean flag = knowledgeCategoryService.updateDel(id);
			if (flag) {
				return success("操作成功");
			}else{
				return failed("操作失败");
			}
		}catch (Exception e){
			return failedException(e);
		}
		
	}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveArticleDept)
	@ApiOperation(value = "设置文章发送的科室")
	public ObjEnvelop saveArticleDept(@ApiParam(name = "articleId", value = "文章ID")
	                                 @RequestParam(value = "articleId",required = true)String articleId,
	                                 @ApiParam(name = "sdJsons", value = "部门与科室关系json")
	                                 @RequestParam(value = "sdJsons",required = true)String sdJsons)throws Exception {
		try {
			return success(knowledgeArticleDictService.saveArticleDept(articleId,sdJsons));
		}catch (Exception e){
			return failedObjEnvelopException(e);
		}
	}
	
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findDeptByArticle)
	@ApiOperation(value = "查询文章下的科室")
	public ListEnvelop findDeptByArticle(@ApiParam(name = "articleId", value = "文章ID")
	                                    @RequestParam(value = "articleId",required = true)String articleId)throws Exception {
		try {
			return success(knowledgeArticleDictService.findDeptByArticle(articleId));
		}catch (Exception e){
			return failedListEnvelopException(e);
		}
	}
	
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleByDept)
	@ApiOperation(value = "查询部门下发放的文章")
	public ListEnvelop findArticleByDept(@ApiParam(name = "dept", value = "科室")
	                                    @RequestParam(value = "dept",required = true)String dept)throws Exception {
		try {
			return success(knowledgeArticleDictService.findArticleByDept(dept));
		}catch (Exception e){
			return failedListEnvelopException(e);
		}
	}
	
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveDeptArticle)
	@ApiOperation(value = "设置科室发送的文章")
	public ObjEnvelop saveDeptArticle(@ApiParam(name = "dept", value = "部门code")
	                                 @RequestParam(value = "dept",required = true)String dept,
	                                 @ApiParam(name = "sdJsons", value = "部门与科室关系json")
	                                 @RequestParam(value = "sdJsons",required = false)String sdJsons)throws Exception {
		try {
			return success(knowledgeArticleDictService.saveDeptArticle(dept,sdJsons));
		}catch (Exception e){
			return failedObjEnvelopException(e);
		}
	}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.sendPatientBusiness)
	@ApiOperation(value = "发送文章/问卷")
	public ListEnvelop sendPatientBusiness(@ApiParam(name = "json", value = "患者业务关联表")
									  @RequestParam(value = "json",required = false)String json)throws Exception {
		try {
			ListEnvelop listEnvelop = new ListEnvelop();
			JSONArray jsonArray = JSONArray.parseArray(json);
			List<BasePatientBusinessDO> patientBusinessDOList = new ArrayList<>();
			for (int i=0;i<jsonArray.size();i++){
				JSONObject jsonObject = jsonArray.getJSONObject(i);
				BasePatientBusinessDO patientBusinessDO = toEntity(jsonObject.toJSONString(),BasePatientBusinessDO.class);
				patientBusinessDOList.add(patientBusinessDO);
			}
			listEnvelop.setDetailModelList(knowledgeArticleDictService.sendBusinessToPatient(patientBusinessDOList));
			return  listEnvelop;
		}catch (Exception e){
			return failedListEnvelopException(e);
		}
	}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.setArticleUsed)
	@ApiOperation(value = "发布文章")
	public ObjEnvelop setArticleUsed(@ApiParam(name = "id", value = "文章id")
									  @RequestParam(value = "id",required = true)String id,
									  @ApiParam(name = "status", value = "1发布0未发布")
									  @RequestParam(value = "status",required = false)Integer status)throws Exception {
		try {
			return success(knowledgeArticleDictService.releaseArticle(id,status));
		}catch (Exception e){
			return failedObjEnvelopException(e);
		}
}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleByCategoryAndName)
	@ApiOperation(value = "查询文章")
	public MixEnvelop findArticleByCategoryAndName(@ApiParam(name = "categoryFirst", value = "一级分类code")
										   @RequestParam(value = "categoryFirst",required = false)String categoryFirst,
												   @ApiParam(name = "categorySecond", value = "二级分类code")
										   @RequestParam(value = "categorySecond",required = false)String categorySecond,
												   @ApiParam(name = "keyWords", value = "关键词")
										   @RequestParam(value = "keyWords",required = false)String keyWords,
												   @ApiParam(name = "page", value = "当前页")
										   @RequestParam(value = "page",required = false)Integer page,
												   @ApiParam(name = "pageSize", value = "分页大小)")
										   @RequestParam(value = "pageSize",required = false)Integer pageSize)throws Exception {
		MixEnvelop mixEnvelop=knowledgeArticleDictService.findArticleByCategoryAndName(categoryFirst,categorySecond,keyWords,page,pageSize);
		return mixEnvelop;
	}
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.getArticleGroup)
	@ApiOperation(value = "查询分类")
	public MixEnvelop getGroup(){
		try {
			MixEnvelop envelop = knowledgeCategoryService.findAllGroup();
			return envelop;
		}catch (Exception e){
			return failedMixEnvelopException(e);
		}
	}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findPatientFavorite)
	@ApiOperation(value = "查询收藏文章")
	public Envelop findPatientFavorite(@ApiParam(name = "patient", value = "病人id")
												   @RequestParam(value = "patient",required = false)String patient,
												   @ApiParam(name = "page", value = "当前页")
												   @RequestParam(value = "page",required = false)Integer page,
												   @ApiParam(name = "pageSize", value = "分页大小)")
												   @RequestParam(value = "pageSize",required = false)Integer pageSize)throws Exception {
		try {
			return success(knowledgeArticleDictService.findPatientFavorite(patient,page,pageSize));
		}catch (Exception e){
			return failedException(e);
		}
	}
    @Autowired
    private KnowledgeArticleDictService knowledgeArticleDictService;
    @Autowired
    private KnowledgeCategoryService knowledgeCategoryService;
    @Autowired
    private KnowledgeArticleDictDao knowledgeArticleDictDao;
    @Autowired
    private UserDao userdao;
    @Autowired
    private RoleDao roleDao;
    @Autowired
    private JdbcTemplate jdbcTemplate;
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchKnowledgePageList)
    @ApiOperation(value = "获取文章列表")
    public Envelop searchKnowledgePageList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @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) throws Exception {
        try {
            String userId = getUID();
            UserDO userDO = userdao.findById(userId).orElse(null);
            boolean queryAll = false;
            if (userDO != null) {
                RoleDO roleDO = roleDao.findById(userDO.getRoleId()).orElse(null);
                if (roleDO != null) {
                    if ("admin".equalsIgnoreCase(roleDO.getCode())
                            || "hosAdmin".equalsIgnoreCase(roleDO.getCode())
                            || "saasAdmin".equalsIgnoreCase(roleDO.getCode())) {
                        queryAll = true;
                    }
                }
            }
            if (queryAll) {
                if (StringUtils.isBlank(filters)) {
                    filters = filters + "del=1";
                } else {
                    filters = filters + ";del=1";
                }
            } else {
                if (StringUtils.isBlank(filters)) {
                    filters = filters + "del=1" + ";createUser=" + userId + "";
                } else {
                    filters = filters + ";del=1" + ";createUser=" + userId + "";
                }
            }
            filters += ";type=1";
            List<KnowledgeArticleDictDO> list = knowledgeArticleDictService.search(fields, filters, sorts, page, pageSize);
            List<KnowledgeArticleDictDO> totals = knowledgeArticleDictService.search(fields, filters, sorts);
            JSONObject result = new JSONObject();
            result.put("total", totals.size());
            result.put("detailModelList", list);
            return success(result);
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchKnowledgeList)
    @ApiOperation(value = "获取文章列表")
    public Envelop searchKnowledgeList(
            @ApiParam(name = "first", value = "second")
            @RequestParam(value = "first", required = false) String first,
            @ApiParam(name = "second", value = "second")
            @RequestParam(value = "second", required = false) String second,
            @ApiParam(name = "key", value = "关键字")
            @RequestParam(value = "key", required = false) String key,
            @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) throws Exception {
        try {
            return success(knowledgeArticleDictService.findArticleList(first, second, 1, key, page, pageSize));
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.queryById)
    @ApiOperation(value = "根据id查询文章")
    public Envelop queryByCode(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id", required = true) String id) throws Exception {
        try {
            KnowledgeArticleDictDO articleDO = knowledgeArticleDictDao.findById(id).orElse(null);
            return success(articleDO);
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.deleteById)
    @ApiOperation(value = "根据id删除文章")
    public Envelop deleteById(
            @ApiParam(name = "id", value = "id,多个使用英文逗号分隔", required = true)
            @RequestParam(value = "id", required = true) String id) throws Exception {
        try {
            knowledgeArticleDictService.delArticle(id);
            return success("操作成功");
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveArticle)
    @ApiOperation(value = "保存/更新文章")
    public Envelop saveArticle(
            @ApiParam(name = "jsonData", value = "Json数据", required = true) @RequestParam String jsonData
    ) throws Exception {
        try {
            knowledgeArticleDictService.saveArticle(jsonData, 1);
            return success("操作成功");
        } catch (Exception e) {
            e.printStackTrace();
            return failedException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.reviewArticle)
    @ApiOperation(value = "审核/退回文章")
    public Envelop saveArticle(
            @ApiParam(name = "articleId", value = "文章ID")
            @RequestParam(value = "articleId", required = true) String articleId,
            @ApiParam(name = "status", value = "0未审核,1已审核,2退回")
            @RequestParam(value = "status", required = true) Integer status,
            @ApiParam(name = "reason", value = "退回理由")
            @RequestParam(value = "reason", required = false) String reason
    ) throws Exception {
        try {
            knowledgeArticleDictService.reviewArticle(articleId, status, reason);
            return success("操作成功");
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchCategoryList)
    @ApiOperation(value = "获取分类列表")
    public ListEnvelop searchCategoryList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @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) throws Exception {
        try {
            if (StringUtils.isNotBlank(filters)) {
                filters += ";del=1";
            } else {
                filters = "del=1";
            }
            List<KnowledgeCategoryDO> list = knowledgeCategoryService.search(fields, filters, sorts, page, pageSize);
            return success(list);
        } catch (Exception e) {
            return failedListEnvelopException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveCategory)
    @ApiOperation(value = "保存/更新分类")
    public Envelop saveCategory(
            @ApiParam(name = "jsonData", value = "Json数据", required = true)
            @RequestParam String jsonData) throws Exception {
        try {
            knowledgeCategoryService.saveCategory(jsonData);
            return success("操作成功");
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.updateDel)
    @ApiOperation(value = "根据分类code删除分类")
    public Envelop updateDel(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id", required = true) String id) throws Exception {
        try {
            Boolean flag = knowledgeCategoryService.updateDel(id);
            if (flag) {
                return success("操作成功");
            } else {
                return failed("操作失败");
            }
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveArticleDept)
    @ApiOperation(value = "设置文章发送的科室")
    public ObjEnvelop saveArticleDept(@ApiParam(name = "articleId", value = "文章ID")
                                      @RequestParam(value = "articleId", required = true) String articleId,
                                      @ApiParam(name = "sdJsons", value = "部门与科室关系json")
                                      @RequestParam(value = "sdJsons", required = true) String sdJsons) throws Exception {
        try {
            return success(knowledgeArticleDictService.saveArticleDept(articleId, sdJsons));
        } catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findDeptByArticle)
    @ApiOperation(value = "查询文章下的科室")
    public ListEnvelop findDeptByArticle(@ApiParam(name = "articleId", value = "文章ID")
                                         @RequestParam(value = "articleId", required = true) String articleId) throws Exception {
        try {
            return success(knowledgeArticleDictService.findDeptByArticle(articleId));
        } catch (Exception e) {
            return failedListEnvelopException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleByDept)
    @ApiOperation(value = "查询部门下发放的文章")
    public ListEnvelop findArticleByDept(@ApiParam(name = "dept", value = "科室")
                                         @RequestParam(value = "dept", required = true) String dept) throws Exception {
        try {
            return success(knowledgeArticleDictService.findArticleByDept(dept));
        } catch (Exception e) {
            return failedListEnvelopException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveDeptArticle)
    @ApiOperation(value = "设置科室发送的文章")
    public ObjEnvelop saveDeptArticle(@ApiParam(name = "dept", value = "部门code")
                                      @RequestParam(value = "dept", required = true) String dept,
                                      @ApiParam(name = "sdJsons", value = "部门与科室关系json")
                                      @RequestParam(value = "sdJsons", required = false) String sdJsons) throws Exception {
        try {
            return success(knowledgeArticleDictService.saveDeptArticle(dept, sdJsons));
        } catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    /**
     * 查询文章发送记录
     * BasePatientBusinessDO
     */
    @PostMapping(value = "/findSendPatientList")
    @ApiOperation(value = "查询文章发送记录-发送文章/问卷")
    public ObjEnvelop findSendPatientList(
            @ApiParam(name = "doctorCode", value = "医生") @RequestParam(value = "doctorCode", required = false) String doctorCode,
            @ApiParam(name = "patientCode", value = "居民code") @RequestParam(value = "patientCode", required = false) String patientCode,
            @ApiParam(name = "sendType", value = "发送类型") @RequestParam(value = "sendType", required = false) String sendType,
            @ApiParam(name = "page", value = "页码") @RequestParam(value = "page", required = false) int page,
            @ApiParam(name = "pageSize", value = "数量") @RequestParam(value = "pageSize", required = false) int pageSize
    ) {
        HashMap<String, Object> result = knowledgeArticleDictService.findSendPatientList(doctorCode,patientCode, sendType, page, pageSize);
        ObjEnvelop objEnvelop = new ObjEnvelop();
        objEnvelop.setObj(result);
        return objEnvelop;
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.sendPatientBusiness)
    @ApiOperation(value = "发送文章/问卷")
    public ListEnvelop sendPatientBusiness(
            @ApiParam(name = "json", value = "患者业务关联表") @RequestParam(value = "json", required = false) String json) throws Exception {
        try {
            ListEnvelop listEnvelop = new ListEnvelop();
            JSONArray jsonArray = JSONArray.parseArray(json);
            List<BasePatientBusinessDO> patientBusinessDOList = new ArrayList<>();
            for (int i = 0; i < jsonArray.size(); i++) {
                JSONObject jsonObject = jsonArray.getJSONObject(i);
                BasePatientBusinessDO patientBusinessDO = toEntity(jsonObject.toJSONString(), BasePatientBusinessDO.class);
                patientBusinessDOList.add(patientBusinessDO);
            }
            listEnvelop.setDetailModelList(knowledgeArticleDictService.sendBusinessToPatient(patientBusinessDOList));
            return listEnvelop;
        } catch (Exception e) {
            return failedListEnvelopException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.setArticleUsed)
    @ApiOperation(value = "发布文章")
    public ObjEnvelop setArticleUsed(@ApiParam(name = "id", value = "文章id")
                                     @RequestParam(value = "id", required = true) String id,
                                     @ApiParam(name = "status", value = "1发布0未发布")
                                     @RequestParam(value = "status", required = false) Integer status) throws Exception {
        try {
            return success(knowledgeArticleDictService.releaseArticle(id, status));
        } catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleByCategoryAndName)
    @ApiOperation(value = "查询文章")
    public MixEnvelop findArticleByCategoryAndName(@ApiParam(name = "categoryFirst", value = "一级分类code")
                                                   @RequestParam(value = "categoryFirst", required = false) String categoryFirst,
                                                   @ApiParam(name = "categorySecond", value = "二级分类code")
                                                   @RequestParam(value = "categorySecond", required = false) String categorySecond,
                                                   @ApiParam(name = "keyWords", value = "关键词")
                                                   @RequestParam(value = "keyWords", required = false) String keyWords,
                                                   @ApiParam(name = "page", value = "当前页")
                                                   @RequestParam(value = "page", required = false) Integer page,
                                                   @ApiParam(name = "pageSize", value = "分页大小)")
                                                   @RequestParam(value = "pageSize", required = false) Integer pageSize) throws Exception {
        MixEnvelop mixEnvelop = knowledgeArticleDictService.findArticleByCategoryAndName(categoryFirst, categorySecond, keyWords, page, pageSize);
        return mixEnvelop;
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.getArticleGroup)
    @ApiOperation(value = "查询分类")
    public MixEnvelop getGroup() {
        try {
            MixEnvelop envelop = knowledgeCategoryService.findAllGroup();
            return envelop;
        } catch (Exception e) {
            return failedMixEnvelopException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findPatientFavorite)
    @ApiOperation(value = "查询收藏文章")
    public Envelop findPatientFavorite(@ApiParam(name = "patient", value = "病人id")
                                       @RequestParam(value = "patient", required = false) String patient,
                                       @ApiParam(name = "page", value = "当前页")
                                       @RequestParam(value = "page", required = false) Integer page,
                                       @ApiParam(name = "pageSize", value = "分页大小)")
                                       @RequestParam(value = "pageSize", required = false) Integer pageSize) throws Exception {
        try {
            return success(knowledgeArticleDictService.findPatientFavorite(patient, page, pageSize));
        } catch (Exception e) {
            return failedException(e);
        }
    }
}

+ 296 - 300
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/article/ArticleDictEndpoint.java

@ -29,310 +29,306 @@ import java.util.List;
/**
 * app文章
 *
 * @author yeshijie
 */
@RestController
@RequestMapping(value = "articleDict")
@Api(value = "app文章管理接口",  tags = {"app文章管理接口"})
@Api(value = "app文章管理接口", tags = {"app文章管理接口"})
public class ArticleDictEndpoint extends EnvelopRestEndpoint {
	
	@Autowired
	private KnowledgeArticleDictService knowledgeArticleDictService;
	@Autowired
	private KnowledgeArticleDictDao knowledgeArticleDictDao;
	@Autowired
	private BaseDoctorDao doctorDao;
	@Autowired
	private BaseDoctorRoleDao doctorRoleDao;
	@Autowired
	private JdbcTemplate jdbcTemplate;
	@Autowired
	private BaseMenuManageService menuManageService;
	
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchKnowledgePageList)
	@ApiOperation(value = "获取文章列表")
	public Envelop searchKnowledgePageList(
			@ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
			@RequestParam(value = "fields", required = false) String fields,
			@ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
			@RequestParam(value = "filters", required = false) String filters,
			@ApiParam(name = "sorts", value = "排序,规则参见说明文档")
			@RequestParam(value = "sorts", required = false) String sorts,
			@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)throws Exception{
		try {
			String userId=getUID();
			BaseDoctorRoleDO roleDO = doctorRoleDao.findByDoctorCodeAndRoleCode(userId, CommonContant.DR_ARTICLEREVIEWER);
			boolean queryAll=false;
			if (roleDO!=null){
				queryAll=true;
			}
			if (queryAll){
				if(StringUtils.isBlank(filters)){
					filters=filters+"del=1";
				}else{
					filters=filters+";del=1";
				}
			}else {
				if(StringUtils.isBlank(filters)){
					filters=filters+"del=1"+";createUser="+userId+"";
				}else{
					filters=filters+";del=1"+";createUser="+userId+"";
				}
			}
			filters += ";type=2";
			List<KnowledgeArticleDictDO> list  = knowledgeArticleDictService.search(fields,filters,sorts,page,pageSize);
			for (KnowledgeArticleDictDO articleDictDO:list){
				JSONObject object = menuManageService.findArticleStaticsByArticleId(articleDictDO.getId());
				if (object!=null){
					articleDictDO.setCollection(Integer.parseInt(object.getString("collectTotal")));
					articleDictDO.setComment(Integer.parseInt(object.getString("commentTotal")));
					articleDictDO.setFabulous(Integer.parseInt(object.getString("eulogyTotal")));
				}
			}
			List<KnowledgeArticleDictDO> totals  = knowledgeArticleDictService.search(fields,filters,sorts);
			JSONObject result = new JSONObject();
			result.put("total",totals.size());
			result.put("detailModelList",list);
			return success(result);
		}catch (Exception e){
			return failedException2(e);
		}
	}
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchKnowledgeList)
	@ApiOperation(value = "获取文章列表")
	public Envelop searchKnowledgeList(
			@ApiParam(name = "first", value = "second") @RequestParam(value = "first", required = false) String first,
			@ApiParam(name = "second", value = "second") @RequestParam(value = "second", required = false) String second,
			@ApiParam(name = "key", value = "关键字") @RequestParam(value = "key", required = false) String key,
			@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
	){
		try {
			return success(knowledgeArticleDictService.findArticleList(first,second,2,key,page,pageSize));
		}catch (Exception e){
			return failedException2(e);
		}
	}
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.queryById)
	@ApiOperation(value = "根据id查询文章")
	public Envelop queryByCode(
			@ApiParam(name = "id", value = "id", required = true)
			@RequestParam(value = "id", required = true)String id){
		try {
			KnowledgeArticleDictDO articleDO = knowledgeArticleDictService.findById(id);
			if(articleDO!=null){
				BaseDoctorDO doctorDO = doctorDao.findById(articleDO.getCreateUser()).orElse(null);
				if(doctorDO!=null){
					articleDO.setDoctorImage(doctorDO.getPhoto());
				}
			}
			return success(articleDO);
		}catch (Exception e){
			return failedException2(e);
		}
	}
	
	@PostMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.deleteById)
	@ApiOperation(value = "根据id删除文章")
	public Envelop deleteById(
			@ApiParam(name = "id", value = "id,多个使用英文逗号分隔", required = true)
			@RequestParam(value = "id", required = true)String id){
			try {
				knowledgeArticleDictService.delArticle(id);
				return success("操作成功");
			}catch (Exception e){
				return failedException2(e);
			}
	}
	
	@PostMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.saveArticle)
	@ApiOperation(value = "保存/更新文章")
	public Envelop saveArticle(
			@ApiParam(name = "jsonData", value = "Json数据", required = true) @RequestParam String jsonData
	) {
		try {
			knowledgeArticleDictService.saveArticle(jsonData,2);
			return success("操作成功");
		}catch (Exception e){
			e.printStackTrace();
			return failedException2(e);
		}
	}
	@GetMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleStaticsByDoctorId)
	@ApiOperation(value = "获取doctorId获取医生发布的文章统计数据")
	public Envelop findArticleStaticsByDoctorId(
			@ApiParam(name = "doctorId", value = "医生id", required = true)
			@RequestParam String doctorId) {
		try {
			return success("查询成功",knowledgeArticleDictService.findArticleStaticsByDoctorId(doctorId));
		}catch (Exception e){
			e.printStackTrace();
			return failedException2(e);
		}
	}
	
	@PostMapping (value = BaseHospitalRequestMapping.KnowledgeArticle.reviewArticle)
	@ApiOperation(value = "审核/退回文章")
	public Envelop saveArticle(
			@ApiParam(name = "articleId", value = "文章ID") @RequestParam(value = "articleId", required = true) String articleId,
			@ApiParam(name = "status", value = "0未审核,1已审核,2退回") @RequestParam(value = "status", required = true) Integer status,
			@ApiParam(name = "reason", value = "退回理由") @RequestParam(value = "reason", required = false) String reason
	){
		try {
			knowledgeArticleDictService.reviewArticle(articleId,status,reason);
			return success("操作成功");
		}catch (Exception e){
			return failedException2(e);
		}
	}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.setArticleUsed)
	@ApiOperation(value = "发布文章")
	public ObjEnvelop setArticleUsed(
			@ApiParam(name = "id", value = "文章id") @RequestParam(value = "id",required = true)String id,
			@ApiParam(name = "status", value = "1发布0未发布") @RequestParam(value = "status",required = false)Integer status
	){
		try {
			return success(knowledgeArticleDictService.releaseArticle(id,status));
		}catch (Exception e){
			return failedObjEnvelopException2(e);
		}
	}
	//居民免登录
	@GetMapping(value = "open/searchKnowledgePageList")
	@ApiOperation(value = "获取文章列表")
	public Envelop searchKnowledgePageListOpen(
			@ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
			@RequestParam(value = "fields", required = false) String fields,
			@ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
			@RequestParam(value = "filters", required = false) String filters,
			@ApiParam(name = "sorts", value = "排序,规则参见说明文档")
			@RequestParam(value = "sorts", required = false) String sorts,
			@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)throws Exception{
		try {
			String now = DateUtil.getStringDate();
			if(StringUtils.isBlank(filters)){
				filters=filters+"del=1;type=2;status=1;releaseTime<="+now;
			}else{
				filters=filters+";del=1;type=2;status=1;releaseTime<="+now;
			}
			List<KnowledgeArticleDictDO> list  = knowledgeArticleDictService.search(fields,filters,sorts,page,pageSize);
			List<KnowledgeArticleDictDO> totals  = knowledgeArticleDictService.search(fields,filters,sorts);
			JSONObject result = new JSONObject();
			result.put("total",totals.size());
			result.put("detailModelList",list);
			return success(result);
		}catch (Exception e){
			return failedException2(e);
		}
	}
	@GetMapping(value = "open/queryById")
	@ApiOperation(value = "根据id查询文章")
	public Envelop queryByCodeOpen(
			@ApiParam(name = "id", value = "id", required = true)
			@RequestParam(value = "id", required = true)String id){
		try {
			KnowledgeArticleDictDO articleDO = knowledgeArticleDictService.findById(id);
			return success(articleDO);
		}catch (Exception e){
			return failedException2(e);
		}
	}
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findDeptByArticle)
	@ApiOperation(value = "查询文章下的科室")
	public ListEnvelop findDeptByArticle(@ApiParam(name = "articleId", value = "文章ID")
										 @RequestParam(value = "articleId",required = true)String articleId)throws Exception {
		try {
			return success(knowledgeArticleDictService.findDeptByArticle2(articleId));
		}catch (Exception e){
			return failedListEnvelopException(e);
		}
	}
	@GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleByDept)
	@ApiOperation(value = "查询部门下发放的文章")
	public ListEnvelop findArticleByDept(@ApiParam(name = "dept", value = "科室")
										 @RequestParam(value = "dept",required = true)String dept)throws Exception {
		try {
			return success(knowledgeArticleDictService.findArticleByDept2(dept));
		}catch (Exception e){
			return failedListEnvelopException(e);
		}
	}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveDeptArticle)
	@ApiOperation(value = "设置科室发送的文章")
	public ObjEnvelop saveDeptArticle(@ApiParam(name = "dept", value = "部门code")
									  @RequestParam(value = "dept",required = true)String dept,
									  @ApiParam(name = "sdJsons", value = "部门与科室关系json")
									  @RequestParam(value = "sdJsons",required = false)String sdJsons)throws Exception {
		try {
			return success(knowledgeArticleDictService.saveDeptArticle(dept,sdJsons));
		}catch (Exception e){
			return failedObjEnvelopException(e);
		}
	}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleByCategoryAndName)
	@ApiOperation(value = "查询文章")
	public MixEnvelop findArticleByCategoryAndName(@ApiParam(name = "categoryFirst", value = "一级分类code")
												   @RequestParam(value = "categoryFirst",required = false)String categoryFirst,
												   @ApiParam(name = "categorySecond", value = "二级分类code")
												   @RequestParam(value = "categorySecond",required = false)String categorySecond,
												   @ApiParam(name = "keyWords", value = "关键词")
												   @RequestParam(value = "keyWords",required = false)String keyWords,
												   @ApiParam(name = "page", value = "当前页")
												   @RequestParam(value = "page",required = false)Integer page,
												   @ApiParam(name = "pageSize", value = "分页大小)")
												   @RequestParam(value = "pageSize",required = false)Integer pageSize)throws Exception {
		MixEnvelop mixEnvelop=knowledgeArticleDictService.findArticleByCategoryAndName2(categoryFirst,categorySecond,keyWords,page,pageSize);
		return mixEnvelop;
	}
	@PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findPatientFavorite)
	@ApiOperation(value = "查询收藏文章")
	public Envelop findPatientFavorite(@ApiParam(name = "patient", value = "病人id")
									   @RequestParam(value = "patient",required = false)String patient,
									   @ApiParam(name = "page", value = "当前页")
									   @RequestParam(value = "page",required = false)Integer page,
									   @ApiParam(name = "pageSize", value = "分页大小)")
									   @RequestParam(value = "pageSize",required = false)Integer pageSize)throws Exception {
		try {
			return success(knowledgeArticleDictService.findPatientFavorite2(patient,page,pageSize));
		}catch (Exception e){
			return failedException(e);
		}
	}
    @Autowired
    private KnowledgeArticleDictService knowledgeArticleDictService;
    @Autowired
    private KnowledgeArticleDictDao knowledgeArticleDictDao;
    @Autowired
    private BaseDoctorDao doctorDao;
    @Autowired
    private BaseDoctorRoleDao doctorRoleDao;
    @Autowired
    private JdbcTemplate jdbcTemplate;
    @Autowired
    private BaseMenuManageService menuManageService;
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchKnowledgePageList)
    @ApiOperation(value = "获取文章列表")
    public Envelop searchKnowledgePageList(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段")
            @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件")
            @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档")
            @RequestParam(value = "sorts", required = false) String sorts,
            @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) throws Exception {
        try {
            String userId = getUID();
            BaseDoctorRoleDO roleDO = doctorRoleDao.findByDoctorCodeAndRoleCode(userId, CommonContant.DR_ARTICLEREVIEWER);
            boolean queryAll = false;
            if (roleDO != null) {
                queryAll = true;
            }
            if (queryAll) {
                if (StringUtils.isBlank(filters)) {
                    filters = filters + "del=1";
                } else {
                    filters = filters + ";del=1";
                }
            } else {
                if (StringUtils.isBlank(filters)) {
                    filters = filters + "del=1" + ";createUser=" + userId + "";
                } else {
                    filters = filters + ";del=1" + ";createUser=" + userId + "";
                }
            }
            filters += ";type=2";
            List<KnowledgeArticleDictDO> list = knowledgeArticleDictService.search(fields, filters, sorts, page, pageSize);
            for (KnowledgeArticleDictDO articleDictDO : list) {
                JSONObject object = menuManageService.findArticleStaticsByArticleId(articleDictDO.getId());
                if (object != null) {
                    articleDictDO.setCollection(Integer.parseInt(object.getString("collectTotal")));
                    articleDictDO.setComment(Integer.parseInt(object.getString("commentTotal")));
                    articleDictDO.setFabulous(Integer.parseInt(object.getString("eulogyTotal")));
                }
            }
            List<KnowledgeArticleDictDO> totals = knowledgeArticleDictService.search(fields, filters, sorts);
            JSONObject result = new JSONObject();
            result.put("total", totals.size());
            result.put("detailModelList", list);
            return success(result);
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.searchKnowledgeList)
    @ApiOperation(value = "获取文章列表")
    public Envelop searchKnowledgeList(
            @ApiParam(name = "first", value = "second") @RequestParam(value = "first", required = false) String first,
            @ApiParam(name = "second", value = "second") @RequestParam(value = "second", required = false) String second,
            @ApiParam(name = "key", value = "关键字") @RequestParam(value = "key", required = false) String key,
            @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
    ) {
        try {
            return success(knowledgeArticleDictService.findArticleList(first, second, 2, key, page, pageSize));
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.queryById)
    @ApiOperation(value = "根据id查询文章")
    public Envelop queryByCode(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id", required = true) String id) {
        try {
            KnowledgeArticleDictDO articleDO = knowledgeArticleDictService.findById(id);
            if (articleDO != null) {
                BaseDoctorDO doctorDO = doctorDao.findById(articleDO.getCreateUser()).orElse(null);
                if (doctorDO != null) {
                    articleDO.setDoctorImage(doctorDO.getPhoto());
                }
            }
            return success(articleDO);
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.deleteById)
    @ApiOperation(value = "根据id删除文章")
    public Envelop deleteById(
            @ApiParam(name = "id", value = "id,多个使用英文逗号分隔", required = true)
            @RequestParam(value = "id", required = true) String id) {
        try {
            knowledgeArticleDictService.delArticle(id);
            return success("操作成功");
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveArticle)
    @ApiOperation(value = "保存/更新文章")
    public Envelop saveArticle(
            @ApiParam(name = "jsonData", value = "Json数据", required = true) @RequestParam String jsonData
    ) {
        try {
            KnowledgeArticleDictDO article = knowledgeArticleDictService.saveArticle(jsonData, 2);
            return success("操作成功", article);
        } catch (Exception e) {
            e.printStackTrace();
            return failedException2(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleStaticsByDoctorId)
    @ApiOperation(value = "获取doctorId获取医生发布的文章统计数据")
    public Envelop findArticleStaticsByDoctorId(
            @ApiParam(name = "doctorId", value = "医生id", required = true)
            @RequestParam String doctorId) {
        try {
            return success("查询成功", knowledgeArticleDictService.findArticleStaticsByDoctorId(doctorId));
        } catch (Exception e) {
            e.printStackTrace();
            return failedException2(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.reviewArticle)
    @ApiOperation(value = "审核/退回文章")
    public Envelop saveArticle(
            @ApiParam(name = "articleId", value = "文章ID") @RequestParam(value = "articleId", required = true) String articleId,
            @ApiParam(name = "status", value = "0未审核,1已审核,2退回") @RequestParam(value = "status", required = true) Integer status,
            @ApiParam(name = "reason", value = "退回理由") @RequestParam(value = "reason", required = false) String reason
    ) {
        try {
            knowledgeArticleDictService.reviewArticle(articleId, status, reason);
            return success("操作成功");
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.setArticleUsed)
    @ApiOperation(value = "发布文章")
    public ObjEnvelop setArticleUsed(
            @ApiParam(name = "id", value = "文章id") @RequestParam(value = "id", required = true) String id,
            @ApiParam(name = "status", value = "1发布0未发布") @RequestParam(value = "status", required = false) Integer status
    ) {
        try {
            return success(knowledgeArticleDictService.releaseArticle(id, status));
        } catch (Exception e) {
            return failedObjEnvelopException2(e);
        }
    }
    //居民免登录
    @GetMapping(value = "open/searchKnowledgePageList")
    @ApiOperation(value = "获取文章列表")
    public Envelop searchKnowledgePageListOpen(
            @ApiParam(name = "fields", value = "返回的字段,为空返回全部字段") @RequestParam(value = "fields", required = false) String fields,
            @ApiParam(name = "filters", value = "过滤器,为空检索所有条件") @RequestParam(value = "filters", required = false) String filters,
            @ApiParam(name = "sorts", value = "排序,规则参见说明文档") @RequestParam(value = "sorts", required = false) String sorts,
            @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
    ) throws Exception {
        try {
            String now = DateUtil.getStringDate();
            if (StringUtils.isBlank(filters)) {
                filters = filters + "del=1;type=2;status=1;releaseTime<=" + now;
            } else {
                filters = filters + ";del=1;type=2;status=1;releaseTime<=" + now;
            }
            List<KnowledgeArticleDictDO> list = knowledgeArticleDictService.search(fields, filters, sorts, page, pageSize);
            List<KnowledgeArticleDictDO> totals = knowledgeArticleDictService.search(fields, filters, sorts);
            JSONObject result = new JSONObject();
            result.put("total", totals.size());
            result.put("detailModelList", list);
            return success(result);
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @GetMapping(value = "open/queryById")
    @ApiOperation(value = "根据id查询文章")
    public Envelop queryByCodeOpen(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id", required = true) String id) {
        try {
            KnowledgeArticleDictDO articleDO = knowledgeArticleDictService.findById(id);
            return success(articleDO);
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findDeptByArticle)
    @ApiOperation(value = "查询文章下的科室")
    public ListEnvelop findDeptByArticle(@ApiParam(name = "articleId", value = "文章ID")
                                         @RequestParam(value = "articleId", required = true) String articleId) throws Exception {
        try {
            return success(knowledgeArticleDictService.findDeptByArticle2(articleId));
        } catch (Exception e) {
            return failedListEnvelopException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleByDept)
    @ApiOperation(value = "查询部门下发放的文章")
    public ListEnvelop findArticleByDept(@ApiParam(name = "dept", value = "科室")
                                         @RequestParam(value = "dept", required = true) String dept) throws Exception {
        try {
            return success(knowledgeArticleDictService.findArticleByDept2(dept));
        } catch (Exception e) {
            return failedListEnvelopException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.saveDeptArticle)
    @ApiOperation(value = "设置科室发送的文章")
    public ObjEnvelop saveDeptArticle(@ApiParam(name = "dept", value = "部门code")
                                      @RequestParam(value = "dept", required = true) String dept,
                                      @ApiParam(name = "sdJsons", value = "部门与科室关系json")
                                      @RequestParam(value = "sdJsons", required = false) String sdJsons) throws Exception {
        try {
            return success(knowledgeArticleDictService.saveDeptArticle(dept, sdJsons));
        } catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleByCategoryAndName)
    @ApiOperation(value = "查询文章")
    public MixEnvelop findArticleByCategoryAndName(@ApiParam(name = "categoryFirst", value = "一级分类code")
                                                   @RequestParam(value = "categoryFirst", required = false) String categoryFirst,
                                                   @ApiParam(name = "categorySecond", value = "二级分类code")
                                                   @RequestParam(value = "categorySecond", required = false) String categorySecond,
                                                   @ApiParam(name = "keyWords", value = "关键词")
                                                   @RequestParam(value = "keyWords", required = false) String keyWords,
                                                   @ApiParam(name = "page", value = "当前页")
                                                   @RequestParam(value = "page", required = false) Integer page,
                                                   @ApiParam(name = "pageSize", value = "分页大小)")
                                                   @RequestParam(value = "pageSize", required = false) Integer pageSize) throws Exception {
        MixEnvelop mixEnvelop = knowledgeArticleDictService.findArticleByCategoryAndName2(categoryFirst, categorySecond, keyWords, page, pageSize);
        return mixEnvelop;
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findPatientFavorite)
    @ApiOperation(value = "查询收藏文章")
    public Envelop findPatientFavorite(@ApiParam(name = "patient", value = "病人id")
                                       @RequestParam(value = "patient", required = false) String patient,
                                       @ApiParam(name = "page", value = "当前页")
                                       @RequestParam(value = "page", required = false) Integer page,
                                       @ApiParam(name = "pageSize", value = "分页大小)")
                                       @RequestParam(value = "pageSize", required = false) Integer pageSize) throws Exception {
        try {
            return success(knowledgeArticleDictService.findPatientFavorite2(patient, page, pageSize));
        } catch (Exception e) {
            return failedException(e);
        }
    }
}

+ 17 - 2
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/article/ArticleEndpoint.java

@ -401,7 +401,6 @@ public class ArticleEndpoint extends EnvelopRestEndpoint {
            @ApiParam(name = "user", value = "用户code") @RequestParam(value = "user", required = true) String user,
            @ApiParam(name = "userType", value = "用户类型(1患者2医生)") @RequestParam(value = "userType", required = true) String userType
    ) throws Exception {
        try {
            return success(patientBusinessService.setCollectionById(id, flag, status, user, userType));
        } catch (Exception e) {
@ -419,7 +418,6 @@ public class ArticleEndpoint extends EnvelopRestEndpoint {
            @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
    ) throws Exception {
        try {
            if (StringUtils.isBlank(filters)) {
                filters = filters + "del=1";
@ -474,7 +472,24 @@ public class ArticleEndpoint extends EnvelopRestEndpoint {
        } catch (Exception e) {
            return failedMixEnvelopException(e);
        }
    }
    /**
     * 查询指定分类的信息
     */
    @GetMapping(value = "/findCategoryByIdOrName")
    @ApiOperation(value = "查询指定分类的信息")
    public MixEnvelop findCategoryByIdOrName(
            @ApiParam(name = "id", value = "id") @RequestParam(value = "id", required = false) String id,
            @ApiParam(name = "name", value = "name") @RequestParam(value = "name", required = false) String name
    ) {
        try {
            MixEnvelop envelop = knowledgeCategoryService.findCategoryByIdOrName(id,name);
            return envelop;
        } catch (Exception e) {
            return failedMixEnvelopException(e);
        }
    }

+ 93 - 126
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/article/BaseMenuManageEndpoint.java

@ -29,20 +29,16 @@ public class BaseMenuManageEndpoint extends EnvelopRestEndpoint {
    @PostMapping(value = "setCollection")
    @ApiOperation(value = "设置文章状态")
    public ObjEnvelop setCollection(@ApiParam(name = "id", value = "文章id")
                                           @RequestParam(value = "id",required = true)String id,
                                           @ApiParam(name = "flag", value = "1收藏2阅读3点赞4分享")
                                           @RequestParam(value = "flag",required = true)Integer flag,
                                           @ApiParam(name = "status", value = "收藏(1收藏0未收藏)/阅读(1已读0未读)/点赞(1已赞0未赞)分享(1已分享0未分享)")
                                           @RequestParam(value = "status",required = true)Integer status,
                                           @ApiParam(name = "user", value = "用户code")
                                           @RequestParam(value = "user",required = true)String user,
                                           @ApiParam(name = "userType", value = "用户类型(1患者2医生)")
                                           @RequestParam(value = "userType",required = true)String userType)throws Exception {
        try {
            return success(menuService.setCollectionById(id,flag,status,user,userType));
        }catch (Exception e){
    public ObjEnvelop setCollection(
            @ApiParam(name = "id", value = "文章id") @RequestParam(value = "id", required = true) String id,
            @ApiParam(name = "flag", value = "1收藏2阅读3点赞4分享") @RequestParam(value = "flag", required = true) Integer flag,
            @ApiParam(name = "status", value = "收藏(1收藏0未收藏)/阅读(1已读0未读)/点赞(1已赞0未赞)分享(1已分享0未分享)") @RequestParam(value = "status", required = true) Integer status,
            @ApiParam(name = "user", value = "用户code") @RequestParam(value = "user", required = true) String user,
            @ApiParam(name = "userType", value = "用户类型(1患者2医生)") @RequestParam(value = "userType", required = true) String userType
    ) throws Exception {
        try {
            return success(menuService.setCollectionById(id, flag, status, user, userType));
        } catch (Exception e) {
            return failedObjEnvelopException(e);
        }
    }
@ -50,50 +46,46 @@ public class BaseMenuManageEndpoint extends EnvelopRestEndpoint {
    @PostMapping(value = BaseRequestMapping.MenuDict.deleteMenuDict)
    @ApiOperation(value = "删除菜单")
    public Envelop deleteMenuDict(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id") String id) {
            @ApiParam(name = "id", value = "id", required = true) @RequestParam(value = "id") String id) {
        try {
            menuService.deletMenuDict(id);
            return success("删除成功");
        }catch (Exception e){
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseRequestMapping.MenuDict.createMenuDict)
    @ApiOperation(value = "新建或修改")
    public Envelop create (
            @ApiParam(name = "jsonData", value = "Json数据", required = true)
            @RequestParam String jsonData) {
    public Envelop create(
            @ApiParam(name = "jsonData", value = "Json数据", required = true) @RequestParam String jsonData) {
        try {
            BaseMenuDictDO baseMenuDictDO = menuService.createOrUpdateMenu(jsonData,2);
            BaseMenuDictDO baseMenuDictDO = menuService.createOrUpdateMenu(jsonData, 2);
            return success(baseMenuDictDO);
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseRequestMapping.MenuDict.findOneMenuDict)
    @ApiOperation(value = "根据id查询链接单条")
    public Envelop findOneMenuDict(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id") String id,
            @ApiParam(name = "patient", value = "居民id", required = false)
            @RequestParam(value = "patient", required = false) String patient) {
            @ApiParam(name = "id", value = "id", required = true) @RequestParam(value = "id") String id,
            @ApiParam(name = "patient", value = "居民id", required = false) @RequestParam(value = "patient", required = false) String patient) {
        try {
            return success(menuService.findOneMenuDict(id,patient));
        }catch (Exception e){
            return success(menuService.findOneMenuDict(id, patient));
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseRequestMapping.MenuDict.MOVE_DOWN)
    @ApiOperation(value = "下移")
    public Envelop moveDown(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id") String id) {
    public Envelop moveDown(@ApiParam(name = "id", value = "id", required = true) @RequestParam(value = "id") String id) {
        try {
            BaseMenuDictDO baseMenuDictDO = menuService.downMenu(id);
            return success(baseMenuDictDO);
        }catch (Exception e){
        } catch (Exception e) {
            return failedException(e);
        }
@ -101,13 +93,11 @@ public class BaseMenuManageEndpoint extends EnvelopRestEndpoint {
    @PostMapping(value = BaseRequestMapping.MenuDict.MOVE_UP)
    @ApiOperation(value = "上移")
    public Envelop moveUp(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id") String id) {
    public Envelop moveUp(@ApiParam(name = "id", value = "id", required = true) @RequestParam(value = "id") String id) {
        try {
            BaseMenuDictDO baseMenuDictDO = menuService.upMenu(id);
            return success(baseMenuDictDO);
        }catch (Exception e){
        } catch (Exception e) {
            return failedException(e);
        }
    }
@ -115,63 +105,54 @@ public class BaseMenuManageEndpoint extends EnvelopRestEndpoint {
    @PostMapping(value = BaseRequestMapping.MenuDict.STATUS)
    @ApiOperation(value = "生效/失效")
    public Envelop status(
            @ApiParam(name = "id", value = "id", required = true)
            @RequestParam(value = "id") String id,
            @ApiParam(name = "status", value = "1生效,0失效", required = true)
            @RequestParam(value = "status") Integer status) {
            @ApiParam(name = "id", value = "id", required = true) @RequestParam(value = "id") String id,
            @ApiParam(name = "status", value = "1生效,0失效", required = true) @RequestParam(value = "status") Integer status) {
        try {
            menuService.updateStatus(id, status);
            return success("修改成功");
        }catch (Exception e){
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @GetMapping(value = BaseRequestMapping.MenuDict.LIST)
    @ApiOperation(value = "查询菜单字典列表")
    public Envelop findMenuDictByKey(
            @ApiParam(name = "parentId", value = "parentId", required = false)
            @RequestParam(value = "parentId",required = false) String parentId,
            @ApiParam(name = "name", value = "name", required = false)
            @RequestParam(value = "name",required = false) String name,
            @ApiParam(name = "status", value = "status", required = false)
            @RequestParam(value = "status",required = false) Integer status) {
            @ApiParam(name = "parentId", value = "parentId", required = false) @RequestParam(value = "parentId", required = false) String parentId,
            @ApiParam(name = "name", value = "name", required = false) @RequestParam(value = "name", required = false) String name,
            @ApiParam(name = "status", value = "status", required = false) @RequestParam(value = "status", required = false) Integer status
    ) {
        try {
            return success(menuService.findMenuDictByKey(parentId, name,status,2));
        }catch (Exception e){
            return success(menuService.findMenuDictByKey(parentId, name, status, 2));
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.updateArticleUser)
    @ApiOperation(value = "患者更新文章状态")
    public Envelop updateArticleUser( @ApiParam(name = "flag", value = "1点赞2收藏3常用4分享5阅读")
                                      @RequestParam(value = "flag",required = false)Integer flag,
                                      @ApiParam(name = "articleId", value = "文章id")
                                      @RequestParam(value = "articleId",required = false)String articleId,
                                      @ApiParam(name = "userCode", value = "用户编码")
                                      @RequestParam(value = "userCode",required = false)String userCode,
                                      @ApiParam(name = "status", value = "对应的状态(0,1)")
                                      @RequestParam(value = "status",required = false)Integer status)throws Exception {
    public Envelop updateArticleUser(
            @ApiParam(name = "flag", value = "1点赞2收藏3常用4分享5阅读") @RequestParam(value = "flag", required = false) Integer flag,
            @ApiParam(name = "articleId", value = "文章id") @RequestParam(value = "articleId", required = false) String articleId,
            @ApiParam(name = "userCode", value = "用户编码") @RequestParam(value = "userCode", required = false) String userCode,
            @ApiParam(name = "status", value = "对应的状态(0,1)") @RequestParam(value = "status", required = false) Integer status) throws Exception {
        try {
            return success(menuService.updateArticleUser(flag,articleId,userCode,status));
        }catch (Exception e){
            return success(menuService.updateArticleUser(flag, articleId, userCode, status));
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.selectMenuList)
    @ApiOperation(value = "查询患者关注文章列表分类")
    public Envelop selectMenuList( @ApiParam(name = "flag", value = "1点赞2收藏3常用4分享5阅读")
                                      @RequestParam(value = "flag",required = false)Integer flag,
                                      @ApiParam(name = "userCode", value = "用户编码")
                                      @RequestParam(value = "userCode",required = false)String userCode,
                                      @ApiParam(name = "status", value = "对应的状态(0,1)")
                                      @RequestParam(value = "status",required = false)Integer status)throws Exception {
    public Envelop selectMenuList(
            @ApiParam(name = "flag", value = "1点赞2收藏3常用4分享5阅读") @RequestParam(value = "flag", required = false) Integer flag,
            @ApiParam(name = "userCode", value = "用户编码") @RequestParam(value = "userCode", required = false) String userCode,
            @ApiParam(name = "status", value = "对应的状态(0,1)") @RequestParam(value = "status", required = false) Integer status
    ) throws Exception {
        try {
            return success(menuService.selectMenuList(userCode,flag,status));
        }catch (Exception e){
            return success(menuService.selectMenuList(userCode, flag, status));
        } catch (Exception e) {
            return failedException2(e);
        }
    }
@ -179,38 +160,32 @@ public class BaseMenuManageEndpoint extends EnvelopRestEndpoint {
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.selectArticleListByCategory)
    @ApiOperation(value = "根据分类查找患者关注文章列表")
    public Envelop selectArticleListByCategory( @ApiParam(name = "categoryFirst", value = "一级分类")
                                       @RequestParam(value = "categoryFirst",required = false)String categoryFirst,
                                   @ApiParam(name = "categorySecond", value = "二级分类")
                                   @RequestParam(value = "categorySecond",required = false)String categorySecond,
                                   @ApiParam(name = "flag", value = "1点赞2收藏3常用4分享5阅读")
                                   @RequestParam(value = "flag",required = false)Integer flag,
                                   @ApiParam(name = "userCode", value = "用户编码")
                                   @RequestParam(value = "userCode",required = false)String userCode,
                                   @ApiParam(name = "status", value = "对应的状态(0,1)")
                                   @RequestParam(value = "status",required = false)Integer status,
                                   @ApiParam(name = "page", value = "页码")
                                       @RequestParam(value = "page",required = false)Integer page,
                                   @ApiParam(name = "size", value = "每一页大小")
                                       @RequestParam(value = "size",required = false)Integer size)throws Exception {
        try {
            return success(menuService.selectArticleListByCategory(categoryFirst,categorySecond,userCode,flag,status,page,size));
        }catch (Exception e){
    public Envelop selectArticleListByCategory(
            @ApiParam(name = "categoryFirst", value = "一级分类") @RequestParam(value = "categoryFirst", required = false) String categoryFirst,
            @ApiParam(name = "categorySecond", value = "二级分类") @RequestParam(value = "categorySecond", required = false) String categorySecond,
            @ApiParam(name = "flag", value = "1点赞2收藏3常用4分享5阅读") @RequestParam(value = "flag", required = false) Integer flag,
            @ApiParam(name = "userCode", value = "用户编码") @RequestParam(value = "userCode", required = false) String userCode,
            @ApiParam(name = "status", value = "对应的状态(0,1)") @RequestParam(value = "status", required = false) Integer status,
            @ApiParam(name = "page", value = "页码") @RequestParam(value = "page", required = false) Integer page,
            @ApiParam(name = "size", value = "每一页大小") @RequestParam(value = "size", required = false) Integer size
    ) throws Exception {
        try {
            return success(menuService.selectArticleListByCategory(categoryFirst, categorySecond, userCode, flag, status, page, size));
        } catch (Exception e) {
            return failedException2(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.findArticleUserById)
    @ApiOperation(value = "查询患者关联的文章")
    public Envelop selectArticleListByCategory(@ApiParam(name = "userCode", value = "用户编码")
                                                @RequestParam(value = "userCode",required = false)String userCode,
                                                @ApiParam(name = "articleId", value = "文章id")
                                                @RequestParam(value = "articleId",required = false)String articleId)throws Exception {
    public Envelop selectArticleListByCategory(
            @ApiParam(name = "userCode", value = "用户编码") @RequestParam(value = "userCode", required = false) String userCode,
            @ApiParam(name = "articleId", value = "文章id") @RequestParam(value = "articleId", required = false) String articleId) throws Exception {
        try {
            return success(menuService.findArticleUserById(userCode,articleId));
        }catch (Exception e){
            return success(menuService.findArticleUserById(userCode, articleId));
        } catch (Exception e) {
            return failedException2(e);
        }
    }
@ -218,63 +193,55 @@ public class BaseMenuManageEndpoint extends EnvelopRestEndpoint {
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.insertArticleOperate)
    @ApiOperation(value = "新增医生文章/医生操作(评论、点赞、收藏)")
    public Envelop insert(@ApiParam(name = "json", value = "json实体")
                          @RequestParam(value = "json",required = false)String json)throws Exception {
                          @RequestParam(value = "json", required = false) String json) throws Exception {
        try {
            KnowledgeArticleDoctorDO knowledgeArticleDoctorDO = toEntity(json,KnowledgeArticleDoctorDO.class);
            KnowledgeArticleDoctorDO knowledgeArticleDoctorDO = toEntity(json, KnowledgeArticleDoctorDO.class);
            return success(menuService.insert(knowledgeArticleDoctorDO));
        }catch (Exception e){
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @PostMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.deleteArticleDoctorById)
    @ApiOperation(value = "取消点赞/收藏")
    public Envelop deleteArticleDoctorById(@ApiParam(name = "baseArticleDoctorId", value = "评论id")
                                            @RequestParam(value = "baseArticleDoctorId",required = false)String baseArticleDoctorId,
                                           @ApiParam(name = "relationCode", value = "文章id/医生id")
                                           @RequestParam(value = "relationCode",required = false)String relationCode,
                                           @ApiParam(name = "type", value = "类型2点赞3收藏")
                                               @RequestParam(value = "type",required = false)Integer type,
                                           @ApiParam(name = "user", value = "用户编码")
                                               @RequestParam(value = "user",required = false)String user)throws Exception {
        try {
            menuService.deleteArticleDoctorById(baseArticleDoctorId,relationCode,type,user);
    public Envelop deleteArticleDoctorById(
            @ApiParam(name = "baseArticleDoctorId", value = "评论id") @RequestParam(value = "baseArticleDoctorId", required = false) String baseArticleDoctorId,
            @ApiParam(name = "relationCode", value = "文章id/医生id") @RequestParam(value = "relationCode", required = false) String relationCode,
            @ApiParam(name = "type", value = "类型2点赞3收藏") @RequestParam(value = "type", required = false) Integer type,
            @ApiParam(name = "user", value = "用户编码") @RequestParam(value = "user", required = false) String user
    ) throws Exception {
        try {
            menuService.deleteArticleDoctorById(baseArticleDoctorId, relationCode, type, user);
            return success();
        }catch (Exception e){
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.selectArticleDoctorById)
    @ApiOperation(value = "查询医生关联文章回复数据")
    public Envelop selectArticleDoctorById(@ApiParam(name = "user", value = "用户id")
                                               @RequestParam(value = "user",required = false)String user,
                                           @ApiParam(name = "id", value = "文章id")
                                           @RequestParam(value = "id",required = false)String id,
                                           @ApiParam(name = "page", value = "当前页")
                                           @RequestParam(value = "page",required = false)Integer page,
                                           @ApiParam(name = "size", value = "分页大小)")
                                           @RequestParam(value = "size",required = false)Integer size)throws Exception {
        try {
            return success(menuService.selectArticleDoctorById(user,id,1,page,size));
        }catch (Exception e){
    public Envelop selectArticleDoctorById(
            @ApiParam(name = "user", value = "用户id") @RequestParam(value = "user", required = false) String user,
            @ApiParam(name = "id", value = "文章id") @RequestParam(value = "id", required = false) String id,
            @ApiParam(name = "page", value = "当前页") @RequestParam(value = "page", required = false) Integer page,
            @ApiParam(name = "size", value = "分页大小)") @RequestParam(value = "size", required = false) Integer size
    ) throws Exception {
        try {
            return success(menuService.selectArticleDoctorById(user, id, 1, page, size));
        } catch (Exception e) {
            return failedException(e);
        }
    }
    @GetMapping(value = BaseHospitalRequestMapping.KnowledgeArticle.selectArticleDoctorByArticleIdAndUser)
    @ApiOperation(value = "判断该文章当前医生是否点赞或者收藏")
    public Envelop selectArticleDoctorByArticleIdAndUser(@ApiParam(name = "id", value = "文章id/医生id")
                                                         @RequestParam(value = "id",required = false)String id,
                                                         @ApiParam(name = "user", value = "用户编码")
                                                         @RequestParam(value = "user",required = false)String user)throws Exception {
    public Envelop selectArticleDoctorByArticleIdAndUser(
            @ApiParam(name = "id", value = "文章id/医生id") @RequestParam(value = "id", required = false) String id,
            @ApiParam(name = "user", value = "用户编码") @RequestParam(value = "user", required = false) String user) throws Exception {
        try {
            return success(menuService.selectArticleDoctorByArticleIdAndUser(id,user));
        }catch (Exception e){
            return success(menuService.selectArticleDoctorByArticleIdAndUser(id, user));
        } catch (Exception e) {
            return failedException(e);
        }
    }

+ 11 - 0
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/endpoint/specialist/BaseDiseaseHospitalController.java

@ -489,5 +489,16 @@ public class BaseDiseaseHospitalController extends EnvelopRestEndpoint {
        }
    }
    @RequestMapping(value = "/getSpecilalistDiseaseType_IJK", method = RequestMethod.GET)
    @ApiOperation(value = "获取专科医生的疾病类型")
    public Envelop getSpecilalistDiseaseType_IJK(@ApiParam(name = "doctor", value = "专科医生ID") @RequestParam(value = "doctor") String doctor) {
        try {
            JSONObject result = wlyyBusinessService.getSpecilalistDiseaseType_IJK(doctor);
            return success(result);
        } catch (Exception e) {
            return failedException(e);
        }
    }
}

+ 0 - 1
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/service/consult/BasePatientBusinessService.java

@ -78,7 +78,6 @@ public class BasePatientBusinessService extends BaseJpaService<BasePatientBusine
					knowledgeArticleUserDO.setCreateUserName(doctorDO.getName());
				}
			}
			knowledgeArticleUserDO.setCreateTime(new Date());
			knowledgeArticleUserDO.setUpdateTime(new Date());
			knowledgeArticleUserDO.setCreateUser(user);

+ 82 - 61
svr/svr-internet-hospital/src/main/java/com/yihu/jw/hospital/service/consult/KnowledgeCategoryService.java

@ -8,7 +8,9 @@ import com.yihu.jw.entity.hospital.article.KnowledgeCategoryDO;
import com.yihu.jw.mysql.query.BaseJpaService;
import com.yihu.jw.restmodel.web.MixEnvelop;
import com.yihu.jw.utils.hibernate.HibenateUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.stereotype.Service;
import javax.transaction.Transactional;
@ -19,69 +21,88 @@ import java.util.Map;
/**
 * 健康文章分类
 *
 * @author huangwenjie
 */
@Service
public class KnowledgeCategoryService extends BaseJpaService<KnowledgeCategoryDO, KnowledgeCategoryDao> {
	@Autowired
	private KnowledgeCategoryDao knowledgeCategoryDao;
	@Autowired
	private KnowledgeArticleDao articleDao;
	
	@Autowired
	private ObjectMapper objectMapper;
	@Autowired
	private HibenateUtils hibenateUtils;
	public KnowledgeCategoryDO saveCategory(String jsonData) throws Exception {
		jsonData = URLDecoder.decode(jsonData,"utf-8");
		KnowledgeCategoryDO knowledgeCategoryDO = objectMapper.readValue(jsonData, KnowledgeCategoryDO.class);
		if (null == knowledgeCategoryDO.getPid()) {
			knowledgeCategoryDO.setPid("0");
		}
		if (null == knowledgeCategoryDO.getId()) {
			// 新增
			knowledgeCategoryDO.setCreateTime(new Date());
			knowledgeCategoryDO.setDel(1);
		} else {
			KnowledgeCategoryDO one = knowledgeCategoryDao.findById(knowledgeCategoryDO.getId()).orElse(null);
			knowledgeCategoryDO.setId(one.getId());
			knowledgeCategoryDO.setDel(one.getDel());
			knowledgeCategoryDO.setUpdateTime(new Date());
		}
		if(knowledgeCategoryDO.getIsCheck()==null){
			knowledgeCategoryDO.setIsCheck(1);
		}
		return knowledgeCategoryDao.save(knowledgeCategoryDO);
	}
	
	@Transactional
	public Boolean updateDel(String code) {
		try {
			List<KnowledgeArticleDO> byCategory = articleDao.findByCategory(code);
			if (null != byCategory && byCategory.size() > 0) {
				return false;
			}
			knowledgeCategoryDao.updateDel(code);
			return true;
		} catch (Exception e) {
			e.printStackTrace();
		}
		return false;
	}
	public MixEnvelop findAllGroup(){
		String sqlPid = "select id as \"id\",name as \"name\",pid as \"pid\" from wlyy_knowledge_category  where pid = '0' and del = 1";
		List<Map<String,Object>> list = hibenateUtils.createSQLQuery(sqlPid);
		String child = "select id as \"id\",name as \"name\",pid as \"pid\" from wlyy_knowledge_category  where del = 1";
		if (list.size()>0){
			for (Map<String,Object> map:list){
				String pid = map.get("id").toString();
				child+=" and pid = '"+pid+"'";
				List<Map<String,Object>> childList = hibenateUtils.createSQLQuery(child);
				map.put("childList",childList);
			}
		}
		MixEnvelop envelop = new MixEnvelop();
		envelop.setDetailModelList(list);
		return envelop;
	}
    @Autowired
    private KnowledgeCategoryDao knowledgeCategoryDao;
    @Autowired
    private KnowledgeArticleDao articleDao;
    @Autowired
    private ObjectMapper objectMapper;
    @Autowired
    private HibenateUtils hibenateUtils;
    public KnowledgeCategoryDO saveCategory(String jsonData) throws Exception {
        jsonData = URLDecoder.decode(jsonData, "utf-8");
        KnowledgeCategoryDO knowledgeCategoryDO = objectMapper.readValue(jsonData, KnowledgeCategoryDO.class);
        if (null == knowledgeCategoryDO.getPid()) {
            knowledgeCategoryDO.setPid("0");
        }
        if (null == knowledgeCategoryDO.getId()) {
            // 新增
            knowledgeCategoryDO.setCreateTime(new Date());
            knowledgeCategoryDO.setDel(1);
        } else {
            KnowledgeCategoryDO one = knowledgeCategoryDao.findById(knowledgeCategoryDO.getId()).orElse(null);
            knowledgeCategoryDO.setId(one.getId());
            knowledgeCategoryDO.setDel(one.getDel());
            knowledgeCategoryDO.setUpdateTime(new Date());
        }
        if (knowledgeCategoryDO.getIsCheck() == null) {
            knowledgeCategoryDO.setIsCheck(1);
        }
        return knowledgeCategoryDao.save(knowledgeCategoryDO);
    }
    @Transactional
    public Boolean updateDel(String code) {
        try {
            List<KnowledgeArticleDO> byCategory = articleDao.findByCategory(code);
            if (null != byCategory && byCategory.size() > 0) {
                return false;
            }
            knowledgeCategoryDao.updateDel(code);
            return true;
        } catch (Exception e) {
            e.printStackTrace();
        }
        return false;
    }
    public MixEnvelop findAllGroup() {
        String sqlPid = "select id as \"id\",name as \"name\",pid as \"pid\" from wlyy_knowledge_category  where pid = '0' and del = 1";
        List<Map<String, Object>> list = hibenateUtils.createSQLQuery(sqlPid);
        String child = "select id as \"id\",name as \"name\",pid as \"pid\" from wlyy_knowledge_category  where del = 1";
        if (list.size() > 0) {
            for (Map<String, Object> map : list) {
                String pid = map.get("id").toString();
                child += " and pid = '" + pid + "'";
                List<Map<String, Object>> childList = hibenateUtils.createSQLQuery(child);
                map.put("childList", childList);
            }
        }
        MixEnvelop envelop = new MixEnvelop();
        envelop.setDetailModelList(list);
        return envelop;
    }
    public MixEnvelop findCategoryByIdOrName(String id, String name) {
        String sql = " select * from wlyy_knowledge_category where 1=1 ";
        if (StringUtils.isNotBlank(id)) {
            sql += " and id='" + id + "'";
        }
        if (StringUtils.isNotBlank(name)) {
            sql += " and name='" + name + "'";
        }
        List<KnowledgeCategoryDO> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(KnowledgeCategoryDO.class));
        MixEnvelop envelop = new MixEnvelop();
        if (!list.isEmpty()) {
            envelop.setObj(list.get(0));
        }
        return envelop;
    }
}

+ 1 - 3
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/template/controller/DoctorGuidanceTempController.java

@ -186,9 +186,7 @@ public class DoctorGuidanceTempController extends BaseController {
            @RequestParam(defaultValue = "1") @ApiParam(value = "当前页码") String pageNo
    ) {
        try {
            int pagesize = Integer.parseInt(pageSize);
            int pageno = Integer.parseInt(pageNo) - 1;
            Map<String, Object> result = guidanceTempService.list(doctorCode, templeteName, pagesize, pageno);
            Map<String, Object> result = guidanceTempService.list(doctorCode, templeteName, Integer.parseInt(pageSize), Integer.parseInt(pageNo));
            return write(200, "查询成功", "data", result);
        } catch (Exception e) {
            e.printStackTrace();

+ 4 - 5
svr/svr-visit-behind/src/main/java/com/yihu/jw/hospital/module/template/service/DoctorGuidanceTempService.java

@ -192,25 +192,24 @@ public class DoctorGuidanceTempService {
     * @param doctor 医生
     */
    public Map<String, Object> list(String doctor, String templeteName, int pageSize, int pageNo) throws Exception {
        String detailSql = "SELECT 	a.* ";
        String detailSql = "SELECT 	a.send_times ,b.* ";
        String countSql = "SELECT 	count(1) ";
        String sql = "FROM\n" +
                "	wlyy_doctor_guidance_temp a\n" +
                "	INNER JOIN wlyy_knowledge_article_dict b ON a.CODE = b.id \n" +
                "WHERE\n" +
                "	1 = 1 \n" +
                "	AND b.`status` = '1' \n";
                "	1 = 1 \n";
        if (StringUtils.isNotBlank(templeteName)) {
            sql += "	AND a.model_name LIKE '%" + templeteName + "%'\n";
        }
        if (StringUtils.isNotBlank(doctor)) {
            sql += "	AND a.OWNER = '" + doctor + "' order by create_time desc  \n";
            sql += "	AND a.OWNER = '" + doctor + "' order by a.create_time desc  \n";
        }
        String limitSql = " limit "+(pageNo-1)*pageSize+","+pageSize ;
        detailSql += sql + limitSql;
        countSql += sql;
        List<DoctorGuidanceTemp> list = jdbcTemplate.query(detailSql, new BeanPropertyRowMapper<>(DoctorGuidanceTemp.class));
        List<Map<String, Object>> list = jdbcTemplate.queryForList(detailSql);
        Integer integer = jdbcTemplate.queryForObject(countSql, Integer.class);
        HashMap<String, Object> resultMap = new HashMap<>();
        resultMap.put("data",list);