formDivideTrait.php 4.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. <?php
  2. namespace App\Admin\Controllers\Traits\WxSettingTraits;
  3. use App\Wen\Utils\AdminUtils;
  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\NestedForm;
  9. use Dcat\Admin\Layout\Content;
  10. use Dcat\Admin\Widgets\Form;
  11. use Illuminate\Http\Request;
  12. use Illuminate\Support\Facades\Cache;
  13. trait formDivideTrait{
  14. public function index_divide(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_divide()->render()}</div>
  22. HTML
  23. );
  24. }
  25. protected function form_divide(){
  26. $form = new Form();
  27. $form->confirm('您确定要提交表单吗?', 'content');
  28. $form->disableResetButton();
  29. $form->html(function () {
  30. return '';
  31. }, '<b>系统相关</b>');
  32. $form->rate('app_withdrawal_platform_percent', '提现手续费')->default(Settings::get('app_withdrawal_platform_percent', 10.0));
  33. $form->divider();
  34. $form->html(function () {
  35. return '';
  36. }, '<b>一、笔记相关</b>');
  37. $form->rate('app_reward_platform_percent', '充电平台分成')->default(Settings::get('app_reward_platform_percent', 50.0));
  38. $form->rate('app_givecoin_platform_percent', '投币平台分成')->default(Settings::get('app_givecoin_platform_percent', 20.0));
  39. $form->rate('app_paypost_platform_percent', '付费贴分成')->help('针对余额付费贴,金币付费贴,另外我们还可以设置'.env('circle_user_call', '圈主').'分成(前端'.env('circle_call', '圈子').'页),'.env('circle_user_call', '圈主').'分成+平台分成不要超过100')->default(Settings::get('app_paypost_platform_percent', 10));
  40. $form->divider();
  41. $form->html(function () {
  42. return '';
  43. }, '<b>二、'.env('circle_call', '圈子').'相关</b>');
  44. $form->html(function () {
  45. return '<div style="background-color: powderblue;color: #414750;padding: 10px;border-radius: 5px;">用户付费加入'.env('circle_call', '圈子').',可设置平台的分成比例,余下的为'.env('circle_user_call', '圈主').'所有</div>';
  46. }, '');
  47. $form->rate('app_circle_follow_pay_division', '付费圈平台分成')->default(Settings::get('app_circle_follow_pay_division', 20));
  48. $form->divider();
  49. $form->html(function () {
  50. return '';
  51. }, '<b>三、商品相关</b>');
  52. $form->html(function () {
  53. return '<div style="background-color: powderblue;color: #414750;padding: 10px;border-radius: 5px;">商品的订单平台分成由商品分类控制</div>';
  54. }, '');
  55. $form->divider();
  56. $form->html(function () {
  57. return '';
  58. }, '<b>四、用户相关</b>');
  59. $form->rate('app_contact_pay_platform_percent', '付费获取联系方式')->default(Settings::get('app_contact_pay_platform_percent', 30.0));
  60. $form->html(function () {
  61. return '';
  62. }, '<b>五、闲置相关</b>');
  63. $form->rate('app_used_order_division', '闲置订单平台分成')->default(Settings::get('app_used_order_division', 1.0));
  64. $form->action('settings/action/divide');
  65. return $form;
  66. }
  67. public function divide(Request $request){
  68. SiteUtils::forget_config_data();
  69. Settings::set('app_admin_nav', AdminUtils::_table_data($request->input('app_admin_nav')), true);
  70. Settings::set('app_reward_platform_percent', _between_($request->input('app_reward_platform_percent'), 0, 100), true);
  71. Settings::set('app_givecoin_platform_percent', _between_($request->input('app_givecoin_platform_percent'), 0, 100), true);
  72. Settings::set('app_paypost_platform_percent', _between_($request->input('app_paypost_platform_percent'), 0, 100), true);
  73. Settings::set('app_circle_follow_pay_division', _between_($request->input('app_circle_follow_pay_division'), 0, 100), true);
  74. Settings::set('app_withdrawal_platform_percent', _between_($request->input('app_withdrawal_platform_percent'), 0, 100), true);
  75. Settings::set('app_contact_pay_platform_percent', _between_($request->input('app_contact_pay_platform_percent'), 0, 100), true);
  76. Settings::set('app_used_order_division', _between_($request->input('app_used_order_division'), 0, 100), true);
  77. $__global_config_version__ = Settings::get('__global_config_version__', 1) + 1;
  78. Settings::set('__global_config_version__', $__global_config_version__);
  79. GatewayUtils::success('all', 13, [ 'version' => $__global_config_version__, 'file' => basename(__FILE__) ]);
  80. return $this->response()->success('成功!');
  81. }
  82. }