From 974907c23d262b1f86642cb915bd8245d131a8b1 Mon Sep 17 00:00:00 2001 From: guohuan78 <781213930@qq.com> Date: Sat, 17 Dec 2022 21:47:01 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E6=81=A9=E6=A0=BC=E5=B0=94?= =?UTF-8?q?=E7=B3=BB=E6=95=B0=E8=A7=86=E5=9B=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/dictionaries/78121.xml | 3 +++ README.md | 2 +- .../eb/easy_bookkeeping/SettingActivity.java | 24 +++++++++++++++++++ .../com/eb/easy_bookkeeping/db/DBManager.java | 14 +++++++++++ .../eb/easy_bookkeeping/db/DBOpenHelper.java | 6 +++++ app/src/main/res/layout/activity_setting.xml | 10 ++++++++ app/src/main/res/values/strings.xml | 1 + 7 files changed, 59 insertions(+), 1 deletion(-) diff --git a/.idea/dictionaries/78121.xml b/.idea/dictionaries/78121.xml index d3ef90e..d9b2767 100644 --- a/.idea/dictionaries/78121.xml +++ b/.idea/dictionaries/78121.xml @@ -5,6 +5,9 @@ beizhu datas dialogmore + engel + engle + foodcost huàn inlist outlist diff --git a/README.md b/README.md index 86c2147..5256f76 100644 --- a/README.md +++ b/README.md @@ -99,7 +99,7 @@ 1. 尝试写一下大作业的报告,遇到问题有需要补充的再继续开发 2. 添加在固定时间指定备注的功能 √ -3. 添加恩格尔系数视图 +3. 添加恩格尔系数视图 √ 4. 添加定时记账功能 5. 备份功能 6. 在记录界面添加点击弹出修改框可以修改备注的功能 √ \ No newline at end of file diff --git a/app/src/main/java/com/eb/easy_bookkeeping/SettingActivity.java b/app/src/main/java/com/eb/easy_bookkeeping/SettingActivity.java index 7301669..63e0e42 100644 --- a/app/src/main/java/com/eb/easy_bookkeeping/SettingActivity.java +++ b/app/src/main/java/com/eb/easy_bookkeeping/SettingActivity.java @@ -26,6 +26,9 @@ public void onClick(View view) { case R.id.setting_tv_clear: showDeleteDialog(); break; + case R.id.setting_tv_engel: + showEngelCoefficient(); + break; } } @@ -43,4 +46,25 @@ public void onClick(DialogInterface dialog, int which) { }); builder.create().show(); } + + private void showEngelCoefficient() { + float engelCoefficient = DBManager.getEngelCoefficient(); + String hint; + if (engelCoefficient < 0.3) { + hint = "最富裕!钱花不完可以多多打赏哦~"; + } else if (engelCoefficient < 0.4) { + hint = "富裕~钱挣够了可以好好享受生活呀"; + } else if (engelCoefficient < 0.5) { + hint = "小康,生活还是很滋润滴。"; + } else if (engelCoefficient < 0.59) { + hint = "温饱,争取为全面建成小康社会贡献一份力量!"; + } else { + hint = "贫困,脱贫攻坚战漏网之鱼嘛呜呜呜"; + } + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle("恩格尔系数为:") + .setMessage(String.format("%.3f", engelCoefficient) + "\n" + hint) + .setNegativeButton("确定", null); + builder.create().show(); + } } diff --git a/app/src/main/java/com/eb/easy_bookkeeping/db/DBManager.java b/app/src/main/java/com/eb/easy_bookkeeping/db/DBManager.java index aac685f..4d1a7fa 100644 --- a/app/src/main/java/com/eb/easy_bookkeeping/db/DBManager.java +++ b/app/src/main/java/com/eb/easy_bookkeeping/db/DBManager.java @@ -81,6 +81,20 @@ public static void updateItemBeizhuFromAccounttbById(int id, String beizhu){ } return list; } + /** + * 获取恩格尔系数值 + * */ + public static float getEngelCoefficient(){ + String sql = "select * from foodcostsumview"; + Cursor cursor = db.rawQuery(sql, null); + cursor.moveToNext(); + float foodcost = cursor.getFloat(cursor.getColumnIndex("foodcost")); + sql = "select sum(money) as sum from accounttb where kind = 0"; + cursor = db.rawQuery(sql, null); + cursor.moveToNext(); + float sum = cursor.getFloat(cursor.getColumnIndex("sum")); + return foodcost/sum; + } /* * 获取记账表当中某一月的所有支出或者收入情况 * */ diff --git a/app/src/main/java/com/eb/easy_bookkeeping/db/DBOpenHelper.java b/app/src/main/java/com/eb/easy_bookkeeping/db/DBOpenHelper.java index 685cdad..01b81cc 100644 --- a/app/src/main/java/com/eb/easy_bookkeeping/db/DBOpenHelper.java +++ b/app/src/main/java/com/eb/easy_bookkeeping/db/DBOpenHelper.java @@ -24,6 +24,12 @@ public void onCreate(SQLiteDatabase db) { sql = "create table accounttb(id integer primary key autoincrement,typename varchar(10),ImageId integer,beizhu varchar(80),money float," + "time varchar(60),year integer,month integer,day integer,kind integer)"; db.execSQL(sql); + createFoodCostSumView(db); + } + + private void createFoodCostSumView(SQLiteDatabase db) { + String sql = "create view foodcostsumview as select sum(money) as foodcost from accounttb where kind = 0 and typename in (select typename from typetb where id = 1 )"; + db.execSQL(sql); } private void insertType(SQLiteDatabase db) { diff --git a/app/src/main/res/layout/activity_setting.xml b/app/src/main/res/layout/activity_setting.xml index dc14502..068352f 100644 --- a/app/src/main/res/layout/activity_setting.xml +++ b/app/src/main/res/layout/activity_setting.xml @@ -32,6 +32,16 @@ android:textStyle="bold" android:padding="15dp" android:background="@color/white"/> + 本月账单记录 清空所有记录 + 恩格尔系数视图 暂无数据