app/build.gradle | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/AndroidManifest.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/lotaai/canguiayw/MainActivity.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/lotaai/canguiayw/SelectFragment.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/lotaai/canguiayw/SettingFragment.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/lotaai/canguiayw/sqllitedb/DaoMaster.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/lotaai/canguiayw/sqllitedb/Order.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDao.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDetail.java | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
app/build.gradle
@@ -31,7 +31,7 @@ apply plugin: 'com.android.application' apply plugin: 'org.greenrobot.greendao' greendao { schemaVersion 1 //数据库版本号 schemaVersion 4//数据库版本号 daoPackage 'com.lotaai.canguiayw.sqllitedb'// 设置DaoMaster、DaoSession、Dao 包名 targetGenDir 'src/main/java'//设置DaoMaster、DaoSession、Dao目录,请注意,这里路径用/不要用. generateTests false //设置为true以自动生成单元测试。 app/src/main/AndroidManifest.xml
@@ -23,7 +23,7 @@ </intent-filter> </activity> <activity android:name=".TakeActivity"/> <activity android:name="ManageActivity"/> <activity android:name="ManageActivity" android:windowSoftInputMode="adjustPan"/> <activity android:name=".AdminLoginActivity"/> <service app/src/main/java/com/lotaai/canguiayw/MainActivity.java
@@ -1,6 +1,7 @@ package com.lotaai.canguiayw; import androidx.appcompat.app.AppCompatActivity; import androidx.arch.core.executor.DefaultTaskExecutor; import android.content.Context; import android.content.Intent; @@ -12,13 +13,21 @@ import android.widget.ImageView; import com.blankj.utilcode.util.LogUtils; import com.blankj.utilcode.util.TimeUtils; import com.lotaai.canguiayw.device.CanGuiCommand; import com.lotaai.canguiayw.device.CanguiStatus; import com.lotaai.canguiayw.device.DeviceMessage; import com.lotaai.canguiayw.device.DeviceType; import com.lotaai.canguiayw.device.MessageType; import com.lotaai.canguiayw.device.service.CanGuiService; import com.lotaai.canguiayw.sqllitedb.Order; import com.lotaai.canguiayw.sqllitedb.OrderDetail; import com.lotaai.canguiayw.sqllitedb.SqlliteDbManage; import org.greenrobot.eventbus.EventBus; import java.util.Date; import java.util.Random; public class MainActivity extends AppCompatActivity { private Context context; @@ -41,6 +50,28 @@ return true; } }); testData(); } public void testData(){ Random random = new Random(); int rt= random.nextInt(10000-1000+1) + 1000; Order order = new Order(); order.setOrderNo("GB"+ rt); order.setGridNo("1"); order.setTakeCode("526895"); order.setState(0); Date time = new Date(); order.setPutInDate(TimeUtils.date2String(time,"yyyy-MM-dd HH:mm:ss")); SqlliteDbManage.getInstance().insertOrderInfo(order); for (int p = 0; p < 3;p ++){ OrderDetail detail = new OrderDetail(); detail.setItemName("项目"+p); detail.setNum(p); detail.setOrderNo(order.getOrderNo()); SqlliteDbManage.getInstance().insertOrUpdateOrderDetailInfo(detail); } LogUtils.i("插入订单数据:" + order.getOrderNo()); } public void gotoSetting(View view){ app/src/main/java/com/lotaai/canguiayw/SelectFragment.java
@@ -16,14 +16,20 @@ import androidx.fragment.app.Fragment; import com.bin.david.form.core.SmartTable; import com.bin.david.form.core.TableConfig; import com.bin.david.form.data.CellInfo; import com.bin.david.form.data.column.Column; import com.bin.david.form.data.format.IFormat; import com.bin.david.form.data.format.bg.IBackgroundFormat; import com.bin.david.form.data.format.bg.ICellBackgroundFormat; import com.bin.david.form.data.format.selected.ISelectFormat; import com.bin.david.form.data.style.FontStyle; import com.bin.david.form.data.table.TableData; import com.blankj.utilcode.util.LogUtils; import com.blankj.utilcode.util.ScreenUtils; import com.lotaai.canguiayw.common.SettingConfig; import com.lotaai.canguiayw.sqllitedb.Order; import com.lotaai.canguiayw.sqllitedb.SqlliteDbManage; import org.greenrobot.eventbus.EventBus; @@ -62,19 +68,9 @@ Column<String> gridNo = new Column<>("格子", "gridNo"); Column<String> orderNo = new Column<>("订单号", "orderNo"); Column<String> putIntime = new Column<>("放入时间", "putInDate"); Column<String> takeCode = new Column<>("操作", "takeCode"); Column<String> takeCode = new Column<>("取餐码", "takeCode"); List<Order> lists = new ArrayList<>(); for (int i = 0;i < 3; i++) { Order order = new Order(); order.setGridNo(Integer.toString(i)); order.setOrderNo("G202305016001-"+Integer.toString(i)); Date dd = new Date(); order.setPutInDate(dd.getTime()); order.setState(0); order.setTakeCode("56897"); lists.add(order); } List<Order> lists = SqlliteDbManage.getInstance().selectOrtdersByState(0); TableData<Order> tableData = new TableData<Order>("测试表格名字",lists,gridNo, orderNo, putIntime, takeCode); //设置数据 @@ -101,25 +97,35 @@ // 设置表格主标题 setTable.setTableData(tableData); //addHandler.sendEmptyMessageDelayed(0,10*1000); clickDetail(); } private Handler addHandler = new Handler() { @Override public void handleMessage(Message msg) { List<Order> lists = new ArrayList<>(); for (int i = 9;i < 13; i++) { Order order = new Order(); order.setGridNo(Integer.toString(i)); order.setOrderNo("G202305016001-"+Integer.toString(i)); Date dd = new Date(); order.setPutInDate(dd.getTime()); order.setState(0); order.setTakeCode("56897"); lists.add(order); } setTable.addData(lists,true); public void clickDetail(){ if (setTable!=null){ setTable.getTableData().setOnRowClickListener(new TableData.OnRowClickListener() { @Override public void onClick(Column column, Object o, int col, int row) { LogUtils.i("click row " + row); final int rr = row; setTable.getConfig().setContentCellBackgroundFormat(new ICellBackgroundFormat<CellInfo>() { @Override public void drawBackground(Canvas canvas, Rect rect, CellInfo cellInfo, Paint paint) { if(cellInfo.row!=rr){ paint.setColor(Color.GRAY); } else{ paint.setColor(Color.BLUE); } canvas.drawRect(rect,paint); } @Override public int getTextColor(CellInfo cellInfo) { return 0; } }); } }); } }; } } app/src/main/java/com/lotaai/canguiayw/SettingFragment.java
@@ -21,6 +21,7 @@ import androidx.fragment.app.Fragment; import com.bin.david.form.core.SmartTable; import com.blankj.utilcode.util.KeyboardUtils; import com.blankj.utilcode.util.LogUtils; import org.angmarch.views.NiceSpinner; @@ -47,27 +48,24 @@ } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, public View onCreateView(LayoutInflater inflater, final ViewGroup container, Bundle savedInstanceState) { if (root == null) { root = inflater.inflate(R.layout.framgment_setting, container, false); } context = container.getContext(); initSpinner(); /* Fragment中,注册 * 接收MainActivity的Touch回调的对象 * 重写其中的onTouchEvent函数,并进行该Fragment的逻辑处理 */ ManageActivity.MyTouchListener myTouchListener = new ManageActivity.MyTouchListener() { @Override public void onTouchEvent(MotionEvent event) { System.out.println("23333333333333333"); HideKeyboard(container.getChildAt(0)); } }; // 将myTouchListener注册到分发列表 ((ManageActivity)this.getActivity()).registerMyTouchListener(myTouchListener); return root; } @@ -90,4 +88,13 @@ }); } public static void HideKeyboard(View v) { InputMethodManager imm = ( InputMethodManager ) v.getContext( ).getSystemService( Context.INPUT_METHOD_SERVICE ); if ( imm.isActive( ) ) { imm.hideSoftInputFromWindow( v.getApplicationWindowToken( ) , 0 ); } } } app/src/main/java/com/lotaai/canguiayw/sqllitedb/DaoMaster.java
@@ -14,10 +14,10 @@ // THIS CODE IS GENERATED BY greenDAO, DO NOT EDIT. /** * Master of DAO (schema version 1): knows all DAOs. * Master of DAO (schema version 4): knows all DAOs. */ public class DaoMaster extends AbstractDaoMaster { public static final int SCHEMA_VERSION = 1; public static final int SCHEMA_VERSION = 4; /** Creates underlying database table using DAOs. */ public static void createAllTables(Database db, boolean ifNotExists) { app/src/main/java/com/lotaai/canguiayw/sqllitedb/Order.java
@@ -4,21 +4,23 @@ import org.greenrobot.greendao.annotation.Id; import org.greenrobot.greendao.annotation.NotNull; import org.greenrobot.greendao.annotation.Generated; import org.greenrobot.greendao.annotation.Unique; @Entity public class Order { @Id private long id; @Id(autoincrement = true) private Long id; @Unique private String orderNo; @NotNull private String gridNo; @NotNull private int state;//状态;0-未存餐 1-已存餐 2-已取餐 3-取消 private long putInDate; private String putInDate; private String takeCode; @Generated(hash = 2118332125) public Order(long id, String orderNo, @NotNull String gridNo, int state, long putInDate, String takeCode) { @Generated(hash = 878135649) public Order(Long id, String orderNo, @NotNull String gridNo, int state, String putInDate, String takeCode) { this.id = id; this.orderNo = orderNo; this.gridNo = gridNo; @@ -29,10 +31,10 @@ @Generated(hash = 1105174599) public Order() { } public long getId() { public Long getId() { return this.id; } public void setId(long id) { public void setId(Long id) { this.id = id; } public String getOrderNo() { @@ -53,10 +55,10 @@ public void setState(int state) { this.state = state; } public long getPutInDate() { public String getPutInDate() { return this.putInDate; } public void setPutInDate(long putInDate) { public void setPutInDate(String putInDate) { this.putInDate = putInDate; } public String getTakeCode() { @@ -65,4 +67,5 @@ public void setTakeCode(String takeCode) { this.takeCode = takeCode; } } } app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDao.java
@@ -22,11 +22,11 @@ * 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 PutInDate = new Property(4, String.class, "putInDate", false, "PUT_IN_DATE"); public final static Property TakeCode = new Property(5, String.class, "takeCode", false, "TAKE_CODE"); } @@ -43,11 +43,11 @@ 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 "\"PUT_IN_DATE\" TEXT," + // 4: putInDate "\"TAKE_CODE\" TEXT);"); // 5: takeCode } @@ -60,7 +60,11 @@ @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) { @@ -68,7 +72,11 @@ } stmt.bindString(3, entity.getGridNo()); stmt.bindLong(4, entity.getState()); stmt.bindLong(5, entity.getPutInDate()); String putInDate = entity.getPutInDate(); if (putInDate != null) { stmt.bindString(5, putInDate); } String takeCode = entity.getTakeCode(); if (takeCode != null) { @@ -79,7 +87,11 @@ @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) { @@ -87,7 +99,11 @@ } stmt.bindString(3, entity.getGridNo()); stmt.bindLong(4, entity.getState()); stmt.bindLong(5, entity.getPutInDate()); String putInDate = entity.getPutInDate(); if (putInDate != null) { stmt.bindString(5, putInDate); } String takeCode = entity.getTakeCode(); if (takeCode != null) { @@ -97,17 +113,17 @@ @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 + 4) ? null : cursor.getString(offset + 4), // putInDate cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5) // takeCode ); return entity; @@ -115,11 +131,11 @@ @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.setPutInDate(cursor.isNull(offset + 4) ? null : cursor.getString(offset + 4)); entity.setTakeCode(cursor.isNull(offset + 5) ? null : cursor.getString(offset + 5)); } @@ -140,7 +156,7 @@ @Override public boolean hasKey(Order entity) { throw new UnsupportedOperationException("Unsupported for entities with a non-null key"); return entity.getId() != null; } @Override app/src/main/java/com/lotaai/canguiayw/sqllitedb/OrderDetail.java
@@ -7,14 +7,14 @@ @Entity public class OrderDetail { @Id private long id; @Id(autoincrement = true) private Long id; @NotNull private String orderNo; private String itemName; private int num; @Generated(hash = 1442626585) public OrderDetail(long id, @NotNull String orderNo, String itemName, int num) { @Generated(hash = 547448086) public OrderDetail(Long id, @NotNull String orderNo, String itemName, int num) { this.id = id; this.orderNo = orderNo; this.itemName = itemName; @@ -23,10 +23,10 @@ @Generated(hash = 268085433) public OrderDetail() { } public long getId() { public Long getId() { return this.id; } public void setId(long id) { public void setId(Long id) { this.id = id; } public String getOrderNo() {