コード例 #1
0
        public Boolean Actualizar_EstadoReproba(List <com_solicitud_compra_det_aprobacion_Info> LstInfo, List <com_solicitud_compra_det_aprobacion_Info> lstSol_Genera_OC, string validaMotivo, ref string msg)
        {
            try
            {
                Boolean res = true;
                if (Validar_objeto_AprobSolComp(LstInfo, validaMotivo, ref msg))
                {
                    odata.Actualizar_EstadoReproba(LstInfo, ref msg);

                    if (validaMotivo == "S")
                    {
                        #region Genera Orden Compra
                        //Generar Orden Compra

                        var Query = from q in lstSol_Genera_OC
                                    group q by new
                        {
                            q.IdSucursal_x_OC,
                            q.IdProveedor_SC,
                            q.IdMotivo
                        }
                        into grouping
                            select new { grouping.Key, grouping };
                        foreach (var grp in Query)
                        {
                            if (grp.Key.IdProveedor_SC != 0 && grp.Key.IdMotivo != 0 && grp.Key.IdSucursal_x_OC != 0)
                            {
                                List <com_solicitud_compra_det_aprobacion_Info> listSolxItemSaldo = new List <com_solicitud_compra_det_aprobacion_Info>();
                                foreach (var item in grp.grouping)
                                {
                                    if (item.Checked == true && item.IdEstadoAprobacion == "APR_SOL" && item.IdEstadoPreAprobacion == "APR_SOL")
                                    {
                                        com_solicitud_compra_det_aprobacion_Info info = new com_solicitud_compra_det_aprobacion_Info();

                                        info.Checked         = item.Checked;
                                        info.IdEmpresa       = item.IdEmpresa;
                                        info.IdSucursal_SC   = item.IdSucursal_SC;
                                        info.IdSucursal_x_OC = item.IdSucursal_x_OC;

                                        info.fecha              = item.fecha;
                                        info.Solicitante        = item.Solicitante;
                                        info.IdComprador        = item.IdComprador;
                                        info.IdComprador        = item.IdComprador;
                                        info.IdPersona_Solicita = item.IdPersona_Solicita;
                                        info.IdDepartamento     = item.IdDepartamento;
                                        info.IdProveedor        = Convert.ToDecimal(item.IdProveedor_SC);

                                        info.IdMotivo           = item.IdMotivo;
                                        info.IdSolicitudCompra  = item.IdSolicitudCompra;
                                        info.IdEstadoAprobacion = item.IdEstadoAprobacion;
                                        info.Secuencia          = item.Secuencia_SC;

                                        info.observacion = item.observacion;

                                        //detalle

                                        info.IdProducto_SC     = item.IdProducto_SC;
                                        info.NomProducto_SC    = item.NomProducto_SC;
                                        info.Cantidad_aprobada = item.Cantidad_aprobada;

                                        info.IdCentroCosto = item.IdCentroCosto;
                                        info.IdCentroCosto_sub_centro_costo = item.IdCentroCosto_sub_centro_costo;
                                        info.IdPunto_cargo  = item.IdPunto_cargo;
                                        info.IdUnidadMedida = item.IdUnidadMedida;

                                        //nuevo
                                        info.do_precioCompra    = item.do_precioCompra;
                                        info.do_porc_des        = item.do_porc_des;
                                        info.do_descuento       = item.do_descuento;
                                        info.do_subtotal        = item.do_subtotal;
                                        info.do_iva             = item.do_iva;
                                        info.do_total           = item.do_total;
                                        info.IdCod_Impuesto_Iva = item.IdCod_Impuesto_Iva;
                                        info.do_observacion     = item.do_observacion;

                                        info.IdEstadoPreAprobacion = item.IdEstadoPreAprobacion;

                                        listSolxItemSaldo.Add(info);
                                    }
                                }

                                com_ordencompra_local_Info infOrdCom = new com_ordencompra_local_Info();
                                decimal id = 0;
                                // string msg = "";

                                var groupByProv = listSolxItemSaldo.GroupBy(proveedor => proveedor.IdProveedor);
                                List <com_solicitud_compra_det_aprobacion_Info> lista;

                                foreach (var item in groupByProv)
                                {
                                    var listaAux = item.ToList().FindAll(q => q.Checked == true && q.IdEstadoAprobacion == "APR_SOL" && q.IdEstadoPreAprobacion == "APR_SOL");

                                    if (listaAux.Count() == 0)
                                    {
                                    }
                                    else
                                    {
                                        lista = new List <com_solicitud_compra_det_aprobacion_Info>();
                                        lista = listaAux.ToList();

                                        // cabecera Orden Compra
                                        int x;
                                        x = 1;

                                        foreach (var item2 in lista)
                                        {
                                            while (x <= 1)
                                            {
                                                infOrdCom = new com_ordencompra_local_Info();

                                                infOrdCom.IdEmpresa           = item2.IdEmpresa;
                                                infOrdCom.IdProveedor         = item2.IdProveedor;
                                                infOrdCom.Tipo                = "LOCAL";
                                                infOrdCom.IdTerminoPago       = null;
                                                infOrdCom.oc_plazo            = 0;
                                                infOrdCom.oc_fecha            = Convert.ToDateTime(DateTime.Now.ToShortTimeString());
                                                infOrdCom.oc_flete            = 0;
                                                infOrdCom.oc_observacion      = item2.observacion;
                                                infOrdCom.Estado              = "A";
                                                infOrdCom.oc_fechaVencimiento = item2.fecha;
                                                com_parametro_Bus  Bus_ParamCompra = new com_parametro_Bus();
                                                com_parametro_Info InfoComDev      = new com_parametro_Info();
                                                InfoComDev = Bus_ParamCompra.Get_Info_parametro(item2.IdEmpresa);
                                                infOrdCom.IdEstadoAprobacion_cat = InfoComDev.IdEstadoAprobacion_OC;
                                                infOrdCom.Solicitante            = item2.Solicitante;
                                                infOrdCom.IdComprador            = item2.IdComprador;
                                                infOrdCom.AfectaCosto            = "N";
                                                infOrdCom.IdSolicitante          = item2.IdPersona_Solicita;
                                                infOrdCom.IdEstadoRecepcion_cat  = "PEN";
                                                infOrdCom.IdDepartamento         = item2.IdDepartamento;
                                                cl_parametrosGenerales_Bus param = cl_parametrosGenerales_Bus.Instance;
                                                infOrdCom.IdUsuario = param.IdUsuario;
                                                com_parametro_Bus         bus_param = new com_parametro_Bus();
                                                List <com_parametro_Info> listParam = new List <com_parametro_Info>();
                                                listParam = bus_param.Get_List_parametro(item2.IdEmpresa);
                                                var itemParam = listParam.FirstOrDefault(q => q.IdEmpresa == item2.IdEmpresa);

                                                //infOrdCom.IdSucursal = itemParam.IdSucursal_x_Aprob_x_SolComp;

                                                infOrdCom.IdSucursal = item2.IdSucursal_x_OC;


                                                infOrdCom.IdMotivo = item2.IdMotivo;

                                                x = x + 1;
                                            }
                                        }

                                        // detalle orden compra
                                        List <com_ordencompra_local_det_Info> listDetOrdComp = new List <com_ordencompra_local_det_Info>();
                                        foreach (var item3 in lista)
                                        {
                                            com_ordencompra_local_det_Info infoDet_Oc = new com_ordencompra_local_det_Info();

                                            infoDet_Oc.IdSucursal      = item3.IdSucursal_x_OC;
                                            infoDet_Oc.IdProducto      = Convert.ToDecimal(item3.IdProducto_SC);
                                            infoDet_Oc.do_Cantidad     = item3.Cantidad_aprobada;
                                            infoDet_Oc.do_Costeado     = "N";
                                            infoDet_Oc.do_peso         = 0;
                                            infoDet_Oc.do_precioCompra = item3.do_precioCompra;
                                            infoDet_Oc.do_porc_des     = item3.do_porc_des;
                                            infoDet_Oc.do_descuento    = item3.do_descuento;
                                            infoDet_Oc.do_subtotal     = item3.do_subtotal;
                                            infoDet_Oc.do_iva          = item3.do_iva;
                                            infoDet_Oc.do_total        = item3.do_total;
                                            infoDet_Oc.IdCod_Impuesto  = item3.IdCod_Impuesto_Iva;
                                            infoDet_Oc.do_observacion  = item3.do_observacion;
                                            infoDet_Oc.IdPunto_cargo   = item3.IdPunto_cargo;
                                            infoDet_Oc.IdCentroCosto   = item3.IdCentroCosto;
                                            infoDet_Oc.IdCentroCosto_sub_centro_costo = item3.IdCentroCosto_sub_centro_costo;
                                            infoDet_Oc.IdUnidadMedida = item3.IdUnidadMedida;

                                            listDetOrdComp.Add(infoDet_Oc);
                                        }

                                        // detalle solicitud compra
                                        List <com_solicitud_compra_det_Info> listDetSoliciComp = new List <com_solicitud_compra_det_Info>();


                                        foreach (var item3 in lista)
                                        {
                                            com_solicitud_compra_det_Info infoDetSolCom = new com_solicitud_compra_det_Info();

                                            infoDetSolCom.IdEmpresa         = item3.IdEmpresa;
                                            infoDetSolCom.IdSucursal        = item3.IdSucursal_SC;
                                            infoDetSolCom.IdSolicitudCompra = item3.IdSolicitudCompra;
                                            infoDetSolCom.Secuencia         = item3.Secuencia;
                                            infoDetSolCom.IdProducto        = item3.IdProducto_SC;
                                            infoDetSolCom.do_Cantidad       = item3.Cantidad_aprobada;
                                            infoDetSolCom.NomProducto       = item3.NomProducto_SC;
                                            infoDetSolCom.IdPunto_cargo     = item3.IdPunto_cargo;
                                            infoDetSolCom.IdCentroCosto     = item3.IdCentroCosto;
                                            infoDetSolCom.IdCentroCosto_sub_centro_costo = item3.IdCentroCosto_sub_centro_costo;
                                            infoDetSolCom.do_observacion = item3.do_observacion;
                                            infoDetSolCom.IdUnidadMedida = item3.IdUnidadMedida;

                                            listDetSoliciComp.Add(infoDetSolCom);
                                        }

                                        // grabar orden de compra

                                        com_ordencompra_local_Bus bus_OrdComp = new com_ordencompra_local_Bus();

                                        infOrdCom.listDetalle = listDetOrdComp;

                                        infOrdCom.listDetSoliciComp = listDetSoliciComp;

                                        if (bus_OrdComp.GuardarDB(infOrdCom, ref id, ref msg))
                                        {
                                            msg = "Se ha procedido a grabar el registro de la Orden/Compra #: " + id.ToString() + " exitosamente.";
                                        }
                                        else
                                        {
                                            msg = "Error al grabar OC. " + msg;
                                        }
                                    }
                                }
                            }
                        }
                        #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("", "Actualizar_EstadoReproba", ex.Message), ex)
                      {
                          EntityType = typeof(com_solicitud_compra_det_aprobacion_Bus)
                      };
            }
        }
コード例 #2
0
        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)
                      };
            }
        }
