Commit 28b1c416 by 宁斌

1、新增沽清頁

parent ffb75ea0
...@@ -215,7 +215,7 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -215,7 +215,7 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
functions.add(new Function((long) 144, 151, 5, "打印管理", R.drawable.ic_print_management, 0)); functions.add(new Function((long) 144, 151, 5, "打印管理", R.drawable.ic_print_management, 0));
functions.add(new Function((long) 145, 151, 5, "支付管理", R.drawable.ic_pay_management_close, 1)); functions.add(new Function((long) 145, 151, 5, "支付管理", R.drawable.ic_pay_management_close, 1));
functions.add(new Function((long) 146, 151, 5, "折扣管理", R.drawable.ic_discount_management_close, 1)); functions.add(new Function((long) 146, 151, 5, "折扣管理", R.drawable.ic_discount_management_close, 1));
functions.add(new Function((long) 147, 151, 5, "沽清管理", R.drawable.ic_meals_menu_management, 1)); functions.add(new Function((long) 147, 151, 5, "沽清管理", R.drawable.ic_meals_menu_management, 0));
functions.add(new Function((long) 152, 0, 5, "員工", 0, 0)); functions.add(new Function((long) 152, 0, 5, "員工", 0, 0));
functions.add(new Function((long) 147, 152, 5, "員工管理", R.drawable.ic_staff_management_close, 1)); functions.add(new Function((long) 147, 152, 5, "員工管理", R.drawable.ic_staff_management_close, 1));
...@@ -284,8 +284,8 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -284,8 +284,8 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
.setActionName("orderActivity") .setActionName("orderActivity")
.build() .build()
.call(); .call();
}else if (name.equals("沽清管理")) { } else if (name.equals("沽清管理")) {
CC.obtainBuilder("Component.Manager") CC.obtainBuilder("Component.Table")
.setActionName("showSoldoutCtrlActivity") .setActionName("showSoldoutCtrlActivity")
.build() .build()
.call(); .call();
...@@ -407,7 +407,7 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N ...@@ -407,7 +407,7 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
public void onClick(View v) { public void onClick(View v) {
if (v.getId() == R.id.layout_login_out) { if (v.getId() == R.id.layout_login_out) {
//登出 //登出
mPresenter.loginOut(); CommonTipDialog.showDoubtDialog(this, "退出登錄?", NewMainPresenter.class, mPresenter, "loginOut", null, null);
} else if (v.getId() == R.id.iv_personal_center) { } else if (v.getId() == R.id.iv_personal_center) {
slideMenu.toggle(); slideMenu.toggle();
} else if (v.getId() == R.id.tv_restaurant_name) { } else if (v.getId() == R.id.tv_restaurant_name) {
......
ext.alwaysLib = true //虽然apply了cc-settings-2.gradle,但一直作为library编译,否则别的组件依赖此module时会报错 apply from: rootProject.file('cc-settings.gradle')
apply from: rootProject.file("cc-settings.gradle")
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-android'
apply plugin: 'com.jakewharton.butterknife' apply plugin: 'com.jakewharton.butterknife'
android { android {
...@@ -55,5 +52,5 @@ dependencies { ...@@ -55,5 +52,5 @@ dependencies {
testImplementation rootProject.ext.dependencies["junit"] testImplementation rootProject.ext.dependencies["junit"]
implementation rootProject.ext.dependencies["BaseRecyclerViewAdapter"] implementation rootProject.ext.dependencies["BaseRecyclerViewAdapter"]
implementation "androidx.core:core-ktx:+" // implementation "androidx.core:core-ktx:+"
} }
...@@ -3,11 +3,9 @@ ...@@ -3,11 +3,9 @@
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools"
package="com.gingersoft.gsa.cloud.manager"> package="com.gingersoft.gsa.cloud.manager">
<uses-permission android:name="android.permission.INTERNET" />
<application> <application>
<!-- arms配置 -->
<meta-data
android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
android:value="ConfigModule" />
</application> </application>
<uses-permission android:name="android.permission.INTERNET" />
</manifest> </manifest>
\ No newline at end of file
...@@ -2,32 +2,32 @@ ...@@ -2,32 +2,32 @@
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.gingersoft.gsa.cloud.manager"> package="com.gingersoft.gsa.cloud.manager">
<!-- <application--> <application
<!-- android:name="com.gingersoft.gsa.cloud.base.application.GsaCloudApplication"--> android:name="com.gingersoft.gsa.cloud.base.application.GsaCloudApplication"
<!-- android:allowBackup="true"--> android:allowBackup="true"
<!-- android:icon="@mipmap/ic_launcher"--> android:icon="@mipmap/ic_launcher"
<!-- android:label="@string/app_name"--> android:label="@string/app_name"
<!-- android:networkSecurityConfig="@xml/network_android"--> android:networkSecurityConfig="@xml/network_android"
<!-- android:roundIcon="@mipmap/ic_launcher_round"--> android:roundIcon="@mipmap/ic_launcher_round"
<!-- android:supportsRtl="true"--> android:supportsRtl="true"
<!-- android:theme="@style/AppTheme">--> android:theme="@style/AppTheme">
<!-- arms配置 -->
<meta-data
android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
android:value="ConfigModule" />
<meta-data
android:name="design_width_in_dp"
android:value="360" />
<meta-data
android:name="design_height_in_dp"
android:value="540" />
</application>
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<!-- <meta-data--> <uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
<!-- android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"-->
<!-- android:value="ConfigModule" />-->
<!-- <meta-data-->
<!-- android:name="design_width_in_dp"-->
<!-- android:value="360" />-->
<!-- <meta-data-->
<!-- android:name="design_height_in_dp"-->
<!-- android:value="540" />-->
<!-- </application>-->
<!-- <uses-permission android:name="android.permission.INTERNET" />-->
<!-- <uses-permission android:name="android.permission.WAKE_LOCK" />-->
<!-- <uses-permission android:name="android.permission.READ_PHONE_STATE" />-->
<!-- <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />-->
<!-- <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />-->
<!-- <uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />-->
</manifest> </manifest>
package com.gingersoft.gsa.cloud.table; package com.gingersoft.gsa.cloud.manager;
import com.billy.cc.core.component.CC; import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult; import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.CCUtil; import com.billy.cc.core.component.CCUtil;
import com.billy.cc.core.component.IComponent; import com.billy.cc.core.component.IComponent;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity;
public class ComponentTable implements IComponent {
public class ComponentManager implements IComponent {
@Override @Override
public String getName() { public String getName() {
...@@ -30,11 +26,8 @@ public class ComponentTable implements IComponent { ...@@ -30,11 +26,8 @@ public class ComponentTable implements IComponent {
public boolean onCall(CC cc) { public boolean onCall(CC cc) {
String actionName = cc.getActionName(); String actionName = cc.getActionName();
switch (actionName) { switch (actionName) {
case "showOrderManagerActivity": case "showSoldoutCtrlActivity":
openOrderManagerActivity(cc); openSoldoutCtrlActivity(cc);
break;
case "showTagManagerActivity":
openTagManagerActivity(cc);
break; break;
default: default:
//这个逻辑分支上没有调用CC.sendCCResult(...),是一种错误的示例 //这个逻辑分支上没有调用CC.sendCCResult(...),是一种错误的示例
...@@ -45,14 +38,10 @@ public class ComponentTable implements IComponent { ...@@ -45,14 +38,10 @@ public class ComponentTable implements IComponent {
return false; return false;
} }
private void openOrderManagerActivity(CC cc) { private void openSoldoutCtrlActivity(CC cc) {
// CCUtil.navigateTo(cc, TableActivity.class); // CCUtil.navigateTo(cc, SoldoutCtrlActivity.class);
// CC.sendCCResult(cc.getCallId(), CCResult.success()); // CC.sendCCResult(cc.getCallId(), CCResult.success());
} }
private void openTagManagerActivity(CC cc) {
// CCUtil.navigateTo(cc, OrderPayActivity.class);
// CC.sendCCResult(cc.getCallId(), CCResult.success());
}
} }
package com.gingersoft.gsa.cloud.manager.mvp.ui.adapter.soldout;
import android.content.Context;
import android.view.View;
import android.widget.RelativeLayout;
import android.widget.TextView;
import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter;
import java.util.List;
import butterknife.BindView;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2018/6/27
* 修订历史:2018/6/27
* 描述:
*/
public class CurrentSlodoutFoodAdapter extends DefaultAdapter<Object> {
public CurrentSlodoutFoodAdapter(List<Object> infos) {
super(infos);
}
@Override
public BaseHolder<Object> getHolder(View v, int viewType) {
return null;
}
@Override
public int getLayoutId(int viewType) {
return 0;
}
//
// private Context mContext;
// private View convertView;
// //字体大小
// private int mFoodlListFontSize;
//
// private int select_position = 0;
//
// public void setSelectPosition(int select_position) {
// this.select_position = select_position;
// set_SelectPosition();
// }
//
// private void set_SelectPosition() {
//
// //查找自己的
// if (select_position == -1 || mInfos == null || mInfos.size() < 1) {
// return;
// }
//
// List<CurrentSoldoutFood.DatasBean> datasBeans = mInfos;
//
// for (int i = 0; i < datasBeans.size(); i++) {
// if (i == select_position) {
// datasBeans.get(i).setSelected(2);
// } else {
// datasBeans.get(i).setSelected(0);
// }
// }
// }
//
// public CurrentSlodoutFoodAdapter(Context context, List<CurrentSoldoutFood.DatasBean> infos, int foodlListFontSize) {
// super(infos);
// this.mContext = context;
// this.mFoodlListFontSize = foodlListFontSize;
// }
//
// @Override
// public int getItemCount() {
// return mInfos.size();
// }
//
// @Override
// public BaseHolder<CurrentSoldoutFood.DatasBean> getHolder(View v, int viewType) {
// convertView = v;
// return new DateTimeItemHolder(v);
// }
//
// @Override
// public int getLayoutId(int viewType) {
// return R.layout.item_current_soldout_food;
// }
//
// class DateTimeItemHolder extends BaseHolder<CurrentSoldoutFood.DatasBean> {
//
// @BindView(R.id.rl_select)
// RelativeLayout rl_select;
// @BindView(R.id.tv_number)
// TextView tv_number;
// @BindView(R.id.tv_name)
// TextView tv_name;
// @BindView(R.id.tv_value)
// TextView tv_value;
//
// public DateTimeItemHolder(View itemView) {
// super(itemView);
// }
//
// @Override
// public void setData(CurrentSoldoutFood.DatasBean datasBean, int position) {
//
// String name = datasBean.getName();
// if (name != null) {
// tv_name.setText(name);
// }
//
// if (datasBean.getItemdesc1() == null || datasBean.getItemdesc1().equals("0")) {
// tv_number.setText("");
// } else {
// tv_number.setText("1");
// }
//
// String qtyValue = String.valueOf(datasBean.getOR_Qty());
//
// if (datasBean.getOR_Qty() == 0) {
// qtyValue = "暫停";
// } else {
// if (datasBean.getOR_Qty() - datasBean.getUsed_Qty() == 0) {
// qtyValue = "售罄";
// }
// }
//
// tv_value.setText(qtyValue);
//
// //显示
// convertView.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// int selected = datasBean.getSelected();
// switch (selected) {
// case 0://未选 中。黑底白字
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// case 1://选中,第一层选中.
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.theme_color));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// case 2://选中,作为主体被选中
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.colorAccent));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// }
//
// //设置字体
// tv_value.setTextSize(mFoodlListFontSize);
// tv_name.setTextSize(mFoodlListFontSize);
// tv_number.setTextSize(mFoodlListFontSize);
//
// rl_select.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// if (mOnItemClickListener != null)
// mOnItemClickListener.onItemClick(datasBean, position);
// }
// });
// }
// }
//
//
// public int getSelectPosition() {
// return this.select_position;
// }
//
// private OnItemClickListener mOnItemClickListener;
//
// public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
// mOnItemClickListener = onItemClickListener;
// }
//
// public interface OnItemClickListener {
//
// void onItemClick(CurrentSoldoutFood.DatasBean datasBean, int position);
//
// }
//
}
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<color name="main_colorPrimary">#008577</color>
<color name="main_colorPrimaryDark">#00574B</color>
<color name="main_colorAccent">#D81B60</color>
<!-- 報表虛線顏色-->
<color name="report_dotted_line_color">#8CA0B3</color>
<color name="report_left_scale">#018EF2</color>
<!-- 報表“昨日”線條顏色-->
<color name="today_line">#FFCC8F</color>
<color name="payment_method_color1">#FF3F4E</color>
<color name="payment_method_color2">#8FC31F</color>
<color name="payment_method_color3">#F19EC2</color>
<color name="payment_method_color4">#EB6100</color>
<color name="payment_method_color5">#AA89BD</color>
<color name="payment_method_color6">#00A0E9</color>
<color name="payment_method_color7">#EFE75E</color>
<color name="payment_method_color8">#5358F1</color>
<color name="payment_method_color9">#ff2d51</color>
<color name="payment_method_color10">#426666</color>
<color name="payment_method_color11">#bce672</color>
<color name="payment_method_color12">#44cef6</color>
<color name="payment_method_color13">#ffa631</color>
<color name="payment_method_color14">#a3d900</color>
<color name="payment_method_color15">#f00056</color>
<color name="payment_method_color16">#bf242a</color>
<color name="payment_method_color17">#a1afc9</color>
<color name="payment_method_color18">#c89c23</color>
<color name="payment_method_color19">#e4c6d0</color>
<color name="payment_method_color20">#103371</color>
</resources> </resources>
<resources> <resources>
<dimen name="main_fab_margin">16dp</dimen>
<dimen name="main_recyclerview_marginLeft">@dimen/dp_15</dimen>
<dimen name="main_recyclerview_marginRight">@dimen/dp_15</dimen>
<dimen name="main_page_radius">@dimen/dp_12</dimen>
</resources> </resources>
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<item name="main_home_refresh" type="id"/>
<item name="main_home_msg" type="id"/>
</resources> </resources>
\ No newline at end of file
...@@ -39,7 +39,7 @@ public class CurrentAndroidSetting { ...@@ -39,7 +39,7 @@ public class CurrentAndroidSetting {
private int LayoutQuitHeight = 40; private int LayoutQuitHeight = 40;
private int LayoutFoodTypeHeight = 100; private int LayoutFoodTypeHeight = 100;
private int FoodBtnHeight = 120; private int FoodBtnHeight = 120;
private int ModBtnHeight = 68; private int ModBtnHeight = 75;
private int FoodTypeCol = 4; private int FoodTypeCol = 4;
private int FoodTypeRow = 1; private int FoodTypeRow = 1;
private int FoodCol = 4; private int FoodCol = 4;
......
...@@ -183,6 +183,10 @@ public class OrderBean { ...@@ -183,6 +183,10 @@ public class OrderBean {
private long parentId; private long parentId;
private long orderId; private long orderId;
/** /**
* 打印設定, 用逗號分隔, *=切紙
*/
private String printSeting;
/**
* 是否参与折扣#0:不參與;1:參與; * 是否参与折扣#0:不參與;1:參與;
*/ */
private long ablediscount; private long ablediscount;
...@@ -311,6 +315,14 @@ public class OrderBean { ...@@ -311,6 +315,14 @@ public class OrderBean {
this.orderId = orderId; this.orderId = orderId;
} }
public String getPrintSeting() {
return printSeting;
}
public void setPrintSeting(String printSeting) {
this.printSeting = printSeting;
}
public long getAblediscount() { public long getAblediscount() {
return ablediscount; return ablediscount;
} }
......
...@@ -152,6 +152,10 @@ public class OrderDetail implements Serializable { ...@@ -152,6 +152,10 @@ public class OrderDetail implements Serializable {
*/ */
private Date createTime = new Date(); private Date createTime = new Date();
/** /**
* 打印設定, 用逗號分隔, *=切紙
*/
private String printSeting;
/**
* 是否参与折扣#0:不參與;1:參與; * 是否参与折扣#0:不參與;1:參與;
*/ */
private long ablediscount; private long ablediscount;
...@@ -168,6 +172,10 @@ public class OrderDetail implements Serializable { ...@@ -168,6 +172,10 @@ public class OrderDetail implements Serializable {
*/ */
private Discount discount; private Discount discount;
/** /**
* 折扣狀態#0:未送單;1:已送單;
*/
private int discountStatus;
/**
* 状态#0:正常;1:删除; * 状态#0:正常;1:删除;
*/ */
private Byte status = STATUS_NORMAL; private Byte status = STATUS_NORMAL;
...@@ -186,11 +194,54 @@ public class OrderDetail implements Serializable { ...@@ -186,11 +194,54 @@ public class OrderDetail implements Serializable {
public static final byte MODIFIER_TYPE = 4; public static final byte MODIFIER_TYPE = 4;
public static final byte DISCOUNT_TYPE = 5; public static final byte DISCOUNT_TYPE = 5;
private String printseting;
public OrderDetail() { public OrderDetail() {
} }
public OrderDetail(OrderDetail orderDetail) {
this.selected = orderDetail.selected;
this.isIsfood = orderDetail.isIsfood;
this.parentIndex = orderDetail.parentIndex;
this.myIndex = orderDetail.myIndex;
this.isNew = orderDetail.isNew;
this.visible = orderDetail.visible;
this.autoMod = orderDetail.autoMod;
this.limitQty = orderDetail.limitQty;
this.PERCENTAGE = orderDetail.PERCENTAGE;
this.comid = orderDetail.comid;
this.mid = orderDetail.mid;
this.changeBeforeQty = orderDetail.changeBeforeQty;
this.hasChild = orderDetail.hasChild;
this.bgColor = orderDetail.bgColor;
this.fontColor = orderDetail.fontColor;
this.ComboLevel = orderDetail.ComboLevel;
this.isComboAuto = orderDetail.isComboAuto;
this.prop = orderDetail.prop;
this.itemType = orderDetail.itemType;
this.id = orderDetail.id;
this.parentId = orderDetail.parentId;
this.orderId = orderDetail.orderId;
this.productName = orderDetail.productName;
this.productId = orderDetail.productId;
this.topId = orderDetail.topId;
this.price = orderDetail.price;
this.unit_price = orderDetail.unit_price;
this.lunchboxPrice = orderDetail.lunchboxPrice;
this.itemsPrice = orderDetail.itemsPrice;
this.number = orderDetail.number;
this.userCouponNo = orderDetail.userCouponNo;
this.type = orderDetail.type;
this.qmUseData = orderDetail.qmUseData;
this.remark = orderDetail.remark;
this.items = orderDetail.items;
this.createTime = orderDetail.createTime;
this.ablediscount = orderDetail.ablediscount;
this.ftName = orderDetail.ftName;
this.majorName = orderDetail.majorName;
this.discount = orderDetail.discount;
this.discountStatus = orderDetail.discountStatus;
this.status = orderDetail.status;
this.printSeting = orderDetail.printSeting;
}
public int getSelected() { public int getSelected() {
return selected; return selected;
...@@ -513,11 +564,11 @@ public class OrderDetail implements Serializable { ...@@ -513,11 +564,11 @@ public class OrderDetail implements Serializable {
} }
public String getPrintseting() { public String getPrintseting() {
return printseting == null ? "" : printseting; return printSeting == null ? "" : printSeting;
} }
public void setPrintseting(String printseting) { public void setPrintseting(String printseting) {
this.printseting = printseting; this.printSeting = printseting;
} }
public long getTopId() { public long getTopId() {
...@@ -528,6 +579,14 @@ public class OrderDetail implements Serializable { ...@@ -528,6 +579,14 @@ public class OrderDetail implements Serializable {
this.topId = topId; this.topId = topId;
} }
public int getDiscountStatus() {
return discountStatus;
}
public void setDiscountStatus(int discountStatus) {
this.discountStatus = discountStatus;
}
/** /**
* 已送單食品轉換 * 已送單食品轉換
* *
...@@ -539,7 +598,7 @@ public class OrderDetail implements Serializable { ...@@ -539,7 +598,7 @@ public class OrderDetail implements Serializable {
OrderDetail parentOrderDetail = null; OrderDetail parentOrderDetail = null;
long parentId = 0; long parentId = 0;
//每個套餐食品折扣總額 //每個套餐食品折扣總額
double discountAmount = 0; double discountSourcePrice = 0;
//已到結尾或者下一個食品是主食品 //已到結尾或者下一個食品是主食品
for (int i = 0; i < orderList.size(); i++) { for (int i = 0; i < orderList.size(); i++) {
OrderBean.OrderDetailsBean orderDetailsBean = orderList.get(i); OrderBean.OrderDetailsBean orderDetailsBean = orderList.get(i);
...@@ -553,6 +612,7 @@ public class OrderDetail implements Serializable { ...@@ -553,6 +612,7 @@ public class OrderDetail implements Serializable {
orderDetail.setNumber(orderDetailsBean.getNumber()); orderDetail.setNumber(orderDetailsBean.getNumber());
orderDetail.setPrice(orderDetailsBean.getPrice() * orderDetailsBean.getNumber()); orderDetail.setPrice(orderDetailsBean.getPrice() * orderDetailsBean.getNumber());
orderDetail.setVisible(orderDetailsBean.getStatus() == 0); orderDetail.setVisible(orderDetailsBean.getStatus() == 0);
orderDetail.setPrintseting(orderDetailsBean.getPrintSeting());
// orderDetail.setAutomod(foods.getAutomod()); // orderDetail.setAutomod(foods.getAutomod());
orderDetail.setIsfood(orderDetailsBean.getType() == FOOD_TYPE); orderDetail.setIsfood(orderDetailsBean.getType() == FOOD_TYPE);
orderDetail.setNew(false); orderDetail.setNew(false);
...@@ -562,18 +622,21 @@ public class OrderDetail implements Serializable { ...@@ -562,18 +622,21 @@ public class OrderDetail implements Serializable {
if (orderDetail.getItemType() == 1) { if (orderDetail.getItemType() == 1) {
parentId = orderDetail.getId(); parentId = orderDetail.getId();
discountAmount = 0; discountSourcePrice = 0;
} }
if (orderDetailsBean.getRestaurantDiscountVO() != null) { if (orderDetailsBean.getRestaurantDiscountVO() != null) {
discountAmount = MoneyUtil.sum(discountAmount, orderDetail.getPrice()); //累加折扣總額
discountSourcePrice = MoneyUtil.sum(discountSourcePrice, orderDetail.getPrice());
//食品折扣狀態為已送單
orderDetail.setDiscountStatus(1);
//往下找 //往下找
int nextIndex = i + 1; int nextIndex = i + 1;
if (orderList.size() == nextIndex || orderList.get(nextIndex).getParentId() == 0) { if (orderList.size() == nextIndex || orderList.get(nextIndex).getParentId() == 0) {
//已到結尾或者下一個食品是主食品 //已到結尾或者下一個食品是主食品
Discount discount = getDiscountItem(orderDetailsBean.getRestaurantDiscountVO(), parentId, discountAmount); Discount discount = getDiscountItem(orderDetailsBean.getRestaurantDiscountVO(), parentId, discountSourcePrice);
if (discount != null) { if (discount != null) {
orderDetailList.add(discountTransOrderDetail(discount,false, parentId, discountAmount)); orderDetailList.add(discountTransOrderDetail(discount, false, parentId, discountSourcePrice));
} }
} }
} }
...@@ -648,6 +711,7 @@ public class OrderDetail implements Serializable { ...@@ -648,6 +711,7 @@ public class OrderDetail implements Serializable {
orderDetail.setPrice(number * orderDetail.getUnit_price()); orderDetail.setPrice(number * orderDetail.getUnit_price());
orderDetail.setNumber(number); orderDetail.setNumber(number);
orderDetail.setOrderId(MyOrderManage.getInstance().getOrderId()); orderDetail.setOrderId(MyOrderManage.getInstance().getOrderId());
orderDetail.setPrintseting(foods.getPrintSeting());
orderDetail.setIsfood(true); orderDetail.setIsfood(true);
orderDetail.setNew(true); orderDetail.setNew(true);
orderDetail.setType(FOOD_TYPE); orderDetail.setType(FOOD_TYPE);
...@@ -735,7 +799,7 @@ public class OrderDetail implements Serializable { ...@@ -735,7 +799,7 @@ public class OrderDetail implements Serializable {
* @param discount * @param discount
* @return * @return
*/ */
public static OrderDetail discountTransOrderDetail(Discount discount, boolean isNew,long id, double sourcePrice) { public static OrderDetail discountTransOrderDetail(Discount discount, boolean isNew, long id, double sourcePrice) {
double discountPrice = Discount.calculationDiscount(discount, sourcePrice); double discountPrice = Discount.calculationDiscount(discount, sourcePrice);
......
...@@ -17,7 +17,7 @@ public class MoneyUtil { ...@@ -17,7 +17,7 @@ public class MoneyUtil {
// 總金額小數位 // 總金額小數位
public static int rounding, RoundingDecimal; public static int rounding, RoundingDecimal;
// (直接截取) : 食品 細項 折扣 會員折扣 合計 服務費 // (直接截取) : 食品 細項 折扣 會員折扣 合計 服務費
public static int ItemDecimals = 1; public static int ItemDecimals = 2;
public static double get_ItemDecimals_money(double money) { public static double get_ItemDecimals_money(double money) {
double rMoney = money; double rMoney = money;
......
package com.gingersoft.gsa.cloud.table.mvp.model.constant; package com.gingersoft.gsa.cloud.constans;
/** /**
* 作者:ELEGANT_BIN * 作者:ELEGANT_BIN
......
...@@ -61,6 +61,8 @@ public class Discount { ...@@ -61,6 +61,8 @@ public class Discount {
private Date begin_time; private Date begin_time;
private Date end_time; private Date end_time;
@Generated(hash = 1370540661) @Generated(hash = 1370540661)
public Discount(Long id, int restaurant_id, double amount, double discount_value, public Discount(Long id, int restaurant_id, double amount, double discount_value,
int type, int status, String remark, Date begin_time, Date end_time) { int type, int status, String remark, Date begin_time, Date end_time) {
......
package com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal; package com.gingersoft.gsa.cloud.ui.adapter.meal;
import android.content.Context; import android.content.Context;
import android.graphics.drawable.GradientDrawable; import android.graphics.drawable.GradientDrawable;
...@@ -7,12 +7,11 @@ import android.view.View; ...@@ -7,12 +7,11 @@ import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.R;
import com.gingersoft.gsa.cloud.base.R2;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.database.bean.ComboItem; import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2;
import com.jess.arms.base.BaseHolder; import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
...@@ -67,7 +66,7 @@ public class ComboAdapter extends DefaultAdapter<ComboItem> { ...@@ -67,7 +66,7 @@ public class ComboAdapter extends DefaultAdapter<ComboItem> {
@Override @Override
public int getLayoutId(int viewType) { public int getLayoutId(int viewType) {
return R.layout.ui_item_combo; return R.layout.ui_meal_item_combo;
} }
class ComboItemHolder extends BaseHolder<ComboItem> { class ComboItemHolder extends BaseHolder<ComboItem> {
......
package com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal; package com.gingersoft.gsa.cloud.ui.adapter.meal;
import android.content.Context; import android.content.Context;
import android.graphics.Color; import android.graphics.Color;
...@@ -8,12 +8,11 @@ import android.view.ViewGroup; ...@@ -8,12 +8,11 @@ import android.view.ViewGroup;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import com.gingersoft.gsa.cloud.aspectj.XClickUtil; import com.gingersoft.gsa.cloud.aspectj.XClickUtil;
import com.gingersoft.gsa.cloud.base.R;
import com.gingersoft.gsa.cloud.base.R2;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2;
import com.jess.arms.base.BaseHolder; import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
...@@ -72,7 +71,7 @@ public class FoodAdapter extends DefaultAdapter<Food> { ...@@ -72,7 +71,7 @@ public class FoodAdapter extends DefaultAdapter<Food> {
@Override @Override
public int getLayoutId(int viewType) { public int getLayoutId(int viewType) {
return R.layout.ui_item_food; return R.layout.ui_meal_item_food;
} }
class FoodItemHolder extends BaseHolder<Food> { class FoodItemHolder extends BaseHolder<Food> {
......
package com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal; package com.gingersoft.gsa.cloud.ui.adapter.meal;
import android.content.Context; import android.content.Context;
import android.view.Gravity; import android.view.Gravity;
...@@ -6,21 +6,18 @@ import android.view.View; ...@@ -6,21 +6,18 @@ import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.RelativeLayout; import android.widget.RelativeLayout;
import android.widget.TextView; import android.widget.TextView;
import com.gingersoft.gsa.cloud.aspectj.XClickUtil; import com.gingersoft.gsa.cloud.aspectj.XClickUtil;
import com.gingersoft.gsa.cloud.base.R;
import com.gingersoft.gsa.cloud.base.R2;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2;
import com.jess.arms.base.BaseHolder; import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.DeviceUtils; import com.jess.arms.utils.DeviceUtils;
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import java.util.List; import java.util.List;
import androidx.recyclerview.widget.GridLayoutManager;
import butterknife.BindView; import butterknife.BindView;
/** /**
...@@ -77,7 +74,7 @@ public class FoodGroupAdapter extends DefaultAdapter<Food> { ...@@ -77,7 +74,7 @@ public class FoodGroupAdapter extends DefaultAdapter<Food> {
@Override @Override
public int getLayoutId(int viewType) { public int getLayoutId(int viewType) {
return R.layout.meal_item_food_group; return R.layout.ui_meal_item_food_group;
} }
class FoodlKindItemHolder extends BaseHolder<Food> { class FoodlKindItemHolder extends BaseHolder<Food> {
......
package com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal; package com.gingersoft.gsa.cloud.ui.adapter.meal;
import android.content.Context; import android.content.Context;
import android.graphics.drawable.GradientDrawable;
import android.view.Gravity; import android.view.Gravity;
import android.view.MotionEvent;
import android.view.View; import android.view.View;
import android.view.ViewGroup; import android.view.ViewGroup;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.TextView; import android.widget.TextView;
import com.gingersoft.gsa.cloud.aspectj.XClickUtil; import com.gingersoft.gsa.cloud.base.R;
import com.gingersoft.gsa.cloud.base.R2;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2;
import com.jess.arms.base.BaseHolder; import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
...@@ -69,7 +65,7 @@ public class ModifierAdapter extends DefaultAdapter<Modifier> { ...@@ -69,7 +65,7 @@ public class ModifierAdapter extends DefaultAdapter<Modifier> {
@Override @Override
public int getLayoutId(int viewType) { public int getLayoutId(int viewType) {
return R.layout.ui_item_combo; return R.layout.ui_meal_item_combo;
} }
class ComboItemHolder extends BaseHolder<Modifier> { class ComboItemHolder extends BaseHolder<Modifier> {
......
...@@ -32,7 +32,6 @@ public class CommonTipDialog { ...@@ -32,7 +32,6 @@ public class CommonTipDialog {
*/ */
public static void showDoubtDialog(Activity context,String msg, Class c, Object object, String methodName, Class[] parameterTypes, Object[] parameters) { public static void showDoubtDialog(Activity context,String msg, Class c, Object object, String methodName, Class[] parameterTypes, Object[] parameters) {
QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(context); QMUIDialog.MessageDialogBuilder dialogBuilder = new QMUIDialog.MessageDialogBuilder(context);
dialogBuilder.setTitle("溫馨提示");
dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_doubt); dialogBuilder.setTitleIcon(R.drawable.qmui_icon_dialog_doubt);
dialogBuilder.setMessage(msg); dialogBuilder.setMessage(msg);
if(!TextUtils.isEmpty(methodName)) { if(!TextUtils.isEmpty(methodName)) {
...@@ -40,6 +39,9 @@ public class CommonTipDialog { ...@@ -40,6 +39,9 @@ public class CommonTipDialog {
} }
dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> { dialogBuilder.addAction(0, "確認", QMUIDialogAction.ACTION_PROP_NEGATIVE, (dialog, index) -> {
dialog.dismiss(); dialog.dismiss();
if(TextUtils.isEmpty(methodName)){
return;
}
try { try {
Method method = c.getDeclaredMethod(methodName, parameterTypes); Method method = c.getDeclaredMethod(methodName, parameterTypes);
method.setAccessible(true); method.setAccessible(true);
......
...@@ -10,6 +10,7 @@ include 'cc-register', ...@@ -10,6 +10,7 @@ include 'cc-register',
'table-mode', 'table-mode',
'demo_interceptors', 'demo_interceptors',
'print-module', 'print-module',
'manager',
rootProject.name = 'GSA-Cloud', 'pools', 'qm-qmui', 'qm-lintrule' rootProject.name = 'GSA-Cloud', 'pools', 'qm-qmui', 'qm-lintrule'
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
<activity android:name=".mvp.ui.activity.OrderContentActivity" /> <activity android:name=".mvp.ui.activity.OrderContentActivity" />
<activity android:name=".mvp.ui.activity.orderManager.OrderCenterActivity" /> <activity android:name=".mvp.ui.activity.orderManager.OrderCenterActivity" />
<activity android:name=".mvp.ui.activity.orderManager.OrderDetailActivity" /> <activity android:name=".mvp.ui.activity.orderManager.OrderDetailActivity" />
<activity android:name=".mvp.ui.activity.SoldoutCtrlActivity" />
<meta-data <meta-data
android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration" android:name="com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
android:value="ConfigModule" /> android:value="ConfigModule" />
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
android:theme="@style/AppTheme.Base"> android:theme="@style/AppTheme.Base">
<activity android:name=".mvp.ui.activity.orderManager.OrderDetailActivity"/> <activity android:name=".mvp.ui.activity.orderManager.OrderDetailActivity"/>
<activity android:name=".mvp.ui.activity.orderManager.OrderCenterActivity" /> <activity android:name=".mvp.ui.activity.orderManager.OrderCenterActivity" />
<activity android:name=".mvp.ui.activity.SoldoutCtrlActivity" />
<activity android:name=".mvp.ui.activity.TableActivity"> <activity android:name=".mvp.ui.activity.TableActivity">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
......
...@@ -4,6 +4,7 @@ import com.billy.cc.core.component.CC; ...@@ -4,6 +4,7 @@ import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult; import com.billy.cc.core.component.CCResult;
import com.billy.cc.core.component.CCUtil; import com.billy.cc.core.component.CCUtil;
import com.billy.cc.core.component.IComponent; import com.billy.cc.core.component.IComponent;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.SoldoutCtrlActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity;
...@@ -39,6 +40,9 @@ public class ComponentTable implements IComponent { ...@@ -39,6 +40,9 @@ public class ComponentTable implements IComponent {
case "showOrderCenterActivity": case "showOrderCenterActivity":
openOrderCenterActivity(cc); openOrderCenterActivity(cc);
break; break;
case "showSoldoutCtrlActivity":
openSoldoutCtrlActivity(cc);
break;
case "getLifecycleFragment": case "getLifecycleFragment":
//demo for provide fragment object to other component //demo for provide fragment object to other component
getLifecycleFragment(cc); getLifecycleFragment(cc);
...@@ -79,6 +83,11 @@ public class ComponentTable implements IComponent { ...@@ -79,6 +83,11 @@ public class ComponentTable implements IComponent {
CC.sendCCResult(cc.getCallId(), CCResult.success("userName", userName)); CC.sendCCResult(cc.getCallId(), CCResult.success("userName", userName));
} }
private void openSoldoutCtrlActivity(CC cc) {
CCUtil.navigateTo(cc, SoldoutCtrlActivity.class);
CC.sendCCResult(cc.getCallId(), CCResult.success());
}
private void openTableActivity(CC cc) { private void openTableActivity(CC cc) {
CCUtil.navigateTo(cc, TableActivity.class); CCUtil.navigateTo(cc, TableActivity.class);
CC.sendCCResult(cc.getCallId(), CCResult.success()); CC.sendCCResult(cc.getCallId(), CCResult.success());
......
package com.gingersoft.gsa.cloud.table.di.component;
import dagger.BindsInstance;
import dagger.Component;
import com.gingersoft.gsa.cloud.table.di.module.SoldoutCtrlModule;
import com.gingersoft.gsa.cloud.table.mvp.contract.SoldoutCtrlContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.SoldoutCtrlActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.di.scope.ActivityScope;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/22/2020 10:39
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@ActivityScope
@Component(modules = SoldoutCtrlModule.class, dependencies = AppComponent.class)
public interface SoldoutCtrlComponent {
void inject(SoldoutCtrlActivity activity);
@Component.Builder
interface Builder {
@BindsInstance
SoldoutCtrlComponent.Builder view(SoldoutCtrlContract.View view);
SoldoutCtrlComponent.Builder appComponent(AppComponent appComponent);
SoldoutCtrlComponent build();
}
}
\ No newline at end of file
package com.gingersoft.gsa.cloud.table.di.module;
import com.gingersoft.gsa.cloud.table.mvp.contract.SoldoutCtrlContract;
import com.gingersoft.gsa.cloud.table.mvp.model.SoldoutCtrlModel;
import dagger.Binds;
import dagger.Module;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/22/2020 10:39
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@Module
public abstract class SoldoutCtrlModule {
@Binds
abstract SoldoutCtrlContract.Model bindSoldoutCtrlModel(SoldoutCtrlModel model);
}
\ No newline at end of file
...@@ -45,7 +45,7 @@ public interface MealStandContract { ...@@ -45,7 +45,7 @@ public interface MealStandContract {
void initFineItemTabBarViewPage(); void initFineItemTabBarViewPage();
void showFinePage(); void setCurrentFinePage();
void setPluMode(); void setPluMode();
......
package com.gingersoft.gsa.cloud.table.mvp.contract;
import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Food;
import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
import java.util.List;
import androidx.recyclerview.widget.RecyclerView;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/22/2020 10:39
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public interface SoldoutCtrlContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface View extends IView {
void setCurrentSoldoutFoodAdapter(DefaultAdapter adapter);
void setFoodGroupAdapter(DefaultAdapter adapter);
void setFoodAdapter(DefaultAdapter adapter);
void setComboAdapter(DefaultAdapter adapter);
RecyclerView getRecycleCurrentSoldoutFood();
RecyclerView getRecycleFoodGroup();
RecyclerView getRecycleFood();
void setFoodGroupRecycleSpanCount(int size);
void setFoodRecycleSpanCount(int size);
int getSoldoutType();
boolean isInitFineItemLayout();
void initFineItemTabBarViewPage();
void showFoodLayoutVisibility();
void showFineItemLayoutVisibility();
void showViewModeVisibility(int... viewMode);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface Model extends IModel {
List<Food> queryDB_FoodGroupList();
List<Food> queryDB_FoodList(long parentId);
List<ComboItem> queryDB_ComboList(long fid);
}
}
package com.gingersoft.gsa.cloud.table.mvp.model;
import android.app.Application;
import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.database.utils.ComboItemDaoUtils;
import com.gingersoft.gsa.cloud.database.utils.FoodDaoUtils;
import com.gingersoft.gsa.cloud.table.mvp.contract.SoldoutCtrlContract;
import com.google.gson.Gson;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.integration.IRepositoryManager;
import com.jess.arms.mvp.BaseModel;
import java.util.List;
import javax.inject.Inject;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/22/2020 10:39
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@ActivityScope
public class SoldoutCtrlModel extends BaseModel implements SoldoutCtrlContract.Model {
@Inject
Gson mGson;
@Inject
Application mApplication;
@Inject
public SoldoutCtrlModel(IRepositoryManager repositoryManager) {
super(repositoryManager);
}
@Override
public void onDestroy() {
super.onDestroy();
this.mGson = null;
this.mApplication = null;
}
@Override
public List<Food> queryDB_FoodGroupList() {
FoodDaoUtils foodDaoUtils = new FoodDaoUtils(mApplication);
List<Food> foods = foodDaoUtils.queryFoodGroupByQueryBuilder();
return foods;
}
@Override
public List<Food> queryDB_FoodList(long parentId) {
FoodDaoUtils foodDaoUtils = new FoodDaoUtils(mApplication);
List<Food> foods = foodDaoUtils.queryFoodByQueryBuilder(parentId);
return foods;
}
@Override
public List<ComboItem> queryDB_ComboList(long fid) {
ComboItemDaoUtils comboItemDao = new ComboItemDaoUtils(mApplication);
List<ComboItem> foodCombo = comboItemDao.queryComboItemsByFidQueryBuilder(fid);
return foodCombo;
}
}
\ No newline at end of file
...@@ -177,7 +177,6 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -177,7 +177,6 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
return discountList; return discountList;
} }
private void initOrderAdapter() { private void initOrderAdapter() {
if (mSelectMealAdapter == null) { if (mSelectMealAdapter == null) {
mSelectMealAdapter = new SelectMealAdapter(IActivity, mOrderFoodList, this); mSelectMealAdapter = new SelectMealAdapter(IActivity, mOrderFoodList, this);
...@@ -583,6 +582,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -583,6 +582,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
request.setNumber(item.getNumber()); request.setNumber(item.getNumber());
request.setPrice(item.getUnit_price()); request.setPrice(item.getUnit_price());
request.setType(item.getType()); request.setType(item.getType());
request.setPrintSeting(item.getPrintseting());
request.setAblediscount(item.getAblediscount()); request.setAblediscount(item.getAblediscount());
request.setDiscountId(getDiscountIdByParentId(foodList, mainProductId)); request.setDiscountId(getDiscountIdByParentId(foodList, mainProductId));
request.setLunchboxPrice(0); request.setLunchboxPrice(0);
...@@ -666,11 +666,12 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -666,11 +666,12 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
request.setNumber(item.getNumber()); request.setNumber(item.getNumber());
request.setPrice(item.getUnit_price()); request.setPrice(item.getUnit_price());
request.setType(item.getType()); request.setType(item.getType());
request.setPrintSeting(item.getPrintseting());
request.setAblediscount(item.getAblediscount()); request.setAblediscount(item.getAblediscount());
request.setDiscountId(getDiscountIdByParentId(foodList, mainParentId)); request.setDiscountId(getDiscountIdByParentId(foodList, mainParentId));
request.setLunchboxPrice(0); request.setLunchboxPrice(0);
if (item.isNew() || item.getAblediscount() == 1) { if (item.isNew() || item.getDiscountStatus() == 0) {
//這裡只添加新食品或有折扣食品每次都更新 //這裡只添加新食品或有新折扣食品
orderItems.add(request); orderItems.add(request);
//保存新食品,打印用到 //保存新食品,打印用到
MyOrderManage.getInstance().getNewFoodList().add(item); MyOrderManage.getInstance().getNewFoodList().add(item);
......
...@@ -8,7 +8,7 @@ import android.view.View; ...@@ -8,7 +8,7 @@ import android.view.View;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils; import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant; import com.gingersoft.gsa.cloud.constans.MealConstant;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.FineItemOneAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.FineItemOneAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.FineItemTwoAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.FineItemTwoAdapter;
......
...@@ -8,7 +8,7 @@ import android.view.View; ...@@ -8,7 +8,7 @@ import android.view.View;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.database.bean.Modifier; import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils; import com.gingersoft.gsa.cloud.database.utils.ModifierDaoUtils;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant; import com.gingersoft.gsa.cloud.constans.MealConstant;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.FineItemOneAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.FineItemOneAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.FineItemTwoAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.FineItemTwoAdapter;
......
...@@ -4,6 +4,7 @@ import android.app.Application; ...@@ -4,6 +4,7 @@ import android.app.Application;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.SparseArray; import android.util.SparseArray;
import android.view.View; import android.view.View;
import com.billy.cc.core.component.CC; import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.aspectj.XClickUtil; import com.gingersoft.gsa.cloud.aspectj.XClickUtil;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
...@@ -28,16 +29,16 @@ import com.gingersoft.gsa.cloud.table.mvp.model.bean.FoodReason; ...@@ -28,16 +29,16 @@ import com.gingersoft.gsa.cloud.table.mvp.model.bean.FoodReason;
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;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.DeleteOrderRequest; import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.DeleteOrderRequest;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant; import com.gingersoft.gsa.cloud.constans.MealConstant;
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.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ComboAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.DiscountAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.DiscountAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodGroupAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ModifierAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.SelectMealAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.SelectMealAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.widget.CancelFoodDialog; import com.gingersoft.gsa.cloud.table.mvp.ui.widget.CancelFoodDialog;
import com.gingersoft.gsa.cloud.ui.adapter.meal.ComboAdapter;
import com.gingersoft.gsa.cloud.ui.adapter.meal.FoodAdapter;
import com.gingersoft.gsa.cloud.ui.adapter.meal.FoodGroupAdapter;
import com.gingersoft.gsa.cloud.ui.adapter.meal.ModifierAdapter;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
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;
...@@ -187,15 +188,16 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -187,15 +188,16 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
mRootView.recordOperat(true); mRootView.recordOperat(true);
RvMealClicked = true; if (mSelectMealAdapter.getSelectedMode() == SelectMealAdapter.MULTIPLE_SELECTED) {
return;
}
if (IActivity.getShowFinePage() != 2) { RvMealClicked = true;
//设置当前操作的食品 //设置当前操作的食品
mCurrentOrderDetailBean = datasBean; mCurrentOrderDetailBean = datasBean;
mSelectMealAdapter.setMyOrderManageSelectPosition(); mSelectMealAdapter.setMyOrderManageSelectPosition();
loadComboData(datasBean, true); loadComboData(datasBean, true);
} }
}
@Override @Override
public void onMealCountDelete(OrderDetail datasBean, int position) { public void onMealCountDelete(OrderDetail datasBean, int position) {
...@@ -215,6 +217,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -215,6 +217,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
@Override @Override
public void onItemClick(Food datasBean, int position) { public void onItemClick(Food datasBean, int position) {
mRootView.recordOperat(true); mRootView.recordOperat(true);
if (mSelectMealAdapter.getSelectedMode() == SelectMealAdapter.MULTIPLE_SELECTED) {
return;
}
if (!foodConditionFilter(datasBean)) { if (!foodConditionFilter(datasBean)) {
return; return;
} }
...@@ -344,7 +349,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -344,7 +349,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
private void addModifierItem(Modifier datasBean) { private void addModifierItem(Modifier datasBean) {
long id = mCurrentOrderDetailBean.isNew() ? mCurrentOrderDetailBean.getProductId() : mCurrentOrderDetailBean.getId(); long id = mCurrentOrderDetailBean.isNew() ? mCurrentOrderDetailBean.getProductId() : mCurrentOrderDetailBean.getId();
mCurrentOrderDetailBean = OrderDetail.modifierTransOrderDetail(datasBean, id, 1); mCurrentOrderDetailBean = OrderDetail.modifierTransOrderDetail(datasBean, id, 1);
int addPosition = mSelectMealAdapter.addFoodItem(mCurrentOrderDetailBean);
int addPosition = mOrderFoodList.size();
if (mSelectMealAdapter.getSelectedMode() == SelectMealAdapter.MULTIPLE_SELECTED) {
addPosition = addMultipleModifierItems(mCurrentOrderDetailBean, addPosition);
} else {
addPosition = mSelectMealAdapter.addFoodItem(mCurrentOrderDetailBean);
}
mRootView.setMealRvScrollToPosition(addPosition); mRootView.setMealRvScrollToPosition(addPosition);
} }
...@@ -358,7 +369,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -358,7 +369,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
id = mSelectMealAdapter.getCurrentMainOrderDetail().getId(); id = mSelectMealAdapter.getCurrentMainOrderDetail().getId();
} }
} }
mCurrentOrderDetailBean = OrderDetail.discountTransOrderDetail(datasBean, true,id, getDisountPrice()); mCurrentOrderDetailBean = OrderDetail.discountTransOrderDetail(datasBean, true, id, getDisountSourcePrice());
int addPosition = mSelectMealAdapter.addFoodItem(mCurrentOrderDetailBean); int addPosition = mSelectMealAdapter.addFoodItem(mCurrentOrderDetailBean);
mRootView.setMealRvScrollToPosition(addPosition); mRootView.setMealRvScrollToPosition(addPosition);
} }
...@@ -804,15 +815,17 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -804,15 +815,17 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
*/ */
public void deleteFoodItem(int deleteStyle) { public void deleteFoodItem(int deleteStyle) {
if (getOrderFoodLists().size() == 0 || mSelectMealAdapter.getSelect_position() >= getOrderFoodLists().size()) { if (!mSelectMealAdapter.canDeleteFood()) {
return; return;
} }
//未選擇食品時,設置默認選擇最後一個 //未選擇食品時,設置默認選擇最後一個
if (mSelectMealAdapter.getSelect_position() == -1) { if (mSelectMealAdapter.getSelect_position() == -1) {
if (getOrderFoodLists().size() > 0) { if (getOrderFoodLists().size() > 0) {
mSelectMealAdapter.setSelectPosition(getOrderFoodLists().size() - 1); mSelectMealAdapter.setSelectPosition(getOrderFoodLists().size() - 1);
} }
} }
OrderDetail deleteFood = getOrderFoodLists().get(mSelectMealAdapter.getSelect_position()); OrderDetail deleteFood = getOrderFoodLists().get(mSelectMealAdapter.getSelect_position());
if (!deleteFood.isNew()) { if (!deleteFood.isNew()) {
...@@ -1226,6 +1239,49 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1226,6 +1239,49 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
} }
/** /**
* 全選
*
*/
public void setSelectAll() {
for (OrderDetail item : mOrderFoodList) {
item.setSelected(1);
}
mSelectMealAdapter.notifyDataSetChanged();
}
/**
* 反選
*/
public void setAntiSelect() {
for (OrderDetail item : mOrderFoodList) {
if (item.getSelected() == 0) {
item.setSelected(1);
}else {
item.setSelected(0);
}
}
mSelectMealAdapter.notifyDataSetChanged();
}
/**
* 添加多選細項
*/
public int addMultipleModifierItems(OrderDetail modifierItem, int addPosition) {
for (int i = 0; i < mOrderFoodList.size(); i++) {
OrderDetail item = mOrderFoodList.get(i);
if (item.getSelected() != 0) {
//往下找
int nextIndex = i + 1;
if(item.getItemType() == 1){
mOrderFoodList.add(i + 1, new OrderDetail(modifierItem));
}
}
}
mSelectMealAdapter.notifyDataSetChanged();
return addPosition;
}
/**
* 加載折扣數據 * 加載折扣數據
*/ */
public void loadDiscountData() { public void loadDiscountData() {
...@@ -1239,10 +1295,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1239,10 +1295,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
mCurrentOrderDetailBean = currentOrderBean; mCurrentOrderDetailBean = currentOrderBean;
List<Discount> discountList = mModel.queryDB_DiscountList(); List<Discount> discountList = mModel.queryDB_DiscountList();
// discountList.clear();
// if (discountList.size() == 0) {
// discountList.addAll(getDiscountList());
// }
mDiscountList.clear(); mDiscountList.clear();
mDiscountList.addAll(discountList); mDiscountList.addAll(discountList);
//根据Item个数显示每一行的个数 //根据Item个数显示每一行的个数
...@@ -1255,7 +1308,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1255,7 +1308,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
* *
* @return * @return
*/ */
private double getDisountPrice() { private double getDisountSourcePrice() {
double discount = 0.0; double discount = 0.0;
int start_position = mSelectMealAdapter.getSelect_full_start_position(); int start_position = mSelectMealAdapter.getSelect_full_start_position();
int end_position = mSelectMealAdapter.getSelect_full_end_position(); int end_position = mSelectMealAdapter.getSelect_full_end_position();
......
...@@ -223,11 +223,18 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model ...@@ -223,11 +223,18 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
@Override @Override
public void onNext(BaseResult baseResult) { public void onNext(BaseResult baseResult) {
mRootView.hideLoading();
if (baseResult.isSuccess()) { if (baseResult.isSuccess()) {
//結賬成功 //結賬成功
mRootView.paySuccess(); mRootView.paySuccess();
} }
} }
@Override
public void onError(Throwable t) {
super.onError(t);
mRootView.hideLoading();
}
}); });
} }
......
package com.gingersoft.gsa.cloud.table.mvp.presenter;
import android.app.Application;
import com.gingersoft.gsa.cloud.constans.MealConstant;
import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.table.mvp.contract.SoldoutCtrlContract;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.SoldoutCtrlActivity;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.CurrentSlodoutFoodAdapter;
import com.gingersoft.gsa.cloud.ui.adapter.meal.ComboAdapter;
import com.gingersoft.gsa.cloud.ui.adapter.meal.FoodAdapter;
import com.gingersoft.gsa.cloud.ui.adapter.meal.FoodGroupAdapter;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader;
import com.jess.arms.integration.AppManager;
import com.jess.arms.mvp.BasePresenter;
import java.util.ArrayList;
import java.util.List;
import javax.inject.Inject;
import me.jessyan.rxerrorhandler.core.RxErrorHandler;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 04/22/2020 10:39
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
@ActivityScope
public class SoldoutCtrlPresenter extends BasePresenter<SoldoutCtrlContract.Model, SoldoutCtrlContract.View> {
@Inject
RxErrorHandler mErrorHandler;
@Inject
Application mApplication;
@Inject
ImageLoader mImageLoader;
@Inject
AppManager mAppManager;
private SoldoutCtrlActivity IActivity;
private CurrentSlodoutFoodAdapter mCurrentSlodoutFoodAdapter;
private FoodGroupAdapter mFoodGroupAdapter;
private FoodAdapter mFoodAdapter;
private ComboAdapter mComboAdapter;
//食品数据
private List<Food> mFoodGroupList = new ArrayList<>();
private List<Food> mFoodList = new ArrayList<>();
private List<ComboItem> mFoodComboList = new ArrayList<>();
//细项数据
private List<Modifier> mModifierList = new ArrayList<>();
@Inject
public SoldoutCtrlPresenter(SoldoutCtrlContract.Model model, SoldoutCtrlContract.View rootView) {
super(model, rootView);
this.IActivity = (SoldoutCtrlActivity) rootView;
}
@Override
public void onDestroy() {
super.onDestroy();
this.mErrorHandler = null;
this.mAppManager = null;
this.mImageLoader = null;
this.mApplication = null;
}
public void initAdapter() {
// if (mCurrentSlodoutFoodAdapter == null) {
// mCurrentSlodoutFoodAdapter = new CurrentSlodoutFoodAdapter(mApplication, mCurrentSlodoutFoodList, GSAApplication.androidSetting.getFoodlListFontSize());
// mRootView.setCurrentSoldoutFoodAdapter(mCurrentSlodoutFoodAdapter);
// }
if (mFoodGroupAdapter == null) {
mFoodGroupAdapter = new FoodGroupAdapter(mApplication, mFoodGroupList);
mRootView.setFoodGroupAdapter(mFoodGroupAdapter);
}
if (mFoodAdapter == null) {
mFoodAdapter = new FoodAdapter(mApplication, mFoodList);
mRootView.setFoodAdapter(mFoodAdapter);
}
if (mComboAdapter == null) {
mComboAdapter = new ComboAdapter(IActivity, mFoodComboList);
mRootView.setComboAdapter(mComboAdapter);
}
}
public void initFoodListener() {
mFoodAdapter.setOnItemClickListener(new FoodAdapter.OnItemClickListener() {
@Override
public void onItemClick(Food datasBean, int position) {
// loadComboData(datasBean);
}
});
mComboAdapter.setOnItemClickListener(new ComboAdapter.OnItemClickListener() {
@Override
public void onItemClick(ComboItem datasBean, int position) {
}
});
}
public void initFoodData() {
List<Food> foodGroupList = mModel.queryDB_FoodGroupList();
if (foodGroupList != null && foodGroupList.size() > 0) {
mFoodGroupList.addAll(foodGroupList);
//默認選中第一組
mFoodGroupList.get(0).setSelected(true);
IActivity.initFoodGroupView(mFoodGroupList);
changedMealByParentId(mFoodGroupList.get(0).getId());
}
}
public void changedMealByParentId(long parentId) {
List<Food> foodList = mModel.queryDB_FoodList(parentId);
mFoodAdapter.resetSelect(-1, null);
if (foodList != null) {
updateFoodData(foodList);
}
}
private void loadComboData(Food food) {
long fid = food.getId();
//获取套餐细项数据
List<ComboItem> comboItems = mModel.queryDB_ComboList(fid);
//更新套餐数据
updateComboData(comboItems);
mRootView.showViewModeVisibility(MealConstant.combo_ViewMode);
}
/**
* 更新食品數據
*
* @param foodList
*/
private void updateFoodData(List<Food> foodList) {
mFoodList.clear();
mFoodList.addAll(foodList);
//根据Item个数显示每一行的个数
mRootView.setFoodRecycleSpanCount(mFoodList.size());
mFoodAdapter.notifyDataSetChanged();
}
/**
* 更新套餐數據
*
* @param foodComboList
*/
private void updateComboData(List<ComboItem> foodComboList) {
mFoodComboList.clear();
mFoodComboList.addAll(foodComboList);
mComboAdapter.notifyDataSetChanged();
}
}
...@@ -34,11 +34,9 @@ import androidx.recyclerview.widget.RecyclerView; ...@@ -34,11 +34,9 @@ import androidx.recyclerview.widget.RecyclerView;
import androidx.viewpager.widget.ViewPager; 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.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.TableBean; import com.gingersoft.gsa.cloud.base.common.bean.TableBean;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage; 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.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.other.SPUtils; import com.gingersoft.gsa.cloud.base.utils.other.SPUtils;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
...@@ -52,13 +50,13 @@ import com.gingersoft.gsa.cloud.table.R2; ...@@ -52,13 +50,13 @@ import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.constans.GoldConstants; import com.gingersoft.gsa.cloud.constans.GoldConstants;
import com.gingersoft.gsa.cloud.table.di.component.DaggerMealStandComponent; import com.gingersoft.gsa.cloud.table.di.component.DaggerMealStandComponent;
import com.gingersoft.gsa.cloud.table.mvp.contract.MealStandContract; import com.gingersoft.gsa.cloud.table.mvp.contract.MealStandContract;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant; import com.gingersoft.gsa.cloud.constans.MealConstant;
import com.gingersoft.gsa.cloud.table.mvp.presenter.MealStandPresenter; import com.gingersoft.gsa.cloud.table.mvp.presenter.MealStandPresenter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BaseFragmentAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BaseFragmentAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodGroupAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.SelectMealAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.FineItemAllFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.FineItemAllFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.FineItemKindFragment;
import com.gingersoft.gsa.cloud.table.mvp.ui.widget.ChooseNumberDialog; import com.gingersoft.gsa.cloud.table.mvp.ui.widget.ChooseNumberDialog;
import com.gingersoft.gsa.cloud.ui.adapter.meal.FoodGroupAdapter;
import com.gingersoft.gsa.cloud.ui.recylcler.Indicator.PagerConfig; import com.gingersoft.gsa.cloud.ui.recylcler.Indicator.PagerConfig;
import com.gingersoft.gsa.cloud.ui.recylcler.Indicator.PagerGridLayoutManager; import com.gingersoft.gsa.cloud.ui.recylcler.Indicator.PagerGridLayoutManager;
import com.gingersoft.gsa.cloud.ui.recylcler.Indicator.PagerGridSnapHelper; import com.gingersoft.gsa.cloud.ui.recylcler.Indicator.PagerGridSnapHelper;
...@@ -211,22 +209,26 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -211,22 +209,26 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
Button btn_taste; Button btn_taste;
@BindView(R2.id.btn_msg) @BindView(R2.id.btn_msg)
Button btn_msg; Button btn_msg;
// @BindView(R2.id.btn_multiple_selection) // @BindView(R2.id.btn_multiple_selection)
// Button btn_multiple_selection; // Button btn_multiple_selection;
@BindView(R2.id.btn_delete) @BindView(R2.id.btn_delete)
Button btn_delete; Button btn_delete;
@BindView(R2.id.btn_end) @BindView(R2.id.btn_end)
Button btn_end; Button btn_end;
private ChooseNumberDialog chooseNumberDialog;
private FragmentManager fm; private FragmentManager fm;
private FineItemAllFragment modMsgFineItemFragment, modSasteFineItemFragment, modCommFineItemFragment; private FineItemAllFragment modMsgFineItemFragment, modSasteFineItemFragment;
// private FineItemKindFragment fineItemKindFragment;
//是否初始化细项布局 /**
* 是否初始化细项布局
*/
private boolean initFineItemLayout = false; private boolean initFineItemLayout = false;
private int showFinePage = 0; /**
* 公共細項頁碼:0=口味;1=特別信息
private ChooseNumberDialog chooseNumberDialog; */
private int currentFinePage = 0;
private int mCurrentViewMode; private int mCurrentViewMode;
private boolean isPluMode = false; private boolean isPluMode = false;
...@@ -377,7 +379,6 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -377,7 +379,6 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
for (int i = 0; i < totalPage; i++) { for (int i = 0; i < totalPage; i++) {
//循坏加入点点图片组 //循坏加入点点图片组
ivPoints[i] = new ImageView(this); ivPoints[i] = new ImageView(this);
if (i == 0) { if (i == 0) {
ivPoints[i].setImageResource(R.drawable.meal_food_group_point_focuese); ivPoints[i].setImageResource(R.drawable.meal_food_group_point_focuese);
} else { } else {
...@@ -436,7 +437,6 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -436,7 +437,6 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
// Fragment标签 // Fragment标签
modSasteFineItemFragment = FineItemAllFragment.newInstance(); modSasteFineItemFragment = FineItemAllFragment.newInstance();
modMsgFineItemFragment = FineItemAllFragment.newInstance(); modMsgFineItemFragment = FineItemAllFragment.newInstance();
modCommFineItemFragment = FineItemAllFragment.newInstance();
fragmentList.add(modSasteFineItemFragment); fragmentList.add(modSasteFineItemFragment);
fragmentList.add(modMsgFineItemFragment); fragmentList.add(modMsgFineItemFragment);
// fragmentList.add(modCommFineItemFragment); // fragmentList.add(modCommFineItemFragment);
...@@ -487,11 +487,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -487,11 +487,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override @Override
public void onPageSelected(int position) { public void onPageSelected(int position) {
if (showFinePage == 2 && position != 2) { currentFinePage = position;
//從多選頁離開 重置選中
mPresenter.resetSelected();
}
showFinePage = position;
} }
@Override @Override
...@@ -502,14 +498,14 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -502,14 +498,14 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
initFineItemLayout = true; initFineItemLayout = true;
showFinePage(); setCurrentFinePage();
showViewModeVisibility(MealConstant.fine_ViewMode, MealConstant.fine_tabs_ViewMode); showViewModeVisibility(MealConstant.fine_ViewMode, MealConstant.fine_tabs_ViewMode);
} }
@Override @Override
public void showFinePage() { public void setCurrentFinePage() {
pager_fine.setCurrentItem(showFinePage); pager_fine.setCurrentItem(currentFinePage);
} }
@Override @Override
...@@ -545,6 +541,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -545,6 +541,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
return false; return false;
} }
@OnClick(R2.id.btn_meal_discount) @OnClick(R2.id.btn_meal_discount)
void onClickDiscount() { void onClickDiscount() {
//更新折扣数据 //更新折扣数据
...@@ -553,6 +550,23 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -553,6 +550,23 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
showViewModeVisibility(MealConstant.discount_ViewMode); showViewModeVisibility(MealConstant.discount_ViewMode);
} }
@OnClick(R2.id.btn_multiple_selection)
void onClickMultipleSelection() {
currentFinePage = 0;
mPresenter.getSelectMealAdapter().setSelectedMode(SelectMealAdapter.MULTIPLE_SELECTED);
showRemarkInfo();
}
@OnClick(R2.id.btn_select_all)
void onClickSelectAll() {
mPresenter.setSelectAll();
}
@OnClick(R2.id.btn_anti_selection)
void onClickAntiSelection() {
mPresenter.setAntiSelect();
}
@OnClick({R2.id.btn_key1, R2.id.btn_key2, R2.id.btn_key3, R2.id.btn_key4, R2.id.btn_key5, R2.id.btn_keys, @OnClick({R2.id.btn_key1, R2.id.btn_key2, R2.id.btn_key3, R2.id.btn_key4, R2.id.btn_key5, R2.id.btn_keys,
R2.id.btn_numberman, R2.id.btn_fid, R2.id.btn_meal_delete, R2.id.btn_send_order, R2.id.tv_no_save_return, R2.id.fl_order_content, R2.id.btn_numberman, R2.id.btn_fid, R2.id.btn_meal_delete, R2.id.btn_send_order, R2.id.tv_no_save_return, R2.id.fl_order_content,
R2.id.btn_taste, R2.id.btn_msg, R2.id.btn_delete, R2.id.btn_end}) R2.id.btn_taste, R2.id.btn_msg, R2.id.btn_delete, R2.id.btn_end})
...@@ -572,6 +586,8 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -572,6 +586,8 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
} }
setPluMode(); setPluMode();
} else if (id == R.id.btn_meal_delete) { } else if (id == R.id.btn_meal_delete) {
if(mPresenter.getSelectMealAdapter().getSelectedMode() == SelectMealAdapter.MULTIPLE_SELECTED)
return;
mPresenter.deleteFoodItem(1); mPresenter.deleteFoodItem(1);
} else if (id == R.id.btn_send_order) { } else if (id == R.id.btn_send_order) {
mPresenter.sendOrder(false); mPresenter.sendOrder(false);
...@@ -581,22 +597,17 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -581,22 +597,17 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
} else if (id == R.id.tv_no_save_return) { } else if (id == R.id.tv_no_save_return) {
returnBeforeActivity(true); returnBeforeActivity(true);
} else if (id == R.id.btn_taste) { } else if (id == R.id.btn_taste) {
showFinePage = 0; currentFinePage = 0;
showRemarkInfo(); showRemarkInfo();
} else if (id == R.id.btn_msg) { } else if (id == R.id.btn_msg) {
showFinePage = 1; currentFinePage = 1;
showRemarkInfo(); showRemarkInfo();
} } else if (id == R.id.btn_delete) {
// else if (id == R.id.btn_multiple_selection) {
// showFinePage = 2;
// showRemarkInfo();
// }
else if (id == R.id.btn_delete) {
mPresenter.deleteChildItem(); mPresenter.deleteChildItem();
} else if (id == R.id.btn_end) { } else if (id == R.id.btn_end) {
showFinePage = 0; mPresenter.getSelectMealAdapter().setSelectedMode(SelectMealAdapter.SINGLE_SELECTED);
//從多選頁離開 重置選中 //從多選頁離開 重置選中
// mPresenter.resetSelected(); mPresenter.resetSelected();
showViewModeVisibility(MealConstant.food_group_ViewMode, MealConstant.food_ViewMode); showViewModeVisibility(MealConstant.food_group_ViewMode, MealConstant.food_ViewMode);
} else if (id == R.id.btn_key1 || id == R.id.btn_key2 || id == R.id.btn_key3 || id == R.id.btn_key4 || id == R.id.btn_key5 || id == R.id.btn_keys) { } else if (id == R.id.btn_key1 || id == R.id.btn_key2 || id == R.id.btn_key3 || id == R.id.btn_key4 || id == R.id.btn_key5 || id == R.id.btn_keys) {
...@@ -904,6 +915,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -904,6 +915,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
case MealConstant.combo_ViewMode: case MealConstant.combo_ViewMode:
case MealConstant.modifier_ViewMode: case MealConstant.modifier_ViewMode:
case MealConstant.discount_ViewMode: case MealConstant.discount_ViewMode:
case MealConstant.fine_ViewMode:
showModifyLayoutVisibility(true); showModifyLayoutVisibility(true);
break; break;
} }
...@@ -1029,7 +1041,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -1029,7 +1041,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
// modCommFineItemFragment.onModCommEvent(mPresenter.getCurrentOrderDetailBean().getProductId()); // modCommFineItemFragment.onModCommEvent(mPresenter.getCurrentOrderDetailBean().getProductId());
showFinePage(); setCurrentFinePage();
showViewModeVisibility(MealConstant.fine_ViewMode, MealConstant.fine_tabs_ViewMode); showViewModeVisibility(MealConstant.fine_ViewMode, MealConstant.fine_tabs_ViewMode);
} }
...@@ -1135,8 +1147,4 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen ...@@ -1135,8 +1147,4 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
btn_end.setCompoundDrawables(endDrawable, null, null, null); btn_end.setCompoundDrawables(endDrawable, null, null, null);
} }
public int getShowFinePage() {
return showFinePage;
}
} }
...@@ -29,14 +29,12 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage; ...@@ -29,14 +29,12 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import com.gingersoft.gsa.cloud.base.qmui.arch.QMUIFragmentPagerAdapter; import com.gingersoft.gsa.cloud.base.qmui.arch.QMUIFragmentPagerAdapter;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.log.LogUtil; import com.gingersoft.gsa.cloud.base.utils.log.LogUtil;
import com.gingersoft.gsa.cloud.base.utils.other.SPUtils;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2; import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.table.app.OrderConentOperatTypeConstant; import com.gingersoft.gsa.cloud.table.app.OrderConentOperatTypeConstant;
import com.gingersoft.gsa.cloud.table.app.TableOperatTypeConstant; import com.gingersoft.gsa.cloud.table.app.TableOperatTypeConstant;
import com.gingersoft.gsa.cloud.table.di.component.DaggerOrderContentComponent; import com.gingersoft.gsa.cloud.table.di.component.DaggerOrderContentComponent;
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.constant.MealConstant;
import com.gingersoft.gsa.cloud.table.mvp.presenter.OrderContentPresenter; import com.gingersoft.gsa.cloud.table.mvp.presenter.OrderContentPresenter;
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;
...@@ -49,8 +47,6 @@ import com.jess.arms.integration.AppManager; ...@@ -49,8 +47,6 @@ import com.jess.arms.integration.AppManager;
import com.jess.arms.utils.ArmsUtils; import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.alpha.QMUIAlphaButton; import com.qmuiteam.qmui.alpha.QMUIAlphaButton;
import com.qmuiteam.qmui.util.QMUIDisplayHelper; import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import com.qmuiteam.qmui.widget.dialog.QMUIDialog;
import com.qmuiteam.qmui.widget.dialog.QMUIDialogAction;
import com.qmuiteam.qmui.widget.popup.QMUIPopup; import com.qmuiteam.qmui.widget.popup.QMUIPopup;
import com.qmuiteam.qmui.widget.popup.QMUIPopups; import com.qmuiteam.qmui.widget.popup.QMUIPopups;
import com.qmuiteam.qmui.widget.tab.QMUITab; import com.qmuiteam.qmui.widget.tab.QMUITab;
......
...@@ -327,6 +327,10 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl ...@@ -327,6 +327,10 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
orderBean.setStatus(datasBean.getStatus()); orderBean.setStatus(datasBean.getStatus());
orderBean.setOrderNo(datasBean.getOrderNo()); orderBean.setOrderNo(datasBean.getOrderNo());
orderBean.setPerson(datasBean.getPerson()); orderBean.setPerson(datasBean.getPerson());
orderBean.setType(datasBean.getType());
orderBean.setRemark(datasBean.getRemark());
orderBean.setDiscountAmount(datasBean.getDiscountAmount());
orderBean.setDiscountValue(datasBean.getDiscountValue());
orderBean.setCreateTime(datasBean.getCreateTime()); orderBean.setCreateTime(datasBean.getCreateTime());
MyOrderManage.getInstance().setOrderBean(orderBean); MyOrderManage.getInstance().setOrderBean(orderBean);
...@@ -355,10 +359,12 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl ...@@ -355,10 +359,12 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
MyOrderManage.getInstance().setOrderFoodList(orderDetailList); MyOrderManage.getInstance().setOrderFoodList(orderDetailList);
MyOrderManage.getInstance().setOrderId(orderDetailItem.getId()); MyOrderManage.getInstance().setOrderId(orderDetailItem.getId());
OpenTableManage.getDefault().setPeopleNumber(orderDetailItem.getPerson()); OpenTableManage.getDefault().setPeopleNumber(orderDetailItem.getPerson());
TableBean.DataBean dataBean = new TableBean.DataBean(); TableBean.DataBean dataBean = new TableBean.DataBean();
dataBean.setTableName(orderDetailItem.getTableName()); dataBean.setTableName(orderDetailItem.getTableName());
dataBean.setCreateTime(TimeUtil.getStringByFormat(new Date(orderDetailItem.getCreateTime()), TimeUtil.dateFormatYMDHM)); dataBean.setCreateTime(TimeUtil.getStringByFormat(new Date(orderDetailItem.getCreateTime()), TimeUtil.dateFormatYMDHM));
OpenTableManage.getDefault().setTableBean(dataBean); OpenTableManage.getDefault().setTableBean(dataBean);
CC.obtainBuilder("Component.Print") CC.obtainBuilder("Component.Print")
.setActionName("printActivity") .setActionName("printActivity")
.addParam("type", 2) .addParam("type", 2)
......
package com.gingersoft.gsa.cloud.table.mvp.ui.adapter;
import android.view.View;
import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter;
import java.util.List;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2018/6/27
* 修订历史:2018/6/27
* 描述:
*/
public class CurrentSlodoutFoodAdapter extends DefaultAdapter<Object> {
public CurrentSlodoutFoodAdapter(List<Object> infos) {
super(infos);
}
@Override
public BaseHolder<Object> getHolder(View v, int viewType) {
return null;
}
@Override
public int getLayoutId(int viewType) {
return 0;
}
//
// private Context mContext;
// private View convertView;
// //字体大小
// private int mFoodlListFontSize;
//
// private int select_position = 0;
//
// public void setSelectPosition(int select_position) {
// this.select_position = select_position;
// set_SelectPosition();
// }
//
// private void set_SelectPosition() {
//
// //查找自己的
// if (select_position == -1 || mInfos == null || mInfos.size() < 1) {
// return;
// }
//
// List<CurrentSoldoutFood.DatasBean> datasBeans = mInfos;
//
// for (int i = 0; i < datasBeans.size(); i++) {
// if (i == select_position) {
// datasBeans.get(i).setSelected(2);
// } else {
// datasBeans.get(i).setSelected(0);
// }
// }
// }
//
// public CurrentSlodoutFoodAdapter(Context context, List<CurrentSoldoutFood.DatasBean> infos, int foodlListFontSize) {
// super(infos);
// this.mContext = context;
// this.mFoodlListFontSize = foodlListFontSize;
// }
//
// @Override
// public int getItemCount() {
// return mInfos.size();
// }
//
// @Override
// public BaseHolder<CurrentSoldoutFood.DatasBean> getHolder(View v, int viewType) {
// convertView = v;
// return new DateTimeItemHolder(v);
// }
//
// @Override
// public int getLayoutId(int viewType) {
// return R.layout.item_current_soldout_food;
// }
//
// class DateTimeItemHolder extends BaseHolder<CurrentSoldoutFood.DatasBean> {
//
// @BindView(R.id.rl_select)
// RelativeLayout rl_select;
// @BindView(R.id.tv_number)
// TextView tv_number;
// @BindView(R.id.tv_name)
// TextView tv_name;
// @BindView(R.id.tv_value)
// TextView tv_value;
//
// public DateTimeItemHolder(View itemView) {
// super(itemView);
// }
//
// @Override
// public void setData(CurrentSoldoutFood.DatasBean datasBean, int position) {
//
// String name = datasBean.getName();
// if (name != null) {
// tv_name.setText(name);
// }
//
// if (datasBean.getItemdesc1() == null || datasBean.getItemdesc1().equals("0")) {
// tv_number.setText("");
// } else {
// tv_number.setText("1");
// }
//
// String qtyValue = String.valueOf(datasBean.getOR_Qty());
//
// if (datasBean.getOR_Qty() == 0) {
// qtyValue = "暫停";
// } else {
// if (datasBean.getOR_Qty() - datasBean.getUsed_Qty() == 0) {
// qtyValue = "售罄";
// }
// }
//
// tv_value.setText(qtyValue);
//
// //显示
// convertView.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// int selected = datasBean.getSelected();
// switch (selected) {
// case 0://未选 中。黑底白字
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.black));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// case 1://选中,第一层选中.
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.theme_color));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// case 2://选中,作为主体被选中
// rl_select.setBackgroundColor(mContext.getResources().getColor(R.color.colorAccent));
// tv_number.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_name.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// tv_value.setTextColor(mContext.getResources().getColor(R.color.theme_white_color));
// break;
// }
//
// //设置字体
// tv_value.setTextSize(mFoodlListFontSize);
// tv_name.setTextSize(mFoodlListFontSize);
// tv_number.setTextSize(mFoodlListFontSize);
//
// rl_select.setOnClickListener(new View.OnClickListener() {
// @Override
// public void onClick(View v) {
// if (mOnItemClickListener != null)
// mOnItemClickListener.onItemClick(datasBean, position);
// }
// });
// }
// }
//
//
// public int getSelectPosition() {
// return this.select_position;
// }
//
// private OnItemClickListener mOnItemClickListener;
//
// public void setOnItemClickListener(OnItemClickListener onItemClickListener) {
// mOnItemClickListener = onItemClickListener;
// }
//
// public interface OnItemClickListener {
//
// void onItemClick(CurrentSoldoutFood.DatasBean datasBean, int position);
//
// }
//
}
...@@ -77,7 +77,7 @@ public class FineItemOneAdapter extends DefaultAdapter<Modifier> { ...@@ -77,7 +77,7 @@ public class FineItemOneAdapter extends DefaultAdapter<Modifier> {
@Override @Override
public int getLayoutId(int viewType) { public int getLayoutId(int viewType) {
return R.layout.ui_item_food; return R.layout.ui_meal_item_food;
} }
class DateTimeItemHolder extends BaseHolder<Modifier> { class DateTimeItemHolder extends BaseHolder<Modifier> {
......
...@@ -77,7 +77,7 @@ public class FineItemTwoAdapter extends DefaultAdapter<Modifier> { ...@@ -77,7 +77,7 @@ public class FineItemTwoAdapter extends DefaultAdapter<Modifier> {
@Override @Override
public int getLayoutId(int viewType) { public int getLayoutId(int viewType) {
return R.layout.ui_item_food; return R.layout.ui_meal_item_food;
} }
class FineItemHolder extends BaseHolder<Modifier> { class FineItemHolder extends BaseHolder<Modifier> {
......
...@@ -8,11 +8,9 @@ import android.widget.TextView; ...@@ -8,11 +8,9 @@ import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils; import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.base.utils.time.TimeUtil; import com.gingersoft.gsa.cloud.base.utils.time.TimeUtil;
import com.gingersoft.gsa.cloud.database.bean.Modifier;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2; import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem; import com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem;
import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ModifierAdapter;
import com.jess.arms.base.BaseHolder; import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import com.qmuiteam.qmui.alpha.QMUIAlphaButton; import com.qmuiteam.qmui.alpha.QMUIAlphaButton;
......
...@@ -33,7 +33,12 @@ public class OrderCenterDetailFoodAdapter extends BaseQuickAdapter<SectionTextIt ...@@ -33,7 +33,12 @@ public class OrderCenterDetailFoodAdapter extends BaseQuickAdapter<SectionTextIt
} else { } else {
helper.setVisible(R.id.tv_center, false); helper.setVisible(R.id.tv_center, false);
} }
if (Double.parseDouble(item.getRightText()) < 0) {
//折扣
helper.setText(R.id.tv_right, "-$" + Math.abs(Double.parseDouble(item.getRightText())));
} else {
helper.setText(R.id.tv_right, "$" + item.getRightText()); helper.setText(R.id.tv_right, "$" + item.getRightText());
} }
}
} }
...@@ -14,7 +14,7 @@ import com.gingersoft.gsa.cloud.database.bean.Food; ...@@ -14,7 +14,7 @@ import com.gingersoft.gsa.cloud.database.bean.Food;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2; import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant; import com.gingersoft.gsa.cloud.constans.MealConstant;
import com.gingersoft.gsa.cloud.table.mvp.presenter.MealStandPresenter; import com.gingersoft.gsa.cloud.table.mvp.presenter.MealStandPresenter;
import com.gingersoft.gsa.cloud.table.mvp.presenter.OrderContentPresenter; import com.gingersoft.gsa.cloud.table.mvp.presenter.OrderContentPresenter;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity; import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
...@@ -64,6 +64,14 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> { ...@@ -64,6 +64,14 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
public int select_full_start_position = 0; public int select_full_start_position = 0;
public int select_full_end_position = 0; public int select_full_end_position = 0;
/**
* 選中模式(1=單選,2=多選)
*/
public static final int SINGLE_SELECTED = 1;
public static final int MULTIPLE_SELECTED = 2;
private int selectedMode = SINGLE_SELECTED;
public SelectMealAdapter(Context context, List<OrderDetail> data, BasePresenter presenter) { public SelectMealAdapter(Context context, List<OrderDetail> data, BasePresenter presenter) {
super(data); super(data);
this.mContext = context; this.mContext = context;
...@@ -139,11 +147,12 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> { ...@@ -139,11 +147,12 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
if (mOnItemClickListener != null) { if (mOnItemClickListener != null) {
int position = this.getPosition(); int position = this.getPosition();
if (position < mInfos.size()) { if (position < mInfos.size()) {
// if (mMealStandActivity != null) { if (selectedMode == MULTIPLE_SELECTED) {
// if (mInfos.get(position).getSelected() != 0 && mInfos.get(position).getItemType() != 1) {
// } else { return;
}
}
setSelectPosition(position); setSelectPosition(position);
// }
//设置当前选中的食品或食品组 //设置当前选中的食品或食品组
mOnItemClickListener.onItemClick(mInfos.get(position), position); mOnItemClickListener.onItemClick(mInfos.get(position), position);
} }
...@@ -322,7 +331,7 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> { ...@@ -322,7 +331,7 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
return addPosition; return addPosition;
} }
private int addPositionItem(OrderDetail addFoodBean) { public int addPositionItem(OrderDetail addFoodBean) {
int addPosition = select_position; int addPosition = select_position;
boolean upAdd = true; boolean upAdd = true;
...@@ -767,6 +776,12 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> { ...@@ -767,6 +776,12 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
} }
} }
if (resetMultipleSelected()) {
//再次點擊直接恢復
notifyDataSetChanged();
return;
}
while (checkOrder.getItemType() != 1) { while (checkOrder.getItemType() != 1) {
checkOrder.setSelected(3); checkOrder.setSelected(3);
select_full_end_position = k; select_full_end_position = k;
...@@ -847,7 +862,30 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> { ...@@ -847,7 +862,30 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
} }
} }
if(mMealStandActivity == null || mMealStandActivity.getShowFinePage() != 2){ // if (mMealStandActivity == null || mMealStandActivity.isMultipleSelectionMode()) {
// for (int v = 0; v < mainStartPos; v++) {
// if (v < mInfos.size()) {
// mInfos.get(v).setSelected(0);
// }
// }
// for (int v = mainEndPos + 1; v < mInfos.size(); v++) {
// mInfos.get(v).setSelected(0);
// }
// } else {
// for (int v = 0; v < mainStartPos; v++) {
// if (v < mInfos.size()) {
// mInfos.get(v).setSelected(0);
// }
// }
// for (int v = mainEndPos + 1; v < mInfos.size(); v++) {
// mInfos.get(v).setSelected(0);
// }
// }
if (selectedMode == MULTIPLE_SELECTED) {
//
} else {
//重置未選中的食品狀態(單選)
for (int v = 0; v < mainStartPos; v++) { for (int v = 0; v < mainStartPos; v++) {
if (v < mInfos.size()) { if (v < mInfos.size()) {
mInfos.get(v).setSelected(0); mInfos.get(v).setSelected(0);
...@@ -911,6 +949,22 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> { ...@@ -911,6 +949,22 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
notifyDataSetChanged(); notifyDataSetChanged();
} }
/**
* 重置已選中食品(多選)
*/
public boolean resetMultipleSelected() {
boolean reset = false;
if (selectedMode == MULTIPLE_SELECTED) {
for (int i = 0; i < mInfos.size(); i++) {
OrderDetail datasBean = mInfos.get(i);
if (select_full_start_position <= i && i <= select_full_end_position && datasBean.getSelected() != 0) {
reset = true;
datasBean.setSelected(0);
}
}
}
return reset;
}
/** /**
* 获取食品子项最后一个子项位置 * 获取食品子项最后一个子项位置
...@@ -929,6 +983,19 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> { ...@@ -929,6 +983,19 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
return edgeIndex; return edgeIndex;
} }
public boolean canDeleteFood(){
boolean can = false;
for (OrderDetail item: mInfos) {
if(item.getSelected() != 0){
can = true;
}
}
if (mInfos.size() == 0 || select_position >= mInfos.size()) {
can = false;
}
return can;
}
public List<OrderDetail> getInfos() { public List<OrderDetail> getInfos() {
return mInfos; return mInfos;
} }
...@@ -969,6 +1036,14 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> { ...@@ -969,6 +1036,14 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
return mainEndPos; return mainEndPos;
} }
public int getSelectedMode() {
return selectedMode;
}
public void setSelectedMode(int selectedMode) {
this.selectedMode = selectedMode;
}
public OrderDetail getCurrentOrderDetail() { public OrderDetail getCurrentOrderDetail() {
if (select_position != -1) { if (select_position != -1) {
return mInfos.get(select_position); return mInfos.get(select_position);
......
...@@ -93,26 +93,19 @@ public class FineItemAllFragment extends BaseFragment<FineItemAllPresenter> impl ...@@ -93,26 +93,19 @@ public class FineItemAllFragment extends BaseFragment<FineItemAllPresenter> impl
} }
public void onModSasteEvent(long mid) { public void onModSasteEvent(long mid) {
if (mid == 0) { // if (mid == 0) {
return; // return;
} // }
mPresenter.initModSasteFineItemKindData(mid); mPresenter.initModSasteFineItemKindData(mid);
} }
public void onModMsgMidEvent(long mid) { public void onModMsgMidEvent(long mid) {
if (mid == 0) { // if (mid == 0) {
return; // return;
} // }
mPresenter.initModMsgFineItemData(mid); mPresenter.initModMsgFineItemData(mid);
} }
public void onModCommEvent(long mid) {
if (mid == 0) {
return;
}
mPresenter.initModCommFineItemKindData(mid);
}
@Override @Override
public void showLoading(String message) { public void showLoading(String message) {
......
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/theme_white_color">
<LinearLayout
android:id="@+id/ll_meals"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_220"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="30dp"
android:background="@color/theme_color"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_sold_hmmc"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="20dp"
android:layout_marginTop="5dp"
android:text="項目名稱"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/theme_white_color" />
<TextView
android:id="@+id/tv_sold_hmsl"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_marginTop="5dp"
android:layout_marginRight="20dp"
android:text="數量"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textColor="@color/theme_white_color" />
</RelativeLayout>
<LinearLayout
android:id="@+id/ll_meals_main"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_current_soldout_food"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:divider="@null"
android:fadeScrollbars="false" />
</LinearLayout>
</LinearLayout>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ll_meals"
android:layout_marginBottom="35dp"
android:orientation="vertical">
<LinearLayout
android:id="@+id/ll_food_group"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_food_group"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<LinearLayout
android:id="@+id/ll_food_group_point"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_5"
android:background="@color/theme_grey_color"
android:orientation="horizontal"
android:visibility="invisible" />
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_food"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ll_food_group"/>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_combo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ll_food_group"
android:divider="@null"
android:fadeScrollbars="false"
android:orientation="vertical"
android:visibility="invisible"
app:spanCount="4"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"/>
</RelativeLayout>
<LinearLayout
android:id="@+id/ll_fine_item"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/ll_meals"
android:layout_above="@+id/ll_stand_oper"
android:orientation="vertical"
android:visibility="invisible">
<RelativeLayout
android:id="@+id/rl_tabs"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_40"
android:background="@color/theme_background_color">
<ImageView
android:id="@+id/iv_fine_item_back"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/normal_space"
android:contentDescription="@string/app_name"
android:src="@drawable/ic_black_back"
android:visibility="visible" />
<com.qmuiteam.qmui.widget.tab.QMUITabSegment
android:id="@+id/tabSegment"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_centerInParent="true"
android:background="@drawable/shape_tab_panel_bg"/>
</RelativeLayout>
<androidx.viewpager.widget.ViewPager
android:id="@+id/contentViewPager"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
<LinearLayout
android:id="@+id/ll_stand_oper"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_38"
android:layout_alignParentLeft="true"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true">
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/tv_soldout"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_weight="1"
android:background="@color/theme_color"
android:gravity="center"
android:text="沽清控制--食品"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_20" />
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/tv_return"
android:layout_width="0dp"
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@color/theme_hint_color"
android:gravity="center"
android:text="返 回"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_20" />
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
...@@ -115,6 +115,20 @@ ...@@ -115,6 +115,20 @@
android:textColor="@color/theme_black" android:textColor="@color/theme_black"
android:textSize="@dimen/sp_12"/> android:textSize="@dimen/sp_12"/>
<TextView
android:id="@+id/btn_multiple_selection"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/meal_multiple_selection"
android:drawablePadding="@dimen/dp_1"
android:layout_marginTop="@dimen/dp_8"
android:background="@drawable/ui_selector_item_background"
android:textAllCaps="false"
android:gravity="center"
android:drawableTop="@drawable/meal_muleiple_selection"
android:textColor="@color/theme_black"
android:textSize="@dimen/sp_12"/>
<!-- <ImageButton--> <!-- <ImageButton-->
<!-- android:id="@+id/btn_meal_discount"--> <!-- android:id="@+id/btn_meal_discount"-->
<!-- style="@style/ButtonBorderless"--> <!-- style="@style/ButtonBorderless"-->
...@@ -263,6 +277,30 @@ ...@@ -263,6 +277,30 @@
android:visibility="invisible"> android:visibility="invisible">
<com.qmuiteam.qmui.alpha.QMUIAlphaButton <com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id="@+id/btn_select_all"
style="@style/ButtonBorderless"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginRight="1dp"
android:layout_weight="0.1"
android:background="#00B9F7"
android:text="@string/all_selection"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14"/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id="@+id/btn_anti_selection"
style="@style/ButtonBorderless"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_marginRight="1dp"
android:layout_weight="0.1"
android:background="#00B9F7"
android:text="@string/anti_selection"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14"/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id="@+id/btn_taste" android:id="@+id/btn_taste"
style="@style/ButtonBorderless" style="@style/ButtonBorderless"
android:layout_width="match_parent" android:layout_width="match_parent"
...@@ -291,19 +329,6 @@ ...@@ -291,19 +329,6 @@
android:textColor="@color/theme_white_color" android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_14"/> android:textSize="@dimen/sp_14"/>
<!-- <com.qmuiteam.qmui.alpha.QMUIAlphaButton-->
<!-- android:id="@+id/btn_multiple_selection"-->
<!-- style="@style/ButtonBorderless"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="match_parent"-->
<!-- android:layout_marginRight="1dp"-->
<!-- android:layout_weight="0.1"-->
<!-- android:background="#00B9F7"-->
<!-- android:drawableLeft="@mipmap/meal_fine_taste"-->
<!-- android:text="@string/multiple_selection"-->
<!-- android:textColor="@color/theme_white_color"-->
<!-- android:textSize="@dimen/sp_14"/>-->
<com.qmuiteam.qmui.alpha.QMUIAlphaButton <com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id="@+id/btn_delete" android:id="@+id/btn_delete"
style="@style/ButtonBorderless" style="@style/ButtonBorderless"
......
...@@ -30,6 +30,7 @@ ...@@ -30,6 +30,7 @@
<string name="loading">加載中...</string> <string name="loading">加載中...</string>
<string name="meal_return">返回</string> <string name="meal_return">返回</string>
<string name="meal_discount">折扣</string> <string name="meal_discount">折扣</string>
<string name="meal_multiple_selection">多選</string>
<string name="meal_move">轉移</string> <string name="meal_move">轉移</string>
<string name="meal_print">印單</string> <string name="meal_print">印單</string>
<string name="meal_send">送單</string> <string name="meal_send">送單</string>
...@@ -97,7 +98,8 @@ ...@@ -97,7 +98,8 @@
<string name="Addordelete">加/減</string> <string name="Addordelete">加/減</string>
<string name="taste">口味</string> <string name="taste">口味</string>
<string name="msg">訊息</string> <string name="msg">訊息</string>
<string name="multiple_selection">多選</string> <string name="all_selection">多選</string>
<string name="anti_selection">反選</string>
<string name="remove">刪除</string> <string name="remove">刪除</string>
<string name="end">完成</string> <string name="end">完成</string>
<string name="Vertical">豎向</string> <string name="Vertical">豎向</string>
......
...@@ -81,6 +81,7 @@ dependencies { ...@@ -81,6 +81,7 @@ dependencies {
addComponent 'table-mode' addComponent 'table-mode'
addComponent 'print-module' addComponent 'print-module'
addComponent 'other_order_mode' addComponent 'other_order_mode'
addComponent 'manager'
annotationProcessor rootProject.ext.dependencies["dagger2-compiler"] annotationProcessor rootProject.ext.dependencies["dagger2-compiler"]
implementation rootProject.ext.dependencies["autosize"] implementation rootProject.ext.dependencies["autosize"]
......
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