Exemple #1
0
        private void LacSettleDetail(FlowModelData data)
        {
            logger.Info("3-1.정산내역 ( 정산관리 > 정산내역 조회 > 옥션 정산내역 관리 )");
            DateTime enddate     = DateTime.Now;
            DateTime startdate   = enddate.AddYears(-1).AddDays(1);
            var      SearchParam = new
            {
                MemberID        = Parameter.Id1,
                ItemNo          = "",
                BuyerName       = "",
                BuyerId         = "",
                OrderNo         = 0,
                DateType        = "R",
                DateFrom        = startdate.ToString("yyyy-MM-dd"),
                DateTo          = enddate.ToString("yyyy-MM-dd"),
                CategoryId      = "",
                RemittanceType  = "0",
                GroupOrderSeqNo = "0",
                PageNo          = 1,
                PageSize        = 20
            };
            String json = JsonConvert.SerializeObject(SearchParam);

            logger.Debug(json);
            PostAjaxJson(data.Document, "https://www.esmplus.com/Member/Settle/IacRemitListExcelDownload?SearchParam=" + json, new Dictionary <String, Object>()
            {
                { "eSortType", "" },
            });
        }
 protected override void ScrapType2(FlowModelData flowModelData)
 {
     FlowList.Add("stdservice/ipssCheckLogin.do", Login, null);
     FlowList.Add("member/login.do", Login2, null, (data) =>
     {
         data.DataPack["st"] = DateTime.Now.AddMonths(-1).AddDays(-DateTime.Now.Day).AddDays(1);
     });
     FlowList.Add("ipss/ipssmainscr.do", Main, null, (data) =>
     {
         buffer.Clear();
         buffer.Append("http://ipss.interpark.com/settlement/ProOMSetlDetail.do?");
         this.buffer.Append(CreateGetParameter(new Dictionary <String, String>()
         {
             { "_method", "totalPro" },
             { "_style", "grid" },
             { "sc.strDt", data.DataPack["st"].ToString("yyyyMMdd") },
             { "sc.endDt", data.DataPack["st"].AddMonths(1).AddDays(-1).ToString("yyyyMMdd") },
             { "_search", "false" },
             { "nd", "" },
             { "rows", "30" },
             { "page", "1" },
             { "sidx", "" },
             { "sord", "asc" }
         }));
         base.Navigate(buffer.ToString());
     });
     FlowList.Add("settlement/ProOMSetlDetail.do", ProOMSetlDetail, null, (data) =>
     {
         Response.SetResultCode(ResultCode.RC1000);
         data.IsNextScrap = false;
     });
 }
Exemple #3
0
 private void Login(FlowModelData data)
 {
     PostAjaxJson(data.Document, "https://ipss.interpark.com/member/login.do", new Dictionary <String, Object>()
     {
         { "_method", "loginIframe" }
     });
 }
        private void SellerMenuAction(FlowModelData data)
        {
            var data02 = data.Document.GetElementById <GeckoElement>("sellerGradePop").ParentElement.GetElementByTagName <GeckoElement>("A").TextContent;

            SetCommonData(2, data02);
            base.Navigate("https://soffice.11st.co.kr/register/SellerInfoEdit.tmall?method=sellerInfoEdit&orgMenuNo=5002");
        }
Exemple #5
0
        private void CSManagement(FlowModelData data)
        {
            var val = data.Document.GetElementById <GeckoElement>("msg_auction").GetElementsByTagName("A")[0].FirstChild.NodeValue;

            SetCommonData(20, val);
            base.Navigate("http://www.esmplus.com/Home/SSO?code=TDM155&id=" + Parameter.Id1);
        }
