9 changed files with 2134 additions and 869 deletions
@ -1,290 +1,505 @@ |
|||||
<template> |
<template> |
||||
<div class="app-container"> |
<el-tabs class="my-tabs" v-model="activeName" type="card" @tab-click="handleClick"> |
||||
<div v-show="viewState == 1"> |
<el-tab-pane label="岗位列表" name="roleList"> |
||||
<button-bar ref="btnbar" view-title="岗位管理" :btndisabled="btndisabled" @btnhandle="btnHandle" /> |
|
||||
<div class="main-content"> |
<div class="container"> |
||||
<div class="searchcon"> |
<div class="tab-header"> |
||||
<el-button size="small" class="searchbtn" @click="clicksearchShow"> |
<el-form ref="form" :inline="true" :model="search" label-width="80px"> |
||||
{{ searchxianshitit }} |
<el-row :gutter="20"> |
||||
</el-button> |
<el-col :span="24"> |
||||
<div v-show="isSearchShow" class="search"> |
<el-form-item label="岗位名称"> |
||||
<el-form ref="queryParams" :inline="true" :model="queryParams" class="tab-header"> |
<el-input v-model="search.name" clearable></el-input> |
||||
<el-form-item label="审核状态"> |
|
||||
<el-input v-model="queryParams.params.createSid" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="订单编号"> |
|
||||
<el-input v-model="queryParams.params.modifySid" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="填单人"> |
|
||||
<el-input v-model="queryParams.params.buyerName" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="填单日期"> |
|
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
|
||||
<span style="padding: 0 8px">至</span> |
|
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="供应商名称"> |
|
||||
<el-input v-model="queryParams.params.contacts" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="要货单位"> |
|
||||
<el-input v-model="queryParams.params.telephone" placeholder="" clearable /> |
|
||||
</el-form-item> |
</el-form-item> |
||||
<el-form-item label="完成状态"> |
<!-- <el-form-item label="所属部门"> |
||||
<el-select v-model="queryParams.params.completionStatusKey" filterable placeholder="请选择" clearable> |
<el-select v-model="search.orgSid" placeholder="请选择" clearable @clear="handleClear"> |
||||
<el-option v-for="item in state_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey" /> |
<el-option hidden :key="search.orgSid" :label="orgName" :value="search.orgSid"></el-option> |
||||
|
<el-tree v-loading="loading" :data="treedata" ref="Tree" show-checkbox accordion node-key="sid" |
||||
|
:default-checked-keys="checkedId" |
||||
|
:default-expand-all='true' :check-strictly='true' :props="defaultProps" |
||||
|
@check-change="checkchange" |
||||
|
> |
||||
|
</el-tree> |
||||
</el-select> |
</el-select> |
||||
</el-form-item> |
</el-form-item> --> |
||||
<el-form-item label="到货日期"> |
<el-button @click="getList(1)">查询</el-button> |
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
</el-col> |
||||
<span style="padding: 0 8px">至</span> |
</el-row> |
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
|
||||
</el-form-item> |
|
||||
</el-form> |
</el-form> |
||||
<div class="btn" style="text-align: center;"> |
|
||||
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button> |
|
||||
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button> |
|
||||
</div> |
|
||||
</div> |
|
||||
</div> |
|
||||
<!-- Start 项目列表头部 --> |
|
||||
<div class="listtop"> |
|
||||
<div class="tit">岗位管理列表</div> |
|
||||
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList" /> |
|
||||
</div> |
</div> |
||||
<!-- End 项目列表头部 --> |
<!-- table --> |
||||
<!-- Start 项目列表 --> |
<el-table :data="roleTable" border style="width: 100%;"> |
||||
<div class=""> |
<el-table-column label="序号" width="50px" type="index" align="center"> |
||||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" @selection-change="handleSelectionChange"> |
|
||||
<el-table-column fixed width="50" type="selection" align="center" /> |
|
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> |
|
||||
<el-table-column fixed width="180" label="操作" align="center"> |
|
||||
<template slot-scope="scope"> |
|
||||
<el-button type="primary" size="mini" @click="toEdit(scope.row)">办理</el-button> |
|
||||
<el-button type="primary" size="mini">撤回</el-button> |
|
||||
<el-button type="primary" size="mini" @click="toInfo(scope.row)">查看</el-button> |
|
||||
</template> |
|
||||
</el-table-column> |
</el-table-column> |
||||
<el-table-column prop="createSid" label="状态" align="center" width="120" /> |
<el-table-column label="操作" width="220px" align="center"> |
||||
<el-table-column prop="code" label="订单编号" align="center" width="150" /> |
|
||||
<el-table-column prop="buyerName" label="填单人" align="center" width="120" /> |
|
||||
<el-table-column label="填单日期" align="center" width="120"> |
|
||||
<template slot-scope="scope"> |
<template slot-scope="scope"> |
||||
<span>{{ scope.row.purchaseDate.substring(0, scope.row.purchaseDate.length - 9) }}</span> |
<el-button @click="editRow(scope.row)" type="primary" size="mini"> 修改</el-button> |
||||
|
<el-button @click="delRow(scope.row)" type="danger" size="mini"> 删除</el-button> |
||||
</template> |
</template> |
||||
</el-table-column> |
</el-table-column> |
||||
<el-table-column prop="supplierName" label="供应商单位" header-align="center" align="left" /> |
<el-table-column prop="name" label="岗位名称" align="center"></el-table-column> |
||||
<el-table-column prop="packageTotalPrice" label="订单金额(元)" align="center" /> |
<el-table-column prop="parentName" label="上级岗位名称" align="center"></el-table-column> |
||||
<el-table-column prop="purchasingDeptName" label="要货单位" align="center" /> |
<el-table-column prop="postCode" label="岗位编码" align="center"></el-table-column> |
||||
<el-table-column prop="arrivalDate" label="到货日期" align="center" width="120" /> |
<el-table-column prop="postLevel" label="职级" align="center"></el-table-column> |
||||
<el-table-column prop="completionStatus" label="完成状态" align="center" width="120" /> |
<!-- <el-table-column prop="orgName" label="所属部门" align="center"></el-table-column> --> |
||||
</el-table> |
</el-table> |
||||
|
<pagination :total="page.total" :page.sync="page.current" :limit.sync="page.size" @pagination="pagination"/> |
||||
|
|
||||
|
<!-- 编辑岗位信息 --> |
||||
|
<el-dialog :title="dialogTitle + '岗位信息'" :visible.sync="editDialog" width="40%"> |
||||
|
<table class="e-table" cellspacing="0"> |
||||
|
<tr> |
||||
|
<td>上级岗位</td> |
||||
|
<td> <!-- @change="changeParentSid" --> |
||||
|
<el-select v-model="roleForm.parentSid" filterable clearable placeholder="请选择" |
||||
|
style="width:300px"> |
||||
|
<el-option v-for="item in parentSidList" :key="item.sid" :label="item.name" |
||||
|
:value="item.sid"> |
||||
|
</el-option> |
||||
|
</el-select> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>岗位名称</td> |
||||
|
<td> |
||||
|
<el-input v-model="roleForm.name" style="width:300px"></el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>岗位职级</td> |
||||
|
<td> |
||||
|
<el-select v-model="roleForm.postLevel" @change="changeUPpostLevel" filterable placeholder="请选择" style="width:300px"> |
||||
|
<el-option v-for="item in postLevelList" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey"> |
||||
|
</el-option> |
||||
|
</el-select> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>岗位编码</td> |
||||
|
<td> |
||||
|
<el-input v-model="roleForm.postCode" style="width:300px"></el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<!--<tr> |
||||
|
<td>备注</td> |
||||
|
<td> |
||||
|
<el-input type="textarea" :autosize="{ minRows: 4, maxRows: 6}" v-model="roleForm.remarks"></el-input> |
||||
|
</td> |
||||
|
</tr>--> |
||||
|
<!-- <tr> |
||||
|
<td>选择部门(单选)</td> |
||||
|
<td> |
||||
|
<el-tree |
||||
|
:data="treedata1" |
||||
|
show-checkbox |
||||
|
node-key="sid" |
||||
|
ref="Tree1" |
||||
|
:default-expand-all='true' |
||||
|
:check-strictly='true' |
||||
|
:default-checked-keys="checkedId1" |
||||
|
:props="defaultProps" |
||||
|
@check-change="checkchange1" |
||||
|
> |
||||
|
</el-tree> |
||||
|
</td> |
||||
|
</tr> --> |
||||
|
</table> |
||||
|
<div style="margin-top: 20px; text-align: center;"> |
||||
|
<el-button type="primary" @click="save()">保 存</el-button> |
||||
|
<el-button @click="editDialog = false">关 闭</el-button> |
||||
</div> |
</div> |
||||
<!-- End 项目列表 --> |
</el-dialog> |
||||
<div class="pages"> |
|
||||
<div class="tit" /> |
|
||||
<!-- 翻页 --> |
|
||||
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" @pagination="loadList" /> |
|
||||
</div> |
|
||||
</div> |
|
||||
</div> |
</div> |
||||
<!-- End 查询和其列表部分 --> |
</el-tab-pane> |
||||
<!-- 新增修改部分组件 --> |
<!-- 新增岗位信息 --> |
||||
<!-- <divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList"/> |
<el-tab-pane label="新增岗位" name="addrole"> |
||||
<divInfo v-show="viewState == 4" ref="divInfo" @doback="resetState" /> --> |
<el-card class="box-card"> |
||||
|
<table class="e-table" cellspacing="0"> |
||||
|
<tr> |
||||
|
<td>上级岗位</td> |
||||
|
<td> <!-- @change="changeParentSid" --> |
||||
|
<el-select v-model="roleForm.parentSid" filterable clearable placeholder="请选择" |
||||
|
style="width:300px"> |
||||
|
<el-option v-for="item in parentSidList" :key="item.sid" :label="item.name" |
||||
|
:value="item.sid"> |
||||
|
</el-option> |
||||
|
</el-select> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>岗位名称</td> |
||||
|
<td> |
||||
|
<el-input v-model="roleForm.name" style="width:300px"></el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>岗位职级</td> |
||||
|
<td> |
||||
|
<el-select v-model="roleForm.postLevel" @change="changePostLevel" filterable placeholder="请选择" |
||||
|
style="width:300px"> |
||||
|
<el-option v-for="item in postLevelList" :key="item.dictKey" :label="item.dictValue" |
||||
|
:value="item.dictKey"> |
||||
|
</el-option> |
||||
|
</el-select> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>岗位编码</td> |
||||
|
<td> |
||||
|
<el-input v-model="roleForm.postCode" style="width:300px"></el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<!--<tr> |
||||
|
<td>备注</td> |
||||
|
<td> <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 6}" v-model="roleForm.remarks"></el-input></td> |
||||
|
</tr>--> |
||||
|
<!-- <tr> |
||||
|
<td>选择部门(单选)</td> |
||||
|
<td> |
||||
|
<el-tree |
||||
|
:data="treedata2" |
||||
|
show-checkbox |
||||
|
node-key="sid" |
||||
|
ref="Tree2" |
||||
|
:default-expand-all='true' |
||||
|
:check-strictly='true' |
||||
|
:default-checked-keys="checkedId2" |
||||
|
:props="defaultProps" |
||||
|
@check-change="checkchange2" |
||||
|
> |
||||
|
</el-tree> |
||||
|
</td> |
||||
|
</tr> --> |
||||
|
</table> |
||||
|
<div style="margin-top: 20px; text-align: center;"> |
||||
|
<el-button type="primary" @click="save()">保 存</el-button> |
||||
</div> |
</div> |
||||
|
</el-card> |
||||
|
</el-tab-pane> |
||||
|
</el-tabs> |
||||
</template> |
</template> |
||||
|
|
||||
<script> |
<script> |
||||
// import req from '@/api/supervise/purchaseapplicationmanagement' |
import {delOrgroles, orgList, pageList, pullDown, putOrgroles, savePost,selectList} from '@/api/system/postManage/index.js' |
||||
import ButtonBar from '@/components/ButtonBar' |
|
||||
import Pagination from '@/components/pagination' |
|
||||
import pageye from '@/components/pagination/pageye' |
|
||||
|
|
||||
export default { |
export default { |
||||
name: 'ZzjgGwgl', |
|
||||
components: { |
|
||||
ButtonBar, |
|
||||
Pagination, |
|
||||
pageye |
|
||||
}, |
|
||||
data() { |
data() { |
||||
return { |
return { |
||||
btndisabled: false, |
dialogTitle: '', |
||||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看 |
activeName: 'roleList', |
||||
isSearchShow: false, |
roleForm: { |
||||
searchxianshitit: '显示查询条件', |
remarks: "", |
||||
tableLoading: false, |
roleName: "", |
||||
dataList: [], |
postCode: '', |
||||
state_list: [ |
orgSid: '', |
||||
{ |
postLevel: '', |
||||
dictKey: 0, |
postLevelKey: '', |
||||
dictValue: '未完成' |
parentSid:'' |
||||
} |
|
||||
], |
|
||||
btnList: [ |
|
||||
{ |
|
||||
type: 'info', |
|
||||
size: 'small', |
|
||||
icon: 'cross', |
|
||||
btnKey: 'doClose', |
|
||||
btnLabel: '关闭' |
|
||||
} |
|
||||
], |
|
||||
queryParams: { |
|
||||
current: 1, |
|
||||
size: 10, |
|
||||
total: 0, |
|
||||
params: { |
|
||||
code: '', |
|
||||
buyerName: '', |
|
||||
purchaseStartDate: '', |
|
||||
purchaseEndDate: '', |
|
||||
supplierName: '', |
|
||||
purchasingDeptName: '', |
|
||||
arrivalStartDate: '', |
|
||||
arrivalEndDate: '', |
|
||||
completionStatusKey: '' |
|
||||
} |
|
||||
}, |
}, |
||||
sids: [] |
formBackup: {}, |
||||
} |
search: { |
||||
|
name: '', |
||||
|
orgSid: '' |
||||
}, |
}, |
||||
mounted() { |
orgName: '', |
||||
this.$refs['btnbar'].setButtonList(this.btnList) |
page: { |
||||
|
total: 0, // 默认数据总数 |
||||
|
current: 1, // 默认开始页面 |
||||
|
size: 10, // 每页的数据条数 |
||||
|
}, |
||||
|
roleTable: [], |
||||
|
editDialog: false, |
||||
|
// 树形 |
||||
|
loading: false, |
||||
|
defaultProps: { |
||||
|
children: 'children', |
||||
|
label: 'name' |
||||
}, |
}, |
||||
created() { |
// orgdata:[], // 部门 |
||||
this.loadList() |
checkedId: [], |
||||
|
checkedId1: [], |
||||
|
checkedId2: [], |
||||
|
treedata: [], |
||||
|
treedata1: [], |
||||
|
treedata2: [], |
||||
|
postLevelList: [], |
||||
|
parentSidList: [], |
||||
|
// chace: [], |
||||
|
// roleDialog: false, |
||||
|
// Thisrow: {}, |
||||
|
// orgListAll:[] |
||||
|
}; |
||||
|
}, |
||||
|
mounted() { |
||||
|
this.formBackup = Object.assign({}, this.roleForm), |
||||
|
this.getList() |
||||
|
this.getOrgList() |
||||
|
this.postLevel() |
||||
|
this.getParent() |
||||
}, |
}, |
||||
methods: { |
methods: { |
||||
// 搜索条件效果 |
pagination(val) { // 分页函数 |
||||
clicksearchShow() { |
this.page.current = val.pageNum |
||||
this.isSearchShow = !this.isSearchShow |
this.page.size = val.pageSize |
||||
if (this.isSearchShow) { |
this.getList() |
||||
this.searchxianshitit = '隐藏查询条件' |
|
||||
} else { |
|
||||
this.searchxianshitit = '显示查询条件' |
|
||||
} |
|
||||
}, |
}, |
||||
btnHandle(btnKey) { |
// 分页列表 |
||||
switch (btnKey) { |
getList(flag) { |
||||
case 'toAdd': |
if (flag == '1') { |
||||
this.toAdd() |
this.page.current = 1 |
||||
break |
|
||||
case 'doDel': |
|
||||
this.doDel() |
|
||||
break |
|
||||
case 'doClose': |
|
||||
this.doClose() |
|
||||
break |
|
||||
default: |
|
||||
break |
|
||||
} |
} |
||||
|
let params = this.page |
||||
|
params.params = this.search |
||||
|
pageList(params).then(res => { |
||||
|
this.page.total = res.data.total |
||||
|
this.roleTable = res.data.records |
||||
|
}) |
||||
}, |
}, |
||||
loadList() { |
postLevel(){ |
||||
// this.tableLoading = true |
// pullDown({ psid: 0, type: 'postLevel' }).then((res)=>{ |
||||
// req.listPage(this.queryParams).then((resp) => { |
// if(res.code==='200'){ |
||||
// this.tableLoading = false |
// this.postLevelList=res.data |
||||
// if (resp.success) { |
|
||||
// const data = resp.data |
|
||||
// this.queryParams.total = data.total |
|
||||
// this.dataList = data.records |
|
||||
// } else { |
|
||||
// // 根据resp.code进行异常情况处理 |
|
||||
// this.dataList = [] |
|
||||
// this.queryParams.total = 0 |
|
||||
// } |
// } |
||||
// }).catch(() => { |
|
||||
// this.tableLoading = false |
|
||||
// }) |
// }) |
||||
}, |
}, |
||||
// 序号 |
getParent(){ |
||||
indexMethod(index) { |
selectList().then((res)=>{ |
||||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size |
if(res.code==='200'){ |
||||
var pageindex = index + 1 + pagestart |
this.parentSidList=res.data |
||||
return pageindex |
} |
||||
}, |
|
||||
handleSelectionChange(row) { |
|
||||
const aa = [] |
|
||||
row.forEach((element) => { |
|
||||
aa.push(element.sid) |
|
||||
}) |
}) |
||||
this.sids = aa |
|
||||
}, |
|
||||
dosearch() { |
|
||||
this.queryParams.current = 1 |
|
||||
this.loadList() |
|
||||
}, |
}, |
||||
resetQuery() { |
changePostLevel(value){ |
||||
this.queryParams = { |
let bb = null |
||||
current: 1, |
this.postLevelList.forEach((e) => { |
||||
size: 10, |
if (e.dictKey == value) { |
||||
total: 0, |
bb = { |
||||
params: { |
name: e.dictValue, |
||||
code: '', |
value: e.dictKey |
||||
buyerName: '', |
|
||||
purchaseDateStart: '', |
|
||||
purchaseDateEnd: '', |
|
||||
supplierName: '', |
|
||||
purchasingDeptName: '', |
|
||||
arrivalDateStart: '', |
|
||||
arrivalDateEnd: '', |
|
||||
completionStatusKey: '' |
|
||||
} |
} |
||||
} |
} |
||||
this.loadList() |
}) |
||||
|
this.roleForm.postLevel=bb.name |
||||
|
this.roleForm.postLevelKey=bb.value |
||||
}, |
}, |
||||
toAdd() { |
changeUPpostLevel(value){ |
||||
this.viewState = 2 |
let bb = null |
||||
this.$refs['divadd'].showAdd() |
this.postLevelList.forEach((e) => { |
||||
|
if (e.dictKey == value) { |
||||
|
bb = { |
||||
|
name: e.dictValue, |
||||
|
value: e.dictKey |
||||
|
} |
||||
|
} |
||||
|
}) |
||||
|
this.roleForm.postLevel=bb.name |
||||
|
this.roleForm.postLevelKey=bb.value |
||||
}, |
}, |
||||
toEdit(row) { |
handleClick(tab, event) { |
||||
this.viewState = 3 |
if (tab.name == 'addrole') { |
||||
this.$refs['divadd'].showEdit(row) |
this.dialogTitle = '新增' |
||||
|
this.roleForm = Object.assign({}, this.formBackup) |
||||
|
} else { |
||||
|
this.getList() |
||||
|
} |
||||
}, |
}, |
||||
toInfo(row) { |
editRow(row) { |
||||
this.viewState = 4 |
this.dialogTitle = '编辑' |
||||
this.$refs['divInfo'].showInfo(row) |
this.editDialog = true |
||||
|
console.log(row) |
||||
|
this.roleForm = Object.assign({}, row) |
||||
|
this.checkedId1 = [this.roleForm.orgSid] |
||||
}, |
}, |
||||
doDel() { |
delRow(row) { |
||||
if (this.sids.length === 0) { |
this.$confirm('确定要删除该岗位吗, 是否继续?', '提示', { |
||||
this.$message({ showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作' }) |
|
||||
return |
|
||||
} |
|
||||
const tip = '请确认是否删除所选 ' + this.sids.length + ' 条记录?' |
|
||||
this.$confirm(tip, '提示', { |
|
||||
confirmButtonText: '确定', |
confirmButtonText: '确定', |
||||
cancelButtonText: '取消', |
cancelButtonText: '取消', |
||||
type: 'warning' |
type: 'warning' |
||||
}).then(() => { |
}).then(() => { |
||||
// const loading = this.$loading({ |
let params = { |
||||
// lock: true, |
sids: row.sid |
||||
// text: 'Loading', |
} |
||||
// spinner: 'el-icon-loading', |
delOrgroles(params).then(res => { |
||||
// background: 'rgba(0, 0, 0, 0.7)' |
this.getList() |
||||
|
this.$message({ |
||||
|
type: 'success', |
||||
|
message: '删除成功!' |
||||
|
}); |
||||
|
}) |
||||
|
}) |
||||
|
}, |
||||
|
// 保存角色 |
||||
|
save() { |
||||
|
if (this.roleForm.sid) { |
||||
|
// let orgSid = this.$refs.Tree1.getCheckedKeys() |
||||
|
// this.roleForm.orgSid = orgSid.toString() |
||||
|
putOrgroles(this.roleForm).then(res => { |
||||
|
if (res.code == '200') { |
||||
|
this.getList() |
||||
|
this.editDialog = false |
||||
|
this.$message({ |
||||
|
message: res.msg, |
||||
|
type: 'success' |
||||
|
}) |
||||
|
} |
||||
|
}) |
||||
|
} else { |
||||
|
// let orgSid = this.$refs.Tree2.getCheckedKeys() |
||||
|
// this.roleForm.orgSid = orgSid.toString() |
||||
|
savePost(this.roleForm).then(res => { |
||||
|
if (res.code == '200') { |
||||
|
this.getList() |
||||
|
this.activeName = "roleList" |
||||
|
this.$message({ |
||||
|
message: res.msg, |
||||
|
type: 'success' |
||||
|
}) |
||||
|
let arr = [] |
||||
|
// this.$refs.Tree2.setCheckedKeys(arr); |
||||
|
} |
||||
|
}) |
||||
|
} |
||||
|
this.reset() |
||||
|
}, |
||||
|
reset() { |
||||
|
this.roleForm = { |
||||
|
remarks: "", |
||||
|
roleName: "", |
||||
|
orgSid: '' |
||||
|
}; |
||||
|
this.search = { |
||||
|
name: '', |
||||
|
orgSid: '' |
||||
|
} |
||||
|
}, |
||||
|
|
||||
|
// 获取部门树形 |
||||
|
getOrgList(row) { |
||||
|
this.roleDialog = true |
||||
|
this.checkedId = [] |
||||
|
// this.roleForm.roleName = row.roleName |
||||
|
this.Thisrow = row |
||||
|
this.loading = true |
||||
|
let params = { |
||||
|
// roleSid: row.sid, |
||||
|
// userType: '2' |
||||
|
} |
||||
|
|
||||
|
orgList(params).then(res => { |
||||
|
this.treedata = res.data |
||||
|
this.treedata1 = res.data |
||||
|
this.treedata2 = res.data |
||||
|
// this.getTreeParentNode(res.data, this.checkedId) |
||||
|
// this.getTreeParentid(res.data) |
||||
|
this.loading = false |
||||
|
}) |
||||
|
|
||||
|
}, |
||||
|
// // 递归查询所有上级数据 |
||||
|
// getTreeParentNode(menus, ids) { |
||||
|
// for (var i = 0; i < menus.length; i++) { |
||||
|
// if (menus[i].children && menus[i].children.length != 0) { |
||||
|
// this.getTreeParentNode(menus[i].children, ids) |
||||
|
// } else if (menus[i].isCheck) { |
||||
|
// ids.push(menus[i].sid) |
||||
|
// } |
||||
|
// } |
||||
|
// }, |
||||
|
// // 所有一级菜单ID |
||||
|
// getTreeParentid(menus) { |
||||
|
// for (var i = 0; i < menus.length; i++) { |
||||
|
// this.chace.push(menus[i].sid) |
||||
|
// } |
||||
|
// }, |
||||
|
// getCheckedKeys() { |
||||
|
// let _this = this |
||||
|
// let roleMenus = [] |
||||
|
// this.$refs.Tree.getCheckedKeys().forEach(val => { |
||||
|
// roleMenus.push({ |
||||
|
// menuSid: val, |
||||
|
// orgSid: _this.$store.getters.userInfo.orgSid, |
||||
|
// roleSid: _this.Thisrow.sid |
||||
// }) |
// }) |
||||
// req.delBySids(this.sids).then(resp => { |
// }) |
||||
// loading.close() |
// let parentTrue = this.$refs.Tree.getHalfCheckedKeys() |
||||
// if (resp.success) { |
// for (let i = 0; i < parentTrue.length; i++) { |
||||
// this.$message({ type: 'success', message: resp.msg, showClose: true }) |
// for (let j = 0; j < this.chace.length; j++) { |
||||
// this.loadList() |
// if (parentTrue[i] == this.chace[j]) { |
||||
// } else { |
// parentTrue.splice(i, 1); |
||||
// // 根据resp.code进行异常情况处理 |
// } |
||||
|
// } |
||||
// } |
// } |
||||
// }).catch(e => { |
// parentTrue.forEach(val => { |
||||
// loading.close() |
// roleMenus.push({ |
||||
|
// menuSid: val, |
||||
|
// orgSid: _this.$store.getters.userInfo.orgSid, |
||||
|
// roleSid: _this.Thisrow.sid |
||||
// }) |
// }) |
||||
}).catch(() => { |
// }) |
||||
}) |
// saveorgrolemenus({ |
||||
|
// roleSid: _this.Thisrow.sid, |
||||
|
// roleMenus: roleMenus |
||||
|
// }).then(res => { |
||||
|
// this.roleDialog = false |
||||
|
// this.$message({ |
||||
|
// message: res.msg, |
||||
|
// type: 'success' |
||||
|
// }) |
||||
|
// }) |
||||
|
// }, |
||||
|
checkchange(data, checked, indeterminate) { |
||||
|
if (checked) { |
||||
|
|
||||
|
this.search.orgSid = data.sid |
||||
|
this.orgName = data.name |
||||
|
|
||||
|
let arr = [] |
||||
|
arr = [data.sid]; |
||||
|
this.$refs.Tree.setCheckedKeys(arr); |
||||
|
return; |
||||
|
} |
||||
}, |
}, |
||||
resetState() { |
checkchange1(data, checked, indeterminate) { |
||||
this.viewState = 1 |
if (checked) { |
||||
|
this.roleForm.orgSid = data.sid |
||||
|
// this.orgName = data.name |
||||
|
let arr = [] |
||||
|
arr = [data.sid]; |
||||
|
this.$refs.Tree1.setCheckedKeys(arr); |
||||
|
return; |
||||
|
} |
||||
}, |
}, |
||||
doClose() { |
checkchange2(data, checked, indeterminate) { |
||||
this.$store.dispatch('tagsView/delView', this.$route) |
if (checked) { |
||||
this.$router.go(-1) |
this.roleForm.orgSid = data.sid |
||||
|
// this.orgName = data.name |
||||
|
let arr = [] |
||||
|
arr = [data.sid]; |
||||
|
this.$refs.Tree2.setCheckedKeys(arr); |
||||
|
return; |
||||
} |
} |
||||
|
}, |
||||
|
handleClear() { |
||||
|
// 将选择器的值置空 |
||||
|
this.orgName = '' |
||||
|
this.search.orgSid = '' |
||||
|
let arr = [] |
||||
|
this.$refs.Tree.setCheckedKeys(arr); |
||||
} |
} |
||||
} |
} |
||||
|
}; |
||||
</script> |
</script> |
||||
|
|
||||
<style scoped> |
<style scoped> |
||||
|
.el-select > .el-input { |
||||
|
display: block; |
||||
|
width: 300px; |
||||
|
} |
||||
|
|
||||
|
/deep/ .tab-header .el-select { |
||||
|
width: 180px; |
||||
|
} |
||||
|
|
||||
|
.my-tabs { |
||||
|
margin-top: 10px; |
||||
|
} |
||||
</style> |
</style> |
||||
|
@ -0,0 +1,267 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<el-card class="box-card"> |
||||
|
<table class="e-table" cellspacing="0"> |
||||
|
<tr> |
||||
|
<td>姓名</td> |
||||
|
<td> |
||||
|
<el-input v-model="form.name" style="width:300px"></el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>用户类型</td> |
||||
|
<td> |
||||
|
<el-select v-model="form.userType" @change="$forceUpdate()" style="width:300px"> |
||||
|
<el-option |
||||
|
v-for="(item, i) in userTypeData" |
||||
|
:key="i" |
||||
|
:label="item.name" |
||||
|
:value="item.value"> |
||||
|
</el-option> |
||||
|
</el-select> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>部门</td> |
||||
|
<td> |
||||
|
<el-select v-model="form.deptSid" placeholder="请选择" style="width:300px"> |
||||
|
<el-option hidden :key="form.deptSid" :label="orgName" :value="form.deptSid"></el-option> |
||||
|
<el-tree :data="treedata" ref="Tree" show-checkbox accordion node-key="sid" |
||||
|
:default-checked-keys="checkedId" |
||||
|
:default-expand-all='true' :check-strictly='true' :props="defaultProps" |
||||
|
@check-change="checkchange" |
||||
|
> |
||||
|
</el-tree> |
||||
|
</el-select> |
||||
|
<!--<el-select v-model="form.deptSid" @change="$forceUpdate()"> |
||||
|
<el-option |
||||
|
v-for="(item, i) in treedata" |
||||
|
:key="i" |
||||
|
:label="item.name" |
||||
|
:value="item.sid"> |
||||
|
</el-option> |
||||
|
</el-select>--> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>岗位</td> |
||||
|
<td> |
||||
|
<el-select v-model="form.postSid" @change="$forceUpdate()" style="width:300px"> |
||||
|
<el-option |
||||
|
v-for="(item, i) in postSidData" |
||||
|
:key="i" |
||||
|
:label="item.name" |
||||
|
:value="item.sid"> |
||||
|
</el-option> |
||||
|
</el-select> |
||||
|
<!--<el-input v-model="form.postSid"></el-input>--> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>手机号码</td> |
||||
|
<td> |
||||
|
<el-input v-model="form.mobile" style="width:300px"></el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>手机验证码</td> |
||||
|
<td> |
||||
|
<el-input v-model="form.verificationCode" placeholder="请输入验证码" style="width:300px"> |
||||
|
<el-button v-show="showCode" slot="append" @click.native="getIdentifying">获取验证码</el-button> |
||||
|
<el-button v-show="!showCode" slot="append">{{phoneCodeCount}} s</el-button> |
||||
|
</el-input> |
||||
|
<!--<el-input v-model="form.verificationCode"></el-input>--> |
||||
|
</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
<div style="margin-top: 20px; text-align: center;"> |
||||
|
<el-button type="primary" @click="save()">保 存</el-button> |
||||
|
<!--<el-button type="warning" @click="cancel()">取 消</el-button>--> |
||||
|
</div> |
||||
|
</el-card> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import {userAdd, userUpdata, userSingle, orgList, postList, getCode} from '@/api/system/userManage/index.js' |
||||
|
|
||||
|
export default { |
||||
|
data() { |
||||
|
return { |
||||
|
form: { |
||||
|
sid: '', |
||||
|
name: '', |
||||
|
userType: '', |
||||
|
deptSid: '', |
||||
|
postSid: '', |
||||
|
mobile: '', |
||||
|
verificationCode: '' |
||||
|
}, |
||||
|
form1: { |
||||
|
sid: '', |
||||
|
}, |
||||
|
userTypeData: [{ |
||||
|
value: '1', |
||||
|
name: '员工' |
||||
|
}, { |
||||
|
value: '2', |
||||
|
name: '客户' |
||||
|
}, { |
||||
|
value: '3', |
||||
|
name: '供应商' |
||||
|
}], |
||||
|
treedata: [], |
||||
|
checkedId: [], |
||||
|
orgName: '', |
||||
|
defaultProps: { |
||||
|
children: 'children', |
||||
|
label: 'name' |
||||
|
}, |
||||
|
postSidData: [], |
||||
|
showCode: true, |
||||
|
phoneCodeCount: '', |
||||
|
timer: null, |
||||
|
}; |
||||
|
}, |
||||
|
props: ['dataObj'], |
||||
|
watch: { |
||||
|
dataObj: { |
||||
|
handler(val) { |
||||
|
this.form1.sid = val.sid |
||||
|
this.getUserSingle() |
||||
|
this.getOrgList() |
||||
|
}, |
||||
|
deep: true, |
||||
|
}, |
||||
|
}, |
||||
|
mounted() { |
||||
|
this.getOrgList() |
||||
|
}, |
||||
|
methods: { |
||||
|
getUserSingle() { |
||||
|
userSingle(this.form1).then(res => { |
||||
|
if (res.code == '200') { |
||||
|
this.form.sid = res.data.sid |
||||
|
this.form.name = res.data.name |
||||
|
this.form.userType = res.data.userType |
||||
|
this.form.deptSid = res.data.deptSid |
||||
|
this.orgName = res.data.departmentName |
||||
|
this.form.postSid = res.data.postSid |
||||
|
this.form.mobile = res.data.mobile |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 获取部门树形 |
||||
|
getOrgList(row) { |
||||
|
// this.roleDialog = true |
||||
|
this.checkedId = [] |
||||
|
this.Thisrow = row |
||||
|
this.loading = true |
||||
|
let params = {} |
||||
|
orgList(params).then(res => { |
||||
|
this.treedata = res.data |
||||
|
}) |
||||
|
|
||||
|
}, |
||||
|
checkchange(data, checked, indeterminate) { |
||||
|
if (checked) { |
||||
|
|
||||
|
this.form.deptSid = data.sid |
||||
|
this.orgName = data.name |
||||
|
let arr = [] |
||||
|
arr = [data.sid]; |
||||
|
this.$refs.Tree.setCheckedKeys(arr); |
||||
|
this.form.postSid = '' |
||||
|
this.getPost(data.sid) |
||||
|
return; |
||||
|
} |
||||
|
}, |
||||
|
getPost(orgSid) { |
||||
|
let params = { |
||||
|
sid: orgSid |
||||
|
} |
||||
|
postList(params).then(res => { |
||||
|
this.postSidData = res.data |
||||
|
}) |
||||
|
}, |
||||
|
save() { |
||||
|
if (this.form.sid) { |
||||
|
userUpdata(this.form).then(res => { |
||||
|
if (res.code == '200') { |
||||
|
this.$message({ |
||||
|
message: res.msg, |
||||
|
type: 'success' |
||||
|
}) |
||||
|
this.$emit('status', false) |
||||
|
} |
||||
|
}) |
||||
|
} else { |
||||
|
let orgSid = this.$refs.Tree.getCheckedKeys() |
||||
|
this.form.deptSid = orgSid.toString() |
||||
|
userAdd(this.form).then(res => { |
||||
|
if (res.code == '200') { |
||||
|
this.$message({ |
||||
|
message: res.msg, |
||||
|
type: 'success' |
||||
|
}) |
||||
|
this.$emit('status', false) |
||||
|
} |
||||
|
}) |
||||
|
let arr = [] |
||||
|
this.$refs.Tree.setCheckedKeys(arr); |
||||
|
} |
||||
|
this.reset() |
||||
|
}, |
||||
|
reset() { |
||||
|
this.form = { |
||||
|
sid: '', |
||||
|
name: '', |
||||
|
userType: '', |
||||
|
deptSid: '', |
||||
|
postSid: '', |
||||
|
mobile: '', |
||||
|
verificationCode: '' |
||||
|
} |
||||
|
}, |
||||
|
//获取验证码 |
||||
|
getIdentifying() { |
||||
|
if (this.form.mobile == "") { |
||||
|
this.$alert('请填写手机号码', '', { |
||||
|
confirmButtonText: '确定' |
||||
|
}) |
||||
|
return; |
||||
|
} |
||||
|
//验证码倒计时 |
||||
|
const TIME_COUNT = 60; |
||||
|
if (!this.timer) { |
||||
|
this.phoneCodeCount = TIME_COUNT; |
||||
|
this.showCode = false; |
||||
|
this.timer = setInterval(() => { |
||||
|
if (this.phoneCodeCount > 0 && this.phoneCodeCount <= TIME_COUNT) { |
||||
|
this.phoneCodeCount--; |
||||
|
} else { |
||||
|
this.showCode = true; |
||||
|
clearInterval(this.timer); |
||||
|
this.timer = null; |
||||
|
} |
||||
|
}, 1000) |
||||
|
} |
||||
|
|
||||
|
let obj = { |
||||
|
phone: this.form.mobile, |
||||
|
} |
||||
|
getCode(obj).then(res => { |
||||
|
if (res.code == '200') { |
||||
|
this.orginTranceNo = res.data.tranceNo; |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
cancel() { |
||||
|
this.$emit('status', false) |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style> |
||||
|
</style> |
@ -0,0 +1,483 @@ |
|||||
|
<template> |
||||
|
<div> |
||||
|
<div class="tab-header"> |
||||
|
<el-form ref="form" :inline="true" :model="search" label-width="80px"> |
||||
|
<el-row :gutter="20"> |
||||
|
<el-col :span="24"> |
||||
|
<el-form-item label="用户名"> |
||||
|
<el-input v-model="search.userName" clearable></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="姓名"> |
||||
|
<el-input v-model="search.name" clearable></el-input> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="角色"> |
||||
|
<el-select v-model="search.roleSid" filterable clearable placeholder="请选择"> |
||||
|
<el-option v-for="item in roleListAll" :key="item.sid" :label="item.name" :value="item.sid"></el-option> |
||||
|
</el-select> |
||||
|
</el-form-item> |
||||
|
<el-form-item label="部门"> |
||||
|
<el-input v-model="search.orgName" clearable></el-input> |
||||
|
<!-- <el-select v-model="search.roleSid" clearable placeholder="请选择">--> |
||||
|
<!-- <el-option v-for="(item,i) in roleListAll" :key="i" :label="item.name" :value="item.sid"></el-option>--> |
||||
|
<!-- </el-select>--> |
||||
|
</el-form-item> |
||||
|
<el-button @click="getOrgUserList(1)">查询</el-button> |
||||
|
</el-col> |
||||
|
</el-row> |
||||
|
</el-form> |
||||
|
</div> |
||||
|
<!-- table --> |
||||
|
<el-table :data="userTable" border style="width: 100%;"> |
||||
|
<el-table-column label="序号" width="60px" type="index" align="center"> |
||||
|
</el-table-column> |
||||
|
<el-table-column label="操作" width="300px" align="center"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-button @click="setRole(scope.row)" type="primary" size="mini"> |
||||
|
设置角色 |
||||
|
</el-button> |
||||
|
<el-button @click="initPwd(scope.row)" type="danger" size="mini"> |
||||
|
初始化密码 |
||||
|
</el-button> |
||||
|
<!-- <el-button @click="del(scope.row)" type="danger" size="mini"> |
||||
|
删除 |
||||
|
</el-button>--> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="userName" label="用户名" align="center"> |
||||
|
<template slot-scope="scope"> |
||||
|
<!-- <span class="tablerow-click" @click="userinfoChange(scope.row)">-->{{ scope.row.userName }}<!--</span>--> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
<el-table-column prop="userType" label="用户类型" align="center"></el-table-column> |
||||
|
<el-table-column prop="name" label="姓名" width="120px" align="center"></el-table-column> |
||||
|
<el-table-column prop="departmentName" label="部门" align="center"></el-table-column> |
||||
|
<el-table-column prop="postName" label="岗位" align="center"></el-table-column> |
||||
|
<el-table-column prop="isEnable" label="是否可用" align="center"> |
||||
|
<template slot-scope="scope"> |
||||
|
<el-switch |
||||
|
v-model="scope.row.isEnable" |
||||
|
active-value='1' |
||||
|
inactive-value='0' |
||||
|
active-color="#13ce66" |
||||
|
inactive-color="#ff4949" |
||||
|
@change="enabledChange($event,scope.row)"> |
||||
|
</el-switch> |
||||
|
</template> |
||||
|
</el-table-column> |
||||
|
</el-table> |
||||
|
<pagination :total="page.total" :page.sync="page.current" :limit.sync="page.size" @pagination="pagination"/> |
||||
|
<!-- 角色设置 --> |
||||
|
<el-dialog title="设置角色" :visible.sync="roleDialog" width="30%"> |
||||
|
<el-form :model="roleForm" :rules="rules" ref="roleForm"> |
||||
|
<el-form-item label="角色名称" :label-width="formLabelWidth" prop="roleSid"> |
||||
|
<el-select v-model="roleForm.roleSid" placeholder="请选择" filterable multiple> |
||||
|
<el-option v-for="(item,i) in roleList" :key="i" :label="item.name" :value="item.sid"></el-option> |
||||
|
</el-select> |
||||
|
<!--<el-button type="primary" size='mini' @click="toNav('RoleAdminister')" style="margin-left: 10px;" circle icon="el-icon-plus"></el-button>--> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<div slot="footer" class="dialog-footer"> |
||||
|
<el-button type="primary" @click="saveRole('roleForm')">保 存</el-button> |
||||
|
<el-button @click="roleDialog = false">关 闭</el-button> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
<!-- 部门设置 --> |
||||
|
<el-dialog title="部门设置" :visible.sync="bm_Dialog" width="30%"> |
||||
|
<el-form :model="bm_Form" :rules="rules" ref="bm_Form"> |
||||
|
<el-form-item label="部门名称" :label-width="formLabelWidth" prop="departmentSid"> |
||||
|
<!-- <el-select v-model="bm_Form.departmentSid" placeholder="请选择"> |
||||
|
<el-option v-for="item in bm_List" |
||||
|
:key="item.departmentSid" |
||||
|
:label="item.departmentName" |
||||
|
:value="item.departmentSid" |
||||
|
></el-option> |
||||
|
</el-select> --> |
||||
|
<el-cascader |
||||
|
v-model="bm_Form.departmentSid" |
||||
|
:options="treedata" |
||||
|
:props="props"></el-cascader> |
||||
|
<el-button type="primary" size='mini' @click="toNav('deptManage')" style="margin-left: 10px;" circle |
||||
|
icon="el-icon-plus"></el-button> |
||||
|
</el-form-item> |
||||
|
</el-form> |
||||
|
<div slot="footer" class="dialog-footer"> |
||||
|
<el-button type="primary" @click="saveOrg('bm_Form')">保 存</el-button> |
||||
|
<el-button @click="bm_Dialog = false">关 闭</el-button> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
<!-- 编辑信息 --> |
||||
|
<el-dialog title="编辑用户信息" :visible.sync="editDialog" width="40%"> |
||||
|
<table class="e-table" cellspacing="0"> |
||||
|
<tr> |
||||
|
<td>姓名</td> |
||||
|
<td> |
||||
|
<el-input v-model="form.name" style="width:300px"></el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>用户类型</td> |
||||
|
<td> |
||||
|
<el-select v-model="form.userTypeKey" @change="$forceUpdate()" style="width:300px"> |
||||
|
<el-option v-for="(item, i) in userTypeData" :key="i" :label="item.name" :value="item.value"> |
||||
|
</el-option> |
||||
|
</el-select> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>部门</td> |
||||
|
<td> |
||||
|
<el-select v-model="form.deptSid" placeholder="请选择" @change="$forceUpdate()" style="width:300px"> |
||||
|
<el-option hidden :key="form.deptSid" :label="orgName" :value="form.deptSid"></el-option> |
||||
|
<el-tree :data="treedata" ref="Tree" show-checkbox accordion node-key="sid" :default-checked-keys="checkedId" :default-expand-all='true' :check-strictly='true' :props="defaultProps" @check-change="checkchange"> |
||||
|
</el-tree> |
||||
|
</el-select> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>岗位</td> |
||||
|
<td> |
||||
|
<el-select v-model="form.postSid" @change="$forceUpdate()" style="width:300px"> |
||||
|
<el-option v-for="(item, i) in postSidData" :key="i" :label="item.name" :value="item.sid"></el-option> |
||||
|
</el-select> |
||||
|
<!--<el-input v-model="form.postSid"></el-input>--> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>手机号码</td> |
||||
|
<td> |
||||
|
<el-input v-model="form.userName" style="width:300px"></el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
<tr> |
||||
|
<td>手机验证码</td> |
||||
|
<td> |
||||
|
<el-input v-model="form.verificationCode" placeholder="请输入验证码" style="width:300px"> |
||||
|
<el-button v-show="showCode" slot="append" @click.native="getIdentifying">获取验证码</el-button> |
||||
|
<el-button v-show="!showCode" slot="append">{{ phoneCodeCount }} s</el-button> |
||||
|
</el-input> |
||||
|
</td> |
||||
|
</tr> |
||||
|
</table> |
||||
|
<div style="margin-top: 20px; text-align: center;"> |
||||
|
<el-button type="primary" @click="save()">保 存</el-button> |
||||
|
<el-button @click="editDialog = false">关 闭</el-button> |
||||
|
</div> |
||||
|
</el-dialog> |
||||
|
</div> |
||||
|
</template> |
||||
|
|
||||
|
<script> |
||||
|
import { |
||||
|
userList, |
||||
|
delUser, |
||||
|
initPwd, |
||||
|
setRole, |
||||
|
orgList, |
||||
|
postList, |
||||
|
saveOrgRole, |
||||
|
roleList, |
||||
|
setRoleEnable, |
||||
|
userUpdata |
||||
|
} from '@/api/system/userManage/index.js' |
||||
|
|
||||
|
export default { |
||||
|
data() { |
||||
|
return { |
||||
|
editDialog: false, |
||||
|
form: {}, |
||||
|
userTypeData: [{ |
||||
|
value: '1', |
||||
|
name: '员工' |
||||
|
}, { |
||||
|
value: '2', |
||||
|
name: '客户' |
||||
|
}, { |
||||
|
value: '3', |
||||
|
name: '供应商' |
||||
|
}], |
||||
|
checkedId: [], |
||||
|
orgName: '', |
||||
|
defaultProps: { |
||||
|
children: 'children', |
||||
|
label: 'name' |
||||
|
}, |
||||
|
showCode: true, |
||||
|
postSidData: [], |
||||
|
phoneCodeCount: '', |
||||
|
timer: null, |
||||
|
roleListAll: [], |
||||
|
search: { |
||||
|
name: '', |
||||
|
userName: '', |
||||
|
roleSid: '' |
||||
|
}, |
||||
|
props: { |
||||
|
value: 'sid', |
||||
|
label: 'name', |
||||
|
children: 'orgDepartmentVoList' |
||||
|
}, |
||||
|
treedata: null, |
||||
|
page: { |
||||
|
total: 0, // 默认数据总数 |
||||
|
current: 1, // 默认开始页面 |
||||
|
size: 10 // 每页的数据条数 |
||||
|
}, |
||||
|
userTable: [], |
||||
|
clientTable: [], |
||||
|
// 设置角色 |
||||
|
formLabelWidth: '100', |
||||
|
roleDialog: false, |
||||
|
roleList: [], |
||||
|
roleForm: { |
||||
|
roleSid: '', |
||||
|
userSid: '' |
||||
|
}, |
||||
|
// 部门 |
||||
|
bm_Dialog: false, |
||||
|
postSid: '', |
||||
|
bm_Form: { departmentSid: '' }, |
||||
|
bm_List: [], |
||||
|
rules: { |
||||
|
roleSid: [{ required: true, message: '请选择角色名称', trigger: 'blur' }], |
||||
|
departmentSid: [{ required: true, message: '请选择部门名称', trigger: 'blur' }] |
||||
|
} |
||||
|
} |
||||
|
}, |
||||
|
props: ['dataObj'], |
||||
|
watch: { |
||||
|
dataObj: { |
||||
|
handler(val) { |
||||
|
this.getOrgUserList() |
||||
|
}, |
||||
|
deep: true |
||||
|
} |
||||
|
}, |
||||
|
mounted() { |
||||
|
this.getOrgUserList() |
||||
|
this.getRoleList() |
||||
|
this.getOrgTree() |
||||
|
this.getOrgList() |
||||
|
}, |
||||
|
methods: { |
||||
|
// 列表 + 初始化 |
||||
|
getOrgUserList(flag) { |
||||
|
if (flag === '1') { |
||||
|
this.page.current = 1 |
||||
|
} |
||||
|
let params = this.page |
||||
|
params.params = this.search |
||||
|
userList(params).then(res => { |
||||
|
this.page.total = res.data.total |
||||
|
this.userTable = res.data.records |
||||
|
}) |
||||
|
}, |
||||
|
getRoleList() { |
||||
|
var param = {} |
||||
|
roleList(param).then(res => { |
||||
|
if (res.code === '200') { |
||||
|
this.roleListAll = res.data |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 分页 |
||||
|
pagination(val) { |
||||
|
this.page.current = val.pageNum |
||||
|
this.page.size = val.pageSize |
||||
|
this.getOrgUserList() |
||||
|
}, |
||||
|
getOrgTree() { // 获取部门树形列表 |
||||
|
function treeArr(data) { |
||||
|
if (data.length > 0) { |
||||
|
for (var i = 0; i < data.length; i++) { |
||||
|
if (data[i].orgDepartmentVoList.length > 0) { |
||||
|
treeArr(data[i].orgDepartmentVoList) |
||||
|
} else { |
||||
|
delete data[i].orgDepartmentVoList |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
// getOrgTree({organizationSid: this.$store.getters.userInfo.orgSid}).then(res => { |
||||
|
// let tree = res.data[0].orgDepartmentVoList |
||||
|
// treeArr(tree) |
||||
|
// this.treedata = tree |
||||
|
// }) |
||||
|
}, |
||||
|
// 设置角色 设置 用户ID |
||||
|
setRole(row) { |
||||
|
this.roleForm.roleSid = [] |
||||
|
this.roleDialog = true |
||||
|
this.roleForm.sid = row.sid |
||||
|
this.roleForm.userSid = row.sid |
||||
|
setRole(this.roleForm).then(res => { |
||||
|
this.roleList = res.data |
||||
|
for (let i = 0; i < res.data.length; i++) { |
||||
|
if (res.data[i].checked === '0') { |
||||
|
this.roleForm.roleSid.push(res.data[i].sid) |
||||
|
} |
||||
|
} |
||||
|
// this.roleForm.roleSid = res.data.filter(item=> item.checked =='0') |
||||
|
}) |
||||
|
}, |
||||
|
// 设置角色 提交 |
||||
|
saveRole(formName) { |
||||
|
this.$refs[formName].validate((valid) => { |
||||
|
if (valid) { |
||||
|
this.roleForm.roleSid = this.roleForm.roleSid.toString() |
||||
|
saveOrgRole(this.roleForm).then(res => { |
||||
|
if (res.code === '200') { |
||||
|
this.roleDialog = false |
||||
|
this.getOrgUserList() |
||||
|
this.$message({ |
||||
|
message: res.msg, |
||||
|
type: 'success' |
||||
|
}) |
||||
|
} |
||||
|
}) |
||||
|
} else { |
||||
|
return false |
||||
|
} |
||||
|
}) |
||||
|
}, |
||||
|
// 设置部门 提交 |
||||
|
saveOrg(formName) { |
||||
|
this.$refs[formName].validate((valid) => { |
||||
|
if (valid) { |
||||
|
let params = { // 请求的参数 |
||||
|
departmentSid: this.bm_Form.departmentSid[this.bm_Form.departmentSid.length - 1], |
||||
|
staffSid: this.bm_Form.staffSid |
||||
|
} |
||||
|
saveDepartment(params).then(res => { |
||||
|
if (res.code === '200') { |
||||
|
this.getOrgUserList() |
||||
|
this.bm_Dialog = false |
||||
|
this.$message({ |
||||
|
message: res.msg, |
||||
|
type: 'success' |
||||
|
}) |
||||
|
} |
||||
|
}) |
||||
|
} else { |
||||
|
return false |
||||
|
} |
||||
|
}); |
||||
|
}, |
||||
|
// 设置部门 提交 |
||||
|
save(formName) { |
||||
|
this.form.userType = this.form.userTypeKey; |
||||
|
userUpdata(this.form).then(res => { |
||||
|
if (res.code === '200') { |
||||
|
this.getOrgUserList() |
||||
|
this.bm_Dialog = false |
||||
|
this.$message({ |
||||
|
message: res.msg, |
||||
|
type: 'success' |
||||
|
}) |
||||
|
this.editDialog = false |
||||
|
} |
||||
|
this.reset() |
||||
|
}) |
||||
|
}, |
||||
|
initPwd(row) { |
||||
|
this.$confirm('此操作将初始化该用户密码, 是否继续?', '提示', { |
||||
|
confirmButtonText: '确定', |
||||
|
cancelButtonText: '取消', |
||||
|
type: 'warning' |
||||
|
}).then(() => { |
||||
|
initPwd({sid: row.sid}).then(res => { |
||||
|
this.$message({ |
||||
|
type: 'success', |
||||
|
message: res.msg |
||||
|
}) |
||||
|
}) |
||||
|
}) |
||||
|
}, |
||||
|
// 修改用户信息 |
||||
|
userinfoChange(row) { |
||||
|
var postSid = row.postSid |
||||
|
this.editDialog = true |
||||
|
this.form = Object.assign({}, row) |
||||
|
this.postSid = postSid |
||||
|
this.$nextTick(() => { |
||||
|
this.$refs.Tree.setChecked(this.form.departmentSid, true, true) |
||||
|
}) |
||||
|
// this.$emit('status',true) |
||||
|
// this.$emit('item',row) |
||||
|
}, |
||||
|
// 删除 |
||||
|
del(row) { |
||||
|
this.$confirm('此操作将删除该用户, 是否继续?', '提示', { |
||||
|
confirmButtonText: '确定', |
||||
|
cancelButtonText: '取消', |
||||
|
type: 'warning' |
||||
|
}).then(() => { |
||||
|
delUser({ sid: row.sid }).then(res => { |
||||
|
this.$message({ |
||||
|
type: 'success', |
||||
|
message: res.msg |
||||
|
}); |
||||
|
this.getOrgUserList() |
||||
|
}) |
||||
|
}) |
||||
|
}, |
||||
|
toNav(src) { |
||||
|
this.$router.push('/' + src) |
||||
|
}, |
||||
|
// 获取部门树形 |
||||
|
getOrgList(row) { |
||||
|
// this.roleDialog = true |
||||
|
this.checkedId = [] |
||||
|
this.Thisrow = row |
||||
|
this.loading = true |
||||
|
let params = {} |
||||
|
orgList(params).then(res => { |
||||
|
this.treedata = res.data |
||||
|
}) |
||||
|
|
||||
|
}, |
||||
|
checkchange(data, checked, indeterminate) { |
||||
|
if (checked) { |
||||
|
this.form.deptSid = data.sid |
||||
|
this.orgName = data.name |
||||
|
let arr = [] |
||||
|
arr = [data.sid] |
||||
|
this.$refs.Tree.setCheckedKeys(arr) |
||||
|
this.form.postSid = '' |
||||
|
this.getPost(data.sid) |
||||
|
return |
||||
|
} |
||||
|
}, |
||||
|
getPost(orgSid) { |
||||
|
let params = { |
||||
|
sid: orgSid |
||||
|
} |
||||
|
postList(params).then(res => { |
||||
|
this.postSidData = res.data |
||||
|
}) |
||||
|
this.form.postSid = this.postSid |
||||
|
}, |
||||
|
reset() { |
||||
|
this.form = {} |
||||
|
}, |
||||
|
enabledChange(value, row) { |
||||
|
setRoleEnable({ |
||||
|
sid: row.sid, |
||||
|
isEnable: value |
||||
|
}).then(res => { |
||||
|
this.$message({ |
||||
|
type: 'success', |
||||
|
message: res.msg |
||||
|
}); |
||||
|
}) |
||||
|
} |
||||
|
} |
||||
|
} |
||||
|
</script> |
||||
|
|
||||
|
<style scoped="scoped"> |
||||
|
.el-select > .el-input { |
||||
|
display: block; |
||||
|
width: 300px; |
||||
|
} |
||||
|
</style> |
||||
|
|
@ -1,290 +1,65 @@ |
|||||
<template> |
<template> |
||||
<div class="app-container"> |
<div> |
||||
<div v-show="viewState == 1"> |
<el-tabs class="my-tabs" v-model="activeName" type="card" @tab-click="handleClick"> |
||||
<button-bar ref="btnbar" view-title="用户管理" :btndisabled="btndisabled" @btnhandle="btnHandle" /> |
<el-tab-pane label="用户列表" name="roleList"> |
||||
<div class="main-content"> |
<user-manage-list :dataObj='dataObj' @status='isShow' @item='listObj'></user-manage-list> |
||||
<div class="searchcon"> |
</el-tab-pane> |
||||
<el-button size="small" class="searchbtn" @click="clicksearchShow"> |
<!-- <el-tab-pane label="新增用户" name="addrole"> |
||||
{{ searchxianshitit }} |
<user-manage-add @status='isShow' :dataObj='childObj'></user-manage-add> |
||||
</el-button> |
</el-tab-pane>--> |
||||
<div v-show="isSearchShow" class="search"> |
</el-tabs> |
||||
<el-form ref="queryParams" :inline="true" :model="queryParams" class="tab-header"> |
|
||||
<el-form-item label="审核状态"> |
|
||||
<el-input v-model="queryParams.params.createSid" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="订单编号"> |
|
||||
<el-input v-model="queryParams.params.modifySid" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="填单人"> |
|
||||
<el-input v-model="queryParams.params.buyerName" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="填单日期"> |
|
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
|
||||
<span style="padding: 0 8px">至</span> |
|
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="供应商名称"> |
|
||||
<el-input v-model="queryParams.params.contacts" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="要货单位"> |
|
||||
<el-input v-model="queryParams.params.telephone" placeholder="" clearable /> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="完成状态"> |
|
||||
<el-select v-model="queryParams.params.completionStatusKey" filterable placeholder="请选择" clearable> |
|
||||
<el-option v-for="item in state_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey" /> |
|
||||
</el-select> |
|
||||
</el-form-item> |
|
||||
<el-form-item label="到货日期"> |
|
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
|
||||
<span style="padding: 0 8px">至</span> |
|
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
|
||||
</el-form-item> |
|
||||
</el-form> |
|
||||
<div class="btn" style="text-align: center;"> |
|
||||
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button> |
|
||||
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button> |
|
||||
</div> |
|
||||
</div> |
|
||||
</div> |
|
||||
<!-- Start 项目列表头部 --> |
|
||||
<div class="listtop"> |
|
||||
<div class="tit">用户管理列表</div> |
|
||||
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList" /> |
|
||||
</div> |
|
||||
<!-- End 项目列表头部 --> |
|
||||
<!-- Start 项目列表 --> |
|
||||
<div class=""> |
|
||||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" @selection-change="handleSelectionChange"> |
|
||||
<el-table-column fixed width="50" type="selection" align="center" /> |
|
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> |
|
||||
<el-table-column fixed width="180" label="操作" align="center"> |
|
||||
<template slot-scope="scope"> |
|
||||
<el-button type="primary" size="mini" @click="toEdit(scope.row)">办理</el-button> |
|
||||
<el-button type="primary" size="mini">撤回</el-button> |
|
||||
<el-button type="primary" size="mini" @click="toInfo(scope.row)">查看</el-button> |
|
||||
</template> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="createSid" label="状态" align="center" width="120" /> |
|
||||
<el-table-column prop="code" label="订单编号" align="center" width="150" /> |
|
||||
<el-table-column prop="buyerName" label="填单人" align="center" width="120" /> |
|
||||
<el-table-column label="填单日期" align="center" width="120"> |
|
||||
<template slot-scope="scope"> |
|
||||
<span>{{ scope.row.purchaseDate.substring(0, scope.row.purchaseDate.length - 9) }}</span> |
|
||||
</template> |
|
||||
</el-table-column> |
|
||||
<el-table-column prop="supplierName" label="供应商单位" header-align="center" align="left" /> |
|
||||
<el-table-column prop="packageTotalPrice" label="订单金额(元)" align="center" /> |
|
||||
<el-table-column prop="purchasingDeptName" label="要货单位" align="center" /> |
|
||||
<el-table-column prop="arrivalDate" label="到货日期" align="center" width="120" /> |
|
||||
<el-table-column prop="completionStatus" label="完成状态" align="center" width="120" /> |
|
||||
</el-table> |
|
||||
</div> |
|
||||
<!-- End 项目列表 --> |
|
||||
<div class="pages"> |
|
||||
<div class="tit" /> |
|
||||
<!-- 翻页 --> |
|
||||
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" @pagination="loadList" /> |
|
||||
</div> |
|
||||
</div> |
|
||||
</div> |
|
||||
<!-- End 查询和其列表部分 --> |
|
||||
<!-- 新增修改部分组件 --> |
|
||||
<!-- <divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList"/> |
|
||||
<divInfo v-show="viewState == 4" ref="divInfo" @doback="resetState" /> --> |
|
||||
</div> |
</div> |
||||
</template> |
</template> |
||||
|
|
||||
<script> |
<script> |
||||
// import req from '@/api/supervise/purchaseapplicationmanagement' |
import userManageList from './userManageList.vue' |
||||
import ButtonBar from '@/components/ButtonBar' |
import userManageAdd from './userManageAdd.vue' |
||||
import Pagination from '@/components/pagination' |
|
||||
import pageye from '@/components/pagination/pageye' |
|
||||
|
|
||||
export default { |
export default { |
||||
name: 'ZzjgYhgl', |
|
||||
components: { |
components: { |
||||
ButtonBar, |
userManageList: userManageList, |
||||
Pagination, |
userManageAdd: userManageAdd, |
||||
pageye |
|
||||
}, |
}, |
||||
data() { |
data() { |
||||
return { |
return { |
||||
btndisabled: false, |
activeName: 'roleList', |
||||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看 |
editDialog: false, |
||||
isSearchShow: false, |
dataObj: { |
||||
searchxianshitit: '显示查询条件', |
isShow: '' |
||||
tableLoading: false, |
|
||||
dataList: [], |
|
||||
state_list: [ |
|
||||
{ |
|
||||
dictKey: 0, |
|
||||
dictValue: '未完成' |
|
||||
} |
|
||||
], |
|
||||
btnList: [ |
|
||||
{ |
|
||||
type: 'info', |
|
||||
size: 'small', |
|
||||
icon: 'cross', |
|
||||
btnKey: 'doClose', |
|
||||
btnLabel: '关闭' |
|
||||
} |
|
||||
], |
|
||||
queryParams: { |
|
||||
current: 1, |
|
||||
size: 10, |
|
||||
total: 0, |
|
||||
params: { |
|
||||
code: '', |
|
||||
buyerName: '', |
|
||||
purchaseStartDate: '', |
|
||||
purchaseEndDate: '', |
|
||||
supplierName: '', |
|
||||
purchasingDeptName: '', |
|
||||
arrivalStartDate: '', |
|
||||
arrivalEndDate: '', |
|
||||
completionStatusKey: '' |
|
||||
} |
|
||||
}, |
}, |
||||
sids: [] |
childObj: {} |
||||
} |
}; |
||||
}, |
}, |
||||
mounted() { |
mounted() { |
||||
this.$refs['btnbar'].setButtonList(this.btnList) |
|
||||
}, |
|
||||
created() { |
|
||||
this.loadList() |
|
||||
}, |
}, |
||||
methods: { |
methods: { |
||||
// 搜索条件效果 |
handleClick(tab, event) { |
||||
clicksearchShow() { |
if (tab.name == 'addrole') { |
||||
this.isSearchShow = !this.isSearchShow |
this.dialogTitle = '新增' |
||||
if (this.isSearchShow) { |
// this.roleForm = Object.assign({}, this.formBackup) |
||||
this.searchxianshitit = '隐藏查询条件' |
|
||||
} else { |
} else { |
||||
this.searchxianshitit = '显示查询条件' |
// this.getroleOrgList() |
||||
} |
} |
||||
}, |
}, |
||||
btnHandle(btnKey) { |
isShow(val) { |
||||
switch (btnKey) { |
if (!val) { |
||||
case 'toAdd': |
this.activeName = 'roleList' |
||||
this.toAdd() |
this.dataObj.isShow = false |
||||
break |
this.dataObj.isShow = true |
||||
case 'doDel': |
} else { |
||||
this.doDel() |
this.activeName = 'addrole' |
||||
break |
|
||||
case 'doClose': |
|
||||
this.doClose() |
|
||||
break |
|
||||
default: |
|
||||
break |
|
||||
} |
|
||||
}, |
|
||||
loadList() { |
|
||||
// this.tableLoading = true |
|
||||
// req.listPage(this.queryParams).then((resp) => { |
|
||||
// this.tableLoading = false |
|
||||
// if (resp.success) { |
|
||||
// const data = resp.data |
|
||||
// this.queryParams.total = data.total |
|
||||
// this.dataList = data.records |
|
||||
// } else { |
|
||||
// // 根据resp.code进行异常情况处理 |
|
||||
// this.dataList = [] |
|
||||
// this.queryParams.total = 0 |
|
||||
// } |
|
||||
// }).catch(() => { |
|
||||
// this.tableLoading = false |
|
||||
// }) |
|
||||
}, |
|
||||
// 序号 |
|
||||
indexMethod(index) { |
|
||||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size |
|
||||
var pageindex = index + 1 + pagestart |
|
||||
return pageindex |
|
||||
}, |
|
||||
handleSelectionChange(row) { |
|
||||
const aa = [] |
|
||||
row.forEach((element) => { |
|
||||
aa.push(element.sid) |
|
||||
}) |
|
||||
this.sids = aa |
|
||||
}, |
|
||||
dosearch() { |
|
||||
this.queryParams.current = 1 |
|
||||
this.loadList() |
|
||||
}, |
|
||||
resetQuery() { |
|
||||
this.queryParams = { |
|
||||
current: 1, |
|
||||
size: 10, |
|
||||
total: 0, |
|
||||
params: { |
|
||||
code: '', |
|
||||
buyerName: '', |
|
||||
purchaseDateStart: '', |
|
||||
purchaseDateEnd: '', |
|
||||
supplierName: '', |
|
||||
purchasingDeptName: '', |
|
||||
arrivalDateStart: '', |
|
||||
arrivalDateEnd: '', |
|
||||
completionStatusKey: '' |
|
||||
} |
|
||||
} |
|
||||
this.loadList() |
|
||||
}, |
|
||||
toAdd() { |
|
||||
this.viewState = 2 |
|
||||
this.$refs['divadd'].showAdd() |
|
||||
}, |
|
||||
toEdit(row) { |
|
||||
this.viewState = 3 |
|
||||
this.$refs['divadd'].showEdit(row) |
|
||||
}, |
|
||||
toInfo(row) { |
|
||||
this.viewState = 4 |
|
||||
this.$refs['divInfo'].showInfo(row) |
|
||||
}, |
|
||||
doDel() { |
|
||||
if (this.sids.length === 0) { |
|
||||
this.$message({ showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作' }) |
|
||||
return |
|
||||
} |
} |
||||
const tip = '请确认是否删除所选 ' + this.sids.length + ' 条记录?' |
|
||||
this.$confirm(tip, '提示', { |
|
||||
confirmButtonText: '确定', |
|
||||
cancelButtonText: '取消', |
|
||||
type: 'warning' |
|
||||
}).then(() => { |
|
||||
// const loading = this.$loading({ |
|
||||
// lock: true, |
|
||||
// text: 'Loading', |
|
||||
// spinner: 'el-icon-loading', |
|
||||
// background: 'rgba(0, 0, 0, 0.7)' |
|
||||
// }) |
|
||||
// req.delBySids(this.sids).then(resp => { |
|
||||
// loading.close() |
|
||||
// if (resp.success) { |
|
||||
// this.$message({ type: 'success', message: resp.msg, showClose: true }) |
|
||||
// this.loadList() |
|
||||
// } else { |
|
||||
// // 根据resp.code进行异常情况处理 |
|
||||
// } |
|
||||
// }).catch(e => { |
|
||||
// loading.close() |
|
||||
// }) |
|
||||
}).catch(() => { |
|
||||
}) |
|
||||
}, |
}, |
||||
resetState() { |
listObj(val) { |
||||
this.viewState = 1 |
this.childObj = val |
||||
}, |
|
||||
doClose() { |
|
||||
this.$store.dispatch('tagsView/delView', this.$route) |
|
||||
this.$router.go(-1) |
|
||||
} |
|
||||
} |
} |
||||
} |
} |
||||
|
}; |
||||
</script> |
</script> |
||||
<style scoped> |
|
||||
|
<style scoped="scoped"> |
||||
|
.my-tabs { |
||||
|
margin-top: 10px; |
||||
|
} |
||||
</style> |
</style> |
||||
|
@ -1,290 +1,660 @@ |
|||||
<template> |
<template> |
||||
<div class="app-container"> |
<div class="container" style="display: flex;"> |
||||
<div v-show="viewState == 1"> |
<div class="org-tree"> |
||||
<button-bar ref="btnbar" view-title="组织管理" :btndisabled="btndisabled" @btnhandle="btnHandle" /> |
<el-tree :data="treedata" node-key="sid" :props="props" :default-expanded-keys="['fd6435f2-0005-11ec-a033-48452053aa33']" @node-click="handleNodeClick"> |
||||
<div class="main-content"> |
<span class="custom-tree-node" slot-scope="{ node, data }" @mouseenter="mouseenter(data)" @mouseleave="mouseleave(data)" @click.stop.native> |
||||
<div class="searchcon"> |
<span>{{ node.label || $store.getters.userInfo.Orgname }}</span> |
||||
<el-button size="small" class="searchbtn" @click="clicksearchShow"> |
<span v-show="data.del" class="handle"> |
||||
{{ searchxianshitit }} |
<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-button> |
||||
<div v-show="isSearchShow" class="search"> |
</el-tooltip> |
||||
<el-form ref="queryParams" :inline="true" :model="queryParams" class="tab-header"> |
<!-- <el-tooltip v-show="data.sid" class="item" effect="dark" content="修改" placement="top-start">--> |
||||
<el-form-item label="审核状态"> |
<!-- <el-button type="text" size="mini" @click.stop="() => deit(data)" icon="el-icon-edit">--> |
||||
<el-input v-model="queryParams.params.createSid" placeholder="" clearable /> |
<!-- </el-button>--> |
||||
</el-form-item> |
<!-- </el-tooltip>--> |
||||
<el-form-item label="订单编号"> |
<!-- <el-tooltip v-show="data.sid" class="item" effect="dark" content="删除" placement="top-start">--> |
||||
<el-input v-model="queryParams.params.modifySid" placeholder="" clearable /> |
<!-- <el-button type="text" size="mini" @click.stop="() => remove(data)" icon="el-icon-delete">--> |
||||
</el-form-item> |
<!-- </el-button>--> |
||||
<el-form-item label="填单人"> |
<!-- </el-tooltip>--> |
||||
<el-input v-model="queryParams.params.buyerName" placeholder="" clearable /> |
</span> |
||||
</el-form-item> |
</span> |
||||
<el-form-item label="填单日期"> |
</el-tree> |
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
</div> |
||||
<span style="padding: 0 8px">至</span> |
<el-dialog title="编辑节点" :visible.sync="dialogVisible" width="50%" class="edit"> |
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
<table class="e-table" cellspacing="0"> |
||||
</el-form-item> |
<tr> |
||||
<el-form-item label="供应商名称"> |
<td>组织名称</td> |
||||
<el-input v-model="queryParams.params.contacts" placeholder="" clearable /> |
<td> |
||||
</el-form-item> |
<el-input v-model="form.name" style="width:300px"></el-input> |
||||
<el-form-item label="要货单位"> |
</td> |
||||
<el-input v-model="queryParams.params.telephone" placeholder="" clearable /> |
<td>组织编码</td> |
||||
</el-form-item> |
<td> |
||||
<el-form-item label="完成状态"> |
<el-input v-model="form.orgCode" style="width:300px"></el-input> |
||||
<el-select v-model="queryParams.params.completionStatusKey" filterable placeholder="请选择" clearable> |
</td> |
||||
<el-option v-for="item in state_list" :key="item.dictKey" :label="item.dictValue" :value="item.dictKey" /> |
</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> |
</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-form-item label="到货日期"> |
<el-form-item> |
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
<el-button @click="onSearch()">查询</el-button> |
||||
<span style="padding: 0 8px">至</span> |
<el-button @click="resetSearch()">重置</el-button> |
||||
<el-date-picker v-model="queryParams.params.applyStartDate" type="date" clearable value-format="yyyy-MM-dd" placeholder="选择日期" /> |
|
||||
</el-form-item> |
</el-form-item> |
||||
|
</el-col> |
||||
|
</el-row> |
||||
</el-form> |
</el-form> |
||||
<div class="btn" style="text-align: center;"> |
|
||||
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button> |
|
||||
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button> |
|
||||
</div> |
|
||||
</div> |
|
||||
</div> |
</div> |
||||
<!-- Start 项目列表头部 --> |
<!-- table --> |
||||
<div class="listtop"> |
<el-table :data="tableData" default-expand-all border style="width: 100%;"> |
||||
<div class="tit">组织管理列表</div> |
<el-table-column label="操作" align="center" width="160px"> |
||||
<pageye v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" class="pagination" @pagination="loadList" /> |
|
||||
</div> |
|
||||
<!-- End 项目列表头部 --> |
|
||||
<!-- Start 项目列表 --> |
|
||||
<div class=""> |
|
||||
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" @selection-change="handleSelectionChange"> |
|
||||
<el-table-column fixed width="50" type="selection" align="center" /> |
|
||||
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> |
|
||||
<el-table-column fixed width="180" label="操作" align="center"> |
|
||||
<template slot-scope="scope"> |
<template slot-scope="scope"> |
||||
<el-button type="primary" size="mini" @click="toEdit(scope.row)">办理</el-button> |
<el-button type="primary" size="mini" @click="editRow(scope.row)"> |
||||
<el-button type="primary" size="mini">撤回</el-button> |
编辑 |
||||
<el-button type="primary" size="mini" @click="toInfo(scope.row)">查看</el-button> |
</el-button> |
||||
|
<el-button type="danger" size="mini" @click.native.prevent="remove(scope.row)"> |
||||
|
删除 |
||||
|
</el-button> |
||||
</template> |
</template> |
||||
</el-table-column> |
</el-table-column> |
||||
<el-table-column prop="createSid" label="状态" align="center" width="120" /> |
<el-table-column prop="name" label="组织名称" align="center"></el-table-column> |
||||
<el-table-column prop="code" label="订单编号" align="center" width="150" /> |
<el-table-column prop="orgCode" label="组织编码" align="center"></el-table-column> |
||||
<el-table-column prop="buyerName" label="填单人" align="center" width="120" /> |
<!-- <el-table-column prop="zgNames" label="主管" align="center"></el-table-column>--> |
||||
<el-table-column label="填单日期" align="center" width="120"> |
<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"> |
<template slot-scope="scope"> |
||||
<span>{{ scope.row.purchaseDate.substring(0, scope.row.purchaseDate.length - 9) }}</span> |
<el-button @click.native.prevent="lookRow(scope.row)" type="text" size="small">查看</el-button> |
||||
</template> |
</template> |
||||
</el-table-column> |
</el-table-column> |
||||
<el-table-column prop="supplierName" label="供应商单位" header-align="center" align="left" /> |
|
||||
<el-table-column prop="packageTotalPrice" label="订单金额(元)" align="center" /> |
|
||||
<el-table-column prop="purchasingDeptName" label="要货单位" align="center" /> |
|
||||
<el-table-column prop="arrivalDate" label="到货日期" align="center" width="120" /> |
|
||||
<el-table-column prop="completionStatus" label="完成状态" align="center" width="120" /> |
|
||||
</el-table> |
</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> |
||||
<!-- End 项目列表 --> |
|
||||
<div class="pages"> |
|
||||
<div class="tit" /> |
|
||||
<!-- 翻页 --> |
|
||||
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" :limit.sync="queryParams.size" @pagination="loadList" /> |
|
||||
</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> |
||||
</div> |
</div> |
||||
<!-- End 查询和其列表部分 --> |
<!-- <Position v-if="mapDialog" :address.sync="form.addrs" :maker-position.sync="form.jwd" |
||||
<!-- 新增修改部分组件 --> |
:dialog-visible.sync="mapDialog"/>--> |
||||
<!-- <divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList"/> |
|
||||
<divInfo v-show="viewState == 4" ref="divInfo" @doback="resetState" /> --> |
|
||||
</div> |
</div> |
||||
</template> |
</template> |
||||
|
|
||||
<script> |
<script> |
||||
// import req from '@/api/supervise/purchaseapplicationmanagement' |
import { |
||||
import ButtonBar from '@/components/ButtonBar' |
addOrgTree, |
||||
import Pagination from '@/components/pagination' |
delOrgtree, |
||||
import pageye from '@/components/pagination/pageye' |
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 { |
export default { |
||||
name: 'ZzjgZzgl', |
components: { Position }, |
||||
components: { |
|
||||
ButtonBar, |
|
||||
Pagination, |
|
||||
pageye |
|
||||
}, |
|
||||
data() { |
data() { |
||||
return { |
return { |
||||
btndisabled: false, |
dialogVisible: false, |
||||
viewState: 1, // 1、列表 2、添加 3、修改 4、查看 |
mapDialog: false, |
||||
isSearchShow: false, |
dialogTitle: '', |
||||
searchxianshitit: '显示查询条件', |
props: { |
||||
tableLoading: false, |
label: 'name', |
||||
dataList: [], |
children: 'children' |
||||
state_list: [ |
}, |
||||
{ |
nodeForm: { |
||||
dictKey: 0, |
sid: '', |
||||
dictValue: '未完成' |
name: '', |
||||
} |
sortNo: '' |
||||
], |
}, |
||||
btnList: [ |
ewmForm: { |
||||
{ |
qrFilePath: '', |
||||
type: 'info', |
organizationName: '', |
||||
size: 'small', |
departmentName: '', |
||||
icon: 'cross', |
address: '' |
||||
btnKey: 'doClose', |
}, |
||||
btnLabel: '关闭' |
orgAttribute_list: [], |
||||
} |
orgLevel_list: [], |
||||
], |
form: { |
||||
queryParams: { |
sid: '', |
||||
current: 1, |
name: '', |
||||
size: 10, |
orgCode: '', |
||||
total: 0, |
/* 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: { |
params: { |
||||
code: '', |
name: '', |
||||
buyerName: '', |
organizationSid: '', |
||||
purchaseStartDate: '', |
psid: '' |
||||
purchaseEndDate: '', |
|
||||
supplierName: '', |
|
||||
purchasingDeptName: '', |
|
||||
arrivalStartDate: '', |
|
||||
arrivalEndDate: '', |
|
||||
completionStatusKey: '' |
|
||||
} |
} |
||||
}, |
}, |
||||
sids: [] |
tableData: [], |
||||
|
treedata: [], |
||||
|
staffdata: [], |
||||
|
staffdata2: [], |
||||
|
rules: {} |
||||
} |
} |
||||
}, |
}, |
||||
mounted() { |
mounted() { |
||||
this.$refs['btnbar'].setButtonList(this.btnList) |
this.getOrgTree() |
||||
}, |
this.init() |
||||
created() { |
|
||||
this.loadList() |
|
||||
}, |
}, |
||||
methods: { |
methods: { |
||||
// 搜索条件效果 |
init() { |
||||
clicksearchShow() { |
// typeValues({ type: 'orgAttribute' }).then((res) => { |
||||
this.isSearchShow = !this.isSearchShow |
// if (res.success) { |
||||
if (this.isSearchShow) { |
// this.orgAttribute_list = res.data |
||||
this.searchxianshitit = '隐藏查询条件' |
// } |
||||
} else { |
// }) |
||||
this.searchxianshitit = '显示查询条件' |
// 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 |
||||
}, |
}, |
||||
btnHandle(btnKey) { |
changeOrgAttribute(value) { |
||||
switch (btnKey) { |
let bb = null |
||||
case 'toAdd': |
this.orgAttribute_list.forEach((e) => { |
||||
this.toAdd() |
if (e.dictValue === value) { |
||||
break |
bb = { |
||||
case 'doDel': |
key: e.dictKey, |
||||
this.doDel() |
value: e.dictValue |
||||
break |
} |
||||
case 'doClose': |
|
||||
this.doClose() |
|
||||
break |
|
||||
default: |
|
||||
break |
|
||||
} |
} |
||||
|
}) |
||||
|
this.form.orgAttributeKey = bb.key |
||||
}, |
}, |
||||
loadList() { |
pagination(val) { // 分页 |
||||
// this.tableLoading = true |
this.page.current = val.pageNum |
||||
// req.listPage(this.queryParams).then((resp) => { |
this.page.size = val.pageSize |
||||
// this.tableLoading = false |
this.getPageList(this.page) |
||||
// if (resp.success) { |
|
||||
// const data = resp.data |
|
||||
// this.queryParams.total = data.total |
|
||||
// this.dataList = data.records |
|
||||
// } else { |
|
||||
// // 根据resp.code进行异常情况处理 |
|
||||
// this.dataList = [] |
|
||||
// this.queryParams.total = 0 |
|
||||
// } |
|
||||
// }).catch(() => { |
|
||||
// this.tableLoading = false |
|
||||
// }) |
|
||||
}, |
}, |
||||
// 序号 |
handleNodeClick(data) { |
||||
indexMethod(index) { |
this.isshow = 'table' |
||||
var pagestart = (this.queryParams.current - 1) * this.queryParams.size |
this.page.params.organizationSid = this.$store.getters.userInfo.orgSid |
||||
var pageindex = index + 1 + pagestart |
this.page.params.psid = data.sid || 0 |
||||
return pageindex |
|
||||
|
this.getPageList(this.page) |
||||
}, |
}, |
||||
handleSelectionChange(row) { |
getPageList(data) { // 获取树形列表 |
||||
const aa = [] |
pageList(data).then(res => { |
||||
row.forEach((element) => { |
console.log('返回子级:',res) |
||||
aa.push(element.sid) |
this.tableData = res.data.records |
||||
|
this.page.total = res.data.total |
||||
}) |
}) |
||||
this.sids = aa |
|
||||
}, |
}, |
||||
dosearch() { |
getOrgTree() { // 获取树形列表 |
||||
this.queryParams.current = 1 |
orgList({}).then(res => { |
||||
this.loadList() |
this.treedata = res.data |
||||
|
}) |
||||
}, |
}, |
||||
resetQuery() { |
save() { |
||||
this.queryParams = { |
if (this.fgStaffSid.length > 0) { |
||||
current: 1, |
this.form.fgStaffSid = this.fgStaffSid.join() |
||||
size: 10, |
} else { |
||||
total: 0, |
this.form.fgStaffName = '' |
||||
params: { |
this.form.fgStaffSid = '' |
||||
code: '', |
|
||||
buyerName: '', |
|
||||
purchaseDateStart: '', |
|
||||
purchaseDateEnd: '', |
|
||||
supplierName: '', |
|
||||
purchasingDeptName: '', |
|
||||
arrivalDateStart: '', |
|
||||
arrivalDateEnd: '', |
|
||||
completionStatusKey: '' |
|
||||
} |
} |
||||
|
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' |
||||
|
}) |
||||
|
} |
||||
|
}) |
||||
} |
} |
||||
this.loadList() |
|
||||
}, |
}, |
||||
toAdd() { |
append(data) { |
||||
this.viewState = 2 |
console.log(123456789, data) |
||||
this.$refs['divadd'].showAdd() |
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) |
||||
}, |
}, |
||||
toEdit(row) { |
editRow(row) { |
||||
this.viewState = 3 |
this.getStaff(row.sid) |
||||
this.$refs['divadd'].showEdit(row) |
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) |
||||
|
} |
||||
|
}) |
||||
}, |
}, |
||||
toInfo(row) { |
deit(data) { // 节点编辑保存 |
||||
this.viewState = 4 |
this.getStaff(data.sid) |
||||
this.$refs['divInfo'].showInfo(row) |
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(',') |
||||
}, |
}, |
||||
doDel() { |
nodeSave() { // 节点编辑保存 |
||||
if (this.sids.length === 0) { |
console.log('这是保存nodeSave(0') |
||||
this.$message({ showClose: true, type: 'error', message: '请选择至少一条记录进行删除操作' }) |
this.form.fgStaffSid = this.form.fgStaffSid.join() |
||||
return |
postOrgtree(this.form).then(res => { |
||||
} |
this.getOrgTree() |
||||
const tip = '请确认是否删除所选 ' + this.sids.length + ' 条记录?' |
this.dialogVisible = false |
||||
this.$confirm(tip, '提示', { |
this.$message({ |
||||
|
message: res.msg, |
||||
|
type: 'success' |
||||
|
}) |
||||
|
}) |
||||
|
}, |
||||
|
remove(data) { |
||||
|
this.$confirm('确定要删除该组织吗, 是否继续?', '提示', { |
||||
confirmButtonText: '确定', |
confirmButtonText: '确定', |
||||
cancelButtonText: '取消', |
cancelButtonText: '取消', |
||||
type: 'warning' |
type: 'warning' |
||||
}).then(() => { |
}).then(() => { |
||||
// const loading = this.$loading({ |
delOrgtree({ sid: data.sid }).then(res => { |
||||
// lock: true, |
this.getOrgTree() |
||||
// text: 'Loading', |
this.handleNodeClick({ sid: data.psid }) |
||||
// spinner: 'el-icon-loading', |
this.$message({ |
||||
// background: 'rgba(0, 0, 0, 0.7)' |
message: res.msg, |
||||
// }) |
type: 'success' |
||||
// req.delBySids(this.sids).then(resp => { |
}) |
||||
// loading.close() |
}) |
||||
// if (resp.success) { |
}) |
||||
// this.$message({ type: 'success', message: resp.msg, showClose: true }) |
}, |
||||
// this.loadList() |
lookRow(row) { // 查看二维码 |
||||
// } else { |
this.isshow = 'ewm' |
||||
// // 根据resp.code进行异常情况处理 |
getQrCode({ sid: row.sid }).then(res => { |
||||
// } |
this.ewmForm = res.data |
||||
// }).catch(e => { |
|
||||
// loading.close() |
|
||||
// }) |
|
||||
}).catch(() => { |
|
||||
}) |
}) |
||||
}, |
}, |
||||
resetState() { |
Printewm() { |
||||
this.viewState = 1 |
this.$print(this.$refs.print) // 使用 |
||||
}, |
}, |
||||
doClose() { |
mouseenter(data) { |
||||
this.$store.dispatch('tagsView/delView', this.$route) |
this.$set(data, 'del', true) |
||||
this.$router.go(-1) |
}, |
||||
|
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> |
</script> |
||||
<style scoped> |
|
||||
|
<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> |
</style> |
||||
|
Loading…
Reference in new issue