Beispiel #1
0
    public static List <struStockChange> Extract(string htmlFileName)
    {
        var list = new List <struStockChange>();
        var fi   = new System.IO.FileInfo(htmlFileName);

        Program.Logger.WriteLine("Start FileName:[" + fi.Name + "]");
        var node = HTMLEngine.Anlayze(htmlFileName);

        companynamelist = BussinessLogic.GetCompanyNameByCutWord(node);

        list = ExtractFromTable(node, fi.Name.Replace(".html", ""));
        if (list.Count > 0)
        {
            return(list);
        }

        var stockchange = new struStockChange();

        //公告ID
        stockchange.id = fi.Name.Replace(".html", "");
        Program.Logger.WriteLine("公告ID:" + stockchange.id);
        var Name = NormalizeCompanyName(GetHolderFullName(node));

        stockchange.HolderFullName  = Name.Item1;
        stockchange.HolderShortName = Name.Item2;
        stockchange.ChangeEndDate   = GetChangeEndDate(node);
        list.Add(stockchange);
        return(list);
    }
Beispiel #2
0
        // GET: Lessons
        public async Task <IActionResult> Index(string searchTrain = null, string searchCity = null, DateTime?searchDate = null)
        {
            List <Lesson>  lessons    = new List <Lesson>();
            BussinessLogic BL         = new BussinessLogic(this.cache, _context);
            List <string>  citiesLst  = BL.GetCitiesNamesFromCache();
            List <string>  traningLst = BL.GetTrainingNamesFromCache();

            ViewBag.citiesLst  = citiesLst;
            ViewBag.traningLst = traningLst;
            if (!string.IsNullOrEmpty(searchTrain))
            {
                lessons = (from less in _context.Lesson
                           join train in _context.Training on less.TrainingId equals train
                           join bran in _context.Branch on less.BranchId equals bran
                           join add in _context.Addresses on bran.BranchAddress equals add
                           where less.StartTime.Date == searchDate.Value &&
                           bran.BranchAddress.City == searchCity &&
                           less.TrainingId.Name == searchTrain
                           select new Lesson
                {
                    LessonId = less.LessonId
                    ,
                    TrainingId = train,
                    BranchId = less.BranchId,
                    EndTime = less.EndTime,
                    RegistrantMax = less.RegistrantMax,
                    RegistrantNum = less.RegistrantNum,
                    StartTime = less.StartTime,
                    TeacherName = less.TeacherName
                }).ToList();
                return(View(lessons));
            }
            return(View(await _context.Lesson.ToListAsync()));
        }
Beispiel #3
0
    private static Tuple <String, String> NormalizeCompanyName(string word)
    {
        if (!String.IsNullOrEmpty(word))
        {
            var fullname  = word;
            var shortname = "";
            var StdIdx    = word.IndexOf("“");
            var EndIdx    = word.IndexOf("”");
            if (StdIdx != -1 && EndIdx != -1)
            {
                shortname = word.Substring(StdIdx + 1, EndIdx - StdIdx - 1);
            }

            var trailingwords = new string[] { "(以下简称", "(下称", "(简称", "(以下简称", "(下称", "(简称" };

            //暂时不做括号的正规化
            foreach (var trailin in trailingwords)
            {
                if (fullname.Contains(trailin))
                {
                    fullname = Utility.GetStringBefore(fullname, trailin);
                }
            }

            if (fullname.Contains("股东"))
            {
                fullname = Utility.GetStringAfter(fullname, "股东");
            }
            if (!String.IsNullOrEmpty(BussinessLogic.GetCompanyNameByShortName(fullname).secFullName))
            {
                fullname = BussinessLogic.GetCompanyNameByShortName(fullname).secFullName;
            }


            foreach (var companyname in companynamelist)
            {
                if (companyname.secFullName == fullname)
                {
                    if (shortname == "")
                    {
                        shortname = companyname.secShortName;
                        break;
                    }
                }
                if (companyname.secShortName == fullname)
                {
                    fullname  = companyname.secFullName;
                    shortname = companyname.secShortName;
                    break;
                }
            }

            if (shortname == "")
            {
                shortname = BussinessLogic.GetCompanyNameByFullName(fullname).secShortName;
            }
            return(Tuple.Create(fullname, shortname));
        }
        return(Tuple.Create("", ""));
    }
