private void Button_TaskSetting_Update_Click(object sender, EventArgs e) { DialogResult dr_YESNO = MessageBox.Show("検索条件を保存しますか?", "条件保存", MessageBoxButtons.YesNo, MessageBoxIcon.Information); if (dr_YESNO == DialogResult.No) { return; } TaskFlgData taskFlgData = new TaskFlgData(); Flg_Task_Select flgTaskSelect = new Flg_Task_Select() { USER_NO = TextBox_UserNo.Text, // ステータス「未」チェックボックスがTRUEの場合、TASK_STATUS_CODEは「未」(01)の固定値を採用 TASK_STATUS_CODE = CheckBox_Uncompleted_SelectTaskList.Checked ? Constants.TaskStatus.UNCOMPLETED_01 : TextBox_StatusCode_Select.Text, // 種別「個人」チェックボックスがTRUEの場合、TASK_KIND_CODEは「個人」(01)の固定値を採用 TASK_KIND_CODE = CheckBox_Personal_SelectTaskList.Checked ? Constants.TaskKind.PERSONAL_01 : TextBox_KindCode_Select.Text, TASK_GROUP_CODE = TextBox_GroupCode_Select.Text, }; taskFlgData.Update_FlgSelect(flgTaskSelect); DialogResult dr_OK = MessageBox.Show("検索条件を保存しました。", "保存", MessageBoxButtons.OK, MessageBoxIcon.Information); }
private void TaskListSelectForListView() { // リストビューの初期化 ListView_Task.Items.Clear(); // タスク検索条件を画面から取得 // TODO:下記記述内容の見直し Flg_Task_Select flgTaskSelect = new Flg_Task_Select() { USER_NO = TextBox_UserNo.Text, DAY_FROM = TextBox_Day_From_SelectTaskList.Text == "" ? new DateTime(0) : DateTime.Parse(TextBox_Day_From_SelectTaskList.Text), DAY_TO = TextBox_Day_To_SelectTaskList.Text == "" ? new DateTime(0) : DateTime.Parse(TextBox_Day_To_SelectTaskList.Text), // ステータス「未」チェックボックスがTRUEの場合、TASK_STATUS_CODEは「未」(01)の固定値を採用 TASK_STATUS_CODE = CheckBox_Uncompleted_SelectTaskList.Checked ? Constants.TaskStatus.UNCOMPLETED_01 : TextBox_StatusCode_Select.Text, // 種別「個人」チェックボックスがTRUEの場合、TASK_KIND_CODEは「個人」(01)の固定値を採用 TASK_KIND_CODE = CheckBox_Personal_SelectTaskList.Checked ? Constants.TaskKind.PERSONAL_01 : TextBox_KindCode_Select.Text, TASK_GROUP_CODE = TextBox_GroupCode_Select.Text }; // タスク一覧の取得(SELECT) TaskData taskData = new TaskData(); List <Task> taskList = taskData.LoadForm_TaskList_Select(flgTaskSelect); // タスク一覧をリストビューに表示。 TaskListShowListview(taskList); }
public List <Task> LoadForm_TaskList_Select(Flg_Task_Select flgTaskSelect) { // タスクインスタンス生成 List <Task> taskList = null; Task selectedTaskForList = null; Code taskStatusCode = null; Code taskKindCode = null; Code taskGroupCode = null; // 共通部品を生成 DataBaceAccess dbAccess = new DataBaceAccess(); // 共通部品からSQLserverとの接続オブジェクトを取得 SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); DataTable dt = new DataTable(); try { // データベースの接続開始 connection.Open(); // SQLの準備 StringBuilder query = new StringBuilder(); query.AppendLine("SELECT"); query.AppendLine(" T_TL.TASK_NO "); query.AppendLine(" , T_TL.USER_NO "); query.AppendLine(" , T_TL.CREATE_YMD "); query.AppendLine(" , T_TL.UPDATE_YMD "); query.AppendLine(" , T_TL.TODO_YMD "); query.AppendLine(" , T_TL.FINISHED_YMD "); query.AppendLine(" , T_TL.TASK_STATUS_CODE "); query.AppendLine(" , M_TSC.TASK_STATUS_NAME "); query.AppendLine(" , T_TL.TASK_KIND_CODE "); query.AppendLine(" , M_UTKC.TASK_KIND_NAME "); query.AppendLine(" , T_TL.TASK_GROUP_CODE "); query.AppendLine(" , M_UTGC.TASK_GROUP_NAME "); query.AppendLine(" , T_TL.TASK_NAME "); query.AppendLine(" , T_TL.PLAN_TIME "); query.AppendLine(" , T_TL.RESULT_TIME "); query.AppendLine(" , T_TL.MEMO "); // タスクリストテーブル query.AppendLine("FROM TRN_TASK_LIST T_TL "); // タスクステータスコードマスタ query.AppendLine("INNER JOIN MST_TASK_STATUS_CODE M_TSC "); query.AppendLine(" ON T_TL.TASK_STATUS_CODE = M_TSC.TASK_STATUS_CODE "); // タスク種別コードマスタ query.AppendLine("INNER JOIN MST_USER_TASK_KIND_CODE M_UTKC "); query.AppendLine(" ON T_TL.USER_NO = M_UTKC.USER_NO "); query.AppendLine(" AND T_TL.TASK_KIND_CODE = M_UTKC.TASK_KIND_CODE "); // タスクグループコードマスタ query.AppendLine("INNER JOIN MST_USER_TASK_GROUP_CODE M_UTGC "); query.AppendLine(" ON T_TL.USER_NO = M_UTGC.USER_NO "); query.AppendLine(" AND T_TL.TASK_GROUP_CODE = M_UTGC.TASK_GROUP_CODE "); #region 検索条件 // ユーザーNo query.AppendLine("WHERE T_TL.USER_NO = @USER_NO "); command.Parameters.Add(new SqlParameter("@USER_NO", flgTaskSelect.USER_NO)); // 検索日付条件 if (flgTaskSelect.DAY_FROM != new DateTime(0)) { query.AppendLine("AND T_TL.TODO_YMD >= @DAY_FROM "); command.Parameters.Add(new SqlParameter("@DAY_FROM", flgTaskSelect.DAY_FROM)); } if (flgTaskSelect.DAY_TO != new DateTime(0)) { query.AppendLine("AND T_TL.TODO_YMD <= @DAY_TO "); command.Parameters.Add(new SqlParameter("@DAY_TO", flgTaskSelect.DAY_TO)); } // タスクステータスコード条件 if (flgTaskSelect.TASK_STATUS_CODE != Constants.TaskStatus.ALL_00) { query.AppendLine("AND T_TL.TASK_STATUS_CODE = @TASK_STATUS_CODE "); command.Parameters.Add(new SqlParameter("@TASK_STATUS_CODE", flgTaskSelect.TASK_STATUS_CODE)); } // タスク種別コード条件 if (flgTaskSelect.TASK_KIND_CODE != Constants.TaskKind.ALL_00) { query.AppendLine("AND T_TL.TASK_KIND_CODE = @TASK_KIND_CODE "); command.Parameters.Add(new SqlParameter("@TASK_KIND_CODE", flgTaskSelect.TASK_KIND_CODE)); } // タスクグループコード条件 if (flgTaskSelect.TASK_GROUP_CODE != Constants.TaskGroup.ALL_00) { query.AppendLine("AND T_TL.TASK_GROUP_CODE = @TASK_GROUP_CODE "); command.Parameters.Add(new SqlParameter("@TASK_GROUP_CODE", flgTaskSelect.TASK_GROUP_CODE)); } #endregion query.AppendLine("ORDER BY TODO_YMD, TASK_STATUS_CODE "); command.CommandText = query.ToString(); // SQLの実行 SqlDataReader reader = command.ExecuteReader(); // タスクインスタンスの生成 taskList = new List <Task>(); // 結果を表示します。 while (reader.Read()) { taskStatusCode = new Code((string)reader.GetValue(6), (string)reader.GetValue(7)); taskKindCode = new Code((string)reader.GetValue(8), (string)reader.GetValue(9)); taskGroupCode = new Code((string)reader.GetValue(10), (string)reader.GetValue(11)); selectedTaskForList = new Task( taskNo: (string)reader.GetValue(0), userNo: (string)reader.GetValue(1), taskStatusCode: taskStatusCode, taskKindCode: taskKindCode, taskGroupCode: taskGroupCode, taskName: (string)reader.GetValue(12), planTime: (TimeSpan)reader.GetValue(13), resultTime: (TimeSpan)reader.GetValue(14), memo: (string)reader.GetValue(15), createYmd: (DateTime)reader.GetValue(2), updateYmd: (DateTime)reader.GetValue(3), todoYmd: (DateTime)reader.GetValue(4), finishedYmd: (DateTime)reader.GetValue(5) ); taskList.Add(selectedTaskForList); } } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } return(taskList); }
public override Flg Select_FlgSelect(string login_User_No) { // タスクインスタンス生成 Flg taskFlg_Return = null; // 共通部品を生成 DataBaceAccess dbAccess = new DataBaceAccess(); // 共通部品からSQLserverとの接続オブジェクトを取得 SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); try { // データベースの接続開始 connection.Open(); // SQLの準備 StringBuilder query = new StringBuilder(); query.AppendLine("SELECT"); query.AppendLine(" USER_NO "); query.AppendLine(" , TASK_STATUS_CODE "); query.AppendLine(" , TASK_KIND_CODE "); query.AppendLine(" , TASK_GROUP_CODE "); // ユーザータスク検索初期設定マスタ query.AppendLine("FROM MST_USER_TASK_SETTING_SELECT "); // 検索条件 query.AppendLine("WHERE USER_NO = @USER_NO "); command.Parameters.Add(new SqlParameter("@USER_NO", login_User_No)); command.CommandText = query.ToString(); // SQLの実行 SqlDataReader reader = command.ExecuteReader(); if (reader.Read() == true) { // 値のセット taskFlg_Return = new Flg_Task_Select { USER_NO = (string)reader.GetValue(0), TASK_STATUS_CODE = (string)reader.GetValue(1), TASK_KIND_CODE = (string)reader.GetValue(2), TASK_GROUP_CODE = (string)reader.GetValue(3), }; } } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } return(taskFlg_Return); }