SmsTemplate.php 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. <?php
  2. namespace app\controller\admin\system\sms;
  3. use ln\basic\BaseController;
  4. use ln\services\YunxinSmsService;
  5. use FormBuilder\Exception\FormBuilderException;
  6. use think\App;
  7. /**
  8. * Class SmsTemplate
  9. * @package app\controller\admin\system\sms
  10. * @author zfy
  11. * @day 2020-05-18
  12. */
  13. class SmsTemplate extends BaseController
  14. {
  15. /**
  16. * @var YunxinSmsService
  17. */
  18. protected $service;
  19. /**
  20. * Sms constructor.
  21. * @param App $app
  22. */
  23. public function __construct(App $app)
  24. {
  25. parent::__construct($app);
  26. $this->service = YunxinSmsService::create();
  27. }
  28. /**
  29. * 异步获取公共模板列表
  30. */
  31. public function public()
  32. {
  33. $where = $this->request->params([
  34. ['is_have', ''],
  35. ['page', 1],
  36. ['limit', 20],
  37. ]);
  38. $templateList = $this->service->publictemp($where);
  39. if ($templateList['status'] == 400) return app('json')->fail($templateList['msg']);
  40. $arr = $templateList['data']['data'];
  41. foreach ($arr as $key => $value) {
  42. switch ($value['type']) {
  43. case 1:
  44. $arr[$key]['type'] = '验证码';
  45. break;
  46. case 2:
  47. $arr[$key]['type'] = '通知';
  48. break;
  49. case 3:
  50. $arr[$key]['type'] = '推广';
  51. break;
  52. default:
  53. $arr[$key]['type'] = '';
  54. break;
  55. }
  56. }
  57. $templateList['data']['data'] = $arr;
  58. return app('json')->success($templateList['data']);
  59. }
  60. /**
  61. * @return mixed
  62. * @throws FormBuilderException
  63. * @author zfy
  64. * @day 2020-05-18
  65. */
  66. public function form()
  67. {
  68. return app('json')->success(formToData($this->service->form()));
  69. }
  70. /**
  71. * @return mixed
  72. * @author zfy
  73. * @day 2020-05-18
  74. */
  75. public function template()
  76. {
  77. $where = $this->request->params([
  78. ['status', ''],
  79. ['title', ''],
  80. ['temp_type', ''],
  81. ['page', 1],
  82. ['limit', 20]
  83. ]);
  84. $templateList = $this->service->template($where);
  85. if ($templateList['status'] == 400) return app('json')->fail($templateList['msg']);
  86. $arr = $templateList['data']['data'];
  87. foreach ($arr as $key => $value) {
  88. switch ($value['type']) {
  89. case 1:
  90. $arr[$key]['type'] = '验证码';
  91. break;
  92. case 2:
  93. $arr[$key]['type'] = '通知';
  94. break;
  95. case 3:
  96. $arr[$key]['type'] = '推广';
  97. break;
  98. default:
  99. $arr[$key]['type'] = '';
  100. break;
  101. }
  102. }
  103. $templateList['data']['data'] = $arr;
  104. return app('json')->success($templateList['data']);
  105. }
  106. /**
  107. * @return mixed
  108. * @author zfy
  109. * @day 2020-05-18
  110. */
  111. public function apply()
  112. {
  113. $data = $this->request->params([
  114. 'title',
  115. 'content',
  116. ['type', 0]
  117. ]);
  118. if (!$data['title']) return app('json')->fail('请输入模板名称');
  119. if (!$data['content']) return app('json')->fail('请输入模板内容');
  120. $applyStatus = $this->service->apply($data['title'], $data['content'], $data['type']);
  121. if ($applyStatus['status'] == 400) return app('json')->fail($applyStatus['msg']);
  122. return app('json')->success('申请成功');
  123. }
  124. }