Commit 3639ad20 by 宁斌

1、餐檯代碼結構調整 2、賬單管理折扣未送單 先送單再進入結賬頁

parent 9a665eff
...@@ -8,9 +8,6 @@ import org.greenrobot.greendao.annotation.NotNull; ...@@ -8,9 +8,6 @@ import org.greenrobot.greendao.annotation.NotNull;
import org.greenrobot.greendao.annotation.Property; import org.greenrobot.greendao.annotation.Property;
import org.greenrobot.greendao.annotation.Transient; import org.greenrobot.greendao.annotation.Transient;
import lombok.Data;
import lombok.extern.java.Log;
/** /**
* 作者:ELEGANT_BIN * 作者:ELEGANT_BIN
* 版本:1.6.0 * 版本:1.6.0
...@@ -35,7 +32,7 @@ public class Function { ...@@ -35,7 +32,7 @@ public class Function {
private String resName; private String resName;
private String resUrl; private String resUrl;
private String imageURL; private String imageURL;
//暫時沒有imageURL,用本地資源代替 /**暫時沒有imageURL,用本地資源代替*/
private int icRes; private int icRes;
/**狀態 /**狀態
* 0 未开通 * 0 未开通
......
package com.gingersoft.gsa.cloud.patterns;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-24
* 修订历史:2020-09-24
* 描述:
*/
public interface Strategy<T> {
/**具體操作行為實現方法*/
void action(T t);
}
...@@ -6,6 +6,7 @@ import com.gingersoft.gsa.cloud.database.bean.Modifier; ...@@ -6,6 +6,7 @@ import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseOrderRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseOrderRespose;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean; import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.TableDetail; import com.gingersoft.gsa.cloud.table.mvp.model.bean.TableDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.table.action.TableAction;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllTableFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllTableFragment;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
...@@ -49,13 +50,13 @@ public interface TableContract { ...@@ -49,13 +50,13 @@ public interface TableContract {
void setBottomFunctionRecycleLayoutManager(int orientation); void setBottomFunctionRecycleLayoutManager(int orientation);
void setCurrentOperatType(int type); void setCurrentTableAction(TableAction action);
void setOperatContentText(String contentText); void setTableActionContentText(String contentText);
String getOperatContentText(); String getOperatContentText();
void setTableActionTitle(); void setTableActionTitle(TableAction action);
void canceTableAction(); void canceTableAction();
......
...@@ -24,16 +24,4 @@ public interface TableActionConstant { ...@@ -24,16 +24,4 @@ public interface TableActionConstant {
int table_status_4 = 4; int table_status_4 = 4;
int table_status_5 = 5; int table_status_5 = 5;
/**
* 1#分台
* 2#上菜纸
* 3#重置
* 4#转台
* 5#sky_order
*/
int splite_table_1 = 1;
int print_parper_2 = 2;
int init_table_3 = 3;
int move_table_4 = 4;
int skyorder_mode_5 = 5;
} }
package com.gingersoft.gsa.cloud.table.mvp.model.table;
import android.content.Context;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-打印上菜紙{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
*/
public class PrintServingPaperAction extends TableActionStrategy{
public PrintServingPaperAction(Context context) {
super(context);
}
@Override
public void action(TableBean.DataBean dataBean) {
if (dataBean.getSplitStatus() == 1) {
splitTableAction();
} else {
// showOperatTipDialog(dataBean);
}
}
// public void showOperatTipDialog(TableBean.DataBean dataBean) {
// QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(mContext);
// dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_doubt);
// dialogBuilder.setMessage("是否確認打印");
// dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, new QMUIDialogAction.ActionListener() {
// @Override
// public void onClick(QMUIDialog dialog, int index) {
// dialog.dismiss();
// loadOrderToPrint(dataBean.getId(), dataBean.getOrderId());
// }
// });
// dialogBuilder.addAction("取消", new QMUIDialogAction.ActionListener() {
// @Override
// public void onClick(QMUIDialog dialog, int index) {
// dialog.dismiss();
// cancel();
// }
// });
// dialogBuilder.create(R.style.MyDialogTheme2).show();
// }
}
package com.gingersoft.gsa.cloud.table.mvp.model.table;
import android.content.Context;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-重置餐檯{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
*/
public class ResetTableAction extends TableActionStrategy implements SplitTableStrategy{
public ResetTableAction(Context context) {
super(context);
}
@Override
public void splitTableAction() {
}
@Override
public void action(TableBean.DataBean dataBean) {
}
@Override
public void cancel() {
}
}
package com.gingersoft.gsa.cloud.table.mvp.model.table;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:分檯策略接口 需要對分檯進行操作需要實現此接口
*/
public interface SplitTableStrategy {
void splitTableAction();
}
package com.gingersoft.gsa.cloud.table.mvp.model.table;
import android.content.Context;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯功能策略類,所有餐檯功能都需要繼承這個
*/
public abstract class TableActionStrategy {
protected Context mContext;
public TableActionStrategy(Context context) {
this.mContext = context;
}
public abstract void action(TableBean.DataBean dataBean);
protected void splitTableAction(){
if (actionListener != null) {
actionListener.splitTableAction();
}
}
protected void cancel() {
if (actionListener != null) {
actionListener.cancel();
}
}
private OnActionListener actionListener;
public void setActionListener(OnActionListener actionListener) {
this.actionListener = actionListener;
}
public interface OnActionListener {
void splitTableAction();
void cancel();
}
}
package com.gingersoft.gsa.cloud.table.mvp.model.table; package com.gingersoft.gsa.cloud.table.mvp.model.table.action;
import android.content.Context; import android.content.Context;
...@@ -11,21 +11,25 @@ import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean; ...@@ -11,21 +11,25 @@ import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
* 修订历史:2020-09-23 * 修订历史:2020-09-23
* 描述:餐檯模式-轉台{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity} * 描述:餐檯模式-轉台{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
*/ */
public class MoveTableAction extends TableActionStrategy implements SplitTableStrategy{ public class MoveTableAction extends TableAction {
public MoveTableAction(Context context) { public MoveTableAction(Context context) {
super(context); super(context, "轉台", "請選擇檯號", "");
} }
@Override @Override
public void action(TableBean.DataBean dataBean) { public void action(TableBean.DataBean dataBean) {
if (dataBean.getSplitStatus() == 1) {
showSplitTableDialogAction();
} else {
//獲取餐檯狀態
moveTable(dataBean);
}
} }
@Override @Override
public void splitTableAction() { public boolean filterTableCondition(TableBean.DataBean dataBean) {
return true;
} }
......
package com.gingersoft.gsa.cloud.table.mvp.model.table.action;
import android.content.Context;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
import com.gingersoft.gsa.cloud.table.R;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-打印上菜紙{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
*/
public class PrintServingPaperAction extends TableAction {
public PrintServingPaperAction(Context context) {
super(context, "上菜紙", "請選擇檯號", "");
}
@Override
public void action(TableBean.DataBean dataBean) {
setOperatContentText(dataBean.getTableName());
if (dataBean.getSplitStatus() == 1) {
showSplitTableDialogAction();
} else {
showActionTipDialog(dataBean);
}
}
@Override
public boolean filterTableCondition(TableBean.DataBean dataBean) {
return dataBean.getStatus() != 0;
}
public void showActionTipDialog(TableBean.DataBean dataBean) {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(mContext);
dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_doubt);
dialogBuilder.setMessage("是否確認打印");
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, new QMUIDialogAction.ActionListener() {
@Override
public void onClick(QMUIDialog dialog, int index) {
dialog.dismiss();
loadOrderToPrint(dataBean);
}
});
dialogBuilder.addAction("取消", new QMUIDialogAction.ActionListener() {
@Override
public void onClick(QMUIDialog dialog, int index) {
dialog.dismiss();
cancel();
}
});
dialogBuilder.create(R.style.MyDialogTheme2).show();
}
}
package com.gingersoft.gsa.cloud.table.mvp.model.table; package com.gingersoft.gsa.cloud.table.mvp.model.table.action;
import android.content.Context; import android.content.Context;
...@@ -11,26 +11,21 @@ import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean; ...@@ -11,26 +11,21 @@ import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
* 修订历史:2020-09-23 * 修订历史:2020-09-23
* 描述:餐檯模式-打印skyorder碼{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity} * 描述:餐檯模式-打印skyorder碼{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
*/ */
public class PrintSkyOrderAction extends TableActionStrategy implements SplitTableStrategy { public class PrintSkyOrderAction extends TableAction {
public PrintSkyOrderAction(Context context) { public PrintSkyOrderAction(Context context) {
super(context); super(context, "打印skyorder", "請選擇檯號", "");
} }
@Override @Override
public void splitTableAction() {
}
@Override
public void action(TableBean.DataBean dataBean) { public void action(TableBean.DataBean dataBean) {
} }
@Override @Override
public void cancel() { public boolean filterTableCondition(TableBean.DataBean dataBean) {
return true;
} }
} }
package com.gingersoft.gsa.cloud.table.mvp.model.table.action;
import android.content.Context;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
import com.gingersoft.gsa.cloud.table.R;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯模式-重置餐檯{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
*/
public class ResetTableAction extends TableAction {
public ResetTableAction(Context context) {
super(context, "重置餐檯", "請選擇需要重置的檯號", "");
}
@Override
public void action(TableBean.DataBean dataBean) {
setOperatContentText(dataBean.getTableName());
if (dataBean.getSplitStatus() == 1) {
showSplitTableDialogAction();
} else {
showActionTipDialog(dataBean);
}
}
@Override
public boolean filterTableCondition(TableBean.DataBean dataBean) {
return dataBean.getUseStatus() == 1 || dataBean.getSplitStatus() == 1;
}
public void showActionTipDialog(TableBean.DataBean dataBean) {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(mContext);
dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_doubt);
dialogBuilder.setMessage("是否確認重置" + dataBean.getTableName() + "號檯?");
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, new QMUIDialogAction.ActionListener() {
@Override
public void onClick(QMUIDialog dialog, int index) {
dialog.dismiss();
resetTable(dataBean);
}
});
dialogBuilder.addAction("取消", new QMUIDialogAction.ActionListener() {
@Override
public void onClick(QMUIDialog dialog, int index) {
dialog.dismiss();
cancel();
}
});
dialogBuilder.create(R.style.MyDialogTheme2).show();
}
}
package com.gingersoft.gsa.cloud.table.mvp.model.table; package com.gingersoft.gsa.cloud.table.mvp.model.table.action;
import android.content.Context; import android.content.Context;
...@@ -11,19 +11,21 @@ import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean; ...@@ -11,19 +11,21 @@ import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
* 修订历史:2020-09-23 * 修订历史:2020-09-23
* 描述:餐檯模式-分檯{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity} * 描述:餐檯模式-分檯{@link com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity}
*/ */
public class SplitTableAction extends TableActionStrategy { public class SplitTableAction extends TableAction {
public SplitTableAction(Context context) { public SplitTableAction(Context context) {
super(context); super(context, "分檯", "請選擇檯號", "");
} }
@Override @Override
public void action(TableBean.DataBean dataBean) { public void action(TableBean.DataBean dataBean) {
setOperatContentText(dataBean.getTableName());
splitTableAction(dataBean);
} }
@Override @Override
public void cancel() { public boolean filterTableCondition(TableBean.DataBean dataBean) {
return dataBean.getStatus() != 0;
} }
} }
package com.gingersoft.gsa.cloud.table.mvp.model.table.action;
import android.content.Context;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
import com.gingersoft.gsa.cloud.patterns.Strategy;
import lombok.Data;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-23
* 修订历史:2020-09-23
* 描述:餐檯功能策略類,所有餐檯功能都需要繼承這個類
*/
@Data
public abstract class TableAction implements Strategy<TableBean.DataBean> {
public Context mContext;
protected String actionTitle;
protected String actionHint;
protected String actionContent;
public TableAction(Context mContext) {
this.mContext = mContext;
}
public TableAction(Context context, String actionTitle, String actionHint, String actionContent) {
this.mContext = context;
this.actionTitle = actionTitle;
this.actionHint = actionHint;
this.actionContent = actionContent;
}
/**不同餐檯操作,對餐檯的過濾條件*/
public abstract boolean filterTableCondition(TableBean.DataBean dataBean);
protected void setOperatContentText(String content) {
if (actionListener != null) {
actionListener.setOperatContentText(content);
}
}
protected void resetTable(TableBean.DataBean tableBean) {
if (actionListener != null) {
actionListener.resetTable(tableBean);
}
}
protected void moveTable(TableBean.DataBean tableBean) {
if (actionListener != null) {
actionListener.moveTable(tableBean);
}
}
protected void loadOrderToPrint(TableBean.DataBean tableBean) {
if (actionListener != null) {
actionListener.loadOrderToPrint(tableBean);
}
}
protected void showSplitTableDialogAction() {
if (actionListener != null) {
actionListener.showSplitTableDialogAction();
}
}
protected void splitTableAction(TableBean.DataBean tableBean) {
if (actionListener != null) {
actionListener.splitTableAction(tableBean);
}
}
public void cancel() {
if (actionListener != null) {
actionListener.cancel();
}
}
private OnActionListener actionListener;
public void setActionListener(OnActionListener actionListener) {
this.actionListener = actionListener;
}
public interface OnActionListener {
void setOperatContentText(String content);
void resetTable(TableBean.DataBean tableBean);
void moveTable(TableBean.DataBean tableBean);
void loadOrderToPrint(TableBean.DataBean tableBean);
void splitTableAction(TableBean.DataBean tableBean);
void showSplitTableDialogAction();
void cancel();
}
}
...@@ -394,7 +394,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex ...@@ -394,7 +394,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
// } // }
// } // }
// } // }
private void addSentOrderDiscount() { protected void addSentOrderDiscount() {
OrderBean orderBean = myOrderManage.getOrderBean(); OrderBean orderBean = myOrderManage.getOrderBean();
if (orderBean != null) { if (orderBean != null) {
List<OrderDiscount.Respose> discountDetails = orderBean.getDiscountDetails(); List<OrderDiscount.Respose> discountDetails = orderBean.getDiscountDetails();
...@@ -450,7 +450,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex ...@@ -450,7 +450,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
/** /**
* 添加餐檯服務費 * 添加餐檯服務費
*/ */
private void addTableServiceAmount() { protected void addTableServiceAmount() {
TableBean.DataBean dataBean = OpenTableManage.getDefault().getTableBean(); TableBean.DataBean dataBean = OpenTableManage.getDefault().getTableBean();
if (dataBean == null) { if (dataBean == null) {
return; return;
......
...@@ -12,14 +12,15 @@ import com.gingersoft.gsa.cloud.aspectj.XClickUtil; ...@@ -12,14 +12,15 @@ import com.gingersoft.gsa.cloud.aspectj.XClickUtil;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney; import com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.common.bean.discount.CouponDiscountBean;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo; import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.common.bean.OrderBean; 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.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean; import com.gingersoft.gsa.cloud.base.common.bean.discount.CouponDiscountBean;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableExtBean; import com.gingersoft.gsa.cloud.base.common.bean.discount.CouponDiscountResult;
import com.gingersoft.gsa.cloud.base.common.bean.mealManger.MyOrderManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.common.bean.mealManger.OpenTableManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableBean;
import com.gingersoft.gsa.cloud.base.common.bean.table.TableExtBean;
import com.gingersoft.gsa.cloud.base.utils.JsonUtils; import com.gingersoft.gsa.cloud.base.utils.JsonUtils;
import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils; import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils;
import com.gingersoft.gsa.cloud.constans.GoldConstants; import com.gingersoft.gsa.cloud.constans.GoldConstants;
...@@ -29,9 +30,9 @@ import com.gingersoft.gsa.cloud.database.bean.Function; ...@@ -29,9 +30,9 @@ import com.gingersoft.gsa.cloud.database.bean.Function;
import com.gingersoft.gsa.cloud.function.FunctionManager; import com.gingersoft.gsa.cloud.function.FunctionManager;
import com.gingersoft.gsa.cloud.print.PrinterUtils; import com.gingersoft.gsa.cloud.print.PrinterUtils;
import com.gingersoft.gsa.cloud.table.ComponentTable; import com.gingersoft.gsa.cloud.table.ComponentTable;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract; import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseOrderRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseOrderRespose;
import com.gingersoft.gsa.cloud.base.common.bean.discount.CouponDiscountResult;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.TableDetail; import com.gingersoft.gsa.cloud.table.mvp.model.bean.TableDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.AddOrderRequest; import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.AddOrderRequest;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.CreateOrderRequest; import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.CreateOrderRequest;
...@@ -50,6 +51,7 @@ import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog; ...@@ -50,6 +51,7 @@ import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager; import com.jess.arms.integration.AppManager;
import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.RxLifecycleUtils; import com.jess.arms.utils.RxLifecycleUtils;
import com.scwang.smartrefresh.layout.api.RefreshLayout; import com.scwang.smartrefresh.layout.api.RefreshLayout;
...@@ -356,7 +358,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -356,7 +358,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
mRootView.showMessage("送單成功"); mRootView.showMessage("送單成功");
//刷新食品列表 //刷新食品列表
if (afterToActivity != null) { if (afterToActivity != null) {
updateFoodList(info); updateOrderDetails(info);
} }
printSendOrder(afterToActivity); printSendOrder(afterToActivity);
} }
...@@ -506,7 +508,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -506,7 +508,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
@Override @Override
public void onNext(@NonNull BaseOrderRespose info) { public void onNext(@NonNull BaseOrderRespose info) {
updateFoodList(info); updateOrderDetails(info);
} }
}); });
} }
...@@ -652,9 +654,9 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -652,9 +654,9 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
mRootView.showMessage("轉移成功"); mRootView.showMessage("轉移成功");
updateFoodList(info); updateOrderDetails(info);
updateBillOrderItem(); updateBillOrderItem();
IActivity.initOrderDetail(); IActivity.initOrderDetail();
IActivity.backPressed(); IActivity.backPressed();
} else { } else {
...@@ -771,12 +773,14 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -771,12 +773,14 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
} }
/** /**
* 更新食品列表 * 更新訂單詳情
* *
* @param info * @param info
*/ */
private void updateFoodList(BaseOrderRespose info) { private void updateOrderDetails(BaseOrderRespose info) {
if (info.getData() != null && info.getData().getOrderDetails() != null) { if (info.getData() != null) {
if (info.getData().getOrderDetails() != null) {
OpenTableManage.getDefault().setPeopleNumber(info.getData().getPerson()); OpenTableManage.getDefault().setPeopleNumber(info.getData().getPerson());
//緩存訂單信息 //緩存訂單信息
...@@ -789,6 +793,14 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra ...@@ -789,6 +793,14 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
mSelectMealAdapter.notifyDataSetChanged(); mSelectMealAdapter.notifyDataSetChanged();
mSelectMealAdapter.setIndex(); mSelectMealAdapter.setIndex();
} }
for (BillOrderMoney billOrderMoney: mOrderMoneyList) {
//將已有折扣 服務費狀態改為已送單
billOrderMoney.setStatus(BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
billOrderMoney.setTextColor(ArmsUtils.getColor(IActivity, R.color.theme_black));
}
mOrderMoneyAdapter.notifyDataSetChanged();
}
} }
/** /**
......
package com.gingersoft.gsa.cloud.table.mvp.presenter; package com.gingersoft.gsa.cloud.table.mvp.presenter;
import android.app.Application; import android.app.Application;
import android.content.Context;
import android.os.CountDownTimer; import android.os.CountDownTimer;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.View; import android.view.View;
...@@ -30,8 +31,12 @@ import com.gingersoft.gsa.cloud.table.R; ...@@ -30,8 +31,12 @@ import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.mvp.contract.TableContract; import com.gingersoft.gsa.cloud.table.mvp.contract.TableContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseOrderRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseOrderRespose;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.TableDetail; import com.gingersoft.gsa.cloud.table.mvp.model.bean.TableDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.TableActionConstant; import com.gingersoft.gsa.cloud.table.mvp.model.table.action.MoveTableAction;
import com.gingersoft.gsa.cloud.table.mvp.model.table.TableActionStrategy; import com.gingersoft.gsa.cloud.table.mvp.model.table.action.PrintServingPaperAction;
import com.gingersoft.gsa.cloud.table.mvp.model.table.action.PrintSkyOrderAction;
import com.gingersoft.gsa.cloud.table.mvp.model.table.action.ResetTableAction;
import com.gingersoft.gsa.cloud.table.mvp.model.table.action.SplitTableAction;
import com.gingersoft.gsa.cloud.table.mvp.model.table.action.TableAction;
import com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil; import com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BottomFunctionAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BottomFunctionAdapter;
...@@ -103,18 +108,8 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -103,18 +108,8 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
private BottomFunctionAdapter mBottomFunctionAdapter; private BottomFunctionAdapter mBottomFunctionAdapter;
private List<Function> mBottomFunctionList = new ArrayList<>(); private List<Function> mBottomFunctionList = new ArrayList<>();
private TableActionStrategy mTableAction; private TableAction mTableAction;
/** private List<TableAction> mTableActions = new ArrayList<>();
* 当前选择的操作:
* 1#分台
* 2#上菜纸
* 3#重置
* 4#转台
* 5#sky_order
* 6#結賬、
* 10#餐檯模式
*/
private int mCurrentOperatType = -1;
/** /**
* 选中操作的台名、id、分檯編號 * 选中操作的台名、id、分檯編號
*/ */
...@@ -128,7 +123,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -128,7 +123,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
private long targetTableId; private long targetTableId;
private String targetTableNumber = ""; private String targetTableNumber = "";
//定时获取餐台 定时器
private GetTableTimer tableTimer; private GetTableTimer tableTimer;
private Disposable mGetTablesDataDisposable; private Disposable mGetTablesDataDisposable;
...@@ -137,9 +131,18 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -137,9 +131,18 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
super(model, rootView); super(model, rootView);
this.IActivity = (TableActivity) rootView; this.IActivity = (TableActivity) rootView;
initTableActions(IActivity);
initGetTableTimer(); initGetTableTimer();
} }
private void initTableActions(Context context) {
mTableActions.add(new ResetTableAction(context));
mTableActions.add(new MoveTableAction(context));
mTableActions.add(new SplitTableAction(context));
mTableActions.add(new PrintServingPaperAction(context));
mTableActions.add(new PrintSkyOrderAction(context));
}
@Override @Override
public void onDestroy() { public void onDestroy() {
super.onDestroy(); super.onDestroy();
...@@ -174,37 +177,15 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -174,37 +177,15 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
// mRootView.showMessage("服務已到期,請前往續費"); // mRootView.showMessage("服務已到期,請前往續費");
// return; // return;
// } // }
// if (function.getResUrl().equals(ComponentTable.table.bottom[0].getKeyRes())) { if (mTableActions.size() > position) {
// //重置 mTableAction = mTableActions.get(position);
// mRootView.setCurrentOperatType(TableActionConstant.init_table_3); if (mTableAction != null) {
// } else if (function.getResUrl().equals(ComponentTable.table.bottom[1].getKeyRes())) { boolean isMoveTableAction = mTableAction instanceof MoveTableAction;
// //轉檯 if (!isMoveTableAction) {
// mRootView.setCurrentOperatType(TableActionConstant.move_table_4); filterTableByAction();
// } else if (function.getResUrl().equals(ComponentTable.table.bottom[3].getKeyRes())) { }
// //上菜紙 mRootView.setCurrentTableAction(mTableAction);
// mRootView.setCurrentOperatType(TableActionConstant.print_parper_2); }
// }
switch (position) {
case 0:
// mTableAction = new ResetTableAction();
//重置
mRootView.setCurrentOperatType(TableActionConstant.init_table_3);
break;
case 1:
// mTableAction = new MoveTableAction();
//轉檯
mRootView.setCurrentOperatType(TableActionConstant.move_table_4);
break;
case 2:
// mTableAction = new SplitTableAction();
//分檯
mRootView.setCurrentOperatType(TableActionConstant.splite_table_1);
break;
case 3:
// mTableAction = new PrintServingPaperAction();
//上菜紙
mRootView.setCurrentOperatType(TableActionConstant.print_parper_2);
break;
} }
} }
}); });
...@@ -319,11 +300,11 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -319,11 +300,11 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
}); });
} }
public void loadOrderToPrint(long tableId, Long orderId) { public void loadOrderToPrintParper(TableBean.DataBean tableBean) {
if (orderId == null) { if (tableBean.getOrderId() == null) {
return; return;
} }
mModel.getOrderById(orderId) mModel.getOrderById(tableBean.getOrderId())
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
.subscribeOn(AndroidSchedulers.mainThread()) .subscribeOn(AndroidSchedulers.mainThread())
...@@ -337,11 +318,11 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -337,11 +318,11 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
if (respose.isSuccess()) { if (respose.isSuccess()) {
OpenTableManage.getDefault().setPeopleNumber(0); OpenTableManage.getDefault().setPeopleNumber(0);
//設置當前開台數據1584427984728 1584428017196 1584428086282 //設置當前開台數據1584427984728 1584428017196 1584428086282
TableBean.DataBean dataBean = getTableById(tableId); // TableBean.DataBean dataBean = getTableById(tableId);
TableBean.DataBean openTableBean = null; TableBean.DataBean openTableBean = tableBean;
if (dataBean != null) { // if (dataBean != null) {
openTableBean = new TableBean.DataBean(dataBean); // openTableBean = new TableBean.DataBean(dataBean);
} // }
OrderBean orderBean = respose.getData(); OrderBean orderBean = respose.getData();
if (orderBean != null && respose.getData().getOrderDetails() != null) { if (orderBean != null && respose.getData().getOrderDetails() != null) {
if (respose.getData().getCreateTime() != null && openTableBean != null) { if (respose.getData().getCreateTime() != null && openTableBean != null) {
...@@ -522,7 +503,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -522,7 +503,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
return 0; return 0;
} }
public void getTable(TableBean.DataBean dataBean) { public void getTableToMove(TableBean.DataBean dataBean) {
mModel.getTable(dataBean.getId(), dataBean.getTableNumber()) mModel.getTable(dataBean.getId(), dataBean.getTableNumber())
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null)) .doOnSubscribe(disposable -> mRootView.showLoading(null))
...@@ -553,7 +534,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -553,7 +534,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
originalTableName = tableBean.getTableName(); originalTableName = tableBean.getTableName();
originalTableId = tableBean.getId(); originalTableId = tableBean.getId();
originalTableNumber = tableBean.getTableNumber(); originalTableNumber = tableBean.getTableNumber();
mRootView.setOperatContentText("由: " + originalTableName + " 轉到 "); mRootView.setTableActionContentText("由: " + originalTableName + " 轉到 ");
} else { } else {
if (tableBean.getUseStatus() == 1) { if (tableBean.getUseStatus() == 1) {
mRootView.showMessage("此檯使用中."); mRootView.showMessage("此檯使用中.");
...@@ -563,11 +544,11 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -563,11 +544,11 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
targetTableId = tableBean.getId(); targetTableId = tableBean.getId();
targetTableNumber = tableBean.getTableNumber(); targetTableNumber = tableBean.getTableNumber();
if (tableBean.getStatus() == 1 || tableBean.getStatus() == 2 || tableBean.getStatus() == 3) { if (tableBean.getStatus() == 1 || tableBean.getStatus() == 2 || tableBean.getStatus() == 3) {
mRootView.setOperatContentText("由: " + originalTableName + " 合併 " + targetTableName); mRootView.setTableActionContentText("由: " + originalTableName + " 合併 " + targetTableName);
} else { } else {
mRootView.setOperatContentText("由: " + originalTableName + " 轉到 " + targetTableName); mRootView.setTableActionContentText("由: " + originalTableName + " 轉到 " + targetTableName);
} }
showOperatTipDialog(tableBean); showMoveActionDialog(tableBean);
} }
} }
} else { } else {
...@@ -742,42 +723,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -742,42 +723,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
}); });
} }
public void loadOrderList(long orderId, boolean isPrintParper) {
RequestBody requestBody = new FormBody.Builder()
.add("orderId", orderId + "")
.build();
mModel.initTable(requestBody)
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null))
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
.doAfterTerminate(() -> mRootView.hideLoading())
.compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<BaseOrderRespose>(mErrorHandler) {
@Override
public void onNext(@NonNull BaseOrderRespose respose) {
if (respose.isSuccess()) {
if (isPrintParper) {
//打印上菜紙
startPrintParper();
}
} else {
mRootView.showMessage(respose.getErrMsg());
}
}
});
}
private void startPrintParper() {
}
/** /**
* 刷新分檯数据 * 刷新分檯数据
*/ */
...@@ -791,64 +736,30 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -791,64 +736,30 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
/** /**
* 根据操作类型过滤一遍餐台 * 根据操作类型过滤一遍餐台
*/ */
public void filterTableByOperatType() { public void filterTableByAction() {
if (mTableList.size() == 0) { if (mTableList.size() == 0) {
return; return;
} }
List<TableBean.DataBean> filterTableBeanList = new ArrayList<>(); List<TableBean.DataBean> filterTableBeanList = new ArrayList<>();
//如果是餐檯操作過一遍筛选 if (mTableAction != null) {
switch (mCurrentOperatType) {
case TableActionConstant.splite_table_1:
for (int i = 0; i < mTableList.size(); i++) {
// if (mTableList.get(i).getStatus() != 0 || mTableList.get(i).getSplitStatus() == 1 ? true : false) {
if (mTableList.get(i).getStatus() != 0) {
filterTableBeanList.add(mTableList.get(i));
}
}
break;
case TableActionConstant.print_parper_2:
for (int i = 0; i < mTableList.size(); i++) {
if (mTableList.get(i).getStatus() != 0) {
filterTableBeanList.add(mTableList.get(i));
}
}
break;
case TableActionConstant.init_table_3:
for (int i = 0; i < mTableList.size(); i++) { for (int i = 0; i < mTableList.size(); i++) {
if (mTableList.get(i).getUseStatus() == 1 || mTableList.get(i).getSplitStatus() == 1) { TableBean.DataBean dataBean = mTableList.get(i);
filterTableBeanList.add(mTableList.get(i)); if (mTableAction.filterTableCondition(dataBean)) {
filterTableBeanList.add(dataBean);
} }
} }
break; } else {
// case TableActionConstant.skyorder_mode_5: //正常餐檯模式下顯示所有餐檯數據
// for (int i = 0; i < datasBeans.size(); i++) {
// mTableList.add(datasBeans.get(i));
// }
// break;
case TableActionConstant.move_table_4:
case -1: //正常餐檯模式下顯示所有餐檯數據
filterTableBeanList.addAll(mTableList); filterTableBeanList.addAll(mTableList);
break;
} }
IActivity.nofilyFragmentUpdateTableData(filterTableBeanList); IActivity.nofilyFragmentUpdateTableData(filterTableBeanList);
} }
public void showOperatTipDialog(TableBean.DataBean dataBean) { public void showMoveActionDialog(TableBean.DataBean dataBean) {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(IActivity); QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(IActivity);
dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_doubt); dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_doubt);
//是否合併檯 //是否合併檯
boolean isMergeTable = false; boolean isMergeTable = false;
switch (mCurrentOperatType) {
case TableActionConstant.splite_table_1:
break;
case TableActionConstant.print_parper_2:
dialogBuilder.setMessage("是否確認打印");
break;
case TableActionConstant.init_table_3:
dialogBuilder.setMessage("是否確認重置" + dataBean.getTableName() + "號檯?");
break;
case TableActionConstant.move_table_4:
String message; String message;
if (dataBean.getStatus() == 1 || dataBean.getStatus() == 2 || dataBean.getStatus() == 3) { if (dataBean.getStatus() == 1 || dataBean.getStatus() == 2 || dataBean.getStatus() == 3) {
message = "是否由%s號檯合併到%s號檯"; message = "是否由%s號檯合併到%s號檯";
...@@ -857,42 +768,19 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -857,42 +768,19 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
message = "是否由%s號檯轉到%s號檯"; message = "是否由%s號檯轉到%s號檯";
} }
dialogBuilder.setMessage(String.format(message, originalTableName, targetTableName)); dialogBuilder.setMessage(String.format(message, originalTableName, targetTableName));
break;
case TableActionConstant.skyorder_mode_5:
break;
}
boolean finalIsMergeTable = isMergeTable; boolean finalIsMergeTable = isMergeTable;
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, new QMUIDialogAction.ActionListener() { dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, new QMUIDialogAction.ActionListener() {
@Override @Override
public void onClick(QMUIDialog dialog, int index) { public void onClick(QMUIDialog dialog, int index) {
dialog.dismiss(); dialog.dismiss();
switch (mCurrentOperatType) {
case TableActionConstant.splite_table_1:
break;
case TableActionConstant.print_parper_2:
loadOrderToPrint(dataBean.getId(), dataBean.getOrderId());
break;
case TableActionConstant.init_table_3:
initTable(dataBean.getId(), dataBean.getTableNumber(), true);
break;
case TableActionConstant.move_table_4:
turnTable(originalTableId, targetTableId, originalTableNumber, targetTableNumber, finalIsMergeTable); turnTable(originalTableId, targetTableId, originalTableNumber, targetTableNumber, finalIsMergeTable);
break;
case TableActionConstant.skyorder_mode_5:
break;
}
} }
}); });
dialogBuilder.addAction("取消", new QMUIDialogAction.ActionListener() { dialogBuilder.addAction("取消", new QMUIDialogAction.ActionListener() {
@Override @Override
public void onClick(QMUIDialog dialog, int index) { public void onClick(QMUIDialog dialog, int index) {
//重置之前選的餐檯數據
initTableActionParameter();
mRootView.setTableActionTitle();
dialog.dismiss(); dialog.dismiss();
mTableAction.cancel();
} }
}); });
dialogBuilder.create(R.style.MyDialogTheme2).show(); dialogBuilder.create(R.style.MyDialogTheme2).show();
...@@ -904,32 +792,17 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -904,32 +792,17 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
mSplitTableDialog.setOnClickListener(new SplitTableDialog.OnClickListener() { mSplitTableDialog.setOnClickListener(new SplitTableDialog.OnClickListener() {
@Override @Override
public void onItemClick(SplitTableDialog dialog, TableBean.DataBean dataBean, int position) { public void onItemClick(SplitTableDialog dialog, TableBean.DataBean dataBean, int position) {
int currentChooseOperatType = getCurrentChooseOperatType(); if (mTableAction != null) {
switch (currentChooseOperatType) { if (mTableAction instanceof MoveTableAction) {
case TableActionConstant.print_parper_2: getTableToMove(dataBean);
case TableActionConstant.init_table_3: } else {
showOperatTipDialog(dataBean); mTableAction.action(dataBean);
break; }
case TableActionConstant.move_table_4: } else {
mSplitTableDialog.closeDialog(); //開台操作
//獲取餐檯狀態
getTable(dataBean);
break;
default:
mSplitTableDialog.closeDialog();
openTable(dataBean.getId(), dataBean); openTable(dataBean.getId(), dataBean);
break;
} }
// if (mTableAction != null) { mSplitTableDialog.closeDialog();
// if (mTableAction instanceof PrintServingPaperAction || mTableAction instanceof ResetTableAction) {
//
// }
//
// } else {
// //開台操作
// mSplitTableDialog.closeDialog();
// openTable(dataBean.getId(), dataBean);
// }
} }
}); });
mSplitTableDialog.setOnRetryListener(new BaseRetryDialog.OnRetryListener() { mSplitTableDialog.setOnRetryListener(new BaseRetryDialog.OnRetryListener() {
...@@ -950,11 +823,40 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -950,11 +823,40 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
public boolean doTableAction(TableBean.DataBean dataBean) { public boolean doTableAction(TableBean.DataBean dataBean) {
if (mTableAction != null) { if (mTableAction != null) {
mTableAction.action(dataBean); mTableAction.action(dataBean);
mTableAction.setActionListener(new TableActionStrategy.OnActionListener() { mTableAction.setActionListener(new TableAction.OnActionListener() {
@Override
public void setOperatContentText(String content) {
mRootView.setTableActionContentText(content);
}
@Override
public void resetTable(TableBean.DataBean tableBean) {
initTable(tableBean.getId(),tableBean.getTableNumber(),true);
}
@Override @Override
public void splitTableAction() { public void moveTable(TableBean.DataBean tableBean) {
// showSplitTableDialog(dataBean.getId()); if(dataBean.getId() == tableBean.getId()){
CommonTipDialog.showSurpisedDialog(IActivity, "相同檯不能轉移", null, null, null, null, null);
return;
}
getTableToMove(tableBean);
}
@Override
public void loadOrderToPrint(TableBean.DataBean tableBean) {
loadOrderToPrintParper(tableBean);
}
@Override
public void splitTableAction(TableBean.DataBean tableBean) {
splitTable(tableBean);
}
@Override
public void showSplitTableDialogAction() {
showSplitTableDialog(dataBean.getId());
} }
@Override @Override
...@@ -1038,46 +940,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -1038,46 +940,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
return mGetTablesDataDisposable; return mGetTablesDataDisposable;
} }
public int getCurrentChooseOperatType() {
return mCurrentOperatType;
}
public void setCurrentChooseOperatType(int mCurrentOperatType) {
this.mCurrentOperatType = mCurrentOperatType;
}
public String getOriginalTableName() {
return originalTableName;
}
public void setOriginalTableName(String originalTableName) {
this.originalTableName = originalTableName;
}
public long getOriginalTableId() {
return originalTableId;
}
public void setOriginalTableId(int originalTableId) {
this.originalTableId = originalTableId;
}
public String getTargetTableName() {
return targetTableName;
}
public void setTargetTableName(String targetTableName) {
this.targetTableName = targetTableName;
}
public long getTargetTableId() {
return targetTableId;
}
public void setTargetTableId(int targetTableId) {
this.targetTableId = targetTableId;
}
public List<TableBean.DataBean> getTableList() { public List<TableBean.DataBean> getTableList() {
return mTableList; return mTableList;
} }
......
...@@ -23,16 +23,6 @@ import android.widget.LinearLayout; ...@@ -23,16 +23,6 @@ import android.widget.LinearLayout;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager.widget.ViewPager;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney; import com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo; import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
...@@ -84,6 +74,15 @@ import java.util.ArrayList; ...@@ -84,6 +74,15 @@ import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager.widget.ViewPager;
import butterknife.BindView; import butterknife.BindView;
import butterknife.OnClick; import butterknife.OnClick;
import butterknife.OnLongClick; import butterknife.OnLongClick;
...@@ -291,8 +290,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -291,8 +290,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
mPresenter.initMealData(); mPresenter.initMealData();
//搜索 //搜索
keyView.setOnConfirmCallBack(inputText -> { keyView.setOnConfirmCallBack(inputText -> {
if (TextUtils.isEmpty(inputText)) if (TextUtils.isEmpty(inputText)) {
return; return;
}
mPresenter.toFindMeal(inputText); mPresenter.toFindMeal(inputText);
}); });
if (!MyOrderManage.getInstance().isModifyOrder()) { if (!MyOrderManage.getInstance().isModifyOrder()) {
......
...@@ -218,12 +218,19 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese ...@@ -218,12 +218,19 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
//TODO 暫未分檯功能 //TODO 暫未分檯功能
// tableno = GSAApplication.tableContract.getTableno().trim() + "-" + GSAApplication.tableContract.getTableno_split().trim(); // tableno = GSAApplication.tableContract.getTableno().trim() + "-" + GSAApplication.tableContract.getTableno_split().trim();
} }
if (MyOrderManage.getInstance().getMemberInfo() != null) {
useMember();
}
btn_table.setText(tableno); btn_table.setText(tableno);
tv_time.setText("時間:" + openTime); tv_time.setText("時間:" + openTime);
btn_people_num.setText(OpenTableManage.getDefault().getPeopleNumber() + ""); btn_people_num.setText(OpenTableManage.getDefault().getPeopleNumber() + "");
tv_server_main.setText(GsaCloudApplication.getMemberName()); tv_server_main.setText(GsaCloudApplication.getMemberName());
} }
private void useMember() {
btn_table.setBackgroundResource(R.color.pink_300);
}
@Override @Override
protected void onPause() { protected void onPause() {
super.onPause(); super.onPause();
......
...@@ -221,7 +221,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements ...@@ -221,7 +221,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
tableno = OpenTableManage.getDefault().getTableBean().getTableName().trim() + "-" + OpenTableManage.getDefault().getSplitNo().trim(); tableno = OpenTableManage.getDefault().getTableBean().getTableName().trim() + "-" + OpenTableManage.getDefault().getSplitNo().trim();
} }
btn_table.setText(tableno); btn_table.setText(tableno);
tv_time.setText("時間:" + openTime); tv_time.setText("時間:" + openTime);
btn_people_num.setText(OpenTableManage.getDefault().getPeopleNumber() + ""); btn_people_num.setText(OpenTableManage.getDefault().getPeopleNumber() + "");
tv_server_main.setText(GsaCloudApplication.getMemberName()); tv_server_main.setText(GsaCloudApplication.getMemberName());
...@@ -230,6 +229,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements ...@@ -230,6 +229,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
tv_action_name.setText("結賬"); tv_action_name.setText("結賬");
} }
public void initOrderDetail() { public void initOrderDetail() {
double wholeAmount = mPresenter.getFoodTotal(); double wholeAmount = mPresenter.getFoodTotal();
tv_whole.setText("合計 $" + wholeAmount); tv_whole.setText("合計 $" + wholeAmount);
......
...@@ -20,13 +20,10 @@ import com.gingersoft.gsa.cloud.table.di.component.DaggerTableComponent; ...@@ -20,13 +20,10 @@ import com.gingersoft.gsa.cloud.table.di.component.DaggerTableComponent;
import com.gingersoft.gsa.cloud.table.mvp.contract.TableContract; import com.gingersoft.gsa.cloud.table.mvp.contract.TableContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.event.InitTableEvent; import com.gingersoft.gsa.cloud.table.mvp.model.bean.event.InitTableEvent;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.TableActionConstant; import com.gingersoft.gsa.cloud.table.mvp.model.constant.TableActionConstant;
import com.gingersoft.gsa.cloud.table.mvp.presenter.OrderContentPresenter; import com.gingersoft.gsa.cloud.table.mvp.model.table.action.TableAction;
import com.gingersoft.gsa.cloud.table.mvp.presenter.TablePresenter; import com.gingersoft.gsa.cloud.table.mvp.presenter.TablePresenter;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllTableFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllTableFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.InputTableFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.InputTableFragment;
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.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog; import com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog;
import com.jess.arms.base.BaseFragmentActivity; import com.jess.arms.base.BaseFragmentActivity;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
...@@ -97,10 +94,10 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -97,10 +94,10 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
@BindView(R2.id.ll_table_operat_content) @BindView(R2.id.ll_table_operat_content)
LinearLayout ll_table_operat_content; LinearLayout ll_table_operat_content;
@BindView(R2.id.tv_operat_hint) @BindView(R2.id.tv_table_action_hint)
TextView tv_operat_hint; TextView tv_table_action_hint;
@BindView(R2.id.tv_operat_content) @BindView(R2.id.tv_table_action_content)
TextView tv_operat_content; TextView tv_table_action_content;
@BindView(R2.id.iv_tab_icon) @BindView(R2.id.iv_tab_icon)
ImageView iv_tab_icon; ImageView iv_tab_icon;
...@@ -257,9 +254,10 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -257,9 +254,10 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
@Override @Override
public void launchActivity(@NonNull Intent intent) { public void launchActivity(@NonNull Intent intent) {
if (intent != null) if (intent != null) {
ArmsUtils.startActivity(intent); ArmsUtils.startActivity(intent);
} }
}
@Override @Override
public void killMyself() { public void killMyself() {
...@@ -269,7 +267,7 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -269,7 +267,7 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
@Override @Override
public void returnTableList(List<TableBean.DataBean> dataBeanList) { public void returnTableList(List<TableBean.DataBean> dataBeanList) {
if (dataBeanList != null && dataBeanList.size() > 0) { if (dataBeanList != null && dataBeanList.size() > 0) {
mPresenter.filterTableByOperatType(); mPresenter.filterTableByAction();
} }
} }
...@@ -293,52 +291,13 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -293,52 +291,13 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
if (dataBean == null) { if (dataBean == null) {
return; return;
} }
// boolean doAction = mPresenter.doTableAction(dataBean); boolean doAction = mPresenter.doTableAction(dataBean);
// if (!doAction) { if (!doAction) {
// if (dataBean.getSplitStatus() == 1) {
// showSplitTableDialog(dataBean.getId());
// } else {
// mPresenter.openTable(dataBean.getId(), null);
// }
// }
switch (mPresenter.getCurrentChooseOperatType()) {
case TableActionConstant.splite_table_1:
setOperatContentText(dataBean.getTableName());
mPresenter.splitTable(dataBean);
break;
case TableActionConstant.print_parper_2:
case TableActionConstant.init_table_3:
setOperatContentText(dataBean.getTableName());
if (dataBean.getSplitStatus() == 1) {
mPresenter.showSplitTableDialog(dataBean.getId());
} else {
mPresenter.showOperatTipDialog(dataBean);
}
break;
case TableActionConstant.move_table_4:
if (mPresenter.getOriginalTableId() == dataBean.getId()) {
CommonTipDialog.showCancelDialog(this, "相同檯不能转檯", OrderContentPresenter.class, mPresenter, "", null, null);
return;
}
if (dataBean.getSplitStatus() == 1) {
mPresenter.showSplitTableDialog(dataBean.getId());
} else {
//獲取餐檯狀態
mPresenter.getTable(dataBean);
}
//獲取餐檯狀態
// mPresenter.getTable(dataBean.getId());
break;
case TableActionConstant.skyorder_mode_5:
break;
default:
if (dataBean.getSplitStatus() == 1) { if (dataBean.getSplitStatus() == 1) {
mPresenter.showSplitTableDialog(dataBean.getId()); mPresenter.showSplitTableDialog(dataBean.getId());
} else { } else {
mPresenter.openTable(dataBean.getId(), null); mPresenter.openTable(dataBean.getId(), null);
} }
break;
} }
} }
...@@ -351,59 +310,30 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -351,59 +310,30 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
} }
@Override @Override
public void setCurrentOperatType(int type) { public void setCurrentTableAction(TableAction action) {
mPresenter.setCurrentChooseOperatType(type);
btn_cancel_operat.setVisibility(View.VISIBLE); btn_cancel_operat.setVisibility(View.VISIBLE);
ll_table_operat_content.setVisibility(View.VISIBLE); ll_table_operat_content.setVisibility(View.VISIBLE);
rv_bottom_function.setVisibility(View.INVISIBLE); rv_bottom_function.setVisibility(View.INVISIBLE);
//转台不需要过滤 setTableActionTitle(action);
if (mPresenter.getCurrentChooseOperatType() != TableActionConstant.move_table_4) {
//根据操作类型过滤一遍餐台
mPresenter.filterTableByOperatType();
}
setTableActionTitle();
} }
@Override @Override
public void setTableActionTitle() { public void setTableActionTitle(TableAction action) {
switch (mPresenter.getCurrentChooseOperatType()) { mTopBar.setTitle(action.getActionTitle());
case TableActionConstant.splite_table_1: tv_table_action_hint.setText(action.getActionHint());
tv_operat_hint.setText("請選擇檯號"); tv_table_action_content.setText(action.getActionContent());
tv_operat_content.setText("");
mTopBar.setTitle("分檯");
break;
case TableActionConstant.print_parper_2:
tv_operat_hint.setText("請選擇檯號");
tv_operat_content.setText("");
mTopBar.setTitle("上菜紙");
break;
case TableActionConstant.init_table_3:
tv_operat_hint.setText("請選擇需要重置的檯號");
tv_operat_content.setText("");
mTopBar.setTitle("重置檯號");
break;
case TableActionConstant.move_table_4:
tv_operat_hint.setText("請選擇檯號");
tv_operat_content.setText("");
mTopBar.setTitle("轉檯");
break;
case TableActionConstant.skyorder_mode_5:
break;
}
//移除back鍵 //移除back鍵
mTopBar.removeAllLeftViews(); mTopBar.removeAllLeftViews();
} }
@Override @Override
public void canceTableAction() { public void canceTableAction() {
mPresenter.setCurrentChooseOperatType(-1);
btn_cancel_operat.setVisibility(View.INVISIBLE); btn_cancel_operat.setVisibility(View.INVISIBLE);
ll_table_operat_content.setVisibility(View.INVISIBLE); ll_table_operat_content.setVisibility(View.INVISIBLE);
rv_bottom_function.setVisibility(View.VISIBLE); rv_bottom_function.setVisibility(View.VISIBLE);
tv_operat_hint.setText(""); tv_table_action_hint.setText("");
tv_operat_content.setText(""); tv_table_action_content.setText("");
mTopBar.setTitle("餐檯模式"); mTopBar.setTitle("餐檯模式");
//添加back鍵 //添加back鍵
mTopBar.removeAllLeftViews(); mTopBar.removeAllLeftViews();
...@@ -414,7 +344,7 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -414,7 +344,7 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
} }
}); });
mPresenter.initTableActionParameter(); mPresenter.initTableActionParameter();
mPresenter.filterTableByOperatType(); mPresenter.filterTableByAction();
} }
@Override @Override
...@@ -423,13 +353,13 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -423,13 +353,13 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
} }
@Override @Override
public void setOperatContentText(String contentText) { public void setTableActionContentText(String contentText) {
tv_operat_content.setText(contentText); tv_table_action_content.setText(contentText);
} }
@Override @Override
public String getOperatContentText() { public String getOperatContentText() {
return tv_operat_content.getText().toString(); return tv_table_action_content.getText().toString();
} }
@Override @Override
......
...@@ -48,7 +48,7 @@ ...@@ -48,7 +48,7 @@
android:visibility="invisible"> android:visibility="invisible">
<TextView <TextView
android:id="@+id/tv_operat_hint" android:id="@+id/tv_table_action_hint"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="" android:text=""
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
android:textSize="@dimen/font_normal3" /> android:textSize="@dimen/font_normal3" />
<TextView <TextView
android:id="@+id/tv_operat_content" android:id="@+id/tv_table_action_content"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/normal_space" android:layout_marginLeft="@dimen/normal_space"
......
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