From 15ac79a640187f1bc4d52d911428786bfdc710bd Mon Sep 17 00:00:00 2001
From: 王震 <10952869+daywangzhen@user.noreply.gitee.com>
Date: 星期二, 22 八月 2023 09:36:50 +0800
Subject: [PATCH] 新增检验功能完善
---
src/views/laboratory/measure/index.vue | 183 +++++++++++++++++++++++++++++++++++++++------
1 files changed, 157 insertions(+), 26 deletions(-)
diff --git a/src/views/laboratory/measure/index.vue b/src/views/laboratory/measure/index.vue
index 0330afc..c32c063 100644
--- a/src/views/laboratory/measure/index.vue
+++ b/src/views/laboratory/measure/index.vue
@@ -117,11 +117,12 @@
</div>
</div>
</div>
- <div style="position: absolute;top:14px;left: 9px;transition: 1s;width: 100%;height: 82vh;background-color: #fff;z-index: 21;">
- <Add/>
+ <div
+ :style="`position: absolute;top:${addTop}px;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: 100%; height: 65vh; background-color: #fff;z-index: 20;`">
+ :style="`position: absolute;transition: 1s;top:${mymodelTop}px; left: 9px; width: 99%; height: 85vh; background-color: #fff;z-index: 20;`">
<el-col :span="10">
<p style="font-size: 13px;padding-left: 40px;">璁″垝淇℃伅</p>
</el-col>
@@ -188,22 +189,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 +274,29 @@
},
data() {
return {
+ dialogVisible: false,
+ tableIndex: null,
+ 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 +318,8 @@
currentPagePlan: 1,
pageSizePlan: 5,
totalPlan: 0,
- drawer: false,
direction: 'rtl',
- lookVisible: true,
+ lookVisible: false,
measureData: [],
planInfo: {
plannedOrderNumber: 7897897987,
@@ -244,7 +329,8 @@
createPerson: '鏌愭煇璐熻矗浜�',
createTime: '2021-09-08'
},
- mymodelTop: -600,//14
+ mymodelTop: -700,//14
+ addTop: -700,
planId: 0
}
},
@@ -253,6 +339,47 @@
// 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
+ },
+ measureAdd() {
+ let add = this.$refs.add.add()
+ if (add) {
+ this.addTop = -700
+ this.$message({
+ message: '鎿嶄綔鎴愬姛锛�',
+ type: 'success'
+ });
+ this.lookVisible = false
+ }
+ },
async handleSizeChangePlan(num) {
this.pageSizePlan = num
await this.limitGetPlanMeasureInstrument()
@@ -262,14 +389,17 @@
await this.limitGetPlanMeasureInstrument()
},
addPlan() {
- this.drawer = true
+ this.addTop = 14
+ this.lookVisible = true
+ this.$parent.mainShowAdd()
},
async limitGetPlanMeasureInstrument() {
- let res = await limitGetPlanMeasureRequest({
+ let param = {
id: this.planId,
currentPage: this.currentPagePlan,
- pageSize: this.pageSize
- })
+ pageSize: this.pageSizePlan
+ }
+ let res = await limitGetPlanMeasureRequest(param)
this.totalPlan = res.data.taotal
this.measureData = res.data.list
},
@@ -282,7 +412,6 @@
},
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 +428,29 @@
},
combackLookPlan() {
this.lookVisible = false
- this.mymodelTop = -600
+ this.mymodelTop = -700
},
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 => {
@@ -362,10 +493,11 @@
this.reset()
},
async getPlanPageList() {
- const res = await getPlanPageList({
+ let param = {
currentPage: this.currentPage, pageSize: this.pageSize,
code: this.searchData.code, name: this.searchData.name, unit: this.searchData.measureunit
- })
+ }
+ const res = await getPlanPageList(param)
res.data.list.forEach(item => {
item.palanDate = item.beginTime + " ~ " + item.endTime
})
@@ -373,7 +505,6 @@
this.total = res.data.total
},
async lookMeasurement(code) {
- console.log(code);
},
}
}
--
Gitblit v1.9.3