Ejemplo n.º 1
0
        public ReturnAction Save(TipoContatoModel model, Guid id)
        {
            ReturnAction retorno = new ReturnAction();

            var sit = db.TipoContato.AsNoTracking().Where(w => w.Id == model.Id);

            if (sit.Any())
            {
                retorno.Mensagens.Add("O indexador do item já está cadastrado.");
            }
            else
            {
                var obj = new TipoContato(id, model.Nome);

                if (!obj.EhValido())
                {
                    foreach (var item in obj.Get)
                    {
                        retorno.Mensagens.Add(item.Value);
                    }
                }
                else
                {
                    db.Entry(obj).State = EntityState.Added;
                    db.SaveChanges();
                }
            }

            return(retorno);
        }
Ejemplo n.º 2
0
        protected ActionResult ExecuteRepositoryAction(Action dataFunction, ReturnAction onSuccess, ReturnAction onError = null)
        {
            try
            {
                dataFunction();
                if (onSuccess != null)
                {
                    return(onSuccess());
                }
                throw new ApplicationException("Method ExecuteRepositoryAction : onSuccess method has not been defined");
            }
            catch (DataException de)
            {
                ModelState.AddModelError("", "Data error: " + de.Message + (de.InnerException == null ? " " : "Inner Exception : " + de.InnerException.Message));
            }


            if (Request.IsAjaxRequest())
            {
                return(AjaxErrorReturn());
            }
            else
            {
                if (onError != null)
                {
                    return(onError());
                }
                throw new ApplicationException("Method ExecuteRepositoryAction : onError Method has not been defined");
            }
        }
Ejemplo n.º 3
0
        public ReturnAction Save(Guid idUser, IndexViewModel model)
        {
            var retorno = new ReturnAction();

            var obj = db.Users.AsNoTracking().Where(w => w.Id == idUser).FirstOrDefault();

            if (obj == null)
            {
                retorno.Mensagens.Add("Usuário não encontrado");
            }
            else if (!CpfDocumentValid(model.NumDocument))
            {
                retorno.Mensagens.Add("CPF inválido");
            }

            if (!retorno.Valido)
            {
                return(retorno);
            }

            obj.Name        = tCase.ToTitleCase(model.Name);
            obj.NumDocument = model.NumDocument;
            obj.Email       = model.Email.ToLower();

            db.Entry(obj).State = EntityState.Modified;
            db.SaveChanges();

            return(retorno);
        }
Ejemplo n.º 4
0
		public void SetsReturnValueOfInvocation()
		{
			object result = new NamedObject("result");
			ReturnAction action = new ReturnAction(result);

			Assert.AreSame(result, ResultOfAction(action), "result");
		}
Ejemplo n.º 5
0
		public void HasAReadableDescription()
		{
			object result = new NamedObject("result");
			ReturnAction action = new ReturnAction(result);

			AssertDescription.IsEqual(action, "return <result>(NMockTests.NamedObject)");
		}
Ejemplo n.º 6
0
        public ReturnAction Save(SituacaoModel model, Guid id)
        {
            ReturnAction retorno = new ReturnAction();

            var sel = new SituacaoSelect();

            var area = sel.GetById(model.Id);

            if (area != null)
            {
                var validations = sel.GetByName(model.Nome);
                if (validations != null && validations.Id != model.Id)
                {
                    retorno.Mensagens.Add("Nome ja cadastrado na base");
                }
            }
            else
            {
                retorno.Mensagens.Add("Situacao não encontrada");
            }

            if (retorno.Valido)
            {
                area.ChangeEntity(model.Nome, model.Delete);
                db.Entry(area).State = EntityState.Modified;
                db.SaveChanges();
            }

            return(retorno);
        }
Ejemplo n.º 7
0
        public ValueTask DisposeAsync()
        {
            ReturnAction?.Invoke(Object);

            if (ReturnTask != null)
            {
                return(new ValueTask(ReturnTask(Object)));
            }

            return(new ValueTask(Task.FromResult <object>(null)));
        }
 /// <summary>
 /// Выполнить действие над элементами последовательности до тех пор, пока выполняется условие, заданное предикатом
 /// </summary>
 /// <typeparam name="TItem">элемент</typeparam>
 /// <param name="originalItems">последовательность элементов</param>
 /// <param name="action">действие</param>
 public static void While <TItem>(this IEnumerable <TItem> originalItems,
                                  ReturnAction <TItem, bool> action)
 {
     foreach (var it in originalItems)
     {
         if (action(it) == false)
         {
             break;
         }
     }
 }
