/// <summary> /// 当前数据筛选器 /// </summary> /// <returns></returns> protected override LambdaItem <PositionPersonnelData> GetFilter() { var filter = new LambdaItem <PositionPersonnelData> { Root = p => p.DataState <= DataStateType.Discard }; var keyWord = GetArg("keyWord"); if (!string.IsNullOrEmpty(keyWord)) { filter.AddAnd(p => p.Personnel.Contains(keyWord) || p.Appellation.Contains(keyWord) || p.Position.Contains(keyWord) || p.Role.Contains(keyWord) || p.Tel.Contains(keyWord) || p.Mobile.Contains(keyWord) || p.Organization.Contains(keyWord) || p.Department.Contains(keyWord) || p.Memo.Contains(keyWord)); } return(filter); }
/// <summary> /// 取得列表数据 /// </summary> protected override void GetListData() { var root = new LambdaItem <PersonnelData>(); //if (!CanDoAction("all")) //{ // root.Expression = p => p.JoinOrgId == BusinessContext.Current.LoginUser.CompanyId; //} var key = GetArg("keyWord"); if (!string.IsNullOrWhiteSpace(key)) { root.AddAnd(p => p.FullName.Contains(key) || p.Tel.Contains(key) || p.Mobile.Contains(key)); } base.GetListData(root); }
/// <summary> /// 取得列表数据 /// </summary> protected override void GetListData() { var filter = new LambdaItem <UserJobData>(); if (LoginUser.Id > 1) { filter.Root = p => p.ToUserId == LoginUser.Id && p.DataState == DataStateType.None; } else { filter.Root = p => p.DataState == DataStateType.None; } SetArg("order", "desc"); SetArg("order", "Id"); var size = LoginUser.Id > 1?GetIntArg("size", 6):9999; var type = GetArg("type"); List <UserJobData> datas; switch (type) { case "msg": filter.AddAnd(p => p.JobType == UserJobType.Message); break; case "audit": filter.AddAnd(p => p.JobType == UserJobType.Audit); if (LoginUser.Id > 1) { filter.AddAnd(p => p.JobStatus < JobStatusType.Succeed); } break; case "edit": filter.AddAnd(p => p.JobType == UserJobType.Edit); if (LoginUser.Id > 1) { filter.AddAnd(p => p.JobStatus < JobStatusType.Succeed); } break; default: datas = Business.Access.PageData(1, 100, p => p.Date, true, filter); SetResult(datas); return; } datas = Business.Access.PageData(1, size, p => p.Date, true, filter); SetResult(datas); }
/// <summary> /// 取得列表数据 /// </summary> protected override void GetListData(LambdaItem <TData> lambda) { var state = GetIntArg("dataState", 0x100); if (state >= 0) { if (state < 0x100) { lambda.AddRoot(p => p.DataState == (DataStateType)state); } else { lambda.AddRoot(p => p.DataState < DataStateType.Delete); } } DoGetListData(lambda); }
/// <summary> /// 分页读取 /// </summary> public ApiPageData <TData> PageData(int page, int limit, LambdaItem <TData> lambda) { if (limit <= 0 || limit >= 999) { limit = 30; } var data = Access.PageData(page, limit, lambda); var count = (int)Access.Count(lambda); return(new ApiPageData <TData> { RowCount = count, Rows = data, PageIndex = page, PageSize = limit, PageCount = count / limit + (((count % limit) > 0 ? 1 : 0)) }); }
/// <summary> /// 取得列表数据 /// </summary> protected override void GetListData() { var root = new LambdaItem <PageItemData>(); var fid = GetIntArg("fid"); if (fid >= 0) { root.Root = p => p.ParentId == fid; } else { root.Root = p => p.ItemType <= PageItemType.Page; } var keyWord = GetArg("keyWord"); if (!string.IsNullOrEmpty(keyWord)) { root.AddAnd(p => p.Name.Contains(keyWord) || p.Caption.Contains(keyWord) || p.Url.Contains(keyWord)); } base.GetListData(root); }
public void Invalid_argument_tests() { var lambdaItem = new LambdaItem(_lambdaIdentity, Mock.Of <IWorkflow>()); Assert.Throws <ArgumentNullException>(() => lambdaItem.WithInput(null)); Assert.Throws <ArgumentNullException>(() => lambdaItem.WithTimeout(null)); Assert.Throws <ArgumentNullException>(() => lambdaItem.OnCompletion(null)); Assert.Throws <ArgumentNullException>(() => lambdaItem.OnFailure(null)); Assert.Throws <ArgumentNullException>(() => lambdaItem.OnTimedout(null)); Assert.Throws <ArgumentNullException>(() => lambdaItem.OnSchedulingFailed(null)); Assert.Throws <ArgumentNullException>(() => lambdaItem.OnStartFailed(null)); Assert.Throws <ArgumentException>(() => lambdaItem.AfterActivity(null, "1.0")); Assert.Throws <ArgumentException>(() => lambdaItem.AfterActivity("name", null)); Assert.Throws <ArgumentException>(() => lambdaItem.AfterTimer(null)); Assert.Throws <ArgumentException>(() => lambdaItem.AfterLambda(null)); Assert.Throws <ArgumentException>(() => lambdaItem.AfterChildWorkflow(null, "ver")); Assert.Throws <ArgumentException>(() => lambdaItem.AfterChildWorkflow("name", null)); Assert.Throws <ArgumentNullException>(() => lambdaItem.When(null)); Assert.Throws <ArgumentNullException>(() => lambdaItem.When(null, _ => WorkflowAction.Empty)); Assert.Throws <ArgumentNullException>(() => lambdaItem.When(_ => true, null)); }
/// <summary> /// 取得列表数据 /// </summary> /// <remarks>安全检查有漏洞</remarks> protected override void GetListData() { var pid = GetIntArg("pid", 0); var oid = GetIntArg("oid", 0); var kw = GetArg("keyWord"); var condition = new LambdaItem <PositionPersonnelData>(); if (!string.IsNullOrWhiteSpace(kw)) { condition.Root = p => p.Personnel.Contains(kw) || p.Mobile.Contains(kw) || p.Tel.Contains(kw); } if (pid > 0) { condition.Root = p => p.OrganizePositionId == pid; base.GetListData(condition); } else if (oid > 1) { using (MySqlReadTableScope <PositionPersonnelData> .CreateScope(Business.Access, "view_sys_position_personnel_master")) { condition.Root = p => p.master_id == oid; base.GetListData(condition); } } else if (BusinessContext.Current.LoginUser.DepartmentId == 1) { base.GetListData(condition); } else { using (MySqlReadTableScope <PositionPersonnelData> .CreateScope(Business.Access, "view_sys_position_personnel_master")) { condition.Root = p => p.master_id == BusinessContext.Current.LoginUser.DepartmentId; base.GetListData(condition); } } }
/// <summary> /// 取得列表数据 /// </summary> protected override ApiPageData <TData> GetListData(LambdaItem <TData> lambda) { var audit = GetIntArg("audit", -1); if (audit == 0x100 || audit < 0) { return(base.GetListData(lambda)); } if (audit <= (int)AuditStateType.End) { lambda.AddRoot(p => p.AuditState == (AuditStateType)audit); return(base.GetListData(lambda)); } switch (audit) { case 0x10: //废弃 case 0xFF: //删除 SetArg("dataState", audit); break; case 0x13: //停用 SetArg("dataState", (int)DataStateType.Disable); break; case 0x11: //未审核 lambda.AddRoot(p => p.AuditState <= AuditStateType.Again); break; case 0x12: //未结束 lambda.AddRoot(p => p.AuditState < AuditStateType.End); break; } return(base.GetListData(lambda)); }
/// <summary> /// 分页读取 /// </summary> public async Task <ApiPageData <TData> > PageDataAsync(int page, int limit, LambdaItem <TData> lambda) { var item = Access.Compile(lambda); return(await PageDataAsync(page, limit, null, false, item.ConditionSql, item.Parameters)); }
/// <summary> /// 关键字查询缺省实现 /// </summary> /// <param name="filter">筛选器</param> protected void DefaultGetListData(LambdaItem <RolePowerData> filter) { SetKeywordFilger(filter); }
public void Cancel_decision_is_empty() { var lambdaItem = new LambdaItem(_lambdaIdentity, Mock.Of <IWorkflow>()); Assert.That(lambdaItem.CancelDecisions(), Is.Empty); }
/// <summary> /// 取得列表数据 /// </summary> protected override void GetListData() { var root = new LambdaItem <TData>(); GetListData(root); }
/// <summary> /// 取得列表数据 /// </summary> protected override ApiPageData <TData> GetListData() { var root = new LambdaItem <TData>(); return(GetListData(root)); }
public ApiPageData <TData> PageData(int page, int limit, string sort, bool desc, LambdaItem <TData> lambda) { var item = Access.Compile(lambda); return(PageData(page, limit, sort, desc, item.ConditionSql, item.Parameters)); }
/// <summary> /// 读取数据 /// </summary> /// <param name="lambda">查询表达式</param> /// <returns>是否存在数据</returns> public List <TData> All(LambdaItem <TData> lambda) { return(Access.All(lambda)); }
/// <summary> /// 取得列表数据 /// </summary> protected void DefaultGetListData() { var filter = new LambdaItem<UserJobData>(); SetKeywordFilter(filter); base.GetListData(filter); }
/// <summary> /// 关键字查询缺省实现 /// </summary> /// <param name="filter">筛选器</param> protected void DefaultGetListData(LambdaItem <PersonnelData> filter) { SetKeywordFilger(filter); }
/// <summary> /// 导出到Excel /// </summary> /// <param name="sheetName"></param> /// <param name="filter"></param> /// <returns></returns> public async Task <(string name, string mime, byte[] bytes)> ExportAsync(string sheetName, LambdaItem <TData> filter) { var exporter = new ExcelExporter <TData, TPrimaryKey, TAccess> { OnDataLoad = OnListLoaded }; var data = new TData(); var bytes = await exporter.ExportExcelAsync(filter, sheetName ?? data.__Struct.ImportName, null); return($"OrderAddress-{DateTime.Now:yyyyMMDDHHmmSS}", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", bytes); }
/// <summary> /// 关键字查询缺省实现 /// </summary> /// <param name="filter">筛选器</param> protected void DefaultGetListData(LambdaItem <SubjectionData> filter) { SetKeywordFilger(filter); }
/// <summary> /// 分页读取 /// </summary> public ApiPageData <TData> PageData(int page, int limit, LambdaItem <TData> lambda) { var item = Access.Compile(lambda); return(PageData(page, limit, null, false, item.ConditionSql, item.Parameters)); }