public User LogIn_User_Select(string userId, string password) { // 戻り値用インスタンス生成(先頭に定義しないほうがいいの?) User loginUser = null; DataBaceAccess dbAccess = new DataBaceAccess(); SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); DataTable dt = new DataTable(); try { connection.Open(); StringBuilder query = new StringBuilder(); query.AppendLine("SELECT"); query.AppendLine(" USER_NO "); query.AppendLine(" , USER_ID "); query.AppendLine(" , USER_NAME "); query.AppendLine(" , OVER_TIME "); query.AppendLine(" , PERCENT_TIME "); query.AppendLine("FROM MST_USER_INFO "); query.AppendLine("WHERE USER_ID = @USER_ID "); command.Parameters.Add(new SqlParameter("@USER_ID", userId)); // 初回ログイン時はパスワードを条件とする。 if (!string.IsNullOrEmpty(password)) { query.AppendLine(" AND PASSWORD = @PASSWORD "); command.Parameters.Add(new SqlParameter("@PASSWORD", password)); } command.CommandText = query.ToString(); SqlDataReader reader = command.ExecuteReader(); while (reader.Read()) { loginUser = new User ( (string)reader.GetValue(0), (string)reader.GetValue(1), (string)reader.GetValue(2), (int)reader.GetValue(3), (int)reader.GetValue(4) ); } } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { connection.Close(); } return(loginUser); }
public string Get_TaskNo_Max(string user_no) { // string task_no_max = 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(" RIGHT('0000000' + CONVERT(VARCHAR,ISNULL(MAX(TASK_NO), 0) + 1), 7) "); query.AppendLine("FROM TRN_TASK_LIST "); query.AppendLine("WHERE USER_NO = @USER_NO "); command.CommandText = query.ToString(); // パラメーターの設定 command.Parameters.Add(new SqlParameter("@USER_NO", user_no)); // SQLの実行 SqlDataReader reader = command.ExecuteReader(); // 結果を表示します。 while (reader.Read()) { task_no_max = (string)reader.GetValue(0); } } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } return(task_no_max); }
/// <summary> /// タスク種別一覧を取得する。 /// </summary> /// <param name="logInUserNo">ログインユーザーNo</param> /// <returns>タスク種別一覧</returns> public DataTable TaskKindCodeTable(string logInUserNo) { // タスク種別インスタンス生成 DataTable taskKindTable = new DataTable(); // 共通部品を生成 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(" TASK_KIND_CODE "); query.AppendLine(" , TASK_KIND_NAME "); query.AppendLine("FROM MST_USER_TASK_KIND_CODE "); query.AppendLine("WHERE USER_NO = @USER_NO "); command.Parameters.Add(new SqlParameter("@USER_NO", logInUserNo)); // タスク追加用コンボボックスは「全て」(00)は除外する。 query.AppendLine(" AND TASK_KIND_CODE <> @TASK_KIND_CODE "); command.Parameters.Add(new SqlParameter("@TASK_KIND_CODE", Constants.TaskKind.ALL_00)); query.AppendLine("ORDER BY TASK_KIND_CODE "); command.CommandText = query.ToString(); // SQLの実行 SqlDataAdapter adapter = new SqlDataAdapter(command); adapter.Fill(taskKindTable); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } return(taskKindTable); }
public void Task_Delete(Task taskDelete) { // 共通部品を生成 DataBaceAccess dbAccess = new DataBaceAccess(); // 共通部品からSQLserverとの接続オブジェクトを取得 SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); try { // データベースの接続開始 connection.Open(); // SQLの準備 StringBuilder query = new StringBuilder(); query.AppendLine("UPDATE TRN_TASK_LIST "); query.AppendLine("SET "); query.AppendLine(" UPDATE_YMD = @UPDATE_YMD "); query.AppendLine(" , TASK_STATUS_CODE = @TASK_STATUS_CODE "); query.AppendLine(" , MEMO = @MEMO "); query.AppendLine("WHERE "); query.AppendLine(" TASK_NO = @TASK_NO "); query.AppendLine("AND USER_NO = @USER_NO "); command.CommandText = query.ToString(); // パラメーターの設定 command.Parameters.Add(new SqlParameter("@TASK_NO", taskDelete._taskNo)); command.Parameters.Add(new SqlParameter("@USER_NO", taskDelete._userNo)); command.Parameters.Add(new SqlParameter("@UPDATE_YMD", taskDelete._updateYmd)); command.Parameters.Add(new SqlParameter("@TASK_STATUS_CODE", taskDelete._taskStatusCode._code)); command.Parameters.Add(new SqlParameter("@MEMO", taskDelete._memo ?? "")); // SQLの実行 command.ExecuteNonQuery(); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } }
/// <summary> /// タスクステータス一覧を取得する。 /// </summary> /// <param name="">パラメータ無し</param> /// <returns>タスクステータス一覧</returns> public DataTable TaskStatusCodeTable() { // タスク種別インスタンス生成 DataTable taskStatusTable = new DataTable(); // 共通部品を生成 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(" TASK_STATUS_CODE "); query.AppendLine(" , TASK_STATUS_NAME "); query.AppendLine("FROM MST_TASK_STATUS_CODE "); query.AppendLine("WHERE TASK_STATUS_CODE <> '00' "); query.AppendLine("ORDER BY TASK_STATUS_CODE "); command.CommandText = query.ToString(); // SQLの実行 SqlDataAdapter adapter = new SqlDataAdapter(command); adapter.Fill(taskStatusTable); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } return(taskStatusTable); }
public override void Update_FlgSelect(Flg taskFlg_Select) { // 共通部品を生成 DataBaceAccess dbAccess = new DataBaceAccess(); // 共通部品からSQLserverとの接続オブジェクトを取得 SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); try { // データベースの接続開始 connection.Open(); // SQLの準備 StringBuilder query = new StringBuilder(); query.AppendLine("UPDATE MST_USER_TASK_SETTING_SELECT "); query.AppendLine("SET "); query.AppendLine(" TASK_STATUS_CODE = @TASK_STATUS_CODE "); query.AppendLine(" , TASK_KIND_CODE = @TASK_KIND_CODE "); query.AppendLine(" , TASK_GROUP_CODE = @TASK_GROUP_CODE "); query.AppendLine("WHERE "); query.AppendLine(" USER_NO = @USER_NO "); command.CommandText = query.ToString(); // パラメーターの設定 command.Parameters.Add(new SqlParameter("@USER_NO", taskFlg_Select.USER_NO)); command.Parameters.Add(new SqlParameter("@TASK_STATUS_CODE", taskFlg_Select.TASK_STATUS_CODE)); command.Parameters.Add(new SqlParameter("@TASK_KIND_CODE", taskFlg_Select.TASK_KIND_CODE)); command.Parameters.Add(new SqlParameter("@TASK_GROUP_CODE", taskFlg_Select.TASK_GROUP_CODE)); // SQLの実行 command.ExecuteNonQuery(); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } }
/// <summary> /// ユーザ毎のタスクグループ名を更新する。 /// </summary> /// <param name="taskGroupCode">タスクグループコードインスタンス</param> /// <returns></returns> public void TaskGroupMstUpdate(Code taskGroupCode) { DataBaceAccess dbAccess = new DataBaceAccess(); SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); try { // データベースの接続開始 connection.Open(); // SQLの準備 StringBuilder query = new StringBuilder(); query.AppendLine("UPDATE MST_USER_TASK_GROUP_CODE "); query.AppendLine("SET "); query.AppendLine(" TASK_GROUP_NAME = @TASK_GROUP_NAME "); query.AppendLine("WHERE "); query.AppendLine(" USER_NO = @USER_NO "); query.AppendLine("AND TASK_GROUP_CODE = @TASK_GROUP_CODE "); command.CommandText = query.ToString(); command.Parameters.Add(new SqlParameter("@TASK_GROUP_NAME", taskGroupCode._name)); command.Parameters.Add(new SqlParameter("@USER_NO", _logInUserNo)); command.Parameters.Add(new SqlParameter("@TASK_GROUP_CODE", taskGroupCode._code)); command.ExecuteNonQuery(); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { connection.Close(); } }
public void Task_Stop(Task taskStop) { DataBaceAccess dbAccess = new DataBaceAccess(); SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); try { connection.Open(); StringBuilder query = new StringBuilder(); query.AppendLine("UPDATE TRN_TASK_LIST "); query.AppendLine("SET "); query.AppendLine(" RESULT_TIME = @RESULT_TIME "); query.AppendLine(" , MEMO = @MEMO "); query.AppendLine("WHERE "); query.AppendLine(" TASK_NO = @TASK_NO "); query.AppendLine("AND USER_NO = @USER_NO "); command.CommandText = query.ToString(); command.Parameters.Add(new SqlParameter("@TASK_NO", taskStop._taskNo)); command.Parameters.Add(new SqlParameter("@USER_NO", taskStop._userNo)); command.Parameters.Add(new SqlParameter("@RESULT_TIME", taskStop._resultTime)); command.Parameters.Add(new SqlParameter("@MEMO", taskStop._memo ?? "")); command.ExecuteNonQuery(); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { connection.Close(); } }
public void Task_Update(Task taskUpdate) { // 共通部品を生成 DataBaceAccess dbAccess = new DataBaceAccess(); // 共通部品からSQLserverとの接続オブジェクトを取得 SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); try { // データベースの接続開始 connection.Open(); // SQLの準備 StringBuilder query = new StringBuilder(); query.AppendLine("UPDATE TRN_TASK_LIST "); query.AppendLine("SET "); query.AppendLine(" UPDATE_YMD = @UPDATE_YMD "); if (taskUpdate._taskStatusCode._code == Constants.TaskStatus.COMPLETED_10) { query.AppendLine(" , FINISHED_YMD = @FINISHED_YMD "); } query.AppendLine(" , TODO_YMD = @TODO_YMD "); query.AppendLine(" , TASK_STATUS_CODE = @TASK_STATUS_CODE "); query.AppendLine(" , TASK_KIND_CODE = @TASK_KIND_CODE "); query.AppendLine(" , TASK_GROUP_CODE = @TASK_GROUP_CODE "); query.AppendLine(" , TASK_NAME = @TASK_NAME "); query.AppendLine(" , PLAN_TIME = @PLAN_TIME "); query.AppendLine(" , RESULT_TIME = @RESULT_TIME "); query.AppendLine(" , MEMO = @MEMO "); query.AppendLine("WHERE "); query.AppendLine(" TASK_NO = @TASK_NO "); query.AppendLine("AND USER_NO = @USER_NO "); command.CommandText = query.ToString(); // パラメーターの設定 command.Parameters.Add(new SqlParameter("@TASK_NO", taskUpdate._taskNo)); command.Parameters.Add(new SqlParameter("@USER_NO", taskUpdate._userNo)); command.Parameters.Add(new SqlParameter("@UPDATE_YMD", taskUpdate._updateYmd)); command.Parameters.Add(new SqlParameter("@TODO_YMD", taskUpdate._todoYmd)); if (taskUpdate._taskStatusCode._code == Constants.TaskStatus.COMPLETED_10) { command.Parameters.Add(new SqlParameter("@FINISHED_YMD", taskUpdate._finishedYmd)); } command.Parameters.Add(new SqlParameter("@TASK_STATUS_CODE", taskUpdate._taskStatusCode._code)); command.Parameters.Add(new SqlParameter("@TASK_KIND_CODE", taskUpdate._taskKindCode._code)); command.Parameters.Add(new SqlParameter("@TASK_GROUP_CODE", taskUpdate._taskGroupCode._code)); command.Parameters.Add(new SqlParameter("@TASK_NAME", taskUpdate._taskName)); command.Parameters.Add(new SqlParameter("@PLAN_TIME", taskUpdate._planTime)); command.Parameters.Add(new SqlParameter("@RESULT_TIME", taskUpdate._resultTime)); command.Parameters.Add(new SqlParameter("@MEMO", taskUpdate._memo ?? "")); // SQLの実行 command.ExecuteNonQuery(); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } }
public Task LoadForm_Task_Select(string taskNo, string loginUserNo) { // タスクインスタンス生成 Task taskReturn = null; Code taskStatusCode = null; Code taskKindCode = null; Code taskGroupCode = 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(" 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 "); // 検索条件 query.AppendLine("WHERE T_TL.TASK_NO = @TASK_NO "); command.Parameters.Add(new SqlParameter("@TASK_NO", taskNo)); query.AppendLine(" AND T_TL.USER_NO = @USER_NO "); command.Parameters.Add(new SqlParameter("@USER_NO", loginUserNo)); command.CommandText = query.ToString(); // SQLの実行 SqlDataReader reader = command.ExecuteReader(); if (reader.Read() == true) { // 値のセット 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)); taskReturn = 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) ); } } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } return(taskReturn); }
public void Task_Insert(Task taskAdd) { // 共通部品を生成 DataBaceAccess dbAccess = new DataBaceAccess(); // 共通部品からSQLserverとの接続オブジェクトを取得 SqlConnection connection = dbAccess.GetSqlSvrConnect(); SqlCommand command = connection.CreateCommand(); try { // データベースの接続開始 connection.Open(); // SQLの準備 StringBuilder query = new StringBuilder(); query.AppendLine("INSERT "); query.AppendLine(" INTO TRN_TASK_LIST "); query.AppendLine("( "); query.AppendLine(" TASK_NO "); query.AppendLine(" , USER_NO "); query.AppendLine(" , CREATE_YMD "); query.AppendLine(" , UPDATE_YMD "); query.AppendLine(" , TODO_YMD "); query.AppendLine(" , FINISHED_YMD "); query.AppendLine(" , TASK_STATUS_CODE "); query.AppendLine(" , TASK_KIND_CODE "); query.AppendLine(" , TASK_GROUP_CODE "); query.AppendLine(" , TASK_NAME "); query.AppendLine(" , PLAN_TIME "); query.AppendLine(" , RESULT_TIME "); query.AppendLine(" , MEMO "); query.AppendLine(") "); query.AppendLine("VALUES "); query.AppendLine("( "); query.AppendLine(" @TASK_NO "); query.AppendLine(" , @USER_NO "); query.AppendLine(" , @CREATE_YMD "); query.AppendLine(" , @UPDATE_YMD "); query.AppendLine(" , @TODO_YMD "); query.AppendLine(" , @FINISHED_YMD "); query.AppendLine(" , @TASK_STATUS_CODE "); query.AppendLine(" , @TASK_KIND_CODE "); query.AppendLine(" , @TASK_GROUP_CODE "); query.AppendLine(" , @TASK_NAME "); query.AppendLine(" , @PLAN_TIME "); query.AppendLine(" , @RESULT_TIME "); query.AppendLine(" , @MEMO "); query.AppendLine(") "); command.CommandText = query.ToString(); // パラメーターの設定 command.Parameters.Add(new SqlParameter("@TASK_NO", taskAdd._taskNo)); command.Parameters.Add(new SqlParameter("@USER_NO", taskAdd._userNo)); command.Parameters.Add(new SqlParameter("@CREATE_YMD", taskAdd._createYmd)); command.Parameters.Add(new SqlParameter("@UPDATE_YMD", taskAdd._updateYmd)); command.Parameters.Add(new SqlParameter("@TODO_YMD", taskAdd._todoYmd)); command.Parameters.Add(new SqlParameter("@FINISHED_YMD", taskAdd._finishedYmd)); command.Parameters.Add(new SqlParameter("@TASK_STATUS_CODE", taskAdd._taskStatusCode._code)); command.Parameters.Add(new SqlParameter("@TASK_KIND_CODE", taskAdd._taskKindCode._code)); command.Parameters.Add(new SqlParameter("@TASK_GROUP_CODE", taskAdd._taskGroupCode._code)); command.Parameters.Add(new SqlParameter("@TASK_NAME", taskAdd._taskName)); command.Parameters.Add(new SqlParameter("@PLAN_TIME", taskAdd._planTime)); command.Parameters.Add(new SqlParameter("@RESULT_TIME", taskAdd._resultTime)); command.Parameters.Add(new SqlParameter("@MEMO", taskAdd._memo)); // SQLの実行 command.ExecuteNonQuery(); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } }
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); }
public DataTable TaskChartTable_Select(Flg_Chart_Select flgChartSelect) { // タスク種別インスタンス生成 DataTable taskChartTable = new DataTable(); // 共通部品を生成 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(" REPLACE(FINISHED_YMD, '-', '/') AS FINISHED_YMD "); query.AppendLine(" , FLOOR ( "); query.AppendLine(" CONVERT( FLOAT, "); query.AppendLine(" SUM ( "); query.AppendLine(" CASE WHEN DIFFERENCE_PERCENT < (-1) * PERCENT_TIME "); query.AppendLine(" THEN 1 "); query.AppendLine(" ELSE 0 "); query.AppendLine(" END "); query.AppendLine(" ) "); query.AppendLine(" ) "); query.AppendLine(" / "); query.AppendLine(" NULLIF(CONVERT( FLOAT, COUNT(1)), 0) "); query.AppendLine(" * "); query.AppendLine(" 100 "); query.AppendLine(" ) AS MINUS_OVER_PERCENT "); query.AppendLine(" , FLOOR ( "); query.AppendLine(" CONVERT( FLOAT, "); query.AppendLine(" SUM ( "); query.AppendLine(" CASE WHEN DIFFERENCE_PERCENT > PERCENT_TIME "); query.AppendLine(" THEN 1 "); query.AppendLine(" ELSE 0 "); query.AppendLine(" END "); query.AppendLine(" ) "); query.AppendLine(" ) "); query.AppendLine(" / "); query.AppendLine(" NULLIF(CONVERT( FLOAT, COUNT(1)), 0) "); query.AppendLine(" * "); query.AppendLine(" 100 "); query.AppendLine(" ) AS PLUS_OVER_PERCENT "); query.AppendLine("FROM "); query.AppendLine(" ( "); query.AppendLine(" SELECT "); if (flgChartSelect.CHART_INTERVAL == "DAY") { query.AppendLine(" T_TL.TASK_NO "); query.AppendLine(" , T_TL.FINISHED_YMD "); } else if (flgChartSelect.CHART_INTERVAL == "WEEK") { query.AppendLine(" LEFT(T_TL.FINISHED_YMD, 9) AS FINISHED_YMD "); } else if (flgChartSelect.CHART_INTERVAL == "MONTH") { query.AppendLine(" LEFT(T_TL.FINISHED_YMD, 7) AS FINISHED_YMD "); } query.AppendLine(" , FLOOR ( "); query.AppendLine(" CONVERT( FLOAT, DATEDIFF( MINUTE, T_TL.PLAN_TIME, T_TL.RESULT_TIME ) ) "); query.AppendLine(" / "); query.AppendLine(" NULLIF( CONVERT( FLOAT, DATEDIFF( MINUTE, 0, T_TL.PLAN_TIME ) ), 0) "); query.AppendLine(" * "); query.AppendLine(" 100 "); query.AppendLine(" ) AS DIFFERENCE_PERCENT "); query.AppendLine(" , M_UI.PERCENT_TIME "); query.AppendLine(" FROM TRN_TASK_LIST T_TL "); query.AppendLine(" INNER JOIN MST_USER_INFO M_UI "); query.AppendLine(" ON T_TL.USER_NO = M_UI.USER_NO "); #region 検索条件 // ユーザーNo query.AppendLine(" WHERE T_TL.USER_NO = @USER_NO "); command.Parameters.Add(new SqlParameter("@USER_NO", flgChartSelect.USER_NO)); // タスクステータスコード query.AppendLine(" AND T_TL.TASK_STATUS_CODE = '10' "); // 検索日付条件 if (flgChartSelect.DAY_FROM != new DateTime(0)) { query.AppendLine(" AND T_TL.TODO_YMD >= @DAY_FROM "); command.Parameters.Add(new SqlParameter("@DAY_FROM", flgChartSelect.DAY_FROM)); } if (flgChartSelect.DAY_TO != new DateTime(0)) { query.AppendLine(" AND T_TL.TODO_YMD <= @DAY_TO "); command.Parameters.Add(new SqlParameter("@DAY_TO", flgChartSelect.DAY_TO)); } // タスク種別コード条件 if (flgChartSelect.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", flgChartSelect.TASK_KIND_CODE)); } // タスクグループコード条件 if (flgChartSelect.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", flgChartSelect.TASK_GROUP_CODE)); } #endregion if (flgChartSelect.CHART_INTERVAL == "DAY") { query.AppendLine(" GROUP BY FINISHED_YMD, TASK_NO, PLAN_TIME, RESULT_TIME, PERCENT_TIME "); } else if (flgChartSelect.CHART_INTERVAL == "WEEK") { query.AppendLine(" GROUP BY LEFT(T_TL.FINISHED_YMD, 9), TASK_NO, PLAN_TIME, RESULT_TIME, PERCENT_TIME "); } else if (flgChartSelect.CHART_INTERVAL == "MONTH") { query.AppendLine(" GROUP BY LEFT(T_TL.FINISHED_YMD, 7), TASK_NO, PLAN_TIME, RESULT_TIME, PERCENT_TIME "); } query.AppendLine(" ) TASKLIST_FOR_CHART "); query.AppendLine("GROUP BY FINISHED_YMD "); query.AppendLine("ORDER BY FINISHED_YMD "); command.CommandText = query.ToString(); // SQLの実行 SqlDataAdapter adapter = new SqlDataAdapter(command); adapter.Fill(taskChartTable); } catch (Exception exception) { Console.WriteLine(exception.Message); throw; } finally { // データベースの接続終了 connection.Close(); } return(taskChartTable); }