public List <Models.TestLevels.TestStructures> GetTopStructures()
        {
            List <Models.TestLevels.TestStructures> list = new List <Models.TestLevels.TestStructures>();

            con = new NpgsqlConnection(conFIG.ConnFor_PG_Admin);
            cmd = new NpgsqlCommand(@"select * from qadata.ref_structure where parent_idnumber = '00000000-0000-0000-0000-000000000000' order by name;", con);

            da = new NpgsqlDataAdapter(cmd);
            DataSet ds = new DataSet();

            da.Fill(ds);


            foreach (DataRow DR in ds.Tables[0].Rows)
            {
                Models.TestLevels.TestStructures item = new Models.TestLevels.TestStructures();
                item.id              = new Guid(Convert.ToString(DR["row_idnumber"]));
                item.Name            = Convert.ToString(DR["name"]);
                item.ShortName       = Convert.ToString(DR["srtname"]);
                item.Parent_IDNumber = new Guid(Convert.ToString(DR["parent_idnumber"]));

                list.Add(item);
            }

            return(list);
        }
        public Guid Maintain_Level(Models.TestLevels.TestStructures item, string username)
        {
            Guid record_IDNUM = new Guid();

            con = new NpgsqlConnection(conFIG.ConnFor_PG_Admin);
            cmd = new NpgsqlCommand(@"SELECT qadata.maintain_level(@idnum, @parent_idnumber, @name, @short_name, @loggedinas, @status);", con);

            cmd.Parameters.Add("@idnum", NpgsqlTypes.NpgsqlDbType.Uuid).Value           = item.id;
            cmd.Parameters.Add("@parent_idnumber", NpgsqlTypes.NpgsqlDbType.Uuid).Value = item.Parent_IDNumber;
            cmd.Parameters.Add("@name", NpgsqlTypes.NpgsqlDbType.Varchar).Value         = item.Name ?? "";
            cmd.Parameters.Add("@short_name", NpgsqlTypes.NpgsqlDbType.Varchar).Value   = item.ShortName ?? "";
            cmd.Parameters.Add("@loggedinas", NpgsqlTypes.NpgsqlDbType.Varchar).Value   = username;
            cmd.Parameters.Add("@status", NpgsqlTypes.NpgsqlDbType.Integer).Value       = item.status;


            da = new NpgsqlDataAdapter(cmd);
            DataSet ds = new DataSet();

            da.Fill(ds);

            record_IDNUM = new Guid(Convert.ToString(ds.Tables[0].Rows[0]["maintain_level"]));

            return(record_IDNUM);
        }
        public Models.TestLevels.TestStructures GetStructure(Guid ID_Number)
        {
            List <Models.TestLevels.TestStructures> list = new List <Models.TestLevels.TestStructures>();

            con = new NpgsqlConnection(conFIG.ConnFor_PG_Admin);
            cmd = new NpgsqlCommand(@"select * from qadata.ref_structure where row_idnumber = @idnum limit 1;", con);
            cmd.Parameters.Add("@idnum", NpgsqlTypes.NpgsqlDbType.Uuid).Value = ID_Number;

            da = new NpgsqlDataAdapter(cmd);
            DataSet ds = new DataSet();

            da.Fill(ds);

            Models.TestLevels.TestStructures item = new Models.TestLevels.TestStructures();
            foreach (DataRow DR in ds.Tables[0].Rows)
            {
                item.id              = new Guid(Convert.ToString(DR["row_idnumber"]));
                item.Name            = Convert.ToString(DR["name"]);
                item.ShortName       = Convert.ToString(DR["srtname"]);
                item.Parent_IDNumber = new Guid(Convert.ToString(DR["parent_idnumber"]));
            }

            return(item);
        }