} $sql2 = "SELECT yuangong.yuangongID,shebao.shebaoID,shebao.ygongID,yuangong.number,yuangong.name,shebao.jishu,shebao.bili,shebao.xianzhong,shebao.shebao,shebao.beizhu FROM yuangong left join shebao ON yuangong.yuangongID=shebao.ygongID WHERE(1=1) "; //日期是字符串类型,所以要加引号 $s = "and yuangong.shifouzaizhi='是'"; $sql2 .= @$nb; $sql2 .= @$nm; $sql2 .= @$ft; $sql2 .= @$xz; $sql2 .= @$s; $mydb = new MyDBCX(); //创建数据库操作类MyDB的对象 $total = $mydb->getRowTotal($sql2); //调用MyDB类的方法返回数据表记录总数 $fpage = new Page($total, $current_page, 40); //通过获取的值创建分页类Page的对象 $pageInfo = $fpage->getPageInfo(); //获取和当前页面有关的所有信息数组 /* 通过调用MyDB中的方法,获取当前页面所需要的所有记录的数据数组 */ $offset = $pageInfo["row_offset"]; $num = $pageInfo["row_num"]; if ($number != null) { $nb = "and yuangong.number={$number} "; } if ($name != null) { $nm = "and yuangong.name='{$name}' "; } if ($factory == "luomai") { $ft = "and yuangong.gongzuodidian='罗麦' "; } if ($factory == "bohan") { $ft = "and yuangong.gongzuodidian='博涵' ";
$sql2="select number,name,yuangongID,fadingcq,fadingjb,zhoumojb,guodingdx,hunjia,chanjia,sangjia,bingjia,pingshiqj,zhoumoqj,quanqin,dizeng,peixun,jintie,hongbao,fazhan,gaowen,gongshang,shuidian,channengbt,zuidibt,zhuanghuo,xiehuo,zahuo,yichang,chanlianggongzi,zhilianggongzi From yuangong left join kaoqin_view on yuangongID=kaoqin_view.ygongID left join chanliang_view ON yuangongID=chanliang_view.ygongID left join zhiliang_view ON yuangongID=zhiliang_view.ygongID where (1=1)"; $s="and shifouzaizhi='是' "; $sql2.=@$rq; $sql2.=@$nb; $sql2.=@$nm; $sql2.=@$ft; $sql2.=@$zc; $sql2.=@$s; $mydb=new MyDBCX();//创建数据库操作类MyDBCX的对象 $total=$mydb->getRowTotal($sql2); //调用MyDB类的方法返回数据表记录总数 $fpage=new Page($total,$current_page,500); //通过获取的值创建分页类Page的对象 $pageInfo=$fpage->getPageInfo(); //获取和当前页面有关的所有信息数组 /* 通过调用MyDB中的方法,获取当前页面所需要的所有记录的数据数组 */ $offset=$pageInfo["row_offset"]; $num=$pageInfo["row_num"]; //if(($qishirq!=null)and($zhongzhirq!=null)){ // $rq="and ((chanliang.riqi between ('$qishirq') and ('$zhongzhirq')) or chanliang.riqi is null) and yuangong.shifouzaizhi='是' ";} if($number!=null){ $nb="and yuangong.number=$number and yuangong.shifouzaizhi='是' ";} if($name!=null){ $nm="and yuangong.name='$name' and yuangong.shifouzaizhi='是' ";} if($factory=="罗麦"){ $ft="and yuangong.gongzuodidian='罗麦' and yuangong.shifouzaizhi='是' ";} if($factory=="博涵"){ $ft="and yuangong.gongzuodidian='博涵' and yuangong.shifouzaizhi='是' ";}
/** * Session情報を元に認証チェックする * * @return 認証結果配列 result:認証結果, adminUserInfo:ログインAdminユーザー情報 */ public function checkAuth() { global $request; // レスポンス格納用 $result = array('result' => false, 'admin_user_info' => array(), 'errors' => array()); // 必須パラメータ確認 if (!isset($_SESSION[SESSION_LOGGED_IN]) || !isset($_SESSION[SESSION_USER]) || !isset($_SESSION[SESSION_USER_ID]) || !isset($_SESSION[SESSION_EXPIRED])) { $this->sessionUnset(); $result['errors'][] = 'ログイン情報が不正です。ログインからやり直して下さい。'; return $result; } // セッションからログイン情報を取得 $loggedIn = $_SESSION[SESSION_LOGGED_IN]; $user = $_SESSION[SESSION_USER]; $userId = $_SESSION[SESSION_USER_ID]; $userCd = $_SESSION[SESSION_USER_CD]; $expired = $_SESSION[SESSION_EXPIRED]; $group_cd = $_SESSION[SESSION_GROUP_CD]; // ログイン情報をチェックする if (!isset($loggedIn) || $loggedIn != true || !isset($userId)) { $this->sessionUnset(); $result['errors'][] = 'ログイン情報が不正です。ログインからやり直して下さい。'; return $result; } // ログイン時に設定した期限を過ぎていないか確認 if ($expired < time()) { $this->sessionUnset(); $result['errors'][] = 'タイムアウトしました。ログインからやり直して下さい。'; return $result; } // 表示対象ページのアクセス権限を確認する if (!Page::isAccessEnabled()) { $result['errors'][] = 'このページへアクセスするための権限がありません。'; return $result; } // Adminユーザー情報を取得 $adminUserInfo = $this->getAdminUserInfo($userCd); //Adminユーザー存在チェック if ($adminUserInfo == -1 || strlen($adminUserInfo['staff_cd']) < 1) { $this->sessionUnset(); $result['errors'][] = 'アカウントが存在しません。削除された可能性があるため管理者にお問い合わせ下さい。'; return $result; } //退職者チェック if ($adminUserInfo['retire_flg'] == 1) { $result['errors'][] = '無効なアカウントです。'; return $result; } //権限チェック if (count($adminUserInfo['group_cd']) <= 0) { $result['errors'][] = 'アカウントが存在しません。削除された可能性があるため管理者にお問い合わせ下さい。'; return $result; } //ID・PW確認 -> リマインダ遷移 if ($adminUserInfo['passwd'] == $adminUserInfo['staff_cd'] || empty($adminUserInfo['passwd'])) { redirect("/reminder/"); return false; } //セッションにログイン情報を格納 $_SESSION[SESSION_LOGGED_IN] = SESSION_LOGGED_IN_Y; $_SESSION[SESSION_USER] = $adminUserInfo['name']; $_SESSION[SESSION_USER_ID] = $adminUserInfo['id']; $_SESSION[SESSION_USER_CD] = $adminUserInfo['staff_cd']; $_SESSION[SESSION_EXPIRED] = time() + MAX_LOGIN_TIME; //ヘッダー・サイドバー等で利用 include_once "class.Search.php"; $_SESSION[SESSION_FUNC] = Page::accessEnablePages(); //保有機能一覧 $_SESSION[SESSION_FUNC_NOW] = Page::getPageInfo(); //現在表示中の機能情報 $_SESSION[SESSION_CHARGE_NEWEMP] = search::getNewEmps($adminUserInfo['id']); //担当新入社員一覧 $_SESSION[SESSION_CHARGE_ADMIN] = search::getAdmins($adminUserInfo['id']); //担当責任者一覧 $_SESSION[SESSION_CURRENT_NEWEMP] = null; //現在表示中の新入社員 $_SESSION[SESSION_CURRENT_ADMIN] = null; //現在表示中の責任者 //新入社員の場合カレントユーザーは自分自身 if (in_array(ACCOUNT_NEW_EMP, $_SESSION[SESSION_GROUP_CD])) { $_SESSION[SESSION_CURRENT_NEWEMP] = $adminUserInfo['id']; } //人事部権限の場合カレントユーザーはリクエスト値を代入 if (in_array(ACCOUNT_HUMAN_RESOURCES, $_SESSION[SESSION_GROUP_CD])) { $_SESSION[SESSION_CURRENT_NEWEMP] = isset($request['id']) ? $request['id'] : null; $_SESSION[SESSION_CURRENT_ADMIN] = isset($request['admin_id']) ? $request['admin_id'] : null; } //その他権限の場合カレントユーザーは担当新人 -> リクエスト値の順に代入 if (count($_SESSION[SESSION_CHARGE_NEWEMP]) > 0) { foreach ($_SESSION[SESSION_CHARGE_NEWEMP] as $first => $dummy) { break; } $_SESSION[SESSION_CURRENT_NEWEMP] = isset($request['id']) ? $request['id'] : $first; } if (count($_SESSION[SESSION_CHARGE_ADMIN]) > 0) { foreach ($_SESSION[SESSION_CHARGE_ADMIN] as $first => $dummy) { break; } $_SESSION[SESSION_CURRENT_ADMIN] = isset($request['admin_id']) ? $request['admin_id'] : $first; } $result['result'] = true; $result['admin_user_info'] = $adminUserInfo; return $result; }