Commit 9f67a4da by 宁斌

1、结账支付二种支付方式

parent 9d9f4fd6
package com.gingersoft.gsa.cloud.base.common.bean;
import lombok.Data;
/**
* Created by Wyh on 2020/1/15.
*/
@Data
public class BaseResult2 {
private String code;
private String errorMsg;
private Object data;
}
package com.gingersoft.gsa.cloud.base.common.bean;
import java.util.Date;
import lombok.Data;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-07-25
* 修订历史:2020-07-25
* 描述:
*/
@Data
public class MemberInfo {
/**
* ablediscount : 0
* birthdaybonusratio : 1
* birthdayperiod : 5
* brCouponNum : 0
* brCouponTypeId : 0
* brPoints : 5
* brandId : 0
* brandName : Gingersoft
* couponTypeId : 0
* createBy : H5
* createTime : {"date":28,"day":4,"hours":17,"minutes":53,"month":4,"seconds":37,"time":1590659617000,"timezoneOffset":-480,"year":120}
* createTimes : 0
* creditPoints : 0
* discount : 0
* expireAfterDayClearPoints : 0
* extendExpireAmount : 1
* extendExpirePeriod : 365
* extendValidDays : 0
* foodDesc1 : GS白金會員
* foodDesc2 : GS白金會員
* foodDesc3 : GS白金會員
* foodPrice : 500
* groupId : 7
* id : 421439
* isDisplay : 0
* isVisible : 1
* isdefault : 1
* language : 0
* level : 0
* levelDesc : 60日內消費滿3000, 可升級為白金會員享有更多折扣會員享有更多折扣
* levelName :
* levelName1 : GS基本用戶
* levelName2 : 基本用戶
* levelName3 : 基本用戶
* levelUpAmount : 1
* levelUpPeriod : 365
* negativePoints : 0
* newCouponNum : 0
* nextDownLevel : 35
* nextUpLevel : 0
* optTime : {"date":25,"day":6,"hours":9,"minutes":48,"month":6,"seconds":50,"time":1595641730781,"timezoneOffset":-480,"year":120}
* optTimes : 0
* pointRedeemCash : 20
* pointRule : 2
* pointUnit : 1
* pointenddate :
* pointoveryear : 0
* points : 0
* pointsVariable : 50
* restaurantId : 2
* scCharge : 0
* seq1 : 3
* sid :
* updateBy : H5
* updateTime : {"date":23,"day":4,"hours":17,"minutes":33,"month":6,"seconds":14,"time":1595496794000,"timezoneOffset":-480,"year":120}
* updateTimes : 0
* vaildDays : 0
* adverHeight : 0
* advertCol : 1
* birthday :
* birthdays :
* brandImgUrl : http://m.ricepon.com/1/20160816/20160816133220847.png
* brandMemberInfoIcon : http://m.ricepon.com/ricepon-asset/images/1546398451087.png
* consumeAmount : 0
* consumePoints : 3
* countryId : 0
* districtId : 0
* districtName :
* email :
* emailActive : 0
* headImg :
* imgPath :
* isPush : 0
* levelImgUrl : http://m.ricepon.com/ricepon-asset/201912/member/member-1575525134386.jpg
* levelTime :
* memberDiscount : 20
* memberExpireDate : {"date":25,"day":6,"hours":9,"minutes":48,"month":6,"seconds":50,"time":1595641730781,"timezoneOffset":-480,"year":120}
* memberId : 0
* memberName :
* memberNo : 2005149175337
* memberNote :
* memberPoint : 3
* memberTypeId : 32
* openId :
* password :
* phone : 18218743523
* postcardNo :
* postcardType : 1
* proId : 0
* proName :
* secretKey :
* serviceOpenId :
* sex : 0
* shopCanUse :
* shopId :
* shopNote :
* source : 0
* status : 0
* type : 0
* vaildTime : {"date":25,"day":6,"hours":9,"minutes":48,"month":6,"seconds":50,"time":1595641730781,"timezoneOffset":-480,"year":120}
* MemberPoint : 3
*/
private CreateTimeBean createTime;
private UpdateTimeBean updateTime;
private MemberExpireDateBean memberExpireDate;
private VaildTimeBean vaildTime;
private int MemberPoint;
private int birthdaybonusratio;
private int creditPoints;
private int birthdayperiod;
private int extendExpirePeriod;
private int brCouponTypeId;
private int levelUpPeriod;
private int groupId;
private int seq1;
private int nextDownLevel;
private int discount;
private int language;
private int points;
private int negativePoints;
private int couponTypeId;
private int id;
private int isdefault;
private int pointsVariable;
private String brandName;
private int level;
private int newCouponNum;
private int isVisible;
private int isDisplay;
private int vaildDays;
private int brandId;
private int pointRedeemCash;
private int ablediscount;
private String levelName3;
private String levelName2;
private String levelName1;
private int expireAfterDayClearPoints;
private int extendExpireAmount;
private String foodDesc3;
private int scCharge;
private int extendValidDays;
private int levelUpAmount;
private int optTimes;
private int updateTimes;
private String foodDesc1;
private String foodDesc2;
private String sid;
private String pointenddate;
private String updateBy;
private int brPoints;
private String optTime;
private int createTimes;
private int brCouponNum;
private String levelName;
private int pointRule;
private int foodPrice;
private String createBy;
private int pointoveryear;
private String levelDesc;
private int pointUnit;
private int nextUpLevel;
private int restaurantId = 2;
@Data
public static class CreateTimeBean {
/**
* date : 28
* day : 4
* hours : 17
* minutes : 53
* month : 4
* seconds : 37
* time : 1590659617000
* timezoneOffset : -480
* year : 120
*/
private int date;
private int day;
private int hours;
private int minutes;
private int month;
private int seconds;
private long time;
private int timezoneOffset;
private int year;
}
@Data
public static class OptTimeBean {
/**
* date : 25
* day : 6
* hours : 9
* minutes : 48
* month : 6
* seconds : 50
* time : 1595641730781
* timezoneOffset : -480
* year : 120
*/
private int date;
private int day;
private int hours;
private int minutes;
private int month;
private int seconds;
private long time;
private int timezoneOffset;
private int year;
}
@Data
public static class UpdateTimeBean {
/**
* date : 23
* day : 4
* hours : 17
* minutes : 33
* month : 6
* seconds : 14
* time : 1595496794000
* timezoneOffset : -480
* year : 120
*/
private int date;
private int day;
private int hours;
private int minutes;
private int month;
private int seconds;
private long time;
private int timezoneOffset;
private int year;
}
@Data
public static class MemberExpireDateBean {
/**
* date : 25
* day : 6
* hours : 9
* minutes : 48
* month : 6
* seconds : 50
* time : 1595641730781
* timezoneOffset : -480
* year : 120
*/
private int date;
private int day;
private int hours;
private int minutes;
private int month;
private int seconds;
private long time;
private int timezoneOffset;
private int year;
}
@Data
public static class VaildTimeBean {
/**
* date : 25
* day : 6
* hours : 9
* minutes : 48
* month : 6
* seconds : 50
* time : 1595641730781
* timezoneOffset : -480
* year : 120
*/
private int date;
private int day;
private int hours;
private int minutes;
private int month;
private int seconds;
private long time;
private int timezoneOffset;
private int year;
}
}
package com.gingersoft.gsa.cloud.base.common.bean;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
import org.greenrobot.greendao.annotation.Entity;
import org.greenrobot.greendao.annotation.Generated;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-07-25
* 修订历史:2020-07-25
* 描述:
*/
@Data
public class OrderPayRequest {
private long orderId;
private int linePayType;
private int orderPayType;
private List<orderPay> orderPays = new ArrayList<>();
@Data
public static class orderPay{
private int payType;
private double amount;
private double tipsPrice;
}
}
...@@ -28,11 +28,11 @@ public class DaoMaster extends AbstractDaoMaster { ...@@ -28,11 +28,11 @@ public class DaoMaster extends AbstractDaoMaster {
FoodComboDao.createTable(db, ifNotExists); FoodComboDao.createTable(db, ifNotExists);
FoodModifierDao.createTable(db, ifNotExists); FoodModifierDao.createTable(db, ifNotExists);
FunctionDao.createTable(db, ifNotExists); FunctionDao.createTable(db, ifNotExists);
LanguageDao.createTable(db, ifNotExists);
ModifierDao.createTable(db, ifNotExists); ModifierDao.createTable(db, ifNotExists);
PrintCurrencyBeanDao.createTable(db, ifNotExists);
PrinterDeviceBeanDao.createTable(db, ifNotExists); PrinterDeviceBeanDao.createTable(db, ifNotExists);
PrintModelBeanDao.createTable(db, ifNotExists); PrintModelBeanDao.createTable(db, ifNotExists);
LanguageDao.createTable(db, ifNotExists);
PrintCurrencyBeanDao.createTable(db, ifNotExists);
} }
/** Drops underlying database table using DAOs. */ /** Drops underlying database table using DAOs. */
...@@ -44,11 +44,11 @@ public class DaoMaster extends AbstractDaoMaster { ...@@ -44,11 +44,11 @@ public class DaoMaster extends AbstractDaoMaster {
FoodComboDao.dropTable(db, ifExists); FoodComboDao.dropTable(db, ifExists);
FoodModifierDao.dropTable(db, ifExists); FoodModifierDao.dropTable(db, ifExists);
FunctionDao.dropTable(db, ifExists); FunctionDao.dropTable(db, ifExists);
LanguageDao.dropTable(db, ifExists);
ModifierDao.dropTable(db, ifExists); ModifierDao.dropTable(db, ifExists);
PrintCurrencyBeanDao.dropTable(db, ifExists);
PrinterDeviceBeanDao.dropTable(db, ifExists); PrinterDeviceBeanDao.dropTable(db, ifExists);
PrintModelBeanDao.dropTable(db, ifExists); PrintModelBeanDao.dropTable(db, ifExists);
LanguageDao.dropTable(db, ifExists);
PrintCurrencyBeanDao.dropTable(db, ifExists);
} }
/** /**
...@@ -74,10 +74,10 @@ public class DaoMaster extends AbstractDaoMaster { ...@@ -74,10 +74,10 @@ public class DaoMaster extends AbstractDaoMaster {
registerDaoClass(FoodComboDao.class); registerDaoClass(FoodComboDao.class);
registerDaoClass(FoodModifierDao.class); registerDaoClass(FoodModifierDao.class);
registerDaoClass(FunctionDao.class); registerDaoClass(FunctionDao.class);
registerDaoClass(LanguageDao.class);
registerDaoClass(ModifierDao.class); registerDaoClass(ModifierDao.class);
registerDaoClass(PrinterDeviceBeanDao.class); registerDaoClass(PrinterDeviceBeanDao.class);
registerDaoClass(PrintModelBeanDao.class); registerDaoClass(PrintModelBeanDao.class);
registerDaoClass(LanguageDao.class);
registerDaoClass(PrintCurrencyBeanDao.class); registerDaoClass(PrintCurrencyBeanDao.class);
} }
......
...@@ -102,21 +102,27 @@ public class OrderPayView extends LinearLayout { ...@@ -102,21 +102,27 @@ public class OrderPayView extends LinearLayout {
// mBillMoneyAdapter.notifyDataSetChanged(); // mBillMoneyAdapter.notifyDataSetChanged();
// } // }
// } // }
mBillMoneyList.clear(); // mBillMoneyList.clear();
// if (!mBillMoneyList.contains(method)) { if (!mBillMoneyList.contains(method)) {
double differenceMoney = getDifferenceMoney(); if (mBillMoneyList.size() == 2) {
if (differenceMoney > -1 && method != null) { //替换掉第一个
//補足差額 mBillMoneyList.remove(0);
method.setPayMoney(differenceMoney); } else if (mBillMoneyList.size() == 1) {
//差一种支付方式 直接补足余额
double differenceMoney = getDifferenceMoney();
if (differenceMoney > -1) {
//補足差額
method.setPayMoney(differenceMoney);
}
}
//添加選中支付方式
mBillMoneyList.add(method);
mBillMoneyAdapter.setSelect_position(mBillMoneyList.size() - 1);
mBillMoneyAdapter.notifyDataSetChanged();
rv_bill_money.scrollToPosition(mBillMoneyList.size() - 1);
//設置差額狀態
setDifferenceText(context);
} }
//添加選中支付方式
mBillMoneyList.add(method);
mBillMoneyAdapter.setSelect_position(mBillMoneyList.size() - 1);
mBillMoneyAdapter.notifyDataSetChanged();
rv_bill_money.scrollToPosition(mBillMoneyList.size() - 1);
//設置差額狀態
setDifferenceText(context);
// }
}); });
mBillMoneyAdapter.setOnItemClickListener(new BillMoneyAdapter.OnItemClickListener() { mBillMoneyAdapter.setOnItemClickListener(new BillMoneyAdapter.OnItemClickListener() {
...@@ -270,9 +276,7 @@ public class OrderPayView extends LinearLayout { ...@@ -270,9 +276,7 @@ public class OrderPayView extends LinearLayout {
public double getBillMoney() { public double getBillMoney() {
double totalMoney = 0.0; double totalMoney = 0.0;
for (PayMethod method : mBillMoneyList) { for (PayMethod method : mBillMoneyList) {
if (method != null) { totalMoney = MoneyUtil.sum(totalMoney, method.getPayMoney());
totalMoney = MoneyUtil.sum(totalMoney, method.getPayMoney());
}
} }
return totalMoney; return totalMoney;
} }
......
...@@ -66,4 +66,7 @@ dependencies { ...@@ -66,4 +66,7 @@ dependencies {
// test // test
testImplementation rootProject.ext.dependencies["junit"] testImplementation rootProject.ext.dependencies["junit"]
implementation rootProject.ext.dependencies["BaseRecyclerViewAdapter"] implementation rootProject.ext.dependencies["BaseRecyclerViewAdapter"]
implementation 'org.projectlombok:lombok:1.18.8'
annotationProcessor 'org.projectlombok:lombok:1.18.8'
} }
package com.gingersoft.gsa.cloud.table.mvp.contract; package com.gingersoft.gsa.cloud.table.mvp.contract;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.OrderPayRequest;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.jess.arms.base.DefaultAdapter; import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.mvp.IModel; import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
import java.util.List;
import io.reactivex.Observable; import io.reactivex.Observable;
import okhttp3.RequestBody; import okhttp3.RequestBody;
...@@ -40,7 +43,7 @@ public interface BaseOrderContract { ...@@ -40,7 +43,7 @@ public interface BaseOrderContract {
Observable<BaseResult> addFood(RequestBody requestBody); Observable<BaseResult> addFood(RequestBody requestBody);
Observable<BaseResult> toOrderPay(RequestBody formBody); Observable<BaseResult> toOrderPay(RequestBody requestBody);
Observable<BaseResult> updateOrder(RequestBody formBody); Observable<BaseResult> updateOrder(RequestBody formBody);
......
...@@ -4,6 +4,8 @@ import android.app.Activity; ...@@ -4,6 +4,8 @@ import android.app.Activity;
import android.widget.BaseAdapter; import android.widget.BaseAdapter;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult2;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.database.bean.ComboItem; import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Discount; import com.gingersoft.gsa.cloud.database.bean.Discount;
import com.gingersoft.gsa.cloud.database.bean.Food; import com.gingersoft.gsa.cloud.database.bean.Food;
...@@ -46,6 +48,8 @@ public interface MealStandContract { ...@@ -46,6 +48,8 @@ public interface MealStandContract {
void initFineItemTabBarViewPage(); void initFineItemTabBarViewPage();
void updateMemberInfo(MemberInfo memberInfo);
void setCurrentFinePage(); void setCurrentFinePage();
void setPluMode(); void setPluMode();
...@@ -105,6 +109,8 @@ public interface MealStandContract { ...@@ -105,6 +109,8 @@ public interface MealStandContract {
Activity getActivity(); Activity getActivity();
void setModifierTop(int Margins); void setModifierTop(int Margins);
} }
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存 //Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
...@@ -121,7 +127,7 @@ public interface MealStandContract { ...@@ -121,7 +127,7 @@ public interface MealStandContract {
Observable<FoodReason> getRestaurantFoodReason(int brandId, int restaurantId, int type); Observable<FoodReason> getRestaurantFoodReason(int brandId, int restaurantId, int type);
Observable<BaseResult> queryMember(int type, String sign, String shopName); Observable<BaseResult2> queryMember(int type, String parm, String shopName);
List<Food> queryDB_AllFoodList(); List<Food> queryDB_AllFoodList();
......
...@@ -3,6 +3,8 @@ package com.gingersoft.gsa.cloud.table.mvp.model; ...@@ -3,6 +3,8 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult2;
import com.gingersoft.gsa.cloud.base.common.bean.OrderPayRequest;
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.database.bean.ComboItem; import com.gingersoft.gsa.cloud.database.bean.ComboItem;
import com.gingersoft.gsa.cloud.database.bean.Discount; import com.gingersoft.gsa.cloud.database.bean.Discount;
...@@ -27,6 +29,7 @@ import com.jess.arms.integration.IRepositoryManager; ...@@ -27,6 +29,7 @@ import com.jess.arms.integration.IRepositoryManager;
import com.jess.arms.mvp.BaseModel; import com.jess.arms.mvp.BaseModel;
import java.util.List; import java.util.List;
import java.util.Map;
import javax.inject.Inject; import javax.inject.Inject;
...@@ -177,15 +180,15 @@ public class MealStandModel extends BaseModel implements MealStandContract.Model ...@@ -177,15 +180,15 @@ public class MealStandModel extends BaseModel implements MealStandContract.Model
} }
@Override @Override
public Observable<BaseResult> queryMember(int type, String parm, String shopName) { public Observable<BaseResult2> queryMember(int type, String parm, String shopName) {
return mRepositoryManager.obtainRetrofitService(MemberService.class) return mRepositoryManager.obtainRetrofitService(MemberService.class)
.queryMember(type,parm,shopName); .queryMember(type,parm,shopName);
} }
@Override @Override
public Observable<BaseResult> toOrderPay(RequestBody formBody) { public Observable<BaseResult> toOrderPay(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(OrderPayService.class) return mRepositoryManager.obtainRetrofitService(OrderPayService.class)
.toOrderPay(formBody); .toOrderPay(requestBody);
} }
@Override @Override
......
...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model; ...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.OrderPayRequest;
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.database.bean.Discount; import com.gingersoft.gsa.cloud.database.bean.Discount;
...@@ -117,9 +118,9 @@ public class OrderContentModel extends BaseModel implements OrderContentContract ...@@ -117,9 +118,9 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
} }
@Override @Override
public Observable<BaseResult> toOrderPay(RequestBody formBody) { public Observable<BaseResult> toOrderPay(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(OrderPayService.class) return mRepositoryManager.obtainRetrofitService(OrderPayService.class)
.toOrderPay(formBody); .toOrderPay(requestBody);
} }
@Override @Override
......
...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model; ...@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
import android.app.Application; import android.app.Application;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.OrderPayRequest;
import com.gingersoft.gsa.cloud.table.mvp.contract.OrderPayContract; import com.gingersoft.gsa.cloud.table.mvp.contract.OrderPayContract;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import com.gingersoft.gsa.cloud.table.mvp.model.service.MealService; import com.gingersoft.gsa.cloud.table.mvp.model.service.MealService;
...@@ -12,6 +13,8 @@ import com.jess.arms.di.scope.ActivityScope; ...@@ -12,6 +13,8 @@ import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.integration.IRepositoryManager; import com.jess.arms.integration.IRepositoryManager;
import com.jess.arms.mvp.BaseModel; import com.jess.arms.mvp.BaseModel;
import java.util.List;
import javax.inject.Inject; import javax.inject.Inject;
import io.reactivex.Observable; import io.reactivex.Observable;
...@@ -96,9 +99,9 @@ public class OrderPayModel extends BaseModel implements OrderPayContract.Model { ...@@ -96,9 +99,9 @@ public class OrderPayModel extends BaseModel implements OrderPayContract.Model {
} }
@Override @Override
public Observable<BaseResult> toOrderPay(RequestBody formBody) { public Observable<BaseResult> toOrderPay(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(OrderPayService.class) return mRepositoryManager.obtainRetrofitService(OrderPayService.class)
.toOrderPay(formBody); .toOrderPay(requestBody);
} }
@Override @Override
......
...@@ -2,11 +2,11 @@ package com.gingersoft.gsa.cloud.table.mvp.model.bean; ...@@ -2,11 +2,11 @@ package com.gingersoft.gsa.cloud.table.mvp.model.bean;
import com.gingersoft.gsa.cloud.base.common.bean.OrderBean; import com.gingersoft.gsa.cloud.base.common.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
import static com.gingersoft.gsa.cloud.base.common.bean.OrderDetail.FOOD_TYPE; import static com.gingersoft.gsa.cloud.base.common.bean.OrderDetail.FOOD_TYPE;
import static com.gingersoft.gsa.cloud.base.common.bean.OrderDetail.getItemType; import static com.gingersoft.gsa.cloud.base.common.bean.OrderDetail.getItemType;
...@@ -17,6 +17,7 @@ import static com.gingersoft.gsa.cloud.base.common.bean.OrderDetail.getItemType; ...@@ -17,6 +17,7 @@ import static com.gingersoft.gsa.cloud.base.common.bean.OrderDetail.getItemType;
* 修订历史:2020-03-14 * 修订历史:2020-03-14
* 描述:已結賬訂單 * 描述:已結賬訂單
*/ */
@Data
public class OrderDetailItem implements Serializable { public class OrderDetailItem implements Serializable {
/** /**
...@@ -53,15 +54,15 @@ public class OrderDetailItem implements Serializable { ...@@ -53,15 +54,15 @@ public class OrderDetailItem implements Serializable {
private double totalAmount; private double totalAmount;
private int totalPoints; private int totalPoints;
/**支付金額*/ /**支付金額*/
private double amount; // private double amount;
/**賬單小數*/ /**賬單小數*/
private Double rounding; private Double rounding;
/**服務費*/ /**服務費*/
private Double serviceAmount; private Double serviceAmount;
private String payName; // private String payName;
private String orderPayType; // private String orderPayType;
private double tipsPrice; // private double tipsPrice;
private byte linePayType; // private byte linePayType;
/**折扣ID*/ /**折扣ID*/
private Long discountId; private Long discountId;
/**折扣金額*/ /**折扣金額*/
...@@ -78,6 +79,7 @@ public class OrderDetailItem implements Serializable { ...@@ -78,6 +79,7 @@ public class OrderDetailItem implements Serializable {
private String endTime; private String endTime;
private List<OrderBean.OrderDetailsBean> orderDetails; private List<OrderBean.OrderDetailsBean> orderDetails;
private List<orderPayBean> orderPays;
/** /**
* 訂單狀態:0:未支付;1:待確認(已支付, 待餐廳確認);2:制作中(餐厅确认);3:派送中;4:确认收货(完成);5:是否评论;6:取消; * 訂單狀態:0:未支付;1:待確認(已支付, 待餐廳確認);2:制作中(餐厅确认);3:派送中;4:确认收货(完成);5:是否评论;6:取消;
...@@ -90,190 +92,24 @@ public class OrderDetailItem implements Serializable { ...@@ -90,190 +92,24 @@ public class OrderDetailItem implements Serializable {
public static final byte STATUS_COMMENT = 5; public static final byte STATUS_COMMENT = 5;
public static final byte STATUS_CANCEL = 6; public static final byte STATUS_CANCEL = 6;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
public int getTableId() {
return tableId;
}
public void setTableId(int tableId) {
this.tableId = tableId;
}
public String getOrderNo() {
return orderNo;
}
public void setOrderNo(String orderNo) {
this.orderNo = orderNo;
}
public String getOrderPayType() {
return orderPayType;
}
public void setOrderPayType(String orderPayType) {
this.orderPayType = orderPayType;
}
public Double getRounding() {
return rounding;
}
public void setRounding(Double rounding) {
this.rounding = rounding;
}
public Double getServiceAmount() {
return serviceAmount;
}
public void setServiceAmount(Double serviceAmount) {
this.serviceAmount = serviceAmount;
}
public double getTipsPrice() {
return tipsPrice;
}
public void setTipsPrice(double tipsPrice) {
this.tipsPrice = tipsPrice;
}
public byte getLinePayType() {
return linePayType;
}
public void setLinePayType(byte linePayType) {
this.linePayType = linePayType;
}
public String getPayName() {
return payName;
}
public void setPayName(String payName) {
this.payName = payName;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public double getTotalAmount() {
return totalAmount;
}
public void setTotalAmount(double totalAmount) {
this.totalAmount = totalAmount;
}
public int getTotalPoints() {
return totalPoints;
}
public void setTotalPoints(int totalPoints) {
this.totalPoints = totalPoints;
}
public double getAmount() {
return amount;
}
public void setAmount(double amount) {
this.amount = amount;
}
public double getDiscountAmount() {
return discountAmount;
}
public void setDiscountAmount(double discountAmount) {
this.discountAmount = discountAmount;
}
public double getDiscountValue() {
return discountValue;
}
public void setDiscountValue(double discountValue) {
this.discountValue = discountValue;
}
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
public String getEndTime() {
return endTime;
}
public void setEndTime(String endTime) {
this.endTime = endTime;
}
public int getPerson() {
return person;
}
public void setPerson(int person) {
this.person = person;
}
public Long getDiscountId() { @Data
return discountId; public static class orderPayBean{
} private long id;
private long lineOrderId;
private int payType;
private Date payTime;
private double amount;
private double tipsPrice;
private int status;
private int linePayType;
private double paySales;
private String payName;
public void setDiscountId(Long discountId) {
this.discountId = discountId;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
} }
public List<OrderBean.OrderDetailsBean> getOrderDetails() {
return orderDetails;
}
public void setOrderDetails(List<OrderBean.OrderDetailsBean> orderDetails) {
this.orderDetails = orderDetails;
}
// public static List<OrderDetail> orderTransOrderDetails(List<OrderBean.OrderDetailsBean> orderDetails) { // public static List<OrderDetail> orderTransOrderDetails(List<OrderBean.OrderDetailsBean> orderDetails) {
// List<OrderDetail> orderDetailList = new ArrayList<>(); // List<OrderDetail> orderDetailList = new ArrayList<>();
// OrderDetail parentOrderDetail = null; // OrderDetail parentOrderDetail = null;
......
package com.gingersoft.gsa.cloud.table.mvp.model.service; package com.gingersoft.gsa.cloud.table.mvp.model.service;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult2;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose; import com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose;
import java.util.Map;
import io.reactivex.Observable; import io.reactivex.Observable;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager; import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
import retrofit2.http.Field; import retrofit2.http.Field;
...@@ -20,6 +23,6 @@ public interface MemberService { ...@@ -20,6 +23,6 @@ public interface MemberService {
@Headers({"Domain-Name: update_version"}) @Headers({"Domain-Name: update_version"})
@GET("member/getMemberInfo?" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) @GET("member/getMemberInfo?" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BaseResult> queryMember(@Query("type") int type,@Query("parm") String parm,@Query("gsposShopId") String shopName); Observable<BaseResult2> queryMember(@Query("type") int type, @Query("parm") String parm, @Query("gsposShopId") String shopName);
} }
package com.gingersoft.gsa.cloud.table.mvp.model.service; package com.gingersoft.gsa.cloud.table.mvp.model.service;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.OrderPayRequest;
import java.util.List;
import io.reactivex.Observable; import io.reactivex.Observable;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager; import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
import okhttp3.RequestBody; import okhttp3.RequestBody;
import retrofit2.http.Body; import retrofit2.http.Body;
import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded; import retrofit2.http.FormUrlEncoded;
import retrofit2.http.GET; import retrofit2.http.GET;
import retrofit2.http.POST; import retrofit2.http.POST;
......
...@@ -322,6 +322,14 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas ...@@ -322,6 +322,14 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
} }
/** /**
* 添加會員項
*/
private void addOrderMember(){
}
/**
* 添加餐檯服務費 * 添加餐檯服務費
*/ */
private void addTableServiceAmount() { private void addTableServiceAmount() {
......
...@@ -10,6 +10,8 @@ import com.billy.cc.core.component.CC; ...@@ -10,6 +10,8 @@ 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;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult2;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.base.common.bean.OrderBean; import com.gingersoft.gsa.cloud.base.common.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage; import com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage;
...@@ -163,7 +165,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -163,7 +165,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
@Override @Override
public void onRequestPermissionSuccess() { public void onRequestPermissionSuccess() {
Intent intent = new Intent(IActivity, CaptureActivity.class); Intent intent = new Intent(IActivity, CaptureActivity.class);
IActivity.startActivityForResult(intent,MealStandActivity. SCAN_REQUEST_CODE); IActivity.startActivityForResult(intent, MealStandActivity.SCAN_REQUEST_CODE);
} }
@Override @Override
...@@ -884,18 +886,28 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -884,18 +886,28 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
}); });
} }
public void queryMember(int type, String sign, String shopName) { public void queryMember(int type, String parm, String shopName) {
mModel.queryMember(type, sign,shopName) mModel.queryMember(type, parm, shopName)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.subscribeOn(AndroidSchedulers.mainThread()) .subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
.compose(RxLifecycleUtils.bindToLifecycle(mRootView)) .compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<BaseResult>(mErrorHandler) { .subscribe(new ErrorHandleSubscriber<BaseResult2>(mErrorHandler) {
@Override @Override
public void onNext(@NonNull BaseResult info) { public void onNext(@NonNull BaseResult2 info) {
if (info != null && info.getCode().equals("1")) {
if (info.getData() != null) {
MemberInfo memberInfo = JsonUtils.parseObject(info.getData(), MemberInfo.class);
if (memberInfo != null) {
mRootView.updateMemberInfo(memberInfo);
}
} else {
mRootView.showMessage("獲取會員信息失敗!");
}
} else {
mRootView.showMessage(info.getErrorMsg());
}
} }
}); });
} }
...@@ -1127,9 +1139,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1127,9 +1139,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
*/ */
public void updateFoodSoldoutCtrData() { public void updateFoodSoldoutCtrData() {
// if (mSoldoutCtrList.size() > 0) { // if (mSoldoutCtrList.size() > 0) {
clearFoodSoldoutCtrData(); clearFoodSoldoutCtrData();
addFoodSoldoutCtrItem(mSoldoutCtrList); addFoodSoldoutCtrItem(mSoldoutCtrList);
setFoodSoldoutCtrData(mSoldoutCtrList); setFoodSoldoutCtrData(mSoldoutCtrList);
// } // }
} }
...@@ -1138,8 +1150,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1138,8 +1150,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
*/ */
public void updateComboItemSoldoutCtrData() { public void updateComboItemSoldoutCtrData() {
// if (mSoldoutCtrList.size() > 0) { // if (mSoldoutCtrList.size() > 0) {
updateFoodSoldoutCtrData(); updateFoodSoldoutCtrData();
mComboAdapter.notifyDataSetChanged(); mComboAdapter.notifyDataSetChanged();
// } // }
} }
...@@ -1148,10 +1160,10 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1148,10 +1160,10 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
*/ */
public void updateModifierSoldoutCtrData() { public void updateModifierSoldoutCtrData() {
// if (mSoldoutCtrList.size() > 0) { // if (mSoldoutCtrList.size() > 0) {
clearModifierSoldoutCtrData(); clearModifierSoldoutCtrData();
addModifierCtrItem(mSoldoutCtrList); addModifierCtrItem(mSoldoutCtrList);
setModifierSoldoutCtrData(mModifierList, mSoldoutCtrList); setModifierSoldoutCtrData(mModifierList, mSoldoutCtrList);
mModifierAdapter.notifyDataSetChanged(); mModifierAdapter.notifyDataSetChanged();
// } // }
} }
...@@ -1754,11 +1766,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1754,11 +1766,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
if (item.getSelected() != 0) { if (item.getSelected() != 0) {
if (item.getItemType() == 1) { if (item.getItemType() == 1) {
int j = i; int j = i;
int insertPosition = getEndInsertPosition(newOrderList,item,i); int insertPosition = getEndInsertPosition(newOrderList, item, i);
if (insertPosition != -1) { if (insertPosition != -1) {
j = insertPosition + 1; if (insertPosition < newOrderList.size()) {
} else { j = insertPosition + 1;
j++; }else {
j = insertPosition;
}
} }
long id = item.isNew() ? item.getProductId() : item.getId(); long id = item.isNew() ? item.getProductId() : item.getId();
OrderDetail modifierTransOrderDetail = OrderDetail.modifierTransOrderDetail(modifierItem, id, item.getProductId(), 1); OrderDetail modifierTransOrderDetail = OrderDetail.modifierTransOrderDetail(modifierItem, id, item.getProductId(), 1);
...@@ -1775,9 +1789,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1775,9 +1789,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
return addPosition; return addPosition;
} }
private int getEndInsertPosition(List<OrderDetail> newOrderList,OrderDetail orderDetail,int currentI) { private int getEndInsertPosition(List<OrderDetail> newOrderList, OrderDetail orderDetail, int currentI) {
for (int i = currentI; i < mOrderFoodList.size(); i++) { for (int i = currentI; i < newOrderList.size(); i++) {
OrderDetail item = mOrderFoodList.get(i); OrderDetail item = newOrderList.get(i);
//往下找 //往下找
int nextIndex = i + 1; int nextIndex = i + 1;
// if (mOrderFoodList.size() == (nextIndex - 1) && mOrderFoodList.get(nextIndex).getItemType() == 3) { // if (mOrderFoodList.size() == (nextIndex - 1) && mOrderFoodList.get(nextIndex).getItemType() == 3) {
...@@ -1789,11 +1803,11 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod ...@@ -1789,11 +1803,11 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
// return i; // return i;
// } // }
boolean samePackage = item.getParentProductId() == orderDetail.getProductId() || item.getProductId() == orderDetail.getProductId(); boolean samePackage = item.getParentProductId() == orderDetail.getProductId() || item.getProductId() == orderDetail.getProductId();
if (mOrderFoodList.size() == nextIndex && samePackage) { if (newOrderList.size() == nextIndex && samePackage) {
//最後一個 //最後一個
return nextIndex; return nextIndex;
} }
if (mOrderFoodList.get(nextIndex).getItemType() != 3 && samePackage) { if (newOrderList.get(nextIndex).getItemType() != 3 && samePackage) {
//添加到主食品細項最後面 //添加到主食品細項最後面
return i; return i;
} }
......
...@@ -8,6 +8,7 @@ import com.chad.library.adapter.base.BaseQuickAdapter; ...@@ -8,6 +8,7 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication; import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.common.bean.BaseResult; import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail; import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import com.gingersoft.gsa.cloud.base.common.bean.OrderPayRequest;
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod; import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
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.utils.JsonUtils; import com.gingersoft.gsa.cloud.base.utils.JsonUtils;
...@@ -212,14 +213,18 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model ...@@ -212,14 +213,18 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
OrderPayView orderPayView = IActivity.getGsaPayView(); OrderPayView orderPayView = IActivity.getGsaPayView();
if (orderPayView.getBillMoneyList() == null || orderPayView.getBillMoneyList().size() == 0) if (orderPayView.getBillMoneyList() == null || orderPayView.getBillMoneyList().size() == 0)
return; return;
RequestBody requestBody = new FormBody.Builder()
.add("orderPayType", String.valueOf(orderPayType)) // RequestBody requestBody = new FormBody.Builder()
.add("payType", String.valueOf(orderPayView.getBillMoneyList().get(0).getId())) // .add("orderPayType", String.valueOf(orderPayType))
.add("orderId", String.valueOf(MyOrderManage.getInstance().getOrderId())) // .add("payType", String.valueOf(orderPayView.getBillMoneyList().get(0).getId()))
.add("amount", String.valueOf(orderPayView.getBillMoney())) // .add("orderId", String.valueOf(MyOrderManage.getInstance().getOrderId()))
.add("linePayType", String.valueOf(orderPayView.getLinePayType())) // .add("amount", String.valueOf(orderPayView.getBillMoney()))
.add("tipsPrice", String.valueOf(orderPayView.getTipsPrice())) // .add("linePayType", String.valueOf(orderPayView.getLinePayType()))
.build(); // .add("tipsPrice", String.valueOf(orderPayView.getTipsPrice()))
// .build();
String deleteOrderRequest = GsonUtils.GsonString(getOrderPayRequest(orderPayView));
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), deleteOrderRequest);
mModel.toOrderPay(requestBody) mModel.toOrderPay(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> { .doOnSubscribe(disposable -> {
...@@ -249,6 +254,32 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model ...@@ -249,6 +254,32 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
}); });
} }
private OrderPayRequest getOrderPayRequest(OrderPayView orderPayView) {
List<PayMethod> payMethodList = orderPayView.getBillMoneyList();
OrderPayRequest payRequest = new OrderPayRequest();
payRequest.setOrderId(MyOrderManage.getInstance().getOrderId());
payRequest.setOrderPayType(orderPayType);
payRequest.setLinePayType(orderPayView.getLinePayType());
for (int i = 0; i < payMethodList.size(); i++) {
PayMethod payMethod = payMethodList.get(i);
OrderPayRequest.orderPay orderPay = new OrderPayRequest.orderPay();
orderPay.setPayType(payMethod.getId());
if (payMethodList.size() == 2) {
if (i == 1) {
//小费放在第二种支付方式里面
orderPay.setTipsPrice(orderPayView.getTipsPrice());
}
} else {
orderPay.setTipsPrice(orderPayView.getTipsPrice());
}
orderPay.setAmount(payMethod.getPayMoney());
payRequest.getOrderPays().add(orderPay);
}
return payRequest;
}
/** /**
* 修改訂單更新支付方式 * 修改訂單更新支付方式
*/ */
......
...@@ -183,6 +183,10 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -183,6 +183,10 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
mRootView.setCurrentOperatType(TableOperatTypeConstant.move_table_4); mRootView.setCurrentOperatType(TableOperatTypeConstant.move_table_4);
break; break;
case 2: case 2:
//分檯
mRootView.setCurrentOperatType(TableOperatTypeConstant.splite_table_1);
break;
case 3:
//上菜紙 //上菜紙
mRootView.setCurrentOperatType(TableOperatTypeConstant.print_parper_2); mRootView.setCurrentOperatType(TableOperatTypeConstant.print_parper_2);
break; break;
...@@ -201,7 +205,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont ...@@ -201,7 +205,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
// mBottomFunctionList.addAll(functions); // mBottomFunctionList.addAll(functions);
mBottomFunctionList.add(new Function((long) 1, "重置檯號", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_init)); mBottomFunctionList.add(new Function((long) 1, "重置檯號", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_init));
mBottomFunctionList.add(new Function((long) 2, "轉檯", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_move)); mBottomFunctionList.add(new Function((long) 2, "轉檯", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_move));
// mBottomFunctionList.add(new Function((long) 3, "分檯", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_splite)); mBottomFunctionList.add(new Function((long) 3, "分檯", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_splite));
// mBottomFunctionList.add(new Function((long) 4, "skyorder", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_skyorder)); // mBottomFunctionList.add(new Function((long) 4, "skyorder", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_skyorder));
mBottomFunctionList.add(new Function((long) 5, "上菜紙", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_paper)); mBottomFunctionList.add(new Function((long) 5, "上菜紙", ArmsUtils.getColor(IActivity, R.color.theme_black), ArmsUtils.getDimens(IActivity, R.dimen.sp_14), R.mipmap.table_paper));
} }
......
...@@ -35,12 +35,14 @@ import androidx.recyclerview.widget.RecyclerView; ...@@ -35,12 +35,14 @@ 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.MemberInfo;
import com.gingersoft.gsa.cloud.base.common.bean.OrderBean; import com.gingersoft.gsa.cloud.base.common.bean.OrderBean;
import com.gingersoft.gsa.cloud.base.common.bean.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.LanguageUtils;
import com.gingersoft.gsa.cloud.base.utils.VibratorUtils; import com.gingersoft.gsa.cloud.base.utils.VibratorUtils;
import com.gingersoft.gsa.cloud.base.utils.encryption.Md5;
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;
import com.gingersoft.gsa.cloud.database.utils.ComboItemDaoUtils; import com.gingersoft.gsa.cloud.database.utils.ComboItemDaoUtils;
...@@ -58,11 +60,13 @@ import com.gingersoft.gsa.cloud.constans.MealConstant; ...@@ -58,11 +60,13 @@ import com.gingersoft.gsa.cloud.constans.MealConstant;
import com.gingersoft.gsa.cloud.table.mvp.model.bean.SoldoutCtrFood; import com.gingersoft.gsa.cloud.table.mvp.model.bean.SoldoutCtrFood;
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.MemberInfoAdapter;
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.fragment.FineItemAllFragment; import com.gingersoft.gsa.cloud.table.mvp.ui.fragment.FineItemAllFragment;
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.table.mvp.ui.adapter.meal.FoodGroupAdapter; import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodGroupAdapter;
import com.gingersoft.gsa.cloud.table.mvp.ui.widget.UseMemberDialog; import com.gingersoft.gsa.cloud.table.mvp.ui.widget.UseMemberDialog;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem;
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;
...@@ -89,6 +93,7 @@ import org.simple.eventbus.EventBus; ...@@ -89,6 +93,7 @@ import org.simple.eventbus.EventBus;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -235,11 +240,16 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -235,11 +240,16 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@BindView(R2.id.tv_fine_type) @BindView(R2.id.tv_fine_type)
TextView tv_fine_type; TextView tv_fine_type;
private ChooseNumberDialog chooseNumberDialog;
private FragmentManager fm; private FragmentManager fm;
private FineItemAllFragment modMsgFineItemFragment, modSasteFineItemFragment; private FineItemAllFragment modMsgFineItemFragment, modSasteFineItemFragment;
private ChooseNumberDialog mChooseNumberDialog;
private UseMemberDialog mUseMemberDialog;
private MemberInfoAdapter mMemberInfoAdapter;
private List<SectionTextItem> mMemberInfoList;
private RecyclerView recycler_member_info;
/** /**
* 是否初始化细项布局 * 是否初始化细项布局
*/ */
...@@ -502,6 +512,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -502,6 +512,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
showViewModeVisibility(MealConstant.fine_ViewMode, MealConstant.fine_tabs_ViewMode); showViewModeVisibility(MealConstant.fine_ViewMode, MealConstant.fine_tabs_ViewMode);
} }
@Override @Override
public void setCurrentFinePage() { public void setCurrentFinePage() {
if (currentFinePage == 0) { if (currentFinePage == 0) {
...@@ -556,27 +567,64 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -556,27 +567,64 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@OnClick(R2.id.btn_table) @OnClick(R2.id.btn_table)
void onClickTable() { void onClickTable() {
//type取值:1qrCdoetype,2:手機號,3:memberId //type取值:1qrCdoetype,2:手機號,3:memberId
new UseMemberDialog.BottomLayoutBuilder(this) // mUseMemberDialog = new UseMemberDialog(this);
mUseMemberDialog = new UseMemberDialog.BottomLayoutBuilder(this)
.setOnLayoutClickListener(new UseMemberDialog.BottomLayoutBuilder.OnLayoutClickListener() { .setOnLayoutClickListener(new UseMemberDialog.BottomLayoutBuilder.OnLayoutClickListener() {
@Override @Override
public void onInputPhone(UseMemberDialog dialog, String phone) { public void onInputPhone(UseMemberDialog dialog, String phone) {
Map<String, String> parameterMap = new HashMap<>(); mPresenter.queryMember(2, phone, GsaCloudApplication.getGsPosShopId(mContext));
parameterMap.put("type", "2");
parameterMap.put("parm", phone);
// Md5 md5 = new Md5();
// String sign = md5.getMD5ofStr(parameterMap);
// mPresenter.queryMember(2,sign,GsaCloudApplication.getGsPosShopId(mContext));
} }
@Override @Override
public void onScanAction(UseMemberDialog dialog) { public void onScanAction(UseMemberDialog dialog) {
mPresenter.toScanActivity(); mPresenter.toScanActivity();
} }
@Override
public void setAdapter(RecyclerView recycler_member_info) {
if (mMemberInfoList == null) {
mMemberInfoList = new ArrayList<>();
}
if (mMemberInfoAdapter == null) {
mMemberInfoAdapter = new MemberInfoAdapter(mMemberInfoList);
}
recycler_member_info.setAdapter(mMemberInfoAdapter);
}
@Override
public void clearMemberInfo() {
if (mMemberInfoList.size() > 0) {
mMemberInfoList.clear();
}
mMemberInfoAdapter.notifyDataSetChanged();
}
}) })
.build() .build();
.show(); mUseMemberDialog.show();
}
@Override
public void updateMemberInfo(MemberInfo memberInfo) {
if (mUseMemberDialog != null) {
List<SectionTextItem> data = getMemberInfoItem(memberInfo);
if (mMemberInfoList.size() > 0) {
mMemberInfoList.clear();
}
mMemberInfoList.addAll(data);
mMemberInfoAdapter.notifyDataSetChanged();
}
} }
private List<SectionTextItem> getMemberInfoItem(MemberInfo memberInfo) {
List<SectionTextItem> textItems = new ArrayList<>();
textItems.add(new SectionTextItem("會員號碼: " + memberInfo.getMemberNo()));
textItems.add(new SectionTextItem("會員電話: " + memberInfo.getPhone()));
textItems.add(new SectionTextItem("會員名稱: " + memberInfo.getMemberName()));
textItems.add(new SectionTextItem("積分: " + memberInfo.getMemberPoint()));
return textItems;
}
@OnClick(R2.id.btn_multiple_selection) @OnClick(R2.id.btn_multiple_selection)
void onClickMultipleSelection() { void onClickMultipleSelection() {
...@@ -671,9 +719,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -671,9 +719,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
mPresenter.changeNumber(i); mPresenter.changeNumber(i);
break; break;
case 99: case 99:
ChooseNumberDialog chooseNumberDialog = new ChooseNumberDialog(this); ChooseNumberDialog mChooseNumberDialog = new ChooseNumberDialog(this);
chooseNumberDialog.builder(); mChooseNumberDialog.builder();
chooseNumberDialog.setOnClickListener(new ChooseNumberDialog.OnClickListener() { mChooseNumberDialog.setOnClickListener(new ChooseNumberDialog.OnClickListener() {
@Override @Override
public void onComfirmClick(String number) { public void onComfirmClick(String number) {
...@@ -687,9 +735,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -687,9 +735,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
public void onBackPage() { public void onBackPage() {
} }
}); });
chooseNumberDialog.setValueHint("請輸入數量"); mChooseNumberDialog.setValueHint("請輸入數量");
chooseNumberDialog.setCancelable(true); mChooseNumberDialog.setCancelable(true);
chooseNumberDialog.show(); mChooseNumberDialog.show();
break; break;
} }
} else if (id == R.id.iv_fine_back) { } else if (id == R.id.iv_fine_back) {
...@@ -764,14 +812,14 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -764,14 +812,14 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@Override @Override
public void showChoosePeopleNumDialog(boolean isNeedCancel) { public void showChoosePeopleNumDialog(boolean isNeedCancel) {
if (chooseNumberDialog == null) { if (mChooseNumberDialog == null) {
chooseNumberDialog = new ChooseNumberDialog(this); mChooseNumberDialog = new ChooseNumberDialog(this);
chooseNumberDialog.builder(); mChooseNumberDialog.builder();
chooseNumberDialog.setValueHint("請輸入人數"); mChooseNumberDialog.setValueHint("請輸入人數");
// mInputNumberDialog2.setTitle(LanguageUtils.get_language_system(this, "Meal.Mannumber", "Number")); // mInputNumberDialog2.setTitle(LanguageUtils.get_language_system(this, "Meal.Mannumber", "Number"));
// mInputNumberDialog2.setHeadLayoutVisibility(View.VISIBLE); // mInputNumberDialog2.setHeadLayoutVisibility(View.VISIBLE);
if (!isNeedCancel) if (!isNeedCancel)
chooseNumberDialog.setOnBackClickListener(new ChooseNumberDialog.OnBackClickListener() { mChooseNumberDialog.setOnBackClickListener(new ChooseNumberDialog.OnBackClickListener() {
@Override @Override
public void OnBackClick() { public void OnBackClick() {
...@@ -785,7 +833,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -785,7 +833,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
} else { } else {
backPageBtnVisibility = View.VISIBLE; backPageBtnVisibility = View.VISIBLE;
} }
chooseNumberDialog.setOnClickListener(new ChooseNumberDialog.OnClickListener() { mChooseNumberDialog.setOnClickListener(new ChooseNumberDialog.OnClickListener() {
@Override @Override
public void onComfirmClick(String number) { public void onComfirmClick(String number) {
...@@ -803,9 +851,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter> ...@@ -803,9 +851,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
returnBeforeActivity(true); returnBeforeActivity(true);
} }
}); });
chooseNumberDialog.setCancelable(isNeedCancel); mChooseNumberDialog.setCancelable(isNeedCancel);
} }
chooseNumberDialog.show(); mChooseNumberDialog.show();
} }
@Override @Override
......
...@@ -292,8 +292,7 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -292,8 +292,7 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
break; break;
case TableOperatTypeConstant.move_table_4: case TableOperatTypeConstant.move_table_4:
if(mPresenter.getOriginalTableId() == dataBean.getId()){ if(mPresenter.getOriginalTableId() == dataBean.getId()){
CommonTipDialog.showCancelDialog(this, "相同檯不能转檯", OrderContentPresenter.class, mPresenter, CommonTipDialog.showCancelDialog(this, "相同檯不能转檯", OrderContentPresenter.class, mPresenter, "", null, null);
"", null, null);
return; return;
} }
//獲取餐檯狀態 //獲取餐檯狀態
...@@ -334,7 +333,9 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen ...@@ -334,7 +333,9 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
public void setOperatTitle() { public void setOperatTitle() {
switch (mPresenter.getCurrentChooseOperatType()) { switch (mPresenter.getCurrentChooseOperatType()) {
case TableOperatTypeConstant.splite_table_1: case TableOperatTypeConstant.splite_table_1:
tv_operat_hint.setText("請選擇檯號");
tv_operat_content.setText("");
mTopBar.setTitle("分檯");
break; break;
case TableOperatTypeConstant.print_parper_2: case TableOperatTypeConstant.print_parper_2:
tv_operat_hint.setText("請選擇檯號"); tv_operat_hint.setText("請選擇檯號");
......
...@@ -174,7 +174,7 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl ...@@ -174,7 +174,7 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
if (!TextUtils.isEmpty(orderDetailItem.getEndTime())) { if (!TextUtils.isEmpty(orderDetailItem.getEndTime())) {
tv_pay_time.setText(payBill + TimeUtil.getStringByFormat(new Date(orderDetailItem.getEndTime()), TimeUtil.dateFormatYMDHM)); tv_pay_time.setText(payBill + TimeUtil.getStringByFormat(new Date(orderDetailItem.getEndTime()), TimeUtil.dateFormatYMDHM));
} }
tv_total_money.setText("$" + orderDetailItem.getAmount()); tv_total_money.setText("$" + orderDetailItem.getTotalAmount());
setOrderStatus(orderDetailItem); setOrderStatus(orderDetailItem);
......
package com.gingersoft.gsa.cloud.table.mvp.ui.adapter;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.viewholder.BaseViewHolder;
import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem;
import com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem3;
import java.util.List;
import androidx.annotation.Nullable;
public class MemberInfoAdapter extends BaseQuickAdapter<SectionTextItem, BaseViewHolder> {
public MemberInfoAdapter(@Nullable List<SectionTextItem> data) {
super(R.layout.meal_item_member_info, data);
}
@Override
protected void convert(BaseViewHolder helper, SectionTextItem item) {
helper.setText(R.id.tv_text, item.getText());
}
}
...@@ -19,6 +19,8 @@ import android.widget.FrameLayout; ...@@ -19,6 +19,8 @@ import android.widget.FrameLayout;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.gingersoft.gsa.cloud.base.common.bean.MemberInfo;
import com.gingersoft.gsa.cloud.table.R; import com.gingersoft.gsa.cloud.table.R;
import com.gingersoft.gsa.cloud.ui.adapter.BasTextSectiontAdapter; import com.gingersoft.gsa.cloud.ui.adapter.BasTextSectiontAdapter;
import com.gingersoft.gsa.cloud.ui.bean.mode.BrandsBean; import com.gingersoft.gsa.cloud.ui.bean.mode.BrandsBean;
...@@ -34,9 +36,11 @@ import com.qmuiteam.qmui.widget.section.QMUISection; ...@@ -34,9 +36,11 @@ import com.qmuiteam.qmui.widget.section.QMUISection;
import com.qmuiteam.qmui.widget.section.QMUIStickySectionAdapter; import com.qmuiteam.qmui.widget.section.QMUIStickySectionAdapter;
import com.qmuiteam.qmui.widget.section.QMUIStickySectionLayout; import com.qmuiteam.qmui.widget.section.QMUIStickySectionLayout;
import com.rengwuxian.materialedittext.MaterialEditText; import com.rengwuxian.materialedittext.MaterialEditText;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Objects; import java.util.Objects;
import androidx.annotation.NonNull; import androidx.annotation.NonNull;
import androidx.core.content.ContextCompat; import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.LinearLayoutManager; import androidx.recyclerview.widget.LinearLayoutManager;
...@@ -59,6 +63,7 @@ public class UseMemberDialog extends Dialog { ...@@ -59,6 +63,7 @@ public class UseMemberDialog extends Dialog {
private View mContentView; private View mContentView;
private boolean mIsAnimating = false; private boolean mIsAnimating = false;
private OnBottomSheetShowListener mOnBottomSheetShowListener; private OnBottomSheetShowListener mOnBottomSheetShowListener;
public UseMemberDialog(Context context) { public UseMemberDialog(Context context) {
...@@ -204,6 +209,7 @@ public class UseMemberDialog extends Dialog { ...@@ -204,6 +209,7 @@ public class UseMemberDialog extends Dialog {
void onShow(); void onShow();
} }
/** /**
* 生成宫格类型的 {@link QMUIBottomSheet} 对话框。 * 生成宫格类型的 {@link QMUIBottomSheet} 对话框。
*/ */
...@@ -212,10 +218,12 @@ public class UseMemberDialog extends Dialog { ...@@ -212,10 +218,12 @@ public class UseMemberDialog extends Dialog {
private Context mContext; private Context mContext;
private UseMemberDialog mDialog; private UseMemberDialog mDialog;
private MemberInfo mMemberInfo;
private QMUITopBar mTopBar; private QMUITopBar mTopBar;
private RecyclerView.LayoutManager mLayoutManager; private RecyclerView.LayoutManager mLayoutManager;
private RecyclerView recycler_memeber_info; private RecyclerView recycler_member_info;
private MaterialEditText ed_phone; private MaterialEditText ed_phone;
private ImageView iv_no_data; private ImageView iv_no_data;
private LinearLayout ll_bottom; private LinearLayout ll_bottom;
...@@ -229,6 +237,9 @@ public class UseMemberDialog extends Dialog { ...@@ -229,6 +237,9 @@ public class UseMemberDialog extends Dialog {
mContext = context; mContext = context;
} }
public void setMemberInfo(MemberInfo mMemberInfo) {
this.mMemberInfo = mMemberInfo;
}
@Override @Override
public void onClick(View v) { public void onClick(View v) {
...@@ -251,7 +262,7 @@ public class UseMemberDialog extends Dialog { ...@@ -251,7 +262,7 @@ public class UseMemberDialog extends Dialog {
private View buildViews() { private View buildViews() {
View view = View.inflate(mContext, getContentViewLayoutId(), null); View view = View.inflate(mContext, getContentViewLayoutId(), null);
mTopBar = view.findViewById(R.id.topbar); mTopBar = view.findViewById(R.id.topbar);
recycler_memeber_info = view.findViewById(R.id.recycler_memeber_info); recycler_member_info = view.findViewById(R.id.recycler_memeber_info);
ed_phone = view.findViewById(R.id.ed_phone); ed_phone = view.findViewById(R.id.ed_phone);
iv_no_data = view.findViewById(R.id.iv_no_data); iv_no_data = view.findViewById(R.id.iv_no_data);
btn_query_memeber = view.findViewById(R.id.btn_query_memeber); btn_query_memeber = view.findViewById(R.id.btn_query_memeber);
...@@ -260,23 +271,23 @@ public class UseMemberDialog extends Dialog { ...@@ -260,23 +271,23 @@ public class UseMemberDialog extends Dialog {
btn_clear_member = view.findViewById(R.id.btn_use_member); btn_clear_member = view.findViewById(R.id.btn_use_member);
initTopbar(); initTopbar();
initStickyLayout(); initRecyclerLayout();
btn_query_memeber.setOnClickListener(new View.OnClickListener() { btn_query_memeber.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (TextUtils.isEmpty(getTvPhone())){ if (TextUtils.isEmpty(getTvPhone())) {
ed_phone.setError("請輸入會員手機號"); ed_phone.setError("請輸入會員手機號");
return; return;
} }
if(onLayoutClickListener != null){ if (onLayoutClickListener != null) {
onLayoutClickListener.onInputPhone(mDialog,getTvPhone()); onLayoutClickListener.onInputPhone(mDialog, getTvPhone());
} }
} }
}); });
btn_scan.setOnClickListener(new View.OnClickListener() { btn_scan.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if(onLayoutClickListener != null){ if (onLayoutClickListener != null) {
onLayoutClickListener.onScanAction(mDialog); onLayoutClickListener.onScanAction(mDialog);
} }
} }
...@@ -290,14 +301,26 @@ public class UseMemberDialog extends Dialog { ...@@ -290,14 +301,26 @@ public class UseMemberDialog extends Dialog {
btn_clear_member.setOnClickListener(new View.OnClickListener() { btn_clear_member.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if (onLayoutClickListener != null) {
onLayoutClickListener.clearMemberInfo();
}
} }
}); });
if (onLayoutClickListener != null) {
onLayoutClickListener.setAdapter(recycler_member_info);
}
return view; return view;
} }
private void initTopbar() { private void initTopbar() {
mTopBar.setBackgroundColor(ContextCompat.getColor(mContext, R.color.theme_color)); mTopBar.setBackgroundColor(ContextCompat.getColor(mContext, R.color.theme_color));
mTopBar.addRightTextButton("清除",R.id.btn_right)
.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
}
});
mTopBar.addLeftBackImageButton().setOnClickListener(new View.OnClickListener() { mTopBar.addLeftBackImageButton().setOnClickListener(new View.OnClickListener() {
@Override @Override
...@@ -308,11 +331,15 @@ public class UseMemberDialog extends Dialog { ...@@ -308,11 +331,15 @@ public class UseMemberDialog extends Dialog {
mTopBar.setTitle("使用會員"); mTopBar.setTitle("使用會員");
} }
private void initStickyLayout() { private void initRecyclerLayout() {
mLayoutManager = createLayoutManager(); mLayoutManager = createLayoutManager();
// mSectionLayout.setLayoutManager(mLayoutManager); recycler_member_info.setLayoutManager(mLayoutManager);
} }
public void setAdapter(BaseQuickAdapter adapter) {
recycler_member_info.setAdapter(adapter);
adapter.notifyDataSetChanged();
}
private RecyclerView.LayoutManager createLayoutManager() { private RecyclerView.LayoutManager createLayoutManager() {
return new LinearLayoutManager(mContext) { return new LinearLayoutManager(mContext) {
...@@ -324,7 +351,7 @@ public class UseMemberDialog extends Dialog { ...@@ -324,7 +351,7 @@ public class UseMemberDialog extends Dialog {
}; };
} }
private String getTvPhone(){ private String getTvPhone() {
return ed_phone.getText().toString(); return ed_phone.getText().toString();
} }
...@@ -350,6 +377,10 @@ public class UseMemberDialog extends Dialog { ...@@ -350,6 +377,10 @@ public class UseMemberDialog extends Dialog {
void onInputPhone(UseMemberDialog dialog, String phone); void onInputPhone(UseMemberDialog dialog, String phone);
void onScanAction(UseMemberDialog dialog); void onScanAction(UseMemberDialog dialog);
void setAdapter(RecyclerView recycler_member_info);
void clearMemberInfo();
} }
} }
......
...@@ -114,6 +114,4 @@ ...@@ -114,6 +114,4 @@
android:textSize="@dimen/sp_14" /> android:textSize="@dimen/sp_14" />
</LinearLayout> </LinearLayout>
</RelativeLayout> </RelativeLayout>
</LinearLayout> </LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/tv_text"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="@dimen/dp_10"
android:paddingRight="@dimen/dp_10"
android:paddingTop="@dimen/dp_5"
android:paddingBottom="@dimen/dp_5"
android:gravity="center_vertical"
android:text="會員名稱"
android:textColor="@color/theme_black"
android:textSize="@dimen/sp_14" />
...@@ -70,8 +70,7 @@ ...@@ -70,8 +70,7 @@
<ImageView <ImageView
android:id="@+id/iv_tab_icon" android:id="@+id/iv_tab_icon"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content" />
/>
<androidx.recyclerview.widget.RecyclerView <androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_bottom_function" android:id="@+id/rv_bottom_function"
...@@ -87,7 +86,7 @@ ...@@ -87,7 +86,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/dp_55" android:layout_height="@dimen/dp_55"
android:textColor="@color/theme_white_color" android:textColor="@color/theme_white_color"
android:background="@color/theme_grey_color" android:background="@color/transparent"
android:layout_alignParentBottom="true" android:layout_alignParentBottom="true"
android:visibility="invisible" android:visibility="invisible"
android:text="取消" /> android:text="取消" />
......
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