Ejemplo n.º 9
0
        public static T GetCachedObjectInternal <T>(string cacheId, ReturnAction <T> action, TimeSpan timeSpan)
        {
            T obj = GetCachedObject <T>(cacheId);

            if (obj == null)
            {
                obj = action();
                SetCachedObject(cacheId, obj, timeSpan);
            }
            return(obj);
        }
Ejemplo n.º 10
0
        public ReturnAction Save(AdvogadoEnderecoModel model, Guid idUser)
        {
            ReturnAction retorno = new ReturnAction();

            var obj = new AdvogadoEnderecoSelect().GetById(model.IdEnd, idUser);

            if (obj == null)
            {
                retorno.Mensagens.Add("Endereço não encontrado");
                return(retorno);
            }

            if (!model.Delete && model.IdGeoCep == 0) // SE O CEP NÃO EXISTIR SERÁ CRIADO
            {
                var cep = new GeoCep(idUser, model.CodCep, model.Logradouro, model.Bairro, model.IdEndGeoCidade, model.IdEndGeoEstado);

                if (!cep.EhValido())
                {
                    foreach (var item in cep.Get)
                    {
                        retorno.Mensagens.Add(item.Value);
                    }
                }
                else
                {
                    db.Entry(cep).State = EntityState.Added;
                    db.SaveChanges();

                    model.IdGeoCep = cep.Id;
                }
            }

            obj.ChangeEntity(idUser, model.IdAdvogado, model.IdTipoEndereco, model.IdGeoCep, model.Numero, model.Complemento, model.Delete);

            if (!retorno.Valido)
            {
                return(retorno);
            }

            if (!obj.EhValido())
            {
                foreach (var item in obj.Get)
                {
                    retorno.Mensagens.Add(item.Value);
                }
                return(retorno);
            }

            db.Entry(obj).State = EntityState.Modified;
            db.SaveChanges();

            return(retorno);
        }
Ejemplo n.º 11
0
        private void ExecuteResultAction(string buttomParameter)
        {
            if (buttomParameter.Equals("Repetir"))
            {
                RedoAction?.Invoke();
            }

            else if (buttomParameter.Equals("Retornar"))
            {
                ReturnAction?.Invoke();
            }
        }
Ejemplo n.º 12
0
		/// <summary>
		/// Initializes static members of the <see cref="ResultSynthesizer"/> class.
		/// </summary>
		static ResultSynthesizer()
		{
			defaultResults[typeof(string)] = new ReturnAction(String.Empty);
/* ^ */
#if !SILVERLIGHT && !NETCORE
/* [email protected] ^ */
			defaultResults[typeof(ArrayList)] = new ReturnCloneAction(new ArrayList());
			defaultResults[typeof(SortedList)] = new ReturnCloneAction(new SortedList());
			defaultResults[typeof(Hashtable)] = new ReturnCloneAction(new Hashtable());
			defaultResults[typeof(Queue)] = new ReturnCloneAction(new Queue());
			defaultResults[typeof(Stack)] = new ReturnCloneAction(new Stack());
#endif
		}
Ejemplo n.º 13
0
        public static ReturnProcessTemplate Create(ReturnAction returnAction)
        {
            switch (returnAction)
            {
            case ReturnAction.FaultyReturn:
                return(new FaultyReturnProcess());

            case ReturnAction.NoQuibblesReturn:
                return(new NoQuibblesReturnProcess());

            default:
                return(null);
            }
        }
Ejemplo n.º 14
0
        public static ReturnProcessTemplate CreateFrom(ReturnAction returnAction)
        {
            switch (returnAction)
            {
            case ReturnAction.FaultyReturn:
                return(new FaultyReturnProcess());

            case ReturnAction.NoQuibblesReturn:
                return(new NoQuibblesReturnProcess());

            default:
                throw new ApplicationException("No process template");
            }
        }
Ejemplo n.º 15
0
 /// <summary>
 /// </summary>
 /// <typeparam name="T"></typeparam>
 /// <param name="container"></param>
 /// <param name="action"> 返回值为bool的方法。返回true,表示Foreach不再继续。否则继续。</param>
 public static void ForeachControls <T>(Control container, ReturnAction <bool, T> action) where T : Control
 {
     foreach (Control c in container.Controls)
     {
         if (c is T)
         {
             bool isStop = action((T)c);
             if (isStop)
             {
                 return;
             }
         }
         ForeachControls <T>(c, action);
     }
 }
