|
@@ -1,20 +1,30 @@
|
|
|
<template>
|
|
|
- <normalLayout>
|
|
|
+<!-- <normalLayout>
|
|
|
<template #content>
|
|
|
<div style="padding: 20px">
|
|
|
<div class="mt-10">
|
|
|
<label class="search__label" >范围:</label>
|
|
|
- <el-select class="inline-24" v-model="tabName" placeholder="请选择数据分类" @change="selectChange" size="small" >
|
|
|
- <el-option
|
|
|
- v-for="item in editableTabs"
|
|
|
- :key="item.index"
|
|
|
- :label="item.templetname"
|
|
|
- :value="item.templetid"
|
|
|
- ></el-option>
|
|
|
- </el-select>
|
|
|
+ <el-popover
|
|
|
+ placement="bottom"
|
|
|
+ width="180"
|
|
|
+ v-model="visible"
|
|
|
+ :stretch="true"
|
|
|
+ trigger="click">
|
|
|
+ <el-tabs v-model="activeName" @tab-click="handleClick">
|
|
|
+ <el-tab-pane label="部门" name="部门">
|
|
|
+ <el-cascader-panel ref="selectdep" :options="deplist" :props="{label:'label',value:'departmentid',children:'subdep'}" emitPath="true" @change="selectDep"></el-cascader-panel>
|
|
|
+ </el-tab-pane>
|
|
|
+ <el-tab-pane label="人员" name="人员">
|
|
|
+ <el-cascader-panel ref="selectPerson" :options="personnelList" :props="{label:'name',value:'userid',children:''}" emitPath="true" @change="selectPerson"></el-cascader-panel>
|
|
|
+ </el-tab-pane>
|
|
|
+ </el-tabs>
|
|
|
+ <el-input style="width: 200px" size="small" slot="reference" v-model="range" placeholder="请选择"></el-input>
|
|
|
+ </el-popover>
|
|
|
+
|
|
|
</div>
|
|
|
<div class="content">
|
|
|
作业数据
|
|
|
+ <assignmentData></assignmentData>
|
|
|
</div>
|
|
|
<div class="content">
|
|
|
销售数据
|
|
@@ -25,12 +35,93 @@
|
|
|
</div>
|
|
|
|
|
|
</template>
|
|
|
- </normalLayout>
|
|
|
+ </normalLayout>-->
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
+import assignmentData from './modules/assignmentData'
|
|
|
export default {
|
|
|
- name: "index"
|
|
|
+ name: "index",
|
|
|
+ data(){
|
|
|
+ return {
|
|
|
+ activeName: '部门',
|
|
|
+ range:'',
|
|
|
+ pointValue:'',
|
|
|
+ visible:false,
|
|
|
+ deplist:[],
|
|
|
+ personnelList:[],
|
|
|
+ depmentParam:{
|
|
|
+ "id": 20230620102004,
|
|
|
+ "content": {
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ components:{
|
|
|
+ assignmentData
|
|
|
+ },
|
|
|
+ methods:{
|
|
|
+ async departmentrtment() {
|
|
|
+ const res = await this.$api.requested(this.depmentParam)
|
|
|
+ console.log(res,'部门')
|
|
|
+ this.deplist = this.createMenu(res.data.dep)
|
|
|
+ this.personnelList = res.data.hr
|
|
|
+ },
|
|
|
+ createMenu (array) {
|
|
|
+ var that = this
|
|
|
+ let arr = []
|
|
|
+ function convertToElementTree(node) {
|
|
|
+ // 新节点
|
|
|
+ var elNode = {
|
|
|
+ label: node["depname"],
|
|
|
+ parentid:node['parentid'],
|
|
|
+ parentname:node['parentname'],
|
|
|
+ departmentid:node["departmentid"],
|
|
|
+ value:node["departmentid"],
|
|
|
+ remarks:node["remarks"],
|
|
|
+ isused:node["isused"],
|
|
|
+ changedate:node['changedate'],
|
|
|
+ changeby:node['changeby'],
|
|
|
+ createdate:node['createdate'],
|
|
|
+ createby:node['createby'],
|
|
|
+ depno:node['depno'],
|
|
|
+ disabled:that.pageOnlyRead,
|
|
|
+ children: []
|
|
|
+ }
|
|
|
+
|
|
|
+ if (node.subdep && node.subdep.length > 0) {
|
|
|
+ // 如果存在子节点
|
|
|
+ for (var index = 0; index < node.subdep.length; index++) {
|
|
|
+ // 遍历子节点, 把每个子节点看做一颗独立的树, 传入递归构造子树, 并把结果放回到新node的children中
|
|
|
+ elNode.children.push(convertToElementTree(node.subdep[index]));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return elNode;
|
|
|
+ }
|
|
|
+ array.forEach((element) => {
|
|
|
+ arr.push(convertToElementTree(element))
|
|
|
+ });
|
|
|
+ return arr
|
|
|
+ },
|
|
|
+ selectDep (data) {
|
|
|
+ this.$refs.selectdep.getCheckedNodes(true)
|
|
|
+ console.log(this.$refs.selectdep.getCheckedNodes(true))
|
|
|
+ this.range = this.$refs.selectdep.getCheckedNodes(true)[0].label
|
|
|
+ this.visible = false
|
|
|
+ },
|
|
|
+ selectPerson(){
|
|
|
+ this.$refs.selectPerson.getCheckedNodes(true)
|
|
|
+ this.range = this.$refs.selectPerson.getCheckedNodes(true)[0].label
|
|
|
+ this.visible = false
|
|
|
+ },
|
|
|
+ handleClick(tab, event) {
|
|
|
+ console.log(tab, event);
|
|
|
+ },
|
|
|
+
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.departmentrtment()
|
|
|
+ }
|
|
|
}
|
|
|
</script>
|
|
|
|