Example #1
0
        private Boolean guardar()
        {
            try
            {
                com_solicitud_compra_Info InfoSolCom = new com_solicitud_compra_Info();
                string msg = "";

                foreach (var item in listSolCom)
                {
                    item.IdUsuarioAprobo     = param.IdUsuario;
                    item.IdUsuarioUltMod     = param.IdUsuario;
                    item.FechaHoraAprobacion = param.Fecha_Transac;
                    item.Fecha_UltMod        = param.Fecha_Transac;
                }

                var ListaRes = listSolCom.ToList().FindAll(v => v.Checked);


                SolComBus.ModificarDBEstadoAprobacion(ListaRes, ref msg);


                MessageBox.Show("Actualizacion de Estado de Aprobacion ok...", param.Nombre_sistema, MessageBoxButtons.OK, MessageBoxIcon.Information);
                LimpiarDatos();

                return(true);
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                return(false);
            }
        }
        private void gridViewConsulta_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
        {
            try
            {
                Info = (com_solicitud_compra_Info)gridViewConsulta.GetFocusedRow();


                if (e.HitInfo.Column != null)
                {
                    if (gridViewConsulta.FocusedColumn.Name == ColOrdenesCompra.Name)
                    {
                        com_ordencompra_local_Bus         BusOC  = new com_ordencompra_local_Bus();
                        List <com_ordencompra_local_Info> listOc = new List <com_ordencompra_local_Info>();
                        listOc = BusOC.Get_List_ordencompra_local_x_Solicitud(param.IdEmpresa, Info.IdSucursal, Info.IdSolicitudCompra);
                        FrmCom_Ordenes_Compra_x_Solicitud frm = new FrmCom_Ordenes_Compra_x_Solicitud();
                        frm.set_grid_x_oc(listOc);
                        //frm.MdiParent = this.MdiParent;
                        frm.ShowDialog();
                    }
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
 void ucGe_Menu_Mantenimiento_x_usuario1_event_btnconsultar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
 {
     try
     {
         Info = (com_solicitud_compra_Info)gridViewConsulta.GetFocusedRow();
         if (Info != null)
         {
             frm           = new FrmCom_SolicitudCompra_Mant(Cl_Enumeradores.eTipo_action.consultar);
             frm.MdiParent = this.MdiParent;
             frm.Text      = frm.Text + "***CONSULTAR REGISTRO***";
             frm._SetInfo  = Info;
             frm.Show();
             frm.event_FrmCom_SolicitudCompraMantenimiento_FormClosing += frm_event_FrmCom_SolicitudCompraMantenimiento_FormClosing;
         }
         else
         {
             MessageBox.Show("Seleccione un Registro a Mostrar", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
         }
     }
     catch (Exception ex)
     {
         Log_Error_bus.Log_Error(ex.ToString());
         MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
        void ucGe_Menu_Mantenimiento_x_usuario1_event_btnModificar_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            try
            {
                Info = (com_solicitud_compra_Info)gridViewConsulta.GetFocusedRow();
                if (Info != null)
                {
                    listSolicitud = bus_Solicitud.ConsultaDetalleSolicitud_x_Solicitud(Info.IdEmpresa, Info.IdSucursal, Info.IdSolicitudCompra);

                    if (listSolicitud.Count() != 0)
                    {
                        MessageBox.Show("La solicitud #: [" + Info.IdSolicitudCompra + "], tiene asociadas Ordenes de Compra ", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                    }

                    idEmpresa  = Info.IdEmpresa;
                    idSucursal = Info.IdSucursal;
                    idSoliComp = Info.IdSolicitudCompra;

                    if (Verifica_Estado())
                    {
                        llama_frm(Cl_Enumeradores.eTipo_action.actualizar);
                    }
                }
                else
                {
                    MessageBox.Show("Seleccione un Registro a Modificar", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #5
0
        public List <com_solicitud_compra_Info> Get_List_Solicitud_x_OC(int IdEmpresa, int IdSucursal, string IdOrdenCompra)
        {
            List <com_solicitud_compra_Info> Lst = new List <com_solicitud_compra_Info>();
            EntitiesCompras OEComp = new EntitiesCompras();

            try
            {
                var Select = from q in OEComp.vwcom_ordencompra_local_det_x_com_solicitud_compra_det
                             where q.scd_IdEmpresa == IdEmpresa &&
                             q.scd_IdSucursal == IdSucursal &&
                             q.oc_NumDocumento == IdOrdenCompra
                             select q;

                foreach (var item in Select)
                {
                    com_solicitud_compra_Info SolicitudInfo = new com_solicitud_compra_Info();
                    SolicitudInfo.IdSolicitudCompra = item.scd_IdSolicitudCompra;

                    Lst.Add(SolicitudInfo);
                }

                return(Lst);
            }
            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());
            }
        }
Example #6
0
        public Boolean ModificarDB_EstadoAprobacion(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.IdEstadoAprobacion  = info.IdEstadoAprobacion;
                        contact.IdUsuarioAprobo     = (info.IdUsuarioAprobo == null) ? "" : Convert.ToString(info.IdUsuarioAprobo);
                        contact.MotivoAprobacion    = (info.MotivoAprobacion == null) ? "" : Convert.ToString(info.MotivoAprobacion);
                        contact.FechaHoraAprobacion = info.FechaHoraAprobacion;
                        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();
                throw new Exception(ex.ToString());
            }
        }
Example #7
0
        public Boolean GuardarDB(com_solicitud_compra_Info info)
        {
            try
            {
                using (EntitiesCompras Context = new EntitiesCompras())
                {
                    var Address = new com_solicitud_compra();

                    Address.IdEmpresa         = info.IdEmpresa;
                    Address.IdSucursal        = info.IdSucursal;
                    Address.IdSolicitudCompra = info.IdSolicitudCompra = GetId(info.IdEmpresa, info.IdSucursal);
                    Address.NumDocumento      = info.NumDocumento;

                    Address.IdComprador    = info.IdComprador;
                    Address.IdDepartamento = Convert.ToInt32(info.IdDepartamento);

                    Address.fecha       = Convert.ToDateTime(info.fecha.ToShortDateString());
                    Address.plazo       = 0;
                    Address.fecha_vtc   = Convert.ToDateTime(info.fecha.ToShortDateString());
                    Address.observacion = info.observacion;
                    Address.Estado      = "A";

                    Address.IdSolicitante = info.IdSolicitante;


                    Address.Fecha_Transac = info.Fecha_Transac;

                    Address.IdEstadoAprobacion  = info.IdEstadoAprobacion;
                    Address.IdUsuarioAprobo     = (info.IdUsuarioAprobo == null) ? "" : Convert.ToString(info.IdUsuarioAprobo);
                    Address.MotivoAprobacion    = (info.MotivoAprobacion == null) ? "" : Convert.ToString(info.MotivoAprobacion);
                    Address.FechaHoraAprobacion = info.FechaHoraAprobacion;

                    Context.com_solicitud_compra.Add(Address);
                    Context.SaveChanges();

                    com_solicitud_compra_det_Data odata = new com_solicitud_compra_det_Data();

                    foreach (var item in info.DetSolicitudCompra)
                    {
                        item.IdEmpresa         = info.IdEmpresa;
                        item.IdSucursal        = info.IdSucursal;
                        item.IdSolicitudCompra = info.IdSolicitudCompra;
                    }

                    odata.GuardarDB(info.DetSolicitudCompra);
                }
                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.InnerException + " " + ex.Message;
                throw new Exception(ex.InnerException.ToString());
            }
        }
 public Boolean ModificarDBEstadoAprobacion(com_solicitud_compra_Info info, ref string msg)
 {
     try
     {
         return(odata.ModificarDB_EstadoAprobacion(info));
     }
     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("", "ModificarDB_EstadoAprobacion", ex.Message), ex)
               {
                   EntityType = typeof(com_solicitud_compra_Bus)
               };
     }
 }
 public Boolean AnularDB(com_solicitud_compra_Info info, ref string msg)
 {
     try
     {
         return(odata.AnularDB(info, ref msg));
     }
     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("", "AnularDB", ex.Message), ex)
               {
                   EntityType = typeof(com_solicitud_compra_Bus)
               };
     }
 }
Example #10
0
 public Boolean EliminarDB(com_solicitud_compra_Info Info)
 {
     try
     {
         return(odata.EliminarDB(Info));
     }
     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("", "Get_List_solicitud_compra_det_aprobacion", ex.Message), ex)
               {
                   EntityType = typeof(com_solicitud_compra_det_Bus)
               };
     }
 }
        void ucGe_Menu_Mantenimiento_x_usuario1_event_btnAnular_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            try
            {
                Info = (com_solicitud_compra_Info)gridViewConsulta.GetFocusedRow();
                if (Info != null)
                {
                    if (Info.Estado == "I")
                    {
                        MessageBox.Show("El registro ya se encuentra Anulado", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                    }
                    else
                    {
                        listSolicitud = bus_Solicitud.ConsultaDetalleSolicitud_x_Solicitud(Info.IdEmpresa, Info.IdSucursal, Info.IdSolicitudCompra);

                        if (listSolicitud.Count() != 0)
                        {
                            MessageBox.Show("La solicitud #: [" + Info.IdSolicitudCompra + "], tiene asociada una Orden de Compra ", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                        }

                        idEmpresa  = Info.IdEmpresa;
                        idSucursal = Info.IdSucursal;
                        idSoliComp = Info.IdSolicitudCompra;

                        if (Verifica_Estado())
                        {
                            frm           = new FrmCom_SolicitudCompra_Mant(Cl_Enumeradores.eTipo_action.Anular);
                            frm.Text      = frm.Text + "***ANULAR REGISTRO***";
                            frm.MdiParent = this.MdiParent;
                            frm._SetInfo  = Info;
                            frm.Show();
                            frm.event_FrmCom_SolicitudCompraMantenimiento_FormClosing += frm_event_FrmCom_SolicitudCompraMantenimiento_FormClosing;
                        }
                    }
                }
                else
                {
                    MessageBox.Show("Seleccione un Registro a Anular", "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); return;
                }
            }
            catch (Exception ex)
            {
                Log_Error_bus.Log_Error(ex.ToString());
                MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Example #12
0
        public Boolean EliminarDB(com_solicitud_compra_Info Info)
        {
            try
            {
                EntitiesCompras Oent = new EntitiesCompras();

                var Consulta = Oent.Database.ExecuteSqlCommand("delete from com_solicitud_compra_det where IdEmpresa = " + Info.IdEmpresa + " and IdSucursal =" + Info.IdSucursal + " and IdSolicitudCompra= " + Info.IdSolicitudCompra + "");

                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);
                mensaje = ex.ToString();
                oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje);
                throw new Exception(ex.ToString());
            }
        }
Example #13
0
        public List <com_solicitud_compra_Info> Get_List_solicitud_compra_EstadoApro_SC()
        {
            List <com_solicitud_compra_Info> Lst = new List <com_solicitud_compra_Info>();
            EntitiesCompras OEComp = new EntitiesCompras();

            try
            {
                var Select = from q in OEComp.vwcom_EstadoAprobacion_sol_compra
                             select q;

                foreach (var item in Select)
                {
                    com_solicitud_compra_Info SolCompInfo = new com_solicitud_compra_Info();
                    SolCompInfo.IdTipoCatalogo = item.IdTipoCatalogo;
                    SolCompInfo.Codigo         = item.Codigo;
                    SolCompInfo.Id             = item.Id;
                    SolCompInfo.descripcion    = item.descripcion;
                    SolCompInfo.Orden          = Convert.ToInt32(item.Orden);
                    SolCompInfo.name           = item.name;
                    SolCompInfo.Estado         = item.Estado;

                    Lst.Add(SolCompInfo);
                }
                return(Lst);
            }
            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());
            }
        }
        public Boolean validarObjeto(com_solicitud_compra_Info info, ref string mensajeE)
        {
            try
            {
                if (info.IdEmpresa == 0 || info.IdEmpresa == null)
                {
                    mensajeE = "Uno de los Pk de la solicitud esta en cero IdEmpresa=" + info.IdEmpresa;
                    return(false);
                }

                if (info.IdSucursal == 0 || info.IdSucursal == null)
                {
                    mensajeE = "Ingrese la Sucursal ";
                    return(false);
                }

                if (info.IdSolicitante == 0)
                {
                    mensajeE = "Ingrese el Solicitante";
                    return(false);
                }
                if (info.IdComprador == 0)
                {
                    mensajeE = "Ingrese el Comprador";
                    return(false);
                }
                if (info.IdDepartamento == 0)
                {
                    mensajeE = "Ingrese el Departamento";
                    return(false);
                }

                info.observacion = (info.observacion == null) ? "" : info.observacion;

                if (info.DetSolicitudCompra.Count == 0)
                {
                    mensajeE = "La solicitud no tiene detalle ";
                    return(false);
                }

                foreach (var item in info.DetSolicitudCompra)
                {
                    if (item.do_Cantidad == 0 && item.IdProducto != 0)
                    {
                        mensajeE = "el producto :  [" + item.NomProducto + "] , tiene cantidad cero ";
                        return(false);
                    }


                    if ((item.NomProducto == "" || item.NomProducto == null) && item.do_Cantidad != 0)
                    {
                        mensajeE = "Ingrese la descripciĆ³n del producto";
                        return(false);
                    }
                }


                var qItems_Repetidos_x_PuntoCargo = from CB in info.DetSolicitudCompra
                                                    where CB.IdProducto > 0
                                                    group CB by new { CB.IdEmpresa, CB.IdProducto, CB.IdPunto_cargo } into grouping
                    select new { grouping.Key, totalReg = grouping.Count() };


                foreach (var item in qItems_Repetidos_x_PuntoCargo)
                {
                    int conta = item.totalReg;

                    if (conta > 1)
                    {
                        mensajeE = "Existen items repetidos en el Detalle por el mismo punto de cargo: Producto" + item.Key.IdProducto;
                        return(false);
                    }
                }

                return(true);
            }
            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("", "validarObjeto", ex.Message), ex)
                      {
                          EntityType = typeof(com_solicitud_compra_Bus)
                      };
            }
        }
        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)
                      };
            }
        }
