public async Task <SearchResult> Search(string key, EnumSearchType t)
    {
        key = key.Trim();
        var res = new SearchResult
        {
            Items      = new List <IMusic>(),
            Keyword    = key,
            SearchType = t,
            Page       = 1,
        };
        var url      = string.Format(search_url, Uri.EscapeDataString(key));
        var response = await NetAccess.DownloadStringAsync(url);

        var json = response.ToDynamicObject();

        if (json.song.Count > 0)
        {
            foreach (var obj in json.song)
            {
                var s = new Song
                {
                    Id         = "b" + MusicHelper.Get(obj, "songid"),
                    ArtistName = MusicHelper.Get(obj, "artistname"),
                    AlbumName  = "",
                    Name       = MusicHelper.Get(obj, "songname"),
                    WriteId3   = false,
                };
                res.Items.Add(s);
                s.UrlMp3 = await getDownloadUrl(s.Id.Substring(1));
            }
        }
        return(res);
    }
Exemplo n.º 2
0
        public List<OrderEntity> GetOrders(EnumSearchType searchtype, string typeid, int status, int paystatus, int invoicestatus, int returnstatus, string searchuserid, string searchteamid, string searchagentid,
                                                string begintime, string endtime, string keyWords, string orderBy, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List<OrderEntity> list = new List<OrderEntity>();
            DataSet ds = OrdersDAL.BaseProvider.GetOrders((int)searchtype, typeid, status, paystatus, invoicestatus, returnstatus, searchuserid, searchteamid, searchagentid, begintime, endtime, keyWords, orderBy, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                OrderEntity model = new OrderEntity();
                model.FillData(dr);
                model.OrderType = SystemBusiness.BaseBusiness.GetOrderTypeByID(model.TypeID, model.AgentID, model.ClientID);
                model.Owner = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);

                model.StatusStr = CommonBusiness.GetEnumDesc((EnumOrderStatus)model.Status);
                if (model.Status == 2)
                {
                    model.SendStatusStr = CommonBusiness.GetEnumDesc((EnumSendStatus)model.SendStatus);
                }
                else if (model.Status < 2)
                {
                    model.SendStatusStr = "--";
                }
                list.Add(model);
            }
            return list;
        }
Exemplo n.º 3
0
        public List <OrderEntity> GetOrders(EnumSearchType searchtype, string typeid, int status, int paystatus, int invoicestatus, int returnstatus, string searchuserid, string searchteamid, string searchagentid,
                                            string begintime, string endtime, string keyWords, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List <OrderEntity> list = new List <OrderEntity>();
            DataSet            ds   = OrdersDAL.BaseProvider.GetOrders((int)searchtype, typeid, status, paystatus, invoicestatus, returnstatus, searchuserid, searchteamid, searchagentid, begintime, endtime, keyWords, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                OrderEntity model = new OrderEntity();
                model.FillData(dr);
                model.OrderType = SystemBusiness.BaseBusiness.GetOrderTypeByID(model.TypeID, model.AgentID, model.ClientID);
                model.Owner     = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);

                model.StatusStr = CommonBusiness.GetEnumDesc((EnumOrderStatus)model.Status);
                if (model.Status == 2)
                {
                    model.SendStatusStr = CommonBusiness.GetEnumDesc((EnumSendStatus)model.SendStatus);
                }
                else if (model.Status < 2)
                {
                    model.SendStatusStr = "--";
                }
                list.Add(model);
            }
            return(list);
        }
