where("name", "like", "%".$value."%"); } } /** * 搜索器:人力资源-人员性别 * @param $value * @param $data */ public function searchGenderAttr($query, $value, $data) { if ($value) { $query->where("gender", $value); } } /** * 搜索器:人力资源-人员电话 * @param $value * @param $data */ public function searchPhoneAttr($query, $value, $data) { if ($value) { $query->where("phone", "like", "%".$value."%"); } } /** * 搜索器:人力资源-人员家庭住址 * @param $value * @param $data */ public function searchAddressAttr($query, $value, $data) { if ($value) { $query->where("address", "like", "%".$value."%"); } } /** * 搜索器:人力资源-人员学历 * @param $value * @param $data */ public function searchEducationAttr($query, $value, $data) { if ($value) { $query->where("education", $value); } } /** * 搜索器:人力资源-人员员工编号 * @param $value * @param $data */ public function searchEmployeeNumberAttr($query, $value, $data) { if ($value) { $query->where("employee_number", $value); } } /** * 搜索器:人力资源-人员员工状态 * @param $value * @param $data */ public function searchStatusAttr($query, $value, $data) { if ($value) { $query->where("status", $value); } } /** * 搜索器:人力资源-人员创建时间 * @param $value * @param $data */ public function searchCreateTimeAttr($query, $value, $data) { if ($value && is_array($value) && count($value) == 2) { // 日期范围查询 $query->where("create_time", ">=", $value[0]) ->where("create_time", "<=", $value[1]); } elseif ($value) { // 单个日期查询(按天) $query->whereTime("create_time", "=", $value); } } /** * 状态字段转化 * @param $value * @param $data * @return string */ public function getStatusNameAttr($value, $data) { if (empty($data['status']) && $data['status'] !== 0) return ''; return match ($data['status']) { self::STATUS_NORMAL => '正常', self::STATUS_DISABLED => '禁用', self::STATUS_PENDING_APPROVAL => '待审批', default => '未知状态' }; } public function sys_user() { return $this->hasOne(\app\model\sys\SysUser::class, 'uid', 'sys_user_id'); } }