Example #16
0
        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());
            }
        }
Example #17
0
        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());
            }
        }
Example #18
0
        public List <com_solicitud_compra_Info> Get_List_solicitud_compra(int IdEmpresa, int IdSucursal, DateTime FechaIni, DateTime FechaFin
                                                                          , string IdEstadoAprobacion)
        {
            List <com_solicitud_compra_Info> Lst = new List <com_solicitud_compra_Info>();

            com_ordencompra_local_det_x_com_solicitud_compra_det_Data        datDetComp = new com_ordencompra_local_det_x_com_solicitud_compra_det_Data();
            List <com_ordencompra_local_det_x_com_solicitud_compra_det_Info> lstDetComp = new List <com_ordencompra_local_det_x_com_solicitud_compra_det_Info>();

            List <string>   IdOrdenCompra = new List <string>();
            EntitiesCompras OEComp        = new EntitiesCompras();

            try
            {
                FechaIni = Convert.ToDateTime(FechaIni.ToShortDateString());
                FechaFin = Convert.ToDateTime(FechaFin.ToShortDateString());

                int IdSucursalIni = (IdSucursal == 0) ? 1 : IdSucursal;
                int IdSucursalFin = (IdSucursal == 0) ? 9999999 : IdSucursal;


                var Select = from q in OEComp.vwcom_solicitud_compra
                             where q.IdEmpresa == IdEmpresa &&
                             q.fecha <= FechaFin &&
                             q.fecha >= FechaIni &&
                             q.IdSucursal >= IdSucursalIni && q.IdSucursal <= IdSucursalFin &&
                             q.IdEstadoAprobacion.Contains(IdEstadoAprobacion)
                             select q;

                foreach (var item in Select)
                {
                    com_solicitud_compra_Info SoliCompInfo = new com_solicitud_compra_Info();

                    SoliCompInfo.IdEmpresa               = item.IdEmpresa;
                    SoliCompInfo.IdSucursal              = item.IdSucursal;
                    SoliCompInfo.IdSolicitudCompra       = item.IdSolicitudCompra;
                    SoliCompInfo.NumDocumento            = item.NumDocumento;
                    SoliCompInfo.IdSolicitante           = Convert.ToDecimal(item.IdPersona_Solicita);
                    SoliCompInfo.IdComprador             = item.IdComprador;
                    SoliCompInfo.IdDepartamento          = item.IdDepartamento;
                    SoliCompInfo.fecha                   = item.fecha;
                    SoliCompInfo.observacion             = item.observacion;
                    SoliCompInfo.Estado                  = item.Estado;
                    SoliCompInfo.Sucursal                = item.Sucursal;
                    SoliCompInfo.Solicitante             = item.Solicitante;
                    SoliCompInfo.Comprador               = item.Comprador;
                    SoliCompInfo.departamento            = item.departamento;
                    SoliCompInfo.IdEstadoAprobacion      = item.IdEstadoAprobacion;
                    SoliCompInfo.IdUsuarioAprobo         = item.IdUsuarioAprobo;
                    SoliCompInfo.MotivoAprobacion        = item.MotivoAprobacion;
                    SoliCompInfo.FechaHoraAprobacion     = item.FechaHoraAprobacion;
                    SoliCompInfo.nom_EstadoAprobacion    = item.nom_EstadoAprobacion;
                    SoliCompInfo.Mostrar_Icono_Buscar_OC = true;
                    Lst.Add(SoliCompInfo);
                }
                return(Lst);
            }
            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());
            }
        }