Exemplo n.º 4
0
        async Task search()
        {
            var            key        = hs.Text.Trim();
            EnumSearchType searchType = EnumSearchType.key;
            EnumXiamiType  musicType  = EnumXiamiType.any;

            Dispatcher.Invoke(new Action(() =>
            {
                searchType = SearchType;
                musicType  = MusicType;
            }));
            switch (searchType)
            {
            case EnumSearchType.key:
                await SearchManager.Search(key, musicType);

                break;

            //case EnumSearchType.type:
            //    await SearchManager.SearchByType(key, musicType);
            //    break;
            case EnumSearchType.url:
                await SearchManager.SearchByUrl(key);

                break;

            default:
                break;
            }
        }
    public async Task <SearchResult> Search(string key, EnumSearchType t)
    {
        if (string.IsNullOrEmpty(key))
        {
            return(null);
        }
        var m = Regex.Match(key, "user:(\\w+)");

        if (m.Success)
        {
            await getUserMusic(m.Groups[1].Value);

            return(null);
        }
        m = Regex.Match(key, "(song|artist|album|collect):(\\d+)");
        if (m.Success)
        {
            var str_type = m.Groups[1].Value + "_" + t.ToString();
            if (!Enum.TryParse(str_type, out t))
            {
                Enum.TryParse(m.Groups[1].Value, out t);
            }
            return(await getByType(t, m.Groups[2].Value));
        }
        if (Uri.IsWellFormedUriString(key, UriKind.Absolute))
        {
            return(await SearchByUrl(key));
        }
        var musicType = EnumMusicType.all;

        Enum.TryParse(t.ToString(), out musicType);
        return(await SearchAll(key));
    }
 public async Task<SearchResult> Search(string key, EnumSearchType t)
 {
     key = key.Trim();
     var res = new SearchResult
     {
         Items = new List<IMusic>(),
         Keyword = key,
         SearchType = t,
         Page = 1,
     };
     var url = string.Format(search_url, Uri.EscapeDataString(key));
     var response = await NetAccess.DownloadStringAsync(url);
     var json = response.ToDynamicObject();
     if (json.song.Count > 0)
         foreach (var obj in json.song)
         {
             var s = new Song
             {
                 Id = "b" + MusicHelper.Get(obj, "songid"),
                 ArtistName = MusicHelper.Get(obj, "artistname"),
                 AlbumName = "",
                 Name = MusicHelper.Get(obj, "songname"),
                 WriteId3 = false,
             };
             res.Items.Add(s);
             s.UrlMp3 =await getDownloadUrl(s.Id.Substring(1));
         }
     return res;
 }
Exemplo n.º 7
0
        public void Insert(EnumSearchType t, string key, long counter)
        {
            isChanging = true;
            if (string.IsNullOrEmpty(key))
            {
                return;
            }
            var k = key.ToLower().Trim();

            if (k == HistoryItems[0].Key && t == HistoryItems[0].SearchType)
            {
                isChanging = false;
                return;
            }
            if (HistoryItems.Count == numOfHistory + HistorySearchItem.Defaults.Count)
            {
                HistoryItems.RemoveAt(numOfHistory - 1);
            }
            HistoryItems.Insert(0, new HistorySearchItem
            {
                Key         = k,
                SearchType  = t,
                SearchCount = 1,
                ResultCount = counter,
            });
            SelectedIndex = 0;
            isChanging    = false;
        }
Exemplo n.º 8
0
        public static async Task Search(string input, EnumSearchType t = EnumSearchType.all)
        {
            if (string.IsNullOrEmpty(input))
            {
                return;
            }
            state = EnumSearchState.Started;
            var searchInfo = new SearchResult {
                Keyword = input, SearchType = t
            };

            notifyState(searchInfo);
            ISearchProvider provider  = null;
            var             re_source = new Regex(@"(source:\s*(\w+))");
            var             m         = re_source.Match(input);

            if (m.Success)
            {
                var type = m.Groups[2].Value.ToLower();
                switch (type)
                {
                case "baidu": provider = new BaiduSearchProvider(); break;

                case "xiami": provider = new XiamiSearchProvider(); break;

                case "douban": provider = new DoubanSearchProvider(); break;

                default:
                    break;
                }
                input = re_source.Replace(input, "");
            }
            if (provider == null)
            {
                provider = new XiamiSearchProvider();
            }
            state = EnumSearchState.Working;
            try
            {
                var sr = await provider.Search(input, t);

                if (sr != null && state != EnumSearchState.Cancelling)
                {
                    MessageBus.Instance.Publish(sr);
                    notifyState(sr);
                }
            }
            catch (Exception e)
            {
                Logger.Error(e);
            }
            state = EnumSearchState.Finished;
            notifyState(searchInfo);
        }
