예제 #1
0
 public void delete(ContratoEntity contrato)
 {
     adapter.Delete(contrato.NumeroContrato, contrato.FechaCreacion, contrato.RutCliente.Rut,
                    contrato.CodigoPlan.IdPlan, contrato.InicioVigencia, contrato.FinVigencia,
                    contrato.EstadoVigente, contrato.DeclaracionSalud, contrato.PrimaAnual,
                    contrato.PrimaMensual);
 }
예제 #2
0
        public void Crear(ContratoEntity contrato)
        {
            //Creacion de objeto Adaptador  de la tabla Cliente que
            //posee el CRUD
            ContratoTableAdapter adapter =
                new ContratoTableAdapter();



            //Llamamos al método insertar del adaptador
            adapter.Insert(contrato.NumeroContrato, contrato.Creacion, contrato.Termino, contrato.Cliente.Rut, contrato.ModalidadServicio.Id, contrato.Tipo.Id, contrato.InicioEvento, contrato.TerminoEvento, contrato.Asistentes, contrato.PersonalAdicional, contrato.Realizado, contrato.PrecioTotal, (contrato.Observaciones == null) ? "" : contrato.Observaciones);

            if (contrato.Tipo.Id == CoffeeBreakDAO.ReferenciaIdTipoEvento)
            {
                coffeeBreakDAO.Insertar(contrato.Tipo as CoffeeBreakEntity, contrato.NumeroContrato);
            }
            else if (contrato.Tipo.Id == CocktailDAO.ReferenciaIdTipoEvento)
            {
                cocktailDAO.Insertar(contrato.Tipo as CocktailEntity, contrato.NumeroContrato);
            }
            else if (contrato.Tipo.Id == CenaDAO.ReferenciaIdTipoEvento)
            {
                cenaDAO.Insertar(contrato.Tipo as CenaEntity, contrato.NumeroContrato);
            }
        }
예제 #3
0
        public List <ContratoEntity> findAll()
        {
            List <ContratoEntity> contratos = new List <ContratoEntity>();

            ClienteDAO           daoClientes = new ClienteDAOImpl();
            List <ClienteEntity> clientes    = daoClientes.findAll();

            foreach (BeLifeDataSet.ContratoRow row in adapter.GetData().Rows)
            {
                ContratoEntity contrato = new ContratoEntity();
                contrato.NumeroContrato    = row.Numero;
                contrato.FechaCreacion     = row.FechaCreacion;
                contrato.RutCliente.Rut    = row.RutCliente;
                contrato.CodigoPlan.IdPlan = row.CodigoPlan;
                contrato.InicioVigencia    = row.FechaInicioVigencia;
                contrato.FinVigencia       = row.FechaFinVigencia;
                contrato.EstadoVigente     = row.Vigente;
                contrato.DeclaracionSalud  = row.DeclaracionSalud;
                contrato.PrimaAnual        = row.PrimaAnual;
                contrato.PrimaMensual      = row.PrimaMensual;
                contrato.Observaciones     = row.Observaciones;

                contratos.Add(contrato);
            }
            return(contratos);
        }
예제 #4
0
        protected void btnGravar_Click(object sender, EventArgs e)
        {
            ContratoEntity     contrato           = new ContratoEntity();
            ContratoController contratoController = new ContratoController();

            if (txtNome.Text == "" || txtCpf.Text == "" || txtCargo.SelectedValue == "0")
            {
                this.ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "<script>alert('Preencha todos os campos!');</script>");
            }
            else
            {
                string cpfUsu = null;

                try
                {
                    cpfUsu          = Request.QueryString["cpfUsu"].ToString();
                    contrato        = contratoController.ObterAtivo(cpfUsu);
                    contrato.codCar = Convert.ToInt32(txtCargo.SelectedValue);
                }
                catch
                { }

                if (cpfUsu != null)
                {
                    if (contratoController.Atualizar(contrato))
                    {
                        this.ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "<script>alert('Contrato alterado com sucesso!'); window.location.href='Funcionario.aspx';</script>");
                    }
                    else
                    {
                        this.ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "<script>alert('Erro na alteração do registro!');</script>");
                    }
                }
            }
        }
