Esempio n. 1
0
        /// <summary>
        /// Realiza la adaptación de campos para registrar o actualizar
        /// </summary>
        /// <param name="data">Datos a registrar o actualizar</param>
        /// <returns>Entidad Plantilla con los datos a registrar</returns>
        public static PlantillaEntity RegistrarPlantilla(PlantillaRequest data)
        {
            var plantillaEntity = new PlantillaEntity();

            if (data.CodigoPlantilla != null)
            {
                plantillaEntity.CodigoPlantilla = new Guid(data.CodigoPlantilla);
            }
            else
            {
                Guid code;
                code = Guid.NewGuid();
                plantillaEntity.CodigoPlantilla = code;
            }

            plantillaEntity.Descripcion                 = data.Descripcion;
            plantillaEntity.CodigoTipoContrato          = data.CodigoTipoContrato;
            plantillaEntity.CodigoTipoDocumentoContrato = data.CodigoTipoDocumentoContrato;
            plantillaEntity.CodigoEstadoVigencia        = data.CodigoEstadoVigencia;
            plantillaEntity.IndicadorAdhesion           = Convert.ToBoolean(data.IndicadorAdhesion);
            plantillaEntity.FechaInicioVigencia         = DateTime.ParseExact(data.FechaInicioVigenciaString, DatosConstantes.Formato.FormatoFecha, System.Globalization.CultureInfo.InvariantCulture);
            //INICIO: Agregado por Julio Carrera - Norma Contable
            plantillaEntity.Es_MayorMenor = data.EsMayorMenor;
            //FIN: Agregado por Julio Carrera - Norma Contable

            return(plantillaEntity);
        }
