
目標
- 注文一覧の更新時のバグを修正する
- 会計処理で支払確定が行えないバグを修正する
注文一覧の更新時のバグ
ここでは、注文一覧の更新時のバグを修正します。具体的には「未提供」と「提供済み」の切り替え時の挙動に対してとなります。この部分は、該当アプリケーションの作成時にはうまく動いていた機能ですが、様々なアプリケーションや機能を追加したり、修正を行ったことで、意図しない動きが現れるようになっています。
修正用のブランチ release-order-listブランチを作成します。次のコマンドでブランチを作成します。
$ git checkout -b release-order-list
apps/registerapp/app.py
apps/registerapp/app.py のルート:register_order_listにある次の部分を編集します。
修正前
if filter_date_str:
# datetime-localは"YYYY-MM-DDThh:mm"形式で送られる
filter_date_str = filter_date_str.replace("T", " ") # 時間の間にTが入るので置換
filter_date = datetime.strptime(filter_date_str, "%Y-%m-%d %H:%M")
# 日本時間(JST)を適用
filter_date = filter_date.replace(tzinfo=JST)
修正後
if filter_date_str and filter_date_str.lower() != "none":
try:
filter_date_str = filter_date_str.replace("T", " ")
filter_date = datetime.strptime(filter_date_str, "%Y-%m-%d %H:%M")
filter_date = filter_date.replace(tzinfo=JST)
except ValueError as e:
print("日付変換エラー:", e)
filter_date_str = "" # ← テンプレートにも安全な値を渡す
filter_date = None
Flaskアプリケーションを再起動して、「注文一覧」をクリックします。

「未提供」ボタンをクリックします。エラーにはならず、提供済みに変更されました。

ここまでの内容をGitでコミットします。
$ git status
$ git add .
$ git status
$ git commit –no-verify
Fix: 注文一覧の更新時のバグ修正(20250424)
注文一覧の更新時のバグを修正しています。具体的には「未提供」と「提供済み」の切り替え時の挙動に対してとなります。この部分は、該当アプリケーションの作成時にはうまく動いていた機能ですが、様々なアプリケーションや機能を追加したり、修正を行ったことで、意図しない動きが現れるようになっていました。

上書き保存をしてCOMMIT_EDITMSGファイルを閉じます。
その後、developブランチへマージして、 release-order-listブランチは削除します。
git checkout developコマンドでブランチをdevelopブランチへ切り替えます。
git merge release-order-listコマンドでdevelopブランチへマージします。
次のようなエラーが表示される場合は git restore instance/main.db コマンドでmain.dbを削除します。

利用コマンド
$ git restore instance/main.db

最後にgit branch -d release-order-listコマンドでrelease-order-listブランチを削除します。
会計処理で支払確定が行えないバグ
ここでは、会計処理の時に支払確定が行えないバグについて修正します。この部分は、割引や消費税率を変更した際に、小数点以下の数値が発生し、1円単位のズレが生じるためにおこるものです。
修正用のブランチ release-paybillブランチを作成します。次のコマンドでブランチを作成します。
$ git checkout -b release-paybill
apps/registerapp/app.py
apps/registerapp/app.py のルート:pay_billにある次の部分を編集します。
修正前
bill.total_price = sum(
(order.total * (100 - (order.discount_number or 0)) / 100)
+ (
(order.total * (100 - (order.discount_number or 0)) / 100)
/ 100
* (order.vat_number or 0)
) # VATがない場合は0%
for order in orders
)
expected_total = int(bill.total_price)
修正後
bill.total_price = sum(
int(order.total * (100 - (order.discount_number or 0)) / 100)
+ int(
int(order.total * (100 - (order.discount_number or 0)) / 100)
/ 100
* (order.vat_number or 0)
) # VATがない場合は0%
for order in orders
)
expected_total = int(bill.total_price)
ここまでの内容をGitでコミットします。
$ git status
$ git add .
$ git status
$ git commit –no-verify
Fix: 会計処理で支払確定が行えないバグ修正(20250424)
会計処理の時に支払確定が行えないバグについて修正しています。この部分は、割引や消費税率を変更した際に、小数点以下の数値が発生し、1円単位のズレが生じるためにおこるものでした。プログラム内の計算部分にキャストを行い修正しています。
上書き保存をしてCOMMIT_EDITMSGファイルを閉じます。
その後、developブランチへマージして、 release-paybillブランチは削除します。
git checkout developコマンドでブランチをdevelopブランチへ切り替えます。
git merge release-paybillコマンドでdevelopブランチへマージします。
次のようなエラーが表示される場合は git restore instance/main.db コマンドでmain.dbを削除します。

利用コマンド
$ git restore instance/main.db

最後にgit branch -d release-paybillコマンドでrelease-paybillブランチを削除します。
今回は以上になります。


ブックマークのすすめ
「ほわほわぶろぐ」を常に検索するのが面倒だという方はブックマークをお勧めします。ブックマークの設定は別記事にて掲載しています。

