Former-commit-id: 083c0cdfff0a33b827e60afee530eeee16121b54
Former-commit-id: 99334f50806c700c938899038b3b04f66a8fa8ab
TSXN
wanggang 5 years ago
parent 01c6c6ab99
commit 7e7f57bfe6

@ -34,7 +34,11 @@ namespace Infrastructure.Web.Mvc
{ {
throw new ArgumentNullException(nameof(model)); throw new ArgumentNullException(nameof(model));
} }
var query = _settingService.ReadonlyTable(); var query = _settingService.ReadonlyTable()
.WhereIf(!string.IsNullOrEmpty(model.Query.Name), o => o.Name.Contains(model.Query.Name))
.WhereIf(model.Query.Type.HasValue, o => o.Type == model.Query.Type.Value)
.WhereIf(!string.IsNullOrEmpty(model.Query.Value), o => o.Value.Contains(model.Query.Value))
.OrderBy(o => o.Name);
model.TotalCount = query.Count(); model.TotalCount = query.Count();
model.List.AddRange(query.Skip(model.PageSize * (model.PageIndex - 1)) model.List.AddRange(query.Skip(model.PageSize * (model.PageIndex - 1))
.Take(model.PageSize) .Take(model.PageSize)

@ -51,7 +51,7 @@ namespace Infrastructure.Extensions
public static SelectList GetSelectList<T>(this Controller controller, object selectedValue) public static SelectList GetSelectList<T>(this Controller controller, object selectedValue)
{ {
var values = from Enum e in Enum.GetValues(typeof(T)) var values = from Enum e in Enum.GetValues(typeof(T))
select new { Id = e, Name = e.GetDisplayName() }; select new { Id = e.GetValue(), Name = e.GetDisplayName() };
return new SelectList(values, "Id", "Name", selectedValue); return new SelectList(values, "Id", "Name", selectedValue);
} }
@ -77,7 +77,8 @@ namespace Infrastructure.Extensions
else if (metadata.IsEnum) else if (metadata.IsEnum)
{ {
json.type = "string"; json.type = "string";
dictionary["enum"] = metadata.IsNullableValueType ? Enum.GetNames(metadata.ModelType.GenericTypeArguments[0]) : Enum.GetNames(metadata.ModelType); var type = metadata.IsNullableValueType ? metadata.ModelType.GenericTypeArguments[0] : metadata.ModelType;
dictionary["enum"] = from Enum e in Enum.GetValues(type) select new { value = e.GetValue(), text = e.ToString(), title = e.GetDisplayName() };
} }
else else
{ {

@ -1,8 +1,21 @@
<template> <template>
<span>{{data[value]}}</span> <div :title="currentValue">{{currentValue}}</div>
</template> </template>
<script> <script>
export default { export default {
props: ['name', 'value', 'data'] props: ['name', 'value', 'data', 'enum'],
computed: {
currentValue: function () {
if (this.value === undefined || this.value === null) {
return '';
}
else if (this.data[this.value]) {
return this.data[this.value]
}
else {
return Enumerable.from(this.data[this.name + 'SelectList']).firstOrDefault(o => o.value === this.value.toString()).text;
}
}
}
}; };
</script> </script>

@ -50,7 +50,7 @@
<input type="checkbox" name="list[]" :value="item.id" /> <input type="checkbox" name="list[]" :value="item.id" />
</td> </td>
<td v-for="(value,key,index) in data.schema.properties" v-if="showForList(key,value)"> <td v-for="(value,key,index) in data.schema.properties" v-if="showForList(key,value)">
<component :is="getDisplayComponent(key)" v-bind:name="key" v-bind:value="item[key]" v-bind:data="data.data" mode="list" /> <component :is="getDisplayComponent(key)" :name="key" :value="item[key]" :data="data.data" mode="list" />
</td> </td>
<td v-if="hasPermission('Edit')"> <td v-if="hasPermission('Edit')">
<router-link :to="{path:'/router/shared/edit.html',query:{mode:'Edit',entity:entity,id:item.id}}" class="btn btn-sm btn-default">编辑</router-link> <router-link :to="{path:'/router/shared/edit.html',query:{mode:'Edit',entity:entity,id:item.id}}" class="btn btn-sm btn-default">编辑</router-link>

Loading…
Cancel
Save