提交 0d812260 authored 作者: lgd's avatar lgd

1.bat页面商店第一个页面,dialog

2.//TODO erp用户激活,忘记密码测试,bat,mes,消息,我的,刷新token
上级 840769ac
......@@ -103,4 +103,5 @@ dependencies {
implementation 'com.github.tbruyelle:rxpermissions:0.10.2'
implementation 'com.ashokvarma.android:bottom-navigation-bar:2.2.0'
implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.45-androidx'
implementation 'com.qmuiteam:qmui:1.4.0'
}
......@@ -97,7 +97,14 @@
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.bat.StoreSaleActivity"
android:configChanges="keyboardHidden|orientation"
android:label="下单"
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="com.wd.workoffice.fileprovider"
......
......@@ -2,6 +2,8 @@ package com.wd.workoffice.contract;
import com.wd.workoffice.app.BaseBean;
import java.util.List;
import flexible.xd.android_base.mvpBase.IBaseModel;
import flexible.xd.android_base.mvpBase.IBasePresenter;
import flexible.xd.android_base.mvpBase.IBaseView;
......@@ -14,7 +16,7 @@ import io.reactivex.Observable;
**/
public interface BatSaleContract {
interface Model extends IBaseModel {
Observable<BaseBean> getProcess(String phone, String type);
Observable<BaseBean> getProcess(String processCode, String transitPartId);
Observable<BaseBean> getProduct(String phone, String verifyCode, String type);
......@@ -22,15 +24,20 @@ public interface BatSaleContract {
}
interface View extends IBaseView {
void codeSuccess();
void processList(List<Object> dataList);
void productList(List<Object> dataList);
void verifySuccess();
void depList(List<Object> dataList);
}
interface Presenter extends IBasePresenter<View> {
void getCode(String phone, String type);
void verifyCode(String phone, String verifyCode, String type);
void getProcess(String processCode, String transitPartId);
void getProduct(String phone, String verifyCode, String type);
void getDep(String permission);
}
}
package com.wd.workoffice.model;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.retrofit.RtfUtils;
import io.reactivex.Observable;
/**
* author : flexible
......@@ -8,4 +12,22 @@ import com.wd.workoffice.contract.BatSaleContract;
* github: https://github.com/FlexibleXd
**/
public class BatSaleModel implements BatSaleContract.Model {
public static BatSaleModel newInstance() {
return new BatSaleModel();
}
@Override
public Observable<BaseBean> getProcess(String processCode, String transitPartId) {
return RtfUtils.getRtf().getProcess(processCode, transitPartId);
}
@Override
public Observable<BaseBean> getProduct(String phone, String verifyCode, String type) {
return null;
}
@Override
public Observable<BaseBean> getDep(String permission) {
return RtfUtils.getRtf().getDepByPermisson(permission);
}
}
package com.wd.workoffice.presenter;
import com.wd.workoffice.app.BaseBean;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.contract.ForgetOneContract;
import com.wd.workoffice.model.BatSaleModel;
import com.wd.workoffice.retrofit.WorkObserver;
import flexible.xd.android_base.mvpBase.BasePresenter;
import flexible.xd.android_base.network.rtfhttp.Transformer;
import io.reactivex.disposables.Disposable;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class BatSalePresenter implements BatSaleContract.Presenter {
public class BatSalePresenter extends BasePresenter<BatSaleContract.View, BatSaleContract.Model> implements BatSaleContract.Presenter {
@Override
public BatSaleContract.Model bindModel() {
return BatSaleModel.newInstance();
}
@Override
public void getProcess(String processCode, String transitPartId) {
mView.showLoading();
mModel.getProcess(processCode, transitPartId).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
mDisposable.add(d);
}
@Override
public void onFail(String errorMsg) {
mView.hideLoading();
mView.onError(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
mView.hideLoading();
if (data.getCode() != 0) {
mView.onError(data.getMessage());
return;
}
// mView.processList(data.getData());
}
});
}
@Override
public void getProduct(String phone, String verifyCode, String type) {
}
@Override
public void getDep(String permission) {
mView.showLoading();
mModel.getDep(permission).compose(Transformer.schedule()).subscribe(new WorkObserver<BaseBean>() {
@Override
public void doOnSubscribe(Disposable d) {
mDisposable.add(d);
}
@Override
public void onFail(String errorMsg) {
mView.hideLoading();
mView.onError(errorMsg);
}
@Override
public void onSuccess(BaseBean data) {
mView.hideLoading();
if (data.getCode() != 0) {
mView.onError(data.getMessage());
return;
}
// mView.depList();
}
});
}
}
package com.wd.workoffice.ui.activity.bat;
import android.os.Bundle;
import android.content.DialogInterface;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import com.wd.workoffice.contract.BatSaleContract;
import com.wd.workoffice.presenter.BatSalePresenter;
import com.wd.workoffice.util.DialogUtils;
import java.util.List;
import butterknife.BindView;
import butterknife.ButterKnife;
......@@ -15,7 +21,7 @@ import butterknife.OnClick;
/*
* 商店-销售
*/
public class StoreSaleActivity extends WorkToolBarActivity {
public class StoreSaleActivity extends WorkToolBarActivity implements BatSaleContract.View {
@BindView(R.id.tv_client)
......@@ -34,10 +40,14 @@ public class StoreSaleActivity extends WorkToolBarActivity {
TextView tvProduct;
@BindView(R.id.rl_product)
RelativeLayout rlProduct;
private BatSalePresenter batSalePresenter;
private QMUIDialog.MenuDialogBuilder depDialog;
@Override
protected void initView() {
ButterKnife.bind(this);
batSalePresenter = new BatSalePresenter();
depDialog = DialogUtils.listDialog(this);
}
@Override
......@@ -60,6 +70,7 @@ public class StoreSaleActivity extends WorkToolBarActivity {
case R.id.rl_client:
break;
case R.id.rl_dep:
depDialog.show();
break;
case R.id.rl_process:
break;
......@@ -67,4 +78,24 @@ public class StoreSaleActivity extends WorkToolBarActivity {
break;
}
}
@Override
public void processList(List<Object> dataList) {
}
@Override
public void productList(List<Object> dataList) {
}
@Override
public void depList(List<Object> dataList) {
depDialog.addItems(dataList.toArray(new String[dataList.size()]), new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
}
});
}
}
package com.wd.workoffice.ui.fg;
import android.view.View;
import android.widget.TextView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.scwang.smartrefresh.layout.SmartRefreshLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.bean.vo.BatLayoutVo;
import com.wd.workoffice.ui.activity.bat.StoreSaleActivity;
import com.wd.workoffice.ui.adapter.BatLayoutAdapter;
import java.util.ArrayList;
......@@ -118,6 +121,16 @@ public class MainFragment extends WorkBaseFg {
batLayoutAdapter.bindToRecyclerView(rvSale);
switch (rvSale.getId()) {
case R.id.rv_sale:
batLayoutAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
switch (position){
case 0:
startActivity(StoreSaleActivity.class);
break;
}
}
});
break;
case R.id.rv_store:
break;
......
package com.wd.workoffice.util;
import android.content.Context;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class DialogUtils {
public static QMUIDialog.MenuDialogBuilder listDialog(Context context) {
QMUIDialog.MenuDialogBuilder dialog = new QMUIDialog.MenuDialogBuilder(context);
return dialog;
}
}
<resources>
<!-- Base application theme. -->
<style name="Work.Base" parent="FlexibleTheme.Base">
<style name="FlexibleTheme" parent="QMUI.Compat">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>
<style name="Work.Base" parent="FlexibleTheme">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowAnimationStyle">@style/Animation.Activity.Translucent.Style</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="actionBarSize">@dimen/flexible_actionbar_size</item>
<item name="android:textAppearance">@style/Flexible.TextAppearance</item>
<item name="android:textAppearanceSmall">@style/Flexible.TextAppearance</item>
<item name="android:textColorPrimary">@color/flexible_text_color</item>
<item name="android:textColorPrimaryInverse">@color/flexible_text_color</item>
<item name="android:textColorTertiary">@color/flexible_text_color</item>
<item name="android:windowBackground">@color/flexible_background</item>
<item name="android:windowLightStatusBar">true</item>//修改状态栏颜色
<item name="android:windowIsTranslucent">false</item>
</style>
<style name="Work.Main" parent="FlexibleTheme.Base">
<item name="colorPrimaryDark">@color/mainColor</item>
<style name="Work.Base.Launcher">
<item name="android:windowIsTranslucent">true</item>
</style>
<style name="Work.Base.Main">
<item name="android:windowIsTranslucent">false</item>
</style>
<!--<style name="FlexibleTheme" parent="QMUI.Compat">-->
<!--<item name="windowActionBar">false</item>-->
<!--<item name="windowNoTitle">true</item>-->
<!--</style>-->
<!--<style name="Work.Base" parent="FlexibleTheme.Base">-->
<!--<item name="android:windowLightStatusBar">true</item>//修改状态栏颜色-->
<!--<item name="android:windowIsTranslucent">false</item>-->
<!--</style>-->
<!--<style name="Work.Main" parent="FlexibleTheme.Base">-->
<!--<item name="colorPrimaryDark">@color/mainColor</item>-->
<!--<item name="android:windowIsTranslucent">false</item>-->
<!--</style>-->
<!-- 分割线 -->
<style name="dividerX">
<item name="android:layout_width">match_parent</item>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论