Esempio n. 2
0
        /// <summary>
        /// Retorna una ENTIDAD de registro de la Entidad Presupuesto.Plantilla
        /// En la BASE de DATO la Tabla : [Presupuesto.Plantilla]
        /// <summary>
        /// <param name="pAnio"></param>
        /// <param name="pIdArea"></param>
        /// <returns></returns>
        public PlantillaEntity BuscarPlantilla(int?pAnio, int?pIdArea)
        {
            PlantillaEntity objPlantillaEntity = null;

            try
            {
                oPlantillaData     = new PlantillaData();
                objPlantillaEntity = oPlantillaData.Buscar(pAnio, pIdArea);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(objPlantillaEntity);
        }
Esempio n. 3
0
 public ReturnValor ActualizarPlantillaEstado(PlantillaEntity objPlantillaEntity)
 {
     try
     {
         //using (TransactionScope tx = new TransactionScope(TransactionScopeOption.Required))
         //{
         oPlantillaData       = new PlantillaData();
         oReturnValor.Exitosa = oPlantillaData.ActualizarEstado(objPlantillaEntity);
         if (oReturnValor.Exitosa)
         {
             oReturnValor.Message = HelpMessages.Evento_EDIT;
             //tx.Complete();
         }
         //}
     }
     catch (Exception ex)
     {
         oReturnValor = HelpException.mTraerMensaje(ex);
     }
     return(oReturnValor);
 }
Esempio n. 4
0
        /// <summary>
        /// Retorna una ENTIDAD de registro de la Entidad Presupuesto.Plantilla
        /// En la BASE de DATO la Tabla : [Presupuesto.Plantilla]
        /// <summary>
        /// <returns>Entidad</returns>
        public PlantillaEntity Buscar(int?pAnio, int?pIdArea)
        {
            PlantillaEntity objPlantillaEntity = null;

            try
            {
                using (_DBMLPresupuestoDataContext SQLDC = new _DBMLPresupuestoDataContext(conexion))
                {
                    var resul = SQLDC.pa_S_Plantilla(null, pAnio, pIdArea);
                    foreach (var item in resul)
                    {
                        objPlantillaEntity                          = new PlantillaEntity();
                        objPlantillaEntity.Codigo                   = item.codPlantilla;
                        objPlantillaEntity.numPlantilla             = item.numPlantilla;
                        objPlantillaEntity.objPresupuesto.desNombre = item.nombrePresupuesto;
                        objPlantillaEntity.objPresupuesto.numAnio   = item.numAnio;
                        objPlantillaEntity.objPresupuesto.fecCierre = item.fecCierre;
                        objPlantillaEntity.objArea.desNombre        = item.codAreaNombre;
                        objPlantillaEntity.objEmpleado.desNombre    = item.desEmpleadoActual;
                        objPlantillaEntity.segUsuarioCrea           = item.segUsuarioCrea;
                        objPlantillaEntity.segFechaCrea             = item.segFechaCrea;
                        objPlantillaEntity.segUsuarioEdita          = item.segUsuarioEdita;
                        objPlantillaEntity.segFechaEdita            = item.segFechaEdita;
                        objPlantillaEntity.codRegEstadoNombre       = item.EstadoPlantilla;
                        objPlantillaEntity.monMaximo                = item.monMaximo.HasValue ? item.monMaximo.Value : 0;
                        objPlantillaEntity.monEstimadoTotal         = item.monEstimadoTotalxArea.HasValue ? item.monEstimadoTotalxArea.Value : 0;
                        objPlantillaEntity.numDiasExtemporaneo      = item.numDiasExtemporaneo;
                        objPlantillaEntity.fecCierreExtempor        = item.fecCierre.HasValue ? item.fecCierre.Value.AddDays(item.numDiasExtemporaneo).ToShortDateString() : string.Empty;
                    }
                }
            }
            catch (Exception ex)
            {
                log.Error(String.Concat("Buscar", " | ", ex.Message.ToString()));
                throw ex;
            }
            return(objPlantillaEntity);
        }
Esempio n. 5
0
        /// <summary>
        /// Almacena el registro de una ENTIDAD de registro de Tipo Partida
        /// En la BASE de DATO la Tabla : [Presupuesto.Partida]
        /// <summary>
        /// <param name = >itemPartida</param>
        public bool ActualizarEstado(PlantillaEntity objPlantilla)
        {
            int codigoRetorno = -1;

            try
            {
                using (_DBMLPresupuestoDataContext SQLDC = new _DBMLPresupuestoDataContext(conexion))
                {
                    SQLDC.pa_U_Plantilla_Estado(
                        objPlantilla.Codigo,
                        objPlantilla.codRegEstado,
                        objPlantilla.segUsuarioEdita,
                        objPlantilla.segMaquinaOrigen);

                    codigoRetorno = 0;
                }
            }
            catch (Exception ex)
            {
                log.Error(String.Concat("ActualizarEstado", " | ", ex.Message.ToString()));
                throw ex;
            }
            return(codigoRetorno == 0 ? true : false);
        }
Esempio n. 6
0
        /// <summary>
        /// Registra o actualiza una plantilla
        /// </summary>
        /// <param name="data">Datos a registrar</param>
        /// <returns>Indicador con el resultado de la operación</returns>
        public ProcessResult <object> RegistrarPlantilla(PlantillaRequest data)
        {
            ProcessResult <object> resultado = new ProcessResult <object>();

            try
            {
                PlantillaEntity entidad        = PlantillaAdapter.RegistrarPlantilla(data);
                DateTime        fechaActual    = DateTime.Now.Date;
                bool            existeRepetido = false;

                if (!string.IsNullOrWhiteSpace(data.FechaInicioVigenciaString))
                {
                    var resultadoValidacion = plantillaLogicRepository.BuscarPlantillaTipo(data.CodigoTipoContrato, data.CodigoTipoDocumentoContrato, Convert.ToBoolean(data.IndicadorAdhesion));
                    existeRepetido = resultadoValidacion.Any(x => x.CodigoPlantilla != entidad.CodigoPlantilla && x.FechaInicioVigenciaDate == entidad.FechaInicioVigencia);
                    if (existeRepetido)
                    {
                        resultado.IsSuccess = false;
                        resultado.Exception = new ApplicationLayerException <PlantillaService>(MensajesSistema.PlantillaExiste);
                    }
                    else
                    {
                        if (data.CodigoPlantilla == null && data.CodigoPlantillaCopiar == null)
                        {
                            entidad.CodigoEstadoVigencia = DatosConstantes.EstadoVigencia.Proximo;
                            plantillaEntityRepository.Insertar(entidad, entornoActualAplicacion);
                        }
                        else if (data.CodigoPlantillaCopiar != null)
                        {
                            entidad.CodigoEstadoVigencia = DatosConstantes.EstadoVigencia.Proximo;
                            plantillaEntityRepository.CopiarPlantilla(new Guid(data.CodigoPlantillaCopiar), data.Descripcion, data.CodigoTipoContrato, data.CodigoTipoDocumentoContrato, Convert.ToDateTime(data.FechaInicioVigenciaString), entornoActualAplicacion.UsuarioSession, entornoActualAplicacion.Terminal, data.EsMayorMenor);
                        }
                        else
                        {
                            //var contratosAsociadoPlantilla = listadoContratoLogicRepository.BuscarListadoContrato(null, null, entidad.CodigoPlantilla, null,
                            //                                                            null, null, DatosConstantes.EstadoContrato.Edicion,
                            //                                                            null, null, null, null, null, null, null,
                            //                                                            DatosConstantes.CodigoEstadoEdicion.EdicionParcial,null, 1, -1).FirstOrDefault();

                            //if (contratosAsociadoPlantilla == null)
                            //{
                            var entidadSincronizar = plantillaEntityRepository.GetById(entidad.CodigoPlantilla);
                            entidadSincronizar.Descripcion = entidad.Descripcion;
                            entidadSincronizar.CodigoTipoDocumentoContrato = entidad.CodigoTipoDocumentoContrato;
                            entidadSincronizar.CodigoTipoContrato          = entidad.CodigoTipoContrato;
                            entidadSincronizar.IndicadorAdhesion           = entidad.IndicadorAdhesion;
                            entidadSincronizar.FechaInicioVigencia         = entidad.FechaInicioVigencia;
                            //INICIO: Agregado por Julio Carrera - Norma Contable
                            entidadSincronizar.Es_MayorMenor = entidad.Es_MayorMenor;
                            //FIN: Agregado por Julio Carrera - Norma Contable

                            plantillaEntityRepository.Editar(entidadSincronizar, entornoActualAplicacion);
                            //}
                            //else
                            //{
                            //    resultado.IsSuccess = false;
                            //    resultado.Exception = new ApplicationLayerException<PlantillaService>(MensajesSistema.PlantillaNoModificar);
                            //}
                        }

                        plantillaEntityRepository.GuardarCambios();

                        plantillaEntityRepository.ActualizarPlantillaEstadoVigencia();

                        resultado.Result = data;
                    }
                }
                else
                {
                    resultado.IsSuccess = false;
                    resultado.Exception = new ApplicationLayerException <PlantillaService>(MensajesSistema.PlantillaFechaInicioVigenciIncorrecto);
                }
            }
            catch (Exception e)
            {
                LogBL.grabarLogError(new Exception("RegistrarPlantilla"));
                LogBL.grabarLogError(e.GetBaseException());
                resultado.IsSuccess = false;
                resultado.Exception = new ApplicationLayerException <PlantillaService>(e.GetBaseException().Message);
            }
            return(resultado);
        }