예제 #1
0
 /**
  * 职位设置
  */
 public function actionSetup()
 {
     $this->_modelUser = $this->_getGlobalData('Model_User', 'object');
     $this->_setupFilePath = CACHE_DIR . '/program/position.cache.php';
     if (file_exists($this->_setupFilePath)) {
         $dataList = $this->_getGlobalData('program/position');
         foreach ($dataList as $key => &$list) {
             $list['url_del'] = Tools::url(CONTROL, 'SetupDel', array('zp' => 'Program', 'Id' => $key));
         }
     } else {
         $dataList = null;
     }
     if ($dataList !== null) {
         $users = $this->_modelUser->findByDepartment(self::DEPARTMENT_IT);
         foreach ($users as $user) {
             if (!$user['position_id']) {
                 continue;
             }
             if (array_key_exists($user['position_id'], $dataList)) {
                 if (!is_array($dataList[$user['position_id']]['users'])) {
                     $dataList[$user['position_id']]['users'] = array();
                 }
                 array_push($dataList[$user['position_id']]['users'], $user);
             }
         }
     }
     $this->_view->assign('dataList', $dataList);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #2
0
 /**
  * 季度统计
  */
 public function actionQuarter()
 {
     $this->_modelProgramProject = $this->_getGlobalData('Model_ProgramProject', 'object');
     $projects = $this->_modelProgramProject->findAllProjectUser();
     $this->_modelProgramStatsQuarter = $this->_getGlobalData('Model_ProgramStatsQuarter', 'object');
     if ($this->_isPost()) {
         //统计
         $this->_view->assign('display', true);
         $selected = array();
         if ($_POST['year']) {
             $selected['year'] = $_POST['year'];
         }
         if ($_POST['user_id']) {
             $selected['user_id'] = $_POST['user_id'];
         }
         $this->_view->assign('selected', $selected);
         $userStatsData = $this->_modelProgramStatsQuarter->stats($_POST['user_id'], $_POST['year'], $_POST['quarter']);
         $this->_view->assign('userStatsData', $userStatsData);
         $history = $this->_modelProgramStatsQuarter->findByUserId($_POST['user_id']);
         if (count($history)) {
             foreach ($history as $list) {
                 if ($list['year'] == $_POST['year'] && $list['quarter'] == $_POST['quarter']) {
                     $this->_view->assign('isStats', true);
                 }
             }
         }
         $this->_view->assign('history', $history);
     }
     $this->_view->assign('quarterList', $this->_modelProgramStatsQuarter->getQuarter());
     $this->_view->assign('projects', $projects);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #3
0
 private function _userManagerOperator()
 {
     $operatorList = $this->_getGlobalData('operator_list');
     $operatorList = Model::getTtwoArrConvertOneArr($operatorList, 'Id', 'operator_name');
     $gameTypeList = $this->_getGlobalData('game_type');
     if ($gameTypeList[self::GAME_ID]) {
         $gameTypeList = array(self::GAME_ID => $gameTypeList[self::GAME_ID]['name']);
     } else {
         $gameTypeList = array();
     }
     //$gameTypeList = Model::getTtwoArrConvertOneArr ( $gameTypeList, 'Id', 'name' );
     $this->_modelGameOperator->tName();
     $sql1 = "select * from " . $this->_modelGameOperator->tName() . " where game_type_id = " . self::GAME_ID;
     $gameOperatorIndex = $this->_modelGameOperator->select($sql1);
     foreach ($gameOperatorIndex as &$value) {
         $value['word_operator_id'] = $operatorList[$value['operator_id']];
     }
     $_GET['Id'] = intval($_GET['Id']);
     $sql2 = "select * from " . $this->_modelUserProiorityOperator->tName() . " where user_id = {$_GET['Id']} and game_type_id=" . self::GAME_ID;
     $userOperatorList = $this->_modelUserProiorityOperator->select($sql2);
     foreach ($userOperatorList as &$value) {
         $value['word_operator_id'] = $operatorList[$value['operator_id']];
         $value['word_game_type_id'] = $gameTypeList[$value['game_type_id']];
         $value['url_del'] = Tools::url(CONTROL, ACTION, array('zp' => PACKAGE, 'operator_id' => $value['operator_id'], 'user_id' => $_GET['Id'], 'game_type_id' => $value['game_type_id'], 'doaction' => 'delOperator'));
     }
     $this->_view->assign('userOperatorList', $userOperatorList);
     $this->_view->assign('gameOperatorIndex', json_encode($gameOperatorIndex));
     $this->_view->assign('gameTypeList', $gameTypeList);
     $this->_view->assign('userId', $_GET['Id']);
     $this->_view->set_tpl(array('body' => 'User/UserManagerOperator.html'));
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #4
0
 private function _modifyNameIndex()
 {
     $this->_checkOperatorAct();
     $this->_createServerList();
     if ($_REQUEST['server_id'] && $this->_isPost()) {
         $_POST['playerType'] = intval($_POST['playerType']);
         $_POST['player'] = trim($_POST['player']);
         $rpc = $this->getApi();
         $rpc->setUrl($_REQUEST['server_id'], 'api/modifyPlayer');
         if ($_POST['playerType']) {
             $dataList = $rpc->findPlayerByName($_POST['player']);
         } else {
             $dataList = $rpc->findPlayerById(intval($_POST['player']));
         }
         if ($dataList instanceof PHPRPC_Error) {
             $this->_view->assign('ConnectErrorInfo', $dataList->Message);
         } elseif ($dataList) {
             $dataList = json_decode($dataList, true);
             $jump = Tools::url(CONTROL, 'ModifyName', array('zp' => 'Sftx', 'server_id' => $_REQUEST['server_id']));
             if (intval($dataList['playerId']) == 0) {
                 $this->_utilMsg->showMsg('查无数据', -1, $jump);
             }
             $this->_view->assign('URL_ReQuery', $jump);
             $this->_view->assign('dataList', $dataList);
         }
     }
     $this->_view->assign('searchType', $this->_searchType);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #5
0
 private function _psdLinkEdit()
 {
     $this->_modelLyPsdLink = $this->_getGlobalData('Model_LyPsdLink', 'object');
     $gameTypes = $this->_modelLyPsdLink->getMyGame();
     $selected = $this->_modelLyPsdLink->findById($_GET['Id']);
     if (!$selected) {
         $this->_utilMsg->showMsg('已删除', -1, 2);
     }
     if ($this->_isPost()) {
         $_POST['Id'] = intval($_POST['Id']);
         if (!$this->_modelLyPsdLink->findById($_POST['Id'])) {
             $this->_utilMsg->showMsg(Tools::getLang('LINK_DELETED', __CLASS__), -1, 2);
         }
         $_POST['game_type_id'] = intval($_POST['game_type_id']);
         if (!$_POST['game_type_id'] || !array_key_exists($_POST['game_type_id'], $gameTypes)) {
             $this->_utilMsg->showMsg(Tools::getLang('PLZ_SLT_GAME', 'Common'), -1, 2);
         }
         if (trim($_POST['title']) == '') {
             $this->_utilMsg->showMsg('标题不能为空', -1, 2);
         }
         if (trim($_POST['href']) == '') {
             $this->_utilMsg->showMsg('链接不能为空', -1, 2);
         }
         $this->_modelLyPsdLink->linkUpdate();
         $this->_utilMsg->showMsg(Tools::getLang('OPERATION_SUCCESS', 'Common'), 1, $this->_url['PsdLink'], 1);
     }
     $this->_view->assign('selected', $selected);
     $this->_view->assign('gameTypes', $gameTypes);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #6
0
 private function _shareInfoEdit()
 {
     $_GET['Id'] = intval($_GET['Id']);
     $gameTypes = $this->_getGlobalData('game_type');
     $gameTypes = Model::getTtwoArrConvertOneArr($gameTypes, 'Id', 'name');
     $this->_modelLyShareInfo = $this->_getGlobalData('Model_LyShareInfo', 'object');
     if ($this->_isPost()) {
         if (!array_key_exists($_POST['game_type_id'], $gameTypes)) {
             $this->_utilMsg->showMsg('所选游戏不存在', -1);
         }
         if ('' == trim($_POST['title'])) {
             $this->_utilMsg->showMsg('标题不能为空', -1);
         }
         if ('' == trim($_POST['content'])) {
             $this->_utilMsg->showMsg('内容不能为空', -1);
         }
         $AddData = Tools::fieldFilter('game_type_id,title,content', $_POST);
         $userClass = $this->_utilRbac->getUserClass();
         $AddData['user_id'] = $userClass['_id'];
         $AddData['update_time'] = CURRENT_TIME;
         if ($this->_modelLyShareInfo->update($AddData, "Id = {$_GET['Id']}")) {
             $this->_utilMsg->showMsg('修改成功', 1, $this->_url['share_info'], 1);
         } else {
             $this->_utilMsg->showMsg('修改失败', -1);
         }
     }
     $data = $this->_modelLyShareInfo->findById($_GET['Id']);
     $this->_view->assign('data', $data);
     $this->_view->assign('game_type_id', $gameTypes);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #7
0
 /**
  * 编辑项目
  */
 public function actionEdit()
 {
     $this->_modelProgramProject = $this->_getGlobalData('Model_ProgramProject', 'object');
     if ($this->_isPost()) {
         $this->_modelProgramProject = $this->_getGlobalData('Model_ProgramProject', 'object');
         $info = $this->_modelProgramProject->edit($_POST);
         $this->_utilMsg->showMsg($info['msg'], $info['status'], $info['href']);
     } else {
         $users = $this->_modelProgramProject->findProjectUser(self::DEPARTMENT_IT, $_GET['Id']);
         $users['full_user'] = Model::getTtwoArrConvertOneArr($users['full_user'], 'Id', 'nick_name');
         $users['all_user'] = Model::getTtwoArrConvertOneArr($users['all_user'], 'Id', 'nick_name');
         $dataList = $this->_modelProgramProject->findById($_GET['Id']);
         $this->_view->assign('dataList', $dataList);
         $this->_view->assign('users', $users);
         $this->_utilMsg->createPackageNavBar();
         $this->_view->display();
     }
 }
예제 #8
0
 /**
  * 点击率统计
  */
 public function actionRatio()
 {
     $gameTypes = $this->_getGlobalData('game_type');
     $gameTypes = Model::getTtwoArrConvertOneArr($gameTypes, 'Id', 'name');
     $sources = $this->_getGlobalData('workorder_source');
     $lang = $this->_getGlobalData('lang');
     $statsType = array('day' => '按天', 'hour' => '按小时');
     $selected = array();
     //统计数组
     $selected['stats_type'] = $_POST['stats_type'] ? $_POST['stats_type'] : 'day';
     //统计类型默认天
     $selected['game_type_id'] = $_POST['game_type_id'];
     $selected['source'] = $_POST['source'];
     $selected['start_time'] = $_POST['start_time'];
     $selected['end_time'] = $_POST['end_time'];
     $selected['lang_id'] = $_POST['lang_id'];
     if ($this->_isPost()) {
         $this->_modelPlayerKindFaq = $this->_getGlobalData('Model_PlayerKindFaq', 'object');
         $kindList = $this->_modelPlayerKindFaq->findListAll($_POST['game_type_id'], $_POST['lang_id']);
         $this->_modelStatsFaq = $this->_getGlobalData('Model_StatsFaq', 'object');
         if (empty($_POST['start_time']) || empty($_POST['end_time'])) {
             $this->_utilMsg->showMsg('请选择开始时间与结束时间', -1, 2);
         }
         if ($_POST['stats_type'] == 'day') {
             //按天
             $this->_view->assign('allDay', Tools::getdateArr($_POST['start_time'], $_POST['end_time']));
             $stats = $this->_modelStatsFaq->statsDay(array('start_time' => $_POST['start_time'], 'end_time' => $_POST['end_time']), $_POST['game_type_id'], $_POST['source'], $_POST['lang_id']);
         } else {
             //按小时
             $this->_view->assign('allHour', range(0, 23));
             $stats = $this->_modelStatsFaq->statsHour(array('start_time' => $_POST['start_time'], 'end_time' => $_POST['end_time']), $_POST['game_type_id'], $_POST['source'], $_POST['lang_id']);
         }
     } else {
         $selected["start_time"] = date("Y-m-d", time()) . " 00:00:00";
         $selected["end_time"] = date("Y-m-d", time()) . " 23:59:59";
     }
     $this->_view->assign('kindList', $kindList);
     $this->_view->assign('dataList', $stats);
     $gameTypes[''] = '所有';
     $sources[''] = '所有';
     $lang[''] = '所有';
     $this->_view->assign('selected', $selected);
     $this->_view->assign('statsType', $statsType);
     $this->_view->assign('gameTypes', $gameTypes);
     $this->_view->assign('sources', $sources);
     $this->_view->assign('lang', $lang);
     $this->_utilMsg->createPackageNavBar();
     if ($_POST['xls']) {
         //导出excel
         Tools::import('Util_ExportExcel');
         $this->_utilExportExcel = new Util_ExportExcel('faq统计', 'Excel/StatsFaq', $stats);
         $this->_utilExportExcel->outPutExcel();
     } else {
         $this->_view->display();
     }
 }
예제 #9
0
 /**
  * 游戏操作日志模板添加
  */
 private function _gameLgoTplAdd()
 {
     $gameTypes = $this->_getGlobalData('game_type');
     $gameTypes = Model::getTtwoArrConvertOneArr($gameTypes, 'Id', 'name');
     $this->_modelGamePlayerLogTpl = $this->_getGlobalData('Model_GamePlayerLogTpl', 'object');
     $this->_modelGamePlayerLogRoot = $this->_getGlobalData('Model_GamePlayerLogRoot', 'object');
     if ($this->_isPost()) {
         $_POST['rootid'] = intval($_POST['rootid']);
         $_POST['typeid'] = intval($_POST['typeid']);
         $_POST['typename'] = trim($_POST['typename']);
         $_POST['var_count'] = intval($_POST['var_count']);
         $_POST['tpl'] = trim($_POST['tpl']);
         if (!$_POST['rootid']) {
             $this->_utilMsg->showMsg('root id is not interger!', -1);
         }
         if (!$_POST['typeid']) {
             $this->_utilMsg->showMsg('type id is not interger!', -1);
         }
         if ($_POST['typename'] == '') {
             $this->_utilMsg->showMsg('type name empty!', -1);
         }
         //			if(!$_POST['var_count']){
         //				$this->_utilMsg->showMsg('variable amount is not interger!',-1);
         //			}
         //			if(!$_POST['tpl']){
         //				$this->_utilMsg->showMsg('template empty!',-1);
         //			}
         $_POST['create_time'] = CURRENT_TIME;
         $this->_modelGamePlayerLogTpl->add($_POST);
         //$this->_gameLogRootCache();
         $this->_utilMsg->showMsg('Edit Success!', 1, $this->_url['SysManagement_GameLogTpl'], 1);
     } else {
         $ExistGameLogRoot = array();
         $ExistGame = array();
         foreach ($gameTypes as $key => $sub) {
             $GameCacheFileName = "{$this->_modelGamePlayerLogRoot->getModelTableName()}_{$key}";
             if (file_exists(CACHE_DIR . "/{$GameCacheFileName}.cache.php")) {
                 $FileData = $this->_getGlobalData($GameCacheFileName);
                 if ($FileData && is_array($FileData)) {
                     foreach ($FileData as $v) {
                         $ExistGameLogRoot[$key][$v['rootid']] = $v['rootid'] . '_' . $v['rootname'];
                     }
                 }
                 $ExistGame[$key] = $sub;
             }
         }
         $this->_view->assign('legend', '添加');
         $this->_view->assign('game_type', $ExistGame);
         $this->_view->assign('GameLogRoot', json_encode($ExistGameLogRoot));
         $this->_view->set_tpl(array('body' => 'SysManagement/GameLogTplEdit.html'));
         $this->_utilMsg->createPackageNavBar();
         $this->_view->display();
     }
 }
예제 #10
0
 /**
  * 数据统计 
  */
 public function actionData()
 {
     // 		ini_set("display_errors", "On");
     // 		error_reporting(E_ALL | E_STRICT);
     $this->_modelUser = $this->_getGlobalData('Model_User', 'object');
     $orgList = $this->_getGlobalData('org');
     $allOrgUser = $this->_modelUser->findSetOrgByUser();
     $gameTypes = $this->_getGlobalData('game_type');
     $gameTypes = Model::getTtwoArrConvertOneArr($gameTypes, 'Id', 'name');
     $this->_view->assign('game_type', $gameTypes);
     $utilRbac = $this->_getGlobalData('Util_Rbac', 'object');
     $operators = $utilRbac->getOperatorActList();
     //个人授权可操作的运营商
     $this->_view->assign('operators', $operators);
     foreach ($orgList as &$value) {
         $curOrgUser = $this->_modelUser->findByOrgId($value['Id']);
         if ($curOrgUser) {
             $curOrgUser = Model::getTtwoArrConvertOneArr($curOrgUser, 'Id', 'nick_name');
             $value['user'] = $curOrgUser;
         }
     }
     $this->_view->assign('orgList', $orgList);
     if ($this->_isPost()) {
         @ini_set('memory_limit', '512M');
         if (count($_POST['check_users']) && $_POST['start_date'] && $_POST['end_date'] && count($_POST['operator_id'])) {
             //必须保证有搜索项而且还选择了用户才会开开始搜索
             $date = array();
             $this->_view->assign('selectedTime', array('start' => $_POST['start_date'], 'end' => $_POST['end_date']));
             $this->_view->assign('selectedUsers', $_POST['check_users']);
             $date['start'] = strtotime($_POST['start_date']);
             //开始时间
             $date['end'] = strtotime($_POST['end_date']);
             //结束时间
             if ($date['start'] > $date['end']) {
                 $this->_utilMsg->showMsg('开始时间不能大于结束时间', -2);
             }
             $this->_modelWorkOrder = $this->_getGlobalData('Model_WorkOrder', 'object');
             $statusList = $this->_modelWorkOrder->statsDetail(array('start' => strtotime($_POST['start_date']), 'end' => strtotime($_POST['end_date'])), $_POST['check_users'], $_POST['game_type'], $_POST['operator_id']);
             $this->_view->assign('dataList', $statusList);
             $this->_view->assign('users', $this->_getGlobalData('user_index_id'));
         } else {
             $this->_utilMsg->showMsg('请选择时间,用户,运营商', -2);
         }
     }
     $this->_utilMsg->createPackageNavBar();
     if ($_POST['xls']) {
         Tools::import('Util_ExportExcel');
         $this->_utilExportExcel = new Util_ExportExcel('用户详细统计', 'Excel/StatsUser', $statusList);
         $this->_utilExportExcel->outPutExcel();
     } else {
         $this->_view->display();
     }
 }
예제 #11
0
 public function actionIndex()
 {
     $users = $this->_getGlobalData('user_index_id');
     if ($this->_isPost()) {
         $auditType = $this->_getGlobalData('frg_audit_type');
         array_unshift($auditType, '汇总');
         if (empty($_POST['start_date']) || empty($_POST['end_date'])) {
             $this->_utilMsg->showMsg('请设置开始时间与结束时间', -1, 2);
         }
         if ($_POST['audit_user_id']) {
             $auditUserId = Tools::coerceInt($_POST['audit_user_id']);
         }
         $this->_modelApplyDataFrg = $this->_getGlobalData('Model_ApplyDataFrg', 'object');
         $time = array('start' => strtotime($_POST['start_date']), 'end' => strtotime($_POST['end_date']));
         $dataList = $this->_modelApplyDataFrg->stats($time, $auditUserId);
         $this->_view->assign('dataList', $dataList);
         $this->_view->assign('displayTrue', true);
         $this->_view->assign('auditType', $auditType);
     }
     $this->_view->assign('users', $users);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #12
0
 private function _edit()
 {
     $this->_modelProgramDatework = $this->_getGlobalData('Model_ProgramDatework', 'object');
     if ($this->_isPost()) {
         $info = $this->_modelProgramDatework->edit($_POST);
         $this->_utilMsg->showMsg($info['msg'], $info['status'], $info['href']);
     } else {
         $dataList = $this->_modelProgramDatework->findById($_GET['Id']);
         $this->_view->assign('dataList', $dataList);
         $this->_utilMsg->createPackageNavBar();
         $this->_view->set_tpl(array('body' => 'ProgramDateWork/Edit.html'));
         $this->_view->display();
     }
 }
예제 #13
0
 private function _operatorInfoEdit()
 {
     $gameTypes = $this->_getGlobalData('game_type');
     $gameTypes = Model::getTtwoArrConvertOneArr($gameTypes, 'Id', 'name');
     $operators = $this->_getGlobalData('operator_list');
     $operators = Model::getTtwoArrConvertOneArr($operators, 'Id', 'operator_name');
     //谁出客服
     $CsSupply = array('0' => '我方', '1' => '对方');
     //谁出服务器
     $ServerSupply = array('0' => '我方', '1' => '对方');
     $this->_modelLyOperatorInfo = $this->_getGlobalData('Model_LyOperatorInfo', 'object');
     if ($this->_isPost()) {
         if (!array_key_exists($_POST['game_type_id'], $gameTypes)) {
             $this->_utilMsg->showMsg('所选游戏不存在', -1);
         }
         if (!array_key_exists($_POST['operator_id'], $operators)) {
             $this->_utilMsg->showMsg('所选运营商不存在', -1);
         }
         if (!array_key_exists($_POST['cs_supply'], $CsSupply)) {
             $this->_utilMsg->showMsg('所选客服不存在', -1);
         }
         if (!array_key_exists($_POST['server_supply'], $ServerSupply)) {
             $this->_utilMsg->showMsg('所选服务器不存在', -1);
         }
         if ('' == trim($_POST['marking'])) {
             $this->_utilMsg->showMsg('标识必须', -1);
         }
         if ('' == trim($_POST['company_name'])) {
             $this->_utilMsg->showMsg('标识必须', -1);
         }
         $NeedField = 'game_type_id,operator_id,marking,company_name,cs_supply,server_supply,qq_group,website_url,forum_url,datum_url,principal,coupling';
         $UpdateData = Tools::fieldFilter($NeedField, $_POST);
         if ($this->_modelLyOperatorInfo->update($UpdateData, "Id = {$_GET['Id']}")) {
             $this->_utilMsg->showMsg('修改成功', 1, $this->_url['operator_info'], 1);
         } else {
             $this->_utilMsg->showMsg('修改失败', -1);
         }
     }
     $data = $this->_modelLyOperatorInfo->findById($_GET['Id']);
     $this->_view->assign('data', $data);
     $this->_view->assign('game_type_id', $gameTypes);
     $this->_view->assign('operator_id', $operators);
     $this->_view->assign('cs_supply', $CsSupply);
     $this->_view->assign('server_supply', $ServerSupply);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #14
0
 /**
  * 群发公告
  */
 public function actionAllAdd()
 {
     $this->_checkOperatorAct();
     $this->_createCenterServer();
     $servers = $this->_getAllServerIds();
     $serversInfo = $this->_getGlobalData('server/server_list_' . self::XUN_XIA_ID);
     $serversInfo = Model::getTtwoArrConvertOneArr($serversInfo, 'marking', 'server_name');
     $sendData = array();
     if ($this->_isPost()) {
         //die($_REQUEST['server_id']);
         if (empty($_POST['serverId'])) {
             $this->_utilMsg->showMsg('请选择发送的服务', -1);
         }
         $sendData = array();
         foreach ($_POST['serverId'] as $val) {
             if ($servers[$val]) {
                 $sendData['serverId'][$val] = $servers[$val];
                 $sendData['serversInfo'][$val] = isset($serversInfo[$servers[$val]]) ? $serversInfo[$servers[$val]] : $servers[$val];
             }
         }
         if (empty($sendData['serverId'])) {
             $this->_utilMsg->showMsg('服务器信息错误,请更新服务器', -1);
         }
         $sendData['serverId'] = implode(',', $sendData['serverId']);
         $this->getApi()->setUrl($_REQUEST['server_id'], 'oneNotice/notice');
         $data = $this->getApi()->saveNotice(strval($_POST['title']), strval($_POST['content']), strval($_POST['begin']), strval($_POST['end']), intval($_POST['interval']), $_POST['url'], $sendData['serverId']);
         if ($data === 0) {
             $this->_utilMsg->showMsg('添加公告成功', 1, Tools::url(CONTROL, 'AllAdd', array('zp' => 'XunXia', 'server_id' => $_REQUEST['server_id'])));
         } else {
             $this->_utilMsg->showMsg('添加公告失败', 1);
         }
     } else {
         //<input class="serverId" type="checkbox" value="S1" name="serverId[]">
         if ($servers) {
             $serverToSlt = array();
             foreach ($servers as $k => $v) {
                 $serverToSlt[$k] = "{$k}";
                 //$serverToSlt[$k] = isset($serversInfo[$v])?$serversInfo[$v]."($v)":$v;
             }
             $this->_view->assign('server', $serverToSlt);
         }
         //print_r($serverToSlt);
         $this->_utilMsg->createPackageNavBar();
         $this->_view->display();
     }
 }
예제 #15
0
 /**
  * 工单处理时长统计
  */
 public function actionTime()
 {
     $gameTypes = $this->_getGlobalData('game_type');
     $gameTypes = Model::getTtwoArrConvertOneArr($gameTypes, 'Id', 'name');
     $operatorIds = $this->_getGlobalData('operator_list');
     $operatorIds = Model::getTtwoArrConvertOneArr($operatorIds, 'Id', 'operator_name');
     $vipIndex = Tools::getLang('VIP_LEVEL', 'Common');
     $this->_modelRooms = $this->_getGlobalData('Model_Rooms', 'object');
     $roomList = $this->_modelRooms->findAll();
     $roomList = Model::getTtwoArrConvertOneArr($roomList, 'Id', 'name');
     //$roomList['']=Tools::getLang('All','Common');
     array_pop($vipIndex);
     //弹出最后一个
     if ($this->_isPost()) {
         $selected = array();
         if (!$_POST['game_type_id']) {
             $this->_utilMsg->showMsg('请至少选择一个游戏类型', -1);
         }
         if (!$_POST['operator_id']) {
             $this->_utilMsg->showMsg('请至少选择一个运营商', -1);
         }
         if (!$_POST['start_time'] || !$_POST['end_time']) {
             $this->_utilMsg->showMsg('请指定时间范围', -1);
         }
         $selected['roomList'] = $_POST['roomList'];
         $selected['game_type_id'] = $_POST['game_type_id'];
         $selected['operator_id'] = $_POST['operator_id'];
         $selected['start_time'] = $_POST['start_time'];
         $selected['end_time'] = $_POST['end_time'];
         $selected['vip_level'] = $_POST['vip_level'];
         $this->_view->assign('selected', $selected);
         $time = array('start_time' => strtotime($_POST['start_time']), 'end_time' => strtotime($_POST['end_time']));
         $this->_modelOrderLog = $this->_getGlobalData('Model_OrderLog', 'object');
         $dataList = $this->_modelOrderLog->statsTime($time, $_POST['game_type_id'], $_POST['operator_id'], $_POST['vip_level'], $_POST['roomList']);
         $this->_view->assign('dataList', $dataList);
         $this->_view->assign('display', true);
     }
     $this->_view->assign('roomList', $roomList);
     $this->_view->assign('vipIndex', $vipIndex);
     $this->_view->assign('gameTypes', $gameTypes);
     $this->_view->assign('operatorList', $operatorIds);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #16
0
 public function actionAudit()
 {
     $this->_modelProgramTask = $this->_getGlobalData('Model_ProgramTask', 'object');
     if ($this->_isPost()) {
         $info = $this->_modelProgramTask->auditTask($_POST);
         $this->_utilMsg->showMsg($info['msg'], $info['status'], $info['href']);
     } else {
         $users = $this->_getGlobalData('user_index_id');
         $dataList = $this->_modelProgramTask->findById($_GET['Id']);
         $dataList['start_time'] = date('Y-m-d H:i:s', $dataList['start_time']);
         $dataList['end_time'] = date('Y-m-d H:i:s', $dataList['end_time']);
         $dataList['word_assign_user_id'] = $users[$dataList['assign_user_id']];
         $dataList['word_accept_user_id'] = $users[$dataList['accept_user_id']];
         $this->_view->assign('dataList', $dataList);
         $this->_view->assign('users', $this->getItUsers());
         $this->_utilMsg->createPackageNavBar();
         $this->_view->display();
     }
 }
예제 #17
0
 /**
  * 多服发送公告.
  */
 public function actionAddMulti()
 {
     if ($this->_isAjax()) {
         $this->getApi()->setUrl($_REQUEST['server_id'], self::API_HREF);
         $data = $this->getApi()->save(strval($_POST['begin']), strval($_POST['end']), intval($_POST['interval']), strval($_POST['title']), strval($_POST['content']), $_POST['url']);
         $data = json_decode($data, true);
         if ($data['status'] == 1) {
             $this->_returnAjaxJson(array('status' => 1, 'msg' => '发送成功'));
         } else {
             $this->_returnAjaxJson(array('status' => -2, 'msg' => '发送失败'));
         }
     } else {
         $this->_checkOperatorAct();
         //检测服务器
         $this->_createMultiServerList();
         $this->_utilMsg->createPackageNavBar();
         $this->_view->display();
     }
 }
예제 #18
0
 /**
  * 添加服务器
  */
 private function _serverlistadd()
 {
     if ($this->_isPost()) {
         if ($this->_modelGameSerList->addServerlist($_POST)) {
             $this->_utilMsg->showMsg(Tools::getLang('ADD_SUCCESS', 'Common'), 1, Tools::url(CONTROL, ACTION, array('zp' => "xianhun")));
         } else {
             $this->_utilMsg->showMsg(Tools::getLang('ADD_ERROR', 'Common'), -2);
         }
     } else {
         $gameTypeList = Model::getTtwoArrConvertOneArr($this->_modelSysconfig->getValueToCache('game_type'), 'Id', 'name');
         $operatorList = $this->_modelOperatorList->findAll();
         $operatorList = Model::getTtwoArrConvertOneArr($operatorList, 'Id', 'operator_name');
         $this->_view->assign('operatorList', $operatorList);
         $this->_view->assign('gameTypeList', $gameTypeList);
         $timer = array('0' => '关闭', '1' => '开启');
         $this->_view->assign('game_type', self::SFTX_ID);
         $this->_view->assign('timer', $timer);
         $this->_utilMsg->createPackageNavBar();
         $this->_view->set_tpl(array('body' => 'ServerList/Add.html'));
         $this->_view->display();
     }
 }
예제 #19
0
 public function actionComplementActivityKey()
 {
     if ($_REQUEST['server_id']) {
         //如果设置了服务器id
         $rpc = $this->getApi();
         if ($this->_isPost()) {
             $rpc->setUrl($_REQUEST['server_id'], 'sendServerMsg/sendServerMsg');
             $domain = $this->_getServerMarking($_REQUEST['server_id']);
             $playerId = $_POST['playerId'];
             $codeId = $_POST['activeList'];
             $dataList = $rpc->send($domain, $playerId, $codeId);
             var_dump($dataList);
             if ($dataList == ' succes !') {
                 $this->_utilMsg->showMsg(Tools::getLang('ADD_SUCCESS', 'Common'), 1);
             }
         } else {
             $rpc->setUrl($_REQUEST['server_id'], 'sendServerMsg/sendServerMsg');
             $dataList = $rpc->getActivityCode();
             // 				print_r($dataList);
             // 				var_dump(is_object($dataList));
             $activeList = array();
             if ($dataList instanceof PHPRPC_Error) {
                 $this->_view->assign('ConnectErrorInfo', $dataList->Message);
             } elseif (is_array($dataList)) {
                 foreach ($dataList as $k => $v) {
                     $activeList[$v->codeId] = $v->codeName;
                 }
             }
             $this->_view->assign('activeList', $activeList);
         }
     }
     $this->_checkOperatorAct();
     $this->_createServerList();
     $this->_view->assign('UrlLockUserDel', $UrlLockUserDel);
     // 		$this->_view->set_tpl(array('body'=>'XunXia/XunXiaSysManage/ComplementActivityKey.html'));
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #20
0
 /**
  * 添加封号
  */
 private function _lockUserAdd()
 {
     $this->_checkOperatorAct();
     $this->_createCenterServer();
     // 		print_r($_REQUEST);exit;
     if ($this->_isPost() && $_REQUEST['server_id']) {
         $_POST['cause'] = trim($_POST['cause']);
         $_POST['users'] = trim($_POST['users']);
         $post['forbidlogin'] = $_POST['EndTime'];
         $this->getApi()->setUrl($_REQUEST['server_id'], 'forbidden/forbidden0');
         $dataList = $this->getApi()->saveForbidden($_POST['users'], $post['forbidlogin']);
         // 				print_r($dataList);exit;
         if ($dataList == 0) {
             #-------<<<记录游戏后台新操作日志-------#
             $this->_modelGameOperateLog = $this->_getGlobalData('Model_GameOperateLog', 'object');
             $AddLog = array(array('操作', '<font style="color:#F00">封号</font>'), array('操作时间', date('Y-m-d H:i:s', CURRENT_TIME)), array('操作人', '<b>{UserName}</b>'), array('封号结束时间', $_POST['EndTime']), array('原因', $_POST['cause']));
             $AddLog = $this->_modelGameOperateLog->addInfoMake($AddLog);
             foreach ($dataList as $sub) {
                 $userInfo = $sub;
                 $userInfo['UserId'] = $sub['id'];
                 $GameOperateLog = $this->_modelGameOperateLog->MakeDataForStore($userInfo, 1, $_REQUEST['server_id'], $AddLog);
                 if (false !== $GameOperateLog) {
                     $this->_modelGameOperateLog->add($GameOperateLog);
                 }
             }
             #------->>>记录游戏后台新操作日志-------#
             $this->_utilMsg->showMsg('操作成功', 1, Tools::url(CONTROL, 'LockUser', array('zp' => self::PACKAGE, 'server_id' => $_REQUEST['server_id'])), 1);
         } else {
             $this->_utilMsg->showMsg('操作失败', -1);
         }
     }
     $UrlLockUserDel = Tools::url(CONTROL, 'LockUser', array('zp' => self::PACKAGE, 'doaction' => 'add', 'server_id' => $_REQUEST['server_id']));
     $this->_view->assign('UrlLockUserDel', $UrlLockUserDel);
     $this->_view->set_tpl(array('body' => 'XunXia/XunXiaUser/LockUserAdd.html'));
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }
예제 #21
0
 /**
  * 按小时统计 
  */
 public function actionHour()
 {
     $operatorList = $this->_getGlobalData('operator_list');
     $operatorList = Model::getTtwoArrConvertOneArr($operatorList, 'Id', 'operator_name');
     $gameTypeList = $this->_getGlobalData('game_type');
     $gameTypeList = Model::getTtwoArrConvertOneArr($gameTypeList, 'Id', 'name');
     $this->_modelGameOperator = $this->_getGlobalData('Model_GameOperator', 'object');
     $gameOperatorIndex = $this->_modelGameOperator->findAll();
     foreach ($gameOperatorIndex as &$value) {
         $value['word_operator_id'] = $operatorList[$value['operator_id']];
     }
     if ($this->_isPost()) {
         if (empty($_POST['start_date']) || empty($_POST['end_date'])) {
             $this->_utilMsg->showMsg('统计日期不能为空', -2);
         }
         if (empty($_POST['game_type_id']) || !count($_POST['operator_id'])) {
             $this->_utilMsg->showMsg('请选译游戏,和运营商', -2);
         }
         $curDate = $_POST['date'];
         $this->_view->assign('selectedGameTypeId', $_POST['game_type_id']);
         $selectedOperatorList = array();
         foreach ($_POST['operator_id'] as $operatorId) {
             if (array_key_exists($operatorId, $operatorList)) {
                 $selectedOperatorList[$operatorId] = $operatorList[$operatorId];
             }
         }
         $this->_view->assign('selectedOperatorIds', $_POST['operator_id']);
         $this->_view->assign('selectedOperatorList', $selectedOperatorList);
         $this->_view->assign('selectedTime', array('start_date' => $_POST['start_date'], 'end_date' => $_POST['end_date']));
         $date['start'] = strtotime($_POST['start_date']);
         $date['end'] = strtotime($_POST['end_date']);
         $this->_modelWorkOrder = $this->_getGlobalData('Model_WorkOrder', 'object');
         $this->_modelWorkOrderQa = $this->_getGlobalData('Model_WorkOrderQa', 'object');
         $this->_modelReplyQulity = $this->_getGlobalData('Model_ReplyQulity', 'object');
         $this->_modelVerify = $this->_getGlobalData('Model_Verify', 'object');
         $workOrderTotal = $this->_modelWorkOrder->getOperatorDayStatsNum($_POST['game_type_id'], $_POST['operator_id'], $date);
         $workOrderQaTotal = $this->_modelWorkOrderQa->getOperatorDayStatsNum($_POST['game_type_id'], $_POST['operator_id'], $date);
         $replyQulityTotal = $this->_modelReplyQulity->getOperatorDayStatsNum($_POST['game_type_id'], $_POST['operator_id'], $date);
         $bugListTotal = $this->_modelVerify->getOperatorDayStatsNum($_POST['game_type_id'], $_POST['operator_id'], $date);
         $total = array();
         for ($i = 0; $i <= 23; $i++) {
             if (!$workOrderQaTotal[$i]) {
                 $workOrderQaTotal[$i] = array();
             }
             if (!$replyQulityTotal[$i]) {
                 $replyQulityTotal[$i] = array();
             }
             if (!$workOrderTotal[$i]) {
                 $workOrderTotal[$i] = array();
             }
             if (!$bugListTotal[$i]) {
                 $bugListTotal[$i] = array();
             }
             $total[$i] = array_merge($workOrderQaTotal[$i], $replyQulityTotal[$i], $workOrderTotal[$i], $bugListTotal[$i]);
         }
         if (!$workOrderQaTotal['total']) {
             $workOrderQaTotal['total'] = array();
         }
         if (!$replyQulityTotal['total']) {
             $replyQulityTotal['total'] = array();
         }
         if (!$workOrderTotal['total']) {
             $workOrderTotal['total'] = array();
         }
         if (!$bugListTotal['total']) {
             $bugListTotal['total'] = array();
         }
         $total['total'] = array_merge($workOrderQaTotal['total'], $replyQulityTotal['total'], $workOrderTotal['total'], $bugListTotal['total']);
         ksort($total);
         $this->_view->assign('total', $total);
         $this->_view->assign('displayTrue', true);
     }
     $this->_view->assign('gameOperatorIndex', json_encode($gameOperatorIndex));
     $this->_view->assign('gameTypeList', $gameTypeList);
     $this->_utilMsg->createPackageNavBar();
     $this->_view->display();
 }