From ff0d18ecf8781e9f75a83e305142a753c3a7098d Mon Sep 17 00:00:00 2001 From: spring <2396852758@qq.com> Date: 星期四, 20 二月 2025 17:40:55 +0800 Subject: [PATCH] 解决页面缓存问题 --- src/components/Table/lims-table.vue | 2 src/views/standard/model/index.vue | 1 src/views/standard/standardLibrary/index.vue | 564 ++++++-------------------- src/views/performance/manHour/index.vue | 24 src/views/CNAS/process/method/standardMethod/index.vue | 141 +----- src/views/performance/class/index.vue | 491 +++++++--------------- src/views/business/inspectionTask/inspection.vue | 1 src/views/business/inspectionTask/index.vue | 1 8 files changed, 324 insertions(+), 901 deletions(-) diff --git a/src/components/Table/lims-table.vue b/src/components/Table/lims-table.vue index 879357a..fb86ea4 100644 --- a/src/components/Table/lims-table.vue +++ b/src/components/Table/lims-table.vue @@ -268,7 +268,7 @@ row.forEach((a) => { count += a.name.length; }); - return count * 15 + 40 + "px"; + return count * 15 + 60 + "px"; }, iconFn(row) { if (row.name === "缂栬緫" || row.name === "淇敼") { diff --git a/src/views/CNAS/process/method/standardMethod/index.vue b/src/views/CNAS/process/method/standardMethod/index.vue index b970b5f..f29c0e2 100644 --- a/src/views/CNAS/process/method/standardMethod/index.vue +++ b/src/views/CNAS/process/method/standardMethod/index.vue @@ -37,157 +37,70 @@ <div class="search_thing"> <div class="search_label">鏍囧噯缂栧彿锛�</div> <div class="search_input"> - <el-input - size="small" - placeholder="璇疯緭鍏�" - clearable - v-model="queryParams.code" - @keyup.enter.native="refreshTable()" - ></el-input> + <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.code" + @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.name" - @keyup.enter.native="refreshTable()" - ></el-input> + <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="queryParams.name" + @keyup.enter.native="refreshTable()"></el-input> </div> </div> <div class="search_thing" 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="refreshTable()">鏌� 璇�</el-button> </div> <div class="btn"> - <el-button - size="small" - @click="$refs.ValueTable.openUpload()" - v-if="inPower" - > + <el-button size="small" @click="$refs.ValueTable.openUpload()" v-if="inPower"> <i class="el-icon-upload2" style="color: #3a7bfa"></i> - <span style="color: #3a7bfa">瀵煎叆</span></el-button - > - <el-button size="small" type="primary" @click="openAdd" v-if="addPower" - >鏂板</el-button - > + <span style="color: #3a7bfa">瀵煎叆</span></el-button> + <el-button size="small" type="primary" @click="openAdd" v-if="addPower">鏂板</el-button> </div> </div> - <lims-table - :tableData="tableData" - :column="column" - :page="page" - :tableLoading="tableLoading" - :height="'calc(100vh - 250px)'" - style="padding: 20px; padding-top: 0" - @pagination="pagination" - ></lims-table> + <lims-table :tableData="tableData" :column="column" :page="page" :tableLoading="tableLoading" + :height="'calc(100vh - 250px)'" style="padding: 20px; padding-top: 0" @pagination="pagination"></lims-table> <!-- 鏂板/缂栬緫 --> <el-dialog :title="title" :visible.sync="addDlog" width="500px"> - <el-form - :model="addForm" - ref="addForm" - :rules="addRules" - label-position="right" - label-width="120px" - > + <el-form :model="addForm" ref="addForm" :rules="addRules" label-position="right" label-width="120px"> <el-form-item label="棰嗗煙" prop="field"> - <el-input - size="small" - placeholder="璇疯緭鍏�" - clearable - v-model="addForm.field" - ></el-input> + <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addForm.field"></el-input> </el-form-item> <el-form-item label="鏍囧噯缂栧彿" prop="code"> - <el-input - size="small" - placeholder="璇疯緭鍏�" - clearable - v-model="addForm.code" - > + <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addForm.code"> </el-input> </el-form-item> <el-form-item label="妫�楠屽璞�" prop="structureTestObjectId"> - <el-cascader - size="small" - :options="tandardTree" - v-model="addForm.structureTestObjectId" - collapse-tags - :props="{ multiple: true, checkStrictly: true }" - clearable - style="width: 100%" - ></el-cascader> + <el-cascader size="small" :options="tandardTree" v-model="addForm.structureTestObjectId" collapse-tags + :props="{ multiple: true, checkStrictly: true }" clearable style="width: 100%"></el-cascader> </el-form-item> <el-form-item label="鏍囧噯鎻忚堪" prop="name"> - <el-input - size="small" - placeholder="璇疯緭鍏�" - clearable - v-model="addForm.name" - > + <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addForm.name"> </el-input> </el-form-item> <el-form-item label="鏍囧噯鎻忚堪EN" prop="nameEn"> - <el-input - size="small" - placeholder="璇疯緭鍏�" - clearable - v-model="addForm.nameEn" - > + <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addForm.nameEn"> </el-input> </el-form-item> <el-form-item label="澶囨敞" prop="remark"> - <el-input - size="small" - placeholder="璇疯緭鍏�" - clearable - v-model="addForm.remark" - > + <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="addForm.remark"> </el-input> </el-form-item> <el-form-item label="璧勮川" prop="qualificationId"> - <el-select - v-model="addForm.qualificationId" - size="small" - clearable - placeholder="璇烽�夋嫨" - style="width: 100%" - > - <el-option - v-for="item in qualificationList" - :key="item.value" - :label="item.label" - :value="item.value" - > + <el-select v-model="addForm.qualificationId" size="small" clearable placeholder="璇烽�夋嫨" style="width: 100%"> + <el-option v-for="item in qualificationList" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item label="鏄惁浜у搧鏍囧噯" prop="isProduct"> - <el-select - v-model="addForm.isProduct" - size="small" - clearable - placeholder="璇烽�夋嫨" - style="width: 100%" - > + <el-select v-model="addForm.isProduct" size="small" clearable placeholder="璇烽�夋嫨" style="width: 100%"> <el-option label="鍚�" :value="0"> </el-option> <el-option label="鏄�" :value="1"> </el-option> </el-select> </el-form-item> <el-form-item label="鏄惁鍚敤" prop="isUse"> - <el-select - v-model="addForm.isUse" - size="small" - clearable - placeholder="璇烽�夋嫨" - style="width: 100%" - > + <el-select v-model="addForm.isUse" size="small" clearable placeholder="璇烽�夋嫨" style="width: 100%"> <el-option label="鍚�" :value="0"> </el-option> <el-option label="鏄�" :value="1"> </el-option> </el-select> @@ -195,12 +108,7 @@ </el-form> <span slot="footer" class="dialog-footer"> <el-button @click="addDlog = false">鍙� 娑�</el-button> - <el-button - :loading="addLoading" - type="primary" - @click="submitProduct('addForm')" - >纭� 璁�</el-button - > + <el-button :loading="addLoading" type="primary" @click="submitProduct('addForm')">纭� 璁�</el-button> </span> </el-dialog> </div> @@ -216,6 +124,7 @@ upStandardMethod, } from "@/api/cnas/process/method/standardMethod"; export default { + name: 'StandardMethod', components: { limsTable, }, @@ -481,7 +390,7 @@ this.getList(); }); }) - .catch(() => {}); + .catch(() => { }); }, }, }; diff --git a/src/views/business/inspectionTask/index.vue b/src/views/business/inspectionTask/index.vue index 4c59a35..f71274e 100644 --- a/src/views/business/inspectionTask/index.vue +++ b/src/views/business/inspectionTask/index.vue @@ -254,6 +254,7 @@ } from "@/api/business/inspectionTask.js"; import { mapGetters } from "vuex"; export default { + name: 'InspectionTask', components: { EditInspectionItem, limsTable, diff --git a/src/views/business/inspectionTask/inspection.vue b/src/views/business/inspectionTask/inspection.vue index a633db3..aea46d7 100644 --- a/src/views/business/inspectionTask/inspection.vue +++ b/src/views/business/inspectionTask/inspection.vue @@ -547,6 +547,7 @@ import html2canvas from "html2canvas"; import { mapGetters } from "vuex"; export default { + name: 'inspection', components: { PurchaseVerification, AddUnPass, diff --git a/src/views/performance/class/index.vue b/src/views/performance/class/index.vue index 18e6ed2..d5a7a4a 100644 --- a/src/views/performance/class/index.vue +++ b/src/views/performance/class/index.vue @@ -4,123 +4,57 @@ <div class="search_thing"> <div class="search_label">閫夋嫨鏃堕棿锛�</div> <div class="search_input"> - <el-date-picker - v-model="query.year" - type="year" - size="small" - format="yyyy" - placeholder="閫夋嫨骞�" - @change="refreshTable()" - style="width: 140px" - :clearable="false" - > + <el-date-picker v-model="query.year" type="year" size="small" format="yyyy" placeholder="閫夋嫨骞�" + @change="refreshTable()" style="width: 140px" :clearable="false"> </el-date-picker> - <el-select - v-model="query.month" - clearable - placeholder="閫夋嫨鏈�" - style="width: 140px; margin-left: 16px" - size="small" - @change="refreshTable()" - > - <el-option - v-for="item in monthOptions" - :key="item.value" - :label="item.label" - :value="item.value" - > + <el-select v-model="query.month" clearable placeholder="閫夋嫨鏈�" style="width: 140px; margin-left: 16px" + size="small" @change="refreshTable()"> + <el-option v-for="item in monthOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> - <el-input - v-model="query.userName" - placeholder="璇疯緭鍏ヤ汉鍛樺悕绉�" - size="small" - style="width: 140px; margin: 0 16px" - clearable - @keyup.enter.native="refreshTable()" - ></el-input> - <el-select - v-model="query.laboratory" - placeholder="璇烽�夋嫨瀹為獙瀹�" - style="width: 140px" - size="small" - clearable - @change="refreshTable()" - > - <el-option - v-for="item in laboratory" - :key="item.value" - :label="item.label" - :value="item.value" - > + <el-input v-model="query.userName" placeholder="璇疯緭鍏ヤ汉鍛樺悕绉�" size="small" style="width: 140px; margin: 0 16px" + clearable @keyup.enter.native="refreshTable()"></el-input> + <el-select v-model="query.laboratory" placeholder="璇烽�夋嫨瀹為獙瀹�" style="width: 140px" size="small" clearable + @change="refreshTable()"> + <el-option v-for="item in laboratory" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </div> </div> <div class="search_thing" 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="refreshTable()">鏌� 璇�</el-button> </div> <div class="search_thing btns" style="padding-left: 30px"> - <el-button - size="small" - type="primary" - v-if="checkPermi(['performance:class:time'])" - @click="configTime" - >鏃堕棿閰嶇疆</el-button - > - <el-button - size="small" - type="primary" - v-if="checkPermi(['performance:class:down'])" - @click="handleDown" - :loading="downLoading" - >瀵� 鍑�</el-button - > - <el-button - size="small" - type="primary" - @click="schedulingVisible = true" - v-if="checkPermi(['performance:class:add'])" - >鎺� 鐝�</el-button - > + <el-button size="small" type="primary" v-if="checkPermi(['performance:class:time'])" + @click="configTime">鏃堕棿閰嶇疆</el-button> + <el-button size="small" type="primary" v-if="checkPermi(['performance:class:down'])" @click="handleDown" + :loading="downLoading">瀵� 鍑�</el-button> + <el-button size="small" type="primary" @click="schedulingVisible = true" + v-if="checkPermi(['performance:class:add'])">鎺� 鐝�</el-button> </div> </div> <div class="center" v-loading="pageLoading"> <div class="clearfix" style="width: 100%" v-show="query.month"> <div class="fixed-left"> - <div - class="content-title" - style="padding-left: 16px; box-sizing: border-box" - > + <div class="content-title" style="padding-left: 16px; box-sizing: border-box"> 浜哄憳鍚嶇О </div> - <div - class="content-user" - :class="{ hoverType: currentUserIndex == index }" - v-for="(item, index) in list" - :key="'e' + index" - v-on:mouseenter="onMouseEnter(index)" - v-on:mouseleave="currentUserIndex = null" - > + <div class="content-user" :class="{ hoverType: currentUserIndex == index }" v-for="(item, index) in list" + :key="'e' + index" v-on:mouseenter="onMouseEnter(index)" v-on:mouseleave="currentUserIndex = null"> <div class="user-pic"> {{ item.name ? item.name.charAt(0) : "" }} </div> <div class="user-info"> - <p - style=" + <p style=" font-size: 14px; color: #3a7bfa; line-height: 24px; margin: 0; - " - > + "> {{ item.name }} </p> - <p - style=" + <p style=" color: #999999; font-size: 12px; transform: scale(0.8) translateX(-20px); @@ -128,102 +62,60 @@ width: 150px; overflow-x: show; margin: 0; - " - > + "> 鏃�:{{ item.day0 }},涓�:{{ item.day1 }},澶�:{{ item.day2 }},浼�:{{ item.day3 }},鍋�:{{ item.day4 }},宸�:{{ item.day6 }} </p> <p style="margin-top: 4px; margin: 0"> - <span - style=" + <span style=" color: #999999; font-size: 12px; display: inline-block; transform: scale(0.8) translateX(-10px); - " - >鍚堣鍑哄嫟: </span - ><span style="font-size: 16px; color: #ff4902" - >{{ + ">鍚堣鍑哄嫟: </span><span style="font-size: 16px; color: #ff4902">{{ query.month ? item.monthlyAttendance.totalAttendance : item.sidebarAnnualAttendance.totalAttendance - }}澶�</span - > + }}澶�</span> </p> </div> </div> </div> <div class="scroll-right"> <div class="content"> - <div - class="content-title content-title-right" - style="border-bottom: 0" - > - <div - class="content-title-item" - v-for="(item, index) in weeks" - :key="'b' + index" - > - <span - class="month" - style="position: absolute; top: 0px" - v-if="item.week == '鍛ㄦ棩'" - >{{ item.weekNum }}鍛�</span - > + <div class="content-title content-title-right" style="border-bottom: 0"> + <div class="content-title-item" v-for="(item, index) in weeks" :key="'b' + index"> + <span class="month" style="position: absolute; top: 0px" v-if="item.week == '鍛ㄦ棩'">{{ item.weekNum + }}鍛�</span> <p style="height: 26px; position: absolute; bottom: 12px"> <span class="day">{{ item.day }}</span> <span class="week">{{ item.week.charAt(1) }}</span> </p> </div> </div> - <div - class="content-body" - v-for="(item, index) in list" - :key="'c' + index" - v-on:mouseenter="onMouseEnter(index)" - v-on:mouseleave="currentUserIndex = null" - > - <div - class="content-body-item" - v-for="(m, i) in item.list" - :key="'d' + i" - :class="{ hoverType: currentUserIndex == index }" - > - <el-dropdown - trigger="click" - placement="bottom" - @command="(e) => handleCommand(e, m)" + <div class="content-body" v-for="(item, index) in list" :key="'c' + index" + v-on:mouseenter="onMouseEnter(index)" v-on:mouseleave="currentUserIndex = null"> + <div class="content-body-item" v-for="(m, i) in item.list" :key="'d' + i" + :class="{ hoverType: currentUserIndex == index }"> + <el-dropdown trigger="click" placement="bottom" @command="(e) => handleCommand(e, m)" :disabled="!checkPermi(['performance:class:edit'])" - style="width: 100%; height: 100%; cursor: pointer" - > - <div - class="work-box" - :class="{ - type0: m.shift === '0', - type1: m.shift === '1', - type2: m.shift === '2', - type3: m.shift === '3', - type4: m.shift === '4', - type5: m.shift === '5', - type6: m.shift === '6', - }" - > - <span - style="cursor: pointer" - :style="`opacity: ${ - getShiftByDic(m.shift) == '鏃�' ? 0 : 1 - };`" - >{{ getShiftByDic(m.shift) }}</span - > + style="width: 100%; height: 100%; cursor: pointer"> + <div class="work-box" :class="{ + type0: m.shift === '0', + type1: m.shift === '1', + type2: m.shift === '2', + type3: m.shift === '3', + type4: m.shift === '4', + type5: m.shift === '5', + type6: m.shift === '6', + }"> + <span style="cursor: pointer" :style="`opacity: ${getShiftByDic(m.shift) == '鏃�' ? 0 : 1 + };`">{{ getShiftByDic(m.shift) }}</span> </div> <el-dropdown-menu slot="dropdown"> - <el-dropdown-item - v-for="(n, j) in classType" - :key="'h' + j" - :command="n.dictValue" - >{{ n.dictLabel }}</el-dropdown-item - > + <el-dropdown-item v-for="(n, j) in classType" :key="'h' + j" :command="n.dictValue">{{ n.dictLabel + }}</el-dropdown-item> </el-dropdown-menu> </el-dropdown> </div> @@ -231,42 +123,26 @@ </div> </div> </div> - <div - class="clearfix year-table" - style="width: 100%" - v-show="!query.month" - > + <div class="clearfix year-table" style="width: 100%" v-show="!query.month"> <div class="fixed-left"> - <div - class="content-title" - style="padding-left: 16px; box-sizing: border-box" - > + <div class="content-title" style="padding-left: 16px; box-sizing: border-box"> 浜哄憳鍚嶇О </div> - <div - class="content-user" - :class="{ hoverType: currentUserIndex == index }" - v-for="(item, index) in yearList" - :key="'e' + index" - v-on:mouseenter="onMouseEnter(index)" - v-on:mouseleave="currentUserIndex = null" - > + <div class="content-user" :class="{ hoverType: currentUserIndex == index }" v-for="(item, index) in yearList" + :key="'e' + index" v-on:mouseenter="onMouseEnter(index)" v-on:mouseleave="currentUserIndex = null"> <div class="user-pic"> {{ item.name ? item.name.charAt(0) : "" }} </div> <div class="user-info"> - <p - style=" + <p style=" font-size: 14px; color: #3a7bfa; line-height: 24px; margin: 0; - " - > + "> {{ item.name }} </p> - <p - style=" + <p style=" color: #999999; font-size: 12px; transform: scale(0.8) translateX(-20px); @@ -274,24 +150,18 @@ width: 150px; overflow-x: show; margin: 0; - " - > + "> 鏃�:{{ item.day0 }},涓�:{{ item.day1 }},澶�:{{ item.day2 }},浼�:{{ item.day3 }},鍋�:{{ item.day4 }},宸�:{{ item.day6 }} </p> <p style="margin-top: 4px; margin: 0"> - <span - style=" + <span style=" color: #999999; font-size: 12px; display: inline-block; transform: scale(0.8) translateX(-10px); - " - >鍚堣鍑哄嫟: </span - ><span style="font-size: 16px; color: #ff4902" - >{{ item.work_time }}澶�</span - > + ">鍚堣鍑哄嫟: </span><span style="font-size: 16px; color: #ff4902">{{ item.work_time }}澶�</span> </p> </div> </div> @@ -299,36 +169,18 @@ <div class="scroll-right"> <div class="content"> <div> - <div - class="content-title content-title-right" - style="border-bottom: 0; height: 52px" - :style="`display: grid; - grid-template-columns: repeat(${monthList.length}, 1fr);`" - > - <div - class="content-title-item" - v-for="(item, index) in monthList" - :key="'b' + index" - style="height: 52px" - > + <div class="content-title content-title-right" style="border-bottom: 0; height: 52px" :style="`display: grid; + grid-template-columns: repeat(${monthList.length}, 1fr);`"> + <div class="content-title-item" v-for="(item, index) in monthList" :key="'b' + index" + style="height: 52px"> <span class="month">{{ item }}鏈�</span> </div> </div> - <div - class="content-body" - v-for="(item, index) in yearList" - :key="'c' + index" - v-on:mouseenter="onMouseEnter(index)" - v-on:mouseleave="currentUserIndex = null" - :style="`display: grid; - grid-template-columns: repeat(${monthList.length}, 1fr);`" - > - <div - class="content-body-item" - v-for="(m, i) in item.monthList" - :key="'d' + i" - :class="{ hoverType: currentUserIndex == index }" - > + <div class="content-body" v-for="(item, index) in yearList" :key="'c' + index" + v-on:mouseenter="onMouseEnter(index)" v-on:mouseleave="currentUserIndex = null" :style="`display: grid; + grid-template-columns: repeat(${monthList.length}, 1fr);`"> + <div class="content-body-item" v-for="(m, i) in item.monthList" :key="'d' + i" + :class="{ hoverType: currentUserIndex == index }"> <p style="color: rgb(153, 153, 153); font-size: 12px"> 鍚堣鍑哄嫟锛�<span style="font-size: 14px; color: #000">{{ m.totalMonthAttendance @@ -346,41 +198,23 @@ </div> </div> </div> - <el-pagination - background - @current-change="currentChange" - :page-size="pageSize" - :current-page="currentPage" - layout="total, prev, pager, next, jumper" - :total="total" - style="margin-top: 10px; text-align: right; margin-right: 30px" - > + <el-pagination background @current-change="currentChange" :page-size="pageSize" :current-page="currentPage" + layout="total, prev, pager, next, jumper" :total="total" + style="margin-top: 10px; text-align: right; margin-right: 30px"> </el-pagination> <el-dialog title="鏃堕棿閰嶇疆" :visible.sync="configTimeVisible" width="620px"> <div v-loading="configTimeVisibleLoading" style="min-height: 200px"> <div v-for="(item, index) in timeQuery"> - <div - class="form" - style="display: flex; justify-content: space-between" - > + <div class="form" style="display: flex; justify-content: space-between"> <div style="margin-bottom: 12px; width: 200px"> <span class="form_label">鐝锛�</span> <span v-if="!item.isEdit"> {{ item.type }} </span> <span class="form_input" v-if="item.isEdit"> - <el-select - v-model="item.shift" - placeholder="璇烽�夋嫨" - style="width: 70%; margin-right: 8px" - clearable - size="small" - > - <el-option - v-for="obj in timeTypeList" - :key="obj.dictValue" - :label="obj.dictLabel" - :value="obj.dictValue" - > + <el-select v-model="item.shift" placeholder="璇烽�夋嫨" style="width: 70%; margin-right: 8px" clearable + size="small"> + <el-option v-for="obj in timeTypeList" :key="obj.dictValue" :label="obj.dictLabel" + :value="obj.dictValue"> </el-option> </el-select> </span> @@ -395,67 +229,36 @@ }} </span> <span class="form_input" v-if="item.isEdit"> - <el-time-select - placeholder="璧峰鏃堕棿" - v-model="item.startTime" - size="small" - :picker-options="{ - start: '00:00', - step: '00:15', - end: '24:00', - }" - style="width: 120px" - > + <el-time-select placeholder="璧峰鏃堕棿" v-model="item.startTime" size="small" :picker-options="{ + start: '00:00', + step: '00:15', + end: '24:00', + }" style="width: 120px"> </el-time-select> - <el-time-select - style="width: 120px" - placeholder="缁撴潫鏃堕棿" - v-model="item.endTime" - size="small" + <el-time-select style="width: 120px" placeholder="缁撴潫鏃堕棿" v-model="item.endTime" size="small" :picker-options="{ start: '00:00', step: '00:15', end: '24:00', - }" - > + }"> </el-time-select> </span> </div> <span> - <i - class="el-icon-circle-check" - v-if="item.isEdit" - style="margin-left: 10px; color: #4b79f2; cursor: pointer" - @click="saveEdit(item, index)" - ></i> - <i - class="el-icon-edit" - v-if="!item.isEdit" - style="margin-left: 10px; color: #4b79f2; cursor: pointer" - @click="item.isEdit = true" - ></i> - <i - class="el-icon-delete" - v-if="timeQuery.length > 1" - style="margin-left: 10px; color: #ff4902; cursor: pointer" - @click="deleteTime(item, index)" - ></i> + <i class="el-icon-circle-check" v-if="item.isEdit" + style="margin-left: 10px; color: #4b79f2; cursor: pointer" @click="saveEdit(item, index)"></i> + <i class="el-icon-edit" v-if="!item.isEdit" style="margin-left: 10px; color: #4b79f2; cursor: pointer" + @click="item.isEdit = true"></i> + <i class="el-icon-delete" v-if="timeQuery.length > 1" + style="margin-left: 10px; color: #ff4902; cursor: pointer" @click="deleteTime(item, index)"></i> </span> </div> <el-divider></el-divider> - <div - @click="addTimeForm" - style="color: #4b79f2; cursor: pointer" - v-if="index === timeQuery.length - 1" - > + <div @click="addTimeForm" style="color: #4b79f2; cursor: pointer" v-if="index === timeQuery.length - 1"> 娣诲姞鏃堕棿閰嶇疆 </div> </div> - <div - @click="addTimeForm" - style="color: #4b79f2" - v-if="timeQuery.length === 0" - > + <div @click="addTimeForm" style="color: #4b79f2" v-if="timeQuery.length === 0"> 娣诲姞鏃堕棿閰嶇疆 </div> </div> @@ -466,13 +269,8 @@ <span style="color: red; margin-right: 4px">*</span>鍛ㄦ锛� </div> <div class="search_input" style="width: calc(100% - 90px)"> - <el-date-picker - v-model="schedulingQuery.week" - type="week" - format="yyyy 绗� WW 鍛�" - placeholder="閫夋嫨鍛ㄦ" - style="width: 100%" - > + <el-date-picker v-model="schedulingQuery.week" type="week" format="yyyy 绗� WW 鍛�" placeholder="閫夋嫨鍛ㄦ" + style="width: 100%"> </el-date-picker> </div> </div> @@ -481,20 +279,9 @@ <span style="color: red; margin-right: 4px">*</span>浜哄憳鍚嶇О锛� </div> <div class="search_input" style="width: calc(100% - 90px)"> - <el-select - v-model="schedulingQuery.userId" - placeholder="璇烽�夋嫨" - style="width: 100%" - multiple - clearable - collapse-tags - > - <el-option - v-for="item in personList" - :key="item.id" - :label="item.name" - :value="item.id" - > + <el-select v-model="schedulingQuery.userId" placeholder="璇烽�夋嫨" style="width: 100%" multiple clearable + collapse-tags> + <el-option v-for="item in personList" :key="item.id" :label="item.name" :value="item.id"> </el-option> </el-select> </div> @@ -504,26 +291,15 @@ <span style="color: red; margin-right: 4px">*</span>鐝锛� </div> <div class="search_input" style="width: calc(100% - 90px)"> - <el-select - v-model="schedulingQuery.shift" - placeholder="璇烽�夋嫨" - style="width: 100%" - > - <el-option - v-for="item in classType" - :key="item.dictValue" - :label="item.dictLabel" - :value="item.dictValue" - > + <el-select v-model="schedulingQuery.shift" placeholder="璇烽�夋嫨" style="width: 100%"> + <el-option v-for="item in classType" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue"> </el-option> </el-select> </div> </div> <span slot="footer" class="dialog-footer"> <el-button @click="schedulingVisible = false">鍙� 娑�</el-button> - <el-button type="primary" @click="confirmScheduling" :loading="loading" - >纭� 瀹�</el-button - > + <el-button type="primary" @click="confirmScheduling" :loading="loading">纭� 瀹�</el-button> </span> </el-dialog> </div> @@ -545,6 +321,7 @@ selectUserCondition, } from "@/api/performance/class"; export default { + name: 'Class', data() { return { query: { @@ -727,8 +504,8 @@ (i == 0 && strArr[i] == 0 ? "" : i > 0 && strArr[i] == 0 && strArr[i - 1] == 0 - ? "" - : changeNum[strArr[i]] + (strArr[i] == 0 ? unit[0] : unit[i])) + + ? "" + : changeNum[strArr[i]] + (strArr[i] == 0 ? unit[0] : unit[i])) + newNum; } return newNum; @@ -1060,6 +837,7 @@ .class-page { padding: 10px; } + .form_title { height: 36px; display: flex; @@ -1067,6 +845,7 @@ justify-content: space-between; font-weight: 800; } + .search { height: 50px; display: flex; @@ -1085,16 +864,19 @@ font-size: 14px; text-align: right; } + .search_input { display: flex; align-items: center; } + .btns { position: absolute; right: 16px; top: 50%; transform: translate(0, -50%); } + .center { width: 100%; height: calc(100vh - 220px); @@ -1102,43 +884,56 @@ overflow-y: auto; display: flex; } ->>> .scroll-pagination { + +>>>.scroll-pagination { overflow-y: scroll; scrollbar-width: none; } ->>> .scroll-pagination::-webkit-scrollbar { + +>>>.scroll-pagination::-webkit-scrollbar { display: none; } + .fixed-left { float: left; - width: 220px; /* 宸﹁竟鍖哄煙瀹藉害 */ + width: 220px; + /* 宸﹁竟鍖哄煙瀹藉害 */ background-color: #fff; - box-shadow: 2px -2px 5px rgba(51, 51, 51, 0.12); /* 宸﹁竟闃村奖 */ + box-shadow: 2px -2px 5px rgba(51, 51, 51, 0.12); + /* 宸﹁竟闃村奖 */ } + .clearfix::after { content: ""; display: table; clear: both; } + .scroll-right { - width: calc(100% - 220px); /* 鍑忓幓宸﹁竟鍖哄煙瀹藉害 */ - min-height: calc(100% - 10px); /* 瑙嗗彛楂樺害 */ + width: calc(100% - 220px); + /* 鍑忓幓宸﹁竟鍖哄煙瀹藉害 */ + min-height: calc(100% - 10px); + /* 瑙嗗彛楂樺害 */ margin-left: 220px; overflow-x: scroll; } .content { - min-height: calc(100% - 10px); /* 瑙嗗彛楂樺害 */ + min-height: calc(100% - 10px); + /* 瑙嗗彛楂樺害 */ } + .content-title { height: 58px; line-height: 58px; border-bottom: 1px solid #eeeeee; } + .content-title-right { display: flex; align-items: center; } + .content-title-item { height: 100%; width: 50px; @@ -1151,6 +946,7 @@ flex-direction: column; position: relative; } + .content-title-item .month { font-size: 12px; color: #3a7bfa; @@ -1161,19 +957,23 @@ text-align: center; line-height: 22px; } + .content-title-item .day { font-size: 14px; color: #333333; margin-right: 4px; } + .content-title-item .week { font-size: 12px; color: #999999; } + .content-body { display: flex; align-items: center; } + .content-body-item { height: 70px; width: 50px; @@ -1184,6 +984,7 @@ border-right: 1px solid #eeeeee; border-bottom: 1px solid #eeeeee; } + .work-box { width: 100%; height: 100%; @@ -1195,61 +996,77 @@ color: #999; font-size: 14px; } + .work-box.type0 { background: rgba(58, 123, 250, 0.15); color: #3a7bfa !important; } + .work-box.type0 span { color: #3a7bfa !important; } + .work-box.type1 { background: #e3dcfe; color: #635998 !important; } + .work-box.type1 span { color: #635998 !important; } + .work-box.type2 { background: #fae2ca; color: #bc8d5e !important; } + .work-box.type2 span { color: #bc8d5e !important; } + .work-box.type3 { background: #e1f3d8; color: #67c23a !important; } + .work-box.type3 span { color: #67c23a !important; } + .work-box.type4 { background: #fde2e2; color: #f56c6c !important; } + .work-box.type4 span { color: #f56c6c !important; } + .work-box.type5 { background: #ff46c145; color: #ff46c0 !important; } + .work-box.type5 span { color: #ff46c0 !important; } + .work-box.type6 { background: #00036418; color: #000464 !important; } + .work-box.type6 span { color: #000464 !important; } + .work-box-left { display: flex; justify-content: center; flex-direction: column; line-height: 24px; } + .content-user { width: 100%; height: 70px; @@ -1258,6 +1075,7 @@ display: flex; align-items: center; } + .user-pic { width: 50px; height: 50px; @@ -1269,19 +1087,24 @@ line-height: 50px; margin-left: 10px; } + .user-info { flex: 1; margin-left: 10px; } + .hoverType { background: rgba(58, 123, 250, 0.03); } + .year-table { width: 100%; } + .year-table .scroll-right { flex: 1; } + .year-table .month { font-size: 14px; color: #3a7bfa; @@ -1292,9 +1115,11 @@ text-align: center; line-height: 30px; } + .year-table .content-title-item { width: 100%; } + .year-table .content-body-item { width: 100%; height: 70px; diff --git a/src/views/performance/manHour/index.vue b/src/views/performance/manHour/index.vue index 9358001..1d8e620 100644 --- a/src/views/performance/manHour/index.vue +++ b/src/views/performance/manHour/index.vue @@ -1,27 +1,14 @@ <template> <div class="work-time-management"> <div style="text-align: left"> - <el-radio-group - v-model="currentComponent" - size="small" - style="margin-top: 16px; margin-left: 16px" - > - <el-radio-button - v-if="checkPermi(['performance:manHour:workTimeStatistics'])" - label="workTimeStatistics" - > + <el-radio-group v-model="currentComponent" size="small" style="margin-top: 16px; margin-left: 16px"> + <el-radio-button v-if="checkPermi(['performance:manHour:workTimeStatistics'])" label="workTimeStatistics"> 宸ユ椂姹囨�� </el-radio-button> - <el-radio-button - v-if="checkPermi(['performance:manHour:workTimeManagement'])" - label="workTimeManagement" - > + <el-radio-button v-if="checkPermi(['performance:manHour:workTimeManagement'])" label="workTimeManagement"> 鏃ュ伐鏃剁鐞� </el-radio-button> - <el-radio-button - v-if="checkPermi(['performance:manHour:workTimeConfig'])" - label="workTimeConfig" - > + <el-radio-button v-if="checkPermi(['performance:manHour:workTimeConfig'])" label="workTimeConfig"> 杈呭姪宸ユ椂閰嶇疆 </el-radio-button> </el-radio-group> @@ -35,12 +22,13 @@ import workTimeManagement from "./workTimeManagement.vue"; import workTimeConfig from "./workTimeConfig.vue"; export default { + name: "ManHour", components: { workTimeStatistics, workTimeManagement, workTimeConfig, }, - created() {}, + created() { }, data() { return { currentComponent: "workTimeStatistics", diff --git a/src/views/standard/model/index.vue b/src/views/standard/model/index.vue index 1fa2c57..75231b3 100644 --- a/src/views/standard/model/index.vue +++ b/src/views/standard/model/index.vue @@ -63,6 +63,7 @@ getEditTemplatePreparation, } from "@/api/standard/model"; export default { + name: 'Model', components: { Excel, limsTable, diff --git a/src/views/standard/standardLibrary/index.vue b/src/views/standard/standardLibrary/index.vue index ff3c615..21eeeb8 100644 --- a/src/views/standard/standardLibrary/index.vue +++ b/src/views/standard/standardLibrary/index.vue @@ -77,21 +77,21 @@ overflow: hidden; } ->>> .el-table__body-wrapper { +>>>.el-table__body-wrapper { height: calc(100% - 46px) !important; } ->>> .header-class { +>>>.header-class { height: 40px !important; } ->>> .header-class th.el-table__cell > .cell { +>>>.header-class th.el-table__cell>.cell { line-height: 20px !important; padding-top: 0 !important; padding-bottom: 0 !important; } ->>> .el-table__row { +>>>.el-table__row { height: 35px !important; } @@ -125,11 +125,13 @@ right: 70px; } ->>> .is-disabled .el-textarea__inner { +>>>.is-disabled .el-textarea__inner { background: rgba(0, 0, 0, 0.05) !important; } ->>> .el-table__body-wrapper::-webkit-scrollbar { - height: 14px; /* 璁剧疆婊氬姩鏉″搴� */ + +>>>.el-table__body-wrapper::-webkit-scrollbar { + height: 14px; + /* 璁剧疆婊氬姩鏉″搴� */ } </style> <style> @@ -139,10 +141,7 @@ border-radius: 2px; } -.standard - .el-tree--highlight-current - .el-tree-node.is-current - > .el-tree-node__content { +.standard .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content { color: #3a7bfa; } @@ -193,104 +192,49 @@ <div class="left"> <el-row> <el-col :span="20"> - <el-input - v-model="search" - clearable - placeholder="杈撳叆鍏抽敭瀛楄繘琛屾悳绱�" - size="small" - style="margin-bottom: 5px" - suffix-icon="el-icon-search" - @blur="searchFilter" - @clear="searchFilter" - ></el-input> + <el-input v-model="search" clearable placeholder="杈撳叆鍏抽敭瀛楄繘琛屾悳绱�" size="small" style="margin-bottom: 5px" + suffix-icon="el-icon-search" @blur="searchFilter" @clear="searchFilter"></el-input> </el-col> - <el-col - v-if="checkPermi(['standard:standardLibrary:add'])" - :span="4" - style="text-align: center; line-height: 30px" - > - <el-button - circle - icon="el-icon-plus" - size="mini" - type="primary" - @click="addDia = true" - ></el-button> + <el-col v-if="checkPermi(['standard:standardLibrary:add'])" :span="4" + style="text-align: center; line-height: 30px"> + <el-button circle icon="el-icon-plus" size="mini" type="primary" @click="addDia = true"></el-button> </el-col> </el-row> - <el-tree - ref="tree" - v-loading="treeLoad" - :allow-drop="allowDrop" - :data="list" - :default-expanded-keys="expandedKeys" - :draggable="true" - :filter-node-method="filterNode" - :props="{ children: 'children', label: 'label' }" - highlight-current - node-key="label" - style=" + <el-tree ref="tree" v-loading="treeLoad" :allow-drop="allowDrop" :data="list" + :default-expanded-keys="expandedKeys" :draggable="true" :filter-node-method="filterNode" + :props="{ children: 'children', label: 'label' }" highlight-current node-key="label" style=" height: calc(100% - 30px); overflow-y: scroll; scrollbar-width: none; - " - @node-click="handleNodeClick" - @node-expand="nodeOpen" - @node-collapse="nodeClose" - @node-drop="handleDrop" - > + " @node-click="handleNodeClick" @node-expand="nodeOpen" @node-collapse="nodeClose" @node-drop="handleDrop"> <div slot-scope="{ node, data }" class="custom-tree-node"> <el-row style="width: 100%"> - <el-col - :class="{ sort: node.level > 3 }" - :span="19" - :title="data.label" - style="text-align: left" - > + <el-col :class="{ sort: node.level > 3 }" :span="19" :title="data.label" style="text-align: left"> <span> - <i - :class="`node_i ${ - data.children != undefined - ? data.code === '[1]' - ? 'el-icon-folder-opened' - : 'el-icon-folder' - : 'el-icon-tickets' - }`" - ></i> + <i :class="`node_i ${data.children != undefined + ? data.code === '[1]' + ? 'el-icon-folder-opened' + : 'el-icon-folder' + : 'el-icon-tickets' + }`"></i> {{ data.label }} </span> </el-col> - <el-col - v-if=" - checkPermi(['standard:standardLibrary:delStandardTree']) && - (node.data.children === null || - node.data.children === undefined) - " - :span="2" - style="text-align: right" - > - <el-button - size="mini" - type="text" - @click="editTreeName(node.data)" - > + <el-col v-if=" + checkPermi(['standard:standardLibrary:delStandardTree']) && + (node.data.children === null || + node.data.children === undefined) + " :span="2" style="text-align: right"> + <el-button size="mini" type="text" @click="editTreeName(node.data)"> <i class="el-icon-edit"></i> </el-button> </el-col> - <el-col - v-if=" - checkPermi(['standard:standardLibrary:delStandardTree']) && - (node.data.children === null || - node.data.children === undefined) - " - :span="2" - style="text-align: right" - > - <el-button - size="mini" - type="text" - @click.stop="remove(node, data)" - > + <el-col v-if=" + checkPermi(['standard:standardLibrary:delStandardTree']) && + (node.data.children === null || + node.data.children === undefined) + " :span="2" style="text-align: right"> + <el-button size="mini" type="text" @click.stop="remove(node, data)"> <i class="el-icon-delete"></i> </el-button> </el-col> @@ -304,304 +248,128 @@ selectTree }}</el-col> <el-col :span="4"> - <el-button - v-if="isShowCopy" - size="small" - style="position: absolute; right: 20px; top: 1px" - type="primary" - @click="openCopyDia" - >鎵归噺澶嶅埗</el-button - > + <el-button v-if="isShowCopy" size="small" style="position: absolute; right: 20px; top: 1px" type="primary" + @click="openCopyDia">鎵归噺澶嶅埗</el-button> </el-col> </el-row> <el-row v-loading="tableLoad" class="standard_table"> - <el-table - ref="standard" - :data="standardList" - class="el-table" - header-row-class-name="header-class" - height="220" - highlight-current-row - style="width: 100%; height: 220px !important" - tooltip-effect="dark" - @row-click="rowClick" - > - <el-table-column - label="鏍囧噯缂栧彿" - prop="code" - show-overflow-tooltip - width="200" - > + <el-table ref="standard" :data="standardList" class="el-table" header-row-class-name="header-class" height="220" + highlight-current-row style="width: 100%; height: 220px !important" tooltip-effect="dark" + @row-click="rowClick"> + <el-table-column label="鏍囧噯缂栧彿" prop="code" show-overflow-tooltip width="200"> <template slot-scope="scope"> <span style="color: red; font-size: 14px">{{ scope.row["code"] }}</span> </template> </el-table-column> - <el-table-column - label="鏍囧噯鍚嶇О" - prop="name" - show-overflow-tooltip - ></el-table-column> - <el-table-column - label="澶囨敞" - prop="remark" - show-overflow-tooltip - ></el-table-column> + <el-table-column label="鏍囧噯鍚嶇О" prop="name" show-overflow-tooltip></el-table-column> + <el-table-column label="澶囨敞" prop="remark" show-overflow-tooltip></el-table-column> </el-table> </el-row> <el-row v-loading="tableLoad2" class="product_table"> - <el-table - id="templateParamTable" - ref="productTable" - v-loading="productTableLoading" - :data="productList" - :fit="true" - :row-class-name="tableRowClassName" - border - class="productTable" - header-row-class-name="header-class" - height="100%" - row-key="id" - stripe - style="width: 100%" - tooltip-effect="dark" - @select="upProductSelect" - @selection-change="handleSelectionChange" - @select-all="handleAll" - > + <el-table id="templateParamTable" ref="productTable" v-loading="productTableLoading" :data="productList" + :fit="true" :row-class-name="tableRowClassName" border class="productTable" + header-row-class-name="header-class" height="100%" row-key="id" stripe style="width: 100%" + tooltip-effect="dark" @select="upProductSelect" @selection-change="handleSelectionChange" + @select-all="handleAll"> <el-table-column type="selection" width="50"> </el-table-column> - <el-table-column - label="浜у搧" - min-width="100" - prop="sample" - show-overflow-tooltip - ></el-table-column> - <el-table-column - label="鍨嬪彿" - min-width="100" - prop="model" - show-overflow-tooltip - ></el-table-column> - <el-table-column - label="妫�楠岄」鍒嗙被" - min-width="140" - prop="inspectionItemClass" - show-overflow-tooltip - ></el-table-column> - <el-table-column - label="妫�楠岄」" - min-width="140" - prop="inspectionItem" - show-overflow-tooltip - ></el-table-column> - <el-table-column - label="妫�楠岄」瀛愰」" - min-width="140" - prop="inspectionItemSubclass" - show-overflow-tooltip - ></el-table-column> - <el-table-column - label="瀛愬疄楠屽" - prop="sonLaboratory" - show-overflow-tooltip - width="130" - ></el-table-column> + <el-table-column label="浜у搧" min-width="100" prop="sample" show-overflow-tooltip></el-table-column> + <el-table-column label="鍨嬪彿" min-width="100" prop="model" show-overflow-tooltip></el-table-column> + <el-table-column label="妫�楠岄」鍒嗙被" min-width="140" prop="inspectionItemClass" + show-overflow-tooltip></el-table-column> + <el-table-column label="妫�楠岄」" min-width="140" prop="inspectionItem" show-overflow-tooltip></el-table-column> + <el-table-column label="妫�楠岄」瀛愰」" min-width="140" prop="inspectionItemSubclass" + show-overflow-tooltip></el-table-column> + <el-table-column label="瀛愬疄楠屽" prop="sonLaboratory" show-overflow-tooltip width="130"></el-table-column> <el-table-column label="瑕佹眰鍊�" min-width="200px" prop="ask"> <template slot-scope="scope"> - <el-input - v-if=" - checkPermi(['standard:standardLibrary:upStandardProduct']) - " - v-model="scope.row.ask" - :autosize="{ minRows: 1, maxRows: 3 }" - clearable - placeholder="瑕佹眰鍊�" - size="small" - type="textarea" - @change="(value) => upStandardProductList(value, scope.row.id)" - ></el-input> + <el-input v-if=" + checkPermi(['standard:standardLibrary:upStandardProduct']) + " v-model="scope.row.ask" :autosize="{ minRows: 1, maxRows: 3 }" clearable placeholder="瑕佹眰鍊�" + size="small" type="textarea" @change="(value) => upStandardProductList(value, scope.row.id)"></el-input> <span v-else>{{ scope.row.ask }}</span> </template> </el-table-column> <el-table-column label="瑕佹眰鎻忚堪" min-width="220px" prop="tell"> <template slot-scope="scope"> - <el-input - v-if=" - checkPermi(['standard:standardLibrary:upStandardProduct']) - " - v-model="scope.row.tell" - :autosize="{ minRows: 1, maxRows: 3 }" - clearable - placeholder="瑕佹眰鎻忚堪" - size="small" - type="textarea" - @change=" - (value) => upStandardProductListOfTell(value, scope.row.id) - " - ></el-input> + <el-input v-if=" + checkPermi(['standard:standardLibrary:upStandardProduct']) + " v-model="scope.row.tell" :autosize="{ minRows: 1, maxRows: 3 }" clearable placeholder="瑕佹眰鎻忚堪" + size="small" type="textarea" @change="(value) => upStandardProductListOfTell(value, scope.row.id) + "></el-input> <span v-else>{{ scope.row.ask }}</span> </template> </el-table-column> <el-table-column label="璇曢獙鏂规硶" prop="method" width="200"> <template slot-scope="scope"> - <el-select - v-if=" - checkPermi(['standard:standardLibrary:upStandardProduct']) - " - v-model="scope.row.methodS" - clearable - placeholder="璇曢獙鏂规硶" - size="small" - @change=" - (value) => upStandardProductListOfMethodS(value, scope.row.id) - " - > - <el-option - v-for="(a, i) in scope.row.method && - JSON.parse(scope.row.method)" - :key="i" - :label="a" - :value="a" - ></el-option> + <el-select v-if=" + checkPermi(['standard:standardLibrary:upStandardProduct']) + " v-model="scope.row.methodS" clearable placeholder="璇曢獙鏂规硶" size="small" @change="(value) => upStandardProductListOfMethodS(value, scope.row.id) + "> + <el-option v-for="(a, i) in scope.row.method && + JSON.parse(scope.row.method)" :key="i" :label="a" :value="a"></el-option> </el-select> <span v-else>{{ scope.row.methodS }}</span> </template> </el-table-column> - <el-table-column - label="鏉′欢" - min-width="140" - prop="radius" - show-overflow-tooltip - > + <el-table-column label="鏉′欢" min-width="140" prop="radius" show-overflow-tooltip> <template slot-scope="scope"> - <el-select - v-if=" - checkPermi(['standard:standardLibrary:upStandardProduct']) - " - v-model="scope.row.radius" - clearable - placeholder="鏉′欢" - size="small" - @change=" - (value) => upStandardProductListOfRadius(value, scope.row.id) - " - > - <el-option - v-for="(a, i) in scope.row.radiusList && - JSON.parse(scope.row.radiusList)" - :key="i" - :label="a" - :value="a" - ></el-option> + <el-select v-if=" + checkPermi(['standard:standardLibrary:upStandardProduct']) + " v-model="scope.row.radius" clearable placeholder="鏉′欢" size="small" @change="(value) => upStandardProductListOfRadius(value, scope.row.id) + "> + <el-option v-for="(a, i) in scope.row.radiusList && + JSON.parse(scope.row.radiusList)" :key="i" :label="a" :value="a"></el-option> </el-select> <span v-else>{{ scope.row.radius }}</span> </template> </el-table-column> - <el-table-column - label="璁¢噺鍗曚綅" - prop="unit" - show-overflow-tooltip - width="100" - ></el-table-column> + <el-table-column label="璁¢噺鍗曚綅" prop="unit" show-overflow-tooltip width="100"></el-table-column> <el-table-column label="鍗曚环(鍏�)" prop="price" width="120"> <template slot-scope="scope"> - <el-input - v-if=" - checkPermi(['standard:standardLibrary:upStandardProduct']) - " - v-model="scope.row.price" - placeholder="鍗曚环(鍏�)" - size="small" - @change=" - (value) => upStandardProductListOfPrice(value, scope.row.id) - " - > + <el-input v-if=" + checkPermi(['standard:standardLibrary:upStandardProduct']) + " v-model="scope.row.price" placeholder="鍗曚环(鍏�)" size="small" @change="(value) => upStandardProductListOfPrice(value, scope.row.id) + "> </el-input> <span v-else>{{ scope.row.price }}</span> </template> </el-table-column> <el-table-column label="宸ユ椂绯绘暟" prop="manHour" width="120"> <template slot-scope="scope"> - <el-input - v-if=" - checkPermi(['standard:standardLibrary:upStandardProduct']) - " - v-model="scope.row.manHour" - placeholder="鍗曚环(鍏�)" - size="small" - @change=" - (value) => upStandardProductListOfManHour(value, scope.row.id) - " - > + <el-input v-if=" + checkPermi(['standard:standardLibrary:upStandardProduct']) + " v-model="scope.row.manHour" placeholder="鍗曚环(鍏�)" size="small" @change="(value) => upStandardProductListOfManHour(value, scope.row.id) + "> </el-input> <span v-else>{{ scope.row.manHour }}</span> </template> </el-table-column> - <el-table-column - label="宸ユ椂鍒嗙粍" - prop="manHourGroup" - show-overflow-tooltip - width="100" - ></el-table-column> + <el-table-column label="宸ユ椂鍒嗙粍" prop="manHourGroup" show-overflow-tooltip width="100"></el-table-column> <el-table-column label="妯℃澘" prop="templateId" width="200"> <template slot-scope="scope"> - <el-select - v-model="scope.row.templateId" - :disabled=" - !checkPermi(['standard:standardLibrary:upStandardProduct']) - " - filterable - size="small" - @change=" - (value) => + <el-select v-model="scope.row.templateId" :disabled="!checkPermi(['standard:standardLibrary:upStandardProduct']) + " filterable size="small" @change="(value) => upStandardProductListOfTemplate(value, scope.row.id) - " - > - <el-option - v-for="(a, ai) in templateList" - :key="ai" - :label="a.name" - :value="a.id" - ></el-option> + "> + <el-option v-for="(a, ai) in templateList" :key="ai" :label="a.name" :value="a.id"></el-option> </el-select> </template> </el-table-column> - <el-table-column - label="鍖洪棿" - prop="section" - show-overflow-tooltip - width="120" - ></el-table-column> + <el-table-column label="鍖洪棿" prop="section" show-overflow-tooltip width="120"></el-table-column> <el-table-column label="鎿嶄綔" prop="section" width="160"> <template slot-scope="scope"> - <el-button - type="text" - @click="sectionUp(scope.row)" - :disabled=" - !checkPermi(['standard:standardLibrary:upStandardProduct']) - " - >鍖洪棿璁剧疆</el-button - > - <el-button - type="text" - :disabled=" - !checkPermi(['standard:standardLibrary:upStandardProduct']) - " - @click="bindSupplierDensitySecond(scope.row)" - >缁戝畾鍘傚</el-button - > + <el-button type="text" @click="sectionUp(scope.row)" :disabled="!checkPermi(['standard:standardLibrary:upStandardProduct']) + ">鍖洪棿璁剧疆</el-button> + <el-button type="text" :disabled="!checkPermi(['standard:standardLibrary:upStandardProduct']) + " @click="bindSupplierDensitySecond(scope.row)">缁戝畾鍘傚</el-button> </template> </el-table-column> </el-table> - <el-pagination - :current-page="currentPage" - :page-size="300" - :total="total" - layout="total, prev, pager, next, jumper" - style="position: absolute; right: 16px; bottom: 1px" - @current-change="handleCurrentChange" - > + <el-pagination :current-page="currentPage" :page-size="300" :total="total" + layout="total, prev, pager, next, jumper" style="position: absolute; right: 16px; bottom: 1px" + @current-change="handleCurrentChange"> </el-pagination> </el-row> </div> @@ -613,21 +381,14 @@ <span class="required-span">* </span>鍨嬪彿锛� </el-col> <el-col :offset="1" :span="16"> - <el-input - v-model="addOb.model" - clearable - placeholder="璇疯緭鍏ュ瀷鍙�" - size="small" - @keyup.enter.native="addStandardTree" - ></el-input> + <el-input v-model="addOb.model" clearable placeholder="璇疯緭鍏ュ瀷鍙�" size="small" + @keyup.enter.native="addStandardTree"></el-input> </el-col> </el-row> </div> <span slot="footer" class="dialog-footer"> <el-button @click="addDia = false">鍙� 娑�</el-button> - <el-button :loading="addLoad" type="primary" @click="addStandardTree" - >纭� 瀹�</el-button - > + <el-button :loading="addLoad" type="primary" @click="addStandardTree">纭� 瀹�</el-button> </span> </el-dialog> <el-dialog :visible.sync="updateDia" title="鍒嗙被淇敼" width="400px"> @@ -637,96 +398,50 @@ <span class="required-span">* </span>鍨嬪彿锛� </el-col> <el-col :offset="1" :span="16"> - <el-input - v-model="addOb.model" - clearable - placeholder="璇疯緭鍏ュ瀷鍙�" - size="small" - @keyup.enter.native="updateStandardTree" - ></el-input> + <el-input v-model="addOb.model" clearable placeholder="璇疯緭鍏ュ瀷鍙�" size="small" + @keyup.enter.native="updateStandardTree"></el-input> </el-col> </el-row> </div> <span slot="footer" class="dialog-footer"> <el-button @click="updateDia = false">鍙� 娑�</el-button> - <el-button - :loading="updateLoad" - type="primary" - @click="updateStandardTree" - >纭� 瀹�</el-button - > + <el-button :loading="updateLoad" type="primary" @click="updateStandardTree">纭� 瀹�</el-button> </span> </el-dialog> - <el-dialog - :close-on-click-modal="false" - :visible.sync="sectionUpDia" - title="鍖洪棿璁剧疆" - width="80%" - > + <el-dialog :close-on-click-modal="false" :visible.sync="sectionUpDia" title="鍖洪棿璁剧疆" width="80%"> <div class="body" style="padding: 5px 0"> <el-table :data="sectionList" border height="350px" style="width: 100%"> <el-table-column align="center" label="搴忓彿" type="index" width="70"> </el-table-column> <el-table-column align="center" label="鍖洪棿"> <template slot-scope="scope"> - <el-input - v-model="scope.row.thing" - clearable - placeholder="鍖洪棿" - size="small" - ></el-input> + <el-input v-model="scope.row.thing" clearable placeholder="鍖洪棿" size="small"></el-input> </template> </el-table-column> <el-table-column align="center" label="鑺暟"> <template slot-scope="scope"> - <el-input - v-model="scope.row.cores" - clearable - placeholder="鑺暟" - size="small" - ></el-input> + <el-input v-model="scope.row.cores" clearable placeholder="鑺暟" size="small"></el-input> </template> </el-table-column> <el-table-column align="center" label="瑕佹眰鍊�"> <template slot-scope="scope"> - <el-input - v-model="scope.row.ask" - clearable - placeholder="瑕佹眰鍊�" - size="small" - ></el-input> + <el-input v-model="scope.row.ask" clearable placeholder="瑕佹眰鍊�" size="small"></el-input> </template> </el-table-column> <el-table-column align="center" label="瑕佹眰鎻忚堪"> <template slot-scope="scope"> - <el-input - v-model="scope.row.tell" - :autosize="{ minRows: 1, maxRows: 2 }" - clearable - placeholder="瑕佹眰鎻忚堪" - size="small" - type="textarea" - ></el-input> + <el-input v-model="scope.row.tell" :autosize="{ minRows: 1, maxRows: 2 }" clearable placeholder="瑕佹眰鎻忚堪" + size="small" type="textarea"></el-input> </template> </el-table-column> <el-table-column align="center" label="瀵间綋鏉愯川"> <template slot-scope="scope"> - <el-input - v-model="scope.row.conductorMaterial" - clearable - placeholder="瀵间綋鏉愯川" - size="small" - ></el-input> + <el-input v-model="scope.row.conductorMaterial" clearable placeholder="瀵间綋鏉愯川" size="small"></el-input> </template> </el-table-column> <el-table-column align="center" label="瀵间綋绫诲瀷"> <template slot-scope="scope"> - <el-input - v-model="scope.row.conductorType" - clearable - placeholder="瀵间綋绫诲瀷" - size="small" - ></el-input> + <el-input v-model="scope.row.conductorType" clearable placeholder="瀵间綋绫诲瀷" size="small"></el-input> </template> </el-table-column> <!-- <el-table-column align="center" label="鍗曚环" width="120">--> @@ -741,42 +456,24 @@ <!-- </el-table-column>--> <el-table-column align="center" label="鎿嶄綔" width="70"> <template slot-scope="scope"> - <el-button - circle - icon="el-icon-minus" - size="mini" - type="danger" - @click="sectionList.splice(scope.$index, 1)" - ></el-button> + <el-button circle icon="el-icon-minus" size="mini" type="danger" + @click="sectionList.splice(scope.$index, 1)"></el-button> </template> </el-table-column> </el-table> </div> <span slot="footer" class="dialog-footer"> <el-button @click="sectionUpDia = false">鍙� 娑�</el-button> - <el-button :loading="sectionLoad" type="primary" @click="sectionLoadAdd" - >淇� 瀛�</el-button - > - <el-button - icon="el-icon-plus" - type="primary" - @click="sectionList.push({ thing: '' })" - ></el-button> + <el-button :loading="sectionLoad" type="primary" @click="sectionLoadAdd">淇� 瀛�</el-button> + <el-button icon="el-icon-plus" type="primary" @click="sectionList.push({ thing: '' })"></el-button> </span> </el-dialog> - <bindSupplierDensityDialogAsk - v-if="bindSupplierDensityDialog" - :bindSupplierDensityDialog="bindSupplierDensityDialog" - :currentRow="currentSupplierDensityRow" - @closeBindPartDialog="closeBindSupplierDensityDialog" - ></bindSupplierDensityDialogAsk> - <BatchCopy - v-if="batchCopyDia" - ref="BatchCopy" - :selectTree1="selectTree" - :standardId="standardId" - @refreshList="refreshList" - ></BatchCopy> + <bindSupplierDensityDialogAsk v-if="bindSupplierDensityDialog" + :bindSupplierDensityDialog="bindSupplierDensityDialog" :currentRow="currentSupplierDensityRow" + @closeBindPartDialog="closeBindSupplierDensityDialog"> + </bindSupplierDensityDialogAsk> + <BatchCopy v-if="batchCopyDia" ref="BatchCopy" :selectTree1="selectTree" :standardId="standardId" + @refreshList="refreshList"></BatchCopy> </div> </template> @@ -809,6 +506,7 @@ import bindSupplierDensityDialogAsk from "./components/bindSupplierDensityDialogAsk.vue"; import BatchCopy from "./components/BatchCopy.vue"; export default { + name: 'StandardLibrary', components: { BatchCopy, bindSupplierDensityDialogAsk, @@ -1059,7 +757,7 @@ this.productList = []; }); }) - .catch((e) => {}); + .catch((e) => { }); }, deleteStandard(arr, label) { arr.forEach((item, index) => { @@ -1358,7 +1056,7 @@ this.selectsStandardMethodByFLSSM(); }); }) - .catch(() => {}); + .catch(() => { }); }, handleSelectionChange(val) { this.selects = []; @@ -1392,7 +1090,7 @@ this.selectsStandardMethodByFLSSM(); }); }) - .catch(() => {}); + .catch(() => { }); }, addStandardProductDo() { let selects = this.$refs.ValueTable.multipleSelection; -- Gitblit v1.9.3