From bc300956b9dc0e66eb1f4fe224e8ee30547927d0 Mon Sep 17 00:00:00 2001 From: gaoluyang <2820782392@qq.com> Date: 星期二, 08 四月 2025 15:32:38 +0800 Subject: [PATCH] 管理岗权限添加原始记录查看权限 --- src/views/business/materialOrder/index.vue | 256 ++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 203 insertions(+), 53 deletions(-) diff --git a/src/views/business/materialOrder/index.vue b/src/views/business/materialOrder/index.vue index 51b698e..9e8df0c 100644 --- a/src/views/business/materialOrder/index.vue +++ b/src/views/business/materialOrder/index.vue @@ -5,51 +5,51 @@ <el-form :model="entity" ref="entity" size="small" :inline="true"> <el-form-item label="鎵瑰彿" prop="updateBatchNo"> <el-input v-model="entity.updateBatchNo" clearable placeholder="璇疯緭鍏�" size="small" - @keyup.enter.native="refreshTable"> + @keyup.enter.native="goSearch"> </el-input> </el-form-item> - <el-form-item label="濮旀墭缂栧彿" prop="entrustCode"> + <el-form-item label="濮旀墭缂栧彿" prop="entrustCode" v-if="tabIndex !== 0"> <el-input v-model="entity.entrustCode" clearable placeholder="璇疯緭鍏�" size="small" - @keyup.enter.native="refreshTable"> + @keyup.enter.native="goSearch"> </el-input> </el-form-item> <el-form-item label="闆朵欢鍙�" prop="partNo"> <el-input v-model="entity.partNo" clearable placeholder="璇疯緭鍏�" size="small" - @keyup.enter.native="refreshTable"> + @keyup.enter.native="goSearch"> </el-input> </el-form-item> <el-form-item label="闆朵欢鎻忚堪" prop="partDesc"> <el-input v-model="entity.partDesc" clearable placeholder="璇疯緭鍏�" size="small" - @keyup.enter.native="refreshTable"> + @keyup.enter.native="goSearch"> </el-input> </el-form-item> <el-form-item> <el-button v-if="tabIndex === 2 || tabIndex === 3 || tabIndex === 4" :icon="!more ? 'el-icon-arrow-down' : 'el-icon-arrow-up'" style="color: #3A7BFA;" type="text" @click="more = !more">{{ !more ? '鏇村' : '鏀惰捣' }}</el-button> - <el-button size="mini" type="primary" @click="refreshTable()">鏌ヨ</el-button> + <el-button size="mini" type="primary" @click="goSearch">鏌ヨ</el-button> <el-button size="mini" @click="refresh()">閲嶇疆</el-button> </el-form-item> <el-form-item label="渚涘簲鍟嗗悕绉�" prop="supplierName" v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more"> <el-input v-model="entity.supplierName" clearable placeholder="璇疯緭鍏�" size="small" - @keyup.enter.native="refreshTable"> + @keyup.enter.native="goSearch"> </el-input> </el-form-item> <el-form-item label="鏍峰搧鍨嬪彿" prop="sampleModel" v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more"> <el-input v-model="entity.sampleModel" clearable placeholder="璇疯緭鍏�" size="small" - @keyup.enter.native="refreshTable"> + @keyup.enter.native="goSearch"> </el-input> </el-form-item> <el-form-item label="妫�楠岀姸鎬�" prop="inspectStatus" v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more"> - <el-select v-model="entity.inspectStatus" clearable size="small" @change="refreshTable()"> + <el-select v-model="entity.inspectStatus" clearable size="small" @change="goSearch"> <el-option v-for="(a, i) in inspectStatusList" :key="i" :label="a.label" :value="a.value"></el-option> </el-select> </el-form-item> <el-form-item label="涓嬪彂鏃堕棿" prop="date" v-if="(tabIndex === 2 || tabIndex === 3 || tabIndex === 4) && more"> - <el-date-picker v-model="entity.date" end-placeholder="缁撴潫鏃ユ湡" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" + <el-date-picker v-model="entity.date" end-placeholder="缁撴潫鏃ユ湡" format="yyyy-MM-dd" placeholder="閫夋嫨鏃ユ湡" @change="goSearch" range-separator="鑷�" size="small" start-placeholder="寮�濮嬫棩鏈�" type="daterange" value-format="yyyy-MM-dd"> </el-date-picker> </el-form-item> @@ -59,10 +59,10 @@ <div class="table-tab"> <div> <ul class="tab"> - <li :class="{ active: tabIndex === 0 }" @click="handleTab(0)">寰呬笅鍗�</li> - <li :class="{ active: tabIndex === 1 }" @click="handleTab(1)">妫�楠屼腑</li> - <li :class="{ active: tabIndex === 2 }" @click="handleTab(2)">宸叉楠�</li> - <li :class="{ active: tabIndex === 4 }" @click="handleTab(4)">瀛e害妫�楠�</li> + <li :class="{ active: tabIndex === 0 }" v-if="checkPermi(['get:raw:await'])" @click="handleTab(0)">寰呬笅鍗�</li> + <li :class="{ active: tabIndex === 1 }" v-if="checkPermi(['get:raw:testing'])" @click="handleTab(1)">妫�楠屼腑</li> + <li :class="{ active: tabIndex === 2 }" v-if="checkPermi(['get:raw:check'])" @click="handleTab(2)">宸叉楠�</li> + <li :class="{ active: tabIndex === 4 }" v-if="checkPermi(['get:raw:quarterCheck'])" @click="handleTab(4)">瀛e害妫�楠�</li> <li :class="{ active: tabIndex === 3 }" v-if="checkPermi(['get:Ifs:ByAll'])" @click="handleTab(3)">鍏ㄩ儴</li> </ul> </div> @@ -76,8 +76,8 @@ <!--寰呬笅鍗�--> <div class="table"> <lims-table :tableData="tableData" :column="column" v-if="tabIndex === 0" @pagination="pagination" - :rowClassName="changeRowClass" :height="'calc(100vh - 290px)'" key="tableData" :page="page" - :tableLoading="tableLoading"></lims-table> + ref="tableData" :rowClassName="changeRowClass" :height="'calc(100vh - 290px)'" + key="tableData" :page="page" :tableLoading="tableLoading"></lims-table> </div> <!--妫�楠屼腑--> <div class="table"> @@ -109,8 +109,7 @@ <el-dialog :visible.sync="exemptionVisible" title="纭鍏嶆" width="42%"> <div style="display: flex"> <span style="width: 90px; line-height: 32px">瑙勬牸鍨嬪彿锛�</span> - <el-input v-model="exemptionInfo.partDetail" clearable placeholder="璇疯緭鍏�" size="small" - @keyup.enter.native="refreshTable"></el-input> + <el-input v-model="exemptionInfo.partDetail" clearable placeholder="璇疯緭鍏�" size="small"></el-input> </div> <span slot="footer" class="dialog-footer"> <el-row> @@ -195,6 +194,7 @@ concessionRelease, getIfsByAll, getIfsByOver, + getIfsByQuarter, getIfsByStateOne, rawAllExport, rawOrderRelease, @@ -204,10 +204,11 @@ updateEntrustCode } from "@/api/business/rawMaterialOrder"; import { getWarehouseSubmit } from "@/api/business/materialInspection"; +import {mapGetters} from "vuex"; // import Inspection from "../do/b1-inspect-order-plan/Inspection.vue"; export default { - name: "b1-material-inspection-order", + name: "MaterialOrder", // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� components: { limsTable, DownFileDialog, FilesLookVisible, DataLookVisible, ShowInfo, PrintDialog }, data() { @@ -245,7 +246,6 @@ { label: '鎶ユ鏃堕棿', prop: 'declareDate' }, { dataType: 'action', - fixed: 'right', label: '鎿嶄綔', operation: [ { @@ -274,7 +274,7 @@ ], page: { total: 0, - size: 10, + size: 20, current: 1 }, tableData1: [], @@ -355,7 +355,7 @@ ], page1: { total: 0, - size: 10, + size: 20, current: 1 }, tableData2: [], @@ -411,7 +411,25 @@ { label: '闆朵欢鎻忚堪', prop: 'partDesc' }, { label: '渚涘簲鍟嗗悕绉�', prop: 'supplierName' }, { label: '涓嶅悎鏍兼弿杩�', prop: 'unqualifiedDesc' }, - { label: '鍏嶆', prop: 'isExemption' }, + { + dataType: 'tag', + label: '鍏嶆', + prop: 'isExemption', + formatData: (params) => { + if (params == 1) { + return '鍏嶆' + } else { + return null + } + }, + formatType: (params) => { + if (params == 1) { + return 'success' + } else { + return null + } + } + }, { label: '鏍峰搧鍚嶇О', prop: 'sampleName', @@ -457,6 +475,11 @@ disabled: (row) => { return row.isQuarter == 0 }, + showHide: (row) => { + return this.checkPermi([ + "get:raw:check:operation", + ]); + }, }, { name: '鏁版嵁鏌ョ湅', @@ -470,14 +493,14 @@ type: 'text', clickFun: (row) => { this.handleFileLook(row); - }, + } }, { name: '鎶ュ憡涓嬭浇', type: 'text', clickFun: (row) => { this.download(row); - }, + } }, { name: '鍘熷璁板綍', @@ -498,6 +521,11 @@ disabled: (row) => { return row.inspectStatus != 2 }, + showHide: (row) => { + return this.checkPermi([ + "get:raw:check:operation", + ]); + }, }, { name: '瀛e害鎾ら攢', @@ -508,13 +536,18 @@ disabled: (row) => { return row.quarterOrderId == null || row.quarterReportId != null }, + showHide: (row) => { + return this.checkPermi([ + "get:raw:check:operation", + ]); + }, }, ] } ], page2: { total: 0, - size: 10, + size: 20, current: 1 }, tableData3: [], @@ -564,7 +597,25 @@ { label: '闆朵欢鎻忚堪', prop: 'partDesc' }, { label: '渚涘簲鍟嗗悕绉�', prop: 'supplierName' }, { label: '涓嶅悎鏍兼弿杩�', prop: 'unqualifiedDesc' }, - { label: '鍏嶆', prop: 'isExemption' }, + { + dataType: 'tag', + label: '鍏嶆', + prop: 'isExemption', + formatData: (params) => { + if (params == 1) { + return '鍏嶆' + } else { + return null + } + }, + formatType: (params) => { + if (params == 1) { + return 'success' + } else { + return null + } + } + }, { label: '鏍峰搧鍚嶇О', prop: 'sampleName', @@ -620,7 +671,7 @@ ], page3: { total: 0, - size: 10, + size: 20, current: 1 }, tableData4: [], @@ -670,7 +721,25 @@ { label: '闆朵欢鎻忚堪', prop: 'partDesc' }, { label: '渚涘簲鍟嗗悕绉�', prop: 'supplierName' }, { label: '涓嶅悎鏍兼弿杩�', prop: 'unqualifiedDesc' }, - { label: '鍏嶆', prop: 'isExemption' }, + { + dataType: 'tag', + label: '鍏嶆', + prop: 'isExemption', + formatData: (params) => { + if (params == 1) { + return '鍏嶆' + } else { + return null + } + }, + formatType: (params) => { + if (params == 1) { + return 'success' + } else { + return null + } + } + }, { label: '鏍峰搧鍚嶇О', prop: 'sampleName', @@ -743,7 +812,7 @@ ], page4: { total: 0, - size: 10, + size: 20, current: 1 }, entity: { @@ -781,7 +850,7 @@ } ], more: false, - tabIndex: 0, + tabIndex: '', multipleSelection: [], active: 0, //1锛氫笅鍗曪紝2锛氭煡鐪� orderType: 0, //0锛氬師鏉愭枡涓嬪崟锛�1锛氬搴︽楠屼笅鍗� @@ -822,11 +891,31 @@ outLoading: false } }, + computed: { + ...mapGetters(['nickName']) + }, mounted() { + if (this.checkPermi(['get:raw:await'])) { + this.tabIndex = 0 + } else { + this.tabIndex = 2 + } + this.refreshTable() + }, + activated () { this.refreshTable() }, // 鏂规硶闆嗗悎 methods: { + // 鐐瑰嚮鏌ヨ鍥炶皟 + goSearch() { + this.page.current = 1 + this.page1.current = 1 + this.page2.current = 1 + this.page3.current = 1 + this.page4.current = 1 + this.refreshTable() + }, // 鏌ヨ鍥炶皟 refreshTable() { if (this.tabIndex === 0) { @@ -849,7 +938,7 @@ // 寰呬笅鍗曟煡璇� getPurchaseOrderList() { this.tableLoading = true - const params = { ...this.entity, isInspect: 1, state: 0 } + const params = { ...this.entity, isInspect: 1, state: 0, ...this.page } getWarehouseSubmit(params).then(res => { this.tableLoading = false if (res.code === 200) { @@ -863,7 +952,7 @@ // 妫�楠屼腑鏌ヨ getIfsByStateOneList() { this.tableLoading1 = true - const params = { ...this.entity, orderState: 1, state: 1 } + const params = { ...this.entity, orderState: 1, state: 1, ...this.page1 } getIfsByStateOne(params).then(res => { this.tableLoading1 = false if (res.code === 200) { @@ -877,7 +966,14 @@ // 宸叉楠屾煡璇� getIfsByOverList() { this.tableLoading2 = true - const params = { ...this.entity, orderState: 4, state: 2 } + if(null != this.entity.date){ + this.entity.beginDeclareDate = this.entity.date[0] + this.entity.endDeclareDate = this.entity.date[1] + } else { + this.entity.beginDeclareDate = '' + this.entity.endDeclareDate = '' + } + const params = { ...this.entity, orderState: 4, state: 2, ...this.page2 } getIfsByOver(params).then(res => { this.tableLoading2 = false if (res.code === 200) { @@ -891,8 +987,15 @@ // 鏌ヨ瀛e害妫�楠� getIfsByQuarterList() { this.tableLoading4 = true - const params = { ...this.entity } - getIfsByOver(params).then(res => { + if(null != this.entity.date){ + this.entity.beginDeclareDate = this.entity.date[0] + this.entity.endDeclareDate = this.entity.date[1] + } else { + this.entity.beginDeclareDate = '' + this.entity.endDeclareDate = '' + } + const params = { ...this.entity, ...this.page4 } + getIfsByQuarter(params).then(res => { this.tableLoading4 = false if (res.code === 200) { this.tableData4 = res.data.records @@ -905,7 +1008,14 @@ // 鍏ㄩ儴 getIfsByAllList() { this.tableLoading3 = true - const params = { ...this.entity, isInspect: 1 } + if(null != this.entity.date){ + this.entity.beginDeclareDate = this.entity.date[0] + this.entity.endDeclareDate = this.entity.date[1] + } else { + this.entity.beginDeclareDate = '' + this.entity.endDeclareDate = '' + } + const params = { ...this.entity, isInspect: 1, ...this.page3 } getIfsByAll(params).then(res => { this.tableLoading3 = false if (res.code === 200) { @@ -948,10 +1058,7 @@ if (row.userName) { inspectorList = row.userName.split(',') } - let user = JSON.parse(localStorage.getItem('user')) - if (user) { - inspectorList.push(user.name) - } + inspectorList.push(this.nickName) this.inspectorList = inspectorList this.insInfo = row this.InspectInfoDialog = true @@ -998,16 +1105,60 @@ }).catch(() => { }) }, viewInsInfo0() { - this.state = 3; - this.typeSource = this.insInfo.typeSource - this.orderId = this.insInfo.enterOrderId + let inspectorList = [] + inspectorList.push(this.nickName) this.InspectInfoDialog = false + if (this.checkPermi(['business:inspectionView'])) { + this.$router.push({ + name: "InspectionView", + query: { + sonLaboratory: '鍘熸潗鏂�', + state: 3, + typeSource: this.insInfo.typeSource, + orderId: this.insInfo.enterOrderId, + inspectorList: inspectorList, + }, + }) + } else { + this.$router.push({ + path: "/inspectionTask/inspection", + query: { + sonLaboratory: '鍘熸潗鏂�', + state: 3, + typeSource: this.insInfo.typeSource, + orderId: this.insInfo.enterOrderId, + inspectorList: inspectorList, + }, + }) + } }, viewInsInfo1() { - this.state = 3; - this.typeSource = this.insInfo.typeSource - this.orderId = this.insInfo.quarterOrderId + let inspectorList = [] + inspectorList.push(this.nickName) this.InspectInfoDialog = false + if (this.checkPermi(['business:inspectionView'])) { + this.$router.push({ + name: "InspectionView", + query: { + sonLaboratory: '鍘熸潗鏂�', + state: 3, + typeSource: this.insInfo.typeSource, + orderId: this.insInfo.quarterOrderId, + inspectorList: inspectorList, + }, + }) + } else { + this.$router.push({ + path: "/inspectionTask/inspection", + query: { + sonLaboratory: '鍘熸潗鏂�', + state: 3, + typeSource: this.insInfo.typeSource, + orderId: this.insInfo.quarterOrderId, + inspectorList: inspectorList, + }, + }) + } }, goback() { this.state = 0 @@ -1019,7 +1170,6 @@ }, // 閾滄潗鏂欎笅鍗� copper() { - this.$router.push("/materialOrder/copperOrder"); this.$router.push({ path: "/materialOrder/copperOrder", query: { active: 1 } }); }, // 鎵撳紑鏍囩鎵撳嵃寮规 @@ -1040,20 +1190,20 @@ }, // 涓嬪崟 playOrder(row) { - this.$router.push({ path: "/materialOrder/customsInspection", query: { orderType: 0, customsInspection: row, active: 1 } }); + this.$router.push({ path: "/materialOrder/customsInspectionOrder", query: { orderType: 0, customsInspection: row, active: 1 } }); }, // 瀛e害妫�楠屼笅鍗� playOrderSec(row) { - this.$router.push({ path: "/materialOrder/customsInspection", query: { orderType: 1, customsInspection: row, active: 1 } }); + this.$router.push({ path: "/materialOrder/customsInspectionOrder", query: { orderType: 1, customsInspection: row, active: 1 } }); }, // 鐐瑰嚮鏍峰搧鍚嶇О鏌ョ湅璇︽儏 selectAllByOne(row) { if (row.isCopper == 1) { this.currentId = row.enterOrderId - this.$router.push({ path: "/materialOrder/copperOrder", query: { customsInspection: row, active: 2, currentId: this.currentId } }); + this.$router.push({ path: "/materialOrder/CopperView", query: { customsInspection: row, active: 2, currentId: this.currentId } }); } else { this.currentId = row.insOrderId - this.$router.push({ path: "/materialOrder/customsInspection", query: { customsInspection: row, active: 2, currentId: this.currentId } }); + this.$router.push({ path: "/materialOrder/customsInspectionView", query: { customsInspection: row, active: 2, currentId: this.currentId } }); } }, // 鎵撳紑鍏嶆寮规 @@ -1153,7 +1303,7 @@ repealQuarterRawOrder({ quarterOrderId: this.insOrderRow.quarterOrderId }).then(res => { if (res.code === 200) { this.$message.success('鎾ら攢鎴愬姛') - this.refreshTable('page') + this.refreshTable() } }) }).catch(() => { }) -- Gitblit v1.9.3