TemplateMessageRepository.php 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. <?php
  2. namespace app\common\repositories\wechat;
  3. use app\common\dao\wechat\TemplateMessageDao;
  4. use app\common\repositories\BaseRepository;
  5. use FormBuilder\Factory\Elm;
  6. use think\facade\Config;
  7. use think\facade\Route;
  8. /**
  9. * Class TemplateMessageRepository
  10. * @package app\common\repositories\wechat
  11. * @mixin TemplateMessageDao
  12. */
  13. class TemplateMessageRepository extends BaseRepository
  14. {
  15. /**
  16. * @var TemplateMessageDao
  17. */
  18. public $dao;
  19. /**
  20. * TemplateMessageRepository constructor.
  21. * @param TemplateMessageDao $dao
  22. */
  23. public function __construct(TemplateMessageDao $dao)
  24. {
  25. $this->dao = $dao;
  26. }
  27. public function getList($wereh,$page,$limit)
  28. {
  29. $query = $this->dao->search($wereh);
  30. $count = $query->count();
  31. $list = $query->page($page,$limit)->select();
  32. return compact('count','list');
  33. }
  34. /**
  35. * TODO
  36. * @param int|null $id
  37. * @param int $type
  38. * @return \FormBuilder\Form
  39. * @author Qinii
  40. * @day 2020-06-19
  41. */
  42. public function form(?int $id = null,$type = 0)
  43. {
  44. $form = Elm::createForm(Route::buildUrl('systemTemplateMessageCreate')->build());
  45. $form->setRule([
  46. Elm::hidden('type',$type),
  47. Elm::input('tempkey','模板编号'),
  48. Elm::input('name','模板名'),
  49. Elm::input('tempid','模板ID'),
  50. Elm::textarea('content','回复内容'),
  51. Elm::switches('status','状态',1)->activeValue(1)->inactiveValue(0)->inactiveText('关闭')->activeText('开启'),
  52. ]);
  53. return $form->setTitle(is_null($id) ? '添加' : '编辑');
  54. }
  55. /**
  56. * TODO
  57. * @param $id
  58. * @return \FormBuilder\Form
  59. * @author Qinii
  60. * @day 2020-06-19
  61. */
  62. public function updateForm($id)
  63. {
  64. $tem = $this->dao->get($id);
  65. $form = Elm::createForm(Route::buildUrl('systemTemplateMessageUpdate',['id' => $id])->build());
  66. $form->setRule([
  67. Elm::hidden('type',$tem['type']),
  68. Elm::input('tempkey','模板编号',$tem['tempkey'])->disabled(1),
  69. Elm::input('name','模板名',$tem['name'])->disabled(1),
  70. Elm::input('tempid','模板ID',$tem['tempid']),
  71. Elm::switches('status','状态',$tem['status'])->activeValue(1)->inactiveValue(0)->inactiveText('关闭')->activeText('开启'),
  72. ]);
  73. return $form->setTitle('编辑');
  74. }
  75. public function getSubscribe()
  76. {
  77. $res = [];
  78. $data = $this->dao->search(['type' => 0])->column('tempid','tempkey');
  79. $arr = Config::get('template.stores.subscribe.template_id');
  80. foreach ($arr as $k => $v){
  81. $res[$k] = $data[$v];
  82. }
  83. return $res;
  84. }
  85. }