Exemple #1
0
        protected void btnAprove_Click(object sender, EventArgs e)
        {
            List <STOS> lst = new List <STOS>();

            ViewState["reprovar"] = false;
            try
            {
                foreach (GridViewRow r in grdOS.Rows)
                {
                    DropDownList drop = (DropDownList)r.FindControl("cmbAprovar");
                    if (drop != null)
                    {
                        if (drop.SelectedValue == "A")
                        {
                            lst.Add(new STOS(((LinkButton)r.FindControl("lnk")).CommandArgument, "A", cmbObra.SelectedValue));
                        }
                        else if (drop.SelectedValue == "R")
                        {
                            ViewState["reprovar"] = true;
                            lst.Add(new STOS(((LinkButton)r.FindControl("lnk")).CommandArgument, "R", cmbObra.SelectedValue));
                        }
                    }
                }

                if (lst.Count < 1)
                {
                    throw new Exception("Selecione uma ordem de serviço!");
                }

                List <STOS> l = lst.FindAll(delegate(STOS st) { return(st.state == "A"); });
                //aprovar
                //executar procedure de aprovacao
                tblOS tbl = new tblOS();
                tbl.cmpCoObra    = cmbObra.SelectedValue;
                tbl.cmpNoUsuario = ((HzLibGeneral.Util.HzLogin)Session["login"]).cmpNoUsuario;
                string str = "";
                foreach (STOS st in l)
                {
                    str += st.cmpIdOS + ",";
                }
                tbl.GravarAprovacaoOS(Global.GetConnection(), str);

                l = lst.FindAll(delegate(STOS st) { return(st.state == "R"); });
                //rejeitar
                if ((bool)ViewState["reprovar"])
                {
                    foreach (STOS st in l)
                    {
                        str += st.cmpIdOS + ",";
                    }


                    Session["STOS"] = lst;
                    Response.Redirect("~/ATE/webATE_OSJustificativa.aspx?id=" + ViewState["cmpIdOS"] + "&Sit=R", false);
                }
                else
                {
                    btnPesquisar_Click(sender, e);
                }
            }
            catch (Exception ex)
            {
                Global.ShowError(Global.Title, ex.Message);
            }
        }