<#@ template debug="false" hostspecific="false" language="C#" #> <#@ assembly name="System.Core" #> <#@ import namespace="System.Linq" #> <#@ import namespace="System.Text" #> <#@ import namespace="System.Collections.Generic" #> using Hh.Mes.Common.Infrastructure; using Hh.Mes.Common.log; using Hh.Mes.Common.Request; using Hh.Mes.POJO.Entity; using Hh.Mes.POJO.Response; using Hh.Mes.Service.Repository; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Linq.Expressions; using Hh.Mes.Pojo.System; namespace Hh.Mes.Service.<#=AreaName #> { /// <summary> /// <#=TableDescription #> /// </summary> public class <#=ControllerName #>Service : RepositorySqlSugar<<#=TableName #>> { public dynamic Load<#=IsDetail ? "Desc" : ""#>(PageReq pageReq, <#=TableName #> entity) { return ExceptionsHelp.Instance.ExecuteT(() => { var result = new Response(); var expression = LinqWhere(entity); //先组合查询表达式(多表查询查看IOT 设备列表案例) var query = Context.Queryable<<#=TableName #>>().Where(expression); //Exel false 分页 if (!entity.Exel) { int total = 0; result.Result = query.ToOffsetPage(pageReq.page, pageReq.limit, ref total); result.Count = total; } else { result.Result = query.ToList(); result.Count = result.Result.Count; } return result; }, catchRetrunValue: "list"); } public dynamic Ins<#=IsDetail ? "Desc" : ""#>(<#=TableName #> entity) { return ExceptionsHelp.Instance.ExecuteT(() => { var response = new Response(); //entity.createBy = sysWebUser.Account; //entity.createTime = DateTime.Now; response.Status = Add(entity); if (!response.Status)response.Message = SystemVariable.dataActionError; return response; }); } public dynamic Upd<#=IsDetail ? "Desc" : ""#>(<#=TableName #> entity) { return ExceptionsHelp.Instance.ExecuteT(() => { var response = new Response(); //entity.updateBy = sysWebUser.Account; //entity.updateTime = DateTime.Now; response.Status = Update(entity); if (!response.Status) response.Message = SystemVariable.dataActionError; return response; }); } public dynamic DelByIds<#=IsDetail ? "Desc" : ""#>(int[] ids) { return ExceptionsHelp.Instance.ExecuteT(() => { var response = new Response(); Context.Deleteable<<#=TableName #>>(t => ids.Contains(t.id)).ExecuteCommand(); return response; }); } public Response ExportData(<#=TableName #> entity) { return Load(null, entity); } public Expression<Func<<#=TableName #>, bool>> LinqWhere(<#=TableName #> model) { try { var exp = Expressionable.Create<<#=TableName #>>(); //数据过滤条件 //if (!string.IsNullOrWhiteSpace(model.XXX)) exp.And(x => x.XXX.Contains(model.XXX)); <# foreach (var item in FilterColumns) #> <# { #> if (!string.IsNullOrWhiteSpace(model.<#=item.ColumnName #>)) { exp.And(x => x.<#=item.ColumnName #>.Contains(model.<#=item.ColumnName #>)); } <# } #> return exp.ToExpression();//拼接表达式 } catch (Exception ex) { throw new Exception($"{ex.Message}"); } } } }