package com.doumee.keyCabinet.ui.face; import android.app.Application; import androidx.annotation.NonNull; import androidx.hilt.lifecycle.ViewModelInject; import androidx.lifecycle.MutableLiveData; import com.doumee.keyCabinet.MApplication; import com.doumee.keyCabinet.bean.CabinetFaceBean; import com.doumee.keyCabinet.bean.FaceUserBean; import com.doumee.keyCabinet.http.Apis; import com.doumee.keyCabinet.http.param.BaseResponse; 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.utils.LMobileInfo; import com.doumee.keyCabinet.utils.ParamsUtil; 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.RxUtils; import java.util.ArrayList; import java.util.List; public class AddFaceVM extends DataViewModel { private MutableLiveData> datasLD = new MutableLiveData<>(); @ViewModelInject public AddFaceVM(@NonNull Application application, BaseModel model) { super(application, model); } @Override protected void clickByTypeCommand(int type) { doAction(type); } public void getDatas(){ showLoading(true); getRetrofitService(Apis.class).allFaceList(LMobileInfo.getDeviceUniqueId()) .compose(RxUtils.schedulersTransformer()) .subscribe(new SimpleObserver>(rxJavaGcManager) { @Override public void onNext(@NonNull BaseResponse response) { if(200==response.getCode()){ //查询数据 if(response.getData()!=null){ CabinetFaceBean faceBean = response.getData(); List datas = new ArrayList<>(); if(faceBean!=null&&faceBean.getAutoFaceList()!=null){ for(FaceUserBean bean:faceBean.getAutoFaceList()){ bean.setGroupId("1"); } datas.addAll(faceBean.getAutoFaceList()); } if(faceBean!=null&&faceBean.getDriverFaceList()!=null){ for(FaceUserBean bean:faceBean.getDriverFaceList()){ bean.setGroupId("0"); } datas.addAll(faceBean.getDriverFaceList()); } datasLD.setValue(datas); } }else { toast(response.getMessage()); } } @Override public void onError(@NonNull Throwable e) { toast(e.getMessage()); } @Override public void onComplete() { hideLoading(); } }); } public MutableLiveData> getDatasLD() { return datasLD; } }