<?php /** * @copyright Copyright (c) 2021 勾股工作室 * @license https://opensource.org/licenses/GPL-2.0 * @link https://www.gougucms.com */ declare (strict_types = 1); namespace app\home\controller; use app\base\BaseController; use think\facade\Db; use think\facade\View; class Index extends BaseController { public function index() { if (request()->isAjax()) { $admin_id = $this->uid; //发票待审核统计 $invoice_map_check[] = ['check_status','<',2]; $invoice_map_check[] = ['', 'exp', Db::raw("FIND_IN_SET('{$admin_id}',check_admin_ids)")]; $invoice_map_check[] = ['status','=',1]; $invoice_count_check = Db::name('Invoice')->where($invoice_map_check)->count(); $statistics['invoice_html_check'] = '<a data-id="129" data-title="待审核发票" data-src="/finance/invoice/list" class="menu-active"> 您有<font style="color:#FF0000">'.$invoice_count_check.'</font>条发票申请待审核</a>'; if($invoice_count_check==0){ $statistics['invoice_html_check'] = ''; } //发票待开具统计 $invoice_map_open[] = ['open_time','=',0]; $invoice_map_open[] = ['open_admin_id','=',$admin_id]; $invoice_map_open[] = ['status','=',1]; $invoice_count_open = Db::name('Invoice')->where($invoice_map_open)->count(); $statistics['invoice_html_open'] = '<a data-id="130" data-title="发票开具" data-src="/finance/invoice/checkedlist" class="menu-active"> 您有<font style="color:#FF0000">'.$invoice_count_open.'</font>条发票待开具</a>'; if($invoice_count_open==0){ $statistics['invoice_html_open'] = ''; } //待审核的报销统计 $expense_map_check[] = ['check_status','<',2]; $expense_map_check[] = ['', 'exp', Db::raw("FIND_IN_SET('{$admin_id}',check_admin_ids)")]; $expense_map_check[] = ['status','=',1]; $expense_count_check = Db::name('Expense')->where($expense_map_check)->count(); $statistics['expense_html_check'] = '<a data-id="120" data-title="待我审批的报销" data-src="/finance/expense/list" class="menu-active"> 您有<font style="color:#FF0000">'.$expense_count_check.'</font>条报销单待审核</a>'; // $statistics['expense_count_check'] = $expense_count_check; if($expense_count_check==0){ $statistics['expense_html_check'] = ''; } //未读消息统计 $msg_map[] = ['to_uid','=',$admin_id]; $msg_map[] = ['read_time','=',0]; $msg_map[] = ['status','=',1]; $msg_count = Db::name('Message')->where($msg_map)->count(); $statistics['msg_html'] = '<a data-id="27" data-title="收件箱" data-src="/message/index/inbox.html" class="menu-active"> 您有<font style="color:#FF0000">'.$msg_count.'</font>条未读消息</a>'; $statistics['msg_num'] = $msg_count; if($msg_count==0){ $statistics['msg_html'] = ''; } foreach ($statistics as $key => $value) { if (!$value ) unset($statistics[$key]); } return to_assign(0,'ok',$statistics); } else{ $admin = get_login_admin(); if (get_cache('menu' . $admin['id'])) { $list = get_cache('menu' . $admin['id']); } else { $adminGroup = Db::name('PositionGroup')->where(['pid' => $admin['position_id']])->column('group_id'); $adminMenu = Db::name('AdminGroup')->where('id', 'in', $adminGroup)->column('rules'); $adminMenus = []; foreach ($adminMenu as $k => $v) { $v = explode(',', $v); $adminMenus = array_merge($adminMenus, $v); } $menu = Db::name('AdminRule')->where(['menu' => 1,'status'=>1])->where('id', 'in', $adminMenus)->order('sort asc')->select()->toArray(); $list = list_to_tree($menu); \think\facade\Cache::tag('adminMenu')->set('menu' . $admin['id'], $list); } View::assign('menu', $list); return View(); } } public function main() { $install = false; if (file_exists(CMS_ROOT . 'app/install')) { $install = true; } $adminCount = Db::name('Admin')->where('status', '1')->count(); $articleCount = Db::name('Article')->where('status', '1')->count(); $approveCount = Db::name('Approve')->count(); $expenseCount = Db::name('Expense')->count(); $invoiceCount = Db::name('Invoice')->count(); View::assign('adminCount', $adminCount); View::assign('articleCount', $articleCount); View::assign('approveCount', $approveCount); View::assign('expenseCount', $expenseCount); View::assign('invoiceCount', $invoiceCount); View::assign('install', $install); View::assign('TP_VERSION',\think\facade\App::version()); return View(); } public function errorShow() { echo '错误'; } }