1 using com.andoutomo.kybernetes.data;
\r
2 using com.andoutomo.kybernetes.data.accessor;
\r
3 using com.andoutomo.kybernetes.data.DAO;
\r
5 namespace com.andoutomo.kybernetes.command
\r
7 class AddCommandArgs:CommandArg
\r
9 private TaskData _data;
\r
10 private int _categoryID;
\r
12 public TaskData PreparedTaskData
\r
14 get { return _data; }
\r
15 internal set { this._data = value; }
\r
17 public int CategoryID
\r
19 get { return _categoryID; }
\r
22 public void split(string arguments)
\r
24 _data = new TaskData();
\r
25 string[] spaceSplitData = arguments.Split(' ');
\r
26 string command = spaceSplitData[0].ToLower();
\r
27 foreach (string options in spaceSplitData)
\r
29 if (string.Equals(command,options.ToLower())) { continue; }
\r
30 string[] optionData = options.Split(':');
\r
31 switch (optionData[0].ToUpper())
\r
35 if (optionData[1].Length == 1)
\r
37 _data.TimeArea = optionData[1];
\r
42 if (optionData[1].Length == 4 || optionData[1].Length == 8)
\r
44 _data.DoDate = new DateComponent(optionData[1]);
\r
49 CategoryDataAccessor dataAccessor = CategoryDataAccessor.getObject;
\r
50 CategoryData categData = dataAccessor.getCategoryFromName(optionData[1]);
\r
51 if (categData != null)
\r
53 _data.Category = optionData[1];
\r
54 _categoryID = categData.CategId;
\r
58 decimal forcastTime;
\r
60 if (optionData[1].ToLower().EndsWith("h"))
\r
62 timestr = optionData[1].Substring(0, optionData[1].Length - 1);
\r
63 if (decimal.TryParse(timestr, out forcastTime))
\r
65 _data.ForecastMin = decimal.ToInt32(forcastTime * 60);
\r
68 else if (decimal.TryParse(optionData[1], out forcastTime))
\r
70 _data.ForecastMin = decimal.ToInt32(forcastTime);
\r
77 if (int.TryParse(optionData[1], out outInt))
\r
79 _data.SortID = outInt;
\r
87 _data.Project = optionData[1];
\r
91 _data.Tags = optionData[1];
\r
94 //なにもない場合はコンテンツ(最初の記載を是とする)
\r
95 if (_data.Contents == null || _data.Contents == string.Empty)
\r
97 _data.Contents = optionData[0];
\r
99 for (int i = 1; i < optionData.Length; i++)
\r
101 _data.Contents += ":" + optionData[i];
\r
109 public bool getSplitResult()
\r