SysSmsLogController.java 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. package com.platform.controller;
  2. import com.alibaba.fastjson.JSON;
  3. import com.platform.annotation.SysLog;
  4. import com.platform.entity.SmsConfig;
  5. import com.platform.entity.SysSmsLogEntity;
  6. import com.platform.service.SysConfigService;
  7. import com.platform.service.SysSmsLogService;
  8. import com.platform.utils.Constant;
  9. import com.platform.utils.PageUtils;
  10. import com.platform.utils.Query;
  11. import com.platform.utils.R;
  12. import org.apache.shiro.authz.annotation.RequiresPermissions;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.web.bind.annotation.*;
  15. import java.util.List;
  16. import java.util.Map;
  17. /**
  18. * 发送短信日志Controller
  19. *
  20. * @author lipengjun
  21. * @email 939961241@qq.com
  22. * @gitee https://gitee.com/fuyang_lipengjun/platform
  23. * @date 2017-12-16 23:38:05
  24. */
  25. @RestController
  26. @RequestMapping("/sys/smslog")
  27. public class SysSmsLogController {
  28. @Autowired
  29. private SysSmsLogService smsLogService;
  30. @Autowired
  31. private SysConfigService sysConfigService;
  32. /**
  33. * 短信配置KEY
  34. */
  35. private final static String KEY = Constant.SMS_CONFIG_KEY;
  36. /**
  37. * 所有日志列表
  38. *
  39. * @param params 请求参数
  40. * @return R
  41. */
  42. @RequestMapping("/list")
  43. @RequiresPermissions("sys:smslog:list")
  44. public R list(@RequestParam Map<String, Object> params) {
  45. //查询列表数据
  46. Query query = new Query(params);
  47. List<SysSmsLogEntity> smsLogList = smsLogService.queryList(query);
  48. int total = smsLogService.queryTotal(query);
  49. PageUtils pageUtil = new PageUtils(smsLogList, total, query.getLimit(), query.getPage());
  50. return R.ok().put("page", pageUtil);
  51. }
  52. /**
  53. * 根据主键获取日志信息
  54. *
  55. * @param id 主键
  56. * @return R
  57. */
  58. @RequestMapping("/info/{id}")
  59. @RequiresPermissions("sys:smslog:info")
  60. public R info(@PathVariable("id") String id) {
  61. SysSmsLogEntity smsLog = smsLogService.queryObject(id);
  62. return R.ok().put("smsLog", smsLog);
  63. }
  64. /**
  65. * 查看所有列表
  66. *
  67. * @param params 请求参数
  68. * @return R
  69. */
  70. @RequestMapping("/queryAll")
  71. public R queryAll(@RequestParam Map<String, Object> params) {
  72. List<SysSmsLogEntity> list = smsLogService.queryList(params);
  73. return R.ok().put("list", list);
  74. }
  75. /**
  76. * 获取短信配置信息
  77. *
  78. * @return R
  79. */
  80. @RequestMapping("/config")
  81. public R config() {
  82. SmsConfig config = sysConfigService.getConfigObject(KEY, SmsConfig.class);
  83. return R.ok().put("config", config);
  84. }
  85. /**
  86. * 保存短信配置信息
  87. *
  88. * @param config 短信配置信息
  89. * @return R
  90. */
  91. @SysLog("保存短信配置信息")
  92. @RequestMapping("/saveConfig")
  93. public R saveConfig(@RequestBody SmsConfig config) {
  94. sysConfigService.updateValueByKey(KEY, JSON.toJSONString(config));
  95. return R.ok();
  96. }
  97. /**
  98. * 发送短信
  99. *
  100. * @param smsLog 短信
  101. * @return R
  102. */
  103. @RequestMapping("/sendSms")
  104. public R sendSms(@RequestBody SysSmsLogEntity smsLog) {
  105. SysSmsLogEntity sysSmsLogEntity = smsLogService.sendSms(smsLog);
  106. return R.ok().put("result", sysSmsLogEntity);
  107. }
  108. }