You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
97 lines
2.8 KiB
97 lines
2.8 KiB
<?php
|
|
namespace app\api\controller\v1;
|
|
|
|
use app\api\ApiController;
|
|
use think\facade\Db;
|
|
|
|
use app\api\validate\User as UserValidate;
|
|
use think\exception\ValidateException;
|
|
|
|
|
|
class User extends ApiController
|
|
{
|
|
public function list(){
|
|
|
|
|
|
}
|
|
|
|
public function add(){
|
|
|
|
//參數檢查
|
|
try {
|
|
validate(UserValidate::class)->check(input());
|
|
} catch (ValidateException $e) {
|
|
// 驗證失敗 輸出錯誤信息
|
|
|
|
// dump($e->getError());
|
|
return $this->Error($e->getError(),501,'參數錯誤');
|
|
}
|
|
|
|
$prefix = getPrefixByAppId(input('appid'));
|
|
$data['user_id']=$prefix.input('user_id');
|
|
$data['real_name']=input('name');
|
|
$data['level']=input('level')?input('level'):0;
|
|
$data['overdue_time']=input('overdue_time')?input('overdue_time'):(time()+(60*60*24*7));
|
|
$data['cus_card'] = '';
|
|
$data['create_time'] = date('Y-m-d H:i:s');
|
|
|
|
//檢查 User ID
|
|
$is_exist = Db::name('user')
|
|
->where('user_id',$data['user_id'])
|
|
->count();
|
|
|
|
if($is_exist){
|
|
return $this->Error('使用者帳號己存在',502,'請求失敗');
|
|
}
|
|
|
|
|
|
try{
|
|
//產生暫時編號
|
|
$data['uniqid']='tg'.genUniqid();
|
|
|
|
$id = Db::name('user')
|
|
->insertGetId($data);
|
|
|
|
$refer_code = encodeRefer($id);
|
|
|
|
$result = Db::name('user')
|
|
->where('id',$id)
|
|
->update(['code'=>$refer_code]);
|
|
|
|
$qrcodeUrl = genQrCode('https://'.$_SERVER['HTTP_HOST'].'/home/?aid='.$agent['prefix'],$data['user_id'],'refer');
|
|
|
|
$nfcUrl = genQrCode('https://'.$_SERVER['HTTP_HOST'].'/card?userid='.$data['user_id'],$data['user_id'],'nfc');
|
|
|
|
return $this->Success($data['uniqid']);
|
|
|
|
}catch(\Exception $e){
|
|
return $this->Error('系統錯誤',500,'新增失敗');
|
|
}
|
|
|
|
}
|
|
|
|
public function setLevel(){
|
|
//參數檢查
|
|
try {
|
|
validate(\app\api\validate\UserLevel::class)->check(input());
|
|
} catch (ValidateException $e) {
|
|
return $this->Error($e->getError(),501,'參數錯誤');
|
|
}
|
|
|
|
$prefix = getPrefixByAppId(input('appid'));
|
|
$user_id=$prefix.input('user_id');
|
|
$level=input('level')?input('level'):0;
|
|
$overdue_time=input('overdue_time')?input('overdue_time'):(time()+(60*60*24*365));
|
|
|
|
try{
|
|
$result=Db::name('user')
|
|
->where('user_id',$user_id)
|
|
->update(['level'=>$level,'overdue_time'=>$overdue_time]);
|
|
}catch(\Exception $e){
|
|
return $this->Error('系統錯誤',500,'新增失敗');
|
|
}
|
|
|
|
return $this->Success('更新成功');
|
|
}
|
|
}
|