Beispiel #4
0
        public IActionResult Index()
        {
            BussinessLogic BL          = new BussinessLogic(this.cache, _context);
            List <string>  branchesLst = BL.GetBranchesNamesFromCache();

            ViewBag.branchesLst = branchesLst;
            ViewData["Message"] = "Your Index page.";
            return(View());
        }
        // GET: Branches
        public async Task <IActionResult> Index()

        {
            BussinessLogic BL        = new BussinessLogic(this.cache, _context);
            List <string>  citiesLst = BL.GetCitiesNamesFromCache();

            //var q = from u in _context.Branch
            //        select u.Name;
            //ViewBag.Bardata = "[" + string.Join(",", q.ToList()) + "]";
            ViewBag.citiesLst = citiesLst;
            return(View(await _context.Branch.Include(b => b.BranchAddress).ToListAsync()));
        }
    public override bool IsValidRequest()
    {
        BussinessLogic bll = new BussinessLogic();

        if (!bll.IsValidCredentials(this.credentials))
        {
            this.PegPayStatusCode        = "100";
            this.PegPayStatusDescription = "INVALID PEGPAY VENDOR CREDENTIALS";
            return(false);
        }
        return(true);
    }
Beispiel #7
0
    static string GetProjectName(MyRootHtmlNode root)
    {
        var Extractor = new EntityProperty();

        //这些关键字后面
        Extractor.LeadingWordList = new string[] { "项目名称:", "工程名称:", "中标项目:", "合同标的:", "工程内容:" };
        Extractor.Extract(root);
        foreach (var item in Extractor.CandidateWord)
        {
            var ProjectName = item.Trim();
            if (EntityWordAnlayzeTool.TrimEnglish(ProjectName).Length > ContractTraning.MaxContractNameLength)
            {
                continue;
            }
            Program.Logger.WriteLine("项目名称候补词(关键字):[" + item + "]");
            return(ProjectName);
        }

        var MarkFeature = new EntityProperty.struMarkFeature();

        MarkFeature.MarkStartWith = "“";
        MarkFeature.MarkEndWith   = "”";
        MarkFeature.InnerEndWith  = "标段";

        var MarkFeatureConfirm = new EntityProperty.struMarkFeature();

        MarkFeatureConfirm.MarkStartWith = "“";
        MarkFeatureConfirm.MarkEndWith   = "”";
        MarkFeatureConfirm.InnerEndWith  = "标";

        Extractor.MarkFeature = new EntityProperty.struMarkFeature[] { MarkFeature, MarkFeatureConfirm };
        Extractor.Extract(root);
        foreach (var item in Extractor.CandidateWord)
        {
            var ProjectName = item.Trim();
            if (EntityWordAnlayzeTool.TrimEnglish(ProjectName).Length > ContractTraning.MaxContractNameLength)
            {
                continue;
            }
            Program.Logger.WriteLine("工程名称候补词(《XXX》):[" + item + "]");
            return(ProjectName);
        }

        var list = BussinessLogic.GetProjectName(root);

        if (list.Count > 0)
        {
            return(list[0]);
        }
        return("");
    }
Beispiel #8
0
 static void Main(string[] args)
 {
     //生成PDF的TXT文件的批处理命令
     //PDFToTXT.GetBatchFile();
     //初始化
     Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
     BussinessLogic.LoadCompanyName(@"Resources\FDDC_announcements_company_name_20180531.json");
     TraningDataset.InitContract();
     TraningDataset.InitStockChange();
     TraningDataset.InitIncreaseStock();
     ContractTraning.TraningMaxLenth();
     ContractTraning.EntityWordPerperty();
     Training.Close();
     UT();
     Extract();
     Logger.Close();
     Score.Close();
 }
