Browse Source

Merge remote-tracking branch 'origin/鸿鹄中学一拖二' into 鸿鹄中学一拖二

# Conflicts:
#	app/src/main/java/com/bonait/bnframework/business/ConfigData.java
鸿鹄中学一拖二
pry 3 months ago
parent
commit
21c38a7a90
6 changed files with 451 additions and 75 deletions
  1. +8
    -0
      app/build.gradle
  2. +31
    -28
      app/src/main/java/com/bonait/bnframework/business/ConfigData.java
  3. +331
    -0
      app/src/main/java/com/bonait/bnframework/common/db/util/DBListDataUtil.java
  4. +1
    -0
      app/src/main/java/com/bonait/bnframework/common/model/mode/MouthFacingEnum.java
  5. +15
    -4
      app/src/main/java/com/bonait/bnframework/device_control.java
  6. +65
    -43
      app/src/main/res/layout/datatab/layout/activity_device_control.xml

+ 8
- 0
app/build.gradle View File

@@ -171,6 +171,14 @@ dependencies {
implementation 'com.contrarywind:Android-PickerView:3.2.6'

coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.0.9'

api 'org.greenrobot:eventbus:3.1.1'

//日志工具 可定位代码行数
api 'com.apkfuns.logutils:library:1.7.5'


//http服务器组件
implementation 'org.nanohttpd:nanohttpd:2.3.1'

}

+ 31
- 28
app/src/main/java/com/bonait/bnframework/business/ConfigData.java View File

@@ -8,14 +8,19 @@ import android.os.Handler;
import android.os.Message;
import android.util.Log;


import com.bonait.bnframework.MainApplication;

import com.bonait.bnframework.HBL.APICallback;
import com.bonait.bnframework.HBL.APIHelper;
import com.bonait.bnframework.HBL.Dialog.WaitDialog;
import com.bonait.bnframework.HBL.Task;

import com.bonait.bnframework.R;
import com.bonait.bnframework.common.constant.ConfigName;
import com.bonait.bnframework.common.constant.MessageName;
import com.bonait.bnframework.common.db.QueryDB;
import com.bonait.bnframework.common.db.file.DBHelper;
import com.bonait.bnframework.common.db.mode.BPA_CLOUDDATA;
import com.bonait.bnframework.common.db.mode.BPA_GOODS;
import com.bonait.bnframework.common.db.mode.BPA_GOODSRECIPE;
@@ -28,12 +33,15 @@ import com.bonait.bnframework.common.db.mode.BPA_SILOSANDMATERIAL;
import com.bonait.bnframework.common.db.mode.BPA_SYSTEMSET;
import com.bonait.bnframework.common.db.mode.BPA_USER;
import com.bonait.bnframework.common.db.mode.Res_PLCADDRESS;
import com.bonait.bnframework.common.db.util.DBListDataUtil;
import com.bonait.bnframework.common.helper.ConfigUtil;
import com.bonait.bnframework.common.helper.I.IRun;
import com.bonait.bnframework.common.helper.I.IRunT;
import com.bonait.bnframework.common.helper.Json;

import com.bonait.bnframework.common.helper.MessageLog;
import com.bonait.bnframework.common.helper.SendData;

