From e07e6af94e8df05f4f5331c631e18e265d7174ca Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期二, 05 九月 2023 16:52:27 +0800
Subject: [PATCH] modified: src/router/index.js
---
src/views/laboratory/ledger/index.vue | 253 ++++++++++++++++++++++++++++----------------------
1 files changed, 142 insertions(+), 111 deletions(-)
diff --git a/src/views/laboratory/ledger/index.vue b/src/views/laboratory/ledger/index.vue
index 131718c..12f8143 100644
--- a/src/views/laboratory/ledger/index.vue
+++ b/src/views/laboratory/ledger/index.vue
@@ -1,23 +1,9 @@
<template>
<div class="ledger-main">
<div class="page-header-search">
- <div class="search-bar">
- <el-form ref="form" :inline="true" :model="searchData">
- <el-form-item>
- <el-input v-model="searchData.keyword" placeholder="璇疯緭鍏ョ紪鍙�/璁惧鍚嶇О/鍨嬪彿瑙勬牸">
- <i slot="prefix" class="el-input__icon el-icon-search" />
- </el-input>
- </el-form-item>
- <el-form-item>
- <el-button type="primary" @click="filterTableData">鏌ヨ</el-button>
- <el-button type="primary" plain @click="resetBtn">閲嶇疆</el-button>
- <!-- <el-button type="text">楂樼骇鎼滅储<i class="el-icon-arrow-down el-icon--right" /></el-button> -->
- </el-form-item>
- </el-form>
- </div>
<div class="serve-btn">
<el-button type="primary" icon="el-icon-plus"
- @click="addDrawerVisible = true; equipmentform.equipmentMeasurement = 1; equipmentform.whetherDataAcquisition = 1">鏂板浠櫒</el-button>
+ @click="showAddDrawer()">鏂板浠櫒</el-button>
</div>
</div>
<div class="content-main">
@@ -25,7 +11,7 @@
<div class="bom-item-search">
<el-row>
<el-col :span="19">
- <el-input v-model="filterText" placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" />
+ <el-input v-model="filterText" clearable placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" />
</el-col>
<el-col :span="5">
<el-button type="primary" size="small" @click="addClassVisible = true"><i
@@ -33,27 +19,42 @@
</el-col>
</el-row>
</div>
- <el-tree ref="classTree" :data="classTree" :props="defaultProps" :default-expand-all="true"
+ <el-tree :highlight-current="true" ref="classTree" :data="classTree" :props="defaultProps" :default-expand-all="true"
:filter-node-method="filterNode" @node-click="nodeClickHandler" />
</div>
<div class="library-table">
<div class="table-header">
<div class="search-bar">
- <el-radio-group v-model="radioValue" @change="getConditionTable">
- <!-- <el-radio-button label="0">鍏ㄩ儴</el-radio-button> -->
- <el-radio-button v-for="item in conditionsOptions" :key="item.value" :label="item.value">
- {{ item.label }}
- </el-radio-button>
- </el-radio-group>
- <el-checkbox v-model="isOut" @change="getExpireTable" :style="{ 'marginLeft': '12px' }">宸茶繃鏈�</el-checkbox>
- </div>
- <div class="serve-btn">
- <!-- <el-button type="primary" icon="el-icon-plus">鏂板浜哄憳</el-button> -->
+ <el-row :gutter="20">
+ <el-col :span="15">
+ <el-form ref="form" :inline="true" :model="searchData">
+ <el-form-item>
+ <el-input v-model="searchData.keyword" placeholder="璇疯緭鍏ョ紪鍙�/璁惧鍚嶇О/鍨嬪彿瑙勬牸">
+ <i slot="prefix" class="el-input__icon el-icon-search" />
+ </el-input>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" @click="filterTableData">鏌ヨ</el-button>
+ <el-button type="primary" plain @click="resetBtn">閲嶇疆</el-button>
+ <!-- <el-button type="text">楂樼骇鎼滅储<i class="el-icon-arrow-down el-icon--right" /></el-button> -->
+ </el-form-item>
+ </el-form>
+ </el-col>
+ <el-col :span="9">
+ <el-radio-group v-model="radioValue" @change="getConditionTable">
+ <!-- <el-radio-button label="0">鍏ㄩ儴</el-radio-button> -->
+ <el-radio-button v-for="item in conditionsOptions" :key="item.value" :label="item.value">
+ {{ item.label }}
+ </el-radio-button>
+ </el-radio-group>
+ <el-checkbox v-model="isOut" @change="getExpireTable" :style="{ 'marginLeft': '12px' }">宸茶繃鏈�</el-checkbox>
+ </el-col>
+ </el-row>
</div>
</div>
<div class="table-box">
- <el-table ref="equipmentTable" node-key="father_name" :cell-style="{ textAlign: 'center' }"
- :header-cell-style="{ border: '0px', background: '#f5f7fa', color: '#606266', boxShadow: 'inset 0 1px 0 #ebeef5', textAlign: 'center' }"
+ <el-table ref="equipmentTable" node-key="father_name" :cell-style="{ textAlign: 'left' }"
+ :header-cell-style="{ border: '0px', background: '#f5f7fa', color: '#606266', boxShadow: 'inset 0 1px 0 #ebeef5', textAlign: 'left' }"
:data="equipmentTable" style="width: 100%;">
<el-table-column type="index" label="搴忓彿" min-width="90" />
<el-table-column prop="equipment_code" label="浠櫒璁惧缂栧彿" min-width="200" />
@@ -63,8 +64,11 @@
<el-table-column prop="termValidity" label="璁¢噺鎴鏈夋晥鏈�" min-width="200" />
<el-table-column prop="conditions" label="璁惧鐘舵��" min-width="120">
<template slot-scope="scope">
- <el-tag :type="scope.row.conditions === 0 ? 'primary' : 'success'" disable-transitions>{{
- scope.row.conditions | conditionsFilter }}</el-tag>
+ <el-tag v-if="scope.row.conditions === 1" type="success" disable-transitions>杩愯</el-tag>
+ <el-tag v-if="scope.row.conditions === 2" type="danger" disable-transitions>鏁呴殰</el-tag>
+ <el-tag v-if="scope.row.conditions === 3" type="warning" disable-transitions>鎶ヤ慨</el-tag>
+ <el-tag v-if="scope.row.conditions === 4" type="warning" disable-transitions>妫�淇�</el-tag>
+ <el-tag v-if="scope.row.conditions === 5" disable-transitions>寰呮満</el-tag>
</template>
</el-table-column>
<el-table-column prop="storage_place" label="瀛樻斁鍦�" min-width="200" />
@@ -151,7 +155,7 @@
<span><i class="el-icon-edit" />楠屾敹鏃ユ湡锛歿{ equipmentDetail.acceptanceDate }}</span>
</div>
<div class="message-item">
- <span><i class="el-icon-edit" />淇濈浜猴細{{ equipmentDetail.userId }}</span>
+ <span><i class="el-icon-edit" />淇濈浜猴細{{ equipmentDetail.userName }}</span>
</div>
<div class="message-item">
<span><i class="el-icon-edit" />鏄惁鏀寔鏁伴噰锛歿{ equipmentDetail.whetherDataAcquisition == 1 ? '鏀寔' : '涓嶆敮鎸�'
@@ -247,7 +251,7 @@
<el-row :gutter="50">
<el-col :span="11">
<el-form-item label="鎵�灞炲垎绫伙細" prop="classifyId" label-width="80" :rules="[
- { required: true, message: '璇烽�夋嫨鎵�灞炲垎绫�', trigger: 'change' }
+ { required: true, message: '璇烽�夋嫨鎵�灞炲垎绫�', trigger: 'blur' }
]">
<el-cascader style="width: 100%;" v-model="equipmentform.classifyId" :options="classTree" :show-all-levels="false" />
</el-form-item>
@@ -268,7 +272,7 @@
</el-col>
<el-col :span="11">
<el-form-item label="鐘舵�侊細" prop="conditions"
- :rules="[{ required: true, message: '璇烽�夋嫨浠櫒璁惧鐘舵��', trigger: 'change' }]" label-width="80">
+ :rules="[{ required: true, message: '璇烽�夋嫨浠櫒璁惧鐘舵��', trigger: 'blur' }]" label-width="80">
<el-select v-model="equipmentform.conditions" clearable filterable :allow-create="true"
placeholder="璇烽�夋嫨浠櫒璁惧鐘舵��" style="width:100%">
<el-option v-for="item in conditionsOptions" :key="item.value" :label="item.label"
@@ -310,7 +314,7 @@
</el-col>
<el-col :span="11">
<el-form-item label="鍒拌揣鏃ユ湡锛�" label-width="80">
- <el-date-picker v-model="equipmentform.arrivalDate" type="date" placeholder="璇烽�夋嫨鍒拌揣鏃ユ湡"
+ <el-date-picker value-format="yyyy-MM-dd" v-model="equipmentform.arrivalDate" type="date" placeholder="璇烽�夋嫨鍒拌揣鏃ユ湡"
style="width:100%" />
</el-form-item>
</el-col>
@@ -318,7 +322,7 @@
<el-row :gutter="50">
<el-col :span="11">
<el-form-item label="楠屾敹鏃ユ湡锛�" label-width="80">
- <el-date-picker v-model="equipmentform.acceptanceDate" type="date" placeholder="璇烽�夋嫨楠屾敹鏃ユ湡"
+ <el-date-picker value-format="yyyy-MM-dd" v-model="equipmentform.acceptanceDate" type="date" placeholder="璇烽�夋嫨楠屾敹鏃ユ湡"
style="width:100%" />
</el-form-item>
</el-col>
@@ -347,8 +351,8 @@
</el-row>
<el-row v-show="equipmentform.equipmentMeasurement === 1" :gutter="50">
<el-col :span="12">
- <el-form-item label="璁¢噺鎴鏈夋晥鏈燂細" label-width="80">
- <el-input v-model="equipmentform.termValidity" placeholder="璇峰~鍐欒閲忔湁鏁堟湡" type="number" />
+ <el-form-item label="璁¢噺鍛ㄦ湡(鏈�)锛�" label-width="80">
+ <el-input min="0" v-model="equipmentform.termValidity" placeholder="璇峰~鍐欒閲忓懆鏈�" type="number" />
</el-form-item>
</el-col>
</el-row>
@@ -388,7 +392,7 @@
</el-row>
<el-row :gutter="20">
<el-col :span="24">
- <el-form-item label="妫�瀹氭湁鏁堟湡" prop="date" :rules="[{ required: true, message: '璇烽�夋嫨妫�瀹氭湁鏁堟湡', trigger: 'change' }]">
+ <el-form-item label="妫�瀹氭湁鏁堟湡" prop="date" :rules="[{ required: true, message: '璇烽�夋嫨妫�瀹氭湁鏁堟湡', trigger: 'blur' }]">
<el-date-picker v-model="measureForm.date" type="daterange" range-separator="鑷�" start-placeholder="寮�濮嬫棩鏈�"
end-placeholder="缁撴潫鏃ユ湡" />
</el-form-item>
@@ -426,8 +430,8 @@
</el-row>
<el-row :gutter="20">
<el-col :span="24">
- <el-form-item label="">
- <el-upload class="upload-demo" action="#" :on-change="handleUpload" :auto-upload="false">
+ <el-form-item label="" prop="file">
+ <el-upload ref="upload" class="upload-demo" action="#" :on-change="handleUpload" :auto-upload="false">
<el-button size="small" type="primary">鐐瑰嚮涓婁紶</el-button>
</el-upload>
</el-form-item>
@@ -460,29 +464,7 @@
} from '@/api/laboratory/ledger'
import { parseTime } from '@/utils/index'
export default {
- filters: {
- conditionsFilter(value) {
- let returnValue = null
- switch (+value) {
- case 1:
- returnValue = '杩愯'
- break
- case 2:
- returnValue = '鏁呴殰'
- break
- case 3:
- returnValue = '鎶ヤ慨'
- break
- case 4:
- returnValue = '妫�淇�'
- break
- case 5:
- returnValue = '寰呮満'
- break
- }
- return returnValue
- }
- },
+ filters: {},
data() {
return {
// 鐢ㄦ埛涓嬫媺妗嗛厤缃」
@@ -604,7 +586,7 @@
result: null,
performanceIndex: null,
remarks: null,
- file: null
+ file: ""
},
activeTabsName: 'codePoints',
// 鐮佺偣琛ㄦ牸鐨勭姸鎬侊細鏁版嵁灞曠ずfalse/鏂板杈撳叆true
@@ -627,6 +609,11 @@
watch: {
filterText(val) {
this.$refs.classTree.filter(val)
+ },
+ measureFormVisible(newVal){
+ if(newVal === false){
+ this.resetForm("addmeasureForm");
+ }
}
},
created() {
@@ -634,6 +621,27 @@
this.getUserOptions()
},
methods: {
+ //鏄剧ず鏂板浠櫒妯℃�佹
+ showAddDrawer(){
+ this.addDrawerVisible = true;
+ this.equipmentform = {
+ acceptanceDate: '', // 楠屾敹鏃ユ湡
+ arrivalDate: '', // 鍒拌揣鏃ユ湡
+ classifyId: '', // 鎵�灞炲垎绫�
+ conditions: '', // 鐘舵��
+ descriptiveness: '', // 鎻忚堪
+ equipmentCode: '', // 璁惧缂栧彿
+ equipmentMeasurement: 1, // 浠櫒璁惧璁¢噺
+ equipmentName: '', // 浠櫒璁惧鍚嶇О
+ errorRate: '', // 涓嶇‘瀹氬害/鍑嗙‘搴�/鏈�澶у厑璁歌宸�
+ userId: '', // 淇濈浜�
+ manufacturer: '', // 鐢熶骇鍘傚
+ measuringRange: '', // 娴嬮噺鑼冨洿
+ specificationsModels: '', // 鍨嬪彿瑙勬牸
+ storagePlace: '', // 瀛樻斁鍦扮偣
+ whetherDataAcquisition: 1 // 鏄惁鏀寔鏁伴噰
+ }
+ },
// 鑾峰彇鍒嗙被鏁版嵁
async getThreeData() {
const { data } = await getClassifyList()
@@ -681,7 +689,7 @@
// 鑺傜偣鐐瑰嚮澶勭悊
nodeClickHandler(data, node, element) {
this.nodeclicked = data
- // console.log(data)
+ console.log(data)
// 鍙湁鏁版嵁涓惡甯d鎵嶈兘鍙戦�佹煡璇㈣姹�
if (data.id) {
this.getEquipmentTable({ classifyId: data.id, pageSize: this.pageSize, pageNo: this.currentPage, whetherWhether: this.isOut })
@@ -745,7 +753,7 @@
this.$message.success('娣诲姞鎴愬姛')
}
} catch (error) {
- this.$message.error(error)
+ this.$message.error(error.message)
}
await this.closeCodePoins()
},
@@ -786,6 +794,8 @@
this.$message.error('娣诲姞澶辫触')
}
this.$message.success('娣诲姞鎴愬姛')
+ let d = this.nodeclicked;
+ this.nodeClickHandler(d);
this.addDrawerVisible = false
this.equipmentform = {}
return
@@ -794,6 +804,8 @@
try {
const res = await changeInstrument(this.equipmentform)
this.$message.success('淇敼鎴愬姛')
+ let d = this.nodeclicked;
+ this.nodeClickHandler(d);
this.addDrawerVisible = false
this.detailDrawer = false
} catch (error) {
@@ -801,56 +813,78 @@
}
},
cancelAddEq() {
+ this.resetForm('addDrawer')
this.addDrawerVisible = false
- // this.resetForm('addNewEquipment')
},
resetForm(formName) {
+ this.measureForm = {
+ userId: null,
+ measurementUnit: null,
+ date: null,
+ uncertainty: null,
+ result: null,
+ performanceIndex: null,
+ remarks: null,
+ file: ""
+ }
this.$refs[formName].resetFields();
},
cancelAddMeasure() {
+ this.$refs['upload'].clearFiles();
+ this.measureForm.file = null;
this.measureFormVisible = false
- this.resetForm('addmeasureForm')
+ this.resetForm('addmeasureForm');
},
// 娣诲姞璁¢噺淇℃伅
async addMeasure() {
- let v = this.submitForm('addmeasureForm')
- console.log(v);
- if (!v) {
- return
- }
- // 鏍煎紡鍖栨椂闂�
- this.measureForm.instrumentId = this.equipmentDetail.id
- if (Array.isArray(this.measureForm.date)) {
- this.measureForm.beginDate = parseTime(this.measureForm.date[0], '{y}-{m}-{d}')
- this.measureForm.endDate = parseTime(this.measureForm.date[1], '{y}-{m}-{d}')
- }
- console.log(this.measureForm)
- const formData = new FormData()
- formData.append('file', this.measureForm.file?.raw, this.measureForm.file?.name)
- console.log(this.measureForm)
- for (const key in this.measureForm) {
- console.log(key)
- // if (key === 'file') return
- formData.append(key, this.measureForm[key])
- }
- console.log(formData)
- try {
- const { data } = await addMetricalInformation(formData)
- console.log(data)
- this.$message.success('娣诲姞鎴愬姛')
- const { data: informationList } = await getMetricalInformationList({ InstrumentId: this.equipmentDetail.id })
- this.measureTable = informationList
- this.measureForm = {}
- this.measureFormVisible = false
- } catch (error) {
- this.$message.error('娣诲姞澶辫触')
- }
+ this.$refs['addmeasureForm'].validate(async(valid)=>{
+ if(valid){
+ // 鏍煎紡鍖栨椂闂�
+ this.measureForm.instrumentId = this.equipmentDetail.id
+ if (Array.isArray(this.measureForm.date)) {
+ this.measureForm.beginDate = parseTime(this.measureForm.date[0], '{y}-{m}-{d}')
+ this.measureForm.endDate = parseTime(this.measureForm.date[1], '{y}-{m}-{d}')
+ }
+ console.log(this.measureForm)
+ const formData = new FormData()
+ if(this.measureForm.file == null || this.measureForm.file == ""){
+ this.$message.warning("璇烽�夋嫨瑕佷笂浼犵殑鏂囦欢!");
+ return;
+ }else{
+ formData.append('file', this.measureForm.file?.raw, this.measureForm.file?.name)
+ }
+ console.log(this.measureForm)
+ for (const key in this.measureForm) {
+ console.log(key)
+ // if (key === 'file') return
+ formData.append(key, this.measureForm[key])
+ }
+ console.log(formData)
+ try {
+ const { data } = await addMetricalInformation(formData)
+ console.log(data)
+ this.$message.success('娣诲姞鎴愬姛')
+ const { data: informationList } = await getMetricalInformationList({ InstrumentId: this.equipmentDetail.id })
+ this.measureTable = informationList
+ this.measureForm = {}
+ this.measureFormVisible = false
+ } catch (error) {
+ this.$message.error('娣诲姞澶辫触')
+ }
+ this.measureForm.file = null;
+ this.$refs['upload'].clearFiles();
+ }else{
+ console.log(32);
+ }
+ });
},
// 鍏抽棴璁惧璇︽儏鎶藉眽
closeDetailDrawer() {
this.equipmentDetail = {}
this.codePointsTable = []
this.measureTable = []
+ this.measureForm.file = null;
+ this.$refs['upload'].clearFiles();
},
// 鍏抽棴娣诲姞淇敼璁惧鎶藉眽
closeAddOrChangeDrawer() {
@@ -860,7 +894,7 @@
},
// 鏂囦欢涓婁紶
handleUpload(file, fileList) {
- // console.log(file, fileList)
+ console.log(file, fileList)
this.measureForm.file = file
},
// 鏍规嵁杈撳叆鐨勮澶囩紪鍙凤紝璁惧鍚嶇О鎴栬�呭瀷鍙疯鏍煎叧閿瓧杩涜杩囨护鍒楄〃
@@ -946,15 +980,13 @@
this.deletedialogVisible = true
},
async deleteInstrument() {
- let up = await deleteInstrument({ instrumentId: this.instrumentId })
- if (up.data) {
- this.$message({
- message: '鎿嶄綔鎴愬姛锛�',
- type: 'success'
- });
+ await deleteInstrument({ instrumentId: this.instrumentId }).then(res=>{
+ this.$message.success('鍒犻櫎鎴愬姛锛�');
let d = this.nodeclicked
this.nodeClickHandler(d);
- }
+ }).catch(()=>{
+ this.$message.error('鍒犻櫎澶辫触锛�');
+ });
this.deletedialogVisible = false
},
async submitTreeForm(formName) {
@@ -1055,13 +1087,12 @@
background: #ecf5ff !important;
border-color: #b3d8ff !important;
}
-
.el-form {
.el-form-item {
margin-bottom: 0px !important;
.el-input {
- width: 360px;
+ width: 500px;
}
}
}
--
Gitblit v1.9.3