public static List <string> GetSiteList(CampName type) { List <string> list = null; switch (type) { case CampName.용자휴: list = new List <string>() { "느티골", "가마골", "밤티골", "체험골", "목조주택(한옥)", "목조주택(핀란드)", "목조주택(몽골)", "인디언텐트", "캐빈하우스", "데크(4X4)", "데크(6x6)" }; break; case CampName.초막골: list = new List <string>() { "글램-고급", "글램-일반", "야영장(자갈)", "야영장(데크)" }; break; case CampName.왕송호수: list = new List <string>() { "글램핑", "카라반", "데크" }; break; } return(list); }
public static List <ResultSet> CheckProcessor(CampName type, List <string> dateList) { List <ResultSet> resultList = new List <ResultSet>(); if (dateList == null || dateList.Count == 0) { throw new Exception("날짜를 1일이상 선택하세요"); } // 년월 목록 조회 var yyyymmlist = dateList.GroupBy(x => x.Substring(0, 6)).Select(x => x.Key); foreach (var yyyymm in yyyymmlist) { // 파라미터 생성 List <Querystring> paramList = ParamHelper.GetParamList(type, yyyymm); // 조회 var result = Task.Run <string>(async() => await Scrapper.RequestHttpClient(_url, Method.PORT, paramList)); result.Wait(); var text = result.Result; // 자리 확인 resultList = UsableSiteChecker(type, text, dateList.Where(x => x.Substring(0, 6) == yyyymm).ToList()); } return(resultList); }
public static List <Querystring> GetParamList(CampName type, string yyyymm = null) { List <Querystring> paramList = new List <Querystring>(); if (string.IsNullOrEmpty(yyyymm)) { yyyymm = DateTime.Now.ToString("yyyyMM"); } switch (type) { case CampName.용자휴: paramList.Add(new Querystring("idkey", "5M4200")); paramList.Add(new Querystring("gd_seq", "GD70")); break; case CampName.초막골: paramList.Add(new Querystring("idkey", "5M4240")); paramList.Add(new Querystring("gd_seq", "GD84")); break; case CampName.왕송호수: paramList.Add(new Querystring("idkey", "5M4280")); paramList.Add(new Querystring("gd_seq", "GD91")); break; } paramList.Add(new Querystring("yyyymmdd", string.Format("{0}01", yyyymm))); paramList.Add(new Querystring("sd_date", string.Format("{0}01", yyyymm))); return(paramList); }
void Start() { InstantiateLists(); //Skapar alla listor, kan man ha den som awake? if (WorldScript.world.isNewGame) { holder = Instantiate(CreationWindow); //Skapar fönstret där man kan skapa de tre första karaktärena holder.transform.SetParent(WindowParent.transform, false); foreach (ScriptableQuest quest in startQuests) { WorldScript.world.avalibleQuests.Add(quest); //De quests man har satt in i startQuests kommer in som valbara quests } foreach (RoleObject role in startRoles) { WorldScript.world.activeRoles.Add(role); } foreach (GameObject startCharacter in startCharacters) { holder = Instantiate(startCharacter); holder.transform.SetParent(CharacterParent.transform, false); } WorldScript.world.isNewGame = false; } CampName.GetComponent<CommunityTitle>().title.text = WorldScript.world.saveName; if (WorldScript.world.goods > 0) { hasGoodsQuest = false; for (int i = 0; i <= saleGoodsQuests.Count; i++) { foreach (ScriptableQuest quest in WorldScript.world.avalibleQuests) { if (saleGoodsQuests[i].name == quest.name) { //Det finns en saleMission bland avalibleMission hasGoodsQuest = true; break; } } if (hasGoodsQuest) { break; } } if (!hasGoodsQuest) { int rand = Random.Range(0, saleGoodsQuests.Count); WorldScript.world.avalibleQuests.Add(saleGoodsQuests[rand]); } //World } GetComponent<roasterScript>().CreateBarrackBoiz(); }
private static List <ResultSet> UsableSiteChecker(CampName type, string text, List <string> dateList) { List <ResultSet> resultList = new List <ResultSet>(); //날짜 <strong>4</strong> foreach (var date in dateList) { string searchText = string.Format("<strong>{0}</strong>", Int32.Parse(date.Substring(6, 2))); int startIndex = text.IndexOf(searchText); startIndex += searchText.Length; int endIndex = text.IndexOf("</td>", startIndex); endIndex -= 1; string selectedText = text.Substring(startIndex, endIndex - startIndex); // 사이트 정보 , 남은수량 태그 <span>0</span> string remainCount = string.Empty; string spanStartText = "<span>"; string spanEndText = "</span>{0}"; List <string> siteList = ParamHelper.GetSiteList(type); foreach (var site in siteList) { startIndex = selectedText.IndexOf(spanStartText); startIndex += spanStartText.Length; endIndex = selectedText.IndexOf(string.Format(spanEndText, site)); remainCount = selectedText.Substring(startIndex, endIndex - startIndex); resultList.Add(new ResultSet(site, Int32.Parse(remainCount))); Console.WriteLine("{0} : {1}", site, remainCount); selectedText = selectedText.Substring(endIndex); } } return(resultList); }