Exemplo n.º 9
0
 public DataTable GetCustomersDatable(EnumSearchType searchtype, int type, string sourceid, string stageid, int status, int mark, string activityid, string searchuserid, string searchteamid, string searchagentid,
                                         string begintime, string endtime, string keyWords, string orderby, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid,int excelType=0)
 {
     DataTable dt=new DataTable();
     DataSet ds = CustomDAL.BaseProvider.GetCustomers((int)searchtype, type, sourceid, stageid, status, mark, activityid, searchuserid, searchteamid, searchagentid, begintime, endtime,
                                                         keyWords, orderby, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);
     if (ds.Tables.Count > 0)
     {
         return ds.Tables[0];
     }
     return dt;
 }
Exemplo n.º 10
0
    public async Task <SearchResult> Search(string key, EnumSearchType t)
    {
        var res = new SearchResult
        {
            Items      = new List <IMusic>(),
            Keyword    = key,
            SearchType = t,
            Page       = 1,
        };

        if (string.IsNullOrEmpty(key) || !re_url.IsMatch(key))
        {
            return(res);
        }
        var html = await NetAccess.DownloadStringAsync(key);

        var ms = re_json.Matches(html);

        if (ms.Count == 0)
        {
            return(null);
        }
        var artistName = "";
        var x          = re_artist.Match(html);

        if (x.Success)
        {
            artistName = x.Groups[1].Value;
        }
        foreach (Match m in ms)
        {
            var listId = m.Groups[1].Value;
            var json   = m.Groups[2].Value.ToDynamicObject();
            foreach (var obj in json)
            {
                var s = new Song
                {
                    Id         = "d" + MusicHelper.Get(obj, "id"),
                    AlbumName  = artistName,
                    ArtistName = artistName,
                    Name       = MusicHelper.Get(obj, "name"),
                    UrlMp3     = (MusicHelper.Get(obj, "rawUrl") as string).Replace("\\/", "/"),
                    Logo       = MusicHelper.Get(obj, "cover"),
                    WriteId3   = false,
                };
                s.UrlLrc = DoubanUrl.LyricUrl(listId, s.Id.Substring(1));

                res.Items.Add(s);
            }
        }
        return(res);
    }
Exemplo n.º 11
0
        public List<OrderEntity> GetOpportunitys(EnumSearchType searchtype, string typeid, string stageid, string searchuserid, string searchteamid, string searchagentid,
                                  string begintime, string endtime, string keyWords, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List<OrderEntity> list = new List<OrderEntity>();
            DataSet ds = OrdersDAL.BaseProvider.GetOpportunitys((int)searchtype, typeid, stageid, searchuserid, searchteamid, searchagentid, begintime, endtime, keyWords, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                OrderEntity model = new OrderEntity();
                model.FillData(dr);
                model.Owner = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);

                list.Add(model);
            }
            return list;
        }
Exemplo n.º 12
0
        public List<CustomerEntity> GetCustomers(EnumSearchType searchtype, int type, int sourcetype, string sourceid, string stageid, int status, int mark, string activityid, string searchuserid, string searchteamid, string searchagentid,
                                                 string begintime, string endtime, string firstname, string keyWords, string orderBy, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List<CustomerEntity> list = new List<CustomerEntity>();
            DataSet ds = CustomDAL.BaseProvider.GetCustomers((int)searchtype, type, sourcetype, sourceid, stageid, status, mark, activityid, searchuserid, searchteamid, searchagentid, begintime, endtime, firstname, keyWords, orderBy, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                CustomerEntity model = new CustomerEntity();
                model.FillData(dr);

                model.Owner = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);
                model.City = CommonBusiness.Citys.Where(m => m.CityCode == model.CityCode).FirstOrDefault();

                list.Add(model);
            }
            return list;
        }
