From 99b89dc0ae4fbe90c6d629a223ad730986ffd8f3 Mon Sep 17 00:00:00 2001
From: rk <94314517@qq.com>
Date: 星期三, 10 十二月 2025 14:34:25 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/maanshan' into maanshan
---
keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java | 77 ++++++++++++++++++++++++++++++++------
1 files changed, 65 insertions(+), 12 deletions(-)
diff --git a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java
index 40f82bc..fe0d656 100644
--- a/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java
+++ b/keyCabinet-android/app/src/main/java/com/doumee/keyCabinet/ui/main/MainVM.java
@@ -13,30 +13,24 @@
import com.doumee.keyCabinet.bean.CabinetFaceBean;
import com.doumee.keyCabinet.bean.DevConfigBean;
import com.doumee.keyCabinet.bean.FaceUserBean;
-import com.doumee.keyCabinet.bean.KeyCabinetBean;
import com.doumee.keyCabinet.bean.LoginBean;
import com.doumee.keyCabinet.bean.ManageKeyCabinetBean;
import com.doumee.keyCabinet.dao.CabinetGridDo;
import com.doumee.keyCabinet.dao.DaoManager;
-import com.doumee.keyCabinet.event.DevConfigEvent;
import com.doumee.keyCabinet.event.HttpEvent;
import com.doumee.keyCabinet.http.Apis;
import com.doumee.keyCabinet.http.param.BaseResponse;
import com.doumee.keyCabinet.http.param.CloseGridParam;
import com.doumee.keyCabinet.http.param.DevErrInfoParam;
-import com.doumee.keyCabinet.http.param.DevLoginParam;
-import com.doumee.keyCabinet.http.param.FaceUserParam;
import com.doumee.keyCabinet.http.param.RequestBaseObject;
+import com.doumee.keyCabinet.http.param.SyncGridDataParam;
import com.doumee.keyCabinet.http.param.TimeOutUnCloseAlarmParam;
-import com.doumee.keyCabinet.utils.BraceletLogUtils;
import com.doumee.keyCabinet.utils.LMobileInfo;
-import com.doumee.keyCabinet.utils.LanguageUtil;
import com.doumee.keyCabinet.utils.ParamsUtil;
import com.doumee.keyCabinet.utils.i485.SportUtils;
import com.doumee.lib_coremodel.base.BaseModel;
import com.doumee.lib_coremodel.base.DataViewModel;
import com.doumee.lib_coremodel.http.rxJava.SimpleObserver;
-import com.doumee.lib_coremodel.http.utils.GsonTools;
import com.doumee.lib_coremodel.http.utils.RxUtils;
import com.doumee.lib_coremodel.util.SpUtil;
import com.doumee.lib_coremodel.util.StringUtil;
@@ -48,9 +42,6 @@
import java.util.HashMap;
import java.util.List;
-import okhttp3.Headers;
-import retrofit2.Response;
-
public class MainVM extends DataViewModel {
public ObservableField<String> dayObs = new ObservableField<>("");
public ObservableField<String> timeObs = new ObservableField<>("");
@@ -58,6 +49,12 @@
private MutableLiveData<List<FaceUserBean>> faceLD = new MutableLiveData<>();
private MutableLiveData<DevConfigBean> confidLD = new MutableLiveData<>();
+
+ private boolean isSubmit = false;
+
+ public void setSubmit(boolean submit) {
+ isSubmit = submit;
+ }
@ViewModelInject
public MainVM(@NonNull Application application, BaseModel model) {
@@ -80,6 +77,7 @@
if(200==response.getCode()){
if(response.getData()!=null){
MApplication.saveConfigBean(response.getData());
+ EventBus.getDefault().post(new HttpEvent("閰掔簿妫�娴嬪紑鍏筹細"+response.getData().getAlcoholStatus()));
confidLD.setValue(response.getData());
if(response.getData().getCabinetGridInfoVOList()!=null){
updateDao(response.getData().getCabinetGridInfoVOList());
@@ -114,6 +112,7 @@
}
List<CabinetGridDo> addList = new ArrayList<>();
List<CabinetGridDo> updateList = new ArrayList<>();
+ List<SyncGridDataParam.GridDTO> errList = new ArrayList<>();
for(ManageKeyCabinetBean bean:beans){
String key = SportUtils.intToHex(Integer.parseInt(bean.getBoardCode()))+SportUtils.intToHex(Integer.parseInt(bean.getChannelCode()));
if(oldMap.containsKey(key)){
@@ -129,6 +128,13 @@
gridDo.setWorkingStatus(bean.getWorkingStatus());
updateList.add(gridDo);
oldMap.remove(key);
+ if(isSubmit&&!isCheck(gridDo.getKeyCode(),gridDo.getCurKeyCode())){
+ SyncGridDataParam.GridDTO errDo = new SyncGridDataParam.GridDTO();
+ errDo.setActualLable(gridDo.getCurKeyCode());
+ errDo.setBoardCode(bean.getBoardCode());
+ errDo.setChannelCode(bean.getChannelCode());
+ errList.add(errDo);
+ }
}else {
//鏂板
CabinetGridDo gridDo = new CabinetGridDo();
@@ -165,6 +171,20 @@
}
DaoManager.getCabinetGridDao().update(upList);
}
+ if(errList.size()>0){
+ syncGridData(errList);
+ }
+ }
+
+ private boolean isCheck(String v1,String v2){
+ if(TextUtils.isEmpty(v1)&&TextUtils.isEmpty(v2)){
+ return true;
+ }else if(TextUtils.isEmpty(v1)&&!TextUtils.isEmpty(v2)){
+ return false;
+ }else if(!TextUtils.isEmpty(v1)&&TextUtils.isEmpty(v2)){
+ return false;
+ }
+ return v1.equals(v2);
}
public void devHeart(){
@@ -172,6 +192,38 @@
return;
}
getRetrofitService(Apis.class).heart(MApplication.getConfigBean().getId())
+ .compose(RxUtils.schedulersTransformer())
+ .subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
+ @Override
+ public void onNext(@NonNull BaseResponse response) {
+
+ }
+
+ @Override
+ public void onError(@NonNull Throwable e) {
+
+ }
+
+ @Override
+ public void onComplete() {
+
+ }
+ });
+ }
+
+ public void syncGridData(List<SyncGridDataParam.GridDTO> errList){
+ SyncGridDataParam param = new SyncGridDataParam();
+ param.setCode(LMobileInfo.getDeviceUniqueId());
+ param.setGridDTOList(errList);
+ StringBuilder sb = new StringBuilder();
+ for(SyncGridDataParam.GridDTO d:errList){
+ if(sb.length()>0){
+ sb.append(",");
+ }
+ sb.append(d.getBoardCode()+"_"+d.getChannelCode()+":"+d.getActualLable());
+ }
+ EventBus.getDefault().post(new HttpEvent("涓婃姤閿欒閽ュ寵淇℃伅===銆�"+sb.toString()));
+ getRetrofitService(Apis.class).syncGridData(ParamsUtil.encodeRequestBody(param))
.compose(RxUtils.schedulersTransformer())
.subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
@Override
@@ -296,7 +348,7 @@
.subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
@Override
public void onNext(@NonNull BaseResponse response) {
- toast("瓒呮椂鏈叧闂ㄦ帴鍙h皟鐢ㄦ垚鍔�");
+ //toast("===>瓒呮椂鏈叧闂�-杩斿洖");
}
@Override
@@ -319,12 +371,13 @@
param.setMemberId(loginBean.getMemberId());
param.setGridId(gridDo.getGridId());
param.setKeyStatus(!TextUtils.isEmpty(gridDo.getCurKeyCode())?1:2);
+ //EventBus.getDefault().post(new HttpEvent("===>棣栭〉鍏抽棴鏌滄牸-璇锋眰"));
getRetrofitService(Apis.class).closeGrid(ParamsUtil.encodeRequestBody(param))
.compose(RxUtils.schedulersTransformer())
.subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) {
@Override
public void onNext(@NonNull BaseResponse response) {
-
+ //EventBus.getDefault().post(new HttpEvent("===>棣栭〉鍏抽棴鏌滄牸-杩斿洖"));
}
@Override
--
Gitblit v1.9.3