Commit 786854c5 by 宁斌

1、增加沽清恢復所有

     2、食品剩餘總數控制數量後,但是套餐裏卻可以無限下單
     3、食品細項組最小/大數量設置是細項組選項已達上限,不用顯示售罄
     4、打印完PRJ閃退,,懷疑是EC-PM-80330 的問題
     5、針式打印機連接失敗問題
     6、餐檯管理有區域沒有餐檯沒有顯示+號
parent 11b05961
......@@ -109,7 +109,7 @@ public class FunctionStyleUtils {
private int OrderNumberShowSize = 20;
private int OrderNumberFontSize = 7;
private int OrderNumberChildShowSize = 20;
private int OrderNumberChildFontSize = 7;
private int OrderNumberChildFontSize = 10;
private int ShowPluPad = 0;
//两次点击按钮之间的点击间隔不能少于200毫秒,防止快速点击食品导致不同步问题
private int ClickInterval = 200;
......
......@@ -5,8 +5,8 @@ ext {
buildToolsVersion: '28.0.3',
minSdkVersion : 19, //N5收銀機應用安卓開發環境要求Android OS Version: 5.1Android SDK Min Version: 19
targetSdkVersion : 28,
//正式版: 1.0.2 2
//內部測試版:1.1.2 12
//正式版: 1.0.3 3
//內部測試版:1.1.3 13
versionCode : 13,
versionName : "1.1.3"
]
......
......@@ -256,11 +256,11 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
functions.add(new Function((long) 151, 0, 5, "管理", 0, 0));
functions.add(new Function((long) 142, 151, 5, "賬單管理", R.drawable.ic_meals_menu_management, 0));
// functions.add(new Function((long) 142, 151, 5, "外賣接單", R.drawable.ic_takeaway_orders, 0));
functions.add(new Function((long) 142, 151, 5, "外賣接單", R.drawable.ic_takeaway_orders, 0));
functions.add(new Function((long) 143, 151, 5, "餐檯管理", R.drawable.ic_dining_table_management, 0));
functions.add(new Function((long) 144, 151, 5, "打印管理", R.drawable.ic_print_management, 0));
//// functions.add(new Function((long) 145, 151, 5, "支付管理", R.drawable.ic_pay_management_close, 1));
//// functions.add(new Function((long) 146, 151, 5, "折扣管理", R.drawable.ic_discount_management_close, 1));
// functions.add(new Function((long) 145, 151, 5, "支付管理", R.drawable.ic_pay_management_close, 1));
// functions.add(new Function((long) 146, 151, 5, "折扣管理", R.drawable.ic_discount_management_close, 1));
functions.add(new Function((long) 147, 151, 5, "沽清管理", R.drawable.ic_sell_off_manger, 0));
functions.add(new Function((long) 152, 0, 5, "員工", 0, 0));
......
......@@ -160,7 +160,7 @@ public class TableManageSectiontAdapter extends QMUIDefaultStickySectionAdapter<
} else {
//未開檯空間足夠可換行顯示
viewHolder.tv_table.setMaxLines(2);
viewHolder.tv_table.setTextSize(16);
viewHolder.tv_table.setTextSize(22);
viewHolder.tv_people.setVisibility(View.GONE);
}
......
......@@ -514,6 +514,8 @@ public class EpsonPrint implements ReceiveListener {
printData(ipAddress, bitmaps.get(0));
} else {
isPrint = false;
disconnectPrinter();
finalizeObject();
if (receiveListener != null) {
receiveListener.onPtrReceive(printer, i, printerStatusInfo, s);
}
......
......@@ -220,6 +220,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
}
myOrderManage.changeNumber(number);
if (mMealStandPresenter != null) {
mMealStandPresenter.updateMealSoldoutCtrData();
mMealStandPresenter.updateOrderFoodNumber();
}
updateOrderMoneyItem();
......
......@@ -260,8 +260,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
//加載套餐食品
loadComboData(mCurrentOrderDetailBean, false);
addFoodItemBefore(mCurrentOrderDetailBean);
//更新最大可選數
setFoodMaxQty(datasBean);
//沽清食品數量
updateFoodSoldoutCtrData();
updateOrderFoodNumber();
}
});
......@@ -286,8 +286,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
mCurrentOrderDetailBean = OrderDetail.comboTransOrderDetail(datasBean, id, mCurrentOrderDetailBean.getProductId(), 1, OrderDetail.COMBO_PROP, RvMealClicked);
//添加子项
addComboItem(mCurrentOrderDetailBean);
setComboItemMaxQty(datasBean);
//沽清子食品沽清數
updateComboItemSoldoutCtrData();
//更新賬單金額
updateOrderMoneyItem();
}
......@@ -319,7 +319,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
// loadModifierData(mCurrentOrderDetailBean.getProductId());
// } else {
addModifierItem(datasBean);
setModifierMaxQty(datasBean);
//沽清細項沽清數
updateModifierSoldoutCtrData();
//更新賬單金額
updateOrderMoneyItem();
// }
......@@ -440,14 +441,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
//获取套餐细项数据
List<ComboItem> comboItems = mModel.queryDB_ComboList(fid);
comboItemList.addAll(comboItems);
//设置套餐沽清數據
setComboItemSoldoutCtrData(comboItemList, mSoldoutCtrList);
}
List<Modifier> modifierList = mModel.queryDB_ModifierList(fid, ModifierDaoUtils.modifierMode_All);
if (modifierList.size() > 0) {
//设置细项沽清數據
setModifierSoldoutCtrData(modifierList, mSoldoutCtrList);
}
//設置默認選中套餐食品
setComboDefModifier(comboItemList);
//設置默認選中細項
......@@ -547,7 +542,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
for (int i = 0; i < numberAndCutPositionMap.size(); i++) {
String[] numberAndCutPositionStr = numberAndCutPositionMap.valueAt(i).split("_");
int number = Integer.parseInt(numberAndCutPositionStr[0]);
int maxQty = Integer.parseInt(modifier.getMaxNumber()) * mainOrderNumber;;
int maxQty = Integer.parseInt(modifier.getMaxNumber()) * mainOrderNumber;
;
if (numberAndCutPositionStr.length > 1 && !TextUtils.isEmpty(numberAndCutPositionStr[1])) {
int cutPosition = Integer.parseInt(numberAndCutPositionStr[1]);
if (maxQty <= number && cutPosition < mOrderFoodList.size()) {
......@@ -642,13 +638,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
@Override
public void onComplete() {
super.onComplete();
updateFoodSoldoutCtrData(mSoldoutCtrList);
updateFoodSoldoutCtrData();
}
@Override
public void onError(Throwable t) {
super.onError(t);
updateFoodSoldoutCtrData(mSoldoutCtrList);
updateFoodSoldoutCtrData();
}
@Override
......@@ -966,12 +962,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
mRootView.setMealRvScrollToPosition(deletePosition);
//更新最大可選數
if (deleteFood != null) {
Food orderBean = getFoodByFid(deleteFood.getProductId());
if (orderBean != null) {
setFoodMaxQty(orderBean);
}
// Food orderBean = getFoodByFid(deleteFood.getProductId());
// if (orderBean != null) {
// setFoodMaxQty(orderBean);
// }
}
}
updateMealSoldoutCtrData();
}
updateOrderFoodNumber();
}
......@@ -994,6 +991,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
//更新細項沽清數
IActivity.setFineItemSlodoutListFull(mSoldoutCtrList);
updateComboItemSoldoutCtrData();
updateModifierSoldoutCtrData();
//更新賬單金額
updateOrderMoneyItem();
......@@ -1068,83 +1067,56 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
}
/**
* 更新細項組沽清數據
* 更新食品,子項,細項沽清數據
*/
public void updateComboItemSoldoutFoodList_Full() {
clearParentModifierSoldoutCtrData();
// addStopSoldoutCtrItem(mSoldoutCtrList);
// setSoldoutCtrItem(mSoldoutCtrList);
mComboAdapter.notifyDataSetChanged();
public void updateMealSoldoutCtrData(){
updateFoodSoldoutCtrData();
updateComboItemSoldoutCtrData();
updateModifierSoldoutCtrData();
}
private void clearParentModifierSoldoutCtrData() {
for (ComboItem comboItem : mFoodComboList) {
comboItem.setMaxNumber("");
comboItem.setCurrentMaxNumber("");
/**
* 更新食品沽清數據
*
*/
public void updateFoodSoldoutCtrData() {
if (mSoldoutCtrList.size() > 0) {
clearFoodSoldoutCtrData();
addFoodSoldoutCtrItem(mSoldoutCtrList);
setFoodSoldoutCtrData(mSoldoutCtrList);
}
}
// private void addStopSoldoutCtrItem(List<SoldoutCtrFood> soldoutCtrFoods) {
// for (ComboItem comboItem : mFoodComboList) {
// if (comboItem.getInvisible() == 2) {
// SoldoutCtrFood soldoutCtrFood = new SoldoutCtrFood();
// soldoutCtrFood.setType((byte) MODIFIER_TYPE);
// soldoutCtrFood.setStop(true);
// soldoutCtrFood.setFoodName(comboItem.getName());
// soldoutCtrFood.setFoodName1(comboItem.getName1());
// soldoutCtrFood.setFoodName2(comboItem.getName2());
// if (!isContainsModifier(soldoutCtrFoods, modifier)) {
// soldoutCtrFoods.add(soldoutCtrFood);
// }
// }
// }
// for (Modifier modifier : mFineItemTwoList) {
// if (modifier.getInvisible() == 2) {
// SoldoutCtrFood soldoutCtrFood = new SoldoutCtrFood();
// soldoutCtrFood.setType((byte) MODIFIER_TYPE);
// soldoutCtrFood.setStop(true);
// soldoutCtrFood.setFoodName(modifier.getModifierName());
// soldoutCtrFood.setFoodName1(modifier.getModifierName1());
// soldoutCtrFood.setFoodName2(modifier.getModifierName2());
// soldoutCtrFood.setModifierId(modifier.getMid());
// if (!isContainsModifier(soldoutCtrFoods, modifier)) {
// soldoutCtrFoods.add(soldoutCtrFood);
// }
// }
// }
// }
private void setComboItemSoldoutCtrData(List<ComboItem> comboItemList, List<SoldoutCtrFood> soldoutCtrFoods) {
addFoodSoldoutCtrItem(soldoutCtrFoods);
for (SoldoutCtrFood scc : soldoutCtrFoods) {
for (ComboItem comboItem : comboItemList) {
if (scc.getType() == FOOD_TYPE && scc.getFoodId() != null && comboItem.getFid() != null && comboItem.getFid().equals(scc.getFoodId())) {
String qtyName = scc.getQtyName();
comboItem.setMaxNumber(qtyName);
comboItem.setCurrentMaxNumber(qtyName);
}
}
/**
* 更新套餐食品沽清数据
*/
public void updateComboItemSoldoutCtrData() {
if (mSoldoutCtrList.size() > 0) {
updateFoodSoldoutCtrData();
mComboAdapter.notifyDataSetChanged();
}
for (ComboItem comboItem : comboItemList) {
if (comboItem.getInvisible() == 2) {
String qtyName = "暫停";
comboItem.setMaxNumber(qtyName);
comboItem.setCurrentMaxNumber(qtyName);
}
}
/**
* 更新細項沽清數據
*/
public void updateModifierSoldoutCtrData(){
if (mSoldoutCtrList.size() > 0) {
clearModifierSoldoutCtrData();
addModifierCtrItem(mSoldoutCtrList);
setModifierSoldoutCtrData(mModifierList,mSoldoutCtrList);
mModifierAdapter.notifyDataSetChanged();
}
}
private void setModifierSoldoutCtrData(List<Modifier> modifierList, List<SoldoutCtrFood> soldoutCtrFoods) {
addFoodSoldoutCtrItem(soldoutCtrFoods);
for (SoldoutCtrFood scc : soldoutCtrFoods) {
for (Modifier modifier : modifierList) {
if (scc.getType() == MODIFIER_TYPE && scc.getModifierId() != null && modifier.getMid() != 0 && modifier.getMid() == scc.getModifierId()) {
String qtyName = scc.getQtyName();
modifier.setMaxNumber(qtyName);
modifier.setCurrentMaxNumber(qtyName);
setModifierMaxQty(modifier);
}
}
}
......@@ -1153,25 +1125,91 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
String qtyName = "暫停";
modifier.setMaxNumber(qtyName);
modifier.setCurrentMaxNumber(qtyName);
setModifierMaxQty(modifier);
}
}
}
/**
* 更新沽清數據
*
* @param soldoutCtrFoods
*/
public void updateFoodSoldoutCtrData(List<SoldoutCtrFood> soldoutCtrFoods) {
addFoodSoldoutCtrItem(soldoutCtrFoods);
setFoodSoldoutCtrData(soldoutCtrFoods);
public void setFoodSoldoutCtrData(List<SoldoutCtrFood> soldoutCtrFoods) {
for (SoldoutCtrFood scc : soldoutCtrFoods) {
for (Food foodGroupBean : mFoodGroupList) {
if (scc.getType() == FOOD_TYPE && scc.getFoodId() != null && foodGroupBean.getId() != null && foodGroupBean.getId().equals(scc.getFoodId())) {
String qtyName = scc.getQtyName();
foodGroupBean.setMaxNumber(qtyName);
foodGroupBean.setCurrentMaxNumber(qtyName);
setFoodMaxQty(foodGroupBean);
}
}
for (Food foodBean : mFoodList) {
if (scc.getType() == FOOD_TYPE && scc.getFoodId() != null && foodBean.getId() != null && foodBean.getId().equals(scc.getFoodId())) {
String qtyName = scc.getQtyName();
foodBean.setMaxNumber(qtyName);
foodBean.setCurrentMaxNumber(qtyName);
setFoodMaxQty(foodBean);
}
}
}
for (Food foodGroupBean : mFoodGroupList) {
if (foodGroupBean.getInvisible() == 2) {
String qtyName = "暫停";
foodGroupBean.setMaxNumber(qtyName);
foodGroupBean.setCurrentMaxNumber(qtyName);
setFoodMaxQty(foodGroupBean);
}
}
for (Food foodBean : mFoodList) {
if (foodBean.getInvisible() == 2) {
String qtyName = "暫停";
foodBean.setMaxNumber(qtyName);
foodBean.setCurrentMaxNumber(qtyName);
setFoodMaxQty(foodBean);
}
}
if (mFoodComboList != null) {
for (SoldoutCtrFood scc : soldoutCtrFoods) {
for (ComboItem comboItem : mFoodComboList) {
if (scc.getType() == FOOD_TYPE && scc.getFoodId() != null && comboItem.getFid() != null && comboItem.getFid().equals(scc.getFoodId())) {
String qtyName = scc.getQtyName();
comboItem.setMaxNumber(qtyName);
comboItem.setCurrentMaxNumber(qtyName);
setComboItemMaxQty(comboItem);
}
}
}
for (ComboItem comboItem : mFoodComboList) {
if (comboItem.getInvisible() == 2) {
String qtyName = "暫停";
comboItem.setMaxNumber(qtyName);
comboItem.setCurrentMaxNumber(qtyName);
setComboItemMaxQty(comboItem);
}
}
}
if (IActivity.getFoodGroupGridViewAdapter() != null) {
IActivity.getFoodGroupGridViewAdapter().notifyDataSetChanged();
}
mFoodAdapter.notifyDataSetChanged();
}
private void addModifierCtrItem(List<SoldoutCtrFood> soldoutCtrFoods) {
for (Modifier modifier : mModifierList) {
if (modifier.getInvisible() == 2) {
SoldoutCtrFood soldoutCtrFood = new SoldoutCtrFood();
soldoutCtrFood.setType((byte) MODIFIER_TYPE);
soldoutCtrFood.setStop(true);
soldoutCtrFood.setFoodName(modifier.getModifierName());
soldoutCtrFood.setFoodName1(modifier.getModifierName1());
soldoutCtrFood.setFoodName2(modifier.getModifierName2());
soldoutCtrFood.setModifierId(modifier.getMid());
if (!isContainModifier(soldoutCtrFoods, modifier)) {
soldoutCtrFoods.add(soldoutCtrFood);
}
}
}
}
/**
* 添加食品組 食品沽清項
*
* @param soldoutCtrFoods
*/
private void addFoodSoldoutCtrItem(List<SoldoutCtrFood> soldoutCtrFoods) {
for (Food foodGroupBean : mFoodGroupList) {
if (foodGroupBean.getInvisible() == 2) {
......@@ -1182,7 +1220,9 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
soldoutCtrFood.setFoodName1(foodGroupBean.getFoodName1());
soldoutCtrFood.setFoodName2(foodGroupBean.getFoodName2());
soldoutCtrFood.setFoodId(foodGroupBean.getId());
soldoutCtrFoods.add(soldoutCtrFood);
if (!isContainFood(soldoutCtrFoods, foodGroupBean)) {
soldoutCtrFoods.add(soldoutCtrFood);
}
}
}
for (Food foodBean : mFoodList) {
......@@ -1195,52 +1235,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
soldoutCtrFood.setFoodName2(foodBean.getFoodName2());
soldoutCtrFood.setFoodId(foodBean.getId());
soldoutCtrFoods.add(soldoutCtrFood);
}
}
}
/**
* 設置食品沽清數據
*/
public void setFoodSoldoutCtrData(List<SoldoutCtrFood> soldoutCtrFoods) {
clearFoodSoldoutCtrData();
for (SoldoutCtrFood scc : soldoutCtrFoods) {
for (Food foodGroupBean : mFoodGroupList) {
if (scc.getType() == FOOD_GROUP_TYPE && scc.getFoodId() != null && foodGroupBean.getId() != null && foodGroupBean.getId().equals(scc.getFoodId())) {
String qtyName;
if (foodGroupBean.getInvisible() == 2) {
qtyName = "暫停";
foodGroupBean.setMaxNumber(qtyName);
foodGroupBean.setCurrentMaxNumber(qtyName);
} else {
qtyName = scc.getQtyName();
foodGroupBean.setMaxNumber(qtyName);
foodGroupBean.setCurrentMaxNumber(qtyName);
}
}
}
for (Food foodBean : mFoodList) {
if (scc.getType() == FOOD_TYPE && scc.getFoodId() != null && foodBean.getId() != null && foodBean.getId().equals(scc.getFoodId())) {
String qtyName;
if (foodBean.getInvisible() == 2) {
qtyName = "暫停";
foodBean.setMaxNumber(qtyName);
foodBean.setCurrentMaxNumber(qtyName);
} else {
qtyName = scc.getQtyName();
foodBean.setMaxNumber(qtyName);
foodBean.setCurrentMaxNumber(qtyName);
}
if (!isContainFood(soldoutCtrFoods, foodBean)) {
soldoutCtrFoods.add(soldoutCtrFood);
}
}
}
if (IActivity.getFoodGroupGridViewAdapter() != null) {
IActivity.getFoodGroupGridViewAdapter().notifyDataSetChanged();
}
mFoodAdapter.notifyDataSetChanged();
}
private void clearFoodSoldoutCtrData() {
for (Food foodGroupBean : mFoodGroupList) {
foodGroupBean.setMaxNumber("");
......@@ -1250,6 +1251,35 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
foodBean.setMaxNumber("");
foodBean.setCurrentMaxNumber("");
}
for (ComboItem comboItem : mFoodComboList) {
comboItem.setMaxNumber("");
comboItem.setCurrentMaxNumber("");
}
}
private void clearModifierSoldoutCtrData() {
for (Modifier modifier : mModifierList) {
modifier.setMaxNumber("");
modifier.setCurrentMaxNumber("");
}
}
private boolean isContainFood(List<SoldoutCtrFood> soldoutCtrFoods, Food food) {
for (SoldoutCtrFood soldoutCtrFood : soldoutCtrFoods) {
if (soldoutCtrFood.getType() == FOOD_TYPE && soldoutCtrFood.getFoodId() == food.getId()) {
return true;
}
}
return false;
}
private boolean isContainModifier(List<SoldoutCtrFood> soldoutCtrFoods, Modifier modifier) {
for (SoldoutCtrFood soldoutCtrFood : soldoutCtrFoods) {
if (soldoutCtrFood.getType() == MODIFIER_TYPE && soldoutCtrFood.getModifierId() == modifier.getMid()) {
return true;
}
}
return false;
}
/**
......@@ -1622,6 +1652,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
private void updateComboData(List<ComboItem> foodComboList) {
mFoodComboList.clear();
mFoodComboList.addAll(foodComboList);
//更新套餐沽清數據
updateComboItemSoldoutCtrData();
//根据Item个数显示每一行的个数
mRootView.setComboRecycleSpanCount(mFoodComboList.size());
mComboAdapter.notifyDataSetChanged();
......@@ -1635,6 +1667,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
private void updateModifierData(List<Modifier> modifiers) {
mModifierList.clear();
mModifierList.addAll(modifiers);
//更新細項沽清數據
updateModifierSoldoutCtrData();
//根据Item个数显示每一行的个数
mRootView.setModifierRecycleSpanCount(mModifierList.size());
mComboAdapter.notifyDataSetChanged();
......
......@@ -181,7 +181,7 @@ public class SoldoutCtrlPresenter extends BasePresenter<SoldoutCtrlContract.Mode
if (datasBean.isStop()) {
long id ;
long id;
if (datasBean.getType() == MODIFIER_TYPE) {
id = datasBean.getModifierId();
} else {
......@@ -540,6 +540,11 @@ public class SoldoutCtrlPresenter extends BasePresenter<SoldoutCtrlContract.Mode
.compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<BaseResult>(mErrorHandler) {
@Override
public void onError(Throwable t) {
super.onError(t);
// updateFoodSoldoutCtrData(mCurrentSlodoutFoodList_Full);
}
@Override
public void onNext(@NonNull BaseResult info) {
......@@ -781,23 +786,29 @@ public class SoldoutCtrlPresenter extends BasePresenter<SoldoutCtrlContract.Mode
* @param modifierIds
* @param invisible 0=顯示, 1=隱藏, 2=暫停
*/
public void batchUpdateInvisible(String[] foodIds, String[] modifierIds, int invisible) {
List<SoldoutRequest.updateInvisible> request = new ArrayList<>();
if (foodIds.length > 0) {
SoldoutRequest.updateInvisible foodUpdateInvisible = getUpdateInvisibleRequest(foodIds, 4, invisible);
request.add(foodUpdateInvisible);
}
if (modifierIds.length > 0) {
SoldoutRequest.updateInvisible modifierUpdateInvisible = getUpdateInvisibleRequest(modifierIds, 3, invisible);
request.add(modifierUpdateInvisible);
}
// public void batchUpdateInvisible(String[] foodIds, String[] modifierIds, int invisible) {
private void batchUpdatePrg() {
// List<SoldoutRequest.updateInvisible> request = new ArrayList<>();
//
// if (foodIds.length > 0) {
// SoldoutRequest.updateInvisible foodUpdateInvisible = getUpdateInvisibleRequest(foodIds, 4, invisible);
// request.add(foodUpdateInvisible);
// }
// if (modifierIds.length > 0) {
// SoldoutRequest.updateInvisible modifierUpdateInvisible = getUpdateInvisibleRequest(modifierIds, 3, invisible);
// request.add(modifierUpdateInvisible);
// }
//
// RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request));
// String json = GsonUtils.GsonString(request);
RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), GsonUtils.GsonString(request));
String json = GsonUtils.GsonString(request);
long restaurantId = GsaCloudApplication.getRestaurantId(mApplication);
RequestBody requestBody = new FormBody.Builder()
.add("restaurantId", String.valueOf(restaurantId))
.build();
mModel.updateInvisible(requestBody)
mModel.batchRestoreSoldoutCtrl(requestBody)
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading(null))
.subscribeOn(AndroidSchedulers.mainThread())
......@@ -812,65 +823,56 @@ public class SoldoutCtrlPresenter extends BasePresenter<SoldoutCtrlContract.Mode
//记录恢复操作类型
mOperatTtpe = 2;
//暫停恢復需要更新食品表狀態
if (foodIds.length > 0) {
FoodDaoUtils foodDao = new FoodDaoUtils(IActivity);
List<Food> foodList = mModel.queryDB_FoodListByIds(foodIds);
if(foodList != null) {
for (int i = 0; i < foodList.size(); i++) {
foodList.get(i).setInvisible(invisible);
}
// if (foodIds.length > 0) {
//更新食品Invisible状态
FoodDaoUtils foodDao = new FoodDaoUtils(IActivity);
List<Food> foodList = foodDao.queryAllFood();
if (foodList != null) {
for (int i = 0; i < foodList.size(); i++) {
foodList.get(i).setInvisible(0);
}
// if (status) {
// if (food.getParentId() == 0) {
// updateFoodGroup();
// } else {
// mAllFoodList = mModel.queryDB_AllFoodList();
// changedMealByParentId(currentParentId);
// }
// updateFoodSoldoutCtrData(mCurrentSlodoutFoodList_Full);
// filterSlodoutData(false);
// }
}
if (modifierIds.length > 0) {
boolean foodDeleteResult = foodDao.deleteAll();
boolean foodInsertResult = false;
if (foodDeleteResult) {
foodInsertResult = foodDao.insertMultFood(foodList);
}
if (foodDeleteResult && foodInsertResult) {
//更新頁面食品組,食品信息
updateFoodGroup();
mAllFoodList = mModel.queryDB_AllFoodList();
changedMealByParentId(currentParentId);
updateFoodSoldoutCtrData(mCurrentSlodoutFoodList_Full);
filterSlodoutData(false);
}
// switch (type) {
// case 1:
// case 2:
// //更新食品狀態
// FoodDaoUtils foodDao = new FoodDaoUtils(IActivity);
// Food food = foodDao.queryFoodByFidQueryBuilder(id);
// if (food != null) {
// food.setInvisible(invisible);
// boolean status = foodDao.updateFood(food);
// if (status) {
// if (food.getParentId() == 0) {
// updateFoodGroup();
// } else {
// mAllFoodList = mModel.queryDB_AllFoodList();
// changedMealByParentId(currentParentId);
// }
// updateFoodSoldoutCtrData(mCurrentSlodoutFoodList_Full);
// filterSlodoutData(false);
// }
// }
// break;
// case 3:
// //更新細項狀態
// ModifierDaoUtils modifierDaoUtils = new ModifierDaoUtils(mApplication);
// Modifier modifier = modifierDaoUtils.queryModifierByQueryBuilder(id);
// if (modifier != null) {
// modifier.setInvisible(invisible);
// boolean status = modifierDaoUtils.updateModifier(modifier);
// if (status) {
// //更新細項沽清數據
// IActivity.setFineItemSoldoutListFull(null, mCurrentSlodoutFoodList_Full);
// }
// }
// break;
// }
//更新细项Invisible状态
ModifierDaoUtils modifierDao = new ModifierDaoUtils(IActivity);
List<Modifier> modifierList = modifierDao.queryAllModifier();
if (modifierList != null) {
for (int i = 0; i < modifierList.size(); i++) {
modifierList.get(i).setInvisible(0);
}
}
boolean modifierDeleteResult = modifierDao.deleteAll();
boolean modifierinsertResult = false;
if (modifierDeleteResult) {
modifierinsertResult = modifierDao.insertMultModifier(modifierList);
}
if(modifierDeleteResult && modifierDeleteResult){
//更新細項沽清數據
IActivity.setFineItemSoldoutListFull(null, mCurrentSlodoutFoodList_Full);
}
if (foodDeleteResult && foodInsertResult && modifierDeleteResult && modifierinsertResult) {
mRootView.showMessage("恢復成功");
}
//重新获取沽清数据
// getCurrentSoldoutFood();
getCurrentSoldoutFood();
} else {
mRootView.showMessage(LanguageUtils.get_language_system(mApplication, "recovery.failure", "恢復失敗!"));
}
......
......@@ -367,7 +367,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
mPresenter.setRvMealClicked(false);
mPresenter.changedMealByParentId(datasBean.getId());
mPresenter.updateFoodSoldoutCtrData(mPresenter.getSoldoutCtrList());
mPresenter.updateFoodSoldoutCtrData();
}
});
......@@ -542,6 +542,11 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
showViewModeVisibility(MealConstant.discount_ViewMode);
}
@OnClick(R2.id.btn_table)
void onClickTable() {
}
@OnClick(R2.id.btn_multiple_selection)
void onClickMultipleSelection() {
currentFinePage = 0;
......
......@@ -363,15 +363,16 @@ public class SoldoutCtrlActivity extends BaseFragmentActivity<SoldoutCtrlPresent
recycle_food_group.setVisibility(View.VISIBLE);
recycle_food.setVisibility(View.VISIBLE);
} else if (id == R.id.tv_restore) {
List<SoldoutCtrFood> soldoutCtrFoodList = getSoldoutCtrFoodList();
if (soldoutCtrFoodList.size() == 0) {
return;
}
if (soldoutCtrFoodList.size() == 1) {
executeSingleRestore(soldoutCtrFoodList.get(0));
} else {
executeMultipleRestore(soldoutCtrFoodList);
}
CommonTipDialog.showSurpisedDialog(this, "是否恢復所有食品?", SoldoutCtrlPresenter.class, mPresenter, "batchUpdatePrg", null, null);
// List<SoldoutCtrFood> soldoutCtrFoodList = getSoldoutCtrFoodList();
// if (soldoutCtrFoodList.size() == 0) {
// return;
// }
// if (soldoutCtrFoodList.size() == 1) {
// executeSingleRestore(soldoutCtrFoodList.get(0));
// } else {
// executeMultipleRestore(soldoutCtrFoodList);
// }
}
}
......@@ -485,10 +486,10 @@ public class SoldoutCtrlActivity extends BaseFragmentActivity<SoldoutCtrlPresent
String[] modifierIds = getStopSoldoutCtrModifierIds(selectSoldoutCtrFoodList);
String ids = getNumberSoldoutIds(selectSoldoutCtrFoodList);
if (!TextUtils.isEmpty(foodIds[0]) || !TextUtils.isEmpty(modifierIds[0])) {
mPresenter.batchUpdateInvisible(foodIds, modifierIds, 2);
// mPresenter.batchUpdateInvisible(foodIds, modifierIds, 2);
}
if (ids.length() > 0) {
mPresenter.batchRestoreSoldoutCtrl(ids);
// mPresenter.batchRestoreSoldoutCtrl(ids);
}
});
dialogBuilder.addAction(com.gingersoft.gsa.cloud.base.R.drawable.shape_3c_cancel_btn_bg, "取消", (dialog, index) -> dialog.dismiss());
......
......@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal;
import android.content.Context;
import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.text.TextUtils;
import android.view.Gravity;
import android.view.View;
......@@ -21,6 +22,7 @@ import com.jess.arms.base.BaseHolder;
import com.jess.arms.base.DefaultAdapter;
import com.jess.arms.utils.ArmsUtils;
import com.jess.arms.utils.DeviceUtils;
import com.qmuiteam.qmui.util.QMUIDrawableHelper;
import java.util.ArrayList;
import java.util.List;
......@@ -177,19 +179,19 @@ public class FoodAdapter extends DefaultAdapter<Food> {
private void setStatus(Food datasBean) {
tv_soldout.setMaxHeight(mOrderNumberShowSize);
tv_soldout.setMinHeight(mOrderNumberShowSize);
// tv_soldout.setMaxHeight(mOrderNumberShowSize);
// tv_soldout.setMinHeight(mOrderNumberShowSize);
tv_soldout.setTextSize(mOrderNumberFontSize);
tv_soldout.setTextColor(Color.parseColor("#000000"));
tv_soldout.setBackgroundDrawable(mContext.getResources().getDrawable(R.drawable.ui_selector_white_rect));
tv_soldout.setMinWidth(20);
tv_soldout.setTextSize(10);
tv_soldout.setGravity(Gravity.CENTER);
RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(new ViewGroup.MarginLayoutParams(60, 40));
lp2.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
lp2.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
tv_soldout.setLayoutParams(lp2);
// tv_soldout.setTextColor(Color.parseColor("#000000"));
tv_soldout.setBackgroundDrawable(mContext.getResources().getDrawable(R.drawable.meal_shape_remaining_number_bg));
// tv_soldout.setMinWidth(20);
// tv_soldout.setTextSize(10);
// tv_soldout.setGravity(Gravity.CENTER);
// RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(new ViewGroup.MarginLayoutParams(60, 40));
// lp2.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
// lp2.addRule(RelativeLayout.ALIGN_PARENT_LEFT);
// tv_soldout.setLayoutParams(lp2);
tv_soldout.setVisibility(View.INVISIBLE);
iv_qtySold.setVisibility(View.INVISIBLE);
......
......@@ -403,10 +403,10 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
if (orderItem != null && orderItem.isNew()) {
mInfos.remove(i);
notifyItemChanged(i);
Food orderBean = mMealStandPresenter.getFoodByFid(orderItem.getId());
if (orderBean != null) {
mMealStandPresenter.setFoodMaxQty(orderBean);
}
// Food orderBean = mMealStandPresenter.getFoodByFid(orderItem.getId());
// if (orderBean != null) {
// mMealStandPresenter.setFoodMaxQty(orderBean);
// }
}
}
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#D10035"/>
<corners android:bottomRightRadius="@dimen/dp_10" android:topRightRadius="@dimen/dp_10"/>
</shape>
\ No newline at end of file
......@@ -39,20 +39,21 @@
android:textColor="@color/theme_white_color" />
</RelativeLayout>
<LinearLayout
android:id="@+id/ll_meals_main"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1">
<!-- <LinearLayout-->
<!-- android:id="@+id/ll_meals_main"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="0dp"-->
<!-- android:layout_weight="1">-->
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/recycle_current_soldout_food"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:divider="@null"
app:spanCount="1"
app:layoutManager="com.gingersoft.gsa.cloud.ui.recylcler.RecyclerViewNoBugLinearLayoutManager"/>
</LinearLayout>
<!-- </LinearLayout>-->
</LinearLayout>
<RelativeLayout
......@@ -160,7 +161,7 @@
android:text="沽清控制--食品"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_20" />
android:textSize="@dimen/sp_16" />
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/tv_restore"
......@@ -168,13 +169,13 @@
android:layout_height="match_parent"
android:layout_alignParentLeft="true"
android:layout_weight="1"
android:background="@color/theme_color"
android:background="#D10035"
android:gravity="center"
android:text="恢復 "
android:text="恢復所有"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_20"
android:visibility="gone"/>
android:textSize="@dimen/sp_18"
android:visibility="visible"/>
<com.qmuiteam.qmui.alpha.QMUIAlphaTextView
android:id="@+id/tv_return"
......@@ -186,6 +187,6 @@
android:text="返 回"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/sp_20" />
android:textSize="@dimen/sp_18" />
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
......@@ -30,13 +30,21 @@
android:id="@+id/tv_soldout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentLeft="true"
android:layout_alignParentBottom="true"
android:layout_gravity="right"
android:drawablePadding="@dimen/dp_2"
android:paddingTop="@dimen/dp_2"
android:paddingBottom="@dimen/dp_2"
android:paddingLeft="@dimen/dp_2"
android:paddingRight="@dimen/dp_8"
android:layout_marginRight="2px"
android:layout_marginTop="2px"
android:visibility="gone"
android:background="@drawable/ui_selector_white_rect"
android:text="sold" />
android:visibility="invisible"
android:textColor="@color/theme_white_color"
android:text="sold"
android:textStyle="bold"/>
<!--<TextView-->
<!--android:id="@+id/tv_status"-->
<!--android:layout_width="wrap_content"-->
......
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content">
......@@ -40,6 +41,7 @@
android:layout_marginTop="2px"
android:background="@drawable/ui_selector_white_rect"
android:text="sold"
android:textStyle="bold"
android:visibility="invisible" />
<View
......@@ -55,6 +57,5 @@
android:layout_height="2px"
android:layout_alignParentTop="true"
android:background="@color/theme_black" />
</com.qmuiteam.qmui.alpha.QMUIAlphaRelativeLayout>
</RelativeLayout>
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