Exemplo n.º 1
0
 // 事假處理
 abstract public void RequestPersonalLeave(LeaveRequest leaveRequest);
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            string path = @"D:\temp";

            //Test("Wait()", () =>
            //{
            //    RaiseErrorAsync().Wait();
            //});
            //Test("Result", () =>
            //{
            //    var s = RaiseErrorAsync().Result;
            //});
            //Test("GetAwaiter().GetResult()", () =>
            //{
            //    var s = RaiseErrorAsync().GetAwaiter().GetResult();
            //});
            //Test("Fire and Forget", async () =>
            //{
            //    var s = await RaiseErrorAsync();
            //});
            //Console.WriteLine("Done!");
            InitType();
            foreach (var value in dic.Values)
            {
                string responseBody = GetData(value).GetAwaiter().GetResult();
                string strpath      = Path.Combine(path, value + ".txt");
                using (StreamWriter sw = File.AppendText(strpath))
                {
                    sw.WriteLine(responseBody);
                }
                Console.WriteLine(responseBody);
            }
            ;
            // Above three lines can be replaced with new helper method below
            // string responseBody = await client.GetStringAsync(uri);

            Manager        a1 = new Manager("阿福");        // 經理
            Director       a2 = new Director("技安");       // 協理
            GeneralManager a3 = new GeneralManager("宜靜"); // 總經理

            a1.SetUpManager(a2);                          // 設定經理的上級為協理
            a2.SetUpManager(a3);                          // 設定協理的上級為總經理

            // 假單初始化
            LeaveRequest leaveRequest = new LeaveRequest(); // 假單

            leaveRequest.Name = "大雄";                       // 員工姓名

            leaveRequest.DayNum = 1;                        // 請假天數
            a1.RequestPersonalLeave(leaveRequest);          // 送出1天的假單

            leaveRequest.DayNum = 3;                        // 請假天數
            a1.RequestPersonalLeave(leaveRequest);          // 送出3天的假單

            leaveRequest.DayNum = 7;                        // 請假天數
            a1.RequestPersonalLeave(leaveRequest);          // 送出7天的假單

            leaveRequest.DayNum = 10;                       // 請假天數
            a1.RequestPersonalLeave(leaveRequest);          // 送出10天的假單

            Console.Read();
            // https://www.twse.com.tw/exchangeReport/MI_INDEX?response=json&date=20200214&type=0099P&_=1581756963783
        }