From 0a26d58a3906b9e13946c7cb46fae51a0de98920 Mon Sep 17 00:00:00 2001 From: Crunchy <3114200645@qq.com> Date: 星期一, 17 三月 2025 15:49:08 +0800 Subject: [PATCH] Merge branch 'dev' into dev_tides --- src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue | 176 ++++++++++++++++++++++------------------------------------ 1 files changed, 67 insertions(+), 109 deletions(-) diff --git a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue index 0cd9c6d..79dbc40 100644 --- a/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue +++ b/src/views/CNAS/resourceDemand/facilitiesEnvironment/component/facilities-environmental-conditions/power-supply-stability.vue @@ -6,10 +6,8 @@ <el-button size="small" type="primary" @click="openAddDia">鏂� 澧�</el-button> </div> </div> - <el-table - :data="tableData" - height="calc(100vh - 18em)" - style="width: 100%"> + <el-table :data="tableData" height="calc(100vh - 18em)" style="width: 100%" + :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border> <el-table-column label="搴忓彿" type="index" width="120"> <template v-slot="scope"> <span>{{ (search.current - 1) * search.size + scope.$index + 1 }}</span> @@ -33,50 +31,35 @@ </template> </el-table-column> </el-table> - <el-pagination :current-page="1" :page-size="search.size" :page-sizes="[10, 20, 30, 50, 100]" - :total="search.total" layout="->,total, sizes, prev, pager, next, jumper" - @size-change="handleSizeChange" + <el-pagination :current-page="1" :page-size="search.size" :page-sizes="[10, 20, 30, 50, 100]" :total="search.total" + background layout="->,total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange" @current-change="handleCurrentChange"> </el-pagination> - <el-dialog - :visible.sync="dialogVisible" - title="鏂板" - width="50%" - @open="openDialog"> + <el-dialog :visible.sync="dialogVisible" title="鏂板" width="50%" @open="openDialog"> <div style="height: 50vh; overflow-y: auto"> <el-form ref="form" :model="form" label-width="120px"> <el-row> <el-col :span="12"> <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ祴璇曞湴鐐�', trigger: 'blur' }]" label="娴嬭瘯鍦扮偣" - prop="testLocation"> + prop="testLocation"> <el-input v-model="form.testLocation" size="small"></el-input> </el-form-item> </el-col> <el-col :span="12"> <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ユ祴璇曟棩鏈�', trigger: 'change' }]" label="娴嬭瘯鏃ユ湡" - prop="testDate"> - <el-date-picker - v-model="form.testDate" - format="yyyy-MM-dd" - placeholder="閫夋嫨鏃ユ湡" - size="small" - style="width: 100%" - type="date" - value-format="yyyy-MM-dd"> + prop="testDate"> + <el-date-picker v-model="form.testDate" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" size="small" + style="width: 100%" type="date" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> </el-col> <el-col :span="12"> <el-form-item :rules="[{ required: true, message: '璇疯緭鍏ヨ澶囧悕绉�', trigger: 'change' }]" label="璁惧鍚嶇О" - prop="deviceId"> - <el-select v-model="form.deviceId" - class="table_input" - clearable - filterable - placeholder="璁惧鍚嶇О" - size="small" @change="getCalibrationDateFun"> - <el-option v-for="item in equipOptions" :key="item.id" :label="item.deviceName" :value="item.id"> - {{item.deviceName + item.managementNumber}} + prop="deviceId"> + <el-select v-model="form.deviceId" class="table_input" clearable filterable placeholder="璁惧鍚嶇О" + size="small" @change="getCalibrationDateFun"> + <el-option v-for="item in equipOptions" :key="item.id" :label="item.deviceName" :value="item.id"> + {{ item.deviceName + item.managementNumber }} </el-option> </el-select> </el-form-item> @@ -98,8 +81,8 @@ </el-col> <el-col :span="12"> <el-form-item label="妫�娴嬭��" prop="recipientUser"> - <el-select v-model="form.testerId" clearable filterable placeholder="璇烽�夋嫨" - size="small" style="width: 100%;"> + <el-select v-model="form.testerId" clearable filterable placeholder="璇烽�夋嫨" size="small" + style="width: 100%;"> <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> @@ -107,8 +90,8 @@ </el-col> <el-col :span="12"> <el-form-item label="鏍告煡浜�" prop="recipientUser"> - <el-select v-model="form.checkerId" clearable filterable placeholder="璇烽�夋嫨" - size="small" style="width: 100%;" > + <el-select v-model="form.checkerId" clearable filterable placeholder="璇烽�夋嫨" size="small" + style="width: 100%;"> <el-option v-for="item in responsibleOptions" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> @@ -116,11 +99,7 @@ </el-col> <el-col :span="24"> <el-form-item label="缁撹"> - <el-input - v-model="form.conclusion" - :rows="2" - placeholder="璇疯緭鍏ュ唴瀹�" - type="textarea"> + <el-input v-model="form.conclusion" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" type="textarea"> </el-input> </el-form-item> </el-col> @@ -130,25 +109,15 @@ <el-button size="small" type="primary" @click="feMeasuredQuantityListAdd">鏂板</el-button> </div> <div> - <el-table - :data="form.feMeasuredQuantityList" - height="40vh" - style="width: 100%; margin: auto"> + <el-table :data="form.feMeasuredQuantityList" height="40vh" style="width: 100%; margin: auto" + :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border> <el-table-column label="搴忓彿" type="index" width="80"></el-table-column> - <el-table-column - align="center" - label="娴嬪畾閲忓悕绉�" - min-width="180" - prop="measuredQuantityLabel"> + <el-table-column align="center" label="娴嬪畾閲忓悕绉�" min-width="180" prop="measuredQuantityLabel"> <template #default="{ row }"> <el-input v-model="row.measuredQuantityLabel" :rows="1" type="textarea"></el-input> </template> </el-table-column> - <el-table-column - align="center" - label="鍊�" - min-width="300" - prop="name"> + <el-table-column align="center" label="鍊�" min-width="300" prop="name"> <template> <el-table-column align="center" label="A" min-width="100" prop="valueA"> <template #default="{ row }"> @@ -167,10 +136,7 @@ </el-table-column> </template> </el-table-column> - <el-table-column - fixed="right" - label="鎿嶄綔" - width="100"> + <el-table-column fixed="right" label="鎿嶄綔" width="100"> <template slot-scope="scope"> <el-button size="small" type="text" @click="feMeasuredQuantityListDelete(scope.row, scope.$index)"> 鍒犻櫎 @@ -191,11 +157,23 @@ </template> <script> +import { + getLaboratoryFacilityPowerStablePage, + deviceScopeSearch, + treeDevice, + selectUserCondition, + addLaboratoryFacilityPowerStable, + deleteFeMeasuredQuantity, + getFeMeasuredQuantityService, + deleteLaboratoryFacilityPowerStable, + exportFePowerStable +} from '@/api/cnas/resourceDemand/facilitiesEnvironment/facilitiesAndEnvironment' + export default { data() { return { search: { - size: 20, + size: 10, current: 1, total: 0 }, @@ -235,11 +213,14 @@ methods: { // 鍒濆鍖栬皟鐢� initData() { - this.$axios.get(this.$api.facilitiesAndEnvironment.getLaboratoryFacilityPowerStablePage + '?size=' + this.search.size + '¤t=' + this.search.current).then(res => { - if (res.code === 201) return; - this.tableData = res.data.records; - this.search.total = res.data.total; - }); + getLaboratoryFacilityPowerStablePage({ + ...this.search + }).then(res => { + if (res.code === 200) { + this.tableData = res.data.records; + this.search.total = res.data.total; + } + }) }, handleSizeChange(val) { this.search.size = val; @@ -256,20 +237,20 @@ cancelButtonText: '鍙栨秷', type: 'warning' }).then(() => { - this.$axios.delete(this.$api.facilitiesAndEnvironment.deleteLaboratoryFacilityPowerStable + '?powerStableId=' + row.powerStableId).then(res => { + deleteLaboratoryFacilityPowerStable({ powerStableId: row.powerStableId }).then(res => { this.$message.success('鍒犻櫎鎴愬姛锛�') this.initData() }) }) }, - openAddDia () { + openAddDia() { this.dialogVisible = true this.getEquipOptions() }, // 鑾峰彇鎵�鏈夎澶� getEquipOptions() { this.equipOptions = [] - this.$axios.get(this.$api.deviceScope.deviceScopeSearch+'?status=0').then(res => { + deviceScopeSearch({ status: '0' }).then(res => { if (res.code === 200 && res.data) { this.equipOptions = res.data } @@ -279,9 +260,9 @@ }, // 鐢垫簮绋冲畾鎬�-鎵撳紑寮规璋冪敤璁惧鎺ュ彛锛屾煡璇娇鐢ㄧ殑璁惧 openDialog() { - this.$axios.get(this.$api.deviceScope.treeDevice).then(res => { + treeDevice().then(res => { this.cascaderList = res.data; - }); + }) this.$nextTick(() => { this.$refs['form'].clearValidate() }) @@ -299,8 +280,7 @@ // 鐢垫簮绋冲畾鎬�-娴嬪畾閲忓脊妗嗕腑琛ㄦ牸鐨勫垹闄よ feMeasuredQuantityListDelete(row, index) { if (row.measuredQuantityId) { - this.$axios.delete(this.$api.facilitiesAndEnvironment.deleteFeMeasuredQuantity + '?measuredQuantityId=' + row.measuredQuantityId).then(res => { - if (res.code === 201) return + deleteFeMeasuredQuantity({ measuredQuantityId: row.measuredQuantityId }).then(res => { this.form.feMeasuredQuantityList.splice(index, 1) this.$message.success('鍒犻櫎鎴愬姛锛�') }) @@ -324,11 +304,7 @@ this.submitLoading = true this.$refs.form.validate((valid) => { if (valid) { - this.$axios.post(this.$api.facilitiesAndEnvironment.addLaboratoryFacilityPowerStable, this.form, { - headers: { - 'Content-Type': 'application/json' - } - }).then(res => { + addLaboratoryFacilityPowerStable(this.form).then(res => { this.submitLoading = false if (res.code === 200) { this.initData() @@ -342,50 +318,32 @@ }, // 瀵煎嚭 downLoadPost(row) { - this.$axios.get(this.$api.facilitiesAndEnvironment.exportFePowerStable + '?powerStableId=' + row.powerStableId,{responseType: "blob"}).then(res => { + exportFePowerStable({ powerStableId: row.powerStableId }).then(res => { this.outLoading = false - const blob = new Blob([res],{ type: 'application/msword' }); - //灏咮lob 瀵硅薄杞崲鎴愬瓧绗︿覆 - let reader = new FileReader(); - reader.readAsText(blob, 'utf-8'); - reader.onload = () => { - try { - let result = JSON.parse(reader.result); - if (result.message) { - this.$message.error(result.message); - } else { - const url = URL.createObjectURL(blob); - const link = document.createElement('a'); - link.href = url; - link.download = '鐢垫簮绋冲畾鎬�' + '.docx'; - link.click(); - this.$message.success('瀵煎嚭鎴愬姛') - } - } catch (err) { - console.log(err); - const url = URL.createObjectURL(blob); - const link = document.createElement('a'); - link.href = url; - link.download = '鐢垫簮绋冲畾鎬�' + '.docx'; - link.click(); - this.$message.success('瀵煎嚭鎴愬姛') - } - } + const blob = new Blob([res], { type: 'application/msword' }); + this.$download.saveAs(blob, '鐢垫簮绋冲畾鎬�.docx') }) }, // 鐢垫簮绋冲畾鎬� 鐐瑰嚮琛岀紪杈戣Е鍙� edit(row) { - this.$axios.get(this.$api.facilitiesAndEnvironment.getFeMeasuredQuantityService + "?powerStableId=" + row.powerStableId).then(res => { - this.form = {...row} + getFeMeasuredQuantityService({ powerStableId: row.powerStableId }).then((res => { + this.form = { ...row } this.form.feMeasuredQuantityList = res.data; this.dialogVisible = true - }); + })) }, // 鑾峰彇璐熻矗浜轰俊鎭帴鍙� getUserList() { - this.$axios.get(this.$api.deviceScope.selectUserList).then(res => { + selectUserCondition().then(res => { if (res.code == 200) { - this.responsibleOptions = res.data + let data = [] + res.data.forEach(a => { + data.push({ + id: a.id, + name: a.name + }) + }) + this.responsibleOptions = data } }) }, -- Gitblit v1.9.3