public Boolean AnularDB(com_solicitud_compra_Info info, ref string msg) { try { using (EntitiesCompras Context = new EntitiesCompras()) { var contact = Context.com_solicitud_compra.FirstOrDefault(var => var.IdEmpresa == info.IdEmpresa && var.IdSucursal == info.IdSucursal && var.IdSolicitudCompra == info.IdSolicitudCompra); if (contact != null) { contact.Estado = "I"; contact.IdEstadoAprobacion = "REP_SOL"; contact.FechaHoraAnul = info.FechaHoraAnul; contact.IdUsuarioUltAnu = info.IdUsuarioUltAnu; /// PreAprobacion// /// com_solicitud_compra_det_pre_aprobacion_Data odataPreApro = new com_solicitud_compra_det_pre_aprobacion_Data(); List <com_solicitud_compra_det_pre_aprobacion_Info> listPreApro; listPreApro = new List <com_solicitud_compra_det_pre_aprobacion_Info>(odataPreApro.Get_List_solicitud_compra_det_Pre_aprobacion(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra)); if (listPreApro.Count() != 0) { odataPreApro.EliminarDB(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra); } listPreApro = new List <com_solicitud_compra_det_pre_aprobacion_Info>(); /// aprobacion// /// /// aprobacion// com_solicitud_compra_det_aprobacion_Data odataApro = new com_solicitud_compra_det_aprobacion_Data(); com_solicitud_compra_det_Data odata = new com_solicitud_compra_det_Data(); List <com_solicitud_compra_det_aprobacion_Info> listApro; listApro = new List <com_solicitud_compra_det_aprobacion_Info>(odataApro.Get_List_solicitud_compra_det_aprobacion(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra)); if (listApro.Count() != 0) { odataApro.EliminarDB(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra); } listApro = new List <com_solicitud_compra_det_aprobacion_Info>(); Context.SaveChanges(); } } return(true); } catch (Exception ex) { string arreglo = ToString(); tb_sis_Log_Error_Vzen_Data oDataLog = new tb_sis_Log_Error_Vzen_Data(); tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", arreglo, "", "", "", "", "", DateTime.Now); oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje); mensaje = ex.ToString(); msg = mensaje; throw new Exception(ex.ToString()); } }
public Boolean ModificarDB(com_solicitud_compra_Info info) { try { using (EntitiesCompras context = new EntitiesCompras()) { var contact = context.com_solicitud_compra.FirstOrDefault(var => var.IdEmpresa == info.IdEmpresa && var.IdSucursal == info.IdSucursal && var.IdSolicitudCompra == info.IdSolicitudCompra); if (contact != null) { contact.NumDocumento = info.NumDocumento; contact.IdSolicitante = info.IdSolicitante; contact.IdComprador = info.IdComprador; contact.IdDepartamento = Convert.ToInt32(info.IdDepartamento); contact.fecha = Convert.ToDateTime(info.fecha.ToShortDateString()); contact.observacion = info.observacion; contact.Fecha_UltMod = info.Fecha_UltMod; contact.IdUsuarioUltMod = info.IdUsuarioUltMod; context.SaveChanges(); // consulta detalle PRE aprobacion com_solicitud_compra_det_pre_aprobacion_Data odataPreApro = new com_solicitud_compra_det_pre_aprobacion_Data(); List <com_solicitud_compra_det_pre_aprobacion_Info> listPreApro; listPreApro = new List <com_solicitud_compra_det_pre_aprobacion_Info>(odataPreApro.Get_List_solicitud_compra_det_Pre_aprobacion(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra)); if (listPreApro.Count() != 0) { // elimino detalle aprobacion odataPreApro.EliminarDB(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra); } // consulta detalle aprobacion com_solicitud_compra_det_aprobacion_Data odataApro = new com_solicitud_compra_det_aprobacion_Data(); List <com_solicitud_compra_det_aprobacion_Info> listApro; listApro = new List <com_solicitud_compra_det_aprobacion_Info>(odataApro.Get_List_solicitud_compra_det_aprobacion(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra)); if (listApro.Count() != 0) { // elimino detalle aprobacion odataApro.EliminarDB(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra); } // eliminar detalle solicitud com_solicitud_compra_det_Data odata = new com_solicitud_compra_det_Data(); odata.EliminarDB(info); listApro = new List <com_solicitud_compra_det_aprobacion_Info>(); listPreApro = new List <com_solicitud_compra_det_pre_aprobacion_Info>(); odata.GuardarDB(info.DetSolicitudCompra); foreach (var item in info.DetSolicitudCompra) { com_solicitud_compra_det_aprobacion_Info liaprobada = new com_solicitud_compra_det_aprobacion_Info(); item.IdEmpresa = info.IdEmpresa; item.IdSucursal = info.IdSucursal; item.IdSolicitudCompra = info.IdSolicitudCompra; liaprobada.IdEmpresa = item.IdEmpresa; liaprobada.IdSucursal_SC = item.IdSucursal; liaprobada.IdSolicitudCompra = item.IdSolicitudCompra; liaprobada.Secuencia_SC = item.Secuencia; liaprobada.IdProducto_SC = item.IdProducto; liaprobada.NomProducto_SC = item.NomProducto; liaprobada.Cantidad_aprobada = info.do_Cantidad; liaprobada.IdEstadoAprobacion = info.IdEstadoAprobacion; liaprobada.IdProveedor_SC = info.IdProveedor; liaprobada.IdUsuarioAprueba = info.IdUsuarioAprobo; liaprobada.FechaHoraAprobacion = DateTime.Now; liaprobada.do_observacion = info.observacion; liaprobada.IdUnidadMedida = info.IdUnidadMedida; liaprobada.do_precioCompra = item.Precio; liaprobada.do_porc_des = item.Porc_Descuento; liaprobada.do_descuento = item.Descuento; liaprobada.do_subtotal = item.Subtotal; liaprobada.do_iva = item.Iva; liaprobada.do_total = item.Total; liaprobada.IdCentroCosto = item.IdCentroCosto; liaprobada.IdCentroCosto_sub_centro_costo = item.IdCentroCosto_sub_centro_costo; liaprobada.IdPunto_cargo = item.IdPunto_cargo; listApro.Add(liaprobada); com_solicitud_compra_det_pre_aprobacion_Info InfoPreAprobada = new com_solicitud_compra_det_pre_aprobacion_Info(); InfoPreAprobada.IdEmpresa = item.IdEmpresa; InfoPreAprobada.IdSucursal_SC = item.IdSucursal; InfoPreAprobada.IdSolicitudCompra = item.IdSolicitudCompra; InfoPreAprobada.Secuencia_SC = item.Secuencia; InfoPreAprobada.IdEstadoAprobacion = info.IdEstadoAprobacion; InfoPreAprobada.IdUsuarioAprueba = info.IdUsuarioAprobo; InfoPreAprobada.FechaHoraAprobacion = DateTime.Now; InfoPreAprobada.observacion = ""; listPreApro.Add(InfoPreAprobada); } // graba detalle solicitud compra odataApro.GuardarDB(listApro); odataPreApro.GuardarDB(listPreApro); } } return(true); } catch (Exception ex) { string arreglo = ToString(); tb_sis_Log_Error_Vzen_Data oDataLog = new tb_sis_Log_Error_Vzen_Data(); tb_sis_Log_Error_Vzen_Info Log_Error_sis = new tb_sis_Log_Error_Vzen_Info(ex.ToString(), "", arreglo, "", "", "", "", "", DateTime.Now); oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje); mensaje = ex.ToString(); throw new Exception(ex.ToString()); } }