|
@ -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);
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
}
|