Commit f920b567 by Wyh

Merge remote-tracking branch 'origin/master'

parents 97c4767f b28ba3bd
......@@ -18,7 +18,6 @@ package com.qmuiteam.qmui.alpha;
import android.content.Context;
import android.util.AttributeSet;
import androidx.constraintlayout.widget.ConstraintLayout;
/**
......
......@@ -19,10 +19,8 @@ package com.qmuiteam.qmui.layout;
import android.content.Context;
import android.graphics.Canvas;
import android.util.AttributeSet;
import com.qmuiteam.qmui.alpha.QMUIAlphaConstraintLayout;
import com.qmuiteam.qmui.alpha.QMUIAlphaLinearLayout;
import androidx.annotation.ColorInt;
/**
......
......@@ -68,6 +68,8 @@ public interface OrderContentContract {
void startActivityForResult(int Code, Class clazz, Intent intent);
void sendSuccess();
void setTransferTableName(String tableName);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
......@@ -84,5 +86,7 @@ public interface OrderContentContract {
Observable<TableDetail> getTable(int tableId);
Observable<BaseRespose> transferFood(RequestBody requestBody);
Observable<BaseResult> getSplitTables(int tableId);
}
}
......@@ -118,6 +118,12 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
}
@Override
public Observable<BaseResult> getSplitTables(int tableId) {
return mRepositoryManager.obtainRetrofitService(TableService.class)
.getSplitTables(tableId);
}
@Override
public Observable<BaseResult> toOrderPay(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(OrderPayService.class)
.toOrderPay(requestBody);
......
......@@ -1615,7 +1615,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
if (def == mid) {
modifier.setDefmodifier("1");
} else {
modifier.setDefmodifier("0");
if(TextUtils.isEmpty(modifier.getDefmodifier()) || "0".equals(modifier.getDefmodifier())){
modifier.setDefmodifier("0");
}
}
}
}
......@@ -1655,7 +1657,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
if (def == fid) {
comboItem.setDefmodifier("1");
} else {
comboItem.setDefmodifier("0");
if(TextUtils.isEmpty(comboItem.getDefmodifier()) || "0".equals(comboItem.getDefmodifier())){
comboItem.setDefmodifier("0");
}
}
}
}
......
......@@ -16,8 +16,10 @@ import com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.common.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.TableBean;
import com.gingersoft.gsa.cloud.base.common.bean.TableExtBean;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.JsonUtils;
import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.constans.GoldConstants;
import com.gingersoft.gsa.cloud.constans.PrintConstans;
......@@ -37,6 +39,8 @@ import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderMoneyAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderTopFunctionAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.widget.DiscountDialog;
import com.gingersoft.gsa.cloud.table.mvp.ui.widget.SplitTableDialog;
import com.gingersoft.gsa.cloud.ui.widget.dialog.BaseRetryDialog;
import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader;
......@@ -94,6 +98,10 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
private GetTableTimer tableTimer;
private Disposable mGetTablesDataDisposable;
/**
* 分檯弹窗
*/
private SplitTableDialog mSplitTableDialog;
private DiscountDialog.Builder mDiscountDialog;
......@@ -507,8 +515,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
});
}
public void getTable(int tableId, TextView tv_table_name) {
mModel.getTable(tableId)
public void getTable(TableBean.DataBean dataBean) {
mModel.getTable(dataBean.getId())
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null))
.subscribeOn(AndroidSchedulers.mainThread())
......@@ -530,7 +538,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
} else {
mRootView.showMessage(tableBean.getTableName() + "號檯操作中");
}
tv_table_name.setText(tableBean.getTableName());
mRootView.setTransferTableName(tableBean.getTableName());
} else {
mRootView.showMessage(result.getErrMsg());
}
......@@ -548,6 +556,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
RequestBody requestBody = new FormBody.Builder()
.add("tableId", String.valueOf(OpenTableManage.getDefault().getTableBean().getId()))
.add("targetId", String.valueOf(dataBean.getId()))
.add("tableNumber", OpenTableManage.getDefault().getTableBean().getTableNumber())
.add("targetTableNumber", dataBean.getTableNumber())
.add("orderId", String.valueOf(MyOrderManage.getInstance().getOrderId()))
.add("orderDetailsIds", ids)
.build();
......@@ -597,6 +607,87 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
});
}
public void getSplitTables(int tableId) {
mModel.getSplitTables(tableId)
.subscribeOn(Schedulers.io())
// .doOnSubscribe(disposable -> mRootView.showLoading(null))
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
// .doAfterTerminate(() -> mRootView.hideLoading())
.compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<BaseResult>(mErrorHandler) {
@Override
public void onSubscribe(Disposable d) {
super.onSubscribe(d);
mSplitTableDialog.clearItems();
mSplitTableDialog.setProgressVisibility(true);
}
@Override
public void onNext(@NonNull BaseResult info) {
if (info != null && info.isSuccess()) {
if (info.getData() != null) {
TableExtBean tableExtBean = JsonUtils.parseObject(info.getData(), TableExtBean.class);
List<TableBean.DataBean> dataBeanList = assemblyTableExts(tableExtBean.getRestaurantTable(), tableExtBean.getRestaurantTableExtList());
mSplitTableDialog.addItems(dataBeanList);
mSplitTableDialog.notifyDataSetChanged();
} else {
mSplitTableDialog.showEmptyView(true, 0, null);
}
} else {
mSplitTableDialog.showEmptyView(false, 0, null);
}
mSplitTableDialog.setProgressVisibility(false);
}
@Override
public void onError(Throwable t) {
super.onError(t);
mSplitTableDialog.setProgressVisibility(false);
mSplitTableDialog.showEmptyView(false, 0, t);
}
private List<TableBean.DataBean> assemblyTableExts(TableBean.DataBean mainTable, List<TableExtBean.DataBean> restaurantTableExtList) {
List<TableBean.DataBean> dataBeans = new ArrayList<>();
//添加主檯
dataBeans.add(mainTable);
//添加分檯
for (TableExtBean.DataBean dataBean : restaurantTableExtList) {
dataBeans.add(TableBean.splitTableTransformTable2(mainTable, dataBean));
}
return dataBeans;
}
});
}
public void showSplitTableDialog(int tableId) {
if (mSplitTableDialog == null) {
mSplitTableDialog = new SplitTableDialog(IActivity);
mSplitTableDialog.setOnClickListener(new SplitTableDialog.OnClickListener() {
@Override
public void onItemClick(SplitTableDialog dialog, TableBean.DataBean dataBean, int position) {
//獲取餐檯狀態
getTable(dataBean);
}
});
mSplitTableDialog.setOnRetryListener(new BaseRetryDialog.OnRetryListener() {
@Override
public void onRetryClick() {
getSplitTables(tableId);
}
});
}
mSplitTableDialog.setMainTableId(tableId);
mSplitTableDialog.build().show();
getSplitTables(tableId);
}
private void showDiscountDialog() {
if (mDiscountDialog == null) {
mDiscountDialog = new DiscountDialog.Builder(IActivity);
......
......@@ -331,7 +331,12 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
public void clickTableItem(TableBean.DataBean dataBean) {
switch (mCurrentOperatType) {
case OrderConentOperatTypeConstant.transfer_food_2:
mPresenter.getTable(dataBean.getId(), tv_table_name);
if (dataBean.getSplitStatus() == 1) {
mPresenter.showSplitTableDialog(dataBean.getId());
} else {
//獲取餐檯狀態
mPresenter.getTable(dataBean);
}
break;
default:
break;
......@@ -549,6 +554,11 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
}
@Override
public void setTransferTableName(String tableName) {
tv_table_name.setText(tableName + "號檯操作中");
}
@Override
public void startActivityForResult(int Code, Class clazz, Intent intent) {
if (intent == null) {
intent = new Intent(mContext, clazz);
......
......@@ -32,6 +32,7 @@ import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.alpha.QMUIAlphaLinearLayout;
import com.qmuiteam.qmui.alpha.QMUIAlphaRelativeLayout;
import com.qmuiteam.qmui.alpha.QMUIAlphaTextView;
import com.qmuiteam.qmui.layout.QMUIConstraintLayout;
import com.qmuiteam.qmui.layout.QMUILinearLayout;
import com.qmuiteam.qmui.layout.QMUIRelativeLayout;
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
......@@ -115,7 +116,7 @@ public class TableAdapter extends DefaultAdapter<TableBean.DataBean> {
class TableItemHolder extends BaseHolder<TableBean.DataBean> {
@BindView(R2.id.ll_container)
QMUIRelativeLayout ll_container;
QMUIConstraintLayout ll_container;
@BindView(R2.id.rl_table)
QMUIAlphaRelativeLayout rl_table;
@BindView(R2.id.btn_table)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment