mirror of
https://gitee.com/dotnetchina/OpenAuth.Net.git
synced 2025-08-23 13:06:48 +08:00
实现了ztree与datagrid互动
This commit is contained in:
parent
104866d83b
commit
1f574aca70
@ -87,11 +87,24 @@ namespace Infrastructure
|
||||
case ">=":
|
||||
filter = Expression.GreaterThanOrEqual(left, right);
|
||||
break;
|
||||
case "!=":
|
||||
filter = Expression.NotEqual(left, right);
|
||||
break;
|
||||
|
||||
case "like":
|
||||
filter = Expression.Call(left, typeof(string).GetMethod("Contains", new Type[] { typeof(string) }),
|
||||
Expression.Constant(filterObj.Value));
|
||||
break;
|
||||
case "not in":
|
||||
var listExpression = Expression.Constant(filterObj.Value.Split(',').ToList()); //数组
|
||||
var method = typeof(List<string>).GetMethod("Contains", new Type[] { typeof(string) }); //Contains语句
|
||||
filter = Expression.Not(Expression.Call(listExpression, method, left));
|
||||
break;
|
||||
case "in":
|
||||
var lExp = Expression.Constant(filterObj.Value.Split(',').ToList()); //数组
|
||||
var methodInfo = typeof(List<string>).GetMethod("Contains", new Type[] { typeof(string) }); //Contains语句
|
||||
filter = Expression.Call(lExp, methodInfo, left);
|
||||
break;
|
||||
}
|
||||
|
||||
return filter;
|
||||
|
@ -48,6 +48,10 @@
|
||||
<Compile Include="OrgManagerApp.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\Infrastructure\Infrastructure.csproj">
|
||||
<Project>{5FEAEC9A-4F1E-4EE7-B377-9DB1B0870DAC}</Project>
|
||||
<Name>Infrastructure</Name>
|
||||
</ProjectReference>
|
||||
<ProjectReference Include="..\OpenAuth.Domain\OpenAuth.Domain.csproj">
|
||||
<Project>{6108da8e-92a1-4abe-b9f5-26d64d55ca2c}</Project>
|
||||
<Name>OpenAuth.Domain</Name>
|
||||
|
@ -77,5 +77,10 @@ namespace OpenAuth.App
|
||||
{
|
||||
return _repository.Find(u => u.ParentId == orgId);
|
||||
}
|
||||
|
||||
public void DelOrg(int Id)
|
||||
{
|
||||
_repository.Delete(u =>u.Id ==Id);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -35,6 +35,16 @@ namespace OpenAuth.Domain.Interface
|
||||
|
||||
void Delete(T entity);
|
||||
|
||||
/// <summary>
|
||||
/// 批量更新
|
||||
/// </summary>
|
||||
void Update(Expression<Func<T, bool>> exp, T entity);
|
||||
|
||||
/// <summary>
|
||||
/// 批量删除
|
||||
/// </summary>
|
||||
void Delete(Expression<Func<T, bool>> exp);
|
||||
|
||||
void Save();
|
||||
}
|
||||
}
|
@ -35,6 +35,14 @@ namespace OpenAuth.Mvc.Controllers
|
||||
return JsonHelper.Instance.Serialize(_orgApp.LoadChildren(id));
|
||||
}
|
||||
|
||||
|
||||
public void DelOrg(string json)
|
||||
{
|
||||
var delObj = JsonHelper.Instance.Deserialize<Org[]>(json);
|
||||
foreach (var obj in delObj)
|
||||
{
|
||||
_orgApp.DelOrg(obj.Id);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@ -36,54 +36,42 @@
|
||||
|
||||
$.getJSON("OrgManager/LoadOrg", function (json) {
|
||||
var zTreeObj = $.fn.zTree.init($("#orgTree"), setting, json);
|
||||
|
||||
$('#test-datagrid-array').datagrid({
|
||||
gridTitle: '机构列表显示',
|
||||
showToolbar: true,
|
||||
toolbarItem: 'all',
|
||||
columns: [
|
||||
{ name: 'Name', width: '150', label: '机构名称' },
|
||||
{ name: 'CreateTime', width: '120', label: '登记日期' }
|
||||
],
|
||||
data: json,
|
||||
hiddenFields: ['Id'],
|
||||
editUrl: 'ajaxDone1.html',
|
||||
delUrl: 'ajaxDone1.html',
|
||||
editMode: 'dialog',
|
||||
fullGrid: true,
|
||||
showLinenumber: true,
|
||||
showCheckboxcol: true,
|
||||
paging: false,
|
||||
filterMult: false,
|
||||
showTfoot: true
|
||||
});
|
||||
zTreeObj.expandAll(true);
|
||||
loadDataGrid(json);
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
function loadDataGrid(data) {
|
||||
|
||||
$('#test-datagrid-array').datagrid({
|
||||
gridTitle: '机构列表显示',
|
||||
showToolbar: true,
|
||||
toolbarItem: 'all',
|
||||
columns: [
|
||||
{ name: 'Name', width: '150', label: '机构名称' },
|
||||
{ name: 'CreateTime', width: '120', label: '登记日期' }
|
||||
],
|
||||
data: data,
|
||||
hiddenFields: ['Id'],
|
||||
editUrl: 'OrgManager/AddOrg',
|
||||
delUrl: 'OrgManager/DelOrg',
|
||||
editMode: 'dialog',
|
||||
fullGrid: true,
|
||||
showLinenumber: true,
|
||||
showCheckboxcol: true,
|
||||
paging: false,
|
||||
filterMult: false,
|
||||
showTfoot: true
|
||||
});
|
||||
}
|
||||
|
||||
function zTreeOnClick(event, treeId, treeNode) {
|
||||
$.getJSON("OrgManager/LoadChildren", { id: treeNode.Id }, function (json) {
|
||||
$('#test-datagrid-array').destroy();
|
||||
$('#test-datagrid-array').datagrid({
|
||||
gridTitle: '机构列表显示',
|
||||
showToolbar: true,
|
||||
toolbarItem: 'all',
|
||||
columns: [
|
||||
{ name: 'Name', width: '150', label: '机构名称' },
|
||||
{ name: 'CreateTime', width: '120', label: '登记日期' }
|
||||
],
|
||||
data: json,
|
||||
hiddenFields: ['Id'],
|
||||
editUrl: 'ajaxDone1.html',
|
||||
delUrl: 'ajaxDone1.html',
|
||||
editMode: 'dialog',
|
||||
fullGrid: true,
|
||||
showLinenumber: true,
|
||||
showCheckboxcol: true,
|
||||
paging: false,
|
||||
filterMult: false,
|
||||
showTfoot: true
|
||||
});
|
||||
|
||||
$('#ztree-detail').empty().append('<table id="test-datagrid-array" data-width="100%" data-height="100%" class="table table-bordered"></table>');
|
||||
loadDataGrid(json);
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
|
@ -8,7 +8,7 @@
|
||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
|
||||
|
||||
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
|
||||
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
|
||||
</configSections>
|
||||
|
||||
<connectionStrings>
|
||||
@ -18,20 +18,20 @@
|
||||
<log4net>
|
||||
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
|
||||
<!--定义文件存放位置-->
|
||||
<file value="log\\"/>
|
||||
<appendToFile value="true"/>
|
||||
<rollingStyle value="Date"/>
|
||||
<datePattern value="yyyyMMdd'.txt'"/>
|
||||
<staticLogFileName value="false"/>
|
||||
<param name="MaxSizeRollBackups" value="100"/>
|
||||
<file value="log\\" />
|
||||
<appendToFile value="true" />
|
||||
<rollingStyle value="Date" />
|
||||
<datePattern value="yyyyMMdd'.txt'" />
|
||||
<staticLogFileName value="false" />
|
||||
<param name="MaxSizeRollBackups" value="100" />
|
||||
<layout type="log4net.Layout.PatternLayout">
|
||||
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
|
||||
</layout>
|
||||
</appender>
|
||||
<root>
|
||||
<level value="INFO"/>
|
||||
<level value="INFO" />
|
||||
<!--文件形式记录日志-->
|
||||
<appender-ref ref="RollingLogFileAppender"/>
|
||||
<appender-ref ref="RollingLogFileAppender" />
|
||||
</root>
|
||||
</log4net>
|
||||
|
||||
@ -78,6 +78,10 @@
|
||||
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
||||
</dependentAssembly>
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-7.0.0.0" newVersion="7.0.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
<entityFramework>
|
||||
|
@ -2,6 +2,7 @@
|
||||
using System.Data.Entity.Migrations;
|
||||
using System.Linq;
|
||||
using System.Linq.Expressions;
|
||||
using EntityFramework.Extensions;
|
||||
using OpenAuth.Domain.Interface;
|
||||
using OpenAuth.Repository.Models;
|
||||
using Infrastructure;
|
||||
@ -70,6 +71,16 @@ namespace OpenAuth.Repository
|
||||
Save();
|
||||
}
|
||||
|
||||
public void Update(Expression<Func<T, bool>> exp, T entity)
|
||||
{
|
||||
Context.Set<T>().Where(exp).Update(u => entity);
|
||||
}
|
||||
|
||||
public void Delete(Expression<Func<T, bool>> exp)
|
||||
{
|
||||
Context.Set<T>().Where(exp).Delete();
|
||||
}
|
||||
|
||||
public void Save()
|
||||
{
|
||||
Context.SaveChanges();
|
||||
|
@ -36,6 +36,9 @@
|
||||
<Reference Include="EntityFramework">
|
||||
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EntityFramework.Extended">
|
||||
<HintPath>..\packages\EntityFramework.Extended.6.1.0.168\lib\net45\EntityFramework.Extended.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="EntityFramework.SqlServer">
|
||||
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll</HintPath>
|
||||
</Reference>
|
||||
|
@ -1,4 +1,5 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="EntityFramework" version="6.1.3" targetFramework="net45" />
|
||||
<package id="EntityFramework.Extended" version="6.1.0.168" targetFramework="net45" />
|
||||
</packages>
|
Loading…
Reference in New Issue
Block a user