Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 
 
 

126 lignes
3.9 KiB

<?php
namespace Api\Controller;
use Think\Controller;
class AdminUserController extends BaseController {
//获取所有用户列表
public function getList(){
$login_user = $this->checkLogin();
$this->checkAdmin();
$page = I("page/d");
$count = I("count/d");
$username = I("username");
$where = " 1 = 1 ";
if ($username) {
$username = \SQLite3::escapeString($username);
$where .= " and username like '%{$username}%' ";
}
$Users = D("User")->where($where)->page($page ,$count)->order(" uid desc ")->select();
$total = D("User")->where($where)->count();
$return = array() ;
$return['total'] = (int)$total ;
if ($Users) {
foreach ($Users as $key => &$value) {
$value['reg_time'] = date("Y-m-d H:i:s" , $value['reg_time']);
if($value['last_login_time']){
$value['last_login_time'] = date("Y-m-d H:i:s" , $value['last_login_time']);
}else{
$value['last_login_time'] = '';
}
}
$return['users'] = $Users ;
$this->sendResult($return);
}else{
$this->sendResult(array());
}
}
//删除用户
public function deleteUser(){
$login_user = $this->checkLogin();
$this->checkAdmin();
$uid = I("uid/d");
if (D("Item")->where("uid = '$uid' and is_del = 0 ")->find()) {
$this->sendError(10101,"该用户名下还有项目,不允许删除。请先将其项目删除或者重新分配/转让");
return ;
}
$return = D("User")->delete_user($uid);
if (!$return) {
$this->sendError(10101);
}else{
$this->sendResult($return);
}
}
//修改密码
public function changePassword(){
$login_user = $this->checkLogin();
$this->checkAdmin();
$uid = I("uid/d");
$new_password = I("new_password");
$return = D("User")->updatePwd($uid, $new_password);
if (!$return) {
$this->sendError(10101);
}else{
$this->sendResult($return);
}
}
//新增用户
public function addUser(){
$login_user = $this->checkLogin();
$this->checkAdmin();
$username = I("username");
$password = I("password");
$uid = I("uid");
$name = I("name");
if($uid){
if($password){
D("User")->updatePwd($uid, $password);
}
if($name){
D("User")->where(" uid = '$uid' ")->save(array("name"=>$name));
}
$this->sendResult(array());
}else{
if (D("User")->isExist($username)) {
$this->sendError(10101,L('username_exists'));
return ;
}
$new_uid = D("User")->register($username,$password);
if (!$new_uid) {
$this->sendError(10101);
}else{
if($name){
D("User")->where(" uid = '$new_uid' ")->save(array("name"=>$name));
}
$this->sendResult($return);
}
}
}
//检测showdoc版本更新
public function checkUpdate(){
//获取当前版本
$text = file_get_contents("../composer.json");
$composer = json_decode($text, true);
$version = $composer['version'] ;
$url = "https://www.showdoc.cc/server/api/open/checkUpdate";
$ch = curl_init();
$timeout = 2;
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
curl_setopt ( $ch, CURLOPT_POST, true );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, "version={$version}" );
curl_setopt($ch,CURLOPT_URL,$url);
$sContent = curl_exec($ch);
curl_close($ch);
echo $sContent ;
}
}