formPageNoticeTrait.php 35 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426
  1. <?php
  2. namespace App\Admin\Controllers\Traits\WxSettingTraits;
  3. use App\Wen\Utils\FieldUtils;
  4. use App\Wen\Utils\GatewayUtils;
  5. use App\Wen\Utils\Settings;
  6. use App\Wen\Utils\SiteUtils;
  7. use Dcat\Admin\Form\NestedForm;
  8. use Dcat\Admin\Layout\Content;
  9. use Dcat\Admin\Widgets\Form;
  10. use Dcat\Admin\Widgets\Tooltip;
  11. use Illuminate\Http\Request;
  12. use Illuminate\Support\Facades\Cache;
  13. trait formPageNoticeTrait{
  14. public function index_pagenotice(Content $content)
  15. {
  16. return $content->title('消息配置')
  17. // ->body($this->buildPreviewButton())
  18. // ->body($this->newline())
  19. ->body(
  20. <<<HTML
  21. <div class="card">{$this->form_pagenotice()->render()}</div>
  22. HTML
  23. );
  24. }
  25. protected function form_pagenotice(){
  26. $form = new Form();
  27. $form->confirm('您确定要提交表单吗?', 'content');
  28. $form->disableResetButton();
  29. $form->tab('运营', function (Form $form) {
  30. global $__MINI_GLOBAL_TENANT_ID__;
  31. if($__MINI_GLOBAL_TENANT_ID__ === 0){
  32. $form->select('app_notice_assistant_user', '小秘书通知')->options(function ($id) {
  33. $user = \App\Models\User\WxUser::find($id);
  34. if ($user) {
  35. return [$user->id => $user->user_name];
  36. }
  37. })->help('小队长账号为<span style="color: red;">机器人账号</span>,请将小队长账号设置为一个不用的账号,因为消息数量会特别膨大,该账号对全站都有消息记录')->ajax('select/users')->default(Settings::get('app_notice_assistant_user', ''));
  38. }
  39. $form->textarea('app_notice_assistant_first', '第一次注册交流')->default('区别于第一次注册通知,这是使用小秘书身份进行聊天,可以介绍一下小秘书')->default(Settings::get('app_notice_assistant_first', '您好,很高兴认识您,自我介绍一下,我是您的专职小秘书,以后有些事情,由我负责通知您哦!', true));
  40. if($__MINI_GLOBAL_TENANT_ID__ === 0){
  41. $form->divider();
  42. $form->select('app_notice_review_user', '审核推送账号')->options(function ($id) {
  43. $user = \App\Models\User\WxUser::find($id);
  44. if ($user) {
  45. return [$user->id => $user->user_name];
  46. }
  47. })->help('推送账号为<span style="color: red;">机器人账号</span>,目前会推送包括:1、笔记 2、评论 3、组局 4、选票 5、选票选手 6、闲置审核 7、圈子审核 8、学生认证 9、身份认证')->ajax('select/users')->default(Settings::get('app_notice_review_user', ''));
  48. }
  49. });
  50. global $__MINI_GLOBAL_TENANT_ID__;
  51. if($__MINI_GLOBAL_TENANT_ID__ === 0){
  52. $form->tab('模板消息', function (Form $form) {
  53. $form->html(function () {
  54. return '';
  55. }, '<b>一、服务号模板消息</b>');
  56. $form->html(function () {
  57. return '<div style="background-color: powderblue;color: #414750;padding: 10px;border-radius: 5px;">tips:若下方配置了模板则代表你打开了服务号模板消息通知</div>';
  58. }, '');
  59. $res2 = __system__paycode__tip__(2);
  60. Tooltip::make('.mini_global_admin_open_not_support_tip')
  61. ->bottom()
  62. ->title($res2['tip']);
  63. $form->text('template_message_notice_id', '消息模板id')->help($res2['text'].'注意:公众号要先关联小程序,<a href="https://img.minisns.cn/default/template_message.png" target="_blank">查看教程</a>-------------><a href="'.env('APP_URL').'/api/v1/three/safe/templete/message/add?access_token='.Settings::get('mini_access_token', '').'&key1=闻&key2=爱你'.'" target="_blank">点击这里测试发送</a>')->default(Settings::get('template_message_notice_id', ''));
  64. $form->multipleSelect('template_message_notice_black_list', '不通知名单')->options([
  65. '1000' => '1000: 默认图标',
  66. '1001' => '1001: 注册欢迎',
  67. '1002' => '1002: 系统检测封号通知',
  68. '1003' => '1003: 管理员手动操作封号通知',
  69. '2001' => '2001: 笔记审核通知',
  70. '2002' => '2002: 笔记被转移通知',
  71. '2003' => '2003: 笔记收到喜欢',
  72. '2004' => '2004: 笔记被管理删除通知',
  73. '2005' => '2005: 笔记收到评论通知',
  74. '2006' => '2006: 笔记收到收藏通知',
  75. '2007' => '2007: 笔记被转发通知',
  76. '2008' => '2008: 视频审核结果',
  77. '3001' => '3001: 评论审核通知',
  78. '3002' => '3002: 评论收到回复',
  79. '3003' => '3003: 评论收到爱心',
  80. '4001' => '4001: 申请注销成功通知',
  81. '4002' => '4002: 续费会员成功',
  82. '4003' => '4003: 开通会员成功',
  83. '4004' => '4004: 用户新增了粉丝',
  84. '4005' => '4005: 认证结果通知',
  85. '4006' => '4006: 反馈处理通知',
  86. '4007' => '4007: 自动关注圈子',
  87. '4008' => '4008: 账号注销取消通知',
  88. '4009' => '4009: 用户被笔记@',
  89. '4010' => '4010: 用户被评论@',
  90. '4011' => '4011: 学生认证结果',
  91. '5001' => '5001: 创建圈子审核通知',
  92. '5002' => '5002: 创建圈子收获粉丝',
  93. '6001' => '6001: 商品发货通知',
  94. '6002' => '6002: 商品售后通知',
  95. '6003' => '6003: 商品自动确认收货通知',
  96. '6004' => '6004: 店铺审核结果',
  97. '6005' => '6005: 店铺保证金变动',
  98. '6006' => '6006: 商家新订单',
  99. '7001' => '7001: 提现到账通知',
  100. '7002' => '7002: 提现异常通知',
  101. '7003' => '7003: 金币到账通知',
  102. '7004' => '7004: ' . env('circle_user_call', '圈主') . '分成奖励',
  103. '7005' => '7005: 余额变动提醒',
  104. '8001' => '8001: 创建选票审核结果',
  105. '8002' => '8002: 报名选票选手审核',
  106. '9001' => '9001: 创建俱乐部审核结果',
  107. '9002' => '9002: 组局活动审核结果',
  108. '9003' => '9003: 组局活动即将开始',
  109. '9004' => '9004: 组局活动已结束,可上传图集',
  110. '9005' => '9005: 参与的组局活动被下架'
  111. ])->default(Settings::get('template_message_notice_black_list', []));
  112. $form->text('mini_template_message_course_day_tip', '预约上课成功通知')->placeholder('0xDOXgkk2ese-726JFFpcEpZQomAZ-Dn5Qbga847zYo')->help('<a href="https://img.mini.minisns.cn/2024/10/31/0/18c5bc8263616e65271562f9804af743.png" target="_blank">查看教程</a>')->default(Settings::get('mini_template_message_course_day_tip', ''));
  113. $form->divider();
  114. $form->html(function () {
  115. return '';
  116. }, '<b>一、小程序订阅消息</b>');
  117. $form->text('mini_template_message_comment_add', '新的评论提醒')->placeholder('WEBpC52jjitwG4WgPKsckJaj473vJBrBhHApzy7L3bI')->help('<a href="https://img.mini.minisns.cn/images/bg/comment_add.jpg" target="_blank">查看教程</a>')->default(Settings::get('mini_template_message_comment_add', ''));
  118. $form->text('mini_template_message_comment_reply', '评论回复通知')->placeholder('ZqkOoIE4QQq3Q0I04kx5lf5-CRFGbAEuCKvBtnOWlvc')->help('<a href="https://img.mini.minisns.cn/images/bg/comment_reply.jpg" target="_blank">查看教程</a>')->default(Settings::get('mini_template_message_comment_reply', ''));
  119. $form->text('mini_template_message_exceptional', '收到赞赏通知')->placeholder('WEBpC52jjitwG4WgPKsckJaj473vJBrBhHApzy7L3bI')->help('<a href="https://img.mini.minisns.cn/images/bg/exceptional.jpg" target="_blank">查看教程</a>')->default(Settings::get('mini_template_message_exceptional', ''));
  120. $form->text('mini_template_message_beliked', '收到点赞通知')->placeholder('WEBpC52jjitwG4WgPKsckJaj473vJBrBhHApzy7L3bI')->help('<a href="https://img.mini.minisns.cn/images/bg/like.jpg" target="_blank">查看教程</a>')->default(Settings::get('mini_template_message_beliked', ''));
  121. $form->text('mini_template_message_withdrawal', '提现结果通知')->placeholder('WEBpC52jjitwG4WgPKsckJaj473vJBrBhHApzy7L3bI')->help('<a href="https://img.mini.minisns.cn/images/bg/withdrawal.jpg" target="_blank">查看教程</a>')->default(Settings::get('mini_template_message_withdrawal', ''));
  122. $form->text('mini_template_message_authentication', '认证审核通知')->placeholder('WEBpC52jjitwG4WgPKsckJaj473vJBrBhHApzy7L3bI')->help('<a href="https://img.mini.minisns.cn/images/bg/authentication.jpg" target="_blank">查看教程</a>')->default(Settings::get('mini_template_message_authentication', ''));
  123. });
  124. }
  125. $form->tab('消息tab', function (Form $form) {
  126. global $__MINI_GLOBAL_TENANT_ID__;
  127. if($__MINI_GLOBAL_TENANT_ID__ === 0){
  128. $form->html(function () {
  129. return '';
  130. }, '<b>一、图标配置</b>');
  131. $form->radio('app_notice_mp_follow', '公众号关注入口')->options([0 => '关闭', 1 => '开启'])->help('需要你认证微信开放平台,并且开放平台绑定好了公众号,小程序')->default(Settings::get('app_notice_mp_follow', 1));
  132. $form->radio('app_notice_img_style', '图标排列')->options([0=>'横向摆放', 1=>'竖向摆放'])->default(Settings::get('app_notice_img_style', 0));
  133. $form->image('app_notice_img_system', '[系统通知]图标')->help('<a href="https://img.mini.minisns.cn/images/notice/app_notice_img_system.png" download="app_share_vip_img.jpg" target="_blank" style="color: steelblue">点击下载默认图</a>')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_img_system', 'https://img.mini.minisns.cn/images/notice/app_notice_img_system.png'));
  134. $form->image('app_notice_img_like', '[赞和收藏]图标')->help('<a href="https://img.mini.minisns.cn/images/notice/app_notice_img_like.png" download="app_share_vip_img.jpg" target="_blank" style="color: steelblue">点击下载默认图</a>')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_img_like', 'https://img.mini.minisns.cn/images/notice/app_notice_img_like.png'));
  135. $form->image('app_notice_img_comment', '[评论和充电]图标')->help('<a href="https://img.mini.minisns.cn/images/notice/app_notice_img_comment.png" download="app_share_vip_img.jpg" target="_blank" style="color: steelblue">点击下载默认图</a>')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_img_comment', 'https://img.mini.minisns.cn/images/notice/app_notice_img_comment.png'));
  136. $form->image('app_notice_img_servicer', '[官方客服]图标')->help('<a href="https://img.mini.minisns.cn/images/notice/app_notice_img_servicer.png" download="app_share_vip_img.jpg" target="_blank" style="color: steelblue">点击下载默认图</a>')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_img_servicer', 'https://img.mini.minisns.cn/images/notice/app_notice_img_servicer.png'));
  137. $form->image('app_notice_img_circle', '[关注圈子]图标')->help('<a href="https://img.mini.minisns.cn/images/notice/app_notice_img_cirlce.png" download="app_share_vip_img.jpg" target="_blank" style="color: steelblue">点击下载默认图</a>')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_img_circle', 'https://img.mini.minisns.cn/images/notice/app_notice_img_cirlce.png'));
  138. $form->divider();
  139. $form->html(function () {
  140. return '';
  141. }, '<b>二、App客服</b>');
  142. }
  143. $form->html(function () {
  144. return '<div style="background-color: powderblue;color: #414750;padding: 10px;border-radius: 5px;">1、小程序使用微信小程序客服(你可以在微信公众平台找到客服配置,把自己的微信号配置成客服,就可以收到客户的消息提醒)<br/>2、App客服可自定义跳转类型,推荐的是企业微信客服</div>';
  145. }, '');
  146. $form->radio('app_notice_img_servicer_target_type', '跳转类型')->options(FieldUtils::getUrlTypes())->default(Settings::get('app_notice_img_servicer_target_type', 0, true));
  147. $form->text('app_notice_img_servicer_target_id', '跳转id')->help('怎么填请看<a href="https://doc.minisns.cn/doc/44/" target="_blank">路径大全</a>')->default(Settings::get('app_notice_img_servicer_target_id', '', true));
  148. $form->radio('app_notice_img_servicer_mp_servicer', '小程序客服')->options([0=>'与App保持一致', 1=>'微信小程序客服'])->default(Settings::get('app_notice_img_servicer_mp_servicer', 0, true));
  149. });
  150. if($__MINI_GLOBAL_TENANT_ID__ === 0){
  151. $form->tab('消息图标', function (Form $form) {
  152. $form->html(function () {
  153. return '<div style="background-color: powderblue;color: #414750;padding: 10px;border-radius: 5px;">小提示: 下面是系统消息页面的图标配置,官方暂时也没有那么多图标,如果有可以分享到素材圈,谢谢</div>';
  154. }, '');
  155. $form->row(function ($form) {
  156. $form->html(function () {
  157. return '';
  158. }, '<b>一、全局相关</b>');
  159. });
  160. $form->row(function ($form) {
  161. $form->width(2)->image('app_notice_type_icon_1000', '1000、默认图标')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_1000', ''));
  162. $form->width(2)->image('app_notice_type_icon_1001', '1001、注册欢迎')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_1001', ''));
  163. $form->width(2)->image('app_notice_type_icon_1002', '1002、系统检测封号通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_1002', ''));
  164. $form->width(2)->image('app_notice_type_icon_1003', '1003、管理员手动操作封号通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_1003', ''));
  165. });
  166. $form->divider();
  167. $form->row(function ($form) {
  168. $form->html(function () {
  169. return '';
  170. }, '<b>二、笔记相关</b>');
  171. });
  172. $form->row(function ($form) {
  173. $form->width(2)->image('app_notice_type_icon_2001', '2001、笔记审核通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_2001', ''));
  174. $form->width(2)->image('app_notice_type_icon_2002', '2002、笔记被转移通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_2002', ''));
  175. $form->width(2)->image('app_notice_type_icon_2003', '2003、笔记收到喜欢')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_2003', ''));
  176. $form->width(2)->image('app_notice_type_icon_2004', '2004、笔记被管理删除通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_2004', ''));
  177. $form->width(2)->image('app_notice_type_icon_2005', '2005、笔记收到评论通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_2005', ''));
  178. $form->width(2)->image('app_notice_type_icon_2006', '2006、笔记收到收藏通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_2006', ''));
  179. $form->width(2)->image('app_notice_type_icon_2007', '2007、笔记被转发通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_2007', ''));
  180. $form->width(2)->image('app_notice_type_icon_2008', '2008、视频审核结果')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_2008', ''));
  181. });
  182. $form->divider();
  183. $form->row(function ($form) {
  184. $form->html(function () {
  185. return '';
  186. }, '<b>三、评论相关</b>');
  187. });
  188. $form->row(function ($form) {
  189. $form->width(2)->image('app_notice_type_icon_3001', '3001、评论审核通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_3001', ''));
  190. $form->width(2)->image('app_notice_type_icon_3002', '3002、评论收到回复')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_3002', ''));
  191. $form->width(2)->image('app_notice_type_icon_3003', '3003、评论收到爱心')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_3003', ''));
  192. });
  193. $form->divider();
  194. $form->row(function ($form) {
  195. $form->html(function () {
  196. return '';
  197. }, '<b>四、用户相关</b>');
  198. });
  199. $form->row(function ($form) {
  200. $form->width(2)->image('app_notice_type_icon_4001', '4001、申请注销成功通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4001', ''));
  201. $form->width(2)->image('app_notice_type_icon_4002', '4002、续费会员成功')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4002', ''));
  202. $form->width(2)->image('app_notice_type_icon_4003', '4003、开通会员成功')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4003', ''));
  203. $form->width(2)->image('app_notice_type_icon_4004', '4004、用户新增了粉丝')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4004', ''));
  204. $form->width(2)->image('app_notice_type_icon_4005', '4005、认证结果通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4005', ''));
  205. $form->width(2)->image('app_notice_type_icon_4006', '4006、反馈处理通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4006', ''));
  206. $form->width(2)->image('app_notice_type_icon_4007', '4007、自动关注圈子')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4007', ''));
  207. $form->width(2)->image('app_notice_type_icon_4008', '4008、账号注销取消通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4008', ''));
  208. $form->width(2)->image('app_notice_type_icon_4009', '4009、用户被笔记@')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4009', ''));
  209. $form->width(2)->image('app_notice_type_icon_4010', '4010、用户被评论@')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4010', ''));
  210. $form->width(2)->image('app_notice_type_icon_4011', '4011、学生认证结果')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_4011', ''));
  211. });
  212. $form->divider();
  213. $form->row(function ($form) {
  214. $form->html(function () {
  215. return '';
  216. }, '<b>五、圈子相关</b>');
  217. });
  218. $form->row(function ($form) {
  219. $form->width(2)->image('app_notice_type_icon_5001', '5001、创建圈子审核通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_5001', ''));
  220. $form->width(2)->image('app_notice_type_icon_5002', '5002、创建圈子收获粉丝')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_5002', ''));
  221. });
  222. $form->divider();
  223. $form->row(function ($form) {
  224. $form->html(function () {
  225. return '';
  226. }, '<b>六、商品相关</b>');
  227. });
  228. $form->row(function ($form) {
  229. $form->width(2)->image('app_notice_type_icon_6001', '6001、商品发货通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_6001', ''));
  230. $form->width(2)->image('app_notice_type_icon_6002', '6002、商品售后通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_6002', ''));
  231. $form->width(2)->image('app_notice_type_icon_6003', '6003、商品自动确认收货通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_6003', ''));
  232. $form->width(2)->image('app_notice_type_icon_6004', '6004、店铺审核结果')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_6004', ''));
  233. $form->width(2)->image('app_notice_type_icon_6005', '6005、店铺保证金变动')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_6005', ''));
  234. $form->width(2)->image('app_notice_type_icon_6006', '6006、商家新订单')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_6006', ''));
  235. });
  236. $form->divider();
  237. $form->row(function ($form) {
  238. $form->html(function () {
  239. return '';
  240. }, '<b>七、金融相关</b>');
  241. });
  242. $form->row(function ($form) {
  243. $form->width(2)->image('app_notice_type_icon_7001', '7001、提现到账通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_7001', ''));
  244. $form->width(2)->image('app_notice_type_icon_7002', '7002、提现异常通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_7002', ''));
  245. $form->width(2)->image('app_notice_type_icon_7003', '7003、金币到账通知')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_7003', ''));
  246. $form->width(2)->image('app_notice_type_icon_7004', '7004、'.env('circle_user_call', '圈主').'分成奖励')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_7004', ''));
  247. $form->width(2)->image('app_notice_type_icon_7005', '7005、余额变动提醒')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_7005', ''));
  248. });
  249. $form->divider();
  250. $form->row(function ($form) {
  251. $form->html(function () {
  252. return '';
  253. }, '<b>七、选票相关</b>');
  254. });
  255. $form->row(function ($form) {
  256. $form->width(2)->image('app_notice_type_icon_8001', '8001、创建选票审核结果')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_8001', ''));
  257. $form->width(2)->image('app_notice_type_icon_8002', '8002、报名选票选手审核')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_8002', ''));
  258. });
  259. $form->divider();
  260. $form->row(function ($form) {
  261. $form->html(function () {
  262. return '';
  263. }, '<b>七、组局相关</b>');
  264. });
  265. $form->row(function ($form) {
  266. $form->width(2)->image('app_notice_type_icon_9001', '9001、创建俱乐部审核结果')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_9001', ''));
  267. $form->width(2)->image('app_notice_type_icon_9002', '9002、组局活动审核结果')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_9002', ''));
  268. $form->width(2)->image('app_notice_type_icon_9003', '9003、组局活动即将开始')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_9003', ''));
  269. $form->width(2)->image('app_notice_type_icon_9004', '9004、组局活动已结束,可上传图集')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_9004', ''));
  270. $form->width(2)->image('app_notice_type_icon_9005', '9005、参与的组局活动被下架')->uniqueName()->url('files/uploads')->autoUpload()->default(Settings::get('app_notice_type_icon_9005', ''));
  271. });
  272. });
  273. }
  274. $form->action('settings/action/pagenotice');
  275. return $form;
  276. }
  277. public function pagenotice(Request $request){
  278. global $__MINI_GLOBAL_TENANT_ID__;
  279. SiteUtils::forget_config_data();
  280. if($__MINI_GLOBAL_TENANT_ID__ === 0){
  281. if(!_empty_(Settings::get('mp_app_secret', ''))){
  282. Settings::set('app_notice_mp_follow', $request->input('app_notice_mp_follow'), true);
  283. }else{
  284. Settings::set('app_notice_mp_follow', 0, true);
  285. }
  286. Settings::set('app_notice_img_style', $request->input('app_notice_img_style'), true);
  287. Settings::set('template_message_notice_id', $request->input('template_message_notice_id'), true);
  288. Settings::set('mini_template_message_course_day_tip', $request->input('mini_template_message_course_day_tip'), true);
  289. $template_message_notice_black_list = $request->input('template_message_notice_black_list');
  290. if(_empty_(end($template_message_notice_black_list))){
  291. array_pop($template_message_notice_black_list);
  292. }
  293. $template_message_notice_black_list_ = [];
  294. if(!_empty_($template_message_notice_black_list)){
  295. _update_env([
  296. 'TEMPLATE_MESSAGE_NOTICE_BLACK_LIST' => implode(',', $template_message_notice_black_list),
  297. ], [], 1);
  298. foreach ($template_message_notice_black_list as $notice_type){
  299. $template_message_notice_black_list_[] = (string)$notice_type;
  300. }
  301. }else{
  302. _update_env([
  303. 'TEMPLATE_MESSAGE_NOTICE_BLACK_LIST' => '',
  304. ], [], 1);
  305. }
  306. Settings::set('template_message_notice_black_list', $template_message_notice_black_list_, true);
  307. Settings::set('mini_template_message_comment_add', $request->input('mini_template_message_comment_add'), true);
  308. Settings::set('mini_template_message_comment_reply', $request->input('mini_template_message_comment_reply'), true);
  309. Settings::set('mini_template_message_exceptional', $request->input('mini_template_message_exceptional'), true);
  310. Settings::set('mini_template_message_beliked', $request->input('mini_template_message_beliked'), true);
  311. Settings::set('mini_template_message_withdrawal', $request->input('mini_template_message_withdrawal'), true);
  312. Settings::set('mini_template_message_authentication', $request->input('mini_template_message_authentication'), true);
  313. Settings::set('app_notice_img_system', $request->input('app_notice_img_system'), true);
  314. Settings::set('app_notice_img_like', $request->input('app_notice_img_like'), true);
  315. Settings::set('app_notice_img_comment', $request->input('app_notice_img_comment'), true);
  316. Settings::set('app_notice_img_servicer', $request->input('app_notice_img_servicer'), true);
  317. Settings::set('app_notice_img_circle', $request->input('app_notice_img_circle'), true);
  318. Settings::set('app_notice_assistant_user', $request->input('app_notice_assistant_user'), true);
  319. Settings::set('app_notice_review_user', $request->input('app_notice_review_user'), true);
  320. Settings::set('app_notice_type_icon_1000', $request->input('app_notice_type_icon_1000'), true);
  321. Settings::set('app_notice_type_icon_1001', $request->input('app_notice_type_icon_1001'), true);
  322. Settings::set('app_notice_type_icon_1002', $request->input('app_notice_type_icon_1002'), true);
  323. Settings::set('app_notice_type_icon_1003', $request->input('app_notice_type_icon_1003'), true);
  324. Settings::set('app_notice_type_icon_2001', $request->input('app_notice_type_icon_2001'), true);
  325. Settings::set('app_notice_type_icon_2002', $request->input('app_notice_type_icon_2002'), true);
  326. Settings::set('app_notice_type_icon_2003', $request->input('app_notice_type_icon_2003'), true);
  327. Settings::set('app_notice_type_icon_2004', $request->input('app_notice_type_icon_2004'), true);
  328. Settings::set('app_notice_type_icon_2005', $request->input('app_notice_type_icon_2005'), true);
  329. Settings::set('app_notice_type_icon_2006', $request->input('app_notice_type_icon_2006'), true);
  330. Settings::set('app_notice_type_icon_2007', $request->input('app_notice_type_icon_2007'), true);
  331. Settings::set('app_notice_type_icon_2008', $request->input('app_notice_type_icon_2008'), true);
  332. Settings::set('app_notice_type_icon_3001', $request->input('app_notice_type_icon_3001'), true);
  333. Settings::set('app_notice_type_icon_3002', $request->input('app_notice_type_icon_3002'), true);
  334. Settings::set('app_notice_type_icon_3003', $request->input('app_notice_type_icon_3003'), true);
  335. Settings::set('app_notice_type_icon_4001', $request->input('app_notice_type_icon_4001'), true);
  336. Settings::set('app_notice_type_icon_4002', $request->input('app_notice_type_icon_4002'), true);
  337. Settings::set('app_notice_type_icon_4003', $request->input('app_notice_type_icon_4003'), true);
  338. Settings::set('app_notice_type_icon_4004', $request->input('app_notice_type_icon_4004'), true);
  339. Settings::set('app_notice_type_icon_4005', $request->input('app_notice_type_icon_4005'), true);
  340. Settings::set('app_notice_type_icon_4006', $request->input('app_notice_type_icon_4006'), true);
  341. Settings::set('app_notice_type_icon_4007', $request->input('app_notice_type_icon_4007'), true);
  342. Settings::set('app_notice_type_icon_4008', $request->input('app_notice_type_icon_4008'), true);
  343. Settings::set('app_notice_type_icon_4009', $request->input('app_notice_type_icon_4009'), true);
  344. Settings::set('app_notice_type_icon_4010', $request->input('app_notice_type_icon_4010'), true);
  345. Settings::set('app_notice_type_icon_4011', $request->input('app_notice_type_icon_4011'), true);
  346. Settings::set('app_notice_type_icon_5001', $request->input('app_notice_type_icon_5001'), true);
  347. Settings::set('app_notice_type_icon_5002', $request->input('app_notice_type_icon_5002'), true);
  348. Settings::set('app_notice_type_icon_6001', $request->input('app_notice_type_icon_6001'), true);
  349. Settings::set('app_notice_type_icon_6002', $request->input('app_notice_type_icon_6002'), true);
  350. Settings::set('app_notice_type_icon_6003', $request->input('app_notice_type_icon_6003'), true);
  351. Settings::set('app_notice_type_icon_6004', $request->input('app_notice_type_icon_6004'), true);
  352. Settings::set('app_notice_type_icon_6005', $request->input('app_notice_type_icon_6005'), true);
  353. Settings::set('app_notice_type_icon_6006', $request->input('app_notice_type_icon_6006'), true);
  354. Settings::set('app_notice_type_icon_7001', $request->input('app_notice_type_icon_7001'), true);
  355. Settings::set('app_notice_type_icon_7002', $request->input('app_notice_type_icon_7002'), true);
  356. Settings::set('app_notice_type_icon_7003', $request->input('app_notice_type_icon_7003'), true);
  357. Settings::set('app_notice_type_icon_7004', $request->input('app_notice_type_icon_7004'), true);
  358. Settings::set('app_notice_type_icon_7005', $request->input('app_notice_type_icon_7005'), true);
  359. Settings::set('app_notice_type_icon_8001', $request->input('app_notice_type_icon_8001'), true);
  360. Settings::set('app_notice_type_icon_8002', $request->input('app_notice_type_icon_8002'), true);
  361. Settings::set('app_notice_type_icon_9001', $request->input('app_notice_type_icon_9001'), true);
  362. Settings::set('app_notice_type_icon_9002', $request->input('app_notice_type_icon_9002'), true);
  363. Settings::set('app_notice_type_icon_9003', $request->input('app_notice_type_icon_9003'), true);
  364. Settings::set('app_notice_type_icon_9004', $request->input('app_notice_type_icon_9004'), true);
  365. Settings::set('app_notice_type_icon_9005', $request->input('app_notice_type_icon_9005'), true);
  366. }
  367. Settings::set('app_notice_assistant_first', $request->input('app_notice_assistant_first'), true, true);
  368. Settings::set('app_notice_img_servicer_mp_servicer', $request->input('app_notice_img_servicer_mp_servicer') == 1 ? 1 : 0, true, true);
  369. Settings::set('app_notice_img_servicer_target_type', $request->input('app_notice_img_servicer_target_type'), true, true);
  370. Settings::set('app_notice_img_servicer_target_id', $request->input('app_notice_img_servicer_target_id'), true, true);
  371. $__global_config_version__ = Settings::get('__global_config_version__', 1) + 1;
  372. Settings::set('__global_config_version__', $__global_config_version__);
  373. GatewayUtils::success('all', 13, [ 'version' => $__global_config_version__, 'file' => basename(__FILE__) ]);
  374. return $this->response()->success('成功!');
  375. }
  376. }