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"/>
+
本月账单记录
清空所有记录
+ 恩格尔系数视图
暂无数据