public void EditCircuit(vw_CircuitData CircuitData)
        {
            CourtConfigurations_Circuits CircuitsObj = GetAll().Where(x => x.ID == CircuitData.ID).FirstOrDefault();

            CircuitsObj.CourtID     = CircuitData.CourtID;
            CircuitsObj.CrimeType   = CircuitData.CrimeTypeID;
            CircuitsObj.SecretaryID = CircuitData.SecretaryID;
            if (CircuitData.AssistantSecretaryID == 0)
            {
                CircuitsObj.AssistantSecretaryID = null;
            }
            else
            {
                CircuitsObj.AssistantSecretaryID = CircuitData.AssistantSecretaryID;
            }
            CircuitsObj.Name             = CircuitData.CircuitName;
            CircuitsObj.CircuitStartDate = CircuitData.CircuitStartDate;
            CircuitsObj.IsActive         = CircuitData.IsActive;
            CircuitsObj.CycleID          = CircuitData.CycleID;
            CircuitsObj.IsFutureCircuit  = CircuitData.IsFutureCircuit;
            CircuitsObj.LastModifiedBy   = CircuitData.UserName;
            CircuitsObj.LastModifiedAt   = DateTime.Now;
            this.Update(CircuitsObj);
            this.Save();
        }
예제 #2
0
 public void AddCircuitTest()
 {
     HabyBase2(() =>
     {
         vw_CircuitData data = new vw_CircuitData()
         {
             CourtID              = 1,
             CrimeTypeID          = 2,
             SecretaryID          = 1,
             AssistantSecretaryID = 1,
             CircuitName          = "new Circuit",
             CircuitStartDate     = DateTime.Now.AddMonths(5),
             IsActive             = true,
             CycleID              = 4,
             CenterJudgeID        = 1,
             IsFutureCircuit      = true,
         };
         JIC.Services.Services.CourtConfigurationService serv = new JIC.Services.Services.CourtConfigurationService(Base.CaseType.Crime);
         int casId;
         serv.AddCircuit(data, out casId);
         if (casId == 0)
         {
             return(Base.TestStat.Fail);
         }
         else
         {
             return(Base.TestStat.Pass);
         }
     });
 }
예제 #3
0
        public SaveCircuitStatus EditCircuit(vw_CircuitData circuitData)
        {
            try
            {
                DateTime EndCircuitDate = new DateTime(DateTime.Today.Year, SystemConfigurations.Settings_CircuitEndMonth, SystemConfigurations.Settings_CircuitEndDay);

                bool isSameYearCircuit = (circuitData.CircuitStartDate < EndCircuitDate || (circuitData.CircuitStartDate > EndCircuitDate && DateTime.Today > EndCircuitDate) ? true : false);

                DateTime CircuitEndDate = new DateTime(circuitData.CircuitStartDate.Year, SystemConfigurations.Settings_CircuitEndMonth, SystemConfigurations.Settings_CircuitEndDay);

                if (circuitData.CircuitStartDate > CircuitEndDate)
                {
                    CircuitEndDate = circuitData.CircuitStartDate.AddYears(1);
                }

                //if (CircuitComponent.IsStartDateAfterToday(circuitData.ID) == false)
                //{
                //    return SaveCircuitStatus.CircuitStartDateBeforeToday;
                //}

                if (ValidateJudges(circuitData.JudgesID))
                {
                    return(SaveCircuitStatus.Judge_Used_Twice);
                }

                if (CircuitComponent.IsSavedBefore(isSameYearCircuit, circuitData.CircuitName, circuitData.ID))
                {
                    return(SaveCircuitStatus.Saved_Before);
                }

                circuitData.IsActive        = isSameYearCircuit;
                circuitData.IsFutureCircuit = !isSameYearCircuit;


                using (var Transaction = BeginDatabaseTransaction())
                {
                    PoliceComp.DeleteCircuitPoliceStations(circuitData.ID);
                    PoliceComp.SaveCircuitPoliceStations(circuitData.PoliceStations, circuitData.ID);
                    CircuitMembersComponent.EditCircuitJudges(circuitData.JudgesID, circuitData.ID, circuitData.CircuitStartDate);

                    //CircuitMembersComponent.DeleteCircuitMemberByCircuitID (circuitData.ID);
                    //CircuitMembersComponent.AddCircuitJudges ( circuitData.JudgesID  ,circuitData.ID,circuitData.CircuitStartDate );

                    CircuitComponent.EditCircuit(circuitData);


                    if (Transaction != null)
                    {
                        Transaction.Commit();
                    }
                    return(SaveCircuitStatus.Saved_Successfully);
                }
            }
            catch (DbEntityValidationException ex)
            {
                HandleException(ex);
                return(SaveCircuitStatus.Failed_To_Save);
            }
        }
        public void AddCircuit(vw_CircuitData CircuitData, out int CircuitID)
        {
            CourtConfigurations_Circuits CircuitsObj = GetObjectFromView(CircuitData);
            this.Add(CircuitsObj);
            this.Save();
            CircuitID = CircuitsObj.ID;

        }
        public void AddCircuit(vw_CircuitData CircuitData, out int CircuitID)
        {
            CourtConfigurations_Circuits CircuitsObj = GetObjectFromView(CircuitData);

            CircuitsObj.CreatedBy = CircuitData.UserName;
            CircuitsObj.CreatedAt = DateTime.Now;
            this.Add(CircuitsObj);
            this.Save();
            CircuitID = CircuitsObj.ID;
        }
 CourtConfigurations_Circuits GetObjectFromView(vw_CircuitData CircuitData)
 {
     return(new CourtConfigurations_Circuits
     {
         CourtID = CircuitData.CourtID,
         CrimeType = CircuitData.CrimeTypeID,
         SecretaryID = CircuitData.SecretaryID,
         AssistantSecretaryID = CircuitData.AssistantSecretaryID,
         Name = CircuitData.CircuitName,
         CircuitStartDate = CircuitData.CircuitStartDate,
         IsActive = CircuitData.IsActive,
         CycleID = CircuitData.CycleID,
         IsFutureCircuit = CircuitData.IsFutureCircuit,
         CreatedAt = DateTime.Now,
         CreatedBy = "Name2"
     });
 }