import com.bonait.bnframework.common.http.callback.json.JsonDialogCallback;
import com.bonait.bnframework.common.image.utils.LocalCacheUtils;
import com.bonait.bnframework.common.message.MessageManager;
@@ -488,11 +496,10 @@ public class ConfigData {
if (allDataResAPI.succeeded && allDataResAPI.data != null) {
BPA_CLOUDDATA data = new BPA_CLOUDDATA();
ConfigName.getInstance().cloudData = allDataResAPI.data;
ArrayList<BPA_CLOUDDATA> arrayList = QueryDB.GetClouddataALL();
for (BPA_CLOUDDATA item : arrayList) {
QueryDB.DeleteClouddata(item);
}

ArrayList<BPA_CLOUDDATA> cloudList = new ArrayList<>();
ArrayList<BPA_MATERIAL> materials = new ArrayList<>();
DBHelper.getInstance(MainApplication.getContext()).DeleteCreateTables(BPA_MATERIAL.class,null);
DBHelper.getInstance(MainApplication.getContext()).DeleteCreateTables(BPA_CLOUDDATA.class,null);
//region 物料管理
List<BatchingInfo> bayc = allDataResAPI.data.batchingInfo;
if (allDataResAPI.data.batchingInfo != null) {
@@ -500,12 +507,9 @@ public class ConfigData {
data.id = java.util.UUID.randomUUID().toString();
data.name = "物料集合";
data.text = new Gson().toJson(bayc);
QueryDB.AddClouddata(data);
cloudList.add(data);


ArrayList<BPA_MATERIAL> materials = QueryDB.GetMaterialALL();
for (BPA_MATERIAL wl : materials) {
QueryDB.DeleteMaterial(wl);
}

Integer I = 0;
for (BatchingInfo item : bayc) {
@@ -521,6 +525,7 @@ public class ConfigData {
I++;
}
}
DBListDataUtil.addMATERIALList(materials);
//endregion

//region 工艺模型
@@ -529,12 +534,10 @@ public class ConfigData {
data.id = java.util.UUID.randomUUID().toString();
data.name = "工艺模型";
data.text = new Gson().toJson(allDataResAPI.data.goodsTechnology);
QueryDB.AddClouddata(data);
cloudList.add(data);

ArrayList<BPA_PROCESS> processes = QueryDB.GetProcessALL();
for (BPA_PROCESS pro : processes) {
QueryDB.DeleteProcess(pro);
}
DBHelper.getInstance(MainApplication.getContext()).DeleteCreateTables(BPA_PROCESS.class,null);
List<BPA_PROCESS> processes = new ArrayList<>();
Integer I = 0;
for (GoodsTechnology item : allDataResAPI.data.goodsTechnology) {
BPA_PROCESS bpa_process = new BPA_PROCESS();
@@ -542,9 +545,10 @@ public class ConfigData {
bpa_process.name = item.name;
bpa_process.createTime = item.createAt;
bpa_process.sort = I;
QueryDB.AddProcess(bpa_process);
processes.add(bpa_process);
I++;
}
DBListDataUtil.addPROCESSList(processes);
}
//endregion

@@ -554,12 +558,10 @@ public class ConfigData {
data.id = java.util.UUID.randomUUID().toString();
data.name = "工艺模型详细信息";
data.text = new Gson().toJson(allDataResAPI.data.technologyAction);
QueryDB.AddClouddata(data);
cloudList.add(data);

ArrayList<BPA_PROCESSModel> processes = QueryDB.GetProcessModelALL();
for (BPA_PROCESSModel pro : processes) {
QueryDB.DeleteProcessModel(pro);
}
DBHelper.getInstance(MainApplication.getContext()).DeleteCreateTables(BPA_PROCESSModel.class,null);
List<BPA_PROCESSModel> models = new ArrayList<>();
for (TechnologyAction item : allDataResAPI.data.technologyAction) {
BPA_PROCESSModel bpa_process = new BPA_PROCESSModel();
bpa_process.id = item.id;
@@ -579,8 +581,9 @@ public class ConfigData {
}
}
}
QueryDB.AddProcessModel(bpa_process);
models.add(bpa_process);
}
DBListDataUtil.addPROCESSModelList(models);
}
//endegion

@@ -590,7 +593,7 @@ public class ConfigData {
data.id = java.util.UUID.randomUUID().toString();
data.name = "菜谱信息";
data.text = new Gson().toJson(allDataResAPI.data.foodMenuInfo);
QueryDB.AddClouddata(data);
cloudList.add(data);
}

if (allDataResAPI.data.goodsTypeInfo != null) {
@@ -598,7 +601,7 @@ public class ConfigData {
data.id = java.util.UUID.randomUUID().toString();
data.name = "商品小类";
data.text = new Gson().toJson(allDataResAPI.data.goodsTypeInfo);
QueryDB.AddClouddata(data);
cloudList.add(data);
}

if (allDataResAPI.data.goodsParentTypeInfo != null) {
@@ -606,7 +609,7 @@ public class ConfigData {
data.id = java.util.UUID.randomUUID().toString();
data.name = "商品大类";
data.text = new Gson().toJson(allDataResAPI.data.goodsParentTypeInfo);
QueryDB.AddClouddata(data);
cloudList.add(data);
}

if (allDataResAPI.data.goodsUintInfo != null) {
@@ -614,7 +617,7 @@ public class ConfigData {
data.id = java.util.UUID.randomUUID().toString();
data.name = "商品单位";
data.text = new Gson().toJson(allDataResAPI.data.goodsUintInfo);
QueryDB.AddClouddata(data);
cloudList.add(data);
}

if (allDataResAPI.data.bomTypeInfo != null) {
@@ -622,9 +625,9 @@ public class ConfigData {
data.id = java.util.UUID.randomUUID().toString();
data.name = "配方分类";
data.text = new Gson().toJson(allDataResAPI.data.bomTypeInfo);
QueryDB.AddClouddata(data);
cloudList.add(data);
}
DBListDataUtil.addCLOUDDATAList(cloudList);
Message msg = new Message();
msg.obj = "MSG_REFRESH";
mHandler.sendMessage(msg);


+ 331
- 0
app/src/main/java/com/bonait/bnframework/common/db/util/DBListDataUtil.java View File

@@ -0,0 +1,331 @@
package com.bonait.bnframework.common.db.util;

import android.content.ContentValues;
import android.database.sqlite.SQLiteDatabase;

import com.apkfuns.logutils.LogUtils;
import com.bonait.bnframework.common.constant.ConfigName;
import com.bonait.bnframework.common.db.QueryDB;
import com.bonait.bnframework.common.db.file.DBHelper;
import com.bonait.bnframework.common.db.mode.BPA_CLOUDDATA;
import com.bonait.bnframework.common.db.mode.BPA_GOODS;
import com.bonait.bnframework.common.db.mode.BPA_GOODSRECIPE;
import com.bonait.bnframework.common.db.mode.BPA_MATERIAL;
import com.bonait.bnframework.common.db.mode.BPA_PROCESS;
import com.bonait.bnframework.common.db.mode.BPA_PROCESSModel;
import com.bonait.bnframework.common.helper.Tools;

import java.util.List;
import java.util.Map;

/**
* @author: liup
* @description: 批量增删
* @date: 2024/7/23 9:48.
*/
public class DBListDataUtil {
/**
* 批量新增
* @param list
* @return
*/
public static boolean addPROCESSModelList( List<BPA_PROCESSModel> list) {
if(list==null || list.isEmpty()){
return true;
}
QueryDB.lock.lock();
SQLiteDatabase db = DBHelper.getInstance(ConfigName.getInstance().dishesCon).getWritableDatabase();
try {
long insert=-1;
db.beginTransaction();
for(int i = 0; i < list.size(); i++){
ContentValues cv = new ContentValues();

Map<String, Object> map = Tools.getObjValue(list.get(i));
if (map.get("id").toString().isEmpty())
return false;
for (String key : map.keySet()) {
Object value = map.get(key);
if (value instanceof String) {
cv.put(key, (String) value);
} else if (value instanceof Integer) {
cv.put(key, ((Integer) value).intValue());
} else if (value instanceof Double) {
cv.put(key, ((Double) value).doubleValue());
} else if (value instanceof Float) {
cv.put(key, ((Float) value).floatValue());
} else if (value instanceof Long) {
cv.put(key, ((Long) value).longValue());
} else if (value instanceof Boolean) {
cv.put(key, ((Boolean) value).booleanValue());
}
}
insert = db.insertOrThrow(BPA_PROCESSModel.class.getSimpleName(), null, cv);
if (insert == -1) {
throw new Exception("Failed to insert data at index " + i);
}
}
LogUtils.d("removeList 批量添加工序");

db.setTransactionSuccessful();
return insert > 0;
} catch (Exception e) {
LogUtils.d("addList 批量新增异常");
} finally {
db.endTransaction();
db.close();
QueryDB.lock.unlock();
}
return false;
}

public static boolean addPROCESSList( List<BPA_PROCESS> list) {
if(list==null || list.isEmpty()){
return true;
}
QueryDB.lock.lock();
SQLiteDatabase db = DBHelper.getInstance(ConfigName.getInstance().dishesCon).getWritableDatabase();
try {
long insert=-1;
db.beginTransaction();
for(int i = 0; i < list.size(); i++){
ContentValues cv = new ContentValues();

Map<String, Object> map = Tools.getObjValue(list.get(i));
if (map.get("id").toString().isEmpty())
return false;
for (String key : map.keySet()) {
Object value = map.get(key);
if (value instanceof String) {
cv.put(key, (String) value);
} else if (value instanceof Integer) {
cv.put(key, ((Integer) value).intValue());
} else if (value instanceof Double) {
cv.put(key, ((Double) value).doubleValue());
} else if (value instanceof Float) {
cv.put(key, ((Float) value).floatValue());
} else if (value instanceof Long) {
cv.put(key, ((Long) value).longValue());
} else if (value instanceof Boolean) {
cv.put(key, ((Boolean) value).booleanValue());
}
}
insert = db.insertOrThrow(BPA_PROCESS.class.getSimpleName(), null, cv);
if (insert == -1) {
throw new Exception("Failed to insert data at index " + i);
}
}
LogUtils.d("removeList 批量添加工序");

db.setTransactionSuccessful();
return insert > 0;
} catch (Exception e) {
LogUtils.d("addList 批量新增异常");
} finally {
db.endTransaction();
db.close();
QueryDB.lock.unlock();
}
return false;
}

public static boolean addGOODSRECIPEList( List<BPA_GOODSRECIPE> list) {
if(list==null || list.isEmpty()){
return true;
}
QueryDB.lock.lock();
SQLiteDatabase db = DBHelper.getInstance(ConfigName.getInstance().dishesCon).getWritableDatabase();
try {
long insert=-1;
db.beginTransaction();
for(int i = 0; i < list.size(); i++){
ContentValues cv = new ContentValues();

Map<String, Object> map = Tools.getObjValue(list.get(i));
if (map.get("id").toString().isEmpty())
return false;
for (String key : map.keySet()) {
Object value = map.get(key);
if (value instanceof String) {
cv.put(key, (String) value);
} else if (value instanceof Integer) {
cv.put(key, ((Integer) value).intValue());
} else if (value instanceof Double) {
cv.put(key, ((Double) value).doubleValue());
} else if (value instanceof Float) {
cv.put(key, ((Float) value).floatValue());
} else if (value instanceof Long) {
cv.put(key, ((Long) value).longValue());
} else if (value instanceof Boolean) {
cv.put(key, ((Boolean) value).booleanValue());
}
}
insert = db.insertOrThrow(BPA_GOODSRECIPE.class.getSimpleName(), null, cv);
if (insert == -1) {
throw new Exception("Failed to insert data at index " + i);
}
}
LogUtils.d("removeList 批量添加工序");

db.setTransactionSuccessful();
return insert > 0;
} catch (Exception e) {
LogUtils.d("addList 批量新增异常");
} finally {
db.endTransaction();
db.close();
QueryDB.lock.unlock();
}
return false;
}

public static boolean addMATERIALList( List<BPA_MATERIAL> list) {
if(list==null || list.isEmpty()){
return true;
}
QueryDB.lock.lock();
SQLiteDatabase db = DBHelper.getInstance(ConfigName.getInstance().dishesCon).getWritableDatabase();
try {
long insert=-1;
db.beginTransaction();
for(int i = 0; i < list.size(); i++){
ContentValues cv = new ContentValues();

Map<String, Object> map = Tools.getObjValue(list.get(i));
if (map.get("id").toString().isEmpty())
return false;
for (String key : map.keySet()) {
Object value = map.get(key);
if (value instanceof String) {
cv.put(key, (String) value);
} else if (value instanceof Integer) {
cv.put(key, ((Integer) value).intValue());
} else if (value instanceof Double) {
cv.put(key, ((Double) value).doubleValue());
} else if (value instanceof Float) {
cv.put(key, ((Float) value).floatValue());
} else if (value instanceof Long) {
cv.put(key, ((Long) value).longValue());
} else if (value instanceof Boolean) {
cv.put(key, ((Boolean) value).booleanValue());
}
}
insert = db.insertOrThrow(BPA_MATERIAL.class.getSimpleName(), null, cv);
if (insert == -1) {
throw new Exception("Failed to insert data at index " + i);
}
}
LogUtils.d("removeList 批量添加工序");

db.setTransactionSuccessful();
return insert > 0;
} catch (Exception e) {
LogUtils.d("addList 批量新增异常");
} finally {
db.endTransaction();
db.close();
QueryDB.lock.unlock();
}
return false;
}

public static boolean addGOODSList( List<BPA_GOODS> list) {
if(list==null || list.isEmpty()){
return true;
}
QueryDB.lock.lock();
SQLiteDatabase db = DBHelper.getInstance(ConfigName.getInstance().dishesCon).getWritableDatabase();
try {
long insert=-1;
db.beginTransaction();
for(int i = 0; i < list.size(); i++){
ContentValues cv = new ContentValues();

Map<String, Object> map = Tools.getObjValue(list.get(i));
if (map.get("id").toString().isEmpty())
return false;
for (String key : map.keySet()) {
Object value = map.get(key);
if (value instanceof String) {
cv.put(key, (String) value);
} else if (value instanceof Integer) {
cv.put(key, ((Integer) value).intValue());
} else if (value instanceof Double) {
cv.put(key, ((Double) value).doubleValue());
} else if (value instanceof Float) {
cv.put(key, ((Float) value).floatValue());
} else if (value instanceof Long) {
cv.put(key, ((Long) value).longValue());
} else if (value instanceof Boolean) {
cv.put(key, ((Boolean) value).booleanValue());
}
}
insert = db.insertOrThrow(BPA_GOODS.class.getSimpleName(), null, cv);
if (insert == -1) {
throw new Exception("Failed to insert data at index " + i);
}
}
LogUtils.d("removeList 批量添加工序");

db.setTransactionSuccessful();
return insert > 0;
} catch (Exception e) {
LogUtils.d("addList 批量新增异常");
} finally {
db.endTransaction();
db.close();
QueryDB.lock.unlock();
}
return false;
}

public static boolean addCLOUDDATAList( List<BPA_CLOUDDATA> list) {
if(list==null || list.isEmpty()){
return true;
}
QueryDB.lock.lock();
SQLiteDatabase db = DBHelper.getInstance(ConfigName.getInstance().dishesCon).getWritableDatabase();
try {
long insert=-1;
db.beginTransaction();
for(int i = 0; i < list.size(); i++){
ContentValues cv = new ContentValues();

Map<String, Object> map = Tools.getObjValue(list.get(i));
if (map.get("id").toString().isEmpty())
return false;
for (String key : map.keySet()) {
Object value = map.get(key);
if (value instanceof String) {
cv.put(key, (String) value);
} else if (value instanceof Integer) {
cv.put(key, ((Integer) value).intValue());
} else if (value instanceof Double) {
cv.put(key, ((Double) value).doubleValue());
} else if (value instanceof Float) {
cv.put(key, ((Float) value).floatValue());
} else if (value instanceof Long) {
cv.put(key, ((Long) value).longValue());
} else if (value instanceof Boolean) {
cv.put(key, ((Boolean) value).booleanValue());
}
}
insert = db.insertOrThrow(BPA_CLOUDDATA.class.getSimpleName(), null, cv);
if (insert == -1) {
throw new Exception("Failed to insert data at index " + i);
}
}
LogUtils.d("removeList 批量添加工序");

db.setTransactionSuccessful();
return insert > 0;
} catch (Exception e) {
LogUtils.d("addList 批量新增异常");
} finally {
db.endTransaction();
db.close();
QueryDB.lock.unlock();
}
return false;
}
}

+ 1
- 0
app/src/main/java/com/bonait/bnframework/common/model/mode/MouthFacingEnum.java View File

@@ -1,6 +1,7 @@
package com.bonait.bnframework.common.model.mode;

public enum MouthFacingEnum {
原点位,
炒菜位,
维护位,
抽料位,


+ 15
- 4
app/src/main/java/com/bonait/bnframework/device_control.java View File

@@ -96,6 +96,9 @@ public class device_control extends Dialog {
@BindView(R.id.guokoucaoxiang_qx)
imagebuttom3 guokoucaoxiang_qx;

@BindView(R.id.guokoucaoxiang_yd)
imagebuttom3 guokoucaoxiang_yd;

@BindView(R.id.chushui)
imagebuttom3 chushui;

@@ -353,12 +356,12 @@ public class device_control extends Dialog {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
if(motionEvent.getAction() == MotionEvent.ACTION_DOWN){
if(!FryingpanModbusHelper.getInstance().getClearLocFeedback(DeviceNum)){
DialogHelper.showWarn(activity,DeviceNum+"号炒锅锅口不在清洗位,不允许清洗!", AlertDialogButton.OK,null);
if(!FryingpanModbusHelper.getInstance().isConnect(DeviceNum)){
DialogHelper.showError(activity,DeviceNum+"号炒锅设备未连接!", AlertDialogButton.OK,null);
return false;
}
if(!FryingpanModbusHelper.getInstance().getMaterialLocFeedback(DeviceNum)){
DialogHelper.showWarn(activity,DeviceNum+"号炒锅锅口不在抽料位,不允许抽料!", AlertDialogButton.OK,null);
if(!FryingpanModbusHelper.getInstance().getClearLocFeedback(DeviceNum)){
DialogHelper.showWarn(activity,DeviceNum+"号炒锅锅口不在清洗位,不允许清洗!", AlertDialogButton.OK,null);
return false;
}
}
@@ -454,6 +457,7 @@ public class device_control extends Dialog {
guokoucaoxiang_cl.mListener = myClickListener;
guokoucaoxiang_dc.mListener = myClickListener;
guokoucaoxiang_qx.mListener = myClickListener;
guokoucaoxiang_yd.mListener = myClickListener;

// touliao1.mListener = myClickListener;
// touliao2.mListener = myClickListener;
@@ -655,6 +659,9 @@ public class device_control extends Dialog {
case R.id.guokoucaoxiang_cc:
SetMouthFacing(MouthFacingEnum.炒菜位);
break;
case R.id.guokoucaoxiang_yd:
SetMouthFacing(MouthFacingEnum.原点位);
break;
case R.id.guokoucaoxiang_wh:
SetMouthFacing(MouthFacingEnum.维护位);
break;
@@ -789,6 +796,10 @@ public class device_control extends Dialog {
// ExecuteTheRecipe.BottomClick("炒菜位1");
guokoucaoxiang.setTag("锅口朝向\n 炒菜位-按钮");
break;
case 原点位:
// ExecuteTheRecipe.BottomClick("炒菜位1");
guokoucaoxiang.setTag("锅口朝向\n 原点位-按钮");
break;
case 维护位:
// ExecuteTheRecipe.BottomClick("炒菜位1");
guokoucaoxiang.setTag("锅口朝向\n 维护位-按钮");


+ 65
- 43
app/src/main/res/layout/datatab/layout/activity_device_control.xml View File

@@ -133,19 +133,19 @@
android:layout_marginBottom="@dimen/dp_10"
android:antialias="true"
android:scaleType="fitXY"
android:src="@mipmap/device1" />
android:src="@mipmap/device00" />

<!-- 翻炒速度 -->
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="50dp"
android:layout_marginTop="20dp"
android:layout_marginStart="50dp"
android:layout_marginTop="10dp"
android:orientation="vertical">

<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu"
android:layout_width="240dp"
android:layout_width="140dp"
android:layout_height="60dp"
android:contentDescription="true"
android:tag="翻炒速度-按钮"
@@ -157,47 +157,60 @@
android:id="@+id/fanchaoshudu_1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:visibility="visible"
android:orientation="vertical"
android:visibility="gone">

<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu_k"
android:layout_width="60dp"
android:layout_height="50dp"
android:contentDescription="true"
android:tag="快"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />

<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu_z"
android:layout_width="60dp"
android:layout_height="50dp"
android:contentDescription="true"
android:tag="中"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />

<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu_m"
android:layout_width="60dp"
android:layout_height="50dp"
android:contentDescription="true"
android:tag="慢"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />
<LinearLayout
android:layout_width="wrap_content"
android:orientation="horizontal"
android:layout_height="wrap_content">
<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu_k"
android:layout_width="60dp"
android:layout_height="50dp"
android:contentDescription="true"
android:tag="快"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />

<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu_z"
android:layout_width="60dp"
android:layout_height="50dp"
android:contentDescription="true"
android:tag="中"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />
</LinearLayout>

<LinearLayout
android:layout_width="wrap_content"
android:orientation="horizontal"
android:layout_height="wrap_content">
<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu_m"
android:layout_width="60dp"
android:layout_height="50dp"
android:contentDescription="true"
android:tag="慢"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />

<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu_t"
android:layout_width="60dp"
android:layout_height="50dp"
android:contentDescription="true"
android:tag="停"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />
</LinearLayout>

<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/fanchaoshudu_t"
android:layout_width="60dp"
android:layout_height="50dp"
android:contentDescription="true"
android:tag="停"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />
</LinearLayout>
</LinearLayout>

@@ -400,7 +413,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginTop="80dp"
android:layout_marginTop="10dp"
android:layout_marginRight="140dp"
android:orientation="vertical">

@@ -421,6 +434,15 @@
android:orientation="vertical"
tools:visibility="visible"
android:visibility="gone">
<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/guokoucaoxiang_yd"
android:layout_width="100dp"
android:layout_height="60dp"
android:contentDescription="true"
android:tag="原点位-按钮"
app:imagesrc_ks="@mipmap/sb1"
app:imagesrc_qt="@mipmap/sb2"
app:imagesrc_tz="@mipmap/sb3" />
<com.bonait.bnframework.modules.home.fragment.mode.imagebuttom3
android:id="@+id/guokoucaoxiang_wh"
android:layout_width="100dp"


Loading…
Cancel
Save