protected void Page_Load(object sender, EventArgs e) { BLL.TareaPreventa cTP = null; BLL.AccionPreventa cAccion = null; BLL.Usuario cUsuario = null; Models.PerfilesEdicion oPE = null; IB.SUPER.Shared.DBConn cDBConn = null; try { Guid uidDocumento; int ta204_idaccionpreventa = 0; int ta207_idtareapreventa = 0; int ta201_idsubareapreventa = -1; string modoPantalla = "C"; bool soyLider = false; //Historial de navegacion IB.SUPER.Shared.HistorialNavegacion.Insertar(Request.Url.ToString(), true); Hashtable ht = Utils.ParseQuerystring(Request.QueryString.ToString()); cDBConn = new IB.SUPER.Shared.DBConn(); //Cuando viene de una insert no hay idtarea if (ht["idTarea"] != null) { ta207_idtareapreventa = int.Parse(ht["idTarea"].ToString()); } //Cuando el modo de edición sea "A", la acción vendrá por parámetro URL if (ht["idAccion"] != null) { ta204_idaccionpreventa = int.Parse(ht["idAccion"].ToString()); } if (ht["modoPantalla"] != null) { modoPantalla = ht["modoPantalla"].ToString(); } //Obtenemos los datos de la acción cAccion = new BLL.AccionPreventa(); Models.AccionPreventa oAccion = cAccion.Select(ta204_idaccionpreventa); ta201_idsubareapreventa = oAccion.ta201_idsubareapreventa; string lbl = ""; switch (oAccion.ta206_itemorigen.ToString()) { case "O": lbl = "Oportunidad"; div_container_cab_P.Visible = false; break; case "E": lbl = "Extensión"; div_container_cab_P.Visible = false; break; case "P": lbl = "Objetivo"; div_container_cab_OE.Visible = false; break; case "S": lbl = "Solicitud"; divCliente.Visible = false; div_container_cab_OE.Visible = false; div_container_cab_P.Visible = false; linkInformacionAdicional.Visible = false; break; } lblOportunidadSolic.InnerText = lbl; this.txtFinRequerida.Value = oAccion.ta204_fechafinestipulada.ToShortDateString(); this.ta205_denominacion.Value = oAccion.ta205_denominacion; this.lider.Value = oAccion.lider; soyLider = (int)Session["IDFICEPI_PC_ACTUAL"] == oAccion.t001_idficepi_lider; string estadoParticipacion = String.Empty; uidDocumento = Guid.NewGuid(); string ta207_estado = String.Empty; //Publicamos estas variables para que sean accesibles desde el Javascript string script1 = "IB.vars.ta207_idtareapreventa = '" + ta207_idtareapreventa.ToString() + "';"; script1 += "IB.vars.ta206_iditemorigen = '" + oAccion.ta206_iditemorigen.ToString() + "';"; script1 += "IB.vars.ta206_itemorigen = '" + oAccion.ta206_itemorigen.ToString() + "';"; script1 += "IB.vars.ta204_estado = '" + oAccion.ta204_estado.ToString() + "';"; if (modoPantalla == "A") { //Obtener denominaciones de tarea cTP = new BLL.TareaPreventa(); List <Models.TareaPreventa> lstDenominaciones = cTP.lstDenominacionesTarea(); selectDenominacion.DataSource = lstDenominaciones; selectDenominacion.DataTextField = "ta219_denominacion"; selectDenominacion.DataValueField = "ta219_idtipotareapreventa"; selectDenominacion.DataBind(); selectDenominacion.Items.Insert(0, new ListItem(String.Empty, String.Empty)); selectDenominacion.SelectedIndex = 0; selectDenominacion.Items.Add(new ListItem("Otras tareas", "-1")); cTP.Dispose(); } //Obtener el detalle de la tarea en caso de que el modo pantalla sea edición if (modoPantalla == "E") { cTP = new BLL.TareaPreventa(); Models.TareaPreventaDetalleParticipante oTPDE = cTP.DetalleTarea(ta207_idtareapreventa, int.Parse(Session["IDFICEPI_PC_ACTUAL"].ToString())); ta201_idsubareapreventa = oTPDE.ta201_idsubareapreventa; if (oTPDE.ta219_idtipotareapreventa != null) { //selectDenominacion.SelectedValue = oTPDE.ta219_idtipotareapreventa.ToString(); ta207_denominacion.Attributes.Remove("required"); selectDenominacion.Items.Insert(0, new ListItem(oTPDE.ta219_denominacion, oTPDE.ta219_idtipotareapreventa.ToString())); } else { selectDenominacion.Items.Add(new ListItem("Otras tareas", "-1")); selectDenominacion.SelectedValue = "-1"; divinputDenominacion.Style.Add("display", "block"); } //Obtiene el estado de un participante en una tarea. Models.TareaPreventaDetalleParticipante oTPSP = cTP.estadoparticipacion(int.Parse(Session["IDFICEPI_PC_ACTUAL"].ToString()), ta207_idtareapreventa); if (oTPDE.ta207_idtareapreventa == 0) { Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script1", "IB.vars.aviso = 1;", true); //No se han obtenido datos de la tarea } //Estado participación estadoParticipacion = oTPSP.ta214_estado; //Líder soyLider = (int)Session["IDFICEPI_PC_ACTUAL"] == oTPDE.t001_idficepi_lider; //Datos this.ta207_idtareapreventa.Value = oTPDE.ta207_idtareapreventa.ToString(); this.ta207_denominacion.Value = oTPDE.ta207_denominacion; this.ta207_observaciones.Value = oTPDE.ta207_observaciones; this.ta207_fechafinprevista.Value = oTPDE.ta207_fechafinprevista.ToString("dd/MM/yyyy"); this.ta207_fechacreacion.Value = oTPDE.ta207_fechacreacion.ToString("dd/MM/yyyy"); this.lblSello.Attributes.Add("data-after", BLL.TareaPreventa.GetLiteralEstadoTarea(oTPDE.ta207_estado.ToString())); if (oTPDE.ta207_fechafinreal != null) { this.ta207_fechafinreal.Value = oTPDE.ta207_fechafinreal.ToString(); ta207_fechafinreal.Style.Add("visibility", "visible"); lblta207_fechafinreal.Style.Add("visibility", "visible"); } else { ta207_fechafinreal.Style.Add("visibility", "hidden"); lblta207_fechafinreal.Style.Add("visibility", "hidden"); } setSelloEstado(oTPDE.ta207_estado); this.ta207_descripcion.InnerText = oTPDE.ta207_descripcion; this.ta207_comentario.InnerText = oTPDE.ta207_comentarios; this.textareaMotivoAnulacion.InnerText = oTPDE.ta207_motivoanulacion; this.linkDocumentacion.InnerText = "Documentación"; //Publicamos estas variables para que sean accesibles desde el Javascript script1 += "IB.vars.ta204_idaccionpreventa = " + oTPDE.ta204_idaccionpreventa + ";"; script1 += "IB.vars.ta201_idsubareapreventa = " + oTPDE.ta201_idsubareapreventa + ";"; script1 += "IB.vars.ta207_estado = '" + oTPDE.ta207_estado.ToString() + "';"; script1 += "IB.vars.t001_idficepi_lider = '" + oTPDE.t001_idficepi_lider.ToString() + "';"; script1 += "IB.vars.soyLider = " + soyLider.ToString().ToLower() + ";"; script1 += "IB.vars.fechaCreacion = '" + oTPDE.ta207_fechacreacion.ToString("dd/MM/yyyy") + "';"; } //Perfiles de usuario cUsuario = new BLL.Usuario(cDBConn.dblibclass); oPE = cUsuario.obtenerPerfilesEdicionUsuario(User, soyLider, ta201_idsubareapreventa); //Publicamos los perfiles del Usuario string script2 = "IB.vars.perfilesEdicion = " + JsonConvert.SerializeObject(oPE) + ";"; //Publicamos estas variables para que sean accesibles desde el Javascript script1 += "IB.vars.modoPantalla = '" + modoPantalla + "';"; script1 += "IB.vars.estadoParticipacion = '" + estadoParticipacion + "';"; script1 += "IB.vars.ta204_idaccionpreventa = '" + ta204_idaccionpreventa + "';"; //if (modoPantalla == "A") { // ta207_denominacion.Attributes.Remove("required"); //} script1 += "IB.vars.uidDocumento = '" + uidDocumento + "';"; //script1 += "IB.vars.ta207_estado = 'A';"; Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script1", script1, true); Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script2", script2, true); } catch (Exception ex) { LogError.LogearError("Error al cargar el detalle de la tarea", ex); Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script1", "IB.vars.error = 'Se ha producido un error al obtener los datos de la tarea.';", true); } finally { if (cTP != null) { cTP.Dispose(); } if (cAccion != null) { cAccion.Dispose(); } if (cUsuario != null) { cUsuario.Dispose(); } if (cDBConn != null) { cDBConn.Dispose(); } } }
protected void Page_Load(object sender, EventArgs e) { int ta204_idaccionpreventa = 0; int ta201_idsubareapreventa = -1; bool soyLider = false; BLL.AccionPreventa cAP = null; BLL.Usuario cUsuario = null; Models.PerfilesEdicion oPE = null; BLL.SolicitudPreventa cSP = null; Shared.DBConn cDBConn = null; BLL.AreaPreventa cArea = null; Models.SolicitudPreventa oSP = null; try { //Historial de navegacion Shared.HistorialNavegacion.Insertar(Request.Url.ToString(), true); //params modo=A&itemorigen=O&iditemorigen=6&origenpantalla=CRM //qs --> bW9kbz1BJml0ZW1vcmlnZW49TyZpZGl0ZW1vcmlnZW49NiZvcmlnZW5wYW50YWxsYT1DUk0= //params modo=A&itemorigen=S&iditemorigen=19&origenpantalla=SUPER //qs --> bW9kbz1BJml0ZW1vcmlnZW49UyZpZGl0ZW1vcmlnZW49MTkmb3JpZ2VucGFudGFsbGE9U1VQRVI= //params modo=E&id=6&itemorigen=O&iditemorigen=6&origenpantalla=CRM //qs --> bW9kbz1FJmlkPTYmaXRlbW9yaWdlbj1PJmlkaXRlbW9yaWdlbj02Jm9yaWdlbnBhbnRhbGxhPUNSTQ== //params modo=E&id=12&itemorigen=O&iditemorigen=1&origenpantalla=SUPER //qs --> bW9kbz1FJmlkPTEyJml0ZW1vcmlnZW49TyZpZGl0ZW1vcmlnZW49MSZvcmlnZW5wYW50YWxsYT1TVVBFUg== //params modo=E&id=6&itemorigen=O&iditemorigen=6&origenpantalla=SUPER //qs --> bW9kbz1FJmlkPTYmaXRlbW9yaWdlbj1PJmlkaXRlbW9yaWdlbj02Jm9yaWdlbnBhbnRhbGxhPVNVUEVS //params modo=E&id=50&itemorigen=S&iditemorigen=19&origenpantalla=SUPER //qs --> bW9kbz1FJmlkPTUwJml0ZW1vcmlnZW49UyZpZGl0ZW1vcmlnZW49MTkmb3JpZ2VucGFudGFsbGE9U1VQRVI= //params modo=E&id=1&origenpantalla=CRM //qs --> bW9kbz1FJmlkPTEmb3JpZ2VucGFudGFsbGE9Q1JN //params modo=E&id=50&origenpantalla=SUPER //qs --> bW9kbz1FJmlkPTUwJm9yaWdlbnBhbnRhbGxhPVNVUEVS //params modo=C&id=6&itemorigen=O&iditemorigen=6&origenpantalla=SUPER //qs --> bW9kbz1DJmlkPTYmaXRlbW9yaWdlbj1PJmlkaXRlbW9yaWdlbj02Jm9yaWdlbnBhbnRhbGxhPVNVUEVS //parametros: // - modo A=Alta; E=Edicióm; C=Consulta // - id id de la acción para los modos E y C // - itemorigen Tipo de solicitud para el modo A --> O->Oportunidad; P->Partida/Objetivo; E->Extensión; S->SUPER // - iditemorigen id del tipo de solicitud (ta206_idsolicitudpreventa si viene desde super) // - origenpantalla Origen de la llamada a la pantalla --> CRM; SUPER Hashtable ht = Utils.ParseQuerystring(Request.QueryString.ToString()); string modo = ht["modo"].ToString().Trim().ToUpper(); string origenpantalla = ht["origenpantalla"].ToString().Trim().ToUpper(); string itemorigen = ""; string iditemorigen = ""; string caller = ""; //pantalla que llama (autoasignacion, etc) //cabecera if (origenpantalla == "CRM") { getCabeceraPreventa(body); } cDBConn = new Shared.DBConn(); if (modo == "E" || modo == "C") //Edicion y consulta { ta204_idaccionpreventa = int.Parse(ht["id"].ToString()); if (ht["itemorigen"] != null && ht["iditemorigen"] != null) { itemorigen = ht["itemorigen"].ToString().Trim().ToUpper(); iditemorigen = ht["iditemorigen"].ToString().Trim().ToUpper(); } else { cSP = new BLL.SolicitudPreventa(cDBConn.dblibclass); oSP = cSP.getSolicitudbyAccion(ta204_idaccionpreventa); itemorigen = oSP.ta206_itemorigen; iditemorigen = oSP.ta206_iditemorigen.ToString(); } if (ht["caller"] != null && ht["caller"].ToString().Trim().Length > 0) { caller = ht["caller"].ToString(); } cAP = new BLL.AccionPreventa(cDBConn.dblibclass); Models.AccionPreventa oAP = cAP.Select(ta204_idaccionpreventa); ta201_idsubareapreventa = oAP.ta201_idsubareapreventa; //Protecciones: // - Si la acción no está abierta --> pantalla en modo consulta if (modo == "E" && oAP.ta204_estado != "A") { modo = "C"; } string jsonAccion = Newtonsoft.Json.JsonConvert.SerializeObject(oAP); string script0 = "IB.vars.oAccion = " + jsonAccion + ";"; script0 += "IB.vars.ta204_idaccionpreventa = " + oAP.ta204_idaccionpreventa + ";"; script0 += "IB.vars.ta206_estado = '" + oAP.ta206_estado + "';"; Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script0", script0, true); soyLider = (int)Session["IDFICEPI_PC_ACTUAL"] == oAP.t001_idficepi_lider; } else if (modo == "A") //alta { itemorigen = ht["itemorigen"].ToString().Trim().ToUpper(); iditemorigen = ht["iditemorigen"].ToString().Trim().ToUpper(); //Alta de acciones desde SUPER: sólo se permite crear acciones en el area de la solicitud if (itemorigen == "S") { cSP = new BLL.SolicitudPreventa(cDBConn.dblibclass); cArea = new BLL.AreaPreventa(cDBConn.dblibclass); oSP = cSP.Select(int.Parse(iditemorigen), itemorigen); Models.AreaPreventa oAP = cArea.Select((int)oSP.ta200_idareapreventa); string script3 = "IB.vars.ta199_idunidadpreventa = " + oAP.ta199_idunidadpreventa + ";"; script3 += "IB.vars.ta200_idareapreventa = " + oSP.ta200_idareapreventa + ";"; script3 += "IB.vars.ta206_estado = '" + oSP.ta206_estado + "';"; Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script3", script3, true); } string script0 = "IB.vars.ta204_idaccionpreventa = '" + Guid.NewGuid().ToString() + "';"; Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script0", script0, true); } string script1 = "IB.vars.modo = '" + modo + "';"; script1 += "IB.vars.origenpantalla = '" + origenpantalla + "';"; script1 += "IB.vars.caller = '" + caller + "';"; script1 += "IB.vars.iditemorigen = " + iditemorigen + ";"; script1 += "IB.vars.itemorigen = '" + itemorigen + "';"; script1 += "IB.vars.idficepi = " + Session["IDFICEPI_PC_ACTUAL"].ToString() + ";"; script1 += "IB.vars.profesional = '" + Session["APELLIDO1"].ToString().ToUpper() + " " + Session["APELLIDO2"].ToString().ToUpper() + ", " + Utils.Capitalize(Session["NOMBRE"].ToString()) + "';"; Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script1", script1, true); cUsuario = new BLL.Usuario(cDBConn.dblibclass); oPE = cUsuario.obtenerPerfilesEdicionUsuario(User, soyLider, ta201_idsubareapreventa); if (origenpantalla == "SUPER") { oPE.soyComercial = false; //desde super el rol comercial no debe afectar } //oPE.soyAdministrador = false; //oPE.soyFiguraSubareaActual = true; //oPE.soyLider = false; //oPE.soyPosibleLider = true; //oPE.soyFiguraAreaActual = false; string script2 = "IB.vars.perfilesEdicion = " + JsonConvert.SerializeObject(oPE) + ";"; Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "script2", script2, true); //Información de cabecera. Solo el ID, el resto por ajax en el init del js. string lbl = ""; switch (itemorigen) { case "O": lbl = "Oportunidad"; div_container_cab_P.Visible = false; break; case "E": lbl = "Extensión"; div_container_cab_P.Visible = false; divOportExt.Attributes.Add("class", "form-group show"); break; case "P": lbl = "Objetivo"; //div_txtCuenta_cab.Visible = false; div_container_cab_OE.Visible = false; break; case "S": lbl = "Solicitud"; div_txtCuenta_cab.Visible = false; div_container_cab_OE.Visible = false; div_container_cab_P.Visible = false; linkInformacionAdicional.Visible = false; break; } this.lblItemorigen_cab.InnerText = lbl; this.txtIditemorigen_cab.Value = iditemorigen; } catch (Exception ex) { LogError.LogearError("Error al cargar el detalle de la acción preventa", ex); Page.ClientScript.RegisterClientScriptBlock(Page.GetType(), "scripterr", "IB.vars.error = 'Se ha producido un error durante la carga de la acción preventa.';", true); } finally { if (cArea != null) { cArea.Dispose(); } if (cAP != null) { cAP.Dispose(); } if (cUsuario != null) { cUsuario.Dispose(); } if (cSP != null) { cSP.Dispose(); } if (cDBConn != null) { cDBConn.Dispose(); } } }