예제 #7
0
 public SaveCircuitStatus EditCircuit(vw_CircuitData circuitData)
 {
     throw new NotImplementedException();
 }
예제 #8
0
 public SaveCircuitStatus AddCircuit(vw_CircuitData circuitData, out int CircuitID)
 {
     throw new NotImplementedException();
 }
예제 #9
0
        public SaveCircuitStatus AddCircuit(vw_CircuitData circuitData, out int CircuitID)
        {
            try
            {
                DateTime EndCircuitDate = new DateTime(DateTime.Today.Year, SystemConfigurations.Settings_CircuitEndMonth, SystemConfigurations.Settings_CircuitEndDay);

                if (DateTime.Today > EndCircuitDate)
                {
                    EndCircuitDate.AddYears(1);
                }

                bool isSameYearCircuit = (circuitData.CircuitStartDate < EndCircuitDate) ? true : false;

                DateTime CircuitEndDate = new DateTime(circuitData.CircuitStartDate.Year, SystemConfigurations.Settings_CircuitEndMonth, SystemConfigurations.Settings_CircuitEndDay);

                if (circuitData.CircuitStartDate > CircuitEndDate)
                {
                    CircuitEndDate = circuitData.CircuitStartDate.AddYears(1);
                }

                if (ValidateJudges(circuitData.JudgesID))
                {
                    CircuitID = 0;
                    return(SaveCircuitStatus.Judge_Used_Twice);
                }
                if (circuitData.SecretaryID == circuitData.AssistantSecretaryID)
                {
                    CircuitID = 0;
                    return(SaveCircuitStatus.Secretary_Used_Twice);
                }
                if (CircuitComponent.IsSavedBefore(isSameYearCircuit, circuitData.CircuitName, circuitData.ID))
                {
                    CircuitID = 0;
                    return(SaveCircuitStatus.Saved_Before);
                }

                circuitData.IsActive        = isSameYearCircuit;
                circuitData.IsFutureCircuit = !isSameYearCircuit;
                if (circuitData.AssistantSecretaryID == 0)
                {
                    circuitData.AssistantSecretaryID = null;
                }
                using (var Transaction = BeginDatabaseTransaction())
                {
                    CircuitComponent.AddCircuit(circuitData, out CircuitID);
                    PoliceComp.SaveCircuitPoliceStations(circuitData.PoliceStations, CircuitID);
                    SaveCircuitStatus SaveJudgesStatus = CircuitMembersComponent.AddCircuitJudges(circuitData.JudgesID, CircuitID, circuitData.CircuitStartDate);

                    if (Transaction != null)
                    {
                        Transaction.Commit();
                    }
                    return(SaveCircuitStatus.Saved_Successfully);
                }
            }
            catch (Exception ex)
            {
                CircuitID = 0;
                HandleException(ex);
                return(SaveCircuitStatus.Failed_To_Save);
            }
        }
        public ActionResult Create(CircuitConfigurationViewModel model, List <int> PoliceStation, string submitButton)
        {
            if (CurrentUser != null)
            {
                try
                {
                    if (model.JudgeCount == 4)
                    {
                        if (model.ThirdJudge == null)
                        {
                            ModelState.AddModelError("ThirdJudge", Resources.RequiredErrorMessage);
                        }
                        if (model.FourthJudge == null)
                        {
                            ModelState.AddModelError("FourthJudge", Resources.RequiredErrorMessage);
                        }
                    }
                    else if (model.JudgeCount == 6)
                    {
                        if (model.ThirdJudge == null)
                        {
                            ModelState.AddModelError("ThirdJudge", Resources.RequiredErrorMessage);
                        }
                        if (model.FourthJudge == null)
                        {
                            ModelState.AddModelError("FourthJudge", Resources.RequiredErrorMessage);
                        }
                        if (model.FifthJudge == null)
                        {
                            ModelState.AddModelError("FifthJudge", Resources.RequiredErrorMessage);
                        }
                        if (model.SixthJudge == null)
                        {
                            ModelState.AddModelError("SixthJudge", Resources.RequiredErrorMessage);
                        }
                    }
                    model.PoliceStation = PoliceStation.ToArray();
                    if (PoliceStation.Count() == 0 || PoliceStation == null)
                    {
                        ModelState.AddModelError("PoliceStation", Resources.RequiredErrorMessage);
                    }
                    if (ModelState.IsValid)
                    {
                        vw_CircuitData CircuitData = new vw_CircuitData();
                        CircuitData.CircuitName      = model.CircuitName;
                        CircuitData.CircuitStartDate = Convert.ToDateTime(model.CircuitStartDate);
                        if (CurrentUser.CourtID != null)
                        {
                            CircuitData.CourtID  = CurrentUser.CourtID.Value;
                            CircuitData.UserName = CurrentUser.UserName;
                        }
                        else
                        {
                            CircuitData.CourtID = model.CourtID.Value;
                        }
                        CircuitData.CrimeTypeID          = model.CrimeType.Value;
                        CircuitData.CycleID              = model.Cycle.Value;
                        CircuitData.JudgeCount           = model.JudgeCount;
                        CircuitData.AssistantSecretaryID = model.SecretaryAssistant.GetValueOrDefault();
                        CircuitData.SecretaryID          = model.SecretaryHead.Value;
                        CircuitData.PoliceStations       = (from a in model.PoliceStation select a).ToList();
                        List <vw_CircuitsJudges> SelectedJudges = new List <vw_CircuitsJudges>();
                        SelectedJudges.Add(new vw_CircuitsJudges()
                        {
                            JudgeID = model.HeadJudge.Value, JudgePodiumType = (int)JudgePodiumType.HeadJudge
                        });
                        SelectedJudges.Add(new vw_CircuitsJudges()
                        {
                            JudgeID = model.FirstJudge.Value, JudgePodiumType = (int)JudgePodiumType.RightJudge
                        });
                        SelectedJudges.Add(new vw_CircuitsJudges()
                        {
                            JudgeID = model.SecondJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftJudge
                        });
                        if (model.alternativeJudge.HasValue)
                        {
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = model.alternativeJudge.Value, JudgePodiumType = (int)JudgePodiumType.OptionalJudge
                            });
                        }

                        switch (model.JudgeCount)
                        {
                        case 4:
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = model.ThirdJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftJudge
                            });
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = model.FourthJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftLeftJudge
                            });

                            break;

                        case 6:
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = model.ThirdJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftJudge
                            });
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = model.FourthJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftLeftJudge
                            });
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = model.FifthJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftLeftLeftJudge
                            });
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = model.SixthJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftLeftLeftLeftJudge
                            });
                            break;
                        }
                        CircuitData.JudgesID = SelectedJudges;
                        int id;
                        var AddCircuitResult = CircuitService.AddCircuit(CircuitData, out id);
                        ViewData["SessionEnded"] = false;
                        switch (AddCircuitResult)
                        {
                        case SaveCircuitStatus.Saved_Successfully:
                            if (submitButton.Equals(Resources.SaveAndClose))
                            {
                                return(RedirectJS(Url.Action("Index")).WithSuccessMessages(Messages.OperationCompletedSuccessfully));
                            }
                            else
                            {
                                ModelState.Clear();
                                return(CPartialView(GetMainData()).WithSuccessMessages(Messages.OperationCompletedSuccessfully));
                            }

                        case SaveCircuitStatus.Saved_Before:
                            ModelState.AddModelError("CircuitName", JIC.Base.Resources.Messages.CircuitExists);
                            return(CPartialView(GetMainData(model)).WithErrorMessages(Messages.CircuitExists));

                        case SaveCircuitStatus.Judge_Used_Twice:
                            return(CPartialView(GetMainData(model)).WithErrorMessages(Messages.JudgeUsedTwice));

                        case SaveCircuitStatus.Secretary_Used_Twice:
                            return(CPartialView(GetMainData(model)).WithErrorMessages(Messages.SecretaryUsedTwice));

                        case SaveCircuitStatus.Failed_To_Save_Judges:
                            return(CPartialView(model).WithErrorMessages(Messages.OperationNotCompleted));

                        default:
                            return(CPartialView(GetMainData(model)).WithErrorMessages(Messages.OperationNotCompleted));
                        }
                    }
                }
                catch (Exception ex)
                {
                    return(ErrorPage(ex));
                }
                return(CPartialView(GetMainData(model)));
                //return CPartialView(GetMainData(model));
            }
            else
            {
                ViewData["SessionEnded"] = true;
                return(CPartialView());
            }
        }
        public ActionResult Edit([Bind(Prefix = "Edit")] CircuitConfigurationViewModel CircuitConfigurationViewModel, [Bind(Prefix = "Edit")] int[] Edit_PoliceStation)
        {
            if (CurrentUser != null)
            {
                ViewData["SessionEnded"] = false;

                try
                {
                    if (CircuitConfigurationViewModel.JudgeCount == 4)
                    {
                        if (CircuitConfigurationViewModel.ThirdJudge == null)
                        {
                            ModelState.AddModelError("Edit.ThirdJudge", Resources.RequiredErrorMessage);
                        }
                        if (CircuitConfigurationViewModel.FourthJudge == null)
                        {
                            ModelState.AddModelError("Edit.FourthJudge", Resources.RequiredErrorMessage);
                        }
                    }
                    else if (CircuitConfigurationViewModel.JudgeCount == 6)
                    {
                        if (CircuitConfigurationViewModel.ThirdJudge == null)
                        {
                            ModelState.AddModelError("Edit.ThirdJudge", Resources.RequiredErrorMessage);
                        }
                        if (CircuitConfigurationViewModel.FourthJudge == null)
                        {
                            ModelState.AddModelError("Edit.FourthJudge", Resources.RequiredErrorMessage);
                        }
                        if (CircuitConfigurationViewModel.FifthJudge == null)
                        {
                            ModelState.AddModelError("Edit.FifthJudge", Resources.RequiredErrorMessage);
                        }
                        if (CircuitConfigurationViewModel.SixthJudge == null)
                        {
                            ModelState.AddModelError("Edit.SixthJudge", Resources.RequiredErrorMessage);
                        }
                    }
                    if (ModelState.IsValid)
                    {
                        List <vw_CircuitsJudges> SelectedJudges = new List <vw_CircuitsJudges>();
                        SelectedJudges.Add(new vw_CircuitsJudges()
                        {
                            JudgeID = CircuitConfigurationViewModel.HeadJudge.Value, JudgePodiumType = (int)JudgePodiumType.HeadJudge
                        });
                        SelectedJudges.Add(new vw_CircuitsJudges()
                        {
                            JudgeID = CircuitConfigurationViewModel.FirstJudge.Value, JudgePodiumType = (int)JudgePodiumType.RightJudge
                        });
                        SelectedJudges.Add(new vw_CircuitsJudges()
                        {
                            JudgeID = CircuitConfigurationViewModel.SecondJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftJudge
                        });
                        if (CircuitConfigurationViewModel.alternativeJudge.HasValue)
                        {
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = CircuitConfigurationViewModel.alternativeJudge.Value, JudgePodiumType = (int)JudgePodiumType.OptionalJudge
                            });
                        }

                        switch (CircuitConfigurationViewModel.JudgeCount)
                        {
                        case 4:

                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = CircuitConfigurationViewModel.ThirdJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftJudge
                            });
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = CircuitConfigurationViewModel.FourthJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftLeftJudge
                            });

                            break;

                        case 6:

                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = CircuitConfigurationViewModel.ThirdJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftJudge
                            });
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = CircuitConfigurationViewModel.FourthJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftLeftJudge
                            });
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = CircuitConfigurationViewModel.FifthJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftLeftLeftJudge
                            });
                            SelectedJudges.Add(new vw_CircuitsJudges()
                            {
                                JudgeID = CircuitConfigurationViewModel.SixthJudge.Value, JudgePodiumType = (int)JudgePodiumType.LeftLeftLeftLeftLeftJudge
                            });

                            break;
                        }

                        vw_CircuitData vw_Circuit = new vw_CircuitData()
                        {
                            AssistantSecretaryID = CircuitConfigurationViewModel.SecretaryAssistant.GetValueOrDefault(),
                            CenterJudgeID        = CircuitConfigurationViewModel.HeadJudge.Value,
                            CircuitName          = CircuitConfigurationViewModel.CircuitName,
                            CircuitStartDate     = Convert.ToDateTime(CircuitConfigurationViewModel.CircuitStartDate),
                            CourtID        = CurrentUser.CourtID.Value,
                            CrimeTypeID    = CircuitConfigurationViewModel.CrimeType.Value,
                            CycleID        = CircuitConfigurationViewModel.Cycle.Value,
                            ID             = CircuitConfigurationViewModel.CircuitID.Value,
                            JudgeCount     = CircuitConfigurationViewModel.JudgeCount.Value,
                            SecretaryID    = CircuitConfigurationViewModel.SecretaryHead.Value,
                            JudgesID       = SelectedJudges,
                            PoliceStations = (from a in CircuitConfigurationViewModel.PoliceStation select a).ToList(),
                        };
                        var AddCircuitResult = CircuitService.EditCircuit(vw_Circuit);
                        switch (AddCircuitResult)
                        {
                        case SaveCircuitStatus.Saved_Successfully:
                            return(RedirectJS(Url.Action("Index")).WithSuccessMessages(Messages.OperationCompletedSuccessfully));

                        case SaveCircuitStatus.Saved_Before:
                            ModelState.AddModelError("CircuitName", JIC.Base.Resources.Messages.CircuitExists);
                            return(CPartialView(GetMainData(CircuitConfigurationViewModel)).WithErrorMessages(Messages.CircuitExists).WithPrefix("Edit"));

                        case SaveCircuitStatus.Judge_Used_Twice:
                            return(CPartialView(GetMainData(CircuitConfigurationViewModel)).WithErrorMessages(Messages.JudgeUsedTwice).WithPrefix("Edit"));

                        case SaveCircuitStatus.Secretary_Used_Twice:
                            return(CPartialView(GetMainData(CircuitConfigurationViewModel)).WithErrorMessages(Messages.SecretaryUsedTwice).WithPrefix("Edit"));

                        case SaveCircuitStatus.Failed_To_Save_Judges:
                            return(CPartialView(CircuitConfigurationViewModel).WithErrorMessages(Messages.OperationNotCompleted).WithPrefix("Edit"));

                        default:
                            return(CPartialView(GetMainData(CircuitConfigurationViewModel)).WithErrorMessages(Messages.OperationNotCompleted).WithPrefix("Edit"));
                        }
                    }
                    else
                    {
                        return(CPartialView(GetMainData(CircuitConfigurationViewModel)).WithPrefix("Edit"));
                    }
                }
                catch (Exception ex)
                {
                    return(ErrorPage(ex));
                }
            }
            else
            {
                ViewData["SessionEnded"] = true;
                return(CPartialView());
            }
        }
예제 #12
0
 public void EditCircuit(vw_CircuitData circuitData)
 {
     CircuitRepository.EditCircuit(circuitData);
 }
예제 #13
0
 public void AddCircuit(vw_CircuitData circuitData, out int CircuitID)
 {
     CircuitRepository.AddCircuit(circuitData, out CircuitID);
 }
 public void EditCircuit(vw_CircuitData circuitData)
 {
     throw new NotImplementedException();
 }
 private CourtConfigurations_Circuits GetObjectFromView(vw_CircuitData circuitData)
 {
     throw new NotImplementedException();
 }