| | |
| | | <template> |
| | | <basic-container> |
| | | <div class="testbox"> |
| | | <div> |
| | | <!-- <el-button plain size="small" type="primary" @click="addvisible = true">增加 |
| | | </el-button> |
| | | <el-button plain size="small" type="primary" @click="editHandler">编辑 |
| | | </el-button> |
| | | <el-button plain size="small" type="primary" @click="openBatchImport('batchImportApply')">批量导入申请</el-button> |
| | | <el-button plain size="small" type="primary" @click="openBatchImport('historyImport')">历史数据导入</el-button> |
| | | <el-button plain size="small" type="primary" @click="openBatchImport('batchApplyCode')">批量申请编码</el-button> |
| | | <el-button plain size="small" type="primary">批量发布</el-button> |
| | | <el-button plain size="small" type="primary">查看流程历史</el-button> |
| | | <el-button plain size="small" type="primary">删除</el-button> |
| | | <el-button plain size="small" type="primary" @click="setHandler">发布</el-button> |
| | | <el-button plain size="small" type="primary" @click="DataChange">数据更改</el-button> |
| | | <el-button plain size="small" type="primary" @click="huishouHandler">回收</el-button> |
| | | <el-button plain size="small" type="primary" @click="openD">导出 |
| | | </el-button> |
| | | <el-button plain size="small" type="primary" @click="findHandler">查询 |
| | | </el-button> |
| | | <el-button plain size="small" type="primary" @click="similarHandler">相似项查询</el-button> |
| | | <el-button plain size="small" type="primary">刷新</el-button> |
| | | <el-input placeholder="请输入关键字按回车查询" size="small" |
| | | style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> --> |
| | | <div class="main"> |
| | | <div class="top"> |
| | | <div class="testbox" style=""> |
| | | <div> |
| | | <!-- <el-button plain size="small" type="primary" @click="addvisible = true">增加 |
| | | </el-button> |
| | | <el-button plain size="small" type="primary" @click="editHandler">编辑 |
| | | </el-button> |
| | | <el-button plain size="small" type="primary" @click="openBatchImport('batchImportApply')">批量导入申请</el-button> |
| | | <el-button plain size="small" type="primary" @click="openBatchImport('historyImport')">历史数据导入</el-button> |
| | | <el-button plain size="small" type="primary" @click="openBatchImport('batchApplyCode')">批量申请编码</el-button> |
| | | <el-button plain size="small" type="primary">批量发布</el-button> |
| | | <el-button plain size="small" type="primary">查看流程历史</el-button> |
| | | <el-button plain size="small" type="primary">删除</el-button> |
| | | <el-button plain size="small" type="primary" @click="setHandler">发布</el-button> |
| | | <el-button plain size="small" type="primary" @click="DataChange">数据更改</el-button> |
| | | <el-button plain size="small" type="primary" @click="huishouHandler">回收</el-button> |
| | | <el-button plain size="small" type="primary" @click="openD">导出 |
| | | </el-button> |
| | | <el-button plain size="small" type="primary" @click="findHandler">查询 |
| | | </el-button> |
| | | <el-button plain size="small" type="primary" @click="similarHandler">相似项查询</el-button> |
| | | <el-button plain size="small" type="primary">刷新</el-button> |
| | | <el-input placeholder="请输入关键字按回车查询" size="small" |
| | | style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> --> |
| | | |
| | | </div> |
| | | <el-row style="height: 700px; width: 100%"> |
| | | <div> |
| | | <el-button v-for="(item, index) in masterVrBtnList" :key="index" plain size="small" type="primary" |
| | | @click="handelBtnClick(item)">{{ |
| | | item.name |
| | | }} |
| | | </el-button> |
| | | <el-input v-model="WupinFindValue" placeholder="请输入关键字按回车查询" |
| | | size="small" style="width: 180px; margin-left: 5px; margin-top: 10px"></el-input> |
| | | </div> |
| | | <el-row style="width: 100%;margin-bottom: 20px"> |
| | | <div> |
| | | <el-button v-for="(item, index) in masterVrBtnList" |
| | | v-if="!['PREVIEW', 'DELETEFILE', 'revisefile', 'DOWNLOADFILE', 'UPLOADFILE'].includes(item.uniqueFlag)" |
| | | :key="index" plain size="small" |
| | | type="primary" |
| | | @click="handelBtnClick(item)">{{ |
| | | item.name |
| | | }} |
| | | </el-button> |
| | | <el-input v-model="WupinFindValue" placeholder="请输入关键字按回车查询" |
| | | size="small" style="width: 180px; margin-left: 5px; margin-top: 10px" |
| | | @keyup.enter.native="tableFindInp" v-if="tableData.length != 0"></el-input> |
| | | </div> |
| | | <el-table ref="dataTable" v-loading="isLoading" :data="tableData" |
| | | :height="tableHeight" |
| | | @select="handleSelection" @cell-click="handleCellClick" @row-click="handleRowClick" |
| | | @select-all="handleSelectionAll" @selection-change="handleSelectionChange" |
| | | @sort-change="sortChange"> |
| | | <el-table-column fixed type="selection" width="55" v-if="tableData.length != 0"></el-table-column> |
| | | <el-table-column fixed label="序号" type="index" width="55" v-if="tableData.length != 0"> |
| | | </el-table-column> |
| | | <el-table-column v-for="item in this.tableHeadFindData" :key="item.id" :formatter="item.formatter" |
| | | :label="item.label" |
| | | :prop="item.prop" :show-overflow-tooltip="true" |
| | | :sortable="item.sortable" |
| | | :width="item.label.length >= 4 ? '150' : item.label.length == 3 ? '120' : '90'" |
| | | align="center"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | <!-- 新增--> |
| | | <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" |
| | | :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible" |
| | | type="add" |
| | | @submit="AddSumbit"> |
| | | </FormTemplateDialog> |
| | | <!-- 修改--> |
| | | <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" |
| | | :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'修改编码信息'" |
| | | :visible.sync="editvisible" |
| | | type="edit" @submit="EditSumbit"></FormTemplateDialog> |
| | | <!-- 已发布数据修改--> |
| | | <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" |
| | | :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" |
| | | :title="'已发布数据更改'" |
| | | :type="edit" |
| | | :visible.sync="DataVisible"></FormTemplateDialog> |
| | | <!-- 发布--> |
| | | <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleFlow"></set-personnel> |
| | | <!-- 停用--> |
| | | <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleDeactivate"></set-personnel> |
| | | <!-- 启用--> |
| | | <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleEnable"></set-personnel> |
| | | <!-- 回收--> |
| | | <set-personnel :parameter="this.parameter" :title="title" :visible.sync="visibleRecovery"></set-personnel> |
| | | <!-- 高级查询--> |
| | | <advanced-query :options="this.options" :visible.sync="findvisible" |
| | | @echoContion="echoContion"></advanced-query> |
| | | <!-- 导出--> |
| | | <MasterTransfer :codeClassifyOid="codeClassifyOid" :limit="page.pageSize" :templateOid="templateOid" :selectRow="selectRow" |
| | | :tableData="tableData" :tableHeadData="tableHeadFindData" |
| | | :visible.sync="dialogPush"></MasterTransfer> |
| | | <!-- 相似项--> |
| | | <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid" |
| | | :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog> |
| | | <div class="block" style="display: flex; justify-content: flex-end"> |
| | | <el-pagination :current-page="page.currentPage" :page-size="page.pageSizes" :page-sizes="page.pageSizes" |
| | | :total="page.total" layout="total, sizes, prev, pager, next, jumper" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange"> |
| | | </el-pagination> |
| | | </div> |
| | | </div> |
| | | <el-table v-if="tableData.length != 0" v-loading="isLoading" :data="tableData" max-height="700" style="" |
| | | @cell-click="handleCellClick" @selection-change="handleSelectionChange" @sort-change="sortChange"> |
| | | <el-table-column fixed type="selection" width="55"></el-table-column> |
| | | <el-table-column fixed label="序号" type="index" width="55"> |
| | | </el-table-column> |
| | | <el-table-column v-for="item in this.tableHeadFindData" :key="item.id" :formatter="item.formatter" :label="item.label" |
| | | :prop="item.prop" :show-overflow-tooltip="true" |
| | | :sortable="item.sortable" |
| | | :width="item.label.length >= 4 ? '150' : item.label.length == 3 ? '120' : '90'" |
| | | align="center"> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-row> |
| | | <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" |
| | | :disabledProp="disabledProp" :templateOid="templateOid" :visible.sync="addvisible" type="add" |
| | | @submit="AddSumbit"> |
| | | </FormTemplateDialog> |
| | | <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" |
| | | :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'修改编码信息'" |
| | | :visible.sync="editvisible" |
| | | type="edit" @submit="EditSumbit"></FormTemplateDialog> |
| | | <FormTemplateDialog :codeClassifyOid="this.codeClassifyOid" :codeRuleOid="this.codeRuleOid" |
| | | :disabledProp="disabledProp" :rowOid="rowOid" :templateOid="templateOid" :title="'已发布数据更改'" |
| | | :type="edit" |
| | | :visible.sync="DataVisible"></FormTemplateDialog> |
| | | <set-personnel :parameter="this.parameter" :visible.sync="visibleFlow"></set-personnel> |
| | | <advanced-query :options="this.options" :visible.sync="findvisible" @echoContion="echoContion"></advanced-query> |
| | | <integration-transfer :data="transferData" :props="transferProps" :visible.sync="dialogPush" |
| | | @save="handelTransferSave"></integration-transfer> |
| | | <ResembleQueryDialog :codeClassifyOid="codeClassifyOid" :codeRuleOid="this.codeRuleOid" :rowOid="rowOid" |
| | | :templateOid="templateOid" :visible.sync="similarVisible"></ResembleQueryDialog> |
| | | </div> |
| | | <div> |
| | | <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible" :resetTable="CrudRend"> |
| | | </BatchImport> |
| | | </div> |
| | | <div class="bottom"> |
| | | <el-collapse v-model="visibleNames" @change="handleCollapse"> |
| | | <el-collapse-item name="1" title="附件列表"> |
| | | <fileInHtml :options="fileOptions"></fileInHtml> |
| | | </el-collapse-item> |
| | | </el-collapse> |
| | | </div> |
| | | </div> |
| | | <div class="block" style="display: flex; justify-content: flex-end"> |
| | | <el-pagination :current-page="page.currentPage" :page-size="page.pageSizes" :page-sizes="page.pageSizes" |
| | | :total="page.total" layout="total, sizes, prev, pager, next, jumper" |
| | | @size-change="handleSizeChange" |
| | | @current-change="handleCurrentChange"> |
| | | </el-pagination> |
| | | </div> |
| | | <BatchImport v-if="batchImportData.visible" v-bind="batchImportData" :visible.sync="batchImportData.visible"> |
| | | </BatchImport> |
| | | </basic-container> |
| | | </template> |
| | | <script> |
| | | import {MasterTable, TableData, FindData} from "@/api/GetItem"; |
| | | import {MasterTable, TableData, FindData, addSaveCode, editSaveCode} from "@/api/GetItem"; |
| | | import {processTS,changeStatus} from "@/api/template/setPersonnel" |
| | | import {listCodeAttributeByClassId} from "@/api/integration/integration.js"; |
| | | import integrationTransfer from "@/views/integration/integrationTransfer"; |
| | | import SetPersonnel from "@/components/template/SetPersonnel"; |
| | | import ResembleQueryDialog from "@/components/FormTemplate/ResembleQueryDialog.vue"; |
| | | import BatchImport from '@/components/BatchImport' |
| | | import {validatenull} from "@/util/validate"; |
| | | import fileInHtml from "@/components/file/inHtml.vue"; |
| | | |
| | | export default { |
| | | components: { |
| | | integrationTransfer, |
| | | SetPersonnel, |
| | | ResembleQueryDialog, |
| | | BatchImport |
| | | BatchImport, |
| | | fileInHtml |
| | | }, |
| | | name: "Crud.vue", |
| | | props: { |
| | |
| | | }, |
| | | data() { |
| | | return { |
| | | searchResults: [], |
| | | //首页右侧搜索 |
| | | WupinFindValue: "", |
| | | //相似项查询 |
| | |
| | | parameter: { |
| | | ids: [], |
| | | code: "", |
| | | type: "PUBLIC", |
| | | type: '', |
| | | // this.visibleDeactivate ?'ENABLE':this.visibleEnable ? 'DISABLE' :this.visibleRecovery ? 'ROLLBACK' :'PUBLIC' |
| | | template: "", |
| | | vars: { |
| | | codeClassifyOid: "" |
| | | codeClassifyOid: "", |
| | | templateOid: "" |
| | | } |
| | | }, |
| | | visibleNames: [], |
| | | //发布 |
| | | visibleFlow: false, |
| | | //停用 |
| | | visibleDeactivate: false, |
| | | //启用 |
| | | visibleEnable: false, |
| | | //回收 |
| | | visibleRecovery: false, |
| | | title: '', |
| | | transferData: [], |
| | | transferProps: { |
| | | key: "oid", |
| | |
| | | datetime: "datetime", |
| | | }, |
| | | tableData: [], |
| | | tableHeight: 'calc(100vh - 330px)', |
| | | DataVisible: false, |
| | | tableHeadData: [], |
| | | items: {}, |
| | |
| | | codeClassifyOid: '' |
| | | }, |
| | | // 主数据按钮 |
| | | masterVrBtnList: [] |
| | | masterVrBtnList: [], |
| | | fileOptions: { |
| | | ownbizOid: "0", |
| | | ownbizBtm: "0", |
| | | fileDocClassify: '!=processAuditSuggest', |
| | | fileDocClassifyName: '', |
| | | hasDownload: true, |
| | | hasUpload: true, |
| | | height: 100 |
| | | } |
| | | }; |
| | | }, |
| | | computed: {}, |
| | | created() { |
| | | }, |
| | | mounted() { |
| | | |
| | | }, |
| | | activated() { |
| | | // this.doLayout(); |
| | | this.$nextTick(() => { |
| | | this.$refs.dataTable.doLayout() |
| | | }) |
| | | }, |
| | | watch: { |
| | | tableHeadDataFateher: { |
| | |
| | | tableDataArray: { |
| | | handler(newval, oldval) { |
| | | this.tableData = newval; |
| | | this.searchResults = newval |
| | | }, |
| | | }, |
| | | tableHeadFindData: { |
| | |
| | | templateOid: { |
| | | handler(newval, oldval) { |
| | | this.parameter.code = newval; |
| | | this.fileOptions.ownbizOid = "0"; |
| | | this.parameter.vars.templateOid = newval |
| | | }, |
| | | deep: true, |
| | | }, |
| | |
| | | } |
| | | }, |
| | | methods: { |
| | | // 发布 |
| | | setHandler() { |
| | | if (this.selectRow.length <= 0) { |
| | | this.$message.warning("请选择一条数据"); |
| | | //展开附件 |
| | | handleCollapse(activeNames) { |
| | | if (activeNames.length > 0) { |
| | | this.tableHeight = 'calc(100vh - 630px)'; |
| | | this.$refs.dataTable.doLayout() |
| | | } else { |
| | | this.userName = localStorage.getItem("username"); |
| | | this.parameter.template = this.userName + "-发布" + "[物品]"; |
| | | this.visibleFlow = true; |
| | | this.tableHeight = 'calc(100vh - 330px)'; |
| | | this.$refs.dataTable.doLayout() |
| | | } |
| | | }, |
| | | openVis(visible) { |
| | | console.log(visible) |
| | | this[visible] = true |
| | | }, |
| | | handelBtnClick(event) { |
| | |
| | | if (uniqueFlag === 'CODEEDIT') return this.editHandler() |
| | | if (uniqueFlag === 'CODEBATCHADD') return this.openBatchImport('batchImportApply') |
| | | if (uniqueFlag === 'CODEIMPORTHISTORY') return this.openBatchImport('historyImport') |
| | | if (uniqueFlag === 'batchApplyCode') return this.openBatchImport('batchApplyCode') |
| | | // 批量申请编码 |
| | | // if(uniqueFlag === 'CODEEDIT') return this.openBatchImport('batchApplyCode') |
| | | if (uniqueFlag === 'CODESTARTPROCESS') return this.setHandler() |
| | | if (uniqueFlag === 'CODEUPREVISION') return this.DataChange() |
| | | if (uniqueFlag === 'CODERECYCLE') return this.huishouHandler() |
| | | if (uniqueFlag === 'CODEEXPORT') return this.openD() |
| | | if (uniqueFlag === 'CODEQUERY') return this.findHandler() |
| | | //停用 |
| | | if (uniqueFlag === 'CODEDISABLE') return this.Deactivate() |
| | | //启用 |
| | | if (uniqueFlag === 'CODEENABLE') return this.Enable() |
| | | //回收 |
| | | if (uniqueFlag === 'CODERECYCLE') return this.Recovery() |
| | | // 相似项查询 |
| | | // if(uniqueFlag === 'CODEEDIT') return this.similarHandler() |
| | | }); |
| | |
| | | this.getListCodeByClassId(); |
| | | }, |
| | | async getListCodeByClassId() { |
| | | this.dialogPush = true; |
| | | this.transferData = []; |
| | | const response = await listCodeAttributeByClassId({ |
| | | codeClassifyId: this.codeClassifyOid, |
| | |
| | | this.transferData = data; |
| | | } |
| | | }, |
| | | handelTransferSave(val) { |
| | | console.log('发布', val) |
| | | }, |
| | | rend() { |
| | | this.tableData = this.tableHeadData; |
| | | }, |
| | | // 发布 |
| | | setHandler() { |
| | | if (this.selectRow.length > 0) { |
| | | let hasEditing = this.selectRow.some(item => item.lcstatus !== 'Editing'); |
| | | let showMessage = true; |
| | | this.selectRow.forEach(item => { |
| | | if (this.selectRow.length === 1 && item.lcstatus !== "Editing" && showMessage) { |
| | | this.$message.warning('只有状态是【编辑中】的数据才可以发起流程'); |
| | | showMessage = false; |
| | | } else if (hasEditing && showMessage) { |
| | | this.$message.warning('您选择的数据全部为【编辑中】才可以发起流程'); |
| | | showMessage = false; |
| | | } else if (showMessage) { |
| | | processTS({templateId: this.templateOid, buttonTypeKey: 'PUBLIC'}).then(res => { |
| | | if (res.data.records != [] && res.data.code != 200) { |
| | | this.userName = localStorage.getItem("username"); |
| | | this.parameter.template = this.userName + "-发布" + "[物品]"; |
| | | this.parameter.type = 'PUBLIC' |
| | | this.title = '流程审批' |
| | | this.visibleFlow = true; |
| | | this.onLoad() |
| | | } else { |
| | | this.$confirm('当前分类没有添加流程模板,是否不用流程审批直接执行?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | this.userName = localStorage.getItem("username"); |
| | | this.parameter.template = this.userName + "-发布" + "[物品]"; |
| | | this.parameter.type = 'PUBLIC' |
| | | this.title = '流程审批' |
| | | this.visibleFlow = true; |
| | | this.onLoad() |
| | | }).catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '已取消' |
| | | }); |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | }); |
| | | } else { |
| | | this.$message.warning('请至少选择一条数据') |
| | | } |
| | | }, |
| | | //停用 |
| | | Deactivate() { |
| | | if (this.selectRow.length <= 0) { |
| | | this.$message.warning("请选择一条数据"); |
| | | } else { |
| | | let hasEditing = this.selectRow.every(item => item.lcstatus == 'Released'); |
| | | let showMessage = true; |
| | | this.selectRow.forEach(item => { |
| | | if (this.selectRow.length === 1 && item.lcstatus === "Disabled" && showMessage) { |
| | | this.$message.warning('选择的数据中状态无需再执行当前操作'); |
| | | showMessage = false; |
| | | } else if (this.selectRow.length >=1 && !hasEditing && showMessage) { |
| | | this.$message.warning('您选择的数据全部为【发布状态】才可以发起流程'); |
| | | showMessage = false; |
| | | } else if (this.selectRow.length > 1 && hasEditing && showMessage) { |
| | | processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { |
| | | if (res.data.records != [] && res.data.code != 200) { |
| | | this.userName = localStorage.getItem("username"); |
| | | this.parameter.template = this.userName + "停用" + "[物品]"; |
| | | this.parameter.type = 'DISABLE' |
| | | this.title = '停用(冻结)编码数据' |
| | | this.visibleDeactivate = true; |
| | | } else { |
| | | if (showMessage) { |
| | | showMessage = false; // 标记已执行过操作 |
| | | this.$confirm('当前分类没有添加流程模板,是否不用流程审批直接执行?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | const index = this.$route.query.id.indexOf('@'); |
| | | const result = this.$route.query.id.substring(0, index); |
| | | const oid = this.selectRow.map(obj => obj.oid).join(","); |
| | | changeStatus({ oid: oid, btmname: result, lcStatus: 'Disabled' }).then(res => { |
| | | console.log(res); |
| | | if(res.data.code == 200 ){ |
| | | this.$message.success('停用成功') |
| | | this.onLoad() |
| | | } |
| | | }); |
| | | }).catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '已取消' |
| | | }); |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | }else { |
| | | this.$message.warning('您选择的数据为【发布状态】才可以发起流程') |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | //启用 |
| | | Enable() { |
| | | if (this.selectRow.length <= 0) { |
| | | this.$message.warning("请选择一条数据"); |
| | | } else { |
| | | let hasEditing = this.selectRow.every(item => item.lcstatus == 'Disabled'); |
| | | console.log('hasEditing',hasEditing) |
| | | let showMessage = true; |
| | | this.selectRow.forEach(item => { |
| | | if (this.selectRow.length === 1 && item.lcstatus !== "Disabled" && showMessage) { |
| | | this.$message.warning('选择的数据中状态无需再执行当前操作'); |
| | | showMessage = false; |
| | | } else if (this.selectRow.length >=1 && hasEditing && showMessage) { |
| | | processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { |
| | | if (res.data.records != [] && res.data.code != 200) { |
| | | this.userName = localStorage.getItem("username"); |
| | | this.parameter.template = this.userName + "启用" + "[物品]"; |
| | | this.parameter.type = 'Released' |
| | | this.title = '启用编码数据' |
| | | this.visibleDeactivate = true; |
| | | } else { |
| | | if (showMessage) { |
| | | showMessage = false; // 标记已执行过操作 |
| | | this.$confirm('当前分类没有添加流程模板,是否不用流程审批直接执行?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | const index = this.$route.query.id.indexOf('@'); |
| | | const result = this.$route.query.id.substring(0, index); |
| | | const oid = this.selectRow.map(obj => obj.oid).join(","); |
| | | changeStatus({ oid: oid, btmname: result, lcStatus: 'Released' }).then(res => { |
| | | console.log(res); |
| | | if(res.data.code == 200 ){ |
| | | this.$message.success('启用成功') |
| | | this.onLoad() |
| | | } |
| | | }); |
| | | }).catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '已取消' |
| | | }); |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | } else if (this.selectRow.length >1 && !hasEditing && showMessage) { |
| | | this.$message.warning('您选择的数据全部为【停用状态】才可以发起流程'); |
| | | showMessage = false; |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | //回收 |
| | | Recovery() { |
| | | if (this.selectRow.length <= 0) { |
| | | this.$message.warning("请选择一条数据"); |
| | | } else { |
| | | // 编辑中-只能发布,不能回收 |
| | | // 审核中-什么都不能做 |
| | | // 已发布-停用、回收 |
| | | // 停用-只能启用、回收 |
| | | const disabledCount = this.selectRow.filter(item => item.lcstatus === 'Disabled').length; |
| | | const releasedCount = this.selectRow.filter(item => item.lcstatus === 'Released').length; |
| | | console.log('hasEditing',disabledCount,releasedCount) |
| | | let showMessage = true; |
| | | this.selectRow.forEach(item => { |
| | | if (this.selectRow.length === 1 && item.lcstatus == "TakeBack" && showMessage) { |
| | | this.$message.warning('选择的数据中状态无需再执行当前操作'); |
| | | showMessage = false; |
| | | } else if (this.selectRow.length >=1 && (disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) { |
| | | //disabledCount 和 releasedCount 中任意一个等于 this.selectRow 数组的长度则表示全部是同一种状态,返回 true 如果disabledCount 和 releasedCount 都大于0,则表示既有Disabled也有Released返回 true |
| | | processTS({ templateId: this.templateOid, buttonTypeKey: 'PUBLIC' }).then(res => { |
| | | if (res.data.records != [] && res.data.code != 200) { |
| | | this.userName = localStorage.getItem("username"); |
| | | this.parameter.template = this.userName + "回收" + "[物品]"; |
| | | this.parameter.type = 'TakeBack' |
| | | this.title = '回收编码数据' |
| | | this.visibleDeactivate = true; |
| | | } else { |
| | | if (showMessage) { |
| | | showMessage = false; // 标记已执行过操作 |
| | | this.$confirm('当前分类没有添加流程模板,是否不用流程审批直接执行?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | const index = this.$route.query.id.indexOf('@'); |
| | | const result = this.$route.query.id.substring(0, index); |
| | | const oid = this.selectRow.map(obj => obj.oid).join(","); |
| | | changeStatus({ oid: oid, btmname: result, lcStatus: 'TakeBack' }).then(res => { |
| | | console.log(res); |
| | | if(res.data.code == 200 ){ |
| | | this.$message.success('回收成功') |
| | | this.onLoad() |
| | | } |
| | | }); |
| | | }).catch(() => { |
| | | this.$message({ |
| | | type: 'info', |
| | | message: '已取消' |
| | | }); |
| | | }); |
| | | } |
| | | } |
| | | }); |
| | | } else if (this.selectRow.length >=1 && !(disabledCount === this.selectRow.length || releasedCount === this.selectRow.length) || (disabledCount > 0 && releasedCount > 0) && showMessage) { |
| | | this.$message.warning('您选择的数据全部为【停用状态或发布状态】才可以发起流程'); |
| | | showMessage = false; |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | handleSizeChange(val) { |
| | | this.isLoading = true; |
| | |
| | | this.editShow = column.property; |
| | | this.rowOid = row.oid; |
| | | }, |
| | | handleRowClick(row, column) { |
| | | this.fileOptions.ownbizOid = row.oid; |
| | | this.fileOptions.ownbizBtm = row.btmname; |
| | | this.$refs.dataTable.toggleRowSelection(row); |
| | | }, |
| | | //删除 |
| | | enumDeleteRow(row) { |
| | | this.tableData.splice(row, 1); |
| | |
| | | CrudHeaderRend() { |
| | | if (this.codeClassifyOid != "") { |
| | | MasterTable({ |
| | | codeClassifyOid: this.codeClassifyOid, |
| | | functionId: 5, |
| | | codeClassifyOid: this.codeClassifyOid |
| | | }).then((res) => { |
| | | this.options = res.data.tableDefineVO.seniorQueryColumns; |
| | | this.List = res.data.tableDefineVO.cols[0]; |
| | |
| | | await TableData({ |
| | | templateOid: this.templateOid, |
| | | codeClassifyOid: this.codeClassifyOid, |
| | | page: val.currentPage, |
| | | limit: val.pageSize, |
| | | page: this.page.currentPage, |
| | | limit: this.page.pageSize, |
| | | }).then((res) => { |
| | | this.data = res.data.data; |
| | | this.tableData = res.data.data; |
| | | }); |
| | | }, |
| | | //多选 |
| | | handleSelectionChange(row) { |
| | | if (this.row) { |
| | | this.rowOid = row[0].oid; |
| | | } else { |
| | | this.rowOid = ""; |
| | | } |
| | | this.selectRow = row; |
| | | handleSelectionChange(list) { |
| | | this.selectRow = list; |
| | | this.parameter.ids = []; |
| | | row.forEach((item) => { |
| | | list.forEach((item) => { |
| | | this.parameter.ids.push(item.oid); |
| | | }); |
| | | console.log(' this.parameter.ids', this.parameter.ids) |
| | | console.log(this.selectRow) |
| | | }, |
| | | //选择 |
| | | handleSelection(list, row) { |
| | | this.fileOptions.ownbizOid = row.oid; |
| | | this.fileOptions.ownbizBtm = row.btmname; |
| | | |
| | | }, |
| | | //选择全部 |
| | | handleSelectionAll() { |
| | | this.fileOptions.ownbizOid = '0'; |
| | | this.fileOptions.ownbizBtm = '0'; |
| | | }, |
| | | //编辑 |
| | | editHandler() { |
| | |
| | | } |
| | | }, |
| | | //增加保存 |
| | | AddSumbit() { |
| | | AddSumbit(val) { |
| | | this.addvisible = false; |
| | | console.log(val) |
| | | addSaveCode(val).then(res => { |
| | | console.log(res) |
| | | this.$nextTick(() => { |
| | | this.onLoad() |
| | | }) |
| | | }) |
| | | }, |
| | | EditSumbit(val) { |
| | | this.editvisible = false; |
| | | console.log(val) |
| | | editSaveCode(val).then(res => { |
| | | console.log(res) |
| | | this.$nextTick(() => { |
| | | this.onLoad() |
| | | }) |
| | | }) |
| | | }, |
| | | openBatchImport(type) { |
| | | this.batchImportData.visible = true |
| | | this.batchImportData.type = type |
| | | this.batchImportData.codeClassifyOid = this.codeClassifyOid |
| | | }, |
| | | //输入回车搜索 |
| | | tableFindInp() { |
| | | if (this.WupinFindValue.trim() === '') { |
| | | this.$message.warning('输入值不能为空') |
| | | return; |
| | | } |
| | | this.tableData = this.searchResults.filter(item => { |
| | | if (typeof item.name === 'string') { |
| | | return item.name.includes(this.WupinFindValue); |
| | | } else { |
| | | return false; // item.name不是字符串类型,返回false |
| | | } |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | } |
| | | }; |
| | | </script> |
| | | |
| | |
| | | /deep/ .el-button { |
| | | margin: 0 10px 10px 0; |
| | | } |
| | | |
| | | .main { |
| | | display: flex; |
| | | flex-direction: column; |
| | | height: calc(100vh - 150px); |
| | | min-height: 400px; |
| | | } |
| | | |
| | | .top { |
| | | overflow-y: scroll; |
| | | min-height: 55%; |
| | | } |
| | | |
| | | .bottom { |
| | | margin-top: 20px; |
| | | overflow-y: scroll; |
| | | } |
| | | |
| | | .el-collapse-item__content { |
| | | padding-bottom: 0; |
| | | } |
| | | </style> |