package com.doumee.keyCabinet.ui.keyCabinet; 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.FaceUserBean; import com.doumee.keyCabinet.bean.KeyCabinetBean; import com.doumee.keyCabinet.http.Apis; import com.doumee.keyCabinet.http.param.BaseResponse; import com.doumee.keyCabinet.http.param.GetDriverGridParam; import com.doumee.keyCabinet.http.param.OpenGridDriverParam; 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 org.checkerframework.checker.units.qual.A; import org.greenrobot.eventbus.EventBus; import java.util.ArrayList; import java.util.List; import java.util.Random; public class KeyCabinetVM extends DataViewModel { private MutableLiveData> datasLD = new MutableLiveData<>(); @ViewModelInject public KeyCabinetVM(@NonNull Application application, BaseModel model) { super(application, model); } @Override protected void clickByTypeCommand(int type) { doAction(type); } public void getDatas(){ /*List list = new ArrayList<>(); KeyCabinetBean b1 = new KeyCabinetBean(); b1.setCabinetName("A01"); b1.setCarCode("苏A18829"); list.add(b1); KeyCabinetBean b2 = new KeyCabinetBean(); b2.setCabinetName("A02"); b2.setCarCode("苏A18820"); list.add(b2); datasLD.setValue(list);*/ GetDriverGridParam param = new GetDriverGridParam(); param.setType(MApplication.getLoginBean().getFlag()); param.setCabinetId(MApplication.getConfigBean().getId()); param.setMemberId(MApplication.getLoginBean().getMemberId()); param.setAutoMemberId(MApplication.getLoginBean().getAutoMemberId()); showLoading(true); getRetrofitService(Apis.class).getDriverGrid(ParamsUtil.encodeRequestBody(param)) .compose(RxUtils.schedulersTransformer()) .subscribe(new SimpleObserver>>(rxJavaGcManager) { @Override public void onNext(@NonNull BaseResponse> response) { if(200==response.getCode()){ //查询数据 if(response.getData()!=null&&response.getData().size()>0){ datasLD.setValue(response.getData()); } }else { toast(response.getMessage()); } } @Override public void onError(@NonNull Throwable e) { toast(e.getMessage()); } @Override public void onComplete() { hideLoading(); } }); } public void openGridDriver(KeyCabinetBean selectBean){ OpenGridDriverParam param = new OpenGridDriverParam(); param.setCabinetId(selectBean.getCabinetId()); param.setGridId(selectBean.getId()); param.setMemberId(MApplication.getLoginBean().getMemberId()); param.setAuthType(MApplication.getLoginBean().getAuthType()); showLoading(true); getRetrofitService(Apis.class).openGridDriver(ParamsUtil.encodeRequestBody(param)) .compose(RxUtils.schedulersTransformer()) .subscribe(new SimpleObserver(rxJavaGcManager) { @Override public void onNext(@NonNull BaseResponse response) { if(200==response.getCode()){ //开门 doAction(2); }else { toast(response.getMessage()); } } @Override public void onError(@NonNull Throwable e) { toast(e.getMessage()); } @Override public void onComplete() { hideLoading(); } }); } public MutableLiveData> getDatasLD() { return datasLD; } }