public List <fa_pedido_Info> Get_List_pedido(int IdEmpresa) { try { List <fa_pedido_Info> lM = new List <fa_pedido_Info>(); EntitiesFacturacion OEPPedido = new EntitiesFacturacion(); var consulta = from q in OEPPedido.vwFa_Total_pedidos_x_cliente_No_despachados where q.IdEmpresa == IdEmpresa select q; foreach (var item in consulta) { fa_pedido_Info info = new fa_pedido_Info(); info.IdEmpresa = IdEmpresa; info.IdCliente = item.IdCliente; info.dp_total = Convert.ToDouble(item.dp_total); lM.Add(info); } return(lM); } 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()); } }
void ucGe_Menu_Mantenimiento_x_usuario_event_btnNuevo_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { try { info = new fa_pedido_Info(); info_sucursal = new tb_Sucursal_Info(); info_sucursal = ucGe_Menu_Mantenimiento_x_usuario.getSucursal_Info; info_bodega = new tb_Bodega_Info(); info_bodega = ucGe_Menu_Mantenimiento_x_usuario.getBodega_Info; info.IdSucursal = ucGe_Menu_Mantenimiento_x_usuario.getIdSucursal; info.IdBodega = 1;// ucGe_Menu_Mantenimiento_x_usuario.getIdBodega; frm = new frmFa_Pedido_Mant(); frm.Event_frmFA_Pedido_Mant_FormClosing += new frmFa_Pedido_Mant.delegate_frmFA_Pedido_Mant_FormClosing(frm_Event_frmFA_Pedido_Mant_FormClosing); frm.idsucursal = info.IdSucursal; frm.idbodega = info.IdBodega; frm.Accion = Cl_Enumeradores.eTipo_action.grabar; frm.MdiParent = this.MdiParent; frm.Show(); CargaGrid(param.IdEmpresa, ucGe_Menu_Mantenimiento_x_usuario.fecha_desde, ucGe_Menu_Mantenimiento_x_usuario.fecha_hasta); } catch (Exception ex) { Log_Error_bus.Log_Error(ex.ToString()); } }
private void gridViewPedidos_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e) { try { info = GetSelectedRow((DevExpress.XtraGrid.Views.Grid.GridView)sender); } catch (Exception ex) { Log_Error_bus.Log_Error(ex.ToString()); } }
public List <fa_orden_Desp_det_Info> Get_List_orden_Desp_x_Pedido(fa_pedido_Info Info) { try { List <fa_orden_Desp_det_Info> lst = new List <fa_orden_Desp_det_Info>(); EntitiesFacturacion oenti = new EntitiesFacturacion(); var detalle = from q in oenti.vwfa_orden_Desp_det_x_Pedido_det join cab in oenti.fa_orden_Desp on new { q.IdEmpresa, q.IdSucursal, q.IdBodega, q.IdOrdenDespacho } equals new { cab.IdEmpresa, cab.IdSucursal, cab.IdBodega, cab.IdOrdenDespacho } where q.IdBodega == Info.IdBodega && q.IdSucursal == Info.IdSucursal && q.pe_IdPedido == Info.IdPedido && q.IdEmpresa == Info.IdEmpresa && cab.Estado == "A" select q; foreach (var item in detalle) { fa_orden_Desp_det_Info set = new fa_orden_Desp_det_Info(); set.IdPedido = (decimal)item.pe_IdPedido; set.IdEmpresa = item.IdEmpresa; set.IdSucursal = item.IdSucursal; set.IdBodega = item.IdBodega; set.IdOrdenDespacho = item.IdOrdenDespacho; set.Secuencia = item.Secuencia; set.IdProducto = item.IdProducto; set.od_cantidad = (float)item.od_cantidad; set.od_Precio = (float)item.od_Precio; set.od_PorDescUnitario = (float)item.od_PorDescUnitario; set.od_DescUnitario = (float)item.od_DescUnitario; set.od_PrecioFinal = (float)item.od_PrecioFinal; set.od_Subtotal = (float)item.od_Subtotal; set.od_iva = (float)item.od_iva; set.od_total = (float)item.od_total; set.od_costo = (float)item.od_costo; set.od_tieneIVA = item.od_tieneIVA; set.od_detallexItems = item.od_detallexItems; set.pr_descripcion = item.pr_descripcion; lst.Add(set); } 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); mensaje = ex.ToString(); oDataLog.Guardar_Log_Error(Log_Error_sis, ref mensaje); throw new Exception(ex.ToString()); } }
public Boolean VerificarOrdenDespacho(fa_pedido_Info info) { try { return(data.VerificarOrdenDespacho(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("", "VerificarOrdenDespacho", ex.Message), ex) { EntityType = typeof(fa_pedido_det_Bus) }; } }
public List <fa_orden_Desp_det_Info> Get_List_orden_Desp_x_Pedido(fa_pedido_Info Info) { try { return(odata.Get_List_orden_Desp_x_Pedido(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("", "ConsultaxOrdDespachoxPedido", ex.Message), ex) { EntityType = typeof(fa_OrdenDespachoDet_bus) }; } }
public Boolean AnularDB(fa_pedido_Info info, ref string msg) { try { return(data.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("", "Anular", ex.Message), ex) { EntityType = typeof(fa_pedido_Bus) }; } }
public Boolean validarObjeto(fa_pedido_Info info, ref string mensajeE) { try { if (info.IdEmpresa == 0 || info.IdSucursal == 0 || info.IdBodega == 0) { mensajeE = "Uno de los Pk de Pedidos esta en cero IdEmpresa=" + info.IdEmpresa + " IdSucursal=" + info.IdSucursal + " idbodega=" + info.IdBodega; return(false); } if (info.IdCliente == 0 || info.IdVendedor == 0) { mensajeE = "Un de los IdCliente o IdVendedor esta en cero IdCliente=" + info.IdCliente + " IdVendedor=" + info.IdVendedor; return(false); } info.cp_fecha = Convert.ToDateTime(info.cp_fecha.ToShortDateString()); info.cp_fechaVencimiento = Convert.ToDateTime(info.cp_fechaVencimiento.ToShortDateString()); info.cp_observacion = (info.cp_observacion == null) ? "" : info.cp_observacion; info.cp_tipopago = (info.cp_tipopago == null) ? "CON" : info.cp_tipopago; info.Entregado = (info.Entregado == null) ? "N" : info.Entregado; info.Estado = (info.Estado == null) ? "A" : info.Estado; if (info.IdEstadoAprobacion == null) { fa_pedido_estadoAprobacion_Bus PedEstA = new fa_pedido_estadoAprobacion_Bus(); List <fa_pedido_estadoAprobacion_Info> ListEstaApro = new List <fa_pedido_estadoAprobacion_Info>(); ListEstaApro = PedEstA.Get_List_EstadoAprobacion(); } 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(fa_pedido_Bus) }; } }
public Boolean GrabarDB(fa_pedido_Info info, ref decimal id, ref string msg) { try { if (Validar_y_corregir_objeto_Pedido(ref info, ref msg)) { return(data.GrabarDB(info, ref id, ref msg)); } return(false); } 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("", "GrabarDB", ex.Message), ex) { EntityType = typeof(fa_pedido_Bus) }; } }
public Boolean AnularDB(fa_pedido_Info info, ref string msg) { try { using (EntitiesFacturacion context = new EntitiesFacturacion()) { var contact = context.fa_pedido.FirstOrDefault(obj => obj.IdEmpresa == info.IdEmpresa && obj.IdSucursal == info.IdSucursal && obj.IdBodega == info.IdBodega && obj.IdPedido == info.IdPedido); if (contact != null) { contact.Estado = "I"; contact.cp_observacion = "**Anulado**" + contact.cp_observacion; contact.IdUsuarioUltAnu = info.IdUsuarioUltAnu; contact.Fecha_UltAnu = DateTime.Now; List <fa_pedido_det_Info> listaAux = new List <fa_pedido_det_Info>(); listaAux = pedido_data.Get_List_pedido_det(info.IdEmpresa, info.IdSucursal, info.IdBodega, info.IdPedido); (from q in listaAux select q).ToList().ForEach(q => q.dp_cantidad = q.dp_cantidad * -1); data_producto_bodega.ModificarDB(listaAux); context.SaveChanges(); msg = "Se ha procedido Anular el registro del Pedido #: " + info.IdPedido.ToString() + " exitosamente"; } } 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); msg = ex.ToString(); oDataLog.Guardar_Log_Error(Log_Error_sis, ref msg); throw new Exception(ex.ToString()); } }
public Boolean ModificarDB(fa_pedido_Info info, ref string msg) { try { fa_pedido_det_Data pedido_data = new fa_pedido_det_Data(); List <fa_pedido_det_Info> listaAux = new List <fa_pedido_det_Info>(); listaAux = pedido_data.Get_List_pedido_det(info.IdEmpresa, info.IdSucursal, info.IdBodega, info.IdPedido); #region variables List para verificar ordenes despacho List <fa_orden_Desp_det_x_fa_pedido_det_Info> ListaOrdenDEspachoxPedido = new List <fa_orden_Desp_det_x_fa_pedido_det_Info>(); List <fa_orden_Desp_det_x_fa_pedido_det_Info> lstemporal = new List <fa_orden_Desp_det_x_fa_pedido_det_Info>(); #endregion #region verificar ordenes de despacho para Talme fa_orden_Desp_det_x_fa_pedido_det_Data odata = new fa_orden_Desp_det_x_fa_pedido_det_Data(); fa_orden_Desp_Info infoPedido = new fa_orden_Desp_Info(); infoPedido.IdEmpresa = info.IdEmpresa; infoPedido.IdBodega = info.IdBodega; infoPedido.IdSucursal = info.IdSucursal; infoPedido.IdPedido = info.IdPedido; ListaOrdenDEspachoxPedido = odata.Get_List_fa_orden_Desp_det_x_fa_pedido_det_x_Pedido(infoPedido); if (ListaOrdenDEspachoxPedido.Count() == 0) { return(data.ModificarDB(info, ref msg)); } else { foreach (var itemODP in ListaOrdenDEspachoxPedido) { fa_orden_Desp_det_x_fa_pedido_det_Info temp = new fa_orden_Desp_det_x_fa_pedido_det_Info(); temp.od_cantidad = itemODP.od_cantidad; temp.od_IdBodega = itemODP.od_IdBodega; temp.od_IdEmpresa = itemODP.od_IdEmpresa; temp.od_IdOrdenDespacho = itemODP.od_IdOrdenDespacho; temp.od_IdProducto = itemODP.od_IdProducto; temp.od_IdSucursal = itemODP.od_IdSucursal; temp.od_Secuencia = itemODP.od_Secuencia; temp.pe_IdBodega = itemODP.pe_IdBodega; temp.pe_IdEmpresa = itemODP.pe_IdEmpresa; temp.pe_IdPedido = itemODP.pe_IdPedido; temp.pe_IdProducto = itemODP.pe_IdProducto; temp.pe_IdSucursal = itemODP.pe_IdSucursal; temp.pe_Secuencia = itemODP.pe_Secuencia; lstemporal.Add(temp); } #region Elimina los datos de la tabla "fa_orden_Desp_det_x_fa_pedido_det" fa_orden_Desp_det_x_fa_pedido_det_Data odata1 = new fa_orden_Desp_det_x_fa_pedido_det_Data(); fa_orden_Desp_Info info1 = new fa_orden_Desp_Info(); info1.ListaAuxiliar = ListaOrdenDEspachoxPedido; odata1.EliminarDB(info1); #endregion #region asigno el valor de las columnas "Esta_en_Base" y "Tiene_Despacho" foreach (var item1 in listaAux) { foreach (var item2 in info.lista_detalle) { if (item1.IdProducto == item2.IdProducto && item1.Secuencial == item2.Secuencial) { item2.Tiene_Despacho = item1.Tiene_Despacho; item2.Esta_en_Base = item1.Esta_en_Base; } } } #endregion #region buscar max secuencia detalle pedido fa_pedido_det_Data odatape = new fa_pedido_det_Data(); int SecuenciaMax = 0; SecuenciaMax = odatape.GetIdPedido(info.IdEmpresa, info.IdSucursal, info.IdBodega, info.IdPedido); #endregion #region asigno el nuevo secuencial al nuevo item en detalle pedido foreach (var item2 in info.lista_detalle) { if (item2.IdProducto != 0) { if (item2.Esta_en_Base == "N" || item2.Esta_en_Base == null) { SecuenciaMax = SecuenciaMax + 1; item2.Secuencial = SecuenciaMax; } } } #endregion #region Grabo el nuevo detalle pedido in_producto_x_tb_bodega_Data data_producto_bodega = new in_producto_x_tb_bodega_Data(); (from q in listaAux select q).ToList().ForEach(q => q.dp_cantidad = q.dp_cantidad * -1); data_producto_bodega.ModificarDB(listaAux); foreach (var item in listaAux) { pedido_data.EliminarDB(item, ref msg); } data_producto_bodega.ModificarDB(info.lista_detalle); foreach (var item in info.lista_detalle) { if (item.IdProducto != 0) { pedido_data.GrabarDB(item, ref msg); } } msg = "Se ha procedido actualizar el registro del Pedido #: " + info.IdPedido.ToString() + " exitosamente"; #endregion #region guardo en tabla "fa_orden_Desp_det_x_fa_pedido_det" fa_orden_Desp_det_x_fa_pedido_det_Data odataOD = new fa_orden_Desp_det_x_fa_pedido_det_Data(); fa_orden_Desp_Info Info_OD = new fa_orden_Desp_Info(); foreach (var item in lstemporal) { fa_orden_Desp_det_Info Infotemp = new fa_orden_Desp_det_Info(); Infotemp.IdEmpresa = item.pe_IdEmpresa; Infotemp.IdSucursal = item.pe_IdSucursal; Infotemp.IdBodega = item.pe_IdBodega; Infotemp.IdProducto = item.pe_IdProducto; Infotemp.IdOrdenDespacho = item.od_IdOrdenDespacho; Infotemp.Secuencia = item.od_Secuencia; Infotemp.SecuenciaPedido = item.pe_Secuencia; Infotemp.IdPedido = item.pe_IdPedido; Infotemp.od_cantidad = item.od_cantidad; Info_OD.ListaDetalle.Add(Infotemp); } odataOD.GuardarDB(Info_OD); #endregion } #endregion 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("", "ModificarDB", ex.Message), ex) { EntityType = typeof(fa_pedido_Bus) }; } }
private Boolean Validar_y_corregir_objeto_Pedido(ref fa_pedido_Info Pedido_info, ref string msg) { try { #region 'Validaciones' /*--- validaciones */ if (Pedido_info.IdEmpresa <= 0 && Pedido_info.IdSucursal <= 0 && Pedido_info.IdBodega <= 0) { msg = "Erro en la cabecera de pedido uno de los PK es <=0"; return(false); } if (Pedido_info.IdCliente <= 0 && Pedido_info.IdVendedor <= 0) { msg = "Erro en la cabecera de pedido idcliente o idvendedor es <=0"; return(false); } if (Pedido_info.IdEstadoAprobacion == null || Pedido_info.IdEstadoAprobacion == "") { msg = "Erro en la cabecera de pedido el estado aprobación es obligatorio o está en blanco"; return(false); } //if (string.IsNullOrEmpty(Factura_info.IdTipoFormaPago) == true) //{ // msg = "Erro en la cabecera de idformaPago es obligatoria o esta en blanco "; // return false; //} if (Pedido_info.lista_detalle.Count == 0) { msg = "el pedido no tiene detalle "; return(false); } foreach (var item in Pedido_info.lista_detalle) { if (item.dp_cantidad == 0 && item.IdProducto != 0) { msg = "el producto id:" + item.IdProducto + " tiene cantidad cero "; return(false); } if (item.dp_subtotal == 0 && item.IdProducto != 0) { msg = "el producto id:" + item.IdProducto + " tiene subtotal cero "; return(false); } } // verifica precios repetidos foreach (var item in Pedido_info.lista_detalle) { if (item.IdProducto != 0) { var cont = from C in Pedido_info.lista_detalle where C.IdProducto == item.IdProducto && C.dp_precio == item.dp_precio select C; if (cont.Count() > 1) { msg = "el producto : " + item.DesProduct + " ,tiene precios iguales"; return(false); } else { } } } /*--- Fin validaciones */ /*--- corrigiendo data */ Pedido_info.Estado = (string.IsNullOrEmpty(Pedido_info.Estado) == true) ? "A" : Pedido_info.Estado; Pedido_info.cp_fecha = Convert.ToDateTime(Pedido_info.cp_fecha.ToShortDateString()); Pedido_info.cp_fechaVencimiento = Convert.ToDateTime(Pedido_info.cp_fechaVencimiento.ToShortDateString()); Pedido_info.cp_observacion = (string.IsNullOrEmpty(Pedido_info.cp_observacion) == true) ? "" : Pedido_info.cp_observacion; Pedido_info.cp_tipopago = (string.IsNullOrEmpty(Pedido_info.cp_tipopago) == true) ? "CON" : Pedido_info.cp_tipopago; Pedido_info.IdUsuario = (string.IsNullOrEmpty(Pedido_info.IdUsuario) == true) ? param.IdUsuario : Pedido_info.IdUsuario; Pedido_info.Fecha_Transac = (Pedido_info.Fecha_Transac == null) ? param.Fecha_Transac : Pedido_info.Fecha_Transac; Pedido_info.ip = (string.IsNullOrEmpty(Pedido_info.ip) == true) ? param.ip : Pedido_info.ip; if (Pedido_info.cp_diasPlazo <= 0) { Pedido_info.cp_diasPlazo = (Pedido_info.cp_fechaVencimiento - Pedido_info.cp_fecha).Days; } else { Pedido_info.cp_diasPlazo = Pedido_info.cp_diasPlazo; } //foreach (var item in Factura_info.DetFactura_List) //{ // item.IdEmpresa = Factura_info.IdEmpresa; // item.IdSucursal = Factura_info.IdSucursal; // item.IdBodega = Factura_info.IdBodega; //} if (Pedido_info.DetformaPago_list.Count == 0) { /// no hay forma de pago le inserto un contado /// List <fa_pedido_x_formaPago_Info> listFormaPago = new List <fa_pedido_x_formaPago_Info>(); fa_pedido_x_formaPago_Info ItemFormaPago = new fa_pedido_x_formaPago_Info(); ItemFormaPago.IdEmpresa = Pedido_info.IdEmpresa; ItemFormaPago.IdSucursal = Pedido_info.IdSucursal; ItemFormaPago.IdBodega = Pedido_info.IdBodega; ItemFormaPago.IdPedido = Pedido_info.IdPedido; ItemFormaPago.Secuencia = 1; ItemFormaPago.Fecha = Pedido_info.cp_fecha; ItemFormaPago.Fecha_vtc = Pedido_info.cp_fechaVencimiento; ItemFormaPago.Dias_Plazo = (Pedido_info.cp_fechaVencimiento - Pedido_info.cp_fecha).Days; ItemFormaPago.Por_Distribucion = 100; ItemFormaPago.Valor = Pedido_info.dp_total; ItemFormaPago.IdTipoFormaPago = "CON";//quemado porq no escogio nada y el sistemas por default graba contado } foreach (var item in Pedido_info.DetformaPago_list) { item.Fecha = Convert.ToDateTime(item.Fecha.ToShortDateString()); item.Fecha_vtc = Convert.ToDateTime(item.Fecha_vtc.ToShortDateString()); } /*--- corrigiendo data */ #endregion 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("", "Validar_y_corregir_objeto_Pedido", ex.Message), ex) { EntityType = typeof(fa_pedido_Bus) }; } }
private Boolean verificarrepetidos(decimal idempleado, Boolean eliminar, int tipo, fa_pedido_Info Pedido_info) { try { var cont = from C in Pedido_info.lista_detalle where C.IdProducto == idempleado select C; if (cont.Count() == tipo) { return(true); } else { if (eliminar == true) { // gridViewNovxEmp.DeleteRow(gridViewNovxEmp.FocusedRowHandle); // MessageBox.Show("El código ya se encuentra ingresado. Se procederá con su eliminación."); } else { // MessageBox.Show("El código ya se encuentra ingresado."); } return(false); } } 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("", "verificarrepetidos", ex.Message), ex) { EntityType = typeof(fa_pedido_Bus) }; } }
public List <fa_pedido_Info> Get_List_pedido(int IdEmpresa, DateTime FechaIni, DateTime FechaFin, int idsucursal, int idbodega) { try { List <fa_pedido_Info> lM = new List <fa_pedido_Info>(); EntitiesFacturacion OEPPedido = new EntitiesFacturacion(); FechaIni = Convert.ToDateTime(FechaIni.ToShortDateString()); FechaFin = Convert.ToDateTime(FechaFin.ToShortDateString()); var cabeceraPedido = from ped in OEPPedido.vwfa_pedido_detalle where ped.IdEmpresa == IdEmpresa && ped.IdSucursal == idsucursal && ped.IdBodega == idbodega && ped.cp_fecha >= FechaIni && ped.cp_fecha <= FechaFin group ped by new { ped.IdEstadoProduccion, ped.Entregado, ped.CodPedido, ped.cp_fecha, ped.cp_fechaVencimiento, ped.cp_diasPlazo, ped.interes, ped.transporte, ped.otro1, ped.otro2, ped.IdEmpresa, ped.IdSucursal, ped.IdBodega, ped.IdPedido, ped.IdVendedor, ped.IdCliente, ped.pe_apellido, ped.pe_nombre, ped.pe_nombreCompleto, ped.bo_Descripcion, ped.Su_Descripcion, ped.Ve_Vendedor, ped.cp_observacion, ped.cp_tipopago, ped.Estado, ped.IdEstadoAprobacion, ped.Descripcion } into grouping select new { grouping.Key, subtotal = grouping.Sum(p => p.dp_subtotal), total = grouping.Sum(p => p.dp_total) }; foreach (var item in cabeceraPedido) { fa_pedido_Info info = new fa_pedido_Info(); info.CodPedido = item.Key.CodPedido; info.IdEmpresa = item.Key.IdEmpresa; info.cp_fecha = item.Key.cp_fecha; info.cp_fechaVencimiento = item.Key.cp_fechaVencimiento; info.cp_diasPlazo = item.Key.cp_diasPlazo; info.cp_observacion = item.Key.cp_observacion; info.IdEmpresa = item.Key.IdEmpresa; info.IdSucursal = item.Key.IdSucursal; info.IdBodega = item.Key.IdBodega; info.IdPedido = item.Key.IdPedido; info.IdCliente = item.Key.IdCliente; info.IdVendedor = item.Key.IdVendedor; info.Vendedor = item.Key.Ve_Vendedor.Trim(); info.IdCliente = item.Key.IdCliente; info.Cliente = item.Key.pe_nombreCompleto.Trim(); info.IdBodega = item.Key.IdBodega; info.Bodega = item.Key.bo_Descripcion.Trim(); info.IdSucursal = item.Key.IdSucursal; info.Sucursal = item.Key.Su_Descripcion.Trim(); info.Subtotal = item.subtotal; info.Entregado = item.Key.Entregado; info.Estado = item.Key.Estado; info.IdEstadoAprobacion = item.Key.IdEstadoAprobacion; info.EstadoAprobacion = item.Key.Descripcion.Trim(); info.cp_tipopago = item.Key.cp_tipopago.Trim(); info.Trasnporte = item.Key.transporte; info.Interes = item.Key.interes; info.Otro1 = item.Key.otro1; info.Otro2 = item.Key.otro2; info.IdEstadoProduccion = item.Key.IdEstadoProduccion; info.TOTAL = item.total; lM.Add(info); } return(lM); } 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()); } }
public Boolean GrabarDB(fa_pedido_Info info, ref decimal id, ref string msg) { try { using (EntitiesFacturacion context = new EntitiesFacturacion()) { var address = new fa_pedido(); decimal idpv = GetId(info.IdEmpresa); id = idpv; address.CodPedido = (info.CodPedido == "") ? "PED" + idpv.ToString() : info.CodPedido; address.IdEmpresa = info.IdEmpresa; address.IdSucursal = info.IdSucursal; address.IdBodega = info.IdBodega; address.IdPedido = idpv; address.IdCliente = info.IdCliente; address.IdVendedor = info.IdVendedor; address.cp_fecha = Convert.ToDateTime(info.cp_fecha.ToShortDateString()); address.cp_diasPlazo = info.cp_diasPlazo; address.cp_fechaVencimiento = Convert.ToDateTime(info.cp_fechaVencimiento.ToShortDateString()); address.cp_observacion = info.cp_observacion; address.cp_tipopago = info.cp_tipopago; address.IdEstadoAprobacion = info.IdEstadoAprobacion; address.transporte = info.Trasnporte; address.interes = info.Interes; address.otro1 = info.Otro1; address.otro2 = info.Otro2; address.Entregado = info.Entregado; //campos de auditoria address.IdUsuario = info.IdUsuario; address.Fecha_Transac = info.Fecha_Transac; address.nom_pc = info.nom_pc; address.ip = info.ip; address.Estado = "A"; address.IdEstadoProduccion = info.IdEstadoProduccion; context.fa_pedido.Add(address); context.SaveChanges(); msg = "Se ha procedido a grabar el registro del Pedido #: " + id.ToString() + " exitosamente."; data_producto.ModificarDB(info.lista_detalle, ref msg); data_producto_bodega.ModificarDB(info.lista_detalle); string mensaje = ""; int i = 0; foreach (var item in info.lista_detalle) { if (item.IdProducto != 0) { i = i + 1; fa_pedido_det_Info pedido_info = new Info.Facturacion.fa_pedido_det_Info(); pedido_info.IdEmpresa = item.IdEmpresa; pedido_info.IdSucursal = item.IdSucursal; pedido_info.IdBodega = item.IdBodega; pedido_info.IdPedido = id; pedido_info.Peso = item.Peso; pedido_info.Secuencial = i; //pedido_info.Secuencial = item.Secuencial; pedido_info.IdProducto = item.IdProducto; pedido_info.dp_cantidad = item.dp_cantidad; pedido_info.dp_precio = item.dp_precio; pedido_info.dp_PorDescuento = item.dp_PorDescuento; pedido_info.dp_desUni = item.dp_desUni; pedido_info.dp_PrecioFinal = item.dp_PrecioFinal; pedido_info.dp_subtotal = item.dp_subtotal; pedido_info.dp_iva = item.dp_iva; pedido_info.dp_total = item.dp_total; pedido_info.dp_pagaIva = item.dp_pagaIva; pedido_info.dp_detallexItems = item.dp_detallexItems; //grabo detalle de los items pedido_data.GrabarDB(pedido_info, ref mensaje); } } #region 'guardando la forma de pago ' // guardando la forma de pago fa_pedido_x_formaPago_Data odata = new fa_pedido_x_formaPago_Data(); foreach (var item in info.DetformaPago_list) { item.IdPedido = id; } odata.GuardarDB(info.DetformaPago_list, ref msg); // FormPago_bus.GuardarDB(Factura_info.DetformaPago_list, ref msg); //---------------------------------------------------------------------- #endregion } 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); msg = ex.ToString(); oDataLog.Guardar_Log_Error(Log_Error_sis, ref msg); throw new Exception(ex.ToString()); } }
public Boolean VerificarOrdenDespacho(fa_pedido_Info info) { try { int cont = 0; info.ListaDetalle = Get_List_pedido_det(info.IdEmpresa, info.IdSucursal, info.IdBodega, info.IdPedido); foreach (var item in info.ListaDetalle) { EntitiesFacturacion oEnti = new EntitiesFacturacion(); var verifi = from q in oEnti.fa_orden_Desp_det_x_fa_pedido_det from cab in oEnti.fa_orden_Desp where q.pe_IdBodega == item.IdBodega && q.pe_IdEmpresa == item.IdEmpresa && q.pe_IdPedido == item.IdPedido && q.pe_IdProducto == item.IdProducto && q.pe_IdSucursal == item.IdSucursal && q.pe_Secuencia == item.Secuencial && cab.IdEmpresa == item.IdEmpresa && cab.IdSucursal == item.IdSucursal && cab.IdBodega == item.IdBodega && cab.IdOrdenDespacho == q.od_IdOrdenDespacho && cab.Estado == "A" select new { q.od_IdOrdenDespacho, q.od_IdSucursal, cab.Estado }; if (verifi.ToList().Count() == 0) { // return true; } else { cont = cont + 1; // return false; } } if (cont >= 1) { return(false); } else { 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()); } }
public Boolean ModificarDB(fa_pedido_Info info, ref string msg) { try { using (EntitiesFacturacion context = new EntitiesFacturacion()) { var contact = context.fa_pedido.FirstOrDefault(obj => obj.IdEmpresa == info.IdEmpresa && obj.IdSucursal == info.IdSucursal && obj.IdBodega == info.IdBodega && obj.IdPedido == info.IdPedido); if (contact != null) { contact.transporte = info.Trasnporte; contact.IdVendedor = info.IdVendedor; contact.cp_fecha = info.cp_fecha; contact.interes = info.Interes; contact.otro1 = info.Otro1; contact.otro2 = info.Otro2; contact.cp_diasPlazo = info.cp_diasPlazo; contact.cp_fechaVencimiento = info.cp_fechaVencimiento; contact.cp_observacion = info.cp_observacion; contact.cp_tipopago = info.cp_tipopago; contact.IdEstadoAprobacion = info.IdEstadoAprobacion; contact.Estado = info.Estado; contact.IdUsuarioUltMod = info.IdUsuarioUltMod; contact.Fecha_UltMod = DateTime.Now; contact.Entregado = info.Entregado; contact.IdEstadoProduccion = info.IdEstadoProduccion; List <fa_pedido_det_Info> listaAux = new List <fa_pedido_det_Info>(); listaAux = pedido_data.Get_List_pedido_det(info.IdEmpresa, info.IdSucursal, info.IdBodega, info.IdPedido); (from q in listaAux select q).ToList().ForEach(q => q.dp_cantidad = q.dp_cantidad * -1); data_producto_bodega.ModificarDB(listaAux); foreach (var item in listaAux) { pedido_data.EliminarDB(item, ref msg); } data_producto_bodega.ModificarDB(info.lista_detalle); int sec = 0; foreach (var item in info.lista_detalle) { if (item.IdProducto != 0) { sec = sec + 1; item.Secuencial = sec; pedido_data.GrabarDB(item, ref msg); } } context.SaveChanges(); msg = "Se ha procedido actualizar el registro del Pedido #: " + info.IdPedido.ToString() + " exitosamente"; } } 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); msg = ex.ToString(); oDataLog.Guardar_Log_Error(Log_Error_sis, ref msg); throw new Exception(ex.ToString()); } }