Ejemplo n.º 16
0
        /// <summary>
        /// 根据枚举类型创建对应的退货类
        /// </summary>
        /// <param name="ReturnAction"></param>
        /// <returns></returns>
        public static ReturnProcessTemplate CreateFrom(ReturnAction ReturnAction)
        {
            switch (ReturnAction)
            {
            case (ReturnAction.FaultyReturn):
                return(new FaultyReturnProcess());

            case (ReturnAction.NoQuibblesReturn):
                return(new NoQuibblesReturnProcess());

            default:
                throw new ApplicationException("No Process Template defined for Return Action of " +
                                               ReturnAction.ToString());
            }
        }
Ejemplo n.º 17
0
        public ReturnAction SaveAvatar(AdvogadoAvatarModel model, Guid id)
        {
            var retorno = new ReturnAction();

            var obj = new AdvogadoSelect().Get(model.Id, id);

            if (obj == null)
            {
                retorno.Mensagens.Add("Advogado não encontrado");
            }

            if (!retorno.Valido)
            {
                return(retorno);
            }

            var oldImage = obj.Foto;

            obj.ChangeAvatar($"{ Guid.NewGuid().ToString() }{ model.IFoto.FileName.Substring(model.IFoto.FileName.LastIndexOf(".")) }");

            if (!Directory.Exists($"{ Directory.GetCurrentDirectory() }\\wwwroot\\images\\Avatar"))
            {
                Directory.CreateDirectory($"{ Directory.GetCurrentDirectory() }\\wwwroot\\images\\Avatar");
            }

            var directoryRoot = $"{ Directory.GetCurrentDirectory() }\\wwwroot\\images\\Avatar";
            var memoryStream  = new MemoryStream();

            model.IFoto.CopyToAsync(memoryStream);

            FileStream file = new FileStream($"{ directoryRoot }\\{ obj.Foto }", FileMode.Create, FileAccess.Write);

            memoryStream.WriteTo(file);
            file.Close();
            memoryStream.Close();

            db.Entry(obj).State = EntityState.Modified;
            db.SaveChanges();

            if (File.Exists($"{ directoryRoot }\\{ oldImage }"))
            {
                File.Delete($"{ directoryRoot }\\{ oldImage }");
            }

            retorno.objRetorno = obj.Foto;

            return(retorno);
        }
        /// <summary>
        /// проверяет наличия элемента в группе, у которого значение свойства
        /// , имя которого определено вторым аргументом метода
        /// , равно значению, определяемого третьим аргументом
        /// </summary>
        /// <param name="group">группа элементов</param>
        /// <param name="propName">имя свойства</param>
        /// <param name="value">значение</param>
        /// <param name="recursive"><c>true</c>, ресурсивный обход элементов, если элемент является также группой</param>
        /// <param name="comparer">функция сравнения значений</param>
        /// <param name="contains">дополнительная функция обхода элементов у негруппового объекта</param>
        /// <returns></returns>
        public static bool ContainsByPropName(IBaseGroup group, string propName, object value,
                                              bool recursive = false, ReturnAction <object, object, bool> comparer = null,
                                              ReturnAction <object, object, bool> contains = null)
        {
            if (group == null)
            {
                ExceptionGenerator.Run <NullReferenceException>("Группа не определена");
            }

            if (group is IGroupObject)
            {
                var groupObject = group as IGroupObject;
                if (groupObject.Group != null)
                {
                    foreach (var obj in groupObject.Group)
                    {
                        if (IsObjectHavingValue(obj, propName, value, recursive, comparer, contains))
                        {
                            return(true);
                        }
                    }
                }
            }
            else if (group is IGroupOfOne)
            {
                var groupOfOne = group as IGroupOfOne;
                if (groupOfOne.Element != null)
                {
                    if (IsObjectHavingValue(groupOfOne.Element, propName, value, recursive, comparer, contains))
                    {
                        return(true);
                    }
                }
            }
            else if (group is IGroup)
            {
                var group__ = group as IGroup;
                foreach (var obj in group__)
                {
                    if (IsObjectHavingValue(obj, propName, value, recursive, comparer, contains))
                    {
                        return(true);
                    }
                }
            }
            return(false);
        }
        /// <summary>
        /// проверяет наличия элемента в группе, у которого значение свойства
        /// , имя которого определено вторым аргументом метода
        /// , равно значению, определяемого третьим аргументом
        /// </summary>
        /// <param name="group">группа элементов</param>
        /// <param name="propName">имя свойства</param>
        /// <param name="value">значение</param>
        /// <param name="recursive"><c>true</c>, ресурсивный обход элементов, если элемент является также группой</param>
        /// <param name="comparer">функция сравнения значений</param>
        /// <param name="contains">дополнительная функция обхода элементов у негруппового объекта</param>
        /// <returns></returns>
        public static bool ContainsByPropName(IEnumerable group, string propName, object value,
                                              bool recursive = false, ReturnAction <object, object, bool> comparer = null,
                                              ReturnAction <object, object, bool> contains = null)
        {
            if (group == null)
            {
                ExceptionGenerator.Run <NullReferenceException>("Последовательность не определена");
            }

            foreach (var obj in group)
            {
                if (IsObjectHavingValue(obj, propName, value, recursive, comparer, contains))
                {
                    return(true);
                }
            }
            return(false);
        }
