WxPageEventController.php 9.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261
  1. <?php
  2. namespace App\Admin\Controllers;
  3. use App\Admin\Repositories\WxPageEvent;
  4. use App\Wen\Utils\FieldUtils;
  5. use App\Wen\Utils\GatewayUtils;
  6. use App\Wen\Utils\Settings;
  7. use App\Wen\Utils\SiteUtils;
  8. use Dcat\Admin\Form;
  9. use Dcat\Admin\Grid;
  10. use Dcat\Admin\Show;
  11. use Dcat\Admin\Http\Controllers\AdminController;
  12. class WxPageEventController extends AdminController
  13. {
  14. protected $scene_arr = [
  15. 1 => '1. 首页',
  16. 2 => '2. 好物',
  17. 3 => '3. 发布',
  18. 4 => '4. 消息',
  19. 5 => '5. 我',
  20. 6 => '6. 圈子页(可配id)',
  21. 7 => '7. 话题页(可配id)',
  22. 8 => '8. 用户页(可配id)',
  23. 9 => '9. 笔记详情页(可配id)',
  24. 10 => '10. 全局搜索页',
  25. 12 => '12. 商品详情页(可配id)',
  26. 15 => '15. 聊天详情',
  27. 16 => '16. 更新资料页',
  28. 17 => '17. 新建圈子页',
  29. 18 => '18. 举报',
  30. 19 => '19. 发现-圈子',
  31. 21 => '21. 发布选择商品',
  32. 22 => '22. 发布选择圈子',
  33. 23 => '23. 发布选择话题',
  34. 24 => '24. 钱包',
  35. 25 => '25. 圈主圈子列表',
  36. 26 => '26. 余额充值',
  37. 27 => '27. 管理页',
  38. 28 => '28. 关于页面',
  39. 29 => '29. 地址页',
  40. 30 => '30. 注销账号页',
  41. 31 => '31. 开通会员页',
  42. 32 => '32. 订单页',
  43. 33 => '33. 签到任务页',
  44. 34 => '34. 物流页',
  45. 36 => '36. 购物车',
  46. 37 => '37. web-view',
  47. 38 => '38. 实时热帖榜',
  48. 39 => '39. 热门话题瀑布流页',
  49. 40 => '40. 提交反馈页',
  50. 41 => '41. 反馈详情页',
  51. 42 => '42. 帮助与反馈首页',
  52. 43 => '43. 我的反馈列表',
  53. 44 => '44. 帮助问题详情',
  54. 45 => '45. 确认订单页面',
  55. 46 => '46. 设置页',
  56. 47 => '47. 我的二维码',
  57. 48 => '48. 配置支付密码',
  58. 49 => '49. 全站图片一览页',
  59. 50 => '50. /pages/circleClass/circleClass',
  60. 51 => '51. 我的推广',
  61. 52 => '52. 协议页',
  62. 53 => '53. /pages/tags/list',
  63. 54 => '54. 我的订单',
  64. 55 => '55. /pagesA/mine/users/users',
  65. 56 => '56. 马甲',
  66. 57 => '57. 图集首页',
  67. 58 => '58. 图集详情',
  68. 59 => '59. 我的收藏图集',
  69. 60 => '60. pagesB/playbill/userPoster',
  70. 61 => '61. pagesB/playbill/circleShare',
  71. 62 => '62. pagesB/playbill/goodsPoster',
  72. 63 => '63. pagesB/playbill/playbill',
  73. 64 => '64. pagesB/menus/menus',
  74. 65 => '65. 活动',
  75. 66 => '66. 消息-通知页面',
  76. 67 => '67. 消息-喜欢和收藏',
  77. 68 => '68. 消息-评论',
  78. 69 => '69. 支付方式选择页',
  79. 70 => '70. 支付成功',
  80. 71 => '71. pc-login',
  81. 72 => '72. 图片详情页',
  82. 73 => '73. 帮助问题某个分类页',
  83. 74 => '74. 商品笔记列表页',
  84. 75 => '75. 视频滑动',
  85. 76 => '76. 输入手机号',
  86. 77 => '77. 屏蔽设置',
  87. 78 => '78. 我拉黑的用户',
  88. 79 => '79. 我不喜欢的用户',
  89. 80 => '80. 我不喜欢的笔记',
  90. 81 => '81. 群二维码滑动',
  91. 82 => '82. 前端主题切换',
  92. 83 => '83. 选择我的学校',
  93. 84 => '84. 笔记推广页',
  94. 85 => '85. 笔记小海报',
  95. 86 => '86. 商品筛选list',
  96. 87 => '87. 商品所有分类',
  97. 88 => '88. 店铺',
  98. 89 => '89. 隐私设置',
  99. 90 => '90. 隐私设置-收藏',
  100. 91 => '91. 隐私设置-个性化选项',
  101. 92 => '92. 隐私设置-程序化广告',
  102. 93 => '93. 隐私设置-关注与粉丝列表',
  103. 94 => '94. 隐私设置-推荐可能认识的人',
  104. 95 => '95. 界面自定义',
  105. 96 => '96. 店铺入驻申请',
  106. 97 => '97. 发布弹窗页2',
  107. 98 => '98. 二手发布',
  108. 99 => '99. 二手详情',
  109. 100 => '100. 二手商城',
  110. 101 => '101. 我的卖出',
  111. 102 => '102. 商品发货',
  112. 103 => '103. 自提-用户端',
  113. 104 => '104. 二手商品搜索',
  114. 105 => '105. 二手-我发布的',
  115. 106 => '106. 笔记编辑器2',
  116. 107 => '107. 实名认证',
  117. 108 => '108. 保证金充值',
  118. 109 => '109. 激励视频汇总页',
  119. 110 => '110. 激励排行榜',
  120. 111 => '111. 全站排行榜',
  121. 112 => '112. 抽奖',
  122. 113 => '113. 头条界面',
  123. 114 => '114. 店铺资质页',
  124. 115 => '115. 本地服务首页',
  125. 116 => '116. 本地服务-租房详情',
  126. 117 => '117. 本地服务-找工作详情',
  127. 118 => '118. 本地服务-待定',
  128. 119 => '119. 本地服务-发布',
  129. 120 => '120. Ta的闲置(三方视角)',
  130. 121 => '121. 历史浏览',
  131. 122 => '122. 自定义认证',
  132. 123 => '123. 选票-xxx',
  133. 124 => '124. 选票-列表',
  134. 125 => '125. 选票-模板中心',
  135. 126 => '126. 选票-发布',
  136. 127 => '127. 选票-选手详情',
  137. 128 => '128. 选票-详情',
  138. 129 => '129. 选票-报名页面',
  139. 130 => '130. 选票-首页',
  140. 131 => '131. 课表',
  141. 132 => '132. 商户-经营地址',
  142. 133 => '133. 学校认证-选择学校',
  143. 134 => '134. 学校认证-同意协议',
  144. 135 => '135. 学校认证-认证方式',
  145. 136 => '136. 学校认证-学校邮箱认证',
  146. 137 => '137. 学校认证-校园身份证明',
  147. 138 => '138. 课表-课程-详情',
  148. 139 => '139. 漫展(其实是商品)',
  149. 140 => '140. 全局共用上传视频页',
  150. 141 => '141. 公共视频播放',
  151. 142 => '142. 图标发现页',
  152. 143 => '143. 第三方账号绑定页',
  153. 144 => '144. 组局-俱乐部入驻',
  154. 145 => '145. 组局-发布活动',
  155. 146 => '146. 组局-用户信息填写',
  156. 147 => '147. 组局-首页',
  157. 148 => '148. 组局-详情',
  158. 149 => '149. 组局-确认订单页',
  159. 150 => '150. 组局-我的组局',
  160. 151 => '151. 组局-影集列表',
  161. 152 => '152. 组局-影集详情',
  162. 153 => '153. 图集-发布',
  163. 154 => '154. 组局-俱乐部主页',
  164. 155 => '155. 全局-table展示',
  165. 156 => '156. 全局-城市选择',
  166. 157 => '157. tab-组局首页',
  167. 158 => '158. 组局-俱乐部设置页',
  168. 159 => '159. 钱包-提现申请',
  169. 160 => '160. 钱包-提现详情',
  170. 161 => '161. 钱包-提现记录',
  171. 162 => '162. 钱包-账单(余额-金币)',
  172. 163 => '163. 用户自助解封-封号-禁言',
  173. 164 => '164. 隐私设置-联系方式',
  174. 165 => '165. tabbar-同城',
  175. 166 => '166. 设置-青少年模式开启说明',
  176. 167 => '167. 设置-青少年模式输入密码',
  177. 168 => '168. 设置-青少年模式-找回密码',
  178. 169 => '169. 设置-青少年模式-待定',
  179. 170 => '170. 设置-青少年模式-待定',
  180. 171 => '171. 分享裂变-邀请-推广码绑定',
  181. 172 => '172. 分享裂变-邀请-层级与即时奖励',
  182. 173 => '173. 分享裂变-邀请-新用户奖励扫码测试'
  183. ];
  184. /**
  185. * Make a grid builder.
  186. *
  187. * @return Grid
  188. */
  189. protected function grid()
  190. {
  191. return Grid::make(new WxPageEvent(), function (Grid $grid) {
  192. $grid->column('id')->sortable();
  193. $grid->column('scene')->using($this->scene_arr);
  194. $grid->column('scene_id');
  195. $grid->column('target_type')->using(FieldUtils::getUrlTypes());
  196. $grid->column('target_id');
  197. $grid->column('interval');
  198. $grid->filter(function (Grid\Filter $filter) {
  199. $filter->equal('id');
  200. });
  201. });
  202. }
  203. /**
  204. * Make a show builder.
  205. *
  206. * @param mixed $id
  207. *
  208. * @return Show
  209. */
  210. protected function detail($id)
  211. {
  212. return Show::make($id, new WxPageEvent(), function (Show $show) {
  213. $show->field('id');
  214. $show->field('scene');
  215. $show->field('scene_id');
  216. $show->field('target_type');
  217. $show->field('target_id');
  218. $show->field('interval');
  219. });
  220. }
  221. /**
  222. * Make a form builder.
  223. *
  224. * @return Form
  225. */
  226. protected function form()
  227. {
  228. return Form::make(new WxPageEvent(), function (Form $form) {
  229. $form->display('id');
  230. $form->select('scene')->options($this->scene_arr)->required();
  231. $form->text('scene_id')->help('一般不用填,除非你需要具体某个'.env('circle_call', '圈子').',话题,用户等');
  232. $form->radio('target_type')->options(FieldUtils::getUrlTypes())->default(0);
  233. $form->textarea('target_id')->help('<a href="https://doc.minisns.cn/doc/44/" target="_blank">路径大全</a>');
  234. $form->number('interval')->default(99999);
  235. $form->saved(function (Form $form){
  236. SiteUtils::forget_config_data();
  237. $__global_config_version__ = Settings::get('__global_config_version__', 1) + 1;
  238. Settings::set('__global_config_version__', $__global_config_version__);
  239. GatewayUtils::success('all', 13, [ 'version' => $__global_config_version__, 'file' => basename(__FILE__) ]);
  240. });
  241. $form->deleting(function (Form $form){
  242. global $__MINI_GLOBAL_TENANT_ID__;
  243. if($__MINI_GLOBAL_TENANT_ID__ > 0){
  244. return $form->response()->error('权限不足,不可以删除其他分站对象');
  245. }
  246. });
  247. });
  248. }
  249. }