Commit 1a28da3b by 宁斌

餐檯下單優化

parent d6728069
......@@ -17,7 +17,8 @@ public class UIStyleExtendedConfiguration {
* 食品組、食品、細項、折扣行列寬高
*/
private ExpandInfoSetting foodGroupRow = ExpandInfoSetting.builder()
.valueInt(2)
// .valueInt(2)
.valueChar("foodGroupRow類型")
.remark("食品組行數")
.build();
private ExpandInfoSetting foodGroupColumn = ExpandInfoSetting.builder()
......
......@@ -16,8 +16,8 @@ import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.base.utils.time.TimePickerUtils;
......@@ -197,7 +197,7 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
List<BillBean> billBeans = new ArrayList<>();
for (BillOrderMoney billOrderMoney : orderMoneyList) {
BillBean billBean = new BillBean();
billBean.setName(billOrderMoney.getTitle());
billBean.setName(billOrderMoney.getName());
billBean.setAmount(billOrderMoney.getMoney());
}
billBeans.add(new BillBean("合計:", MyOrderManage.getInstance().getWholeAmount(), 0));
......
package com.gingersoft.gsa.cloud.order.base;
import android.content.Context;
import androidx.test.platform.app.InstrumentationRegistry;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.*;
/**
* Instrumented test, which will execute on an Android device.
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
assertEquals("com.gingersoft.gsa.cloud.order.base.test", appContext.getPackageName());
}
}
......@@ -2,8 +2,8 @@ package com.gingersoft.gsa.cloud.base.order;
import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.IComponent;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.base.order.order.TakeawayOrder;
public class ComponentBaseOrder implements IComponent {
......@@ -28,7 +28,7 @@ public class ComponentBaseOrder implements IComponent {
String actionName = cc.getActionName();
switch (actionName) {
case "clearDoshokuOrder":
clearDoshokuOrder(cc);
clearOrder(cc);
break;
default:
//这个逻辑分支上没有调用CC.sendCCResult(...),是一种错误的示例
......@@ -39,11 +39,11 @@ public class ComponentBaseOrder implements IComponent {
return false;
}
private void clearDoshokuOrder(CC cc) {
//清空賬單數據
MyOrderManage.getInstance().clear();
//清空開檯數據
OpenTableManage.getDefault().clear();
private void clearOrder(CC cc) {
//初始化堂食賬單類
DoshokuOrder.getInstance().initialization();
//初始化外賣賬單類
TakeawayOrder.getInstance().initialization();
}
}
......@@ -6,7 +6,7 @@ import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
* @author : bin
* @create date: 2020-10-15
* @update date: 2020-10-15
* @description:會員接口 需要使用到會員須實現這個接口
* @description:會員接口
*
*/
public interface Member {
......
package com.gingersoft.gsa.cloud.base.order;
/**
* @author : bin
* @create date: 2020-10-15
* @update date: 2020-10-15
* @description:餐牌下單 食品,折扣都需要實現這個接口
* */
public interface OrderItem {
}
......@@ -9,7 +9,7 @@ import androidx.annotation.Nullable;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.gingersoft.gsa.cloud.base.R;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import java.util.List;
......
......@@ -5,7 +5,7 @@ import android.widget.TextView;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.gingersoft.gsa.cloud.base.R;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import java.math.BigDecimal;
import java.util.List;
......
package com.gingersoft.gsa.cloud.base.order.bean;
import android.graphics.Color;
import com.gingersoft.gsa.cloud.database.bean.Discount;
import lombok.Data;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-01-19
* 修订历史:2020-01-19
* 描述:
*/
@Data
public class BillOrderMoney {
private String title;
private double money;
private int textSize;
private int textColor = Color.parseColor("#000000");
private int bgColor;
/**是否已送單#0=未送單;1=已送單*/
private int status = 0;
public static final byte BILL_ITEM_NO_ORDER_STATUS = 0;
public static final byte BILL_ITEM_ORDER_SENT_STATUS = 1;
private byte type = ORDER_DISCOUNT_TYPE;
/**整單折扣*/
public static final byte ORDER_DISCOUNT_TYPE = 0;
/**會員等級折扣*/
public static final byte MEMBER_DISCOUNT_TYPE = 1;
/**會員優惠券折扣*/
public static final byte COUPON_DISCOUNT_TYPE = 2;
/**服務費*/
public static final byte SERVERCHARGE_TYPE = 3;
/**賬單小數*/
public static final byte ROUNDING_TYPE = 4;
/**折扣實體*/
private Discount discount;
public BillOrderMoney() {
}
public BillOrderMoney(String title, double money, int textSize, int textColor, int bgColor) {
this.title = title;
this.money = money;
this.textSize = textSize;
this.textColor = textColor;
this.bgColor = bgColor;
}
public BillOrderMoney(String title, double money) {
this.title = title;
this.money = money;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public double getMoney() {
return money;
}
public void setMoney(double money) {
this.money = money;
}
public int getTextSize() {
return textSize;
}
public void setTextSize(int textSize) {
this.textSize = textSize;
}
public int getTextColor() {
return textColor;
}
public void setTextColor(int textColor) {
this.textColor = textColor;
}
public int getBgColor() {
return bgColor;
}
public void setBgColor(int bgColor) {
this.bgColor = bgColor;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public static byte getBillItemNoOrderStatus() {
return BILL_ITEM_NO_ORDER_STATUS;
}
public static byte getBillItemOrderSentStatus() {
return BILL_ITEM_ORDER_SENT_STATUS;
}
public byte getType() {
return type;
}
public void setType(byte type) {
this.type = type;
}
public static byte getOrderDiscountType() {
return ORDER_DISCOUNT_TYPE;
}
public static byte getMemberDiscountType() {
return MEMBER_DISCOUNT_TYPE;
}
public static byte getCouponDiscountType() {
return COUPON_DISCOUNT_TYPE;
}
public static byte getServerchargeType() {
return SERVERCHARGE_TYPE;
}
public static byte getRoundingType() {
return ROUNDING_TYPE;
}
public Discount getDiscount() {
return discount;
}
public void setDiscount(Discount discount) {
this.discount = discount;
}
}
......@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.base.order.bean.discount;
import android.text.TextUtils;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.base.utils.other.TextUtil;
import lombok.Data;
......@@ -68,13 +69,13 @@ public class CouponDiscountBean {
public String getName(){
if(!TextUtils.isEmpty(couponTypeName1)) {
return couponTypeName1;
return this.couponTypeName1;
}
if(!TextUtils.isEmpty(couponTypeName2)) {
return couponTypeName2;
return this.couponTypeName2;
}
if(!TextUtils.isEmpty(couponTypeName3)) {
return couponTypeName3;
return this.couponTypeName3;
}
return "";
}
......
package com.gingersoft.gsa.cloud.base.order.bean.discount;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.database.bean.Discount;
......@@ -99,7 +99,7 @@ public class OrderDiscount {
this.scAble = scAble;
}
public static Request orderDiscountTransRequest(BillOrderMoney discount) {
public static Request orderDiscountTransRequest(DiscountItem discount) {
Request request = new Request();
request.setType(ORDER_DISCOUNT);
if(discount.getDiscount() != null) {
......@@ -110,8 +110,7 @@ public class OrderDiscount {
return request;
}
public static Request memberDiscountTransRequest(BillOrderMoney discount) {
public static Request memberDiscountTransRequest(DiscountItem discount) {
Request request = new Request();
request.setType(MEMBER_DISCOUNT);
if(discount.getDiscount() != null) {
......@@ -123,7 +122,7 @@ public class OrderDiscount {
return request;
}
public static Request couponDiscountTransRequest(BillOrderMoney discount) {
public static Request couponDiscountTransRequest(DiscountItem discount) {
Request request = new Request();
request.setType(COUPON_DISCOUNT);
if(discount.getDiscount() != null) {
......
......@@ -5,10 +5,10 @@ import android.text.TextUtils;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.bean.DeleteOrderRequest;
import com.gingersoft.gsa.cloud.base.order.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.constans.FoodSummaryConstans;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
import com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog;
......@@ -293,27 +293,6 @@ public class MyOrderManage {
return orderFoodList != null ? orderFoodList.size() : 0;
}
public void close() {
if (orderFoodList != null) {
orderFoodList.clear();
}
// if (comboOrders != null) {
// comboOrders.clear();
// }
// if (MixOldOrders != null) {
// MixOldOrders.clear();
// }
// if (mixComboGroup_Discounts != null) {
// mixComboGroup_Discounts.clear();
// }
//
// if (MixComboGroups != null) {
// MixComboGroups.clear();
// }
// allowAddAutoDiscount = false;
// MixComboGroups = null;
}
public void clear() {
setMemberInfo(null);
if (orderFoodList != null) {
......
package com.gingersoft.gsa.cloud.base.order.billItem;
import android.graphics.Color;
import lombok.Data;
/**
......@@ -13,6 +15,14 @@ public abstract class BillItem {
protected String name;
protected double money = 0.0;
protected int textSize;
protected int textColor = Color.parseColor("#000000");
protected int bgColor;
/**是否已送單#0=未送單;1=已送單*/
protected int status = 0;
public static final byte BILL_ITEM_NO_ORDER_STATUS = 0;
public static final byte BILL_ITEM_ORDER_SENT_STATUS = 1;
public byte type = ORDER_DISCOUNT_TYPE;
/**整單折扣*/
......
package com.gingersoft.gsa.cloud.base.order.billItem;
import com.gingersoft.gsa.cloud.base.order.billItem.BillItem;
import com.gingersoft.gsa.cloud.database.bean.Discount;
import lombok.Data;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-01-19
* 修订历史:2020-01-19
* 描述:
*/
@Data
public class BillOrderMoney extends BillItem {
/**折扣實體*/
private Discount discount;
public BillOrderMoney() {
}
public Discount getDiscount() {
return discount;
}
public void setDiscount(Discount discount) {
this.discount = discount;
}
}
package com.gingersoft.gsa.cloud.base.order.billItem;
import com.gingersoft.gsa.cloud.database.bean.Discount;
import lombok.Getter;
import lombok.Setter;
......@@ -13,6 +15,7 @@ import lombok.Setter;
@Setter
public class DiscountItem extends BillItem {
private Discount discount;
public DiscountItem() {
}
......@@ -21,7 +24,9 @@ public class DiscountItem extends BillItem {
super(name, money);
}
public void updateBillItem() {
public void updateBillItem(int type) {
}
}
......@@ -10,21 +10,20 @@ import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
*/
public class RoundingItem extends BillItem {
public RoundingItem(String name, double totalAmout) {
public RoundingItem(String name) {
super(BillItem.ROUNDING_TYPE, name);
updateBillItem(totalAmout);
}
public void updateBillItem(double totalAmout) {
double m2 = MoneyUtil.getOrderRounding(totalAmout);
public double updateBillItem(double totalAmount) {
double m2 = MoneyUtil.getOrderRounding(totalAmount);
double roundingMoney = 0.0;
if (m2 != 0) {
roundingMoney = MoneyUtil.sub(m2, MoneyUtil.get_ItemDecimals_money(totalAmout));
roundingMoney = MoneyUtil.sub(m2, MoneyUtil.get_ItemDecimals_money(totalAmount));
}
if (roundingMoney != 0.0) {
setMoney(roundingMoney);
setMoney(MoneyUtil.get_ItemDecimals_money(roundingMoney));
}
return MoneyUtil.get_ItemDecimals_money(MoneyUtil.sum(totalAmount,roundingMoney));
}
}
......@@ -11,16 +11,16 @@ import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
*/
public class ServiceChargeItem extends BillItem {
public ServiceChargeItem(String name, double totalAmout, int serviceCharge) {
super(BillItem.SERVERCHARGE_TYPE, name);
updateBillItem(totalAmout,serviceCharge);
public ServiceChargeItem(String name) {
super(name);
}
public void updateBillItem(double totalAmout, int serviceCharge) {
double serviceAmount = MoneyUtil.divide(MoneyUtil.multiply(totalAmout, serviceCharge).doubleValue(), 100, GsaCloudApplication.functionConfiguration.getItemDecimals());
public double updateBillItem(double wholeAmount, int serviceCharge) {
int itemDecimals = GsaCloudApplication.functionConfiguration.getItemDecimalsVaule();
double serviceAmount = MoneyUtil.divide(MoneyUtil.multiply(wholeAmount, serviceCharge).doubleValue(), 100, itemDecimals);
if (serviceAmount > 0) {
setMoney(serviceAmount);
setMoney(MoneyUtil.get_ItemDecimals_money(serviceAmount));
}
return MoneyUtil.get_ItemDecimals_money(MoneyUtil.sum(wholeAmount, serviceAmount));
}
}
......@@ -7,20 +7,19 @@ import lombok.Data;
* @作者: bin
* @創建時間: 2020-10-14
* @更新時間: 2020-10-14
* @描述:商品接口 所有商品都需要實現這個類
* @描述:商品接口 所有商品都需要實現這接口
*/
@Data
public abstract class Commodity {
public interface Commodity {
protected Long id;
protected String name;
protected String name2;
protected String name3;
protected double price;
protected int number;
/**
* 类型#1:优惠卷;2:商品;3:菜品;4:细项;5:折扣;
*/
protected byte type;
// protected Long id;
// protected String name;
// protected String name2;
// protected String name3;
// protected double price;
// protected int number;
// /**
// * 类型#1:优惠卷;2:商品;3:菜品;4:细项;5:折扣;
// */
// protected byte type;
}
package com.gingersoft.gsa.cloud.base.order.commodity;
import com.gingersoft.gsa.cloud.base.order.OrderItem;
import com.gingersoft.gsa.cloud.base.order.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
......@@ -25,8 +24,9 @@ import lombok.ToString;
@Getter
@Setter
@ToString
public class MealCommodity extends Commodity implements OrderItem {
public class MealCommodity implements Commodity {
private static final long serialVersionUID = -958791295551999853L;
/**
* 是否选择
* 0 未选中
......@@ -105,6 +105,10 @@ public class MealCommodity extends Commodity implements OrderItem {
*/
private int itemType;
/**
* ID
*/
private long id;
/**
* 父级ID
*/
private long parentId;
......@@ -113,14 +117,14 @@ public class MealCommodity extends Commodity implements OrderItem {
*/
private long orderId;
/**
* 商品id
*/
private long productId;
/**
* 商品名称
*/
private String productName;
/**
* 商品id
*/
private long productId;
/**
* 父级商品ID
*/
private long parentProductId;
......@@ -129,6 +133,10 @@ public class MealCommodity extends Commodity implements OrderItem {
*/
private long topId;
/**
* 總價格(已經x數量)
*/
private double price = 0;
/**
* 單價
*/
private double unit_price = 0;
......@@ -148,10 +156,10 @@ public class MealCommodity extends Commodity implements OrderItem {
* 已經使用優惠卷卷號列表逗號分割
*/
private String userCouponNo;
// /**
// * 类型#1:优惠卷;2:商品;3:菜品;4:细项;5:折扣;
// */
// private byte type;
/**
* 类型#1:优惠卷;2:商品;3:菜品;4:细项;5:折扣;
*/
private byte type;
/**
*
*/
......
package com.gingersoft.gsa.cloud.base.order.commodity;
import com.gingersoft.gsa.cloud.base.order.OrderItem;
/**
* @author : bin
* @create date: 2020-10-15
* @update date: 2020-10-15
* @description:外賣食品
*/
public class MealTakeaway extends MealCommodity implements OrderItem {
public class MealTakeaway extends OrderDetail {
}
package com.gingersoft.gsa.cloud.base.order.bean;
package com.gingersoft.gsa.cloud.base.order.commodity;
import com.gingersoft.gsa.cloud.base.order.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
......@@ -25,7 +26,7 @@ import lombok.Data;
* 描述:訂單實體類
*/
@Data
public class OrderDetail implements Serializable {
public class OrderDetail implements Commodity, Serializable {
private static final long serialVersionUID = -958791295551999853L;
/**
* 是否选择
......@@ -427,7 +428,7 @@ public class OrderDetail implements Serializable {
}
public boolean isModify() {
if (!isNew && modifyBeforeNumber != 0 && number != modifyBeforeNumber) {
if (!isNew && modifyBeforeNumber != 0 && number != modifyBeforeNumber) {
isModify = true;
} else {
isModify = false;
......
......@@ -28,12 +28,10 @@ public class MemberDiscount extends MultyDiscount {
@Override
public double calculate(double money) {
if (memberDiscount != null) {
discountMoney = calculationMemberDiscount(memberDiscount.getMemberDiscount(), money);
money = MoneyUtil.sum(money,discountMoney);
}
return super.calculate(money);
}
......
......@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.base.order.order;
import com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart;
import com.gingersoft.gsa.cloud.constans.FoodSummaryConstans;
import lombok.Getter;
import lombok.Setter;
......@@ -16,11 +17,19 @@ import lombok.Setter;
@Setter
public abstract class BaseOrder {
public BaseOrder() {
shoppingCart = ShoppingCart.getInstance();
}
/**
* 訂單類型
*
* @see FoodSummaryConstans#MEAL_MENU
* @see FoodSummaryConstans#TAKEAWAY_TYPE
*/
public volatile static int orderType = FoodSummaryConstans.RESTAURANT_MODE;
/**
* 訂單ID
*/
protected long id = -1;
......@@ -34,4 +43,10 @@ public abstract class BaseOrder {
protected ShoppingCart shoppingCart;
protected void initialization() {
orderType = FoodSummaryConstans.RESTAURANT_MODE;
id = -1;
orderNo = null;
shoppingCart.initialization();
}
}
......@@ -4,8 +4,10 @@ import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.order.Member;
import com.gingersoft.gsa.cloud.base.order.bean.DeleteOrderRequest;
import com.gingersoft.gsa.cloud.base.order.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import java.util.ArrayList;
import java.util.List;
import lombok.Getter;
......@@ -63,4 +65,48 @@ public class DoshokuOrder extends BaseOrder implements Member {
* true#修改訂單
*/
private boolean modifyOrder = false;
/**
* 添加需要刪除的食品
* @param request
*/
public void addDeleteMealOrder(DeleteOrderRequest request){
getDeleteMealOrders().add(request);
}
/**
* 取消需要刪除的食品
* @param request
*/
public void delDeleteMealOrder(DeleteOrderRequest request){
getDeleteMealOrders().remove(request);
}
public List<DeleteOrderRequest> getDeleteMealOrders() {
if (deleteMealOrders == null) {
deleteMealOrders = new ArrayList<>();
}
return deleteMealOrders;
}
@Override
public void initialization() {
if (deleteMealOrders != null) {
deleteMealOrders.clear();
deleteMealOrders = null;
}
if (orderPlaced != null) {
orderPlaced = null;
}
if (openTableInfo != null) {
openTableInfo = null;
}
if (memberInfo != null) {
memberInfo = null;
}
memberUpdateStatus = null;
modifyOrder = false;
super.initialization();
}
}
package com.gingersoft.gsa.cloud.base.order.order;
import com.gingersoft.gsa.cloud.constans.FoodSummaryConstans;
/**
* @author : bin
* @create date: 2020-10-23
* @update date: 2020-10-23
* @description:訂單工廠類
*/
public class OrderFactory {
public static BaseOrder createOrder(int orderType) {
if (orderType == FoodSummaryConstans.RESTAURANT_MODE) {
return DoshokuOrder.getInstance();
} else if (orderType == FoodSummaryConstans.TAKEAWAY_TYPE) {
return TakeawayOrder.getInstance();
} else {
return DoshokuOrder.getInstance();
}
}
}
......@@ -25,4 +25,9 @@ public class TakeawayOrder extends BaseOrder {
super();
}
@Override
public void initialization() {
super.initialization();
}
}
......@@ -8,8 +8,8 @@ import android.widget.LinearLayout;
import com.gingersoft.gsa.cloud.base.common.bean.BillingBean;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
......@@ -124,7 +124,7 @@ public class PrintBill extends PrinterRoot {
//添加其他金額項
if (MyOrderManage.getInstance().getOrderMoneyList().size() > 0) {
for (BillOrderMoney item : MyOrderManage.getInstance().getOrderMoneyList()) {
billingBeans.add(new BillingBean(item.getTitle(), item.getMoney()));
billingBeans.add(new BillingBean(item.getName(), item.getMoney()));
}
}
layout.addView(getDiningBillInfo(mContext, billingBeans));
......
......@@ -8,7 +8,7 @@ import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.order.adapter.print.KitChenPrintFoodAdapter;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.utils.other.TextUtil;
......
......@@ -8,7 +8,7 @@ import android.widget.LinearLayout;
import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.base.utils.RestaurantExpandInfoUtils;
......
......@@ -11,7 +11,7 @@ import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.base.utils.RestaurantExpandInfoUtils;
......
......@@ -5,7 +5,7 @@ import android.graphics.Bitmap;
import android.view.Gravity;
import android.widget.LinearLayout;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
......
......@@ -6,8 +6,8 @@ import android.view.Gravity;
import android.widget.LinearLayout;
import com.gingersoft.gsa.cloud.base.common.bean.BillingBean;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
......@@ -94,7 +94,7 @@ public class PrintSlip extends PrinterRoot {
//添加其他金額項
if (MyOrderManage.getInstance().getOrderMoneyList().size() > 0) {
for (BillOrderMoney item : MyOrderManage.getInstance().getOrderMoneyList()) {
billingBeans.add(new BillingBean(item.getTitle(), item.getMoney()));
billingBeans.add(new BillingBean(item.getName(), item.getMoney()));
}
}
layout.addView(getDiningBillInfo(mContext, billingBeans));
......
......@@ -7,7 +7,7 @@ import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
......
......@@ -30,8 +30,8 @@ import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.BillingBean;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import com.gingersoft.gsa.cloud.base.order.adapter.print.FoodAdapter;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
......@@ -868,7 +868,7 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
//添加其他金額項
if (MyOrderManage.getInstance().getOrderMoneyList().size() > 0) {
for (BillOrderMoney item : MyOrderManage.getInstance().getOrderMoneyList()) {
amountStr.append(getPLable(item.getTitle() + " " + item.getMoney(), HTML_PRINT_GRAVITY_RIGHT));
amountStr.append(getPLable(item.getName() + " " + item.getMoney(), HTML_PRINT_GRAVITY_RIGHT));
}
}
amountStr.append(getLine(21, HTML_PRINT_GRAVITY_RIGHT));
......
......@@ -10,7 +10,7 @@ import androidx.appcompat.app.AppCompatActivity;
import com.epson.epos2.printer.Printer;
import com.epson.epos2.printer.PrinterStatusInfo;
import com.epson.epos2.printer.ReceiveListener;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.utils.okhttpUtils.OkHttp3Utils;
import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils;
......
......@@ -101,7 +101,7 @@ public class TableBean {
private String createBy;
private String qrCodeImg;
private int posTableId;
private long serviceCharge;
private int serviceCharge;
private long memberId;
/**
* 未開檯 0
......@@ -265,11 +265,11 @@ public class TableBean {
this.posTableId = posTableId;
}
public long getServiceCharge() {
public int getServiceCharge() {
return serviceCharge;
}
public void setServiceCharge(long serviceCharge) {
public void setServiceCharge(int serviceCharge) {
this.serviceCharge = serviceCharge;
}
......
......@@ -44,7 +44,7 @@ public class TableExtBean {
private String tableName;
private int seatCount;
private long serviceCharge;
private int serviceCharge;
private long updateTime;
private long createTime;
......@@ -129,11 +129,11 @@ public class TableExtBean {
this.seatCount = seatCount;
}
public long getServiceCharge() {
public int getServiceCharge() {
return serviceCharge;
}
public void setServiceCharge(long serviceCharge) {
public void setServiceCharge(int serviceCharge) {
this.serviceCharge = serviceCharge;
}
......
......@@ -4,7 +4,7 @@ import android.app.Application;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderContentContract;
......@@ -63,10 +63,11 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
}
private void saveCreateTime(long createTime) {
if (OpenTableManage.getDefault().getTableBean() == null) {
OpenTableManage.getDefault().setTableBean(new TableBean.DataBean());
DoshokuOrder doshokuOrder = DoshokuOrder.getInstance();
if (doshokuOrder == null) {
doshokuOrder.setOpenTableInfo(new TableBean.DataBean());
}
OpenTableManage.getDefault().getTableBean().setCreateTime(TimeUtils.getTime(createTime, TimeUtils.DEFAULT_DATE_FORMAT));
doshokuOrder.getOpenTableInfo().setCreateTime(TimeUtils.getTime(createTime, TimeUtils.DEFAULT_DATE_FORMAT));
}
@Override
......
......@@ -2,7 +2,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model.cart;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.order.bean.DeleteOrderRequest;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean;
import com.gingersoft.gsa.cloud.table.mvp.model.discount.CouponDiscount;
import com.gingersoft.gsa.cloud.table.mvp.model.discount.MemberDiscount;
......
package com.gingersoft.gsa.cloud.table.mvp.model.utils;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import java.util.ArrayList;
import java.util.List;
......
......@@ -5,7 +5,7 @@ import android.app.Application;
import android.content.Context;
import android.text.TextUtils;
import android.view.View;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
......
......@@ -7,10 +7,12 @@ import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.OrderPayRequest;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.JsonUtils;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils;
......@@ -285,8 +287,8 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
payRequest.setOrderId(MyOrderManage.getInstance().getOrderId());
payRequest.setOrderPayType(orderPayType);
payRequest.setLinePayType(orderPayView.getLinePayType());
payRequest.setTableId(OpenTableManage.getDefault().getTableBean().getId());
payRequest.setTableNumber(OpenTableManage.getDefault().getTableBean().getTableNumber());
payRequest.setTableId(mTableInfo.getId());
payRequest.setTableNumber(mTableInfo.getTableNumber());
if (memberInfo != null) {
payRequest.setMemberId(memberInfo.getId());
payRequest.setCouponId(getCouponDiscountId());
......@@ -372,7 +374,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
* @return
*/
private boolean hasDeleteFood() {
for (OrderDetail item : mOrderFoodList) {
for (OrderDetail item : mOrderMealList) {
if (item.isModify()) {
return true;
}
......@@ -384,7 +386,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
//更新服務費中劃線
mOrderMoneyAdapter.FreeServiceStauts(isUseFreeServicePayMethod);
//更新總金額
updateBillOrderItem();
updateBillInfo();
OrderPayView orderPayView = IActivity.getGsaPayView();
if (orderPayView != null) {
orderPayView.setTotalAmount(getTotalAmount());
......@@ -461,7 +463,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
*/
public double getPointsAdd() {
double pointsAdd = 0;
for (OrderDetail orderDetail : mOrderFoodList) {
for (OrderDetail orderDetail : mOrderMealList) {
if (orderDetail.getType() == OrderDetail.FOOD_TYPE) {
pointsAdd = MoneyUtil.sum(pointsAdd, MoneyUtil.multiply(orderDetail.getPointsAdd(), orderDetail.getNumber()));
}
......@@ -476,7 +478,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
*/
public double getPointsRedeem() {
double pointsRedeem = 0;
for (OrderDetail orderDetail : mOrderFoodList) {
for (OrderDetail orderDetail : mOrderMealList) {
if (orderDetail.getType() == OrderDetail.FOOD_TYPE) {
pointsRedeem = MoneyUtil.sum(pointsRedeem, MoneyUtil.multiply(orderDetail.getPointsRedeem(), orderDetail.getNumber()));
}
......
......@@ -5,15 +5,14 @@ import android.content.Context;
import android.content.Intent;
import android.text.TextUtils;
import android.util.Log;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
......@@ -135,8 +134,8 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
} else {
tableBean.setTableName(tableBean.getTableName());
}
OpenTableManage.getDefault().setTableBean(tableBean);
OpenTableManage.getDefault().setPeopleNumber(datasBean.getPerson());
tableBean.setPerson(datasBean.getPerson());
DoshokuOrder.getInstance().setOpenTableInfo(tableBean);
List<OrderBean.OrderDetailsBean> orderDetailsBeans = datasBean.getOrderDetails();
List<OrderDetail> orderDetailList = OrderAssemblyUtil.assemblyOrder(OrderDetail.orderTransOrderDetails(orderDetailsBeans));
......@@ -179,13 +178,13 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
MyOrderManage.getInstance().setWholeAmount(wholeAmount);
MyOrderManage.getInstance().setTotalAmount(orderDetailItem.getTotalAmount());
OpenTableManage.getDefault().setPeopleNumber(orderDetailItem.getPerson());
TableBean.DataBean dataBean = new TableBean.DataBean();
dataBean.setTableName(orderDetailItem.getTableName());
if(!TextUtils.isEmpty(orderDetailItem.getCreateTime())) {
dataBean.setCreateTime(TimeUtils.getStringByFormat(new Date(orderDetailItem.getCreateTime()), TimeUtils.DEFAULT_DATE_FORMAT_YMDHM));
}
OpenTableManage.getDefault().setTableBean(dataBean);
dataBean.setPerson(orderDetailItem.getPerson());
DoshokuOrder.getInstance().setOpenTableInfo(dataBean);
if (orderDetailItem.getMemberInfo() != null) {
MyOrderManage.getInstance().setMemberInfo(orderDetailItem.getMemberInfo());
......@@ -205,8 +204,8 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
Log.e("error", "是否成功打印:" + result.isSuccess());
MyOrderManage.getInstance().clear();
OpenTableManage.getDefault().setPeopleNumber(0);
OpenTableManage.getDefault().setTableBean(null);
DoshokuOrder.getInstance().setOpenTableInfo(null);
});
}
......@@ -229,7 +228,7 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
}
for (SectionTextItem3 item : printOrderMoneyList) {
BillOrderMoney billOrderMoney = new BillOrderMoney();
billOrderMoney.setTitle(item.getLeftText());
billOrderMoney.setName(item.getLeftText());
billOrderMoney.setMoney(Double.parseDouble(item.getRightText()));
printBillOrderMoneyList.add(billOrderMoney);
}
......
......@@ -3,7 +3,6 @@ package com.gingersoft.gsa.cloud.table.mvp.ui.activity;
import android.app.Activity;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Bundle;
import android.os.SystemClock;
......@@ -23,16 +22,14 @@ import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.ScrollView;
import android.widget.TextView;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.aspectj.XClickUtil;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.other.SPUtils;
......@@ -70,7 +67,6 @@ import com.jess.arms.di.component.AppComponent;
import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.alpha.QMUIAlphaTextView;
import com.qmuiteam.qmui.util.QMUIDisplayHelper;
import com.qmuiteam.qmui.util.QMUIDrawableHelper;
import org.simple.eventbus.EventBus;
......@@ -334,12 +330,11 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
TableBean.DataBean tableBean = new TableBean.DataBean();
tableBean.setPerson(1);
tableBean.setTableName("外賣");
OpenTableManage.getDefault().setPeopleNumber(1);
OpenTableManage.getDefault().setTableBean(tableBean);
DoshokuOrder.getInstance().getOpenTableInfo().setPerson(1);
DoshokuOrder.getInstance().setOpenTableInfo(tableBean);
btn_send_order.setText("送單信息");
} else {
if (OpenTableManage.getDefault().getPeopleNumber() == 0) {
if (DoshokuOrder.getInstance().getOpenTableInfo().getPerson() == 0) {
showChoosePeopleNumDialog(false);
}
}
......@@ -359,14 +354,14 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
}
private void initOrderDetail() {
TableBean.DataBean dataBean = OpenTableManage.getDefault().getTableBean();
TableBean.DataBean dataBean = DoshokuOrder.getInstance().getOpenTableInfo();
if (dataBean != null) {
if (TextUtils.isEmpty(dataBean.getTableNumber())) {
btn_table.setText(dataBean.getTableName());
} else {
btn_table.setText(dataBean.getTableName());
}
btn_numberman.setText("人數:" + OpenTableManage.getDefault().getPeopleNumber() + "");
btn_numberman.setText("人數:" + dataBean.getPerson() + "");
}
}
......@@ -379,6 +374,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
if (foodGroupList.size() <= foodGroupColumn) {
Rows = 1;
}
if (Rows == 0) {
Rows = 2;
}
mLayoutManager = new PagerGridLayoutManager(Rows, foodGroupColumn, PagerGridLayoutManager.HORIZONTAL);
// 水平分页布局管理器
......@@ -601,7 +599,8 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@Override
public void onInputPhone(UseMemberDialog dialog, String phone) {
mPresenter.queryMember(2, phone, GsaCloudApplication.getGsPosShopId(), OpenTableManage.getDefault().getTableBean().getId(), OpenTableManage.getDefault().getTableBean().getTableNumber());
TableBean.DataBean dataBean = DoshokuOrder.getInstance().getOpenTableInfo();
mPresenter.queryMember(2, phone, GsaCloudApplication.getGsPosShopId(), dataBean.getId(), dataBean.getTableNumber());
}
@Override
......@@ -615,7 +614,8 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
dialog.dismiss();
MyOrderManage.getInstance().setMemberInfo(mMemberInfo);
//添加会员折扣行
mPresenter.addMemberDiscount(mMemberInfo.getId(), mMemberInfo.getMemberDiscount(), mMemberInfo.getMemberName(), mMemberInfo.getLevelName1(), BillOrderMoney.BILL_ITEM_NO_ORDER_STATUS);
mPresenter.getShoppingCart().addMultyDiscount(mPresenter.getShoppingCart().createMemberDiscount(mMemberInfo));
// mPresenter.getShoppingCart().addMultyDiscount(mMemberInfo.getId(), mMemberInfo.getMemberDiscount(), mMemberInfo.getMemberName(), mMemberInfo.getLevelName1(), BillOrderMoney.BILL_ITEM_NO_ORDER_STATUS);
useMember();
if (MyOrderManage.getInstance().needUpdateMemberInfo()) {
......@@ -635,8 +635,8 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
btn_table.setBackgroundColor(Color.parseColor("#336699"));
MyOrderManage.getInstance().setMemberInfo(null);
//刪除會員折扣行
mPresenter.removeMemberDiscountItem();
mPresenter.updateBillOrderItem();
// mPresenter.removeMemberDiscountItem();
mPresenter.updateBillInfo();
if (MyOrderManage.getInstance().needUpdateMemberInfo()) {
return;
......@@ -824,9 +824,10 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
public void returnBeforeActivity(boolean initTable) {
SPUtils.put(this, MealConstant.EXIT_IS_PLU_MODE, isPluMode);
if (initTable && OpenTableManage.getDefault().getTableBean() != null && !MyOrderManage.getInstance().isModifyOrder()) {
TableBean.DataBean dataBean = DoshokuOrder.getInstance().getOpenTableInfo();
if (initTable && dataBean != null && !MyOrderManage.getInstance().isModifyOrder()) {
//通知更新餐台状态
EventBus.getDefault().post(new InitTableEvent(OpenTableManage.getDefault().getTableBean().getId(), OpenTableManage.getDefault().getTableBean().getTableNumber()), "initTable_status_event");
EventBus.getDefault().post(new InitTableEvent(dataBean.getId(), dataBean.getTableNumber()), "initTable_status_event");
}
killMyself();
}
......@@ -899,9 +900,10 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@Override
public void onComfirmClick(String number) {
recordOperat(true);
TableBean.DataBean dataBean = DoshokuOrder.getInstance().getOpenTableInfo();
int maxSeatCount = 0;
if (OpenTableManage.getDefault().getTableBean() != null) {
maxSeatCount = OpenTableManage.getDefault().getTableBean().getMaxSeatCount();
if (dataBean != null) {
maxSeatCount = dataBean.getMaxSeatCount();
}
if (maxSeatCount != 0 && maxSeatCount < Integer.parseInt(number)) {
showMessage("最大就餐人數不能超過" + maxSeatCount + "人!");
......@@ -1302,7 +1304,8 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
if (TextUtils.isEmpty(qrCodeResult)) {
return;
}
mPresenter.queryMember(1, qrCodeResult, GsaCloudApplication.getGsPosShopId(), OpenTableManage.getDefault().getTableBean().getId(), OpenTableManage.getDefault().getTableBean().getTableNumber());
TableBean.DataBean dataBean = DoshokuOrder.getInstance().getOpenTableInfo();
mPresenter.queryMember(1, qrCodeResult, GsaCloudApplication.getGsPosShopId(),dataBean.getId(),dataBean.getTableNumber());
}
}
......
......@@ -26,7 +26,7 @@ import androidx.viewpager.widget.ViewPager;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.encryption.DESUtil;
......@@ -208,19 +208,21 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
private void initTopInfo() {
TableBean.DataBean tableInfo = DoshokuOrder.getInstance().getOpenTableInfo();
Date dd = MyOrderManage.getInstance().getOpenTableTime();
String openTime = String.format("%tH:%tM", dd, dd);
String tableno = "";
if (!OpenTableManage.getDefault().isSplite() && OpenTableManage.getDefault().getTableBean() != null) {
tableno = OpenTableManage.getDefault().getTableBean().getTableName();
if (tableInfo.getSplitStatus() != 0 ) {
tableno = tableInfo.getTableName();
} else {
//TODO 暫未分檯功能
// tableno = GSAApplication.tableContract.getTableno().trim() + "-" + GSAApplication.tableContract.getTableno_split().trim();
}
btn_table.setText(tableno);
tv_time.setText("時間:" + openTime);
btn_people_num.setText(OpenTableManage.getDefault().getPeopleNumber() + "");
btn_people_num.setText(tableInfo.getPerson() + "");
tv_server_main.setText(GsaCloudApplication.getMemberName());
}
......@@ -475,9 +477,10 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
}
public void returnTableActivity(boolean initTable) {
if (initTable && OpenTableManage.getDefault().getTableBean() != null && !MyOrderManage.getInstance().isModifyOrder()) {
TableBean.DataBean tableInfo = DoshokuOrder.getInstance().getOpenTableInfo();
if (initTable && tableInfo != null && !MyOrderManage.getInstance().isModifyOrder()) {
//通知更新餐台状态
EventBus.getDefault().post(new InitTableEvent(OpenTableManage.getDefault().getTableBean().getId(), OpenTableManage.getDefault().getTableBean().getTableNumber()), "initTable_status_event");
EventBus.getDefault().post(new InitTableEvent(tableInfo.getId(),tableInfo.getTableNumber()), "initTable_status_event");
}
mAppManager.killActivity(MealStandActivity.class);
killMyself();
......@@ -540,10 +543,11 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
@Override
public void printSuccess() {
TableBean.DataBean tableInfo = DoshokuOrder.getInstance().getOpenTableInfo();
// 设置返回码和返回携带的数据
if (OpenTableManage.getDefault() != null) {
if (tableInfo != null) {
//通知更新餐台状态
EventBus.getDefault().post(new InitTableEvent(OpenTableManage.getDefault().getTableBean().getId(), OpenTableManage.getDefault().getTableBean().getTableNumber()), "initTable_status_event");
EventBus.getDefault().post(new InitTableEvent(tableInfo.getId(),tableInfo.getTableNumber()), "initTable_status_event");
}
setResult(Activity.RESULT_OK, null);
killMyself();
......@@ -551,9 +555,10 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
@Override
public void sendSuccess() {
if (OpenTableManage.getDefault() != null) {
TableBean.DataBean tableInfo = DoshokuOrder.getInstance().getOpenTableInfo();
if (tableInfo != null) {
//通知更新餐台状态
EventBus.getDefault().post(new InitTableEvent(OpenTableManage.getDefault().getTableBean().getId(), OpenTableManage.getDefault().getTableBean().getTableNumber()), "initTable_status_event");
EventBus.getDefault().post(new InitTableEvent(tableInfo.getId(),tableInfo.getTableNumber()), "initTable_status_event");
}
setResult(Activity.RESULT_OK, null);
killMyself();
......
......@@ -9,14 +9,14 @@ import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.TextView;
import com.billy.cc.core.component.CC;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.BigDecimalUtils;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
......@@ -198,20 +198,20 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
private void initTopInfo() {
TableBean.DataBean tableInfo = DoshokuOrder.getInstance().getOpenTableInfo();
Date dd = MyOrderManage.getInstance().getOpenTableTime();
String openTime = String.format("%tH:%tM", dd, dd);
String tableno = "";
if (!OpenTableManage.getDefault().isSplite()) {
if (OpenTableManage.getDefault().getTableBean() != null) {
tableno = OpenTableManage.getDefault().getTableBean().getTableName();
}
if (tableInfo.getSplitStatus() == 0) {
tableno =tableInfo.getTableName();
} else {
tableno = OpenTableManage.getDefault().getTableBean().getTableName().trim() + "-" + OpenTableManage.getDefault().getSplitNo().trim();
tableno = tableInfo.getTableName().trim() ;
}
btn_table.setText(tableno);
tv_time.setText("時間:" + openTime);
btn_people_num.setText(OpenTableManage.getDefault().getPeopleNumber() + "");
btn_people_num.setText(tableInfo.getPerson() + "");
tv_server_main.setText(GsaCloudApplication.getMemberName());
tv_action_name.setBackgroundColor(Color.parseColor("#C50000"));
......@@ -414,8 +414,9 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
}
});
}
if (btnCancelInfo.length() == 0)
if (btnCancelInfo.length() == 0) {
btnCancelInfo = " cancel ";
}
dialogBuilder.addAction(btnCancelInfo, new QMUIDialogAction.ActionListener() {
@Override
......@@ -449,8 +450,9 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
@Override
public void recordOperat(boolean isPressButtonSound) {
if (isPressButtonSound)
if (isPressButtonSound) {
VibratorUtils.pressButtonSound(this);
}
}
@Override
......@@ -462,9 +464,11 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
public void paySuccess() {
//修改結賬方式數據
setBillMoney();
if (!MyOrderManage.getInstance().isModifyOrder() && OpenTableManage.getDefault() != null && OpenTableManage.getDefault().getTableBean() != null) {
TableBean.DataBean tableInfo = DoshokuOrder.getInstance().getOpenTableInfo();
if (!MyOrderManage.getInstance().isModifyOrder()) {
//通知更新餐台状态
EventBus.getDefault().post(new InitTableEvent(OpenTableManage.getDefault().getTableBean().getId(), OpenTableManage.getDefault().getTableBean().getTableNumber()), "initTable_status_event");
EventBus.getDefault().post(new InitTableEvent(tableInfo.getId(),tableInfo.getTableNumber()), "initTable_status_event");
}
showMessage("支付成功");
......@@ -502,7 +506,8 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
//清空賬單數據
MyOrderManage.getInstance().clear();
//清空開檯數據
OpenTableManage.getDefault().clear();
DoshokuOrder.getInstance().initialization();
setResult(Activity.RESULT_OK, null);
killMyself();
});
......
......@@ -233,11 +233,13 @@ public class SoldoutCtrlActivity extends BaseFragmentActivity<SoldoutCtrlPresent
//总的页数向上取整
totalPage = (int) Math.ceil(foodGroupList.size() * 1.0 / GoldConstants.foodGriupPageSize);
int Rows = foodGroupRow;
if (foodGroupList.size() <= foodGroupColumn) {
Rows = 1;
}
if (Rows == 0) {
Rows = 2;
}
mLayoutManager = new PagerGridLayoutManager(Rows, foodGroupColumn, PagerGridLayoutManager.HORIZONTAL);
// 水平分页布局管理器
......
......@@ -11,8 +11,10 @@ import android.widget.LinearLayout;
import android.widget.SimpleAdapter;
import android.widget.TextView;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.base.order.order.BaseOrder;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.log.LogUtil;
import com.gingersoft.gsa.cloud.constans.FoodSummaryConstans;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.table.di.component.DaggerTableComponent;
......@@ -350,6 +352,7 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
@Override
public void startMealStandActivity() {
BaseOrder.orderType = FoodSummaryConstans.RESTAURANT_MODE;
startActivity(new Intent(this, MealStandActivity.class));
}
......
......@@ -14,15 +14,14 @@ import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage;
import com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder;
import com.gingersoft.gsa.cloud.base.table.bean.TableBean;
import com.gingersoft.gsa.cloud.base.utils.LanguageUtils;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
......@@ -32,6 +31,7 @@ import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.table.di.component.DaggerOrderDetailComponent;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem;
import com.gingersoft.gsa.cloud.table.mvp.model.cart.DoshokuCart;
import com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil;
import com.gingersoft.gsa.cloud.table.mvp.presenter.orderManager.OrderDetailPresenter;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity;
......@@ -465,8 +465,8 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
} else {
tableBean.setTableName(tableBean.getTableName());
}
OpenTableManage.getDefault().setTableBean(tableBean);
OpenTableManage.getDefault().setPeopleNumber(datasBean.getPerson());
tableBean.setPerson(datasBean.getPerson());
DoshokuOrder.getInstance().setOpenTableInfo(tableBean);
List<OrderBean.OrderDetailsBean> orderDetailsBeans = datasBean.getOrderDetails();
List<OrderDetail> orderDetailList = OrderAssemblyUtil.assemblyOrder(OrderDetail.orderTransOrderDetails(orderDetailsBeans));
......@@ -492,14 +492,15 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
MyOrderManage.getInstance().setOrderId(orderDetailItem.getId());
MyOrderManage.getInstance().setWholeAmount(getTotalMoney());
MyOrderManage.getInstance().setTotalAmount(orderDetailItem.getTotalAmount());
OpenTableManage.getDefault().setPeopleNumber(orderDetailItem.getPerson());
TableBean.DataBean dataBean = new TableBean.DataBean();
dataBean.setTableName(orderDetailItem.getTableName());
if(!TextUtils.isEmpty(orderDetailItem.getCreateTime())){
dataBean.setCreateTime(TimeUtils.getStringByFormat(new Date(orderDetailItem.getCreateTime()), TimeUtils.DEFAULT_DATE_FORMAT_YMDHM));
}
OpenTableManage.getDefault().setTableBean(dataBean);
dataBean.setPerson(orderDetailItem.getPerson());
DoshokuOrder.getInstance().setOpenTableInfo(dataBean);
List<PayMethod> payMethodList = getPayMethodList(orderDetailItem.getOrderPays());
if (payMethodList != null) {
......@@ -518,10 +519,9 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
.build()
.callAsyncCallbackOnMainThread((cc, result) -> {
Log.e("error", "是否成功打印:" + result.isSuccess());
MyOrderManage.getInstance().clear();
OpenTableManage.getDefault().setPeopleNumber(0);
OpenTableManage.getDefault().setTableBean(null);
DoshokuOrder.getInstance().setOpenTableInfo(null);
});
}
......@@ -531,7 +531,7 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
if (mOrderCenterMoneyList != null) {
for (SectionTextItem3 item : mOrderCenterMoneyList) {
BillOrderMoney billOrderMoney = new BillOrderMoney();
billOrderMoney.setTitle(item.getLeftText());
billOrderMoney.setName(item.getLeftText());
billOrderMoney.setMoney(Double.parseDouble(item.getRightText()));
billOrderMoneyList.add(billOrderMoney);
}
......
......@@ -7,7 +7,8 @@ import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.order.bean.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney;
import com.gingersoft.gsa.cloud.base.order.billItem.BillItem;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.table.R2;
import com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderContentActivity;
......@@ -26,7 +27,7 @@ import butterknife.BindView;
* 描述:
*/
public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
public class OrderMoneyAdapter extends DefaultAdapter<BillItem> {
private Activity mContext;
private String cashStr;
......@@ -37,7 +38,7 @@ public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
private boolean isUseFreeServicePayMethod = false;
private int BillTotalFontSize;
public OrderMoneyAdapter(Activity context, List<BillOrderMoney> infos, String cashStr) {
public OrderMoneyAdapter(Activity context, List<BillItem> infos, String cashStr) {
super(infos);
this.mContext = context;
this.cashStr = cashStr;
......@@ -60,7 +61,7 @@ public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
}
@Override
public BaseHolder<BillOrderMoney> getHolder(View v, int viewType) {
public BaseHolder<BillItem> getHolder(View v, int viewType) {
return new OrderMoneyItemHolder(v);
}
......@@ -69,7 +70,7 @@ public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
return R.layout.table_item_order_money;
}
class OrderMoneyItemHolder extends BaseHolder<BillOrderMoney> {
class OrderMoneyItemHolder extends BaseHolder<BillItem> {
@BindView(R2.id.ll_container)
LinearLayout ll_container;
......@@ -86,9 +87,9 @@ public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
}
@Override
public void setData(BillOrderMoney datasBean, int position) {
public void setData(BillItem datasBean, int position) {
tv_title.setText(datasBean.getTitle());
tv_title.setText(datasBean.getName());
if (datasBean.getMoney() < 0) {
tv_money.setText("-" + cashStr + Math.abs(datasBean.getMoney()));
......@@ -146,8 +147,8 @@ public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
public interface OnItemClickListener {
void onItemClick(BillOrderMoney datasBean, int position);
void onItemClick(BillItem datasBean, int position);
void onItemDeleteClick(BillOrderMoney datasBean, int position);
void onItemDeleteClick(BillItem datasBean, int position);
}
}
......@@ -9,7 +9,8 @@ import android.widget.RelativeLayout;
import android.widget.TextView;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.order.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.commodity.Commodity;
import com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail;
import com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage;
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil;
import com.gingersoft.gsa.cloud.constans.MealConstant;
......
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