From 21dec454d0683a21b569230ac4644e6aa414fbd7 Mon Sep 17 00:00:00 2001 From: niushuai233 Date: Fri, 8 Dec 2023 17:50:21 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20:100:=20=E6=B7=BB=E5=8A=A0check=5Fproje?= =?UTF-8?q?ct=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../3.json | 108 ++++++++++++++++++ .../didicheck/biz/dao/CheckProjectDao.java | 29 +++++ .../didicheck/biz/entity/CheckProject.java | 54 +++++++++ .../didicheck/biz/room/DBManager.java | 3 + .../didicheck/biz/room/DiDiCheckDataBase.java | 6 +- .../cc/niushuai/didicheck/util/Toasts.java | 4 +- 6 files changed, 201 insertions(+), 3 deletions(-) create mode 100644 app/schemas/cc.niushuai.didicheck.biz.room.DiDiCheckDataBase/3.json create mode 100644 app/src/main/java/cc/niushuai/didicheck/biz/dao/CheckProjectDao.java create mode 100644 app/src/main/java/cc/niushuai/didicheck/biz/entity/CheckProject.java diff --git a/app/schemas/cc.niushuai.didicheck.biz.room.DiDiCheckDataBase/3.json b/app/schemas/cc.niushuai.didicheck.biz.room.DiDiCheckDataBase/3.json new file mode 100644 index 0000000..262fcea --- /dev/null +++ b/app/schemas/cc.niushuai.didicheck.biz.room.DiDiCheckDataBase/3.json @@ -0,0 +1,108 @@ +{ + "formatVersion": 1, + "database": { + "version": 3, + "identityHash": "f2ca61f32434b82ab65889a8d915a3c6", + "entities": [ + { + "tableName": "t_check_record", + "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER, `check_type` TEXT, `name` TEXT, `check_date` INTEGER, `description` TEXT, `create_date` INTEGER, `deleted` INTEGER, PRIMARY KEY(`id`))", + "fields": [ + { + "fieldPath": "id", + "columnName": "id", + "affinity": "INTEGER", + "notNull": false + }, + { + "fieldPath": "checkType", + "columnName": "check_type", + "affinity": "TEXT", + "notNull": false + }, + { + "fieldPath": "name", + "columnName": "name", + "affinity": "TEXT", + "notNull": false + }, + { + "fieldPath": "checkDate", + "columnName": "check_date", + "affinity": "INTEGER", + "notNull": false + }, + { + "fieldPath": "description", + "columnName": "description", + "affinity": "TEXT", + "notNull": false + }, + { + "fieldPath": "createDate", + "columnName": "create_date", + "affinity": "INTEGER", + "notNull": false + }, + { + "fieldPath": "deleted", + "columnName": "deleted", + "affinity": "INTEGER", + "notNull": false + } + ], + "primaryKey": { + "autoGenerate": false, + "columnNames": [ + "id" + ] + }, + "indices": [], + "foreignKeys": [] + }, + { + "tableName": "t_check_project", + "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER, `name` TEXT, `create_date` INTEGER, `deleted` INTEGER, PRIMARY KEY(`id`))", + "fields": [ + { + "fieldPath": "id", + "columnName": "id", + "affinity": "INTEGER", + "notNull": false + }, + { + "fieldPath": "name", + "columnName": "name", + "affinity": "TEXT", + "notNull": false + }, + { + "fieldPath": "createDate", + "columnName": "create_date", + "affinity": "INTEGER", + "notNull": false + }, + { + "fieldPath": "deleted", + "columnName": "deleted", + "affinity": "INTEGER", + "notNull": false + } + ], + "primaryKey": { + "autoGenerate": false, + "columnNames": [ + "id" + ] + }, + "indices": [], + "foreignKeys": [] + } + ], + "views": [], + "setupQueries": [ + "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)", + "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, 'f2ca61f32434b82ab65889a8d915a3c6')" + ] + } +} \ No newline at end of file diff --git a/app/src/main/java/cc/niushuai/didicheck/biz/dao/CheckProjectDao.java b/app/src/main/java/cc/niushuai/didicheck/biz/dao/CheckProjectDao.java new file mode 100644 index 0000000..38b1749 --- /dev/null +++ b/app/src/main/java/cc/niushuai/didicheck/biz/dao/CheckProjectDao.java @@ -0,0 +1,29 @@ +package cc.niushuai.didicheck.biz.dao; + +import androidx.room.Dao; +import androidx.room.Delete; +import androidx.room.Insert; +import androidx.room.Query; + +import java.util.List; + +import cc.niushuai.didicheck.biz.entity.CheckProject; +import io.reactivex.Completable; +import io.reactivex.Flowable; + +@Dao +public interface CheckProjectDao { + + @Query("SELECT * FROM t_check_project where deleted = 0 order by create_date desc") + Flowable> listAll(); + + @Query("SELECT count(*) FROM t_check_project where deleted = 0 and name = :name") + Flowable countByName(String name); + + @Insert + Completable insertAll(CheckProject... projects); + + @Delete + void delete(CheckProject project); + +} diff --git a/app/src/main/java/cc/niushuai/didicheck/biz/entity/CheckProject.java b/app/src/main/java/cc/niushuai/didicheck/biz/entity/CheckProject.java new file mode 100644 index 0000000..27bc3d2 --- /dev/null +++ b/app/src/main/java/cc/niushuai/didicheck/biz/entity/CheckProject.java @@ -0,0 +1,54 @@ +package cc.niushuai.didicheck.biz.entity; + +import androidx.room.ColumnInfo; +import androidx.room.Entity; +import androidx.room.PrimaryKey; + +@Entity(tableName = "t_check_project") +public class CheckProject { + + @PrimaryKey + private Long id; + + @ColumnInfo(name = "name") + private String name; + + @ColumnInfo(name = "create_date") + private Long createDate; + + @ColumnInfo(name = "deleted") + private Integer deleted; + + + public Long getId() { + return id; + } + + public void setId(Long id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public Long getCreateDate() { + return createDate; + } + + public void setCreateDate(Long createDate) { + this.createDate = createDate; + } + + public Integer getDeleted() { + return deleted; + } + + public void setDeleted(Integer deleted) { + this.deleted = deleted; + } +} diff --git a/app/src/main/java/cc/niushuai/didicheck/biz/room/DBManager.java b/app/src/main/java/cc/niushuai/didicheck/biz/room/DBManager.java index 3585c1c..ac31986 100644 --- a/app/src/main/java/cc/niushuai/didicheck/biz/room/DBManager.java +++ b/app/src/main/java/cc/niushuai/didicheck/biz/room/DBManager.java @@ -5,6 +5,7 @@ import android.content.Context; import androidx.room.Room; import androidx.room.RoomDatabase; +import cc.niushuai.didicheck.biz.dao.CheckProjectDao; import cc.niushuai.didicheck.biz.dao.CheckRecordDao; public class DBManager { @@ -38,4 +39,6 @@ public class DBManager { public CheckRecordDao checkRecordDao() { return getDiDiCheckDataBase().checkRecordDao(); } + + public CheckProjectDao checkProjectDao() {return getDiDiCheckDataBase().checkProjectDao();} } diff --git a/app/src/main/java/cc/niushuai/didicheck/biz/room/DiDiCheckDataBase.java b/app/src/main/java/cc/niushuai/didicheck/biz/room/DiDiCheckDataBase.java index fe86d60..732ea5f 100644 --- a/app/src/main/java/cc/niushuai/didicheck/biz/room/DiDiCheckDataBase.java +++ b/app/src/main/java/cc/niushuai/didicheck/biz/room/DiDiCheckDataBase.java @@ -3,11 +3,15 @@ package cc.niushuai.didicheck.biz.room; import androidx.room.Database; import androidx.room.RoomDatabase; +import cc.niushuai.didicheck.biz.dao.CheckProjectDao; import cc.niushuai.didicheck.biz.dao.CheckRecordDao; +import cc.niushuai.didicheck.biz.entity.CheckProject; import cc.niushuai.didicheck.biz.entity.CheckRecord; -@Database(entities = {CheckRecord.class}, version = 2) +@Database(entities = {CheckRecord.class, CheckProject.class}, version = 3) public abstract class DiDiCheckDataBase extends RoomDatabase { public abstract CheckRecordDao checkRecordDao(); + + public abstract CheckProjectDao checkProjectDao(); } diff --git a/app/src/main/java/cc/niushuai/didicheck/util/Toasts.java b/app/src/main/java/cc/niushuai/didicheck/util/Toasts.java index de94a63..3fde067 100644 --- a/app/src/main/java/cc/niushuai/didicheck/util/Toasts.java +++ b/app/src/main/java/cc/niushuai/didicheck/util/Toasts.java @@ -8,7 +8,7 @@ import cn.hutool.core.util.StrUtil; public class Toasts { public static void shortShow(Context context, String msg) { - shortShow(context, msg, null); + shortShow(context, msg); } public static void shortShow(Context context, String msg, String... params) { @@ -16,7 +16,7 @@ public class Toasts { } public static void longShow(Context context, String msg) { - longShow(context, msg, null); + longShow(context, msg); } public static void longShow(Context context, String msg, String... params) {