예제 #1
0
        public JsonResult <List <Engineer> > Get(string attribute, string id)
        {
            List <projstage> test  = new List <projstage>();
            projstage        coso3 = new projstage();

            coso3.s_name = "hola";
            projstage coso2 = new projstage();

            coso2.s_name = "hola3";
            test.Add(coso3);
            if (test.Contains(coso3))
            {
                System.Diagnostics.Debug.WriteLine(test.IndexOf(coso2));
            }
            else
            {
                System.Diagnostics.Debug.WriteLine("no funca");
            }
            Engineer        eng    = null;
            List <Engineer> values = new List <Engineer>();

            string[] attr = attribute.Split(',');
            string[] ids  = id.Split(',');
            System.Diagnostics.Debug.WriteLine("print1");
            NpgsqlConnection myConnection = new NpgsqlConnection();

            System.Diagnostics.Debug.WriteLine("print2");
            myConnection.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            System.Diagnostics.Debug.WriteLine("print3");
            System.Diagnostics.Debug.WriteLine("cargo base");
            myConnection.Open();
            string action  = "select dbuser.u_id,dbuser.u_name from dbuser where dbuser.u_name <> 'Admin';";
            var    command = new NpgsqlCommand(action, myConnection);

            System.Diagnostics.Debug.WriteLine("print5");
            var coso = command.ExecuteReader();

            System.Diagnostics.Debug.WriteLine("print6");
            while (coso.Read())
            {
                eng        = new Engineer();
                eng.u_id   = (int)coso["u_id"];
                eng.u_name = (string)coso["u_name"];
                values.Add(eng);
            }

            myConnection.Close();
            return(Json(values));
        }
예제 #2
0
        public JsonResult <List <ProjectDetails> > Get(string attribute, string id)
        {
            ProjectDetails        proj   = null;
            List <ProjectDetails> values = new List <ProjectDetails>();

            string[]         ids          = id.Split(',');
            NpgsqlConnection myConnection = new NpgsqlConnection();

            myConnection.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString;
            string test    = "select * from getprojectdetails(" + ids[0] + ");";
            var    command = new NpgsqlCommand(test, myConnection);

            myConnection.Open();
            var coso = command.ExecuteReader();

            proj = new ProjectDetails();
            while (coso.Read())
            {
                proj.gpd_id       = (int)coso["gpd_id"];
                proj.gpd_name     = (string)coso["gpd_name"];
                proj.gpd_location = (string)coso["gpd_location"];
                proj.gpd_engineer = (int)coso["gpd_engineer"];
                proj.gdp_pbudget  = (int)coso["gpd_pbudget"];
                proj.gpd_owner    = (int)coso["gpd_owner"];
                projstage stag = new projstage();
                if (coso["gpd_sname"].ToString().Length > 1)
                {
                    stag.s_name      = (string)coso["gpd_sname"];
                    stag.s_datestart = (DateTime)coso["gpd_datestart"];
                    stag.gpd_budget  = (int)coso["gpd_budget"];
                    stag.s_dateend   = (DateTime)coso["gpd_dateend"];
                    stag.s_status    = (String)coso["gpd_status"];
                    if (proj.stages.Count != 0)
                    {
                        for (int z = 0; z < proj.stages.Count; z++)
                        {
                            if (proj.stages.ElementAt(z).s_name == stag.s_name)
                            {
                                prodstage product = new prodstage();
                                product.p_name     = (string)coso["gpd_prname"];
                                product.p_id       = (int)coso["gpd_pid"];
                                product.p_price    = (int)coso["gpd_price"];
                                product.p_quantity = (int)coso["gpd_quantity"];
                                proj.stages.ElementAt(z).products.Add(product);
                            }
                            else if (proj.stages.ElementAt(z).s_name != stag.s_name && z == proj.stages.Count - 1)
                            {
                                proj.stages.Add(stag);
                                int       i       = proj.stages.IndexOf(stag);
                                prodstage product = new prodstage();
                                product.p_id       = (int)coso["gpd_pid"];
                                product.p_name     = (string)coso["gpd_prname"];
                                product.p_price    = (int)coso["gpd_price"];
                                product.p_quantity = (int)coso["gpd_quantity"];
                                proj.stages.ElementAt(i).products.Add(product);
                            }
                        }
                    }
                    else if (proj.stages.Count == 0)
                    {
                        proj.stages.Add(stag);
                        int       i       = proj.stages.IndexOf(stag);
                        prodstage product = new prodstage();
                        product.p_id       = (int)coso["gpd_pid"];
                        product.p_name     = (string)coso["gpd_prname"];
                        product.p_price    = (int)coso["gpd_price"];
                        product.p_quantity = (int)coso["gpd_quantity"];
                        proj.stages.ElementAt(i).products.Add(product);
                    }
                }
                else
                {
                    myConnection.Close();
                    values.Add(proj);
                }
            }
            values.Add(proj);
            myConnection.Close();
            return(Json(values));
        }