public virtual JsonResult LoadOutcomesDelays(DelaysEditModel ModelDelay)
        {
            var ListOutComesDelays = ClientDelayArchievementRepository.GetListOutComes(ModelDelay.OperationNumber).ToList();

            return(new JsonResult()
            {
                Data = ListOutComesDelays
            });
        }
        public virtual JsonResult LoadTypeDelays(DelaysEditModel ModelDelay)
        {
            var ListTypeDelays = ClientDelayArchievementRepository.GetTypesDelay(Language.EN).ToList();

            return(new JsonResult()
            {
                Data = ListTypeDelays
            });
        }
        public virtual ActionResult DelaysEdit(DelaysEditModel modelDelayModel, int[] deletedDelaysAchievement, int[] deletedDelaysOther)
        {
            bool StateRequest           = true;
            bool StateSaveUpdate        = true;
            bool StateDeleteAchievement = true;
            bool StateDeleteOther       = true;

            var NewModelOther = modelDelayModel.OtherDelays.Where(x => x.DelayName != null);

            modelDelayModel.OtherDelays = NewModelOther.ToList();

            if (!ClientDelayArchievementRepository.SaveDelays(modelDelayModel))
            {
                StateRequest    = false;
                StateSaveUpdate = false;
            }

            if (deletedDelaysAchievement != null)
            {
                if (deletedDelaysAchievement.Count() > 0)
                {
                    if (!ClientDelayArchievementRepository.DeleteAchievement(deletedDelaysAchievement))
                    {
                        StateRequest           = false;
                        StateDeleteAchievement = false;
                    }
                }
            }

            if (deletedDelaysOther != null)
            {
                if (deletedDelaysOther.Count() > 0)
                {
                    if (!ClientDelayArchievementRepository.DeleteOtherDelay(deletedDelaysOther))
                    {
                        StateRequest     = false;
                        StateDeleteOther = false;
                    }
                }
            }

            if (StateRequest == false)
            {
                if (StateDeleteAchievement == false && StateSaveUpdate == false && StateDeleteOther == false)
                {
                    return(RedirectToAction("DetailsDelays", new { operationNumber = modelDelayModel.OperationNumber, State = 605 }));
                }
                else if (StateSaveUpdate == false)
                {
                    return(RedirectToAction("DetailsDelays", new { operationNumber = modelDelayModel.OperationNumber, State = 605 }));
                }
                else if (StateDeleteAchievement == false)
                {
                    return(RedirectToAction("DetailsDelays", new { operationNumber = modelDelayModel.OperationNumber, State = 605 }));
                }
                else if (StateDeleteOther == false)
                {
                    return(RedirectToAction("DetailsDelays", new { operationNumber = modelDelayModel.OperationNumber, State = 605 }));
                }
            }

            return(RedirectToAction("DetailsDelays", new { operationNumber = modelDelayModel.OperationNumber, State = 604 }));
        }