QueryController.java 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223
  1. package com.ruoyi.web.controller.system;
  2. import com.ruoyi.common.annotation.RepeatSubmit;
  3. import com.ruoyi.common.config.RuoYiConfig;
  4. import com.ruoyi.common.constant.UserConstants;
  5. import com.ruoyi.common.core.controller.BaseController;
  6. import com.ruoyi.common.core.domain.AjaxResult;
  7. import com.ruoyi.common.core.domain.entity.ColumnNavigationBar;
  8. import com.ruoyi.common.core.domain.entity.ColumnNews;
  9. import com.ruoyi.common.core.domain.entity.SysDictData;
  10. import com.ruoyi.common.core.page.TableDataInfo;
  11. import com.ruoyi.common.utils.StringUtils;
  12. import com.ruoyi.common.utils.file.FileUploadUtils;
  13. import com.ruoyi.framework.config.ServerConfig;
  14. import com.ruoyi.system.domain.*;
  15. import com.ruoyi.system.service.*;
  16. import org.springframework.beans.factory.annotation.Autowired;
  17. import org.springframework.web.bind.annotation.*;
  18. import org.springframework.web.multipart.MultipartFile;
  19. import java.util.ArrayList;
  20. import java.util.List;
  21. /**门户接口,对外开放
  22. * @author tjf
  23. * @Date: 2021/12/27/11:36
  24. */
  25. @RestController
  26. @RequestMapping("/gateway/query")
  27. public class QueryController extends BaseController {
  28. @Autowired
  29. private IQueryService queryService;
  30. @Autowired
  31. private IColumnNavigationBarService columnNavigationBarService;
  32. @Autowired
  33. private IImageDataService imageDataService;
  34. @Autowired
  35. private IColumnNewsService columnNewsService;
  36. @Autowired
  37. private ISysNoticeService noticeService;
  38. @Autowired
  39. private IFriendLinkService friendLinkService;
  40. @Autowired
  41. private IInspectInforService inspectInforService;
  42. @Autowired
  43. private ServerConfig serverConfig;
  44. @Autowired
  45. private ISysDictTypeService dictTypeService;
  46. /**
  47. * 门户查询报告信息
  48. */
  49. @PostMapping("/getReport")
  50. public AjaxResult list(ReportQueryLog reportQueryLog)
  51. {
  52. return queryService.selectReport(reportQueryLog);
  53. }
  54. /**
  55. * 获取栏目导航下拉树列表
  56. */
  57. @GetMapping("/treeselect")
  58. public AjaxResult treeselect(ColumnNavigationBar columnNavigationBar)
  59. {
  60. //默认查询是导航
  61. columnNavigationBar.setIsNavigationBar("Y");
  62. List<ColumnNavigationBar> columnNavigationBars = columnNavigationBarService.selectColumnNavigationBarList(columnNavigationBar);
  63. return AjaxResult.success(columnNavigationBarService.buildColumnTreeSelect(columnNavigationBars));
  64. }
  65. /**
  66. * 获取各个部分首页标题
  67. */
  68. @GetMapping("/titleList")
  69. public AjaxResult titleList(ColumnNavigationBar columnNavigationBar)
  70. {
  71. List<ColumnNavigationBar> columnNavigationBars = columnNavigationBarService.selectColumnNavigationBarListMenHu(columnNavigationBar);
  72. return AjaxResult.success(columnNavigationBars);
  73. }
  74. /**
  75. * 获取首页轮播图
  76. */
  77. @PostMapping("/getRotationChart")
  78. public AjaxResult getRotationChart(ImageDatas imageDatas)
  79. {
  80. List<ImageDatas> list = imageDataService.selectImageDatasListMenHu(imageDatas);
  81. return AjaxResult.success(list);
  82. }
  83. /**
  84. * 提交送检信息
  85. */
  86. @PostMapping("/sendInspectInFor")
  87. public AjaxResult sendInspectInFor(InspectInfor inspectInfor)
  88. {
  89. if (UserConstants.NOT_UNIQUE.equals(inspectInforService.checkSampleNameUnique(inspectInfor)))
  90. {
  91. return AjaxResult.error("新增样品名称'" + inspectInfor.getSampleName() + "'失败,样品名称已存在");
  92. }
  93. return toAjax(inspectInforService.insertInspectInfor(inspectInfor));
  94. }
  95. /**
  96. * 获取新闻文章
  97. */
  98. @PostMapping("/getNewS")
  99. public TableDataInfo getNewS(ColumnNews columnNews)
  100. {
  101. startPage();
  102. List<ColumnNews> list = columnNewsService.selectColumnNewsListMenHu(columnNews);
  103. return getDataTable(list);
  104. }
  105. /**
  106. * 获取新闻文章详情
  107. */
  108. @GetMapping("/{newsId}")
  109. public AjaxResult getNewSDetail(@PathVariable("newsId") Integer newsId)
  110. {
  111. ColumnNews columnNews = columnNewsService.selectColumnNewsDetailMenHu(newsId);
  112. return AjaxResult.success(columnNews);
  113. }
  114. /**
  115. * 获取通知公告
  116. */
  117. @PostMapping("/getNotice")
  118. public TableDataInfo getNotice(SysNotice notice)
  119. {
  120. startPage();
  121. List<SysNotice> list = noticeService.selectNoticeListMenHu(notice);
  122. return getDataTable(list);
  123. }
  124. /**
  125. * 获取友链
  126. */
  127. @PostMapping("/getFriendLink")
  128. public AjaxResult getFriendLink()
  129. {
  130. List<FriendLink> list = friendLinkService.selectFriendLinkList(new FriendLink());
  131. return AjaxResult.success(list);
  132. }
  133. /**
  134. * 给档案拥有者发送询问短信 todo做好防御
  135. * @param reportQueryLog
  136. * @return
  137. */
  138. @PostMapping("/sendQueryNum")
  139. @RepeatSubmit
  140. public AjaxResult sendQueryNum(ReportQueryLog reportQueryLog)
  141. {
  142. return queryService.sendQueryNum(reportQueryLog);
  143. }
  144. /**
  145. * 获取验证码 todo做好防御
  146. * @param reportQueryLog
  147. * @return
  148. */
  149. @PostMapping("/getCode")
  150. @RepeatSubmit
  151. public AjaxResult getCode( ReportQueryLog reportQueryLog)
  152. {
  153. return queryService.sendSms(reportQueryLog);
  154. }
  155. /**
  156. * 门户上传请求
  157. */
  158. @PostMapping("/common/upload")
  159. public AjaxResult uploadFile(MultipartFile file) throws Exception
  160. {
  161. try
  162. {
  163. // 上传文件路径
  164. String filePath = RuoYiConfig.getUploadPath();
  165. // 上传并返回新文件名称
  166. String fileName = FileUploadUtils.upload(filePath, file);
  167. String originalFilename = file.getOriginalFilename();
  168. String url = serverConfig.getUrl() + fileName;
  169. AjaxResult ajax = AjaxResult.success();
  170. ajax.put("fileName", fileName);
  171. ajax.put("originalFilename", originalFilename);
  172. ajax.put("url", url);
  173. return ajax;
  174. }
  175. catch (Exception e)
  176. {
  177. return AjaxResult.error(e.getMessage());
  178. }
  179. }
  180. /**
  181. * 根据字典类型查询字典数据信息
  182. */
  183. @GetMapping(value = "/type/{dictType}")
  184. public AjaxResult dictType(@PathVariable String dictType)
  185. {
  186. List<SysDictData> data = dictTypeService.selectDictDataByType(dictType);
  187. if (StringUtils.isNull(data))
  188. {
  189. data = new ArrayList<SysDictData>();
  190. }
  191. return AjaxResult.success(data);
  192. }
  193. }