OSDN Git Service

v1.1.5.1
[kybernetes/Kybernetes.git] / main / command / reference / ShowCommand.cs
1 using System;\r
2 using System.Collections.Generic;\r
3 using System.Linq;\r
4 using System.Text;\r
5 using com.andoutomo.kybernetes.command.template;\r
6 using com.andoutomo.kybernetes.data.DAO;\r
7 using com.andoutomo.kybernetes.data.accessor;\r
8 \r
9 namespace com.andoutomo.kybernetes.command.reference\r
10 {\r
11     class ShowCommand:AbCommand\r
12     {\r
13         protected override bool execute()\r
14         {\r
15             StandardCommandArg param = (StandardCommandArg)argument;\r
16             int sortID = param.sortID;\r
17 \r
18             TaskData data = TaskDataAccessor.getObject.getTask(sortID);\r
19             if (data == null)\r
20             {\r
21                 base.errorType = ErrorType.DataNotFound;\r
22                 return false;\r
23             }\r
24             List<string> resultList = new List<string>();\r
25 \r
26             //題名(作業名とカテゴリ)\r
27             resultList.Add(data.SortID + " " + data.Contents + " (" + data.Category + ")");\r
28 \r
29             //予測と実績\r
30             string wkForecastReal = string.Empty;\r
31             wkForecastReal += "予測 " + data.ForecastMin + "分";\r
32             if (data.RealMin > 0)\r
33             {\r
34                 wkForecastReal += " 実績 " + data.RealMin + "分";\r
35                 wkForecastReal += " (差異 " + (data.RealMin - data.ForecastMin) + "分)";\r
36             }\r
37             resultList.Add(wkForecastReal);\r
38             string wkStartEnd = string.Empty;\r
39 \r
40             //開始と終了\r
41             if (data.StartTime.IsValid)\r
42             {\r
43                 wkStartEnd += data.StartTime.ToString() + "開始";\r
44             }\r
45             if (data.EndTime.IsValid)\r
46             {\r
47                 wkStartEnd += " " + data.EndTime.ToString() + "終了";\r
48             }\r
49             if (!string.IsNullOrEmpty(wkStartEnd))\r
50             {\r
51                 resultList.Add(wkStartEnd);\r
52             }\r
53 \r
54             //プロジェクトとタグ\r
55             string wkPrjAndTags = string.Empty;\r
56             if (!string.IsNullOrEmpty(data.Project))\r
57             {\r
58                 wkPrjAndTags += "プロジェクト:" + data.Project;\r
59             }\r
60             if (!string.IsNullOrEmpty(data.Tags))\r
61             {\r
62                 wkPrjAndTags += " タグ:" + data.Tags;\r
63             }\r
64             if (!string.IsNullOrEmpty(wkPrjAndTags))\r
65             {\r
66                 resultList.Add(wkPrjAndTags);\r
67             }\r
68 \r
69             //Comment\r
70             List<CommentData> comments = CommentDataAccessor.getObject.getComment(data.TaskID);\r
71             foreach (CommentData com in comments)\r
72             {\r
73                 resultList.Add("------ " + com.CreateDateStr + " ------");\r
74                 resultList.Add(com.Comment);\r
75             }\r
76 \r
77 \r
78             form.addMultiText(resultList);\r
79 \r
80             return true;\r
81         }\r
82 \r
83         protected override string turnMessage()\r
84         {\r
85             return string.Empty;\r
86         }\r
87 \r
88         protected override string turnErrorMessage()\r
89         {\r
90             return base.DefaultErrorMessage;\r
91         }\r
92 \r
93         protected override string turnSplitErrorMessage()\r
94         {\r
95             return base.DefaultSplitErrorMessage;\r
96         }\r
97     }\r
98 }\r