21 changed files with 1582 additions and 146 deletions
@ -0,0 +1,15 @@ |
|||
import request from '@/utils/request' |
|||
let tokens = window.sessionStorage.getItem('tokenValue') |
|||
export default { |
|||
// 获取流程列表
|
|||
getRecordBySid: function(sid) { |
|||
return request({ |
|||
url: '/cyf/approval/getRecordBySid/' + sid, |
|||
method: 'get', |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
} |
@ -0,0 +1,125 @@ |
|||
import request from '@/utils/request' |
|||
import qs from 'qs' |
|||
|
|||
// let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjMwMDI3MDA3fQ.9bEgBzFW2g1CUT7s5VXxhNCa10cyU_WTCFeqpQje0iY'
|
|||
let tokens = window.sessionStorage.getItem('tokenValue') |
|||
// 获取菜单 分页列表
|
|||
export function pageList(data) { |
|||
return request({ |
|||
url: '/cyf/sysorganization/listPage', |
|||
method: 'POST', |
|||
data: data, |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
// 查询左侧部门列表
|
|||
export function orgList(data) { |
|||
return request({ |
|||
url: '/cyf/sysorganization/list', |
|||
method: 'get', |
|||
data: data, |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
// 编辑部门信息
|
|||
export function postOrgtree(data) { |
|||
return request({ |
|||
url: '/cyf/sysorganization/update/' + data.sid, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
// 获取 机构分页列表(编辑部门信息)
|
|||
export function putOrgtree(data) { |
|||
return request({ |
|||
url: '/cyf/sysorganization/update/' + data.sid, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
|
|||
// 新增部门信息
|
|||
export function addOrgTree(data) { |
|||
return request({ |
|||
url: '/cyf/sysorganization/save', |
|||
method: 'POST', |
|||
data: data, |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
// 回显
|
|||
export function selectBySid(data) { |
|||
return request({ |
|||
url: 'cyf/sysorganization/fetchBySid/' + data, |
|||
method: 'get', |
|||
data: data, |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
// 树 节点名称 删除
|
|||
export function delOrgtree(data) { |
|||
return request({ |
|||
url: `/cyf/sysorganization/delBySid/` + data.sid, |
|||
method: 'get', |
|||
data: qs.stringify(data), |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
// 查询主管人员 旧的:/cyf/sysstafforg/staffinfoList
|
|||
export function getStaff(data) { |
|||
return request({ |
|||
url: 'cyf/sysstaffinfo/getStaffNameByDeptSid', |
|||
method: 'get', |
|||
params: data, |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
// 查询分管人员
|
|||
export function getStaffName(params) { |
|||
return request({ |
|||
url: '/cyf/sysstaffinfo/getStaffName', |
|||
method: 'get', |
|||
params: params, |
|||
headers: { |
|||
'Content-Type': 'application/json', |
|||
'token': tokens |
|||
} |
|||
}) |
|||
} |
|||
// 查看二维码
|
|||
export function getQrCode(data) { |
|||
return request({ |
|||
url: '/cyf/sysorganization/getQrCode/' + data.sid, |
|||
method: 'post', |
|||
data: data, |
|||
headers: { |
|||
'Content-Type': 'application/json' |
|||
} |
|||
}) |
|||
} |
@ -0,0 +1,182 @@ |
|||
import request from '@/utils/request' |
|||
import qs from 'qs' |
|||
//let tokens = 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyTm8iOiI2IiwiaXNzIjoiV0JLIiwiZXhwIjoxNjI5OTQxNjI1fQ.aOFOz0h7c8YQs-ti2GLpqeWu4AE9mifx_043hLJQf8g'
|
|||
let tokens = window.sessionStorage.getItem('tokenValue'); |
|||
// 业务角色 列表
|
|||
export function roleOrgList(data){ |
|||
return request({ |
|||
url: '/cyf/sysrole/listPage', |
|||
method: 'post', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
|
|||
export function postList(data){ |
|||
return request({ |
|||
url: '/cyf/syspost/list', |
|||
method: 'get', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json'} |
|||
}) |
|||
} |
|||
|
|||
// 获取数据字典下拉列表
|
|||
export function typeValues(data) { |
|||
return request({ |
|||
url: '/cyf/dictcommon/typeValues', |
|||
method: 'get', |
|||
params: data |
|||
}) |
|||
} |
|||
|
|||
// 设置是否可用:isEnable:1可用,0不可用
|
|||
export function setRoleEnable(data) { |
|||
return request({ |
|||
url: '/cyf/sysrole/setIsEnable/' + data.sid + '/' + data.isEnable, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: { |
|||
'Content-Type': 'application/json' |
|||
} |
|||
}) |
|||
} |
|||
|
|||
/** |
|||
* <新增 保存角色> |
|||
* @orgSid 机构SID |
|||
* @remarks 备注 |
|||
* @roleName 角色名称 |
|||
* */ |
|||
export function saveOrgroles(data) { |
|||
return request({ |
|||
url: '/cyf/sysrole/save', |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
/** |
|||
* <根据SID 修改角色> |
|||
* @sid 角色SID |
|||
* @orgSid 机构SID |
|||
* @remarks 备注 |
|||
* @roleName 角色名称 |
|||
* */ |
|||
export function putOrgroles(data) { |
|||
return request({ |
|||
url: `/cyf/sysrole/update/${data.sid}`, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
|
|||
/** |
|||
* <根据SID 删除角色> |
|||
* @sid 角色SID |
|||
* */ |
|||
export function delOrgroles(data) { |
|||
return request({ |
|||
url: `/cyf/sysrole/delBySids/${data.sid}`, |
|||
method: 'get', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
// 移动端授权
|
|||
export function getRoleMenuList(data) { |
|||
return request({ |
|||
url: '/cyf/sysmobilemenurole/getRoleMenuList', |
|||
method: 'post', |
|||
params: { roleSid: data } |
|||
}) |
|||
} |
|||
|
|||
// 菜单授权保存
|
|||
export function saveRoleMenuList(data) { |
|||
return request({ |
|||
url: `/cyf/sysmobilemenurole/saveRoleMenuList`, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
|
|||
// 菜单授权
|
|||
export function roleMenuTree(data) { |
|||
return request({ |
|||
url: `/cyf/sysmenu/listAllByRoleSid`, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
|
|||
// 菜单授权保存
|
|||
export function saveorgrolemenus(data) { |
|||
return request({ |
|||
url: `/cyf/sysmenurole/updateRoleAndMenu`, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
// 资源授权
|
|||
export function sourceMenuTree(data) { |
|||
return request({ |
|||
url: `/cyf/syssource/listAllByRoleSid`, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
// 资源授权保存
|
|||
export function saveSource(data) { |
|||
return request({ |
|||
url: `/cyf/syssourcerole/updateRoleAndSource`, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
// 功能授权
|
|||
export function funMenuTree(data) { |
|||
return request({ |
|||
url: `/cyf/sysfunction/listAllByRoleSid`, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
|||
// 功能授权保存
|
|||
export function savefunMenu(data) { |
|||
return request({ |
|||
url: `/cyf/sysrolefunction/updateRoleAndFunction`, |
|||
method: 'POST', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json', |
|||
'token':tokens |
|||
} |
|||
}) |
|||
} |
@ -0,0 +1,31 @@ |
|||
import request from '@/utils/request' |
|||
import qs from 'qs' |
|||
|
|||
/** |
|||
* < 业务角色授权时菜单列表(拥有的菜单选中)> |
|||
* @orgTypeKeys 单位性质(类别 |
|||
* @roleSid 业务角色sid |
|||
* @userType 用户类型只能为1或2 |
|||
* */ |
|||
export function roleMenuTree(data){ |
|||
return request({ |
|||
url: '/system/v1/orgrolemenus/menutree', |
|||
method: 'post', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json'} |
|||
}) |
|||
} |
|||
|
|||
/** |
|||
* < 保存角色授权的菜单项 > |
|||
* @roleMenus[] 角色权限列表 {menuSid 菜单sid} {orgSid 单位sid} {roleSid 角色sid} |
|||
* @roleSid 业务角色sid |
|||
* */ |
|||
export function saveorgrolemenus(data){ |
|||
return request({ |
|||
url: '/system/v1/orgrolemenus', |
|||
method: 'post', |
|||
data: data, |
|||
headers: {'Content-Type': 'application/json'} |
|||
}) |
|||
} |
@ -0,0 +1,660 @@ |
|||
<template> |
|||
<div class="container" style="display: flex;"> |
|||
<div class="org-tree"> |
|||
<el-tree :data="treedata" node-key="sid" :props="props" :default-expanded-keys="['fd6435f2-0005-11ec-a033-48452053aa33']" @node-click="handleNodeClick"> |
|||
<span class="custom-tree-node" slot-scope="{ node, data }" @mouseenter="mouseenter(data)" @mouseleave="mouseleave(data)" @click.stop.native> |
|||
<span>{{ node.label || $store.getters.userInfo.Orgname }}</span> |
|||
<span v-show="data.del" class="handle"> |
|||
<el-tooltip class="item" effect="dark" content="新增" placement="top-start"> |
|||
<el-button type="text" size="mini" @click.stop="() => append(data)" icon="el-icon-circle-plus-outline"> |
|||
</el-button> |
|||
</el-tooltip> |
|||
<!-- <el-tooltip v-show="data.sid" class="item" effect="dark" content="修改" placement="top-start">--> |
|||
<!-- <el-button type="text" size="mini" @click.stop="() => deit(data)" icon="el-icon-edit">--> |
|||
<!-- </el-button>--> |
|||
<!-- </el-tooltip>--> |
|||
<!-- <el-tooltip v-show="data.sid" class="item" effect="dark" content="删除" placement="top-start">--> |
|||
<!-- <el-button type="text" size="mini" @click.stop="() => remove(data)" icon="el-icon-delete">--> |
|||
<!-- </el-button>--> |
|||
<!-- </el-tooltip>--> |
|||
</span> |
|||
</span> |
|||
</el-tree> |
|||
</div> |
|||
<el-dialog title="编辑节点" :visible.sync="dialogVisible" width="50%" class="edit"> |
|||
<table class="e-table" cellspacing="0"> |
|||
<tr> |
|||
<td>组织名称</td> |
|||
<td> |
|||
<el-input v-model="form.name" style="width:300px"></el-input> |
|||
</td> |
|||
<td>组织编码</td> |
|||
<td> |
|||
<el-input v-model="form.orgCode" style="width:300px"></el-input> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>主管人员</td> |
|||
<td> |
|||
<el-select v-model="form.zgStaffSid" style="width:300px" filterable> |
|||
<el-option v-for="item in staffdata" :key="item.sid" :label="item.name" :value="item.sid"/> |
|||
</el-select> |
|||
</td> |
|||
<td>分管人员</td> |
|||
<td> |
|||
<el-select v-model="fgStaffSid" style="width:300px" filterable multiple> |
|||
<el-option v-for="item in staffdata2" :key="item.sid" :label="item.name" :value="item.sid"/> |
|||
</el-select> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>组织简称</td> |
|||
<td :colspan="3"> |
|||
<el-input v-model="form.orgAbbre" style="width: 30%"></el-input> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>管理层级</td> |
|||
<td> |
|||
<el-select v-model="form.orgLevelValue" style="width:300px" placeholder="请选择" filterable @change="changeOrgLevel"> |
|||
<el-option v-for="item in orgLevel_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue"></el-option> |
|||
</el-select> |
|||
</td> |
|||
<td>其他编码</td> |
|||
<td> |
|||
<el-input v-model="form.otherCode" style="width:300px" placeholder="与财务中客户编码相同"></el-input> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>组织地址</td> |
|||
<td> |
|||
<el-input v-model="form.addrs" style="width:300px"></el-input> |
|||
</td> |
|||
<td>组织属性</td> |
|||
<td> |
|||
<el-select v-model="form.orgAttributeValue" placeholder="请选择" filterable @change="changeOrgAttribute"> |
|||
<el-option v-for="item in orgAttribute_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue"></el-option> |
|||
</el-select> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>组织联系人</td> |
|||
<td> |
|||
<el-input v-model="form.linkPerson" style="width:300px"></el-input> |
|||
</td> |
|||
|
|||
<td>联系电话</td> |
|||
<td> |
|||
<el-input v-model="form.linkPhone" style="width:300px"></el-input> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>是否独立法人</td> |
|||
<td> |
|||
<el-radio v-model="form.isDept" :label="0">是</el-radio> |
|||
<el-radio v-model="form.isDept" :label="1">否</el-radio> |
|||
</td> |
|||
<td>排序号</td> |
|||
<td> |
|||
<el-input v-model="form.sort" style="width:300px"></el-input> |
|||
</td> |
|||
</tr> |
|||
</table> |
|||
<div slot="footer" class="text-center"> |
|||
<el-button type="primary" @click="nodeSave()">保 存</el-button> |
|||
<el-button @click="dialogVisible = false">返 回</el-button> |
|||
</div> |
|||
</el-dialog> |
|||
<div class="org-table" v-show="isshow == 'table'"> |
|||
<div class="tab-header"> |
|||
<el-form ref="form" :inline="true" :model="form" label-width="80px"> |
|||
<el-row :gutter="20"> |
|||
<el-col :span="24"> |
|||
<el-form-item label="组织名称"> |
|||
<el-input v-model="page.params.name" clearable></el-input> |
|||
</el-form-item> |
|||
<el-form-item> |
|||
<el-button @click="onSearch()">查询</el-button> |
|||
<el-button @click="resetSearch()">重置</el-button> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
</el-form> |
|||
</div> |
|||
<!-- table --> |
|||
<el-table :data="tableData" default-expand-all border style="width: 100%;"> |
|||
<el-table-column label="操作" align="center" width="160px"> |
|||
<template slot-scope="scope"> |
|||
<el-button type="primary" size="mini" @click="editRow(scope.row)"> |
|||
编辑 |
|||
</el-button> |
|||
<el-button type="danger" size="mini" @click.native.prevent="remove(scope.row)"> |
|||
删除 |
|||
</el-button> |
|||
</template> |
|||
</el-table-column> |
|||
<el-table-column prop="name" label="组织名称" align="center"></el-table-column> |
|||
<el-table-column prop="orgCode" label="组织编码" align="center"></el-table-column> |
|||
<!-- <el-table-column prop="zgNames" label="主管" align="center"></el-table-column>--> |
|||
<el-table-column prop="fgNames" label="分管" align="center"></el-table-column> |
|||
<!--<el-table-column prop="contactMan" label="联系人" align="center" width="100px"></el-table-column>--> |
|||
<el-table-column prop="linkPhone" label="联系人手机号" width="110" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="addrs" label="地址" align="center"> |
|||
</el-table-column> |
|||
<el-table-column prop="sort" label="排序" align="center" width="50px"> |
|||
</el-table-column> |
|||
<el-table-column prop="qrText" label="二维码" align="center" width="80px"> |
|||
<template slot-scope="scope"> |
|||
<el-button @click.native.prevent="lookRow(scope.row)" type="text" size="small">查看</el-button> |
|||
</template> |
|||
</el-table-column> |
|||
</el-table> |
|||
<pagination :total="page.total" :page.sync="page.current" :limit.sync="page.size" @pagination="pagination"/> |
|||
</div> |
|||
|
|||
<div class="org-table" v-show="isshow == 'ewm'"> |
|||
<div class="tab-header"> |
|||
<el-form ref="form" :inline="true" :model="form" label-width="80px"> |
|||
<el-row :gutter="20"> |
|||
<el-col :span="16"> |
|||
<h4 style="margin: 0;line-height: 32px;">组织二维码</h4> |
|||
</el-col> |
|||
<el-col :span="8"> |
|||
<el-form-item style="float: right;"> |
|||
<el-button type="primary" @click="Printewm">打 印</el-button> |
|||
<el-button @click="isshow = 'table'">返 回</el-button> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
</el-form> |
|||
</div> |
|||
<!-- center --> |
|||
<div class="ewm" style="display: flex;justify-content: center; align-items: center;" ref="print"> |
|||
<img style="width: 200px; height: 200px;" :src="ewmForm.qrFilePath" alt=""> |
|||
<ul style="list-style:none; line-height: 32px; font-size: 16px;"> |
|||
<li><label>组织名称: </label><span>{{ ewmForm.departmentName }}</span></li> |
|||
</ul> |
|||
</div> |
|||
</div> |
|||
<!-- 新增、编辑页面 --> |
|||
<div class="org-table" v-show="isshow == 'edit'"> |
|||
<div class="tab-header"> |
|||
<el-form ref="form" :inline="true" :model="form" label-width="80px"> |
|||
<el-row :gutter="20"> |
|||
<el-col :span="16"> |
|||
<h4 style="margin: 0;line-height: 32px;"> {{ dialogTitle }}组织信息</h4> |
|||
</el-col> |
|||
<el-col :span="8"> |
|||
<el-form-item style="float: right;"> |
|||
<el-button type="primary" @click="save()">保 存</el-button> |
|||
<el-button @click="isshow = 'table'">返 回</el-button> |
|||
</el-form-item> |
|||
</el-col> |
|||
</el-row> |
|||
</el-form> |
|||
</div> |
|||
<!-- center --> |
|||
<div class="ediut"> |
|||
<table class="e-table" cellspacing="0"> |
|||
<tr> |
|||
<td>组织名称</td> |
|||
<td> |
|||
<el-input v-model="form.name" style="width:300px"></el-input> |
|||
</td> |
|||
<td>组织编码</td> |
|||
<td> |
|||
<el-input v-model="form.orgCode" style="width:300px"></el-input> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>主管人员</td> |
|||
<td> |
|||
<el-select v-model="form.zgStaffSid" style="width:300px" filterable> |
|||
<el-option v-for="item in staffdata" :key="item.sid" :label="item.name" :value="item.sid"/> |
|||
</el-select> |
|||
</td> |
|||
<td>分管人员</td> |
|||
<td> |
|||
<el-select v-model="fgStaffSid" style="width:300px" filterable multiple> |
|||
<el-option v-for="item in staffdata2" :key="item.sid" :label="item.name" :value="item.sid"/> |
|||
</el-select> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>组织简称</td> |
|||
<td :colspan="3"> |
|||
<el-input v-model="form.orgAbbre" style="width: 300px"></el-input> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>管理层级</td> |
|||
<td> |
|||
<el-select v-model="form.orgLevelValue" style="width:300px" placeholder="请选择" filterable @change="changeOrgLevel"> |
|||
<el-option v-for="item in orgLevel_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue"></el-option> |
|||
</el-select> |
|||
</td> |
|||
<td>其他编码</td> |
|||
<td> |
|||
<el-input v-model="form.otherCode" style="width:300px" placeholder="与财务中客户编码相同"></el-input> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>组织地址</td> |
|||
<td> |
|||
<el-input v-model="form.addrs" style="width:300px"></el-input> |
|||
</td> |
|||
<td>组织属性</td> |
|||
<td> |
|||
<el-select v-model="form.orgAttributeValue" placeholder="请选择" filterable @change="changeOrgAttribute"> |
|||
<el-option v-for="item in orgAttribute_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictValue"></el-option> |
|||
</el-select> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>组织联系人</td> |
|||
<td> |
|||
<el-input v-model="form.linkPerson" style="width:300px"></el-input> |
|||
</td> |
|||
<td>联系电话</td> |
|||
<td> |
|||
<el-input v-model="form.linkPhone" style="width:300px"></el-input> |
|||
</td> |
|||
</tr> |
|||
<tr> |
|||
<td>是否独立法人</td> |
|||
<td> |
|||
<el-radio v-model="form.isDept" :label="0">是</el-radio> |
|||
<el-radio v-model="form.isDept" :label="1">否</el-radio> |
|||
</td> |
|||
<td>排序号</td> |
|||
<td> |
|||
<el-input v-model="form.sort" style="width:300px"></el-input> |
|||
</td> |
|||
</tr> |
|||
</table> |
|||
</div> |
|||
</div> |
|||
<!-- <Position v-if="mapDialog" :address.sync="form.addrs" :maker-position.sync="form.jwd" |
|||
:dialog-visible.sync="mapDialog"/>--> |
|||
</div> |
|||
</template> |
|||
|
|||
<script> |
|||
import { |
|||
addOrgTree, |
|||
delOrgtree, |
|||
getQrCode, getStaff, |
|||
getStaffName, |
|||
orgList, |
|||
pageList, |
|||
postOrgtree, |
|||
putOrgtree, |
|||
selectBySid |
|||
} from '@/api/system/departments/departments.js' |
|||
import { typeValues } from '@/api/system/roleAdminister/index' |
|||
import Position from '@/components/amap/amap.vue' |
|||
|
|||
export default { |
|||
components: { Position }, |
|||
data() { |
|||
return { |
|||
dialogVisible: false, |
|||
mapDialog: false, |
|||
dialogTitle: '', |
|||
props: { |
|||
label: 'name', |
|||
children: 'children' |
|||
}, |
|||
nodeForm: { |
|||
sid: '', |
|||
name: '', |
|||
sortNo: '' |
|||
}, |
|||
ewmForm: { |
|||
qrFilePath: '', |
|||
organizationName: '', |
|||
departmentName: '', |
|||
address: '' |
|||
}, |
|||
orgAttribute_list: [], |
|||
orgLevel_list: [], |
|||
form: { |
|||
sid: '', |
|||
name: '', |
|||
orgCode: '', |
|||
/* jwd: '',*/ |
|||
addrs: '', |
|||
zgStaffSid: '', |
|||
zgStaffName: '', |
|||
fgStaffSid: '', |
|||
fgStaffName: '', |
|||
linkPerson: '', |
|||
linkPhone: '', |
|||
sort: '', |
|||
isDept: '', |
|||
orgAbbre: '', |
|||
orgAttributeValue: '', |
|||
orgAttributeKey: '', |
|||
orgLevelValue: '', |
|||
orgLevelKey: '', |
|||
otherCode: '' |
|||
}, |
|||
fgStaffSid: [], |
|||
formBackup: Object.assign({}, this.form), |
|||
isshow: 'table', |
|||
page: { |
|||
total: 0, // 默认数据总数 |
|||
current: 1, // 默认开始页面 |
|||
size: 10, // 每页的数据条数 |
|||
params: { |
|||
name: '', |
|||
organizationSid: '', |
|||
psid: '' |
|||
} |
|||
}, |
|||
tableData: [], |
|||
treedata: [], |
|||
staffdata: [], |
|||
staffdata2: [], |
|||
rules: {} |
|||
} |
|||
}, |
|||
mounted() { |
|||
this.getOrgTree() |
|||
this.init() |
|||
}, |
|||
methods: { |
|||
init() { |
|||
typeValues({ type: 'orgAttribute' }).then((res) => { |
|||
if (res.success) { |
|||
this.orgAttribute_list = res.data |
|||
} |
|||
}) |
|||
typeValues({ type: 'orgLevel' }).then((res) => { |
|||
if (res.success) { |
|||
this.orgLevel_list = res.data |
|||
} |
|||
}) |
|||
}, |
|||
changeOrgLevel(value) { |
|||
let bb = null |
|||
this.orgLevel_list.forEach((e) => { |
|||
if (e.dictValue === value) { |
|||
bb = { |
|||
value: e.dictValue, |
|||
key: e.dictKey |
|||
} |
|||
} |
|||
}) |
|||
this.form.orgLevelValue = bb.value |
|||
this.form.orgLevelKey = bb.key |
|||
}, |
|||
changeOrgAttribute(value) { |
|||
let bb = null |
|||
this.orgAttribute_list.forEach((e) => { |
|||
if (e.dictValue === value) { |
|||
bb = { |
|||
key: e.dictKey, |
|||
value: e.dictValue |
|||
} |
|||
} |
|||
}) |
|||
this.form.orgAttributeKey = bb.key |
|||
}, |
|||
pagination(val) { // 分页 |
|||
this.page.current = val.pageNum |
|||
this.page.size = val.pageSize |
|||
this.getPageList(this.page) |
|||
}, |
|||
handleNodeClick(data) { |
|||
this.isshow = 'table' |
|||
this.page.params.organizationSid = this.$store.getters.userInfo.orgSid |
|||
this.page.params.psid = data.sid || 0 |
|||
|
|||
this.getPageList(this.page) |
|||
}, |
|||
getPageList(data) { // 获取树形列表 |
|||
pageList(data).then(res => { |
|||
console.log('返回子级:',res) |
|||
this.tableData = res.data.records |
|||
this.page.total = res.data.total |
|||
}) |
|||
}, |
|||
getOrgTree() { // 获取树形列表 |
|||
orgList({}).then(res => { |
|||
this.treedata = res.data |
|||
}) |
|||
}, |
|||
save() { |
|||
if (this.fgStaffSid.length > 0) { |
|||
this.form.fgStaffSid = this.fgStaffSid.join() |
|||
} else { |
|||
this.form.fgStaffName = '' |
|||
this.form.fgStaffSid = '' |
|||
} |
|||
this.form.organizationSid = this.$store.getters.userInfo.orgSid |
|||
// this.form.dlxx = typeof(this.form.dlxx) == 'string' ? this.form.dlxx : this.form.dlxx.join() |
|||
if (this.form.sid) { |
|||
// console.log(this.form) |
|||
putOrgtree(this.form).then(res => { |
|||
if (res.success) { |
|||
this.isshow = 'table' |
|||
this.getOrgTree() |
|||
this.handleNodeClick({ sid: this.form.psid }) |
|||
this.$message({ |
|||
message: res.msg, |
|||
type: 'success' |
|||
}) |
|||
} |
|||
}) |
|||
} else { |
|||
addOrgTree(this.form).then(res => { |
|||
if (res.success) { |
|||
this.isshow = 'table' |
|||
this.getOrgTree() |
|||
this.handleNodeClick({ sid: this.form.psid }) |
|||
this.$message({ |
|||
message: res.msg, |
|||
type: 'success' |
|||
}) |
|||
} |
|||
}) |
|||
} |
|||
}, |
|||
append(data) { |
|||
console.log(123456789, data) |
|||
this.dialogTitle = '新增' |
|||
this.isshow = 'edit' |
|||
this.fgStaffSid = [] |
|||
this.form = Object.assign({}, this.formBackup) |
|||
this.form.psid = data.sid || 0 |
|||
this.form.organizationSid = this.$store.getters.userInfo.orgSid |
|||
this.form.address = data.orgAddress || data.address |
|||
this.form.dlxx = data.gisInfo || data.dlxx |
|||
this.getStaff(data.sid) |
|||
this.getStaff2(data.sid) |
|||
}, |
|||
editRow(row) { |
|||
this.getStaff(row.sid) |
|||
this.getStaff2(row.sid) |
|||
this.dialogTitle = '编辑' |
|||
this.isshow = 'edit' |
|||
this.fgStaffSid = [] |
|||
selectBySid(row.sid).then((response) => { |
|||
if (response.success) { |
|||
this.form = response.data |
|||
this.form.fgStaffName = response.data.fgNames |
|||
this.form.fgStaffSid = response.data.fgStaffSid |
|||
if (this.form.fgStaffSid) { |
|||
this.fgStaffSid = response.data.fgStaffSid.split(',') |
|||
} |
|||
this.form.zgStaffName = response.data.zgNames |
|||
this.form.zgStaffSid = response.data.zgStaffSid |
|||
console.log('编辑回显的数据', this.form) |
|||
} |
|||
}) |
|||
}, |
|||
deit(data) { // 节点编辑保存 |
|||
this.getStaff(data.sid) |
|||
this.getStaff2(data.sid) |
|||
console.log(data, 8888) |
|||
this.dialogVisible = true |
|||
this.form.sid = data.sid |
|||
// this.form.psid = null |
|||
this.form.name = data.name |
|||
this.form.orgCode = data.orgCode |
|||
/* this.form.jwd = data.jwd*/ |
|||
this.form.addrs = data.addrs |
|||
this.form.linkPerson = data.linkPerson |
|||
this.form.linkPhone = data.linkPhone |
|||
this.form.sort = data.sort |
|||
this.form.zgStaffSid = data.zgSids |
|||
this.form.fgStaffSid = data.fgSids.split(',') |
|||
}, |
|||
nodeSave() { // 节点编辑保存 |
|||
console.log('这是保存nodeSave(0') |
|||
this.form.fgStaffSid = this.form.fgStaffSid.join() |
|||
postOrgtree(this.form).then(res => { |
|||
this.getOrgTree() |
|||
this.dialogVisible = false |
|||
this.$message({ |
|||
message: res.msg, |
|||
type: 'success' |
|||
}) |
|||
}) |
|||
}, |
|||
remove(data) { |
|||
this.$confirm('确定要删除该组织吗, 是否继续?', '提示', { |
|||
confirmButtonText: '确定', |
|||
cancelButtonText: '取消', |
|||
type: 'warning' |
|||
}).then(() => { |
|||
delOrgtree({ sid: data.sid }).then(res => { |
|||
this.getOrgTree() |
|||
this.handleNodeClick({ sid: data.psid }) |
|||
this.$message({ |
|||
message: res.msg, |
|||
type: 'success' |
|||
}) |
|||
}) |
|||
}) |
|||
}, |
|||
lookRow(row) { // 查看二维码 |
|||
this.isshow = 'ewm' |
|||
getQrCode({ sid: row.sid }).then(res => { |
|||
this.ewmForm = res.data |
|||
}) |
|||
}, |
|||
Printewm() { |
|||
this.$print(this.$refs.print) // 使用 |
|||
}, |
|||
mouseenter(data) { |
|||
this.$set(data, 'del', true) |
|||
}, |
|||
mouseleave(data) { |
|||
this.$set(data, 'del', false) |
|||
}, |
|||
onSearch() { |
|||
this.getPageList(this.page) |
|||
}, |
|||
resetSearch() { |
|||
this.page.params.name = '' |
|||
this.getPageList(this.page) |
|||
}, |
|||
// 主管人员 |
|||
getStaff(orgSid) { |
|||
getStaff({ deptSid: orgSid }).then((res) => { |
|||
if (res.success) { |
|||
this.staffdata = res.data |
|||
} |
|||
}) |
|||
}, |
|||
// 分管人员 |
|||
getStaff2(orgSid) { |
|||
getStaffName({ deptSid: orgSid }).then(res => { |
|||
this.staffdata2 = res.data |
|||
console.log('分管人员', this.staffdata2) |
|||
}) |
|||
} |
|||
} |
|||
} |
|||
</script> |
|||
|
|||
<style> |
|||
.el-icon-arrow-right:before { |
|||
content: '\e6e0'; |
|||
color: #727272; |
|||
} |
|||
</style> |
|||
|
|||
<style scoped="scoped" lang="scss"> |
|||
.org-tree { |
|||
width: 240px; |
|||
min-height: 100%; |
|||
box-sizing: border-box; |
|||
/*padding-right: 10px;*/ |
|||
border: 1px solid #edf1f7; |
|||
overflow: scroll; |
|||
} |
|||
|
|||
.org-table { |
|||
flex: 1; |
|||
// padding-left: 10px; |
|||
margin: 0 10px; |
|||
border: 1px solid #edf1f7; |
|||
min-height: 100%; |
|||
overflow-y: scroll; |
|||
|
|||
.ewm { |
|||
margin: 30px auto 0; |
|||
width: 560px; |
|||
} |
|||
|
|||
.ediut { |
|||
margin: 30px auto 0; |
|||
/*width:750px;*/ |
|||
} |
|||
} |
|||
|
|||
.custom-tree-node { |
|||
position: relative; |
|||
overflow: hidden; |
|||
width: 100%; |
|||
flex: 1; |
|||
display: flex; |
|||
align-items: center; |
|||
justify-content: space-between; |
|||
font-size: 14px; |
|||
padding-right: 8px; |
|||
} |
|||
|
|||
.handle { |
|||
position: absolute; |
|||
right: 0; |
|||
|
|||
.el-button--text { |
|||
font-size: 15px; |
|||
background-color: #FFFFFF; |
|||
} |
|||
} |
|||
|
|||
.my-tabs { |
|||
margin-top: 10px; |
|||
} |
|||
|
|||
.edit { |
|||
.el-form-item__label { |
|||
width: 100px !important; |
|||
display: inline-block !important; |
|||
} |
|||
|
|||
.el-input { |
|||
width: 70%; |
|||
} |
|||
} |
|||
|
|||
.td_left { |
|||
border-left: 0 solid #e6e9f0; |
|||
} |
|||
</style> |
Loading…
Reference in new issue