TaskSystem/app/api/controller/TaskController.php
2023-08-22 15:05:16 +08:00

97 lines
3.8 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 order_detail()
{
$parmas = $this->request->param();
$company = Company::where('id', $parmas['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);
$list = App(RemoteController::class)->shang_date_list($company,1,$parmas);
if ($find != false) {
$find['list']=$list;
return $this->success('ok', $find);
}
return $this->success('ok');
}
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);
}
}