OSDN Git Service

v1.1.5.1
[kybernetes/Kybernetes.git] / main / command / Control / StartCommand.cs
1 using com.andoutomo.kybernetes.data.accessor;\r
2 using com.andoutomo.kybernetes.data.DAO;\r
3 using com.andoutomo.kybernetes.data;\r
4 \r
5 namespace com.andoutomo.kybernetes.command\r
6 {\r
7     class StartCommand:AbCommand\r
8     {\r
9         StartCommandArg param;\r
10         protected override bool execute()\r
11         {\r
12             TaskDataAccessor accessor = TaskDataAccessor.getObject;\r
13 \r
14             param = (StartCommandArg)argument;\r
15             if (param.AutoMode)\r
16             {\r
17                 TaskData target = accessor.getTask(param.sortID);\r
18                 if (target != null)\r
19                 {\r
20                     TimeComponent lastEndtime = accessor.getNextStartTime(target.DoDate);\r
21                     if (lastEndtime != null && lastEndtime.IsValid)\r
22                     {\r
23                         return accessor.startTask(target.SortID, lastEndtime);\r
24                     }\r
25                     else\r
26                     {\r
27                         message = "終了しているタスクが無いため、自動設定できません。最初は手動設定してください。";\r
28                         return false;\r
29                     }\r
30                 }\r
31                 else\r
32                 {\r
33                     base.errorType = ErrorType.DataNotFound;\r
34                     return false;\r
35                 }\r
36             }\r
37             else\r
38             {\r
39                 return accessor.startTask(param.sortID, param.StartTime);\r
40             }\r
41         }\r
42         string message;\r
43 \r
44         protected override string turnMessage()\r
45         {\r
46             return "タスク " + param.sortID + " をスタートします。";\r
47         }\r
48 \r
49         protected override string turnErrorMessage()\r
50         {\r
51             if (string.IsNullOrEmpty(message))\r
52             {\r
53                 return base.DefaultErrorMessage;\r
54             }\r
55                 return message;\r
56         }\r
57 \r
58         protected override string turnSplitErrorMessage()\r
59         {\r
60             return base.DefaultSplitErrorMessage;\r
61         }\r
62     }\r
63 }\r