コード例 #3
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());
            }
        }
コード例 #4
0
        public List <com_solicitud_compra_det_aprobacion_Info> Get_List_solicitud_compra_det_aprobacion(int IdEmpresa, int IdSurcursal, decimal IdSoliComp)
        {
            List <com_solicitud_compra_det_aprobacion_Info> Lst = new List <com_solicitud_compra_det_aprobacion_Info>();
            EntitiesCompras oEnti = new EntitiesCompras();

            try
            {
                var Query = from q in oEnti.vwcom_solicitud_compra_det_aprobacion
                            where q.IdEmpresa == IdEmpresa &&
                            q.IdSucursal_SC == IdSurcursal &&
                            q.IdSolicitudCompra == IdSoliComp
                            select q;



                foreach (var item in Query)
                {
                    com_solicitud_compra_det_aprobacion_Info Obj = new com_solicitud_compra_det_aprobacion_Info();
                    Obj.IdEmpresa          = item.IdEmpresa;
                    Obj.IdSucursal_SC      = item.IdSucursal_SC;
                    Obj.IdSolicitudCompra  = item.IdSolicitudCompra;
                    Obj.Secuencia_SC       = item.Secuencia_SC;
                    Obj.IdProducto_SC      = Convert.ToDecimal(item.IdProducto_SC);
                    Obj.NomProducto_SC     = item.NomProducto_SC;
                    Obj.Cantidad_aprobada  = item.Cantidad_aprobada;
                    Obj.IdEstadoAprobacion = item.IdEstadoAprobacion;
                    Obj.IdProveedor_SC     = item.IdProveedor_SC;
                    Obj.Nom_Proveedor_SC   = item.Nom_Proveedor_SC;

                    Obj.IdUsuarioAprueba    = item.IdUsuarioAprueba;
                    Obj.FechaHoraAprobacion = Convert.ToDateTime(item.FechaHoraAprobacion);
                    Obj.do_observacion      = item.observacion;

                    Obj.IdUnidadMedida = item.IdUnidadMedida;

                    Obj.do_precioCompra = Convert.ToDouble(item.do_precioCompra);
                    Obj.do_porc_des     = Convert.ToDouble(item.do_porc_des);
                    Obj.do_descuento    = Convert.ToDouble(item.do_descuento);
                    Obj.do_subtotal     = Convert.ToDouble(item.do_subtotal);
                    Obj.do_iva          = Convert.ToDouble(item.do_iva);
                    Obj.do_total        = Convert.ToDouble(item.do_total);
                    Obj.IdCentroCosto   = item.IdCentroCosto;
                    Obj.IdCentroCosto_sub_centro_costo = item.IdCentroCosto_sub_centro_costo;
                    Obj.IdPunto_cargo  = Convert.ToInt32(item.IdPunto_cargo);
                    Obj.do_observacion = item.do_observacion;

                    Lst.Add(Obj);
                }
                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());
            }
        }