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 ">=":
|
case ">=":
|
||||||
filter = Expression.GreaterThanOrEqual(left, right);
|
filter = Expression.GreaterThanOrEqual(left, right);
|
||||||
break;
|
break;
|
||||||
|
case "!=":
|
||||||
|
filter = Expression.NotEqual(left, right);
|
||||||
|
break;
|
||||||
|
|
||||||
case "like":
|
case "like":
|
||||||
filter = Expression.Call(left, typeof(string).GetMethod("Contains", new Type[] { typeof(string) }),
|
filter = Expression.Call(left, typeof(string).GetMethod("Contains", new Type[] { typeof(string) }),
|
||||||
Expression.Constant(filterObj.Value));
|
Expression.Constant(filterObj.Value));
|
||||||
break;
|
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;
|
return filter;
|
||||||
|
@ -48,6 +48,10 @@
|
|||||||
<Compile Include="OrgManagerApp.cs" />
|
<Compile Include="OrgManagerApp.cs" />
|
||||||
</ItemGroup>
|
</ItemGroup>
|
||||||
<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">
|
<ProjectReference Include="..\OpenAuth.Domain\OpenAuth.Domain.csproj">
|
||||||
<Project>{6108da8e-92a1-4abe-b9f5-26d64d55ca2c}</Project>
|
<Project>{6108da8e-92a1-4abe-b9f5-26d64d55ca2c}</Project>
|
||||||
<Name>OpenAuth.Domain</Name>
|
<Name>OpenAuth.Domain</Name>
|
||||||
|
@ -77,5 +77,10 @@ namespace OpenAuth.App
|
|||||||
{
|
{
|
||||||
return _repository.Find(u => u.ParentId == orgId);
|
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);
|
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();
|
void Save();
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -35,6 +35,14 @@ namespace OpenAuth.Mvc.Controllers
|
|||||||
return JsonHelper.Instance.Serialize(_orgApp.LoadChildren(id));
|
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) {
|
$.getJSON("OrgManager/LoadOrg", function (json) {
|
||||||
var zTreeObj = $.fn.zTree.init($("#orgTree"), setting, json);
|
var zTreeObj = $.fn.zTree.init($("#orgTree"), setting, json);
|
||||||
|
zTreeObj.expandAll(true);
|
||||||
$('#test-datagrid-array').datagrid({
|
loadDataGrid(json);
|
||||||
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
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
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) {
|
function zTreeOnClick(event, treeId, treeNode) {
|
||||||
$.getJSON("OrgManager/LoadChildren", { id: treeNode.Id }, function (json) {
|
$.getJSON("OrgManager/LoadChildren", { id: treeNode.Id }, function (json) {
|
||||||
$('#test-datagrid-array').destroy();
|
|
||||||
$('#test-datagrid-array').datagrid({
|
$('#ztree-detail').empty().append('<table id="test-datagrid-array" data-width="100%" data-height="100%" class="table table-bordered"></table>');
|
||||||
gridTitle: '机构列表显示',
|
loadDataGrid(json);
|
||||||
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
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
<!-- 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="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>
|
</configSections>
|
||||||
|
|
||||||
<connectionStrings>
|
<connectionStrings>
|
||||||
@ -18,20 +18,20 @@
|
|||||||
<log4net>
|
<log4net>
|
||||||
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
|
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
|
||||||
<!--定义文件存放位置-->
|
<!--定义文件存放位置-->
|
||||||
<file value="log\\"/>
|
<file value="log\\" />
|
||||||
<appendToFile value="true"/>
|
<appendToFile value="true" />
|
||||||
<rollingStyle value="Date"/>
|
<rollingStyle value="Date" />
|
||||||
<datePattern value="yyyyMMdd'.txt'"/>
|
<datePattern value="yyyyMMdd'.txt'" />
|
||||||
<staticLogFileName value="false"/>
|
<staticLogFileName value="false" />
|
||||||
<param name="MaxSizeRollBackups" value="100"/>
|
<param name="MaxSizeRollBackups" value="100" />
|
||||||
<layout type="log4net.Layout.PatternLayout">
|
<layout type="log4net.Layout.PatternLayout">
|
||||||
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
|
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
|
||||||
</layout>
|
</layout>
|
||||||
</appender>
|
</appender>
|
||||||
<root>
|
<root>
|
||||||
<level value="INFO"/>
|
<level value="INFO" />
|
||||||
<!--文件形式记录日志-->
|
<!--文件形式记录日志-->
|
||||||
<appender-ref ref="RollingLogFileAppender"/>
|
<appender-ref ref="RollingLogFileAppender" />
|
||||||
</root>
|
</root>
|
||||||
</log4net>
|
</log4net>
|
||||||
|
|
||||||
@ -78,6 +78,10 @@
|
|||||||
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" culture="neutral" />
|
<assemblyIdentity name="Autofac" publicKeyToken="17863af14b0044da" culture="neutral" />
|
||||||
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
<bindingRedirect oldVersion="0.0.0.0-3.5.0.0" newVersion="3.5.0.0" />
|
||||||
</dependentAssembly>
|
</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>
|
</assemblyBinding>
|
||||||
</runtime>
|
</runtime>
|
||||||
<entityFramework>
|
<entityFramework>
|
||||||
|
@ -2,6 +2,7 @@
|
|||||||
using System.Data.Entity.Migrations;
|
using System.Data.Entity.Migrations;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
using System.Linq.Expressions;
|
using System.Linq.Expressions;
|
||||||
|
using EntityFramework.Extensions;
|
||||||
using OpenAuth.Domain.Interface;
|
using OpenAuth.Domain.Interface;
|
||||||
using OpenAuth.Repository.Models;
|
using OpenAuth.Repository.Models;
|
||||||
using Infrastructure;
|
using Infrastructure;
|
||||||
@ -70,6 +71,16 @@ namespace OpenAuth.Repository
|
|||||||
Save();
|
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()
|
public void Save()
|
||||||
{
|
{
|
||||||
Context.SaveChanges();
|
Context.SaveChanges();
|
||||||
|
@ -36,6 +36,9 @@
|
|||||||
<Reference Include="EntityFramework">
|
<Reference Include="EntityFramework">
|
||||||
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll</HintPath>
|
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="EntityFramework.Extended">
|
||||||
|
<HintPath>..\packages\EntityFramework.Extended.6.1.0.168\lib\net45\EntityFramework.Extended.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="EntityFramework.SqlServer">
|
<Reference Include="EntityFramework.SqlServer">
|
||||||
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll</HintPath>
|
<HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
@ -1,4 +1,5 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<packages>
|
<packages>
|
||||||
<package id="EntityFramework" version="6.1.3" targetFramework="net45" />
|
<package id="EntityFramework" version="6.1.3" targetFramework="net45" />
|
||||||
|
<package id="EntityFramework.Extended" version="6.1.0.168" targetFramework="net45" />
|
||||||
</packages>
|
</packages>
|
Loading…
Reference in New Issue
Block a user