Beispiel #9
0
    public static void JianchengTest()
    {
        BussinessLogic.GetCompanyNameByCutWord(HTMLEngine.Anlayze(FDDC.Program.DocBase + @"\FDDC_announcements_round1_train_20180518\round1_train_20180518\增减持\html\20526193.html"));

        var ContractPath_TRAIN = FDDC.Program.DocBase + @"\FDDC_announcements_round1_train_20180518\round1_train_20180518\重大合同";

        Console.WriteLine("Start To Extract Info Contract TRAIN");
        foreach (var filename in System.IO.Directory.GetFiles(ContractPath_TRAIN + @"\html\"))
        {
            var root = HTMLEngine.Anlayze(filename);
            var fi   = new System.IO.FileInfo(filename);
            FDDC.Program.Logger.WriteLine("FileName:" + fi.Name);
            BussinessLogic.GetCompanyShortName(root);
            BussinessLogic.GetCompanyFullName(root);
        }
        Console.WriteLine("Complete Extract Info Contract");

        var StockChangePath_TRAIN = FDDC.Program.DocBase + @"\FDDC_announcements_round1_train_20180518\round1_train_20180518\增减持";

        Console.WriteLine("Start To Extract Info Contract TRAIN");
        foreach (var filename in System.IO.Directory.GetFiles(StockChangePath_TRAIN + @"\html\"))
        {
            var root = HTMLEngine.Anlayze(filename);
            var fi   = new System.IO.FileInfo(filename);
            FDDC.Program.Logger.WriteLine("FileName:" + fi.Name);
            BussinessLogic.GetCompanyShortName(root);
            BussinessLogic.GetCompanyFullName(root);
        }

        Console.WriteLine("Complete Extract Info Contract");

        var IncreaseStockPath_TRAIN = FDDC.Program.DocBase + @"\FDDC_announcements_round1_train_20180518\round1_train_20180518\定增";

        Console.WriteLine("Start To Extract Info Contract TRAIN");
        foreach (var filename in System.IO.Directory.GetFiles(IncreaseStockPath_TRAIN + @"\html\"))
        {
            var root = HTMLEngine.Anlayze(filename);
            var fi   = new System.IO.FileInfo(filename);
            FDDC.Program.Logger.WriteLine("FileName:" + fi.Name);
            BussinessLogic.GetCompanyShortName(root);
            BussinessLogic.GetCompanyFullName(root);
        }
        Console.WriteLine("Complete Extract Info Contract");
    }
Beispiel #10
0
    public static List <struContract> Extract(string htmlFileName)
    {
        //模式1:只有一个主合同
        //模式2:只有多个子合同
        //模式3:有一个主合同以及多个子合同
        var ContractList = new List <struContract>();
        var fi           = new System.IO.FileInfo(htmlFileName);

        Program.Logger.WriteLine("Start FileName:[" + fi.Name + "]");
        var node = HTMLEngine.Anlayze(htmlFileName);

        companynamelist = BussinessLogic.GetCompanyNameByCutWord(node);

        var Id = fi.Name.Replace(".html", "");

        Program.Logger.WriteLine("公告ID:" + Id);
        //主合同的抽取
        ContractList.Add(ExtractSingle(node, Id));
        return(ContractList);
    }
Beispiel #11
0
    static string GetProjectName(MyRootHtmlNode root)
    {
        var Extractor = new ExtractProperty();

        //这些关键字后面
        Extractor.LeadingWordList = new string[] { "项目名称:" };
        Extractor.Extract(root);
        foreach (var item in Extractor.CandidateWord)
        {
            Program.Logger.WriteLine("项目名称候补词(关键字):[" + item + "]");
            return(item.Replace(" ", ""));
        }

        var MarkFeature = new ExtractProperty.struMarkFeature();

        MarkFeature.MarkStartWith = "“";
        MarkFeature.MarkEndWith   = "”";
        MarkFeature.InnerEndWith  = "标段";

        var MarkFeatureConfirm = new ExtractProperty.struMarkFeature();

        MarkFeatureConfirm.MarkStartWith = "“";
        MarkFeatureConfirm.MarkEndWith   = "”";
        MarkFeatureConfirm.InnerEndWith  = "标";

        Extractor.MarkFeature = new ExtractProperty.struMarkFeature[] { MarkFeature, MarkFeatureConfirm };
        Extractor.Extract(root);
        foreach (var item in Extractor.CandidateWord)
        {
            Program.Logger.WriteLine("工程名称候补词(《XXX》):[" + item + "]");
            return(item);
        }

        var list = BussinessLogic.GetProjectName(root);

        if (list.Count > 0)
        {
            return(list[0]);
        }
        return("");
    }
Beispiel #12
0
        static void Main(string[] args)
        {
            AbstractPlatform _platform = configurationPlatform();

            _platform.Paint();
            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== Stragery ===============================");
            var reports = new List <DeveloperReport>
            {
                new DeveloperReport {
                    Id = 1, Name = "Dev1", Level = DeveloperLevel.Senior, HourlyRate = 30.5, WorkingHours = 160
                },
                new DeveloperReport {
                    Id = 2, Name = "Dev2", Level = DeveloperLevel.Junior, HourlyRate = 20, WorkingHours = 120
                },
                new DeveloperReport {
                    Id = 3, Name = "Dev3", Level = DeveloperLevel.Senior, HourlyRate = 32.5, WorkingHours = 130
                },
                new DeveloperReport {
                    Id = 4, Name = "Dev4", Level = DeveloperLevel.Junior, HourlyRate = 24.5, WorkingHours = 140
                }
            };

            var calculatorContext = new SalaryCalculator(new JuniorDevSalaryCalculator());
            var juniorTotal       = calculatorContext.Calculate(reports);

            Console.WriteLine($"Total amount for junior salaries is: {juniorTotal}");

            calculatorContext.SetCalculator(new SeniorDevSalaryCalculator());
            var seniorTotal = calculatorContext.Calculate(reports);

            Console.WriteLine($"Total amount for senior salaries is: {seniorTotal}");

            Console.WriteLine($"Total cost for all the salaries is: {juniorTotal + seniorTotal}");

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== IoC ===============================");
            BussinessLogic _bussinessLogic = new BussinessLogic();

            _bussinessLogic.Task1();

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== Flyweight ===============================");

            // The client code usually creates a bunch of pre-populated
            // flyweights in the initialization stage of the application.
            var factory = new FlyweightFactory(
                new Car {
                Company = "Chevrolet", Model = "Camaro2018", Color = "pink"
            },
                new Car {
                Company = "Mercedes Benz", Model = "C300", Color = "black"
            },
                new Car {
                Company = "Mercedes Benz", Model = "C500", Color = "red"
            },
                new Car {
                Company = "BMW", Model = "M5", Color = "red"
            },
                new Car {
                Company = "BMW", Model = "X6", Color = "white"
            }
                );

            factory.listFlyweights();

            addCarToPoliceDatabase(factory, new Car
            {
                Number  = "CL234IR",
                Owner   = "James Doe",
                Company = "BMW",
                Model   = "M5",
                Color   = "red"
            });

            addCarToPoliceDatabase(factory, new Car
            {
                Number  = "CL234IR",
                Owner   = "James Doe",
                Company = "BMW",
                Model   = "X1",
                Color   = "red"
            });

            factory.listFlyweights();

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== Proxy ===============================");

            MathProxy _mathProxy = new MathProxy();

            Console.Write("Input num1 and num2: ");
            var x = Convert.ToDouble(Console.ReadLine());
            var y = Convert.ToDouble(Console.ReadLine());

            Console.WriteLine($"{x} + {y} = {_mathProxy.Add(x, y)}");
            Console.WriteLine($"{x} - {y} = {_mathProxy.Sub(x, y)}");
            Console.WriteLine($"{x} * {y} = {_mathProxy.Mul(x, y)}");
            Console.WriteLine($"{x} / {y} = {_mathProxy.Div(x, y)}");

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== ProxyWithBank ===============================");

            Credit _credit = new Credit();
            bool   Income  = false;

            _credit.Cash(400, ref Income);

            Income = true;
            Console.WriteLine($"Income {_credit.Cash(5000000.0, ref Income)} vnd");

            Income = false;
            Console.WriteLine($"Outcome {_credit.Cash(100000.0, ref Income)} vnd");

            _credit.CheckAccount();

            Console.WriteLine("-------------------------------------------------------------------------------");
            Console.WriteLine("----------------------------------- Transfer ----------------------------------");
            Console.WriteLine("----------------------------------- Local -------------------------------------");
            Income = false;
            _credit.LocalTransfer(6000000.0, "VND", "01231111441", "8912121231", ref Income);

            Income = true;
            Console.WriteLine($" Income local: " +
                              $"{_credit.LocalTransfer(700000.0, "VND", "719273981723", "1125412311", ref Income)}");
            _credit.CheckAccount();

            Income = false;
            Console.WriteLine($" Outcome local: " +
                              $"{_credit.LocalTransfer(70000.0, "VND", "719273981723", "1125412311", ref Income)}");
            _credit.CheckAccount();
            Console.WriteLine("----------------------------------- Overcome ----------------------------------");
            Income = true;
            Console.WriteLine($"Income overcome: " +
                              $"{_credit.OvercomeTransfer(500, "USD", "VND", "113311131", "719273981723", ref Income)} VND");
            _credit.CheckAccount();

            Income = false;
            Console.WriteLine($"Outcome overcome TWD: " +
                              $"{_credit.OvercomeTransfer(5000000.0, "VND", "TWD", "719273981723", "115533315441", ref Income)} TWD");
            _credit.CheckAccount();

            Console.WriteLine("================================ CompositePattern =====================================");
            CompositePattern.IEmployee employee_0000 = new Cashier(0, "Thu Tran", 7000000);
            CompositePattern.IEmployee employee_0001 = new Cashier(1, "Khoi Nguyen", 7000000);
            CompositePattern.IEmployee employee_0010 = new BankManager(0, "Ning Chang", 9000000);

            employee_0010.Add(employee_0000);
            employee_0010.Add(employee_0001);
            employee_0010.Print();
            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== Stragery - Ver2 ===============================");
            SortedList _studentRecords = new SortedList();

            _studentRecords.Add("Samual");
            _studentRecords.Add("Jimmy");
            _studentRecords.Add("Sandra");
            _studentRecords.Add("Vivek");
            _studentRecords.Add("Anna");
            Console.WriteLine("------------------------------------------------------------------------------------");
            _studentRecords.SetSortStrategy(new QuickSort());
            _studentRecords.Sort();
            Console.WriteLine("------------------------------------------------------------------------------------");
            _studentRecords.SetSortStrategy(new ShellSort());
            _studentRecords.Sort();
            Console.WriteLine("------------------------------------------------------------------------------------");
            _studentRecords.SetSortStrategy(new MergeSort());
            _studentRecords.Sort();

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== Decorator ===============================");
            Console.WriteLine("-------------------------------------------------------------------------------");
            Book _book0000 = new Book("Worley", "Inside ASP.NET", 10);

            _book0000.Display();
            Console.WriteLine("-------------------------------------------------------------------------------");
            Video _video0000 = new Video("Winifred Hervey", "Steve Harvey Show", 1, 512);

            _video0000.Display();
            Console.WriteLine("-------------------------------------------------------------------------------");
            Borrowable _borrower0000 = new Borrowable(_book0000);

            _borrower0000.BorrowItem("Khoi Nguyen Tan");
            _borrower0000.BorrowItem("Ning Chang");
            Borrowable _borrower0001 = new Borrowable(_video0000);

            _borrower0001.BorrowItem("Thu Tran");
            _borrower0001.BorrowItem("Nguyen Lam Bao Ngoc");

            _borrower0000.Display();
            _borrower0001.Display();

            AlertStateContext stateContext = new AlertStateContext();

            stateContext.alert();
            stateContext.alert();
            stateContext.SetState(new Silent());
            stateContext.alert();
            stateContext.alert();
            stateContext.alert();

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== AbstractFactoryVer2 ===============================");
            Console.WriteLine("-------------------------------------------------------------------------------");

            ///client class
            AnimalWorld animalWorld = new AnimalWorld(new AmericaFactory());

            animalWorld.AnimalEatOthers();
            animalWorld = new AnimalWorld(new AfricaFactory());
            animalWorld.AnimalEatOthers();

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== Template ===============================");
            Console.WriteLine("-------------------------------------------------------------------------------");

            Game game = new Cricket();

            game.Play();
            game = new Football();
            game.Play();

            DataAccessObject dataAccessObject = new Categories();

            dataAccessObject.Run();
            dataAccessObject = new Products();
            dataAccessObject.Run();

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== Adapter ===============================");
            Console.WriteLine("-------------------------------------------------------------------------------");
            var xmlConverter = new XmlConverter();
            var adapter      = new XmlToJsonAdapter(xmlConverter);

            adapter.ConvertXMLToJson();

            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== Template Ver 3 ===============================");
            Console.WriteLine("-------------------------------------------------------------------------------");

            DAO @object = new Person();

            @object.Connect();
            @object.GetAll();
            @object.Process();
            @object.Disconnect();


            Console.WriteLine("===========================================================================");
            Console.WriteLine("================================== ChainOfReposibility ===============================");
            Console.WriteLine("-------------------------------------------------------------------------------");
            // Setup Chain of Responsibility

            Approver larry = new Director();
            Approver sam   = new VicePresident();
            Approver tammy = new President();

            larry.SetSuccessor(sam);
            sam.SetSuccessor(tammy);

            // Generate and process purchase requests

            Purchase p = new Purchase(2034, 350.00, "Assets");

            larry.ProcessRequest(p);

            p = new Purchase(2035, 32590.10, "Project X");
            larry.ProcessRequest(p);

            p = new Purchase(2036, 122100.00, "Project Y");
            larry.ProcessRequest(p);
        }
 public UIUser(BussinessLogic.Users user)
 {
     InitializeComponent();
     this.user = user;
     this.originalUser = user;
 }
Beispiel #14
0
        static void Main(string[] args)
        {
            //初始化
            Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
            BussinessLogic.LoadCompanyName(@"Resources\FDDC_announcements_company_name_20180531.json");

            //测试区
            //生成PDF的TXT文件的批处理命令
            //PDFToTXT.GetBatchFile();
            //分词系统
            //WordAnlayze.CompanyAnlayze();
            //UT.RunWordAnlayze();
            //UT.StockChangeTest();
            //UT.IncreaseStockTest();
            //UT.ContractTest();
            //UT.RegularExpress();
            //UT.JianchengTest();
            //Logger.Close();
            //Traning.InitIncreaseStock();
            //StockChange.Extract(Program.DocBase + @"\FDDC_announcements_round1_train_20180518\round1_train_20180518\增减持\html\314146.html");
            //WordAnlayze.segmenter.LoadUserDict(@"Resources\dictAdjust.txt");
            //return;

            var IsRunContract      = true;
            var IsRunContract_TEST = false;

            var IsRunStockChange      = false;
            var IsRunStockChange_TEST = false;

            var IsRunIncreaseStock      = false;
            var IsRunIncreaseStock_TEST = false;

            var IncreaseStockPath_TEST = DocBase + @"\FDDC_announcements_round1_test_a_20180605\定增";
            var ContractPath_TEST      = DocBase + @"\FDDC_announcements_round1_test_a_20180605\重大合同";
            var StockChangePath_TEST   = DocBase + @"\FDDC_announcements_round1_test_a_20180605\增减持";

            if (IsRunContract)
            {
                //合同处理
                var ContractPath_TRAIN = DocBase + @"\FDDC_announcements_round1_train_20180518\round1_train_20180518\重大合同";
                Console.WriteLine("Start To Extract Info Contract TRAIN");
                StreamWriter ResultCSV          = new StreamWriter("Result\\hetong_train.csv", false, Encoding.GetEncoding("gb2312"));
                var          StockChange_Result = new List <struContract>();
                foreach (var filename in System.IO.Directory.GetFiles(ContractPath_TRAIN + @"\html\"))
                {
                    foreach (var item in Contract.Extract(filename))
                    {
                        StockChange_Result.Add(item);
                        ResultCSV.WriteLine(Contract.ConvertToString(item));
                    }
                }
                ResultCSV.Close();
                Traning.InitContract();
                Evaluate.EvaluateContract(StockChange_Result);
                Console.WriteLine("Complete Extract Info Contract");
            }
            if (IsRunContract_TEST)
            {
                StreamWriter ResultCSV = new StreamWriter("Result\\hetong.csv", false, Encoding.GetEncoding("gb2312"));
                Console.WriteLine("Start To Extract Info Contract TEST");
                foreach (var filename in System.IO.Directory.GetFiles(ContractPath_TEST + @"\html\"))
                {
                    foreach (var item in Contract.Extract(filename))
                    {
                        ResultCSV.WriteLine(Contract.ConvertToString(item));
                    }
                }
                ResultCSV.Close();
                Console.WriteLine("Complete Extract Info Contract");
            }


            if (IsRunStockChange)
            {
                //增减持
                Console.WriteLine("Start To Extract Info StockChange TRAIN");
                StreamWriter ResultCSV             = new StreamWriter("Result\\zengjianchi_Train.csv", false, Encoding.GetEncoding("gb2312"));
                var          StockChangePath_TRAIN = DocBase + @"\FDDC_announcements_round1_train_20180518\round1_train_20180518\增减持";
                var          StockChange_Result    = new List <struStockChange>();
                foreach (var filename in System.IO.Directory.GetFiles(StockChangePath_TRAIN + @"\html\"))
                {
                    foreach (var item in StockChange.Extract(filename))
                    {
                        StockChange_Result.Add(item);
                        ResultCSV.WriteLine(StockChange.ConvertToString(item));
                    }
                }
                ResultCSV.Close();
                Traning.InitStockChange();
                Evaluate.EvaluateStockChange(StockChange_Result);
                Console.WriteLine("Complete Extract Info StockChange");
            }
            if (IsRunStockChange_TEST)
            {
                StreamWriter ResultCSV = new StreamWriter("Result\\zengjianchi.csv", false, Encoding.GetEncoding("gb2312"));
                Console.WriteLine("Start To Extract Info StockChange TEST");
                foreach (var filename in System.IO.Directory.GetFiles(StockChangePath_TEST + @"\html\"))
                {
                    foreach (var item in StockChange.Extract(filename))
                    {
                        ResultCSV.WriteLine(StockChange.ConvertToString(item));
                    }
                }
                ResultCSV.Close();
                Console.WriteLine("Complete Extract Info StockChange");
            }

            if (IsRunIncreaseStock)
            {
                //定增
                StreamWriter ResultCSV = new StreamWriter("Result\\dingzeng_train.csv", false, Encoding.GetEncoding("gb2312"));
                var          IncreaseStockPath_TRAIN = DocBase + @"\FDDC_announcements_round1_train_20180518\round1_train_20180518\定增";
                Console.WriteLine("Start To Extract Info IncreaseStock TRAIN");
                var Increase_Result = new List <struIncreaseStock>();
                foreach (var filename in System.IO.Directory.GetFiles(IncreaseStockPath_TRAIN + @"\html\"))
                {
                    foreach (var item in IncreaseStock.Extract(filename))
                    {
                        Increase_Result.Add(item);
                        ResultCSV.WriteLine(IncreaseStock.ConvertToString(item));
                    }
                }
                ResultCSV.Close();
                Traning.InitIncreaseStock();
                Evaluate.EvaluateIncreaseStock(Increase_Result);
                Console.WriteLine("Complete Extract Info IncreaseStock");
            }

            if (IsRunIncreaseStock_TEST)
            {
                StreamWriter ResultCSV = new StreamWriter("Result\\dingzeng.csv", false, Encoding.GetEncoding("gb2312"));
                Console.WriteLine("Start To Extract Info IncreaseStock TEST");
                foreach (var filename in System.IO.Directory.GetFiles(IncreaseStockPath_TEST + @"\html\"))
                {
                    foreach (var item in IncreaseStock.Extract(filename))
                    {
                        ResultCSV.WriteLine(IncreaseStock.ConvertToString(item));
                    }
                }
                ResultCSV.Close();
                Console.WriteLine("Complete Extract Info IncreaseStock");
            }
            Logger.Close();
        }
    public override bool IsValidRequest()
    {
        BussinessLogic bll      = new BussinessLogic();
        string         SourceIp = getIp();

        if (string.IsNullOrEmpty(this.payload.MerchantID))
        {
            PegPayStatusCode        = "111";
            PegPayStatusDescription = "PLEASE SUPPLY A MERCHANT ID";
            return(false);
        }
        //else if (!SourceIp.Equals("196.8.208.117"))
        //{
        //    this.PegPayStatusCode = "111";
        //    this.PegPayStatusDescription = "REQUEST HAS BEEN REJECTED";
        //    return false;
        //}
        else if (string.IsNullOrEmpty(this.payload.Amount))
        {
            PegPayStatusCode        = "109";
            PegPayStatusDescription = "PLEASE SUPPLY A VALID TRANSACTION AMOUNT";
            return(false);
        }
        else if (string.IsNullOrEmpty(this.payload.BeneficiaryID))
        {
            PegPayStatusCode        = "101";
            PegPayStatusDescription = "PLEASE SUPPLY A VALID BENEFICIARY ID";
            return(false);
        }
        else if (string.IsNullOrEmpty(this.payload.BeneficiaryName))
        {
            PegPayStatusCode        = "101";
            PegPayStatusDescription = "PLEASE SUPPLY A VALID BENEFICIARY NAME";
            return(false);
        }
        else if (string.IsNullOrEmpty(this.payload.Currency))
        {
            PegPayStatusCode        = "102";
            PegPayStatusDescription = "PLEASE SUPPLY A CURRENCY e.g UGX";
            return(false);
        }
        else if (string.IsNullOrEmpty(this.payload.MSISDN))
        {
            PegPayStatusCode        = "108";
            PegPayStatusDescription = "PLEASE SUPPLY A VALID MSISDN e.g 256etc";
            return(false);
        }
        else if (string.IsNullOrEmpty(this.payload.Narration))
        {
            PegPayStatusCode        = "101";
            PegPayStatusDescription = "PLEASE SUPPLY A NARRATION";
            return(false);
        }
        else if (string.IsNullOrEmpty(this.payload.ReferenceID))
        {
            PegPayStatusCode        = "101";
            PegPayStatusDescription = "PLEASE SUPPLY A VALID REFERENCE ID";
            return(false);
        }
        else if (string.IsNullOrEmpty(this.payload.ReferenceID))
        {
            PegPayStatusCode        = "101";
            PegPayStatusDescription = "PLEASE SUPPLY A VALID REFERENCE ID";
            return(false);
        }
        else if (bll.IsDuplicateVendorRef(this.payload.ReferenceID))
        {
            PegPayStatusCode        = "110";
            PegPayStatusDescription = "FAILED: DUPLICATE REFERENCE ID";
            return(false);
        }
        else if (!IsValidMerchantID(this.payload.MerchantID))
        {
            PegPayStatusCode        = "111";
            PegPayStatusDescription = "INVALID MERCHANT ID";
            return(false);
        }

        else
        {
            PegPayStatusCode        = "0";
            PegPayStatusDescription = "SUCCESS";
            return(true);
        }
    }
 public UISystemStatus(BussinessLogic.StatusType stType)
 {
     this.InitializeComponent();
     this.OriginalStatus = stType;
     this.statusType = stType;
 }