| | |
| | | import android.app.Application; |
| | | |
| | | import androidx.annotation.NonNull; |
| | | import androidx.databinding.ObservableField; |
| | | import androidx.hilt.lifecycle.ViewModelInject; |
| | | import androidx.lifecycle.MutableLiveData; |
| | | |
| | | import com.doumee.keyCabinet.MApplication; |
| | | import com.doumee.keyCabinet.bean.CabinetDetailBean; |
| | | import com.doumee.keyCabinet.bean.ManageKeyCabinetBean; |
| | | import com.doumee.keyCabinet.http.Apis; |
| | | import com.doumee.keyCabinet.http.param.BaseResponse; |
| | | import com.doumee.keyCabinet.http.param.BatchOpenGridAdminParam; |
| | | import com.doumee.keyCabinet.http.param.CancelFaultParam; |
| | | import com.doumee.keyCabinet.http.param.MarkFaultParam; |
| | | import com.doumee.keyCabinet.http.param.MarkRepairParam; |
| | | 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 ManageCabinetVM extends DataViewModel { |
| | | public ObservableField<CabinetDetailBean> dataOb = new ObservableField<>(); |
| | | private MutableLiveData<List<ManageKeyCabinetBean>> datasLD = new MutableLiveData<>(); |
| | | |
| | | @ViewModelInject |
| | | public ManageCabinetVM(@NonNull Application application, BaseModel model) { |
| | | super(application, model); |
| | |
| | | protected void clickByTypeCommand(int type) { |
| | | doAction(type); |
| | | } |
| | | |
| | | public void getCabinetDetail(){ |
| | | showLoading(true); |
| | | getRetrofitService(Apis.class).getCabinetDetail(MApplication.getLoginBean().getToken(), |
| | | MApplication.getConfigBean().getId()) |
| | | .compose(RxUtils.schedulersTransformer()) |
| | | .subscribe(new SimpleObserver<BaseResponse<CabinetDetailBean>>(rxJavaGcManager) { |
| | | @Override |
| | | public void onNext(@NonNull BaseResponse<CabinetDetailBean> response) { |
| | | if(200==response.getCode()){ |
| | | dataOb.set(response.getData()); |
| | | if(response.getData()!=null){ |
| | | if(response.getData().getCabinetGridInfoVOList()!=null){ |
| | | datasLD.setValue(response.getData().getCabinetGridInfoVOList()); |
| | | }else { |
| | | datasLD.setValue(new ArrayList<>()); |
| | | } |
| | | }else { |
| | | datasLD.setValue(new ArrayList<>()); |
| | | } |
| | | }else { |
| | | toast(response.getMessage()); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void onError(@NonNull Throwable e) { |
| | | toast(e.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public void onComplete() { |
| | | hideLoading(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | public void batchOpenGridAdmin(List<Integer> gridIdList){ |
| | | showLoading(true); |
| | | BatchOpenGridAdminParam param = new BatchOpenGridAdminParam(); |
| | | param.setCabinetId(MApplication.getConfigBean().getId()); |
| | | param.setGridIdList(gridIdList); |
| | | getRetrofitService(Apis.class).batchOpenGridAdmin(MApplication.getLoginBean().getToken(), |
| | | ParamsUtil.encodeRequestBody(param)) |
| | | .compose(RxUtils.schedulersTransformer()) |
| | | .subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) { |
| | | @Override |
| | | public void onNext(@NonNull BaseResponse response) { |
| | | if(200==response.getCode()){ |
| | | doAction(8); |
| | | }else { |
| | | toast(response.getMessage()); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void onError(@NonNull Throwable e) { |
| | | toast(e.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public void onComplete() { |
| | | hideLoading(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | public void cancelFault(List<Integer> gridIdList){ |
| | | showLoading(true); |
| | | CancelFaultParam param = new CancelFaultParam(); |
| | | param.setCabinetId(MApplication.getConfigBean().getId()); |
| | | param.setGridIdList(gridIdList); |
| | | getRetrofitService(Apis.class).cancelFault(MApplication.getLoginBean().getToken(), |
| | | ParamsUtil.encodeRequestBody(param)) |
| | | .compose(RxUtils.schedulersTransformer()) |
| | | .subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) { |
| | | @Override |
| | | public void onNext(@NonNull BaseResponse response) { |
| | | if(200==response.getCode()){ |
| | | getCabinetDetail(); |
| | | }else { |
| | | toast(response.getMessage()); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void onError(@NonNull Throwable e) { |
| | | toast(e.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public void onComplete() { |
| | | hideLoading(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | public void markFault(List<Integer> gridIdList){ |
| | | showLoading(true); |
| | | MarkFaultParam param = new MarkFaultParam(); |
| | | param.setCabinetId(MApplication.getConfigBean().getId()); |
| | | param.setGridIdList(gridIdList); |
| | | getRetrofitService(Apis.class).markFault(MApplication.getLoginBean().getToken(), |
| | | ParamsUtil.encodeRequestBody(param)) |
| | | .compose(RxUtils.schedulersTransformer()) |
| | | .subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) { |
| | | @Override |
| | | public void onNext(@NonNull BaseResponse response) { |
| | | if(200==response.getCode()){ |
| | | getCabinetDetail(); |
| | | }else { |
| | | toast(response.getMessage()); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void onError(@NonNull Throwable e) { |
| | | toast(e.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public void onComplete() { |
| | | hideLoading(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | public void markRepair(List<Integer> gridIdList){ |
| | | showLoading(true); |
| | | MarkRepairParam param = new MarkRepairParam(); |
| | | param.setCabinetId(MApplication.getConfigBean().getId()); |
| | | param.setGridIdList(gridIdList); |
| | | getRetrofitService(Apis.class).markRepair(MApplication.getLoginBean().getToken(), |
| | | ParamsUtil.encodeRequestBody(param)) |
| | | .compose(RxUtils.schedulersTransformer()) |
| | | .subscribe(new SimpleObserver<BaseResponse>(rxJavaGcManager) { |
| | | @Override |
| | | public void onNext(@NonNull BaseResponse response) { |
| | | if(200==response.getCode()){ |
| | | getCabinetDetail(); |
| | | }else { |
| | | toast(response.getMessage()); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public void onError(@NonNull Throwable e) { |
| | | toast(e.getMessage()); |
| | | } |
| | | |
| | | @Override |
| | | public void onComplete() { |
| | | hideLoading(); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | public MutableLiveData<List<ManageKeyCabinetBean>> getDatasLD() { |
| | | return datasLD; |
| | | } |
| | | } |