// +---------------------------------------------------------------------- namespace App\Http\Controllers\Admin; use App\Services\Common\BalanceLogService; use App\Services\Common\DepositService; use App\Services\Common\GoodsService; use App\Services\Common\MemberService; use App\Services\Common\MenuService; use App\Services\Common\OrderService; use App\Services\Common\UserService; use App\Services\RedisService; use App\utils\TimeUtils; /** * 系统主页控制器 * @author laravel开发员 * @since 2020/11/10 * Class IndexController * @package App\Http\Controllers */ class IndexController extends Backend { /** * 构造函数 * @author laravel开发员 * @since 2020/11/10 * IndexController constructor. */ public function __construct() { parent::__construct(); } /** * 后台主页 * @author laravel开发员 * @since 2020/11/10 */ public function getMenuList() { $menuService = new MenuService(); $menuList = $menuService->getPermissionList($this->userId); return $menuList; } /** * 获取个人信息 * @return array * @since 2020/11/10 * @author laravel开发员 */ public function getUserInfo() { $userService = new UserService(); $result = $userService->getUserInfo($this->userId); return $result; } /** * 更新个人资料 * @return mixed * @since 2020/11/11 * @author laravel开发员 */ public function updateUserInfo() { $userService = new UserService(); $result = $userService->updateUserInfo($this->userId); return $result; } /** * 更新密码 * @return mixed * @since 2020/11/11 * @author laravel开发员 */ public function updatePwd() { $userService = new UserService(); $result = $userService->updatePwd($this->userId); return $result; } /** * 清除缓存 * @return array */ public function clearCache() { RedisService::keyDel("caches:adm*"); RedisService::keyDel("caches:index*"); RedisService::keyDel("caches:good*"); RedisService::keyDel("caches:advert*"); RedisService::keyDel("caches:count*"); RedisService::keyDel("caches:account*"); RedisService::keyDel("caches:article*"); RedisService::keyDel("caches:member*"); RedisService::keyDel("caches:config*"); RedisService::keyDel("caches:deposit*"); RedisService::keyDel("caches:order*"); RedisService::keyDel(env('APP_NAME')."_cache:*"); //Cache::flush(); return message(MESSAGE_OK, true); } /** * 获取首页数据 * @return array */ public function statistics() { $datas = [ // 用户 'users' => [ 'count' => MemberService::make()->getRegisterCount(), // 总用户数 'count_by_day' => MemberService::make()->getRegisterCount(TimeUtils::beginToday(), TimeUtils::endToday()), // 今日注册 'count_by_month' => MemberService::make()->getRegisterCount(TimeUtils::beginMonth(), TimeUtils::endMonth()), // 本月注册 'count_by_confirm' => MemberService::make()->getRegisterCount(0,0,2), // 待审核 ], 'goods'=>[ 'count_by_all'=> GoodsService::make()->getCounts(0), 'count_by_up'=> GoodsService::make()->getCounts(1), 'count_by_success'=> GoodsService::make()->getCounts(2), ], // 订单 'orders' => [ 'count' => OrderService::make()->getCountByTime(), // 总量 'count_by_day' => OrderService::make()->getCountByTime(TimeUtils::beginToday(), TimeUtils::endToday()), // 今日 'count_by_month' => OrderService::make()->getCountByTime(TimeUtils::beginMonth(), TimeUtils::endMonth()), // 本月 'amount_by_day' => OrderService::make()->getTotalByTime(TimeUtils::beginToday(), TimeUtils::endToday()), // 日营业额 'amount_by_month' => OrderService::make()->getTotalByTime(TimeUtils::beginMonth(), TimeUtils::endMonth()), // 月营业额 ], 'deposit'=>[ 'total'=> DepositService::make()->getTotal(0), 'withdraw'=> DepositService::make()->getTotal(1), ], // 营收 'balance' => [ 'income_by_total'=> OrderService::make()->getTotalByTime(), 'withdraw_by_total'=> BalanceLogService::make()->getTotal(), ], ]; return message(1010, true, $datas); } }