Exemple #6
0
        private void ProOMSetlDetail(FlowModelData data)
        {
            if (!data.DataPack.ContainsKey("index"))
            {
                data.DataPack["index"] = 0;
            }
            String val = data.Document.Body.InnerHtml;
            ProOMSetlDetailJson json = JsonConvert.DeserializeObject <ProOMSetlDetailJson>(val);

            SetPackageData(0, data.DataPack["index"]++, JsonConvert.SerializeObject(json.bs[0]));
            int nowtick   = (DateTime.Now.Year * 100) + DateTime.Now.Month;
            int checktick = (data.DataPack["st"].Year * 100) + data.DataPack["st"].Month;

            if (nowtick - 300 > checktick)
            {
                return;
            }
            data.DataPack["st"] = data.DataPack["st"].AddMonths(-1);
            buffer.Append("http://ipss.interpark.com/settlement/ProOMSetlDetail.do?");
            this.buffer.Append(CreateGetParameter(new Dictionary <String, String>()
            {
                { "_method", "totalPro" },
                { "_style", "grid" },
                { "sc.strDt", data.DataPack["st"].ToString("yyyyMMdd") },
                { "sc.endDt", data.DataPack["st"].AddMonths(1).AddDays(-1).ToString("yyyyMMdd") },
                { "_search", "false" },
                { "nd", "" },
                { "rows", "30" },
                { "page", "1" },
                { "sidx", "" },
                { "sord", "asc" }
            }));
            this.Navigate(this.buffer.ToString());
            data.IsSkipAction = true;
        }
Exemple #7
0
        private void Main3(FlowModelData data)
        {
            String temp = data.Document.Body.TextContent;
            var    node = JsonConvert.DeserializeObject <Dictionary <String, Object> >(temp);

            SetCommonData(20, node["urgentQty"].ToString());
        }
Exemple #8
0
 private void Sending(FlowModelData data)
 {
     //https://www.esmplus.com/Escrow/Delivery/SendingExcel?
     //siteGbn =1&searchAccount=10757^isorikids^1&searchDateType=ODD&searchSDT=2017-10-06&searchEDT=2017-11-06&searchKey=ON&searchKeyword=&searchStatus=0&searchAllYn=N&searchType=0&searchDistrType=AL
     logger.Info("4-3.정산예정금 - ( 주문관리 > 배송중/배송완료 )");
     try
     {
         DateTime enddate   = DateTime.Now;
         DateTime startdate = enddate.AddMonths(-1);
         this.buffer.Append("https://www.esmplus.com/Escrow/Delivery/SendingExcel?");
         this.buffer.Append(CreateGetParameter(new Dictionary <String, String>()
         {
             { "siteGbn", "1" },
             { "searchAccount", idkey },
             { "searchDateType", "ODD" },
             { "searchSDT", startdate.ToString("yyyy-MM-dd") },
             { "searchEDT", enddate.ToString("yyyy-MM-dd") },
             { "searchKey", "ON" },
             { "searchKeyword", "" },
             { "searchStatus", "0" },
             { "searchAllYn", "N" },
             { "searchType", "0" },
             { "searchDistrType", "AL" }
         }));
         PostAjaxJson(data.Document, this.buffer.ToString(), new Dictionary <String, Object>()
         {
             { "eSortType", "" },
         });
     }
     finally
     {
         this.buffer.Clear();
     }
 }
        /// <summary>
        /// 5-4. 정산예정금 ( 배송관리 →구매확정)
        /// </summary>
        /// <param name="document"></param>
        /// <param name="uri"></param>
        /// <returns></returns>
        private void SellerRemittanceAction3(FlowModelData data)
        {
            String json = data.Document.Body.TextContent;
            SellerRemittanceActionJson obj = JsonConvert.DeserializeObject <SellerRemittanceActionJson>(json);
            var node = obj.list[0];

            SetPackageData(5, 0, JsonConvert.SerializeObject(node));
        }
 private void Home(FlowModelData data)
 {
     //base.Navigate("https://sell.smartstore.naver.com/#/seller/info");
     //PrivateNavigate(document, "https://sell.smartstore.naver.com/#/seller/info");
     //TODO: issue
     //TODO: this site can not do that scrap is.I think because of angularjs.
     //TODO: I need time for research that scrap is.
 }
