OSDN Git Service

Kybernetes1.1.6.8リリース
[kybernetes/Kybernetes.git] / main / command / Control / DelayCommand.cs
1 using System;\r
2 using com.andoutomo.kybernetes.data.accessor;\r
3 using com.andoutomo.kybernetes.data;\r
4 using com.andoutomo.kybernetes.data.DAO;\r
5 \r
6 namespace com.andoutomo.kybernetes.command.control\r
7 {\r
8     class DelayCommand:AbCommand\r
9     {\r
10         int taskID;\r
11         DateComponent retDate;\r
12 \r
13         protected override bool execute()\r
14         {\r
15             DelayCommandArg param = (DelayCommandArg)argument;\r
16             taskID = param.sortID;\r
17 \r
18             if (param.nextDate == null)\r
19             {\r
20                 TaskData data = TaskDataAccessor.getObject.getTask(param.sortID);\r
21                 if (data == null)\r
22                 {\r
23                     base.errorType = ErrorType.DataNotFound;\r
24                     return false;\r
25                 }\r
26                 retDate = data.DoDate;\r
27 \r
28                 if (param.DateToSkip != int.MinValue)\r
29                 {\r
30                     retDate.addDate(param.DateToSkip);\r
31                 }\r
32                 else\r
33                 {\r
34                     string dateStr = form.showInputBox("何日先に延ばしますか?または何日に延ばしますか?");\r
35                     if (string.IsNullOrEmpty(dateStr))\r
36                     {\r
37                         dateStr = "0";\r
38                     }\r
39                     else if (dateStr.Length < 4)\r
40                     {\r
41                         retDate.addDate(Convert.ToInt32(dateStr));\r
42                     }\r
43                     else\r
44                     {\r
45                         retDate = new DateComponent(dateStr);\r
46                     }\r
47                 }\r
48             }\r
49             else\r
50             {\r
51                 retDate = param.nextDate;\r
52             }\r
53 \r
54 \r
55             return TaskDataAccessor.getObject.delayTask(param.sortID, retDate);\r
56         }\r
57 \r
58         protected override string turnMessage()\r
59         {\r
60             return "タスク" + taskID + "を" + retDate.getDateString() +"に延期しました。";\r
61         }\r
62 \r
63         protected override string turnErrorMessage()\r
64         {\r
65             return base.DefaultErrorMessage;\r
66         }\r
67 \r
68         protected override string turnSplitErrorMessage()\r
69         {\r
70             return base.DefaultSplitErrorMessage;\r
71         }\r
72     }\r
73 }\r