Skip to content

Commit 9699400

Browse files
author
spt
committed
33
1 parent 69baad6 commit 9699400

13 files changed

+168
-53
lines changed

src/business-model/CallResult.ts

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
export class CallResult
2+
{
3+
result:boolean;
4+
message:string;
5+
data:any;
6+
}

src/components/c8-dialog/c8-dialog.component.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { Dialog } from 'element-ui';
77
export default class C8DialogComponent extends Vue {
88
private dialog: Dialog;
99
dialogTableVisible: boolean = false;
10-
title:String;
10+
title:String="";
1111

1212
mounted() {
1313
let win: any = this.$refs["dialog"];
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
import Clickoutside from 'element-ui/lib/utils/clickoutside';
2+
import { Vue, Prop, Component } from 'vue-property-decorator';
3+
import C8Dialog from "@/components/c8-dialog/c8-dialog.vue";
4+
import C8DialogComponent from "@/components/c8-dialog/c8-dialog.component";
5+
import TenantService from "@/services/tenant.service";
6+
import PlatformEdit from '@/pages/platform/edit/platform-edit.vue';
7+
@Component({
8+
name: "tenant-select-dialog",
9+
components: { C8Dialog }
10+
})
11+
export default class TenantSelectDialogComponent extends Vue {
12+
service: TenantService = new TenantService();
13+
form: any = {};
14+
private dialog: C8DialogComponent;
15+
mounted() {
16+
let win: any = this.$refs["dialog"];
17+
this.dialog = win;
18+
}
19+
show() {
20+
this.dialog.title = "请选择集团";
21+
this.dialog.show();
22+
}
23+
close() {
24+
this.dialog.close();
25+
}
26+
/**
27+
* 查询方法
28+
*
29+
* @param {any} queryString
30+
* @param {any} cb
31+
* @memberof TenantSelectDialog
32+
*/
33+
queryAsync(queryString, cb) {
34+
let params = {
35+
tenantName: queryString,
36+
row: 5,
37+
page: 0
38+
};
39+
//alert(1)
40+
this.service.tenantFuzzy(params)
41+
.then(({ data }) => {
42+
console.log(data);
43+
data = data.slice(0, 5);
44+
var result = data.map(function (item, index) {
45+
let itemN: any = {};
46+
itemN.value = item.name;
47+
itemN.id = item.id;
48+
return itemN
49+
});
50+
cb(result);
51+
});
52+
}
53+
/**
54+
* 选中事件
55+
*
56+
* @param {any} item
57+
* @memberof TenantSelectDialog
58+
*/
59+
selectItem(item) {
60+
this.$emit('selectItem',item);
61+
}
62+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<template>
2+
<c8-dialog ref="dialog" >
3+
<el-autocomplete
4+
class = "autocompleteS"
5+
:fetch-suggestions="queryAsync"
6+
placeholder="请输入集团"
7+
@select="selectItem"
8+
> </el-autocomplete>
9+
</c8-dialog>
10+
</template>
11+
<script lang="ts">
12+
import C8DialogComponent from '@/components/tenant-select-dialog/tenant-select-dialog.component'
13+
export default C8DialogComponent
14+
</script>

src/components/todo-list/TodoList.vue

+32-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,32 @@
11
<template>
22
<div class="todoList">
3-
<div>
3+
<div>
4+
<el-row class="tac">
5+
<el-col :span="4">
6+
<h5>导航菜单</h5>
7+
<el-menu default-active="2" class="el-menu-vertical-demo" @open="handleOpen" @close="handleClose">
8+
<el-submenu index="1">
9+
<template slot="title"><i class="el-icon-message"></i>导航一</template>
10+
<el-menu-item-group>
11+
<template slot="title">分组一</template>
12+
<el-menu-item index="1-1">选项1</el-menu-item>
13+
<el-menu-item index="1-2">选项2</el-menu-item>
14+
</el-menu-item-group>
15+
<el-menu-item-group title="分组2">
16+
<el-menu-item index="1-3">选项3</el-menu-item>
17+
</el-menu-item-group>
18+
<el-submenu index="1-4">
19+
<template slot="title">选项4</template>
20+
<el-menu-item index="1-4-1">选项1</el-menu-item>
21+
</el-submenu>
22+
</el-submenu>
23+
<el-menu-item index="2"><i class="el-icon-menu"></i>导航二</el-menu-item>
24+
<el-menu-item index="3"><i class="el-icon-setting"></i>导航三</el-menu-item>
25+
</el-menu>
26+
</el-col>
27+
<el-col :span="20">
28+
<div>
29+
<div>
430
<input @keydown.enter="addTodo(newtask)" style="border:1px solid " type="text" v-model="newtask">
531
</input>
632
{{newtask}}
@@ -18,6 +44,11 @@
1844
</el-dialog>
1945
</div>
2046
</div>
47+
</el-col>
48+
</el-row>
49+
</div>
50+
51+
</div>
2152
</template>
2253

2354
<script lang="ts">

src/components/platform/detail/platform-detail.component.ts renamed to src/pages/platform/detail/platform-detail.component.ts

+36-27
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,14 @@
11
import { Vue, Prop, Component } from 'vue-property-decorator'
22
import axios from 'axios'
3-
3+
import TenantSelectDialog from '@/components/tenant-select-dialog/tenant-select-dialog.vue';
4+
import TenantSelectDialogComponent from "@/components/tenant-select-dialog/tenant-select-dialog.component";
45
@Component({
5-
name: 'platform-detail'
6+
name: 'platform-detail',
7+
components: { TenantSelectDialog }
68
})
79
export default class PlatformDetailComponent extends Vue {
8-
@Prop()
10+
winTenantSelect: TenantSelectDialogComponent;
11+
@Prop()
912
detailInfo: any;
1013
@Prop()
1114
statusProp: any;
@@ -22,9 +25,18 @@ export default class PlatformDetailComponent extends Vue {
2225
accountDetails: any[] = [];
2326
accountSearch: String = "";
2427
multiplFalse: boolean = false;
25-
baseUrl=axios.defaults.baseURL;
26-
headers={'X-Access-Token':axios.defaults.headers.common['X-Access-Token'],
27-
'X-Operation-Token':axios.defaults.headers.common['X-Operation-Token'],};
28+
baseUrl = axios.defaults.baseURL;
29+
headers = {
30+
'X-Access-Token': axios.defaults.headers.common['X-Access-Token'],
31+
'X-Operation-Token': axios.defaults.headers.common['X-Operation-Token'],
32+
};
33+
34+
mounted() {
35+
36+
console.log("111refs2");
37+
console.log(this.$refs);
38+
console.log(this.$refs["tenantSelectDialog"]);
39+
}
2840
getDetail() {
2941
}
3042
formatDate(item) {
@@ -48,51 +60,48 @@ export default class PlatformDetailComponent extends Vue {
4860
console.log('out');
4961
}
5062
addGroup() {
51-
this.tenantModalShow = true;
63+
if (!this.winTenantSelect) {
64+
let dialog: any = this.$refs["tenantSelectDialog"];
65+
this.winTenantSelect = dialog;
66+
}
67+
console.log(this.$refs["tenantSelectDialog"]);
68+
this.winTenantSelect.show();
5269
}
5370
addServicePackage() {
5471
this.servicePackageModalShow = true;
5572
}
5673
delTenant(id) {
57-
74+
5875
}
5976
delPackage(id) {
60-
77+
6178
}
6279
searchAccount() {
63-
80+
6481
}
65-
uploadSuccess()
66-
{
82+
uploadSuccess() {
6783

6884
}
69-
uploadError()
70-
{
85+
uploadError() {
7186

7287
}
73-
closeTenantModal()
74-
{
88+
closeTenantModal() {
7589

7690
}
77-
querySearchAsync()
78-
{
91+
querySearchAsync() {
7992

8093
}
81-
handleSelect()
82-
{
94+
handleSelect() {
8395

8496
}
85-
closeServicePackageModal()
86-
{
97+
closeServicePackageModal() {
8798

8899
}
89-
querySearchAsync2()
90-
{
100+
querySearchAsync2() {
91101

92102
}
93-
handleSelect2()
94-
{
95-
103+
handleSelect2() {
104+
96105
}
97106
}
98107

src/components/platform/detail/platform-detail.vue renamed to src/pages/platform/detail/platform-detail.vue

+2-15
Original file line numberDiff line numberDiff line change
@@ -42,20 +42,7 @@
4242
</div>
4343
<div class="tenantBox">
4444
<div class="tenantTile"><span>集团</span><a href="javascript:;" @click="addGroup">新增</a></div>
45-
<el-dialog v-model="tenantModalShow" custom-class="modifyRuleModalClass"
46-
:show-close="showFalse">
47-
<div class="close-container">
48-
<img src="../../../assets/image/close_gray.png" alt="closeBtn"
49-
@click="closeTenantModal">
50-
</div>
51-
<el-autocomplete
52-
class = "autocompleteS"
53-
v-model="tenantModal"
54-
:fetch-suggestions="querySearchAsync"
55-
placeholder="请输入集团"
56-
@select="handleSelect"
57-
></el-autocomplete>
58-
</el-dialog>
45+
<tenant-select-dialog ref="tenantSelectDialog" ></tenant-select-dialog>
5946
<div class="tenant">
6047
<span v-for="tenant in detailAll.listTenant">{{tenant.tenantName}}<img
6148
src="../../../assets/image/close_gray.png" alt=""
@@ -163,7 +150,7 @@
163150
</transition>
164151
</template>
165152
<script lang="ts">
166-
import PlatformDetailComponent from '@/components/platform/detail/platform-detail.component'
153+
import PlatformDetailComponent from '@/pages/platform/detail/platform-detail.component'
167154
export default PlatformDetailComponent
168155
</script>
169156
<style lang="scss" rel="stylesheet/scss">/*rel="stylesheet/scss"*/

src/components/platform/edit/platform-edit.component.ts renamed to src/pages/platform/edit/platform-edit.component.ts

-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,10 @@
1-
import Clickoutside from 'element-ui/lib/utils/clickoutside';
21
import { Vue, Prop, Component } from 'vue-property-decorator';
32
import { Message } from 'element-ui';
43
import C8Dialog from "@/components/c8-dialog/c8-dialog.vue";
54
import C8DialogComponent from "@/components/c8-dialog/c8-dialog.component";
65
import PlatformService from "@/services/platform.service";
76
@Component({
87
name: "platform-edit",
9-
directives: { Clickoutside },
108
components: { C8Dialog }
119
})
1210
export default class PlatformEditComponent extends Vue {

src/components/platform/edit/platform-edit.vue renamed to src/pages/platform/edit/platform-edit.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
</c8-dialog>
1919
</template>
2020
<script lang="ts">
21-
import PlatformEditComponent from '@/components/platform/edit/platform-edit.component'
21+
import PlatformEditComponent from '@/pages/platform/edit/platform-edit.component'
2222
export default PlatformEditComponent
2323
</script>
2424
<style lang="scss" >

src/components/platform/platform.component.ts renamed to src/pages/platform/platform.page.ts

+4-3
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ import { Vue, Prop, Component } from 'vue-property-decorator'
99
import TodoListItem from '@/components/todo-list-item/TodoListItem.vue'
1010
import ZeusMenu from '@/components/zeus-menu/zeus-menu.vue';
1111
import ZeusUser from '@/components/zeus-user/zeus-user.vue';
12-
import PlatformDetail from '@/components/platform/detail/platform-detail.vue';
13-
import PlatformEdit from '@/components/platform/edit/platform-edit.vue';
14-
import PlatformEditComponent from "@/components/platform/edit/platform-edit.component";
12+
import PlatformDetail from '@/pages/platform/detail/platform-detail.vue';
13+
import PlatformEdit from '@/pages/platform/edit/platform-edit.vue';
14+
import PlatformEditComponent from "@/pages/platform/edit/platform-edit.component";
1515
@Component({
1616
components: {
1717
ZeusMenu,
@@ -50,6 +50,7 @@ export default class PlatformComponent extends Vue {
5050
console.log(this.$refs.winEdit);
5151
let win: any = this.$refs["winEdit"];
5252
this.winEdit = win;
53+
console.log("winEdit");
5354
console.log(this.winEdit);
5455
}
5556
// 获取左侧列表接口

src/components/platform/platform.vue renamed to src/pages/platform/platform.vue

+2-2
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,8 @@
6060
</template>
6161

6262
<script lang="ts">
63-
import PlatformComponent from '@/components/platform/platform.component'
64-
export default PlatformComponent
63+
import PlatformPage from '@/pages/platform/platform.page'
64+
export default PlatformPage
6565
</script>
6666
<style lang="scss">
6767
.service {

src/router/routers.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11

22
import TodoList from '@/components/todo-list/TodoList.vue'
3-
import Platform from '@/components/platform/platform.vue'
3+
import Platform from '@/pages/platform/platform.vue'
44

55
export default [
66
{

src/services/tenant.service.ts

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import axios from 'axios';
2+
import { CallResult } from "@/business-model/CallResult";
3+
export default class TenantService {
4+
tenantFuzzy(params){
5+
return axios.get(`tenant/search-by-name`,{params:params});
6+
}
7+
}

0 commit comments

Comments
 (0)