Exemple #11
0
        private void ItemsMng(FlowModelData data)
        {
            /*document.GetElementByName<GeckoInputElement>("chkStatus", 1).Checked = true;
             * document.GetElementByName<GeckoInputElement>("chkSiteId", 1).Checked = true;
             * document.GetElementByName<GeckoInputElement>("chkSiteA", 0).Checked = true;
             * document.GetElementById<GeckoImageElement>("imgItemsSearch").Click();*/
            this.buffer.Append("http://www.esmplus.com/Sell/Items/GetItemMngList");

            var SearchParam = new
            {
                Keyword              = "",
                SiteId               = "1",
                SellType             = 0,
                CategoryCode         = "",
                CustCategoryCode     = 0,
                TransPolicyNo        = 0,
                StatusCode           = "11",
                SearchDateType       = 0,
                StartDate            = "",
                EndDate              = "",
                SellerId             = "",
                StockQty             = -1,
                SellPeriod           = 0,
                DeliveryFeeApplyType = 0,
                OptAddDeliveryType   = 0,
                SellMinPrice         = 0,
                SellMaxPrice         = 0,
                OptSelUseIs          = -1,
                PremiumEnd           = 0,
                PremiumPlusEnd       = 0,
                FocusEnd             = 0,
                FocusPlusEnd         = 0,
                CatalogGroup         = 0,
                GoodsIds             = "",
                SellMngCode          = "",
                OrderByType          = 11,
                NotiItemReg          = -1,
                UserEvaluate         = "",
                SearchClause         = "",
                ScoreRange           = 0,
                ShopCateReg          = -1,
                IsTPLUse             = "",
                GoodsName            = "",
                SdBrandId            = 0,
                SdBrandName          = ""
            };
            String json = JsonConvert.SerializeObject(SearchParam);

            logger.Debug(this.buffer.ToString());
            PostAjaxJson(data.Document, this.buffer.ToString(), new Dictionary <String, Object>()
            {
                { "paramsData", json },
                { "page", "1" },
                { "start", "0" },
                { "limit", "500" },
                { "group", "[{\"property\":\"GoodsMasterNo\",\"direction\":\"ASC\"}]" }
            });
        }
 protected override void ScrapType4(FlowModelData flowModelData)
 {
     FlowList.Add("stdservice/ipssCheckLogin.do", Login, null);
     FlowList.Add("member/login.do", Login2, null);
     FlowList.Add("ipss/ipssmainscr.do", Main, "http://ipss.interpark.com/delivery/reportEntr.do?_method=excel&_style=ipssPro&sc.yyyymm=" + Parameter.Sdate.Substring(0, 6));
     FlowList.Add("delivery/reportEntr.do", ReportEntrExcel, null);
     //"http://ipss.interpark.com/delivery/reportEntr.do?_method=excel&_style=ipssPro&sc.yyyymm=" + Parameter.Sdate.Substring(0, 6)
     //DownloadMap.Add("delivery/reportEntr.do",null);
 }
        private void CSManagement(FlowModelData data)
        {
            var val = data.Document.GetElementById <GeckoElement>("msg_gmarket").GetElementsByTagName("A")[0].FirstChild.NodeValue;

            // 1. 긴급메시지 건수
            SetCommonData(20, val);
            //보류
            //base.Navigate();
        }
Exemple #14
0
        private void ProDeliveryCheckList(FlowModelData data)
        {
            if (!data.DataPack.ContainsKey("index"))
            {
                data.DataPack["index"] = 0;
            }
            String json = data.Document.Body.TextContent;

            SetPackageData(1, data.DataPack["index"]++, json);
        }
 private void Login(FlowModelData data)
 {
     if (data.Uri.ToString().IndexOf("returnURL") != -1)
     {
         SetCommonData(0, "FALSE");
     }
     data.Document.GetElementById <GeckoInputElement>("loginName").Value = Parameter.Id1;
     data.Document.GetElementById <GeckoInputElement>("passWord").Value  = Parameter.Pw1;
     data.Document.GetElementByClassName <GeckoInputElement>("btn_login").Click();
 }
        private void Index(FlowModelData data)
        {
            SetCommonData(0, "TRUE");
            var data26 = data.Document.GetElementById <GeckoElement>("prdQnaAnswerCnt").FirstChild.NodeValue;

            SetCommonData(26, data26);
            var data25 = data.Document.GetElementById <GeckoElement>("emergencyCnt").FirstChild.NodeValue;

            SetCommonData(25, data25);
            base.Navigate("http://soffice.11st.co.kr/marketing/SellerMenuAction.tmall?method=getSellerMainNew&usedClfCd=00&memSuplCmpClfCd=01");
        }
