IndexController.php 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. <?php
  2. // +----------------------------------------------------------------------
  3. // | LARAVEL8.0 框架 [ LARAVEL ][ RXThinkCMF ]
  4. // +----------------------------------------------------------------------
  5. // | 版权所有 2017~2021 LARAVEL研发中心
  6. // +----------------------------------------------------------------------
  7. // | 官方网站: http://www.laravel.cn
  8. // +----------------------------------------------------------------------
  9. // | Author: laravel开发员 <laravel.qq.com>
  10. // +----------------------------------------------------------------------
  11. namespace App\Http\Controllers\Admin;
  12. use App\Models\UserModel;
  13. use App\Services\Common\MemberService;
  14. use App\Services\Common\MemberSettingService;
  15. use App\Services\Common\MenuService;
  16. use App\Services\Common\TradeOrderService;
  17. use App\Services\Common\UserService;
  18. use App\Services\ConfigService;
  19. use App\Services\RedisService;
  20. use Illuminate\Support\Facades\Cache;
  21. /**
  22. * 系统主页控制器
  23. * @author laravel开发员
  24. * @since 2020/11/10
  25. * Class IndexController
  26. * @package App\Http\Controllers\Admin
  27. */
  28. class IndexController extends Backend
  29. {
  30. /**
  31. * 构造函数
  32. * @author laravel开发员
  33. * @since 2020/11/10
  34. * IndexController constructor.
  35. */
  36. public function __construct()
  37. {
  38. $this->model = new UserModel();
  39. parent::__construct();
  40. }
  41. /**
  42. * 后台主页
  43. * @author laravel开发员
  44. * @since 2020/11/10
  45. */
  46. public function getMenuList()
  47. {
  48. $menuService = new MenuService();
  49. $menuList = $menuService->getPermissionList($this->userId);
  50. return $menuList;
  51. }
  52. /**
  53. * 获取个人信息
  54. * @return array
  55. * @since 2020/11/10
  56. * @author laravel开发员
  57. */
  58. public function getUserInfo()
  59. {
  60. $userService = new UserService();
  61. $result = $userService->getUserInfo($this->userId);
  62. return $result;
  63. }
  64. /**
  65. * 更新个人资料
  66. * @return mixed
  67. * @since 2020/11/11
  68. * @author laravel开发员
  69. */
  70. public function updateUserInfo()
  71. {
  72. $userService = new UserService();
  73. $result = $userService->updateUserInfo($this->userId);
  74. return $result;
  75. }
  76. /**
  77. * 更新密码
  78. * @return mixed
  79. * @since 2020/11/11
  80. * @author laravel开发员
  81. */
  82. public function updatePwd()
  83. {
  84. $userService = new UserService();
  85. $result = $userService->updatePwd($this->userId);
  86. return $result;
  87. }
  88. /**
  89. * 设置修改交易密码
  90. * @return mixed
  91. */
  92. public function updateTradePwd()
  93. {
  94. $userService = new UserService();
  95. $result = $userService->updateTradePwd($this->userInfo['user_id'], $this->userId);
  96. return $result;
  97. }
  98. /**
  99. * 清除缓存
  100. * @return array
  101. */
  102. public function clearCache(){
  103. RedisService::keyDel("caches:d*");
  104. RedisService::keyDel("caches:inde*");
  105. RedisService::keyDel("caches:advert*");
  106. RedisService::keyDel("caches:article*");
  107. RedisService::keyDel("caches:qrcode*");
  108. RedisService::keyDel("laravel_cache:model*");
  109. return message(MESSAGE_OK, true);
  110. }
  111. /**
  112. * 获取首页数据
  113. * @return array
  114. */
  115. public function indexData()
  116. {
  117. $this->userId;
  118. $info = $this->model->getInfo($this->userId);
  119. $userId = isset($info['user_id'])? $info['user_id'] : 0;
  120. $userInfo = MemberService::make()->getInfo($userId);
  121. if($userId<=0 || empty($userInfo)){
  122. return message(MESSAGE_FAILED, false);
  123. }
  124. // 用户交易设置参数
  125. $setting = MemberSettingService::make()->getInfo($userId);
  126. // 15分钟内的买卖比统计
  127. $counts = TradeOrderService::make()->getCountRateByTime(1, $this->userInfo['user_id'], 15);
  128. $sellTotal = TradeOrderService::make()->getCompleteTotalByDay(2, $this->userInfo['user_id']);
  129. $datas = [
  130. 'counts'=> [
  131. 'usdt_num'=> isset($userInfo['usdt_num'])? moneyFormat($userInfo['usdt_num'], 2) : '0.00',
  132. 'buy_total'=> TradeOrderService::make()->getCompleteTotalByDay(1, $this->userInfo['user_id']),
  133. 'sell_total'=> $sellTotal,
  134. 'day_sell_quota'=> isset($setting['day_sell_quota'])? max(0,$setting['day_sell_quota']-$sellTotal) : '0.00',
  135. 'buy_rate'=> isset($counts['buy_rate'])? $counts['buy_rate'] : '0.00',
  136. 'sell_rate'=> isset($counts['sell_rate'])? $counts['sell_rate'] : '0.00',
  137. 'rate_count'=> $counts,
  138. ],
  139. 'setting'=> $setting
  140. ];
  141. return message(MESSAGE_OK, true, $datas);
  142. }
  143. /**
  144. * 获取交易员配置
  145. * @return array
  146. */
  147. public function setting()
  148. {
  149. $this->userId;
  150. $info = $this->model->getInfo($this->userId);
  151. $userId = isset($info['user_id'])? $info['user_id'] : 0;
  152. $userInfo = MemberService::make()->getInfo($userId);
  153. if($userId<=0 || empty($userInfo)){
  154. return message(MESSAGE_FAILED, false);
  155. }
  156. // 用户交易设置参数
  157. $setting = MemberSettingService::make()->getInfo($userId);
  158. return message(MESSAGE_OK, true, $setting);
  159. }
  160. /**
  161. * 获取交易员配置
  162. * @return array
  163. */
  164. public function tradeConfig()
  165. {
  166. $data = ConfigService::make()->getConfigOptionTextByGroup(6);
  167. return message(MESSAGE_OK, true, $data);
  168. }
  169. }