Exemplo n.º 13
0
        public List <CustomerEntity> GetCustomers(EnumSearchType searchtype, int type, int sourcetype, string sourceid, string stageid, int status, int mark, string searchuserid, string searchteamid,
                                                  string begintime, string endtime, string firstname, string keyWords, string orderBy, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string clientid)
        {
            List <CustomerEntity> list = new List <CustomerEntity>();
            DataSet ds = CustomDAL.BaseProvider.GetCustomers((int)searchtype, type, sourcetype, sourceid, stageid, status, mark, searchuserid, searchteamid, begintime, endtime, firstname, keyWords, orderBy, pageSize, pageIndex, ref totalCount, ref pageCount, userid, clientid);

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                CustomerEntity model = new CustomerEntity();
                model.FillData(dr);

                model.Owner = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.ClientID);
                model.City  = CommonBusiness.Citys.Where(m => m.CityCode == model.CityCode).FirstOrDefault();

                list.Add(model);
            }
            return(list);
        }
Exemplo n.º 14
0
        public List <OrderEntity> GetOpportunitys(EnumSearchType searchtype, string typeid, string stageid, string searchuserid, string searchteamid, string searchagentid,
                                                  string begintime, string endtime, string keyWords, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List <OrderEntity> list = new List <OrderEntity>();
            DataSet            ds   = OrdersDAL.BaseProvider.GetOpportunitys((int)searchtype, typeid, stageid, searchuserid, searchteamid, searchagentid, begintime, endtime, keyWords, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                OrderEntity model = new OrderEntity();
                model.FillData(dr);
                model.OrderType = SystemBusiness.BaseBusiness.GetOrderTypeByID(model.TypeID, model.AgentID, model.ClientID);
                model.Stage     = SystemBusiness.BaseBusiness.GetOpportunityStageByID(model.StageID, model.AgentID, model.ClientID);
                model.Owner     = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);

                list.Add(model);
            }
            return(list);
        }
Exemplo n.º 15
0
        public List <CustomerEntity> GetCustomers(EnumSearchType searchtype, int type, string sourceid, string stageid, int status, int mark, string activityid, string searchuserid, string searchteamid, string searchagentid,
                                                  string begintime, string endtime, string keyWords, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List <CustomerEntity> list = new List <CustomerEntity>();
            DataSet ds = CustomDAL.BaseProvider.GetCustomers((int)searchtype, type, sourceid, stageid, status, mark, activityid, searchuserid, searchteamid, searchagentid, begintime, endtime, keyWords, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);

            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                CustomerEntity model = new CustomerEntity();
                model.FillData(dr);

                model.Owner  = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);
                model.Source = SystemBusiness.BaseBusiness.GetCustomSourcesByID(model.SourceID, model.AgentID, model.ClientID);
                model.Stage  = SystemBusiness.BaseBusiness.GetCustomStageByID(model.StageID, model.AgentID, model.ClientID);
                list.Add(model);
            }
            return(list);
        }
Exemplo n.º 16
0
        public List<CustomerEntity> GetCustomers(EnumSearchType searchtype, int type, string sourceid, string stageid, int status, int mark, string activityid, string searchuserid, string searchteamid, string searchagentid,
                                                 string begintime, string endtime, string keyWords, string orderby, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List<CustomerEntity> list = new List<CustomerEntity>();
            DataTable dt = GetCustomersDatable(searchtype, type, sourceid, stageid, status, mark, activityid, searchuserid, searchteamid, searchagentid, begintime, endtime, 
                                                                keyWords, orderby, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);
            foreach (DataRow dr in dt.Rows)
            {
                CustomerEntity model = new CustomerEntity();
                model.FillData(dr);

                model.Owner = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);
                model.Source = SystemBusiness.BaseBusiness.GetCustomSourcesByID(model.SourceID, model.AgentID, model.ClientID);
                model.StageStatusStr = CommonBusiness.GetEnumDesc<EnumCustomStageStatus>((EnumCustomStageStatus)model.StageStatus);
                model.City = CommonBusiness.GetCityByCode(model.CityCode);
                list.Add(model);
            }
            return list;
        }
