Exemple #1
0
        // GET api/<controller>/spName/paramitters
        public object Get(string spName, string paramitters)
        {
            string[] strArray        = paramitters.Split('-');
            object[] parameterValues = new object[strArray.Length];



            for (int i = 0; i < strArray.Length; i++)
            {
                if (strArray[i].ToString().ToUpper() == "NULL")
                {
                    parameterValues[i] = System.DBNull.Value;
                }
                else
                {
                    int result = 0;
                    if (int.TryParse(strArray[i].ToString(), out result))
                    {
                        parameterValues[i] = result;
                    }
                    else
                    {
                        parameterValues[i] = strArray[i].ToString();
                    }
                }
            }
            DataAccessBase base2 = new DataAccessBase();

            return(JsonConvert.SerializeObject(base2.ReaderSp(spName, parameterValues)));
        }
        public IHttpActionResult Post(ReportInfo report)
        //public ActionResult Index()
        {
            DataAccessBase base2 = new DataAccessBase();

            string[] strArray        = report.ReportName.Split(new char[] { ',' });
            object[] parameterValues = new object[strArray.Length - 1];
            string   sPName          = strArray[0].ToString();

            for (int i = 1; i < strArray.Length; i++)
            {
                parameterValues[i - 1] = strArray[i].ToString();
            }

            DataSet ds = base2.ReaderSp(sPName, parameterValues);

            return(Ok(ds.Tables[0]));
        }
        public static object getSpData(string spName)
        {
            SPQuery query;
            SPWeb   web = SPContext.Current.Web;

            string[] strArray        = spName.Split(',');
            object[] parameterValues = new object[strArray.Length - 1];
            string   sPName          = strArray[0].ToString();

            SPUser currentUser = web.CurrentUser;
            string str         = "";
            //var domainName = "jnasr";
            //var queryUser = "******";
            //var queryUserPassword = "******";
            var            domainName          = "nasr2";
            var            queryUser           = "******";
            var            queryUserPassword   = "******";
            var            principalContext    = new PrincipalContext(ContextType.Domain, domainName, queryUser, queryUserPassword);
            GroupPrincipal managerPrincipal    = GroupPrincipal.FindByIdentity(principalContext, "pmis_managers");
            GroupPrincipal directorPrincipal   = GroupPrincipal.FindByIdentity(principalContext, "pmis_directors");
            GroupPrincipal contractorPrincipal = GroupPrincipal.FindByIdentity(principalContext, "pmis_contractors");
            GroupPrincipal engineerPrincipal   = GroupPrincipal.FindByIdentity(principalContext, "pmis_engineers");
            //GroupPrincipal managerPrincipal = GroupPrincipal.FindByIdentity(principalContext, "Epm-managers");
            //  GroupPrincipal directorPrincipal = GroupPrincipal.FindByIdentity(principalContext, "Epm-Directors_pmis");
            // GroupPrincipal contractorPrincipal = GroupPrincipal.FindByIdentity(principalContext, "Epm-contractors");
            // GroupPrincipal engineerPrincipal = GroupPrincipal.FindByIdentity(principalContext, "Epm-engineers");
            UserPrincipal user       = UserPrincipal.FindByIdentity(principalContext, currentUser.LoginName);
            string        userdomain = currentUser.LoginName != "SHAREPOINT\\system" ? currentUser.LoginName.Split('|')[1].Split('\\')[0] : "nasr";

            if (strArray[1].ToString().ToUpper() == "NULL")
            {
                if (userdomain != "nasr" && (user.IsMemberOf(managerPrincipal) || user.IsMemberOf(directorPrincipal)))
                {
                    query = new SPQuery();
                    SPListItem item = SPContext.Current.Web.GetList("/Lists/Areas").Items[0];
                    parameterValues[0] = item.ID;
                }
                else
                {
                    parameterValues[0] = System.DBNull.Value;
                }
            }
            else
            {
                parameterValues[0] = strArray[1].ToString();
            }
            if (strArray[2].ToString().ToUpper() == "NULL")
            {
                if (userdomain != "nasr" && (user.IsMemberOf(contractorPrincipal) || user.IsMemberOf(engineerPrincipal)))
                {
                    query = new SPQuery();
                    SPListItem item2 = SPContext.Current.Web.GetList("/Lists/Contracts").Items[0];
                    parameterValues[1] = item2.ID;
                }
                else
                {
                    parameterValues[1] = System.DBNull.Value;
                }
            }
            else
            {
                parameterValues[1] = strArray[2].ToString();
            }

            if (strArray.Length > 3)
            {
                for (int i = 3; i < strArray.Length; i++)
                {
                    if (strArray[i].ToString().ToUpper() == "NULL")
                    {
                        parameterValues[i - 1] = System.DBNull.Value;
                    }
                    else
                    {
                        int result = 0;
                        if (int.TryParse(strArray[i].ToString(), out result))
                        {
                            parameterValues[i - 1] = result;
                        }
                        else
                        {
                            parameterValues[i - 1] = strArray[i].ToString();
                        }
                    }
                }
            }
            DataAccessBase base2 = new DataAccessBase();

            return(JsonConvert.SerializeObject(base2.ReaderSp(sPName, parameterValues)));
        }