DiyTempController.php 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114
  1. <?php
  2. /**
  3. * Author: 芸众商城 www.yunzshop.com
  4. * Date: 2017/11/8
  5. * Time: 下午4:20
  6. */
  7. namespace app\backend\modules\setting\controllers;
  8. use app\common\components\BaseController;
  9. use app\common\helpers\PaginationHelper;
  10. use app\common\helpers\Url;
  11. use app\common\models\notice\MessageTemp;
  12. use app\common\modules\template\Template;
  13. class DiyTempController extends BaseController
  14. {
  15. private $temp_model;
  16. public function index()
  17. {
  18. if(request()->ajax()){
  19. $kwd = request()->keyword;
  20. $list = MessageTemp::fetchTempList($kwd)->orderBy('id', 'desc')->paginate(20);
  21. return $this->successJson('请求接口成功', ['list' => $list,]);
  22. }
  23. return view('setting.diytemp.list');
  24. }
  25. public function add()
  26. {
  27. if (request()->ajax() && request()->temp) {
  28. $temp_model = new MessageTemp();
  29. $ret = $temp_model::create($temp_model::handleArray(request()->temp));
  30. if (!$ret) {
  31. return $this->successJson('添加模板失败', Url::absoluteWeb('setting.diy-temp.index'));
  32. }
  33. return $this->errorJson('添加模板成功', Url::absoluteWeb('setting.diy-temp.index'));
  34. }
  35. if(request()->ajax()){
  36. $temp = array_values(Template::current()->getItems());
  37. return $this->successJson('请求接口成功',['temp' => $temp]);
  38. }
  39. return view('setting.diytemp.detail');
  40. }
  41. public function edit()
  42. {
  43. $this->verifyParam();
  44. if (request()->temp) {
  45. $this->temp_model->fill(MessageTemp::handleArray(request()->temp));
  46. $ret = $this->temp_model->save();
  47. if (!$ret) {
  48. return $this->successJson('修改模板失败', Url::absoluteWeb('setting.diy-temp.index'), 'error');
  49. }
  50. return $this->errorJson('修改模板成功', Url::absoluteWeb('setting.diy-temp.index'));
  51. }
  52. $temp = array_values(Template::current()->getItems());
  53. // return $this->successJson('请求接口成功',['temp' => $temp]);
  54. if(request()->ajax()){
  55. return $this->successJson('请求接口', [
  56. 'temp' => $this->temp_model->toArray(),
  57. 'wechat_temp' =>$temp
  58. ]);
  59. }
  60. return view('setting.diytemp.tempEdit');
  61. }
  62. public function del()
  63. {
  64. $this->verifyParam();
  65. $this->temp_model->delete();
  66. return $this->successJson('删除成功', Url::absoluteWeb('setting.diy-temp.index'));
  67. }
  68. public function tpl()
  69. {
  70. return view('setting.diytemp.tpl.common', [
  71. 'kw' => request()->kw,
  72. 'tpkw' => request()->tpkw,
  73. ])->render();
  74. }
  75. private function verifyParam()
  76. {
  77. $temp_id = intval(request()->id);
  78. if (!$temp_id) {
  79. return $this->errorJson('参数错误', Url::absoluteWeb('setting.diy-temp.index'), 'error');
  80. }
  81. $temp_model = MessageTemp::getTempById($temp_id)->first();
  82. if (!$temp_model) {
  83. return $this->errorJson('未找到数据', Url::absoluteWeb('setting.diy-temp.index'), 'error');
  84. }
  85. $this->temp_model = $temp_model;
  86. }
  87. public function query()
  88. {
  89. $kwd = trim(request()->keyword);
  90. if ($kwd) {
  91. $temp_list = MessageTemp::fetchTempList($kwd)->get();
  92. return view('setting.diytemp.query', [
  93. 'temp_list' => $temp_list
  94. ])->render();
  95. }
  96. }
  97. }