TaskSystem/app/api/controller/TaskController.php
2023-08-22 14:32:57 +08:00

78 lines
3.0 KiB
PHP

<?php
namespace app\api\controller;
use app\common\model\Company;
use app\common\model\informationg\UserInformationg;
use app\common\model\task\Task;
use app\common\model\user\User;
class TaskController extends BaseApiController{
public function lists(){
$param = Request()->param();
[$page, $limit] = $this->getPage();
if($this->userInfo['admin_id']!=0){
$where[]=['company_id','=',$this->userInfo['company_id']];
}else{
$is_captain=User::where('id',$this->userId)->value('is_captain');
if($is_captain==1){
$where[]=['type','=',31];
}else{
$where[]=['director_uid','=',$this->userId];
}
$where[]=['company_id','=',$this->userInfo['company_id']];
// $where[]=['status','in',[1,2,3,5]];
}
if(isset($param['date_time']) && $param['date_time']!=''){
$time=strtotime($param['date_time']);
$end=$time+86399;
$where[]=['start_time','between',[$time,$end]];
}else{
$time=strtotime(date('Y-m-d'));
$end=$time+86399;
$where[]=['start_time','between',[$time,$end]];
}
if(isset($param['status']) && $param['status']>0){
$where[]=['status','=',$param['status']];
}
$res=Task::where($where)
->field(['id', 'title','money','template_id','director_uid', 'company_id', 'start_time', 'end_time', 'director_uid', 'type', 'status', 'content','extend'])
->page($page,25)
->order(['id' => 'desc','status'=>'asc'])
->select()->toArray();
foreach($res as $k=>$item){
if($item['type']==33){
$company = Company::where('id', $item['company_id'])->field('id,deposit,company_money,user_id,day_count,company_type,province,city,area,street,village,brigade')->find(); // 可能要判断预存金是否满足
$find=App(RemoteController::class)->shang_date_total_price($company);
if($find!=false){
$res[$k]['extend']['transaction']=$find;
}else{
$res[$k]['extend']['transaction']='';
}
}
}
return $this->success('ok', $res);
}
public function informationg_list(){
$parmas=Request()->param();
$find=Task::where('id',$parmas['id'])->find();
if($find['type']==31){
if(isset($find['extend']['informationg']['ids'])){
$ids=$find['extend']['informationg']['ids'];
$list= UserInformationg::where('id','in',$ids)
->field('id,name,phone,sex,age,update_time,
area_id,area_id area_name,street_id,street_id street_name,village_id,village_id village_name,brigade_id,brigade_id brigade_name,address'
)->select()->toArray();
}else{
$list=[];
}
}else{
$list=[];
}
return $this->success('ok',$list);
}
}