$ ls crystal_folder

Laravel-admin記帳本開發途中註解備份

之前Python那個UI因為缺乏登入驗證功能,加上Pandas不是很好做增刪查改,所以專案停滯了

後來發現Laravel-admin似乎可以協助不擅長前端框架的我以較為傳統的方式(類似GUI或模板語言)完成記帳本功能,且效果很不錯,遂改用它開發,所以前陣子才在研究Serverless Laravel部署

不過專案設計途中有蠻多murmur,原先是寫在程式裡,但註解太多會干擾程式碼閱讀,並不會幫助理解

所以決定謄寫到這裡,說實話囤積癖居多,知識價值不高


數學不好篇

20240508更:笑死數學真的不好,寫反了,已勘誤

<?php
         // 只改數字的場合
         // 10 -> 8 need-2
         // 8 -> 10 need+2

         // -10 -> -8 need+2
         // -8 -> -10 need-2
         // 問題是amount不含正負號
         $amountChange = $newRecordAmount - $originRecordAmount; 
         // 2
         // -2
         // -2
         // 2
                                                         
        if ($originRecordType == 'income') {
            $this->updateAccountAmount($originRecordAccount, $amountChange);
            // -2
            // 2
        } else {
            $this->updateAccountAmount($originRecordAccount, -$amountChange);
            // 10要變8需要-2
            // 8要變10需要2
        }

設計思路Murmur

每次改變記帳某些屬性都要異動金額 VS 顯示時再SUM起來

這是朋友給我的思路,但可能我之前在銀行工作過,我覺得減少增加就是要確實減少增加@@

Copilot的回答:

這兩種方法都有其優點,選擇哪種方式主要取決於你的需求和偏好:

  1. 真實地扣除增加得到餘額:這種方式更接近於實際的銀行帳戶操作,每次收入或支出都會即時更新餘額。這種方式的好處是它可以提供實時的賬戶餘額,並且在每次交易後都能立即看到餘額的變化。

  2. 用init去跟支出收入及時互動顯示現在的餘額:這種方式則是在每次需要查詢餘額時,根據所有的收入和支出記錄計算出當前的餘額。這種方式的好處是它不需要在每次交易後都更新餘額,只需要在需要的時候計算餘額即可。

總的來說,如果你希望你的記帳程式能夠提供實時的賬戶餘額,並且在每次交易後都能立即看到餘額的變化,那麼你可能會傾向於選擇第一種方式。如果你不需要實時的賬戶餘額,並且希望能夠在需要的時候計算餘額,那麼你可能會傾向於選擇第二種方式。這完全取決於你的個人需求和偏好。希望這對你有所幫助!

支出收入amount是否帶正負號

當時是希望可以明顯在列表中看到是收入還是支出,所以多這個記帳類別欄位,然後amount都是存絕對值,若要計算,會根據支出或收入判斷正負號(在Python Command Line版本就是這樣設計了)

如果要存負號,讓使用者自己存負號也不是很直覺,可能要根據是收入還是支出在儲存前回調改變要存的值;但顯示如果已經顯示支出卻又帶負號..

存絕對值,UI排序功能就比較令人煩躁了...

但話說UI金額排序有必要嗎?還是顯示在BI?畢竟記帳久了,開銷大的單項只會越來越多,最後就算排序,也只能看到房租、筆電這種項目堆在前面,或許這方面還是用個時間做區間更帶感...?

#Laravel #dev #php