public JsonResult ValidateNumeration([FromBody] RequisitionTemplateViewModel item)
        {
            //Get Project Numeration
            Configuração conf = DBConfigurations.GetById(1);

            if (conf != null)
            {
                int numRequisitionTemplate = conf.NumeracaoModelosRequisicao.Value;

                ConfiguraçãoNumerações numConf = DBNumerationConfigurations.GetById(numRequisitionTemplate);

                //Validate if id is valid
                if (!(item.RequisitionNo == "" || item.RequisitionNo == null) && !numConf.Manual.Value)
                {
                    return(Json("A numeração configurada para os modelos de requisição não permite inserção manual."));
                }
                else if (item.RequisitionNo == "" && !numConf.Automático.Value)
                {
                    return(Json("É obrigatório inserir o Nº Modelo."));
                }
            }
            else
            {
                return(Json("Não foi possivel obter as configurações base de numeração."));
            }
            return(Json(""));
        }
 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 GetRequisition([FromBody] string id)
        {
            RequisitionTemplateViewModel item;

            if (!string.IsNullOrEmpty(id) && id != "0")
            {
                item = DBRequestTemplates.GetById(id).ParseToTemplateViewModel();
            }
            else
            {
                item = new RequisitionTemplateViewModel();
            }

            return(Json(item));
        }
 public JsonResult UpdateRequisitionLines([FromBody] RequisitionTemplateViewModel item)
 {
     try
     {
         if (item != null && item.Lines != null)
         {
             if (DBRequestTemplateLines.Update(item.Lines.ParseToDB()))
             {
                 item.Lines.ForEach(x => x.Selected = false);
                 item.eReasonCode = 1;
                 item.eMessage    = "Linhas atualizadas com sucesso.";
                 return(Json(item));
             }
         }
     }
     catch (Exception ex)
     {
         //item.eReasonCode = 2;
         //item.eMessage = "Ocorreu um erro ao atualizar as linhas.";
     }
     item.eReasonCode = 2;
     item.eMessage    = "Ocorreu um erro ao atualizar as linhas.";
     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));
 }
Пример #7
0
 public static Requisição ParseToDB(this RequisitionTemplateViewModel item)
 {
     if (item != null)
     {
         return(new Requisição()
         {
             NºRequisição = item.RequisitionNo,
             Área = item.Area,
             //Estado = item.State.HasValue ? (int)item.State.Value : (int?)null,
             Estado = item.State.HasValue ? (int)item.State.Value : (int?)null,
             NºProjeto = item.ProjectNo,
             CódigoRegião = item.RegionCode,
             CódigoÁreaFuncional = item.FunctionalAreaCode,
             CódigoCentroResponsabilidade = item.CenterResponsibilityCode,
             CódigoLocalização = item.LocalCode,
             NºFuncionário = item.EmployeeNo,
             Viatura = item.Vehicle,
             DataReceção = string.IsNullOrEmpty(item.ReceivedDate) ? (DateTime?)null : DateTime.Parse(item.ReceivedDate),
             Urgente = item.Urgent,
             Amostra = item.Sample,
             Anexo = item.Attachment,
             Imobilizado = item.Immobilized,
             CompraADinheiro = item.BuyCash,
             CódigoLocalRecolha = item.LocalCollectionCode,
             CódigoLocalEntrega = item.LocalDeliveryCode,
             Observações = item.Comments,
             ModeloDeRequisição = item.RequestModel,
             UtilizadorCriação = item.CreateUser,
             DataHoraCriação = string.IsNullOrEmpty(item.CreateDate) ? (DateTime?)null : DateTime.Parse(item.CreateDate),
             UtilizadorModificação = item.UpdateUser,
             DataHoraModificação = item.UpdateDate,
             CabimentoOrçamental = item.RelatedSearches,
             Exclusivo = item.Exclusive,
             JáExecutado = item.AlreadyPerformed,
             Equipamento = item.Equipment,
             ReposiçãoDeStock = item.StockReplacement,
             Reclamação = item.Reclamation,
             NºRequisiçãoReclamada = item.RequestReclaimNo,
             ResponsávelCriação = item.ResponsibleCreation,
             ResponsávelAprovação = item.ResponsibleApproval,
             ResponsávelValidação = item.ResponsibleValidation,
             ResponsávelReceção = item.ResponsibleReception,
             DataAprovação = item.ApprovalDate,
             DataValidação = item.ValidationDate,
             UnidadeProdutivaAlimentação = item.UnitFoodProduction,
             RequisiçãoNutrição = item.RequestNutrition,
             RequisiçãoDetergentes = item.RequestforDetergents,
             NºProcedimentoCcp = item.ProcedureCcpNo,
             Aprovadores = item.Approvers,
             MercadoLocal = item.LocalMarket,
             RegiãoMercadoLocal = item.LocalMarketRegion,
             ReparaçãoComGarantia = item.RepairWithWarranty,
             Emm = item.Emm,
             DataEntregaArmazém = string.IsNullOrEmpty(item.WarehouseDeliveryDate) ? (DateTime?)null : DateTime.Parse(item.WarehouseDeliveryDate),
             LocalDeRecolha = item.LocalCollection,
             MoradaRecolha = item.CollectionAddress,
             Morada2Recolha = item.Collection2Address,
             CódigoPostalRecolha = item.CollectionPostalCode,
             LocalidadeRecolha = item.CollectionLocality,
             ContatoRecolha = item.CollectionContact,
             ResponsávelReceçãoRecolha = item.CollectionResponsibleReception,
             LocalEntrega = item.LocalDelivery,
             MoradaEntrega = item.DeliveryAddress,
             Morada2Entrega = item.Delivery2Address,
             CódigoPostalEntrega = item.DeliveryPostalCode,
             LocalidadeEntrega = item.LocalityDelivery,
             ContatoEntrega = item.DeliveryContact,
             ResponsávelReceçãoReceção = item.ResponsibleReceptionReception,
             NºFatura = item.InvoiceNo,
             DataMercadoLocal = item.LocalMarketDate,
             // EstimatedValue = item.,
             NºConsultaMercado = item.MarketInquiryNo,
             NºEncomenda = item.OrderNo,
             DataRequisição = item.RequisitionDate != null && item.RequisitionDate != "" ? DateTime.Parse(item.RequisitionDate) : (DateTime?)null,
             //dimension = item.,
             //Budget = item.,
             LinhasRequisição = item.Lines.ParseToDB(),
         });
     }
     return(null);
 }