Esempio n. 1
0
 public void UpdateModel(Model.UnitDocument model)
 {
     if (model.Title != this.Title) model.Title = this.Title;
     if (model.Required != this.Required) model.Required = this.Required;
     if (model.SubmitTo != this.SubmitTo) model.SubmitTo = this.SubmitTo;
     if (model.Url != this.Url) model.Url = this.Url;
     if (model.Order != this.Order) model.Order = this.Order;
     if (model.ForMembersYounger != this.ForMembersYounger) model.ForMembersYounger = this.ForMembersYounger;
     if (model.ForMembersOlder != this.ForMembersOlder) model.ForMembersOlder = this.ForMembersOlder;
 }
        private IEnumerable<TrainingRecord> GetTrainingRecords(Expression<Func<Data.TrainingAward, bool>> whereClause, bool includeMember, Data.WacLevel? levelForRequired)
        {
            int mask = (1 << (((int)(levelForRequired ?? Data.WacLevel.None) - 1) * 2 + 1));
              string dateFormat = GetDateFormat();

              var model = db.TrainingAward.Where(whereClause).Select(
                  award => new
                  {
                    Course = new TrainingCourse
                    {
                      Id = award.Course.Id,
                      Title = award.Course.DisplayName
                    },
                    Comments = award.metadata,
                    Completed = award.Completed,
                    Expires = award.Expiry,
                    Source = (award.Roster != null) ? "roster" : "direct",
                    ReferenceId = (from roster in db.TrainingRosters where roster.Id == award.Roster.Id select (Guid?)roster.Training.Id).FirstOrDefault<Guid?>() ??
                                    award.Id,
                    Required = (award.Course.WacRequired & mask) > 0
                  }).AsEnumerable().Select(f => new TrainingRecord
                  {
                    Course = f.Course,
                    Comments = f.Comments,
                    Completed = string.Format(dateFormat, f.Completed),
                    Expires = string.Format(dateFormat, f.Expires),
                    Source = f.Source,
                    ReferenceId = f.ReferenceId,
                    Required = f.Required
                  }).OrderByDescending(f => f.Completed).ThenBy(f => f.Source).ToArray();
              return model;
        }
 public TrainingRecordsController(Data.IKcsarContext db, ILog log)
     : base(db, log)
 {
 }
Esempio n. 4
0
 public UnitsController(Model.IKcsarContext db, ILog log)
     : base(db, log)
 {
 }
Esempio n. 5
0
 internal static void RegisterApplication(Model.IKcsarContext db, Guid id, Model.Member member)
 {
     Model.UnitApplicant application = new Model.UnitApplicant
       {
     Unit = db.Units.Single(f => f.Id == id),
     Applicant = member,
     Started = DateTime.Now,
     IsActive = true,
       };
       db.UnitApplicants.Add(application);
 }
        private bool _SetUnitDocumentState(Guid id, Guid docId, Guid? mDocId, MemberUnitDocumentActions allowedActions, Model.DocumentStatus targetState, bool fromUser)
        {
            MemberUnitDocument doc = null;
              Model.MemberUnitDocument modelDoc = null;
              if (mDocId.HasValue)
              {
            modelDoc = db.MemberUnitDocuments.Include("Document.Unit", "Member").Single(f => f.Id == mDocId);
            doc = MemberUnitDocument.MemberUnitDocumentConversion.Compile()(modelDoc);
              }
              else
              {
            var unitDoc = db.UnitDocuments.Include("Unit").Single(f => f.Id == docId);
            var member = db.Members.Single(f => f.Id == id);
            modelDoc = new Model.MemberUnitDocument
            {
              Member = member,
              Document = unitDoc,
              Status = Model.DocumentStatus.NotStarted,
            };
            member.UnitDocuments.Add(modelDoc);
            doc = db.UnitDocuments.Where(f => f.Id == docId).Select(MemberUnitDocument.UnitDocumentConversion).Single();
              }

              FilterUnitDocActions(id, doc);

              if ((doc.Actions & allowedActions) == MemberUnitDocumentActions.None) ThrowAuthError();

              modelDoc.Status = targetState;
              if (fromUser)
              {
            modelDoc.UnitAction = DateTime.Now;
              }
              else
              {
            modelDoc.MemberAction = DateTime.Now;
              }

              db.SaveChanges();

              return true;
        }
 public MembersController(Model.IKcsarContext db, ILog log)
     : base(db, log)
 {
 }
 public TrainingCoursesController(Data.IKcsarContext db, ILog log)
     : base(db, log)
 {
 }