/// <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); }
/// <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); }
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); }
/// <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); }
/// <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); }
/// <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); }