Boolean GuardarDatos() { try { Boolean bolResult = false; string msg = ""; get_Bodega(); tb_Bodega_Bus bus_pvta = new tb_Bodega_Bus(); if (ValidarDatos()) { switch (_Accion) { case Cl_Enumeradores.eTipo_action.grabar: if (bus_pvta.GrabarDB(info, ref idBod, ref msg)) { bolResult = true; ucGe_Menu.Enabled_btnGuardar = false; ucGe_Menu.Enabled_bntGuardar_y_Salir = false; MessageBox.Show("Bodega Guardada Exitosamente", "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(msg, "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Information); } break; case Cl_Enumeradores.eTipo_action.actualizar: if (bus_pvta.ModificarDB(info, ref msg)) { bolResult = true; ucGe_Menu.Enabled_btnGuardar = false; ucGe_Menu.Enabled_bntGuardar_y_Salir = false; MessageBox.Show("Bodega Modificada Exitosamente", "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Information); } else { MessageBox.Show(msg, "SISTEMA", MessageBoxButtons.OK, MessageBoxIcon.Information); } break; default: break; } } return(bolResult); } catch (Exception ex) { Log_Error_bus.Log_Error(ex.ToString()); MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); return(false); } }
public Boolean GuardarDB(com_solicitud_compra_Info info, ref string msg) { try { Boolean res = true; if (validarObjeto(info, ref msg)) { odata.GuardarDB(info); #region grabar en tabla com_solicitud_compra_det_aprobacion // consultar el detalle solicitud com_solicitud_compra_det_Bus bus_DetSol = new com_solicitud_compra_det_Bus(); List <com_solicitud_compra_det_Info> lisDetSol = new List <com_solicitud_compra_det_Info>(); lisDetSol = bus_DetSol.Get_list_DetalleLstSolicitudCompra(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra); if (lisDetSol.Count() == 0) { res = false; } List <com_solicitud_compra_det_aprobacion_Info> listDetApr = new List <com_solicitud_compra_det_aprobacion_Info>(); List <com_solicitud_compra_det_pre_aprobacion_Info> listDetPreApr = new List <com_solicitud_compra_det_pre_aprobacion_Info>(); foreach (var item in lisDetSol) { com_solicitud_compra_det_aprobacion_Info infoDetApr = new com_solicitud_compra_det_aprobacion_Info(); infoDetApr.Checked = true; infoDetApr.IdEmpresa = item.IdEmpresa; infoDetApr.IdSucursal_SC = item.IdSucursal; infoDetApr.IdSolicitudCompra = item.IdSolicitudCompra; infoDetApr.Secuencia_SC = item.Secuencia; infoDetApr.IdProducto_SC = item.IdProducto; infoDetApr.NomProducto_SC = item.NomProducto; infoDetApr.Cantidad_aprobada = item.do_Cantidad; com_parametro_Bus bus_param = new com_parametro_Bus(); com_parametro_Info info_param = new com_parametro_Info(); info_param = bus_param.Get_Info_parametro(item.IdEmpresa); infoDetApr.IdEstadoAprobacion = info_param.IdEstadoAprobacion_SolCompra; infoDetApr.IdProveedor_SC = null; infoDetApr.IdUsuarioAprueba = param.IdUsuario; infoDetApr.FechaHoraAprobacion = param.Fecha_Transac; infoDetApr.do_observacion = ""; listDetApr.Add(infoDetApr); //preaprobacion com_solicitud_compra_det_pre_aprobacion_Info infoDetPreApr = new com_solicitud_compra_det_pre_aprobacion_Info(); infoDetPreApr.IdEmpresa = item.IdEmpresa; infoDetPreApr.IdSucursal_SC = item.IdSucursal; infoDetPreApr.IdSolicitudCompra = item.IdSolicitudCompra; infoDetPreApr.Secuencia_SC = item.Secuencia; infoDetPreApr.IdEstadoAprobacion = info_param.IdEstadoAprobacion_SolCompra; infoDetPreApr.IdUsuarioAprueba = param.IdUsuario; infoDetPreApr.FechaHoraAprobacion = DateTime.Now; infoDetPreApr.observacion = "**Pendiente**"; listDetPreApr.Add(infoDetPreApr); } com_solicitud_compra_det_aprobacion_Bus Bus_DetAproba = new com_solicitud_compra_det_aprobacion_Bus(); string validaMotivo = ""; if (Bus_DetAproba.Validar_objeto_AprobSolComp(listDetApr, validaMotivo, ref msg)) { com_solicitud_compra_det_aprobacion_Data odataDetApr = new com_solicitud_compra_det_aprobacion_Data(); odataDetApr.GuardarDB(listDetApr); com_solicitud_compra_det_pre_aprobacion_Data odataDetPreApr = new com_solicitud_compra_det_pre_aprobacion_Data(); odataDetPreApr.GuardarDB(listDetPreApr); } #endregion #region grabar en tabla in_producto_x_tb_bodega // 1. obtener el detalle solicitud compra com_solicitud_compra_det_Bus bus_DetSoli = new com_solicitud_compra_det_Bus(); List <com_solicitud_compra_det_Info> listDetSoli = new List <com_solicitud_compra_det_Info>(); listDetSoli = bus_DetSoli.Get_list_DetalleLstSolicitudCompra(info.IdEmpresa, info.IdSucursal, info.IdSolicitudCompra); // 2. recorro el detalle solicitud foreach (var item in lisDetSol) { in_producto_x_tb_bodega_Data DataInserte = new in_producto_x_tb_bodega_Data(); // 3. Obtengo bodega Sucursal int IdBodega = 0; tb_Bodega_Bus bus_Bodega = new tb_Bodega_Bus(); List <tb_Bodega_Info> listBod = new List <tb_Bodega_Info>(); listBod = bus_Bodega.Get_List_Bodega(item.IdEmpresa, item.IdSucursal); if (listBod.Count() == 0) { // crear bodega Sucursal tb_Bodega_Info infoBodega = new tb_Bodega_Info(); infoBodega.IdEmpresa = item.IdEmpresa; infoBodega.IdSucursal = item.IdSucursal; infoBodega.bo_Descripcion = "Bodega Principal"; infoBodega.Fecha_Transac = param.Fecha_Transac; int id = 0; string msg1 = ""; bus_Bodega.GrabarDB(infoBodega, ref id, ref msg1); IdBodega = id; } else { tb_Bodega_Info infoBod = listBod.FirstOrDefault(); IdBodega = infoBod.IdBodega; } //// 4. Verifico producto (in_producto_x_tb_bodega) //if (!DataInserte.VerificarExisteProductoXSucursalXBodega(item.IdEmpresa, item.IdSucursal, IdBodega, Convert.ToDecimal(item.IdProducto))) //{ // // 5. Obtengo producto (in_Producto) // in_Producto_data odataP = new in_Producto_data(); // in_Producto_Info infoPro = new in_Producto_Info(); // infoPro = odataP.BuscarProducto(Convert.ToDecimal(item.IdProducto), item.IdEmpresa); // in_producto_x_tb_bodega_Info infoProxBod = new in_producto_x_tb_bodega_Info(); // infoProxBod.IdEmpresa = item.IdEmpresa; // infoProxBod.IdSucursal = item.IdSucursal; // infoProxBod.IdBodega = IdBodega; // infoProxBod.IdProducto = Convert.ToDecimal(item.IdProducto); // infoProxBod.pr_precio_publico = infoPro.pr_precio_publico; // infoProxBod.pr_precio_mayor = infoPro.pr_precio_mayor; // infoProxBod.pr_precio_puerta = 0; // infoProxBod.pr_precio_minimo = infoPro.pr_precio_minimo; // infoProxBod.pr_Por_descuento = infoPro.Porc_Descuento; // infoProxBod.pr_stock = infoPro.pr_stock; // infoProxBod.pr_stock_maximo = infoPro.pr_stock_maximo; // infoProxBod.pr_stock_minimo = infoPro.pr_stock_minimo; // infoProxBod.pr_costo_fob = infoPro.pr_costo_fob; // infoProxBod.pr_costo_CIF = infoPro.pr_costo_CIF; // infoProxBod.pr_costo_promedio = infoPro.pr_costo_promedio; // // 5. Inserto (in_producto_x_tb_bodega) // string mensajea = ""; // DataInserte.GrabaDBUnItem(infoProxBod, info.IdEmpresa, ref mensajea); //} //else //{ //} } #endregion } else { res = false; } return(res); } catch (Exception ex) { Core.Erp.Info.Log_Exception.LoggingManager.Logger.Log(Core.Erp.Info.Log_Exception.LoggingCategory.Error, ex.Message); throw new Core.Erp.Info.Log_Exception.DalException(string.Format("", "GuardarDB", ex.Message), ex) { EntityType = typeof(com_solicitud_compra_Bus) }; } }