Ejemplo n.º 20
0
        public ReturnAction Save(AdvogadoContatoModel model, Guid idUser)
        {
            ReturnAction retorno = new ReturnAction();

            var obj = new AdvogadoContato(idUser, model.IdAdvogado, model.IdTipoContato, model.Contato);

            if (!obj.EhValido())
            {
                foreach (var item in obj.Get)
                {
                    retorno.Mensagens.Add(item.Value);
                }
                return(retorno);
            }

            db.Entry(obj).State = EntityState.Added;
            db.SaveChanges();

            return(retorno);
        }
Ejemplo n.º 21
0
        public static void Message(object sender, string message, object arguments, ReturnAction OnEnd = null)
        {
            LogHelper.cat("GlobalBus", "Message: " + message);
            List <Object> results = new List <object>();
            Thread        th      = new Thread(delegate()
            {
                for (int cont = 0; cont < GlobalBus.observers.Count; cont++)
                {
                    if (((GlobalBus.observers[cont].Filter == null) && (GlobalBus.observers[cont].reg == null)) || (GlobalBus.observers[cont].validateMessage(message)))
                    {
                        try {
                            object ret = GlobalBus.observers[cont].observerMessage.Invoke(sender, message, arguments);
                            if ((OnEnd != null) && (ret != null))
                            {
                                if (ret is IEnumerable <object> )
                                {
                                    foreach (object cObject in (IEnumerable <object>)ret)
                                    {
                                        results.Add(cObject);
                                    }
                                }
                                else
                                {
                                    results.Add(ret);
                                }
                            }
                        } catch { }
                    }
                }

                if (OnEnd != null)
                {
                    OnEnd(results);
                }
            });

            th.Start();
        }
Ejemplo n.º 22
0
        public ReturnAction Save(AdvogadoContatoModel model, Guid idUser)
        {
            ReturnAction retorno = new ReturnAction();

            var obj = new AdvogadoContatoSelect().Get(model.Id, idUser);

            if (obj == null)
            {
                retorno.Mensagens.Add("Contato não encontrado");
            }

            if (!retorno.Valido)
            {
                return(retorno);
            }

            obj.ChangeEntity(idUser, model.IdAdvogado, model.IdTipoContato, model.Contato, model.Delete);

            if (!obj.EhValido())
            {
                foreach (var item in obj.Get)
                {
                    retorno.Mensagens.Add(item.Value);
                }
            }

            if (!retorno.Valido)
            {
                return(retorno);
            }

            db.Entry(obj).State = EntityState.Modified;
            db.SaveChanges();

            return(retorno);
        }
