1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627 |
- <template>
- <span>
- <audit-form-top-banner :handel-save-form="saveForm" @handelSaveForm="saveForm">
- <div class="title_sd-detail-form_common">数据分类授权详情</div>
- <table>
- <tr>
- <td style="border:none">
- <audit-advanced-group
- :expand="maintainExpand"
- :expand-str="'maintainExpand'"
- :group-label="'数据分类列表'"
- tablestyle="''"
- @changedClick="changedClick"
- >
- <template>
- <div :class="$style.wrapper">
- <div :class="$style.btnselect">
- <a-button type="link" :class="$style.batchselect" @click="flRelSelect">
- <a-icon type="check-circle" :theme="'filled'" />
- 添加
- </a-button>
- </div>
- </div>
- </template>
- <template>
- <XmChildTable
- ref="classIndexData"
- v-model="maintaindata"
- :label="null"
- :columns="columns"
- :fields="classifyFileds"
- :addbuttonvisiable="false"
- @deleted="deletedClassList"
- >
- <template v-slot:categoryName="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:categoryId="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:categoryDesc="{ field, text, index, value }">
- {{ text }}
- </template>
- </XmChildTable>
- </template>
- </audit-advanced-group>
- </td>
- </tr>
- <!-- <tr>
- <SdTable
- v-if="maintainExpand && maintaindata.length > 0"
- ref="maintaintable"
- :row-key="(record, index) => index"
- :loading="false"
- class="maintaintable"
- :columns="columns"
- :data-source="maintaindata"
- :pagination="false"
- :bordered="true"
- />
- </tr> -->
- </table>
- <!-- 审搜索引 -->
- <table>
- <tr>
- <td>
- <audit-advanced-group
- :expand="classShow"
- :expand-str="'classShow'"
- :group-label="'审搜索引'"
- tablestyle="''"
- @changedClick="changedClick"
- ><template>
- <template>
- <div :class="$style.wrapper">
- <div :class="$style.btnselect">
- <a-button type="link" :class="$style.batchselect" @click="inedxRelSelect">
- <a-icon type="check-circle" :theme="'filled'" />
- 添加
- </a-button>
- </div>
- </div>
- </template>
- <XmChildTable
- ref="classIndexData"
- v-model="classIndexData"
- :label="null"
- :columns="indexColumns"
- :fields="classIndexFileds"
- :addbuttonvisiable="false"
- >
- <template v-slot:indexName="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:id="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:indexRemark="{ field, text, index, value }">
- {{ text }}
- </template>
- </XmChildTable>
- </template>
- </audit-advanced-group>
- </td></tr
- >
- <tr>
- <!-- <SdTable
- v-if="classShow && classIndexData.length > 0"
- ref="classIndexData"
- :row-key="(record, index) => index"
- :loading="false"
- class="maintaintable"
- :columns="indexColumns"
- :data-source="classIndexData"
- :pagination="false"
- :bordered="true"
- >
- </SdTable> -->
- </tr>
- </table>
- <!-- 指定公司 -->
- <table>
- <tr v-if="unit.length > 1">
- <td>
- <audit-advanced-group
- :expand="companyExpand"
- :expand-str="'companyExpand'"
- :group-label="'指定公司'"
- tablestyle="''"
- @changedClick="changedClick"
- ><template>
- <template>
- <div :class="$style.wrapper">
- <div v-show="companyExpand" :class="$style.btnselect">
- <a-button type="link" :class="$style.batchselect" @click="companylSelect">
- <a-icon type="check-circle" :theme="'filled'" />
- 添加
- </a-button>
- </div>
- </div>
- </template>
- <XmChildTable
- ref="cdata"
- v-model="companyData"
- :label="null"
- :columns="companycolumns"
- :fields="
- [
- {
- caption: '序号',
- name: 'sortNum',
- dataType: 'sortNum',
- },
- ].concat(unit)
- "
- :addbuttonvisiable="false"
- >
- <template v-slot:unitName="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:unitCode="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:empowerType="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'cdata_empowerType_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- :data="'cdata'"
- lx="type"
- @change="setchange"
- />
- </template>
- <template v-slot:startDate="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'cdata_startDate_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- :data="'cdata'"
- lx="stime"
- @change="setchange"
- />
- </template>
- <template v-slot:endDate="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'cdata_endDate_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- :data="'cdata'"
- lx="etime"
- @change="setchange"
- />
- </template> </XmChildTable
- ></template>
- </audit-advanced-group> </td
- ></tr>
- </table>
- <!-- 授权单位 -->
- <!-- <table v-if='false'>
- <tr v-if="unit.length > 1">
- <td>
- <audit-advanced-group
- :expand="unitExpand"
- :expand-str="'unitExpand'"
- :group-label="'授权单位'"
- tablestyle="''"
- @changedClick="changedClick"
- ><template>
- <template>
- <div :class="$style.wrapper">
- <div v-show="unitExpand" :class="$style.btnselect">
- <a-button type="link" :class="$style.batchselect" @click="dwRelSelect">
- <a-icon type="check-circle" :theme="'filled'" />
- 添加
- </a-button>
- </div>
- </div>
- </template>
- <XmChildTable
- ref="udata"
- v-model="unitdata"
- :label="null"
- :columns="unitcolumns"
- :fields="
- [
- {
- caption: '序号',
- name: 'sortNum',
- dataType: 'sortNum',
- },
- ].concat(unit)
- "
- :addbuttonvisiable="false"
- >
- <template v-slot:unitName="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:unitCode="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:empowerType="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'udata_empowerType_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- lx="type"
- @change="setchange"
- />
- </template>
- <template v-slot:startDate="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'udata_startDate_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- lx="stime"
- @change="setchange"
- />
- </template>
- <template v-slot:endDate="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'udata_endDate_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- lx="etime"
- @change="setchange"
- />
- </template> </XmChildTable
- ></template>
- </audit-advanced-group> </td
- ></tr>
- </table> -->
- <!-- 授权人员 -->
- <table>
- <tr v-if="personal.length > 1">
- <td
- ><audit-advanced-group
- :expand="personalExpand"
- :expand-str="'personalExpand'"
- :group-label="'授权人员'"
- tablestyle="''"
- @changedClick="changedClick"
- ><template>
- <template>
- <div :class="$style.wrapper">
- <div v-show="personalExpand" :class="$style.btnselect">
- <a-button type="link" :class="$style.batchselect" @click="pRelSelect">
- <a-icon type="check-circle" :theme="'filled'" />
- 添加
- </a-button>
- </div>
- </div>
- </template>
- <XmChildTable
- ref="pdata"
- v-model="personaldata"
- :label="null"
- :columns="personalcolumns"
- :fields="
- [
- {
- caption: '序号',
- name: 'sortNum',
- dataType: 'sortNum',
- },
- ].concat(personal)
- "
- :addbuttonvisiable="false"
- >
- <template v-slot:userName="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:userId="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:userUnit="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:empowerType="{ field, text, index, value }">
- <audit-warrant-input-p
- :ref="'pdata_empowerType_' + index"
- :data="'pdata'"
- :value="value[index]"
- :index="index"
- :field="field"
- lx="type"
- @change="setchange"
- />
- </template>
- <template v-slot:startDate="{ field, text, index, value }">
- <audit-warrant-input-p
- :ref="'pdata_startDate_' + index"
- :data="'pdata'"
- :value="value[index]"
- :index="index"
- :field="field"
- lx="stime"
- @change="setchange"
- />
- </template>
- <template v-slot:endDate="{ field, text, index, value }">
- <audit-warrant-input-p
- :ref="'pdata_endDate_' + index"
- :data="'pdata'"
- :value="value[index]"
- :index="index"
- :field="field"
- lx="etime"
- @change="setchange"
- />
- </template> </XmChildTable></template
- ></audit-advanced-group> </td
- ></tr>
- </table>
- <!-- 授权项目 -->
- <table>
- <tr v-if="projectTable.length > 1">
- <td
- ><audit-advanced-group
- :expand="projectExpand"
- :expand-str="'projectExpand'"
- :group-label="'项目授权'"
- tablestyle="''"
- @changedClick="changedClick"
- ><template>
- <template>
- <div :class="$style.wrapper">
- <div v-show="projectExpand" :class="$style.btnselect">
- <a-button type="link" :class="$style.batchselect" @click="projectShow = true">
- <a-icon type="check-circle" :theme="'filled'" />
- 添加
- </a-button>
- </div>
- </div>
- </template>
- <XmChildTable
- ref="prodata"
- v-model="projectData"
- :label="null"
- :columns="projectColums"
- :fields="
- [
- {
- caption: '序号',
- name: 'sortNum',
- dataType: 'sortNum',
- },
- ].concat(projectTable)
- "
- :addbuttonvisiable="false"
- >
- <template v-slot:projectName="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:projectUnit="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:empowerType="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'prodata_empowerType_' + index"
- :value="value[index]"
- :index="index"
- :data="'prodata'"
- :field="field"
- lx="type"
- @change="setchange"
- />
- </template>
- <template v-slot:startDate="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'prodata_startDate_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- :data="'prodata'"
- lx="stime"
- @change="setchange"
- />
- </template>
- <template v-slot:endDate="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'prodata_endDate_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- :data="'prodata'"
- lx="etime"
- @change="setchange"
- />
- </template>
- </XmChildTable> </template
- ></audit-advanced-group> </td
- ></tr>
- </table>
- <!-- 授权角色 -->
- <table>
- <tr v-if="roleTable.length > 1">
- <td
- ><audit-advanced-group
- :expand="roleExpand"
- :expand-str="'roleExpand'"
- :group-label="'授权角色'"
- tablestyle="''"
- @changedClick="changedClick"
- ><template>
- <template>
- <div :class="$style.wrapper">
- <div v-show="roleExpand" :class="$style.btnselect">
- <a-button type="link" :class="$style.batchselect" @click="roleShow = true">
- <a-icon type="check-circle" :theme="'filled'" />
- 添加
- </a-button>
- </div>
- </div>
- </template>
- <XmChildTable
- ref="rdata"
- v-model="roleData"
- :label="null"
- :columns="roleColumns"
- :fields="
- [
- {
- caption: '序号',
- name: 'sortNum',
- dataType: 'sortNum',
- },
- ].concat(roleTable)
- "
- :addbuttonvisiable="false"
- >
- <template v-slot:roleName="{ field, text, index, value }">
- {{ text }}
- </template>
- <template v-slot:empowerType="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'rdata_empowerType_' + index"
- :value="value[index]"
- :index="index"
- :data="'rdata'"
- :field="field"
- lx="type"
- @change="setchange"
- />
- </template>
- <template v-slot:startDate="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'rdata_startDate_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- :data="'rdata'"
- lx="stime"
- @change="setchange"
- />
- </template>
- <template v-slot:endDate="{ field, text, index, value }">
- <audit-warrant-input
- :ref="'rdata_endDate_' + index"
- :value="value[index]"
- :index="index"
- :field="field"
- :data="'rdata'"
- lx="etime"
- @change="setchange"
- />
- </template>
- </XmChildTable> </template
- ></audit-advanced-group> </td
- ></tr>
- </table>
- <div v-show="false">
- <SdGroupPicker
- ref="dwRelSelect"
- v-model="mainSendUnit"
- :root-node="rootNodeData"
- :single="false"
- :read-only="false"
- @change="changeunit"
- />
- </div>
- <div v-show="false">
- <SdGroupPicker
- ref="cRelSelect"
- v-model="companyUnit"
- :root-node="rootNodeData"
- :single="false"
- :read-only="false"
- @change="changecompany"
- />
- </div>
- <div v-show="false">
- <SdUserPicker
- ref="pRelSelect"
- v-model="mainSendPersonal"
- :single="false"
- :root-node="rootNodeData"
- :read-only="false"
- @change="changep"
- />
- </div>
- </audit-form-top-banner>
- <roleModal v-model="roleShow" @selectRoleList="changeRole" />
- <projectModal v-model="projectShow" @selectProject="changeProject" />
- <AuditClassIndexTable
- ref="indexSelect"
- :visible="indexTableShow"
- :class-data="maintaindata"
- @listMxSelected="listMxSelected"
- />
- <auditClassTable
- :select-type="'radio'"
- :visible="flTableShow"
- @listMxSelected="classListMxSelected"
- >
- </auditClassTable>
- </span>
- </template>
- <script>
- import { Modal, Message } from 'ant-design-vue'
- import crossWindowWatcher from '@/common/services/cross-window-watcher'
- import axios from '@/common/services/axios-instance'
- import auditFormTopBanner from '../../components/audit-form-top-banner'
- import auditAdvancedGroup from '../../components/audit-advanced-group.vue'
- import auditAdvancedGroupMixins from '../../components/audit-advanced-group-mixins'
- import auditWarrantInput from './audit-warrant-input.vue'
- import auditWarrantInputP from '../dataMarket/audit-warrant-input.vue'
- import auditMaintainService from './data-config'
- import SdGroupPicker from '@/common/components/sd-group-picker.vue'
- import SdUserPicker from '@/common/components/sd-user-picker.vue'
- import XmChildTable from '../../components/xm-child-table.vue'
- import roleModal from './role-modal.vue'
- import projectModal from './project-modal.vue'
- import moment from 'moment'
- import AuditClassIndexTable from '../dataUphold/audit-class-index-table.vue'
- import auditClassTable from './audit-class-table.vue'
- import { getUserInfo } from '@/common/store-mixin'
- export default {
- name: 'AuditDataEmpowerInfo',
- metaInfo: {
- title: '数据分类授权',
- },
- components: {
- SdGroupPicker,
- SdUserPicker,
- XmChildTable,
- auditFormTopBanner,
- auditAdvancedGroup,
- auditWarrantInput,
- auditWarrantInputP,
- roleModal,
- projectModal,
- AuditClassIndexTable,
- auditClassTable,
- },
- mixins: [auditAdvancedGroupMixins],
- data() {
- return {
- mainSendUnit: [],
- companyUnit: [],
- mainSendPersonal: [],
- mainSendRole: [],
- selectedRowKeys: [],
- selectid: '',
- maintaindata: [],
- unitdata: [],
- personaldata: [],
- maintainExpand: true,
- unitExpand: true,
- personalExpand: true,
- roleExpand: true,
- projectExpand: true,
- personal: [],
- unit: [],
- indexTableShow: false,
- // 分类字段 分类名称 编号 描述
- classifyFileds: [
- {
- caption: '序号',
- name: 'sortNum',
- dataType: 'sortNum',
- },
- {
- // 分类名称
- caption: '分类名称',
- name: 'categoryName',
- dataType: 'string',
- },
- {
- // 分类编号
- caption: '分类编号',
- name: 'categoryId',
- dataType: 'string',
- },
- {
- // 分类描述
- caption: '分类描述',
- name: 'categoryDesc',
- dataType: 'string',
- },
- {
- dataIndex: 'indexId',
- name: 'indexId',
- dataType: 'string',
- sdHidden: true,
- },
- ],
- columns: [
- {
- title: '序号',
- dataIndex: 'sortNum',
- key: 'sortNum',
- customRender: (text, record, index) => `${index + 1}`,
- width: '80px',
- },
- {
- title: '分类名称',
- dataIndex: 'categoryName',
- key: 'categoryName',
- width: '30%',
- },
- {
- title: '分类编号',
- dataIndex: 'categoryId',
- key: 'categoryId',
- width: '30%',
- },
- {
- title: '分类描述',
- dataIndex: 'categoryDesc',
- key: 'categoryDesc',
- width: '30%',
- },
- {
- dataIndex: 'indexId',
- sdHidden: true,
- },
- ],
- unitcolumns: [
- {
- title: '序号',
- dataIndex: 'sortNum',
- customRender: (text, record, index) => `${index + 1}`,
- width: '80px',
- },
- {
- title: '单位编号',
- dataIndex: 'unitCode',
- sdHidden: false,
- },
- {
- title: '单位名称',
- dataIndex: 'unitName',
- sdHidden: false,
- },
- {
- title: '授权类型',
- dataIndex: 'empowerType',
- sdHidden: false,
- },
- {
- title: '开始日期',
- dataIndex: 'startDate',
- sdHidden: false,
- },
- {
- title: '结束日期',
- dataIndex: 'endDate',
- sdHidden: false,
- },
- {
- dataIndex: 'id',
- sdHidden: true,
- },
- {
- dataIndex: 'unitOpt',
- sdHidden: true,
- },
- {
- dataIndex: 'unitId',
- sdHidden: true,
- },
- {
- dataIndex: 'selectOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'belongedOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'docType',
- sdHidden: true,
- },
- {
- dataIndex: 'maintainId',
- sdHidden: true,
- },
- {
- dataIndex: 'applyId',
- sdHidden: true,
- },
- {
- dataIndex: 'indexId',
- sdHidden: true,
- },
- ],
- personalcolumns: [
- {
- title: '序号',
- dataIndex: 'sortNum',
- customRender: (text, record, index) => `${index + 1}`,
- width: '80px',
- },
- {
- title: '用户名',
- dataIndex: 'userName',
- sdHidden: false,
- },
- {
- title: '用户工号',
- dataIndex: 'userId',
- sdHidden: false,
- },
- {
- title: '所属单位',
- dataIndex: 'userUnit',
- sdHidden: false,
- },
- {
- title: '授权类型',
- dataIndex: 'empowerType',
- sdHidden: false,
- },
- {
- title: '开始日期',
- dataIndex: 'startDate',
- sdHidden: false,
- },
- {
- title: '结束日期',
- dataIndex: 'endDate',
- sdHidden: false,
- },
- {
- dataIndex: 'id',
- sdHidden: true,
- },
- {
- dataIndex: 'userOpt',
- sdHidden: true,
- },
- {
- dataIndex: 'selectOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'belongedOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'docType',
- sdHidden: true,
- },
- {
- dataIndex: 'maintainId',
- sdHidden: true,
- },
- {
- dataIndex: 'applyId',
- sdHidden: true,
- },
- {
- dataIndex: 'indexId',
- sdHidden: true,
- },
- ],
- roleColumns: [
- {
- title: '序号',
- dataIndex: 'sortNum',
- customRender: (text, record, index) => `${index + 1}`,
- width: '80px',
- },
- {
- title: '授权类型',
- dataIndex: 'empowerType',
- sdHidden: false,
- },
- {
- title: '开始日期',
- dataIndex: 'startDate',
- sdHidden: false,
- },
- {
- title: '结束日期',
- dataIndex: 'endDate',
- sdHidden: false,
- },
- {
- dataIndex: 'id',
- sdHidden: true,
- },
- {
- dataIndex: 'roleId',
- sdHidden: true,
- },
- {
- dataIndex: 'selectOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'belongedOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'docType',
- sdHidden: true,
- },
- {
- dataIndex: 'maintainId',
- sdHidden: true,
- },
- {
- dataIndex: 'applyId',
- sdHidden: true,
- },
- {
- dataIndex: 'roleOpt',
- sdHidden: true,
- },
- {
- dataIndex: 'indexId',
- sdHidden: true,
- },
- ],
- projectColums: [
- {
- title: '序号',
- dataIndex: 'sortNum',
- customRender: (text, record, index) => `${index + 1}`,
- width: '80px',
- },
- {
- title: '授权类型',
- dataIndex: 'empowerType',
- sdHidden: false,
- },
- {
- title: '开始日期',
- dataIndex: 'startDate',
- sdHidden: false,
- },
- {
- title: '结束日期',
- dataIndex: 'endDate',
- sdHidden: false,
- },
- {
- dataIndex: 'id',
- sdHidden: true,
- },
- {
- dataIndex: 'roleId',
- sdHidden: true,
- },
- {
- dataIndex: 'selectOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'belongedOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'docType',
- sdHidden: true,
- },
- {
- dataIndex: 'maintainId',
- sdHidden: true,
- },
- {
- dataIndex: 'applyId',
- sdHidden: true,
- },
- {
- dataIndex: 'roleOpt',
- sdHidden: true,
- },
- {
- dataIndex: 'projectOpt',
- sdHidden: true,
- },
- {
- dataIndex: 'projectId',
- sdHidden: true,
- },
- {
- dataIndex: 'indexId',
- sdHidden: true,
- },
- ],
- roleData: [],
- roleTable: [],
- roleShow: false,
- projectShow: false,
- projectData: [],
- projectTable: [],
- companyExpand: true,
- companyData: [],
- companycolumns: [
- {
- title: '序号',
- dataIndex: 'sortNum',
- customRender: (text, record, index) => `${index + 1}`,
- width: '80px',
- },
- {
- title: '公司名称',
- dataIndex: 'unitName',
- sdHidden: false,
- },
- {
- title: '公司编号',
- dataIndex: 'unitCode',
- sdHidden: false,
- },
- {
- title: '授权类型',
- dataIndex: 'empowerType',
- sdHidden: true,
- },
- {
- title: '开始日期',
- dataIndex: 'startDate',
- sdHidden: true,
- },
- {
- title: '结束日期',
- dataIndex: 'endDate',
- sdHidden: true,
- },
- {
- dataIndex: 'id',
- sdHidden: true,
- },
- {
- dataIndex: 'unitOpt',
- sdHidden: true,
- },
- {
- dataIndex: 'unitId',
- sdHidden: true,
- },
- {
- dataIndex: 'selectOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'belongedOrgId',
- sdHidden: true,
- },
- {
- dataIndex: 'docType',
- sdHidden: true,
- },
- {
- dataIndex: 'maintainId',
- sdHidden: true,
- },
- {
- dataIndex: 'applyId',
- sdHidden: true,
- },
- {
- dataIndex: 'indexId',
- sdHidden: true,
- },
- ],
- classIndexFileds: [
- {
- caption: '序号',
- name: 'sortNum',
- dataType: 'sortNum',
- },
- {
- caption: '业务名称',
- name: 'indexName',
- dataType: 'string',
- },
- {
- caption: '业务编号',
- name: 'id',
- dataType: 'string',
- },
- {
- caption: '系统来源名称',
- name: 'indexRemark',
- dataType: 'string',
- },
- {
- dataIndex: 'indexId',
- name: 'indexId',
- dataType: 'string',
- sdHidden: true,
- },
- ],
- classIndexData: [],
- classShow: true,
- flTableShow: false,
- indexColumns: [
- // 序号 ,业务名称 业务编号
- {
- title: '序号',
- dataIndex: 'sortNum',
- customRender: (text, record, index) => `${index + 1}`,
- width: '80px',
- },
- {
- title: '业务名称',
- dataIndex: 'indexName',
- },
- {
- title: '业务编号',
- dataIndex: 'id',
- },
- {
- title: '系统来源名称',
- dataIndex: 'indexRemark',
- },
- {
- dataIndex: 'indexId',
- sdHidden: true,
- },
- ],
- rootNodeData: null,
- }
- },
- created() {
- if (this.$route.query.selectid) {
- this.selectid = this.$route.query.selectid
- this.getEmpowerInfo()
- }
- // 获取人员和单位 field
- this.getfields()
- },
- mounted() {
- const userInfo = getUserInfo()
- auditMaintainService.getCompany(userInfo.account).then((res) => {
- this.rootNodeData = {
- code: res.data.id,
- name: res.data.name,
- }
- const roles = this.$store.state.sd.common.userInfo.default.roles
- const isExport = roles.map((val) => val.code).includes('G-1_DATA_AUDIT_RULE')
- if (isExport) {
- this.rootNodeData = {
- code: '28951',
- name: '国家电力投资集团有限公司',
- }
- }
- })
- },
- methods: {
- // 获取授权详情
- getEmpowerInfo() {
- axios
- .post('api/xcoa-mobile/v1/iamdatacategory/iamDataSqDetail?id=' + this.selectid)
- .then((res) => {
- this.maintaindata = res.data.iamDataCategoryEntities.filter((item) => item != null)
- this.classIndexData = res.data.iamSearchCategoryidIndexnameEntities.filter(
- (item) => item != null
- )
- this.companyData = res.data.iamAppointUnitEntities.map((val) => {
- if (val.empowerType !== '1') {
- val.startDate = moment(val.startDate).format('YYYY-MM-DD')
- val.endDate = moment(val.endDate).format('YYYY-MM-DD')
- }
- return val
- })
- this.unitdata = res.data.iamLicenseUnitEntities.map((val) => {
- if (val.empowerType !== '1') {
- val.startDate = moment(val.startDate).format('YYYY-MM-DD')
- val.endDate = moment(val.endDate).format('YYYY-MM-DD')
- }
- return val
- })
- this.personaldata = res.data.iamLicensePeopleEntities.map((val) => {
- if (val.empowerType !== '1') {
- val.startDate = moment(val.startDate).format('YYYY-MM-DD')
- val.endDate = moment(val.endDate).format('YYYY-MM-DD')
- }
- return val
- })
- this.projectData = res.data.iamLicenseProjectEntities.map((val) => {
- if (val.empowerType !== '1') {
- val.startDate = moment(val.startDate).format('YYYY-MM-DD')
- val.endDate = moment(val.endDate).format('YYYY-MM-DD')
- }
- return val
- })
- this.roleData = res.data.iamLicenseRoleEntities.map((val) => {
- if (val.empowerType !== '1') {
- val.startDate = moment(val.startDate).format('YYYY-MM-DD')
- val.endDate = moment(val.endDate).format('YYYY-MM-DD')
- }
- return val
- })
- })
- },
- setchange(value, field, index, lx, data) {
- this.$refs[data].$refs[field.name + '_' + index][0].setFieldValue(field.name, value)
- if (data === 'pdata') {
- this.personaldata[index][field.name] = value
- } else if (data === 'rdata') {
- this.roleData[index][field.name] = value
- } else if (data === 'prodata') {
- this.projectData[index][field.name] = value
- }
- if (lx === 'type') {
- // 设置 时间两个条件
- if (value === '1') {
- this.$refs[data + '_startDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- } else {
- this.$refs[data + '_startDate_' + index].disabled = false
- this.$refs[data + '_endDate_' + index].disabled = false
- this.$refs[data + '_endDate_' + index].rules = [
- { required: true, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].rules = [
- { required: true, trigger: ['change', 'blur'] },
- ]
- }
- if (value === '2') {
- this.$refs[data + '_startDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- // this.$refs[data + '_endDate_' + index].model.startDate = moment().endOf
- this.$refs[data + '_startDate_' + index].model.startDate = moment()
- this.$refs[data + '_endDate_' + index].model.endDate = moment().endOf('year')
- }
- if (value === '3') {
- this.$refs[data + '_startDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].model.startDate = moment()
- // 加一个月
- this.$refs[data + '_endDate_' + index].model.endDate = moment().add(1, 'months')
- }
- if (value === '4') {
- this.$refs[data + '_startDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].model.startDate = moment()
- this.$refs[data + '_endDate_' + index].model.endDate = moment().add(3, 'months')
- }
- if (value === '5') {
- this.$refs[data + '_startDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].disabled = true
- this.$refs[data + '_endDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].rules = [
- { required: false, trigger: ['change', 'blur'] },
- ]
- this.$refs[data + '_startDate_' + index].model.startDate = moment()
- this.$refs[data + '_endDate_' + index].model.endDate = moment().add(6, 'months')
- }
- } else if (lx === 'stime') {
- // 设置 开始时间
- this.$refs[data + '_endDate_' + index].time = new Date(value).getTime()
- } else {
- this.$refs[data + '_startDate_' + index].time = new Date(value).getTime()
- }
- },
- changeunit(values) {
- let iamAuditDwMxs = []
- iamAuditDwMxs = this.unitdata
- values.forEach((element) => {
- if (iamAuditDwMxs.findIndex((dw) => dw.unitId === element.code) === -1) {
- const mmc = {}
- mmc.unitName = element.name
- mmc.unitCode = element.code
- mmc.unitId = element.id
- iamAuditDwMxs.push(mmc)
- }
- })
- this.unitdata = iamAuditDwMxs
- },
- deletedClassList() {
- const ids = this.maintaindata.map((item) => item.categoryId)
- this.classIndexData = this.classIndexData.filter((item) => ids.includes(item.categoryId))
- },
- changep(values) {
- let iamAuditPMxs = []
- iamAuditPMxs = this.personaldata
- values.forEach((element) => {
- if (iamAuditPMxs.findIndex((dw) => dw.userId === element.code) === -1) {
- const mmc = {}
- mmc.userName = element.name
- mmc.userId = element.code
- axios({
- url: 'api/xcoa-mobile/v1/iammodelmaintain/findGroupByAccount?account=' + element.code,
- method: 'get',
- }).then((res) => {
- mmc.userUnit = res.data.name
- iamAuditPMxs.push(mmc)
- })
- }
- })
- this.personaldata = iamAuditPMxs
- },
- // 选择申请单位
- dwRelSelect() {
- // 选择申请单位
- setTimeout(() => {
- this.$refs.dwRelSelect.openPicker()
- }, 0)
- },
- pRelSelect() {
- // 选择申请单位
- setTimeout(() => {
- this.$refs.pRelSelect.openPicker()
- }, 0)
- },
- roleSelect() {
- // 选择申请角色
- setTimeout(() => {
- this.$refs.roleSelect.openPicker()
- }, 0)
- },
- companylSelect() {
- // 选择申请单位
- setTimeout(() => {
- this.$refs.cRelSelect.openPicker()
- }, 0)
- },
- // 选择索引
- inedxRelSelect() {
- this.indexTableShow = true
- },
- saveForm() {
- const pdata = []
- const rdata = []
- const prodata = []
- const cdata = []
- if (this.maintaindata.length === 0) {
- Message.error('请至少选择一个分类')
- return
- }
- this.personaldata.forEach((item) => {
- let sl = null
- let el = null
- if (item.empowerType === '0') {
- if (item.startDate !== undefined) {
- const s = new Date(item.startDate)
- const e = new Date(item.endDate)
- sl = s.getTime()
- el = e.getTime()
- }
- }
- if (item.empowerType === '2') {
- sl = new Date(moment()).getTime()
- el = new Date(moment().endOf('year')).getTime()
- }
- // 3 4 5
- if (item.empowerType === '3') {
- sl = new Date(moment()).getTime()
- el = new Date(moment().add(1, 'months')).getTime()
- }
- if (item.empowerType === '4') {
- sl = new Date(moment()).getTime()
- el = new Date(moment().add(3, 'months')).getTime()
- }
- if (item.empowerType === '5') {
- sl = new Date(moment()).getTime()
- el = new Date(moment().add(6, 'months')).getTime()
- }
- pdata.push({
- docType: 'date',
- empowerType: item.empowerType,
- startDate: sl,
- endDate: el,
- userId: item.userId,
- userUnit: item.userUnit,
- userName: item.userName,
- })
- })
- this.roleData.forEach((item) => {
- let sl = null
- let el = null
- if (item.empowerType === '0') {
- if (item.startDate !== undefined) {
- const s = new Date(item.startDate)
- const e = new Date(item.endDate)
- sl = s.getTime()
- el = e.getTime()
- }
- }
- if (item.empowerType === '2') {
- sl = new Date(moment()).getTime()
- el = new Date(moment().endOf('year')).getTime()
- }
- rdata.push({
- docType: 'date',
- empowerType: item.empowerType,
- startDate: sl,
- endDate: el,
- roleId: item.roleId,
- roleName: item.roleName,
- })
- })
- this.projectData.forEach((item) => {
- let sl = null
- let el = null
- if (item.empowerType === '0') {
- if (item.startDate !== undefined) {
- const s = new Date(item.startDate)
- const e = new Date(item.endDate)
- sl = s.getTime()
- el = e.getTime()
- }
- }
- if (item.empowerType === '2') {
- sl = new Date(moment()).getTime()
- el = new Date(moment().endOf('year')).getTime()
- }
- prodata.push({
- docType: 'date',
- empowerType: item.empowerType,
- startDate: sl,
- endDate: el,
- projectId: item.projectId,
- projectName: item.projectName,
- })
- })
- this.companyData.forEach((item) => {
- let sl = null
- let el = null
- if (item.empowerType === '2') {
- sl = new Date(moment()).getTime()
- el = new Date(moment().endOf('year')).getTime()
- }
- cdata.push({
- docType: 'date',
- empowerType: item.empowerType,
- startDate: sl,
- endDate: el,
- unitCode: item.unitCode,
- unitName: item.unitName,
- unitId: item.unitId,
- })
- })
- // if (this.classIndexData.length === 0) {
- // Modal.warning({
- // title: '提示',
- // content: '请至少选择一个索引项!',
- // })
- // return false
- // }
- if (pdata.length === 0 && prodata.length === 0 && rdata.length === 0 && cdata.length === 0) {
- Modal.warning({
- title: '提示',
- content: '请至少选择一个授权项!',
- })
- return false
- }
- const params = {
- iamDataCategoryEntities: this.maintaindata,
- iamLicenseUnitEntities: [],
- iamLicensePeopleEntities: pdata,
- iamLicenseProjectEntities: prodata,
- iamLicenseRoleEntities: rdata,
- iamAppointUnitEntities: cdata,
- iamSearchCategoryidIndexnameEntities: this.classIndexData,
- recordId: this.selectid,
- }
- auditMaintainService.editIamAuditMaintain(params).then((res) => {
- if (res) {
- Message.success('修改成功', 1).then((res) => {
- // this.close(true)
- })
- }
- })
- },
- close(flag) {
- crossWindowWatcher.notifyChange(this.$route.fullPath, flag)
- window.close()
- },
- showSelection() {
- return true
- },
- onSelectChange(selectedRowKeys) {
- this.selectedRowKeys = selectedRowKeys
- },
- // 获取table字段信息
- getfields() {
- axios({
- url: 'api/xcoa-mobile/v1/page/wp/audit/maintain/iamLicenseRole',
- method: 'get',
- }).then((res) => {
- this.roleTable = res.data.pageFormData.pageFieldInfos
- this.roleTable.find((item) => item.name === 'empowerType').attr.mandatory = 'false'
- })
- axios({
- url: 'api/xcoa-mobile/v1/page/wp/audit/maintain/iamLicensePeople',
- method: 'get',
- }).then((res) => {
- this.personal = res.data.pageFormData.pageFieldInfos
- })
- axios({
- url: 'api/xcoa-mobile/v1/page/wp/audit/maintain/iamLicenseUnit',
- method: 'get',
- }).then((res) => {
- this.unit = res.data.pageFormData.pageFieldInfos
- this.unit.find((item) => item.name === 'empowerType').attr.mandatory = 'false'
- })
- axios({
- url: 'api/xcoa-mobile/v1/page/wp/audit/maintain/iamLicenseProject',
- method: 'get',
- }).then((res) => {
- this.projectTable = res.data.pageFormData.pageFieldInfos
- this.projectTable.find((item) => item.name === 'empowerType').attr.mandatory = 'false'
- })
- },
- getmxselect(ids) {
- const arrid = ids.split(',')
- arrid.forEach((id) => {
- auditMaintainService.findIamAuditMaintain(id).then((data) => {
- this.maintaindata.push(data)
- })
- })
- },
- changeRole(values) {
- let iamAuditDwMxs = []
- iamAuditDwMxs = this.roleData
- values.forEach((element) => {
- if (iamAuditDwMxs.findIndex((dw) => dw.roleId === element.id) === -1) {
- const mmc = {}
- mmc.roleName = element.name
- mmc.roleId = element.id
- iamAuditDwMxs.push(mmc)
- }
- })
- this.roleData = iamAuditDwMxs
- },
- changeProject(values) {
- let iamAuditDwMxs = []
- iamAuditDwMxs = this.projectData
- values.forEach((element) => {
- if (iamAuditDwMxs.findIndex((dw) => dw.projectId === element.id) === -1) {
- const mmc = {}
- mmc.projectName = element.projectTitle
- mmc.projectId = element.id
- mmc.projectUnit = element.leadUnitName
- iamAuditDwMxs.push(mmc)
- }
- })
- this.projectData = iamAuditDwMxs
- },
- changecompany(values) {
- let iamAuditDwMxs = []
- iamAuditDwMxs = this.companyData
- values.forEach((element) => {
- if (iamAuditDwMxs.findIndex((dw) => dw.unitId === element.code) === -1) {
- const mmc = {}
- mmc.unitName = element.name
- mmc.unitCode = element.code
- mmc.unitId = element.id
- iamAuditDwMxs.push(mmc)
- }
- })
- this.companyData = iamAuditDwMxs
- },
- listMxSelected(keys, keyinfos) {
- let iamAuditDwMxs = []
- iamAuditDwMxs = this.classIndexData
- keyinfos.forEach((element) => {
- if (iamAuditDwMxs.findIndex((dw) => parseInt(dw.id) === parseInt(element.id)) === -1) {
- iamAuditDwMxs.push(element)
- }
- })
- this.classIndexData = iamAuditDwMxs
- },
- flRelSelect() {
- this.flTableShow = true
- },
- classListMxSelected(keys, keyinfos) {
- const iamAuditMxs = this.maintaindata
- const ids = this.maintaindata.map((item) => parseInt(item.id))
- keyinfos.map((item) => {
- // 判断当前模型ID是否存在存在则不添加
- const mmc = {}
- mmc.categoryName = item.categoryName
- mmc.categoryId = item.categoryId
- mmc.categoryDesc = item.categoryDesc
- mmc.indexId = item.id
- mmc.id = item.id
- if (ids.indexOf(item.id) === -1) {
- iamAuditMxs.push(mmc)
- }
- })
- this.maintaindata = iamAuditMxs
- // 清空审搜数据
- // this.classIndexData = []
- },
- },
- }
- </script>
- <style module lang="scss">
- @use '@/common/design' as *;
- .btnselect {
- position: relative;
- top: 4px;
- right: 80px;
- float: right;
- padding: 4px 0;
- .batchselect {
- z-index: 100;
- margin-left: 10px;
- }
- }
- .tableTop {
- margin-top: 20px;
- }
- :global(.maintaintable) {
- :global(.ant-table-tbody > tr > td) {
- border-right: none;
- border-left: none;
- }
- :global(.ant-table-thead > tr > th) {
- border-right: none;
- border-left: none;
- }
- :global(table) {
- border: none !important;
- }
- :global(.ant-table-placeholder) {
- border: none !important;
- }
- }
- </style>
|