public ActionResult Edit(Calendario445ViewModel modelView) { try { CALENDARIO_AC calendarioAc = modelView.calendario445; USUARIO user = ObtenerUsuario(); DateTime fechaActual = DateTime.Now; calendarioAc.USUARIOM_ID = user.ID; calendarioAc.FECHAM = fechaActual; if (!ValidarFechas(calendarioAc)) { throw new Exception(); } db.Entry(calendarioAc).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } catch (Exception ex) { ObtenerConfPage(532); CargarSelectList(ref modelView, new string[] { CMB_SOCIEDADES + "," + modelView.calendario445.SOCIEDAD_ID, CMB_PERIODOS + "," + modelView.calendario445.PERIODO, CMB_TIPOSSOLICITUD + "," + modelView.calendario445.TSOL_ID }); return(View(modelView)); } }
bool ValidarFechas(CALENDARIO_AC calendarioAc) { int pagina_id = 530; if (calendarioAc.PRE_FROMF > calendarioAc.PRE_TOF || calendarioAc.CIE_FROMF > calendarioAc.CIE_TOF || calendarioAc.PRE_TOF > calendarioAc.CIE_FROMF) { ViewBag.mnjError = ObtenerTextoMnj(pagina_id, "lbl_mnjErrorRangoFechas"); return(false); } CALENDARIO_AC calendarioAux = db.CALENDARIO_AC.Where(x => x.SOCIEDAD_ID == calendarioAc.SOCIEDAD_ID && x.EJERCICIO == calendarioAc.EJERCICIO && x.TSOL_ID == calendarioAc.TSOL_ID && x.PERIODO != calendarioAc.PERIODO && ((calendarioAc.PRE_FROMF >= x.PRE_FROMF && calendarioAc.PRE_FROMF <= x.CIE_TOF) || (calendarioAc.CIE_TOF >= x.PRE_FROMF && calendarioAc.CIE_TOF <= x.CIE_TOF))).FirstOrDefault(); if (calendarioAux != null) { ViewBag.mnjError = String.Format(ObtenerTextoMnj(pagina_id, "lbl_mnjTraslapeEnPeriodo"), calendarioAux.PERIODO); return(false); } calendarioAux = db.CALENDARIO_AC.Where(x => x.SOCIEDAD_ID == calendarioAc.SOCIEDAD_ID && x.EJERCICIO == calendarioAc.EJERCICIO && x.TSOL_ID == calendarioAc.TSOL_ID && x.PERIODO <calendarioAc.PERIODO && x.PRE_FROMF> calendarioAc.PRE_FROMF).FirstOrDefault(); if (calendarioAux != null) { ViewBag.mnjError = ObtenerTextoMnj(pagina_id, "lbl_mnjMenorAPeriodoAnt"); return(false); } return(true); }
public ActionResult Create(Calendario445ViewModel modelView) { int pagina_id = 531;//ID EN BASE DE DATOS try { CALENDARIO_AC calendarioAc = modelView.calendario445; USUARIO user = ObtenerUsuario(); DateTime fechaActual = DateTime.Now; calendarioAc.EJERCICIO = short.Parse(fechaActual.Year.ToString()); calendarioAc.ACTIVO = true; calendarioAc.USUARIOC_ID = user.ID; calendarioAc.FECHAC = fechaActual; if (!ValidarPeriodoExistente(calendarioAc) || !ValidarFechas(calendarioAc)) { throw new Exception(); } db.CALENDARIO_AC.Add(calendarioAc); db.SaveChanges(); return(RedirectToAction("Index")); } catch (Exception ex) { ObtenerConfPage(pagina_id); CargarSelectList(ref modelView, new string[] { CMB_SOCIEDADES, CMB_PERIODOS, CMB_TIPOSSOLICITUD }); return(View(modelView)); } }
bool ValidarPeriodoExistente(CALENDARIO_AC calendarioAc) { int pagina_id = 530; string spras_id = FnCommon.ObtenerSprasId(db, User.Identity.Name); int noExiste = 0; sociedadesDao.ListaSociedades(TATConstantes.ACCION_LISTA_SOCIEDADES).ForEach(x => { tiposSolicitudesDao.ListaTiposSolicitudes(spras_id, null).ForEach(z => { calendarioAc.SOCIEDAD_ID = x.BUKRS; calendarioAc.TSOL_ID = z.TSOL_ID; if (!db.CALENDARIO_AC.Any(y => y.EJERCICIO == calendarioAc.EJERCICIO && y.PERIODO == calendarioAc.PERIODO && y.SOCIEDAD_ID == calendarioAc.SOCIEDAD_ID && y.TSOL_ID == calendarioAc.TSOL_ID)) { noExiste++; } }); }); if (noExiste == 0) { ViewBag.mnjError = FnCommon.ObtenerTextoMnj(db, pagina_id, "lbl_mnjExistePeriodo", User.Identity.Name); return(false); } return(true); }
public ActionResult Edit(Calendario445ViewModel modelView) { int pagina_id = 532;//ID EN BASE DE DATOS try { CALENDARIO_AC calendarioAc = modelView.calendario445; DateTime fechaActual = DateTime.Now; calendarioAc.USUARIOM_ID = User.Identity.Name; calendarioAc.FECHAM = fechaActual; if (!ValidarFechas(calendarioAc)) { throw (new Exception()); } db.Entry(calendarioAc).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } catch (Exception) { FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller); CargarSelectList(ref modelView, new string[] { CMB_SOCIEDADES + "," + modelView.calendario445.SOCIEDAD_ID, CMB_PERIODOS + "," + modelView.calendario445.PERIODO, CMB_EJERCICIO, CMB_TIPOSSOLICITUD + "," + modelView.calendario445.TSOL_ID }); return(View(modelView)); } }
public Calendario445ViewModel() { calendario445 = new CALENDARIO_AC(); calendarios445 = new List <CALENDARIO_AC>(); calendarioEx445 = new CALENDARIO_EX(); calendariosEx445 = new List <CALENDARIO_EX>(); sociedades = new List <SelectListItem>(); periodos = new List <SelectListItem>(); tipoSolicitudes = new List <SelectListItem>(); usuarios = new List <SelectListItem>(); }
public static int ObtenerPeriodoCalendario445(TAT001Entities db, string sociedad_id, string tsol_id, string usuario_id = null) { //tipo //PRE = PreCierre //CI = Cierre DateTime fechaActual = DateTime.Now; short ejercicio = short.Parse(fechaActual.Year.ToString()); CALENDARIO_AC calendarioAc = null; CALENDARIO_EX calendarioEx = null; calendarioAc = db.CALENDARIO_AC.FirstOrDefault(x => x.ACTIVO && x.SOCIEDAD_ID == sociedad_id && x.TSOL_ID == tsol_id && x.EJERCICIO == ejercicio && (fechaActual >= DbFunctions.CreateDateTime(x.PRE_FROMF.Year, x.PRE_FROMF.Month, x.PRE_FROMF.Day, x.PRE_FROMH.Hours, x.PRE_FROMH.Minutes, x.PRE_FROMH.Seconds) && fechaActual <= DbFunctions.CreateDateTime(x.PRE_TOF.Year, x.PRE_TOF.Month, x.PRE_TOF.Day, x.PRE_TOH.Hours, x.PRE_TOH.Minutes, x.PRE_TOH.Seconds))); if (calendarioAc != null) { return(calendarioAc.PERIODO); } if (usuario_id != null) { calendarioEx = db.CALENDARIO_EX.FirstOrDefault(x => x.ACTIVO && x.SOCIEDAD_ID == sociedad_id && x.TSOL_ID == tsol_id && x.USUARIO_ID == usuario_id && x.EJERCICIO == ejercicio && (fechaActual >= DbFunctions.CreateDateTime(x.EX_FROMF.Year, x.EX_FROMF.Month, x.EX_FROMF.Day, x.EX_FROMH.Hours, x.EX_FROMH.Minutes, x.EX_FROMH.Seconds) && fechaActual <= DbFunctions.CreateDateTime(x.EX_TOF.Year, x.EX_TOF.Month, x.EX_TOF.Day, x.EX_TOH.Hours, x.EX_TOH.Minutes, x.EX_TOH.Seconds))); if (calendarioEx != null) { return(calendarioEx.PERIODO); } } calendarioAc = db.CALENDARIO_AC.FirstOrDefault(x => x.ACTIVO && x.SOCIEDAD_ID == sociedad_id && x.TSOL_ID == tsol_id && x.EJERCICIO == ejercicio && (fechaActual >= DbFunctions.CreateDateTime(x.CIE_FROMF.Year, x.CIE_FROMF.Month, x.CIE_FROMF.Day, x.CIE_FROMH.Hours, x.CIE_FROMH.Minutes, x.CIE_FROMH.Seconds) && fechaActual <= DbFunctions.CreateDateTime(x.CIE_TOF.Year, x.CIE_TOF.Month, x.CIE_TOF.Day, x.CIE_TOH.Hours, x.CIE_TOH.Minutes, x.CIE_TOH.Seconds))); if (calendarioAc != null) { return(calendarioAc.PERIODO); } return(0); }
bool ValidarPeriodoExistente(CALENDARIO_AC calendarioAc) { int pagina_id = 530; if (db.CALENDARIO_AC.Any(x => x.SOCIEDAD_ID == calendarioAc.SOCIEDAD_ID && x.PERIODO == calendarioAc.PERIODO && x.EJERCICIO == calendarioAc.EJERCICIO && x.TSOL_ID == calendarioAc.TSOL_ID)) { ViewBag.mnjError = ObtenerTextoMnj(pagina_id, "lbl_mnjExistePeriodo"); return(false); } return(true); }
public Calendario445ViewModel() { calendario445 = new CALENDARIO_AC(); calendarioEx445 = new CALENDARIO_EX(); ejercicio = new List <SelectListItem>(); sociedades = new List <SelectListItem>(); periodos = new List <SelectListItem>(); cmbTiposSolicitud = new List <SelectListItem>(); usuarios = new List <SelectListItem>(); treeTiposSolicitud = new List <SelectTreeItem>(); pageSizes = new List <SelectListItem>(); }
bool ValidarFechas(CALENDARIO_AC calendarioAc) { int pagina_id = 530; DateTime?fechaIPre = new DateTime(calendarioAc.PRE_FROMF.Year, calendarioAc.PRE_FROMF.Month, calendarioAc.PRE_FROMF.Day, calendarioAc.PRE_FROMH.Hours, calendarioAc.PRE_FROMH.Minutes, calendarioAc.PRE_FROMH.Seconds); DateTime?fechaFPre = new DateTime(calendarioAc.PRE_TOF.Year, calendarioAc.PRE_TOF.Month, calendarioAc.PRE_TOF.Day, calendarioAc.PRE_TOH.Hours, calendarioAc.PRE_TOH.Minutes, calendarioAc.PRE_TOH.Seconds); DateTime?fechaICi = new DateTime(calendarioAc.CIE_FROMF.Year, calendarioAc.CIE_FROMF.Month, calendarioAc.CIE_FROMF.Day, calendarioAc.CIE_FROMH.Hours, calendarioAc.CIE_FROMH.Minutes, calendarioAc.CIE_FROMH.Seconds); DateTime?fechaFCi = new DateTime(calendarioAc.CIE_TOF.Year, calendarioAc.CIE_TOF.Month, calendarioAc.CIE_TOF.Day, calendarioAc.CIE_TOH.Hours, calendarioAc.CIE_TOH.Minutes, calendarioAc.CIE_TOH.Seconds); if (fechaIPre > fechaFPre || fechaICi > fechaFCi || fechaFPre > fechaICi) { ViewBag.mnjError = FnCommon.ObtenerTextoMnj(db, pagina_id, "lbl_mnjErrorRangoFechas", User.Identity.Name); return(false); } CALENDARIO_AC calendarioAux = db.CALENDARIO_AC.Where(x => x.SOCIEDAD_ID == calendarioAc.SOCIEDAD_ID && x.EJERCICIO == calendarioAc.EJERCICIO && x.TSOL_ID == calendarioAc.TSOL_ID && x.PERIODO != calendarioAc.PERIODO && ((fechaIPre >= DbFunctions.CreateDateTime(x.PRE_FROMF.Year, x.PRE_FROMF.Month, x.PRE_FROMF.Day, x.PRE_FROMH.Hours, x.PRE_FROMH.Minutes, x.PRE_FROMH.Seconds) && fechaIPre <= DbFunctions.CreateDateTime(x.CIE_TOF.Year, x.CIE_TOF.Month, x.CIE_TOF.Day, x.CIE_TOH.Hours, x.CIE_TOH.Minutes, x.CIE_TOH.Seconds)) || (fechaFCi >= DbFunctions.CreateDateTime(x.PRE_FROMF.Year, x.PRE_FROMF.Month, x.PRE_FROMF.Day, x.PRE_FROMH.Hours, x.PRE_FROMH.Minutes, x.PRE_FROMH.Seconds) && fechaFCi <= DbFunctions.CreateDateTime(x.CIE_TOF.Year, x.CIE_TOF.Month, x.CIE_TOF.Day, x.CIE_TOH.Hours, x.CIE_TOH.Minutes, x.CIE_TOH.Seconds)))).FirstOrDefault(); if (calendarioAux != null) { ViewBag.mnjError = String.Format(FnCommon.ObtenerTextoMnj(db, pagina_id, "lbl_mnjTraslapeEnPeriodo", User.Identity.Name), calendarioAux.PERIODO); return(false); } calendarioAux = db.CALENDARIO_AC.Where(x => x.SOCIEDAD_ID == calendarioAc.SOCIEDAD_ID && x.EJERCICIO == calendarioAc.EJERCICIO && x.TSOL_ID == calendarioAc.TSOL_ID && x.PERIODO <calendarioAc.PERIODO && x.PRE_FROMF> calendarioAc.PRE_FROMF).FirstOrDefault(); if (calendarioAux != null) { ViewBag.mnjError = FnCommon.ObtenerTextoMnj(db, pagina_id, "lbl_mnjMenorAPeriodoAnt", User.Identity.Name); return(false); } return(true); }
public ActionResult Create(Calendario445ViewModel modelView) { int pagina_id = 531;//ID EN BASE DE DATOS try { CALENDARIO_AC calendarioAc = modelView.calendario445; calendarioAc.ACTIVO = true; calendarioAc.USUARIOC_ID = User.Identity.Name; calendarioAc.FECHAC = DateTime.Now; if (!ValidarPeriodoExistente(calendarioAc) || !ValidarFechas(calendarioAc)) { throw (new Exception()); } string spras_id = FnCommon.ObtenerSprasId(db, User.Identity.Name); sociedadesDao.ListaSociedades(TATConstantes.ACCION_LISTA_SOCIEDADES).ForEach(x => { tiposSolicitudesDao.ListaTiposSolicitudes(spras_id, null).ForEach(z => { calendarioAc.SOCIEDAD_ID = x.BUKRS; calendarioAc.TSOL_ID = z.TSOL_ID; if (!db.CALENDARIO_AC.Any(y => y.EJERCICIO == calendarioAc.EJERCICIO && y.PERIODO == calendarioAc.PERIODO && y.SOCIEDAD_ID == calendarioAc.SOCIEDAD_ID && y.TSOL_ID == calendarioAc.TSOL_ID)) { db.CALENDARIO_AC.Add(new CALENDARIO_AC { EJERCICIO = calendarioAc.EJERCICIO, PERIODO = calendarioAc.PERIODO, SOCIEDAD_ID = calendarioAc.SOCIEDAD_ID, TSOL_ID = calendarioAc.TSOL_ID, PRE_FROMF = calendarioAc.PRE_FROMF, PRE_FROMH = calendarioAc.PRE_FROMH, PRE_TOF = calendarioAc.PRE_TOF, PRE_TOH = calendarioAc.PRE_TOH, CIE_FROMF = calendarioAc.CIE_FROMF, CIE_FROMH = calendarioAc.CIE_FROMH, CIE_TOF = calendarioAc.CIE_TOF, CIE_TOH = calendarioAc.CIE_TOH, USUARIOC_ID = calendarioAc.USUARIOC_ID, FECHAC = calendarioAc.FECHAC, USUARIOM_ID = calendarioAc.USUARIOM_ID, FECHAM = calendarioAc.FECHAM, ACTIVO = calendarioAc.ACTIVO }); db.SaveChanges(); } }); }); return(RedirectToAction("Index")); } catch (Exception) { FnCommon.ObtenerConfPage(db, pagina_id, User.Identity.Name, this.ControllerContext.Controller); CargarSelectList(ref modelView, new string[] { CMB_PERIODOS, CMB_EJERCICIO }); return(View(modelView)); } }