예제 #1
0
 public PartialViewResult EditReleaseCPDetails(int releaseCP)
 {
     using (IReleaseCPRepository db = new ReleaseCPRepository())
     {
         return(PartialView(db.GetReleaseCPViewById(releaseCP)));
     }
 }
예제 #2
0
        public async Task updatePublicationDetails(int ReleaseID, int CPID, string FileName)
        {
            try
            {
                int count = 0;
                DAL.Models.Employee publishEmp;

                using (IEmployeeRepository dbEmp = new EmployeeRepository())
                {
                    publishEmp = dbEmp.Where(e => e.UserName == User.Identity.Name.Replace("NTNET\\", "")).FirstOrDefault();
                }

                using (IReleaseCPRepository db = new ReleaseCPRepository())
                {
                    var publishCP = db.Where(rcp => rcp.ReleaseID == ReleaseID & rcp.CPID == CPID).FirstOrDefault();
                    if (publishCP != null)
                    {
                        publishCP.PublicationMailDate = DateTime.Now;
                        publishCP.PublicationMail     = FileName;
                        publishCP.SendByID            = publishEmp.EmployeeID;
                        publishCP.SendByName          = publishEmp.FirstName + " " + publishEmp.LastName;
                        publishCP.PublicationCount++;
                        count += await db.SaveAsync((WindowsPrincipal)User);
                    }
                }
            }
            catch (Exception ex)
            {
                throw;
            }
        }
예제 #3
0
        public ActionResult ViewStatus(int ReleaseId, int CPID = 0, bool IsDraft = true)
        {
            using (ReleaseCPRepository db = new ReleaseCPRepository())
            {
                status           = new StatusVM();
                status.ReleaseID = ReleaseId;

                NavigationBreadCrums.SetSesionReleaseID(ReleaseId);

                List <StatusAreaText> statusAreaTexts;
                using (IStatusAreaTextRepository dbStatusAreaText = new StatusAreaTextRepository())
                {
                    statusAreaTexts = dbStatusAreaText.Where(a => a.ReleaseID == ReleaseId).ToList();
                }
                using (IStatusTextRepository dbStatusText = new StatusTextRepository())
                {
                    StatusText statusText = dbStatusText.Where(a => a.ReleaseID == ReleaseId).FirstOrDefault();
                    if (statusText != null)
                    {
                        status.StatusText = new StatusTextVM()
                        {
                            ReleaseID = statusText.ReleaseID, HighLightText = statusText.HighLightText
                        }
                    }
                    ;
                }
                using (IReleaseChecklistAnswerRepository dbChecklist = new ReleaseChecklistAnswerRepository())
                {
                    status.AreaScores = dbChecklist.GetStatus(ReleaseId).Select(q =>
                                                                                new AreaScoreVM()
                    {
                        AreaID         = q.Area.AreaID,
                        ReleaseID      = ReleaseId,
                        Name           = q.Area.Name,
                        Score          = q.Score,
                        ScoreStatus    = IndicatorList.First(i => q.Score >= i.Min && q.Score < i.Max).ScoreIMG,
                        Trand          = q.LastScore != null ? TrandCalculation(q.Score, (double)q.LastScore) : Trand.none,
                        StatusAreaText = statusAreaTexts != null && statusAreaTexts.Where(s => s.AreaID == q.Area.AreaID).FirstOrDefault() != null ? statusAreaTexts.Where(s => s.AreaID == q.Area.AreaID).FirstOrDefault().AreaText : "",
                        SubAreaScors   = q.SubAreaScores.Select(s =>
                                                                new SubAreaScoreVM()
                        {
                            Name        = s.SubArea.Name,
                            Score       = s.Score,
                            ScoreStatus = IndicatorList.First(i => s.Score >= i.Min && s.Score < i.Max).ScoreIMG,
                            SubAreaID   = s.SubArea.SubAreaID,
                            Trand       = s.LastScore != null ? TrandCalculation(s.Score, (double)s.LastScore) : Trand.none,
                        }).ToList()
                    }).ToList();
                }
            }
            status.Details = new ReleaseGeneralDetails()
            {
                ReleaseID = ReleaseId
            };
            status.CPID    = CPID;
            status.IsDraft = IsDraft;
            return(View(status));
        }
