From 2bd7979e7b7db44df83847f800695ee2188146a9 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期五, 01 九月 2023 09:11:54 +0800
Subject: [PATCH] modified: .env.development modified: src/views/experiment/inspectionApplication/index.vue modified: src/views/experiment/reportAuditing/index.vue modified: src/views/inspectionManagement/commissionInspection/index.vue
---
src/views/laboratory/measure/index.vue | 237 +++++++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 198 insertions(+), 39 deletions(-)
diff --git a/src/views/laboratory/measure/index.vue b/src/views/laboratory/measure/index.vue
index d133f34..1bb43b8 100644
--- a/src/views/laboratory/measure/index.vue
+++ b/src/views/laboratory/measure/index.vue
@@ -7,6 +7,9 @@
<el-input v-model="searchData.code" @blur="blurSearch()" class="input-form" placeholder="璇疯緭鍏�">
</el-input>
</el-form-item>
+ <el-form-item v-if="this.radioValue === 1">
+ <el-button type="primary" @click="searchPlan">鏌ヨ</el-button>
+ </el-form-item>
<el-form-item v-if="this.radioValue === 0" :label="this.radioValue === 0 ? '浠櫒璁惧鍚嶇О:' : '璁惧鍚嶇О'"
class="sermargin">
<el-input v-model="searchData.name" class="input-form" placeholder="璇疯緭鍏�">
@@ -70,10 +73,10 @@
<el-table-column prop="name" label="璐熻矗浜�" min-width="10%" />
<el-table-column prop="createTime" label="鍒涘缓鏃ユ湡" min-width="10%" />
<el-table-column prop="name" label="鍒涘缓浜�" min-width="8%" />
- <el-table-column prop="code" label="璁¢噺缂栧彿" min-width="8%" />
+ <el-table-column prop="code" label="璁¢噺缂栧彿" min-width="12%" />
<el-table-column label="鎿嶄綔" min-width="15%">
<template slot-scope="scope">
- <el-button type="text" @click="lookMeasurement(scope.row.equipmentCode)" size="small">鏌ョ湅璁¢噺灞ュ巻</el-button>
+ <!-- <el-button type="text" @click="lookMeasurement(scope.row.equipmentCode)" size="small">鏌ョ湅璁¢噺灞ュ巻</el-button> -->
<el-button type="text" size="small">鏌ョ湅闄勪欢</el-button>
</template>
</el-table-column>
@@ -109,7 +112,7 @@
</el-table-column>
</el-table>
<!-- 鍒嗛〉鍣� -->
- <div style="display: flex;justify-content: end;">
+ <div style="display: flex;justify-content: end;padding: 10px 0;">
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page="currentPage" :page-sizes="[5, 10, 20]" :page-size="pageSize"
layout="total, sizes, prev, pager, next, jumper" :total="total">
@@ -117,11 +120,22 @@
</div>
</div>
</div>
- <div style="position: absolute;top:14px;left: 9px;transition: 1s;width: 99%;height: 82vh;background-color: #fff;z-index: 21;">
- <Add/>
+ <div>
+ <el-button v-if="selectInfoBtn" @click="combackLookPlan"
+ style="position: fixed;top: 43px;right: 14px; z-index: 1000;" type="primary" icon="el-icon-refresh-left"
+ size="mini" plain>杩斿洖</el-button>
+ <div v-if="addBtn"
+ style="display: flex;justify-content: center;width: 10%;position: fixed;top: 43px;right: 14px; z-index: 1000;">
+ <el-button @click="addTop = -82; addBtn = false" size="mini" style="width: 60px;">杩斿洖</el-button>
+ <el-button size="mini" @click="measureAdd" style="width: 60px;" type="primary">淇濆瓨</el-button>
+ </div>
+ </div>
+ <div
+ :style="`position: absolute;top:${addTop}vh;left: 9px;transition: 1s;width: 99%;height: 82vh;background-color: #fff;z-index: 21;`">
+ <Add ref="add" />
</div>
<div id="myMOdel"
- :style="`position: absolute;transition: 1s;top:${mymodelTop}px; left: 9px; width: 99%; height: 65vh; background-color: #fff;z-index: 20;`">
+ :style="`position: absolute;transition: 1s;top:${mymodelTop}px; left: 9px; width: 99%; height: 100vh; background-color: #fff;z-index: 20;`">
<el-col :span="10">
<p style="font-size: 13px;padding-left: 40px;">璁″垝淇℃伅</p>
</el-col>
@@ -149,7 +163,7 @@
</el-col>
</el-col>
<el-col style="width:93%;height: 20vh;margin-top: 30px; margin-left: 40px;">
- <el-table :data="measureData">
+ <el-table max-height="300" :data="measureData">
<el-table-column type="index" label="搴忓彿" />
<el-table-column prop="equipmentCode" label="浠櫒璁惧缂栧彿" />
<el-table-column prop="equipmentName" label="浠櫒璁惧鍚嶇О" />
@@ -188,22 +202,84 @@
<el-table-column prop="imCreateTime" label="鍒涘缓鏃ユ湡" />
<el-table-column prop="measurementName" label="鍒涘缓浜�" />
<el-table-column prop="measurementUnit" label="璁¢噺鍗曚綅" />
- <el-table-column prop="equipmentCode" label="璁¢噺缂栧彿" />
+ <el-table-column prop="code" label="璁¢噺缂栧彿" />
+ <el-table-column prop="equipmentCode" label="鎿嶄綔">
+ <template slot-scope="scope">
+ <a @click="measureUp(scope)" style="color: deepskyblue;">璁¢噺</a>
+ </template>
+ </el-table-column>
</el-table>
</el-col>
- <el-col style="width: 93%;margin-left: 40px; margin-top: 90px;display: flex;justify-content: end;">
+ <el-col style="width: 93%;margin-left: 40px; margin-top: 250px;display: flex;justify-content: end;">
<el-pagination @size-change="handleSizeChangePlan" @current-change="handleCurrentChangePllan"
- :current-page="currentPagePlan" :page-sizes="[5, 10, 20]" :page-size="pageSizePlan"
+ :current-page="currentPagePlan" :page-sizes="[5, 10]" :page-size="pageSizePlan"
layout="total, sizes, prev, pager, next, jumper" :total="totalPlan">
</el-pagination>
</el-col>
</div>
+ <el-dialog class="measureForm" title="璁¢噺" :visible.sync="dialogVisible">
+ <el-form label-position="top" ref="upmeasureForm" :model="measureUpInfo">
+ <el-row :gutter="20">
+ <el-col :span="24">
+ <el-form-item label="妫�瀹氭湁鏁堟湡" prop="date"
+ :rules="[{ required: true, message: '璇烽�夋嫨妫�瀹氭湁鏁堟湡', trigger: 'change' }]">
+ <el-date-picker v-model="measureUpInfo.date" type="date" placeholder="閫夋嫨鏃ユ湡">
+ </el-date-picker>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="20">
+ <el-col :span="12">
+ <el-form-item label="涓嶇‘瀹氬害" prop="uncertainty"
+ :rules="[{ required: true, message: '璇峰~鍐欎笉纭畾搴�', trigger: 'blur' }]">
+ <el-input placeholder="璇峰~鍐欎笉纭畾搴�" v-model="measureUpInfo.uncertainty" />
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item label="缁撴灉" prop="result" :rules="[{ required: true, message: '璇烽�夋嫨缁撴灉', trigger: 'change' }]">
+ <el-select v-model="measureUpInfo.result" clearable filterable :allow-create="true" placeholder="璇烽�夋嫨缁撴灉"
+ style="width:100%">
+ <el-option v-for="item in result" :key="item.id" :label="item.label" :value="item.value" />
+ </el-select>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="20">
+ <el-col :span="24">
+ <el-form-item label="鎬ц兘鎸囨爣">
+ <el-input v-model="measureUpInfo.performanceIndex" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="20">
+ <el-col :span="24">
+ <el-form-item label="澶囨敞">
+ <el-input v-model="measureUpInfo.remarks" type="textarea" :rows="2" placeholder="璇疯緭鍏ュ唴瀹�" />
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row :gutter="20">
+ <el-col :span="24">
+ <el-form-item label="">
+ <el-upload class="upload-demo" action="#" :on-change="handleUploadupdated" :auto-upload="false">
+ <el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
+ </el-upload>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button type="primary" @click="upMeasure">纭� 瀹�</el-button>
+
+ <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
+ </span>
+ </el-dialog>
</div>
</div>
</template>
<script>
-import { getPlanPageList, getStandingPageList, getPlanMeasureInstrument, limitGetPlanMeasureRequest } from '@/api/laboratory/measure'
+import { getPlanPageList, getStandingPageList, getPlanMeasureInstrument, limitGetPlanMeasureRequest, updateMetricalInformationInfo } from '@/api/laboratory/measure'
import { default as Add } from "./Add.vue";
export default {
components: {
@@ -211,6 +287,31 @@
},
data() {
return {
+ dialogVisible: false,
+ tableIndex: null,
+ selectInfoBtn: false,
+ addBtn: false,
+ measureUpInfo: {
+ id: null,
+ code: null,
+ result: null,
+ date: null,
+ uncertainty: null,
+ performanceIndex: null,
+ remarks: null,
+ file: null,
+ termValidity: null
+ },
+ result: [{
+ label: '鍚堟牸',
+ value: 1
+ }, {
+ label: '鐭鍚庡彲鐢�',
+ value: 2
+ }, {
+ label: '涓嶅悎鏍�',
+ value: 3
+ }],
searchData: {
code: '',
name: '',
@@ -232,9 +333,8 @@
currentPagePlan: 1,
pageSizePlan: 5,
totalPlan: 0,
- drawer: false,
direction: 'rtl',
- lookVisible: true,
+ lookVisible: false,
measureData: [],
planInfo: {
plannedOrderNumber: 7897897987,
@@ -244,7 +344,8 @@
createPerson: '鏌愭煇璐熻矗浜�',
createTime: '2021-09-08'
},
- mymodelTop: -600,//14
+ mymodelTop: -1000,//14
+ addTop: -85,
planId: 0
}
},
@@ -253,36 +354,87 @@
// this.getPlanPageList()
},
methods: {
+ upResult() {
+ this.measureData[this.tableIndex].result = this.resultUp
+
+ },
+ async upMeasure() {
+ let res = await updateMetricalInformationInfo(this.measureUpInfo)
+ if (res) {
+ this.$message({
+ message: '鎿嶄綔鎴愬姛锛�',
+ type: 'success'
+ });
+ this.limitGetPlanMeasureInstrument()
+ this.dialogVisible = false
+ }
+ },
+ handleUploadupdated() {
+
+ },
+ measureUp(scope) {
+ this.dialogVisible = true
+ this.tableIndex = scope.$index
+ this.measureUpInfo.result = scope.row.result
+ this.measureUpInfo.code = scope.row.code
+ this.measureUpInfo.date = scope.row.endDate
+ this.measureUpInfo.id = scope.row.imId
+ this.measureUpInfo.uncertainty = scope.row.uncertainty
+ this.measureUpInfo.performanceIndex = scope.row.performanceIndex
+ this.measureUpInfo.remarks = scope.row.remarks
+ this.measureUpInfo.termValidity = scope.row.termValidity
+ },
+ async measureAdd() {
+ let res = await this.$refs.add.add()
+ if (!res) {
+ return
+ }
+ this.addTop = -82
+ this.$message({
+ message: '鎿嶄綔鎴愬姛锛�',
+ type: 'success'
+ });
+ this.lookVisible = false
+ this.addBtn = false
+ this.limitGetPlanMeasureInstrument()
+ },
async handleSizeChangePlan(num) {
this.pageSizePlan = num
+ this.currentPage
await this.limitGetPlanMeasureInstrument()
},
- async handleCurrentChangePllan(num) {
- this.currentPagePlan = num
- await this.limitGetPlanMeasureInstrument()
+ handleCurrentChangePllan(num) {
+ this.currentPagePlan = num;
+ this.limitGetPlanMeasureInstrument();
},
addPlan() {
- this.drawer = true
+ this.addTop = 2
+ this.lookVisible = true
+ this.$parent.mainShowAdd()
+ this.addBtn = true
},
async limitGetPlanMeasureInstrument() {
- let res = await limitGetPlanMeasureRequest({
+ let param = {
id: this.planId,
currentPage: this.currentPagePlan,
- pageSize: this.pageSize
- })
- this.totalPlan = res.data.taotal
- this.measureData = res.data.list
+ pageSize: this.pageSizePlan
+ }
+ const res = await limitGetPlanMeasureRequest(param);
+ console.log(res.data.total);
+ // this.totalPlan = res.data.taotal;
+ this.measureData = res.data.list;
+ console.log(this.totalPlan);
},
lookPalan(id) {
this.planId = id
this.getPlanAndInfoAndIns(id)
this.lookVisible = true
- this.mymodelTop = 10
+ this.mymodelTop = 2
+ this.selectInfoBtn = true
this.$parent.triggerMainBtnPlan()
},
async getPlanAndInfoAndIns(id) {
let res = await getPlanMeasureInstrument({ "id": id, "currentPage": this.currentPagePlan, "pageSize": this.pageSize });
- console.log(res);
for (const key in res.data.list) {
this.planInfo[key] = res.data.list[key]
}
@@ -299,27 +451,30 @@
},
combackLookPlan() {
this.lookVisible = false
- this.mymodelTop = -600
+ this.mymodelTop = -1000
+ this.selectInfoBtn = false
},
blurSearch() {
if (this.radioValue === 1) {
- console.log("璁″垝");
}
},
handleClose() {
this.drawer = false
},
- handleCurrentChange() {
- this.getStandingPageList()
+ handleCurrentChange(num) {
+ this.currentPage = num
+ this.radioValue ? this.getPlanPageList() : this.getStandingPageList()
},
- handleSizeChange() {
- this.getStandingPageList()
+ handleSizeChange(num) {
+ this.pageSize = num
+ this.radioValue ? this.getPlanPageList() : this.getStandingPageList()
},
async getStandingPageList() {
- const res = await getStandingPageList({
+ let param = {
currentPage: this.currentPage, pageSize: this.pageSize,
code: this.searchData.code, name: this.searchData.name, unit: this.searchData.measureunit
- })
+ }
+ const res = await getStandingPageList(param)
this.measureLedgerTable = res.data.records
this.total = res.data.total
this.measureLedgerTable.forEach(item => {
@@ -352,6 +507,9 @@
search() {
this.getStandingPageList()
},
+ searchPlan(){
+ this.getPlanPageList()
+ },
reset(formName) {
this.searchData.name = ''
this.searchData.code = ''
@@ -362,10 +520,12 @@
this.reset()
},
async getPlanPageList() {
- const res = await getPlanPageList({
- currentPage: this.currentPage, pageSize: this.pageSize,
- code: this.searchData.code, name: this.searchData.name, unit: this.searchData.measureunit
- })
+ let param = {
+ currentPage: this.currentPage,
+ pageSize: this.pageSize,
+ plannedOrderNumber: this.searchData.code
+ }
+ const res = await getPlanPageList(param)
res.data.list.forEach(item => {
item.palanDate = item.beginTime + " ~ " + item.endTime
})
@@ -373,13 +533,12 @@
this.total = res.data.total
},
async lookMeasurement(code) {
- console.log(code);
},
}
}
</script>
-<style scoped>
+<style scoped lang="scss">
.top-bar {
margin: -25px -15px;
background: #fff;
--
Gitblit v1.9.3