コード例 #1
0
        public IList <PluginCategory> GetPluginCategoryInfo(SearchPlugin search)
        {
            IDictionary dic = new Hashtable();
            string      sql = "select * from PluginCategory where 1=1 " + GetQueryCondition(search, dic);

            return(QuerySql <PluginCategory>(sql, dic));
        }
コード例 #2
0
        public void SetUp()
        {
            // Setup ICardPriceStore Mocks
            priceStoreMock = new Mock <ICardPriceStore>();

            // Setup ICommandParser Mocks
            commandParserMock = new Mock <ICommandParser>();

            // Setup IHttpClient Mocks
            httpClientMock = new Mock <IHttpClient>();

            // Setup IUrlShortener Mocks
            urlShortenerMock = new Mock <IUrlShortener>();

            // Setup IMessenger Mocks
            messengerMock = new Mock <IMessenger>();

            var config = new BotConfig();

            config.HostUrl = "http://localhost";

            plugin = new SearchPlugin(
                mtgStore,
                priceStoreMock.Object,
                commandParserMock.Object,
                httpClientMock.Object,
                urlShortenerMock.Object,
                config);

            plugin.LoggingService = loggingServiceMock.Object;
        }
コード例 #3
0
        private string GetQueryCondition(SearchPlugin search, IDictionary dic)
        {
            StringBuilder strsql = new StringBuilder();

            if (!string.IsNullOrEmpty(search.Pcode))
            {
                strsql.Append(" and PluginCode=@PluginCode");
                dic.Add("PluginCode", search.Pcode);
            }
            if (!string.IsNullOrEmpty(search.PluginCateCode))
            {
                strsql.Append(" and PluginCateCode=@PluginCateCode");
                dic.Add("PluginCateCode", search.PluginCateCode);
            }
            if (!string.IsNullOrEmpty(search.NotPluginCateCode))
            {
                string[] arr = search.NotPluginCateCode.Split(',');
                int      i   = 0;
                foreach (string a in arr)
                {
                    strsql.Append(" and PluginCateCode!=@PluginCateCode" + i.ToString());
                    dic.Add("PluginCateCode" + i.ToString(), a);
                    i++;
                }
            }
            return(strsql.ToString());
        }
コード例 #4
0
        public IList <PluginInfo> GetPluginInfoList(SearchPlugin search)
        {
            var    dic    = new Dictionary <string, string>();
            string Select = "select * from PluginInfo where 1=1 " + GetQueryCondition(search, dic);

            return(Query(Select, dic));
        }
コード例 #5
0
 private static void RegisterSearchPlugin <TSearchPluginProvider>(string name)
 {
     if (!SearchPlugin.IsProviderRegistered(name))
     {
         SearchPlugin.RegisterProvider(name, typeof(TSearchPluginProvider));
     }
 }
コード例 #6
0
        public ActionResult ViewPluginInfo(string id)
        {
            ViewData["Vid"] = id;
            SearchVersionTrack search = new SearchVersionTrack();

            search.VID = id;
            VersionTrack v = BoFactory.GetVersionTrackBo.GetVersionTrack(search)[0];

            PluginInfo   p       = BoFactory.GetVersionTrackBo.GetPluginInfo(v.PluginCode);
            SearchConfig searchc = new SearchConfig();

            searchc.PluginCode = v.PluginCode;
            IList <ConfigInfo> list = BoFactory.GetVersionTrackBo.GetConfigList(searchc);

            //转换
            foreach (ConfigInfo c in list)
            {
                c.Value1 = c.Value1.Replace("<", "&lt;").Replace(">", "&gt;");
            }
            p.configList     = list;
            p.VersionSummary = v.VersionSummary;

            SearchPlugin sh = new SearchPlugin();

            sh.PluginCateCode = p.PluginCateCode;
            p.PCname          = BoFactory.GetVersionTrackBo.GetPluginCategoryInfos(sh)[0].DisplayName;

            return(View(p));
        }
