工具:用的是uniapp开发
技术栈:vue、nide..js、云开发
用时:20工作天
软件:Hb、微信开发者工具
<?php
namespace app\api\controller;
use app\common\controller\Api;
/**
* 首页接口
*/
class Index extends Api
{
protected $noNeedLogin = ['*'];
protected $noNeedRight = ['*'];
/**
* 首页
*
*/
public function index()
{
$config=$this->config();
$configs=config('site');
$map['ishot']=2;
$map['endtimesjc']=['>',time()];
if(input('uid',0)>0){
$map['uid']=input('uid');
}
$list = model('Task')
->with('users')
->where($map)
->limit(10)
->select();
if($list){
foreach ($list as $k=>$v){
$list[$k]['createtime']=date('Y-m-d H:i',$v['createtime']);
if(isset($v['users']['avatar'])){
if(strpos($v['users']['avatar'],'http') !== false){
$list[$k]['avatar']=$v['users']['avatar'];
}else{
if($v['users']['avatar']){
$list[$k]['avatar']= $configs['imgurl'].$v['users']['avatar'];
}else{
$list[$k]['avatar']=$configs['imgurl'].'/uploads/20200523/250b3f89b40ff3714b07cc51b4c2f63d.png';
}
}
}else{
$list[$k]['avatar']=$configs['imgurl'].'/uploads/20200523/250b3f89b40ff3714b07cc51b4c2f63d.png';
}
}
}
$data=['config'=>$config,'doctor'=>$list];
$this->success('请求成功',$data);
}
public function webconfig()
{
$config=$this->config();
$this->success('请求成功',$config);
}
public function lists()
{
$config=config('site');
$this->relationSearch = true;
//如果发送的来源是Selectpage,则转发到Selectpage
if ($this->request->request('keyField')) {
return $this->selectpage();
}
list($where, $sort, $order, $offset, $limit) = $this->buildparams();
if(input('uid',0)>0){
$map['uid']=input('uid');
}
$order='task.id desc';
if(input('tabIndex')==0){
$order='task.id desc';
}
if(input('tabIndex')==1){
$order='task.id desc';
}
if(input('tabIndex')==2){
$order='task.price desc';
}
if(input('tabBarsname')){
if(input('tabBarsname')=='全部'){
}else{
$map['task.type']=input('tabBarsname');
}
}
if(input('keytext')){
$map['task.name|task.id'] = ['like', '%'.input('keytext').'%'];
}
//dump($where);
$map['task.endtimesjc']=['>',time()];
$map['task.paytype']=2;
$map['task.status']='normal';
$total = model('Task')
->with('users')
->where($where)
->where($map)
->count();
$list = model('Task')
->with('users')
->where($where)
->where($map)
->order($order)
->limit($offset, $limit)
->select();
if($list){
foreach ($list as $k=>$v){
$list[$k]['createtime']=date('Y-m-d H:i',$v['createtime']);
if(isset($v['users']['avatar'])){
if(strpos($v['users']['avatar'],'http') !== false){
$list[$k]['avatar']=$v['users']['avatar'];
}else{
if($v['users']['avatar']){
$list[$k]['avatar']= $config['imgurl'].$v['users']['avatar'];
}else{
$list[$k]['avatar']=$config['imgurl'].'/uploads/20200523/250b3f89b40ff3714b07cc51b4c2f63d.png';
}
}
}else{
$list[$k]['avatar']=$config['imgurl'].'/uploads/20200523/250b3f89b40ff3714b07cc51b4c2f63d.png';
}
}
}
$result = array("total" => $total, "rows" => $list);
return json($result);
}
public function info()
{
$config=config('site');
//var_dump($where);
$list = model('Task')
->where(['id'=>input('id')])
->find();
if($list){
$odcount=model('TaskOrder')->where(['oid'=>$list['id'],'uid'=>input('uid',0)])->count();
if($list['idsum']>$odcount){
$list['islname']=1;
}else{
$list['islname']=2;
}
if($list['status']=='hidden'){
$list['islname']=3;
}
$list['odcount']=$odcount;
$UserGroup=model('UserGroup')->where(['id'=>$list['users']['group_id']])->find();
if($list['buz']){
$list['buz']=json_decode($list['buz'],true);
}else{
$list['buz']=[];
}
if(isset($UserGroup['name'])){
$list['Groupname']=$UserGroup['name'];
}else{
$list['Groupname']='';
}
$list['createtime']=date('Y-m-d H:i',$list['createtime']);
if(isset($list['users']['avatar'])){
if(strpos($list['users']['avatar'],'http') !== false){
$list['avatar']=$list['users']['avatar'];
}else{
if($list['users']['avatar']){
$list['avatar']= $config['imgurl'].$list['users']['avatar'];
}else{
$list['avatar']=$config['imgurl'].'/uploads/20200523/250b3f89b40ff3714b07cc51b4c2f63d.png';
}
}
}else{
$list['avatar']=$config['imgurl'].'/uploads/20200523/250b3f89b40ff3714b07cc51b4c2f63d.png';
}
}
$list['newtime']=time();
return json($list);
}
public function tjinfo()
{
$config=config('site');
//var_dump($where);
$list = model('Task')
->where(['id'=>input('id')])
->find();
if($list){
$odcount=model('TaskOrder')->where(['oid'=>$list['id'],'uid'=>input('uid',0)])->count();
$TaskOrder=model('TaskOrder')->where(['id'=>input('rwid',0)])->find();
if($TaskOrder){
if($TaskOrder['buz']){
$TaskOrder['buz']=json_decode($TaskOrder['buz'],true);
}
}
$list['TaskOrder']=$TaskOrder;
if($list['idsum']>$odcount){
$list['islname']=1;
}else{
$list['islname']=2;
}
if($list['status']=='hidden'){
$list['islname']=3;
}
$list['odcount']=$odcount;
$UserGroup=model('UserGroup')->where(['id'=>$list['users']['group_id']])->find();
if($list['buz']){
$list['buz']=json_decode($list['buz'],true);
}else{
$list['buz']=[];
}
if($TaskOrder['buz']){
$list['buz']=$TaskOrder['buz'];
}
if(isset($UserGroup['name'])){
$list['Groupname']=$UserGroup['name'];
}else{
$list['Groupname']='';
}
$list['createtime']=date('Y-m-d H:i',$list['createtime']);
if(isset($list['users']['avatar'])){
if(strpos($list['users']['avatar'],'http') !== false){
$list['avatar']=$list['users']['avatar'];
}else{
if($list['users']['avatar']){
$list['avatar']= $config['imgurl'].$list['users']['avatar'];
}else{
$list['avatar']=$config['imgurl'].'/uploads/20200523/250b3f89b40ff3714b07cc51b4c2f63d.png';
}
}
}else{
$list['avatar']=$config['imgurl'].'/uploads/20200523/250b3f89b40ff3714b07cc51b4c2f63d.png';
}
}
return json($list);
}
}