public int InsertarPesado(GuiaRecepcionMateriaPrima guiaRecepcionMateriaPrima) { int result = 0; var parameters = new DynamicParameters(); parameters.Add("@EmpresaId", guiaRecepcionMateriaPrima.EmpresaId); parameters.Add("@Numero", guiaRecepcionMateriaPrima.Numero); parameters.Add("@NumeroReferencia", guiaRecepcionMateriaPrima.NumeroReferencia); parameters.Add("@TipoProvedorId", guiaRecepcionMateriaPrima.TipoProvedorId); parameters.Add("@SocioId", guiaRecepcionMateriaPrima.SocioId); parameters.Add("@TerceroId", guiaRecepcionMateriaPrima.TerceroId); parameters.Add("@IntermediarioId", guiaRecepcionMateriaPrima.IntermediarioId); parameters.Add("@ProductoId", guiaRecepcionMateriaPrima.ProductoId); parameters.Add("@SubProductoId", guiaRecepcionMateriaPrima.SubProductoId); parameters.Add("@FechaCosecha", guiaRecepcionMateriaPrima.FechaCosecha); parameters.Add("@FechaPesado", guiaRecepcionMateriaPrima.FechaPesado); parameters.Add("@UsuarioPesado", guiaRecepcionMateriaPrima.UsuarioPesado); parameters.Add("@UnidadMedidaIdPesado", guiaRecepcionMateriaPrima.UnidadMedidaIdPesado); parameters.Add("@ContratoAsignadoId", guiaRecepcionMateriaPrima.ContratoAsignadoId); parameters.Add("@CantidadPesado", guiaRecepcionMateriaPrima.CantidadPesado); parameters.Add("@KilosBrutosPesado", guiaRecepcionMateriaPrima.KilosBrutosPesado); parameters.Add("@KilosNetosPesado", guiaRecepcionMateriaPrima.KilosNetosPesado); parameters.Add("@TaraPesado", guiaRecepcionMateriaPrima.TaraPesado); parameters.Add("@ObservacionPesado", guiaRecepcionMateriaPrima.ObservacionPesado); parameters.Add("@EstadoId", guiaRecepcionMateriaPrima.EstadoId); parameters.Add("@SocioFincaId", guiaRecepcionMateriaPrima.SocioFincaId); parameters.Add("@TerceroFincaId", guiaRecepcionMateriaPrima.TerceroFincaId); parameters.Add("@IntermediarioFinca", guiaRecepcionMateriaPrima.IntermediarioFinca); parameters.Add("@SocioFincaCertificacion", guiaRecepcionMateriaPrima.SocioFincaCertificacion); parameters.Add("@FechaRegistro", guiaRecepcionMateriaPrima.FechaRegistro); parameters.Add("@UsuarioRegistro", guiaRecepcionMateriaPrima.UsuarioRegistro); parameters.Add("@TipoProduccionId", guiaRecepcionMateriaPrima.TipoProduccionId); parameters.Add("@GuiaRecepcionMateriaPrimaId", dbType: DbType.Int32, direction: ParameterDirection.Output); using (IDbConnection db = new SqlConnection(_connectionString.Value.CoffeeConnectDB)) { result = db.Execute("uspGuiaRecepcionMateriaPrimaPesadoInsertar", parameters, commandType: CommandType.StoredProcedure); } int id = parameters.Get <int>("GuiaRecepcionMateriaPrimaId"); return(id); }
public int ActualizarPesado(GuiaRecepcionMateriaPrima guiaRecepcionMateriaPrima) { int result = 0; var parameters = new DynamicParameters(); parameters.Add("@GuiaRecepcionMateriaPrimaId", guiaRecepcionMateriaPrima.GuiaRecepcionMateriaPrimaId); parameters.Add("@NumeroReferencia", guiaRecepcionMateriaPrima.NumeroReferencia); parameters.Add("@EmpresaId", guiaRecepcionMateriaPrima.EmpresaId); parameters.Add("@TipoProvedorId", guiaRecepcionMateriaPrima.TipoProvedorId); parameters.Add("@SocioId", guiaRecepcionMateriaPrima.SocioId); parameters.Add("@TerceroId", guiaRecepcionMateriaPrima.TerceroId); parameters.Add("@IntermediarioId", guiaRecepcionMateriaPrima.IntermediarioId); parameters.Add("@ProductoId", guiaRecepcionMateriaPrima.ProductoId); parameters.Add("@SubProductoId", guiaRecepcionMateriaPrima.SubProductoId); parameters.Add("@FechaCosecha", guiaRecepcionMateriaPrima.FechaCosecha); parameters.Add("@FechaPesado", guiaRecepcionMateriaPrima.FechaPesado); parameters.Add("@UsuarioPesado", guiaRecepcionMateriaPrima.UsuarioPesado); parameters.Add("@UnidadMedidaIdPesado", guiaRecepcionMateriaPrima.UnidadMedidaIdPesado); parameters.Add("@CantidadPesado", guiaRecepcionMateriaPrima.CantidadPesado); parameters.Add("@KilosBrutosPesado", guiaRecepcionMateriaPrima.KilosBrutosPesado); parameters.Add("@TaraPesado", guiaRecepcionMateriaPrima.TaraPesado); parameters.Add("@ObservacionPesado", guiaRecepcionMateriaPrima.ObservacionPesado); parameters.Add("@EstadoId", guiaRecepcionMateriaPrima.EstadoId); parameters.Add("@SocioFincaId", guiaRecepcionMateriaPrima.SocioFincaId); parameters.Add("@TerceroFincaId", guiaRecepcionMateriaPrima.TerceroFincaId); parameters.Add("@IntermediarioFinca", guiaRecepcionMateriaPrima.IntermediarioFinca); parameters.Add("@KilosNetosPesado", guiaRecepcionMateriaPrima.KilosNetosPesado); parameters.Add("@FechaUltimaActualizacion", guiaRecepcionMateriaPrima.FechaUltimaActualizacion); parameters.Add("@UsuarioUltimaActualizacion", guiaRecepcionMateriaPrima.UsuarioUltimaActualizacion); parameters.Add("@TipoProduccionId", guiaRecepcionMateriaPrima.TipoProduccionId); parameters.Add("@SocioFincaCertificacion", guiaRecepcionMateriaPrima.SocioFincaCertificacion); using (IDbConnection db = new SqlConnection(_connectionString.Value.CoffeeConnectDB)) { result = db.Execute("uspGuiaRecepcionMateriaPrimaPesadoActualizar", parameters, commandType: CommandType.StoredProcedure); } return(result); }
public int ActualizarAnalisisCalidad(GuiaRecepcionMateriaPrima guiaRecepcionMateriaPrima) { int result = 0; var parameters = new DynamicParameters(); parameters.Add("@GuiaRecepcionMateriaPrimaId", guiaRecepcionMateriaPrima.GuiaRecepcionMateriaPrimaId); parameters.Add("@ExportableGramosAnalisisFisico", guiaRecepcionMateriaPrima.ExportableGramosAnalisisFisico); parameters.Add("@ExportablePorcentajeAnalisisFisico", guiaRecepcionMateriaPrima.ExportablePorcentajeAnalisisFisico); parameters.Add("@DescarteGramosAnalisisFisico", guiaRecepcionMateriaPrima.DescarteGramosAnalisisFisico); parameters.Add("@DescartePorcentajeAnalisisFisico", guiaRecepcionMateriaPrima.DescartePorcentajeAnalisisFisico); parameters.Add("@CascarillaGramosAnalisisFisico", guiaRecepcionMateriaPrima.CascarillaGramosAnalisisFisico); parameters.Add("@CascarillaPorcentajeAnalisisFisico", guiaRecepcionMateriaPrima.CascarillaPorcentajeAnalisisFisico); parameters.Add("@TotalGramosAnalisisFisico", guiaRecepcionMateriaPrima.TotalGramosAnalisisFisico); parameters.Add("@TotalPorcentajeAnalisisFisico", guiaRecepcionMateriaPrima.TotalPorcentajeAnalisisFisico); parameters.Add("@HumedadPorcentajeAnalisisFisico", guiaRecepcionMateriaPrima.HumedadPorcentajeAnalisisFisico); parameters.Add("@TotalAnalisisSensorial", guiaRecepcionMateriaPrima.TotalAnalisisSensorial); parameters.Add("@SubTotalAnalisisSensorial", guiaRecepcionMateriaPrima.SubTotalAnalisisSensorial); parameters.Add("@DefectosTasaAnalisisSensorial", guiaRecepcionMateriaPrima.DefectosTasaAnalisisSensorial); parameters.Add("@DefectosIntensidadAnalisisSensorial", guiaRecepcionMateriaPrima.DefectosIntensidadAnalisisSensorial); parameters.Add("@ObservacionAnalisisFisico", guiaRecepcionMateriaPrima.ObservacionAnalisisFisico); parameters.Add("@FechaCalidad", guiaRecepcionMateriaPrima.FechaCalidad); parameters.Add("@UsuarioCalidad", guiaRecepcionMateriaPrima.UsuarioCalidad); parameters.Add("@ObservacionRegistroTostado", guiaRecepcionMateriaPrima.ObservacionRegistroTostado); parameters.Add("@ObservacionAnalisisSensorial", guiaRecepcionMateriaPrima.ObservacionAnalisisSensorial); parameters.Add("@EstadoId", guiaRecepcionMateriaPrima.EstadoId); parameters.Add("@FechaUltimaActualizacion", guiaRecepcionMateriaPrima.FechaCalidad); parameters.Add("@UsuarioUltimaActualizacion", guiaRecepcionMateriaPrima.UsuarioCalidad); using (IDbConnection db = new SqlConnection(_connectionString.Value.CoffeeConnectDB)) { result = db.Execute("uspGuiaRecepcionMateriaPrimaCalidadActualizar", parameters, commandType: CommandType.StoredProcedure); } return(result); }
public int ActualizarGuiaRecepcionMateriaPrimaAnalisisCalidad(ActualizarGuiaRecepcionMateriaPrimaAnalisisCalidadRequestDTO request) { GuiaRecepcionMateriaPrima guiaRecepcionMateriaPrima = new GuiaRecepcionMateriaPrima(); guiaRecepcionMateriaPrima.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; guiaRecepcionMateriaPrima.ExportableGramosAnalisisFisico = request.ExportableGramosAnalisisFisico; guiaRecepcionMateriaPrima.ExportablePorcentajeAnalisisFisico = request.ExportablePorcentajeAnalisisFisico; guiaRecepcionMateriaPrima.DescarteGramosAnalisisFisico = request.DescarteGramosAnalisisFisico; guiaRecepcionMateriaPrima.DescartePorcentajeAnalisisFisico = request.DescartePorcentajeAnalisisFisico; guiaRecepcionMateriaPrima.CascarillaGramosAnalisisFisico = request.CascarillaGramosAnalisisFisico; guiaRecepcionMateriaPrima.CascarillaPorcentajeAnalisisFisico = request.CascarillaPorcentajeAnalisisFisico; guiaRecepcionMateriaPrima.TotalGramosAnalisisFisico = request.TotalGramosAnalisisFisico; guiaRecepcionMateriaPrima.TotalPorcentajeAnalisisFisico = request.TotalPorcentajeAnalisisFisico; guiaRecepcionMateriaPrima.HumedadPorcentajeAnalisisFisico = request.HumedadPorcentajeAnalisisFisico; guiaRecepcionMateriaPrima.ObservacionAnalisisFisico = request.ObservacionAnalisisFisico; guiaRecepcionMateriaPrima.UsuarioCalidad = request.UsuarioCalidad; guiaRecepcionMateriaPrima.ObservacionRegistroTostado = request.ObservacionRegistroTostado; guiaRecepcionMateriaPrima.ObservacionAnalisisSensorial = request.ObservacionAnalisisSensorial; guiaRecepcionMateriaPrima.DefectosTasaAnalisisSensorial = request.DefectosTasaAnalisisSensorial; guiaRecepcionMateriaPrima.DefectosIntensidadAnalisisSensorial = request.DefectosIntensidadAnalisisSensorial; guiaRecepcionMateriaPrima.UsuarioCalidad = request.UsuarioCalidad; guiaRecepcionMateriaPrima.EstadoId = GuiaRecepcionMateriaPrimaEstados.Analizado; guiaRecepcionMateriaPrima.FechaCalidad = DateTime.Now; decimal subTotalAnalisisSensorial = 0; if (request.AnalisisSensorialAtributoDetalleList.FirstOrDefault() != null) { List <GuiaRecepcionMateriaPrimaAnalisisSensorialAtributoDetalleTipo> AnalisisSensorialAtributoDetalle = new List <GuiaRecepcionMateriaPrimaAnalisisSensorialAtributoDetalleTipo>(); request.AnalisisSensorialAtributoDetalleList.ForEach(z => { if (z.Valor.HasValue) { subTotalAnalisisSensorial = subTotalAnalisisSensorial + z.Valor.Value; } }); } guiaRecepcionMateriaPrima.SubTotalAnalisisSensorial = subTotalAnalisisSensorial; guiaRecepcionMateriaPrima.TotalAnalisisSensorial = subTotalAnalisisSensorial - (guiaRecepcionMateriaPrima.DefectosTasaAnalisisSensorial * guiaRecepcionMateriaPrima.DefectosIntensidadAnalisisSensorial); int affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarAnalisisCalidad(guiaRecepcionMateriaPrima); #region "Analisis Fisico Color" if (request.AnalisisFisicoColorDetalleList.FirstOrDefault() != null) { List <GuiaRecepcionMateriaPrimaAnalisisFisicoColorDetalleTipo> AnalisisFisicoColorDetalleList = new List <GuiaRecepcionMateriaPrimaAnalisisFisicoColorDetalleTipo>(); request.AnalisisFisicoColorDetalleList.ForEach(z => { GuiaRecepcionMateriaPrimaAnalisisFisicoColorDetalleTipo item = new GuiaRecepcionMateriaPrimaAnalisisFisicoColorDetalleTipo(); item.ColorDetalleDescripcion = z.ColorDetalleDescripcion; item.ColorDetalleId = z.ColorDetalleId; item.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; item.Valor = z.Valor; AnalisisFisicoColorDetalleList.Add(item); }); affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarGuiaRecepcionMateriaPrimaAnalisisFisicoColorDetalle(AnalisisFisicoColorDetalleList, request.GuiaRecepcionMateriaPrimaId); } #endregion #region Analisis Fisico Defecto Primario if (request.AnalisisFisicoDefectoPrimarioDetalleList.FirstOrDefault() != null) { List <GuiaRecepcionMateriaPrimaAnalisisFisicoDefectoPrimarioDetalleTipo> AnalisisFisicoDefectoPrimarioDetalleList = new List <GuiaRecepcionMateriaPrimaAnalisisFisicoDefectoPrimarioDetalleTipo>(); request.AnalisisFisicoDefectoPrimarioDetalleList.ForEach(z => { GuiaRecepcionMateriaPrimaAnalisisFisicoDefectoPrimarioDetalleTipo item = new GuiaRecepcionMateriaPrimaAnalisisFisicoDefectoPrimarioDetalleTipo(); item.DefectoDetalleId = z.DefectoDetalleId; item.DefectoDetalleDescripcion = z.DefectoDetalleDescripcion; item.DefectoDetalleEquivalente = z.DefectoDetalleEquivalente; item.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; item.Valor = z.Valor; AnalisisFisicoDefectoPrimarioDetalleList.Add(item); }); affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarGuiaRecepcionMateriaPrimaAnalisisFisicoDefectoPrimarioDetalle(AnalisisFisicoDefectoPrimarioDetalleList, request.GuiaRecepcionMateriaPrimaId); } #endregion #region "Analisis Fisico Defecto Secundario Detalle" if (request.AnalisisFisicoDefectoSecundarioDetalleList.FirstOrDefault() != null) { List <GuiaRecepcionMateriaPrimaAnalisisFisicoDefectoSecundarioDetalleTipo> AnalisisFisicoDefectoSecundarioDetalleList = new List <GuiaRecepcionMateriaPrimaAnalisisFisicoDefectoSecundarioDetalleTipo>(); request.AnalisisFisicoDefectoSecundarioDetalleList.ForEach(z => { GuiaRecepcionMateriaPrimaAnalisisFisicoDefectoSecundarioDetalleTipo item = new GuiaRecepcionMateriaPrimaAnalisisFisicoDefectoSecundarioDetalleTipo(); item.DefectoDetalleId = z.DefectoDetalleId; item.DefectoDetalleDescripcion = z.DefectoDetalleDescripcion; item.DefectoDetalleEquivalente = z.DefectoDetalleEquivalente; item.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; item.Valor = z.Valor; AnalisisFisicoDefectoSecundarioDetalleList.Add(item); }); affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarGuiaRecepcionMateriaPrimaAnalisisFisicoDefectoSecundarioDetalle(AnalisisFisicoDefectoSecundarioDetalleList, request.GuiaRecepcionMateriaPrimaId); } #endregion #region "Analisis Fisico Olor Detalle" if (request.AnalisisFisicoOlorDetalleList.FirstOrDefault() != null) { List <GuiaRecepcionMateriaPrimaAnalisisFisicoOlorDetalleTipo> AnalisisFisicoDefectoSecundarioDetalleList = new List <GuiaRecepcionMateriaPrimaAnalisisFisicoOlorDetalleTipo>(); request.AnalisisFisicoOlorDetalleList.ForEach(z => { GuiaRecepcionMateriaPrimaAnalisisFisicoOlorDetalleTipo item = new GuiaRecepcionMateriaPrimaAnalisisFisicoOlorDetalleTipo(); item.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; item.OlorDetalleDescripcion = z.OlorDetalleDescripcion; item.OlorDetalleId = z.OlorDetalleId; item.Valor = z.Valor; AnalisisFisicoDefectoSecundarioDetalleList.Add(item); }); affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarGuiaRecepcionMateriaPrimaAnalisisFisicoOlorDetalle(AnalisisFisicoDefectoSecundarioDetalleList, request.GuiaRecepcionMateriaPrimaId); } #endregion #region "Analisis Sensorial Atributo" if (request.AnalisisSensorialAtributoDetalleList.FirstOrDefault() != null) { List <GuiaRecepcionMateriaPrimaAnalisisSensorialAtributoDetalleTipo> AnalisisSensorialAtributoDetalle = new List <GuiaRecepcionMateriaPrimaAnalisisSensorialAtributoDetalleTipo>(); request.AnalisisSensorialAtributoDetalleList.ForEach(z => { GuiaRecepcionMateriaPrimaAnalisisSensorialAtributoDetalleTipo item = new GuiaRecepcionMateriaPrimaAnalisisSensorialAtributoDetalleTipo(); item.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; item.AtributoDetalleDescripcion = z.AtributoDetalleDescripcion; item.AtributoDetalleId = z.AtributoDetalleId; item.Valor = z.Valor; AnalisisSensorialAtributoDetalle.Add(item); }); affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarGuiaRecepcionMateriaPrimaAnalisisSensorialAtributoDetalle(AnalisisSensorialAtributoDetalle, request.GuiaRecepcionMateriaPrimaId); } #endregion if (request.AnalisisSensorialDefectoDetalleList.FirstOrDefault() != null) { List <GuiaRecepcionMateriaPrimaAnalisisSensorialDefectoDetalleTipo> AnalisisSensorialDefectoDetalle = new List <GuiaRecepcionMateriaPrimaAnalisisSensorialDefectoDetalleTipo>(); request.AnalisisSensorialDefectoDetalleList.ForEach(z => { GuiaRecepcionMateriaPrimaAnalisisSensorialDefectoDetalleTipo item = new GuiaRecepcionMateriaPrimaAnalisisSensorialDefectoDetalleTipo(); item.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; item.DefectoDetalleDescripcion = z.DefectoDetalleDescripcion; item.DefectoDetalleId = z.DefectoDetalleId; item.Valor = z.Valor; AnalisisSensorialDefectoDetalle.Add(item); }); affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarGuiaRecepcionMateriaPrimaAnalisisSensorialDefectoDetalle(AnalisisSensorialDefectoDetalle, request.GuiaRecepcionMateriaPrimaId); } if (request.RegistroTostadoIndicadorDetalleList.FirstOrDefault() != null) { List <GuiaRecepcionMateriaPrimaRegistroTostadoIndicadorDetalleTipo> RegistroTostadoIndicadorDetalle = new List <GuiaRecepcionMateriaPrimaRegistroTostadoIndicadorDetalleTipo>(); request.RegistroTostadoIndicadorDetalleList.ForEach(z => { GuiaRecepcionMateriaPrimaRegistroTostadoIndicadorDetalleTipo item = new GuiaRecepcionMateriaPrimaRegistroTostadoIndicadorDetalleTipo(); item.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; item.IndicadorDetalleDescripcion = z.IndicadorDetalleDescripcion; item.IndicadorDetalleId = z.IndicadorDetalleId; item.Valor = z.Valor; RegistroTostadoIndicadorDetalle.Add(item); }); affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarGuiaRecepcionMateriaPrimaRegistroTostadoIndicadorDetalle(RegistroTostadoIndicadorDetalle, request.GuiaRecepcionMateriaPrimaId); } return(affected); }
public int ActualizarPesadoGuiaRecepcionMateriaPrima(RegistrarActualizarPesadoGuiaRecepcionMateriaPrimaRequestDTO request) { GuiaRecepcionMateriaPrima guiaRecepcionMateriaPrima = new GuiaRecepcionMateriaPrima(); decimal kilosNetosPesado = request.KilosBrutosPesado - request.TaraPesado; guiaRecepcionMateriaPrima.GuiaRecepcionMateriaPrimaId = request.GuiaRecepcionMateriaPrimaId; guiaRecepcionMateriaPrima.EmpresaId = request.EmpresaId; guiaRecepcionMateriaPrima.TipoProvedorId = request.TipoProvedorId; guiaRecepcionMateriaPrima.NumeroReferencia = request.NumeroReferencia; guiaRecepcionMateriaPrima.SocioId = request.SocioId; guiaRecepcionMateriaPrima.TerceroId = request.TerceroId; guiaRecepcionMateriaPrima.IntermediarioId = request.IntermediarioId; guiaRecepcionMateriaPrima.ProductoId = request.ProductoId; guiaRecepcionMateriaPrima.SubProductoId = request.SubProductoId; guiaRecepcionMateriaPrima.FechaCosecha = request.FechaCosecha; guiaRecepcionMateriaPrima.FechaPesado = DateTime.Now; guiaRecepcionMateriaPrima.UsuarioPesado = request.UsuarioPesado; guiaRecepcionMateriaPrima.UnidadMedidaIdPesado = request.UnidadMedidaIdPesado; guiaRecepcionMateriaPrima.CantidadPesado = request.CantidadPesado; guiaRecepcionMateriaPrima.KilosBrutosPesado = request.KilosBrutosPesado; guiaRecepcionMateriaPrima.KilosNetosPesado = kilosNetosPesado; guiaRecepcionMateriaPrima.TaraPesado = request.TaraPesado; guiaRecepcionMateriaPrima.ObservacionPesado = request.ObservacionPesado; guiaRecepcionMateriaPrima.SocioFincaId = request.SocioFincaId; guiaRecepcionMateriaPrima.SocioFincaCertificacion = request.SocioFincaCertificacion; guiaRecepcionMateriaPrima.IntermediarioFinca = request.IntermediarioFinca; guiaRecepcionMateriaPrima.TerceroFincaId = request.TerceroFincaId; guiaRecepcionMateriaPrima.TipoProduccionId = request.TipoProduccionId; guiaRecepcionMateriaPrima.EstadoId = GuiaRecepcionMateriaPrimaEstados.Pesado; guiaRecepcionMateriaPrima.FechaUltimaActualizacion = DateTime.Now; guiaRecepcionMateriaPrima.UsuarioUltimaActualizacion = request.UsuarioPesado; string productoIdCafePergamino = _ParametrosSettings.Value.ProductoIdCafePergamino; string subProductoIdCafeSeco = _ParametrosSettings.Value.SubProductoIdCafeSeco; ConsultaGuiaRecepcionMateriaPrimaPorIdBE consultaGuiaRecepcionMateriaPrimaPorIdBE = _IGuiaRecepcionMateriaPrimaRepository.ConsultarGuiaRecepcionMateriaPrimaPorId(guiaRecepcionMateriaPrima.GuiaRecepcionMateriaPrimaId); int affected = _IGuiaRecepcionMateriaPrimaRepository.ActualizarPesado(guiaRecepcionMateriaPrima); if (consultaGuiaRecepcionMateriaPrimaPorIdBE.ProductoId == productoIdCafePergamino && consultaGuiaRecepcionMateriaPrimaPorIdBE.SubProductoId == subProductoIdCafeSeco && consultaGuiaRecepcionMateriaPrimaPorIdBE.SocioFincaCertificacion != String.Empty) { List <ConsultaSocioFincaEstimadoPorSocioFincaIdBE> fincaEstimados = _ISocioFincaRepository.ConsultarSocioFincaEstimadoPorSocioFincaId(consultaGuiaRecepcionMateriaPrimaPorIdBE.SocioFincaId.Value).ToList(); if (fincaEstimados.Count > 0) { int anioActual = DateTime.Now.Year; ConsultaSocioFincaEstimadoPorSocioFincaIdBE fincaEstima = null; fincaEstima = fincaEstimados.Where(x => x.Anio == anioActual).FirstOrDefault(); if (fincaEstima != null) { _ISocioFincaRepository.ActualizarSocioFincaEstimadoConsumido(fincaEstima.SocioFincaEstimadoId, consultaGuiaRecepcionMateriaPrimaPorIdBE.KilosBrutosPesado * -1); } } } if (request.ProductoId == productoIdCafePergamino && request.SubProductoId == subProductoIdCafeSeco && request.SocioFincaCertificacion != String.Empty) { List <ConsultaSocioFincaEstimadoPorSocioFincaIdBE> fincaEstimados = _ISocioFincaRepository.ConsultarSocioFincaEstimadoPorSocioFincaId(request.SocioFincaId.Value).ToList(); if (fincaEstimados.Count > 0) { int anioActual = DateTime.Now.Year; ConsultaSocioFincaEstimadoPorSocioFincaIdBE fincaEstima = null; fincaEstima = fincaEstimados.Where(x => x.Anio == anioActual).FirstOrDefault(); if (fincaEstima != null) { _ISocioFincaRepository.ActualizarSocioFincaEstimadoConsumido(fincaEstima.SocioFincaEstimadoId, request.KilosBrutosPesado); } } } return(affected); }
public int RegistrarPesadoGuiaRecepcionMateriaPrima(RegistrarActualizarPesadoGuiaRecepcionMateriaPrimaRequestDTO request) { string productoIdCafePergamino = _ParametrosSettings.Value.ProductoIdCafePergamino; string subProductoIdCafeSeco = _ParametrosSettings.Value.SubProductoIdCafeSeco; ConsultaContratoAsignado consultaContratoAsignado = null; decimal kilosNetosPesado = request.KilosBrutosPesado - request.TaraPesado; int?contratoAsignadoId = null; if (request.ProductoId == productoIdCafePergamino && request.SubProductoId == subProductoIdCafeSeco) { consultaContratoAsignado = _IContratoRepository.ConsultarContratoAsignado(request.EmpresaId, ContratoEstados.Asignado); if (consultaContratoAsignado == null || consultaContratoAsignado.SaldoPendienteKGPergaminoAsignacion == 0) { throw new ResultException(new Result { ErrCode = "03", Message = "Acopio.GuiaRecepcionMateriaPrima.ValidacionContratoNoAsignado.Label" }); } if (kilosNetosPesado > consultaContratoAsignado.SaldoPendienteKGPergaminoAsignacion) { throw new ResultException(new Result { ErrCode = "04", Message = "Acopio.GuiaRecepcionMateriaPrima.ValidacionKilosNetosPesadoMayorContratoNoAsignado.Label" }); } contratoAsignadoId = consultaContratoAsignado.ContratoId; } GuiaRecepcionMateriaPrima guiaRecepcionMateriaPrima = new GuiaRecepcionMateriaPrima(); guiaRecepcionMateriaPrima.EmpresaId = request.EmpresaId; guiaRecepcionMateriaPrima.NumeroReferencia = request.NumeroReferencia; guiaRecepcionMateriaPrima.Numero = _ICorrelativoRepository.Obtener(request.EmpresaId, Documentos.GuiaRecepcion); guiaRecepcionMateriaPrima.TipoProvedorId = request.TipoProvedorId; guiaRecepcionMateriaPrima.SocioId = request.SocioId; guiaRecepcionMateriaPrima.TerceroId = request.TerceroId; guiaRecepcionMateriaPrima.IntermediarioId = request.IntermediarioId; guiaRecepcionMateriaPrima.ProductoId = request.ProductoId; guiaRecepcionMateriaPrima.SubProductoId = request.SubProductoId; guiaRecepcionMateriaPrima.FechaCosecha = request.FechaCosecha; guiaRecepcionMateriaPrima.FechaPesado = DateTime.Now; guiaRecepcionMateriaPrima.UsuarioPesado = request.UsuarioPesado; guiaRecepcionMateriaPrima.UnidadMedidaIdPesado = request.UnidadMedidaIdPesado; guiaRecepcionMateriaPrima.CantidadPesado = request.CantidadPesado; guiaRecepcionMateriaPrima.KilosBrutosPesado = request.KilosBrutosPesado; guiaRecepcionMateriaPrima.TaraPesado = request.TaraPesado; guiaRecepcionMateriaPrima.ObservacionPesado = request.ObservacionPesado; guiaRecepcionMateriaPrima.SocioFincaId = request.SocioFincaId; guiaRecepcionMateriaPrima.SocioFincaCertificacion = request.SocioFincaCertificacion; guiaRecepcionMateriaPrima.IntermediarioFinca = request.IntermediarioFinca; guiaRecepcionMateriaPrima.TerceroFincaId = request.TerceroFincaId; guiaRecepcionMateriaPrima.TipoProduccionId = request.TipoProduccionId; guiaRecepcionMateriaPrima.EstadoId = GuiaRecepcionMateriaPrimaEstados.Pesado; guiaRecepcionMateriaPrima.FechaRegistro = DateTime.Now; guiaRecepcionMateriaPrima.UsuarioRegistro = request.UsuarioPesado; guiaRecepcionMateriaPrima.KilosNetosPesado = kilosNetosPesado; guiaRecepcionMateriaPrima.ContratoAsignadoId = contratoAsignadoId; int affected = _IGuiaRecepcionMateriaPrimaRepository.InsertarPesado(guiaRecepcionMateriaPrima); if (request.ProductoId == productoIdCafePergamino && request.SubProductoId == subProductoIdCafeSeco && request.SocioFincaCertificacion != String.Empty) { List <ConsultaSocioFincaEstimadoPorSocioFincaIdBE> fincaEstimados = _ISocioFincaRepository.ConsultarSocioFincaEstimadoPorSocioFincaId(request.SocioFincaId.Value).ToList(); if (fincaEstimados.Count > 0) { int anioActual = DateTime.Now.Year; ConsultaSocioFincaEstimadoPorSocioFincaIdBE fincaEstima = null; fincaEstima = fincaEstimados.Where(x => x.Anio == anioActual).FirstOrDefault(); if (fincaEstima != null) { fincaEstima.SaldoPendiente = fincaEstima.Estimado - fincaEstima.Consumido; if (fincaEstima.SaldoPendiente > 0) { _ISocioFincaRepository.ActualizarSocioFincaEstimadoConsumido(fincaEstima.SocioFincaEstimadoId, request.KilosBrutosPesado); } } } } if (contratoAsignadoId.HasValue) { _IContratoRepository.ActualizarSaldoPendienteAsignacionAcopio(contratoAsignadoId.Value, kilosNetosPesado); if ((consultaContratoAsignado.SaldoPendienteKGPergaminoAsignacion - kilosNetosPesado) == 0) { _IContratoRepository.ActualizarEstado(contratoAsignadoId.Value, DateTime.Now, request.UsuarioPesado, ContratoEstados.Completado); } } return(affected); }