Commit 90036286 by 宁斌

1、子項最大可選數沒跟主項數量走

2、切換餐廳 主頁側滑餐廳名字沒變
parent e8ab37cc
......@@ -13,7 +13,7 @@ import java.util.List;
public class BillAdapter extends BaseQuickAdapter<BillingBean, BaseViewHolder> {
public BillAdapter(@Nullable List<BillingBean> data) {
super(R.layout.print_bill_adapter_item_bill, data);
super(R.layout.base_print_bill_adapter_item_bill, data);
}
@Override
......
......@@ -36,9 +36,6 @@ public class CommonTipDialog {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(context);
dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_doubt);
dialogBuilder.setMessage(msg);
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction(R.drawable.shape_3c_cancel_btn_bg, "取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.addAction(R.drawable.shape_red_five_radius_bg, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
dialog.dismiss();
if (TextUtils.isEmpty(methodName)) {
......@@ -56,6 +53,9 @@ public class CommonTipDialog {
e.printStackTrace();
}
});
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction(R.drawable.shape_3c_cancel_btn_bg, "取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.create(R.style.MyDialogTheme2).show();
}
......@@ -74,9 +74,6 @@ public class CommonTipDialog {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(context);
dialogBuilder.setMessage(msg);
dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_surprised);
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
dialog.dismiss();
if (TextUtils.isEmpty(methodName)) {
......@@ -94,6 +91,9 @@ public class CommonTipDialog {
e.printStackTrace();
}
});
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.create(R.style.MyDialogTheme2).show();
}
......@@ -112,9 +112,6 @@ public class CommonTipDialog {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(context);
dialogBuilder.setMessage(msg);
dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_warn);
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
dialog.dismiss();
if (TextUtils.isEmpty(methodName)) {
......@@ -132,6 +129,9 @@ public class CommonTipDialog {
e.printStackTrace();
}
});
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.create(R.style.MyDialogTheme2).show();
}
......@@ -150,9 +150,6 @@ public class CommonTipDialog {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(context);
dialogBuilder.setMessage(msg);
dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_cancel);
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
dialog.dismiss();
if (TextUtils.isEmpty(methodName)) {
......@@ -170,6 +167,9 @@ public class CommonTipDialog {
e.printStackTrace();
}
});
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.create(R.style.MyDialogTheme2).show();
}
......@@ -200,9 +200,6 @@ public class CommonTipDialog {
dialogBuilder.setTitle(title);
dialogBuilder.setPlaceholder(placeholder);
dialogBuilder.setInputType(InputType.TYPE_CLASS_TEXT);
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
dialog.dismiss();
if (TextUtils.isEmpty(methodName)) {
......@@ -220,6 +217,9 @@ public class CommonTipDialog {
e.printStackTrace();
}
});
if (!TextUtils.isEmpty(methodName)) {
dialogBuilder.addAction("取消", (dialog, index) -> dialog.dismiss());
}
dialogBuilder.create(R.style.MyDialogTheme2).show();
}
......
package com.gingersoft.gsa.cloud.main.mvp.presenter;
import android.app.Activity;
import android.app.Application;
import android.text.TextUtils;
......@@ -22,6 +23,8 @@ import com.jess.arms.utils.RxLifecycleUtils;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.List;
......@@ -134,6 +137,18 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
.subscribe(new ErrorHandleSubscriber<SendSettlement>(mErrorHandler) {
@Override
public void onComplete() {
super.onComplete();
IActivity.setType(0);
}
@Override
public void onError(Throwable t) {
super.onError(t);
IActivity.setType(0);
}
@Override
public void onNext(@NonNull SendSettlement info) {
if (info != null && info.isSuccess()) {
......@@ -167,18 +182,25 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
}
} else if (info.getErrCode().equals("restaurant.operation.0003")) {
//一天多次清機提示
Class[] parameterTypes = {};
Object[] parameters = {};
CommonTipDialog.showDoubtDialog(IActivity, "今天已清機過,是否繼續清機", SettlementReportPresenter.class, SettlementReportPresenter.this,
"sendSettlement", parameterTypes, parameters);
} else if (info.getErrCode().equals("restaurant.operation.0004")) {
Class[] parameterTypes = {};
Object[] parameters = {};
CommonTipDialog.showDoubtDialog(IActivity, "仍有外送訂單未結賬,請先結賬!", SettlementReportPresenter.class, SettlementReportPresenter.this,
"", parameterTypes, parameters);
CommonTipDialog.showDoubtDialog(IActivity, "沒有訂單數據", SettlementReportPresenter.class, SettlementReportPresenter.this,
"", null, null);
}
// else if (info.getErrCode().equals("restaurant.operation.0004")) {
// Class[] parameterTypes = {};
// Object[] parameters = {};
// CommonTipDialog.showDoubtDialog(IActivity, "仍有外送訂單未結賬,請先結賬!", SettlementReportPresenter.class, SettlementReportPresenter.this,
// "", parameterTypes, parameters);
// }
else if (info.getErrCode().equals("restaurant.operation.0006")) {
//一天多次清機提示
// Class[] parameterTypes = {};
// Object[] parameters = {};
// CommonTipDialog.showDoubtDialog(IActivity, "今天已清機過,是否合併清機", SettlementReportPresenter.class, SettlementReportPresenter.this,
// "sendSettlement", parameterTypes, parameters);
showMergeSettlementDialog(IActivity,"今天已清機過,是否合併清機");
} else {
if (!TextUtils.isEmpty(info.getErrMsg())) {
mRootView.showMessage(info.getErrMsg()+",清機失敗");
mRootView.showMessage(info.getErrMsg() + ",清機失敗");
} else {
mRootView.showMessage("清機失敗");
}
......@@ -212,6 +234,23 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
});
}
public void showMergeSettlementDialog(Activity context, String msg) {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(context);
dialogBuilder.setTitleIcon(com.gingersoft.gsa.cloud.base.R.drawable.qmui_icon_dialog_doubt);
dialogBuilder.setMessage(msg);
dialogBuilder.setCancelable(true);
dialogBuilder.addAction(com.gingersoft.gsa.cloud.base.R.drawable.shape_3c_cancel_btn_bg, "否", (dialog, index) -> {
dialog.dismiss();
sendSettlement(SettlementReportActivity.merge_settlement_type_3);
});
dialogBuilder.addAction(com.gingersoft.gsa.cloud.base.R.drawable.shape_red_five_radius_bg, "是", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
dialog.dismiss();
sendSettlement(SettlementReportActivity.merge_settlement_type_2);
});
dialogBuilder.create(com.gingersoft.gsa.cloud.base.R.style.MyDialogTheme2).show();
}
private void showSettlementErrorDialog(String msg) {
new QMUIDialog.MessageDialogBuilder(IActivity)
.setTitle("溫馨提示")
......@@ -225,7 +264,6 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
.create(R.style.MyDialogTheme2).show();
}
/**
* 拼接未結賬臺號
*
......
......@@ -353,6 +353,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
}
tvRestaurantName.setText(restaurantName);
}
tvStoreName.setText(restaurantName);
if (!TextUtils.isEmpty(memberName)) {
tvUserName.setText(memberName);
}
......
......@@ -108,6 +108,9 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
@BindView(R2.id.scrollView)
NestedScrollView scrollView;
@BindView(R2.id.sv_cross_days)
ScrollView sv_cross_days;
@BindView(R2.id.ll_cross_days)
LinearLayout ll_cross_days;
@BindView(R2.id.lv_order_condition)
......@@ -123,6 +126,16 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
private Button rightBtn;
private int type;
/**
* 1#全部計入到10號清機數據
* 2#全部計入到12號清機數據
* 3#分別按天結算
*/
public static final int merge_settlement_type_1 = 1;
public static final int merge_settlement_type_2 = 2;
public static final int merge_settlement_type_3 = 3;
//币種
public String cashStr = "$";
protected String dfformat = "#0.00";
......@@ -207,8 +220,8 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
@OnClick({R2.id.btn_cancel_cross_days})
public void onClickCancel(View v) {
if (v.getId() == R.id.btn_cancel_cross_days) {
AnimateUtils.animateDown(ll_cross_days, 500);
ll_cross_days.setVisibility(View.GONE);
AnimateUtils.animateDown(sv_cross_days, 500);
sv_cross_days.setVisibility(View.GONE);
}
}
......@@ -580,12 +593,12 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
@Override
public void showCrossDaysLayout(boolean show) {
if (show) {
AnimateUtils.animateUp(ll_cross_days, 500);
ll_cross_days.setVisibility(View.VISIBLE);
AnimateUtils.animateUp(sv_cross_days, 500);
sv_cross_days.setVisibility(View.VISIBLE);
rightBtn.setVisibility(View.INVISIBLE);
} else {
AnimateUtils.animateDown(ll_cross_days, 500);
ll_cross_days.setVisibility(View.GONE);
AnimateUtils.animateDown(sv_cross_days, 500);
sv_cross_days.setVisibility(View.GONE);
rightBtn.setVisibility(View.VISIBLE);
}
}
......@@ -622,7 +635,7 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
for (int i = 0; i < dateNum.size(); i++) {
SendSettlement.DataBean.DateNumBean dateNumBean = dateNum.get(i);
Map<String, Object> map = new HashMap<>();
map.put("date", TimeUtil.getStringByFormat(dateNumBean.getDate(),TimeUtil.dateFormatM_D));
map.put("date", TimeUtil.formatDate(dateNumBean.getDate(),TimeUtil.dateFormatYMD ,TimeUtil.dateFormatM_D));
map.put("num", dateNumBean.getNum());
lists.add(map);
}
......@@ -644,18 +657,14 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
// if (type3Button != null) {
// type3Button.setChecked(false);
// }
//
if (type1Button != null && type1Button.getId() == checkedId) {
// type1Button.setChecked(true);
type = 1;
type = merge_settlement_type_1;
}
if (type2Button != null && type2Button.getId() == checkedId) {
// type2Button.setChecked(true);
type = 2;
type = merge_settlement_type_2;
}
if (type3Button != null && type3Button.getId() == checkedId) {
// type3Button.setChecked(true);
type = 3;
type = merge_settlement_type_3;
}
}
});
......@@ -738,4 +747,7 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
}
}
public void setType(int type) {
this.type = type;
}
}
......@@ -24,19 +24,20 @@
android:textSize="@dimen/dp_15" />
<ScrollView
android:id="@+id/sv_cross_days"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_height="match_parent"
android:layout_marginTop="?attr/qmui_topbar_height"
android:background="@color/theme_white_color"
android:fillViewport="true">
android:fillViewport="true"
android:visibility="gone">
<LinearLayout
android:id="@+id/ll_cross_days"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:padding="@dimen/dp_10"
android:visibility="gone">
android:padding="@dimen/dp_10">
<TextView
android:layout_width="wrap_content"
......
......@@ -11,7 +11,7 @@
android:layout_height="wrap_content"
android:textColor="@color/theme_black"
android:textSize="@dimen/sp_16"
android:text="7-18"/>
android:text=""/>
<TextView
android:id="@+id/tv_num"
......@@ -20,6 +20,6 @@
android:layout_marginLeft="@dimen/dp_150"
android:textColor="@color/theme_black"
android:textSize="@dimen/sp_16"
android:text="7-18"/>
android:text=""/>
</LinearLayout>
\ No newline at end of file
......@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.manager.mvp.ui.fragment;
import android.content.Intent;
import android.os.Bundle;
import android.text.InputFilter;
import android.text.TextUtils;
import android.view.Gravity;
import android.view.LayoutInflater;
......@@ -157,6 +158,8 @@ public class AddTableFragment extends BaseFragment<AddTablePresenter> implements
if (mTableItem.getLayoutType() == 0) {
tableNameEditText.setText(mTableItem.getTableName());
}
InputFilter[] filters = {new InputFilter.LengthFilter(15)};
tableNameEditText.setFilters(filters);
// tableNameEditText.setWidth(QMUIDisplayHelper.dp2px(mActivity, 75));
tableNameEditText.setTextSize(16);
tableNameEditText.setBackgroundColor(ContextCompat.getColor(mContext, R.color.trans));
......@@ -310,6 +313,8 @@ public class AddTableFragment extends BaseFragment<AddTablePresenter> implements
if (mTableItem.getLayoutType() == 0 && mTableItem.getServiceCharge() != 0) {
serverchargeEditText.setText(mTableItem.getServiceCharge() + "");
}
InputFilter[] filters2 = {new InputFilter.LengthFilter(2)};
serverchargeEditText.setFilters(filters2);
serverchargeEditText.setTextSize(16);
serverchargeEditText.setBackgroundColor(ContextCompat.getColor(mContext, R.color.trans));
serverchargeEditText.setInputType(EditorInfo.TYPE_CLASS_NUMBER);
......
......@@ -54,7 +54,7 @@
android:layout_weight="1"
android:background="@null"
android:hint="請輸入區域名稱"
android:maxLength="20"
android:maxLength="15"
android:paddingLeft="@dimen/dp_10"
android:paddingRight="@dimen/dp_10"
android:singleLine="true"
......
......@@ -414,7 +414,13 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
// 默認打印方式為ip打印,調用ip打印方法
// 獲取默認ip打印機
if (printerDeviceBeans != null && printerDeviceBeans.size() > 0) {
PrinterDeviceBean deviceBean = getDefaultPrintInList(printerDeviceBeans);
if (deviceBean == null) {
//沒有默認打印機,彈出彈窗,讓用戶選擇ip打印機
showIpPrintDeviceList(printerDeviceBeans, bitmaps);
} else {
ipDevicePrint(getDefaultPrintInList(printerDeviceBeans), bitmaps);
}
} else {
//沒有默認打印機,彈出彈窗,讓用戶選擇ip打印機
showIpPrintDeviceList(printerDeviceBeans, bitmaps);
......@@ -480,6 +486,9 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
public void ipDevicePrint(PrinterDeviceBean
printerDeviceBean, List<Bitmap> bitmaps, PrintSocketHolder.OnStateChangedListener
stateChangedListener, PrintExecutor.OnPrintResultListener resultListener) {
if (printerDeviceBean == null)
return;
int printWidth;//打印出來的內容寬度
if (printerDeviceBean.getPaperSpecification() != null) {
printWidth = Double.valueOf(printerDeviceBean.getPaperSpecification()).intValue();
......
......@@ -352,11 +352,11 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
for (int i = 0; i < mFoodComboList.size(); i++) {
//自动添加组合子食品
ComboItem comboItem = mFoodComboList.get(i);
if (comboItem.isSold()) {
String msg = "[" + comboItem.getName() + "]" + comboItem.getCurrentMaxNumber();
CommonTipDialog.showSurpisedDialog(IActivity, msg, null, null, null, null, null);
continue;
}
// if (comboItem.isSold()) {
// String msg = "[" + comboItem.getName() + "]" + comboItem.getCurrentMaxNumber();
// CommonTipDialog.showSurpisedDialog(IActivity, msg, null, null, null, null, null);
// continue;
// }
if (comboItem.getInvisible() != 2) {
int defNumber = Integer.parseInt(comboItem.getDefmodifier());
if (defNumber != 0) {
......@@ -371,11 +371,11 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
//自动添加mixqty>1細項
for (int i = 0; i < mModifierList.size(); i++) {
Modifier modfier = mModifierList.get(i);
if (modfier.isSold()) {
String msg = "[" + modfier.getModifierName() + "]" + modfier.getCurrentMaxNumber();
CommonTipDialog.showSurpisedDialog(IActivity, msg, null, null, null, null, null);
continue;
}
// if (modfier.isSold()) {
// String msg = "[" + modfier.getModifierName() + "]" + modfier.getCurrentMaxNumber();
// CommonTipDialog.showSurpisedDialog(IActivity, msg, null, null, null, null, null);
// continue;
// }
if (modfier.getInvisible() != 2) {
int defNumber = Integer.parseInt(modfier.getDefmodifier());
if (defNumber != 0) {
......@@ -493,6 +493,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
}
private int getCutPositionByOutLimitModifier(Modifier modifier) {
int mainOrderNumber = 1;
int oldCount = 0;
SparseArray<String> numberAndCutPositionMap = new SparseArray<>();
OrderDetail currentMainOrderDetail = mSelectMealAdapter.getCurrentMainOrderDetail();
......@@ -502,6 +503,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
for (int i = mOrderFoodList.size() - 1; i >= 0; i--) {
if (start_position <= i && i <= end_position) {
OrderDetail item = mOrderFoodList.get(i);
if (item.getItemType() == 1) {
mainOrderNumber = item.getNumber();
}
if (item.getItemType() == 3 && item.getTopId() == modifier.getTopId()) {
//同一食品下的細項
String comboIdAndNumber = numberAndCutPositionMap.get((int) item.getTopId());
......@@ -537,7 +541,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
for (int i = 0; i < numberAndCutPositionMap.size(); i++) {
String[] numberAndCutPositionStr = numberAndCutPositionMap.valueAt(i).split("_");
int number = Integer.parseInt(numberAndCutPositionStr[0]);
int maxQty = Integer.parseInt(modifier.getMaxNumber());
int maxQty = Integer.parseInt(modifier.getMaxNumber()) * mainOrderNumber;;
if (numberAndCutPositionStr.length > 1 && !TextUtils.isEmpty(numberAndCutPositionStr[1])) {
int cutPosition = Integer.parseInt(numberAndCutPositionStr[1]);
if (maxQty <= number && cutPosition < mOrderFoodList.size()) {
......@@ -553,6 +557,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
}
private int getCutPositionOutLimitCombo(ComboItem comboItem) {
int mainOrderNumber = 1;
int oldCount = 0;
SparseArray<String> numberAndCutPositionMap = new SparseArray<>();
OrderDetail currentMainOrderDetail = mSelectMealAdapter.getCurrentMainOrderDetail();
......@@ -562,6 +567,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
for (int i = mOrderFoodList.size() - 1; i >= 0; i--) {
if (start_position <= i && i <= end_position) {
OrderDetail item = mOrderFoodList.get(i);
if (item.getItemType() == 1) {
mainOrderNumber = item.getNumber();
}
if (item.getItemType() == 2 && item.getTopId() == comboItem.getComId()) {
//同一套餐下的子食品
String comboIdAndNumber = numberAndCutPositionMap.get((int) item.getTopId());
......@@ -597,7 +605,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
for (int i = 0; i < numberAndCutPositionMap.size(); i++) {
String[] numberAndCutPositionStr = numberAndCutPositionMap.valueAt(i).split("_");
int number = Integer.parseInt(numberAndCutPositionStr[0]);
int maxQty = comboItem.getSelectQty();
int maxQty = comboItem.getSelectQty() * mainOrderNumber;
if (numberAndCutPositionStr.length > 1 && !TextUtils.isEmpty(numberAndCutPositionStr[1])) {
int cutPosition = Integer.parseInt(numberAndCutPositionStr[1]);
if (maxQty <= number && cutPosition < mOrderFoodList.size()) {
......
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