Example #1
0
 public void AgregarDetalleSeguimientos()
 {
     try
     {
         DView.GetItem();
         if (ItemDet_Seguimientos.Validar())
         {
             if (ItemDet_Seguimientos.Instance == InstanceEntity.Added)
             {
                 ItemsDet_Seguimientos.Add(ItemDet_Seguimientos);
             }
             Int32 fila = 0;
             foreach (var item in ItemsDet_Seguimientos)
             {
                 fila++; item.Item = fila;
             }
             MView.ShowItemsDetalles();
             DView.CerrarVenta();
         }
         else
         {
             DView.ShowValidation();
         }
     }
     catch (Exception ex)
     { Dialogos.MostrarMensajeError(Title, Mensajes.NewPresenter, ex); }
 }
Example #2
0
 public void AgregarDetalleTarjas()
 {
     try
     {
         DView.GetItem();
         if (ItemDet_Tarjas.Validar())
         {
             MView.ShowItemsDetalleTarjas();
             DView.CerrarVenta();
         }
         else
         {
             DView.ShowValidation();
         }
     }
     catch (Exception ex)
     { Dialogos.MostrarMensajeError(Title, Mensajes.NewPresenter, ex); }
 }
Example #3
0
        public void AgregarDetalleTarifario()
        {
            try
            {
                if (TipoTarifa.Equals("L"))
                {
                    if (InstanciaDet_Tarifa == InstanceView.Edit)
                    {
                        if (ItemDET_Tarifa.DTAR_Item > 0)
                        {
                            //ItemsDet_Tarifa.Remove(ItemDET_Tarifa);
                            ItemDET_Tarifa.Instance    = InstanceEntity.Modified;
                            ItemDET_Tarifa.AUDI_UsrMod = Session.UserName;
                        }
                        else
                        {
                            while (ItemsDet_Tarifa.FirstOrDefault(tipo => tipo.CTAR_Tipo == TipoTarifa && tipo.TIPE_Codigo == ItemDET_Tarifa.TIPE_Codigo && tipo.ENTC_Codigo == ItemDET_Tarifa.ENTC_Codigo) != null)
                            {
                                var item = ItemsDet_Tarifa.FirstOrDefault(tipo => tipo.CTAR_Tipo == TipoTarifa && tipo.TIPE_Codigo == ItemDET_Tarifa.TIPE_Codigo && tipo.ENTC_Codigo == ItemDET_Tarifa.ENTC_Codigo);
                                ItemsDet_Tarifa.Remove(item);
                            }
                        }
                        ItemsGrillaDet_Tarifa.Remove(ItemDET_Tarifa);

                        //continuar:
                        //foreach (var item in ItemsDet_Tarifa)
                        //{
                        //    if (ItemDET_Tarifa.DTAR_Fila == item.DTAR_Fila)
                        //    {
                        //        if (item.DTAR_Item > 0)
                        //        {
                        //            item.Instance = InstanceEntity.Deleted;
                        //        }
                        //        else
                        //        {
                        //            ItemsDet_Tarifa.Remove(item);
                        //            goto continuar;
                        //        }
                        //    }
                        //}
                    }
                    else
                    {
                        ItemDET_Tarifa.Instance     = InstanceEntity.Added;
                        ItemDET_Tarifa.AUDI_UsrCrea = Session.UserName;
                    }
                    //ItemDET_Tarifa = new Det_Tarifa
                    //{
                    //    AUDI_UsrCrea = Session.UserName,
                    //    AUDI_FecCrea = Session.Fecha,
                    //    Instance = InstanceEntity.Added
                    //};
                    DView.GetItem();
                    if (ItemDET_Tarifa.Validar())
                    {
                        if (ItemsDet_Tarifa != null && ItemsDet_Tarifa.Count > 0)
                        {
                            if (ItemDET_Tarifa.TIPE_Codigo != null && ItemDET_Tarifa.TIPE_Codigo.Value.ToString(CultureInfo.InvariantCulture).Equals("13")) //maritimo
                            {
                                const short tipeCodigo = 13;
                                if (ItemsGrillaDet_Tarifa.Count(tipo => tipo.TIPE_Codigo != null && tipo.TIPE_Codigo.Value == tipeCodigo) > 0)
                                {
                                    Dialogos.MostrarMensajeInformacion(Title, "No puede haber mas de un agente maritimo."); return;
                                }
                            }
                            else
                            {
                                if (ItemsGrillaDet_Tarifa.Any(entCodigo => entCodigo.ENTC_Codigo == ItemDET_Tarifa.ENTC_Codigo && entCodigo.TIPE_Codigo == ItemDET_Tarifa.TIPE_Codigo && entCodigo.Instance == InstanceEntity.Added))
                                {
                                    Dialogos.MostrarMensajeInformacion(Title, "No puede haber mas de una entidad duplicada."); return;
                                }
                            }
                        }
                        // if (InstanciaDet_Tarifa == InstanceView.New)
                        ItemsGrillaDet_Tarifa.Add(ItemDET_Tarifa);

                        DView.GenerarST20_ST40_HBL();
                        MView.ShowItemsDetalleTarifario();
                        DView.CerrarVenta();
                    }
                    else
                    {
                        DView.ShowValidation();
                    }
                }
                else   // Tarifa Aduanera || Tarifa Transporte
                {
                    if (InstanciaDet_Tarifa == InstanceView.Edit)
                    {
                        if (ItemDET_Tarifa.DTAR_Item > 0)
                        {
                            ItemDET_Tarifa.AUDI_UsrMod = Session.UserName;
                            ItemDET_Tarifa.Instance    = InstanceEntity.Modified;
                        }
                        else
                        {
                            ItemsDet_Tarifa.Remove(ItemDET_Tarifa);
                        }
                    }
                    else
                    {
                        ItemDET_Tarifa.AUDI_UsrCrea = Session.UserName;
                        ItemDET_Tarifa.Instance     = InstanceEntity.Added;
                        TempItemDET_Tarifa          = new Det_Tarifa
                        {
                            AUDI_UsrCrea = Session.UserName,
                            AUDI_FecCrea = Session.Fecha,
                            Instance     = InstanceEntity.Added
                        };
                    }
                    DView.GetItem();
                    if (TempItemDET_Tarifa.Validar())
                    {
                        if (ItemsDet_Tarifa != null && ItemsDet_Tarifa.Count > 0)
                        {
                            if (TempItemDET_Tarifa.CTAR_Tipo.Equals("A"))
                            {
                                if (ItemsDet_Tarifa.Any(codBase => codBase.CONS_CodBas == TempItemDET_Tarifa.CONS_CodBas && codBase.Instance != InstanceEntity.Modified))
                                {
                                    Dialogos.MostrarMensajeInformacion(Title, "No puede haber mas de un base duplicada."); return;
                                }
                            }
                            if (TempItemDET_Tarifa.CTAR_Tipo.Equals("T"))
                            {
                                if (ItemsDet_Tarifa.Any(data => data.CONS_CodTRA == TempItemDET_Tarifa.CONS_CodTRA && data.TIPO_CodZONDestino == TempItemDET_Tarifa.TIPO_CodZONDestino && data.Instance != InstanceEntity.Modified))
                                {
                                    Dialogos.MostrarMensajeInformacion(Title, "No puede haber mas de una mismo tipo y destino."); return;
                                }
                            }
                        }
                        if (ItemsDet_Tarifa != null && InstanciaDet_Tarifa != InstanceView.Edit)
                        {
                            ItemsDet_Tarifa.Add(TempItemDET_Tarifa);
                        }
                        MView.ShowItemsDetalleTarifario();
                        DView.CerrarVenta();
                    }
                    else
                    {
                        DView.ShowValidation();
                    }
                }
            }
            catch (Exception ex)
            { Dialogos.MostrarMensajeError(Title, Mensajes.NewPresenter, ex); }
        }