Exemplo n.º 17
0
        public List<OrderEntity> GetOrders(EnumSearchType searchtype, string entrustClientID, string typeid, int status, EnumOrderSourceType sourceType, int orderStatus, int mark, int paystatus, int invoicestatus, int returnstatus, string searchuserid, string searchteamid, string searchagentid,
                                                string begintime, string endtime, string keyWords, string orderBy, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List<OrderEntity> list = new List<OrderEntity>();
            DataSet ds = OrdersDAL.BaseProvider.GetOrders((int)searchtype, entrustClientID, typeid, status, (int)sourceType, orderStatus, mark, paystatus, invoicestatus, returnstatus, searchuserid, searchteamid, searchagentid, begintime, endtime, keyWords,
                                                         orderBy, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                OrderEntity model = new OrderEntity();
                model.FillData(dr);

                model.Owner = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);

                model.StatusStr = CommonBusiness.GetEnumDesc((EnumOrderStageStatus)model.Status);

                model.SourceTypeStr = CommonBusiness.GetEnumDesc((EnumOrderSourceType)model.SourceType);

                if (model.OrderStatus == 1 && model.Status != (int)EnumOrderStageStatus.DDH)
                {
                    if (model.PlanTime <= DateTime.Now)
                    {
                        model.WarningStatus = 2;
                        model.WarningTime = "超期:" + (DateTime.Now - model.PlanTime).Days.ToString("D2") + "天 " + (DateTime.Now - model.PlanTime).Hours.ToString("D2") + "时 " + (DateTime.Now - model.PlanTime).Minutes.ToString("D2") + "分";
                    }
                    else if ((model.PlanTime - DateTime.Now).TotalHours * 3 < (model.PlanTime - model.OrderTime).TotalHours)
                    {
                        model.WarningStatus = 1;
                        model.WarningTime = "剩余:" + (model.PlanTime - DateTime.Now).Days.ToString("D2") + "天 " + (model.PlanTime - DateTime.Now).Hours.ToString("D2") + "时 " + (model.PlanTime - DateTime.Now).Minutes.ToString("D2") + "分";
                    }
                    else
                    {
                        model.WarningTime = "剩余:" + (model.PlanTime - DateTime.Now).Days.ToString("D2") + "天 " + (model.PlanTime - DateTime.Now).Hours.ToString("D2") + "时 " + (model.PlanTime - DateTime.Now).Minutes.ToString("D2") + "分";
                    }
                }


                list.Add(model);
            }
            return list;
        }
    public async Task<SearchResult> Search(string key, EnumSearchType t)
    {
        var res = new SearchResult
        {
            Items = new List<IMusic>(),
            Keyword = key,
            SearchType = t,
            Page = 1,
        };
        if (string.IsNullOrEmpty(key) || !re_url.IsMatch(key)) return res;
        var html = await NetAccess.DownloadStringAsync(key);
        var ms = re_json.Matches(html);
        if (ms.Count == 0) return null;
        var artistName = "";
        var x=re_artist.Match(html);
        if (x.Success)
            artistName=x.Groups[1].Value;
        foreach (Match m in ms)
        {
            var listId = m.Groups[1].Value; 
            var json = m.Groups[2].Value.ToDynamicObject();
            foreach (var obj in json)
            {
                var s = new Song
                {
                    Id = "d"+MusicHelper.Get(obj, "id"),
					AlbumName=artistName,
                    ArtistName=artistName,
                    Name = MusicHelper.Get(obj, "name"),
                    UrlMp3 = (MusicHelper.Get(obj, "rawUrl") as string).Replace("\\/","/"),
                    Logo = MusicHelper.Get(obj, "cover"),
					WriteId3=false,
                };
				s.UrlLrc=DoubanUrl.LyricUrl(listId, s.Id.Substring(1));
				
                res.Items.Add(s);
            }
        }
        return res;
    }
 public async Task<SearchResult> Search(string key, EnumSearchType t)
 {
     if (string.IsNullOrEmpty(key))
         return null;
     var m = Regex.Match(key, "user:(\\w+)");
     if (m.Success)
     {
         await getUserMusic(m.Groups[1].Value);
         return null;
     }
     m = Regex.Match(key, "(song|artist|album|collect):(\\d+)");
     if (m.Success)
     {
         var str_type = m.Groups[1].Value + "_" + t.ToString();
         if (!Enum.TryParse(str_type, out t))
             Enum.TryParse(m.Groups[1].Value, out t);
         return await getByType(t, m.Groups[2].Value);
     }
     if (Uri.IsWellFormedUriString(key, UriKind.Absolute))
         return await SearchByUrl(key);
     var musicType = EnumMusicType.all;
     Enum.TryParse(t.ToString(), out musicType);
     return await SearchAll(key);
 }
 static async Task<SearchResult> getByType(EnumSearchType type, string id)
 {
     List<IMusic> items = new List<IMusic>();
     dynamic json = null;
     switch (type)
     {
         case EnumSearchType.song:
             json = await NetAccess.Json(XiamiUrl.url_song, "id", id);
             items = GetSong(json);
             break;
         case EnumSearchType.album:
             json = await NetAccess.Json(XiamiUrl.url_album, "id", id);
             items = GetAlbum(json);
             break;
         case EnumSearchType.album_song:
             json = await NetAccess.Json(XiamiUrl.url_album, "id", id);
             items = GetSongsOfAlbum(json);
             break;
         case EnumSearchType.artist_song:
             json = await NetAccess.Json(XiamiUrl.url_artist_top_song, "id", id);
             items = GetSongsOfArtist(json);
             break;
         case EnumSearchType.artist:
             json = await NetAccess.Json(XiamiUrl.url_artist, "id", id);
             items = GetArtist(json);
             break;
         case EnumSearchType.collect:
         case EnumSearchType.collect_song:
             json = await NetAccess.Json(XiamiUrl.url_collect, "id", id);
             getCollectDetails(json["collect"]["id"].ToString());
             items = GetSongsOfCollect(json);
             break;
         case EnumSearchType.artist_artist:
             json = await NetAccess.Json(XiamiUrl.url_artsit_similars, "id", id);
             items = GetSimilarsOfArtist(json);
             break;
         case EnumSearchType.artist_album:
             json = await NetAccess.Json(XiamiUrl.url_artist_albums, "id", id);
             items = GetAlbumsOfArtist(json);
             break;
         default:
             break;
     }
     if (json == null) return null;
     if (type.ToString().Contains("_"))
     {
         var duo = type.ToString().Split("_".ToCharArray());
         id = duo[0] + ":" + id;
         Enum.TryParse(duo[1], out type);
     }
     else
     {
         id = type.ToString() + ":" + id;
         type = EnumSearchType.all;
     }
     var res = new SearchResult
     {
         Items = items,
         Keyword = id,
         SearchType = type,
         Page = 1,
     };
     return res;
 }
