Weixin.php 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185
  1. <?php
  2. namespace addons\weixin;
  3. use app\common\library\Menu;
  4. use think\exception\PDOException;
  5. use think\Addons;
  6. use think\Db;
  7. /**
  8. * 微信管理插件
  9. */
  10. class Weixin extends Addons
  11. {
  12. /**
  13. * 插件安装方法
  14. * @return bool
  15. */
  16. public function install()
  17. {
  18. $menu = [
  19. [
  20. 'name' => 'weixin',
  21. 'title' => '微信公众号管理',
  22. 'icon' => 'fa fa-weixin',
  23. 'sublist' => [
  24. [
  25. 'name' => 'weixin/config',
  26. 'title' => '应用配置',
  27. 'icon' => 'fa fa-cog',
  28. 'sublist' => [
  29. ['name' => 'weixin/config/index', 'title' => '查看'],
  30. ['name' => 'weixin/config/edit', 'title' => '编辑']
  31. ]
  32. ],
  33. [
  34. 'name' => 'weixin/menus',
  35. 'title' => '公众号菜单',
  36. 'icon' => 'fa fa-cog',
  37. 'sublist' => [
  38. ['name' => 'weixin/menus/index', 'title' => '查看'],
  39. ['name' => 'weixin/menus/sync', 'title' => '同步'],
  40. ['name' => 'weixin/menus/edit', 'title' => '编辑']
  41. ]
  42. ],
  43. [
  44. 'name' => 'weixin/template',
  45. 'title' => '模板消息',
  46. 'icon' => 'fa fa-bullhorn',
  47. 'sublist' => [
  48. [
  49. 'name' => 'weixin/template/wechat',
  50. 'title' => '公众号模板消息',
  51. 'icon' => 'fa fa-circle-o',
  52. 'ismenu'=> 1,
  53. 'sublist' => [
  54. ['name' => 'weixin/template/wechat/index', 'title' => '查看'],
  55. ['name' => 'weixin/template/wechat/add', 'title' => '添加'],
  56. ['name' => 'weixin/template/wechat/edit', 'title' => '编辑'],
  57. ['name' => 'weixin/template/wechat/multi', 'title' => '批量更新'],
  58. ['name' => 'weixin/template/wechat/del', 'title' => '删除']
  59. ]
  60. ],
  61. /*[
  62. 'name' => 'weixin/template/routine',
  63. 'title' => '小程序模板消息(未实现)',
  64. 'icon' => 'fa fa-circle-o',
  65. 'ismenu'=> 1,
  66. 'sublist' => [
  67. ['name' => 'weixin/template/routine/index', 'title' => '查看'],
  68. ['name' => 'weixin/template/routine/add', 'title' => '添加'],
  69. ['name' => 'weixin/template/routine/edit', 'title' => '编辑'],
  70. ['name' => 'weixin/template/routine/multi', 'title' => '批量更新'],
  71. ['name' => 'weixin/template/routine/del', 'title' => '删除']
  72. ]
  73. ]*/
  74. ]
  75. ],
  76. [
  77. 'name' => 'weixin/reply',
  78. 'title' => '自动回复',
  79. 'icon' => 'fa fa-commenting-o',
  80. 'sublist' => [
  81. [
  82. 'name' => 'weixin/reply/subscribe/index',
  83. 'title' => '公众号关注回复',
  84. 'icon' => 'fa fa-circle-o',
  85. 'ismenu'=> 1
  86. ],
  87. [
  88. 'name' => 'weixin/reply/keyword',
  89. 'title' => '关键词回复',
  90. 'icon' => 'fa fa-circle-o',
  91. 'ismenu'=> 1,
  92. 'sublist' => [
  93. ['name' => 'weixin/reply/keyword/index', 'title' => '查看'],
  94. ['name' => 'weixin/reply/keyword/add', 'title' => '添加'],
  95. ['name' => 'weixin/reply/keyword/edit', 'title' => '编辑'],
  96. ['name' => 'weixin/reply/keyword/multi', 'title' => '批量更新'],
  97. ['name' => 'weixin/reply/keyword/del', 'title' => '删除'],
  98. ['name' => 'weixin/reply/keyword/upload','title' => '上传'],
  99. ]
  100. ],
  101. [
  102. 'name' => 'weixin/reply/invalid/index',
  103. 'title' => '无效关键词回复',
  104. 'icon' => 'fa fa-circle-o',
  105. 'ismenu'=> 1
  106. ],
  107. [
  108. 'name' => 'weixin/news',
  109. 'title' => '图文消息',
  110. 'icon' => 'fa fa-circle-o',
  111. 'ismenu'=> 1,
  112. 'sublist' => [
  113. ['name' => 'weixin/news/index', 'title' => '查看'],
  114. ['name' => 'weixin/news/add', 'title' => '添加'],
  115. ['name' => 'weixin/news/edit', 'title' => '编辑'],
  116. ['name' => 'weixin/news/del', 'title' => '删除'],
  117. ]
  118. ]
  119. ]
  120. ],
  121. [
  122. 'name' => 'weixin/user',
  123. 'title' => '微信用户管理',
  124. 'icon' => 'weixin/user',
  125. 'sublist' => [
  126. [
  127. 'name' => 'weixin/user/index',
  128. 'title' => '微信用户',
  129. 'icon' => 'fa fa-circle-o',
  130. 'ismenu'=> 1,
  131. 'sublist' => [
  132. ['name' => 'weixin/user/sendmsg', 'title' => '推送消息'],
  133. ['name' => 'weixin/user/edit_user_tag', 'title' => '修改用户标签'],
  134. ['name' => 'weixin/user/edit_user_group', 'title' => '修改用户分组'],
  135. ]
  136. ],
  137. [
  138. 'name' => 'weixin/user/tag',
  139. 'title' => '用户标签',
  140. 'icon' => 'fa fa-circle-o',
  141. 'ismenu'=> 1,
  142. 'sublist' => [
  143. ['name' => 'weixin/user/tagadd', 'title' => '添加'],
  144. ['name' => 'weixin/user/tagedit', 'title' => '编辑'],
  145. ['name' => 'weixin/user/tagdel', 'title' => '删除'],
  146. ]
  147. ]
  148. ]
  149. ]
  150. ]
  151. ]
  152. ];
  153. Menu::create($menu);
  154. }
  155. /**
  156. * 插件卸载方法
  157. * @return bool
  158. */
  159. public function uninstall()
  160. {
  161. Menu::delete('weixin');
  162. return true;
  163. }
  164. /**
  165. * 插件启用方法
  166. */
  167. public function enable()
  168. {
  169. Menu::enable('weixin');
  170. }
  171. /**
  172. * 插件禁用方法
  173. */
  174. public function disable()
  175. {
  176. Menu::disable('weixin');
  177. }
  178. }