From eea903f2ddbc26f66b9d1b53219ecf69c9568a18 Mon Sep 17 00:00:00 2001 From: 陈力 <chenli@lotaai.com> Date: 星期二, 13 六月 2023 17:37:30 +0800 Subject: [PATCH] 优化 --- app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDao.java | 90 +++++++++++++++++++++++++++++++------------- 1 files changed, 63 insertions(+), 27 deletions(-) diff --git a/app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDao.java b/app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDao.java index ae2b0f1..2aa0d4b 100644 --- a/app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDao.java +++ b/app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDao.java @@ -22,12 +22,14 @@ * Can be used for QueryBuilder and for referencing column names. */ public static class Properties { - public final static Property Id = new Property(0, long.class, "id", true, "_id"); + public final static Property Id = new Property(0, Long.class, "id", true, "_id"); public final static Property OrderNo = new Property(1, String.class, "orderNo", false, "ORDER_NO"); public final static Property GridNo = new Property(2, String.class, "gridNo", false, "GRID_NO"); - public final static Property State = new Property(3, int.class, "state", false, "STATE"); - public final static Property PutInDate = new Property(4, long.class, "putInDate", false, "PUT_IN_DATE"); - public final static Property TakeCode = new Property(5, String.class, "takeCode", false, "TAKE_CODE"); + public final static Property XuHao = new Property(3, String.class, "xuHao", false, "XU_HAO"); + public final static Property State = new Property(4, int.class, "state", false, "STATE"); + public final static Property PutInDate = new Property(5, String.class, "putInDate", false, "PUT_IN_DATE"); + public final static Property TakeCode = new Property(6, String.class, "takeCode", false, "TAKE_CODE"); + public final static Property CreateTime = new Property(7, String.class, "createTime", false, "CREATE_TIME"); } @@ -43,12 +45,14 @@ public static void createTable(Database db, boolean ifNotExists) { String constraint = ifNotExists? "IF NOT EXISTS ": ""; db.execSQL("CREATE TABLE " + constraint + "\"ORDER\" (" + // - "\"_id\" INTEGER PRIMARY KEY NOT NULL ," + // 0: id - "\"ORDER_NO\" TEXT," + // 1: orderNo + "\"_id\" INTEGER PRIMARY KEY AUTOINCREMENT ," + // 0: id + "\"ORDER_NO\" TEXT UNIQUE ," + // 1: orderNo "\"GRID_NO\" TEXT NOT NULL ," + // 2: gridNo - "\"STATE\" INTEGER NOT NULL ," + // 3: state - "\"PUT_IN_DATE\" INTEGER NOT NULL ," + // 4: putInDate - "\"TAKE_CODE\" TEXT);"); // 5: takeCode + "\"XU_HAO\" TEXT NOT NULL ," + // 3: xuHao + "\"STATE\" INTEGER NOT NULL ," + // 4: state + "\"PUT_IN_DATE\" TEXT," + // 5: putInDate + "\"TAKE_CODE\" TEXT," + // 6: takeCode + "\"CREATE_TIME\" TEXT);"); // 7: createTime } /** Drops the underlying database table. */ @@ -60,67 +64,99 @@ @Override protected final void bindValues(DatabaseStatement stmt, Order entity) { stmt.clearBindings(); - stmt.bindLong(1, entity.getId()); + + Long id = entity.getId(); + if (id != null) { + stmt.bindLong(1, id); + } String orderNo = entity.getOrderNo(); if (orderNo != null) { stmt.bindString(2, orderNo); } stmt.bindString(3, entity.getGridNo()); - stmt.bindLong(4, entity.getState()); - stmt.bindLong(5, entity.getPutInDate()); + stmt.bindString(4, entity.getXuHao()); + stmt.bindLong(5, entity.getState()); + + String putInDate = entity.getPutInDate(); + if (putInDate != null) { + stmt.bindString(6, putInDate); + } String takeCode = entity.getTakeCode(); if (takeCode != null) { - stmt.bindString(6, takeCode); + stmt.bindString(7, takeCode); + } + + String createTime = entity.getCreateTime(); + if (createTime != null) { + stmt.bindString(8, createTime); } } @Override protected final void bindValues(SQLiteStatement stmt, Order entity) { stmt.clearBindings(); - stmt.bindLong(1, entity.getId()); + + Long id = entity.getId(); + if (id != null) { + stmt.bindLong(1, id); + } String orderNo = entity.getOrderNo(); if (orderNo != null) { stmt.bindString(2, orderNo); } stmt.bindString(3, entity.getGridNo()); - stmt.bindLong(4, entity.getState()); - stmt.bindLong(5, entity.getPutInDate()); + stmt.bindString(4, entity.getXuHao()); + stmt.bindLong(5, entity.getState()); + + String putInDate = entity.getPutInDate(); + if (putInDate != null) { + stmt.bindString(6, putInDate); + } String takeCode = entity.getTakeCode(); if (takeCode != null) { - stmt.bindString(6, takeCode); + stmt.bindString(7, takeCode); + } + + String createTime = entity.getCreateTime(); + if (createTime != null) { + stmt.bindString(8, createTime); } } @Override public Long readKey(Cursor cursor, int offset) { - return cursor.getLong(offset + 0); + return cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0); } @Override public Order readEntity(Cursor cursor, int offset) { Order entity = new Order( // - cursor.getLong(offset + 0), // id + cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0), // id cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1), // orderNo cursor.getString(offset + 2), // gridNo - cursor.getInt(offset + 3), // state - cursor.getLong(offset + 4), // putInDate - cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5) // takeCode + cursor.getString(offset + 3), // xuHao + cursor.getInt(offset + 4), // state + cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5), // putInDate + cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6), // takeCode + cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7) // createTime ); return entity; } @Override public void readEntity(Cursor cursor, Order entity, int offset) { - entity.setId(cursor.getLong(offset + 0)); + entity.setId(cursor.isNull(offset + 0) ? null : cursor.getLong(offset + 0)); entity.setOrderNo(cursor.isNull(offset + 1) ? null : cursor.getString(offset + 1)); entity.setGridNo(cursor.getString(offset + 2)); - entity.setState(cursor.getInt(offset + 3)); - entity.setPutInDate(cursor.getLong(offset + 4)); - entity.setTakeCode(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); + entity.setXuHao(cursor.getString(offset + 3)); + entity.setState(cursor.getInt(offset + 4)); + entity.setPutInDate(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); + entity.setTakeCode(cursor.isNull(offset + 6) ? null : cursor.getString(offset + 6)); + entity.setCreateTime(cursor.isNull(offset + 7) ? null : cursor.getString(offset + 7)); } @Override @@ -140,7 +176,7 @@ @Override public boolean hasKey(Order entity) { - throw new UnsupportedOperationException("Unsupported for entities with a non-null key"); + return entity.getId() != null; } @Override -- Gitblit v1.7.1