function actionLogin() { $jArr = array('status' => 0, 'message' => '非法请求'); $time_before = CTool::getUTime(); $postArr = $this->posts('loginname,password'); $loginname = $postArr['loginname']; if ($this->isPost()) { $MUser = $this->LoadApiModelMedical('user'); $exArr = array('join_pass' => true); if (CUtil::IsIdcard($loginname)) { $whArr = array('idcard' => $loginname); } else { $whArr = array('mobile' => $loginname); } $user = $MUser->getUser(null, $whArr, $exArr); // print_r($user); if ($user && isset($user['user_pass'])) { $pass =& $user['user_pass']; if ($postArr['password'] == $pass['password']) { // print_r(json_decode($user['privileges'],true)); $role = $user['role'] = intval($user['role']); $userid = $user['id']; //生成token------------------ $lastime = date("Y-m-d H:i:s"); $retArr = $MUser->updateUser($userid, array('lastime' => $lastime)); $token = $MUser->makeToken($userid, $lastime); // $MUser->verifyToken($token); //生成token---------------end $jArr['status'] = 1; $jArr['token'] = $token; $this->response(array('token' => $token, 'role' => $role, 'userid' => $userid)); } else { $jArr['message'] = '密码不正确'; } unset($pass['password']); } else { $jArr['message'] = '用户不存在'; } } $time_after = CTool::getUTime(); $elapsed = sprintf("%.4f", $time_after - $time_before); $jArr['elapsed'] = $elapsed; // print_r($jArr); // $this->output($jArr); $this->error($jArr['message']); }
function actionImport() { $userid = $this->userid; $MUser = $this->LoadApiModelMedical('user'); $user = $MUser->getUser($userid); if ($user && $this->post('filexls')) { $time_before = CTool::getUTime(); $filexls = $this->post('filexls'); $xls = new CExcel(); $uploadLoc = $this->getLoc('_data'); $filexls = $uploadLoc . $filexls; $sheetArr = $xls->getData($filexls); // print_r($sheetArr);exit; // exit; /* excel中的数据分为三段: 1, 基本信息 2, 规格信息 3, 详细信息 其中2,3统统存放到detail中 */ if ($sheetArr) { foreach ($sheetArr as $sheet => $dataArr) { // print_r($dataArr);exit; if ($dataArr) { //---------------------------------------------------- $fields = $dataArr[1]; //第1行为字段信息 // print_r($fields);exit; $pos = array_search('-', array_values($fields)); //第一个'-'的位置 // print_r($fields); $bases = $fields; //基本信息(arr) $specs = array_slice($fields, $pos + 1); //规格信息(arr) // $this->dump($fields); //---------------------------------------------------- //---------------------------------------------------- $xvalArr = array_slice($dataArr, 1); $valueArr = $partionArr = array(); $restype = $this->post('restype'); // print_r($dataArr);exit; foreach ($xvalArr as $k => $xrow) { if (empty($xrow['A']) && !isset($last_row)) { break; } //数据有问题 $row = array(); // if(empty($xrow['A']))continue; //第一栏为空 $attnameArr = $attvalArr = array(); //属性名和属性值 foreach ($bases as $c => $field) { //c为excel中的列名(A,B...) //field为excel中的第一行的值(业务上的字段) 产品品牌 $field = trim($field); $xval = trim($xrow[$c]); $row['hospitalid'] = $user['hospitalid']; if ('身份证号' == $field) { $row['idcard'] = trim($xval); } elseif (false !== strpos($field, '手机号')) { $row['mobile'] = floatval($xval); } elseif (false !== strpos($field, '姓名')) { $row['username'] = trim($xval); } elseif (false !== strpos($field, '年龄')) { //针对机械 $row['age'] = trim($xval); } elseif (false !== strpos($field, '角色id')) { $row['role'] = intval($xval); } elseif (false !== strpos($field, '所属医院')) { /*$title = trim($xval); $MHospital = $this->LoadApiModelMedical('hospital'); $hospital = $MHospital->getHospital(null,array('title'=>$title)); if($hospital){ $row['hospitalid'] = $hospital['id']; }*/ } elseif (false !== strpos($field, '科室')) { $row['deptname'] = trim($xval); } elseif (false !== strpos($field, '民族ID')) { $row['ethnic'] = trim($xval); } elseif (false !== strpos($field, '地址')) { $row['address'] = trim($xval); } elseif (false !== strpos($field, '电话')) { $row['home_phone'] = trim($xval); } elseif (false !== strpos($field, '住院号')) { $row['num_ill'] = trim($xval); } elseif (false !== strpos($field, '入院日期')) { $row['date_in'] = trim($xval); } elseif (false !== strpos($field, '出院日期')) { $row['date_out'] = trim($xval); } } $valueArr[] = $row; } // print_r($valueArr);exit; //---------------------------------------------------- // break; detail } break; //只读一页 } } //导入数据======================================== // print_r($valueArr); $dataArr = array(); $importinfos = array(); if ($valueArr) { $MUser = $this->LoadApiModelMedical('user'); foreach ($valueArr as $row) { if (empty($row['hospitalid']) || empty($row['idcard']) || empty($row['username'])) { $importinfos[] = array('code' => 1, 'message' => '数据不合法'); continue; } $retArr = $MUser->addUser($row); $importinfos[] = array('code' => 1 == $retArr['status'] ? 0 : 1, 'message' => $retArr['message']); } // print_r($retArr); // print_r($valueArr); // @unlink($filexls); } $time_after = CTool::getUTime(); $Elapse = sprintf("%.4f", $time_after - $time_before); $dataArr['elapsed'] = $Elapse; $dataArr['total'] = count($valueArr); $dataArr['importinfos'] = $importinfos; //end 导入数据==================================== // $jArr['data'] = $valueArr; $this->response($dataArr); } }