public bool guardarDB(ct_periodo_Info info) { try { using (Entities_contabilidad Context = new Entities_contabilidad()) { ct_periodo Entity = new ct_periodo { IdPeriodo = info.IdPeriodo, IdEmpresa = info.IdEmpresa, IdanioFiscal = info.IdanioFiscal, pe_FechaIni = info.pe_FechaIni.Date, pe_FechaFin = info.pe_FechaFin.Date, pe_mes = info.pe_mes, pe_cerrado = info.pe_cerrado_bool == true ? "S" : "N", pe_estado = info.pe_estado = "A" }; Context.ct_periodo.Add(Entity); Context.SaveChanges(); } return(true); } catch (Exception) { throw; } }
public bool modificarDB(ct_periodo_Info info) { try { using (Entities_contabilidad Context = new Entities_contabilidad()) { ct_periodo Entity = Context.ct_periodo.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdPeriodo == info.IdPeriodo); if (Entity == null) { return(false); } Entity.IdPeriodo = info.IdPeriodo; Entity.pe_mes = info.pe_mes; Entity.pe_FechaFin = info.pe_FechaFin.Date; Entity.pe_FechaIni = info.pe_FechaIni.Date; Entity.pe_cerrado = info.pe_cerrado_bool == true ? "S" : "N"; Context.SaveChanges(); } return(true); } catch (Exception) { throw; } }
public ct_periodo_Info get_info(int IdEmpresa, int IdPeriodo) { try { ct_periodo_Info info = new ct_periodo_Info(); using (Entities_contabilidad Context = new Entities_contabilidad()) { ct_periodo Entity = Context.ct_periodo.FirstOrDefault(q => q.IdEmpresa == IdEmpresa && q.IdPeriodo == IdPeriodo); if (Entity == null) { return(null); } info = new ct_periodo_Info { IdPeriodo = Entity.IdPeriodo, IdEmpresa = Entity.IdEmpresa, IdanioFiscal = Entity.IdanioFiscal, pe_FechaIni = Entity.pe_FechaIni, pe_FechaFin = Entity.pe_FechaFin, pe_mes = Entity.pe_mes, pe_cerrado_bool = Entity.pe_cerrado == "S" ? true : false, pe_estado = Entity.pe_estado }; } return(info); } catch (Exception) { throw; } }
public List <Af_Depreciacion_Det_Info> get_list_a_depreciar(int IdEmpresa, int IdPeriodo, string IdUsuario) { try { List <Af_Depreciacion_Det_Info> Lista; DateTime Fecha_ini = DateTime.Now; DateTime fecha_fin = DateTime.Now; using (Entities_contabilidad Context = new Entities_contabilidad()) { ct_periodo e_periodo = Context.ct_periodo.Where(q => q.IdPeriodo == IdPeriodo && q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (e_periodo == null) { return(new List <Af_Depreciacion_Det_Info>()); } Fecha_ini = e_periodo.pe_FechaIni.Date; fecha_fin = e_periodo.pe_FechaFin.Date; } using (Entities_activo_fijo Context = new Entities_activo_fijo()) { Lista = (from q in Context.spACTF_activos_a_depreciar(IdEmpresa, Fecha_ini, fecha_fin, IdUsuario) select new Af_Depreciacion_Det_Info { IdEmpresa = q.IdEmpresa, IdActivoFijo = q.IdActivoFijo, Af_Nombre = q.Af_Nombre, CodActivoFijo = q.CodActivoFijo, nom_tipo = q.nom_tipo, nom_categoria = q.nom_categoria, Valor_Depreciacion = q.Af_valor_depreciacion, Valor_Depre_Acum = q.Af_depreciacion_acum, Valor_Compra = q.Af_costo_compra, IdCtaCble_Activo = q.IdCtaCble_Activo, IdCtaCble_Dep_Acum = q.IdCtaCble_Dep_Acum, IdCtaCble_Gastos_Depre = q.IdCtaCble_Gastos_Depre }).ToList(); } return(Lista); } catch (Exception) { throw; } }
public Boolean GrabarDB(ct_Periodo_Info info, ref string MensajeError) { try { using (EntitiesDBConta context = new EntitiesDBConta()) { EntitiesDBConta EDB = new EntitiesDBConta(); var Q = from per in EDB.ct_periodo where per.IdPeriodo == info.IdPeriodo && per.IdEmpresa == info.IdEmpresa select per; if (Q.ToList().Count == 0) { var address = new ct_periodo(); address.IdEmpresa = info.IdEmpresa; address.IdPeriodo = Convert.ToInt32(info.IdPeriodo); address.IdanioFiscal = Convert.ToInt32(info.IdanioFiscal); address.pe_mes = Convert.ToByte(info.pe_mes); address.pe_FechaIni = Convert.ToDateTime(info.pe_FechaIni.ToShortDateString()); address.pe_FechaFin = Convert.ToDateTime(info.pe_FechaFin.ToShortDateString()); address.pe_estado = info.pe_estado; address.pe_cerrado = info.pe_cerrado; context.ct_periodo.Add(address); context.SaveChanges(); } else { return(false); } } 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()); } }
public bool anularDB(ct_periodo_Info info) { try { using (Entities_contabilidad Context = new Entities_contabilidad()) { ct_periodo Entity = Context.ct_periodo.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdPeriodo == info.IdPeriodo); if (Entity == null) { return(false); } Entity.pe_estado = info.pe_estado = "I"; Context.SaveChanges(); } return(true); } catch (Exception) { throw; } }
public bool ValidarFechaTransaccion(int IdEmpresa, DateTime Fecha, cl_enumeradores.eModulo Modulo, ref string mensaje) { Entities_contabilidad db_conta = new Entities_contabilidad(); Entities_general db_general = new Entities_general(); try { Fecha = Fecha.Date; int Periodo = Convert.ToInt32(Fecha.ToString("yyyyMM")); var empresa = db_general.tb_empresa.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (empresa != null) { if (empresa.em_fechaInicioActividad > Fecha.Date) { mensaje = "La fecha de la transacción es menor al inicio de actividades de la empresa en el sistema FIXED ERP: " + Fecha.Date.ToString("dd/MM/yyyy"); return(false); } } ct_periodo per = db_conta.ct_periodo.Where(q => q.IdEmpresa == IdEmpresa && q.IdPeriodo == Periodo).FirstOrDefault(); if (per == null) { mensaje = "El periodo " + Periodo + " de la transacción no se encuentra registrado."; return(false); } if (per.pe_cerrado == "S") { mensaje = "El periodo " + Periodo + " se encuentra cerrado."; return(false); } switch (Modulo) { case cl_enumeradores.eModulo.INV: using (Entities_inventario db = new Entities_inventario()) { var param = db.in_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de inventario"; return(false); } /* * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de importación"; * return false; * } */ } break; case cl_enumeradores.eModulo.FAC: using (Entities_facturacion db = new Entities_facturacion()) { var param = db.fa_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de facturación"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de facturación"; return(false); } } break; case cl_enumeradores.eModulo.COM: using (Entities_compras db = new Entities_compras()) { var param = db.com_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de compras"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de compras"; return(false); } } break; case cl_enumeradores.eModulo.ACF: using (Entities_activo_fijo db = new Entities_activo_fijo()) { var param = db.Af_Parametros.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de activo fijo"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de activo fijo"; return(false); } } break; case cl_enumeradores.eModulo.RRHH: using (Entities_rrhh db = new Entities_rrhh()) { } break; case cl_enumeradores.eModulo.IMP: using (Entities_importacion db = new Entities_importacion()) { var param = db.imp_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de importación"; return(false); } /* * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de importación"; * return false; * } */ } break; case cl_enumeradores.eModulo.CONTA: using (Entities_contabilidad db = new Entities_contabilidad()) { var param = db.ct_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de contabilidad"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de contabilidad"; return(false); } } break; case cl_enumeradores.eModulo.CAJA: using (Entities_caja db = new Entities_caja()) { var param = db.caj_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de caja"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de caja"; return(false); } } break; case cl_enumeradores.eModulo.BANCO: using (Entities_banco db = new Entities_banco()) { var param = db.ba_parametros.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de bancos"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de bancos"; return(false); } } break; case cl_enumeradores.eModulo.CXC: using (Entities_cuentas_por_cobrar db = new Entities_cuentas_por_cobrar()) { var param = db.cxc_Parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de cuentas por cobrar"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de cuentas por cobrar"; return(false); } } break; case cl_enumeradores.eModulo.CXP: using (Entities_cuentas_por_pagar db = new Entities_cuentas_por_pagar()) { var param = db.cp_parametros.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de cuentas por pagar"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de cuentas por pagar"; return(false); } } break; } db_general.Dispose(); db_conta.Dispose(); return(true); } catch (Exception) { db_conta.Dispose(); db_general.Dispose(); throw; } }
public bool modificarDB(ct_periodo_Info info) { try { using (Entities_contabilidad Context = new Entities_contabilidad()) { ct_periodo Entity = Context.ct_periodo.FirstOrDefault(q => q.IdEmpresa == info.IdEmpresa && q.IdPeriodo == info.IdPeriodo); if (Entity == null) { return(false); } Entity.pe_FechaFin = info.pe_FechaFin.Date; Entity.pe_FechaIni = info.pe_FechaIni.Date; Entity.pe_cerrado = info.pe_cerrado_bool == true ? "S" : "N"; var lst_det = Context.ct_periodo_x_tb_modulo.Where(q => q.IdEmpresa == info.IdEmpresa && q.IdPeriodo == info.IdPeriodo).ToList(); Context.ct_periodo_x_tb_modulo.RemoveRange(lst_det); if (info.pe_cerrado_bool == true) { List <tb_modulo_Info> lst_modulo = data_modulo.get_list(); if (lst_modulo.Count() > 0) { foreach (var item in lst_modulo) { Context.ct_periodo_x_tb_modulo.Add(new ct_periodo_x_tb_modulo { IdEmpresa = info.IdEmpresa, IdPeriodo = info.IdPeriodo, IdModulo = item.CodModulo, IdUsuario = info.IdUsuario, FechaTransac = DateTime.Now, IdUsuarioUltModi = info.IdUsuario, FechaUltModi = DateTime.Now }); } } } else { if (info.lst_periodo_x_modulo.Count() > 0) { foreach (var item in info.lst_periodo_x_modulo) { Context.ct_periodo_x_tb_modulo.Add(new ct_periodo_x_tb_modulo { IdEmpresa = info.IdEmpresa, IdPeriodo = info.IdPeriodo, IdModulo = item.IdModulo, IdUsuario = info.IdUsuario, FechaTransac = DateTime.Now, IdUsuarioUltModi = item.IdUsuarioUltModi, FechaUltModi = DateTime.Now, }); } } } Context.SaveChanges(); } return(true); } catch (Exception) { throw; } }
public bool guardarMasivoDB(ct_periodo_Info info_general) { try { using (Entities_contabilidad Context = new Entities_contabilidad()) { foreach (var info in info_general.lst_periodo) { ct_periodo Entity = new ct_periodo { IdPeriodo = info.IdPeriodo, IdEmpresa = info.IdEmpresa, IdanioFiscal = info.IdanioFiscal, pe_FechaIni = info.pe_FechaIni.Date, pe_FechaFin = info.pe_FechaFin.Date, pe_mes = info.pe_mes, pe_cerrado = info.pe_cerrado_bool == true ? "S" : "N", pe_estado = info.pe_estado = "A" }; if (info.pe_cerrado_bool == true) { List <tb_modulo_Info> lst_modulo = data_modulo.get_list(); if (lst_modulo.Count() > 0) { foreach (var item in lst_modulo) { Context.ct_periodo_x_tb_modulo.Add(new ct_periodo_x_tb_modulo { IdEmpresa = info.IdEmpresa, IdPeriodo = info.IdPeriodo, IdModulo = item.CodModulo, IdUsuario = info.IdUsuario, FechaTransac = DateTime.Now }); } } } else { if (info_general.lst_periodo_x_modulo.Count() > 0) { foreach (var item in info_general.lst_periodo_x_modulo) { Context.ct_periodo_x_tb_modulo.Add(new ct_periodo_x_tb_modulo { IdEmpresa = info.IdEmpresa, IdPeriodo = info.IdPeriodo, IdModulo = item.IdModulo, IdUsuario = info.IdUsuario, FechaTransac = DateTime.Now }); } } } Context.ct_periodo.Add(Entity); } Context.SaveChanges(); } return(true); } catch (Exception) { throw; } }
public bool ValidarFechaTransaccion(int IdEmpresa, DateTime Fecha, cl_enumeradores.eModulo Modulo, int IdSucursal, ref string mensaje) { Entities_contabilidad db_conta = new Entities_contabilidad(); Entities_general db_general = new Entities_general(); try { Fecha = Fecha.Date; int Periodo = Convert.ToInt32(Fecha.ToString("yyyyMM")); string sModulo = Modulo.ToString(); ct_CierrePorModuloPorSucursal CierreModulo = new ct_CierrePorModuloPorSucursal(); var empresa = db_general.tb_empresa.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (empresa != null) { if (empresa.em_fechaInicioActividad > Fecha.Date) { mensaje = "La fecha de la transacción es menor al inicio de actividades de la empresa en el sistema FIXED ERP: " + Fecha.Date.ToString("dd/MM/yyyy"); return(false); } } ct_periodo per = db_conta.ct_periodo.Where(q => q.IdEmpresa == IdEmpresa && q.IdPeriodo == Periodo).FirstOrDefault(); if (per == null) { mensaje = "El periodo " + Periodo + " de la transacción no se encuentra registrado."; return(false); } if (per.pe_cerrado == "S") { mensaje = "El periodo " + Periodo + " se encuentra cerrado."; return(false); } switch (Modulo) { case cl_enumeradores.eModulo.INV: using (Entities_inventario db = new Entities_inventario()) { var param = db.in_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de inventario"; return(false); } /* * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de importación"; * return false; * } */ var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) { mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de inventario"; return(false); } } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "INV" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de inventario"; return(false); } } break; case cl_enumeradores.eModulo.FAC: using (Entities_facturacion db = new Entities_facturacion()) { var param = db.fa_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de facturación"; return(false); } var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) { mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de facturación"; return(false); } if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) { mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de facturación"; return(false); } } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "FAC" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de facturación"; return(false); } } break; case cl_enumeradores.eModulo.COM: using (Entities_compras db = new Entities_compras()) { var param = db.com_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de compras"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de compras"; * return false; * } * * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de compras"; * return false; * } */ } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "COMP" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de compras"; return(false); } } break; case cl_enumeradores.eModulo.ACF: using (Entities_activo_fijo db = new Entities_activo_fijo()) { var param = db.Af_Parametros.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de activo fijo"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de activo fijo"; * return false; * } * * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de activo fijo"; * return false; * } */ } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "ACTF" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de activo fijo"; return(false); } } break; case cl_enumeradores.eModulo.RRHH: using (Entities_rrhh db = new Entities_rrhh()) { var param = db.ro_Parametros.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de importación"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : (param.DiasTransaccionesAFuturo==null ? 0 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de recursos humanos"; * return false; * } */ } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "ROL" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de recursos humanos"; return(false); } } break; case cl_enumeradores.eModulo.IMP: using (Entities_importacion db = new Entities_importacion()) { var param = db.imp_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de importación"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : (param.DiasTransaccionesAFuturo == null ? 0 : Convert.ToInt32(param.DiasTransaccionesAFuturo)))); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de importación"; * return false; * } * * /* * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de importación"; * return false; * } */ } break; case cl_enumeradores.eModulo.CONTA: using (Entities_contabilidad db = new Entities_contabilidad()) { var param = db.ct_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de contabilidad"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de contabilidad"; * return false; * } * * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de contabilidad"; * return false; * } */ } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "CONTA" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de contabilidad"; return(false); } } break; case cl_enumeradores.eModulo.CAJA: using (Entities_caja db = new Entities_caja()) { var param = db.caj_parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de caja"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de caja"; * return false; * } * * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de caja"; * return false; * } */ } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "CAJ" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de caja"; return(false); } } break; case cl_enumeradores.eModulo.BANCO: using (Entities_banco db = new Entities_banco()) { var param = db.ba_parametros.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de bancos"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de bancos"; * return false; * } * * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de bancos"; * return false; * } */ } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "BAN" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de bancos"; return(false); } } break; case cl_enumeradores.eModulo.CXC: using (Entities_cuentas_por_cobrar db = new Entities_cuentas_por_cobrar()) { var param = db.cxc_Parametro.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de cuentas por cobrar"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de cuentas por cobrar"; * return false; * } * * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de cuentas por cobrar"; * return false; * } */ } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "CXC" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de cuentas por cobrar"; return(false); } } break; case cl_enumeradores.eModulo.CXP: using (Entities_cuentas_por_pagar db = new Entities_cuentas_por_pagar()) { var param = db.cp_parametros.Where(q => q.IdEmpresa == IdEmpresa).FirstOrDefault(); if (param == null) { mensaje = "No existen parámetros para el módulo de cuentas por pagar"; return(false); } /* * var FechaFutura = DateTime.Now.AddDays((param == null ? 0 : param.DiasTransaccionesAFuturo)); * var FechaPasada = DateTime.Now.AddDays(-(param == null ? 0 : (param.DiasTransaccionesAPasado == null ? 99999 : Convert.ToInt32(param.DiasTransaccionesAPasado)))); * * if (!(Fecha >= FechaPasada && Fecha <= FechaFutura)) * { * mensaje = "La fecha de la transacción no está permitida por los parámetros del módulo de cuentas por pagar"; * return false; * } * * if (param.DiasTransaccionesAFuturo > 0 && DateTime.Now.Date.AddDays(param.DiasTransaccionesAFuturo) < Fecha) * { * mensaje = "La fecha de la transacción es superior a la fecha permitida por los parámetros del módulo de cuentas por pagar"; * return false; * } */ } CierreModulo = db_conta.ct_CierrePorModuloPorSucursal.Where(q => q.IdEmpresa == IdEmpresa && q.IdSucursal == IdSucursal && q.CodModulo == "CXP" && q.Cerrado).OrderByDescending(q => q.FechaFin).FirstOrDefault(); if (CierreModulo != null) { if (Fecha.Date <= CierreModulo.FechaFin) { mensaje = "El periodo de la transacción se encuentra cerrado para el módulo de cuentas por pagar"; return(false); } } break; } db_general.Dispose(); db_conta.Dispose(); return(true); } catch (Exception) { db_conta.Dispose(); db_general.Dispose(); throw; } }