Exemplo n.º 21
0
    static async Task <SearchResult> getByType(EnumSearchType type, string id)
    {
        List <IMusic> items = new List <IMusic>();
        dynamic       json  = null;

        switch (type)
        {
        case EnumSearchType.song:
            json = await NetAccess.Json(XiamiUrl.url_song, "id", id);

            items = GetSong(json);
            break;

        case EnumSearchType.album:
            json = await NetAccess.Json(XiamiUrl.url_album, "id", id);

            items = GetAlbum(json);
            break;

        case EnumSearchType.album_song:
            json = await NetAccess.Json(XiamiUrl.url_album, "id", id);

            items = GetSongsOfAlbum(json);
            break;

        case EnumSearchType.artist_song:
            json = await NetAccess.Json(XiamiUrl.url_artist_top_song, "id", id);

            items = GetSongsOfArtist(json);
            break;

        case EnumSearchType.artist:
            json = await NetAccess.Json(XiamiUrl.url_artist, "id", id);

            items = GetArtist(json);
            break;

        case EnumSearchType.collect:
        case EnumSearchType.collect_song:
            json = await NetAccess.Json(XiamiUrl.url_collect, "id", id);

            getCollectDetails(json["collect"]["id"].ToString());
            items = GetSongsOfCollect(json);
            break;

        case EnumSearchType.artist_artist:
            json = await NetAccess.Json(XiamiUrl.url_artsit_similars, "id", id);

            items = GetSimilarsOfArtist(json);
            break;

        case EnumSearchType.artist_album:
            json = await NetAccess.Json(XiamiUrl.url_artist_albums, "id", id);

            items = GetAlbumsOfArtist(json);
            break;

        default:
            break;
        }
        if (json == null)
        {
            return(null);
        }
        if (type.ToString().Contains("_"))
        {
            var duo = type.ToString().Split("_".ToCharArray());
            id = duo[0] + ":" + id;
            Enum.TryParse(duo[1], out type);
        }
        else
        {
            id   = type.ToString() + ":" + id;
            type = EnumSearchType.all;
        }
        var res = new SearchResult
        {
            Items      = items,
            Keyword    = id,
            SearchType = type,
            Page       = 1,
        };

        return(res);
    }
