From c7f61f9f9f4f3d240e29753a96a4911c15e6797e Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 28 二月 2025 11:26:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev
---
src/views/CNAS/process/method/standardNoveltyRetrieval/component/EditFormDia.vue | 148 +++++++
src/views/CNAS/process/method/standardNoveltyRetrieval/component/FormDialog.vue | 131 ++++++
src/views/CNAS/process/method/standardNoveltyRetrieval/index.vue | 729 ++++++++++++++++++++++++++++++++++++++
src/api/cnas/process/method/standardNoveltyRetrieval.js | 75 +++
4 files changed, 1,083 insertions(+), 0 deletions(-)
diff --git a/src/api/cnas/process/method/standardNoveltyRetrieval.js b/src/api/cnas/process/method/standardNoveltyRetrieval.js
new file mode 100644
index 0000000..a0062e8
--- /dev/null
+++ b/src/api/cnas/process/method/standardNoveltyRetrieval.js
@@ -0,0 +1,75 @@
+// 瀹為獙瀹ょ殑妫�娴嬭兘鍔涙。妗堢浉鍏虫帴鍙�
+import request from "@/utils/request";
+
+// 鏍囧噯鏌ユ柊鍒楄〃
+export function pageMethodSearchNew(query) {
+ return request({
+ url: "/processMethodSearchNew/pageMethodSearchNew",
+ method: "get",
+ params: query,
+ });
+}
+
+// 鏌ヨ瀛樻。
+export function pageSearchNewArchived(query) {
+ return request({
+ url: "/processMethodSearchNew/pageSearchNewArchived",
+ method: "get",
+ params: query,
+ });
+}
+
+// 鏂板鏍囧噯鏌ユ柊瀹℃壒娴佺▼
+export function addSearchNewArchived(data) {
+ return request({
+ url: "/processMethodSearchNew/addSearchNewArchived",
+ method: "post",
+ data: data,
+ });
+}
+
+// 鏂板鏍囧噯鏌ユ柊
+export function addMethodSearchNew(data) {
+ return request({
+ url: "/processMethodSearchNew/addMethodSearchNew",
+ method: "post",
+ data: data,
+ });
+}
+
+// 淇敼鏍囧噯鏌ユ柊
+export function updateMethodSearchNew(data) {
+ return request({
+ url: "/processMethodSearchNew/updateMethodSearchNew",
+ method: "post",
+ data: data,
+ });
+}
+
+// 瀛樻。鎵瑰噯
+export function ratifySearchNewArchivedr(data) {
+ return request({
+ url: "/processMethodSearchNew/ratifySearchNewArchivedr",
+ method: "post",
+ data: data,
+ });
+}
+
+// 鏌ヨ瀛樻。澶囦唤鍒楄〃
+export function pageSearchNewBackups(query) {
+ return request({
+ url: "/processMethodSearchNew/pageSearchNewBackups",
+ method: "get",
+ params: query,
+ });
+}
+
+// 瀵煎嚭鏍囧噯鏌ユ柊
+export function exportMethodSearchNew(query) {
+ return request({
+ url: "/processMethodSearchNew/exportMethodSearchNew",
+ method: "get",
+ responseType: "blob",
+ params: query,
+ });
+}
diff --git a/src/views/CNAS/process/method/standardNoveltyRetrieval/component/EditFormDia.vue b/src/views/CNAS/process/method/standardNoveltyRetrieval/component/EditFormDia.vue
new file mode 100644
index 0000000..38b4025
--- /dev/null
+++ b/src/views/CNAS/process/method/standardNoveltyRetrieval/component/EditFormDia.vue
@@ -0,0 +1,148 @@
+<template>
+ <div>
+ <el-dialog :visible.sync="formDia" title="缂栬緫" width="80%" @close="closeDia">
+ <el-form ref="form" :model="form" :rules="formRules" label-width="auto">
+ <el-col :span="8">
+ <el-form-item label="鏍囧噯鍚嶇О锛�" prop="methodName">
+ <el-input v-model="form.methodName" size="small"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鏍囧噯鍙凤細" prop="standardNo">
+ <el-input v-model="form.standardNo" size="small"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鏂囦欢缂栧彿锛�" prop="fileNo">
+ <el-input v-model="form.fileNo" size="small"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鏄惁鏄柊鏍囧噯锛�" prop="isNewStandard">
+ <el-radio-group v-model="form.isNewStandard">
+ <el-radio :label="0">鍚�</el-radio>
+ <el-radio :label="1">鏄�</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="鏌ユ柊璁板綍鏉ユ簮锛�" prop="searchNewSource">
+ <el-radio-group v-model="form.searchNewSource">
+ <el-radio :label="0">鏍囧噯缃�</el-radio>
+ <el-radio :label="1">濮旀墭鎯呮姤</el-radio>
+ <el-radio :label="2">鏍囧噯鏁�</el-radio>
+ <el-radio :label="3">鍏朵粬</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item label="澶囨敞锛�" prop="remark">
+ <el-select v-model="form.remark"
+ clearable size="small">
+ <el-option :value="0" label="浣滃簾"></el-option>
+ <el-option :value="1" label="鏇挎崲"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col v-if="form.isNewStandard == 1" :span="8">
+ <el-form-item label="鏂版爣鍑嗗悕绉帮細" prop="newMethodName">
+ <el-input v-model="form.newMethodName" size="small"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col v-if="form.isNewStandard == 1" :span="8">
+ <el-form-item label="鏂版爣鍑嗗彿锛�" prop="newStandardNo">
+ <el-input v-model="form.newStandardNo" size="small"></el-input>
+ </el-form-item>
+ </el-col>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="closeDia">鍙� 娑�</el-button>
+ <el-button :loading="editLoad" type="primary" @click="handleEdit">鎻� 浜�</el-button>
+ </span>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import {
+ updateMethodSearchNew
+} from '@/api/cnas/process/method/standardNoveltyRetrieval'
+
+export default {
+ name: 'FormDialog',
+ // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
+ components: {},
+ data() {
+ // 杩欓噷瀛樻斁鏁版嵁
+ return {
+ formDia: false,
+ form: {
+ methodName: '',
+ standardNo: '',
+ isNewStandard: '',
+ newMethodName: '',
+ newStandardNo: '',
+ searchNewSource: '',
+ remark: '',
+ fileNo: '',
+ },
+ formRules: {
+ methodName: [{required: true, message: '璇峰~鍐欐爣鍑嗗悕绉�',trigger: 'blur'}],
+ standardNo: [{required: true, message: '璇峰~鍐欐爣鍑嗗彿',trigger: 'blur'}],
+ isNewStandard: [{required: true, message: '璇烽�夋嫨鏄惁鏄柊鏍囧噯',trigger: 'change'}],
+ newMethodName: [{required: false, message: '璇峰~鍐欐柊鏍囧噯鍚嶇О',trigger: 'blur'}],
+ newStandardNo: [{required: false, message: '璇峰~鍐欐柊鏍囧噯鍙�',trigger: 'blur'}],
+ searchNewSource: [{required: true, message: '璇烽�夋嫨鏌ユ柊璁板綍鏉ユ簮',trigger: 'change'}],
+ fileNo: [{required: true, message: '璇峰~鍐欐枃浠跺彿',trigger: 'blur'}],
+ },
+ editLoad: false,
+ info: {},
+ };
+ },
+ // 鏂规硶闆嗗悎
+ methods: {
+ openDia(row) {
+ this.formDia = true
+ this.form = {...row}
+ },
+ handleEdit() {
+ this.$refs['form'].validate((valid) => {
+ if (valid) {
+ this.editLoad = true
+ const processMethodSearchNews = this.HaveJson(this.form)
+ delete processMethodSearchNews.createTime
+ updateMethodSearchNew(processMethodSearchNews).then(res => {
+ this.editLoad = false
+ if (res.code === 200){
+ this.$message.success('鎿嶄綔鎴愬姛')
+ this.closeDia()
+ }
+ }).catch(err => {
+ console.log('err---', err);
+ this.editLoad = false
+ })
+ } else {
+ console.log('error submit!!');
+ return false;
+ }
+ });
+ },
+ closeDia() {
+ this.$refs.form.resetFields();
+ this.formDia = false
+ this.$emit('closeEditDia');
+ },
+ }
+};
+</script>
+
+<style scoped>
+.form-info {
+ display: inline-block;
+ max-height: 600px;
+ overflow-y: auto;
+}
+>>>.el-dialog {
+ margin: 6vh auto 50px !important;
+}
+</style>
diff --git a/src/views/CNAS/process/method/standardNoveltyRetrieval/component/FormDialog.vue b/src/views/CNAS/process/method/standardNoveltyRetrieval/component/FormDialog.vue
new file mode 100644
index 0000000..6ce226e
--- /dev/null
+++ b/src/views/CNAS/process/method/standardNoveltyRetrieval/component/FormDialog.vue
@@ -0,0 +1,131 @@
+<template>
+ <div>
+ <el-dialog :visible.sync="formDia" title="鏂板" width="80%" @close="closeDia">
+ <el-form ref="form" :model="form" :rules="formRules" label-width="auto">
+ <el-button size="small" type="primary" @click="addBtn">娣诲姞涓�鏉�</el-button>
+ <div class="form-info">
+ <div v-for="(items,index) in form.taskRel" :key="index">
+ <el-col :span="12">
+ <el-form-item :prop="`taskRel.${index}.newMethodName`" :rules="{required: true, message: '璇峰~鍐欐爣鍑嗗悕绉�',trigger: 'blur',}" label="鏂版爣鍑嗗悕绉帮細">
+ <el-input v-model="items.newMethodName" size="small"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item :prop="`taskRel.${index}.newStandardNo`" :rules="{required: true,message: '璇峰~鍐欐爣鍑嗗彿',trigger: 'blur',}" label="鏂版爣鍑嗗彿锛�">
+ <el-input v-model="items.newStandardNo" size="small"></el-input>
+ </el-form-item>
+ </el-col>
+ <el-col :span="12">
+ <el-form-item :prop="`taskRel.${index}.searchNewSource`" :rules="{required: true,message: '璇烽�夋嫨鏌ユ柊璁板綍鏉ユ簮',trigger: 'change',}" label="鏌ユ柊璁板綍鏉ユ簮锛�">
+ <el-radio-group v-model="items.searchNewSource">
+ <el-radio :label="0">鏍囧噯缃�</el-radio>
+ <el-radio :label="1">濮旀墭鎯呮姤</el-radio>
+ <el-radio :label="2">鏍囧噯鏁�</el-radio>
+ <el-radio :label="3">鍏朵粬</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ </el-col>
+ <el-col :span="8">
+ <el-form-item :prop="`taskRel.${index}.remark`" :rules="{required: false,message: '璇烽�夋嫨澶囨敞',trigger: 'change',}" label="澶囨敞锛�">
+ <el-select v-model="items.remark" :prop="`taskRel.${index}.remark`"
+ :rules="{required: false,message: '璇烽�夋嫨澶囨敞',trigger: 'change',}"
+ clearable size="small">
+ <el-option :value="0" label="浣滃簾"></el-option>
+ <el-option :value="1" label="鏇挎崲"></el-option>
+ </el-select>
+ </el-form-item>
+ </el-col>
+ <el-col :span="4">
+ <el-button v-if="index !== 0" circle icon="el-icon-delete" size="small" type="danger" @click="deleteHeaderRow(index)"></el-button>
+ </el-col>
+ <el-col :span="24">
+ <el-divider></el-divider>
+ </el-col>
+ </div>
+ </div>
+ </el-form>
+ <span slot="footer" class="dialog-footer">
+ <el-button @click="closeDia">鍙� 娑�</el-button>
+ <el-button :loading="editLoad" type="primary" @click="handleEdit">鎻� 浜�</el-button>
+ </span>
+ </el-dialog>
+ </div>
+</template>
+
+<script>
+import { addMethodSearchNew } from '@/api/cnas/process/method/standardNoveltyRetrieval'
+
+export default {
+ name: 'FormDialog',
+ // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
+ components: {},
+ data() {
+ // 杩欓噷瀛樻斁鏁版嵁
+ return {
+ formDia: false,
+ form: {
+ taskRel: [
+ {
+ newMethodName: '',
+ newStandardNo: '',
+ searchNewSource: '',
+ remark: '',
+ }
+ ]
+ },
+ formRules: {},
+ editLoad: false,
+ info: {},
+ };
+ },
+ // 鏂规硶闆嗗悎
+ methods: {
+ openDia (row) {
+ this.formDia = true
+ },
+ // 娣诲姞涓�鏉�
+ addBtn() {
+ this.form.taskRel.push({ newMethodName: '', newStandardNo:'', searchNewSource: '', remark: ''});
+ },
+ // 鍒犻櫎涓�鏉�
+ deleteHeaderRow (index) {
+ this.form.taskRel.splice(index, 1);
+ },
+ handleEdit () {
+ this.$refs['form'].validate((valid) => {
+ if (valid) {
+ this.editLoad = true
+ addMethodSearchNew(this.form.taskRel).then(res => {
+ this.editLoad = false
+ if (res.code === 201) return
+ this.$message.success('鎿嶄綔鎴愬姛')
+ this.closeDia()
+ }).catch(err => {
+ console.log('err---', err);
+ this.editLoad = false
+ })
+ } else {
+ console.log('error submit!!');
+ return false;
+ }
+ });
+ },
+ closeDia () {
+ this.$refs.form.resetFields();
+ this.formDia = false
+ this.$emit('closeDia');
+ },
+ }
+};
+</script>
+
+<style scoped>
+.form-info {
+ display: inline-block;
+ max-height: 42em;
+ overflow-y: auto;
+}
+>>>.el-dialog {
+ margin: 6vh auto 50px !important;
+}
+</style>
diff --git a/src/views/CNAS/process/method/standardNoveltyRetrieval/index.vue b/src/views/CNAS/process/method/standardNoveltyRetrieval/index.vue
new file mode 100644
index 0000000..5822548
--- /dev/null
+++ b/src/views/CNAS/process/method/standardNoveltyRetrieval/index.vue
@@ -0,0 +1,729 @@
+<template>
+ <div class="capacity-scope">
+ <div class="search">
+ <div>
+ <el-form :model="searchForm" ref="searchForm" size="small" :inline="true">
+ <el-form-item label="鏍囧噯鍙�" prop="standardNo">
+ <el-input size="small" placeholder="璇疯緭鍏�" clearable v-model="searchForm.standardNo"></el-input>
+ </el-form-item>
+ <el-form-item>
+ <el-button type="primary" icon="el-icon-search" size="mini" @click="searchList">鏌� 璇�</el-button>
+ <el-button icon="el-icon-refresh" size="mini" @click="resetSearchForm">閲� 缃�</el-button>
+ </el-form-item>
+ </el-form>
+ </div>
+ <div>
+ <el-button size="medium" type="primary" @click="openApprovalDialog1">寤� 妗�</el-button>
+ <el-upload ref='upload' :action="action"
+ :before-upload="beforeUpload" :headers="headers" :on-error="onError"
+ :on-success="handleSuccessUp" :show-file-list="false" accept='.jpg,.jpeg,.png,.gif,.doc,.docx,.xls,.xlsx,.ppt,.pptx,.pdf,.zip,.rar'
+ style="display: inline-block; margin-left: 10px;">
+ <el-button :loading="upLoading" size="medium" type="primary">瀵煎叆</el-button>
+ </el-upload>
+ <el-button size="medium" style="margin-left: 10px;" type="primary" @click="openFormDia">鏂� 澧�</el-button>
+ </div>
+ </div>
+ <div>
+ <div class="table">
+ <div class="table-tab">
+ <el-radio-group v-model="tabIndex" @input="searchList">
+ <el-radio-button label="0">浠婂勾鏍囧噯璁板綍</el-radio-button>
+ <el-radio-button label="1">鍘嗗彶妗f</el-radio-button>
+ </el-radio-group>
+ </div>
+ <div v-if="tabIndex === '0'">
+ <TableCard :showForm="false" :showTitle="false">
+ <template v-slot:table>
+ <lims-table
+ :column="tableColumn"
+ :height="'calc(100vh - 26em)'"
+ :table-data="tableData"
+ :table-loading="tableLoading"
+ :page="page"
+ @pagination="pagination">
+ </lims-table>
+ </template>
+ </TableCard>
+ </div>
+ <div v-if="tabIndex === '1'">
+ <TableCard :showForm="false" :showTitle="false">
+ <template v-slot:table>
+ <lims-table
+ :column="oldTableColumn"
+ :height="'calc(100vh - 20em)'"
+ :table-data="oldTableData"
+ :table-loading="oldTableLoading"
+ :page="oldPage"
+ @pagination="oldPagination">
+ </lims-table>
+ </template>
+ </TableCard>
+ </div>
+ </div>
+ <!-- 鍘嗗彶妗f鎵瑰噯寮规-->
+ <el-dialog :visible.sync="approvalDialog" title="鎵瑰噯" width="30%" @close="approvalDialog = false">
+ <span>
+ 鎵瑰噯澶囨敞锛�
+ <el-input v-model="qualityRemark" type="textarea"></el-input>
+ </span>
+ <span slot="footer" class="dialog-footer">
+ <el-button :loading="approvalLoading" @click="handleApproval(0)">涓嶆壒鍑�</el-button>
+ <el-button :loading="approvalLoading" type="primary" @click="handleApproval(1)">鎵� 鍑�</el-button>
+ </span>
+ </el-dialog>
+ <el-dialog :visible.sync="approvalDialog1" title="寤烘。" width="30%" @close="approvalDialog1 = false">
+ <span>
+ 妗f鍚嶇О锛�
+ <el-input v-model="archivedName" type="textarea"></el-input>
+ </span>
+ <span slot="footer" class="dialog-footer">
+ <el-button :loading="approvalLoading" @click="approvalDialog1 = false, archivedName = ''">鍙� 娑�</el-button>
+ <el-button :loading="approvalLoading" type="primary" @click="handleApproval1()">纭� 瀹�</el-button>
+ </span>
+ </el-dialog>
+ <FormDialog v-if="formDialog" ref="formDialog" @closeDia="closeDia"></FormDialog>
+ <EditFormDia v-if="editFormDialog" ref="editFormDialog" @closeEditDia="closeEditDia"></EditFormDia>
+ <el-dialog :visible.sync="viewRocordDia" title="璇︽儏" width="80%" @close="approvalDialog = false">
+ <TableCard :showForm="false" :showTitle="false">
+ <template v-slot:table>
+ <limsTable
+ :column="tableColumn1"
+ :height="'calc(100vh - 26em)'"
+ :table-data="tableData1"
+ :table-loading="tableLoading1"
+ style="padding: 0 15px;margin-bottom: 16px"
+ :page="page1"
+ @pagination="pagination1">
+ </limsTable>
+ </template>
+ </TableCard>
+ </el-dialog>
+ </div>
+ </div>
+</template>
+
+<script>
+import limsTable from '@/components/Table/lims-table.vue'
+import TableCard from '@/views/CNAS/externalService/serviceAndSupplyPro/component/index.vue';
+import FormDialog from './component/FormDialog.vue';
+import EditFormDia from './component/EditFormDia.vue';
+import {
+ addSearchNewArchived, exportMethodSearchNew,
+ pageMethodSearchNew, pageSearchNewArchived, pageSearchNewBackups, ratifySearchNewArchivedr
+} from '@/api/cnas/process/method/standardNoveltyRetrieval'
+
+export default {
+ name: 'a7-standard-novelty-retrieval',
+ // import 寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢�
+ components: {
+ FormDialog,
+ TableCard,
+ limsTable,
+ EditFormDia
+ },
+ data() {
+ // 杩欓噷瀛樻斁鏁版嵁
+ return {
+ searchForm: {
+ year: '',
+ standardNo: '',
+ },
+ options: [
+ {label: '涓婂崐骞�', value: '1'},
+ {label: '涓嬪崐骞�', value: '2'},
+ ],
+ tableColumn: [
+ {
+ label: '鏍囧噯鍚嶇О',
+ prop: 'methodName',
+ minWidth: '100'
+ },
+ {
+ label: '鏍囧噯鍙�',
+ prop: 'standardNo',
+ minWidth: '100'
+ },
+ {
+ label: '鏂囦欢缂栧彿',
+ prop: 'fileNo',
+ minWidth: '100'
+ },
+ {
+ dataType: 'tag',
+ label: '鏄惁鏄柊鏍囧噯',
+ prop: 'isNewStandard',
+ minWidth: '100',
+ formatData: (params) => {
+ if (params == 0) {
+ return '鍚�';
+ } else if (params == 1) {
+ return '鏄�';
+ } else {
+ return null
+ }
+ },
+ formatType: (params) => {
+ if (params == 0) {
+ return 'danger';
+ } else if (params == 1) {
+ return 'success';
+ } else {
+ return null
+ }
+ }
+ },
+ {
+ label: '鏂版爣鍑嗗悕绉�',
+ prop: 'newMethodName',
+ minWidth: '100'
+ },
+ {
+ label: '鏂版爣鍑嗗彿',
+ prop: 'newStandardNo',
+ minWidth: '100'
+ },
+ {
+ dataType: 'tag',
+ label: '鏌ヨ璁板綍鏉ユ簮',
+ prop: 'searchNewSource',
+ minWidth: '100',
+ formatData: (params) => {
+ if (params == 0) {
+ return '鏍囧噯缃�';
+ } else if (params == 1) {
+ return '濮旀墭鎯呮姤';
+ } else if (params == 2) {
+ return '鏍囧噯鏁�';
+ } else if (params == 3) {
+ return '鍏朵粬';
+ } else {
+ return null
+ }
+ },
+ formatType: (params) => {
+ if (params == 0) {
+ return 'success';
+ } else if (params == 1) {
+ return 'danger';
+ } else if (params == 2) {
+ return 'warning';
+ } else if (params == 3) {
+ return 'info';
+ } else {
+ return null
+ }
+ }
+ },
+ {
+ dataType: 'tag',
+ label: '澶囨敞',
+ prop: 'remark',
+ minWidth: '100',
+ formatData: (params) => {
+ if (params == 0) {
+ return '浣滃簾';
+ } else if (params == 1) {
+ return '鏇挎崲';
+ } else {
+ return null
+ }
+ },
+ formatType: (params) => {
+ if (params == 0) {
+ return 'danger';
+ } else if (params == 1) {
+ return 'success';
+ } else {
+ return null
+ }
+ }
+ },
+ {
+ dataType: 'action',
+ minWidth: '100',
+ label: '鎿嶄綔',
+ operation: [
+ {
+ name: '缂栬緫',
+ type: 'text',
+ clickFun: (row) => {
+ this.openEditFormDia(row);
+ },
+ },
+ ]
+ }
+ ],
+ tableColumn1: [
+ {
+ label: '鏍囧噯鍚嶇О',
+ prop: 'methodName',
+ minWidth: '100'
+ },
+ {
+ label: '鏍囧噯鍙�',
+ prop: 'standardNo',
+ minWidth: '100'
+ },
+ {
+ label: '鏂囦欢缂栧彿',
+ prop: 'fileNo',
+ minWidth: '100'
+ },
+ {
+ dataType: 'tag',
+ label: '鏄惁鏄柊鏍囧噯',
+ prop: 'isNewStandard',
+ minWidth: '100',
+ formatData: (params) => {
+ if (params == 0) {
+ return '鍚�';
+ } else if (params == 1) {
+ return '鏄�';
+ } else {
+ return null
+ }
+ },
+ formatType: (params) => {
+ if (params == 0) {
+ return 'danger';
+ } else if (params == 1) {
+ return 'success';
+ } else {
+ return null
+ }
+ }
+ },
+ {
+ label: '鏂版爣鍑嗗悕绉�',
+ prop: 'newMethodName',
+ minWidth: '100'
+ },
+ {
+ label: '鏂版爣鍑嗗彿',
+ prop: 'newStandardNo',
+ minWidth: '100'
+ },
+ {
+ dataType: 'tag',
+ label: '鏌ヨ璁板綍鏉ユ簮',
+ prop: 'searchNewSource',
+ minWidth: '100',
+ formatData: (params) => {
+ if (params == 0) {
+ return '鏍囧噯缃�';
+ } else if (params == 1) {
+ return '濮旀墭鎯呮姤';
+ } else if (params == 2) {
+ return '鏍囧噯鏁�';
+ } else if (params == 3) {
+ return '鍏朵粬';
+ } else {
+ return null
+ }
+ },
+ formatType: (params) => {
+ if (params == 0) {
+ return 'success';
+ } else if (params == 1) {
+ return 'danger';
+ } else if (params == 2) {
+ return 'warning';
+ } else if (params == 3) {
+ return 'info';
+ } else {
+ return null
+ }
+ }
+ },
+ {
+ dataType: 'tag',
+ label: '澶囨敞',
+ prop: 'remark',
+ minWidth: '100',
+ formatData: (params) => {
+ if (params == 0) {
+ return '浣滃簾';
+ } else if (params == 1) {
+ return '鏇挎崲';
+ } else {
+ return null
+ }
+ },
+ formatType: (params) => {
+ if (params == 0) {
+ return 'danger';
+ } else if (params == 1) {
+ return 'success';
+ } else {
+ return null
+ }
+ }
+ }
+ ],
+ tableData: [],
+ tableData1: [],
+ tableLoading: false,
+ tableLoading1: false,
+ page: {
+ size: 10,
+ current: 1,
+ total: 0
+ },
+ page1: {
+ size: 10,
+ current: 1,
+ total: 0
+ },
+ oldPage: {
+ size: 10,
+ current: 1,
+ total: 0,
+ },
+ oldTableColumn: [
+ {
+ label: '瀛樻。鍚嶇О',
+ prop: 'archivedName',
+ minWidth: '100'
+ },
+ {
+ label: '缂栧埗浜�',
+ prop: 'writeName',
+ minWidth: '100'
+ },
+ {
+ label: '缂栧埗鏃堕棿',
+ prop: 'writeTime',
+ minWidth: '100'
+ },
+ {
+ label: '鎵瑰噯浜�',
+ prop: 'ratifyName',
+ minWidth: '100'
+ },
+ {
+ label: '鎵瑰噯淇℃伅',
+ prop: 'ratifyRemark',
+ minWidth: '100'
+ },
+ {
+ dataType: 'tag',
+ label: '鎵瑰噯鐘舵��',
+ prop: 'ratifyStatus',
+ minWidth: '100',
+ formatData: (params) => {
+ if (params == 0) {
+ return '涓嶉�氳繃';
+ } else if (params == 1) {
+ return '閫氳繃';
+ } else {
+ return null
+ }
+ },
+ formatType: (params) => {
+ if (params == 0) {
+ return 'danger';
+ } else if (params == 1) {
+ return 'success';
+ } else {
+ return null
+ }
+ }
+ },
+ {
+ label: '鎵瑰噯鏃堕棿',
+ prop: 'ratifyTime',
+ minWidth: '100'
+ },
+ {
+ dataType: 'action',
+ minWidth: '100',
+ label: '鎿嶄綔',
+ operation: [
+ {
+ name: '鎵瑰噯',
+ type: 'text',
+ clickFun: (row) => {
+ this.openApprovalDialog(row);
+ },
+ disabled: (row) => {
+ if (row.ratifyStatus === 1) {
+ return true
+ } else {
+ return false
+ }
+ },
+ },
+ {
+ name: '鏌ョ湅',
+ type: 'text',
+ clickFun: (row) => {
+ this.openViewDia(row);
+ },
+ },
+ {
+ name: '瀵煎嚭',
+ type: 'text',
+ clickFun: (row) => {
+ this.handleOut(row);
+ },
+ }
+ ]
+ }
+ ],
+ oldTableData: [],
+ oldTableLoading: false,
+ tabIndex: '0',
+ formDialog: false,
+ editFormDialog: false,
+ upLoading:false,
+ outLoading:false,
+ ratifyInfo: {
+ writeUserId: '',
+ ratifyUserId: '',
+ writeDate: '',
+ ratifyDate: '',
+ },
+ userList: [],
+ approvalDialog: false,
+ approvalDialog1: false,
+ viewRocordDia: false,
+ approvalLoading: false,
+ qualityRemark: '',
+ archivedName: '',
+ archivedId: '',
+ };
+ },
+ mounted() {
+ this.searchList()
+ },
+ // 鏂规硶闆嗗悎
+ methods: {
+ // 鏌ヨ鍒楄〃
+ searchList () {
+ let params = {}
+ if (this.tabIndex === '0') {
+ params = {
+ entity: {
+ standardNo: this.searchForm.standardNo,
+ },
+ page: this.page
+ }
+ } else {
+ params = {
+ entity: {},
+ page: this.oldPage
+ }
+ }
+ if (this.tabIndex === '0') {
+ this.tableLoading = true
+ pageMethodSearchNew({...params.oldPage,...params.entity}).then(res => {
+ this.tableLoading = false
+ if (res.code === 200){
+ this.tableData = res.data.records
+ this.page.total = res.data.total
+ }
+ }).catch(err => {
+ console.log('err---', err);
+ this.tableLoading = false
+ })
+ } else {
+ this.oldTableLoading = true
+ pageSearchNewArchived({
+ ...params.page,...params.entity
+ }).then(res => {
+ this.oldTableLoading = false
+ if (res.code === 200){
+ console.log('res>>>>>>>>>>>>',res)
+ this.oldTableData = res.data.records
+ this.oldPage.total = res.data.total
+ }
+
+ }).catch(err => {
+ console.log('err---', err);
+ this.oldTableLoading = false
+ })
+ }
+ },
+ // 鎵撳紑鍘嗗彶妗f璇︽儏寮规
+ openViewDia (row) {
+ this.archivedId = row.archivedId
+ this.viewRocordDia = true
+ this.pageSearchNewBackups()
+ },
+ pageSearchNewBackups () {
+ const entity = {
+ archivedId: this.archivedId,
+ }
+ this.tableLoading1 = true
+ pageSearchNewBackups({...this.page1,...entity}).then(res => {
+ this.tableLoading1 = false
+ if (res.code === 200){
+ this.tableData1 = res.data.records
+ this.page1.total = res.data.total
+ }
+
+ }).catch(err => {
+ console.log('err---', err);
+ this.tableLoading1 = false
+ })
+ },
+ // 鎵撳紑鎵瑰噯寮规
+ openApprovalDialog (row) {
+ this.approvalDialog = true
+ this.archivedId = row.archivedId
+ },
+ // 鎵撳紑鎵瑰噯寮规
+ openApprovalDialog1 (row) {
+ this.approvalDialog1 = true
+ this.archivedId = row.archivedId
+ },
+ // 鎻愪氦鎵瑰噯
+ handleApproval (status) {
+ this.approvalLoading = true
+ let internalReport = {
+ archivedId: this.archivedId,
+ ratifyStatus: status,
+ ratifyRemark: this.ratifyRemark
+ }
+ ratifySearchNewArchivedr(internalReport).then(res => {
+ if (res.code === 200) {
+ this.$message.success('鎻愪氦鎴愬姛锛�');
+ this.approvalDialog = false
+ this.searchList()
+ }
+ this.approvalLoading = false
+ }).catch(() => {
+ this.approvalLoading = false
+ })
+ },
+ // 鎻愪氦鎵瑰噯
+ handleApproval1 (status) {
+ this.approvalLoading = true
+ let internalReport = {
+ archivedName: this.archivedName,
+ }
+ addSearchNewArchived(internalReport).then(res => {
+ if (res.code === 200) {
+ this.$message.success('鎻愪氦鎴愬姛锛�');
+ this.approvalDialog1 = false
+ this.searchList()
+ }
+ this.approvalLoading = false
+ }).catch(() => {
+ this.approvalLoading = false
+ })
+ },
+ // 閲嶇疆鏌ヨ鏉′欢
+ resetSearchForm () {
+ this.searchForm.standardNo = '';
+ this.searchList()
+ },
+ // 鎿嶄綔鏂板妗�
+ openFormDia (row) {
+ this.formDialog = true
+ this.$nextTick(() => {
+ this.$refs.formDialog.openDia(row)
+ })
+ },
+ // 鍏抽棴鏂板寮规
+ closeDia () {
+ this.formDialog = false
+ this.searchList()
+ },
+ // 鎵撳紑淇敼寮规
+ openEditFormDia (row) {
+ this.editFormDialog = true
+ this.$nextTick(() => {
+ this.$refs.editFormDialog.openDia(row)
+ })
+ },
+ //
+ closeEditDia () {
+ this.editFormDialog = false
+ this.searchList()
+ },
+ // 瀵煎嚭
+ handleOut (row) {
+ this.outLoading = true
+ exportMethodSearchNew({archivedId:row.archivedId}).then(res => {
+ const blob = new Blob([res],{ type: 'application/octet-stream' });
+ this.$download.saveAs(blob, '鏍囧噯鏌ユ柊瀵煎嚭.xlsx')
+ this.$message.success('瀵煎嚭鎴愬姛')
+ })
+ },
+ // 瀵煎叆
+ beforeUpload(file) {
+ if (file.size > 1024 * 1024 * 10) {
+ this.$message.error('涓婁紶鏂囦欢涓嶈秴杩�10M');
+ this.$refs.upload.clearFiles()
+ return false;
+ } else {
+ this.upLoading = true;
+ return true;
+ }
+ },
+ onError(err, file, fileList) {
+ this.$message.error('涓婁紶澶辫触')
+ this.$refs.upload.clearFiles()
+ },
+ handleSuccessUp(response) {
+ this.upLoading = false;
+ if (response.code == 200) {
+ this.$message.success('涓婁紶鎴愬姛');
+ this.searchList()
+ }
+ },
+ // 鍒嗛〉
+ pagination(page){
+ this.page.size = page.limit
+ this.searchList();
+ },
+ pagination1(page){
+ this.page1.size = page.limit
+ this.pageSearchNewBackups();
+ },
+ oldPagination(page){
+ this.oldPage.size = page.limit
+ this.searchList();
+ },
+ //
+ getUserList(){
+ this.$axios.post(this.$api.user.selectUserList, {
+ page: {current: -1, size: -1,},
+ entity: {name: null}
+ }, {
+ headers: {
+ 'Content-Type': 'application/json'
+ }
+ }).then(res => {
+ if (res.code === 201) {
+ return
+ }
+ this.userList = res.data.body.records
+ })
+ },
+ },
+ // 鐢ㄤ簬涓婁紶鏂囦欢鐨勪俊鎭�
+ computed: {
+ headers() {
+ return {
+ 'token': sessionStorage.getItem('token')
+ }
+ },
+ action() {
+ return this.javaApi + '/processMethodSearchNew/importMethodSearchNew'
+ }
+ },
+};
+</script>
+
+<style scoped>
+.search {
+ height: 46px;
+ display: flex;
+ justify-content: space-between;
+}
+.table-tab {
+ margin-bottom: 10px;
+}
+</style>
--
Gitblit v1.9.3