/** * 复检动作 */ public function actionAgain() { $this->_modelQuality = $this->_getGlobalData('Model_Quality', 'object'); if ($this->_isPost()) { $this->_utilRbac = $this->_getGlobalData('Util_Rbac', 'object'); $userClass = $this->_utilRbac->getUserClass(); $this->_modelQuality = $this->_getGlobalData('Model_Quality', 'object'); $updateArr = array('again_status' => $_POST['again_status'], 'again_content' => $_POST['again_content'], 'again_time' => CURRENT_TIME, 'again_user_id' => $userClass['_id']); #------添加日志------# $this->_modelOrderLog = $this->_getGlobalData('Model_OrderLog', 'object'); $this->_modelOrderLog->addLog(array('Id' => $_POST['work_order_id']), Model_OrderLog::AGAIN); #------添加日志------# if ($this->_modelQuality->update($updateArr, "Id={$_POST['Id']}")) { $this->_utilMsg->showMsg(false); } else { $this->_utilMsg->showMsg(Tools::getLang('AGAIN_ERROR', __CLASS__), -2); } } if ($_GET['doaction'] == 'option') { //更改评价 $id = Tools::coerceInt($_GET['Id']); $option = intval($_GET['option']); $this->_modelQuality->update(array('option_id' => $option), "Id={$id}"); $this->_returnAjaxJson(array('status' => 1, 'msg' => '更改评价成功')); } if ($_GET['doaction'] == 'scorces') { //更改分数 $id = Tools::coerceInt($_GET['Id']); $scores = intval($_GET['scores']); $this->_modelQuality->update(array('scores' => $scores), "Id={$id}"); $this->_returnAjaxJson(array('status' => 1, 'msg' => '更改分类成功')); } }
public function add($postArr) { if (empty($postArr['title'])) { return array('status' => -2, 'msg' => '标题不能为空', 'href' => 2); } if (empty($postArr['content'])) { return array('status' => -2, 'msg' => '内容不能为空', 'href' => 2); } $addArr = array(); $addArr['org_id'] = $postArr['org_id']; $addArr['reply_user_id'] = $postArr['reply_user_id']; $addArr['source'] = $postArr['source']; $addArr['quality_status'] = $postArr['quality_status']; $addArr['quality_user_id'] = $postArr['quality_user_id']; $addArr['scores'] = $postArr['scores']; $addArr['feedback'] = $postArr['feedback']; $addArr['title'] = $postArr['title']; $addArr['content'] = $postArr['content']; if ($postArr['work_order_id']) { $addArr['work_order_id'] = $postArr['work_order_id']; #------添加日志------# $this->_modelOrderLog = $this->_getGlobalData('Model_OrderLog', 'object'); $this->_modelOrderLog->addLog(array('Id' => $_POST['work_order_id']), Model_OrderLog::ADD_DOC); #------添加日志------# } if ($postArr['qa_id']) { $addArr['qa_id'] = $postArr['qa_id']; } $this->_utilRbac = $this->_getGlobalData('Util_Rbac', 'object'); $userClass = $this->_utilRbac->getUserClass(); $addArr['create_user_id'] = $userClass['_id']; $addArr['create_time'] = CURRENT_TIME; if (parent::add($addArr)) { return array('status' => 1, 'msg' => '添加成功', 'href' => Tools::url(CONTROL, 'Document')); } else { return array('status' => 1, 'msg' => '添加失败', 'href' => 2); } }
/** * 删除某玩家的所有工单 */ public function actionDelAll() { $userInfo = array('user_account' => trim($_REQUEST['user_account']), 'game_user_id' => trim($_REQUEST['user_id']), 'user_nickname' => trim(urldecode($_REQUEST['user_nickname']))); $userInfo = array_filter($userInfo); //检查用户信息是否都为空 if (!$userInfo) { $this->_returnAjaxJson(array('status' => 0, 'info' => 'player empty', 'data' => null)); } $gameId = intval($_REQUEST['game_id']); if (!$gameId) { $this->_returnAjaxJson(array('status' => 0, 'info' => 'error game_id', 'data' => null)); } $serverMarking = trim($_REQUEST['server_marking']); if (empty($serverMarking)) { $this->_returnAjaxJson(array('status' => 0, 'info' => 'server_marking empty', 'data' => null)); } $this->_modelGameSerList = $this->_getGlobalData('Model_GameSerList', 'object'); $gameServerList = $this->_modelGameSerList->findByMarking($gameId, $serverMarking); if (!$gameServerList) { //未找到服务器 $this->_returnAjaxJson(array('status' => 0, 'info' => 'game server non-existent', 'data' => null)); } $status = intval($_REQUEST['status']); $this->_loadCore('Help_SqlSearch'); //载入sql工具 $this->_modelWorkOrder = $this->_getGlobalData('Model_WorkOrder', 'object'); $helpSqlSearch = new Help_SqlSearch(); $helpSqlSearch->set_tableName($this->_modelWorkOrder->tName()); $helpSqlSearch->set_field('Id'); //指定玩家 $helpSqlSearch->set_conditions(key($userInfo) . "='" . current($userInfo) . "'"); //来自游戏的工单 $helpSqlSearch->set_conditions('source=2'); //来自哪个游戏 $helpSqlSearch->set_conditions("game_type={$gameId}"); //确定某个服务器 $helpSqlSearch->set_conditions("game_server_id={$gameServerList['Id']}"); //处理状态,0:待受理(包括:1未受理,2受理中),3:已答复 if ($status != -1) { if ($status == 3) { $helpSqlSearch->set_conditions('status=3'); } else { $helpSqlSearch->set_conditions('status>=1'); $helpSqlSearch->set_conditions('status<=2'); } } $sql = $helpSqlSearch->createSql(); $workOrderId = $this->_modelWorkOrder->select($sql); $isOk = false; if ($workOrderId) { $workOrderId = Model::getTtwoArrConvertOneArr($workOrderId, 'Id', 'Id'); //增加每个工单的删除日志 $this->_modelOrderLog = $this->_getGlobalData('Model_OrderLog', 'object'); foreach ($workOrderId as $id) { $this->_modelOrderLog->addLog(array('Id' => $id), Model_OrderLog::DEL); } //更改工单删除状态 if (count($workOrderId) == 1) { $workOrderId = array_shift($workOrderId); $isOk = $this->_modelWorkOrder->update(array('status' => 4), "Id={$workOrderId}"); } else { $isOk = $this->_modelWorkOrder->update(array('status' => 4), "Id in (" . implode(',', $workOrderId) . ")"); } } if ($isOk) { //是否删除成功 $this->_utilWorkOrder = $this->_getGlobalData('Util_WorkOrder', 'object'); $orderClass = $this->_utilWorkOrder->getOrderManage(); $orderClass->delOrder($workOrderId); $this->_returnAjaxJson(array('status' => 1, 'info' => 'InterfaceWorkOrder_DelAll', 'data' => null)); } elseif (empty($workOrderId)) { $this->_returnAjaxJson(array('status' => 1, 'info' => 'InterfaceWorkOrder_DelAll', 'data' => null)); } else { $this->_returnAjaxJson(array('status' => 0, 'info' => 'unknow error', 'data' => null)); } }
private function _saveSource4() { $orderArr = array(); $orderArr['game_type'] = intval($_POST['game_id']); $orderArr['is_vip'] = intval($_GET['is_vip']); $orderArr['user_account'] = $_POST['user_account'] ? $_POST['user_account'] : 0; $orderArr['user_nickname'] = trim($_POST['user_nickname']); $orderArr['money'] = intval($_POST['money_total']); $orderArr['source'] = intval(4); //工单来源 $orderArr['title'] = strip_tags($_POST['title']); $orderArr['question_type'] = intval($_POST['question_type']); $orderArr['question_num'] = 1; $orderArr['create_time'] = CURRENT_TIME; $orderArr['game_user_id'] = trim($_POST['user_id']); if ($_FILES['image']) { $updateInfo = $this->_upload(); //如果有上传图片就上传文件 } $serverMarking = trim($_POST['server_marking']); $gameServerList = $this->_modelGameSerList->findByMarking($_POST['game_id'], $serverMarking, $_POST['server_name']); if (!$gameServerList) { //未找到服务器 $this->_utilMsg->showMsg("game server non-existent", 1); // $this->_returnAjaxJson ( array ('status' => 0, 'info' => 'game server non-existent', 'data' => null ) ); } $this->_modelGameOperator = $this->_getGlobalData('Model_GameOperator', 'object'); $gameOperatorIndex = $this->_modelGameOperator->findByGidOId($_POST['game_id'], $gameServerList['operator_id']); //找到此运营商的详细 资料. if (!$gameOperatorIndex) { //未找到游戏与运营商的索引 $this->_utilMsg->showMsg("game server or operator non-existent", 1); // $this->_returnAjaxJson ( array ('status' => 0, 'info' => 'game server or operator non-existent', 'data' => null ) ); } //vip等级,如果从游戏中有传$_POST['vip_level']过来,就使用$_POST['vip_level'],否则使用配置值 $orderArr['vip_level'] = isset($_REQUEST['vip']) ? intval($_REQUEST['vip']) : $this->_modelGameOperator->getVipLevel($gameOperatorIndex['vip_setup']['vip_pay'], $_POST['money_total']); $orderArr['vip_level'] = min(6, $orderArr['vip_level']); $orderArr['timeout'] = $this->_modelGameOperator->getTimeOut($gameOperatorIndex['vip_setup']['vip_timeout'], $orderArr['vip_level']); $orderArr['timeout'] *= 60; //换成秒 $orderArr['is_verify'] = 0; $orderArr['operator_id'] = $gameServerList['operator_id']; $orderArr['game_server_id'] = $gameServerList['Id']; $orderArr['is_read'] = 0; if ($gameServerList['room_id']) { $orderArr['room_id'] = $gameServerList['room_id']; } if (!$this->_modelWorkOrder->add($orderArr)) { //创建表单失败 $this->_returnAjaxJson(array('status' => 0, 'info' => 'Failure to create order', 'data' => null)); } $workOrderId = $this->_modelWorkOrder->returnLastInsertId(); //获取工单id #------追加日志------# $this->_modelOrderLog = $this->_getGlobalData('Model_OrderLog', 'object'); $this->_modelOrderLog->addLog(array('game_type_id' => $orderArr['game_type'], 'operator_id' => $orderArr['operator_id'], 'server_id' => $orderArr['game_server_id'], 'Id' => $workOrderId), Model_OrderLog::ASK); #------追加日志------# #------增加新的工单到队列------# if ($orderArr['room_id']) { $addOrder = array('Id' => $workOrderId, 'vip_level' => $orderArr['vip_level'], 'room_id' => $orderArr['room_id'], 'game_type_id' => $orderArr['game_type'], 'operator_id' => $orderArr['operator_id']); $this->_utilWorkOrder = $this->_getGlobalData('Util_WorkOrder', 'object'); $orderManageClass = $this->_utilWorkOrder->getOrderManage(); $orderManageClass->addOrder($addOrder); $orderManageClass = null; } #------增加新的工单到队列------# $orderDetail = array(); $orderDetail['form_detail'] = array(); $orderDetail['user_data'] = array('user_id' => $_POST['user_id'], 'user_account' => $_POST['user_account'], 'user_nickname' => $_POST['user_nickname'], 'money_total' => isset($_POST['money_total']) ? $_POST['money_total'] : -1, 'money_month' => isset($_POST['money_month']) ? $_POST['money_month'] : -1, 'register_date' => !$_POST['register_date'] || $_POST['register_date'] == 'null' ? null : $_POST['register_date'], 'ip' => $_POST['ip']); //钻类型 if (isset($_POST['flatType'])) { $orderDetail['ext']['flatType']['desc'] = '钻类型'; switch ($_POST['flatType']) { case '1': $orderDetail['ext']['flatType']['value'] = '<font color="#FF9900">黄钻</font>'; break; case '10': $orderDetail['ext']['flatType']['value'] = '<font color="#0000FF">蓝钻</font>'; break; default: $orderDetail['ext']['flatType']['value'] = '<font color="#999999">无</font>'; } } //钻等级 if (isset($_POST['diamondLevel'])) { $orderDetail['ext']['diamondLevel'] = array('desc' => '钻等级', 'value' => $_POST['diamondLevel']); } //是否年费黄钻 if (isset($_POST['yearDiamond'])) { $orderDetail['ext']['yearDiamond'] = array('desc' => '是否年费', 'value' => $_POST['yearDiamond'] ? '是' : '否'); } //游戏VIP等级 if (isset($_POST['vip'])) { $orderDetail['ext']['vip'] = array('desc' => '游戏VIP等级', 'value' => $_POST['vip']); } $orderDetail = serialize($orderDetail); $this->_modelWorkOrderDetail = $this->_getGlobalData('Model_WorkOrderDetail', 'object'); $this->_modelWorkOrderDetail->add(array('work_order_id' => $workOrderId, 'content' => $orderDetail)); #-----插入对话表------# $retArr = array('order_id' => $workOrderId); $this->_modelWorkOrderQa = $this->_getGlobalData('Model_WorkOrderQa', 'object'); $content = strip_tags($_POST['content']); $content = str_replace(array('\\r\\n', '\\r'), chr(10), $content); $orderDialog = array('user_id' => 0, 'game_type_id' => $_POST['game_id'], 'operator_id' => $orderArr['operator_id'], 'work_order_id' => $workOrderId, 'qa' => '0', 'content' => $content, 'create_time' => CURRENT_TIME); if ($updateInfo && is_array($updateInfo)) { $_imgArr = array(); $i = ''; foreach ($updateInfo as $img) { $retArr["image_path{$i}"] = $img['web_path']; $i++; $_imgArr[] = str_replace(__ROOT__, '', $img["web_path"]); } $orderDialog['image'] = json_encode($_imgArr); } $this->_modelWorkOrderQa->add($orderDialog); //$orderArr["room_id"] if ($orderArr['room_id'] && $gameServerList['server_url'] && $_POST['user_id']) { $this->_autoreply($orderArr, $gameServerList['server_url']); } #-----插入对话表------# eaccelerator_rm('question_' . $orderArr['user_account']); eaccelerator_put('question_' . $orderArr['user_account'], md5($orderArr['user_account'] . $orderArr['title']), 60); $this->_utilMsg->showMsg("提交成功", 1); }