Exemplo n.º 22
0
        public List<OrderEntity> GetOrders(EnumSearchType searchtype, string typeid, int status, int paystatus, int invoicestatus, string searchuserid, string searchteamid, string searchagentid,
                                                string begintime, string endtime, string keyWords, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List<OrderEntity> list = new List<OrderEntity>();
            DataSet ds = OrdersDAL.BaseProvider.GetOrders((int)searchtype, typeid, status, paystatus, invoicestatus, searchuserid, searchteamid, searchagentid, begintime, endtime, keyWords, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                OrderEntity model = new OrderEntity();
                model.FillData(dr);
                model.OrderType = SystemBusiness.BaseBusiness.GetOrderTypeByID(model.TypeID, model.AgentID, model.ClientID);
                model.Owner = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);

                model.StatusStr = model.Status == 0 ? "草案订单"
                                : model.Status == 1 ? "未审核"
                                : model.Status == 2 ? "已审核"
                                : model.Status == 9 ? "已删除"
                                : "";

                list.Add(model);
            }
            return list;
        }
Exemplo n.º 23
0
        public List<CustomerEntity> GetCustomers(EnumSearchType searchtype, int type, string sourceid, string stageid, int status, int mark, string activityid, string searchuserid, string searchteamid, string searchagentid,
                                                 string begintime, string endtime, string keyWords, int pageSize, int pageIndex, ref int totalCount, ref int pageCount, string userid, string agentid, string clientid)
        {
            List<CustomerEntity> list = new List<CustomerEntity>();
            DataSet ds = CustomDAL.BaseProvider.GetCustomers((int)searchtype, type, sourceid, stageid, status, mark, activityid, searchuserid, searchteamid, searchagentid, begintime, endtime, keyWords, pageSize, pageIndex, ref totalCount, ref pageCount, userid, agentid, clientid);
            foreach (DataRow dr in ds.Tables[0].Rows)
            {
                CustomerEntity model = new CustomerEntity();
                model.FillData(dr);

                model.Owner = OrganizationBusiness.GetUserByUserID(model.OwnerID, model.AgentID);
                model.Source = SystemBusiness.BaseBusiness.GetCustomSourcesByID(model.SourceID, model.AgentID, model.ClientID);
                model.Stage = SystemBusiness.BaseBusiness.GetCustomStageByID(model.StageID, model.AgentID, model.ClientID);
                list.Add(model);
            }
            return list;
        }