public CommittedProjects(ICommitted committedRepo, ISections sectionsRepo) { this.committedRepo = committedRepo; this.sectionsRepo = sectionsRepo; List <CommittedEntity> GetAnyProjects(int id, BridgeCareContext db, UserInformationModel userInformation) => committedRepo.GetCommittedProjects(id, db); List <CommittedEntity> GetPermittedProjects(int id, BridgeCareContext db, UserInformationModel userInformation) => committedRepo.GetPermittedCommittedProjects(id, db, userInformation.Name); void SaveAnyProjects(List <CommittedProjectModel> models, BridgeCareContext db, UserInformationModel userInformation) => committedRepo.SaveCommittedProjects(models, db); void SavePermittedProjects(List <CommittedProjectModel> models, BridgeCareContext db, UserInformationModel userInformation) => committedRepo.SavePermittedCommittedProjects(models, db, userInformation.Name); CommittedProjectsGetMethods = new Dictionary <string, CommittedProjectsGetMethod> { [Role.ADMINISTRATOR] = GetAnyProjects, [Role.DISTRICT_ENGINEER] = GetPermittedProjects, [Role.CWOPA] = GetPermittedProjects, [Role.PLANNING_PARTNER] = GetPermittedProjects }; CommittedProjectsSaveMethods = new Dictionary <string, CommittedProjectsSaveMethod> { [Role.ADMINISTRATOR] = SaveAnyProjects, [Role.DISTRICT_ENGINEER] = SavePermittedProjects, [Role.CWOPA] = SavePermittedProjects, [Role.PLANNING_PARTNER] = SavePermittedProjects }; }
/// Gathers commitments and sum them. public static Commitment sum_commitments(this ICommitted committed, Secp256K1 secp) { // first, verify each range proof foreach (var output in committed.outputs_committed()) { output.Verify_proof(secp); } // then gather the commitments var inputCommits = new List <Commitment>(); foreach (var input in committed.inputs_commited()) { inputCommits.Add(input.Commitment); } var outputCommits = new List <Commitment>(); foreach (var output in committed.outputs_committed()) { outputCommits.Add(output.Commit); } // add the overage as output commitment if positive, as an input commitment if // negative if (committed.Overage() != 0) { var overCommit = secp.commit_value((ulong)Math.Abs(committed.Overage())); if (committed.Overage() < 0) { inputCommits.Add(overCommit); } else { outputCommits.Add(overCommit); } } // sum all that stuff return(secp.commit_sum(outputCommits.ToArray(), inputCommits.ToArray())); }
public void UpdateCommit(ICommitted committed, CatalogCommit commit) { committed.CommitId = commit.Id; committed.CommitTimestamp = commit.Timestamp; }
public CommittedProjects(ICommitted committedRepo, ISections sectionsRepo) { this.committedRepo = committedRepo; this.sectionsRepo = sectionsRepo; }