예제 #4
0
 public PartialViewResult releaseCPDetails(int CPID)
 {
     using (IReleaseCPRepository db = new ReleaseCPRepository())
     {
         var CPDetails = db.GetReleaseCPViewById(CPID);
         CPDetails.PublicationMailLink = CPDetails.PublicationMailLink != null ? ConfigurationManager.AppSettings["PublicationMailsFolder"] + CPDetails.PublicationMailLink : "#";
         return(PartialView(CPDetails));
     }
 }
예제 #5
0
        public async Task <int> SaveReleaseCPDetails(ReleaseCPView releaseCP)
        {
            int count = 0;

            using (IReleaseCPRepository db = new ReleaseCPRepository())
            {
                count += await db.Edit(releaseCP, (WindowsPrincipal)User);
            }
            return(count);
        }
예제 #6
0
        public ActionResult GetReleaseCP(int ReleaseID, bool IsDraft)
        {
            List <ReleaseCPView> CPs;

            using (IReleaseCPRepository dbCP = new ReleaseCPRepository())
            {
                CPs = dbCP.GetReleaseCPByFiltering(rcp => rcp.ReleaseID == ReleaseID).OrderBy(cp => cp.PlannedDate == null).ThenBy(cp => cp.PlannedDate).ToList();
                var DefaultCP = CPs.FirstOrDefault(cp => cp.PlannedDate >= DateTime.Today && cp.PlannedDate != null);
                if (DefaultCP != null)
                {
                    CPs.Remove(DefaultCP);
                    CPs.Insert(0, DefaultCP);
                }
                ViewBag.PopUpTitle = IsDraft ? "Draft Publication" : "Formal publish";
            }
            return(PartialView("PopUpPublish", CPs));
        }
예제 #7
0
        public ReleaseMilstoneCP_Footer(ReleaseMilestone rm, List <int> cpids, ICollection <ReleaseCP> releaseCps, string accountName)
        {
            this.MilestoneName = rm.Milestone.Name;
            this.MilestoneDate = FormatDateTime(rm.MilestoneDate);
            ReleaseCPView releaseCP = null;

            using (IReleaseCPRepository db = new ReleaseCPRepository())
            {
                releaseCP = new ReleaseCPView((!rm.Milestone.CPs.Any(cp => cp.MilestoneID == rm.MilestoneID && cpids.Contains(cp.CPID)))? null :
                                              releaseCps.Where(r => r.ReleaseID == rm.ReleaseID &&
                                                               r.CPID == rm.Milestone.CPs.Where(cp => cp.MilestoneID == rm.MilestoneID && cpids.Contains(cp.CPID)).FirstOrDefault().CPID).FirstOrDefault(), accountName);
            }
            IsCreated           = releaseCP != null;
            this.CheckPointDate = this.IsCreated ? FormatDateTime(releaseCP.PlannedDate) : String.Empty;
            this.CheckPointId   = this.IsCreated ? releaseCP.ReleaseCPID : -1;
            this.CPName         = this.IsCreated ? releaseCP.CPName : String.Empty;
        }
예제 #8
0
        public async Task <int> AddCPs(int ReleaseID)
        {
            IEnumerable <CP> CPs = null;
            int count            = 0;

            using (ICPRepository db = new CPRepository())
            {
                CPs = db.Get().Where(cp => cp.EffectiveDate <DateTime.Today.Date && cp.ExpirationDate> DateTime.Today.Date && cp.IsDeleted == false);
            }

            using (IReleaseCPRepository db = new ReleaseCPRepository())
            {
                IList <ReleaseCP> ReleaseCP = new List <ReleaseCP>();
                CPs.ToList().ForEach(cp => ReleaseCP.Add(new ReleaseCP()
                {
                    CPID = cp.CPID, ReleaseID = ReleaseID, ExceptionIndicator = false, IsDeleted = false
                }));
                db.AddRange(ReleaseCP);
                count += await db.SaveAsync((WindowsPrincipal)User);
            }
            return(count);
        }