| | |
| | | <template> |
| | | <div v-if="+currentLevelInfo.type!==4" style="height: 100%"> |
| | | <a-tabs style="height: 100%" v-model="activeTabKey" v-if="Object.keys(currentLevelInfo).length>0" |
| | | @change="handleTabChange"> |
| | | <div v-if="currentLevelInfo.type!==4"> |
| | | <a-tabs v-model="activeTabKey" v-if="Object.keys(currentLevelInfo).length>0" @change="handleTabChange"> |
| | | <a-tab-pane :key="1" tab="属性信息" v-if="+currentLevelInfo.type===1"> |
| | | <ProductInfo :currentLevelDetails="currentLevelInfo.entity" :size="containerSize"/> |
| | | </a-tab-pane> |
| | |
| | | <ProcessStepInfo :currentLevelDetails="currentLevelInfo.entity" :size="containerSize"/> |
| | | </a-tab-pane> |
| | | |
| | | <!--系统参数配置中若参数为1时才展示对应层级的刀具列表--> |
| | | <a-tab-pane :key="2" tab="刀具列表" |
| | | v-if="+currentLevelInfo.type===5&&isProcessHasCutterList||+currentLevelInfo.type===6&&isProcessStepHasCutterList"> |
| | | <CutterTableList ref="cutterTableListRef" :currentLevelInfo="currentLevelInfo" :size="containerSize"/> |
| | | <a-tab-pane :key="2" tab="刀具信息" v-if="+currentLevelInfo.type===5||+currentLevelInfo.type===6"> |
| | | <CutterInfo :currentLevelDetails="currentLevelInfo.entity" :size="containerSize"/> |
| | | </a-tab-pane> |
| | | |
| | | <template v-if="currentLevelInfo.hasOwnProperty('attributionType')"> |
| | |
| | | import ComponentInfo from './Component/ComponentInfo' |
| | | import PartInfo from './Part/PartInfo' |
| | | import ProcessInfo from './Process/ProcessInfo' |
| | | import ProcessStepInfo from './ProcessStep/ProcessStepInfo' |
| | | import CutterTableList from './Cutter/CutterTableList' |
| | | import DocumentInfo from '../../../common/DocumentInfo' |
| | | import DocumentVersionTableList from '../../../common/DocumentVersionTableList' |
| | | import UseDocumentEquipmentTableList from './Document/UseNcDocumentEquipmentTableList' |
| | | import ProcessStepInfo from './ProcessStep/ProcessStepInfo' |
| | | import FilePreview from '../../../common/FilePreview' |
| | | import TableContextMenu from '../../../common/TableContextMenu' |
| | | import { getAction } from '@/api/manage' |
| | | import CutterInfo from '@views/dnc/base/modules/ProductStructure/Cutter/CutterInfo.vue' |
| | | import dncApi from '@/api/dnc' |
| | | |
| | | export default { |
| | | name: 'ProductStructureMainBottom', |
| | | components: { |
| | | CutterTableList, |
| | | CutterInfo, |
| | | TableContextMenu, |
| | | FilePreview, |
| | | ProcessStepInfo, |
| | |
| | | return { |
| | | activeTabKey: 1, |
| | | containerSize: 'small', |
| | | isProcessHasCutterList: false, |
| | | isProcessStepHasCutterList: false, |
| | | currentLevelInfo: {}, |
| | | currentRightClickedTableRowInfo: {}, |
| | | hasLoadedDataTabKeyArray: [] |
| | |
| | | this.$bus.$on('sendCurrentClickedDocumentInfo', this.receiveCurrentLevelInfo) |
| | | this.$bus.$on('sendCurrentTreeNodeInfo', this.receiveCurrentLevelInfo) |
| | | this.$bus.$on('reloadMainBottomTableData', this.reloadMainBottomTableData) |
| | | this.getCutterListDisplayPermission('dnc_cutter_process', 'isProcessHasCutterList') |
| | | this.getCutterListDisplayPermission('dnc_cutter_step', 'isProcessStepHasCutterList') |
| | | }, |
| | | methods: { |
| | | /** |
| | | * 获取刀具列表在工序和工步层级的展示权限 |
| | | * @param settingKey 各层级展示权限key |
| | | * @param dataProperty 组件data中的属性值用来控制是否展示 |
| | | */ |
| | | getCutterListDisplayPermission(settingKey, dataProperty) { |
| | | getAction(`/system/sysParams/query/by/settingKey?settingKey=${settingKey}`).then(res => { |
| | | if (res.success) { |
| | | this[dataProperty] = res.result.settingValue === '1' |
| | | } |
| | | }) |
| | | }, |
| | | |
| | | /** |
| | | * 接收树组件以及表格传来的当前选中或点击的项信息 |
| | | * @param levelInfo 当前层级信息 |
| | | */ |
| | | receiveCurrentLevelInfo(levelInfo) { |
| | | this.currentLevelInfo = levelInfo |
| | | const { id, type } = levelInfo |
| | | dncApi.getProductStructureTreeNodeEntityApi({ id, type }) |
| | | .then(res => { |
| | | if (res.success) { |
| | | console.log('res-------------', res) |
| | | this.currentLevelInfo = Object.assign(levelInfo, { entity: res.result[0] }) |
| | | } |
| | | }) |
| | | this.activeTabKey = 1 |
| | | this.hasLoadedDataTabKeyArray = [] |
| | | }, |
| | | |
| | | /** |
| | | * tab栏切换时触发 |
| | | * @param activeTabKey 当前激活的tabKey |
| | | */ |
| | | handleTabChange(activeTabKey) { |
| | | if (!this.hasLoadedDataTabKeyArray.includes(activeTabKey)) { |
| | | switch (activeTabKey) { |
| | | case 2: |
| | | if (this.currentLevelInfo.hasOwnProperty('attributionType')) { |
| | | console.log('ref', this.$refs.filePreviewRef) |
| | | this.$nextTick(() => this.$refs.filePreviewRef.getFilePreviewByApi()) |
| | | } else { |
| | | this.$nextTick(() => this.$refs.cutterTableListRef.setQueryParamAndLoadData(1)) |
| | | } |
| | | this.$nextTick(() => this.$refs.filePreviewRef.getFilePreviewByApi()) |
| | | break |
| | | case 3: |
| | | this.$nextTick(() => this.$refs.documentVersionTableRef.loadData()) |
| | |
| | | } |
| | | |
| | | /deep/ .ant-tabs-tabpane { |
| | | overflow: hidden auto; |
| | | overflow: auto; |
| | | } |
| | | </style> |