Former-commit-id: bc61091841f39e497855913952f15d81e93fe949
Former-commit-id: f667d302dc854f0d25da8fe68a6cdf62de8a43e0
TSXN
wanggang 5 years ago
parent 4dbf13cd6c
commit 9f560f3c6e

@ -54,7 +54,7 @@
}, },
hasPermission: function (cmd) { hasPermission: function (cmd) {
var permission = cmd + '-' + this.entity; var permission = cmd + '-' + this.entity;
return Enumerable.from(store.state.permissions).any(o => o === permission); return Enumerable.from(store.state.site.permissions).any(o => o === permission);
}, },
getComponent: function (key) { getComponent: function (key) {
var property = this.data.schema.properties[key]; var property = this.data.schema.properties[key];

@ -1,11 +1,16 @@
<template> <template>
<layout v-bind:title="data.schema.title"> <layout v-bind:title="title">
<h1>{{data.schema.title}}<span v-if="mode==='Edit'">编辑页</span><span v-else>新建页</span></h1> <h1>{{title}}</h1>
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<div class="card"> <div class="card">
<div class="card-body" v-if="hasPermission('Edit')"> <div class="card-body">
<form ref="form" class="form-horizontal query" v-if="hasPermission('Read')" :action="url" @submit.prevent="onSubmit"> <div class="form-group row" v-if="!hasPermission()">
<div class="el-col-sm-offset-2 col-sm-10 ">
<div style="color:red;">权限不足</div>
</div>
</div>
<form v-else-if="data.schema" ref="form" class="form-horizontal query" :action="url" @submit.prevent="onSubmit">
<input type="hidden" name="id" :value="data.model.id" /> <input type="hidden" name="id" :value="data.model.id" />
<div class="form-group row" v-for="(value,key,index) in data.schema.properties" v-if="show(key,value)"> <div class="form-group row" v-for="(value,key,index) in data.schema.properties" v-if="show(key,value)">
<label class="col-sm-2 col-form-label" :for="key">{{value.title}}:</label> <label class="col-sm-2 col-form-label" :for="key">{{value.title}}:</label>
@ -27,8 +32,8 @@
<div class="col-sm-2"> <div class="col-sm-2">
</div> </div>
<div class="col-sm-10"> <div class="col-sm-10">
<a href="javascript:;" class="btn btn-primary" v-if="hasPermission('Edit')" v-on:click="onSubmit()">确定</a> <a href="javascript:;" class="btn btn-primary" v-on:click="onSubmit()">确定</a>
<router-link :to="{path:'/router/shared/list.html',query:{entity:entity}}" class="btn btn-default" v-if="hasPermission('Read')">返回</router-link> <router-link :to="{path:'/router/shared/list.html',query:{entity:entity}}" class="btn btn-default">返回</router-link>
</div> </div>
</div> </div>
</div> </div>
@ -45,15 +50,15 @@
mode: this.$route.query.mode, mode: this.$route.query.mode,
entity: this.$route.query.entity, entity: this.$route.query.entity,
data: { data: {
schema: {
title: ''
},
model: {}, model: {},
data: {} data: {}
} }
} }
}, },
computed: { computed: {
title: function () {
return (this.mode === 'Add' ? '新建' : '编辑') + (this.data.schema ? this.data.schema.title : '');
},
url: function () { url: function () {
return '/IoTCenter/Admin/' + return '/IoTCenter/Admin/' +
this.$route.query.entity + '/' + this.$route.query.entity + '/' +
@ -77,8 +82,8 @@
}); });
}); });
}, },
hasPermission: function (cmd) { hasPermission: function () {
var permission = cmd + '-' + this.entity; var permission = this.mode + '-' + this.entity;
return Enumerable.from(store.state.permissions).any(o => o === permission); return Enumerable.from(store.state.permissions).any(o => o === permission);
}, },
getEditComponent: function (key) { getEditComponent: function (key) {

@ -130,10 +130,7 @@
store.commit('setState', { key: 'permissions', value: response.data.permissions }); store.commit('setState', { key: 'permissions', value: response.data.permissions });
}).catch(function (error) { }).catch(function (error) {
console.log(error); console.log(error);
}).finally(function () {
//loading.hide();
}); });
//console.log(this.$route.path);
}, },
methods: { methods: {
logout() { logout() {

@ -1,6 +1,6 @@
<template> <template>
<layout v-bind:title="title"> <layout v-bind:title="title">
<h1>{{data.schema.title}}</h1> <h1>{{title}}</h1>
<div class="row"> <div class="row">
<div class="col-12"> <div class="col-12">
<div class="card"> <div class="card">
@ -79,7 +79,6 @@
name: 'page-list', name: 'page-list',
data: function () { data: function () {
return { return {
title: '列表页',
url: '/IoTCenter/Admin/' + this.$route.query.entity + '/Index', url: '/IoTCenter/Admin/' + this.$route.query.entity + '/Index',
entity: this.$route.query.entity, entity: this.$route.query.entity,
data: { data: {
@ -95,6 +94,11 @@
} }
} }
}, },
computed: {
title: function () {
return '列表' + (this.data.schema ? this.data.schema.title : '');
},
},
mounted: function () { mounted: function () {
this.load(this.data.model.pageIndex, this.data.model.pageSize); this.load(this.data.model.pageIndex, this.data.model.pageSize);
}, },
@ -127,12 +131,10 @@
getDisplayComponent: function (key) { getDisplayComponent: function (key) {
var property = this.data.schema.properties[key]; var property = this.data.schema.properties[key];
var template = 'display-' + (property.ui || property.format || property.type); var template = 'display-' + (property.ui || property.format || property.type);
console.log(template);
return template; return template;
}, },
getQueryComponent: function (value) { getQueryComponent: function (value) {
var template = 'edit-' + (value.ui || value.format || value.type); var template = 'edit-' + (value.ui || value.format || value.type);
console.log(template);
return template; return template;
}, },
showForQuery: function (key, value) { showForQuery: function (key, value) {

Loading…
Cancel
Save