Ejemplo n.º 23
0
        public void ProcessMonsterFile(string MonsterFile)
        {
            log.Info("Processing Monster File");

            try
            {
                var           columnList = string.Empty;
                var           summary    = new ERISSummary();
                var           fileReader = new FileReader();
                var           validate   = new ValidateMonster(lookups);
                var           em         = new EmployeeMapping();
                var           save       = new SaveData();
                List <string> badRecords;
                var           persID      = 0;
                var           sponsorship = "";

                var monsterAction = "";

                log.Info("Loading Monster File");

                var MonsterData = fileReader.GetFileData <Employee, EmployeeMapping>(MonsterFile, out badRecords, em);

                ProcessResult updatedResults;

                //Start Processing the Monster Data
                foreach (Employee employeeData in MonsterData)
                {
                    log.Info("Processing Data: " + employeeData.Person.MonsterID);

                    //If there are critical errors write to the error summary and move to the next record
                    log.Info("Checking for Critical errors for user: "******"Loading GCIMS Data");
                    var allGCIMSUpdatedData = retrieve.AllGCIMSUpdatedData(employeeData);
                    var allGCIMSFlaggedData = retrieve.AllGCIMSFlaggeddData(employeeData);

                    employeeData.Person.Name = employeeData.Person.FirstName + " " + employeeData.Person.MiddleName + " " + employeeData.Person.LastName + " " + employeeData.Person.Suffix;

                    //Looking for matching record.
                    log.Info("Looking for matching record: " + employeeData.Person.MonsterID);
                    ReturnAction  action  = new ReturnAction();
                    ReturnRecords records = new ReturnRecords();
                    monsterAction = action.MonsterAction(employeeData);


                    switch (monsterAction)
                    {
                    case "Update Record":
                        if (!Helpers.AreEqualGcimsToMonster1(allGCIMSUpdatedData.FirstOrDefault(), employeeData, out columnList, ref log))
                        {
                            log.Info("Update record for user: "******"Update record for user: "******"Potential Match":
                        if (!Helpers.AreEqualGcimsToMonster2(allGCIMSFlaggedData.FirstOrDefault(), employeeData, out columnList, ref log))
                        {
                            log.Info("Flagged record for user: "******"New Record":
                        log.Info("Create record for user: "******"Total records " + String.Format("{0:#,###0}", MonsterData.Count));
                log.Info("Records created: " + String.Format("{0:#,###0}", summary.CreatedRecordsProcessed.Count));
                log.Info("Records updated: " + String.Format("{0:#,###0}", summary.UpdatedRecordsProcessed.Count));
                log.Info("Records flagged: " + String.Format("{0:#,###0}", summary.FlaggedRecordsProcessed.Count));
                log.Info("Records Invalid: " + String.Format("{0:#,###0}", summary.UnsuccessfulProcessed.Count));

                summary.GenerateSummaryFiles(emailData);
            }
            //Catch all errors

            catch (Exception ex)
            {
                log.Error("Process Monster File Error:" + ex.Message + " " + ex.InnerException + " " + ex.StackTrace);
            }
        }
Ejemplo n.º 24
0
 internal CustomTextBox()
 {
     ReturnActionType = ReturnAction.InsertCR;
 }
Ejemplo n.º 25
0
        public bool KeyDown(Key key)
        {
            if (listBox?.KeyDown(key) == true)
            {
                return(true);
            }

            // Note: Key may remove inputs or close the popup.
            for (int i = inputs.Count - 1; i >= 0; --i)
            {
                if (i >= inputs.Count)
                {
                    continue;
                }

                if (inputs[i].KeyDown(key))
                {
                    return(true);
                }
            }

            if (scrollbar != null && !scrollbar.Disabled)
            {
                int scrollOffset = scrollbar.ScrollOffset;

                switch (key)
                {
                case Key.Up:
                    if (scrollOffset > 0)
                    {
                        ScrollTo(scrollOffset - 1);
                    }
                    return(true);

                case Key.Down:
                    if (scrollOffset < scrollbar.ScrollRange)
                    {
                        ScrollTo(scrollOffset + 1);
                    }
                    return(true);

                case Key.PageUp:
                    if (scrollOffset > 0)
                    {
                        ScrollTo(Math.Max(0, scrollOffset - 5));
                    }
                    return(true);

                case Key.PageDown:
                    if (scrollOffset < scrollbar.ScrollRange)
                    {
                        ScrollTo(Math.Min(scrollbar.ScrollRange, scrollOffset + 5));
                    }
                    return(true);

                case Key.Home:
                    ScrollTo(0);
                    return(true);

                case Key.End:
                    ScrollTo(scrollbar.ScrollRange);
                    return(true);
                }
            }

            if (key == Key.Return && ReturnAction != null)
            {
                ReturnAction?.Invoke();
                return(true);
            }

            if (key == Key.Escape && CanAbort)
            {
                game.ClosePopup();
                return(true);
            }

            if (key == Key.Up || key == Key.PageUp || key == Key.Home)
            {
                var upButton = buttons.FirstOrDefault(button => button.ButtonType == Data.Enumerations.ButtonType.MoveUp);

                if (upButton != null)
                {
                    upButton.PressImmediately(game, key == Key.PageUp || key == Key.Home);
                    return(true);
                }
            }

            if (key == Key.Down || key == Key.PageDown || key == Key.End)
            {
                var downButton = buttons.FirstOrDefault(button => button.ButtonType == Data.Enumerations.ButtonType.MoveDown);

                if (downButton != null)
                {
                    downButton.PressImmediately(game, key == Key.PageDown || key == Key.End);
                    return(true);
                }
            }

            return(false);
        }
Ejemplo n.º 26
0
 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(ReturnAction obj)
 {
     return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr);
 }
Ejemplo n.º 27
0
 private void OnPostNewOpinion()
 {
     (App.Current as App).PopNavigation();
     ReturnAction?.Invoke(NewOpinion);
 }
        private static bool IsObjectHavingValue(object obj, string propName, object value,
                                                bool recursive = false, ReturnAction <object, object, bool> comparer = null,
                                                ReturnAction <object, object, bool> contains = null)
        {
            if (obj == null)
            {
                return(false);
            }
            var    propertyInfo = obj.GetFlattenProperty(propName);
            object propVal      = null;

            if (propertyInfo != null)
            {
                propVal = obj.GetPropertyValue(propertyInfo, ObjectExtensions.AccessAttr.Public);
            }
            else
            {
                var fieldInfo = obj.GetFlattenField(propName);
                if (fieldInfo != null)
                {
                    propVal = obj.GetFieldValue(fieldInfo);
                }
            }

            if (propVal != null)
            {
                if (comparer != null)
                {
                    if (comparer(propVal, value))
                    {
                        return(true);
                    }
                }
                else
                {
                    if (ObjectExtensions.IsEqual(value, propVal))
                    {
                        return(true);
                    }
                }
            }
            if (recursive)
            {
                if (obj is IBaseGroup)
                {
                    if (ContainsByPropName(obj as IBaseGroup, propName, value, recursive, comparer, contains))
                    {
                        return(true);
                    }
                }
                else if (obj is IEnumerable)
                {
                    if (ContainsByPropName(obj as IEnumerable, propName, value, recursive, comparer, contains))
                    {
                        return(true);
                    }
                }
            }
            if (contains != null)
            {
                if (contains(obj, value))
                {
                    return(true);
                }
            }
            return(false);
        }
Ejemplo n.º 29
0
    void DealWithInput(GameObject inputField, string val, ReturnAction rA)
    {
        int value;
        if (Input.GetKeyDown("return")){
            if(int.TryParse(val, out value)){
            //	inputField.SetActive(false);
                rA(inputField,(int)value);
            }
            else{
                print(val+" is not a number");

            }
        }
    }
Ejemplo n.º 30
0
        public ReturnAction Save(AdvogadoModel model, Guid id)
        {
            ReturnAction retorno = new ReturnAction();

            int idSituacao = 0, idAreaAtuacao = 0;

            if (!model.Delete)
            {
                if (string.IsNullOrEmpty(model.ListSituacao))
                {
                    retorno.Mensagens.Add($"A Situação não foi informada");
                }
                else
                {
                    foreach (var item in model.ListSituacao.Split("-"))
                    {
                        if (!int.TryParse(item, out idSituacao) || new SituacaoSelect().GetById(idSituacao) == null)
                        {
                            retorno.Mensagens.Add($"Situação não encontrada");
                            break;
                        }
                    }
                }

                if (!string.IsNullOrEmpty(model.ListAreaAtuacao))
                {
                    foreach (var item in model.ListAreaAtuacao.Split("-"))
                    {
                        if (!int.TryParse(item, out idAreaAtuacao) || new AreaAtuacaoSelect().GetById(idAreaAtuacao) == null)
                        {
                            retorno.Mensagens.Add($"Área de Atuação não encontrada");
                            break;
                        }
                    }
                }
            }

            var obj = new AdvogadoSelect().Get(model.Id, id);

            if (obj == null)
            {
                retorno.Mensagens.Add("Advogado não encontrado");
            }

            if (retorno.Valido)
            {
                obj.ChangeEntity(model.IdGeoCidade, model.Nome, model.NumOrdem, model.NomePai, model.NomeMae, model.DateInscricaoOAB, model.DateAtualizacao, model.Delete);

                foreach (var item in obj.Get)
                {
                    retorno.Mensagens.Add(item.Value);
                }
            }
            else
            {
                return(retorno);
            }

            db.Entry(obj).State = EntityState.Modified;
            db.SaveChanges();

            new AdvogadoSituacaoDelete().DeleteAll(model.Id);
            if (!model.Delete)
            {
                foreach (var item in model.ListSituacao.Split("-"))
                {
                    var sit = new AdvogadoSituacao(id, obj.Id, Convert.ToInt32(item));
                    if (sit.EhValido())
                    {
                        db.Entry(sit).State = EntityState.Added;
                    }
                }
            }

            new AdvogadoAreaAtuacaoDelete().DeleteAll(model.Id);
            if (!model.Delete && !string.IsNullOrEmpty(model.ListAreaAtuacao))
            {
                foreach (var item in model.ListAreaAtuacao.Split("-"))
                {
                    var sit = new AdvogadoAreaAtuacao(id, obj.Id, Convert.ToInt32(item));
                    if (sit.EhValido())
                    {
                        db.Entry(sit).State = EntityState.Added;
                    }
                }
            }

            if (!model.Delete)
            {
                db.SaveChanges();
            }

            retorno.objRetorno = obj.Id;

            return(retorno);
        }
Ejemplo n.º 31
0
        public void Dispose()
        {
            ReturnAction?.Invoke(Object);

            ReturnTask?.Invoke(Object).Wait();
        }
Ejemplo n.º 32
0
        public ReturnAction Save(AdvogadoModel model, Guid id)
        {
            ReturnAction retorno = new ReturnAction();

            int idSituacao = 0, idAreaAtuacao = 0;

            if (!string.IsNullOrEmpty(model.ListSituacao))
            {
                foreach (var item in model.ListSituacao.Split("-"))
                {
                    if (!int.TryParse(item, out idSituacao) || new SituacaoSelect().GetById(idSituacao) == null)
                    {
                        retorno.Mensagens.Add($"Situação não encontrada");
                        break;
                    }
                }
            }

            if (!string.IsNullOrEmpty(model.ListAreaAtuacao))
            {
                foreach (var item in model.ListAreaAtuacao.Split("-"))
                {
                    if (!int.TryParse(item, out idAreaAtuacao) || new AreaAtuacaoSelect().GetById(idAreaAtuacao) == null)
                    {
                        retorno.Mensagens.Add($"Área de Atuação não encontrada");
                        break;
                    }
                }
            }

            var obj = new Advogado(id, model.IdGeoCidade, model.Nome, model.NumOrdem, model.IFoto, model.NomePai, model.NomeMae, model.DateInscricaoOAB, model.DateAtualizacao);

            foreach (var item in obj.Get)
            {
                retorno.Mensagens.Add(item.Value);
            }

            if (!retorno.Valido)
            {
                return(retorno);
            }

            db.Entry(obj).State = EntityState.Added;
            db.SaveChanges();

            //foto não é obrigatoria
            if (model.IFoto != null)
            {
                var directoryRoot = $"{ Directory.GetCurrentDirectory() }\\wwwroot\\images\\Avatar";
                var memoryStream  = new MemoryStream();
                model.IFoto.CopyToAsync(memoryStream);

                FileStream file = new FileStream($"{ directoryRoot }\\{ obj.Foto }", FileMode.Create, FileAccess.Write);
                memoryStream.WriteTo(file);
                file.Close();
                memoryStream.Close();
            }

            if (!string.IsNullOrEmpty(model.ListSituacao))
            {
                foreach (var item in model.ListSituacao.Split("-"))
                {
                    var sit = new AdvogadoSituacao(id, obj.Id, Convert.ToInt32(item));
                    if (sit.EhValido())
                    {
                        db.Entry(sit).State = EntityState.Added;
                    }
                }
            }

            if (!string.IsNullOrEmpty(model.ListAreaAtuacao))
            {
                foreach (var item in model.ListAreaAtuacao.Split("-"))
                {
                    var sit = new AdvogadoAreaAtuacao(id, obj.Id, Convert.ToInt32(item));
                    if (sit.EhValido())
                    {
                        db.Entry(sit).State = EntityState.Added;
                    }
                }
            }

            if (!string.IsNullOrEmpty(model.ListSituacao) || !string.IsNullOrEmpty(model.ListAreaAtuacao))
            {
                db.SaveChanges();
            }

            retorno.objRetorno = obj.Id;

            return(retorno);
        }