📖 File Reader
<?php
namespace app\api\controller;
use app\BaseController;
use app\api\common\Common_user;
use think\facade\Db;
use think\facade\View;
class Article extends Base
{
/*文章详情*/
public function article_info()
{
$article_id = input("param.article_id");
if (empty($article_id)){
return $this->error_json("参数错误");
}
$article_info = db::name("article")->where("id = $article_id")->find();
if (empty($article_info)){
return $this->error_json("该文章不存在");
}
$article_info["add_time"] = date("Y-m-d H:i",$article_info["add_time"]);
//更改浏览量
$info["browse_sum"] = $article_info["browse_sum"]+1;
db::name("article")->where("id = $article_id")->data($info)->update();
$data = [
'article_info'=>$article_info,
];
return $this->succeed_json("ok",$data);
}
/*文章列表*/
public function article_list()
{
$act_id = input("param.act_id");
$where = 1;
if (!empty($act_id)){
$where .= " and a.act_id = $act_id";
}
$list = db::name("article")->alias("a")
->join("article_act b","a.act_id = b.id","LEFT")
->field("a.id,a.title,a.img,a.describe,a.browse_sum,a.add_time, b.name as act_name")
->where("a.is_show = 1 and $where")
->order("a.add_time desc")
->page($this->page,$this->limit)
->select()
->toarray();
foreach ($list as $k => $v){
$list[$k]["add_time"] = date("Y.m.d",$v["add_time"]);
}
//获取总页数
$count = db::name("article")->alias("a")
->join("article_act b","a.act_id = b.id","LEFT")
->field("a.id,a.title,a.img,a.describe,a.browse_sum,a.add_time, b.name as act_name")
->where("a.is_show = 1 and $where")
->count();
$pages = $this->vue_pages($count,$this->limit);
$data = [
'list'=>$list,
'pages'=>$pages,
];
return $this->succeed_json("ok",$data);
}
/*活动列表*/
public function activity_list()
{
$type = input("param.type");//类型:0全部 1已预约
$where = 1;
if ($type == 1){
$user_yuyue = db::name("user_activity_dianmian")->where("user_id = $this->user_id")->select()->toArray();
$activity_id = '';//已预约活动id
foreach ($user_yuyue as $v){
$activity_id .= $v["activity_id"].',';
}
$activity_id = substr($activity_id,0,strlen($activity_id)-1);
if (!empty($activity_id)){
$where .= " and id in ($activity_id)";
}else{
$where .= " and id in (0)";
}
}
$list = db::name("activity_dianmian")->where("is_show = 1 and $where")->order("add_time desc")->page($this->page,$this->limit)->select()->toArray();
foreach ($list as $k => $v){
$list[$k]["add_time"] = date("Y.m.d",$v["add_time"]);
$list[$k]["time_ks"] = date("m-d H:i",$v["time_ks"]);
$list[$k]["time_js"] = date("m-d H:i",$v["time_js"]);
}
//获取总页数
$count =db::name("activity_dianmian")->where("is_show = 1 and $where")->count();
$pages = $this->vue_pages($count,$this->limit);
$data = [
'list'=>$list,
'pages'=>$pages,
];
return $this->succeed_json("ok",$data);
}
/*活动详情*/
public function activity_info()
{
$activity_id = input("param.activity_id");
if (empty($activity_id)){
return $this->error_json("参数错误");
}
$info = db::name("activity_dianmian")->where("id = $activity_id")->find();
$info["add_time"] = date("Y-m-d H:i",$info["add_time"]);
$info["time_ks"] = date("m-d H:i",$info["time_ks"]);
$info["time_js"] = date("m-d H:i",$info["time_js"]);
$user_activity_dianmian = db::name("user_activity_dianmian")->where("user_id = $this->user_id and activity_id = $activity_id")->find();
$is_lingqu = !empty($user_activity_dianmian)?1:0;
$data = [
'info'=>$info,
'is_lingqu'=>$is_lingqu,
];
return $this->succeed_json("ok",$data);
}
/*活动领取处理*/
public function activity_lingqu()
{
/*实名认证检测*/
$user_data = Common_user::user_detection($this->user_id);
if ($user_data["code"] != 200){
return $this->error_json($user_data["msg"],301);
}
$activity_id = input("param.activity_id");
if (empty($activity_id)){
return $this->error_json("参数错误");
}
$user_activity_dianmian = db::name("user_activity_dianmian")->where("user_id = $this->user_id and activity_id = $activity_id")->find();
if (!empty($user_activity_dianmian)){
return $this->error_json("不可重复领取");
}
$info = [
'user_id'=>$this->user_id,
'activity_id'=>$activity_id,
'time_add'=>time(),
];
db::name("user_activity_dianmian")->insertGetId($info);
return $this->succeed_json("领取成功");
}
}