Example #1
0
        /// <summary> グリッドボタンでの削除処理
        /// <param name="model">削除対象の情報</param>
        private void GridDelete(KanjaYoyakuModel model)
        {
            string          strCon = "Server=localhost; Database=medical_manegement; Uid=root; Pwd=nekonyanta";
            MySqlConnection con    = new MySqlConnection(strCon);

            con.Open();
            try
            {
                // DELETE文を作成しパラメータを追加
                StringBuilder sb = new StringBuilder();
                MySqlCommand  cmd;
                string        msg;
                if (mode) // 患者一覧モードなら
                {
                    sb.AppendLine("DELETE FROM KANJA");
                    sb.AppendLine("WHERE");
                    sb.AppendLine("ID=@ID");
                    cmd = new MySqlCommand(sb.ToString(), con);
                    cmd.Parameters.Add(new MySqlParameter("@ID", model.Id));
                    msg = $"患者ID:{model.Id}\n氏名:{model.Name} 様\n";
                }
                else         // 予約一覧モードなら
                {
                    sb.AppendLine("DELETE FROM YOYAKU");
                    sb.AppendLine("WHERE");
                    sb.AppendLine("    患者ID=@ID");
                    sb.AppendLine("AND 予約日=@YOYAKUDAY");
                    sb.AppendLine("AND 予約時間=@YOYAKUTIME");
                    sb.AppendLine("AND 受診科=@SINRYOKA");
                    cmd = new MySqlCommand(sb.ToString(), con);
                    cmd.Parameters.Add(new MySqlParameter("@ID", model.Id));
                    cmd.Parameters.Add(new MySqlParameter("@YOYAKUDAY", model.YoyakuDay));
                    cmd.Parameters.Add(new MySqlParameter("@YOYAKUTIME", model.TimeTableNum));
                    cmd.Parameters.Add(new MySqlParameter("@SINRYOKA", model.SinryokaNum));
                    msg = $"患者ID:{model.Id}\n氏名:{model.Name} 様\n予約日:{model.YoyakuDay}\n予約時間:{model.YoyakuTime}\n受診科:{model.Sinryoka}";
                }

                DialogResult result = MessageBox.Show($"{msg}\nこの情報を削除しますか?", "最終確認", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                if (result == DialogResult.OK)
                {
                    cmd.ExecuteNonQuery();
                    MessageBox.Show($"{msg}\nこの情報を削除しました");
                    StartMenuForm.CheckExistKanja(); // 登録受診者数を確認し0人なら新規登録を促す
                }
                else
                {
                    MessageBox.Show("処理をキャンセルしました");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show($"エラー詳細:\n{ex.Message}:\n{ex.InnerException}");
            }
            finally
            {
                con.Close();
            }
        }
Example #2
0
        /// <summary> 患者情報を削除する
        private void Sakujo()
        {
            string          strCon = "Server=localhost; Database=medical_manegement; Uid=root; Pwd=nekonyanta";
            MySqlConnection con    = new MySqlConnection(strCon);

            con.Open();
            try
            {
                // DELETE文を作成
                StringBuilder sb = new StringBuilder();
                sb.AppendLine("DELETE FROM KANJA");
                sb.AppendLine("WHERE");
                sb.AppendLine("ID=@ID");
                // コマンドを生成し実行
                MySqlCommand cmd = new MySqlCommand(sb.ToString(), con);
                cmd.Parameters.Add(new MySqlParameter("@ID", cmbID.SelectedValue));
                // メッセージボックスの選択内容で分岐(Yesの時だけ登録させる)
                DialogResult result = MessageBox.Show($"患者ID:{cmbID.SelectedValue}\n氏名:{txtName.Text} 様\nこの患者情報を削除しますか?", "最終確認", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
                if (result == DialogResult.OK)
                {
                    cmd.ExecuteNonQuery();
                    MessageBox.Show($"患者ID:{cmbID.SelectedValue}の情報を削除しました");
                    mode = true;                     // モードの初期化
                    InitJusinsyaItems();             // 入力をデフォルトに戻す
                    StartMenuForm.CheckExistKanja(); // 登録受診者数を確認し0人なら新規登録を促す
                }
                else
                {
                    MessageBox.Show("処理をキャンセルしました");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show($"エラー詳細:\n{ex.Message}:\n{ex.InnerException}");
            }
            finally
            {
                con.Close();
            }
        }