2865 lines
102 KiB
Vue
2865 lines
102 KiB
Vue
<template>
|
|
<div class="work-group">
|
|
<div class="work-group-header">
|
|
<div class="header-btn-group">
|
|
<el-button
|
|
type="primary"
|
|
class="common-button-primary"
|
|
round
|
|
@click="insertData"
|
|
:disabled="addForm.sarGroupMenuEO.pid === '' || addForm.menuType === 'STAND'"
|
|
v-btn-permission="'NK2ZAYPPM7RE8YLECWK7'"
|
|
>新增
|
|
</el-button>
|
|
<el-button
|
|
type="default"
|
|
class="common-button-default"
|
|
round
|
|
@click="updateData"
|
|
:disabled="!detailData.menuId || addForm.pMenuName === '标准工作组' || detailData.nodeType === 'STAND'"
|
|
v-btn-permission="'EQBDWRYLUTQPULTWMSGY'"
|
|
>编辑
|
|
</el-button>
|
|
<el-button
|
|
type="default"
|
|
class="common-button-default"
|
|
round
|
|
@click="selectData"
|
|
:disabled="!detailData.menuId || addForm.pMenuName === '标准工作组'"
|
|
v-btn-permission="'HSQA4LBTXJ55B9JWGLZD'"
|
|
>查看
|
|
</el-button>
|
|
<el-button
|
|
type="default"
|
|
class="common-button-default"
|
|
round
|
|
@click="handleDelData"
|
|
:disabled="!detailData.menuId || addForm.pMenuName === '标准工作组'"
|
|
v-btn-permission="'M33UXVE66VLBKZUE6MGA'"
|
|
>删除
|
|
</el-button>
|
|
<el-button
|
|
v-show="detailData.nodeType === 'GROUP'"
|
|
type="default"
|
|
class="common-button-default"
|
|
round
|
|
@click="handleAddStandardBtnClick"
|
|
v-btn-permission="'KHNQ2FGSJTUDACW4SR7X'"
|
|
>添加标准
|
|
</el-button>
|
|
</div>
|
|
<div class="node-info">
|
|
<!-- <el-button>停用</el-button>-->
|
|
<!-- <el-button>启用</el-button>-->
|
|
<!-- <el-button>派发</el-button>-->
|
|
<!-- <el-button>编辑Master方案</el-button>-->
|
|
<span v-if="currentNode !== ''"><a>当前节点:</a> {{ currentNode }}</span>
|
|
</div>
|
|
<div class="export">
|
|
<el-button
|
|
type="primary"
|
|
round
|
|
@click="handleExport"
|
|
class="common-button-primary"
|
|
v-if="detailData.nodeType !== 'STAND'"
|
|
v-btn-permission="'H99FTZPBPCE57SE5JTVS'"
|
|
>导出</el-button>
|
|
</div>
|
|
</div>
|
|
<div class="content">
|
|
<graph
|
|
class="graph"
|
|
:data="kgTreeList"
|
|
@nodeClick="handleNodeClick"
|
|
@edgeClick="handleEdgeClick"
|
|
></graph>
|
|
</div>
|
|
|
|
<!-- 新增节点抽屉 -->
|
|
<el-drawer :title="addDrawerTitle"
|
|
:visible.sync="drawerAddFormVisible"
|
|
:wrapperClosable="false"
|
|
@close="handleCloseDrawer"
|
|
v-if="drawerAddFormVisible"
|
|
size="800px">
|
|
<div class="demo-drawer-content">
|
|
<div class="el-drawer-form">
|
|
<el-form
|
|
ref="addForm"
|
|
:model="addForm"
|
|
:rules="addFormRules"
|
|
class="label-input-form"
|
|
>
|
|
<el-form-item :label="belongLabel" prop="pMenuName" label-width="150px" class="add-form-item form-item-disabled">
|
|
<el-input v-model="addForm.pMenuName"
|
|
:placeholder="'请输入' + belongLabel + '名称'"
|
|
clearable
|
|
max-length="30"
|
|
disabled
|
|
></el-input>
|
|
</el-form-item>
|
|
<!----------------------- 节点类型 ----------------------->
|
|
<el-form-item label="节点类型" prop="menuType" label-width="150px" class="add-form-item form-item-disabled">
|
|
<el-select v-model="addForm.menuType"
|
|
placeholder="请选择节点类型"
|
|
max-length="30"
|
|
disabled
|
|
clearable>
|
|
<el-option value="BWH" label="标委会"></el-option>
|
|
<el-option value="FBW" label="分标委"></el-option>
|
|
<el-option value="GROUP" label="工作组"></el-option>
|
|
<el-option value="STAND" label="标准"></el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<!----------------------- 编号 ----------------------->
|
|
<el-form-item
|
|
label="编号"
|
|
prop="meunNo"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="type1">
|
|
<el-input v-model="addForm.meunNo"
|
|
placeholder="请输入编号"
|
|
maxlength="30"
|
|
clearable
|
|
></el-input>
|
|
</el-form-item>
|
|
<el-form-item :label="addMenuNameLabel" prop="menuName" label-width="150px" class="add-form-item">
|
|
<el-input v-model="addForm.menuName"
|
|
:placeholder="'请输入' + addMenuNameLabel"
|
|
maxlength="30"
|
|
clearable
|
|
></el-input>
|
|
</el-form-item>
|
|
<!----------------------- 性质 ----------------------->
|
|
<el-form-item
|
|
label="性质"
|
|
prop="menuQuality"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="type1">
|
|
<el-select v-model="addForm.menuQuality"
|
|
placeholder="请选择性质"
|
|
clearable>
|
|
<el-option value="1" label="技术委员会"></el-option>
|
|
<el-option value="2" label="行业协会"></el-option>
|
|
<el-option value="3" label="团体联盟"></el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<!----------------------- 状态 ----------------------->
|
|
<el-form-item label="状态" prop="menuState" label-width="150px" class="add-form-item">
|
|
<el-select v-model="addForm.menuState"
|
|
placeholder="请选择节点类型"
|
|
clearable>
|
|
<el-option value="1" label="计划成立"></el-option>
|
|
<el-option value="2" label="运行中"></el-option>
|
|
<el-option value="3" label="已结束"></el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<!----------------------- 换届时间 ----------------------->
|
|
<el-form-item
|
|
label="换届时间"
|
|
prop="menuChangeTime"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="type3">
|
|
<el-date-picker
|
|
v-model="addForm.menuChangeTime"
|
|
placeholder="请选择换届时间"
|
|
:editable="false"
|
|
clearable>
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
<!----------------------- 标准化工作领域 ----------------------->
|
|
<el-form-item
|
|
label="标准化工作领域"
|
|
prop="menuField"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="type3">
|
|
<el-input
|
|
v-model="addForm.menuField"
|
|
placeholder="请填写标准化工作领域"
|
|
maxlength="500"
|
|
clearable>
|
|
</el-input>
|
|
</el-form-item>
|
|
<!----------------------- 备注 ----------------------->
|
|
<el-form-item
|
|
label="备注"
|
|
prop="menuRemark"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="type3">
|
|
<el-input
|
|
v-model="addForm.menuRemark"
|
|
placeholder="请填写备注"
|
|
maxlength="500"
|
|
clearable>
|
|
</el-input>
|
|
</el-form-item>
|
|
<!----------------------- 秘书处联系方式 ----------------------->
|
|
<el-form-item
|
|
prop="nodeType"
|
|
class="add-form-item add-form-table-item"
|
|
v-if="type3">
|
|
<div slot="label" class="table-item-label">
|
|
<span>秘书处联系方式</span>
|
|
<div class="button-wrap">
|
|
<el-button
|
|
type="danger"
|
|
size="mini"
|
|
@click="handleDelContactItem"
|
|
v-if="addForm.joinpersonEOList0.length">删除</el-button>
|
|
<el-button
|
|
type="primary"
|
|
size="mini"
|
|
@click="handleAddContact">添加联系方式</el-button>
|
|
</div>
|
|
</div>
|
|
<el-table
|
|
:data="addForm.joinpersonEOList0"
|
|
style="width: 100%"
|
|
border
|
|
@selection-change="val => delContactList = val"
|
|
>
|
|
<el-table-column
|
|
type="selection"
|
|
align="center"
|
|
width="55"
|
|
v-if="addForm.joinpersonEOList0.length">
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="单位"
|
|
min-width="180"
|
|
show-overflow-tooltip
|
|
prop="joinPersonCompany"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPersonCompany"
|
|
placeholder="请填写单位名称"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPerson"
|
|
label="联络人"
|
|
min-width="100"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPerson"
|
|
placeholder="请填写联络人"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonPhone"
|
|
min-width="120"
|
|
label="电话"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPersonPhone"
|
|
placeholder="请填写电话"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonEmail"
|
|
label="邮箱"
|
|
min-width="120"
|
|
show-overflow-tooltip
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPersonEmail"
|
|
placeholder="请填写邮箱"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
<!----------------------- 我司参与人员 ----------------------->
|
|
<el-form-item
|
|
prop="nodeType"
|
|
class="add-form-item add-form-table-item"
|
|
v-if="type3">
|
|
<div slot="label" class="table-item-label">
|
|
<span>我司参与人员</span>
|
|
<div class="button-wrap">
|
|
<el-button
|
|
type="danger"
|
|
size="mini"
|
|
@click="handleDelParticipantItem"
|
|
v-if="addForm.joinpersonEOList1.length">删除</el-button>
|
|
<el-button
|
|
type="primary"
|
|
size="mini"
|
|
@click="handleAddParticipants">添加参与人员</el-button>
|
|
</div>
|
|
</div>
|
|
<el-table
|
|
:data="addForm.joinpersonEOList1"
|
|
style="width: 100%"
|
|
border
|
|
@selection-change="val => delParticipantList = val">
|
|
<el-table-column
|
|
type="selection"
|
|
align="center"
|
|
width="55"
|
|
v-if="addForm.joinpersonEOList1.length">
|
|
</el-table-column>
|
|
<el-table-column
|
|
:label="addForm.sarGroupMenuEO.menuType === 'FBW' ? '我司人员' : '我司委员'"
|
|
prop="joinPerson"
|
|
show-overflow-tooltip
|
|
min-width="180"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPerson"
|
|
placeholder="请填写"
|
|
maxlength="30"
|
|
></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonDept"
|
|
label="部门"
|
|
width="180"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPersonDept"
|
|
placeholder="请填写"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="资料"
|
|
prop="joinMaterials"
|
|
min-width="130"
|
|
>
|
|
<template slot-scope="scope">
|
|
<table-file
|
|
:allowType="['.doc', '.docx', '.xls', '.xlsx', '.pdf']"
|
|
v-model="scope.row.joinMaterials"
|
|
></table-file>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
<!----------------------- 集团参与情况 ----------------------->
|
|
<el-form-item
|
|
label="集团参与情况"
|
|
prop="menuJoinPosition"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="type3">
|
|
<el-input
|
|
v-model="addForm.menuJoinPosition"
|
|
class="clearable-item"
|
|
placeholder="请填写集团参与情况"
|
|
clearable>
|
|
</el-input>
|
|
</el-form-item>
|
|
<!----------------------- 支付信息 ----------------------->
|
|
<el-form-item
|
|
prop="payEOList"
|
|
class="add-form-item add-form-table-item"
|
|
v-if="type3">
|
|
<div slot="label" class="table-item-label">
|
|
<span>支付信息</span>
|
|
<div class="button-wrap">
|
|
<el-button
|
|
type="danger"
|
|
size="mini"
|
|
@click="handleDelPayItem"
|
|
v-if="addForm.payEOList.length">删除</el-button>
|
|
<el-button
|
|
type="primary"
|
|
size="mini"
|
|
@click="handleAddPay">添加支付信息</el-button>
|
|
</div>
|
|
</div>
|
|
<el-table
|
|
:data="addForm.payEOList"
|
|
style="width: 100%"
|
|
border
|
|
@selection-change="val => delPayList = val">
|
|
<el-table-column
|
|
type="selection"
|
|
align="center"
|
|
width="55"
|
|
v-if="addForm.payEOList.length">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payMoney"
|
|
label="费用"
|
|
show-overflow-tooltip
|
|
min-width="100"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.payMoney"
|
|
placeholder="请填写"
|
|
maxlength="10"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payYear"
|
|
label="年份"
|
|
min-width="100"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-date-picker
|
|
v-model="scope.row.payYear"
|
|
type="year"
|
|
placeholder="请选择"
|
|
:editable="false"
|
|
></el-date-picker>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payState"
|
|
label="状态"
|
|
min-width="80"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-select
|
|
v-model="scope.row.payState"
|
|
placeholder="请选择"
|
|
>
|
|
<el-option value="1" label="已交"></el-option>
|
|
<el-option value="2" label="待交"></el-option>
|
|
<el-option value="3" label="预算"></el-option>
|
|
</el-select>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payPlan"
|
|
label="计划内"
|
|
min-width="80"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-select
|
|
v-model="scope.row.payPlan"
|
|
placeholder="是否计划内"
|
|
>
|
|
<el-option value="1" label="是"></el-option>
|
|
<el-option value="2" label="否"></el-option>
|
|
</el-select>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payStyle"
|
|
label="缴费方式"
|
|
min-width="100"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-select
|
|
v-model="scope.row.payStyle"
|
|
placeholder="请选择"
|
|
>
|
|
<el-option value="1" label="年缴"></el-option>
|
|
<el-option value="2" label="趸缴"></el-option>
|
|
</el-select>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
<!----------------------- 资料 ----------------------->
|
|
<file
|
|
class="add-form-item"
|
|
:config="{
|
|
attrName: '资料',
|
|
attrField: 'menuMaterial'
|
|
}"
|
|
:allowType="['.doc', '.docx', '.xls', '.xlsx', '.pdf']"
|
|
v-model="addForm.menuMaterial"
|
|
v-if="type3"
|
|
></file>
|
|
<!----------------------- 参会记录及资料 ----------------------->
|
|
<el-form-item
|
|
prop="meetEOList"
|
|
class="add-form-item add-form-table-item"
|
|
v-if="type3 && addForm.sarGroupMenuEO.menuType !== 'GROUP'">
|
|
<div slot="label" class="table-item-label">
|
|
<span>参会记录及资料</span>
|
|
<div class="button-wrap">
|
|
<el-button
|
|
type="danger"
|
|
size="mini"
|
|
@click="handleDelMeetItem"
|
|
v-if="addForm.meetEOList.length">删除</el-button>
|
|
<el-button
|
|
type="primary"
|
|
size="mini"
|
|
@click="handleAddMeet">添加参会记录及资料</el-button>
|
|
</div>
|
|
</div>
|
|
<el-table
|
|
:data="addForm.meetEOList"
|
|
style="width: 100%"
|
|
border
|
|
@selection-change="handleMeetEOSelectChange"
|
|
>
|
|
<el-table-column
|
|
width="55"
|
|
align="center"
|
|
type="selection"
|
|
v-if="addForm.meetEOList.length"
|
|
></el-table-column>
|
|
<el-table-column
|
|
label="会议日期"
|
|
prop="meetDate"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-date-picker
|
|
v-model="scope.row.meetDate"
|
|
placeholder="请选择"
|
|
:editable="false"></el-date-picker>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="会议名称"
|
|
prop="meetName"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.meetName"
|
|
placeholder="请输入"
|
|
maxlength="10"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="参会人员"
|
|
prop="meetPerson"
|
|
>
|
|
<template slot-scope="scope">
|
|
<input v-model="scope.row.meetPerson" v-show="false">
|
|
<el-input
|
|
v-model="scope.row.meetPersonNameShow"
|
|
placeholder="请选择"
|
|
readonly
|
|
style="margin-right: 0;"
|
|
@click.native="handleVisibleRole(scope.row, scope.$index)"
|
|
/>
|
|
</template>
|
|
</el-table-column>
|
|
<!-- <el-table-column-->
|
|
<!-- label="参会报告"-->
|
|
<!-- prop="meetReport"-->
|
|
<!-- >-->
|
|
<!-- <template slot-scope="scope">-->
|
|
<!-- <el-input-->
|
|
<!-- v-model="scope.row.meetReport"-->
|
|
<!-- placeholder="请输入"></el-input>-->
|
|
<!-- </template>-->
|
|
<!-- </el-table-column>-->
|
|
<el-table-column
|
|
label="会议资料"
|
|
width="170"
|
|
prop="meetMaterial">
|
|
<template slot-scope="scope">
|
|
<table-file
|
|
:allowType="['.doc', '.docx', '.xls', '.xlsx', '.pdf']"
|
|
v-model="scope.row.meetMaterial"
|
|
></table-file>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
</el-form>
|
|
<loading :loading="loading.submit">正在提交数据</loading>
|
|
</div>
|
|
</div>
|
|
<div class="demo-drawer-footer">
|
|
<el-button
|
|
round
|
|
class="common-button-primary"
|
|
icon="el-icon-check"
|
|
type="primary"
|
|
@click="handleDrawerSubmit"
|
|
:loading="loading.submit">提交
|
|
</el-button>
|
|
<el-button
|
|
round
|
|
class="common-button-default"
|
|
icon="el-icon-close"
|
|
@click="handleCloseDrawer">取消</el-button>
|
|
</div>
|
|
</el-drawer>
|
|
<!-- 编辑节点抽屉 -->
|
|
<el-drawer :title="addDrawerTitle"
|
|
:visible.sync="drawerEditFormVisible"
|
|
:wrapperClosable="false"
|
|
class="edit-drawer"
|
|
destroy-on-close
|
|
@close="handleCloseDrawer"
|
|
v-if="drawerEditFormVisible"
|
|
size="800px">
|
|
<div class="demo-drawer-content" v-if="!loading.loadDetail">
|
|
<div class="el-drawer-form">
|
|
<el-form
|
|
ref="addForm"
|
|
:model="editForm"
|
|
:rules="addFormRules"
|
|
class="label-input-form"
|
|
>
|
|
<el-form-item :label="belongEditLabel" prop="pMenuName" label-width="150px" class="add-form-item form-item-disabled">
|
|
<el-input v-model="editForm.pMenuName"
|
|
:placeholder="'请输入' + belongLabel + '名称'"
|
|
clearable
|
|
max-length="30"
|
|
disabled
|
|
></el-input>
|
|
</el-form-item>
|
|
<!----------------------- 节点类型 ----------------------->
|
|
<el-form-item label="节点类型" prop="menuType" label-width="150px" class="add-form-item form-item-disabled">
|
|
<el-select v-model="editForm.menuType"
|
|
placeholder="请选择节点类型"
|
|
max-length="30"
|
|
disabled
|
|
clearable>
|
|
<el-option value="BWH" label="标委会"></el-option>
|
|
<el-option value="FBW" label="分标委"></el-option>
|
|
<el-option value="GROUP" label="工作组"></el-option>
|
|
<el-option value="STAND" label="标准"></el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<!----------------------- 编号 ----------------------->
|
|
<el-form-item
|
|
label="编号"
|
|
prop="meunNo"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="editType1">
|
|
<el-input v-model="editForm.meunNo"
|
|
placeholder="请输入编号"
|
|
maxlength="30"
|
|
clearable
|
|
></el-input>
|
|
</el-form-item>
|
|
<el-form-item :label="editMenuNameLabel" prop="menuName" label-width="150px" class="add-form-item">
|
|
<el-input v-model="editForm.menuName"
|
|
:placeholder="'请输入' + editMenuNameLabel"
|
|
maxlength="30"
|
|
clearable
|
|
></el-input>
|
|
</el-form-item>
|
|
<!----------------------- 性质 ----------------------->
|
|
<el-form-item
|
|
label="性质"
|
|
prop="menuQuality"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="editType1">
|
|
<el-select v-model="editForm.menuQuality"
|
|
placeholder="请选择性质"
|
|
clearable>
|
|
<el-option value="1" label="技术委员会"></el-option>
|
|
<el-option value="2" label="行业协会"></el-option>
|
|
<el-option value="3" label="团体联盟"></el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<!----------------------- 状态 ----------------------->
|
|
<el-form-item label="状态" prop="menuState" label-width="150px" class="add-form-item">
|
|
<el-select v-model="editForm.menuState"
|
|
placeholder="请选择节点类型"
|
|
clearable>
|
|
<el-option value="1" label="计划成立"></el-option>
|
|
<el-option value="2" label="运行中"></el-option>
|
|
<el-option value="3" label="已结束"></el-option>
|
|
</el-select>
|
|
</el-form-item>
|
|
<!----------------------- 换届时间 ----------------------->
|
|
<el-form-item
|
|
label="换届时间"
|
|
prop="menuChangeTime"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="editType3">
|
|
<el-date-picker
|
|
v-model="editForm.menuChangeTime"
|
|
placeholder="请选择换届时间"
|
|
:editable="false"
|
|
clearable>
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
<!----------------------- 标准化工作领域 ----------------------->
|
|
<el-form-item
|
|
label="标准化工作领域"
|
|
prop="menuField"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="editType3">
|
|
<el-input
|
|
v-model="editForm.menuField"
|
|
placeholder="请填写标准化工作领域"
|
|
maxlength="500"
|
|
clearable>
|
|
</el-input>
|
|
</el-form-item>
|
|
<!----------------------- 备注 ----------------------->
|
|
<el-form-item
|
|
label="备注"
|
|
prop="menuRemark"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="editType3">
|
|
<el-input
|
|
v-model="editForm.menuRemark"
|
|
placeholder="请填写备注"
|
|
maxlength="500"
|
|
clearable>
|
|
</el-input>
|
|
</el-form-item>
|
|
<!----------------------- 秘书处联系方式 ----------------------->
|
|
<el-form-item
|
|
prop="nodeType"
|
|
class="add-form-item add-form-table-item"
|
|
v-if="editType3">
|
|
<div slot="label" class="table-item-label">
|
|
<span>秘书处联系方式</span>
|
|
<div class="button-wrap">
|
|
<el-button
|
|
type="danger"
|
|
size="mini"
|
|
@click="handleDelContactItem"
|
|
v-if="editForm.joinpersonEOList0.length">删除</el-button>
|
|
<el-button
|
|
type="primary"
|
|
size="mini"
|
|
@click="handleAddContact">添加联系方式</el-button>
|
|
</div>
|
|
</div>
|
|
<el-table
|
|
:data="editForm.joinpersonEOList0"
|
|
style="width: 100%"
|
|
border
|
|
@selection-change="val => delContactList = val"
|
|
>
|
|
<el-table-column
|
|
type="selection"
|
|
align="center"
|
|
width="55"
|
|
v-if="editForm.joinpersonEOList0.length">
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="单位"
|
|
min-width="180"
|
|
show-overflow-tooltip
|
|
prop="joinPersonCompany"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPersonCompany"
|
|
placeholder="请填写单位名称"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPerson"
|
|
label="联络人"
|
|
min-width="100"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPerson"
|
|
placeholder="请填写联络人"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonPhone"
|
|
min-width="120"
|
|
label="电话"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPersonPhone"
|
|
placeholder="请填写电话"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonEmail"
|
|
label="邮箱"
|
|
min-width="120"
|
|
show-overflow-tooltip
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPersonEmail"
|
|
placeholder="请填写邮箱"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
<!----------------------- 我司参与人员 ----------------------->
|
|
<el-form-item
|
|
prop="nodeType"
|
|
class="add-form-item add-form-table-item"
|
|
v-if="editType3">
|
|
<div slot="label" class="table-item-label">
|
|
<span>我司参与人员</span>
|
|
<div class="button-wrap">
|
|
<el-button
|
|
type="danger"
|
|
size="mini"
|
|
@click="handleDelParticipantItem"
|
|
v-if="editForm.joinpersonEOList1.length">删除</el-button>
|
|
<el-button
|
|
type="primary"
|
|
size="mini"
|
|
@click="handleAddParticipants">添加参与人员</el-button>
|
|
</div>
|
|
</div>
|
|
<el-table
|
|
:data="editForm.joinpersonEOList1"
|
|
style="width: 100%"
|
|
border
|
|
@selection-change="val => delParticipantList = val">
|
|
<el-table-column
|
|
type="selection"
|
|
align="center"
|
|
width="55"
|
|
v-if="editForm.joinpersonEOList1.length">
|
|
</el-table-column>
|
|
<el-table-column
|
|
:label="editForm.sarGroupMenuEO.menuType === 'FBW' ? '我司人员' : '我司委员'"
|
|
prop="joinPerson"
|
|
show-overflow-tooltip
|
|
min-width="180"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPerson"
|
|
placeholder="请填写"
|
|
maxlength="30"
|
|
></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonDept"
|
|
label="部门"
|
|
width="180"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.joinPersonDept"
|
|
placeholder="请填写"
|
|
maxlength="30"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="资料"
|
|
prop="joinMaterials"
|
|
min-width="130"
|
|
>
|
|
<template slot-scope="scope">
|
|
<table-file
|
|
:allowType="['.doc', '.docx', '.xls', '.xlsx', '.pdf']"
|
|
v-model="scope.row.joinMaterials"
|
|
></table-file>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
<!----------------------- 集团参与情况 ----------------------->
|
|
<el-form-item
|
|
label="集团参与情况"
|
|
prop="menuJoinPosition"
|
|
label-width="150px"
|
|
class="add-form-item"
|
|
v-if="editType3">
|
|
<el-input
|
|
v-model="editForm.menuJoinPosition"
|
|
class="clearable-item"
|
|
placeholder="请填写集团参与情况"
|
|
clearable>
|
|
</el-input>
|
|
</el-form-item>
|
|
<!----------------------- 支付信息 ----------------------->
|
|
<el-form-item
|
|
prop="payEOList"
|
|
class="add-form-item add-form-table-item"
|
|
v-if="editType3">
|
|
<div slot="label" class="table-item-label">
|
|
<span>支付信息</span>
|
|
<div class="button-wrap">
|
|
<el-button
|
|
type="danger"
|
|
size="mini"
|
|
@click="handleDelPayItem"
|
|
v-if="editForm.payEOList.length">删除</el-button>
|
|
<el-button
|
|
type="primary"
|
|
size="mini"
|
|
@click="handleAddPay">添加支付信息</el-button>
|
|
</div>
|
|
</div>
|
|
<el-table
|
|
:data="editForm.payEOList"
|
|
style="width: 100%"
|
|
border
|
|
@selection-change="val => delPayList = val">
|
|
<el-table-column
|
|
type="selection"
|
|
align="center"
|
|
width="55"
|
|
v-if="editForm.payEOList.length">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payMoney"
|
|
label="费用"
|
|
show-overflow-tooltip
|
|
min-width="100"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.payMoney"
|
|
placeholder="请填写"
|
|
maxlength="10"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payYear"
|
|
label="年份"
|
|
min-width="100"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-date-picker
|
|
v-model="scope.row.payYear"
|
|
type="year"
|
|
placeholder="请选择"
|
|
:editable="false"
|
|
></el-date-picker>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payState"
|
|
label="状态"
|
|
min-width="80"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-select
|
|
v-model="scope.row.payState"
|
|
placeholder="请选择"
|
|
>
|
|
<el-option value="1" label="已交"></el-option>
|
|
<el-option value="2" label="待交"></el-option>
|
|
<el-option value="3" label="预算"></el-option>
|
|
</el-select>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payPlan"
|
|
label="计划内"
|
|
min-width="80"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-select
|
|
v-model="scope.row.payPlan"
|
|
placeholder="是否计划内"
|
|
>
|
|
<el-option value="1" label="是"></el-option>
|
|
<el-option value="2" label="否"></el-option>
|
|
</el-select>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payStyle"
|
|
label="缴费方式"
|
|
min-width="100"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-select
|
|
v-model="scope.row.payStyle"
|
|
placeholder="请选择"
|
|
>
|
|
<el-option value="1" label="年缴"></el-option>
|
|
<el-option value="2" label="趸缴"></el-option>
|
|
</el-select>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
<!----------------------- 资料 ----------------------->
|
|
<file
|
|
class="add-form-item"
|
|
:config="{
|
|
attrName: '资料',
|
|
attrField: 'menuMaterial'
|
|
}"
|
|
:allowType="['.doc', '.docx', '.xls', '.xlsx', '.pdf']"
|
|
v-model="editForm.menuMaterial"
|
|
v-if="editType3"
|
|
></file>
|
|
<!----------------------- 参会记录及资料 ----------------------->
|
|
<el-form-item
|
|
prop="meetEOList"
|
|
class="add-form-item add-form-table-item"
|
|
v-if="editType3 && editForm.sarGroupMenuEO.menuType !== 'GROUP'">
|
|
<div slot="label" class="table-item-label">
|
|
<span>参会记录及资料</span>
|
|
<div class="button-wrap">
|
|
<el-button
|
|
type="danger"
|
|
size="mini"
|
|
@click="handleDelMeetItem"
|
|
v-if="editForm.meetEOList.length">删除</el-button>
|
|
<el-button
|
|
type="primary"
|
|
size="mini"
|
|
@click="handleAddMeet">添加参会记录及资料</el-button>
|
|
</div>
|
|
</div>
|
|
<el-table
|
|
:data="editForm.meetEOList"
|
|
style="width: 100%"
|
|
border
|
|
@selection-change="handleMeetEOSelectChange"
|
|
>
|
|
<el-table-column
|
|
width="55"
|
|
align="center"
|
|
type="selection"
|
|
v-if="editForm.meetEOList.length"
|
|
></el-table-column>
|
|
<el-table-column
|
|
label="会议日期"
|
|
prop="meetDate"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-date-picker
|
|
v-model="scope.row.meetDate"
|
|
placeholder="请选择"
|
|
:editable="false"></el-date-picker>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="会议名称"
|
|
prop="meetName"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-input
|
|
v-model="scope.row.meetName"
|
|
placeholder="请输入"
|
|
maxlength="10"></el-input>
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="参会人员"
|
|
prop="meetPerson"
|
|
>
|
|
<template slot-scope="scope">
|
|
<el-popover
|
|
placement="bottom"
|
|
trigger="click"
|
|
:value="false"
|
|
>
|
|
<input v-model="scope.row.meetPerson" v-show="false">
|
|
<el-input
|
|
v-model="scope.row.meetPersonNameShow"
|
|
slot="reference"
|
|
placeholder="请选择"
|
|
readonly
|
|
style="margin-right: 0;" />
|
|
<div class="api">
|
|
<tree :treeDivId="`meetPersonTree-${scope.row.delId}`"
|
|
ref="meetPerson"
|
|
showUser
|
|
allDept
|
|
check-enable
|
|
:editable="false"
|
|
@personCheck="(idChecked, nameChecked) => handleMeetPersonChecked(scope.$index, idChecked, nameChecked)"
|
|
:spliceNode="scope.row.meetPerson.split(',')"
|
|
style="width: 200px;height: 500px;overflow: auto"></tree>
|
|
</div>
|
|
</el-popover>
|
|
</template>
|
|
</el-table-column>
|
|
<!-- <el-table-column-->
|
|
<!-- label="参会报告"-->
|
|
<!-- prop="meetReport"-->
|
|
<!-- >-->
|
|
<!-- <template slot-scope="scope">-->
|
|
<!-- <el-input-->
|
|
<!-- v-model="scope.row.meetReport"-->
|
|
<!-- placeholder="请输入"></el-input>-->
|
|
<!-- </template>-->
|
|
<!-- </el-table-column>-->
|
|
<el-table-column
|
|
label="会议资料"
|
|
width="170"
|
|
prop="meetMaterial">
|
|
<template slot-scope="scope">
|
|
<table-file
|
|
:allowType="['.doc', '.docx', '.xls', '.xlsx', '.pdf']"
|
|
v-model="scope.row.meetMaterial"
|
|
></table-file>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-form-item>
|
|
</el-form>
|
|
<loading :loading="loading.submit">正在提交数据</loading>
|
|
</div>
|
|
</div>
|
|
<div class="demo-drawer-footer" v-if="!loading.loadDetail">
|
|
<el-button
|
|
round
|
|
class="common-button-primary"
|
|
icon="el-icon-check"
|
|
type="primary"
|
|
@click="handleDrawerEditSubmit"
|
|
:loading="loading.submit">提交
|
|
</el-button>
|
|
<el-button
|
|
round
|
|
class="common-button-default"
|
|
icon="el-icon-close"
|
|
@click="handleCloseEditDrawer">取消</el-button>
|
|
</div>
|
|
<loading :loading="loading.loadDetail">正在查询详情</loading>
|
|
</el-drawer>
|
|
<el-drawer :title="checkTitle"
|
|
:visible.sync="detailDrawerVisible"
|
|
:wrapperClosable="false"
|
|
@close="handleCloseDetailDrawer"
|
|
size="800px">
|
|
<loading :loading="loading.loadDetail">正在查询详情</loading>
|
|
<div class="demo-drawer-content">
|
|
<div>
|
|
<div class="modular-content">
|
|
<div class="modular-item" v-if="detailData.nodeType === 'FBW' || detailData.nodeType === 'BWH'">
|
|
<label class="modular-content-p-name">编号</label>
|
|
<span class="modular-content-p-val">
|
|
{{ detailData.meunNo || '-' }}
|
|
</span>
|
|
</div>
|
|
<div class="modular-item">
|
|
<label class="modular-content-p-name">名称</label>
|
|
<span class="modular-content-p-val">
|
|
{{ detailData.menuName || '-' }}
|
|
</span>
|
|
</div>
|
|
<div class="modular-item" v-if="detailData.nodeType === 'FBW' || detailData.nodeType === 'BWH'">
|
|
<label class="modular-content-p-name">性质</label>
|
|
<span class="modular-content-p-val">
|
|
{{ detailData.menuQuality ? (detailData.menuQuality === '1' ? '技术委员会' : (detailData.menuQuality === '2' ? '行业协会' : '团体联盟')) : '-' }}
|
|
</span>
|
|
</div>
|
|
<div class="modular-item">
|
|
<label class="modular-content-p-name">状态</label>
|
|
<span class="modular-content-p-val">
|
|
{{ detailData.menuState ? (detailData.menuState === '1' ? '计划成立' : (detailData.menuState === '2' ? '运行中' : '已结束')) : '-' }}
|
|
</span>
|
|
</div>
|
|
<!-- <div class="modular-item" v-if="detailData.nodeType === 'GROUP'">-->
|
|
<!-- <label class="modular-content-p-name">成立时间</label>-->
|
|
<!-- <span class="modular-content-p-val">-->
|
|
<!-- {{ $dateFormat(new Date(detailData.joinTime), 'yyyy-MM-dd') }}、{{ $dateFormat(new Date(detailData.stopTime), 'yyyy-MM-dd') }}-->
|
|
<!-- </span>-->
|
|
<!-- </div>-->
|
|
<div class="modular-item" v-if="detailData.nodeType === 'FBW' || detailData.nodeType === 'BWH'">
|
|
<label class="modular-content-p-name">换届时间</label>
|
|
<span class="modular-content-p-val">
|
|
{{ detailData.menuChangeTime ? $dateFormat(detailData.menuChangeTime, 'yyyy-MM-dd') : '-' }}
|
|
</span>
|
|
</div>
|
|
<div class="modular-item" v-if="detailData.nodeType === 'FBW' || detailData.nodeType === 'BWH'">
|
|
<label class="modular-content-p-name">标准化工作领域</label>
|
|
<span class="modular-content-p-val">
|
|
{{ detailData.menuField || '-' }}
|
|
</span>
|
|
</div>
|
|
<div class="modular-item">
|
|
<label class="modular-content-p-name">备注</label>
|
|
<span class="modular-content-p-val">
|
|
{{ detailData.menuRemark || '-' }}
|
|
</span>
|
|
</div>
|
|
<div class="modular-item" v-if="detailData.nodeType === 'FBW' || detailData.nodeType === 'BWH'">
|
|
<label class="modular-content-p-name">秘书处联系方式</label>
|
|
<div class="modular-content-p-table">
|
|
<el-table
|
|
:data="detailData.joinpersonEOList0"
|
|
border
|
|
style="width: 100%">
|
|
<el-table-column
|
|
prop="joinPersonCompany"
|
|
label="单位"
|
|
show-overflow-tooltip
|
|
min-width="180">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPersonCompany || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPerson"
|
|
label="联络人"
|
|
min-width="100">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPerson || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonPhone"
|
|
min-width="120"
|
|
label="电话">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPersonPhone || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonEmail"
|
|
label="邮箱"
|
|
min-width="120"
|
|
show-overflow-tooltip>
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPersonEmail || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</div>
|
|
</div>
|
|
<div class="modular-item" v-if="detailData.nodeType === 'GROUP'">
|
|
<label class="modular-content-p-name">工作组联系方式</label>
|
|
<div class="modular-content-p-table">
|
|
<el-table
|
|
:data="detailData.joinpersonEOList0"
|
|
border
|
|
style="width: 100%">
|
|
<el-table-column
|
|
prop="joinPersonCompany"
|
|
label="单位"
|
|
show-overflow-tooltip
|
|
min-width="180">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPersonCompany || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPerson"
|
|
label="联络人"
|
|
min-width="100">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPerson || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonPhone"
|
|
min-width="120"
|
|
label="电话">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPersonPhone || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonEmail"
|
|
label="邮箱"
|
|
width="120"
|
|
show-overflow-tooltip>
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPersonEmail || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</div>
|
|
</div>
|
|
<div class="modular-item" v-if="detailData.nodeType === 'FBW' || detailData.nodeType === 'BWH'">
|
|
<label class="modular-content-p-name">我司参与人员</label>
|
|
<div class="modular-content-p-table">
|
|
<el-table
|
|
:data="detailData.joinpersonEOList1"
|
|
border
|
|
style="width: 100%">
|
|
<el-table-column
|
|
prop="joinPerson"
|
|
label="我司人员"
|
|
width="180">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPerson || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonDept"
|
|
label="部门"
|
|
width="180">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPersonDept || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinMaterials"
|
|
label="资料">
|
|
<template slot-scope="scope" v-if="scope.row.joinMaterialsList.length">
|
|
<p class="file" :title="item.oldFileName" v-for="item in scope.row.joinMaterials" :key="item.id" @click="downloadFile(item.id)">
|
|
{{ item.oldFileName }}
|
|
</p>
|
|
</template>
|
|
<template v-else>-</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</div>
|
|
</div>
|
|
<div class="modular-item" v-if="detailData.nodeType === 'GROUP'">
|
|
<label class="modular-content-p-name">我司参与人员</label>
|
|
<div class="modular-content-p-table">
|
|
<el-table
|
|
:data="detailData.joinpersonEOList1"
|
|
border
|
|
style="width: 100%">
|
|
<el-table-column
|
|
prop="joinPerson"
|
|
label="我司委员"
|
|
width="180">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPerson || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinPersonDept"
|
|
label="部门"
|
|
width="180">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.joinPersonDept || '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="joinMaterials"
|
|
label="资料">
|
|
<template slot-scope="scope" v-if="scope.row.joinMaterialsList.length">
|
|
<p class="file" :title="item.oldFileName" v-for="item in scope.row.joinMaterials" :key="item.id" @click="downloadFile(item.id)">
|
|
{{ item.oldFileName }}
|
|
</p>
|
|
</template>
|
|
<template slot-scope="scope" v-if="!scope.row.joinMaterialsList.length">-</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</div>
|
|
</div>
|
|
<div class="modular-item">
|
|
<label class="modular-content-p-name">集团参与情况</label>
|
|
<span class="modular-content-p-val">
|
|
{{ detailData.menuJoinPosition || '-' }}
|
|
</span>
|
|
</div>
|
|
<div class="modular-item">
|
|
<label class="modular-content-p-name">支付信息</label>
|
|
<div class="modular-content-p-table">
|
|
<el-table
|
|
:data="detailData.payEOList"
|
|
border
|
|
style="width: 100%">
|
|
<el-table-column
|
|
prop="payMoney"
|
|
label="费用"
|
|
show-overflow-tooltip
|
|
min-width="100">
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payYear"
|
|
label="年份"
|
|
min-width="100">
|
|
<template slot-scope="scope">
|
|
{{ $dateFormat(new Date(scope.row.payYear), 'yyyy') }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payState"
|
|
label="状态"
|
|
min-width="80">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.payState === '1' ? '已交' : (scope.row.payStatus === '2' ? '待交' : '预算') }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payPlan"
|
|
label="计划内"
|
|
min-width="80">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.payPlan === '1' ? '是' : '否' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="payStyle"
|
|
label="缴费方式"
|
|
min-width="100">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.payStyle === '1' ? '年缴' : '趸交' }}
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</div>
|
|
</div>
|
|
<div class="modular-item" v-if="detailData.nodeType === 'FBW' || detailData.nodeType === 'BWH'">
|
|
<label class="modular-content-p-name">资料</label>
|
|
<div class="modular-content-p-flies">
|
|
<p
|
|
class="files-title"
|
|
v-for="(file, index) in detailData.materialList"
|
|
:key="index"
|
|
@click="downloadFile(file.id)"
|
|
>
|
|
{{ file.oldFileName }}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class="modular-item" v-if="detailData.nodeType === 'GROUP'">
|
|
<label class="modular-content-p-name">工作组资料</label>
|
|
<div class="modular-content-p-flies">
|
|
<p
|
|
class="files-title"
|
|
v-for="(file, index) in detailData.materialList"
|
|
:key="index"
|
|
@click="downloadFile(file.id)"
|
|
>
|
|
{{ file.oldFileName }}
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<!-- <div class="modular-item">-->
|
|
<!-- <label class="modular-content-p-name">相关标准</label>-->
|
|
<!-- <div class="modular-content-p-flies">-->
|
|
<!-- <p-->
|
|
<!-- class="files-title"-->
|
|
<!-- v-for="(stand, index) in detailData.standList"-->
|
|
<!-- :key="index"-->
|
|
<!-- @click="downloadFile(stand.id)"-->
|
|
<!-- >-->
|
|
<!-- {{ stand.menuName }}-->
|
|
<!-- </p>-->
|
|
<!-- </div>-->
|
|
<!-- </div>-->
|
|
<div class="modular-item">
|
|
<label class="modular-content-p-name">参会记录及资料</label>
|
|
<div class="modular-content-p-table">
|
|
<!-- <div-->
|
|
<!-- class="modular-content-p-list-item"-->
|
|
<!-- v-for="(meet, index) in detailData.meetEOList"-->
|
|
<!-- :key="index"-->
|
|
<!-- >-->
|
|
<!-- <div>-->
|
|
<!-- <label class="modular-content-p-name">参会人员</label>-->
|
|
<!-- <span class="modular-content-p-val">-->
|
|
<!-- {{ meet.joinPersonIds || '-' }}-->
|
|
<!-- </span>-->
|
|
<!-- </div>-->
|
|
<!-- <div>-->
|
|
<!-- <label class="modular-content-p-name">参会时间</label>-->
|
|
<!-- <span class="modular-content-p-val">-->
|
|
<!-- {{ meet.meetTime || '-' }}-->
|
|
<!-- </span>-->
|
|
<!-- </div>-->
|
|
<!-- <div>-->
|
|
<!-- <label class="modular-content-p-name">相关资料</label>-->
|
|
<!-- <div class="modular-content-p-flies">-->
|
|
<!-- <p-->
|
|
<!-- class="files-title"-->
|
|
<!-- v-for="(file, index) in meet.attFiles"-->
|
|
<!-- :key="index"-->
|
|
<!-- >-->
|
|
<!-- <a @click="openFileInPdf(file.id, file.oldFileName)" target="_blank"-->
|
|
<!-- style="width: calc(100% - 60px);display: inline-block;white-space: nowrap;overflow: hidden;text-overflow: ellipsis;">{{-->
|
|
<!-- file.oldFileName-->
|
|
<!-- }}</a>-->
|
|
<!-- <i title="下载" @click="downloadFile(file.id)" class="icon-download"-->
|
|
<!-- style="margin-bottom: 20px;"/>-->
|
|
<!-- <i title="下载带水印" @click="downloadFileByWater(file.id, file.fileSuffix)" class="icon-download2"-->
|
|
<!-- style="margin-bottom: 20px;"/>-->
|
|
<!-- </p>-->
|
|
<!-- </div>-->
|
|
<!-- </div>-->
|
|
<!-- </div>-->
|
|
<el-table
|
|
:data="detailData.meetEOList"
|
|
border
|
|
style="width: 100%">
|
|
<el-table-column
|
|
prop="meetName"
|
|
label="会议名称"
|
|
show-overflow-tooltip
|
|
width="180">
|
|
<template slot-scope="scope">
|
|
<!-- {{ $dateFormat(scope.row.meetDate, 'yyyy-MM-dd') }} - {{ scope.row.meetName }}-->
|
|
{{ scope.row.meetName }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
label="会议时间"
|
|
show-overflow-tooltip
|
|
width="180">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.meetingTime ? $moment(scope.row.meetingTime).format('YYYY-MM-DD') :
|
|
scope.row.meetDate ? $moment(scope.row.meetDate).format('YYYY-MM-DD') : '' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="meetPersonName"
|
|
label="参会人员"
|
|
show-overflow-tooltip
|
|
>
|
|
<template slot-scope="scope">
|
|
{{ scope.row.meetPersonName ? scope.row.meetPersonName.join(',') : '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<el-table-column
|
|
prop="deptName"
|
|
label="部门"
|
|
show-overflow-tooltip
|
|
width="100">
|
|
<template slot-scope="scope">
|
|
{{ scope.row.deptName ? scope.row.deptName.join(',') : '-' }}
|
|
</template>
|
|
</el-table-column>
|
|
<!-- <el-table-column-->
|
|
<!-- prop="meetReport"-->
|
|
<!-- show-overflow-tooltip-->
|
|
<!-- label="参会报告">-->
|
|
<!-- <template slot-scope="scope">-->
|
|
<!-- <p>{{ scope.row.meetReport }}</p>-->
|
|
<!-- </template>-->
|
|
<!-- </el-table-column>-->
|
|
<el-table-column
|
|
prop="materialsList"
|
|
show-overflow-tooltip
|
|
label="会议报告及资料"
|
|
width="180"
|
|
>
|
|
<template slot-scope="scope" v-if="scope.row.materialsList.length">
|
|
<p class="file" :title="item.oldFileName" v-for="item in scope.row.materialsList" :key="item.id" @click="downloadFile(item.id)">
|
|
{{ item.oldFileName }}
|
|
</p>
|
|
</template>
|
|
<template v-else>-</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- <div class="demo-drawer-footer">-->
|
|
<!-- <el-button class="common-button-primary" icon="el-icon-check" type="primary" @click="handleDetailDrawerSubmit" :loading="drawerSubmitLoading">提交</el-button>-->
|
|
<!-- <el-button class="common-button-default" icon="el-icon-close" @click="handleCloseDetailDrawer">取消</el-button>-->
|
|
<!-- </div>-->
|
|
</div>
|
|
</el-drawer>
|
|
<!-- 添加标准抽屉 -->
|
|
<el-drawer title="添加标准"
|
|
:visible.sync="drawerAddStandardFormVisible"
|
|
:wrapperClosable="false"
|
|
@close="handleCloseAddStandardDrawer"
|
|
v-if="drawerAddStandardFormVisible"
|
|
size="800px">
|
|
<div class="demo-drawer-content">
|
|
<div class="el-drawer-form">
|
|
<el-form
|
|
ref="addStandardForm"
|
|
:model="addStandardForm"
|
|
:rules="addStandardFormRules"
|
|
class="label-input-form"
|
|
>
|
|
<el-form-item label="所属工作组" prop="pId" label-width="150px" class="add-form-item form-item-disabled">
|
|
<el-input v-model="addStandardForm.pId" v-show="false"></el-input>
|
|
<el-input v-model="addStandardForm.gzzName"
|
|
placeholder="请选择所属工作组"
|
|
clearable
|
|
disabled
|
|
></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="标准名称" prop="standardName" label-width="150px" class="add-form-item">
|
|
<el-input v-model="addStandardForm.standardName"
|
|
placeholder="请输入标准名称"
|
|
clearable
|
|
></el-input>
|
|
</el-form-item>
|
|
<el-form-item label="标准号" prop="standardNumber" label-width="150px" class="add-form-item">
|
|
<el-input v-model="addStandardForm.standardNumber"
|
|
placeholder="请输入标准号"
|
|
clearable
|
|
></el-input>
|
|
</el-form-item>
|
|
</el-form>
|
|
<loading :loading="loading.submit">正在提交数据</loading>
|
|
</div>
|
|
<div class="demo-drawer-footer">
|
|
<el-button
|
|
round
|
|
class="common-button-primary"
|
|
icon="el-icon-check"
|
|
type="primary"
|
|
@click="handleAddStandardDrawerSubmit"
|
|
:loading="loading.submit">提交
|
|
</el-button>
|
|
<el-button
|
|
round
|
|
class="common-button-default"
|
|
icon="el-icon-close"
|
|
@click="handleCloseAddStandardDrawer">取消</el-button>
|
|
</div>
|
|
</div>
|
|
</el-drawer>
|
|
<!-- 2021-03-23上汽全公司选人需求 -->
|
|
<org-table
|
|
:visible.sync="visibleOrgTable"
|
|
title="参会人员"
|
|
dialog-model
|
|
:config="{
|
|
value: orgTableVal,
|
|
valueName: orgTableValName
|
|
}"
|
|
@confirm="isTreeOk"
|
|
></org-table>
|
|
<loading :loading="loading.loadData">数据正在加载中……</loading>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
import Graph from './components/knowledgeGraph'
|
|
import PersonSelect from './components/personSelect'
|
|
import StandSelect from './components/standSelect'
|
|
import axios from 'axios'
|
|
import File from './components/file'
|
|
import TableFile from './components/tableFile'
|
|
import Tree from './components/tree'
|
|
|
|
export default {
|
|
name: 'knowledgeGraphPage',
|
|
components: {
|
|
Graph,
|
|
PersonSelect,
|
|
StandSelect,
|
|
File,
|
|
TableFile,
|
|
Tree
|
|
},
|
|
data () {
|
|
return {
|
|
kgTreeList: {},
|
|
personSelect: [],
|
|
drawerVisible: false,
|
|
detailDrawerVisible: false,
|
|
participantsPopover: false,
|
|
drawerAddStandardFormVisible: false,
|
|
formData: {
|
|
fzwName: '',
|
|
gzzName: '',
|
|
participants: [],
|
|
standard: '',
|
|
process: '',
|
|
record: ''
|
|
},
|
|
formRules: {
|
|
fzwName: [
|
|
{ required: true, message: '请输入分标委名称', trigger: 'blur' },
|
|
{ min: 1, max: 100, message: '长度在 1 到 100 个字符', trigger: 'blur' }
|
|
],
|
|
gzzName: [
|
|
{ required: true, message: '请输入工作组名称', trigger: 'blur' },
|
|
{ min: 1, max: 100, message: '长度在 1 到 100 个字符', trigger: 'blur' }
|
|
],
|
|
participants: [
|
|
{ required: true, type: 'array', message: '请选择参与人员', trigger: 'change' },
|
|
],
|
|
standard: [
|
|
{ required: true, message: '请输入相关标准', trigger: 'blur' },
|
|
],
|
|
},
|
|
detailData: {
|
|
id: ''
|
|
},
|
|
loading: {
|
|
loadData: false,
|
|
loadDetail: false,
|
|
submit: false
|
|
},
|
|
checkTitle: '',
|
|
editVisible: false,
|
|
editForm: {
|
|
// 父节点名称
|
|
pMenuName: '',
|
|
// 节点类型
|
|
menuType: '',
|
|
sarGroupMenuEO: {
|
|
// 父节点id
|
|
pid: '',
|
|
// 节点类型
|
|
nodeType: '',
|
|
// 新增节点名称
|
|
menuName: '',
|
|
// 层级
|
|
menuLevel: ''
|
|
},
|
|
// 编号
|
|
meunNo: '',
|
|
// 性质
|
|
menuQuality: '',
|
|
// 状态
|
|
menuState: '',
|
|
// 换届时间
|
|
menuChangeTime: '',
|
|
// 集团参与情况
|
|
menuJoinPosition: '',
|
|
// 秘书处联系方式
|
|
joinpersonEOList0: [],
|
|
// 我司参与人员
|
|
joinpersonEOList1: [],
|
|
// 备注
|
|
menuRemark: '',
|
|
// 标准化工作领域
|
|
menuField: '',
|
|
// 支付信息
|
|
payEOList: [],
|
|
// 资料
|
|
menuMaterial: '',
|
|
// 参会记录及资料
|
|
meetEOList: []
|
|
},
|
|
pMenuName: '',
|
|
menuType: '',
|
|
// 新增
|
|
addForm: {
|
|
// 父节点名称
|
|
pMenuName: '',
|
|
// 节点类型
|
|
menuType: '',
|
|
sarGroupMenuEO: {
|
|
// 父节点id
|
|
pid: '',
|
|
// 节点类型
|
|
nodeType: '',
|
|
// 新增节点名称
|
|
menuName: '',
|
|
// 层级
|
|
menuLevel: ''
|
|
},
|
|
// 编号
|
|
meunNo: '',
|
|
// 性质
|
|
menuQuality: '',
|
|
// 状态
|
|
menuState: '',
|
|
// 换届时间
|
|
menuChangeTime: '',
|
|
// 集团参与情况
|
|
menuJoinPosition: '',
|
|
// 秘书处联系方式
|
|
joinpersonEOList0: [],
|
|
// 我司参与人员
|
|
joinpersonEOList1: [],
|
|
// 备注
|
|
menuRemark: '',
|
|
// 标准化工作领域
|
|
menuField: '',
|
|
// 支付信息
|
|
payEOList: [],
|
|
// 资料
|
|
menuMaterial: '',
|
|
// 参会记录及资料
|
|
meetEOList: []
|
|
}, // 新增
|
|
addFormDefault: {
|
|
// 父节点名称
|
|
pMenuName: '',
|
|
// 节点类型
|
|
menuType: '',
|
|
// sarGroupMenuEO: {
|
|
// // 父节点id
|
|
// pid: '',
|
|
// // 节点类型
|
|
// nodeType: '',
|
|
// // 新增节点名称
|
|
// menuName: '',
|
|
// // 层级
|
|
// menuLevel: ''
|
|
// },
|
|
// 编号
|
|
meunNo: '',
|
|
// 性质
|
|
menuQuality: '',
|
|
// 状态
|
|
menuState: '',
|
|
// 换届时间
|
|
menuChangeTime: '',
|
|
// 集团参与情况
|
|
menuJoinPosition: '',
|
|
// 秘书处联系方式
|
|
joinpersonEOList0: [],
|
|
// 我司参与人员
|
|
joinpersonEOList1: [],
|
|
// 备注
|
|
menuRemark: '',
|
|
// 标准化工作领域
|
|
menuField: '',
|
|
// 支付信息
|
|
payEOList: [],
|
|
// 资料
|
|
menuMaterial: '',
|
|
// 参会记录及资料
|
|
meetEOList: []
|
|
},
|
|
// 是否正在编辑
|
|
isEdit: false,
|
|
// 新增或者编辑的弹窗是否可见
|
|
drawerAddFormVisible: false,
|
|
drawerEditFormVisible: false,
|
|
// 新增节点表单校验规则
|
|
addFormRules: {
|
|
pMenuName: [
|
|
{ required: true, message: '父节点名称不能为空', trigger: 'blur' }
|
|
],
|
|
menuType: [
|
|
{ required: true, message: '节点类型不能为空', trigger: 'change' }
|
|
],
|
|
menuQuality: [
|
|
{ required: true, message: '性质不能为空', trigger: 'change' }
|
|
],
|
|
menuState: [
|
|
{ required: true, message: '状态不能为空', trigger: 'change' }
|
|
],
|
|
meunNo: [
|
|
{ required: true, message: '编号不能为空', trigger: 'blur' }
|
|
],
|
|
menuName: [
|
|
{ required: true, validator: this.validMenuName, trigger: 'blur' }
|
|
]
|
|
},
|
|
delContactList: [],
|
|
delParticipantList: [],
|
|
delPayList: [],
|
|
delMeetList: [],
|
|
delData: {},
|
|
// 当前节点
|
|
currentNode: '',
|
|
currentNodeData: {},
|
|
// 新增表单备份
|
|
addFormOrigin: '',
|
|
addStandardForm: {
|
|
pId: '',
|
|
gzzName: '',
|
|
standardName: '',
|
|
standardNumber: ''
|
|
},
|
|
addStandardFormForReset: {
|
|
pId: '',
|
|
gzzName: '',
|
|
standardName: '',
|
|
standardNumber: ''
|
|
},
|
|
addStandardFormRules: {
|
|
pId: [
|
|
{ required: true, message: '所属工作组不能为空', trigger: 'blur' }
|
|
],
|
|
gzzName: [
|
|
{ required: true, message: '所属工作组不能为空', trigger: 'blur' }
|
|
],
|
|
standardName: [
|
|
{ required: true, message: '标准名称不能为空', trigger: 'blur' }
|
|
],
|
|
standardNumber: [
|
|
{ required: true, message: '标准号不能为空', trigger: 'blur' }
|
|
]
|
|
},
|
|
visibleOrgTable: false,
|
|
orgTableVal: '',
|
|
orgTableValName: '',
|
|
meetIndex: ''
|
|
}
|
|
},
|
|
computed: {
|
|
drawerTitle () {
|
|
return this.formData.id ? '编辑' : '新增'
|
|
},
|
|
|
|
addDrawerTitle() {
|
|
if (this.isEdit) {
|
|
const type = this.detailData.nodeType
|
|
switch (type) {
|
|
case 'BWH':
|
|
return '标委会编辑'
|
|
case 'FBW':
|
|
return '分标委编辑'
|
|
case 'GROUP':
|
|
return '工作组编辑'
|
|
case 'STAND':
|
|
return '标准编辑'
|
|
}
|
|
} else {
|
|
switch (this.addForm.sarGroupMenuEO.menuType) {
|
|
case 'BWH':
|
|
return '标委会新增'
|
|
case 'FBW':
|
|
return '分标委新增'
|
|
case 'GROUP':
|
|
return '工作组新增'
|
|
case 'STAND':
|
|
return '标准新增'
|
|
}
|
|
}
|
|
},
|
|
|
|
// 菜单名称
|
|
addMenuNameLabel() {
|
|
return this.addForm.sarGroupMenuEO.menuType === 'BWH' ? '标委会名称' : (this.addForm.sarGroupMenuEO.menuType === 'FBW' ? '分标委名称' : (this.addForm.sarGroupMenuEO.menuType === 'GROUP' ? '工作组名称' : '标准名称'))
|
|
},
|
|
|
|
editMenuNameLabel() {
|
|
return this.editForm.sarGroupMenuEO.menuType === 'BWH' ? '标委会名称' : (this.editForm.sarGroupMenuEO.menuType === 'FBW' ? '分标委名称' : (this.editForm.sarGroupMenuEO.menuType === 'GROUP' ? '工作组名称' : '标准名称'))
|
|
},
|
|
|
|
// 所属
|
|
belongLabel() {
|
|
return this.addForm.sarGroupMenuEO.menuType === 'BWH' ? '所属标准工作组' : (this.addForm.sarGroupMenuEO.menuType === 'FBW' ? '所属标委会' : (this.addForm.sarGroupMenuEO.menuType === 'GROUP' ? '所属分标委' : '所属工作组'))
|
|
},
|
|
|
|
belongEditLabel() {
|
|
return this.editForm.sarGroupMenuEO.menuType === 'BWH' ? '所属标准工作组' : (this.editForm.sarGroupMenuEO.menuType === 'FBW' ? '所属标委会' : (this.editForm.sarGroupMenuEO.menuType === 'GROUP' ? '所属分标委' : '所属工作组'))
|
|
},
|
|
|
|
// 节点类型是标委会或者分标委
|
|
type1() {
|
|
return this.addForm.sarGroupMenuEO.menuType === 'BWH' || this.addForm.sarGroupMenuEO.menuType === 'FBW'
|
|
},
|
|
|
|
editType1() {
|
|
return this.editForm.sarGroupMenuEO.menuType === 'BWH' || this.editForm.sarGroupMenuEO.menuType === 'FBW'
|
|
},
|
|
|
|
// 节点类型是工作组或者标准
|
|
type2() {
|
|
return this.addForm.sarGroupMenuEO.menuType === 'GROUP' || this.addForm.sarGroupMenuEO.menuType === 'STAND'
|
|
},
|
|
|
|
editType2() {
|
|
return this.editForm.sarGroupMenuEO.menuType === 'GROUP' || this.editForm.sarGroupMenuEO.menuType === 'STAND'
|
|
},
|
|
|
|
// 节点类型
|
|
type3() {
|
|
return this.addForm.sarGroupMenuEO.menuType !== ''
|
|
},
|
|
|
|
editType3() {
|
|
return this.editForm.sarGroupMenuEO.menuType !== ''
|
|
}
|
|
},
|
|
methods: {
|
|
handleNodeClick (node) {
|
|
const data = node._cfg.model
|
|
this.currentNode = data.nodeName
|
|
this.currentNodeData = data
|
|
this.addForm.pMenuName = data.nodeName
|
|
this.addForm.menuType = data.nodeType === 'ROOT' ? 'BWH' : (data.nodeType === 'BWH' ? 'FBW' : (data.nodeType === 'FBW' ? 'GROUP' : 'STAND'))
|
|
this.pMenuName = this.addForm.pMenuName
|
|
this.menuType = this.addForm.menuType
|
|
this.addForm.sarGroupMenuEO = {
|
|
pid: data.id,
|
|
menuType: data.nodeType === 'ROOT' ? 'BWH' : (data.nodeType === 'BWH' ? 'FBW' : (data.nodeType === 'FBW' ? 'GROUP' : 'STAND')),
|
|
menuLevel: data.nodeType === 'ROOT' ? '1' : (data.nodeType === 'BWH' ? '2' : (data.nodeType === 'FBW' ? '3' : '4'))
|
|
}
|
|
if (data.nodeType !== 'ROOT') {
|
|
const level = parseInt(data.level)
|
|
this.detailData = {
|
|
menuId: data.id,
|
|
nodeType: data.nodeType,
|
|
nodeName: data.nodeName,
|
|
parentId: data.parentNodeId,
|
|
standFlag: data.standFlag,
|
|
data: data.data
|
|
}
|
|
}
|
|
this.delData = {
|
|
menuId: data.id,
|
|
menuName: data.nodeName,
|
|
children: data.children,
|
|
nodeType: data.nodeType,
|
|
pid: data.parentNodeId,
|
|
menuLevel: data.level
|
|
}
|
|
// this.$message.success('节点被点击' + data.name)
|
|
},
|
|
handleEdgeClick (edge) {
|
|
// this.$message.success('边被点击')
|
|
},
|
|
handleCloseAddStandardDrawer () {
|
|
this.drawerAddStandardFormVisible = false
|
|
},
|
|
|
|
handleCloseEditDrawer() {
|
|
this.drawerEditFormVisible = false
|
|
},
|
|
|
|
/**
|
|
* @description: 节点新增/编辑提交
|
|
* @date: 2020-11-06 15:10:26
|
|
* @auth: chenxiaoxi
|
|
*/
|
|
handleDrawerSubmit () {
|
|
this.$refs['addForm'].validate((valid) => {
|
|
if (valid) {
|
|
this.loading.submit = true
|
|
const data = JSON.parse(JSON.stringify(this.addForm))
|
|
if (data.menuChangeTime !== '') {
|
|
data.menuChangeTime = new Date(data.menuChangeTime).getTime()
|
|
}
|
|
data.sarGroupMenuEO.menuName = data.menuName
|
|
data.menuName = undefined
|
|
data.menuType = undefined
|
|
this.$http.axios({
|
|
url: '/api/lawss/sarGroupMenu/insertMenu',
|
|
method: 'post',
|
|
data
|
|
}).then(res => {
|
|
this.loading.submit = false
|
|
if (res.data.ok) {
|
|
this.$message.success('新增成功')
|
|
this.selectKGTreeList()
|
|
this.drawerAddFormVisible = false
|
|
this.$refs['addForm'].resetFields()
|
|
} else {
|
|
this.$message.warning(res.data.message)
|
|
}
|
|
}).catch(e => {
|
|
this.loading.submit = false
|
|
this.$message.warning(res.data.message)
|
|
})
|
|
}
|
|
})
|
|
// this.drawerVisible = false
|
|
},
|
|
|
|
handleDrawerEditSubmit () {
|
|
this.$refs['addForm'].validate((valid) => {
|
|
if (valid) {
|
|
this.loading.submit = true
|
|
const data = JSON.parse(JSON.stringify(this.editForm))
|
|
if (data.menuChangeTime !== '') {
|
|
data.menuChangeTime = new Date(data.menuChangeTime).getTime()
|
|
}
|
|
data.sarGroupMenuEO.menuName = data.menuName
|
|
data.menuName = undefined
|
|
data.menuType = undefined
|
|
this.$http.axios({
|
|
url: '/api/lawss/sarGroupDetail/updateDetail',
|
|
method: 'post',
|
|
data
|
|
}).then(res => {
|
|
this.loading.submit = false
|
|
if (res.data.ok) {
|
|
this.$message.success('更新成功')
|
|
this.selectKGTreeList()
|
|
this.drawerEditFormVisible = false
|
|
} else {
|
|
this.$message.warning(res.data.message)
|
|
}
|
|
}).catch(e => {
|
|
this.loading.submit = false
|
|
this.$message.warning(res.data.message)
|
|
})
|
|
}
|
|
})
|
|
// this.drawerVisible = false
|
|
},
|
|
handleCloseDetailDrawer () {
|
|
|
|
},
|
|
insertData () {
|
|
this.isEdit = false
|
|
if (this.addForm.sarGroupMenuEO.pid !== '') {
|
|
this.drawerAddFormVisible = true
|
|
this.$nextTick(() => {
|
|
this.$refs['addForm'].resetFields()
|
|
// 清空表单内容
|
|
let sarGroupMenuEO = this.addForm.sarGroupMenuEO
|
|
this.addForm = {...this.addFormDefault}
|
|
this.addForm.pMenuName = this.pMenuName
|
|
this.addForm.menuType = this.menuType
|
|
this.addForm.sarGroupMenuEO = sarGroupMenuEO
|
|
this.addForm.joinpersonEOList0 = []
|
|
this.addForm.joinpersonEOList1 = []
|
|
this.addForm.payEOList = []
|
|
this.addForm.meetEOList = []
|
|
})
|
|
}
|
|
},
|
|
/**
|
|
* @description: 节点更新
|
|
* @date: 2020-11-18 14:36:27
|
|
* @auth: chenxiaoxi
|
|
*/
|
|
updateData () {
|
|
this.isEdit = true
|
|
this.drawerEditFormVisible = true
|
|
this.getMenuDetail(this.detailData['menuId'])
|
|
.then(res => {
|
|
this.editForm = JSON.parse(JSON.stringify(res))
|
|
this.editForm.pMenuName = res.pidDetail.menuName
|
|
this.editForm.menuType = res.nodeType
|
|
})
|
|
},
|
|
// 查看
|
|
selectData () {
|
|
const detailData = this.detailData
|
|
if (detailData.nodeType === 'STAND') {
|
|
if (detailData.standFlag === 1) {
|
|
const { standType, id } = detailData.data
|
|
let routeUrl = this.$router.resolve({
|
|
name: 'OtherStandardDetails',
|
|
params: {
|
|
id,
|
|
pageType: `${standType}_STAND`
|
|
}
|
|
})
|
|
window.open(routeUrl.href, '_blank')
|
|
} else {
|
|
this.$message.warning('该标准不在系统内')
|
|
}
|
|
} else {
|
|
this.checkTitle = this.detailData.nodeName + '详情'
|
|
this.detailDrawerVisible = true
|
|
this.getMenuDetail(this.detailData['menuId'])
|
|
.then(res => {
|
|
this.detailData = Object.assign({}, this.detailData, res)
|
|
})
|
|
}
|
|
},
|
|
// 删除
|
|
handleDelData() {
|
|
if (this.delData.children.length && this.delData.nodeType !== 'GROUP') {
|
|
this.$message.warning('删除失败,该节点下包含子节点')
|
|
} else {
|
|
this.$confirm('您是否确认删除?', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning'
|
|
}).then(() => {
|
|
this.$http.axios({
|
|
url: '/api/lawss/sarGroupMenu/deleteMenu',
|
|
method: 'post',
|
|
data: {
|
|
id: this.delData.menuId,
|
|
menuName: this.delData.menuName,
|
|
menuType: this.delData.nodeType,
|
|
menuLevel: this.delData.menuLevel,
|
|
pid: this.delData.pid
|
|
}
|
|
}).then(res => {
|
|
if (res.data.ok) {
|
|
this.$message({
|
|
type: 'success',
|
|
message: '删除成功!'
|
|
})
|
|
this.selectKGTreeList()
|
|
} else {
|
|
this.$message({
|
|
type: 'warning',
|
|
message: res.data.message
|
|
})
|
|
}
|
|
}).catch(e => {
|
|
|
|
})
|
|
}).catch(() => {
|
|
|
|
})
|
|
}
|
|
},
|
|
selectKGTreeList () {
|
|
this.delData = {}
|
|
return new Promise((resolve, reject) => {
|
|
this.loading.loadData = true
|
|
this.$http.get('lawss/sarGroupMenu/getMenu', {}, {},
|
|
res => {
|
|
const dataObj = JSON.parse(res.data)
|
|
this.kgTreeList = dataObj[0]
|
|
this.loading.loadData = false
|
|
resolve(res)
|
|
},
|
|
err => {
|
|
this.loading.loadData = false
|
|
reject(err)
|
|
}
|
|
)
|
|
})
|
|
},
|
|
openFileInPdf (attId, oldFileName) {
|
|
// 缺少文件
|
|
if (this.$hasPermission('ZWBGBNTL11')) {
|
|
this.$http.get('lawss/sarStandFile/queryConvertAtt', {
|
|
attId: attId
|
|
}, {
|
|
_this: this
|
|
}, res => {
|
|
if (res.data) {
|
|
let fileObj = {}
|
|
fileObj.fileId = res.data.attId
|
|
fileObj.fileName = oldFileName
|
|
let fileList = []
|
|
let repeatData = 0
|
|
if (sessionStorage.getItem('fileInfo')) {
|
|
fileList = JSON.parse(sessionStorage.getItem('fileInfo'))
|
|
if (fileList != null && fileList.length > 0) {
|
|
for (let i = 0; i < fileList.length; i++) {
|
|
if (fileList[i].fileId === res.data.attId) {
|
|
repeatData = 1
|
|
break
|
|
}
|
|
}
|
|
if (repeatData === 0) {
|
|
fileList.push(fileObj)
|
|
fileList = JSON.stringify(fileList)
|
|
sessionStorage.setItem('fileInfo', fileList)
|
|
}
|
|
}
|
|
} else {
|
|
fileList.push(fileObj)
|
|
fileList = JSON.stringify(fileList)
|
|
sessionStorage.setItem('fileInfo', fileList)
|
|
}
|
|
window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + res.data.attId))
|
|
} else {
|
|
this.$message.error('文档未转换成功或本地读取不到该文档')
|
|
}
|
|
}, e => {
|
|
this.$message.error('文档未转换成功或本地读取不到该文档')
|
|
})
|
|
} else {
|
|
this.$message.error('没有在线预览文档权限!')
|
|
}
|
|
},
|
|
downloadFile (attId) {
|
|
if (attId != null && attId !== '') {
|
|
window.location.href = '/api/att/attFile/downloadFileForSar?fileId=' + attId
|
|
} else {
|
|
this.$message.error('请选择要下载的文件')
|
|
}
|
|
},
|
|
downloadFileByWater (attId, fileSuffix) {
|
|
if (fileSuffix !== 'pdf' && fileSuffix !== 'PDF') {
|
|
this.$message.error('水印下载仅支持PDF,pdf格式文件')
|
|
} else {
|
|
if (attId != null && attId !== '') {
|
|
window.location.href = '/api/att/attFile/downloadFileForSarWaterMark?fileId=' + attId
|
|
} else {
|
|
this.$message.error('请选择要下载的文件')
|
|
}
|
|
}
|
|
},
|
|
|
|
// 查看详情
|
|
getMenuDetail(menuId) {
|
|
return new Promise((resolve, reject) => {
|
|
this.loading.loadDetail = true
|
|
this.$http.post('lawss/sarGroupDetail/getMenuDetail', {
|
|
menuId: menuId
|
|
}, {}, res => {
|
|
this.loading.loadDetail = false
|
|
if (res.data.meetEOList && res.data.meetEOList.length) {
|
|
res.data.meetEOList.map(item => {
|
|
item.meetPersonNameShow = item.meetPersonName.join(',')
|
|
})
|
|
}
|
|
const data = {
|
|
...res.data,
|
|
nodeType: this.detailData.nodeType
|
|
}
|
|
resolve(data)
|
|
}, e => {
|
|
this.loading.loadDetail = false
|
|
})
|
|
})
|
|
},
|
|
|
|
/**
|
|
* @description: 节点名称自定义校验
|
|
* @date: 2020-11-06 15:01:22
|
|
* @auth: chenxiaoxi
|
|
*/
|
|
validMenuName(rule, value, callback) {
|
|
if (!value) {
|
|
const nodeType = this.addForm.sarGroupMenuEO.menuType
|
|
const ERR_TIPS = nodeType === 'BWH' ? '标委会名称不能为空' : (nodeType === 'FBW' ? '分标委名称不能为空' : (nodeType === 'GROUP' ? '工作组名称不能为空' : '标准'))
|
|
return callback(new Error(ERR_TIPS))
|
|
} else {
|
|
callback()
|
|
}
|
|
},
|
|
|
|
// 添加联系方式条目
|
|
handleAddContact() {
|
|
if (this.isEdit) {
|
|
this.editForm.joinpersonEOList0.push({
|
|
id: new Date().getTime(),
|
|
joinPersonCompany: '',
|
|
joinPerson: '',
|
|
joinPersonPhone: '',
|
|
joinPersonEmail: ''
|
|
})
|
|
} else {
|
|
this.addForm.joinpersonEOList0.push({
|
|
id: new Date().getTime(),
|
|
joinPersonCompany: '',
|
|
joinPerson: '',
|
|
joinPersonPhone: '',
|
|
joinPersonEmail: ''
|
|
})
|
|
}
|
|
},
|
|
|
|
// 移除联系方式条目
|
|
handleDelContactItem() {
|
|
if (this.delContactList.length) {
|
|
this.$confirm('您是否确认删除选中条目?', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning',
|
|
confirmButtonClass: 'common-button-primary',
|
|
roundButton: true
|
|
}).then(() => {
|
|
new Promise((resolve, reject) => {
|
|
const sourceData = this.isEdit ? JSON.parse(JSON.stringify(this.editForm.joinpersonEOList0)) : JSON.parse(JSON.stringify(this.addForm.joinpersonEOList0))
|
|
for (let i = 0; i < this.delContactList.length; i++) {
|
|
let delIndex = -1
|
|
for (let j = 0; j < sourceData.length; j++) {
|
|
if (this.delContactList[i].id === sourceData[j].id) {
|
|
delIndex = j
|
|
}
|
|
}
|
|
if (delIndex !== -1) {
|
|
this.delContactList.splice(delIndex, 1)
|
|
i = i - 1
|
|
sourceData.splice(delIndex, 1)
|
|
}
|
|
if (i === this.delParticipantList.length - 1) {
|
|
resolve(sourceData)
|
|
}
|
|
}
|
|
}).then((sourceData) => {
|
|
setTimeout(() => {
|
|
if (this.isEdit) {
|
|
this.editForm.joinpersonEOList0 = JSON.parse(JSON.stringify(sourceData))
|
|
} else {
|
|
this.addForm.joinpersonEOList0 = JSON.parse(JSON.stringify(sourceData))
|
|
}
|
|
})
|
|
})
|
|
}).catch(() => {})
|
|
} else {
|
|
this.$message.warning('请选择要移除的联系方式条目')
|
|
}
|
|
},
|
|
|
|
// 添加参与人员
|
|
handleAddParticipants() {
|
|
if (this.isEdit) {
|
|
this.editForm.joinpersonEOList1.push({
|
|
id: new Date().getTime(),
|
|
joinPerson: '',
|
|
joinPersonDept: '',
|
|
joinMaterials: ''
|
|
})
|
|
} else {
|
|
this.addForm.joinpersonEOList1.push({
|
|
id: new Date().getTime(),
|
|
joinPerson: '',
|
|
joinPersonDept: '',
|
|
joinMaterials: ''
|
|
})
|
|
}
|
|
},
|
|
|
|
// 移除参与人员条目
|
|
handleDelParticipantItem() {
|
|
if (this.delParticipantList.length) {
|
|
this.$confirm('您是否确认删除选中条目?', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning',
|
|
confirmButtonClass: 'common-button-primary',
|
|
roundButton: true
|
|
}).then(() => {
|
|
new Promise((resolve, reject) => {
|
|
const sourceData = this.isEdit ? JSON.parse(JSON.stringify(this.editForm.joinpersonEOList1)) : JSON.parse(JSON.stringify(this.addForm.joinpersonEOList1))
|
|
for (let i = 0; i < this.delParticipantList.length; i++) {
|
|
let delIndex = -1
|
|
for (let j = 0; j < sourceData.length; j++) {
|
|
if (this.delParticipantList[i].id === sourceData[j].id) {
|
|
delIndex = j
|
|
}
|
|
}
|
|
if (delIndex !== -1) {
|
|
this.delParticipantList.splice(delIndex, 1)
|
|
i = i - 1
|
|
sourceData.splice(delIndex, 1)
|
|
}
|
|
if (i === this.delParticipantList.length - 1) {
|
|
resolve(sourceData)
|
|
}
|
|
}
|
|
}).then((sourceData) => {
|
|
setTimeout(() => {
|
|
if (this.isEdit) {
|
|
this.editForm.joinpersonEOList1 = JSON.parse(JSON.stringify(sourceData))
|
|
} else {
|
|
this.addForm.joinpersonEOList1 = JSON.parse(JSON.stringify(sourceData))
|
|
}
|
|
})
|
|
})
|
|
}).catch(() => {})
|
|
} else {
|
|
this.$message.warning('请选择要移除的参与人员条目')
|
|
}
|
|
},
|
|
|
|
// 添加支付信息
|
|
handleAddPay() {
|
|
if (this.isEdit) {
|
|
this.editForm.payEOList.push({
|
|
id: new Date().getTime(),
|
|
payMoney: '',
|
|
payYear: '',
|
|
payState: '',
|
|
payPlan: '',
|
|
payStyle: ''
|
|
})
|
|
} else {
|
|
this.addForm.payEOList.push({
|
|
id: new Date().getTime(),
|
|
payMoney: '',
|
|
payYear: '',
|
|
payState: '',
|
|
payPlan: '',
|
|
payStyle: ''
|
|
})
|
|
}
|
|
},
|
|
|
|
// 移除支付信息条目
|
|
handleDelPayItem() {
|
|
if (this.delPayList.length) {
|
|
this.$confirm('您是否确认删除选中条目?', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning',
|
|
confirmButtonClass: 'common-button-primary',
|
|
roundButton: true
|
|
}).then(() => {
|
|
new Promise((resolve, reject) => {
|
|
const sourceData = this.isEdit ? JSON.parse(JSON.stringify(this.editForm.payEOList)) : JSON.parse(JSON.stringify(this.addForm.payEOList))
|
|
for (let i = 0; i < this.delPayList.length; i++) {
|
|
let delIndex = -1
|
|
for (let j = 0; j < sourceData.length; j++) {
|
|
if (this.delPayList[i].id === sourceData[j].id) {
|
|
delIndex = j
|
|
}
|
|
}
|
|
if (delIndex !== -1) {
|
|
this.delPayList.splice(delIndex, 1)
|
|
i = i - 1
|
|
sourceData.splice(delIndex, 1)
|
|
}
|
|
if (i === this.delPayList.length - 1) {
|
|
resolve(sourceData)
|
|
}
|
|
}
|
|
}).then((sourceData) => {
|
|
setTimeout(() => {
|
|
if (this.isEdit) {
|
|
this.editForm.payEOList = JSON.parse(JSON.stringify(sourceData))
|
|
} else {
|
|
this.addForm.payEOList = JSON.parse(JSON.stringify(sourceData))
|
|
}
|
|
})
|
|
})
|
|
}).catch(() => {})
|
|
} else {
|
|
this.$message.warning('请选择要移除的支付信息条目')
|
|
}
|
|
},
|
|
|
|
// 添加参会记录及资料
|
|
handleAddMeet() {
|
|
if (this.isEdit) {
|
|
this.editForm.meetEOList.push({
|
|
delId: new Date().getTime(),
|
|
meetDate: '',
|
|
meetName: '',
|
|
meetPerson: '',
|
|
meetReport: '',
|
|
meetPersonNameShow: ''
|
|
})
|
|
} else {
|
|
this.addForm.meetEOList.push({
|
|
delId: new Date().getTime(),
|
|
meetDate: '',
|
|
meetName: '',
|
|
meetPerson: '',
|
|
meetReport: '',
|
|
meetPersonNameShow: ''
|
|
})
|
|
}
|
|
},
|
|
|
|
// 移除参会记录及资料条目
|
|
handleDelMeetItem() {
|
|
if (this.delMeetList.length) {
|
|
this.$confirm('您是否确认删除选中条目?', '提示', {
|
|
confirmButtonText: '确定',
|
|
cancelButtonText: '取消',
|
|
type: 'warning',
|
|
confirmButtonClass: 'common-button-primary',
|
|
roundButton: true
|
|
}).then(() => {
|
|
new Promise((resolve, reject) => {
|
|
const sourceData = this.isEdit ? JSON.parse(JSON.stringify(this.editForm.meetEOList)) : JSON.parse(JSON.stringify(this.addForm.meetEOList))
|
|
for (let i = 0; i < this.delMeetList.length; i++) {
|
|
let delIndex = -1
|
|
for (let j = 0; j < sourceData.length; j++) {
|
|
if (this.delMeetList[i].delId === sourceData[j].delId) {
|
|
delIndex = j
|
|
}
|
|
}
|
|
if (delIndex !== -1) {
|
|
this.delMeetList.splice(delIndex, 1)
|
|
i = i - 1
|
|
sourceData.splice(delIndex, 1)
|
|
}
|
|
if (i === this.delMeetList.length - 1) {
|
|
resolve(sourceData)
|
|
}
|
|
}
|
|
}).then((sourceData) => {
|
|
setTimeout(() => {
|
|
if (this.isEdit) {
|
|
this.editForm.meetEOList = JSON.parse(JSON.stringify(sourceData))
|
|
} else {
|
|
this.addForm.meetEOList = JSON.parse(JSON.stringify(sourceData))
|
|
}
|
|
})
|
|
})
|
|
}).catch(() => {})
|
|
} else {
|
|
this.$message.warning('请选择要移除的参会记录条目')
|
|
}
|
|
},
|
|
|
|
handleMeetEOSelectChange (val) {
|
|
this.delMeetList = val
|
|
},
|
|
|
|
// 参会人员选择
|
|
handleMeetPersonChecked(index, ids, names) {
|
|
if (this.isEdit) {
|
|
this.editForm.meetEOList[index].meetPerson = ids
|
|
this.editForm.meetEOList[index].meetPersonNameShow = names
|
|
} else {
|
|
this.addForm.meetEOList[index].meetPerson = ids
|
|
this.addForm.meetEOList[index].meetPersonNameShow = names
|
|
}
|
|
},
|
|
|
|
handleExport() {
|
|
const nodeData = this.currentNodeData
|
|
if (!nodeData.id) {
|
|
window.open(`/api/lawss/sarGroupDetail/exportInfo`)
|
|
} else {
|
|
window.open(`/api/lawss/sarGroupDetail/exportInfo?nodeId=${nodeData.nodeId}`)
|
|
}
|
|
},
|
|
|
|
handleAddStandardBtnClick() {
|
|
this.addStandardForm = {
|
|
...this.addStandardFormForReset,
|
|
}
|
|
this.addStandardForm.pId = this.detailData.menuId
|
|
this.addStandardForm.gzzName = this.detailData.nodeName
|
|
this.drawerAddStandardFormVisible = true
|
|
},
|
|
|
|
/**
|
|
* 添加标准
|
|
*/
|
|
handleAddStandardDrawerSubmit () {
|
|
this.$refs['addStandardForm'].validate((valid) => {
|
|
if (valid) {
|
|
this.loading.submit = true
|
|
|
|
const formData = {
|
|
"sarGroupMenuEO": {
|
|
"menuLevel": 4,
|
|
"menuName": this.addStandardForm.standardName,
|
|
"menuType": "STAND",
|
|
"pid": this.addStandardForm.pId,
|
|
"standNo": this.addStandardForm.standardNumber
|
|
}
|
|
}
|
|
this.$http.axios({
|
|
url: '/api/lawss/sarGroupMenu/insertMenu',
|
|
method: 'post',
|
|
data: formData
|
|
}).then(res => {
|
|
this.loading.submit = false
|
|
if (res.data.ok) {
|
|
this.$message.success('新增成功')
|
|
this.selectKGTreeList()
|
|
this.drawerAddStandardFormVisible = false
|
|
} else {
|
|
this.$message.warning(res.data.message)
|
|
}
|
|
}).catch(e => {
|
|
this.loading.submit = false
|
|
this.$message.warning(res.data.message)
|
|
})
|
|
}
|
|
})
|
|
// this.drawerVisible = false
|
|
},
|
|
|
|
handleCloseDrawer() {
|
|
this.drawerAddFormVisible = false
|
|
this.$refs['addForm'].clearValidate()
|
|
this.$refs['addForm'].resetFields()
|
|
},
|
|
// 打开选择参会人员组件
|
|
handleVisibleRole (item, index) {
|
|
this.meetIndex = index
|
|
this.visibleOrgTable = true
|
|
this.orgTableVal = item.meetPerson
|
|
this.orgTableValName = item.meetPersonNameShow
|
|
},
|
|
// 点击确定赋值人员
|
|
isTreeOk (checkedList) {
|
|
let treeUserNameList = []
|
|
let treeUserIdList = []
|
|
checkedList.map((item, index) => {
|
|
if (!item.isParent) {
|
|
treeUserNameList.push(item.userName)
|
|
treeUserIdList.push(item.userId)
|
|
}
|
|
})
|
|
this.addForm.meetEOList[this.meetIndex].meetPersonNameShow = treeUserNameList.join(',')
|
|
this.addForm.meetEOList[this.meetIndex].meetPerson = treeUserIdList.join(',')
|
|
this.visibleOrgTable = false
|
|
}
|
|
},
|
|
watch: {
|
|
|
|
},
|
|
mounted() {
|
|
this.selectKGTreeList()
|
|
$('.container-box').addClass('work-group-wrap')
|
|
},
|
|
destroyed() {
|
|
$('.container-box').removeClass('work-group-wrap')
|
|
}
|
|
}
|
|
</script>
|
|
|
|
<style lang="less" scoped>
|
|
.modular-content {
|
|
& > div {
|
|
border-bottom: 1px solid #E5E5E5;
|
|
|
|
.modular-content-p-list {
|
|
margin-left: 20px;
|
|
|
|
.modular-content-p-list-item {
|
|
border-bottom: 1px solid #E5E5E5;
|
|
|
|
&:last-child {
|
|
border-bottom: none;
|
|
}
|
|
}
|
|
}
|
|
|
|
.modular-content-p-name {
|
|
display: inline-block;
|
|
width: 220px;
|
|
height: 50px;
|
|
line-height: 50px;
|
|
font-size: 14px;
|
|
color: #333333;
|
|
vertical-align: top;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
}
|
|
|
|
.modular-content-p-val {
|
|
display: inline-block;
|
|
width: calc(~'100% - 225px');
|
|
height: 50px;
|
|
line-height: 50px;
|
|
font-size: 14px;
|
|
color: #999999;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
/deep/ .el-input__inner {
|
|
border: none;
|
|
}
|
|
/deep/ .el-select {
|
|
width: 100%;
|
|
}
|
|
/deep/ .el-date-editor {
|
|
width: 100%;
|
|
}
|
|
&.join-and-stop {
|
|
display: inline-flex;
|
|
.el-date-editor {
|
|
flex: auto;
|
|
overflow: hidden;
|
|
}
|
|
}
|
|
}
|
|
|
|
.modular-content-p-flies {
|
|
position: relative;
|
|
display: inline-block;
|
|
width: calc(~'100% - 225px');
|
|
min-height: 50px;
|
|
|
|
& > .files-title {
|
|
height: 50px;
|
|
line-height: 50px;
|
|
font-size: 16px;
|
|
color: #409EFF;
|
|
max-width: 100%;
|
|
overflow: hidden;
|
|
text-overflow: ellipsis;
|
|
white-space: nowrap;
|
|
&:hover {
|
|
cursor: pointer;
|
|
text-decoration: underline;
|
|
}
|
|
|
|
& > a {
|
|
cursor: pointer;
|
|
}
|
|
|
|
& > i {
|
|
display: inline-block;
|
|
margin-left: 3px;
|
|
width: 18px;
|
|
height: 16px;
|
|
background-repeat: no-repeat;
|
|
background-size: 100% 100%;
|
|
background-position: center center;
|
|
vertical-align: sub;
|
|
cursor: pointer;
|
|
}
|
|
|
|
.icon-download {
|
|
background-image: url("~assets/images/shangqi/img/download.png");
|
|
}
|
|
|
|
.icon-download2 {
|
|
background-image: url("~assets/images/shangqi/img/download2.png");
|
|
}
|
|
}
|
|
|
|
.decomposition-btn {
|
|
position: absolute;
|
|
top: 10px;
|
|
right: 0;
|
|
padding: 0 10px;
|
|
height: 30px;
|
|
line-height: 30px;
|
|
font-size: 14px;
|
|
color: #07C160;
|
|
border: 1px solid #07C160;
|
|
background: rgba(1, 193, 96, 0.1);
|
|
|
|
.icon-separate {
|
|
display: inline-block;
|
|
margin-right: 3px;
|
|
width: 16px;
|
|
height: 16px;
|
|
background-repeat: no-repeat;
|
|
background-size: 100% 100%;
|
|
background-position: center center;
|
|
vertical-align: sub;
|
|
background-image: url("~assets/images/shangqi/standardDetails/separate.png");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.modular-content-p-table {
|
|
.file {
|
|
color: #409EFF;
|
|
width: 100%;
|
|
overflow: hidden;
|
|
white-space: nowrap;
|
|
text-overflow: ellipsis;
|
|
&:hover {
|
|
cursor: pointer;
|
|
text-decoration: underline;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
.work-group {
|
|
height: 100%;
|
|
display: flex;
|
|
flex-direction: column;
|
|
.work-group-header {
|
|
display: flex;
|
|
position: relative;
|
|
justify-content: center;
|
|
align-items: center;
|
|
height: 40px;
|
|
line-height: 40px;
|
|
.node-info {
|
|
height: 100%;
|
|
a {
|
|
font-weight: 600;
|
|
font-size: 16px;
|
|
color: #666;
|
|
}
|
|
}
|
|
.header-btn-group {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
}
|
|
.export {
|
|
position: absolute;
|
|
top: 0;
|
|
right: 0;
|
|
}
|
|
}
|
|
.content {
|
|
flex: auto;
|
|
overflow-y: auto;
|
|
height: 100%;
|
|
.graph {
|
|
height: inherit;
|
|
}
|
|
}
|
|
.el-drawer-form {
|
|
height: 100%;
|
|
}
|
|
.clearable-item {
|
|
/deep/ .el-input__inner {
|
|
padding-right: 30px !important;
|
|
}
|
|
}
|
|
.add-form-table-item {
|
|
&:last-child {
|
|
margin-bottom: 10px;
|
|
}
|
|
}
|
|
}
|
|
/deep/ .demo-drawer-content {
|
|
overflow-y: auto !important;
|
|
padding: 0 10px 0 20px !important;
|
|
}
|
|
</style>
|