예제 #5
0
        protected void btnGravar_Click(object sender, EventArgs e)
        {
            EmpresaEntity     empresa           = new EmpresaEntity();
            EmpresaController empresaController = new EmpresaController();

            if (txtCnpj.Text == "" || txtNome.Text == "" || txtTelefone.Text == "")
            {
                this.ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "<script>alert('Preencha todos os campos!');</script>");
            }
            else
            {
                empresa.cnpjEmp = txtCnpj.Text;
                empresa.nomEmp  = txtNome.Text;
                empresa.endEmp  = txtEndereco.Text;
                empresa.cidEmp  = txtCidade.Text;
                empresa.ufEmp   = txtUf.Text;
                empresa.telEmp  = txtTelefone.Text;

                if (Session["cnpjEmp"] != null)
                {
                    if (empresaController.Atualizar(empresa))
                    {
                        this.ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "<script>alert('Empresa alterada com sucesso!'); window.location.href='Home.aspx';</script>");
                    }
                    else
                    {
                        this.ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "<script>alert('Erro na alteração do registro!');</script>");
                    }
                }
                else
                {
                    if (empresaController.Inserir(empresa))
                    {
                        ContratoEntity contrato = new ContratoEntity();
                        contrato.cpfUsu  = Session["cpfUsu"].ToString();
                        contrato.cnpjEmp = empresa.cnpjEmp;
                        contrato.codCar  = 3; // 3 -> código de proprietário
                        ContratoController contratoController = new ContratoController();
                        contratoController.Inserir(contrato);

                        this.ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "<script>alert('Empresa salva com sucesso!'); window.location.href='Login.aspx';</script>");
                    }
                    else
                    {
                        this.ClientScript.RegisterClientScriptBlock(typeof(string), "alert", "<script>alert('Erro na inclusão do registro!');</script>");
                    }
                }
            }
        }
        /// <summary>
        /// Realiza la adaptación de campos para registrar o actualizar
        /// </summary>
        /// <param name="data">Datos a registrar o actualizar</param>
        /// <returns>Entidad Contrato con los datos a registrar</returns>
        public static ContratoEntity RegistrarContrato(ContratoRequest data)
        {
            var contratoEntity = new ContratoEntity();
            NumberFormatInfo numberFormatInfo = new NumberFormatInfo();

            numberFormatInfo.NumberDecimalSeparator = ".";
            numberFormatInfo.NumberGroupSeparator   = ",";

            if (data.CodigoContrato != null)
            {
                contratoEntity.CodigoContrato = new Guid(data.CodigoContrato.ToString());
            }
            else
            {
                Guid code;
                code = Guid.NewGuid();
                contratoEntity.CodigoContrato = code;
            }

            contratoEntity.CodigoUnidadOperativa   = new Guid(data.CodigoUnidadOperativa.ToString());
            contratoEntity.CodigoProveedor         = data.CodigoProveedor;
            contratoEntity.NumeroContrato          = data.NumeroContrato;
            contratoEntity.Descripcion             = data.Descripcion;
            contratoEntity.CodigoTipoServicio      = data.CodigoTipoServicio;
            contratoEntity.CodigoTipoRequerimiento = data.CodigoTipoRequerimiento;
            contratoEntity.CodigoTipoDocumento     = data.CodigoTipoDocumento;
            contratoEntity.FechaInicioVigencia     = DateTime.ParseExact(data.FechaInicioVigenciaString, DatosConstantes.Formato.FormatoFecha, System.Globalization.CultureInfo.InvariantCulture);
            contratoEntity.FechaFinVigencia        = DateTime.ParseExact(data.FechaFinVigenciaString, DatosConstantes.Formato.FormatoFecha, System.Globalization.CultureInfo.InvariantCulture);
            contratoEntity.CodigoMoneda            = data.CodigoMoneda;
            contratoEntity.MontoContrato           = Decimal.Parse(data.MontoContratoString, numberFormatInfo);
            contratoEntity.MontoAcumulado          = (data.MontoAcumuladoString != null) ? Decimal.Parse(data.MontoAcumuladoString, numberFormatInfo) : 0;
            contratoEntity.CodigoEstado            = data.CodigoEstado;
            contratoEntity.CodigoPlantilla         = data.CodigoPlantilla;
            contratoEntity.CodigoFlujoAprobacion   = new Guid(data.CodigoFlujoAprobacion);
            contratoEntity.CodigoEstadoEdicion     = data.CodigoEstadoEdicion;
            contratoEntity.ComentarioModificacion  = data.ComentarioModificacion;
            contratoEntity.CodigoContratoPrincipal = data.CodigoContratoPrincipal;
            contratoEntity.FechaCreacion           = DateTime.Now;
            contratoEntity.NumeroAdenda            = data.NumeroAdenda;
            contratoEntity.NumeroAdendaConcatenado = data.NumeroAdendaConcatenado;
            contratoEntity.EsFlexible      = false;
            contratoEntity.EsCorporativo   = data.EsCorporativo;
            contratoEntity.CodigoRequerido = new Guid(data.CodigoRequerido);

            return(contratoEntity);
        }
