コード例 #1
0
ファイル: Departments.cs プロジェクト: anushaande/login
        //public List<Departments> GetDepartmentsFromApi()
        //{
        //    var resultList = new List<Departments>();

        //    var client = new HttpClient();
        //    var getdata = client.GetAsync("https://cftest.hsc.usf.edu/globaldepts/api/values")
        //        .ContinueWith(response =>
        //        {
        //            var result = response.Result;
        //            if (result.StatusCode == System.Net.HttpStatusCode.OK)
        //            {
        //                var readResult = result.Content.ReadAsAsync<List<Departments>>();
        //                readResult.Wait();
        //                //get the  result
        //                resultList = readResult.Result;
        //            }
        //        });
        //    //wait until async method completes
        //    getdata.Wait();
        //    return resultList;
        //}

        public void ReassignDepartment(CommonLibrary.Database database)
        {
            var parameters = new OracleParameter[]
            {
                new OracleParameter()
                {
                    ParameterName = "phart_dept_key  ", Direction = ParameterDirection.Input, Value = KEY_GLOBAL_DEPT
                },
                new OracleParameter()
                {
                    ParameterName = "pdept_key", Direction = ParameterDirection.Input, Value = DEPT_KEY
                },
                new OracleParameter()
                {
                    ParameterName = "psource_sys", Direction = ParameterDirection.Input, Value = SOURCE_KEY
                },
                new OracleParameter()
                {
                    ParameterName = "pperson_id", Direction = ParameterDirection.Input, Value = PERSON_ID
                },
            };

            database.FillParametersFromProcedure("dept_assignment.change_dept_assignment", parameters);


            //StreamWriter sw = new StreamWriter(@"c:\repos\logs\error2.txt");
            //sw.WriteLine("ddl = " + KEY_GLOBAL_DEPT);
            //sw.WriteLine("PersonID = " + DEPT_KEY);
            //sw.WriteLine("source = " + SOURCE_KEY);
            //sw.WriteLine("deptkey = " + PERSON_ID);
            //sw.Close();
        }
コード例 #2
0
ファイル: Authorization.cs プロジェクト: anushaande/login
        public static void PopulateUser(User user, Database database)
        {
            if (string.IsNullOrEmpty(user.UID))
            {
                var parameters = new OracleParameter[]
                {
                    new OracleParameter()
                    {
                        ParameterName = "p_hscnet_id", Direction = ParameterDirection.Input, Value = user.GetHSCNetIdFromEmail()
                    },
                    new OracleParameter()
                    {
                        ParameterName = "p_firstname", Direction = ParameterDirection.Output, Size = 5000
                    },
                    new OracleParameter()
                    {
                        ParameterName = "p_lastname", Direction = ParameterDirection.Output, Size = 5000
                    },
                    new OracleParameter()
                    {
                        ParameterName = "p_personid", Direction = ParameterDirection.Output, Size = 5000
                    },
                };
                database.FillParametersFromProcedure("hsc.health_account.get_accounts_by_hscnet_id", parameters);

                //throw new Exception(parameters[1].Value.ToString());



                user.FirstName = parameters[1].Value.ToString();
                user.LastName  = parameters[2].Value.ToString();
                user.PersonID  = parameters[3].Value.ToString();
            }

            else
            {
                var newparameters = new OracleParameter[]
                {
                    new OracleParameter()
                    {
                        ParameterName = "p_uid", Direction = ParameterDirection.Input, Value = user.UID
                    },
                    new OracleParameter()
                    {
                        ParameterName = "p_firstname", Direction = ParameterDirection.Output, Size = 5000
                    },
                    new OracleParameter()
                    {
                        ParameterName = "p_lastname", Direction = ParameterDirection.Output, Size = 5000
                    },
                    new OracleParameter()
                    {
                        ParameterName = "p_personid", Direction = ParameterDirection.Output, Size = 5000
                    },
                };
                database.FillParametersFromProcedure("hsc.health_account.get_health_accounts_by_UID", newparameters);

                //throw new Exception(parameters[1].Value.ToString());



                user.FirstName = newparameters[1].Value.ToString();
                user.LastName  = newparameters[2].Value.ToString();
                user.PersonID  = newparameters[3].Value.ToString();
            }

            //StreamWriter sw = new StreamWriter(@"c:\inetpub\wwwroot\logcas.txt");
            //sw.WriteLine("PersonID = " + user.PersonID);
            //sw.WriteLine("First Name = " + user.FirstName);
            //sw.WriteLine("Last Name = " + user.LastName);
            //sw.WriteLine("UID = " + user.UID);

            if (database == null)
            {
                throw new Exception("Database is null");
            }
            if (user.PersonID == null)
            {
                throw new Exception("PersonID is null");
            }

            var personID = new OracleParameter()
            {
                ParameterName = "p_person_id", Direction = ParameterDirection.Input, Value = user.PersonID
            };
            var cursor = new OracleParameter("curr_groups", OracleDbType.RefCursor)
            {
                Direction = ParameterDirection.Output
            };
            var data = database.GetDataFromProcedure("hsc.active_directory.sel_user_groups",
                                                     personID,
                                                     cursor
                                                     );

            // data.WriteXml("C:\\inetpub\\wwwroot\\data.xml");
            if (data == null)
            {
                throw new Exception("no groups to retrieve");
            }

            var table = data.Tables[0];

            var rows = table.Rows;


            //sw.WriteLine("Number of Rows = " + rows.Count);

            //sw.Close();

            //user.Groups.Add(rows[0]["sam_account_name"].ToString());

            for (var i = 0; i < rows.Count; i++)
            {
                if (rows != null && rows[i] != null)
                {
                    DataRow row = rows[i];

                    user.Groups.Add(row["sam_account_name"].ToString());
                }
            }
        }