--- /dev/null
+using com.andoutomo.kybernetes.data.accessor;\r
+using com.andoutomo.kybernetes.data.DAO;\r
+\r
+namespace com.andoutomo.kybernetes.command.change\r
+{\r
+ class DuplicateCommand:AbCommand\r
+ {\r
+ string message;\r
+ protected override bool execute()\r
+ {\r
+ DuplicateCommandArg param = (DuplicateCommandArg)argument;\r
+\r
+ TaskDataAccessor accessor = TaskDataAccessor.getObject;\r
+ // データを取得\r
+ TaskData data = accessor.getTask(param.sortID);\r
+ if (data == null)\r
+ {\r
+ base.errorType = ErrorType.DataNotFound;\r
+ return false;\r
+ }\r
+ // 次番号を取得\r
+ data.TaskID = accessor.getMaxTaskID();\r
+ data.SortID = accessor.getMaxSortID();\r
+ \r
+ //poptionがない場合\r
+ if (!param.poption)\r
+ {\r
+ //見積もり時間は0にする。\r
+ data.ForecastMin = 0;\r
+ }\r
+\r
+ //データをインサート\r
+ if (accessor.insertTask(data) )\r
+ //&& accessor.updateProjectofTask(data.SortID,data.Project) \r
+ //&& accessor.updateTagofTask(data.SortID,data.Tags))\r
+ {\r
+ message = "タスク「" + data.Contents + "」を番号" + data.SortID + "で複製しました。";\r
+ return true;\r
+ }\r
+ else\r
+ {\r
+ return false;\r
+ }\r
+\r
+\r
+ }\r
+\r
+ protected override string turnMessage()\r
+ {\r
+ return message;\r
+ }\r
+\r
+ protected override string turnErrorMessage()\r
+ {\r
+ return base.DefaultErrorMessage;\r
+ }\r
+\r
+ protected override string turnSplitErrorMessage()\r
+ {\r
+ return base.DefaultSplitErrorMessage;\r
+ }\r
+ }\r
+}\r