public ActionResult CheckButtons()
 {
     var urlsContent = Request.Params["urls"];
     var urls = JsonConvert.DeserializeObject<string[]>(urlsContent);
     if (urls.Length == 0)
     {
         return JsonData(urls);
     }
     const string sql =
         "SELECT LOWER(`url`) FROM `navigations` WHERE ((`auth_code` = 0) OR `id` IN ( SELECT `navigation_id` FROM `navigation_priviledges` WHERE (`flag` = 1 AND `owner_id` IN (SELECT `role_id` FROM `account_role_refs` WHERE `account_id` IN ( SELECT `id` FROM `accounts` WHERE `name` = '{0}'))) OR (`flag` = 2 AND `owner_id` IN ( SELECT `id` FROM `accounts` WHERE `name` = '{0}')))) AND `url` IN ({1})";
     using (var session = new SessionFactory().OpenSession())
     {
         var accountNo = User.Identity.Name;
         var resultUrls =
             session.ExecuteQuery<string>(string.Format(sql, accountNo, "'" + string.Join("','", urls) + "'"));
         return JsonData(resultUrls);
     }
 }
Пример #2
0
        public ActionResult GetTipNames(FormCollection collection)
        {
            var names = (Request.Params["names"] + string.Empty).Split(',');
            if (names.Length == 0)
            {
                return ((BaseController)this).JsonData(new string[0]);
            }

            const string sql = "SELECT LOWER(`name`) FROM `navigations` WHERE `id` IN ( SELECT `navigation_id` FROM `navigation_priviledges` WHERE (`flag` = 1 AND `owner_id` IN (SELECT `role_id` FROM `account_role_refs` WHERE `account_id` IN ( SELECT `id` FROM `accounts` WHERE `name` = '{0}'))) OR (`flag` = 2 AND `owner_id` IN ( SELECT `id` FROM `accounts` WHERE `name` = '{0}'))) AND `name` IN ({1})";
            using (var session = new SessionFactory().OpenSession())
            {
                var accountNo = User.Identity.Name;
                var resultNames = session.ExecuteQuery<string>(string.Format(sql, accountNo, "'" + string.Join("','", names) + "'"));
                return ((BaseController)this).JsonData(resultNames);
            }
        }
Пример #3
0
        public ActionResult SyncModelToDb()
        {
            var assembly = typeof(Account).Assembly;

            var modelNames = new List<string>();
            var existModelNames = new List<string>();
            IList<string> existList;
            using (var session = new SessionFactory().OpenSession())
            {
                existList = session.ExecuteQuery<string>("show tables");
            }
            foreach (var type in assembly.GetExportedTypes())
            {
                var isMatched = type.FullName.IndexOf(PackageName, StringComparison.Ordinal) > -1
                       && type.FullName.IndexOf('.', 15) > -1
                       && type.IsClass;
                if (!isMatched) continue;
                var name = DevelopmentActivity.GetTableName(type);
                if (existList.Contains(name))
                    existModelNames.Add(type.FullName);
                else
                    modelNames.Add(type.FullName);
            }
            existModelNames.Sort();
            modelNames.Sort();
            ViewData["modelNames"] = modelNames;
            ViewData["existModelNames"] = existModelNames;

            return View();
        }