Exemple #17
0
 private void Main(FlowModelData data)
 {
     SetCommonData(0, "TRUE");
     data.IsNextScrap = true;
     FlowList["ipss/ipssmainscr.do"] = new Common.Flow
     {
         Url  = "ipss/ipssmainscr.do",
         Func = Main2,
         Next = "http://ipss.interpark.com/ipss/ipssmainscr.do?_method=urgentCount&_style=ipssPro"
     };
 }
Exemple #18
0
 private void Login(FlowModelData data)
 {
     if (data.Uri.ToString().IndexOf("ReturnValue") != -1)
     {
         SetCommonData(0, "FALSE");
     }
     data.Document.GetElementByName <GeckoInputElement>("rdoSiteSelect", 0).Checked = true;
     data.Document.GetElementById <GeckoInputElement>("SiteId").Value       = Parameter.Id1;
     data.Document.GetElementById <GeckoInputElement>("SitePassword").Value = Parameter.Pw1;
     data.Document.GetElementById <GeckoAnchorElement>("btnSiteLogOn").Click();
 }
 protected override void ScrapType0(FlowModelData flowModelData)
 {
     FlowList.Add("stdservice/ipssCheckLogin.do", Login, null);
     FlowList.Add("member/login.do", Login2, null);
     FlowList.Add("ipss/ipssmainscr.do", Main, "http://ipss.interpark.com/ipss/ipssmainscr.do?_method=initTabMain&_style=ipssPro&newType=Y");
     FlowList.Add("member/memberentrjoin.do", MemberentrJoin, null, (data) =>
     {
         Response.SetResultCode(ResultCode.RC1000);
         data.IsNextScrap = false;
     });
 }
Exemple #20
0
        private void GetItemMngList(FlowModelData data)
        {
            String val = data.Document.Body.GetElementsByTagName("PRE")[0].FirstChild.NodeValue;
            //logger.Debug(data);
            GetItemMngListJson json = JsonConvert.DeserializeObject <GetItemMngListJson>(val);
            int index = 0;

            foreach (var item in json.Data)
            {
                SetPackageData(6, index++, JsonConvert.SerializeObject(item));
            }
        }
Exemple #21
0
        private void Main2(FlowModelData data)
        {
            String val = data.Document.GetElementsByClassName("line")[0].ChildNodes[3].FirstChild.TextContent;

            SetCommonData(2, val);
            FlowList["ipss/ipssmainscr.do"] = new Common.Flow
            {
                Url  = "ipss/ipssmainscr.do",
                Func = Main3,
                Next = "https://ipss.interpark.com/member/memberentrjoin.do?_method=detail&_style=ipssPro#won"
            };
        }
        private void SellerInfoEdit(FlowModelData data)
        {
            FlowList["register/SellerInfoEdit.tmall"] = new Common.Flow
            {
                Key  = "register/SellerInfoEdit.tmall",
                Func = SellerInfoEdit2,
                Next = ""
            };

            data.Document.GetElementById <GeckoInputElement>("mem_pwd").Value = Parameter.Pw1;
            data.Document.GetElementByClassName <GeckoAnchorElement>("xladtype").Click();
        }
        private void StatsPeriodProdSel(FlowModelData data)
        {
            String json = data.Document.Body.TextContent;
            StatsPeriodProdSelJson obj = JsonConvert.DeserializeObject <StatsPeriodProdSelJson>(json);
            var node = obj.statsPeriodProdSelSummary[0];

            SetPackageData(0, index++, JsonConvert.SerializeObject(node));
            if (std.Year == DateTime.Now.Year && std.Month == DateTime.Now.Month)
            {
                std = DateTime.Now.AddYears(-3).AddDays(DateTime.Now.Day * -1).AddDays(1);
                DateTime etd1     = std.AddMonths(1).AddDays(-1);
                var      interval = DateTime.Now - std;
                index = 0;
                this.buffer.Clear();
                this.buffer.Append("http://soffice.11st.co.kr/remittance/SellerRemittanceAction.tmall?");
                this.buffer.Append(CreateGetParameter(new Dictionary <String, String>()
                {
                    { "method", "getSellerOwnSelStatSoffice" },
                    { "dtlSearchStlmntType", "N" },
                    { "searchDtType", "BUY_CNFRM_DT" },
                    { "stDate", std.ToString("yyyyMMdd") },
                    { "edDate", std.ToString("yyyyMMdd") },
                    { "dtlSearchType", "" },
                    { "ordPrdStat", "" },
                    { "intervalDay", interval.Days.ToString() },
                    { "dtlSearchVal", "" }
                }));
                base.Navigate(this.buffer.ToString());
            }
            std = std.AddMonths(1);
            DateTime etd = std.AddMonths(1).AddDays(-1);

            if (std.Year == DateTime.Now.Year && std.Month == DateTime.Now.Month)
            {
                etd = DateTime.Now;
            }
            this.buffer.Clear();
            this.buffer.Append("http://soffice.11st.co.kr/stats/StatsPeriodProdSel.tmall?");
            this.buffer.Append(CreateGetParameter(new Dictionary <String, String>()
            {
                { "method", "getStatsPeriodProdSelList" },
                { "start", "0" },
                { "limit", "10" },
                { "stDate", std.ToString("yyyy/MM/dd").Replace("-", "/") },
                { "edDate", etd.ToString("yyyy/MM/dd").Replace("-", "/") },
                { "stDatePre", std.ToString("yyyy/MM/dd").Replace("-", "/") },
                { "edDatePre", etd.ToString("yyyy/MM/dd").Replace("-", "/") },
                { "dtPeriod", "PRE_THREE_MONTH" },
                { "dispGb", "grid" }
            }));
            base.Navigate(this.buffer.ToString());
        }
