| | |
| | | <el-col :span="16"> |
| | | <el-form-item label="责任者" prop="creator"> |
| | | <div class="title-search-wrapper"> |
| | | <el-input |
| | | v-model="form.creator" |
| | | <el-input |
| | | v-model="form.creator" |
| | | placeholder="请输入责任者" |
| | | @input="handleCreatorInput" |
| | | @focus="showCreatorSuggestions = true" |
| | |
| | | placeholder="请选择日期"> |
| | | </el-date-picker> --> |
| | | </el-form-item> |
| | | <el-form-item label="档案号" prop="fileNumber"> |
| | | <el-input |
| | | v-model="queryParams.fileNumber" |
| | | placeholder="请输入档案号(支持范围搜索,如:B1.3-05-2024-0001~0003)" |
| | | clearable |
| | | @keyup.enter.native="handleQuery" |
| | | /> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="页号" prop="pageNumber"> |
| | | <el-col :span="8"> |
| | | <el-input |
| | |
| | | // 表单校验 |
| | | rules: { |
| | | creator: [ |
| | | // { required: true, message: "创建者不能为空", trigger: "blur" } |
| | | // { required: true, message: "创建者不能为空", trigger: "blur" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | title: [ |
| | | { required: true, message: "案卷题名不能为空", trigger: "blur" } |
| | | { required: true, message: "案卷题名不能为空", trigger: "blur" }, |
| | | // { pattern: /^[^\\/:*?"<>丨]+$/, message: "文件名不能包含 \\:*?"<>丨 等特殊字符", trigger: "blur" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | date: [ |
| | | // { required: true, message: "日期不能为空", trigger: "blur" }, |
| | | { pattern: /^\d{4}-\d{2}-\d{2}$/, message: "日期格式必须为yyyy-mm-dd", trigger: "blur" } |
| | | { pattern: /^\d{4}-\d{2}-\d{2}$/, message: "日期格式必须为yyyy-mm-dd", trigger: "blur" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | pageNumber: [ |
| | | { required: true, message: "页号不能为空", trigger: "blur" }, |
| | | { type: 'number', message: '页号必须为数字类型', trigger: ['blur', 'change'] }, |
| | | { pattern: /^\d+$/, message: '请输入正整数', trigger: 'blur' } |
| | | { pattern: /^[1-9]\d*$/, message: '请输入大于0的正整数', trigger: 'blur' }, |
| | | // { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | stage: [ |
| | | { required: true, message: "所处阶段不能为空", trigger: "change" } |
| | | { required: true, message: "所处阶段不能为空", trigger: "change" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | fileStyle: [ |
| | | { required: true, message: "材料类型不能为空", trigger: "change" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | isAttachment: [ |
| | | { required: true, message: "是否为附件不能为空", trigger: "change" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | retentionPeriod: [ |
| | | { required: true, message: "保管期限不能为空", trigger: "change" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | isSensitive: [ |
| | | { required: true, message: "是否敏感不能为空", trigger: "change" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ], |
| | | isCanceled: [ |
| | | { required: true, message: "是否注销不能为空", trigger: "change" }, |
| | | { max: 85, message: "最大长度为85个字符", trigger: "blur" } |
| | | ] |
| | | } |
| | | } |
| | |
| | | /** 查询【请填写功能名称】列表 */ |
| | | getList() { |
| | | this.loading = true |
| | | listMaterials(this.queryParams).then(response => { |
| | | |
| | | // 处理档案号搜索逻辑,包括范围搜索 |
| | | const queryParams = { ...this.queryParams } |
| | | |
| | | // 检查是否包含范围搜索符号 |
| | | if (queryParams.fileNumber && queryParams.fileNumber.includes('~')) { |
| | | const rangeParts = queryParams.fileNumber.split('~') |
| | | if (rangeParts.length === 2) { |
| | | // 解析范围搜索参数 |
| | | // 保留原始fileNumber用于其他处理 |
| | | queryParams.fileNumberStart = rangeParts[0].trim() |
| | | queryParams.fileNumberEnd = rangeParts[1].trim() |
| | | } |
| | | } |
| | | |
| | | listMaterials(queryParams).then(response => { |
| | | console.log(response) |
| | | this.materialsList = response.data.data |
| | | this.total = response.data.total |
| | |
| | | this.form.title = title; |
| | | this.showTitleSuggestions = false; |
| | | }, |
| | | |
| | | |
| | | // 处理责任人输入事件 |
| | | handleCreatorInput() { |
| | | // 清除之前的定时器(防抖) |
| | |
| | | // } |
| | | const formData = new FormData(); |
| | | formData.append('file', file); |
| | | // formData.append('recordId', this.recordId) |
| | | formData.append('recordId', this.recordId) |
| | | // alert(this.recordId) |
| | | console.log(file) |
| | | |