public function act() { // 添加配置 if (!$this->check_param('packageid, configtype, configkeyword')) { V('Json.Base')->init(Const_Code::CONFIG_PARAM_ERROR, '配置传递参数错误'); return; } $package_id = (int) Util_Server_Request::get_param('packageid', 'post'); $config_type = trim(Util_Server_Request::get_param('configtype', 'post')); $config_keyword = trim(Util_Server_Request::get_param('configkeyword', 'post')); if (!preg_match('/^\\w+$/', $config_keyword)) { V('Json.Base')->init(Const_Code::CONFIG_FORMAT_ERROR, '配置关键字格式错误'); return; } if (M('Conf')->check_keyword_exists($package_id, $config_type, $config_keyword)) { V('Json.Base')->init(Const_Code::ADD_CONFIG_EXISTS, '配置关键字重复'); return; } M('Conf')->insert(); $config = M('Conf')->get_by_keyword($package_id, $config_type, $config_keyword); $config_id = (int) $config['id']; if (!$config_id) { V('Json.Base')->init(Const_Code::ADD_CONFIG_FAIL, '配置添加失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, $config_id); }
public function act() { // 更新用户 if (!$this->check_param('userid, username, userrole')) { V('Json.Base')->init(Const_Code::USER_PARAM_ERROR, '用户传递参数错误'); return; } $user_id = (int) Util_Server_Request::get_param('userid', 'post'); $user_name = trim(Util_Server_Request::get_param('username', 'post')); $user_password = trim(Util_Server_Request::get_param('userpassword', 'post')); if (!preg_match('/^\\w+$/', $user_name)) { V('Json.Base')->init(Const_Code::USER_FORMAT_ERROR, '用户名称格式错误'); return; } if (M('User')->check_name_update($user_id, $user_name)) { V('Json.Base')->init(Const_Code::UPDATE_USER_EXISTS, '用户名称重复'); return; } if ($user_password) { $_POST['userpassword'] = md5($user_name . $user_password); } else { unset($_POST['userpassword']); } unset($_POST['username']); $result = M('User')->where('id=' . $user_id)->update(); if (is_null($result)) { V('Json.Base')->init(Const_Code::UPDATE_USER_FAIL, '用户更新失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '用户更新成功'); }
public function act() { // 添加用例 if (!$this->check_param('itemid, moduleid, casename, sendtype')) { V('Json.Base')->init(Const_Code::CASE_PARAM_ERROR, '用例传递参数错误'); return; } $item_id = (int) Util_Server_Request::get_param('itemid', 'post'); $case_name = trim(Util_Server_Request::get_param('casename', 'post')); if (M('Case')->check_name_exists($item_id, $case_name)) { V('Json.Base')->init(Const_Code::ADD_CASE_EXISTS, '用例名称重复'); return; } M('Case')->insert(); $case = M('Case')->get_by_name($item_id, $case_name); $case_id = (int) $case['id']; if (!$case_id) { V('Json.Base')->init(Const_Code::ADD_CASE_FAIL, '用例添加失败'); return; } $item = M('Item')->get_by_id($item_id); $_POST['caseid'] = $case_id; $_POST['stepname'] = '调用: ' . $item['name'] . '->' . $case_name; $_POST['steptype'] = '接口调用'; $_POST['stepcommand'] = 'self'; $_POST['stepvalue'] = $case_id; $_POST['stepsequence'] = 1; M('Step')->insert(); V('Json.Base')->init(Const_Code::SUCCESS, $case_id); }
public function act() { // 更新用户密码 if (!$this->check_param('oldpassword, newpassword')) { V('Json.Base')->init(Const_Code::USER_PARAM_ERROR, '用户传递参数错误'); return; } $old_password = trim(Util_Server_Request::get_param('oldpassword', 'post')); $new_password = trim(Util_Server_Request::get_param('newpassword', 'post')); $user_id = (int) $_COOKIE['userid']; $user_name = $_COOKIE['username']; $old_password = md5($user_name . $old_password); $new_password = md5($user_name . $new_password); $user = M('User')->get_by_id($user_id); if ($old_password !== $user['passwd']) { V('Json.Base')->init(Const_Code::USER_CHECK_ERROR, '用户密码校验失败'); return; } $_POST['userpassword'] = $new_password; $result = M('User')->where('id=' . $user_id)->update(); if (is_null($result)) { V('Json.Base')->init(Const_Code::UPDATE_USER_FAIL, '用户密码更新失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '用户密码更新成功'); }
public function act() { // 获取任务列表 $page = (int) Util_Server_Request::get_param('page', 'post'); $size = (int) Util_Server_Request::get_param('size', 'post'); $history_size = (int) Util_Server_Request::get_param('historysize', 'post'); if ($page < 1) { $page = 1; } if ($size < 1) { $size = 20; } if ($history_size) { $history_size = 3; } $task_list = M('Task')->get_all($page, $size, $history_size); foreach ($task_list as &$task) { $package = M('Package')->get_by_id((int) $task['package_id']); $task['packagename'] = $package['name']; $module = M('Module')->get_by_id((int) $task['module_id']); $task['modulename'] = $module['name']; $job = M('Job')->get_by_task((int) $task['id']); $task['running'] = $job ? 1 : 0; $task['total'] = $job ? (int) $job['total'] : 0; $task['current'] = $job ? (int) $job['current'] : 0; $task['history'] = M('History')->get_by_task((int) $task['id'], 1, $history_size); } echo json_encode($task_list); }
public function act() { // 移除作业 $id = (int) Util_Server_Request::get_param('id', 'post'); M('Job')->remove_by_task($id); echo "done"; }
public function act() { // 更新配置 if (!$this->check_param('configid, packageid, configtype, configkeyword')) { V('Json.Base')->init(Const_Code::CONFIG_PARAM_ERROR, '配置传递参数错误'); return; } $config_id = (int) Util_Server_Request::get_param('configid', 'post'); $package_id = (int) Util_Server_Request::get_param('packageid', 'post'); $config_type = trim(Util_Server_Request::get_param('configtype', 'post')); $config_keyword = trim(Util_Server_Request::get_param('configkeyword', 'post')); if (!preg_match('/^\\w+$/', $config_keyword)) { V('Json.Base')->init(Const_Code::CONFIG_FORMAT_ERROR, '配置关键字格式错误'); return; } if (M('Conf')->check_keyword_update($config_id, $package_id, $config_type, $config_keyword)) { V('Json.Base')->init(Const_Code::UPDATE_CONFIG_EXISTS, '配置关键字重复'); return; } $result = M('Conf')->where('id=' . $config_id)->update(); if (is_null($result)) { V('Json.Base')->init(Const_Code::UPDATE_CONFIG_FAIL, '配置更新失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '配置更新成功'); }
public function act() { // 添加作业 if (!$this->check_param('taskid')) { V('Json.Base')->init(Const_Code::JOB_PARAM_ERROR, '作业传递参数错误'); return; } $task_id = (int) Util_Server_Request::get_param('taskid', 'post'); if (M('Job')->check_task_exists($task_id)) { V('Json.Base')->init(Const_Code::ADD_JOB_EXISTS, '作业已在队列'); return; } $task = M('Task')->get_by_id($task_id); if (!$task) { V('Json.Base')->init(Const_Code::ADD_JOB_FAIL, '作业添加失败'); return; } M('Job')->insert(); $job = M('Job')->get_by_task($task_id); $job_id = (int) $job['task_id']; if (!$job_id) { V('Json.Base')->init(Const_Code::ADD_JOB_FAIL, '作业添加失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, $job_id); }
public function act() { // 获取测试详情 $result_id = (int) Util_Server_Request::get_param('resultid', 'post'); $result = M('Result')->get_by_id($result_id); echo $result['content']; }
public function act() { // 添加用户 if (!$this->check_param('username, userrole')) { V('Json.Base')->init(Const_Code::USER_PARAM_ERROR, '用户传递参数错误'); return; } $user_name = trim(Util_Server_Request::get_param('username', 'post')); $user_password = trim(Util_Server_Request::get_param('userpassword', 'post')); if (!preg_match('/^\\w+$/', $user_name)) { V('Json.Base')->init(Const_Code::USER_FORMAT_ERROR, '用户名称格式错误'); return; } if (M('User')->check_name_exists($user_name)) { V('Json.Base')->init(Const_Code::ADD_USER_EXISTS, '用户名称重复'); return; } $_POST['userpassword'] = $user_password ? md5($user_name . $user_password) : md5($user_name . '888888'); M('User')->insert(); $user = M('User')->get_by_name($user_name); $user_id = (int) $user['id']; if (!$user_id) { V('Json.Base')->init(Const_Code::ADD_USER_FAIL, '用户添加失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, $user_id); }
public function act() { // 登录流程 if (!$this->check_param('username, password, issave')) { V('Json.Base')->init(Const_Code::LOGIN_PARAM_ERROR, '登录传递参数错误'); return; } $username = trim(Util_Server_Request::get_param('username', 'post')); $password = trim(Util_Server_Request::get_param('password', 'post')); $is_save = (int) Util_Server_Request::get_param('issave', 'post'); $time = time(); $seckey = lb_read_system('seckey'); $user_id = (int) M('User')->check_password($username, md5($username . $password)); if (!$user_id) { V('Json.Base')->init(Const_Code::LOGIN_FAIL, '帐号验证失败'); return; } $user = M('User')->get_by_id($user_id); $expire_time = $is_save ? 86400 * 30 : 0; Util_Client_Cookie::set_cookie('userid', $user_id, $expire_time); Util_Client_Cookie::set_cookie('username', $user['name'], $expire_time); Util_Client_Cookie::set_cookie('userrole', $user['role'], $expire_time); Util_Client_Cookie::set_cookie('time', $time, $expire_time); Util_Client_Cookie::set_cookie('secstr', md5($user_id . '$' . $user['name'] . '$' . $user['role'] . '$' . $time . '$' . $seckey), $expire_time); V('Json.Base')->init(Const_Code::SUCCESS, '帐号验证通过'); }
public function act() { // 获取测试步骤 $history_id = (int) Util_Server_Request::get_param('historyid', 'post'); $item_id = (int) Util_Server_Request::get_param('itemid', 'post'); $case_id = (int) Util_Server_Request::get_param('caseid', 'post'); echo json_encode(M('Result')->get_by_case($history_id, $item_id, $case_id)); }
public function act() { // 开始首页 $id = (int) Util_Server_Request::get_param('reload', 'get'); $view = V('Html.Start.Index'); $view->add_data('reload_id', $id); $view->init('Start.Index'); }
public function act() { // 计算模块接口用例数 $module_id = (int) Util_Server_Request::get_param('moduleid', 'post'); $item_num = M('Item')->get_count_by_module($module_id); $case_num = M('Case')->get_count_by_module($module_id); echo json_encode(array('item_num' => $item_num, 'case_num' => $case_num)); }
protected function check_cookie() { $user_id = Util_Server_Request::get_cookie('userid'); $user_name = Util_Server_Request::get_cookie('username'); $user_role = Util_Server_Request::get_cookie('userrole'); $time = Util_Server_Request::get_cookie('time'); $secstr = Util_Server_Request::get_cookie('secstr'); $seckey = lb_read_system('seckey'); return $secstr === md5($user_id . '$' . $user_name . '$' . $user_role . '$' . $time . '$' . $seckey); }
public function get_cookie($file = '') { $saved_file = Util_Server_Request::get_cookie('cookiefile'); if ($saved_file) { $file = $saved_file; } else { $file = $file ? $file : 'local-' . microtime(); Util_Client_Cookie::set_cookie('cookiefile', $file, time() + 90 * 24 * 3600); } return APP_PATH . '/tmp/cookie/' . $file; }
private function add_result($content) { // 创建测试结果 $temp = (int) Util_Server_Request::get_param('temp', 'post'); if ($temp) { return; } $_POST['stepid'] = 1; $_POST['steptype'] = '接口调用'; $_POST['resultcontent'] = $content; M('Result')->insert(); }
public function act() { // 获取任务接口 $task_id = (int) Util_Server_Request::get_param('taskid', 'post'); $module_id = (int) Util_Server_Request::get_param('moduleid', 'post'); if ($module_id) { $item_list = M('Item')->get_by_module($module_id, 0, 0); } else { $item_list = M('Item')->get_all(0, 0); } M('Job')->set_total($task_id, count($item_list)); V('Xml.Base')->init('item', $item_list); }
public function act() { // 获取任务步骤 $case_id = (int) Util_Server_Request::get_param('caseid', 'post'); $case = M('Case')->get_by_id($case_id); if (!$case) { V('Xml.Base')->init('step', array()); return; } $_POST['resultname'] = $case['name']; M('Result')->insert(); V('Xml.Base')->init('step', M('Step')->get_by_case($case_id)); }
public function act() { // 获取用户列表 $page = (int) Util_Server_Request::get_param('page', 'post'); $size = (int) Util_Server_Request::get_param('size', 'post'); if ($page < 1) { $page = 1; } if ($size < 1) { $size = 20; } echo json_encode(M('User')->get_all($page, $size)); }
public function act() { // 请求用例执行 $send_type = trim(Util_Server_Request::get_param('sendtype', 'post')); $item_url = trim(Util_Server_Request::get_param('itemurl', 'post')); $request_param = trim(Util_Server_Request::get_param('requestparam', 'post')); $request_header = trim(Util_Server_Request::get_param('requestheader', 'post')); $request_cookie = trim(Util_Server_Request::get_param('requestcookie', 'post')); $request_header = json_decode($request_header, true); if (is_null($request_header) || !is_array($request_header)) { $request_header = array(); } echo $this->set_curl($send_type, $item_url, $request_param, $request_header, $request_cookie, 1); }
public function act() { // 添加步骤 if (!$this->check_param('caseid, stepname, steptype, stepvalue, stepsequence')) { V('Json.Base')->init(Const_Code::STEP_PARAM_ERROR, '步骤传递参数错误'); return; } $case_id = (int) Util_Server_Request::get_param('caseid', 'post'); $result = M('Step')->insert(); if (is_null($result)) { V('Json.Base')->init(Const_Code::ADD_STEP_FAIL, '步骤添加失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '步骤添加成功'); }
public function act() { // 获取配置列表 $package_id = (int) Util_Server_Request::get_param('packageid', 'post'); $type = trim(Util_Server_Request::get_param('type', 'post')); $page = (int) Util_Server_Request::get_param('page', 'post'); $size = (int) Util_Server_Request::get_param('size', 'post'); if ($page < 1) { $page = 1; } if ($size < 1) { $size = 10; } echo json_encode(M('Conf')->get_by_package($package_id, $type, $page, $size)); }
public function act() { // 删除用例 if (!$this->check_param('caseid')) { V('Json.Base')->init(Const_Code::CASE_PARAM_ERROR, '用例传递参数错误'); return; } $case_id = (int) Util_Server_Request::get_param('caseid', 'post'); M('Case')->remove($case_id); $case = M('Case')->get_by_id($case_id); if ($case) { V('Json.Base')->init(Const_Code::DELETE_CASE_FAIL, '用例删除失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '用例删除成功'); }
public function act() { // 删除作业 if (!$this->check_param('taskid')) { V('Json.Base')->init(Const_Code::JOB_PARAM_ERROR, '作业传递参数错误'); return; } $task_id = (int) Util_Server_Request::get_param('taskid', 'post'); M('Job')->remove_by_task($task_id); $job = M('Job')->get_by_task($task_id); if ($job) { V('Json.Base')->init(Const_Code::DELETE_JOB_FAIL, '作业删除失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '作业删除成功'); }
public function act() { // 删除任务 if (!$this->check_param('taskid')) { V('Json.Base')->init(Const_Code::TASK_PARAM_ERROR, '任务传递参数错误'); return; } $task_id = (int) Util_Server_Request::get_param('taskid', 'post'); M('Task')->remove($task_id); $task = M('Task')->get_by_id($task_id); if ($task) { V('Json.Base')->init(Const_Code::DELETE_TASK_FAIL, '任务删除失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '任务删除成功'); }
public function act() { // 保存用例 if (!$this->check_param('itemname, casename, itemurl, sendtype')) { V('Json.Base')->init(Const_Code::CASE_PARAM_ERROR, '用例传递参数错误'); return; } $item_name = trim(Util_Server_Request::get_param('itemname', 'post')); $case_name = trim(Util_Server_Request::get_param('casename', 'post')); $item_id = (int) M('Item')->check_name_exists($item_name); if ($item_id) { $this->update_item($item_id, $item_name, $case_name); } else { $this->new_item($item_name, $case_name); } }
public function act() { // 获取任务用例 $item_id = (int) Util_Server_Request::get_param('itemid', 'post'); $task_id = (int) Util_Server_Request::get_param('taskid', 'post'); $level = (int) Util_Server_Request::get_param('level', 'post'); M('Job')->increase_current($task_id); $item = M('Item')->get_by_id($item_id); if (!$item) { V('Xml.Base')->init('case', array()); return; } $_POST['resultname'] = $item['name']; M('Result')->insert(); V('Xml.Base')->init('case', M('Case')->get_by_level($item_id, $level)); }
public function act() { // 删除配置 if (!$this->check_param('configid')) { V('Json.Base')->init(Const_Code::CONFIG_PARAM_ERROR, '配置传递参数错误'); return; } $config_id = (int) Util_Server_Request::get_param('configid', 'post'); M('Conf')->remove($config_id); $config = M('Conf')->get_by_id($config_id); if ($config) { V('Json.Base')->init(Const_Code::DELETE_CONFIG_FAIL, '配置删除失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '配置删除成功'); }
public function act() { // 删除用户 if (!$this->check_param('userid')) { V('Json.Base')->init(Const_Code::USER_PARAM_ERROR, '用户传递参数错误'); return; } $user_id = (int) Util_Server_Request::get_param('userid', 'post'); M('User')->remove($user_id); $user = M('User')->get_by_id($user_id); if (!$user) { V('Json.Base')->init(Const_Code::DELETE_USER_FAIL, '用户删除失败'); return; } V('Json.Base')->init(Const_Code::SUCCESS, '用户删除成功'); }