From de319760a2124d3043491d40f9c2ebf3d27be78f Mon Sep 17 00:00:00 2001 From: spring <2396852758@qq.com> Date: 星期一, 24 三月 2025 10:24:27 +0800 Subject: [PATCH] 合并装备代码 --- src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue | 4 src/views/CNAS/resourceDemand/device/component/files.vue | 7 src/views/CNAS/resourceDemand/device/component/management.vue | 92 ++--- src/views/CNAS/resourceDemand/device/component/usingExternalInstruments.vue | 27 src/views/business/reportPreparation/index.vue | 14 src/views/statisticalCharts/qualificationRateStatistics/index.vue | 81 +++- src/views/business/unpass/components/unPassDialog.vue | 6 src/views/CNAS/personnel/personnelInfo/components/Edit.vue | 9 src/views/business/inspectionTask/inspection.vue | 10 src/views/business/productOrder/index.vue | 45 +- src/views/CNAS/resourceDemand/device/component/equipmentMaintenancePlan.vue | 4 src/views/business/inspectionTask/index.vue | 104 ++-- src/views/CNAS/resourceDemand/device/component/equipmentCalibrationPlan.vue | 67 ++- src/views/CNAS/resourceDemand/device/component/deviceOverview.vue | 273 ++++++-------- src/views/CNAS/resourceDemand/device/component/record.vue | 103 +---- src/views/statisticalCharts/itemInspectionAnalysis/index.vue | 157 +++++--- src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue | 67 ++- 17 files changed, 535 insertions(+), 535 deletions(-) diff --git a/src/views/CNAS/personnel/personnelInfo/components/Edit.vue b/src/views/CNAS/personnel/personnelInfo/components/Edit.vue index 2e6d1dd..717ca98 100644 --- a/src/views/CNAS/personnel/personnelInfo/components/Edit.vue +++ b/src/views/CNAS/personnel/personnelInfo/components/Edit.vue @@ -137,7 +137,7 @@ import { newPersonnelAddedToTrainingRecords, outOfFocusPreservation, trainingAndAssessmentRecordsAdded, trainingAndAssessmentRecordsEvaluate, - trainingAndAssessmentRecordsPage + trainingAndAssessmentRecordsPage, deleteTrainingAndAssessmentRecords } from "@/api/cnas/personal/personalTraining"; export default { @@ -221,6 +221,7 @@ }, addUserTableInfo: { name: null, + type: 2 }, multipleSelection: [], userList: [], @@ -300,15 +301,13 @@ }, batchDelete() { if (this.multipleSelection.length > 0) { - let ids = this.multipleSelection.map(item => item.trainingRecordId) + let ids = this.multipleSelection.map(item => item.trainingRecordId).join(',') this.$confirm('鏄惁纭鍒犻櫎鎵�閫夋嫨鐨勬暟鎹�?', '鎻愮ず', { confirmButtonText: '纭畾', cancelButtonText: '鍙栨秷', type: 'warning' }).then(() => { - let formData = new FormData() - formData.append('ids', ids) - deleteTrainingAndAssessmentRecords(formData).then(res => { + deleteTrainingAndAssessmentRecords({ids: ids}).then(res => { if (res.code == 200) { this.$message.success('鍒犻櫎鎴愬姛'); this.getInfo() diff --git a/src/views/CNAS/resourceDemand/device/component/deviceOverview.vue b/src/views/CNAS/resourceDemand/device/component/deviceOverview.vue index bb5ae55..1bdd8e4 100644 --- a/src/views/CNAS/resourceDemand/device/component/deviceOverview.vue +++ b/src/views/CNAS/resourceDemand/device/component/deviceOverview.vue @@ -1,158 +1,8 @@ <!-- 璁惧鎬昏 --> -<style scoped> -.title { - height: 60px; - line-height: 60px; -} - -.search { - background-color: #fff; - height: 50px; - display: flex; - align-items: center; -} - -.search_thing { - width: 350px; - display: flex; - align-items: center; -} - -.search_label { - width: 110px; - font-size: 14px; - text-align: left; -} - -.search_input { - width: calc(100% - 110px); -} - -.table { - background-color: #fff; - height: calc(100vh - 17em); - /* padding: 10px; */ - overflow-y: auto; -} - -.card { - list-style-type: none; - display: grid; - grid-template-columns: repeat(auto-fit, 330px); - justify-content: start; - grid-gap: 16px; - min-height: 300px; - padding-left: 0; -} - -.card li { - width: 330px; - height: 165px; - border-radius: 8px 8px 8px 8px; - border: 1px solid #EEEEEE; - margin: 0 !important; - display: flex; - align-items: center; - box-sizing: border-box; - padding: 16px; - font-size: 14px; - color: #666666; - position: relative; - overflow: hidden; -} - -.card li .img { - width: 90px; - height: 90px; - border-radius: 16px; - margin-right: 10px; -} - -.list-left .list-left-info { - line-height: 36px; - display: flex; -} - -.text-truncate { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap -} - -.circles { - position: absolute; - width: 70px; - height: 70px; - right: 0; - top: 0; - z-index: 0; -} - -.circles .circle { - border-radius: 50%; - opacity: 0.2; -} - -.circle0, -.circle1, -.circle2 { - width: 60px; - height: 60px; - position: absolute; -} - -.circle3 { - width: 16px; - height: 16px; - position: absolute; -} - -.circle0 { - bottom: 6px; - left: 0; -} - -.circle1 { - bottom: 0; - right: -30px; -} - -.circle2 { - left: 0; - top: -30px; -} - -.circle3 { - top: 0; - right: 0; -} - -.success .circle { - background: #34BD66; -} - -.danger .circle { - background: #FF3838; -} - -.warning .circle { - background: #FBB247; -} - -.info .circle { - background: #909399; -} - -.el-form-item { - margin-top: 11px; - margin-bottom: 11px; -} -</style> - <template> <div class="role_manage"> <div> - <el-form :model="entity" inline label-position="right" label-width="80px"> + <el-form :model="entity" inline label-position="right"> <el-form-item label="鐘舵��:"> <el-select v-model="entity.deviceStatus" placeholder="鍏ㄩ儴" size="small" clearable> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> @@ -387,3 +237,124 @@ } } </script> +<style scoped> +.table { + background-color: #fff; + height: calc(100vh - 17em); + /* padding: 10px; */ + overflow-y: auto; +} + +.card { + list-style-type: none; + display: grid; + grid-template-columns: repeat(auto-fit, 330px); + justify-content: start; + grid-gap: 16px; + min-height: 300px; + padding-left: 0; +} + +.card li { + width: 330px; + height: 165px; + border-radius: 8px 8px 8px 8px; + border: 1px solid #EEEEEE; + margin: 0 !important; + display: flex; + align-items: center; + box-sizing: border-box; + padding: 16px; + font-size: 14px; + color: #666666; + position: relative; + overflow: hidden; +} + +.card li .img { + width: 90px; + height: 90px; + border-radius: 16px; + margin-right: 10px; +} + +.list-left .list-left-info { + line-height: 36px; + display: flex; +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap +} + +.circles { + position: absolute; + width: 70px; + height: 70px; + right: 0; + top: 0; + z-index: 0; +} + +.circles .circle { + border-radius: 50%; + opacity: 0.2; +} + +.circle0, +.circle1, +.circle2 { + width: 60px; + height: 60px; + position: absolute; +} + +.circle3 { + width: 16px; + height: 16px; + position: absolute; +} + +.circle0 { + bottom: 6px; + left: 0; +} + +.circle1 { + bottom: 0; + right: -30px; +} + +.circle2 { + left: 0; + top: -30px; +} + +.circle3 { + top: 0; + right: 0; +} + +.success .circle { + background: #34BD66; +} + +.danger .circle { + background: #FF3838; +} + +.warning .circle { + background: #FBB247; +} + +.info .circle { + background: #909399; +} + +.el-form-item { + margin-top: 11px; + margin-bottom: 11px; +} +</style> diff --git a/src/views/CNAS/resourceDemand/device/component/equipmentCalibrationPlan.vue b/src/views/CNAS/resourceDemand/device/component/equipmentCalibrationPlan.vue index 4e44623..4ac34e9 100644 --- a/src/views/CNAS/resourceDemand/device/component/equipmentCalibrationPlan.vue +++ b/src/views/CNAS/resourceDemand/device/component/equipmentCalibrationPlan.vue @@ -3,10 +3,12 @@ <div> <div> <div style="margin: 10px 0;display: flex;align-items: center;justify-content: space-between;"> - <span>骞村害璁″垝琛�</span> + <div class="title"> + <span style="font-weight: bold">骞村害璁″垝琛�</span> + </div> <div> <el-button size="small" type="primary" @click="getYearTableData">鍒锋柊</el-button> - <el-button style="margin-right: 10px" size="small" type="primary" @click="addYearPlan('add')">鏂板</el-button> + <el-button size="small" type="primary" @click="addYearPlan('add')">鏂板</el-button> <!-- <el-button size="small" type="primary" @click="record">瀵煎叆</el-button>--> </div> </div> @@ -20,7 +22,7 @@ <el-table-column label="骞翠唤" min-width="80" prop="planYear"></el-table-column> <el-table-column label="璁″垝鍚嶇О" min-width="180" prop="planName"></el-table-column> <el-table-column label="缂栧埗浜�" min-width="100" prop="writeName"></el-table-column> - <el-table-column label="缂栧埗鏃ユ湡" min-width="150" prop="writeTime"></el-table-column> + <el-table-column label="缂栧埗鏃ユ湡" min-width="160" prop="writeTime"></el-table-column> <el-table-column label="鎵瑰噯鐘舵��" min-width="100" prop="ratifyStatus"> <template slot-scope="scope"> <el-tag v-if="scope.row.ratifyStatus === 1" type="success">鎵瑰噯</el-tag> @@ -46,23 +48,29 @@ </el-table-column> </el-table> <el-pagination :current-page="1" :page-size="pagination.size" :page-sizes="[10, 20, 30, 50, 100]" - :total="pagination.total" layout="->,total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange" - @current-change="handleCurrentChange"> + background :total="pagination.total" layout="->,total, sizes, prev, pager, next, jumper" + @size-change="handleSizeChange" @current-change="handleCurrentChange"> </el-pagination> </div> </div> <div> - <span>骞村害璁″垝鏄庣粏琛�</span> <div class="title"> - <div class="title-search"> - <span style="width: 120px;font-size: 14px">璁惧鍚嶇О鍙婂瀷鍙凤細</span> - <el-input v-model="searchForm.deviceName" clearable size="small" - style="margin-right: 10px;width: 220px"></el-input> - <span style="width: 80px;font-size: 14px">浠櫒缂栧彿锛�</span> - <el-input v-model="searchForm.deviceNumber" clearable size="small" - style="margin-right: 10px;width: 220px"></el-input> - <el-button size="mini" type="primary" @click="getYearTableDetailData(currentRow)">鏌ヨ</el-button> - <el-button size="mini" @click="reset">閲嶇疆</el-button> + <span style="font-weight: bold">骞村害璁″垝鏄庣粏琛�</span> + </div> + <div class="search"> + <div> + <el-form :model="searchForm" ref="searchForm" size="small" :inline="true"> + <el-form-item label="璁惧鍚嶇О鍙婂瀷鍙�" prop="deviceName"> + <el-input v-model="searchForm.deviceName" clearable size="small"></el-input> + </el-form-item> + <el-form-item label="浠櫒缂栧彿" prop="deviceNumber"> + <el-input v-model="searchForm.deviceNumber" clearable size="small"></el-input> + </el-form-item> + <el-form-item> + <el-button type="primary" size="mini" @click="getYearTableDetailData(currentRow)">鏌ヨ</el-button> + <el-button size="mini" @click="reset">閲嶇疆</el-button> + </el-form-item> + </el-form> </div> <div> <el-button size="small" type="primary" @click="handleForm('add')">鏂板</el-button> @@ -94,8 +102,8 @@ </el-table-column> </el-table> <el-pagination :current-page="1" :page-size="pagination1.size" :page-sizes="[10, 20, 30, 50, 100]" - :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" - @size-change="handleSizeChange1" @current-change="handleCurrentChange1"> + background :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" + @size-change="handleSizeChange1" @current-change="handleCurrentChange1"> </el-pagination> </div> </div> @@ -597,14 +605,27 @@ <style scoped> .title { - display: flex; - justify-content: space-between; - align-items: center; + position: relative; + font-size: 16px; + color: #333; + font-weight: 400; + padding-left: 10px; + margin-bottom: 10px; } -.title-search { +.title::before { + position: absolute; + left: 0; + top: 4px; + content: ''; + width: 4px; + height: 16px; + background-color: #3A7BFA; + border-radius: 2px; +} +.search { + height: 46px; display: flex; - align-items: center; - margin: 10px 0; + justify-content: space-between; } </style> diff --git a/src/views/CNAS/resourceDemand/device/component/equipmentMaintenancePlan.vue b/src/views/CNAS/resourceDemand/device/component/equipmentMaintenancePlan.vue index 7726223..424bfe6 100644 --- a/src/views/CNAS/resourceDemand/device/component/equipmentMaintenancePlan.vue +++ b/src/views/CNAS/resourceDemand/device/component/equipmentMaintenancePlan.vue @@ -14,7 +14,7 @@ width="70"></el-table-column> <el-table-column label="骞翠唤" min-width="80" prop="planYear"></el-table-column> <el-table-column label="缂栧埗浜�" min-width="120" prop="compiler"></el-table-column> - <el-table-column label="缂栧埗鏃堕棿" min-width="150" prop="datePreparation"></el-table-column> + <el-table-column label="缂栧埗鏃堕棿" min-width="160" prop="datePreparation"></el-table-column> <el-table-column label="瀹℃牳浜�" min-width="150" prop="audit"></el-table-column> <el-table-column label="瀹℃牳鏃堕棿" min-width="180" prop="auditDate"></el-table-column> <el-table-column label="瀹℃牳鐘舵��" min-width="180" prop="status"> @@ -39,7 +39,7 @@ </el-table-column> </el-table> <el-pagination :current-page="1" :page-size="pagination1.size" :page-sizes="[10, 20, 30, 50, 100]" - :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" + :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" background @size-change="handleSizeChange1" @current-change="handleCurrentChange1"> </el-pagination> </div> diff --git a/src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue b/src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue index 09150de..6cb7975 100644 --- a/src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue +++ b/src/views/CNAS/resourceDemand/device/component/equipmentVerificationPlan.vue @@ -3,10 +3,12 @@ <div> <div> <div style="margin: 10px 0;display: flex;align-items: center;justify-content: space-between;"> - <span>骞村害璁″垝琛�</span> + <div class="title"> + <span style="font-weight: bold">骞村害璁″垝琛�</span> + </div> <div style="display: flex;align-items: center;"> - <el-button style="margin-right: 10px" size="small" type="primary" @click="getYearTableData">鍒锋柊</el-button> - <el-button style="margin-right: 10px" size="small" type="primary" @click="addYearPlan('add')">鏂板</el-button> + <el-button size="small" type="primary" @click="getYearTableData">鍒锋柊</el-button> + <el-button size="small" type="primary" @click="addYearPlan('add')">鏂板</el-button> <!-- <el-upload ref="upload" :action="action"--> <!-- :before-upload="beforeUpload" :headers="uploadHeader" :on-error="onError"--> <!-- :on-success="handleSuccessUp" :show-file-list="false" accept='.xls,.xlsx'>--> @@ -24,7 +26,7 @@ <el-table-column label="骞翠唤" min-width="80" prop="planYear"></el-table-column> <el-table-column label="璁″垝鍚嶇О" min-width="180" prop="planName"></el-table-column> <el-table-column label="缂栧埗浜�" min-width="100" prop="writeName"></el-table-column> - <el-table-column label="缂栧埗鏃ユ湡" min-width="150" prop="writeTime"></el-table-column> + <el-table-column label="缂栧埗鏃ユ湡" min-width="160" prop="writeTime"></el-table-column> <el-table-column label="鎵瑰噯鐘舵��" min-width="100" prop="ratifyStatus"> <template slot-scope="scope"> <el-tag v-if="scope.row.ratifyStatus === 1" type="success">鎵瑰噯</el-tag> @@ -50,23 +52,29 @@ </el-table-column> </el-table> <el-pagination :current-page="1" :page-size="pagination.size" :page-sizes="[10, 20, 30, 50, 100]" - :total="pagination.total" layout="->,total, sizes, prev, pager, next, jumper" @size-change="handleSizeChange" - @current-change="handleCurrentChange"> + background :total="pagination.total" layout="->,total, sizes, prev, pager, next, jumper" + @size-change="handleSizeChange" @current-change="handleCurrentChange"> </el-pagination> </div> </div> <div> - <span>骞村害璁″垝鏄庣粏琛�</span> <div class="title"> - <div class="title-search"> - <span style="width: 120px;font-size: 14px">璁惧缂栧彿锛�</span> - <el-input v-model="searchForm.deviceNumber" clearable size="small" - style="margin-right: 10px;width: 220px"></el-input> - <span style="width: 80px;font-size: 14px">璁惧鍚嶇О锛�</span> - <el-input v-model="searchForm.deviceName" clearable size="small" - style="margin-right: 10px;width: 220px"></el-input> - <el-button size="mini" type="primary" @click="getYearTableDetailData(currentRow)">鏌ヨ</el-button> - <el-button size="mini" @click="reset">閲嶇疆</el-button> + <span style="font-weight: bold">骞村害璁″垝鏄庣粏琛�</span> + </div> + <div class="search"> + <div> + <el-form :model="searchForm" ref="searchForm" size="small" :inline="true"> + <el-form-item label="璁惧缂栧彿" prop="deviceNumber"> + <el-input v-model="searchForm.deviceNumber" clearable size="small"></el-input> + </el-form-item> + <el-form-item label="璁惧鍚嶇О" prop="deviceName"> + <el-input v-model="searchForm.deviceName" clearable size="small"></el-input> + </el-form-item> + <el-form-item> + <el-button type="primary" size="mini" @click="getYearTableDetailData(currentRow)">鏌ヨ</el-button> + <el-button size="mini" @click="reset">閲嶇疆</el-button> + </el-form-item> + </el-form> </div> <div> <el-button size="small" type="primary" @click="handleForm('add')">鏂板</el-button> @@ -101,7 +109,7 @@ </el-table-column> </el-table> <el-pagination :current-page="1" :page-size="pagination1.size" :page-sizes="[10, 20, 30, 50, 100]" - :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" + :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" background @size-change="handleSizeChange1" @current-change="handleCurrentChange1"> </el-pagination> </div> @@ -642,15 +650,28 @@ </script> <style scoped> -.title { +.search { + height: 46px; display: flex; justify-content: space-between; - align-items: center; +} +.title { + position: relative; + font-size: 16px; + color: #333; + font-weight: 400; + padding-left: 10px; + margin-bottom: 10px; } -.title-search { - display: flex; - align-items: center; - margin: 10px 0; +.title::before { + position: absolute; + left: 0; + top: 4px; + content: ''; + width: 4px; + height: 16px; + background-color: #3A7BFA; + border-radius: 2px; } </style> diff --git a/src/views/CNAS/resourceDemand/device/component/files.vue b/src/views/CNAS/resourceDemand/device/component/files.vue index de19de7..3a96e5a 100644 --- a/src/views/CNAS/resourceDemand/device/component/files.vue +++ b/src/views/CNAS/resourceDemand/device/component/files.vue @@ -25,7 +25,7 @@ <el-col :span="8"> <div class="form-item"> <label>璁惧鍚嶇О</label> - <!-- <p>{{ Mdata.deviceName }}</p> --> +<!-- <p>{{ Mdata.deviceName }}</p> --> <el-tooltip class="item" :content="Mdata.deviceName"> <span class="text-ellipsis">{{ Mdata.deviceName }}</span> </el-tooltip> @@ -170,9 +170,9 @@ <el-table-column prop="quantity" label="浠芥暟" min-width="80" /> <el-table-column prop="pageCount" label="椤电爜" min-width="80" /> <el-table-column prop="provider" label="鎻愪緵鑰�" min-width="150" /> - <el-table-column prop="provideDate" label="褰掓。鏃ユ湡" min-width="150" /> + <el-table-column prop="provideDate" label="褰掓。鏃ユ湡" min-width="170" /> <el-table-column prop="comments" label="澶囨敞" min-width="150" /> - <el-table-column fixed="right" label="鎿嶄綔" min-width="180"> + <el-table-column fixed="right" label="鎿嶄綔" min-width="180" align="center"> <template slot-scope="scope"> <el-button type="text" size="small" @click="handleAttachmentClick(scope.row)">涓嬭浇闄勪欢</el-button> <el-button type="text" size="small" @click="handleViewClick(scope.row)">缂栬緫</el-button> @@ -914,7 +914,6 @@ .page-header { display: flex; justify-content: space-between; - margin-top: 10px; } h4 { diff --git a/src/views/CNAS/resourceDemand/device/component/management.vue b/src/views/CNAS/resourceDemand/device/component/management.vue index 51a4a27..b5b83c1 100644 --- a/src/views/CNAS/resourceDemand/device/component/management.vue +++ b/src/views/CNAS/resourceDemand/device/component/management.vue @@ -1,37 +1,37 @@ <!-- 璁惧宸ュ叿鏄庣粏 --> <template> <div class="role_manage"> - <div class="search" v-show="!showData"> - <div class="search_thing"> - <div class="search_label">鐘舵�侊細</div> - <el-select v-model="queryParams.deviceStatus" placeholder="鍏ㄩ儴" size="small"> - <el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label" :value="item.value"> - </el-option> - </el-select> - </div> - <div class="search_thing"> - <div class="search_label">璁惧鍚嶇О锛�</div> - <div class="search_input"> - <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.deviceName" - @keyup.enter.native="refreshTable()"> - </el-input> - </div> - </div> - <div class="search_thing"> - <div class="search_label">瑙勬牸鍨嬪彿锛�</div> - <div class="search_input"><el-input size="small" placeholder="璇疯緭鍏�" clearable - v-model="queryParams.specificationModel" @keyup.enter.native="refreshTable()"></el-input> - </div> - </div> - <div style="padding-left: 30px;"> - <el-button size="mini" type="primary" @click="refreshTable()">鏌ヨ</el-button> - <el-button size="mini" @click="refresh()">閲嶇疆</el-button> - <el-button size="small" type="primary" @click="dialogVisible2 = true">鏂板</el-button> - <el-button size="small" type="primary" @click="handleDownOne">瀵煎嚭</el-button> - </div> - </div> + <div class="search"> + <div> + <el-form :model="queryParams" ref="queryParams" size="small" :inline="true"> + <el-form-item label="鐘舵��" prop="deviceStatus" class="form-item"> + <el-select v-model="queryParams.deviceStatus" placeholder="鍏ㄩ儴" size="small"> + <el-option v-for="item in deviceStatusList" :key="item.value" :label="item.label" :value="item.value"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="璁惧鍚嶇О" prop="deviceName"> + <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.deviceName" + @keyup.enter.native="refreshTable()"> + </el-input> + </el-form-item> + <el-form-item label="瑙勬牸鍨嬪彿" prop="specificationModel"> + <el-input size="small" placeholder="璇疯緭鍏�" clearable + v-model="queryParams.specificationModel" @keyup.enter.native="refreshTable()"></el-input> + </el-form-item> + <el-form-item> + <el-button type="primary" size="mini" @click="refreshTable">鏌ヨ</el-button> + <el-button size="mini" @click="refresh">閲嶇疆</el-button> + </el-form-item> + </el-form> + </div> + <div> + <el-button size="small" type="primary" @click="dialogVisible2 = true">鏂板</el-button> + <el-button size="small" type="primary" @click="handleDownOne">瀵煎嚭</el-button> + </div> + </div> <div class="table" v-show="!showData"> - <lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 320px)'" + <lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 300px)'" :page="page" @pagination="pagination"></lims-table> </div> <el-dialog :title="isUp ? '璁惧璇︽儏' : '妗f淇'" :visible.sync="dialogVisible" width="70%" top="5vh" @@ -990,20 +990,11 @@ </script> <style scoped> -.role_manage { - width: 100%; - height: 100%; -} - -.title { - line-height: 15px; -} - .search { - display: flex; - align-items: center; - justify-content: space-between; - margin-top: 10px; + height: 46px; + display: flex; + justify-content: space-between; + margin-top: 10px; } .search_thing { @@ -1018,20 +1009,10 @@ text-align: right; } -.search_input { - width: calc(100% - 80px); -} - .table { - margin-top: 12px; background-color: #fff; - height: calc(100vh - 17em); + height: calc(100vh - 16em); } - -.el-form-item { - margin-bottom: 16px; -} - .picName { overflow: hidden; text-overflow: ellipsis; @@ -1039,4 +1020,7 @@ word-break: break-all; width: 120px; } +.form-item >>>.el-form-item__content { + width: 120px; +} </style> diff --git a/src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue b/src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue index f94c759..9d2fc26 100644 --- a/src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue +++ b/src/views/CNAS/resourceDemand/device/component/quantityValueTraceabilityPlan.vue @@ -15,7 +15,7 @@ <el-table-column label="骞翠唤" min-width="80" prop="planYear"></el-table-column> <el-table-column label="鏂囦欢鍚嶇О" min-width="120" prop="compiler"></el-table-column> <el-table-column label="缂栧埗浜�" min-width="150" prop="compiler"></el-table-column> - <el-table-column label="缂栧埗鏃堕棿" min-width="150" prop="datePreparation"></el-table-column> + <el-table-column label="缂栧埗鏃堕棿" min-width="160" prop="datePreparation"></el-table-column> <el-table-column label="鎵瑰噯浜�" min-width="180" prop="audit"></el-table-column> <el-table-column label="鎵瑰噯鐘舵��" min-width="180" prop="status"> <template slot-scope="scope"> @@ -41,7 +41,7 @@ </el-table-column> </el-table> <el-pagination :current-page="1" :page-size="pagination1.size" :page-sizes="[10, 20, 30, 50, 100]" - :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" + :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" background @size-change="handleSizeChange1" @current-change="handleCurrentChange1"> </el-pagination> </div> diff --git a/src/views/CNAS/resourceDemand/device/component/record.vue b/src/views/CNAS/resourceDemand/device/component/record.vue index 4998f25..869410d 100644 --- a/src/views/CNAS/resourceDemand/device/component/record.vue +++ b/src/views/CNAS/resourceDemand/device/component/record.vue @@ -2,28 +2,31 @@ <template> <div> <div class="search"> - <div class="search_thing"> - <div class="search_label">鏍峰搧缂栧彿锛�</div> - <el-input v-model="search.sampleCode" clearable placeholder="璇疯緭鍏�" size="small" style="width: 60%;" - @keyup.enter.native="getTableList(clickNodeVal.value)"></el-input> - <div class="search_label">绠$悊缂栧彿锛�</div> - <el-input v-model="search.managementNumber" clearable placeholder="璇疯緭鍏�" size="small" style="width: 60%;" - @keyup.enter.native="getTableList(clickNodeVal.value)"></el-input> - </div> - <div class="search_thing" style="padding-left: 30px;"> - <el-button size="mini" type="primary" @click="getTableList(clickNodeVal.value)">鏌ヨ</el-button> - <el-button size="mini" @click="resetSearch">閲嶇疆</el-button> - </div> - <div class="btns" v-if="isMenuList != 1"> + <el-form :model="search" ref="search" size="small" :inline="true"> + <el-form-item label="鏍峰搧缂栧彿"> + <el-input v-model="search.sampleCode" clearable placeholder="璇疯緭鍏�" size="small" + @keyup.enter.native="getTableList(clickNodeVal.value)"></el-input> + </el-form-item> + <el-form-item label="绠$悊缂栧彿"> + <el-input v-model="search.managementNumber" clearable placeholder="璇疯緭鍏�" size="small" + @keyup.enter.native="getTableList(clickNodeVal.value)"></el-input> + </el-form-item> + <el-form-item> + <el-button size="mini" type="primary" @click="getTableList(clickNodeVal.value)">鏌ヨ</el-button> + <el-button size="mini" @click="resetSearch">閲嶇疆</el-button> + </el-form-item> + </el-form> + <div> <el-button size="small" type="primary" @click="dialogVisible = true, openAdd()">鏂� 寤�</el-button> <el-button :loading="outLoading" size="small" type="primary" @click="openHandleOut">瀵� 鍑�</el-button> </div> </div> - <div class="tables" style="margin-top: 10px;"> + <div> <el-table ref="Recordtable" :data="formParamList" height="calc(100vh - 20em)" + v-loading="tableLoading" :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border> <!-- 琛ㄦ牸鍒� --> - <el-table-column label="搴忓彿" type="index" width="120"> + <el-table-column label="搴忓彿" type="index" width="70" align="center"> <template v-slot="scope"> <span>{{ (search.current - 1) * search.size + scope.$index + 1 }}</span> </template> @@ -42,8 +45,8 @@ </template> </el-table-column> <!-- <el-table-column label="寮傚父鎯呭喌" min-width="120" prop="abnormal" />--> - <el-table-column label="浣跨敤寮�濮嬫棩鏈�" min-width="150" prop="useStartDate" /> - <el-table-column label="浣跨敤缁撴潫鏃ユ湡" min-width="150" prop="useEndDate" /> + <el-table-column label="浣跨敤寮�濮嬫棩鏈�" min-width="170" prop="useStartDate" /> + <el-table-column label="浣跨敤缁撴潫鏃ユ湡" min-width="170" prop="useEndDate" /> <el-table-column label="浣跨敤浜�" min-width="120" prop="usePerson" /> <el-table-column label="澶囨敞" min-width="120" prop="remark" /> <!-- 鎿嶄綔鎸夐挳 --> @@ -57,7 +60,7 @@ </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" - @current-change="handleCurrentChange"> + @current-change="handleCurrentChange" background> </el-pagination> </div> <el-dialog :visible.sync="dialogVisible" title="浠櫒璁惧浣跨敤璁板綍琛�" top="5vh" width="55%"> @@ -210,6 +213,7 @@ dialogVisible: false, operationType: '', formParamList: [], + tableLoading: false } }, mounted() { @@ -238,14 +242,18 @@ if (deviceId === undefined) { deviceId = '' } + this.tableLoading = true await deviceRecordPage({ deviceId: deviceId, ...this.search }).then(res => { + this.tableLoading = false if (res.code == 200) { this.formParamList = res.data.records this.search.total = res.data.total } + }).catch(err => { + this.tableLoading = false }) }, // 鎵撳紑瀵煎嚭寮规閫夋嫨缂栧埗浜恒�佹壒鍑嗕汉 @@ -394,65 +402,10 @@ </script> <style scoped> -.tables { - width: 100%; - height: calc(100vh - 15em); -} - -.el-from { - max-width: 400px; - margin: 0 auto; -} - -.form-row { +.search { + height: 46px; display: flex; justify-content: space-between; -} - -.el-input { - width: calc(100% - 120px); - /* 纭繚杈撳叆妗嗗搴︿竴鑷� */ -} - -.form-row .el-form-item { - flex: 1; - /* 姣忎釜琛ㄥ崟椤瑰崰鎹浉鍚屾瘮渚嬬殑绌洪棿 */ - margin-right: 100px; - /* 鍙�夛細涓哄彸渚у厓绱犳坊鍔犻棿璺� */ -} - -/* 绉婚櫎鏈�鍚庝竴涓厓绱犵殑鍙宠竟璺� */ -.form-row .el-form-item:last-child { - margin-right: 0; - -} - -.search { - background-color: #fff; margin-top: 10px; - display: flex; - align-items: center; - position: relative; -} - -.search_thing { - display: flex; - align-items: center; - height: 40px; - -} - -.search_label { - width: 140px; - font-size: 14px; - text-align: right; - margin-right: 10px; -} - -.btns { - position: absolute; - right: 0px; - top: 50%; - transform: translate(0, -50%); } </style> diff --git a/src/views/CNAS/resourceDemand/device/component/usingExternalInstruments.vue b/src/views/CNAS/resourceDemand/device/component/usingExternalInstruments.vue index c2d11b8..d1bb7b2 100644 --- a/src/views/CNAS/resourceDemand/device/component/usingExternalInstruments.vue +++ b/src/views/CNAS/resourceDemand/device/component/usingExternalInstruments.vue @@ -2,12 +2,16 @@ <div> <div> <div class="title"> - <div class="title-search"> - <span style="width: 80px;font-size: 14px">鍗曚綅鍚嶇О锛�</span> - <el-input v-model="searchForm.unitName" clearable size="small" - style="margin-right: 10px;width: 220px"></el-input> - <el-button size="mini" type="primary" @click="getYearTableDetailData">鏌ヨ</el-button> - <el-button size="mini" @click="reset">閲嶇疆</el-button> + <div> + <el-form :model="searchForm" ref="searchForm" size="small" :inline="true"> + <el-form-item label="鍗曚綅鍚嶇О" prop="unitName"> + <el-input v-model="searchForm.unitName" clearable size="small"></el-input> + </el-form-item> + <el-form-item> + <el-button type="primary" size="mini" @click="getYearTableDetailData">鏌ヨ</el-button> + <el-button size="mini" @click="reset">閲嶇疆</el-button> + </el-form-item> + </el-form> </div> <div> <el-button size="small" type="primary" @click="handleForm('')">鏂板</el-button> @@ -41,7 +45,7 @@ </el-table-column> </el-table> <el-pagination :current-page="1" :page-size="pagination1.size" :page-sizes="[10, 20, 30, 50, 100]" - :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" + :total="pagination1.total" layout="->,total, sizes, prev, pager, next, jumper" background @size-change="handleSizeChange1" @current-change="handleCurrentChange1"> </el-pagination> </div> @@ -159,14 +163,9 @@ <style scoped> .title { + height: 46px; display: flex; justify-content: space-between; - align-items: center; -} - -.title-search { - display: flex; - align-items: center; - margin: 10px 0; + margin-top: 10px; } </style> diff --git a/src/views/business/inspectionTask/index.vue b/src/views/business/inspectionTask/index.vue index 20dc59a..6d01292 100644 --- a/src/views/business/inspectionTask/index.vue +++ b/src/views/business/inspectionTask/index.vue @@ -5,12 +5,12 @@ <el-form :model="queryParams" ref="queryParams" size="small" :inline="true"> <el-form-item label="濮旀墭缂栧彿" prop="entrustCode"> <el-input v-model="queryParams.entrustCode" clearable placeholder="璇疯緭鍏�" size="small" - @keyup.enter.native="refreshTable()"></el-input> + @keyup.enter.native="refreshTable()"></el-input> </el-form-item> <el-form-item label="妫�楠岀姸鎬�" prop="insState"> <el-select v-model="queryParams.insState" size="small" style="width: 100%" @change="refreshTable()"> <el-option v-for="(a, i) in dict.type.inspection_task_state" :key="i" :label="a.label" - :value="a.value"></el-option> + :value="a.value"></el-option> </el-select> </el-form-item> <el-form-item> @@ -30,7 +30,7 @@ </ul> <div> <el-checkbox v-model="alone" class="view-self-checkbox" - @change="changeCheckBox"><span>鎴戠殑浠诲姟</span></el-checkbox> + @change="changeCheckBox"><span>鎴戠殑浠诲姟</span></el-checkbox> </div> </div> <div class="center-title"> @@ -39,24 +39,27 @@ </div> </div> <lims-table :tableData="tableData" :column="column" :page="page" :tableLoading="tableLoading" - :rowClassName="rowClassName" :height="'calc(100vh - 300px)'" @pagination="pagination" key="tableData0"> + :rowClassName="rowClassName" :height="'calc(100vh - 300px)'" @pagination="pagination" + key="tableData0"> <div slot="action" slot-scope="scope"> <el-button size="small" type="text" @click="handleDataLook(scope.row)">鏁版嵁鏌ョ湅</el-button> <el-button type="text" size="small" - :disabled="(scope.row.userName == null || scope.row.insState == 3 || scope.row.insState == 5) && checkPermi(['update:product:onPlan'])" - @click="editInspection(scope.row)">淇敼妫�楠屽��</el-button> + :disabled="(scope.row.userName == null || scope.row.insState == 3 || scope.row.insState == 5) && checkPermi(['update:product:onPlan'])" + @click="editInspection(scope.row)">淇敼妫�楠屽��</el-button> <el-button type="text" size="small" :disabled="( - scope.row.userName == null || - scope.row.insState == 3 || - scope.row.insState == 5 || - (scope.row.userName && !scope.row.userName.includes(nickName)) - )" @click="handleInspection(scope.row)">妫�楠�</el-button> + scope.row.userName == null || + scope.row.insState == 3 || + scope.row.insState == 5 || + (scope.row.userName && !scope.row.userName.includes(nickName)) + )" + @click="handleInspection(scope.row)">妫�楠�</el-button> <el-button type="text" size="small" :disabled="( - scope.row.userName == null || - scope.row.insState == 5 || - scope.row.insState == 3 || - (scope.row.userName && !scope.row.userName.includes(nickName)) - )" @click="handleConnect(scope.row)">浜ゆ帴</el-button> + scope.row.userName == null || + scope.row.insState == 5 || + scope.row.insState == 3 || + (scope.row.userName && !scope.row.userName.includes(nickName)) + )" + @click="handleConnect(scope.row)">浜ゆ帴</el-button> <el-button type="text" size="small" @click="viewInspectInfo(scope.row)">鍘熷璁板綍</el-button> <el-popover placement="bottom" trigger="hover" style="margin-left: 6px"> <template #reference> @@ -64,22 +67,23 @@ </template> <div> <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || - (scope.row.userName && !scope.row.userName.includes(nickName)))" style="margin-left: 10px" - type="text" size="small" @click="download(scope.row)">涓嬭浇鎶ュ憡</el-button> - <el-upload ref='upload' :action="javaApi + '/insReport/inReport'" :before-upload="beforeUpload" - :data="{ id: scope.row.insReportId }" :headers="uploadHeader" :on-error="onError" - :on-success="handleSuccessUp" :show-file-list="false" style="display: inline;margin: 0 6px" - accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar'> + (scope.row.userName && !scope.row.userName.includes(nickName)))" style="margin-left: 10px" type="text" size="small" @click="download(scope.row)">涓嬭浇鎶ュ憡</el-button> + <el-upload ref='upload' + :action="javaApi + '/insReport/inReport'" + :before-upload="beforeUpload" + :data="{id: scope.row.insReportId}" + :headers="uploadHeader" :on-error="onError" + :on-success="handleSuccessUp" + :show-file-list="false" + style="display: inline;margin: 0 6px" + accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar'> <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || - (scope.row.userName && !scope.row.userName.includes(nickName)))" size="small" - type="text">涓婁紶</el-button> + (scope.row.userName && !scope.row.userName.includes(nickName)))" size="small" type="text">涓婁紶</el-button> </el-upload> <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || - (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" - @click="handleRestore(scope.row)">杩樺師</el-button> + (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" @click="handleRestore(scope.row)">杩樺師</el-button> <el-button :disabled="(scope.row.insState != 3 || scope.row.userName == null || - (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" - @click="handleIssued(scope.row)">鏌ョ湅鎶ュ憡</el-button> + (scope.row.userName && !scope.row.userName.includes(nickName)))" type="text" size="small" @click="handleIssued(scope.row)">鏌ョ湅鎶ュ憡</el-button> </div> </el-popover> </div> @@ -151,7 +155,7 @@ </el-button> </div> <el-table :data="bindTableData" style="width: 100%" height="70vh" v-loading="bindTableDataLoading" - :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border> + :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border> <el-table-column prop="inspectionItemClass" label="妫�楠岄」鍒嗙被" width="150"> </el-table-column> <el-table-column prop="inspectionItem" label="妫�楠岄」" width="150"> @@ -167,7 +171,7 @@ </el-dialog> <el-dialog :visible.sync="bindAddDialogVisible" title="閫夋嫨缁戝畾" width="600px"> <el-table :data="bindAddTableData" style="width: 100%" height="60vh" - :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border + :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border @selection-change="handleBindAddSelectionChange"> <el-table-column type="selection" width="55"> </el-table-column> <el-table-column prop="inspectionItemClass" label="妫�楠岄」鍒嗙被" width="150"> @@ -193,14 +197,13 @@ <!--鏌ョ湅宸ユ椂寮规--> <viewManHourDia ref="viewManHourDia"></viewManHourDia> <!--涓嶅悎鏍煎娴嬫煡鐪嬪脊妗�--> - <un-pass-retest-result v-if="retestVisible" :retestInfo="retestInfo" :retestVisible="retestVisible" - @closeRetestLook="closeRetestLook"></un-pass-retest-result> + <un-pass-retest-result v-if="retestVisible" :retestInfo="retestInfo" :retestVisible="retestVisible" @closeRetestLook="closeRetestLook"></un-pass-retest-result> <!--鎶ュ憡鏌ョ湅--> <el-dialog title="鎶ュ憡鏌ョ湅" :visible.sync="issuedVisible" width="80vw" :modal-append-to-body="false" - :fullscreen="fullscreen"> + :fullscreen="fullscreen"> <div class="full-screen"> <i class="el-icon-full-screen" style="cursor: pointer;font-size: 18px" @click="fullscreen = true;" - v-if="!fullscreen"></i> + v-if="!fullscreen"></i> <img src="@/assets/images/no-full.svg" alt="" v-else style="cursor: pointer;" @click="fullscreen = false;"> </div> <div style="height: 80vh;" v-if="issuedVisible"> @@ -209,7 +212,7 @@ </el-dialog> <el-dialog title="鏌ョ湅闄勪欢" :visible.sync="lookDialogVisible" width="800px" top="5vh" fullscreen> <filePreview v-if="lookDialogVisible" :fileUrl="javaApi + '/word/' + currentInfo.tempUrlPdf" :currentFile="{}" - style="max-height: 90vh;overflow-y: auto;" /> + style="max-height: 90vh;overflow-y: auto;" /> </el-dialog> </div> </template> @@ -234,8 +237,8 @@ selectSampleAndProductByOrderId, } from "@/api/business/inspectionTask.js"; import { mapGetters } from "vuex"; -import { getRetestResult } from "@/api/business/rawMaterialOrder"; -import { upReportUrl } from "@/api/business/insReport"; +import {getRetestResult} from "@/api/business/rawMaterialOrder"; +import {upReportUrl} from "@/api/business/insReport"; import onlyoffice from "@/components/Onlyoffice/onlyoffice.vue"; import filePreview from "@/components/Preview/filePreview.vue"; export default { @@ -275,7 +278,7 @@ claimVisible: false, tabList: [ { label: "濮旀墭", value: 0 }, - { label: "鍘熻緟鏂�", value: 1 }, + { label: "鍘熸潗鏂�", value: 1 }, ], active: 1, tabIndex: 0, @@ -283,8 +286,8 @@ planTotal: 0, insStateList: [], state: 0, // 0:鍙拌处椤碉紝1锛氭楠岄〉闈�,2妫�楠岄〉闈�(澶嶆牳)锛岄粯璁や负0,3鏁版嵁鏌ョ湅 - typeSource: null, // 0:鎴愬搧涓嬪崟锛�1锛氬師杈呮枡涓嬪崟 - sonLaboratory: null, // 0:濮旀墭锛�1锛氬師杈呮枡 + typeSource: null, // 0:鎴愬搧涓嬪崟锛�1锛氬師鏉愭枡涓嬪崟 + sonLaboratory: null, // 0:濮旀墭锛�1锛氬師鏉愭枡 activeFace: 0, // 1锛氫笅鍗曪紝2锛氭煡鐪嬶紝3锛氬鏍革紝榛樿涓�0 currentId: null, entityCopy: {}, @@ -300,7 +303,7 @@ sonLaboratoryList: [], typeSourceList: [ { label: "鎴愬搧涓嬪崟", value: 0 }, - { label: "鍘熻緟鏂欎笅鍗�", value: 1 }, + { label: "鍘熸潗鏂欎笅鍗�", value: 1 }, ], customsInspection: {}, showInfoDialog: false, // 浜т笟閾句俊鎭煡鐪� @@ -356,7 +359,7 @@ if (params == 0) { return "鎴愬搧涓嬪崟"; } else { - return "鍘熻緟鏂欎笅鍗�"; + return "鍘熸潗鏂欎笅鍗�"; } }, }, @@ -508,7 +511,7 @@ this.getRetestResultInfo(row); }, disabled: (row) => { - return row.insResult != 0 + return row.insResult!=0 }, }, { @@ -636,7 +639,7 @@ }, // 涓嬭浇鎶ュ憡 download(row) { - let url = (row.urlS === null || row.urlS === '') ? row.url : row.urlS + let url = (row.urlS===null||row.urlS==='')?row.url:row.urlS const link = document.createElement('a'); link.href = this.javaApi + url; link.target = '_blank'; @@ -670,7 +673,7 @@ fileName = row.tempUrlPdf fileType = "pdf" } - fileName = fileName.replace('/word/', '') + fileName = fileName.replace('/word/','') const userName = this.nickName this.option = { url: this.javaApi + "/word/" + fileName, @@ -730,7 +733,7 @@ this.currentId = parseInt(row.id); switch (row.isCopper) { case 0: - // 鍘熻緟鏂� + // 鍘熸潗鏂� this.$router.push({ path: "/materialOrder/customsInspection", query: { customsInspection: row, @@ -884,13 +887,13 @@ }); }, // 鏌ョ湅涓嶅悎鏍煎娴嬬粨鏋� - getRetestResultInfo(row) { - getRetestResult({ insProductId: row.insProductId }).then(res => { + getRetestResultInfo (row) { + getRetestResult({insProductId: row.insProductId}).then(res => { this.retestVisible = true this.retestInfo = res.data }) }, - closeRetestLook() { + closeRetestLook () { this.retestVisible = false }, // 缁戝畾妫�楠岄」缁戝畾 @@ -959,7 +962,7 @@ }); }); }, - beforeUpload(file) { + beforeUpload (file) { if (file.size > 1024 * 1024 * 10) { this.$message.error('涓婁紶鏂囦欢涓嶈秴杩�10M'); this.$refs.upload.clearFiles() @@ -1030,7 +1033,6 @@ border-color: #3a7bfa; color: #3a7bfa; } - .center-options { display: flex; align-items: center; diff --git a/src/views/business/inspectionTask/inspection.vue b/src/views/business/inspectionTask/inspection.vue index 21d5a55..512b516 100644 --- a/src/views/business/inspectionTask/inspection.vue +++ b/src/views/business/inspectionTask/inspection.vue @@ -288,7 +288,7 @@ state == 1 "><span :style="`font-family:${n.v.ff} !important;`">{{ toFixed(n.v.v, n.v.ct) - }}</span></template> + }}</span></template> <template v-else-if=" n.v.ps != undefined && n.v.ps.value === '鏈�缁堝��' && @@ -344,9 +344,9 @@ </div> <el-drawer :size="550" :visible.sync="sampleVisible" title="鏍峰搧鍒囨崲"> <el-table v-if="sampleVisible" ref="productTable" :current-row-key="currentKey" :data="sampleProduct" - :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border :row-class-name="tableRowClassName" - :row-key="(record) => record.index" border class="el-table" height="100%" highlight-current-row - tooltip-effect="dark" @row-click="handleChangeSample"> + :header-cell-style="{ background: '#f8f8f9', color: '#515a6e' }" border + :row-class-name="tableRowClassName" :row-key="(record) => record.index" border class="el-table" height="100%" + highlight-current-row tooltip-effect="dark" @row-click="handleChangeSample"> <el-table-column :key="Math.random()" align="center" label="搴忓彿" type="index" width="70px"> </el-table-column> <el-table-column label="鏍峰搧缂栧彿" min-width="100px" prop="sampleCode" show-overflow-tooltip></el-table-column> @@ -963,7 +963,7 @@ humidity: this.insOrder.humidity ? this.insOrder.humidity : null, }; if (this.typeSource == "1") { - this.getRawMaterialTag(this.currentSample.id); // 鍘熻緟鏂欑殑妫�楠屼换鍔℃煡璇㈡壒鏁� + this.getRawMaterialTag(this.currentSample.id); // 鍘熸潗鏂欑殑妫�楠屼换鍔℃煡璇㈡壒鏁� this.rawMaterialTag = "1"; } this.getEquipOptions(1); diff --git a/src/views/business/productOrder/index.vue b/src/views/business/productOrder/index.vue index a425e01..027fda7 100644 --- a/src/views/business/productOrder/index.vue +++ b/src/views/business/productOrder/index.vue @@ -32,7 +32,7 @@ </el-form-item> <el-form-item> <el-button :icon="!more ? 'el-icon-arrow-down' : 'el-icon-arrow-up'" style="color: #3A7BFA;" type="text" - @click="more = !more">{{ !more ? '鏇村' : '鏀惰捣' }}</el-button> + @click="more = !more">{{ !more ? '鏇村' : '鏀惰捣' }}</el-button> <el-button size="mini" type="primary" @click="refreshTable()">鏌ヨ</el-button> <el-button size="mini" @click="refresh()">閲嶇疆</el-button> </el-form-item> @@ -41,18 +41,12 @@ <div class="table-tab"> <div> <ul class="tab"> - <li :class="{ active: tabIndex === 0 }" v-if="checkPermi(['get:insOrder:reviewed'])" @click="handleTab(0)">寰呭鏍� - </li> - <li :class="{ active: tabIndex === 1 }" v-if="checkPermi(['get:insOrder:checkout'])" @click="handleTab(1)">妫�楠屼腑 - </li> - <li :class="{ active: tabIndex === 2 }" v-if="checkPermi(['get:insOrder:customerOrdered'])" - @click="handleTab(2)">濮旀墭宸叉</li> - <li :class="{ active: tabIndex === 3 }" v-if="checkPermi(['get:insOrder:spotCheck'])" @click="handleTab(3)"> - 鎶芥牱宸叉</li> - <li :class="{ active: tabIndex === 4 }" v-if="checkPermi(['get:insOrder:sendBack'])" @click="handleTab(4)">閫�鍥� - </li> - <li :class="{ active: tabIndex === 5 }" v-if="checkPermi(['get:insOrder:revocation'])" @click="handleTab(5)"> - 鎾ら攢</li> + <li :class="{ active: tabIndex === 0 }" v-if="checkPermi(['get:insOrder:reviewed'])" @click="handleTab(0)">寰呭鏍�</li> + <li :class="{ active: tabIndex === 1 }" v-if="checkPermi(['get:insOrder:checkout'])" @click="handleTab(1)">妫�楠屼腑</li> + <li :class="{ active: tabIndex === 2 }" v-if="checkPermi(['get:insOrder:customerOrdered'])" @click="handleTab(2)">濮旀墭宸叉</li> + <li :class="{ active: tabIndex === 3 }" v-if="checkPermi(['get:insOrder:spotCheck'])" @click="handleTab(3)">鎶芥牱宸叉</li> + <li :class="{ active: tabIndex === 4 }" v-if="checkPermi(['get:insOrder:sendBack'])" @click="handleTab(4)">閫�鍥�</li> + <li :class="{ active: tabIndex === 5 }" v-if="checkPermi(['get:insOrder:revocation'])" @click="handleTab(5)">鎾ら攢</li> <li :class="{ active: tabIndex === 6 }" v-if="checkPermi(['get:insOrder:all'])" @click="handleTab(6)">鍏ㄩ儴</li> </ul> </div> @@ -92,8 +86,8 @@ </el-dialog> <!-- 鎾ら攢 --> <el-dialog :before-close="handleClose" :visible.sync="quashDialogVisible" title="涓嬪崟鎾ら攢" width="30%"> - <p v-if="!isQuash" style="font-size:16px;color:#333333">濮旀墭缂栧彿<span style="color:#34BD66">{{ - this.insOrderRow.entrustCode }}</span>鐨勪俊鎭槸鍚︽挙閿�</p> + <p v-if="!isQuash" style="font-size:16px;color:#333333">濮旀墭缂栧彿<span + style="color:#34BD66">{{ this.insOrderRow.entrustCode }}</span>鐨勪俊鎭槸鍚︽挙閿�</p> <el-form v-else ref="ruleForm" :label-position="labelPosition" :model="formData" label-width="150px"> <el-form-item label="璇疯緭鍏ユ挙閿�鍘熷洜锛�"> <el-input v-model="formData.specificationModel" size="small" style="width:60%"></el-input> @@ -174,8 +168,7 @@ <span slot="footer" class="dialog-footer"> <el-row> <el-button @click="handleNo">{{ deleteTilte == '鎾ら攢' ? '鍙� 娑�' : '涓嶉�氳繃' }}</el-button> - <el-button :loading="printLoading" type="primary" @click="submitDelete">{{ deleteTilte == '鎾ら攢' ? '纭� 瀹�' : - '閫氳繃'}}</el-button> + <el-button :loading="printLoading" type="primary" @click="submitDelete">{{ deleteTilte == '鎾ら攢' ? '纭� 瀹�' : '閫氳繃'}}</el-button> </el-row> </span> </el-dialog> @@ -270,8 +263,8 @@ <el-row style="margin-top: 0.01cm;font-size: 0.20cm;"> <el-col style="display: flex;align-items: center;"><span>鏍峰搧鐘舵��: </span> - <span style="white-space: nowrap;"><span v-if="item.insState == 0">鈭�</span><span - v-if="item.insState != 0" class="scor"></span>寰呮 + <span style="white-space: nowrap;"><span v-if="item.insState == 0">鈭�</span><span v-if="item.insState != 0" + class="scor"></span>寰呮 <span v-if="item.insState == 1">鈭�</span><span v-if="item.insState != 1" class="scor"></span>鍦ㄦ <span v-if="item.insState == 2">鈭�</span><span v-if="item.insState != 2" class="scor"></span>宸叉 <span v-if="item.isLeave == 1">鈭�</span><span v-if="item.isLeave != 1" class="scor"></span>鐣欐牱</span> @@ -321,7 +314,7 @@ } from "@/api/business/productOrder"; import { selectUserCondition } from "@/api/performance/class"; import { downFile, getFileList, selectSampleAndProductByOrderId } from "@/api/business/rawMaterialOrder"; -import { mapGetters } from "vuex"; +import {mapGetters} from "vuex"; export default { name: 'ProductOrder', components: { @@ -542,8 +535,8 @@ state: 0,// 0:鍙拌处椤碉紝1锛氭楠岄〉闈�,2妫�楠岄〉闈�(澶嶆牳)锛岄粯璁や负0,3鏁版嵁鏌ョ湅 InspectionKey: 1, inspectorList: [],//妫�楠屼汉鍛樺垪琛� - sonLaboratory: null,// 0:濮旀墭锛�1锛氬師杈呮枡 - typeSource: null,// 0:鎴愬搧涓嬪崟锛�1锛氬師杈呮枡涓嬪崟 + sonLaboratory: null,// 0:濮旀墭锛�1锛氬師鏉愭枡 + typeSource: null,// 0:鎴愬搧涓嬪崟锛�1锛氬師鏉愭枡涓嬪崟 deleteTilte: '鎾ら攢', examine: null, deleteList: [], @@ -779,7 +772,7 @@ } const params = { ...this.entity, state: this.tabList[this.tabIndex].value } this.tableLoading = true - selectInsOrderParameter({ ...this.page, ...params }).then(res => { + selectInsOrderParameter({...this.page,...params}).then(res => { this.upIndex++ this.tableLoading = false if (res.code === 200) { @@ -981,7 +974,7 @@ this.tableDataLookPage.size = page.limit this.getDataTableList(this.currentRow) }, - closeDia() { + closeDia () { this.tableDataLookPage = { total: 0, size: 20, @@ -1023,8 +1016,8 @@ // 涓嬭浇鎶ュ憡 download(row) { let url = row.urlS ? row.urlS : row.url; - if (url) { - url = url.split('.')[0] + '.pdf' + if(url){ + url = url.split('.')[0]+'.pdf' const link = document.createElement('a'); link.href = this.javaApi + url; link.target = '_blank'; diff --git a/src/views/business/reportPreparation/index.vue b/src/views/business/reportPreparation/index.vue index 1f324fb..4e41931 100644 --- a/src/views/business/reportPreparation/index.vue +++ b/src/views/business/reportPreparation/index.vue @@ -186,8 +186,8 @@ <el-button size="small" style="height: 38px" type="primary">闄勪欢涓婁紶</el-button> </el-upload> </div> - <lims-table :tableData="tableDataFile" :column="columnFile" height="500px" key="tableDataFile" - :tableLoading="tableLoadingFile"></lims-table> + <lims-table :tableData="tableDataFile" :column="columnFile" height="500px" + key="tableDataFile" :tableLoading="tableLoadingFile"></lims-table> </el-dialog> </div> </template> @@ -207,7 +207,7 @@ import { mapGetters } from "vuex"; import { selectUserCondition } from "@/api/business/inspectionTask"; import limsTable from "@/components/Table/lims-table.vue"; -import { delFile, downFile, getFileList } from "@/api/business/rawMaterialOrder"; +import {delFile, downFile, getFileList} from "@/api/business/rawMaterialOrder"; export default { name: 'ReportPreparation', components: { limsTable, onlyoffice }, @@ -251,7 +251,7 @@ loadingVerify: false, // 瀹℃牳浜哄憳 typeSourceList: [ { label: '鎴愬搧涓嬪崟', value: 0 }, - { label: '鍘熻緟鏂欎笅鍗�', value: 1 }, + { label: '鍘熸潗鏂欎笅鍗�', value: 1 }, ], orderTypeList: [ { label: '濮旀墭璇曢獙', value: 'Customer-ordered test' }, @@ -275,7 +275,7 @@ orderId: 0, inspectorList: [],//妫�楠屼汉鍛樺垪琛� InspectionKey: 1, - typeSource: null,// 0:鎴愬搧涓嬪崟锛�1锛氬師杈呮枡涓嬪崟 + typeSource: null,// 0:鎴愬搧涓嬪崟锛�1锛氬師鏉愭枡涓嬪崟 sonLaboratory: '', // 璇曢獙瀹� filesDialogVisible: false, filesLookInfo: {}, @@ -351,7 +351,7 @@ if (params == 0) { return "鎴愬搧涓嬪崟"; } else { - return "鍘熻緟鏂欎笅鍗�"; + return "鍘熸潗鏂欎笅鍗�"; } }, }, @@ -662,7 +662,7 @@ this.currentId = parseInt(row.insOrderId) switch (row.isCopper) { case 0: - // 鍘熻緟鏂� + // 鍘熸潗鏂� this.$router.push({ path: "/materialOrder/customsInspection", query: { customsInspection: row, diff --git a/src/views/business/unpass/components/unPassDialog.vue b/src/views/business/unpass/components/unPassDialog.vue index 69bb579..c2f06e0 100644 --- a/src/views/business/unpass/components/unPassDialog.vue +++ b/src/views/business/unpass/components/unPassDialog.vue @@ -84,7 +84,7 @@ <script> import { getInsOrder, getUnqualifiedHandler, downFile, addUnqualifiedHandler } from '@/api/business/unpass.js' -import { mapGetters } from "vuex"; +import {mapGetters} from "vuex"; export default { name: "unPassDialog", // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� @@ -106,7 +106,7 @@ isShow: this.unPassDialog, unPassForm: { // 涓嶅悎鏍煎鐞嗘暟鎹� headline: '', // 鏍囬 - inventoryQuantityId: '', // 鍘熻緟鏂檌d,涓嶅仛灞曠ず锛屽彧浼犲�� + inventoryQuantityId: '', // 鍘熸潗鏂檌d,涓嶅仛灞曠ず锛屽彧浼犲�� supplierName: '', // 渚涘簲鍟嗗悕绉� materialName: '', // 鐗╂枡鍚嶇О productionBatch: '', // 鐢熶骇鎵规 @@ -155,7 +155,7 @@ this.unPassForm.insOrderId = res.data.insOrder.id // 璁㈠崟id this.unPassForm.materialName = res.data.insOrder.sampleType // 鐗╂枡鍚嶇О this.unPassForm.specsModels = res.data.insOrder.partDetail // 瑙勬牸鍨嬪彿 - this.unPassForm.inventoryQuantityId = res.data.insOrderTemplate.inventoryQuantityId // 鍘熻緟鏂檌d + this.unPassForm.inventoryQuantityId = res.data.insOrderTemplate.inventoryQuantityId // 鍘熸潗鏂檌d this.unPassForm.supplierName = res.data.insOrderTemplate.supplierName // 渚涘簲鍟嗗悕绉� this.unPassForm.productionBatch = res.data.insOrderTemplate.updateBatchNo // 鐢熶骇鎵规 this.unPassForm.cargoQuantity = res.data.insOrderTemplate.qtyArrived + res.data.insOrderTemplate.buyUnitMeas // 鍒拌揣鏁伴噺 diff --git a/src/views/statisticalCharts/itemInspectionAnalysis/index.vue b/src/views/statisticalCharts/itemInspectionAnalysis/index.vue index de6e417..315bd84 100644 --- a/src/views/statisticalCharts/itemInspectionAnalysis/index.vue +++ b/src/views/statisticalCharts/itemInspectionAnalysis/index.vue @@ -3,8 +3,16 @@ <div v-if="!isShowDataCom"> <el-form ref="entity" size="small" :inline="true"> <el-form-item style="width: 16%;"> - <el-date-picker v-model="datePicker" end-placeholder="缁撴潫鏃ユ湡" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" - range-separator="鑷�" size="small" start-placeholder="寮�濮嬫棩鏈�" style="width: 100%;" type="daterange" + <el-date-picker + v-model="datePicker" + end-placeholder="缁撴潫鏃ユ湡" + format="yyyy-MM-dd" + placeholder="閫夋嫨鏃ユ湡" + range-separator="鑷�" + size="small" + start-placeholder="寮�濮嬫棩鏈�" + style="width: 100%;" + type="daterange" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> @@ -18,9 +26,13 @@ <el-input v-model="supplierName" clearable placeholder="璇疯緭鍏ヤ緵搴斿晢鍚嶇О" size="small"></el-input> </el-form-item> <el-form-item label="妫�楠岄」鍚嶇О" prop="supplierName"> - <el-select v-model="itemNames" :loading="selectLoading" clearable multiple placeholder="璇烽�夋嫨" size="small" - style="width: 90%;" @focus="getItemList"> - <el-option v-for="item in itemNamesList" :key="item.value" :label="item.label" :value="item.value"> + <el-select v-model="itemNames" :loading="selectLoading" clearable multiple placeholder="璇烽�夋嫨" + size="small" style="width: 90%;" @focus="getItemList"> + <el-option + v-for="item in itemNamesList" + :key="item.value" + :label="item.label" + :value="item.value"> </el-option> </el-select> </el-form-item> @@ -34,11 +46,13 @@ <el-col :span="24"> <div class="inspection-card"> <div style="display: flex;align-items: center;margin-bottom: 10px;justify-content: space-between;"> - <div>鍘熻緟鏂欓」妫�鍒嗘瀽鍒楄〃</div> + <div>鍘熸潗鏂欓」妫�鍒嗘瀽鍒楄〃</div> <el-button size="small" type="primary" @click="openShowData">鏌ョ湅鏁版嵁鍒嗘瀽</el-button> </div> - <lims-table :tableData="editTableData" :column="editColumn" height="400" key="tableData" :isSelection="true" - :handleSelectionChange="handleSelectionChange" :tableLoading="editLoading"></lims-table> + <lims-table :tableData="editTableData" :column="editColumn" + height="400" key="tableData" :isSelection="true" + :handleSelectionChange="handleSelectionChange" + :tableLoading="editLoading"></lims-table> </div> </el-col> </el-row> @@ -46,9 +60,14 @@ <el-col :span="6" style="padding-top: 14px"> <div style="display: flex;margin-left: 10px;align-items: center"> <span style="width: 100px">鍒嗙粍绫诲瀷锛�</span> - <el-select v-model="groupType" clearable placeholder="璇烽�夋嫨" size="small" style="width: 90%;" - @change="getBarInfo"> - <el-option v-for="item in groupTypeList" :key="item.value" :label="item.label" :value="item.value"> + <el-select v-model="groupType" clearable placeholder="璇烽�夋嫨" + size="small" + style="width: 90%;" @change="getBarInfo"> + <el-option + v-for="item in groupTypeList" + :key="item.value" + :label="item.label" + :value="item.value"> </el-option> </el-select> </div> @@ -58,30 +77,46 @@ <el-col :span="24"> <div class="inspection-card"> <div class="title">妫�楠岄」鏁版嵁瀵规瘮</div> - <Echarts ref="chart" :chartStyle="chartStyle" :dataset="dataset" :grid="grid" :options="echartsOptions" - :series="echartsSeries" :tooltip="tooltip" :xAxis="xAxis" :yAxis="yAxis" style="height: 40vh;"></Echarts> + <Echarts ref="chart" + :chartStyle="chartStyle" + :dataset="dataset" + :grid="grid" + :options="echartsOptions" + :series="echartsSeries" + :tooltip="tooltip" + :xAxis="xAxis" + :yAxis="yAxis" + style="height: 40vh;"></Echarts> </div> </el-col> </el-row> <el-row> <el-col :span="24"> <div class="inspection-card"> - <div class="title">鍘熻緟鏂欓」妫�鍚堟牸鐜�</div> - <Echarts ref="chart" :chartStyle="chartStyle" :dataset="dataset1" :grid="grid" :options="echartsOptions1" - :series="echartsSeries1" :tooltip="tooltip" :xAxis="xAxis" :yAxis="yAxis1" style="height: 40vh;"> - </Echarts> + <div class="title">鍘熸潗鏂欓」妫�鍚堟牸鐜�</div> + <Echarts ref="chart" + :chartStyle="chartStyle" + :dataset="dataset1" + :grid="grid" + :options="echartsOptions1" + :series="echartsSeries1" + :tooltip="tooltip" + :xAxis="xAxis" + :yAxis="yAxis1" + style="height: 40vh;"></Echarts> </div> </el-col> </el-row> </div> <el-dialog :visible.sync="dataDialogVisible" title="鏁版嵁鏌ョ湅" width="80%"> <div v-if="dataDialogVisible" style="height: 70vh;overflow-y: auto;"> - <lims-table :tableData="tableData" :column="column" @pagination="pagination" key="tableData" :page="page" - :tableLoading="tableLoading"></lims-table> + <lims-table :tableData="tableData" :column="column" + @pagination="pagination" key="tableData" + :page="page" :tableLoading="tableLoading"></lims-table> </div> </el-dialog> - <DataComparison v-if="isShowDataCom" :comparisonData="comparisonData" :selectRow="selectRow" @goBack="goBack"> - </DataComparison> + <DataComparison v-if="isShowDataCom" :comparisonData="comparisonData" + :selectRow="selectRow" @goBack="goBack"></DataComparison> </div> </template> @@ -95,20 +130,20 @@ getRawProductAnalysisAllList, getRawProductAnalysisRawPass, getRawSupplierCompare } from "@/api/statisticalCharts/dataAnalysis"; -import { selectSampleAndProductByOrderId } from "@/api/business/rawMaterialOrder"; +import {selectSampleAndProductByOrderId} from "@/api/business/rawMaterialOrder"; export default { name: "ItemInspectionAnalysis", // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� - components: { limsTable, Echarts, DataComparison }, + components: {limsTable, Echarts, DataComparison}, data() { // 杩欓噷瀛樻斁鏁版嵁 return { selectChangeRows: [], // 閫変腑鐨勬暟鎹� groupTypeList: [ - { label: '鏍峰搧', value: '0' }, - { label: '鍚屼竴鍘傚, 鍚屼竴鍨嬪彿, 涓嶅悓鎵规', value: '1' }, - { label: '鍚屼竴鍨嬪彿, 涓嶅悓鍘傚', value: '2' }, + {label: '鏍峰搧', value: '0'}, + {label: '鍚屼竴鍘傚, 鍚屼竴鍨嬪彿, 涓嶅悓鎵规', value: '1'}, + {label: '鍚屼竴鍨嬪彿, 涓嶅悓鍘傚', value: '2'}, ], itemNames: [], // 妫�楠岄」鍚嶇О itemNamesList: [], @@ -206,15 +241,15 @@ label: '鏍峰搧鍨嬪彿', minWidth: '300px', prop: 'sampleModel' - }, { + },{ label: '涓嬪彂鏃堕棿', minWidth: '120px', prop: 'sendTime' - }, { + },{ label: '鎶佃揪鐨勯噰璐暟閲�', minWidth: '130px', prop: 'qtyArrived' - }, { + },{ label: '鍗曚綅', minWidth: '120px', prop: 'buyUnitMeas' @@ -241,17 +276,17 @@ tableData: [], tableLoading: false, column: [ - { label: '鏍峰搧缂栧彿', prop: 'sampleCode' }, - { label: '鏍峰搧鍚嶇О', prop: 'sample' }, - { label: '妫�楠岄」鍒嗙被', prop: 'inspectionItemClass' }, - { label: '妫�楠岄」', prop: 'inspectionItem' }, - { label: '妫�楠屽瓙椤�', prop: 'inspectionItemSubclass' }, - { label: '鍗曚綅', prop: 'unit' }, - { label: '鏍峰搧鍨嬪彿', prop: 'model' }, - { label: '鏉′欢', prop: 'radius' }, - { label: '鐢电紗鏍囪瘑', prop: 'cableTag' }, - { label: '璇曢獙瑕佹眰', prop: 'tell' }, - { label: '妫�楠岀粨鏋�', prop: 'lastValue' }, + {label: '鏍峰搧缂栧彿', prop: 'sampleCode'}, + {label: '鏍峰搧鍚嶇О', prop: 'sample'}, + {label: '妫�楠岄」鍒嗙被', prop: 'inspectionItemClass'}, + {label: '妫�楠岄」', prop: 'inspectionItem'}, + {label: '妫�楠屽瓙椤�', prop: 'inspectionItemSubclass'}, + {label: '鍗曚綅', prop: 'unit'}, + {label: '鏍峰搧鍨嬪彿', prop: 'model'}, + {label: '鏉′欢', prop: 'radius'}, + {label: '鐢电紗鏍囪瘑', prop: 'cableTag'}, + {label: '璇曢獙瑕佹眰', prop: 'tell'}, + {label: '妫�楠岀粨鏋�', prop: 'lastValue'}, { dataType: 'tag', label: '缁撴灉鍒ゅ畾', @@ -274,16 +309,16 @@ return 'danger' } else if (params == 3) { return '' - } else { + } else { return null } } } ], page: { - total: 0, - size: 10, - current: 1 + total:0, + size:10, + current:1 }, currentRow: {}, isShowDataCom: false, @@ -296,7 +331,7 @@ }, // 鏂规硶闆嗗悎 methods: { - getBarInfo(val) { + getBarInfo (val) { if (val === '1') { if (!this.modelName || !this.supplierName) { this.$message.warning('鍨嬪彿鎴栦緵搴斿晢涓嶈兘涓虹┖') @@ -336,12 +371,10 @@ return } for (let i = 0; i < res.data.itemNames.length; i++) { - this.echartsSeries.push({ - type: 'line', label: { + this.echartsSeries.push({type: 'line', label: { show: true, position: 'top' - }, - }) + },}) } this.dataset.dimensions = this.HaveJson(res.data.itemNames) this.dataset.dimensions.unshift('product') @@ -366,17 +399,15 @@ return } for (let i = 0; i < res.data.itemNames.length; i++) { - this.echartsSeries1.push({ - type: 'line', tooltip: { + this.echartsSeries1.push({type: 'line',tooltip: { valueFormatter: function (value) { return value + '%'; } - }, label: { + },label: { show: true, position: 'top', formatter: (params) => params.value[params.dimensionNames[params.encode.y[0]]] + '%' - }, - }) + },}) } this.dataset1.dimensions = this.HaveJson(res.data.itemNames) this.dataset1.dimensions.unshift('product') @@ -392,7 +423,7 @@ }, // 鏌ヨ鍥炶皟 refreshTable(row) { - selectSampleAndProductByOrderId({ id: row.id, ...this.page }).then(res => { + selectSampleAndProductByOrderId({id: row.id, ...this.page}).then(res => { this.tableLoading = false if (res.code === 200) { this.tableData = res.data.records @@ -402,11 +433,11 @@ this.tableLoading = false }) }, - pagination(page) { + pagination (page) { this.page.size = page.limit this.refreshTable(this.currentRow) }, - changeData() { + changeData () { if (this.datePicker !== null && this.datePicker.length > 0) { this.beginDate = this.datePicker[0] + ' 00:00:00' this.endDate = this.datePicker[1] + ' 23:59:59' @@ -418,7 +449,7 @@ this.getBar1() this.getTableData() }, - getTableData() { + getTableData () { this.editLoading = true const params = { beginDate: this.beginDate, @@ -436,7 +467,7 @@ }) }, // 鑾峰彇妫�楠岄」涓嬫媺妗� - getItemList() { + getItemList () { this.selectLoading = true this.itemNamesList = [] const params = { @@ -459,10 +490,10 @@ this.selectLoading = false }) }, - goBack() { + goBack () { this.isShowDataCom = false }, - openShowData() { + openShowData () { if (this.selectChangeRows.length !== 5) { this.$message.warning('璇烽�夋嫨5鏉℃暟鎹�') return @@ -489,7 +520,7 @@ this.isShowDataCom = true }) }, - handleSelectionChange(val) { + handleSelectionChange (val) { this.selectChangeRows = val }, }, @@ -497,7 +528,7 @@ </script> <style scoped> -.inspection-card { +.inspection-card{ width: 100%; margin-top: 10px; } diff --git a/src/views/statisticalCharts/qualificationRateStatistics/index.vue b/src/views/statisticalCharts/qualificationRateStatistics/index.vue index 443394d..17fd9a9 100644 --- a/src/views/statisticalCharts/qualificationRateStatistics/index.vue +++ b/src/views/statisticalCharts/qualificationRateStatistics/index.vue @@ -11,9 +11,18 @@ <el-col :span="20"> <el-form ref="entity" size="small" :inline="true"> <el-form-item style="width: 20%;"> - <el-date-picker v-model="datePicker" end-placeholder="缁撴潫鏃ユ湡" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" - range-separator="鑷�" size="small" start-placeholder="寮�濮嬫棩鏈�" type="daterange" style="width: 100%;" - value-format="yyyy-MM-dd" @change="changeDatePicker"> + <el-date-picker + v-model="datePicker" + end-placeholder="缁撴潫鏃ユ湡" + format="yyyy-MM-dd" + placeholder="閫夋嫨鏃ユ湡" + range-separator="鑷�" + size="small" + start-placeholder="寮�濮嬫棩鏈�" + type="daterange" + style="width: 100%;" + value-format="yyyy-MM-dd" + @change="changeDatePicker"> </el-date-picker> </el-form-item> <el-form-item label="鏍峰搧鍚嶇О" prop="sampleName"> @@ -23,8 +32,7 @@ <el-input v-model="modelName" clearable placeholder="璇疯緭鍏ュ瀷鍙�" size="small" @change="changeDate"></el-input> </el-form-item> <el-form-item label="渚涘簲鍟嗗悕绉�" prop="supplierName"> - <el-input v-model="supplierName" clearable placeholder="璇疯緭鍏ヤ緵搴斿晢鍚嶇О" size="small" - @change="changeDate"></el-input> + <el-input v-model="supplierName" clearable placeholder="璇疯緭鍏ヤ緵搴斿晢鍚嶇О" size="small" @change="changeDate"></el-input> </el-form-item> </el-form> </el-col> @@ -32,24 +40,39 @@ <el-row :gutter="20"> <el-col :span="8"> <div class="pie-card"> - <div class="title">鍘熻緟鏂欏悎鏍肩巼</div> - <span class="data">{{ passRate }}</span> - <Echarts ref="chart" :legend="pieLegend" :series="materialPieSeries" :tooltip="pieTooltip" - style="height: 36vh;"></Echarts> + <div class="title">鍘熸潗鏂欏悎鏍肩巼</div> + <span class="data">{{passRate}}</span> + <Echarts ref="chart" + :legend="pieLegend" + :series="materialPieSeries" + :tooltip="pieTooltip" + style="height: 36vh;"></Echarts> </div> </el-col> <el-col :span="8"> <div class="pie-card"> <div class="title"><span style="color: #F56C6C">鏈湀</span>妫�楠岀被鍨嬫暟閲�</div> - <Echarts ref="chart" :chartStyle="chartStyle2" :legend="pieLegend" :series="materialPieSeries1" - :tooltip="pieTooltip" style="height: 36vh;"></Echarts> + <Echarts ref="chart" + :chartStyle="chartStyle2" + :legend="pieLegend" + :series="materialPieSeries1" + :tooltip="pieTooltip" + style="height: 36vh;"></Echarts> </div> </el-col> <el-col :span="8"> <div class="pie-card"> - <div class="title">鍘熻緟鏂�<span style="color: #F56C6C">鏈湀</span>涓�<span style="color: #F56C6C">涓婃湀</span>鍚堟牸鐜囧姣�</div> - <Echarts ref="chart" :barColors="barColors2" :chartStyle="chartStyle" :grid="grid" :legend="barLegend" - :series="barSeries" :tooltip="tooltip" :xAxis="xAxis1" :yAxis="yAxis1" style="height: 36vh;"></Echarts> + <div class="title">鍘熸潗鏂�<span style="color: #F56C6C">鏈湀</span>涓�<span style="color: #F56C6C">涓婃湀</span>鍚堟牸鐜囧姣�</div> + <Echarts ref="chart" + :barColors="barColors2" + :chartStyle="chartStyle" + :grid="grid" + :legend="barLegend" + :series="barSeries" + :tooltip="tooltip" + :xAxis="xAxis1" + :yAxis="yAxis1" + style="height: 36vh;"></Echarts> </div> </el-col> </el-row> @@ -57,9 +80,17 @@ <el-col :span="24"> <div class="inspection-card"> <div class="title">鍚堟牸鐜�</div> - <Echarts ref="chart" :barColors="barColors" :grid="grid" :legend="legend" :lineColors="lineColors" - :options="echartsOptions" :series="echartsSeries" :tooltip="tooltip" :xAxis="xAxis" :yAxis="yAxis" - style="height: 40vh;"></Echarts> + <Echarts ref="chart" + :barColors="barColors" + :grid="grid" + :legend="legend" + :lineColors="lineColors" + :options="echartsOptions" + :series="echartsSeries" + :tooltip="tooltip" + :xAxis="xAxis" + :yAxis="yAxis" + style="height: 40vh;"></Echarts> </div> </el-col> </el-row> @@ -78,7 +109,7 @@ export default { name: "QualificationRateStatistics", // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� - components: { Echarts }, + components: {Echarts}, data() { // 杩欓噷瀛樻斁鏁版嵁 return { @@ -158,7 +189,7 @@ containLabel: true }, legend: { - data: ['鎬绘暟', '鍚堟牸鐜�'] + data: ['鎬绘暟','鍚堟牸鐜�'] }, tooltip: { trigger: 'axis', @@ -324,7 +355,7 @@ this.xAxis[0].data = xAxis }) }, - // 鑾峰彇鍘熻緟鏂欏悎鏍肩巼鍥捐〃鏁版嵁 + // 鑾峰彇鍘熸潗鏂欏悎鏍肩巼鍥捐〃鏁版嵁 getRawPass() { const params = { dateType: this.dateType, @@ -362,13 +393,13 @@ this.barSeries[0].data = barData }) }, - changeDate() { + changeDate () { this.getBar() this.getRawPass() // this.getOrderType() // this.getPassRateCom() }, - changeDatePicker(val) { + changeDatePicker (val) { if (val) { this.beginDate = val[0] + ' 00:00:00' this.endDate = val[1] + ' 23:59:59' @@ -389,18 +420,15 @@ .title { padding: 10px 0 0 20px; } - .table { padding: 0 10px 10px; } - .pie-card { width: 100%; background: #FFFFFF; margin-top: 10px; position: relative; } - .data { position: absolute; font-size: 20px; @@ -409,8 +437,7 @@ top: 42%; z-index: 1; } - -.inspection-card { +.inspection-card{ width: 100%; background: #FFFFFF; margin-top: 10px; -- Gitblit v1.9.3