예제 #7
0
        public static ResultadoValidacion CamposObligatorios(ContratoEntity contrato)
        {
            if (contrato.Cliente is NullClienteEntity)
            {
                return(new ResultadoValidacion()
                {
                    Exito = false,
                    MensajeError = "Se debe especificar un cliente"
                });
            }


            if (contrato.InicioEvento == null ||
                contrato.TerminoEvento == null ||
                contrato.Creacion == null ||
                contrato.Tipo == null ||
                contrato.ModalidadServicio == null
                )
            {
                return(new ResultadoValidacion()
                {
                    Exito = false,
                    MensajeError = "Se deben especificar todos los campos necesarios."
                });
            }

            // Validaciones especificas para Tipos de Evento particulares

            if (contrato.Tipo is CenaEntity)
            {
                if ((contrato.Tipo as CenaEntity).Ambientacion is NullTipoAmbientacionEntity)
                {
                    return(new ResultadoValidacion()
                    {
                        Exito = false,
                        MensajeError = "El tipo de evento seleccionado requiere especificar ambientación"
                    });
                }
            }


            return(new ResultadoValidacion()
            {
                Exito = true
            });
        }
예제 #8
0
        public void BuscarContratoCommandHandler(object parameters)
        {
            this.Contrato = new NullContratoEntity();

            ContratoEntity contratoCoincidente = null;

            string numeroContrato = parameters.ToString();


            if (String.IsNullOrEmpty(numeroContrato))
            {
                return;
            }

            try
            {
                contratoCoincidente = ContratoDAO.BuscarPorNumero(numeroContrato);
            }
            catch (Exception ex)
            {
                Console.Write(ex);

                MessageBox.Show("Número de contrato inválido.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                return;
            }


            if (contratoCoincidente == null)
            {
                MessageBox.Show("No se encontró ningún contrato asociado al número indicado", "Error", MessageBoxButton.OK, MessageBoxImage.Warning);
                return;
            }

            // Desplegamos la información del contrato


            try
            {
                this.Contrato = contratoCoincidente;
            }
            catch
            {
                MessageBox.Show("Ocurrió un error al cargar la información del contrato");
            }
        }
예제 #9
0
        public void Eliminar(ContratoEntity contrato)
        {
            ContratoTableAdapter adapter = new ContratoTableAdapter();

            if (contrato.Tipo.Id == CoffeeBreakDAO.ReferenciaIdTipoEvento)
            {
                coffeeBreakDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
            }
            else if (contrato.Tipo.Id == CocktailDAO.ReferenciaIdTipoEvento)
            {
                cocktailDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
            }
            else if (contrato.Tipo.Id == CenaDAO.ReferenciaIdTipoEvento)
            {
                cenaDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
            }


            adapter.EliminarPorNumero(contrato.NumeroContrato);
        }
 public static Response <ContratoEntity> ConsultarContrato(int idContrato)
 {
     try
     {
         // Consulta 'Contrato'
         ContratoEntity consultarContrato = CreditoRepository.ConsultarContrato(idContrato);
         if (consultarContrato != null)
         {
             return(new Response <ContratoEntity>(true, consultarContrato, Message.MsgCorrectoConsultarContrato, true));
         }
         else
         {
             return(new Response <ContratoEntity>(false, consultarContrato, Message.MsgValidaNullConsultarContrato, true));
         }
     }
     catch (Exception ex)
     {
         Log.Instance(typeof(CreditoLogic)).Error(System.Reflection.MethodBase.GetCurrentMethod().Name, ex);
         return(new Response <ContratoEntity>(false, null, Message.MsgExcConsultarContrato, false));
     }
 }
예제 #11
0
        public static ContratoEntity ConsultarContrato(int idContrato)
        {
            ContratoEntity entidad = null;

            using (IDatabase db = DatabaseHelper.GetDatabase())
            {
                db.ProcedureName = "Usp_Tb_contrato_Consulta";
                db.AddParameter("@idContrato", DbType.Int32, ParameterDirection.Input, idContrato);
                using (IDataReader drlector = db.GetDataReader())
                {
                    while (drlector.Read())
                    {
                        entidad = new ContratoEntity
                        {
                            Saldo    = Reader.GetDecimalValue(drlector, "saldo"),
                            Marcador = Reader.GetStringValue(drlector, "marcador")
                        };
                        break;
                    }
                }
            }

            return(entidad);
        }
예제 #12
0
        public void Modificar(ContratoEntity contrato)
        {
            ContratoTableAdapter adapter = new ContratoTableAdapter();

            // Buscamos el contrato antiguo y preguntamos por el tipoId

            ContratoEntity contratoAntiguo = BuscarPorNumero(contrato.NumeroContrato);

            bool cambioTipoContrato = false;

            if (contratoAntiguo.Tipo.Id != contrato.Tipo.Id)
            {
                cambioTipoContrato = true;
            }


            if (contrato.Tipo.Id == CoffeeBreakDAO.ReferenciaIdTipoEvento)
            {
                if (cambioTipoContrato == true)
                {
                    if (contratoAntiguo.Tipo.Id == CoffeeBreakDAO.ReferenciaIdTipoEvento)
                    {
                        coffeeBreakDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }
                    else if (contratoAntiguo.Tipo.Id == CocktailDAO.ReferenciaIdTipoEvento)
                    {
                        cocktailDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }
                    else if (contratoAntiguo.Tipo.Id == CenaDAO.ReferenciaIdTipoEvento)
                    {
                        cenaDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }

                    coffeeBreakDAO.Insertar(contrato.Tipo as CoffeeBreakEntity, contrato.NumeroContrato);
                }
                else
                {
                    coffeeBreakDAO.ModificarPorNumeroContrato(contrato.Tipo as CoffeeBreakEntity, contrato.NumeroContrato);
                }
            }
            else if (contrato.Tipo.Id == CocktailDAO.ReferenciaIdTipoEvento)
            {
                if (cambioTipoContrato == true)
                {
                    if (contratoAntiguo.Tipo.Id == CoffeeBreakDAO.ReferenciaIdTipoEvento)
                    {
                        coffeeBreakDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }
                    else if (contratoAntiguo.Tipo.Id == CocktailDAO.ReferenciaIdTipoEvento)
                    {
                        cocktailDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }
                    else if (contratoAntiguo.Tipo.Id == CenaDAO.ReferenciaIdTipoEvento)
                    {
                        cenaDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }

                    cocktailDAO.Insertar(contrato.Tipo as CocktailEntity, contrato.NumeroContrato);
                }
                else
                {
                    cocktailDAO.ModificarPorNumeroContrato(contrato.Tipo as CocktailEntity, contrato.NumeroContrato);
                }
            }
            else if (contrato.Tipo.Id == CenaDAO.ReferenciaIdTipoEvento)
            {
                if (cambioTipoContrato == true)
                {
                    if (contratoAntiguo.Tipo.Id == CoffeeBreakDAO.ReferenciaIdTipoEvento)
                    {
                        coffeeBreakDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }
                    else if (contratoAntiguo.Tipo.Id == CocktailDAO.ReferenciaIdTipoEvento)
                    {
                        cocktailDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }
                    else if (contratoAntiguo.Tipo.Id == CenaDAO.ReferenciaIdTipoEvento)
                    {
                        cenaDAO.EliminarPorNumeroContrato(contrato.NumeroContrato);
                    }

                    cenaDAO.Insertar(contrato.Tipo as CenaEntity, contrato.NumeroContrato);
                }
                else
                {
                    cenaDAO.ModificarPorNumeroContrato(contrato.Tipo as CenaEntity, contrato.NumeroContrato);
                }
            }

            adapter.Modificar(contrato.Creacion, contrato.Termino, contrato.Cliente.Rut, contrato.ModalidadServicio.Id, contrato.Tipo.Id, contrato.InicioEvento, contrato.TerminoEvento, contrato.Asistentes, contrato.PersonalAdicional, contrato.Realizado, contrato.PrecioTotal, (contrato.Observaciones == null) ? "" : contrato.Observaciones, contrato.NumeroContrato);
        }
예제 #13
0
 public void update(ContratoEntity contrato)
 {
     throw new NotImplementedException();
 }
예제 #14
0
 public void update(ContratoEntity contrato)
 {
     dao.update(contrato);
 }
예제 #15
0
 public void delete(ContratoEntity contrato)
 {
     dao.create(contrato);
 }
        public static Response <List <ClienteCreditoEntity> > ListarClientesContrato(CreditoRequest request)
        {
            try
            {
                // Lista 'ClientesContrato'
                var listarClientesContrato = CreditoRepository.ListarClientesContrato(0);

                for (int i = 0; i < listarClientesContrato.Count; i++)
                {
                    // Consulta 'Contrato'
                    ContratoEntity consultarContrato = CreditoRepository.ConsultarContrato(listarClientesContrato[i].IdContrato);
                    if (consultarContrato != null)
                    {
                        if (consultarContrato.Marcador == "1")
                        {
                            if (consultarContrato.Saldo <= 0)
                            {
                                listarClientesContrato.RemoveAt(i);
                                i--;
                                continue;
                            }
                        }
                    }
                    else
                    {
                        listarClientesContrato.RemoveAt(i);
                        i--;
                        continue;
                    }

                    // Verifica 'ContratoPasajes'
                    var verificarContratoPasajes = CreditoRepository.VerificarContratoPasajes(listarClientesContrato[i].RucCliente, request.FechaViaje, request.FechaViaje, request.CodiOficina.ToString(), request.CodiRuta.ToString(), request.CodiServicio.ToString(), listarClientesContrato[i].IdRuc);

                    if (verificarContratoPasajes.IdContrato <= 0)
                    {
                        // Valida 'ClientePrecioNormal'
                        var validarClientePrecioNormal = CreditoRepository.ValidarClientePrecioNormal(listarClientesContrato[i].IdRuc, request.FechaViaje, request.FechaViaje);
                        if (!validarClientePrecioNormal)
                        {
                            listarClientesContrato.RemoveAt(i);
                            i--;
                            continue;
                        }
                    }

                    // Verificar 'PrecioNormal'
                    var verificarPrecioNormal = CreditoRepository.VerificarPrecioNormal(verificarContratoPasajes.IdContrato);
                    // Si encontró datos (IdNormal toma desde el 0)
                    if (verificarPrecioNormal.IdNormal >= 0)
                    {
                        if (verificarPrecioNormal.Saldo <= 0)
                        {
                            listarClientesContrato.RemoveAt(i);
                            i--;
                            continue;
                        }
                    }
                    // Sino
                    else
                    {
                        if (verificarContratoPasajes.SaldoBoletos <= 0)
                        {
                            listarClientesContrato.RemoveAt(i);
                            i--;
                            continue;
                        }
                    }

                    // Seteo variables auxiliares desde 'verificarContratoPasajes'
                    listarClientesContrato[i].CntBoletos   = verificarContratoPasajes.CntBoletos;   // Cnt
                    listarClientesContrato[i].SaldoBoletos = verificarContratoPasajes.SaldoBoletos; // SALDO
                    listarClientesContrato[i].IdPrecio     = verificarContratoPasajes.IdPrecio;     // IdServicioContrato
                    listarClientesContrato[i].Precio       = verificarContratoPasajes.Precio;       // Precio
                }

                if (listarClientesContrato.Count == 0)
                {
                    return(new Response <List <ClienteCreditoEntity> >(false, listarClientesContrato, Message.MsgValidaListarClientesContrato, true));
                }
                else
                {
                    return(new Response <List <ClienteCreditoEntity> >(true, listarClientesContrato, Message.MsgCorrectoListarClientesContrato, true));
                }
            }
            catch (Exception ex)
            {
                Log.Instance(typeof(CreditoLogic)).Error(System.Reflection.MethodBase.GetCurrentMethod().Name, ex);
                return(new Response <List <ClienteCreditoEntity> >(false, null, Message.MsgExcListarClientesContrato, false));
            }
        }
예제 #17
0
 public AdministracionContratoMemento()
 {
     Contrato = new NullContratoEntity();
 }
예제 #18
0
 public AdministracionContratoMemento(ContratoEntity contrato)
 {
     this.Contrato = contrato;
 }
예제 #19
0
        public bool Atualizar(ContratoEntity contrato)
        {
            IContratoDAO iContratoDAO = (IContratoDAO)DAOFactory.CreateDAO <IContratoDAO>();

            return(iContratoDAO.Atualizar(contrato));
        }
예제 #20
0
        public bool Inserir(ContratoEntity contrato)
        {
            IContratoDAO iContratoDAO = (IContratoDAO)DAOFactory.CreateDAO <IContratoDAO>();

            return(iContratoDAO.Inserir(contrato));
        }
예제 #21
0
        public ContratoEntity ContratoEntityDesdeFila(CacheContratoRow fila)
        {
            ContratoEntity contrato;

            TipoEventoEntity tipoEventoBase = null;
            TipoEventoEntity tipoEvento     = null;

            if (fila.IsIdTipoEventoNull() != true)
            {
                tipoEventoBase = tipoEventoDAO.BuscarPorId(fila.IdTipoEvento);


                if (fila.IdTipoEvento == CoffeeBreakDAO.ReferenciaIdTipoEvento)
                {
                    tipoEvento = new CoffeeBreakEntity()
                    {
                        Id          = fila.IdTipoEvento,
                        Descripcion = tipoEventoBase.Descripcion,
                        Vegetariana = fila.Vegetariana
                    };
                }
                else if (fila.IdTipoEvento == CocktailDAO.ReferenciaIdTipoEvento)
                {
                    TipoAmbientacionEntity tipoAmbientacion = null;

                    if (fila.IsIdTipoAmbientacionNull() == false)
                    {
                        tipoAmbientacion = tipoAmbientacionDAO.ObtenerPorId(fila.IdTipoAmbientacion);
                    }

                    tipoEvento = new CocktailEntity()
                    {
                        Id              = fila.IdTipoEvento,
                        Descripcion     = tipoEventoBase.Descripcion,
                        Ambientacion    = (tipoAmbientacion == null) ? new NullTipoAmbientacionEntity() : tipoAmbientacion,
                        MusicaAmbiental = fila.MusicaAmbiental,
                        MusicaCliente   = fila.MusicaCliente
                    };
                }
                else if (fila.IdTipoEvento == CenaDAO.ReferenciaIdTipoEvento)
                {
                    TipoAmbientacionEntity tipoAmbientacion = null;

                    if (fila.IsIdTipoAmbientacionNull() == false)
                    {
                        tipoAmbientacion = tipoAmbientacionDAO.ObtenerPorId(fila.IdTipoAmbientacion);
                    }


                    tipoEvento = new CenaEntity()
                    {
                        Id              = fila.IdTipoEvento,
                        Descripcion     = tipoEventoBase.Descripcion,
                        Ambientacion    = (tipoAmbientacion == null) ? new NullTipoAmbientacionEntity() : tipoAmbientacion,
                        MusicaAmbiental = fila.MusicaAmbiental,
                        LocalOnBreak    = fila.LocalOnBreak,
                        OtroLocal       = fila.OtroLocalOnBreak,
                        ValorArriendo   = fila.ValorArriendo
                    };
                }
                else
                {
                    tipoEvento = tipoEventoBase;
                }
            }

            ClienteEntity cliente;

            cliente = (fila.IsRutClienteNull() == true) ? new NullClienteEntity() : clienteDAO.BuscarPorRut(fila.RutCliente);

            if (cliente == null)
            {
                cliente = new NullClienteEntity();
            }

            ModalidadServicioEntity modalidad = null;

            if (fila.IsIdModalidadNull() != true)
            {
                modalidad = modalidadServicioDAO.BuscarPorId(fila.IdModalidad);
            }

            if (fila.IsNumeroContratoNull() == true)
            {
                contrato = new NullContratoEntity()
                {
                    NumeroContrato    = (fila.IsNumeroContratoNull() == true) ? null : fila.NumeroContrato,
                    Creacion          = (fila.IsCreacionNull() == true) ? (DateTime)SqlDateTime.MinValue : fila.Creacion,
                    Termino           = (fila.IsTerminoNull() == true) ? (DateTime)SqlDateTime.MinValue : fila.Termino,
                    Cliente           = cliente,
                    InicioEvento      = (fila.IsFechaHoraInicioNull() == true) ? (DateTime)SqlDateTime.MinValue : fila.FechaHoraInicio,
                    TerminoEvento     = (fila.IsFechaHoraTerminoNull() == true) ? (DateTime)SqlDateTime.MinValue : fila.FechaHoraTermino,
                    Asistentes        = (fila.IsAsistentesNull() == true) ? 1 : fila.Asistentes,
                    PersonalAdicional = (fila.IsPersonalAdicionalNull() == true) ? 0 : fila.PersonalAdicional,
                    Realizado         = (fila.IsRealizadoNull() == true) ? false : fila.Realizado,
                    PrecioTotal       = (fila.IsValorTotalContratoNull() == true) ? 0 : fila.ValorTotalContrato,
                    Observaciones     = (fila.IsObservacionesNull() == true) ? null : fila.Observaciones,
                    Tipo = tipoEvento
                };

                contrato.ModalidadServicio = modalidad;
            }
            else
            {
                contrato = new ContratoEntity()
                {
                    NumeroContrato    = (fila.IsNumeroContratoNull() == true) ? null : fila.NumeroContrato,
                    Creacion          = (fila.IsCreacionNull() == true) ? (DateTime)SqlDateTime.MinValue : fila.Creacion,
                    Termino           = (fila.IsTerminoNull() == true) ? (DateTime)SqlDateTime.MinValue : fila.Termino,
                    Cliente           = cliente,
                    InicioEvento      = (fila.IsFechaHoraInicioNull() == true) ? (DateTime)SqlDateTime.MinValue : fila.FechaHoraInicio,
                    TerminoEvento     = (fila.IsFechaHoraTerminoNull() == true) ? (DateTime)SqlDateTime.MinValue : fila.FechaHoraTermino,
                    Asistentes        = (fila.IsAsistentesNull() == true) ? 1 : fila.Asistentes,
                    PersonalAdicional = (fila.IsPersonalAdicionalNull() == true) ? 0 : fila.PersonalAdicional,
                    Realizado         = (fila.IsRealizadoNull() == true) ? false : fila.Realizado,
                    PrecioTotal       = (fila.IsValorTotalContratoNull() == true) ? 0 : fila.ValorTotalContrato,
                    Observaciones     = (fila.IsObservacionesNull() == true) ? null : fila.Observaciones,
                    Tipo = tipoEvento
                };

                contrato.ModalidadServicio = modalidad;
            }



            return(contrato);
        }
예제 #22
0
        public AdministracionContratoMemento CrearMemento()
        {
            ContratoEntity contrato;

            TipoEventoEntity tipoEvento = null;

            if (this.Contrato.Tipo != null)
            {
                if (this.Contrato.Tipo is CoffeeBreakEntity)
                {
                    tipoEvento = new CoffeeBreakEntity()
                    {
                        Id          = this.Contrato.Tipo.Id,
                        Descripcion = this.Contrato.Tipo.Descripcion,
                        Vegetariana = (this.Contrato.Tipo as CoffeeBreakEntity).Vegetariana
                    };
                }
                else if (this.Contrato.Tipo is CocktailEntity)
                {
                    tipoEvento = new CocktailEntity()
                    {
                        Id              = this.Contrato.Tipo.Id,
                        Descripcion     = this.Contrato.Tipo.Descripcion,
                        Ambientacion    = ((this.Contrato.Tipo as CocktailEntity).Ambientacion == null) ? new NullTipoAmbientacionEntity() : (this.Contrato.Tipo as CocktailEntity).Ambientacion,
                        MusicaAmbiental = (this.Contrato.Tipo as CocktailEntity).MusicaAmbiental,
                        MusicaCliente   = (this.Contrato.Tipo as CocktailEntity).MusicaCliente
                    };
                }
                else if (this.Contrato.Tipo is CenaEntity)
                {
                    tipoEvento = new CenaEntity()
                    {
                        Id              = this.Contrato.Tipo.Id,
                        Descripcion     = this.Contrato.Tipo.Descripcion,
                        Ambientacion    = ((this.Contrato.Tipo as CenaEntity).Ambientacion == null) ? new NullTipoAmbientacionEntity() : (this.Contrato.Tipo as CocktailEntity).Ambientacion,
                        MusicaAmbiental = (this.Contrato.Tipo as CenaEntity).MusicaAmbiental,
                        LocalOnBreak    = (this.Contrato.Tipo as CenaEntity).LocalOnBreak,
                        OtroLocal       = (this.Contrato.Tipo as CenaEntity).OtroLocal,
                        ValorArriendo   = (this.Contrato.Tipo as CenaEntity).ValorArriendo
                    };
                }
                else
                {
                    tipoEvento = new TipoEventoEntity()
                    {
                        Id          = this.Contrato.Tipo.Id,
                        Descripcion = this.Contrato.Tipo.Descripcion,
                    };
                }
            }

            if (this.Contrato is NullContratoEntity)
            {
                contrato = new NullContratoEntity()
                {
                    Asistentes        = this.Contrato.Asistentes,
                    Cliente           = this.Contrato.Cliente,
                    Tipo              = tipoEvento,
                    Creacion          = this.Contrato.Creacion,
                    InicioEvento      = this.Contrato.InicioEvento,
                    ModalidadServicio = this.Contrato.ModalidadServicio,
                    NumeroContrato    = this.Contrato.NumeroContrato,
                    Observaciones     = this.Contrato.Observaciones,
                    PersonalAdicional = this.Contrato.PersonalAdicional,
                    PrecioTotal       = this.Contrato.PrecioTotal,
                    Realizado         = this.Contrato.Realizado,
                    Termino           = this.Contrato.Termino,
                    TerminoEvento     = this.Contrato.TerminoEvento
                };
            }
            else
            {
                contrato = new ContratoEntity()
                {
                    Asistentes        = this.Contrato.Asistentes,
                    Cliente           = this.Contrato.Cliente,
                    Tipo              = tipoEvento,
                    Creacion          = this.Contrato.Creacion,
                    InicioEvento      = this.Contrato.InicioEvento,
                    ModalidadServicio = this.Contrato.ModalidadServicio,
                    NumeroContrato    = this.Contrato.NumeroContrato,
                    Observaciones     = this.Contrato.Observaciones,
                    PersonalAdicional = this.Contrato.PersonalAdicional,
                    PrecioTotal       = this.Contrato.PrecioTotal,
                    Realizado         = this.Contrato.Realizado,
                    Termino           = this.Contrato.Termino,
                    TerminoEvento     = this.Contrato.TerminoEvento
                };
            }

            return(new AdministracionContratoMemento()
            {
                FechaHora = DateTime.Now,
                Contrato = contrato
            });
        }