public SelectQuery Union(IEnumerable <SelectQuery> selectQueries) { foreach (SelectQuery selectQuery in selectQueries) { UnionQueries.Add(selectQuery); } return(this); }
public UnionModule(ICommandExecutor commandExecutor, UnionQueries unionQueries) : base("api/payroll/company/{companyId}/union") { Get["", true] = async(p, ct) => { var tenantId = Context.GetTenantId(); Guid companyId = p.companyId; return(Response.AsJson(await unionQueries.GetUnions(tenantId, companyId))); }; Get["/{unionId}", true] = async(y, ct) => { var tenantId = Context.GetTenantId(); Guid companyId = y.companyId; Guid unionId = y.unionId; return(Response.AsJson(await unionQueries.GetUnion(tenantId, companyId, unionId))); }; Put["/{unionId}", true] = async(p, ct) => { var incomingUnion = this.Bind <UnionDuesToUpdate>(); Guid companyId = p.companyId; var tenantId = Context.GetTenantId(); await commandExecutor.Execute(new UpdateUnionDues(tenantId, companyId, incomingUnion.Id, incomingUnion.Name, incomingUnion.UseAmount, incomingUnion.DuesDeductionRate, incomingUnion.DuesDeductionAmount, incomingUnion.MaximumDueAmount, incomingUnion.MinimumDueAmount, incomingUnion.PaycodeId)); return(HttpStatusCode.NoContent); }; Post["", true] = async(p, ct) => { var incomingUnion = this.Bind <UnionDuesToCreate>(); var tenantId = Context.GetTenantId(); Guid companyId = p.companyId; var unionId = Guid.NewGuid(); await commandExecutor.Execute(new CreateUnionDues(tenantId, companyId, unionId, incomingUnion)); var readModel = await unionQueries.GetUnion(tenantId, companyId, unionId); return(Response.AsJson(readModel)); }; }
public SelectQuery Union(SelectQuery selectQuery, params SelectQuery[] selectQueries) { UnionQueries.Add(selectQuery); return(Union(selectQueries)); }