<?php

namespace App\Models;

use App\Models\Cms\CmsUser;
use App\Models\User;
use Dcat\Admin\Traits\HasDateTimeFormatter;
use Illuminate\Database\Eloquent\SoftDeletes;
use Illuminate\Database\Eloquent\Model;

class Inquiry extends Model
{
    use HasDateTimeFormatter;

    protected $table = 'inquiry';

    protected $primaryKey = 'inquiry_id';

    public $timestamps = false;

    const STATUS_PROCESSED = 1;
    const STATUS_PENDING = 0;
    const STATUS_CLOSED = -1;

    public function user()
    {
        return $this->belongsTo(User::class, 'user_id', 'id');
    }

    public function sales_user()
    {
        return $this->hasOne(CmsUser::class, 'userId', 'sales_id');
    }

    public static function getInquiryCountByStatus($userId,$status)
    {
        return self::where('user_id',$userId)->where('status', $status)->count();
    }


    public static function batchUpdateSalesId($salesId, $userIds = [])
    {
        return self::whereIn('user_id', $userIds)
            ->where('status', self::STATUS_PENDING)->update([
                'sales_id' => $salesId,
                'update_time' => time(),
            ]);
    }
}