OSDN Git Service

v1.1.6.6
[kybernetes/Kybernetes.git] / main / command / reference / ListCommand.cs
1 using System;\r
2 using System.Collections.Generic;\r
3 using com.andoutomo.kybernetes.data.accessor;\r
4 using com.andoutomo.kybernetes.data;\r
5 using com.andoutomo.kybernetes.data.DAO;\r
6 using com.andoutomo.kybernetes.view;\r
7 using com.andoutomo.kybernetes.command.reference;\r
8 \r
9 namespace com.andoutomo.kybernetes.command.reference\r
10 {\r
11     public class ListCommand:AbCommand\r
12     {\r
13         protected override bool execute()\r
14         {\r
15             ListCommandArg arguments = (ListCommandArg)base.argument;\r
16             DateComponent searchDate = arguments.SearchDate;\r
17 \r
18             DateComponent todayDate = SettingDataAccessor.getObject.getToday();\r
19             TaskDataAccessor dataAccess = TaskDataAccessor.getObject;\r
20             List<TaskData> dataList;\r
21                 if (arguments.SearchAll)\r
22                 {\r
23                     dataList = dataAccess.getAllTaskList();\r
24                 }\r
25                 else if (arguments.SearchRemain)\r
26                 {\r
27                     dataList = dataAccess.getRemainTaskList();\r
28                 }\r
29                 else if (arguments.SearchGoing)\r
30                 {\r
31                     dataList = dataAccess.getGoingTaskList();\r
32                 }\r
33                 else if (searchDate != null)\r
34                 {\r
35                     dataList = dataAccess.getDailyTaskList(searchDate);\r
36                 }\r
37 \r
38                 else\r
39                 {\r
40                     dataList = dataAccess.getToDayTaskList();\r
41                 }\r
42                 if (dataList.Count > 500)\r
43                 {\r
44                     if (YesNoDialog.show("件数が500件を超えています。表示に時間がかかりますがよろしいでしょうか?") == false)\r
45                     {\r
46                         message = "表示を中止しました。なお大量タスク表示の際はexpの使用をおすすめします。";\r
47                         return true;\r
48                     }\r
49                 }\r
50 \r
51                 form.showOnPanel(dataList);\r
52             \r
53             //追加コマンドを設定します。\r
54                 EstimateCommandArg arg = new EstimateCommandArg();\r
55                 EstimateCommand cmd = new EstimateCommand();\r
56                 setChainCommand(arg, cmd);\r
57 \r
58             message = string.Empty;\r
59             return true;\r
60         }\r
61         string message;\r
62         protected override string turnMessage()\r
63         {\r
64             return message;\r
65         }\r
66 \r
67         protected override string turnErrorMessage()\r
68         {\r
69             return base.DefaultErrorMessage;\r
70         }\r
71 \r
72         protected override string turnSplitErrorMessage()\r
73         {\r
74             return base.DefaultSplitErrorMessage;\r
75         }\r
76     }\r
77 }\r