- 按 docs/renew-code-comment.md 将 PHP 文件头改为带边框的 Author 注释\n- 注释中的 crmeb.com 替换为 uj345.cn(代码字符串中的外链未改)\n- 新增 docs/renew-code-comment.md 说明 Made-with: Cursor
120 lines
2.6 KiB
PHP
120 lines
2.6 KiB
PHP
<?php
|
|
// +----------------------------------------------------------------------
|
|
// | Author: ScottPan Team
|
|
// +----------------------------------------------------------------------
|
|
|
|
namespace app\model\system\attachment;
|
|
|
|
use crmeb\basic\BaseModel;
|
|
use crmeb\traits\ModelTrait;
|
|
use think\Model;
|
|
|
|
/**
|
|
* 附件管理模型
|
|
* Class SystemAttachment
|
|
* @package app\model\system\attachment
|
|
*/
|
|
class SystemAttachment extends BaseModel
|
|
{
|
|
use ModelTrait;
|
|
|
|
/**
|
|
* 数据表主键
|
|
* @var string
|
|
*/
|
|
protected $pk = 'att_id';
|
|
|
|
/**
|
|
* 模型名称
|
|
* @var string
|
|
*/
|
|
protected $name = 'system_attachment';
|
|
|
|
/**
|
|
* 图片类型搜索器
|
|
* @param Model $query
|
|
* @param $value
|
|
*/
|
|
public function searchModuleTypeAttr($query, $value)
|
|
{
|
|
$query->where('module_type', $value ?: 1);
|
|
}
|
|
|
|
/**
|
|
* pid搜索器
|
|
* @param Model $query
|
|
* @param $value
|
|
*/
|
|
public function searchPidAttr($query, $value)
|
|
{
|
|
if ($value) $query->where('pid', $value);
|
|
}
|
|
|
|
/**
|
|
* name模糊搜索
|
|
* @param Model $query
|
|
* @param $value
|
|
*/
|
|
public function searchLikeNameAttr($query, $value)
|
|
{
|
|
if ($value) $query->where('name', 'LIKE', "$value%");
|
|
}
|
|
|
|
/**
|
|
* type搜索器
|
|
* @param Model $query
|
|
* @param $value
|
|
*/
|
|
public function searchTypeAttr($query, $value)
|
|
{
|
|
if (is_array($value)) {
|
|
if ($value) $query->whereIn('type', $value);
|
|
} else {
|
|
if ($value !== '') $query->where('type', $value);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* 关联门店ID、供应商ID搜索器
|
|
* @param Model $query
|
|
* @param $value
|
|
*/
|
|
public function searchRelationIdAttr($query, $value)
|
|
{
|
|
if (is_array($value)) {
|
|
if ($value) $query->whereIn('relation_id', $value);
|
|
} else {
|
|
if ($value !== '') $query->where('relation_id', $value);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* FileType搜索器
|
|
* @param Model $query
|
|
* @param $value
|
|
*/
|
|
public function searchFileTypeAttr($query, $value)
|
|
{
|
|
if (is_array($value)) {
|
|
if ($value) $query->whereIn('file_type', $value);
|
|
} else {
|
|
if ($value !== '') $query->where('file_type', $value);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* store_id搜索器
|
|
* @param Model $query
|
|
* @param $value
|
|
*/
|
|
public function searchStoreIdAttr($query, $value)
|
|
{
|
|
if ($value) $query->where('relation_id', $value)->where('type', 1);
|
|
}
|
|
|
|
public function searchRealNameAttr($query, $value, $data)
|
|
{
|
|
if ($value !== '') $query->whereLike('real_name', "%$value%");
|
|
}
|
|
}
|