From 0f102473c642142976d537af4c505b8a7161d6c5 Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期五, 31 十月 2025 15:30:17 +0800
Subject: [PATCH] 原材料报检拆分功能V1
---
src/views/CNAS/resourceDemand/device/component/management.vue | 113 +++++++++++++++++++++++++++-----------------------------
1 files changed, 54 insertions(+), 59 deletions(-)
diff --git a/src/views/CNAS/resourceDemand/device/component/management.vue b/src/views/CNAS/resourceDemand/device/component/management.vue
index 6fb77f5..0dcc8a5 100644
--- a/src/views/CNAS/resourceDemand/device/component/management.vue
+++ b/src/views/CNAS/resourceDemand/device/component/management.vue
@@ -1,38 +1,39 @@
<!-- 璁惧宸ュ叿鏄庣粏 -->
<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="small" @click="refresh()">閲� 缃�</el-button>
- <el-button size="small" type="primary" @click="refreshTable()">鏌� 璇�</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" v-show="!showData">
+ <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" clearable
+ placeholder="鍏ㄩ儴" size="small" @change="refreshTable">
+ <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="managementNumber">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable
+ v-model="queryParams.managementNumber" @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)'"
- :page="page" @pagination="pagination"></lims-table>
+ <lims-table :tableData="tableData" :column="column" :tableLoading="tableLoading" :height="'calc(100vh - 300px)'"
+ :page="page" @pagination="pagination" :row-class-name="tableRowClassName"></lims-table>
</div>
<el-dialog :title="isUp ? '璁惧璇︽儏' : '妗f淇'" :visible.sync="dialogVisible" width="70%" top="5vh"
:before-close="handleClose">
@@ -443,11 +444,9 @@
labelPosition: 'right',
dialogVisible: false,
dialogVisible2: false,
- addPower: false,
showData: false, // 鏁伴噰閰嶇疆椤甸潰
tableList: [],
addDia: true,
- addPower: true,
//璁惧绫诲瀷鍒楄〃
equipmentList: [],
// 璐熻矗浜哄垪琛�
@@ -478,7 +477,7 @@
{ label: "绠$悊缂栧彿", prop: "managementNumber" },
{ label: "鎶�鏈寚鏍�", prop: "technicalIndicators" },
{ label: "璐疆鏃ユ湡", prop: "acquisitionDate" },
- { label: "鍚敤鏃ユ湡", prop: "activationDate" },
+ { label: "鏍″噯鏈夋晥鏈�", prop: "activationDate" },
{ label: "绠$悊浜�", prop: "equipmentManagerUser" },
{ label: "瀛樻斁鐐�", prop: "storagePoint" },
{ label: "鎵�灞為儴闂�", prop: "laboratoryName" },
@@ -607,6 +606,18 @@
this.page.size = limit;
this.getList();
},
+ tableRowClassName({ row }) {
+ const today = new Date();
+ const targetDate = new Date(row.activationDate);
+ const fiveDaysBeforeTarget = new Date(targetDate);
+ // 璁$畻鍓嶄簲澶╃殑鏃ユ湡
+ fiveDaysBeforeTarget.setDate(targetDate.getDate() - 5);
+ // 姣旇緝鏃堕渶瑕佺‘淇濇瘮杈冪殑鏄畬鏁寸殑鏃ユ湡鏃堕棿锛屽寘鍚椂鍒嗙
+ if (today > fiveDaysBeforeTarget) {
+ return 'red-row';
+ }
+ return '';
+ },
refresh() {
this.queryParams = {};
this.page.current = 1;
@@ -804,7 +815,7 @@
delete this.formData.updateUser
const formData = this.HaveJson(this.formData)
formData.insProductIds = formData.insProductIds ? formData.insProductIds.join() : ''
- if (formData.authorizedPerson.length === 0) {
+ if (formData.authorizedPerson && formData.authorizedPerson.length === 0) {
formData.authorizedPerson = ''
} else {
formData.authorizedPerson = JSON.stringify(formData.authorizedPerson)
@@ -990,20 +1001,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 +1020,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 +1031,7 @@
word-break: break-all;
width: 120px;
}
+.form-item >>>.el-form-item__content {
+ width: 120px;
+}
</style>
--
Gitblit v1.9.3