コード例 #7
0
        public ActionResult UpdatePluginInfo(string Vid, string IsAdd)
        {
            ViewData["configList"] = 0;
            ViewData["IsAdd"]      = IsAdd;
            SearchVersionTrack     search = new SearchVersionTrack();
            IList <PluginInfoTemp> plist  = new List <PluginInfoTemp>();

            ArrayList arrVid = GetArray(Vid);//获得相关联的VID

            foreach (string vid in arrVid)
            {
                search.VID = vid;
                VersionTrack   v = BoFactory.GetVersionTrackBo.GetVersionTrack(search)[0];
                PluginInfoTemp p = BoFactory.GetVersionTrackBo.GetPluginTempInfo(v.PluginCode.ToString());

                if (p.IsIgnoreConfig == false)//若不忽略配置信息
                {
                    SearchConfig searchc = new SearchConfig();
                    searchc.PluginCode         = v.PluginCode.ToString();
                    searchc.ConfigCategoryCode = Constants.configCategory;
                    IList <ConfigInfo> list = BoFactory.GetVersionTrackBo.GetConfigList(searchc);//获取原有参数

                    Dictionary <string, ConfigInfo> dic = new Dictionary <string, ConfigInfo>();
                    foreach (var item in list)
                    {
                        var        key  = item.Key1 + "_FG$SP_" + item.PluginCode;
                        ConfigInfo temp = new ConfigInfo();
                        temp.Key1     = item.Key1;
                        temp.OldValue = item.Value1;
                        dic.Add(key, temp);
                    }
                    IList <ConfigTemp> listT = BoFactory.GetVersionTrackBo.GetConfigListTemp(searchc);//现有临时表数据
                    foreach (var item in listT)
                    {
                        var key = item.Key1 + "_FG$SP_" + item.PluginCode;
                        if (dic.ContainsKey(key))
                        {
                            dic[key].Value1 = item.Value1;
                        }
                        else
                        {
                            ConfigInfo temp = new ConfigInfo();
                            temp.Key1     = item.Key1;
                            temp.Value1   = item.Value1;
                            temp.OldValue = "";
                            dic.Add(key, temp);
                        }
                    }
                    p.configList           = dic.Values.ToList <ConfigInfo>();
                    ViewData["configList"] = (int)ViewData["configList"] + p.configList.Count;

                    SearchPlugin sh = new SearchPlugin();
                    sh.PluginCateCode = p.PluginCateCode;
                    p.PCname          = BoFactory.GetVersionTrackBo.GetPluginCategoryInfos(sh)[0].DisplayName;
                }
                plist.Add(p);
            }
            return(View(plist));
        }
コード例 #8
0
        public JsonResult PluginInfoList(FormCollection form)
        {
            JsonFlexiGridData data   = null;
            PageView          view   = new PageView(form);
            SearchPlugin      search = new SearchPlugin();

            data = BoFactory.GetVersionTrackBo.QueryPluginInfo(view, search);
            return(Json(data));
        }
コード例 #9
0
        public JsonFlexiGridData QueryPluginInfo(PageView view, SearchPlugin search)
        {
            string Selectcolumns = "DisplayName,CName,Version,PluginCode,TypeFullName,FileName,IsNeed,IsDefault,PluginUrl,CreateUid,CreateTime,PluginCode";
            string sqlorder;
            string table = "(select a.*,b.DisplayName as  CName from PluginInfo as a,PluginCategory as b where a.PluginCateCode = b.PluginCateCode ) as temp1";

            if (string.IsNullOrEmpty(view.OrderBy.ToString()))
            {
                sqlorder = " Order by  CreateTime asc ";
            }
            else
            {
                sqlorder = view.OrderBy.ToString();
            }

            return(base.QueryDataForFlexGridByPager(Selectcolumns, table, sqlorder, "PluginCode", "", view));
        }
コード例 #10
0
        public ActionResult UpdateConfigInfo(string id)
        {
            ViewData["vid"] = id;
            ArrayList          vids  = GetArrays(id);
            IList <PluginInfo> plist = new List <PluginInfo>();

            ViewData["configList"] = 0;
            foreach (string vid in vids)
            {
                SearchVersionTrack searchv = new SearchVersionTrack();
                searchv.VID = vid;
                id          = BoFactory.GetVersionTrackBo.GetVersionTrack(searchv)[0].PluginCode.ToString();
                PluginInfo p = BoFactory.GetVersionTrackBo.GetPluginInfo(id);
                p.VersionSummary = BoFactory.GetVersionTrackBo.GetVersionTrack(searchv)[0].VersionSummary;
                SearchConfig search = new SearchConfig();
                if (p.IsIgnoreConfig == false)
                {
                    search.PluginCode         = id;
                    search.ConfigCategoryCode = Constants.configCategory;
                    p.configList = BoFactory.GetVersionTrackBo.GetConfigList(search);
                }
                if (p.PluginCateCode.Equals(Constants.ActionCateCode))
                {
                    search.PluginCode = id;
                    IList <ActionExtend> alist = BoFactory.GetVersionTrackBo.QueryActionExtend(search);
                    if (alist.Count > 0)
                    {
                        ActionExtend a = alist[0];
                        p.ActionCode    = a.ActionCode;
                        p.ActionSummary = a.Summary;
                    }
                }
                SearchPlugin sh = new SearchPlugin();
                sh.PluginCateCode = p.PluginCateCode;
                p.PCname          = BoFactory.GetVersionTrackBo.GetPluginCategoryInfos(sh)[0].DisplayName;

                plist.Add(p);


                ViewData["configList"] = (int)ViewData["configList"] + p.configList.Count;
            }
            return(View(plist));
        }
コード例 #11
0
        public void SetUp()
        {
            unitTestContext = new UnitTestContext();

            mtgStore = new MtgStore(
                testConfig.Url,
                testConfig.Database,
                unitTestContext.QueryStatisticsStoreMock.Object,
                unitTestContext.LoggingServiceMock.Object,
                unitTestContext.SearchUtilityMock.Object);

            unitTestContext.BotServicesMock.SetupGet(b => b.Store)
            .Returns(mtgStore);

            plugin = new SearchPlugin(
                unitTestContext.BotServicesMock.Object,
                unitTestContext.BotConfig);

            plugin.LoggingService = unitTestContext.LoggingServiceMock.Object;
        }