Exemple #24
0
 private void Test(FlowModelData data)
 {
     logger.Debug("DEBUG.......");
     ThreadPool.QueueUserWorkItem(c =>
     {
         for (int i = 0; i < 10; i++)
         {
             Thread.Sleep(1000);
             SetCommonData(i, "Common Test");
             SetPackageData(i, 0, "Pacakage Test");
         }
     });
 }
Exemple #25
0
 private void ReportEntrExcel(FlowModelData data)
 {
     WaitFile(data.File.FullName, () =>
     {
         /*BuilderExcelEntity<ReportEntrExcel> builder = new BuilderExcelEntity<ReportEntrExcel>();
          * List<ReportEntrExcel> list = builder.Builder(data.File.FullName, 7, 0);
          * foreach (var item in list)
          * {
          *  //SetPackageData(0, index++, ToExcelJson(ReflectFlyweight[typeof(BuyDecisionExcel)], item));
          * }
          * list.Clear();
          * base.Navigate("http://www.esmplus.com/Member/Settle/IacSettleDetail?menuCode=TDM298");*/
     });
 }
        /// <summary>
        /// 5-2. 정산예정금 (배송관리-배송중)
        /// </summary>
        /// <param name="document"></param>
        /// <param name="uri"></param>
        /// <returns></returns>
        private void OrderingLogisticsAction2(FlowModelData data)
        {
            String json = data.Document.Body.TextContent;
            OrderingLogisticsActionJson obj = JsonConvert.DeserializeObject <OrderingLogisticsActionJson>(json);

            index = 0;
            obj.orderingLogistics.ForEach(node =>
            {
                SetPackageData(3, index++, JsonConvert.SerializeObject(node));
            });
            FlowList["escrow/OrderingLogisticsAction.tmall"] = new Common.Flow
            {
                Func = OrderingLogisticsAction3
            };
            this.buffer.Clear();
            this.buffer.Append("https://soffice.11st.co.kr/escrow/OrderingLogisticsAction.tmall?");
            this.buffer.Append(CreateGetParameter(new Dictionary <String, String>()
            {
                { "method", "getOrderLogisticsList" },
                { "listType", "orderingLogistics" },
                { "start", "0" },
                { "limit", "10000" },
                { "shDateType", "02" },
                { "shDateFrom", DateTime.Now.AddYears(-1).ToString("yyyyMMdd") },
                { "shDateTo", DateTime.Now.ToString("yyyyMMdd") },
                { "shBuyerType", "" },
                { "shBuyerText", "" },
                { "shProductStat", "501" },
                { "shDelayReport", "" },
                { "shPurchaseConfirm", "" },
                { "shGblDlv", "N" },
                { "prdNo", "" },
                { "shStckNo", "" },
                { "shOrderType", "on" },
                { "addrSeq", "" },
                { "isAbrdSellerYn", "" },
                { "abrdOrdPrdStat", "" },
                { "isItalyAgencyYn", "" },
                { "shErrYN", "" },
                { "gblRcvrNm", "" },
                { "gblRcvrMailNo", "" },
                { "gblRcvrBaseAddr", "" },
                { "gblRcvrDtlsAddr", "" },
                { "gblRcvrTlphn", "" },
                { "gblRcvrPrtblNo", "" },
                { "shOrdLang", "" },
                { "shDlvClfCd", "" }
            }));
            base.Navigate(this.buffer.ToString());
        }
        private void Login(FlowModelData data)
        {
            var           element = data.Document.GetElementsByTagName("H1")[0];
            StringBuilder sb      = new StringBuilder();

            sb.Append("<button onclick='$(\"#loginId\").val(\"" + Parameter.Id1 + "\");$(\"#loginId\").trigger(\"input\");'>id</button>");
            sb.Append("<button onclick='$(\"#loginPassword\").val(\"" + Parameter.Pw1 + "\");$(\"#loginPassword\").trigger(\"input\");'>pw</button>");
            element.InnerHtml += sb.ToString();
            var collect = element.GetElementsByTagName("BUTTON");

            (collect[0] as GeckoButtonElement).Click();
            (collect[1] as GeckoButtonElement).Click();
            data.Document.GetElementById <GeckoButtonElement>("loginButton").Click();
        }
 private void Login(FlowModelData data)
 {
     if (data.Uri.ToString().IndexOf("ReturnValue") != -1)
     {
         //login 실패
         //String label = document.GetElementByClassName<GeckoHtmlElement>("login_text", 0).TextContent;
         //Console.WriteLine(label);
         return;
     }
     data.Document.GetElementByName <GeckoInputElement>("rdoSiteSelect", 1).Checked = true;
     data.Document.GetElementById <GeckoInputElement>("SiteId").Value       = Parameter.Id1;
     data.Document.GetElementById <GeckoInputElement>("SitePassword").Value = Parameter.Pw1;
     data.Document.GetElementById <GeckoAnchorElement>("btnSiteLogOn").Click();
     SetCommonData(0, "TRUE");
 }
