Esempio n. 1
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());
            }
        }
Esempio n. 2
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());
            }
        }