From bfecce7f4edda6d01091c65b22c58345a7e9871c Mon Sep 17 00:00:00 2001
From: 吴羡 <16976746+Xian-TT3@user.noreply.gitee.com>
Date: 星期三, 21 十月 2026 15:05:36 +0800
Subject: [PATCH] fix: 设备修订弹窗打开时自动计算下次日期
---
src/views/structural/premises/index.vue | 219 +-----------------------------------------------------
1 files changed, 7 insertions(+), 212 deletions(-)
diff --git a/src/views/structural/premises/index.vue b/src/views/structural/premises/index.vue
index f261b0b..2308639 100644
--- a/src/views/structural/premises/index.vue
+++ b/src/views/structural/premises/index.vue
@@ -3,12 +3,8 @@
<div class="search">
<div>
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
- <el-form-item label="琛屼笟鍚嶇О" prop="laboratoryName">
+ <el-form-item label="鏍囧噯鍒嗙被" prop="laboratoryName">
<el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.laboratoryName"
- @keyup.enter="refreshTable"></el-input>
- </el-form-item>
- <el-form-item label="琛屼笟缂栫爜" prop="laboratoryNumber">
- <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.laboratoryNumber"
@keyup.enter="refreshTable"></el-input>
</el-form-item>
<el-form-item>
@@ -29,14 +25,8 @@
<el-dialog :title="formTitle" v-model="addDia" width="450px">
<el-form ref="laboratoryForm" :model="laboratoryForm" :rules="userRules" label-position="right"
label-width="100px">
- <el-form-item label="琛屼笟鍚嶇О" prop="laboratoryName">
+ <el-form-item label="鏍囧噯鍒嗙被" prop="laboratoryName">
<el-input v-model="laboratoryForm.laboratoryName" size="small" clearable></el-input>
- </el-form-item>
- <el-form-item label="鍦烘墍缂栫爜" prop="laboratoryNumber">
- <el-input v-model="laboratoryForm.laboratoryNumber" size="small" clearable></el-input>
- </el-form-item>
- <el-form-item label="琛屼笟浠e彿" prop="laboratoryCode">
- <el-input v-model="laboratoryForm.laboratoryCode" size="small" clearable></el-input>
</el-form-item>
<el-form-item label="璐熻矗浜�" prop="head">
<el-input v-model="laboratoryForm.head" size="small" clearable></el-input>
@@ -44,40 +34,10 @@
<el-form-item label="璐熻矗浜虹數璇�" prop="phoneNumber">
<el-input v-model="laboratoryForm.phoneNumber" size="small" clearable></el-input>
</el-form-item>
- <el-form-item label="鍦板潃" prop="address">
- <el-input v-model="laboratoryForm.address" size="small" clearable></el-input>
- </el-form-item>
</el-form>
<template #footer><span class="dialog-footer">
<el-button @click="reset">鍙� 娑�</el-button>
<el-button type="primary" @click="customAdd" :loading="loading">纭� 瀹�</el-button>
- </span></template>
- </el-dialog>
- <el-dialog title="鍗扮珷绠$悊" v-model="fileVisible" width="60vw">
- <div class="btns">
- <el-button size="default" type="primary" @click="openUpload">鏇存柊鍗扮珷</el-button>
- </div>
- <lims-table :tableData="fileComponentData" :column="fileComponentDataColumn" @pagination="fileComponentPagination"
- height="500px" :page="fileComponentPage" :tableLoading="fileComponentTableLoading"></lims-table>
- </el-dialog>
- <el-dialog title="鏇存柊鍗扮珷" v-model="upFileVisible" width="400px">
- <el-form ref="dataForm" :model="dataForm" :rules="dataFormRules" label-position="right" label-width="80px">
- <el-form-item label="鍗扮珷绫诲瀷" prop="type">
- <el-cascader v-model="dataForm.type" :options="options" :show-all-levels="false" :props="props"
- placeholder="璇烽�夋嫨" size="small" style="width:100%" collapse-tags clearable></el-cascader>
- </el-form-item>
- <el-form-item label="鍗扮珷鍥剧墖" prop="address">
- <el-upload class="avatar-uploader" :action="action" :headers="uploadHeader"
- accept='image/jpg,image/jpeg,image/png' :show-file-list="false" :on-success="handleSuccess"
- :on-change="beforeUpload" ref="upload" :on-error="onError">
- <img v-if="dataForm.address" :src="javaApi + '/img/' + dataForm.address" class="avatar">
- <lims-icon v-else class="avatar-uploader-icon" name="el-icon-plus"></lims-icon>
- </el-upload>
- </el-form-item>
- </el-form>
- <template #footer><span class="dialog-footer">
- <el-button @click="upFileVisible = false">鍙� 娑�</el-button>
- <el-button type="primary" @click="confirmConnect" :loading="loading">纭� 瀹�</el-button>
</span></template>
</el-dialog>
</div>
@@ -87,38 +47,26 @@
import limsTable from "@/components/Table/lims-table.vue";
import {
addParameter,
- addSeal,
delParameter,
selectItemParameter,
- selectSeal,
upParameter
} from "@/api/structural/laboratoryScope";
-import { getCertificationDetail } from "@/api/structural/laboratory";
export default {
components: {
limsTable
},
- computed: {
- action() {
- return this.javaApi + '/deviceScope/uploadFile'
- }
- },
data() {
return {
queryParams: {
laboratoryName: '',
- laboratoryNumber: '',
},
tableData: [],
tableLoading: false,
column: [
- { label: '琛屼笟鍚嶇О', prop: 'laboratoryName' },
- { label: '鍦烘墍缂栫爜', prop: 'laboratoryNumber' },
- { label: '琛屼笟浠e彿', prop: 'laboratoryCode' },
+ { label: '鏍囧噯鍒嗙被', prop: 'laboratoryName' },
{ label: '璐熻矗浜�', prop: 'head' },
{ label: '璐熻矗浜虹數璇�', prop: 'phoneNumber' },
- { label: '鍦板潃', prop: 'address' },
{ label: '鍒涘缓浜�', prop: 'createUserName' },
{ label: '鍒涘缓鏃堕棿', prop: 'createTime' },
{
@@ -139,13 +87,6 @@
this.delete(row);
},
},
- {
- name: '鍗扮珷绠$悊',
- type: 'text',
- clickFun: (row) => {
- this.fileManagement(row);
- },
- },
]
}
],
@@ -161,54 +102,11 @@
},
operationType: '',
userRules: {
- laboratoryName: [{ required: true, message: '璇疯緭鍏ヨ涓氬悕绉�', trigger: 'blur' }],
- laboratoryNumber: [{ required: true, message: '璇疯緭鍏ュ満鎵�缂栫爜', trigger: 'blur' }],
+ laboratoryName: [{ required: true, message: '璇疯緭鍏ユ爣鍑嗗垎绫�', trigger: 'blur' }],
head: [{ required: true, message: '璇疯緭鍏ヨ礋璐d汉', trigger: 'blur' }],
phoneNumber: [{ required: true, message: '璇疯緭鍏ヨ礋璐d汉鐢佃瘽', trigger: 'blur' }],
},
- currentRow: {},
- fileComponentTableLoading: false,
- fileComponentData: [],
- fileComponentDataColumn: [
- { label: '琛屼笟鍚嶇О', prop: 'laboratoryName' },
- { label: '鍗扮珷鍥剧墖', prop: 'address', dataType: 'image' },
- { label: '鍗扮珷绫诲瀷', prop: 'type' },
- ],
- fileComponentPage: {
- total: 0,
- size: 10,
- current: 1,
- layout: 'total, prev, pager, next'
- },
- fileVisible: false,
- upFileVisible: false,
loading: false,
- dataForm: {
- type: '',
- address: '',
- },
- dataFormRules: {
- type: [{ required: true, message: '璇烽�夋嫨鍗扮珷绫诲瀷', trigger: 'change' }],
- address: [{ required: false, message: '璇蜂笂浼犲浘鐗�', trigger: 'change' }],
- },
- props: { multiple: false, emitPath: false, },
- options: [
- {
- value: '琛屼笟璧勮川',
- label: '琛屼笟璧勮川',
- children: []
- },
- {
- value: '濮旀墭鎶ュ憡',
- label: '濮旀墭鎶ュ憡',
- children: null
- },
- {
- value: '杩涘巶鎶ュ憡',
- label: '杩涘巶鎶ュ憡',
- children: null
- },
- ],
}
},
mounted() {
@@ -242,6 +140,9 @@
this.operationType = type
if (type === 'edit') {
this.laboratoryForm = this.HaveJson(row)
+ } else {
+ // 鏂板鏃舵竻绌鸿〃鍗曪紝閬垮厤甯﹀叆涓婁竴鏉$紪杈戣褰曢噷鏈睍绀哄瓧娈电殑鍊�
+ this.laboratoryForm = {}
}
this.addDia = true
},
@@ -291,80 +192,6 @@
})
}).catch(() => { })
},
- // 鎵撳紑鍗扮珷绠$悊寮规
- fileManagement(row) {
- this.fileVisible = true;
- this.fileComponentTableLoading = true
- this.currentRow = row
- this.getFileComponentList()
- },
- getFileComponentList() {
- selectSeal({ id: this.currentRow.id, ...this.fileComponentPage }).then(res => {
- this.fileComponentTableLoading = false
- if (res.code === 200) {
- this.fileComponentData = res.data.records
- this.fileComponentPage.total = res.data.total
- }
- }).catch(err => {
- this.fileComponentTableLoading = false
- })
- },
- fileComponentPagination(page) {
- this.fileComponentPage.size = page.limit
- this.getFileComponentList()
- },
- // 鎵撳紑鏇存柊鍗扮珷寮规
- openUpload() {
- this.dataForm.type = '';
- this.dataForm.address = '';
- this.upFileVisible = true;
- this.getCertificationOperation()
- },
- // 鏌ヨ鍗扮珷绫诲瀷
- getCertificationOperation() {
- const params = {
- current: -1,
- size: -1,
- }
- getCertificationDetail(params).then(res => {
- this.options[0].children = res.data.records.map(m => {
- m.value = m.name;
- m.label = m.name;
- return m
- });
- })
- },
- // 鎻愪氦鏇存柊鍗扮珷
- confirmConnect() {
- this.$refs['dataForm'].validate((valid) => {
- if (valid) {
- this.loading = true;
- addSeal({ labId: this.currentRow.id, ...this.dataForm }).then(res => {
- this.loading = false;
- this.getFileComponentList()
- this.upFileVisible = false;
- })
- }
- })
- },
- handleSuccess(response,) {
- if (response.code === 200) {
- this.dataForm.address = response.data.url
- }
- },
- beforeUpload(file, type) {
- if (file.size > 1024 * 1024 * 10) {
- this.$message.error('涓婁紶鏂囦欢涓嶈秴杩�10M');
- this.$refs.upload.clearFiles()
- return false;
- } else {
- return true;
- }
- },
- onError(err, file, fileList, type) {
- this.$message.error('涓婁紶澶辫触')
- this.$refs.upload.clearFiles()
- },
}
}
</script>
@@ -375,39 +202,7 @@
justify-content: space-between;
}
-.btns {
- text-align: right;
- margin-bottom: 10px;
-}
-
:deep(.el-dialog__body) {
padding-top: 8px !important;
-}
-
-.avatar-uploader :deep(.el-upload) {
- border: 1px dashed var(--lims-text-2);
- border-radius: 6px;
- cursor: pointer;
- position: relative;
- overflow: hidden;
-}
-
-.avatar-uploader :deep(.el-upload:hover) {
- border-color: var(--el-color-primary);
-}
-
-.avatar-uploader-icon {
- font-size: 20px;
- color: #8c939d;
- width: 90px;
- height: 90px;
- line-height: 90px;
- text-align: center;
-}
-
-.avatar {
- width: 90px;
- height: 90px;
- display: block;
}
</style>
--
Gitblit v1.9.3