初始化项目:添加后端代码、ThinkPHP框架、前端资源
This commit is contained in:
@@ -0,0 +1,101 @@
|
||||
<?php
|
||||
|
||||
namespace app\api\model\app\pc;
|
||||
|
||||
use think\Model;
|
||||
/**
|
||||
* PC登录
|
||||
*/
|
||||
class Login extends Model
|
||||
{
|
||||
// 表名
|
||||
protected $name = 'app_pc_login';
|
||||
|
||||
protected $vaild_time = 120;
|
||||
|
||||
|
||||
public function getTicketState($ticket){
|
||||
$ticket = self::where([
|
||||
'uniacid'=>UNIACID,
|
||||
'ticket'=>$ticket,
|
||||
'status'=>1,
|
||||
'createtime'=>['>',time()-$this->vaild_time]
|
||||
])->find();
|
||||
|
||||
if(!$ticket){
|
||||
return false;
|
||||
}
|
||||
|
||||
return $ticket;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 检查 ticket是否可用
|
||||
* @param $ticket
|
||||
* @return void
|
||||
*/
|
||||
public function checkTicketCanUse($ticket){
|
||||
$data = self::where([
|
||||
'uniacid'=>UNIACID,
|
||||
'ticket'=>$ticket,
|
||||
'status'=>0,
|
||||
'createtime'=>['>',time()-$this->vaild_time]
|
||||
])->find();
|
||||
|
||||
if($data){
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建 ticket
|
||||
* @return mixed
|
||||
*/
|
||||
public function buildTicket(){
|
||||
$ticket = \fast\Random::alnum(10);
|
||||
|
||||
self::insert([
|
||||
'uniacid'=>UNIACID,
|
||||
'ticket'=>$ticket,
|
||||
'status'=>0,
|
||||
'createtime'=>time()
|
||||
]);
|
||||
|
||||
return $ticket;
|
||||
}
|
||||
|
||||
/**
|
||||
* 销毁 ticket
|
||||
* @param $ticket
|
||||
* @return mixed
|
||||
*/
|
||||
public function destroyTicket($ticket){
|
||||
return self::where([
|
||||
'uniacid'=>UNIACID,
|
||||
'ticket'=>$ticket,
|
||||
])->update([
|
||||
'status'=>2
|
||||
]);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 登录成功
|
||||
* @param $ticket
|
||||
* @param $userId
|
||||
* @param $token
|
||||
* @return mixed
|
||||
*/
|
||||
public function successTicket($ticket,$userId,$token){
|
||||
return self::where([
|
||||
'uniacid'=>UNIACID,
|
||||
'ticket'=>$ticket,
|
||||
])->update([
|
||||
'status'=>1,
|
||||
'user_id'=>$userId,
|
||||
'token'=>$token
|
||||
]);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
<?php
|
||||
|
||||
namespace app\api\model\app\pc;
|
||||
|
||||
use think\Model;
|
||||
/**
|
||||
* PC页面装修
|
||||
*/
|
||||
class Page extends Model
|
||||
{
|
||||
// 表名
|
||||
protected $name = 'app_pc_page';
|
||||
|
||||
|
||||
/**
|
||||
* 获取主页
|
||||
* @return false
|
||||
*/
|
||||
public function getIndexData(){
|
||||
$data = self::where([
|
||||
'is_index'=>1,
|
||||
'status'=>1
|
||||
])->find();
|
||||
|
||||
if($data){
|
||||
return $data;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取页面数据
|
||||
* @param $id
|
||||
* @return false
|
||||
*/
|
||||
public function getPageData($id){
|
||||
$where = [
|
||||
'status'=>1
|
||||
];
|
||||
if($id){
|
||||
$where['id'] = $id;
|
||||
$data = self::where($where)->find();
|
||||
if(!$data){
|
||||
$data = $this->getIndexData();
|
||||
}
|
||||
}else{
|
||||
$data = $this->getIndexData();
|
||||
}
|
||||
|
||||
if(!$data){
|
||||
return false;
|
||||
}
|
||||
|
||||
//之前的变量名疏忽写错了,暂时这样
|
||||
$data['compontents'] = $data['components'];
|
||||
$data = (new \app\common\model\page\Decorate())->parseData($data,'pc');
|
||||
$data['components'] = $data['compontents'];
|
||||
unset($data['compontents']);
|
||||
|
||||
return $data;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,91 @@
|
||||
<?php
|
||||
|
||||
namespace app\api\model\app\pc;
|
||||
|
||||
use think\Model;
|
||||
/**
|
||||
* SEO
|
||||
*/
|
||||
class Seo extends Model
|
||||
{
|
||||
|
||||
/**
|
||||
* 获取 seo meta 信息
|
||||
* @param $type
|
||||
* @param $id
|
||||
* @return void
|
||||
*/
|
||||
public function getMeta($type = null,$id = null){
|
||||
$seoConfig = \app\common\model\app\Config::getConfig('pc_seo');
|
||||
$systemConfig = \app\common\model\config\System::getConfig('system');
|
||||
|
||||
$meta = [
|
||||
'title'=>'',
|
||||
'keywords'=>'',
|
||||
'description'=>''
|
||||
];
|
||||
|
||||
if($seoConfig){
|
||||
if($type == 'page' && $seoConfig['page_tdk_status'] == 1){
|
||||
//获取页面
|
||||
$pagedata = \app\api\model\app\pc\Page::where(['id'=>$id])->field(["seo_title","seo_description","seo_keyword"])->find();
|
||||
if($pagedata){
|
||||
$meta['title'] = $pagedata['seo_title'];
|
||||
$meta['keywords'] = $pagedata['seo_keyword'];
|
||||
$meta['description'] = $pagedata['seo_description'];
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if($seoConfig['detail_tdk_status'] == 1 && $type != 'page'){
|
||||
switch ($type){
|
||||
case "goods":
|
||||
case "live":
|
||||
$goodsdata = \app\api\model\course\Course::where(['id'=>$id])->field(["name","briefing"])->find();
|
||||
if($goodsdata){
|
||||
$meta['title'] = $goodsdata['name'];
|
||||
$meta['description'] = $goodsdata['briefing'];
|
||||
}
|
||||
break;
|
||||
case "evaluation":
|
||||
$evaluationdata = \app\api\model\app\exam\Exercises::where(['id'=>$id])->field(["name"])->find();
|
||||
if($evaluationdata){
|
||||
$meta['title'] = $evaluationdata['name'];
|
||||
}
|
||||
break;
|
||||
case "search":
|
||||
$meta['title'] = $id."的搜索结果";
|
||||
break;
|
||||
case "vipcard":
|
||||
$vipcarddata = \app\api\model\app\vip\Card::where(['id'=>$id])->field(["title","subtitle"])->find();
|
||||
if($vipcarddata){
|
||||
$meta['title'] = $vipcarddata['title'];
|
||||
$meta['description'] = $vipcarddata['subtitle'];
|
||||
}
|
||||
break;
|
||||
case "activity":
|
||||
$activitydata = \app\api\model\app\activity\Activity::where(['id'=>$id])->field(["name","location"])->find();
|
||||
if($activitydata){
|
||||
$meta['title'] = $activitydata['name'];
|
||||
$meta['description'] = "活动地点:".$activitydata['location'];
|
||||
}
|
||||
break;
|
||||
case "user":
|
||||
$meta['title'] = $id == 'record' ? '学习记录' : ($id == 'info' ? "个人中心" : '我的课程');
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if($seoConfig['default_tdk_status'] == 1){
|
||||
$meta['title'] = empty($meta['title']) ? $seoConfig['default_tdk_title'] : $meta['title'];
|
||||
$meta['keywords'] = empty($meta['keywords']) ?implode(",",$seoConfig['default_tdk_keywords']) : $meta['keywords'];
|
||||
$meta['description'] = empty($meta['description']) ? $seoConfig['default_tdk_describe'] : $meta['description'];
|
||||
}
|
||||
}
|
||||
|
||||
$meta['title'] = empty($meta['title']) ? $systemConfig['name'] : $meta['title'];
|
||||
|
||||
return $meta;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user