public JsonResult UpdateRequisition([FromBody] RequisitionTemplateViewModel item)
 {
     if (item != null)
     {
         item.CreateUser = User.Identity.Name;
         var updatedItem = DBRequestTemplates.Update(item.ParseToDB());
         if (updatedItem != null)
         {
             item             = updatedItem.ParseToTemplateViewModel();
             item.eReasonCode = 1;
             item.eMessage    = "Registo atualizado com sucesso.";
         }
         else
         {
             item             = new RequisitionTemplateViewModel();
             item.eReasonCode = 2;
             item.eMessage    = "Ocorreu um erro ao atualizar o registo.";
         }
     }
     else
     {
         item             = new RequisitionTemplateViewModel();
         item.eReasonCode = 2;
         item.eMessage    = "Ocorreu um erro: o modelo de requisição não pode ser nulo.";
     }
     return(Json(item));
 }
        public JsonResult CreateRequisition([FromBody] RequisitionTemplateViewModel item)
        {
            if (item != null)
            {
                //Get Numeration
                bool         autoGenId = false;
                Configuração conf      = DBConfigurations.GetById(1);
                int          entityNumerationConfId = conf.NumeracaoModelosRequisicao.Value;

                if (item.RequisitionNo == "" || item.RequisitionNo == null)
                {
                    autoGenId          = true;
                    item.RequisitionNo = DBNumerationConfigurations.GetNextNumeration(entityNumerationConfId, autoGenId, false);
                }
                if (item.RequisitionNo != null)
                {
                    item.CreateUser = User.Identity.Name;
                    var createdItem = DBRequestTemplates.Create(item.ParseToDB());
                    if (createdItem != null)
                    {
                        item = createdItem.ParseToTemplateViewModel();
                        if (autoGenId)
                        {
                            ConfiguraçãoNumerações configNum = DBNumerationConfigurations.GetById(entityNumerationConfId);
                            configNum.ÚltimoNºUsado         = item.RequisitionNo;
                            configNum.UtilizadorModificação = User.Identity.Name;
                            DBNumerationConfigurations.Update(configNum);
                        }
                        item.eReasonCode = 1;
                        item.eMessage    = "Registo criado com sucesso.";
                    }
                    else
                    {
                        item             = new RequisitionTemplateViewModel();
                        item.eReasonCode = 2;
                        item.eMessage    = "Ocorreu um erro ao criar o registo.";
                    }
                }
                else
                {
                    item.eReasonCode = 5;
                    item.eMessage    = "A numeração configurada não é compativel com a inserida.";
                }
            }
            else
            {
                item             = new RequisitionTemplateViewModel();
                item.eReasonCode = 2;
                item.eMessage    = "Ocorreu um erro: o modelo de requisição não pode ser nulo.";
            }
            return(Json(item));
        }
 public JsonResult DeleteRequisition([FromBody] RequisitionTemplateViewModel item)
 {
     if (item != null)
     {
         if (DBRequestTemplates.Delete(item.ParseToDB()))
         {
             item.eReasonCode = 1;
             item.eMessage    = "Registo eliminado com sucesso.";
         }
         else
         {
             item             = new RequisitionTemplateViewModel();
             item.eReasonCode = 2;
             item.eMessage    = "Ocorreu um erro ao eliminar o registo.";
         }
     }
     else
     {
         item             = new RequisitionTemplateViewModel();
         item.eReasonCode = 2;
         item.eMessage    = "Ocorreu um erro: o modelo de requisição não pode ser nulo.";
     }
     return(Json(item));
 }