• R/O
  • HTTP
  • SSH
  • HTTPS

Kybernetes: Commit

kybetnetes ~ TaskOperatingSystem


Commit MetaInfo

Révisione4e4557677d1ef320c8d48539db1c21b5fe3dc3f (tree)
l'heure2015-05-05 13:06:43
AuteurAndouTomo <tomando.clar02@gmai...>
CommiterAndouTomo

Message de Log

version 1.1.7.0
DBのソート順改善(user.db)
日付をまたぐときに空白行を入れて間を空けるように処理変更
pause処理を番号指定に変更
ヘルプ検索時に、アライアスで検索してもヘルプが表示されるように処理改善

Change Summary

Modification

--- a/main/Properties/AssemblyInfo.cs
+++ b/main/Properties/AssemblyInfo.cs
@@ -11,7 +11,7 @@ using System.Resources;
1111 [assembly: AssemblyConfiguration("")]
1212 [assembly: AssemblyCompany("")]
1313 [assembly: AssemblyProduct("Kybernetes")]
14-[assembly: AssemblyCopyright("Copyright © AndouTomo 2014")]
14+[assembly: AssemblyCopyright("Copyright © AndouTomo 2015")]
1515 [assembly: AssemblyTrademark("")]
1616 [assembly: AssemblyCulture("")]
1717
@@ -33,6 +33,6 @@ using System.Resources;
3333 // すべての値を指定するか、下のように '*' を使ってビルドおよびリビジョン番号を
3434 // 既定値にすることができます:
3535 // [assembly: AssemblyVersion("1.0.*")]
36-[assembly: AssemblyVersion("1.1.6.8")]
37-[assembly: AssemblyFileVersion("1.1.6.8")]
36+[assembly: AssemblyVersion("1.1.7.0")]
37+[assembly: AssemblyFileVersion("1.1.7.0")]
3838 [assembly: NeutralResourcesLanguageAttribute("ja")]
Binary files a/main/bin/Debug/setting.db and b/main/bin/Debug/setting.db differ
Binary files a/main/bin/Debug/user.db and b/main/bin/Debug/user.db differ
--- a/main/command/Control/PauseCommand.cs
+++ b/main/command/Control/PauseCommand.cs
@@ -9,70 +9,71 @@ using System.Windows.Forms;
99
1010 namespace com.andoutomo.kybernetes.command.control
1111 {
12- class PauseCommand:AbCommand
12+ class PauseCommand : AbCommand
1313 {
1414 protected string message;
15-
15+
1616
1717 protected override bool execute()
1818 {
19+ EndCommandArg param = (EndCommandArg)argument;
20+
21+
1922 //アクセッサ
2023 TaskDataAccessor accessor = TaskDataAccessor.getObject;
2124
22- //現在実行中のタスクをターゲットとするので
23- //実行中のタスクを取得する(pwdのSQLを使用する)
24- List<TaskData> dataList = accessor.getPwdTaskList();
25-
26- //停止すべきものがない場合はメッセージを出して処理終了
27- if(dataList.Count == 0)
25+ TaskData newData = accessor.getTask(param.sortID);
26+ if (newData.StartTime == null || newData.StartTime.IsValid == false)
2827 {
29- message = "停止すべきタスクはありません。";
28+ message = "このタスクは開始されていません。startコマンドで開始してから終了してください。";
3029 return true;
30+
3131 }
32- //ループに入る前に終了時間を決めておく
33- data.TimeComponent endTime = data.TimeComponent.justNow();
34- foreach (TaskData _newData in dataList)
32+ //タスクを終了する(終了時間を記載)
33+ if (accessor.endTask(newData.SortID, param.EndTime))
3534 {
36- TaskData newData = accessor.getTask(_newData.SortID);
37- //タスクを終了する(終了時間を記載)
38- if (accessor.endTask(newData.SortID, data.TimeComponent.justNow()))
35+ TaskData _oldData = accessor.getTask(newData.SortID);
36+ //実績時間
37+ int wkRealMinutes = param.EndTime.getSubtractionMinute(newData.StartTime);
38+ //予測時間寄り実績時間が小さい場合で、中断の場合は
39+ if (_oldData.ForecastMin > wkRealMinutes)
3940 {
40- TaskData _oldData = accessor.getTask(newData.SortID);
41- //実績時間
42- int wkRealMinutes = endTime.getSubtractionMinute(newData.StartTime);
43- //予測時間寄り実績時間が小さい場合で、中断の場合は
44- if (_oldData.ForecastMin > wkRealMinutes)
45- {
46- //予測時間を実績時間分差し引く(そうしないと、予測時間が重複してしまう。既にオーバーしてたら知らん。)
47- _oldData.ForecastMin = endTime.getSubtractionMinute(newData.StartTime);
48- TaskDataAccessor.getObject.updateTask(_oldData);
49- }
50-
51- //複製するときに、実績時間分を予測時間から差し引く
52- //元の見積もり時間 - 実績時間(終了時間-開始時間)
53- int nextMinute = newData.ForecastMin - endTime.getSubtractionMinute(newData.StartTime);
54- if (nextMinute > 0)
55- {
56- newData.ForecastMin = nextMinute;
57- }
58- else
59- {
60- newData.ForecastMin = 0;
61- }
62-
63- //タスクを複製する
64- newData.TaskID = accessor.getMaxTaskID();
65- newData.SortID = accessor.getMaxSortID();
66- accessor.insertTask(newData);
67-
68- //リピート対象のタスクは複製後もリピート対象とする。(逆に、最初のタスク終了時にリピート処理をしない。)
69- accessor.setRepeatTask(newData.SortID, newData.IsRepeat);
70-
71- message += "タスク " + _oldData.SortID + " を中断します。" + System.Environment.NewLine;
72-
41+ //予測時間を実績時間分差し引く(そうしないと、予測時間が重複してしまう。既にオーバーしてたら知らん。)
42+ _oldData.ForecastMin = wkRealMinutes;
43+ TaskDataAccessor.getObject.updateTask(_oldData);
7344 }
45+
46+ //複製するときに、実績時間分を予測時間から差し引く
47+ //元の見積もり時間 - 実績時間(終了時間-開始時間)
48+ int nextMinute = newData.ForecastMin - wkRealMinutes;
49+ if (nextMinute > 0)
50+ {
51+ newData.ForecastMin = nextMinute;
52+ }
53+ else
54+ {
55+ newData.ForecastMin = 0;
56+ }
57+
58+ //タスクを複製する
59+ newData.TaskID = accessor.getMaxTaskID();
60+ newData.SortID = accessor.getMaxSortID();
61+ accessor.insertTask(newData);
62+
63+ CommentData data = new CommentData();
64+ data.TaskID = newData.TaskID;
65+ data.Comment = param.EndTime + " <" + newData.Contents + ">を中断 ";
66+
67+ CommentDataAccessor.getObject.insertComment(data);
68+
69+ //リピート対象のタスクは複製後もリピート対象とする。(逆に、最初のタスク終了時にリピート処理をしない。)
70+ accessor.setRepeatTask(newData.SortID, newData.IsRepeat);
71+
72+ message += "タスク " + _oldData.SortID + " を中断します。" + System.Environment.NewLine;
73+
7474 }
7575
76+
7677 return true;
7778 }
7879
--- a/main/command/SYSTEM/DateCommandArg.cs
+++ b/main/command/SYSTEM/DateCommandArg.cs
@@ -1,5 +1,6 @@
11 using System;
22 using com.andoutomo.kybernetes.data;
3+using com.andoutomo.kybernetes.control;
34
45 namespace com.andoutomo.kybernetes.command.system
56 {
@@ -29,6 +30,7 @@ namespace com.andoutomo.kybernetes.command.system
2930 catch (Exception e)
3031 {
3132 splitResult = false;
33+ KybernetesLogger.Log.debug(e.Message);
3234 }
3335 }
3436 }
--- a/main/command/SYSTEM/DmpCommand.cs
+++ b/main/command/SYSTEM/DmpCommand.cs
@@ -24,10 +24,12 @@ namespace com.andoutomo.kybernetes.command.system
2424 catch (DirectoryNotFoundException dnfe)
2525 {
2626 message = "保存対象ディレクトリがありません。ディレクトリ作成後に出力してください。";
27+ KybernetesLogger.Log.debug(dnfe.StackTrace);
2728 }
2829 catch (UnauthorizedAccessException uaae)
2930 {
3031 message = "書き込みに失敗しました。保存先の権限、現在使用中でないかどうか等を確認して下さい。";
32+ KybernetesLogger.Log.debug(uaae.StackTrace);
3133 }
3234 return false;
3335 }
--- a/main/command/SYSTEM/HelpCommand.cs
+++ b/main/command/SYSTEM/HelpCommand.cs
@@ -39,10 +39,10 @@ namespace com.andoutomo.kybernetes.command.system
3939 HelpData data = accessor.getHelpData(thisArg.HelpCommandStr);
4040 if (data != null)
4141 {
42- string aliases = accessor.getAlies(thisArg.HelpCommandStr);
42+ string aliases = accessor.getAlies(data.cmdStr);
4343
4444 resList2.Add(string.Empty);
45- resList2.Add(" HELP " + thisArg.HelpCommandStr);
45+ resList2.Add(" HELP " + data.cmdStr);
4646 resList2.Add(string.Empty);
4747 resList2.Add(data.cmdSummary);
4848 resList2.Add(string.Empty);
--- a/main/command/change/AddCommand.cs
+++ b/main/command/change/AddCommand.cs
@@ -4,6 +4,7 @@ using com.andoutomo.kybernetes.data.DAO;
44 using System.Collections.Generic;
55 using System.Windows.Forms;
66 using com.andoutomo.kybernetes.data;
7+using com.andoutomo.kybernetes.control;
78
89 namespace com.andoutomo.kybernetes.command.change
910 {
@@ -47,6 +48,7 @@ namespace com.andoutomo.kybernetes.command.change
4748 catch (Exception e)
4849 {
4950 message = "日付に不備がありました。お手数ですが最初からやり直してください。";
51+ KybernetesLogger.Log.debug(e.Message);
5052 return false;
5153 }
5254
--- a/main/command/change/UpdateCommand.cs
+++ b/main/command/change/UpdateCommand.cs
@@ -4,6 +4,7 @@ using com.andoutomo.kybernetes.data.DAO;
44 using com.andoutomo.kybernetes.data.accessor;
55 using System.Windows.Forms;
66 using com.andoutomo.kybernetes.data;
7+using com.andoutomo.kybernetes.control;
78
89 namespace com.andoutomo.kybernetes.command.change
910 {
@@ -51,6 +52,7 @@ namespace com.andoutomo.kybernetes.command.change
5152 catch (Exception e)
5253 {
5354 message = "日付に不備がありました。お手数ですが最初からやり直してください。";
55+ KybernetesLogger.Log.debug(e.Message);
5456 return false;
5557 }
5658 #endregion
--- a/main/control/KybernetesLogger.cs
+++ b/main/control/KybernetesLogger.cs
@@ -113,7 +113,8 @@ namespace com.andoutomo.kybernetes.control
113113 }
114114 catch (Exception e)
115115 {
116- //ここでは何もしない
116+ Console.Out.WriteLine(e.Message);
117+ //何もしない。
117118 }
118119 finally
119120 {
--- a/main/data/connection/CommandSqlDictionary.Designer.cs
+++ b/main/data/connection/CommandSqlDictionary.Designer.cs
@@ -1,7 +1,7 @@
11 //------------------------------------------------------------------------------
22 // <auto-generated>
33 // このコードはツールによって生成されました。
4-// ランタイム バージョン:4.0.30319.18444
4+// ランタイム バージョン:4.0.30319.34209
55 //
66 // このファイルへの変更は、以下の状況下で不正な動作の原因になったり、
77 // コードが再生成されるときに損失したりします。
@@ -86,7 +86,7 @@ namespace com.andoutomo.kybernetes.data.connection {
8686 }
8787
8888 /// <summary>
89- /// select c.CMDSTR,h.SUMMARY,h.DETAIL from TBL_command c,tbl_help h where c.helpid = h.helpid AND cmdSTR=? に類似しているローカライズされた文字列を検索します。
89+ /// select c.cmdstr,h.summary,h.detail from tbl_command c,tbl_help h ,(select cmdstr as callcmd,cmdstr as realcmd from tbl_command cw union select link_command as callcmd,base_command as realcmd from tbl_link lw ) l where c.helpid = h.helpid and c.cmdstr=l.realcmd and l.callcmd=? に類似しているローカライズされた文字列を検索します。
9090 /// </summary>
9191 internal static string getHelp {
9292 get {
--- a/main/data/connection/CommandSqlDictionary.resx
+++ b/main/data/connection/CommandSqlDictionary.resx
@@ -145,7 +145,7 @@ WHERE L.BASE_COMMAND = M.CMDSTR
145145 <comment>リンクを削除します。</comment>
146146 </data>
147147 <data name="getHelp" xml:space="preserve">
148- <value>select c.CMDSTR,h.SUMMARY,h.DETAIL from TBL_command c,tbl_help h where c.helpid = h.helpid AND cmdSTR=?</value>
148+ <value>select c.cmdstr,h.summary,h.detail from tbl_command c,tbl_help h ,(select cmdstr as callcmd,cmdstr as realcmd from tbl_command cw union select link_command as callcmd,base_command as realcmd from tbl_link lw ) l where c.helpid = h.helpid and c.cmdstr=l.realcmd and l.callcmd=?</value>
149149 <comment>個別ヘルプの内容を取得します。</comment>
150150 </data>
151151 <data name="getLink" xml:space="preserve">
--- a/main/view/BaseForm.cs
+++ b/main/view/BaseForm.cs
@@ -743,19 +743,39 @@ namespace com.andoutomo.kybernetes.view
743743 clearPanel();
744744 string wkAreaForIndex = "";
745745 DateComponent wkIndexDate = new DateComponent("19000101");
746+ bool wkIsComplete = false;
746747 foreach (TaskData data in taskList)
747748 {
748749 //data.Today = todayDate;
749750 if (!data.isComplete)
750751 {
751- if (wkAreaForIndex != data.TimeArea || wkIndexDate.calculateDateDiff(data.DoDate) != 0)
752+ //日付が違う場合
753+ if (wkIndexDate.calculateDateDiff(data.DoDate) != 0 || wkIsComplete)
752754 {
753- string wkIndex = "- " + data.TimeArea + " - on " + data.DoDate.getDateString("yyyy/MM/dd");
755+ string wkBranc = " ";
756+ addIndexPanel(wkBranc);
757+ }
758+ if (wkAreaForIndex != data.TimeArea || wkIndexDate.calculateDateDiff(data.DoDate) != 0 || wkIsComplete)
759+ {
760+ string wkIndex = "-- " + data.TimeArea + " -- on " + data.DoDate.getDateString("yyyy/MM/dd");
754761 addIndexPanel(wkIndex);
755762 }
756763
757764 wkAreaForIndex = data.TimeArea;
758765 wkIndexDate = data.DoDate;
766+ wkIsComplete = false;
767+ }
768+ else
769+ {
770+ //直前の日付が未来のときのみ
771+ if (wkIndexDate.calculateDateDiff(data.DoDate) > 0)
772+ {
773+ string wkBranc = " ";
774+ addIndexPanel(wkBranc);
775+ }
776+ wkAreaForIndex = data.TimeArea;
777+ wkIndexDate = data.DoDate;
778+ wkIsComplete = true;
759779 }
760780 addPanel(data);
761781
Afficher sur ancien navigateur de dépôt.