//選択した商品を返却 ボタン
        protected void Button3_Click(object sender, EventArgs e)
        {
            if (Do_You_Have_Any_Unreturned_DVDs())
            {
                //未返却のDVDがある場合

                List <int> unreturned_id     = new List <int>();
                string     str_unreturned_id = Session["unreturned_id"].ToString();
                //Session.Remove("unreturned_id");
                string[] arr = str_unreturned_id.Split(',');

                //選択されたdvdのIDを格納します。重複したIDが入っている可能性がありますが正常です。
                List <string> selected_dvd_id = new List <string>();
                List <string> selected_id     = new List <string>();
                int           dvd_num         = CheckBoxList1.Items.Count;
                for (int i = 0; i < dvd_num; i++)
                {
                    if (CheckBoxList1.Items[i].Selected)
                    {
                        //選択されていたら

                        //選択されたレンタルidを抽出
                        selected_id.Add(arr[i]);

                        //選択されたdvdの名前をidに変換します
                        string name_to_id = C_Sasaki_Common.Convert_DVD_Name_To_ID(CheckBoxList1.Items[i].Value);

                        //格納。
                        selected_dvd_id.Add(name_to_id);
                    }
                }
                //1つ以上選択されたDVDがあるか
                if (selected_dvd_id.Count != 0)
                {
                    Label3.Text = "";
                    Session.Remove("confirmation_error");

                    List <string> stock_update_date_time_storehouse;
                    //dvd_idからUpdate_Date_Timeを求める
                    stock_update_date_time_storehouse = C_Sasaki_Common.Get_Stock_Update_Date_Time_For_DVD_Id(selected_dvd_id);

                    List <string> rental_update_date_time_storehouse;
                    //レンタルDBのIdからUpdate_Date_Timeを求める
                    rental_update_date_time_storehouse = C_Sasaki_Common.Get_Rental_Update_Date_Time_For_Rental_Id(selected_id);


                    //返却管理画面で返却を押した時のUpdateDateTimeを格納。
                    Session["management_time_stock_update_datetime"]  = string.Join(",", stock_update_date_time_storehouse);
                    Session["management_time_rental_update_datetime"] = string.Join(",", rental_update_date_time_storehouse);

                    Session["Member_ID"]     = m_member_id;
                    Session["Select_DVD_ID"] = string.Join(",", selected_dvd_id);
                    Session["Selected_ID"]   = string.Join(",", selected_id);
                    Response.Redirect("/sasaki_masayuki/101_return_confirmation/return_confirmation.aspx");
                }
            }
        }
        //確定ボタン
        protected void Button2_Click(object sender, EventArgs e)
        {
            //返却管理画面時のUpdate_datetimeの取り出し。
            string management_time_stock_update_datetime_str  = Session["management_time_stock_update_datetime"].ToString();
            string management_time_rental_update_datetime_str = Session["management_time_rental_update_datetime"].ToString();

            string[] management_time_stock_update_datetime  = management_time_stock_update_datetime_str.Split(',');
            string[] management_time_rental_update_datetime = management_time_rental_update_datetime_str.Split(',');


            //dvdidの文字列取得
            String selected_dvd_id_str = Session["Select_DVD_ID"].ToString();

            //,で区切られたdvdidを分割
            string[] selected_dvd_id_arr = selected_dvd_id_str.Split(',');
            //リストに変換
            List <string> selected_dvd_id = new List <string>();

            selected_dvd_id.AddRange(selected_dvd_id_arr);

            //選択されたIDの取得
            string selected_id_str = Session["Selected_ID"].ToString();

            //Session.Remove("Selected_ID");
            //選択されたIDを配列に格納
            string[]      selcted_id_arr = selected_id_str.Split(',');
            List <string> selected_id    = new List <string>();

            selected_id.AddRange(selcted_id_arr);


            //返却確認画面時のUpdate_datetimeの取り出し
            List <string> confirmation_time_stock_update_datetime  = C_Sasaki_Common.Get_Stock_Update_Date_Time_For_DVD_Id(selected_dvd_id);
            List <string> confirmation_time_rental_update_datetime = C_Sasaki_Common.Get_Rental_Update_Date_Time_For_Rental_Id(selected_id);

            //datetimeが一致するか確認
            //一致していない場合falseがはいるbool
            bool b_sync = true;
            //stockの数を比較の回数とする
            int check_num = confirmation_time_stock_update_datetime.Count;

            for (int i = 0; i < check_num; i++)
            {
                //管理画面時の更新日時と確認時の更新日時が一致しているかの判定をしていく


                if (management_time_stock_update_datetime[i] != confirmation_time_stock_update_datetime[i])
                {
                    //ストックの更新日時が一致していない場合

                    b_sync = false;
                }

                if (management_time_rental_update_datetime[i] != confirmation_time_rental_update_datetime[i])
                {
                    //レンタルの更新日時が一致していない場合

                    b_sync = false;
                }
            }

            if (b_sync)
            {
                //一致している場合

                int user_id        = C_Sasaki_Common.Login_Name_To_Id(Request);
                int return_dvd_num = return_dvd_id_list.Count();
                for (int i = 0; i < return_dvd_num; i++)
                {
                    //日付を求める
                    DateTime dt = DateTime.Now;

                    //StockDBの処理
                    {
                        //更新日時を更新
                        C_Sasaki_Common.Update_SQL("Update [dbo].[Stock] SET UpdateDateTime = '" + dt.ToString("yyyy-MM-dd HH:mm:ss.fff") + "' Where DVDId = " + return_dvd_id_list[i]);
                        //更新者を現在のユーザーに設定
                        C_Sasaki_Common.Update_SQL("Update [dbo].[Stock] SET UpdateUserId = " + user_id + " Where DVDId = " + return_dvd_id_list[i]);
                        //Stockを増やす。
                        C_Sasaki_Common.Update_SQL("Update [dbo].[Stock] SET Quantity += 1 Where DVDId = " + return_dvd_id_list[i]);
                    }

                    //RentalDBの処理
                    {
                        //更新日時を更新
                        C_Sasaki_Common.Update_SQL("Update [dbo].[Rental] SET UpdateDateTime = '" + dt.ToString("yyyy-MM-dd HH:mm:ss.fff") + "' Where Id = " + selected_id[i]);
                        //更新者を現在のユーザーに設定
                        C_Sasaki_Common.Update_SQL("Update [dbo].[Rental] SET UpdateUserId = " + user_id + " Where Id = " + selected_id[i]);
                        //RentalDBのIDと選択されたIDが一致する物のIsReturnedフラグをtrueに設定。(※一つだけ)
                        C_Sasaki_Common.Update_SQL("Update [dbo].[Rental] SET IsReturned = 1 Where " + selected_id[i] + " =  Id");
                    }
                }
            }
            else
            {
                //一致していない
                Session["confirmation_error"] = "返却確認時にエラー(競合)が発生しました。もう一度やり直してください。";
            }

            Termination_Process();
            Redirect_Regression_Management();
        }