问诊结束列表+民族

This commit is contained in:
2023-08-30 11:32:43 +08:00
parent 3e8562641e
commit b5739783ad
3 changed files with 83 additions and 9 deletions
+51
View File
@@ -8,6 +8,7 @@ namespace App\Model;
use Hyperf\Database\Model\Collection;
use Hyperf\Database\Model\Relations\HasOne;
use Hyperf\Database\Query\Builder;
use Hyperf\DbConnection\Db;
use Hyperf\Snowflake\Concern\Snowflake;
/**
@@ -434,4 +435,54 @@ class OrderInquiry extends Model
->limit($limit)
->get($fields);
}
/**
* 获取问诊结束会话列表-分页
* @param array $params
* @param array $fields
* @param int|null $page
* @param int|null $per_page
* @return array
*/
public static function getInquiryEndPage(array $params, array $fields = ["*"], int $page = null, ?int $per_page = 10): array
{
$query = self::select("user_id")
->whereNotIn('user_id', function ($query) use ($params){
$query->select('user_id')
->from('order_inquiry')
->whereIn('inquiry_status', [1,2,3,4])
->where($params)
->groupBy(["user_id"]);
})
->whereIn('inquiry_status', [5,6])
->where($params)
->orderBy('complete_time', 'desc')
->groupBy(["user_id"]);
$result = $query->paginate($per_page, $fields, "page", $page);
$data = array();
$data['current_page'] = $result->currentPage();// 当前页码
$data['total'] = $result->total();//数据总数
$data['data'] = $result->items();//数据
$data['per_page'] = $result->perPage();//每页个数
$data['last_page'] = $result->lastPage();//最后一页
return $data;
}
/**
* 获取某种状态的最后一条订单
* @param array $params
* @param array $inquiry_status_params
* @param array $fields
* @return object|null
*/
public static function getInquiryStatusLastOne(array $params, array $inquiry_status_params,array $fields = ["*"]): object|null
{
return self::where($params)
->whereIn("inquiry_status", $inquiry_status_params)
->latest()
->first($fields);
}
}