From 2b3b516f18cf894c93912096873ed80b494ea098 Mon Sep 17 00:00:00 2001 From: wjsjwr Date: Sat, 22 Feb 2025 17:25:21 +0800 Subject: [PATCH] bug fix: zero division error --- .idea/workspace.xml | 23 +++++++++++++++-------- bookkeeper/Cargo.lock | 2 +- bookkeeper/Cargo.toml | 2 +- bookkeeper/src/main.rs | 13 +++++++++++-- 4 files changed, 28 insertions(+), 12 deletions(-) diff --git a/.idea/workspace.xml b/.idea/workspace.xml index 0faba63..ca1bf27 100644 --- a/.idea/workspace.xml +++ b/.idea/workspace.xml @@ -10,12 +10,10 @@ - - + - - + - @@ -304,7 +310,8 @@ - diff --git a/bookkeeper/Cargo.lock b/bookkeeper/Cargo.lock index c471d0e..f5d29db 100644 --- a/bookkeeper/Cargo.lock +++ b/bookkeeper/Cargo.lock @@ -481,7 +481,7 @@ dependencies = [ [[package]] name = "bookkeeper" -version = "0.2.0" +version = "0.2.1" dependencies = [ "bcrypt", "chrono", diff --git a/bookkeeper/Cargo.toml b/bookkeeper/Cargo.toml index 62ed8b6..a7d9eab 100644 --- a/bookkeeper/Cargo.toml +++ b/bookkeeper/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "bookkeeper" -version = "0.2.0" +version = "0.2.1" edition = "2021" [dependencies] diff --git a/bookkeeper/src/main.rs b/bookkeeper/src/main.rs index bf9c519..7c88657 100644 --- a/bookkeeper/src/main.rs +++ b/bookkeeper/src/main.rs @@ -1,3 +1,4 @@ +use rust_decimal::prelude::Zero; #[macro_use] extern crate rocket; @@ -235,8 +236,16 @@ async fn index( } } - let pct = gain / bought; - let net_pct = net_gain / net_bought; + let pct = if bought.is_zero() { + Decimal::zero() + } else { + gain / bought + }; + let net_pct = if net_bought.is_zero() { + Decimal::zero() + } else { + net_gain / net_bought + }; Ok(Template::render( "index",