Exemple #29
0
 private void Login2(FlowModelData data)
 {
     data.Document.GetElementByName <GeckoInputElement>("sc.memId").Value = Parameter.Id1;
     data.Document.GetElementByName <GeckoInputElement>("sc.pwd").Value   = Parameter.Pw1;
     data.Document.GetElementByClassName <GeckoButtonElement>("btnRed").Click();
     SetTimeout(() =>
     {
         if (CurrectUri.ToString().Contains("member/login.do"))
         {
             SetCommonData(0, "FALSE");
             Response.SetResultCode(ResultCode.RC2000);
             Exit(data);
         }
     }, 3000);
 }
        /// <summary>
        /// 5-3. 정산예정금 (배송관리 →배송완료 )
        /// </summary>
        /// <param name="document"></param>
        /// <param name="uri"></param>
        /// <returns></returns>
        private void OrderingLogisticsAction3(FlowModelData data)
        {
            String json = data.Document.Body.TextContent;
            OrderingLogisticsActionJson obj = JsonConvert.DeserializeObject <OrderingLogisticsActionJson>(json);

            index = 0;
            obj.orderingLogistics.ForEach(node =>
            {
                SetPackageData(4, index++, JsonConvert.SerializeObject(node));
            });
            FlowList["remittance/SellerRemittanceAction.tmall"] = new Common.Flow
            {
                Func = SellerRemittanceAction2
            };
            base.Navigate("http://soffice.11st.co.kr/remittance/SellerRemittanceAction.tmall?method=displaySellerOwnSelStatSoffice");
        }