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