Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
supplier
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王宇航
supplier
Commits
82e6ac03
Commit
82e6ac03
authored
Mar 18, 2020
by
宁斌
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1、添加訂單管理(列表,詳情,取消,重印)
2、啟動頁訪問服務器異常一直停留不動
parent
b5dd920f
Hide whitespace changes
Inline
Side-by-side
Showing
49 changed files
with
1245 additions
and
511 deletions
+1245
-511
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/presenter/SettlementReportPresenter.java
+6
-6
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/NewMainActivity.java
+3
-2
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/SettlementReportActivity.java
+45
-45
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/adapter/SettlementReportItem5Adapter.java
+6
-7
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/adapter/SettlementReportItemAdapter.java
+6
-6
public-base/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderBean.java
+15
-15
public-base/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/mealManage/MyOrderManage.java
+23
-19
public-base/src/main/java/com/gingersoft/gsa/cloud/base/utils/crash/AppCrashHandler.java
+2
-2
public-base/src/main/java/com/gingersoft/gsa/cloud/ui/bean/view/SectionTextItem3.java
+49
-3
public-base/src/main/java/com/gingersoft/gsa/cloud/ui/bean/view/SectionTextItem5.java
+3
-3
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/AllOrderContract.java
+3
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/MealStandContract.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderCenterContract.java
+7
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderContentContract.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderDetailContract.java
+9
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/MealStandModel.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderCenterModel.java
+19
-2
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderContentModel.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderDetailModel.java
+29
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/OrderDetailItem.java
+43
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/request/AddOrderRequest.java
+3
-3
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/request/CreateOrderRequest.java
+9
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/service/MealService.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/service/OrderService.java
+9
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/AllOrderPresenter.java
+81
-3
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/BaseOrderPresenter.java
+7
-3
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/MealStandPresenter.java
+46
-14
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderCenterPresenter.java
+90
-14
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderContentPresenter.java
+10
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderDetailPresenter.java
+34
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/TablePresenter.java
+14
-14
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/MealStandActivity.java
+15
-11
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderPayActivity.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/TableActivity.java
+197
-116
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderCenterActivity.java
+24
-84
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderDetailActivity.java
+189
-26
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderCenterAdapter.java
+83
-11
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetailItemAdapter.java
+12
-21
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetailPayMethodAdapter.java
+6
-5
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/meal/SelectMealAdapter.java
+15
-8
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/fragment/AllOrderFragment.java
+70
-4
table-mode/src/main/res/layout/activity_order_center.xml
+0
-7
table-mode/src/main/res/layout/activity_order_detail.xml
+4
-5
table-mode/src/main/res/layout/fragment_all_order.xml
+6
-0
table-mode/src/main/res/layout/item_order_center.xml
+11
-10
table-mode/src/main/res/layout/item_order_detail_food.xml
+10
-25
table-mode/src/main/res/layout/item_order_detail_pay_method.xml
+2
-0
table-mode/src/main/res/layout/table_activity_table.xml
+8
-8
user-login/src/main/java/com/gingersoft/gsa/cloud/user/login/mvp/presenter/BaseLoginPresenter.java
+16
-0
No files found.
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/presenter/SettlementReportPresenter.java
View file @
82e6ac03
...
...
@@ -7,8 +7,8 @@ import com.gingersoft.gsa.cloud.main.R;
import
com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract
;
import
com.gingersoft.gsa.cloud.main.mvp.model.bean.SendSettlement
;
import
com.gingersoft.gsa.cloud.main.mvp.model.bean.SettlementReport
;
import
com.gingersoft.gsa.cloud.
main.mvp.model.bean.SettlementReportItem
;
import
com.gingersoft.gsa.cloud.
main.mvp.model.bean.SettlementRepor
tItem5
;
import
com.gingersoft.gsa.cloud.
ui.bean.view.SectionTextItem3
;
import
com.gingersoft.gsa.cloud.
ui.bean.view.SectionTex
tItem5
;
import
com.gingersoft.gsa.cloud.main.mvp.ui.activity.SettlementReportActivity
;
import
com.gingersoft.gsa.cloud.main.mvp.ui.adapter.SettlementReportItem5Adapter
;
import
com.gingersoft.gsa.cloud.main.mvp.ui.adapter.SettlementReportItemAdapter
;
...
...
@@ -60,10 +60,10 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
private
SettlementReportActivity
IActivity
;
private
SettlementReportItemAdapter
mSettlementReportItemAdapter
;
private
List
<
Se
ttlementReportItem
>
mSettlementReportItemList
=
new
ArrayList
<>();
private
List
<
Se
ctionTextItem3
>
mSettlementReportItemList
=
new
ArrayList
<>();
private
SettlementReportItem5Adapter
mSettlementReportItem5Adapter
;
private
List
<
Se
ttlementRepor
tItem5
>
mSettlementReportItem5List
=
new
ArrayList
<>();
private
List
<
Se
ctionTex
tItem5
>
mSettlementReportItem5List
=
new
ArrayList
<>();
@Inject
public
SettlementReportPresenter
(
SettlementReportContract
.
Model
model
,
SettlementReportContract
.
View
rootView
)
{
...
...
@@ -91,13 +91,13 @@ public class SettlementReportPresenter extends BasePresenter<SettlementReportCon
}
}
public
void
notifyReportItemAdapter
(
List
<
Se
ttlementReportItem
>
settlementReportItems
)
{
public
void
notifyReportItemAdapter
(
List
<
Se
ctionTextItem3
>
settlementReportItems
)
{
mSettlementReportItemList
.
clear
();
mSettlementReportItemList
.
addAll
(
settlementReportItems
);
mSettlementReportItemAdapter
.
notifyDataSetChanged
();
}
public
void
notifyReportItem5Adapter
(
List
<
Se
ttlementRepor
tItem5
>
settlementReportItems
)
{
public
void
notifyReportItem5Adapter
(
List
<
Se
ctionTex
tItem5
>
settlementReportItems
)
{
mSettlementReportItem5List
.
clear
();
mSettlementReportItem5List
.
addAll
(
settlementReportItems
);
mSettlementReportItem5Adapter
.
notifyDataSetChanged
();
...
...
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/NewMainActivity.java
View file @
82e6ac03
...
...
@@ -205,7 +205,8 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
functions
.
add
(
new
Function
((
long
)
141
,
150
,
5
,
"預點餐模式"
,
R
.
drawable
.
ic_pre_order_mode
));
functions
.
add
(
new
Function
((
long
)
151
,
0
,
5
,
"管理"
,
0
));
functions
.
add
(
new
Function
((
long
)
142
,
151
,
5
,
"餐牌管理"
,
R
.
drawable
.
ic_meals_menu_management
));
// functions.add(new Function((long) 142, 151, 5, "餐牌管理", R.drawable.ic_meals_menu_management));
functions
.
add
(
new
Function
((
long
)
142
,
151
,
5
,
"賬單管理"
,
R
.
drawable
.
ic_meals_menu_management
));
functions
.
add
(
new
Function
((
long
)
143
,
151
,
5
,
"餐臺管理"
,
R
.
drawable
.
ic_dining_table_management
));
functions
.
add
(
new
Function
((
long
)
144
,
151
,
5
,
"打印管理"
,
R
.
drawable
.
ic_print_management
));
functions
.
add
(
new
Function
((
long
)
145
,
151
,
5
,
"支付管理"
,
R
.
drawable
.
ic_pay_management
));
...
...
@@ -264,7 +265,7 @@ public class NewMainActivity extends BaseActivity<NewMainPresenter> implements N
.
setActionName
(
"showPrintActivity"
)
.
build
()
.
call
();
}
else
if
(
name
.
equals
(
"
餐牌
管理"
))
{
}
else
if
(
name
.
equals
(
"
賬單
管理"
))
{
CC
.
obtainBuilder
(
"Component.Table"
)
.
setActionName
(
"showOrderCenterActivity"
)
.
build
()
...
...
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/SettlementReportActivity.java
View file @
82e6ac03
...
...
@@ -24,8 +24,8 @@ import com.gingersoft.gsa.cloud.main.R2;
import
com.gingersoft.gsa.cloud.main.di.component.DaggerSettlementReportComponent
;
import
com.gingersoft.gsa.cloud.main.mvp.contract.SettlementReportContract
;
import
com.gingersoft.gsa.cloud.main.mvp.model.bean.SettlementReport
;
import
com.gingersoft.gsa.cloud.
main.mvp.model.bean.SettlementReportItem
;
import
com.gingersoft.gsa.cloud.
main.mvp.model.bean.SettlementRepor
tItem5
;
import
com.gingersoft.gsa.cloud.
ui.bean.view.SectionTextItem3
;
import
com.gingersoft.gsa.cloud.
ui.bean.view.SectionTex
tItem5
;
import
com.gingersoft.gsa.cloud.main.mvp.presenter.SettlementReportPresenter
;
import
com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog
;
import
com.jess.arms.base.BaseActivity
;
...
...
@@ -226,8 +226,8 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
@Override
public
void
returnSettlementData
(
SettlementReport
.
DataBean
datasBean
)
{
List
<
Se
ttlementReportItem
>
settlementReportItems
=
new
ArrayList
<>();
List
<
Se
ttlementRepor
tItem5
>
settlementReportItem5s
=
new
ArrayList
<>();
List
<
Se
ctionTextItem3
>
settlementReportItems
=
new
ArrayList
<>();
List
<
Se
ctionTex
tItem5
>
settlementReportItem5s
=
new
ArrayList
<>();
String
lastSettlementText
=
LanguageUtils
.
get_language_system
(
this
,
""
,
"上次清機時間:"
);
String
dailyBusinessReportText
=
LanguageUtils
.
get_language_system
(
this
,
""
,
"每日營業報表"
);
...
...
@@ -266,21 +266,21 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
SettlementReport
.
DataBean
.
VoBean
voBean
=
datasBean
.
getVo
();
if
(
voBean
!=
null
)
{
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
projectTotalSalesText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
voBean
.
getPrices
())));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
netTurnoverText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
voBean
.
getTotamount
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
projectTotalSalesText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
voBean
.
getPrices
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
netTurnoverText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
voBean
.
getTotamount
())));
// if (voBean.getPayNum() > 0) {
// String creditCardText = LanguageUtils.get_language_system(this, "credit.card", "信用卡");
// Se
ttlementReportItem5 printItem = new SettlementRepor
tItem5(creditCardText, String.valueOf(voBean.getPayNum()), " "," ","$" + df.format(voBean.getPayamount()));
// Se
ctionTextItem5 printItem = new SectionTex
tItem5(creditCardText, String.valueOf(voBean.getPayNum()), " "," ","$" + df.format(voBean.getPayamount()));
// settlementReportItem5s.add(printItem);
// }
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
" "
,
" "
,
" "
,
" "
,
" "
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
cashAuditText
,
" "
,
" "
,
" "
,
" "
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
netTurnoverText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
voBean
.
getPrices
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
" "
,
" "
,
" "
,
" "
,
" "
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
cashAuditText
,
" "
,
" "
,
" "
,
" "
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
netTurnoverText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
voBean
.
getPrices
())));
List
<
SettlementReport
.
DataBean
.
CashBean
>
cashList
=
datasBean
.
getCash
();
if
(
cashList
!=
null
&&
cashList
.
size
()
>
0
)
{
for
(
int
i
=
0
;
i
<
cashList
.
size
();
i
++)
{
SettlementReport
.
DataBean
.
CashBean
cashBean
=
cashList
.
get
(
i
);
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
cashBean
.
getPayName
(),
" "
,
String
.
valueOf
(
cashBean
.
getPayNum
()),
" "
,
"$"
+
df
.
format
(
cashBean
.
getPayAmount
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
cashBean
.
getPayName
(),
" "
,
String
.
valueOf
(
cashBean
.
getPayNum
()),
" "
,
"$"
+
df
.
format
(
cashBean
.
getPayAmount
())));
}
}
}
...
...
@@ -291,34 +291,34 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
/**現金詳情*/
String
cashDetailText
=
LanguageUtils
.
get_language_system
(
this
,
"credit.cash.detail"
,
"現金詳情"
);
String
cashText
=
LanguageUtils
.
get_language_system
(
this
,
"credit.cash"
,
"現金"
);
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
" "
,
" "
,
cashDetailText
,
" "
,
" "
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
cashText
,
" "
,
String
.
valueOf
(
cashBean
.
getPayNum
()),
" "
,
"$"
+
df
.
format
(
cashBean
.
getPayAmount
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
" "
,
" "
,
cashDetailText
,
" "
,
" "
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
cashText
,
" "
,
String
.
valueOf
(
cashBean
.
getPayNum
()),
" "
,
"$"
+
df
.
format
(
cashBean
.
getPayAmount
())));
//統計
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
headcountOrAverageConsumptionText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
cashBean
.
getPayAmount
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
headcountOrAverageConsumptionText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
cashBean
.
getPayAmount
())));
}
if
(
voBean
!=
null
)
{
/**分析統計*/
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
""
,
""
,
analysisStatisticsText
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
""
,
""
,
analysisStatisticsText
,
""
,
""
));
//帳單金額總數
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
totalbillAmountText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
voBean
.
getTotamount
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
totalbillAmountText
,
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
voBean
.
getTotamount
())));
//帳單數目 / 平均
String
averagePrice
=
df
.
format
(
voBean
.
getPrices
()
/
voBean
.
getNum
());
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
numberBillsOrAverageText
,
" "
,
String
.
valueOf
(
voBean
.
getNum
()),
" "
,
"$"
+
averagePrice
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
numberBillsOrAverageText
,
" "
,
String
.
valueOf
(
voBean
.
getNum
()),
" "
,
"$"
+
averagePrice
));
//人數 / 平均消費
String
averageConsumption
=
df
.
format
(
voBean
.
getPrices
()
/
voBean
.
getPerson
());
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
headcountAndAverageConsumptionText
,
" "
,
String
.
valueOf
(
voBean
.
getPerson
()),
" "
,
"$"
+
averageConsumption
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
headcountAndAverageConsumptionText
,
" "
,
String
.
valueOf
(
voBean
.
getPerson
()),
" "
,
"$"
+
averageConsumption
));
/** 帳單統計*/
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
""
,
""
,
"帳單統計"
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"類別"
,
"帳單"
,
"金額"
,
"平均"
,
"金額%"
));
// settlementReportItem5s.add(new Se
ttlementRepor
tItem5("--------------------------------------------------------------------------------", "", "", "", ""));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
""
,
""
,
"帳單統計"
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"類別"
,
"帳單"
,
"金額"
,
"平均"
,
"金額%"
));
// settlementReportItem5s.add(new Se
ctionTex
tItem5("--------------------------------------------------------------------------------", "", "", "", ""));
//總計
String
averagePrice2
=
df
.
format
(
voBean
.
getTotamount
()
/
voBean
.
getNum
());
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
totalText
,
String
.
valueOf
(
voBean
.
getNum
()),
"$"
+
df
.
format
(
voBean
.
getTotamount
()),
"$"
+
averagePrice2
,
" "
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
totalText
,
String
.
valueOf
(
voBean
.
getNum
()),
"$"
+
df
.
format
(
voBean
.
getTotamount
()),
"$"
+
averagePrice2
,
" "
));
}
List
<
SettlementReport
.
DataBean
.
AnalysisBean
>
analysisBeanList
=
datasBean
.
getAnalysis
();
...
...
@@ -327,18 +327,18 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
Map
<
String
,
SettlementReport
.
DataBean
.
AnalysisBean
>
analysisBeanMap
=
getAnalysisBeanMap
(
analysisBeanList
);
/**賬單現況*/
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
""
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
""
,
""
,
"賬單現況"
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"項目"
,
"帳單"
,
"人數"
,
" "
,
"金額"
));
// settlementReportItem5s.add(new Se
ttlementRepor
tItem5("--------------------------------------------------------------------------------", "", "", "", ""));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
""
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
""
,
""
,
"賬單現況"
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"項目"
,
"帳單"
,
"人數"
,
" "
,
"金額"
));
// settlementReportItem5s.add(new Se
ctionTex
tItem5("--------------------------------------------------------------------------------", "", "", "", ""));
//未完成帳單
double
item5Amount
=
0.0
;
int
item5num
=
0
;
int
item5PeopleNum
=
0
;
if
(
analysisBeanMap
.
containsKey
(
outstandingBillText
))
{
SettlementReport
.
DataBean
.
AnalysisBean
analysisBean
=
analysisBeanMap
.
get
(
outstandingBillText
);
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
analysisBean
.
getTypeName
(),
String
.
valueOf
(
analysisBean
.
getNum
()),
String
.
valueOf
(
analysisBean
.
getNum
()),
" "
,
"$"
+
df
.
format
(
analysisBean
.
getAmount
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
analysisBean
.
getTypeName
(),
String
.
valueOf
(
analysisBean
.
getNum
()),
String
.
valueOf
(
analysisBean
.
getNum
()),
" "
,
"$"
+
df
.
format
(
analysisBean
.
getAmount
())));
item5Amount
+=
analysisBean
.
getAmount
();
item5num
+=
analysisBean
.
getNum
();
item5PeopleNum
+=
analysisBean
.
getNum
();
...
...
@@ -346,13 +346,13 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
//已收款帳單
if
(
analysisBeanMap
.
containsKey
(
billsReceivedText
))
{
SettlementReport
.
DataBean
.
AnalysisBean
analysisBean
=
analysisBeanMap
.
get
(
billsReceivedText
);
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
analysisBean
.
getTypeName
(),
String
.
valueOf
(
analysisBean
.
getNum
()),
String
.
valueOf
(
analysisBean
.
getNum
()),
" "
,
"$"
+
df
.
format
(
analysisBean
.
getAmount
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
analysisBean
.
getTypeName
(),
String
.
valueOf
(
analysisBean
.
getNum
()),
String
.
valueOf
(
analysisBean
.
getNum
()),
" "
,
"$"
+
df
.
format
(
analysisBean
.
getAmount
())));
item5Amount
+=
analysisBean
.
getAmount
();
item5num
+=
analysisBean
.
getNum
();
item5PeopleNum
+=
analysisBean
.
getNum
();
}
//總計
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
totalText
,
String
.
valueOf
(
item5PeopleNum
),
String
.
valueOf
(
item5num
),
" "
,
"$"
+
df
.
format
(
item5Amount
)));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
totalText
,
String
.
valueOf
(
item5PeopleNum
),
String
.
valueOf
(
item5num
),
" "
,
"$"
+
df
.
format
(
item5Amount
)));
/**本月累計營業額*/
...
...
@@ -360,23 +360,23 @@ public class SettlementReportActivity extends BaseActivity<SettlementReportPrese
SettlementReport
.
DataBean
.
AnalysisBean
analysisBean
=
analysisBeanMap
.
get
(
cumulativeTurnoverMonthText
);
String
firstDayOfMonth
=
TimeUtil
.
getFirstDayOfMonth
(
TimeUtil
.
dateFormatYMD
)
+
"00:00:00"
;
String
currentDate
=
TimeUtil
.
getCurrentDate
(
TimeUtil
.
dateFormatYMDHMS
);
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
""
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
cumulativeTurnoverMonthText
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
byBusinessDateText
+
firstDayOfMonth
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
toBusinessDateText
+
currentDate
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
netTurnoverText
,
" "
+
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
analysisBean
.
getAmount
())));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
""
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
cumulativeTurnoverMonthText
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
byBusinessDateText
+
firstDayOfMonth
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
toBusinessDateText
+
currentDate
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
netTurnoverText
,
" "
+
" "
,
" "
,
" "
,
"$"
+
df
.
format
(
analysisBean
.
getAmount
())));
}
/**報表完結*/
String
memberName
=
GsaCloudApplication
.
getMemberName
(
this
);
String
currentDate
=
TimeUtils
.
getCurrentDate
(
TimeUtils
.
dateFormatYMDHMS
);
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
""
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"報表完結"
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
"讀取人員 "
+
memberName
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
currentDate
+
" v"
+
DeviceUtils
.
getVersionName
(
this
),
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ttlementRepor
tItem5
(
""
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
""
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"=============================================================="
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"報表完結"
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
"讀取人員 "
+
memberName
,
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
currentDate
+
" v"
+
DeviceUtils
.
getVersionName
(
this
),
""
,
""
,
""
,
""
));
settlementReportItem5s
.
add
(
new
Se
ctionTex
tItem5
(
""
,
""
,
""
,
""
,
""
));
}
mPresenter
.
notifyReportItem5Adapter
(
settlementReportItem5s
);
...
...
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/adapter/SettlementReportItem5Adapter.java
View file @
82e6ac03
...
...
@@ -7,13 +7,12 @@ import android.widget.TextView;
import
com.gingersoft.gsa.cloud.main.R
;
import
com.gingersoft.gsa.cloud.main.R2
;
import
com.gingersoft.gsa.cloud.
main.mvp.model.bean.SettlementRepor
tItem5
;
import
com.gingersoft.gsa.cloud.
ui.bean.view.SectionTex
tItem5
;
import
com.jess.arms.base.BaseHolder
;
import
com.jess.arms.base.DefaultAdapter
;
import
java.util.List
;
import
butterknife.BindView
;
import
butterknife.BindViews
;
/**
...
...
@@ -24,11 +23,11 @@ import butterknife.BindViews;
* 描述:
*/
public
class
SettlementReportItem5Adapter
extends
DefaultAdapter
<
Se
ttlementRepor
tItem5
>
{
public
class
SettlementReportItem5Adapter
extends
DefaultAdapter
<
Se
ctionTex
tItem5
>
{
private
Context
mContext
;
public
SettlementReportItem5Adapter
(
Context
context
,
List
<
Se
ttlementRepor
tItem5
>
infos
)
{
public
SettlementReportItem5Adapter
(
Context
context
,
List
<
Se
ctionTex
tItem5
>
infos
)
{
super
(
infos
);
this
.
mContext
=
context
;
}
...
...
@@ -39,7 +38,7 @@ public class SettlementReportItem5Adapter extends DefaultAdapter<SettlementRepor
}
@Override
public
BaseHolder
<
Se
ttlementRepor
tItem5
>
getHolder
(
View
v
,
int
viewType
)
{
public
BaseHolder
<
Se
ctionTex
tItem5
>
getHolder
(
View
v
,
int
viewType
)
{
return
new
SettlementReportItemHolder
(
v
);
}
...
...
@@ -48,7 +47,7 @@ public class SettlementReportItem5Adapter extends DefaultAdapter<SettlementRepor
return
R
.
layout
.
item_settlement_report5
;
}
class
SettlementReportItemHolder
extends
BaseHolder
<
Se
ttlementRepor
tItem5
>
{
class
SettlementReportItemHolder
extends
BaseHolder
<
Se
ctionTex
tItem5
>
{
@BindViews
({
R2
.
id
.
tv_item1
,
R2
.
id
.
tv_item2
,
R2
.
id
.
tv_item3
,
R2
.
id
.
tv_item4
,
R2
.
id
.
tv_item5
})
TextView
[]
tv_items
;
...
...
@@ -58,7 +57,7 @@ public class SettlementReportItem5Adapter extends DefaultAdapter<SettlementRepor
}
@Override
public
void
setData
(
Se
ttlementRepor
tItem5
reportItem
,
int
position
)
{
public
void
setData
(
Se
ctionTex
tItem5
reportItem
,
int
position
)
{
if
(!
TextUtils
.
isEmpty
(
reportItem
.
getItem1
())){
tv_items
[
0
].
setText
(
reportItem
.
getItem1
());
tv_items
[
0
].
setVisibility
(
View
.
VISIBLE
);
...
...
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/adapter/SettlementReportItemAdapter.java
View file @
82e6ac03
...
...
@@ -6,7 +6,7 @@ import android.widget.TextView;
import
com.gingersoft.gsa.cloud.main.R
;
import
com.gingersoft.gsa.cloud.main.R2
;
import
com.gingersoft.gsa.cloud.
main.mvp.model.bean.SettlementReportItem
;
import
com.gingersoft.gsa.cloud.
ui.bean.view.SectionTextItem3
;
import
com.jess.arms.base.BaseHolder
;
import
com.jess.arms.base.DefaultAdapter
;
import
java.util.List
;
...
...
@@ -20,11 +20,11 @@ import butterknife.BindView;
* 描述:
*/
public
class
SettlementReportItemAdapter
extends
DefaultAdapter
<
Se
ttlementReportItem
>
{
public
class
SettlementReportItemAdapter
extends
DefaultAdapter
<
Se
ctionTextItem3
>
{
private
Context
mContext
;
public
SettlementReportItemAdapter
(
Context
context
,
List
<
Se
ttlementReportItem
>
infos
)
{
public
SettlementReportItemAdapter
(
Context
context
,
List
<
Se
ctionTextItem3
>
infos
)
{
super
(
infos
);
this
.
mContext
=
context
;
}
...
...
@@ -35,7 +35,7 @@ public class SettlementReportItemAdapter extends DefaultAdapter<SettlementReport
}
@Override
public
BaseHolder
<
Se
ttlementReportItem
>
getHolder
(
View
v
,
int
viewType
)
{
public
BaseHolder
<
Se
ctionTextItem3
>
getHolder
(
View
v
,
int
viewType
)
{
return
new
SettlementReportItemHolder
(
v
);
}
...
...
@@ -44,7 +44,7 @@ public class SettlementReportItemAdapter extends DefaultAdapter<SettlementReport
return
R
.
layout
.
item_settlement_report
;
}
class
SettlementReportItemHolder
extends
BaseHolder
<
Se
ttlementReportItem
>
{
class
SettlementReportItemHolder
extends
BaseHolder
<
Se
ctionTextItem3
>
{
@BindView
(
R2
.
id
.
tv_left
)
TextView
tv_left
;
...
...
@@ -58,7 +58,7 @@ public class SettlementReportItemAdapter extends DefaultAdapter<SettlementReport
}
@Override
public
void
setData
(
Se
ttlementReportItem
reportItem
,
int
position
)
{
public
void
setData
(
Se
ctionTextItem3
reportItem
,
int
position
)
{
tv_left
.
setText
(
reportItem
.
getLeftText
());
tv_center
.
setText
(
reportItem
.
getCenterText
());
...
...
public-base/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderBean.java
View file @
82e6ac03
...
...
@@ -21,21 +21,18 @@ public class OrderBean {
* orderDetails : [{"id":1621502,"productName":"胡椒排骨涼瓜煲","productId":"4257","price":58,"lunchboxPrice":0,"number":1,"createTime":"Jan 14, 2020 8:00:11 PM","status":0},{"id":1621503,"productName":"海南雞(例牌)","productId":"4258","price":83,"lunchboxPrice":0,"number":1,"createTime":"Jan 14, 2020 8:00:11 PM","status":0}]
*/
private
int
id
;
private
long
id
;
private
String
orderNo
;
private
int
status
;
private
int
person
;
private
double
totalAmount
;
private
double
totalPoints
;
/**生成訂單時間*/
private
String
createTime
;
private
List
<
OrderDetailsBean
>
orderDetails
;
public
OrderBean
()
{
}
public
OrderBean
(
int
orderId
)
{
this
.
id
=
orderId
;
}
public
OrderBean
(
OrderBean
orderBean
)
{
this
.
id
=
orderBean
.
id
;
this
.
status
=
orderBean
.
status
;
...
...
@@ -44,11 +41,14 @@ public class OrderBean {
this
.
createTime
=
orderBean
.
createTime
;
}
public
int
getId
()
{
public
OrderBean
(
int
orderId
)
{
this
.
id
=
orderId
;
}
public
long
getId
()
{
return
id
;
}
public
void
setId
(
int
id
)
{
public
void
setId
(
long
id
)
{
this
.
id
=
id
;
}
...
...
@@ -128,7 +128,7 @@ public class OrderBean {
private
double
price
;
private
double
lunchboxPrice
;
private
int
number
;
//
private String createTime;
private
String
createTime
;
private
int
status
;
private
byte
type
;
...
...
@@ -217,13 +217,13 @@ public class OrderBean {
this
.
number
=
number
;
}
//
public String getCreateTime() {
//
return createTime;
//
}
//
//
public void setCreateTime(String createTime) {
//
this.createTime = createTime;
//
}
public
String
getCreateTime
()
{
return
createTime
;
}
public
void
setCreateTime
(
String
createTime
)
{
this
.
createTime
=
createTime
;
}
public
int
getStatus
()
{
return
status
;
...
...
public-base/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/mealManage/MyOrderManage.java
View file @
82e6ac03
...
...
@@ -48,25 +48,17 @@ public class MyOrderManage {
private
int
mseq
=
0
;
//三级序
private
OrderBean
orderBean
;
/
/食品列表
/
**食品列表*/
private
List
<
OrderDetail
>
orderFoodList
=
new
ArrayList
<>();
/
/本次送單食品,用於打印
/
**本次送單食品,用於打印*/
private
List
<
OrderDetail
>
newFoodList
=
new
ArrayList
<>();
// private List<DatasBean> comboOrders = new ArrayList<>();
// private List<MixOldOrder> MixOldOrders = new ArrayList<>();
// private List<MixComboGroupDiscount.DatasBean> mixComboGroup_Discounts;
// private List<MixComboGroup.DatasBean> MixComboGroups;
/**本次支付方式,用於打印*/
private
List
<
PayMethod
>
billMoney
=
new
ArrayList
<>();
private
int
lastTimeChangeNumber
=
1
;
private
boolean
allowAddAutoDiscount
=
false
;
/**是不是修改訂單操作*/
private
boolean
modifyOrder
=
false
;
public
static
final
int
ADD_OPERAT
=
1
;
public
static
final
int
DELETE_OPERAT
=
2
;
public
int
getOrderId
()
{
public
long
getOrderId
()
{
if
(
orderBean
!=
null
)
{
return
orderBean
.
getId
();
}
...
...
@@ -99,7 +91,7 @@ public class MyOrderManage {
orderBean
=
new
OrderBean
();
}
if
(
orderBean
!=
null
)
{
orderBean
.
setId
((
int
)
orderId
);
orderBean
.
setId
((
long
)
orderId
);
}
}
...
...
@@ -1016,6 +1008,14 @@ public class MyOrderManage {
if
(
orderFoodList
!=
null
)
{
orderFoodList
.
clear
();
}
if
(
newFoodList
!=
null
)
{
newFoodList
.
clear
();
}
if
(
billMoney
!=
null
)
{
billMoney
.
clear
();
}
orderBean
=
null
;
modifyOrder
=
false
;
}
public
boolean
isOverMaxQty
()
{
...
...
@@ -1123,6 +1123,9 @@ public class MyOrderManage {
}
public
List
<
OrderDetail
>
getOrderFoodList
()
{
if
(
orderFoodList
==
null
)
{
orderFoodList
=
new
ArrayList
<>();
}
return
orderFoodList
;
}
...
...
@@ -1174,12 +1177,13 @@ public class MyOrderManage {
// this.selectMealAdapter = selectMealAdapter;
// }
public
boolean
isAllowAddAutoDiscount
()
{
return
allowAddAutoDiscount
;
public
boolean
isModifyOrder
()
{
return
modifyOrder
;
}
public
void
set
AllowAddAutoDiscount
(
boolean
allowAddAutoDiscount
)
{
this
.
allowAddAutoDiscount
=
allowAddAutoDiscount
;
public
void
set
ModifyOrder
(
boolean
modifyOrder
)
{
this
.
modifyOrder
=
modifyOrder
;
}
public
List
<
PayMethod
>
getBillMoney
()
{
...
...
public-base/src/main/java/com/gingersoft/gsa/cloud/base/utils/crash/AppCrashHandler.java
View file @
82e6ac03
...
...
@@ -176,8 +176,8 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
System
.
arraycopy
(
trace
,
0
,
trace2
,
0
,
trace
.
length
);
trace2
[
trace
.
length
+
0
]
=
new
StackTraceElement
(
"Android"
,
"MODEL"
,
Build
.
MODEL
,
-
1
);
trace2
[
trace
.
length
+
1
]
=
new
StackTraceElement
(
"Android"
,
"VERSION"
,
Build
.
VERSION
.
RELEASE
,
-
1
);
trace2
[
trace
.
length
+
2
]
=
new
StackTraceElement
(
"G
SA-SUPER
"
,
"APP_VERSION_CODE"
,
AppUtils
.
getVerCode
(
mContext
)
+
""
,
-
1
);
trace2
[
trace
.
length
+
3
]
=
new
StackTraceElement
(
"G
SA-SUPER
"
,
"APP_VERSION_NAME"
,
AppUtils
.
getVerName
(
mContext
),
-
1
);
trace2
[
trace
.
length
+
2
]
=
new
StackTraceElement
(
"G
sa-Could
"
,
"APP_VERSION_CODE"
,
AppUtils
.
getVerCode
(
mContext
)
+
""
,
-
1
);
trace2
[
trace
.
length
+
3
]
=
new
StackTraceElement
(
"G
sa-Could
"
,
"APP_VERSION_NAME"
,
AppUtils
.
getVerName
(
mContext
),
-
1
);
trace2
[
trace
.
length
+
4
]
=
new
StackTraceElement
(
"Android"
,
"FINGERPRINT"
,
Build
.
FINGERPRINT
,
-
1
);
// 追加信息,因为后面会回调默认的处理方法
ex
.
setStackTrace
(
trace2
);
...
...
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/model/bean/SettlementReportItem
.java
→
public-base/src/main/java/com/gingersoft/gsa/cloud/ui/bean/view/SectionTextItem3
.java
View file @
82e6ac03
package
com
.
gingersoft
.
gsa
.
cloud
.
main
.
mvp
.
model
.
bean
;
package
com
.
gingersoft
.
gsa
.
cloud
.
ui
.
bean
.
view
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* 作者:ELEGANT_BIN
...
...
@@ -7,14 +13,16 @@ package com.gingersoft.gsa.cloud.main.mvp.model.bean;
* 修订历史:2020-03-04
* 描述:
*/
public
class
Se
ttlementReportItem
{
public
class
Se
ctionTextItem3
{
private
String
leftText
;
private
String
centerText
;
private
String
rightText
;
public
SectionTextItem3
()
{
}
public
Se
ttlementReportItem
(
String
leftText
,
String
centerText
,
String
rightText
)
{
public
Se
ctionTextItem3
(
String
leftText
,
String
centerText
,
String
rightText
)
{
this
.
leftText
=
leftText
;
this
.
centerText
=
centerText
;
this
.
rightText
=
rightText
;
...
...
@@ -43,4 +51,42 @@ public class SettlementReportItem {
public
void
setRightText
(
String
rightText
)
{
this
.
rightText
=
rightText
;
}
public
static
List
<
SectionTextItem3
>
orderDetailTransSectionTextItem3
(
List
<
OrderDetail
>
orderDetailList
)
{
List
<
SectionTextItem3
>
sectionTextItem3List
=
new
ArrayList
<>();
for
(
OrderDetail
orderDetail
:
orderDetailList
)
{
SectionTextItem3
sectionTextItem3
=
new
SectionTextItem3
();
String
foodName
;
switch
(
orderDetail
.
getItemType
())
{
case
2
:
foodName
=
" "
+
orderDetail
.
getProductName
();
break
;
case
3
:
foodName
=
" "
+
orderDetail
.
getProductName
();
break
;
default
:
foodName
=
orderDetail
.
getProductName
();
break
;
}
sectionTextItem3
.
setLeftText
(
foodName
);
sectionTextItem3
.
setCenterText
(
String
.
valueOf
(
orderDetail
.
getNumber
()));
sectionTextItem3
.
setRightText
(
String
.
valueOf
(
orderDetail
.
getPrice
()
*
orderDetail
.
getNumber
()));
sectionTextItem3List
.
add
(
sectionTextItem3
);
}
return
sectionTextItem3List
;
}
public
static
List
<
SectionTextItem3
>
orderPayMethodTransSectionTextItem3
(
List
<
PayMethod
>
payMethodList
)
{
List
<
SectionTextItem3
>
sectionTextItem3List
=
new
ArrayList
<>();
for
(
PayMethod
payMethod
:
payMethodList
)
{
SectionTextItem3
sectionTextItem3
=
new
SectionTextItem3
();
sectionTextItem3
.
setLeftText
(
payMethod
.
getPayName
());
sectionTextItem3
.
setCenterText
(
String
.
valueOf
(
0
));
sectionTextItem3
.
setRightText
(
String
.
valueOf
(
payMethod
.
getPayMoney
()));
sectionTextItem3List
.
add
(
sectionTextItem3
);
}
return
sectionTextItem3List
;
}
}
main/src/main/java/com/gingersoft/gsa/cloud/main/mvp/model/bean/SettlementRepor
tItem5.java
→
public-base/src/main/java/com/gingersoft/gsa/cloud/ui/bean/view/SectionTex
tItem5.java
View file @
82e6ac03
package
com
.
gingersoft
.
gsa
.
cloud
.
main
.
mvp
.
model
.
bean
;
package
com
.
gingersoft
.
gsa
.
cloud
.
ui
.
bean
.
view
;
/**
* 作者:ELEGANT_BIN
...
...
@@ -7,7 +7,7 @@ package com.gingersoft.gsa.cloud.main.mvp.model.bean;
* 修订历史:2020-03-04
* 描述:
*/
public
class
Se
ttlementRepor
tItem5
{
public
class
Se
ctionTex
tItem5
{
private
String
item1
;
private
String
item2
;
...
...
@@ -15,7 +15,7 @@ public class SettlementReportItem5 {
private
String
item4
;
private
String
item5
;
public
Se
ttlementRepor
tItem5
(
String
item1
,
String
item2
,
String
item3
,
String
item4
,
String
item5
)
{
public
Se
ctionTex
tItem5
(
String
item1
,
String
item2
,
String
item3
,
String
item4
,
String
item5
)
{
this
.
item1
=
item1
;
this
.
item2
=
item2
;
this
.
item3
=
item3
;
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/AllOrderContract.java
View file @
82e6ac03
...
...
@@ -21,8 +21,11 @@ public interface AllOrderContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface
View
extends
IView
{
void
showEmptyView
(
boolean
isSuccess
,
int
size
,
Throwable
t
);
void
setAllOrderAdapter
(
DefaultAdapter
adapter
);
byte
getStatus
();
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/MealStandContract.java
View file @
82e6ac03
...
...
@@ -104,7 +104,7 @@ public interface MealStandContract {
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface
Model
extends
BaseOrderContract
.
Model
{
Observable
<
BaseRespose
>
loadOrder
(
int
orderId
);
Observable
<
BaseRespose
>
loadOrder
(
long
orderId
);
// Observable<BaseResult> createOrder(RequestBody requestBody);
//
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderCenterContract.java
View file @
82e6ac03
...
...
@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.table.mvp.contract;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllOrderFragment
;
import
com.jess.arms.mvp.IView
;
import
com.jess.arms.mvp.IModel
;
...
...
@@ -34,6 +35,8 @@ public interface OrderCenterContract {
int
getPageIndex
();
AllOrderFragment
getCurrentOrderFragment
();
int
getPageSize
();
}
...
...
@@ -41,6 +44,9 @@ public interface OrderCenterContract {
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface
Model
extends
IModel
{
Observable
<
BaseResult
>
loadOrderList
(
int
restaurantId
,
int
pageIndex
,
int
pageSize
);
Observable
<
BaseResult
>
loadOrderList
(
int
restaurantId
,
byte
status
,
int
pageIndex
,
int
pageSize
);
Observable
<
BaseResult
>
cancelOrder
(
long
orderId
,
int
restaurantId
,
byte
status
);
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderContentContract.java
View file @
82e6ac03
...
...
@@ -51,7 +51,7 @@ public interface OrderContentContract {
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface
Model
extends
BaseOrderContract
.
Model
{
Observable
<
BaseRespose
>
loadOrder
(
int
orderId
);
Observable
<
BaseRespose
>
loadOrder
(
long
orderId
);
// Observable<BaseResult> createOrder(RequestBody requestBody);
//
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderDetailContract.java
View file @
82e6ac03
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
contract
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.jess.arms.mvp.IView
;
import
com.jess.arms.mvp.IModel
;
import
io.reactivex.Observable
;
/**
* ================================================
...
...
@@ -20,10 +24,15 @@ public interface OrderDetailContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface
View
extends
IView
{
void
returnOrderDetail
(
OrderDetailItem
orderDetailItem
);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface
Model
extends
IModel
{
Observable
<
BaseResult
>
getOrderDetailItem
(
long
orderId
);
Observable
<
BaseResult
>
cancelOrder
(
long
orderId
);
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/MealStandModel.java
View file @
82e6ac03
...
...
@@ -104,7 +104,7 @@ public class MealStandModel extends BaseModel implements MealStandContract.Model
}
@Override
public
Observable
<
BaseRespose
>
loadOrder
(
int
orderId
)
{
public
Observable
<
BaseRespose
>
loadOrder
(
long
orderId
)
{
return
mRepositoryManager
.
obtainRetrofitService
(
MealService
.
class
)
.
loadOrder
(
orderId
);
}
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderCenterModel.java
View file @
82e6ac03
...
...
@@ -16,6 +16,7 @@ import javax.inject.Inject;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderCenterContract
;
import
io.reactivex.Observable
;
import
io.reactivex.functions.Function
;
/**
...
...
@@ -50,8 +51,23 @@ public class OrderCenterModel extends BaseModel implements OrderCenterContract.M
}
@Override
public
Observable
<
BaseResult
>
loadOrderList
(
int
restaurantId
,
int
pageIndex
,
int
pageSize
)
{
public
Observable
<
BaseResult
>
loadOrderList
(
int
restaurantId
,
byte
status
,
int
pageIndex
,
int
pageSize
)
{
return
mRepositoryManager
.
obtainRetrofitService
(
OrderService
.
class
)
.
loadOrderList
(
restaurantId
,
pageIndex
,
pageSize
);
.
loadOrderList
(
restaurantId
,
status
,
pageIndex
,
pageSize
);
}
@Override
public
Observable
<
BaseResult
>
cancelOrder
(
long
orderId
,
int
restaurantId
,
byte
status
)
{
return
mRepositoryManager
.
obtainRetrofitService
(
OrderService
.
class
)
.
cancelOrder
(
orderId
)
.
flatMap
(
new
Function
<
BaseResult
,
Observable
<
BaseResult
>>()
{
@Override
public
Observable
<
BaseResult
>
apply
(
BaseResult
info
)
throws
Exception
{
if
(
info
!=
null
&&
info
.
isSuccess
())
{
return
loadOrderList
(
restaurantId
,
status
,
0
,
10
);
}
return
null
;
}
});
}
}
\ No newline at end of file
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderContentModel.java
View file @
82e6ac03
...
...
@@ -50,7 +50,7 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
}
@Override
public
Observable
<
BaseRespose
>
loadOrder
(
int
orderId
)
{
public
Observable
<
BaseRespose
>
loadOrder
(
long
orderId
)
{
return
mRepositoryManager
.
obtainRetrofitService
(
MealService
.
class
)
.
loadOrder
(
orderId
);
}
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderDetailModel.java
View file @
82e6ac03
...
...
@@ -2,6 +2,10 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
import
android.app.Application
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose
;
import
com.gingersoft.gsa.cloud.table.mvp.model.service.OrderService
;
import
com.google.gson.Gson
;
import
com.jess.arms.integration.IRepositoryManager
;
import
com.jess.arms.mvp.BaseModel
;
...
...
@@ -12,6 +16,9 @@ import javax.inject.Inject;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract
;
import
io.reactivex.Observable
;
import
io.reactivex.functions.Function
;
/**
* ================================================
...
...
@@ -43,4 +50,25 @@ public class OrderDetailModel extends BaseModel implements OrderDetailContract.M
this
.
mGson
=
null
;
this
.
mApplication
=
null
;
}
@Override
public
Observable
<
BaseResult
>
getOrderDetailItem
(
long
orderId
)
{
return
mRepositoryManager
.
obtainRetrofitService
(
OrderService
.
class
)
.
getOrderDetail
(
orderId
);
}
@Override
public
Observable
<
BaseResult
>
cancelOrder
(
long
orderId
)
{
return
mRepositoryManager
.
obtainRetrofitService
(
OrderService
.
class
)
.
cancelOrder
(
orderId
)
.
flatMap
(
new
Function
<
BaseResult
,
Observable
<
BaseResult
>>()
{
@Override
public
Observable
<
BaseResult
>
apply
(
BaseResult
info
)
throws
Exception
{
if
(
info
!=
null
&&
info
.
isSuccess
())
{
return
getOrderDetailItem
(
orderId
);
}
return
null
;
}
});
}
}
\ No newline at end of file
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/OrderDetailItem.java
View file @
82e6ac03
...
...
@@ -22,23 +22,42 @@ public class OrderDetailItem implements Serializable {
/**
* id : 47040
* tableName : 4
* orderNo : gs200371144969589
* status : 0
* totalAmount : 10
* totalPoints : 0
* createTime : Mar 14, 2020 1:24:12 PM
* endTime : Mar 14, 2020 1:24:12 PM
* person : 2
* payName : 支付寶
* orderDetails : [{"id":1639952,"orderId":47040,"parentId":0,"productName":"包子","productId":"14520","price":5,"lunchboxPrice":0,"number":1,"type":3,"createTime":"Mar 14, 2020 2:55:02 PM","status":0},{"id":1639953,"orderId":47040,"parentId":0,"productName":"燒麥","productId":"14522","price":5,"lunchboxPrice":0,"number":1,"type":3,"createTime":"Mar 14, 2020 2:55:02 PM","status":0}]
*/
private
long
id
;
private
String
tableName
;
private
String
orderNo
;
private
int
status
;
private
double
totalAmount
;
private
int
totalPoints
;
private
String
payName
;
/**生成訂單時間*/
private
String
createTime
;
/**結賬時間*/
private
String
endTime
;
private
int
person
;
private
List
<
OrderBean
.
OrderDetailsBean
>
orderDetails
;
/**
* 訂單狀態:0:未支付;1:待確認(已支付, 待餐廳確認);2:制作中(餐厅确认);3:派送中;4:确认收货(完成);5:是否评论;6:取消;
*/
public
static
final
byte
STATUS_UNPAID
=
0
;
public
static
final
byte
STATUS_NOT_CONFIRM
=
1
;
public
static
final
byte
STATUS_Making
=
2
;
public
static
final
byte
STATUS_Dispatching
=
3
;
public
static
final
byte
STATUS_CONFIRM
=
4
;
public
static
final
byte
STATUS_COMMENT
=
5
;
public
static
final
byte
STATUS_CANCEL
=
6
;
public
long
getId
()
{
return
id
;
}
...
...
@@ -47,6 +66,14 @@ public class OrderDetailItem implements Serializable {
this
.
id
=
id
;
}
public
String
getTableName
()
{
return
tableName
;
}
public
void
setTableName
(
String
tableName
)
{
this
.
tableName
=
tableName
;
}
public
String
getOrderNo
()
{
return
orderNo
;
}
...
...
@@ -55,6 +82,14 @@ public class OrderDetailItem implements Serializable {
this
.
orderNo
=
orderNo
;
}
public
String
getPayName
()
{
return
payName
;
}
public
void
setPayName
(
String
payName
)
{
this
.
payName
=
payName
;
}
public
int
getStatus
()
{
return
status
;
}
...
...
@@ -87,6 +122,14 @@ public class OrderDetailItem implements Serializable {
this
.
createTime
=
createTime
;
}
public
String
getEndTime
()
{
return
endTime
;
}
public
void
setEndTime
(
String
endTime
)
{
this
.
endTime
=
endTime
;
}
public
int
getPerson
()
{
return
person
;
}
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/request/AddOrderRequest.java
View file @
82e6ac03
...
...
@@ -15,14 +15,14 @@ import java.util.Map;
public
class
AddOrderRequest
{
private
int
orderId
;
private
long
orderId
;
private
Map
<
String
,
List
<
OrderBean
.
OrderDetailsBean
>>
maps
;
public
int
getOrderId
()
{
public
long
getOrderId
()
{
return
orderId
;
}
public
void
setOrderId
(
int
orderId
)
{
public
void
setOrderId
(
long
orderId
)
{
this
.
orderId
=
orderId
;
}
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/request/CreateOrderRequest.java
View file @
82e6ac03
...
...
@@ -17,6 +17,7 @@ public class CreateOrderRequest {
private
int
person
;
private
int
tableId
;
private
String
tableName
;
private
int
restaurantId
;
private
Map
<
Long
,
List
<
OrderBean
.
OrderDetailsBean
>>
orderDetails
;
...
...
@@ -36,6 +37,14 @@ public class CreateOrderRequest {
this
.
tableId
=
tableId
;
}
public
String
getTableName
()
{
return
tableName
;
}
public
void
setTableName
(
String
tableName
)
{
this
.
tableName
=
tableName
;
}
public
int
getRestaurantId
()
{
return
restaurantId
;
}
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/service/MealService.java
View file @
82e6ac03
...
...
@@ -28,7 +28,7 @@ public interface MealService {
@FormUrlEncoded
@POST
(
"order/get"
+
RetrofitUrlManager
.
IDENTIFICATION_PATH_SIZE
+
2
)
Observable
<
BaseRespose
>
loadOrder
(
@Field
(
"orderId"
)
int
orderId
);
Observable
<
BaseRespose
>
loadOrder
(
@Field
(
"orderId"
)
long
orderId
);
@POST
(
"orderDetails/delete"
+
RetrofitUrlManager
.
IDENTIFICATION_PATH_SIZE
+
2
)
Observable
<
BaseResult
>
deleteFood
(
@Body
RequestBody
requestBody
);
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/service/OrderService.java
View file @
82e6ac03
...
...
@@ -6,6 +6,8 @@ import io.reactivex.Observable;
import
me.jessyan.retrofiturlmanager.RetrofitUrlManager
;
import
okhttp3.RequestBody
;
import
retrofit2.http.Body
;
import
retrofit2.http.Field
;
import
retrofit2.http.FormUrlEncoded
;
import
retrofit2.http.GET
;
import
retrofit2.http.POST
;
import
retrofit2.http.Query
;
...
...
@@ -15,8 +17,14 @@ import retrofit2.http.Query;
*/
public
interface
OrderService
{
@FormUrlEncoded
@POST
(
"order/list"
+
RetrofitUrlManager
.
IDENTIFICATION_PATH_SIZE
+
2
)
Observable
<
BaseResult
>
loadOrderList
(
@
Query
(
"restaurantId"
)
int
restaurantId
,
@Query
(
"pageIndex"
)
int
pageIndex
,
@Query
(
"pageSize"
)
int
pageSize
);
Observable
<
BaseResult
>
loadOrderList
(
@
Field
(
"restaurantId"
)
int
restaurantId
,
@Field
(
"status"
)
byte
status
,
@Field
(
"pageIndex"
)
int
pageIndex
,
@Field
(
"pageSize"
)
int
pageSize
);
@GET
(
"order/pay/success"
+
RetrofitUrlManager
.
IDENTIFICATION_PATH_SIZE
+
2
)
Observable
<
BaseResult
>
getOrderDetail
(
@Query
(
"orderId"
)
long
orderId
);
@FormUrlEncoded
@POST
(
"order/cancel"
+
RetrofitUrlManager
.
IDENTIFICATION_PATH_SIZE
+
2
)
Observable
<
BaseResult
>
cancelOrder
(
@Field
(
"orderId"
)
long
orderId
);
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/AllOrderPresenter.java
View file @
82e6ac03
...
...
@@ -3,9 +3,19 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter;
import
android.app.Application
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.util.Log
;
import
android.view.View
;
import
com.billy.cc.core.component.CC
;
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.TableBean
;
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.table.R
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderDetailActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderCenterAdapter
;
...
...
@@ -21,6 +31,8 @@ import me.jessyan.rxerrorhandler.core.RxErrorHandler;
import
javax.inject.Inject
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.AllOrderContract
;
import
com.qmuiteam.qmui.widget.dialog.QMUIDialog
;
import
com.qmuiteam.qmui.widget.dialog.QMUIDialogAction
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
@@ -74,14 +86,80 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
mOrderCenterAdapter
=
new
OrderCenterAdapter
(
context
,
mOrderItemList
);
mRootView
.
setAllOrderAdapter
(
mOrderCenterAdapter
);
}
mOrderCenterAdapter
.
setOnItemClickListener
(
new
DefaultAdapter
.
OnRecyclerView
ItemClickListener
()
{
mOrderCenterAdapter
.
setOnItemClickListener
(
new
OrderCenterAdapter
.
On
ItemClickListener
()
{
@Override
public
void
onItemClick
(
View
view
,
int
viewType
,
Object
data
,
int
position
)
{
public
void
onItemClick
(
OrderDetailItem
datasBean
,
int
position
)
{
Intent
intent
=
new
Intent
(
IActivity
,
OrderDetailActivity
.
class
);
intent
.
putExtra
(
"orderDetailItem"
,
(
OrderDetailItem
)
data
);
intent
.
putExtra
(
"orderDetailItem"
,
datasBean
);
mRootView
.
launchActivity
(
intent
);
}
@Override
public
void
onPrintClick
(
OrderDetailItem
datasBean
,
int
position
)
{
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
datasBean
.
getOrderDetails
()));
startPrintOrder
(
datasBean
,
orderDetailList
);
}
@Override
public
void
onModifyClick
(
OrderDetailItem
datasBean
,
int
position
)
{
//設置為修改訂單操作
MyOrderManage
.
getInstance
().
setModifyOrder
(
true
);
/**
* 緩存訂單信息
*/
OrderBean
orderBean
=
new
OrderBean
();
orderBean
.
setId
(
datasBean
.
getId
());
orderBean
.
setStatus
(
datasBean
.
getStatus
());
orderBean
.
setOrderNo
(
datasBean
.
getOrderNo
());
orderBean
.
setPerson
(
datasBean
.
getPerson
());
orderBean
.
setCreateTime
(
datasBean
.
getCreateTime
());
MyOrderManage
.
getInstance
().
setOrderBean
(
orderBean
);
OpenTableManage
.
getDefault
().
setPeopleNumber
(
datasBean
.
getPerson
());
List
<
OrderBean
.
OrderDetailsBean
>
orderDetailsBeans
=
datasBean
.
getOrderDetails
();
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
MyOrderManage
.
getInstance
().
setOrderFoodList
(
orderDetailList
);
mRootView
.
launchActivity
(
new
Intent
(
IActivity
,
MealStandActivity
.
class
));
}
@Override
public
void
onCancelClick
(
OrderDetailItem
datasBean
,
int
position
)
{
showCancelDialog
(
datasBean
.
getId
());
}
});
}
private
void
showCancelDialog
(
long
orderId
)
{
QMUIDialog
.
MessageDialogBuilder
dialogBuilder
=
new
QMUIDialog
.
MessageDialogBuilder
(
IActivity
);
dialogBuilder
.
setTitle
(
"溫馨提示"
);
dialogBuilder
.
setMessage
(
"是否取消訂單?"
);
dialogBuilder
.
addAction
(
"取消"
,
(
dialog
,
index
)
->
dialog
.
dismiss
());
dialogBuilder
.
addAction
(
0
,
"確認"
,
QMUIDialogAction
.
ACTION_PROP_NEGATIVE
,
(
dialog
,
index
)
->
{
dialog
.
dismiss
();
IActivity
.
cancelOrder
(
orderId
,
mRootView
.
getStatus
());
});
dialogBuilder
.
create
(
R
.
style
.
MyDialogTheme2
).
show
();
}
private
void
startPrintOrder
(
OrderDetailItem
orderDetailItem
,
List
<
OrderDetail
>
orderDetailList
)
{
MyOrderManage
.
getInstance
().
setOrderFoodList
(
orderDetailList
);
MyOrderManage
.
getInstance
().
setOrderId
(
orderDetailItem
.
getId
());
OpenTableManage
.
getDefault
().
setPeopleNumber
(
orderDetailItem
.
getPerson
());
TableBean
.
DataBean
dataBean
=
new
TableBean
.
DataBean
();
dataBean
.
setTableName
(
orderDetailItem
.
getTableName
());
dataBean
.
setCreateTime
(
orderDetailItem
.
getCreateTime
());
OpenTableManage
.
getDefault
().
setTableBean
(
dataBean
);
CC
.
obtainBuilder
(
"Component.Print"
)
.
setActionName
(
"printActivity"
)
.
addParam
(
"type"
,
2
)
.
build
()
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
Log
.
e
(
"error"
,
"是否成功打印:"
+
result
.
isSuccess
());
MyOrderManage
.
getInstance
().
clear
();
OpenTableManage
.
getDefault
().
setPeopleNumber
(
0
);
OpenTableManage
.
getDefault
().
setTableBean
(
null
);
});
}
public
void
updateOrderData
(
List
<
OrderDetailItem
>
orderItemList
)
{
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/BaseOrderPresenter.java
View file @
82e6ac03
...
...
@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter;
import
android.app.Activity
;
import
android.app.Application
;
import
android.view.View
;
import
android.widget.TextView
;
import
com.billy.cc.core.component.CC
;
...
...
@@ -19,6 +20,7 @@ import com.gingersoft.gsa.cloud.table.mvp.model.bean.request.CreateOrderRequest;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderContentActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderMoneyAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.SelectMealAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.widget.ChooseNumberDialog
;
import
com.jess.arms.di.scope.ActivityScope
;
import
com.jess.arms.http.imageloader.ImageLoader
;
import
com.jess.arms.integration.AppManager
;
...
...
@@ -239,7 +241,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
return
false
;
}
//旧食品不可以修改数量
if
(
i
!=
0
&&
myOrderManage
.
getOrderFoodList
().
get
(
mSelectMealAdapter
.
getSelect_start_position
()).
isNew
()
==
false
)
{
if
(
myOrderManage
.
isModifyOrder
()
||
myOrderManage
.
getOrderFoodList
().
get
(
mSelectMealAdapter
.
getSelect_start_position
()).
isNew
()
==
false
&&
i
!=
0
)
{
return
false
;
}
if
(
mSelectMealAdapter
.
getSelect_position
()
==
-
1
)
{
...
...
@@ -250,12 +252,13 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
/**
* 送單
*
* @param isPrint 是否印單
*/
public
void
sendOrder
(
boolean
isPrint
)
{
if
(
MyOrderManage
.
getInstance
().
getOrderId
()
==
-
1
)
{
if
(
getFoodCount
()
==
0
)
{
showTip2Dialog
(
IActivity
,
noFoodDeliveryTip
,
isPrint
);
showTip2Dialog
(
IActivity
,
noFoodDeliveryTip
,
isPrint
);
}
else
{
if
(
mMealStandPresenter
!=
null
)
{
mMealStandPresenter
.
createOrder
();
...
...
@@ -337,6 +340,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
request
.
setOrderDetails
(
orderDetailBeanToFoodRequest
(
foodList
));
request
.
setPerson
(
OpenTableManage
.
getDefault
().
getPeopleNumber
());
request
.
setTableId
(
OpenTableManage
.
getDefault
().
getTableBean
().
getId
());
request
.
setTableName
(
OpenTableManage
.
getDefault
().
getTableBean
().
getTableName
());
request
.
setRestaurantId
(
restaurantId
);
return
request
;
}
...
...
@@ -531,7 +535,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
dialogBuilder
.
create
(
R
.
style
.
MyDialogTheme2
).
show
();
}
protected
void
showTip2Dialog
(
Activity
context
,
String
msg
,
boolean
isPrint
)
{
protected
void
showTip2Dialog
(
Activity
context
,
String
msg
,
boolean
isPrint
)
{
QMUIDialog
.
MessageDialogBuilder
dialogBuilder
=
new
QMUIDialog
.
MessageDialogBuilder
(
context
);
dialogBuilder
.
setTitle
(
"溫馨提示"
);
dialogBuilder
.
setMessage
(
msg
);
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/MealStandPresenter.java
View file @
82e6ac03
...
...
@@ -29,6 +29,7 @@ import com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodAdapter;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.FoodGroupAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ModifierAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.SelectMealAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.widget.ChooseNumberDialog
;
import
com.jess.arms.di.scope.ActivityScope
;
import
com.jess.arms.http.imageloader.ImageLoader
;
import
com.jess.arms.integration.AppManager
;
...
...
@@ -324,7 +325,6 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
// }
}
private
void
loadModifierData
(
long
fid
)
{
List
<
Modifier
>
modifierList
=
mModel
.
queryDB_ModifierList
(
fid
,
ModifierDaoUtils
.
modifierMode_Child
);
updateModifierData
(
modifierList
);
...
...
@@ -403,6 +403,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
/**
* 打印上菜紙
*
* @param initTable 是否是開台
*/
private
void
printSendOrder
(
boolean
initTable
)
{
...
...
@@ -412,12 +413,12 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
.
build
()
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
// if (result.isSuccess()) {
//打印成功
if
(
initTable
)
{
IActivity
.
returnTabl
eActivity
(
initTable
);
}
else
{
mRootView
.
killMyself
();
}
//打印成功
if
(
initTable
)
{
IActivity
.
returnBefor
eActivity
(
initTable
);
}
else
{
mRootView
.
killMyself
();
}
// } else {
// mRootView.showMessage("打印失敗");
// }
...
...
@@ -482,7 +483,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
mSelectMealAdapter
.
notifyDataSetChanged
();
mSelectMealAdapter
.
setIndex
();
mRootView
.
showViewModeVisibility
(
MealConstant
.
food_group_ViewMode
,
MealConstant
.
food_ViewMode
);
mRootView
.
showViewModeVisibility
(
MealConstant
.
food_group_ViewMode
,
MealConstant
.
food_ViewMode
);
}
else
{
mRootView
.
showMessage
(
"刪除失敗"
);
}
...
...
@@ -490,16 +491,47 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
});
}
private
void
deleteWithOrderedFoodById
()
{
public
void
showInputNumberDialog
(
OrderDetail
datasBean
)
{
ChooseNumberDialog
chooseNumberDialog
=
new
ChooseNumberDialog
(
IActivity
);
chooseNumberDialog
.
builder
();
chooseNumberDialog
.
setValueHint
(
"請輸入數量"
);
chooseNumberDialog
.
setOnBackClickListener
(
new
ChooseNumberDialog
.
OnBackClickListener
()
{
@Override
public
void
OnBackClick
()
{
}
});
chooseNumberDialog
.
setOnClickListener
(
new
ChooseNumberDialog
.
OnClickListener
()
{
@Override
public
void
onComfirmClick
(
String
number
)
{
changeNumber
(
datasBean
.
getNumber
()
-
1
);
}
@Override
public
void
onBackPage
()
{
}
});
chooseNumberDialog
.
setCancelable
(
true
);
chooseNumberDialog
.
show
();
}
private
void
deleteWithOrderedFoodById
(
OrderDetail
deleteFood
)
{
QMUIDialog
.
MessageDialogBuilder
dialogBuilder
=
new
QMUIDialog
.
MessageDialogBuilder
(
IActivity
);
dialogBuilder
.
setTitle
(
"溫馨提示"
);
dialogBuilder
.
setMessage
(
"是否確認刪除該食品?"
);
dialogBuilder
.
addAction
(
"取消"
,
(
dialog
,
index
)
->
dialog
.
dismiss
());
dialogBuilder
.
addAction
(
0
,
"確認"
,
QMUIDialogAction
.
ACTION_PROP_NEGATIVE
,
(
dialog
,
index
)
->
{
dialog
.
dismiss
();
// int deletePosition = mSelectMealAdapter.removeFoodItem();
// mRootView.setMealRvScrollToPosition(deletePosition);
deleteFood
();
if
(
myOrderManage
.
isModifyOrder
())
{
if
(
deleteFood
.
getNumber
()
<
1
)
{
changeNumber
(
0
);
}
else
{
showInputNumberDialog
(
deleteFood
);
}
}
else
{
deleteFood
();
}
});
dialogBuilder
.
create
(
R
.
style
.
QMUI_Dialog
).
show
();
}
...
...
@@ -524,7 +556,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
if
(!
deleteFood
.
isNew
())
{
//TODO 刪除已下單食品
deleteWithOrderedFoodById
();
deleteWithOrderedFoodById
(
deleteFood
);
}
else
{
if
(
deleteStyle
==
2
)
{
mSelectMealAdapter
.
removeAllNewFoodItem
();
...
...
@@ -814,7 +846,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
private
void
setModifierDefModifier
(
List
<
Modifier
>
modifierList
)
{
String
defmodifier
=
null
;
for
(
int
i
=
0
;
i
<
modifierList
.
size
();
i
++)
{
defmodifier
=
modifierList
.
get
(
i
).
getDefmodifier
()
+
","
;
defmodifier
=
modifierList
.
get
(
i
).
getDefmodifier
()
+
","
;
}
if
(!
TextUtils
.
isEmpty
(
defmodifier
))
{
if
(
defmodifier
.
startsWith
(
","
))
{
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderCenterPresenter.java
View file @
82e6ac03
...
...
@@ -14,6 +14,7 @@ import com.jess.arms.http.imageloader.ImageLoader;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.annotations.NonNull
;
import
io.reactivex.disposables.Disposable
;
import
io.reactivex.schedulers.Schedulers
;
import
me.jessyan.rxerrorhandler.core.RxErrorHandler
;
import
me.jessyan.rxerrorhandler.handler.ErrorHandleSubscriber
;
...
...
@@ -51,6 +52,9 @@ public class OrderCenterPresenter extends BasePresenter<OrderCenterContract.Mode
AppManager
mAppManager
;
private
OrderCenterActivity
IActivity
;
//是否可以繼續上拉刷新
private
boolean
noMoreData
=
false
;
@Inject
public
OrderCenterPresenter
(
OrderCenterContract
.
Model
model
,
OrderCenterContract
.
View
rootView
)
{
...
...
@@ -68,17 +72,17 @@ public class OrderCenterPresenter extends BasePresenter<OrderCenterContract.Mode
this
.
mApplication
=
null
;
}
/**
/**
*
* 獲取訂單列表
*
*
@param status
* @param pageIndex
* @param pageSize
* @param refreshLayout
* @param isLoadMore
*/
public
void
loadOrderList
(
int
pageIndex
,
int
pageSize
,
RefreshLayout
refreshLayout
,
boolean
isLoadMore
)
{
public
void
loadOrderList
(
byte
status
,
int
pageIndex
,
int
pageSize
,
RefreshLayout
refreshLayout
,
boolean
isLoadMore
)
{
int
restaurantId
=
GsaCloudApplication
.
getRestaurantId
(
mApplication
);
mModel
.
loadOrderList
(
restaurantId
,
pageIndex
,
pageSize
)
mModel
.
loadOrderList
(
restaurantId
,
status
,
pageIndex
,
pageSize
)
.
subscribeOn
(
Schedulers
.
io
())
.
doOnSubscribe
(
disposable
->
{
if
(
refreshLayout
==
null
)
{
...
...
@@ -92,36 +96,56 @@ public class OrderCenterPresenter extends BasePresenter<OrderCenterContract.Mode
.
subscribe
(
new
ErrorHandleSubscriber
<
BaseResult
>(
mErrorHandler
)
{
@Override
public
void
onSubscribe
(
Disposable
d
)
{
super
.
onSubscribe
(
d
);
if
(!
isLoadMore
)
{
//初始化或下拉刷新,重置上拉加載標誌
noMoreData
=
false
;
}
}
@Override
public
void
onNext
(
@NonNull
BaseResult
result
)
{
if
(
result
.
isSuccess
())
{
if
(
result
.
getData
()
!=
null
)
{
List
<
OrderDetailItem
>
orderItemList
=
JsonUtils
.
parseArray
(
result
.
getData
(),
OrderDetailItem
.
class
);
if
(
orderItemList
.
size
()
>
0
)
{
mRootView
.
returnOrderItemList
(
orderItemList
);
//每次更新完數據,頁碼+1
mRootView
.
setPageIndex
(
mRootView
.
getPageIndex
()
+
1
);
if
(!
noMoreData
)
{
mRootView
.
returnOrderItemList
(
orderItemList
);
//每次更新完數據,頁碼+1
mRootView
.
setPageIndex
(
mRootView
.
getPageIndex
()
+
1
);
}
if
(
orderItemList
.
size
()
<
pageSize
)
{
//沒有更多數據不能上拉刷新
noMoreData
=
true
;
}
else
{
noMoreData
=
false
;
}
}
else
{
mRootView
.
showEmptyView
(
true
,
0
,
null
);
mRootView
.
showEmptyView
(
true
,
0
,
null
);
}
}
else
{
mRootView
.
showEmptyView
(
true
,
0
,
null
);
mRootView
.
showEmptyView
(
true
,
0
,
null
);
}
}
else
{
mRootView
.
showEmptyView
(
false
,
0
,
null
);
mRootView
.
showEmptyView
(
false
,
0
,
null
);
}
resetRefreshLayout
();
resetRefreshLayout
(
noMoreData
);
}
@Override
public
void
onError
(
Throwable
t
)
{
super
.
onError
(
t
);
mRootView
.
showEmptyView
(
false
,
0
,
t
);
resetRefreshLayout
();
mRootView
.
showEmptyView
(
false
,
0
,
t
);
resetRefreshLayout
(
false
);
}
private
void
resetRefreshLayout
()
{
private
void
resetRefreshLayout
(
boolean
noMoreData
)
{
if
(
refreshLayout
!=
null
)
{
if
(
isLoadMore
)
{
if
(
noMoreData
)
{
refreshLayout
.
setNoMoreData
(
true
);
}
refreshLayout
.
finishLoadMore
();
}
else
{
refreshLayout
.
finishRefresh
();
...
...
@@ -132,4 +156,56 @@ public class OrderCenterPresenter extends BasePresenter<OrderCenterContract.Mode
});
}
/**
* 取消訂單
*
* @param orderId
*/
public
void
cancelOrder
(
long
orderId
,
byte
status
)
{
int
restaurantId
=
GsaCloudApplication
.
getRestaurantId
(
mApplication
);
mModel
.
cancelOrder
(
orderId
,
restaurantId
,
status
)
.
subscribeOn
(
Schedulers
.
io
())
.
doOnSubscribe
(
disposable
->
mRootView
.
showLoading
(
null
))
.
subscribeOn
(
AndroidSchedulers
.
mainThread
())
.
observeOn
(
AndroidSchedulers
.
mainThread
())
.
doAfterTerminate
(()
->
mRootView
.
hideLoading
())
.
compose
(
RxLifecycleUtils
.
bindToLifecycle
(
mRootView
))
.
subscribe
(
new
ErrorHandleSubscriber
<
BaseResult
>(
mErrorHandler
)
{
@Override
public
void
onNext
(
@NonNull
BaseResult
result
)
{
if
(
result
.
isSuccess
())
{
if
(
result
.
getData
()
!=
null
)
{
List
<
OrderDetailItem
>
orderItemList
=
JsonUtils
.
parseArray
(
result
.
getData
(),
OrderDetailItem
.
class
);
if
(
orderItemList
.
size
()
>
0
)
{
mRootView
.
returnOrderItemList
(
orderItemList
);
//每次更新完數據,頁碼+1
mRootView
.
setPageIndex
(
mRootView
.
getPageIndex
()
+
1
);
}
else
{
mRootView
.
showEmptyView
(
true
,
0
,
null
);
}
}
else
{
mRootView
.
showEmptyView
(
true
,
0
,
null
);
}
}
else
{
mRootView
.
showEmptyView
(
false
,
0
,
null
);
}
}
@Override
public
void
onError
(
Throwable
t
)
{
super
.
onError
(
t
);
mRootView
.
showEmptyView
(
false
,
0
,
t
);
}
});
}
public
boolean
isNoMoreData
()
{
return
noMoreData
;
}
public
void
setNoMoreData
(
boolean
noMoreData
)
{
this
.
noMoreData
=
noMoreData
;
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderContentPresenter.java
View file @
82e6ac03
...
...
@@ -105,6 +105,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
public
void
initOrderTopFunctionListener
()
{
mOrderTopFunctionAdapter
.
setOnItemClickListener
(
new
DefaultAdapter
.
OnRecyclerViewItemClickListener
()
{
@Override
public
void
onItemClick
(
View
view
,
int
viewType
,
Object
data
,
int
position
)
{
if
(
XClickUtil
.
isFastDoubleClick
(
view
,
1000
))
{
...
...
@@ -141,6 +142,14 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
}
public
void
initTopFunctionData
()
{
if
(
MyOrderManage
.
getInstance
().
isModifyOrder
())
{
//修改訂單隱藏送單,印單功能
functions
[
0
]
=
new
Function
(
"結賬"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#DC0000"
),
24
);
}
else
{
functions
[
0
]
=
new
Function
(
"送單"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#008131"
),
24
);
functions
[
1
]
=
new
Function
(
"印單"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#FF8E04"
),
24
);
functions
[
2
]
=
new
Function
(
"結賬"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#DC0000"
),
24
);
}
mFunctionList
.
addAll
(
Arrays
.
asList
(
functions
));
}
...
...
@@ -302,7 +311,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
}
public
void
loadOrder
(
int
orderId
)
{
public
void
loadOrder
(
long
orderId
)
{
mModel
.
loadOrder
(
orderId
)
.
subscribeOn
(
Schedulers
.
io
())
.
doOnSubscribe
(
disposable
->
mRootView
.
showLoading
(
null
))
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderDetailPresenter.java
View file @
82e6ac03
...
...
@@ -2,16 +2,24 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter;
import
android.app.Application
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.utils.JsonUtils
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.jess.arms.integration.AppManager
;
import
com.jess.arms.di.scope.ActivityScope
;
import
com.jess.arms.mvp.BasePresenter
;
import
com.jess.arms.http.imageloader.ImageLoader
;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.annotations.NonNull
;
import
io.reactivex.schedulers.Schedulers
;
import
me.jessyan.rxerrorhandler.core.RxErrorHandler
;
import
me.jessyan.rxerrorhandler.handler.ErrorHandleSubscriber
;
import
javax.inject.Inject
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract
;
import
com.jess.arms.utils.RxLifecycleUtils
;
/**
...
...
@@ -50,4 +58,30 @@ public class OrderDetailPresenter extends BasePresenter<OrderDetailContract.Mode
this
.
mImageLoader
=
null
;
this
.
mApplication
=
null
;
}
public
void
cancelOrder
(
long
orderId
)
{
mModel
.
cancelOrder
(
orderId
)
.
subscribeOn
(
Schedulers
.
io
())
.
doOnSubscribe
(
disposable
->
mRootView
.
showLoading
(
null
))
.
subscribeOn
(
AndroidSchedulers
.
mainThread
())
.
observeOn
(
AndroidSchedulers
.
mainThread
())
.
doAfterTerminate
(()
->
mRootView
.
hideLoading
())
.
compose
(
RxLifecycleUtils
.
bindToLifecycle
(
mRootView
))
.
subscribe
(
new
ErrorHandleSubscriber
<
BaseResult
>(
mErrorHandler
)
{
@Override
public
void
onNext
(
@NonNull
BaseResult
result
)
{
if
(
result
.
isSuccess
())
{
if
(
result
.
getData
()
!=
null
)
{
OrderDetailItem
orderDetailItem
=
JsonUtils
.
parseObject
((
String
)
result
.
getData
(),
OrderDetailItem
.
class
);
mRootView
.
returnOrderDetail
(
orderDetailItem
);
}
else
{
mRootView
.
showMessage
(
"獲取賬單失敗"
);
}
}
else
{
mRootView
.
showMessage
(
"獲取賬單失敗"
);
}
}
});
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/TablePresenter.java
View file @
82e6ac03
...
...
@@ -82,15 +82,15 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
/**
* 当前选择的操作:
* 1
、
分台
* 2
、
上菜纸
* 3
、
重置
* 4
、
转台
* 5
、
sky_order
* 6
、
結賬、
* 10
:
餐檯模式
* 1
#
分台
* 2
#
上菜纸
* 3
#
重置
* 4
#
转台
* 5
#
sky_order
* 6
#
結賬、
* 10
#
餐檯模式
*/
private
int
currentChoose
OperatType
=
-
1
;
private
int
mCurrent
OperatType
=
-
1
;
/**
* 选中操作的台名、id
*/
...
...
@@ -388,7 +388,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
}
List
<
TableBean
.
DataBean
>
filterTableBeanList
=
new
ArrayList
<>();
//如果是餐檯操作過一遍筛选
switch
(
currentChoose
OperatType
)
{
switch
(
mCurrent
OperatType
)
{
// case TableOperatTypeConstant.splite_table_1:
// for (int i = 0; i < datasBeans.size(); i++) {
// if (datasBeans.get(i).getStatus() != 0 || datasBeans.get(i).getSplitStatus() == 1 ? true : false) {
...
...
@@ -428,7 +428,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
dialogBuilder
.
setTitle
(
"溫馨提示"
);
//是否合併檯
boolean
isMergeTable
=
false
;
switch
(
currentChoose
OperatType
)
{
switch
(
mCurrent
OperatType
)
{
case
TableOperatTypeConstant
.
splite_table_1
:
break
;
...
...
@@ -463,7 +463,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
@Override
public
void
onClick
(
QMUIDialog
dialog
,
int
index
)
{
dialog
.
dismiss
();
switch
(
currentChoose
OperatType
)
{
switch
(
mCurrent
OperatType
)
{
case
TableOperatTypeConstant
.
splite_table_1
:
break
;
...
...
@@ -552,11 +552,11 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
}
public
int
getCurrentChooseOperatType
()
{
return
currentChoose
OperatType
;
return
mCurrent
OperatType
;
}
public
void
setCurrentChooseOperatType
(
int
currentChoose
OperatType
)
{
this
.
currentChooseOperatType
=
currentChoose
OperatType
;
public
void
setCurrentChooseOperatType
(
int
mCurrent
OperatType
)
{
this
.
mCurrentOperatType
=
mCurrent
OperatType
;
}
public
String
getOriginalTableName
()
{
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/MealStandActivity.java
View file @
82e6ac03
...
...
@@ -34,6 +34,7 @@ import androidx.viewpager.widget.ViewPager;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
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.OpenTableManage
;
import
com.gingersoft.gsa.cloud.base.utils.VibratorUtils
;
import
com.gingersoft.gsa.cloud.base.utils.constans.Constans
;
...
...
@@ -49,6 +50,7 @@ import com.gingersoft.gsa.cloud.table.R2;
import
com.gingersoft.gsa.cloud.table.app.GoldConstants
;
import
com.gingersoft.gsa.cloud.table.di.component.DaggerMealStandComponent
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.MealStandContract
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.table.mvp.model.constant.MealConstant
;
import
com.gingersoft.gsa.cloud.table.mvp.presenter.MealStandPresenter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BaseFragmentAdapter
;
...
...
@@ -96,8 +98,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public
class
MealStandActivity
extends
BaseActivity
<
MealStandPresenter
>
implements
MealStandContract
.
View
,
PagerGridLayoutManager
.
PageListener
{
public
class
MealStandActivity
extends
BaseActivity
<
MealStandPresenter
>
implements
MealStandContract
.
View
,
PagerGridLayoutManager
.
PageListener
{
private
SparseArray
<
View
>
map
=
new
SparseArray
<>();
...
...
@@ -254,7 +255,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
EventBus
.
getDefault
().
registerSticky
(
this
);
//清除食品緩存
//清除
Greendao
食品緩存
FoodDaoUtils
foodDaoUtils
=
new
FoodDaoUtils
(
this
);
foodDaoUtils
.
detachAll
();
FoodComboDaoUtils
foodComboDaoUtils
=
new
FoodComboDaoUtils
(
this
);
...
...
@@ -543,7 +544,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
Intent
intent
=
new
Intent
(
this
,
OrderContentActivity
.
class
);
startActivityForResult
(
intent
,
ORDER_CONTENT_CODE
);
//如果打印成功會回調
}
else
if
(
id
==
R
.
id
.
tv_no_save_return
)
{
return
Tabl
eActivity
(
true
);
return
Befor
eActivity
(
true
);
}
else
if
(
id
==
R
.
id
.
btn_add_delete
)
{
showFinePage
=
1
;
showRemarkInfo
();
...
...
@@ -596,16 +597,15 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override
public
void
onBackPressed
()
{
super
.
onBackPressed
();
return
Tabl
eActivity
(
true
);
return
Befor
eActivity
(
true
);
}
public
void
return
Tabl
eActivity
(
boolean
initTable
)
{
public
void
return
Befor
eActivity
(
boolean
initTable
)
{
SPUtils
.
put
(
this
,
MealConstant
.
EXIT_IS_PLU_MODE
,
isPluMode
);
if
(
initTable
&&
OpenTableManage
.
getDefault
()
!=
null
)
{
if
(
initTable
&&
OpenTableManage
.
getDefault
()
.
getTableBean
()
!=
null
)
{
//通知更新餐台状态
EventBus
.
getDefault
().
post
(
OpenTableManage
.
getDefault
().
getTableBean
().
getId
(),
"initTable_status_event"
);
}
//返回餐台页面
killMyself
();
}
...
...
@@ -638,7 +638,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override
public
void
OnBackClick
()
{
recordOperat
(
true
);
return
Tabl
eActivity
(
true
);
return
Befor
eActivity
(
true
);
}
});
int
backPageBtnVisibility
;
...
...
@@ -658,7 +658,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override
public
void
onBackPage
()
{
return
Tabl
eActivity
(
true
);
return
Befor
eActivity
(
true
);
}
});
chooseNumberDialog
.
setCancelable
(
isNeedCancel
);
...
...
@@ -871,6 +871,7 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override
public
void
initIntent
()
{
}
@Override
...
...
@@ -890,7 +891,10 @@ public class MealStandActivity extends BaseActivity<MealStandPresenter> implemen
@Override
public
void
initLayoutVisible
()
{
if
(
MyOrderManage
.
getInstance
().
isModifyOrder
()){
//修改訂單隱藏送單功能
fl_send_order
.
setVisibility
(
View
.
GONE
);
}
}
@Override
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderPayActivity.java
View file @
82e6ac03
...
...
@@ -516,8 +516,8 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
Log
.
e
(
"error"
,
"是否成功打印:"
+
result
.
isSuccess
());
// if (result.isSuccess()) {
// //打印成功
//
// }
MyOrderManage
.
getInstance
().
clear
();
setResult
(
Activity
.
RESULT_OK
,
null
);
killMyself
();
});
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/TableActivity.java
View file @
82e6ac03
...
...
@@ -13,6 +13,7 @@ import android.widget.TextView;
import
com.billy.cc.core.component.CC
;
import
com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.qmui.arch.QMUIFragmentPagerAdapter
;
import
com.gingersoft.gsa.cloud.base.utils.log.LogUtil
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.R2
;
...
...
@@ -21,6 +22,7 @@ import com.gingersoft.gsa.cloud.table.app.TableOperatTypeConstant;
import
com.gingersoft.gsa.cloud.table.di.component.DaggerTableComponent
;
import
com.gingersoft.gsa.cloud.base.common.bean.TableBean
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.BaseFragmentAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllOrderFragment
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllTableFragment
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.fragment.InputTableFragment
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.fragment.StateTableFragment
;
...
...
@@ -34,7 +36,10 @@ import com.gingersoft.gsa.cloud.table.mvp.contract.TableContract;
import
com.gingersoft.gsa.cloud.table.mvp.presenter.TablePresenter
;
import
com.qmuiteam.qmui.alpha.QMUIAlphaImageButton
;
import
com.qmuiteam.qmui.layout.QMUIButton
;
import
com.qmuiteam.qmui.util.QMUIDisplayHelper
;
import
com.qmuiteam.qmui.widget.QMUITopBar
;
import
com.qmuiteam.qmui.widget.tab.QMUITabIndicator
;
import
com.qmuiteam.qmui.widget.tab.QMUITabSegment
;
import
org.simple.eventbus.Subscriber
;
...
...
@@ -75,10 +80,10 @@ public class TableActivity extends BaseActivity<TablePresenter> implements Table
@BindView
(
R2
.
id
.
topbar
)
QMUITopBar
mTopBar
;
@BindView
(
R2
.
id
.
pts_table_type
)
PagerSlidingTabStrip
tabs
;
@BindView
(
R2
.
id
.
vp_table_type
)
ViewPager
pager_content
;
@BindView
(
R2
.
id
.
tabSegment
)
QMUITabSegment
mTabSegment
;
@BindView
(
R2
.
id
.
contentViewPager
)
ViewPager
mContentViewPager
;
@BindView
(
R2
.
id
.
rv_bottom_function
)
RecyclerView
rv_bottom_function
;
...
...
@@ -98,20 +103,14 @@ public class TableActivity extends BaseActivity<TablePresenter> implements Table
public
static
final
int
FUNCTION_ALL_TABLE
=
1
;
public
static
final
int
FUNCTION_STATE_TABLE
=
2
;
private
FragmentManager
fm
;
private
InputTableFragment
inputTableFragment
;
private
AllTableFragment
allTableFragment
;
private
StateTableFragment
stateTableFragment
;
private
String
[]
tabTitles
;
private
final
int
[]
icon0
=
{
0
,
0
,
0
};
private
final
int
[]
icon1
=
{
0
,
0
,
0
};
//默认显示页下标
private
int
mDefaultPosition
=
1
;
//记录当前页面下标
private
int
mPosition
=
1
;
private
String
[]
tabTitles
=
{
"編號"
,
"全部"
,
"狀態"
};
//當前顯示頁下標
private
int
mCurrentPageIndex
=
1
;
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
...
...
@@ -130,7 +129,7 @@ public class TableActivity extends BaseActivity<TablePresenter> implements Table
@Override
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
initTab
BarViewPage
();
initTab
AndPager
();
mPresenter
.
initBottomFunction
();
mPresenter
.
getTables
(
true
);
}
...
...
@@ -142,7 +141,6 @@ public class TableActivity extends BaseActivity<TablePresenter> implements Table
@Override
public
void
initIntent
()
{
}
@Override
...
...
@@ -375,129 +373,211 @@ public class TableActivity extends BaseActivity<TablePresenter> implements Table
}
}
private
void
initTabBarViewPage
()
{
fm
=
getSupportFragmentManager
();
List
<
Fragment
>
fragmentList
=
new
ArrayList
<>();
// Fragment标签
inputTableFragment
=
InputTableFragment
.
newInstance
();
allTableFragment
=
AllTableFragment
.
newInstance
();
stateTableFragment
=
StateTableFragment
.
newInstance
();
fragmentList
.
add
(
inputTableFragment
);
fragmentList
.
add
(
allTableFragment
);
fragmentList
.
add
(
stateTableFragment
);
// tab title
tabTitles
=
new
String
[
3
];
tabTitles
[
0
]
=
"編號"
;
tabTitles
[
1
]
=
"全部"
;
tabTitles
[
2
]
=
"狀態"
;
BaseFragmentAdapter
adapter
=
new
BaseFragmentAdapter
(
this
,
fm
,
fragmentList
,
Arrays
.
asList
(
tabTitles
));
pager_content
.
setAdapter
(
adapter
);
DisplayMetrics
dm
=
getResources
().
getDisplayMetrics
();
// 设置Tab底部选中的指示器Indicator的高度
tabs
.
setIndicatorHeight
((
int
)
TypedValue
.
applyDimension
(
TypedValue
.
COMPLEX_UNIT_DIP
,
2.5f
,
dm
));
// 设置Tab底部选中的指示器 Indicator的颜色
tabs
.
setIndicatorColor
(
ArmsUtils
.
getColor
(
this
,
R
.
color
.
theme_color
));
//设置Tab标题文字的颜色
tabs
.
setTextColor
(
ArmsUtils
.
getColor
(
this
,
R
.
color
.
theme_text_color
));
//设置选中的Tab文字的颜色
tabs
.
setSelectedTextColor
(
ArmsUtils
.
getColor
(
this
,
R
.
color
.
theme_color
));
//设置Tab底部分割线的颜色
tabs
.
setUnderlineColor
(
Color
.
TRANSPARENT
);
// 设置点击某个Tab时的背景色,设置为0时取消背景色
tabs
.
setTabBackground
(
0
);
// 设置Tab是自动填充满屏幕的
tabs
.
setShouldExpand
(
true
);
//设置布局样式
tabs
.
setIconAndText
(
PagerSlidingTabStrip
.
TABICONTEXT
);
//设置未选择的图标
tabs
.
setNormalIconRes
(
icon0
);
//设置已选择的图标
tabs
.
setLightIconRes
(
icon1
);
// 设置Tab标题文字的大小
// tabs.setTextSize(GSAApplication.androidSetting.getTableFunctionTopFontSize());
tabs
.
setTextSize
(
16
);
//设置文本
tabs
.
setTabTexts
(
tabTitles
);
//tab间的分割线
tabs
.
setDividerColor
(
Color
.
TRANSPARENT
);
//底部横线与字体宽度一致
tabs
.
setIndicatorinFollower
(
false
);
//与ViewPager关联,这样指示器就可以和ViewPager联动
tabs
.
setViewPager
(
pager_content
);
//设置当前现在的页面 默认输入页
pager_content
.
setCurrentItem
(
mDefaultPosition
);
//设置当前默认显示Fragment页面
// mPresenter.setCurrentShowFragment(fragmentList.get(mDefaultPosition));
pager_content
.
addOnPageChangeListener
(
new
ViewPager
.
OnPageChangeListener
()
{
private
void
initTabAndPager
()
{
QMUIFragmentPagerAdapter
pagerAdapter
=
new
QMUIFragmentPagerAdapter
(
getSupportFragmentManager
())
{
@Override
public
Fragment
createFragment
(
int
position
)
{
switch
(
position
)
{
case
1
:
if
(
stateTableFragment
!=
null
)
{
return
stateTableFragment
;
}
stateTableFragment
=
new
StateTableFragment
();
return
stateTableFragment
;
case
2
:
if
(
allTableFragment
!=
null
)
{
return
allTableFragment
;
}
allTableFragment
=
new
AllTableFragment
();
return
allTableFragment
;
default
:
if
(
inputTableFragment
!=
null
)
{
return
inputTableFragment
;
}
inputTableFragment
=
new
InputTableFragment
();
return
inputTableFragment
;
}
}
@Override
public
int
getCount
()
{
return
tabTitles
.
length
;
}
@Override
public
void
onPageScrolled
(
int
position
,
float
positionOffset
,
int
positionOffsetPixels
)
{
if
(!
firstFlag
)
{
//防止滑动页面 滑动的过程中不让刷新数据
TableActivity
.
isRefreshData
=
false
;
LogUtil
.
d
(
TAG
,
"position: "
+
position
+
" positionOffset: "
+
positionOffset
+
" positionOffsetPixels: "
+
positionOffsetPixels
);
public
CharSequence
getPageTitle
(
int
position
)
{
switch
(
position
)
{
case
1
:
return
tabTitles
[
1
];
case
2
:
return
tabTitles
[
2
];
default
:
return
tabTitles
[
0
];
}
firstFlag
=
false
;
}
};
mContentViewPager
.
setAdapter
(
pagerAdapter
);
mContentViewPager
.
setCurrentItem
(
mCurrentPageIndex
);
int
space
=
QMUIDisplayHelper
.
dp2px
(
this
,
16
);
mTabSegment
.
setIndicator
(
new
QMUITabIndicator
(
QMUIDisplayHelper
.
dp2px
(
this
,
2
),
false
,
true
));
mTabSegment
.
setDefaultTextSize
(
QMUIDisplayHelper
.
dp2px
(
this
,
16
),
QMUIDisplayHelper
.
dp2px
(
this
,
16
));
mTabSegment
.
setPadding
(
space
,
0
,
space
,
0
);
mTabSegment
.
setupWithViewPager
(
mContentViewPager
);
mTabSegment
.
addOnTabSelectedListener
(
new
QMUITabSegment
.
OnTabSelectedListener
()
{
@Override
public
void
on
PageSelected
(
int
position
)
{
if
(
position
==
0
)
{
//标号输入页面 暂停
获取
餐台数据
public
void
on
TabSelected
(
int
index
)
{
if
(
index
==
0
)
{
//标号输入页面 暂停
刷新
餐台数据
onPauseRefreshTableData
();
}
else
{
//页面切换完成区域,状态页面恢复获取餐台数据
if
(
mPosition
==
0
)
{
//是从输入编号页面回到全部,使用状态页面 直接刷新餐台数据
onStartRefreshTableData
();
}
else
{
TableActivity
.
isRefreshData
=
true
;
}
onStartRefreshTableData
();
}
m
Position
=
position
;
m
CurrentPageIndex
=
index
;
// //设置当前显示Fragment页面
// mPresenter.setCurrentShowFragment(fragmentList.get(position));
}
@Override
public
void
onPageScrollStateChanged
(
int
state
)
{
public
void
onTabUnselected
(
int
index
)
{
//滑動過程中先 暫停刷新數據
onPauseRefreshTableData
();
}
@Override
public
void
onTabReselected
(
int
index
)
{
}
});
tabs
.
setOnItemTagClickListener
(
new
PagerSlidingTabStrip
.
OnItemTagClickListener
()
{
@Override
public
void
onItemTagClick
(
int
position
,
View
tab
)
{
// initTableStatusPopup();
// switch (position) {
// case 0:
// break;
// case 1:
// if (mPosition == position) {
// initViewPageListener();
// }
// break;
// case 2:
// if (mPosition == position) {
// //显示下拉框停止刷新餐台数据
// GSAApplication.isRefreshData = false;
// //处于当前tab页面 再次点击tab
// mTableStatusPopup.setAnimStyle(QMUIPopup.ANIM_GROW_FROM_CENTER);
// mTableStatusPopup.setPreferredDirection(QMUIPopup.DIRECTION_BOTTOM);
// mTableStatusPopup.show(tab);
// }
// break;
// }
// mPosition = position;
// //设置当前显示Fragment页面
// mPresenter.setCurrentShowFragment(fragmentList.get(position));
public
void
onDoubleTap
(
int
index
)
{
}
});
}
// private void initTabBarViewPage() {
//
// fm = getSupportFragmentManager();
// List<Fragment> fragmentList = new ArrayList<>();
// // Fragment标签
// inputTableFragment = InputTableFragment.newInstance();
// allTableFragment = AllTableFragment.newInstance();
// stateTableFragment = StateTableFragment.newInstance();
// fragmentList.add(inputTableFragment);
// fragmentList.add(allTableFragment);
// fragmentList.add(stateTableFragment);
// // tab title
// tabTitles = new String[3];
// tabTitles[0] = "編號";
// tabTitles[1] = "全部";
// tabTitles[2] = "狀態";
//
// BaseFragmentAdapter adapter = new BaseFragmentAdapter(this, fm, fragmentList, Arrays.asList(tabTitles));
// pager_content.setAdapter(adapter);
//
// DisplayMetrics dm = getResources().getDisplayMetrics();
// // 设置Tab底部选中的指示器Indicator的高度
// tabs.setIndicatorHeight((int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 2.5f, dm));
// // 设置Tab底部选中的指示器 Indicator的颜色
// tabs.setIndicatorColor(ArmsUtils.getColor(this, R.color.theme_color));
// //设置Tab标题文字的颜色
// tabs.setTextColor(ArmsUtils.getColor(this, R.color.theme_text_color));
// //设置选中的Tab文字的颜色
// tabs.setSelectedTextColor(ArmsUtils.getColor(this, R.color.theme_color));
// //设置Tab底部分割线的颜色
// tabs.setUnderlineColor(Color.TRANSPARENT);
// // 设置点击某个Tab时的背景色,设置为0时取消背景色
// tabs.setTabBackground(0);
// // 设置Tab是自动填充满屏幕的
// tabs.setShouldExpand(true);
// //设置布局样式
// tabs.setIconAndText(PagerSlidingTabStrip.TABICONTEXT);
// //设置未选择的图标
// tabs.setNormalIconRes(icon0);
// //设置已选择的图标
// tabs.setLightIconRes(icon1);
// // 设置Tab标题文字的大小
//// tabs.setTextSize(GSAApplication.androidSetting.getTableFunctionTopFontSize());
// tabs.setTextSize(16);
// //设置文本
// tabs.setTabTexts(tabTitles);
// //tab间的分割线
// tabs.setDividerColor(Color.TRANSPARENT);
// //底部横线与字体宽度一致
// tabs.setIndicatorinFollower(false);
// //与ViewPager关联,这样指示器就可以和ViewPager联动
// tabs.setViewPager(pager_content);
//
// //设置当前现在的页面 默认输入页
// pager_content.setCurrentItem(mDefaultPosition);
// //设置当前默认显示Fragment页面
//// mPresenter.setCurrentShowFragment(fragmentList.get(mDefaultPosition));
// pager_content.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
//
// @Override
// public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
// if (!firstFlag) {
// //防止滑动页面 滑动的过程中不让刷新数据
// TableActivity.isRefreshData = false;
// LogUtil.d(TAG, "position: " + position + " positionOffset: " + positionOffset + " positionOffsetPixels: " + positionOffsetPixels);
// }
// firstFlag = false;
// }
//
// @Override
// public void onPageSelected(int position) {
// if (position == 0) {
// //标号输入页面 暂停获取餐台数据
// onPauseRefreshTableData();
// } else {
// //页面切换完成区域,状态页面恢复获取餐台数据
// if (mPosition == 0) {
// //是从输入编号页面回到全部,使用状态页面 直接刷新餐台数据
// onStartRefreshTableData();
// } else {
// TableActivity.isRefreshData = true;
// }
// }
// mPosition = position;
//// //设置当前显示Fragment页面
//// mPresenter.setCurrentShowFragment(fragmentList.get(position));
// }
//
// @Override
// public void onPageScrollStateChanged(int state) {
//
// }
// });
// tabs.setOnItemTagClickListener(new PagerSlidingTabStrip.OnItemTagClickListener() {
// @Override
// public void onItemTagClick(int position, View tab) {
//// initTableStatusPopup();
//// switch (position) {
//// case 0:
//// break;
//// case 1:
//// if (mPosition == position) {
//// initViewPageListener();
//// }
//// break;
//// case 2:
//// if (mPosition == position) {
//// //显示下拉框停止刷新餐台数据
//// GSAApplication.isRefreshData = false;
//// //处于当前tab页面 再次点击tab
//// mTableStatusPopup.setAnimStyle(QMUIPopup.ANIM_GROW_FROM_CENTER);
//// mTableStatusPopup.setPreferredDirection(QMUIPopup.DIRECTION_BOTTOM);
//// mTableStatusPopup.show(tab);
//// }
//// break;
//// }
//// mPosition = position;
//// //设置当前显示Fragment页面
//// mPresenter.setCurrentShowFragment(fragmentList.get(position));
// }
// });
// }
public
static
class
SortTableByName
implements
Comparator
{
@Override
...
...
@@ -535,6 +615,7 @@ public class TableActivity extends BaseActivity<TablePresenter> implements Table
onStartRefreshTableData
();
//清空食品數據
MyOrderManage
.
getInstance
().
clear
();
}
@Override
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderCenterActivity.java
View file @
82e6ac03
...
...
@@ -6,6 +6,7 @@ import android.os.Bundle;
import
android.os.Message
;
import
android.view.View
;
import
com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.qmui.arch.QMUIFragmentPagerAdapter
;
import
com.gingersoft.gsa.cloud.table.R2
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
...
...
@@ -63,14 +64,12 @@ public class OrderCenterActivity extends BaseActivity<OrderCenterPresenter> impl
QMUITabSegment
mTabSegment
;
@BindView
(
R2
.
id
.
contentViewPager
)
ViewPager
mContentViewPager
;
@BindView
(
R2
.
id
.
emptyView
)
QMUIEmptyView
mEmptyView
;
private
AllOrderFragment
allOrderFragment
,
cancelOrderFragment
,
voidOrderFragment
;
//當前顯示頁下標
private
int
currentPageIndex
=
0
;
//標題
private
String
[]
tabTitles
=
{
"
全部"
,
"已取消"
,
"已退款
"
};
private
String
[]
tabTitles
=
{
"
已付款"
,
"已取消
"
};
//是否已經初始化數據,默認初始化第一個頁面
private
boolean
[]
pageDataInit
=
{
true
,
false
,
false
};
...
...
@@ -93,7 +92,7 @@ public class OrderCenterActivity extends BaseActivity<OrderCenterPresenter> impl
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
initTabAndPager
();
mPresenter
.
loadOrderList
(
1
,
10
,
null
,
false
);
mPresenter
.
loadOrderList
(
OrderDetailItem
.
STATUS_CONFIRM
,
0
,
15
,
null
,
false
);
}
private
void
initTabAndPager
()
{
...
...
@@ -156,13 +155,13 @@ public class OrderCenterActivity extends BaseActivity<OrderCenterPresenter> impl
@Override
public
void
onTabSelected
(
int
index
)
{
currentPageIndex
=
index
;
//頁面切換
pagerAdapter
.
createFragment
(
index
);
if
(!
pageDataInit
[
index
])
{
//未初始化數據,獲取數據
loadOrderList
(
null
,
false
);
loadOrderList
(
getCurrentOrderFragment
().
getStatus
(),
null
,
false
);
}
currentPageIndex
=
index
;
pageDataInit
[
currentPageIndex
]
=
true
;
}
...
...
@@ -210,7 +209,6 @@ public class OrderCenterActivity extends BaseActivity<OrderCenterPresenter> impl
@Override
public
void
initLayoutVisible
()
{
}
@Override
...
...
@@ -243,116 +241,58 @@ public class OrderCenterActivity extends BaseActivity<OrderCenterPresenter> impl
finish
();
}
private
View
.
OnClickListener
onRetryClickListener
=
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
//重新加載
setPageIndex
(
1
);
loadOrderList
(
null
,
false
);
}
};
@Override
public
void
showEmptyView
(
boolean
isSuccess
,
int
size
,
Throwable
t
)
{
if
(
t
!=
null
)
{
if
(
t
instanceof
UnknownHostException
)
{
//沒有網絡
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_title
),
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_desc
),
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
}
else
if
(
t
instanceof
SocketTimeoutException
)
{
//請求超時
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_title
),
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_desc
),
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
}
else
if
(
t
instanceof
JsonParseException
||
t
instanceof
ParseException
||
t
instanceof
JSONException
||
t
instanceof
JsonIOException
)
{
//數據解析錯誤
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
response_error_data_parsing_error
),
null
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
}
else
{
//其他error
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_title
),
null
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
}
mContentViewPager
.
setVisibility
(
View
.
INVISIBLE
);
return
;
}
if
(!
isSuccess
)
{
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_title
),
null
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
mContentViewPager
.
setVisibility
(
View
.
INVISIBLE
);
return
;
}
if
(
size
==
0
)
{
mEmptyView
.
show
(
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_double
),
null
);
mContentViewPager
.
setVisibility
(
View
.
INVISIBLE
);
return
;
}
mEmptyView
.
hide
();
mContentViewPager
.
setVisibility
(
View
.
VISIBLE
);
getCurrentOrderFragment
().
showEmptyView
(
isSuccess
,
size
,
t
);
}
@Override
public
void
returnOrderItemList
(
List
<
OrderDetailItem
>
orderItemList
)
{
Message
message
=
Message
.
obtain
();
message
.
obj
=
orderItemList
;
if
(
getPageIndex
()
==
1
)
{
if
(
getPageIndex
()
==
0
)
{
//刷新一頁數據
message
.
what
=
0
;
}
else
{
//加載更多數據
message
.
what
=
1
;
}
switch
(
currentPageIndex
)
{
case
0
:
allOrderFragment
.
setData
(
message
);
break
;
case
1
:
cancelOrderFragment
.
setData
(
message
);
break
;
case
2
:
voidOrderFragment
.
setData
(
message
);
break
;
}
mEmptyView
.
hide
();
mContentViewPager
.
setVisibility
(
View
.
VISIBLE
);
getCurrentOrderFragment
().
setData
(
message
);
}
public
void
loadOrderList
(
byte
status
,
RefreshLayout
refreshLayout
,
boolean
isLoadMore
)
{
mPresenter
.
loadOrderList
(
status
,
getPageIndex
(),
getPageSize
(),
refreshLayout
,
isLoadMore
);
}
public
void
loadOrderList
(
RefreshLayout
refreshLayout
,
boolean
isLoadMore
)
{
mPresenter
.
loadOrderList
(
getPageIndex
(),
getPageSize
(),
refreshLayout
,
isLoadMore
);
public
void
cancelOrder
(
long
orderId
,
byte
status
)
{
mPresenter
.
cancelOrder
(
orderId
,
status
);
}
@Override
public
void
setPageIndex
(
int
index
)
{
switch
(
currentPageIndex
)
{
case
1
:
cancelOrderFragment
.
setPageIndex
(
index
);
break
;
case
2
:
voidOrderFragment
.
setPageIndex
(
index
);
break
;
default
:
allOrderFragment
.
setPageIndex
(
index
);
break
;
}
getCurrentOrderFragment
().
setPageIndex
(
index
);
}
@Override
public
int
getPageIndex
()
{
switch
(
currentPageIndex
)
{
case
1
:
return
cancelOrderFragment
.
getPageIndex
();
case
2
:
return
voidOrderFragment
.
getPageIndex
();
default
:
return
allOrderFragment
.
getPageIndex
();
}
return
getCurrentOrderFragment
().
getPageIndex
();
}
@Override
public
int
getPageSize
()
{
return
getCurrentOrderFragment
().
getPageSize
();
}
@Override
public
AllOrderFragment
getCurrentOrderFragment
()
{
switch
(
currentPageIndex
)
{
case
1
:
return
cancelOrderFragment
.
getPageSize
()
;
return
cancelOrderFragment
;
case
2
:
return
voidOrderFragment
.
getPageSize
()
;
return
voidOrderFragment
;
default
:
return
allOrderFragment
.
getPageSize
()
;
return
allOrderFragment
;
}
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderDetailActivity.java
View file @
82e6ac03
...
...
@@ -2,20 +2,30 @@ package com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
android.view.View
;
import
android.widget.LinearLayout
;
import
android.widget.ScrollView
;
import
android.widget.TextView
;
import
com.billy.cc.core.component.CC
;
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.PayMethod
;
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.OpenTableManage
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtil
;
import
com.gingersoft.gsa.cloud.table.R2
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil
;
import
com.gingersoft.gsa.cloud.table.mvp.presenter.OrderDetailPresenter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderDetailFoodAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderDetailItemAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderDetailPayMethodAdapter
;
import
com.gingersoft.gsa.cloud.ui.
recylcler.decorator.DividerItemDecoration
;
import
com.gingersoft.gsa.cloud.ui.
bean.view.SectionTextItem3
;
import
com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog
;
import
com.jess.arms.base.BaseActivity
;
import
com.jess.arms.di.component.AppComponent
;
...
...
@@ -25,8 +35,11 @@ import com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.qmuiteam.qmui.alpha.QMUIAlphaButton
;
import
com.qmuiteam.qmui.widget.QMUITopBar
;
import
com.qmuiteam.qmui.widget.dialog.QMUIDialog
;
import
com.qmuiteam.qmui.widget.dialog.QMUIDialogAction
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
androidx.annotation.NonNull
;
...
...
@@ -35,6 +48,7 @@ import androidx.core.content.ContextCompat;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
butterknife.BindView
;
import
butterknife.OnClick
;
import
static
com
.
jess
.
arms
.
utils
.
Preconditions
.
checkNotNull
;
...
...
@@ -110,11 +124,12 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
private
OrderDetailItem
mOrderDetailItem
;
private
OrderDetailFoodAdapter
mOrderDetailFoodAdapter
;
private
List
<
OrderDetail
>
mOrderDetailList
=
new
ArrayList
<>();
private
OrderDetailItemAdapter
mOrderDetailFoodAdapter
;
private
List
<
SectionTextItem3
>
mSectionTextItem3FoodList
=
new
ArrayList
<>();
private
List
<
OrderDetail
>
mOrderDetailList
;
private
OrderDetailPayMethodAdapter
M
OrderDetailPayMethodAdapter
;
// private List<Object> mOrderDetailList
;
private
OrderDetailPayMethodAdapter
m
OrderDetailPayMethodAdapter
;
private
List
<
SectionTextItem3
>
mSectionTextItem3PayMethodList
=
new
ArrayList
<>()
;
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
...
...
@@ -137,38 +152,172 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
initOrderDetail
(
mOrderDetailItem
);
}
private
void
initOrderDetail
(
OrderDetailItem
mO
rderDetailItem
)
{
if
(
mO
rderDetailItem
!=
null
)
{
private
void
initOrderDetail
(
OrderDetailItem
o
rderDetailItem
)
{
if
(
o
rderDetailItem
!=
null
)
{
String
payBill
=
LanguageUtils
.
get_language_system
(
this
,
"opentable.paybill"
,
"結賬"
)
+
":"
;
String
tableName
=
LanguageUtils
.
get_language_system
(
this
,
"table.number"
,
"檯號̖"
)
+
":"
;
String
pax
=
LanguageUtils
.
get_language_system
(
this
,
"Meal.Mannumber"
,
"人數"
)
+
":"
;
String
orderNumber
=
LanguageUtils
.
get_language_system
(
this
,
"order.number"
,
"訂單號"
)
+
":"
;
String
openTable
=
LanguageUtils
.
get_language_system
(
this
,
"open.table"
,
"開台"
)
+
":"
;
tv_
pay_time
.
setText
(
payBill
+
mOrderDetailItem
.
getCreateTi
me
());
tv_
table_name
.
setText
(
tableName
+
mOrderDetailItem
.
getId
());
tv_
people_num
.
setText
(
pax
+
mOrderDetailItem
.
getPerson
());
tv_o
rder_num
.
setText
(
orderNumber
+
mOrderDetailItem
.
getOrderNo
(
));
tv_open_time
.
setText
(
openTable
+
mOrderDetailItem
.
getCreateTime
());
tv_total
.
setText
(
"$"
+
mOrderDetailItem
.
getTotalAmount
(
));
// if (datasBean.getOrderMember().get(0).getSCAMOUNT() != 0) {
// tv_server_money.setText("$" + datasBean.getOrderMember().get(0).getSCAMOUNT
());
// } else {
tv_
table_name
.
setText
(
tableName
+
orderDetailItem
.
getTableNa
me
());
tv_
people_num
.
setText
(
pax
+
orderDetailItem
.
getPerson
());
tv_
order_num
.
setText
(
orderNumber
+
orderDetailItem
.
getId
());
tv_o
pen_time
.
setText
(
openTable
+
TimeUtil
.
getStringByFormat
(
new
Date
(
orderDetailItem
.
getCreateTime
()),
TimeUtil
.
dateFormatYMDHM
));
if
(!
TextUtils
.
isEmpty
(
orderDetailItem
.
getEndTime
()))
{
tv_pay_time
.
setText
(
payBill
+
TimeUtil
.
getStringByFormat
(
new
Date
(
orderDetailItem
.
getEndTime
()),
TimeUtil
.
dateFormatYMDHM
));
}
tv_total
.
setText
(
"$"
+
orderDetailItem
.
getTotalAmount
());
tv_total_money
.
setText
(
"$"
+
orderDetailItem
.
getTotalAmount
());
tv_server_money
.
setVisibility
(
View
.
GONE
);
tv_server_money_text
.
setVisibility
(
View
.
GONE
);
// }
tv_total_money
.
setText
(
"$"
+
mOrderDetailItem
.
getTotalAmount
());
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
mOrderDetailItem
.
getOrderDetails
()));
mOrderDetailList
.
addAll
(
orderDetailList
);
setOrderStatus
(
orderDetailItem
);
mOrderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailItem
.
getOrderDetails
()));
setOrderDetailFoodAdapter
(
mOrderDetailList
);
setOrderPayMethodAdapter
(
orderDetailItem
);
}
}
/**
* 設置訂單狀態
*
* @param item
*/
private
void
setOrderStatus
(
OrderDetailItem
item
)
{
if
(
item
.
getStatus
()
==
6
)
{
btn_print_order
.
setVisibility
(
View
.
GONE
);
btn_modify_order
.
setVisibility
(
View
.
GONE
);
btn_cancel_order
.
setVisibility
(
View
.
GONE
);
tv_order_status
.
setVisibility
(
View
.
VISIBLE
);
}
else
{
btn_print_order
.
setVisibility
(
View
.
VISIBLE
);
btn_modify_order
.
setVisibility
(
View
.
VISIBLE
);
btn_cancel_order
.
setVisibility
(
View
.
VISIBLE
);
tv_order_status
.
setVisibility
(
View
.
GONE
);
}
}
mOrderDetailFoodAdapter
=
new
OrderDetailFoodAdapter
(
mOrderDetailList
);
recycler_food
.
setAdapter
(
mOrderDetailFoodAdapter
);
private
void
setOrderDetailFoodAdapter
(
List
<
OrderDetail
>
orderDetailList
)
{
if
(
mOrderDetailFoodAdapter
==
null
)
{
mSectionTextItem3FoodList
.
addAll
(
SectionTextItem3
.
orderDetailTransSectionTextItem3
(
orderDetailList
));
mOrderDetailFoodAdapter
=
new
OrderDetailItemAdapter
(
mSectionTextItem3FoodList
);
recycler_food
.
setAdapter
(
mOrderDetailFoodAdapter
);
LinearLayoutManager
mAllOrderRecycleLayoutManager
=
new
LinearLayoutManager
(
this
,
LinearLayoutManager
.
VERTICAL
,
false
);
recycler_food
.
setLayoutManager
(
mAllOrderRecycleLayoutManager
);
recycler_food
.
addItemDecoration
(
new
DividerItemDecoration
(
this
,
LinearLayoutManager
.
VERTICAL
));
}
else
{
mSectionTextItem3FoodList
.
clear
();
mSectionTextItem3FoodList
.
addAll
(
SectionTextItem3
.
orderDetailTransSectionTextItem3
(
orderDetailList
));
mOrderDetailFoodAdapter
.
notifyDataSetChanged
();
}
}
private
void
setOrderPayMethodAdapter
(
OrderDetailItem
orderDetailItem
)
{
List
<
PayMethod
>
payMethodList
=
getPayMethodList
(
orderDetailItem
);
List
<
SectionTextItem3
>
sectionTextItem3List
=
SectionTextItem3
.
orderPayMethodTransSectionTextItem3
(
payMethodList
);
if
(
mOrderDetailPayMethodAdapter
==
null
)
{
mSectionTextItem3PayMethodList
.
addAll
(
sectionTextItem3List
);
mOrderDetailPayMethodAdapter
=
new
OrderDetailPayMethodAdapter
(
mSectionTextItem3PayMethodList
);
recycler_pay_method
.
setAdapter
(
mOrderDetailPayMethodAdapter
);
LinearLayoutManager
mAllOrderRecycleLayoutManager
=
new
LinearLayoutManager
(
this
,
LinearLayoutManager
.
VERTICAL
,
false
);
recycler_pay_method
.
setLayoutManager
(
mAllOrderRecycleLayoutManager
);
}
else
{
mSectionTextItem3PayMethodList
.
clear
();
mSectionTextItem3PayMethodList
.
addAll
(
sectionTextItem3List
);
mOrderDetailPayMethodAdapter
.
notifyDataSetChanged
();
}
//設置打印所需支付方式
MyOrderManage
.
getInstance
().
setBillMoney
(
payMethodList
);
}
/**
* 獲取支付方式
*
* @param orderDetailItem
* @return
*/
private
List
<
PayMethod
>
getPayMethodList
(
OrderDetailItem
orderDetailItem
)
{
List
<
PayMethod
>
payMethodList
=
new
ArrayList
<>();
PayMethod
payMethod
=
new
PayMethod
();
payMethod
.
setPayName
(
orderDetailItem
.
getPayName
());
payMethod
.
setPayMoney
(
orderDetailItem
.
getTotalAmount
());
payMethodList
.
add
(
payMethod
);
return
payMethodList
;
}
@OnClick
({
R2
.
id
.
btn_print_order
,
R2
.
id
.
btn_cancel_order
,
R2
.
id
.
btn_modify_order
})
public
void
onClick
(
View
v
)
{
int
id
=
v
.
getId
();
if
(
id
==
R
.
id
.
btn_print_order
)
{
startPrintOrder
(
mOrderDetailItem
,
mOrderDetailList
);
}
else
if
(
id
==
R
.
id
.
btn_cancel_order
)
{
showCancelDialog
();
}
else
if
(
id
==
R
.
id
.
btn_modify_order
)
{
startModifyOrder
(
mOrderDetailItem
);
}
}
private
void
startModifyOrder
(
OrderDetailItem
datasBean
)
{
//設置為修改訂單操作
MyOrderManage
.
getInstance
().
setModifyOrder
(
true
);
/**
* 緩存訂單信息
*/
OrderBean
orderBean
=
new
OrderBean
();
orderBean
.
setId
(
datasBean
.
getId
());
orderBean
.
setStatus
(
datasBean
.
getStatus
());
orderBean
.
setOrderNo
(
datasBean
.
getOrderNo
());
orderBean
.
setPerson
(
datasBean
.
getPerson
());
orderBean
.
setCreateTime
(
datasBean
.
getCreateTime
());
MyOrderManage
.
getInstance
().
setOrderBean
(
orderBean
);
OpenTableManage
.
getDefault
().
setPeopleNumber
(
datasBean
.
getPerson
());
List
<
OrderBean
.
OrderDetailsBean
>
orderDetailsBeans
=
datasBean
.
getOrderDetails
();
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
MyOrderManage
.
getInstance
().
setOrderFoodList
(
orderDetailList
);
launchActivity
(
new
Intent
(
this
,
MealStandActivity
.
class
));
}
/**
* 打印賬單
*
* @param orderDetailItem
* @param orderDetailList
*/
private
void
startPrintOrder
(
OrderDetailItem
orderDetailItem
,
List
<
OrderDetail
>
orderDetailList
)
{
MyOrderManage
.
getInstance
().
setOrderFoodList
(
orderDetailList
);
MyOrderManage
.
getInstance
().
setOrderId
(
orderDetailItem
.
getId
());
OpenTableManage
.
getDefault
().
setPeopleNumber
(
orderDetailItem
.
getPerson
());
TableBean
.
DataBean
dataBean
=
new
TableBean
.
DataBean
();
dataBean
.
setTableName
(
orderDetailItem
.
getTableName
());
dataBean
.
setCreateTime
(
orderDetailItem
.
getCreateTime
());
OpenTableManage
.
getDefault
().
setTableBean
(
dataBean
);
CC
.
obtainBuilder
(
"Component.Print"
)
.
setActionName
(
"printActivity"
)
.
addParam
(
"type"
,
2
)
.
build
()
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
Log
.
e
(
"error"
,
"是否成功打印:"
+
result
.
isSuccess
());
MyOrderManage
.
getInstance
().
clear
();
OpenTableManage
.
getDefault
().
setPeopleNumber
(
0
);
OpenTableManage
.
getDefault
().
setTableBean
(
null
);
});
}
private
void
showCancelDialog
()
{
QMUIDialog
.
MessageDialogBuilder
dialogBuilder
=
new
QMUIDialog
.
MessageDialogBuilder
(
this
);
dialogBuilder
.
setTitle
(
"溫馨提示"
);
dialogBuilder
.
setMessage
(
"是否取消訂單?"
);
dialogBuilder
.
addAction
(
"取消"
,
(
dialog
,
index
)
->
dialog
.
dismiss
());
dialogBuilder
.
addAction
(
0
,
"確認"
,
QMUIDialogAction
.
ACTION_PROP_NEGATIVE
,
(
dialog
,
index
)
->
{
dialog
.
dismiss
();
mPresenter
.
cancelOrder
(
mOrderDetailItem
.
getId
());
});
dialogBuilder
.
create
(
R
.
style
.
MyDialogTheme2
).
show
();
}
@Override
...
...
@@ -187,12 +336,20 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
// overridePendingTransition(R.anim.slide_still, R.anim.slide_out_right);
}
});
mTopBar
.
setTitle
(
LanguageUtils
.
get_language_system
(
this
,
"function.order.detail"
,
"賬單詳情"
)).
setTextColor
(
ArmsUtils
.
getColor
(
this
,
R
.
color
.
theme_white_color
));
mTopBar
.
setTitle
(
LanguageUtils
.
get_language_system
(
this
,
"function.order.detail"
,
"賬單詳情"
)).
setTextColor
(
ArmsUtils
.
getColor
(
this
,
R
.
color
.
theme_white_color
));
}
@Override
public
void
initLanguage
()
{
tv_food_detail_text
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"food.detail.text"
,
"食品詳情"
));
tv_total_text
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"total.text"
,
"合計"
));
tv_server_money_text
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"service.fee.text"
,
"服務費"
));
tv_total_money_text
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"order.countall_all"
,
"總金額"
));
btn_print_order
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"print.order"
,
"打印賬單"
));
btn_tips
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"public.tips"
,
"貼士"
));
btn_modify_order
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"modify.order"
,
"修改訂單"
));
}
@Override
...
...
@@ -236,4 +393,10 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
}
@Override
public
void
returnOrderDetail
(
OrderDetailItem
orderDetailItem
)
{
this
.
mOrderDetailItem
=
orderDetailItem
;
initOrderDetail
(
orderDetailItem
);
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderCenterAdapter.java
View file @
82e6ac03
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
adapter
;
import
android.content.Context
;
import
android.text.TextUtils
;
import
android.view.View
;
import
android.widget.LinearLayout
;
import
android.widget.TextView
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtil
;
import
com.gingersoft.gsa.cloud.database.bean.Modifier
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.R2
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.meal.ModifierAdapter
;
import
com.jess.arms.base.BaseHolder
;
import
com.jess.arms.base.DefaultAdapter
;
import
com.qmuiteam.qmui.alpha.QMUIAlphaButton
;
import
java.util.Date
;
import
java.util.List
;
import
butterknife.BindView
;
...
...
@@ -85,26 +90,93 @@ public class OrderCenterAdapter extends DefaultAdapter<OrderDetailItem> {
}
@Override
public
void
setData
(
OrderDetailItem
datasBean
,
int
position
)
{
public
void
setData
(
OrderDetailItem
item
,
int
position
)
{
String
tableName
=
LanguageUtils
.
get_language_system
(
mContext
,
"table.number"
,
"檯號"
)
+
":"
;
String
pax
=
LanguageUtils
.
get_language_system
(
mContext
,
"Meal.Mannumber"
,
"人數"
)
+
":"
;
String
orderNumber
=
LanguageUtils
.
get_language_system
(
mContext
,
"order.number"
,
"訂單號"
)
+
":"
;
String
openTable
=
LanguageUtils
.
get_language_system
(
mContext
,
"open.table"
,
"開台"
)
+
":"
;
String
payTable
=
LanguageUtils
.
get_language_system
(
mContext
,
"open.table"
,
"結賬"
)
+
":"
;
String
amount
=
LanguageUtils
.
get_language_system
(
mContext
,
"amount"
,
"金額"
)
+
":$"
;
tv_table_name
.
setText
(
tableName
+
datasBean
.
getId
());
tv_order_num
.
setText
(
orderNumber
+
datasBean
.
getOrderNo
());
tv_people_num
.
setText
(
pax
+
datasBean
.
getPerson
());
tv_open_time
.
setText
(
openTable
+
datasBean
.
getCreateTime
());
tv_pay_money
.
setText
(
amount
+
datasBean
.
getTotalAmount
());
btn_print_order
.
setText
(
LanguageUtils
.
get_language_system
(
mContext
,
"print.order"
,
"打印賬單"
));
btn_tips
.
setText
(
LanguageUtils
.
get_language_system
(
mContext
,
"public.tips"
,
"貼士"
));
btn_modify_order
.
setText
(
LanguageUtils
.
get_language_system
(
mContext
,
"modify.order"
,
"修改訂單"
));
btn_cancel_order
.
setText
(
LanguageUtils
.
get_language_system
(
mContext
,
"cancel.order"
,
"取消訂單"
));
tv_table_name
.
setText
(
tableName
+
item
.
getTableName
());
tv_order_num
.
setText
(
orderNumber
+
item
.
getId
());
tv_people_num
.
setText
(
pax
+
item
.
getPerson
());
tv_open_time
.
setText
(
openTable
+
TimeUtil
.
getStringByFormat
(
new
Date
(
item
.
getCreateTime
()),
TimeUtil
.
dateFormatYMDHM
));
if
(!
TextUtils
.
isEmpty
(
item
.
getEndTime
()))
{
tv_pay_time
.
setText
(
payTable
+
TimeUtil
.
getStringByFormat
(
new
Date
(
item
.
getEndTime
()),
TimeUtil
.
dateFormatYMDHM
));
}
tv_pay_money
.
setText
(
amount
+
item
.
getTotalAmount
());
setOrderStatus
(
item
,
position
);
ll_root_container
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
if
(
mOnItemClickListener
!=
null
)
{
mOnItemClickListener
.
onItemClick
(
item
,
position
);
}
}
});
}
private
void
setOrderStatus
(
OrderDetailItem
item
,
int
position
)
{
if
(
item
.
getStatus
()
==
6
){
btn_print_order
.
setVisibility
(
View
.
GONE
);
btn_modify_order
.
setVisibility
(
View
.
GONE
);
btn_cancel_order
.
setVisibility
(
View
.
GONE
);
btn_order_status
.
setVisibility
(
View
.
VISIBLE
);
}
else
{
btn_print_order
.
setText
(
LanguageUtils
.
get_language_system
(
mContext
,
"print.order"
,
"打印賬單"
));
btn_tips
.
setText
(
LanguageUtils
.
get_language_system
(
mContext
,
"public.tips"
,
"貼士"
));
btn_modify_order
.
setText
(
LanguageUtils
.
get_language_system
(
mContext
,
"modify.order"
,
"修改訂單"
));
btn_cancel_order
.
setText
(
LanguageUtils
.
get_language_system
(
mContext
,
"cancel.order"
,
"取消訂單"
));
btn_print_order
.
setVisibility
(
View
.
VISIBLE
);
btn_modify_order
.
setVisibility
(
View
.
VISIBLE
);
btn_cancel_order
.
setVisibility
(
View
.
VISIBLE
);
btn_order_status
.
setVisibility
(
View
.
GONE
);
btn_print_order
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
if
(
mOnItemClickListener
!=
null
)
{
mOnItemClickListener
.
onPrintClick
(
item
,
position
);
}
}
});
btn_modify_order
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
if
(
mOnItemClickListener
!=
null
)
{
mOnItemClickListener
.
onModifyClick
(
item
,
position
);
}
}
});
btn_cancel_order
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
if
(
mOnItemClickListener
!=
null
)
{
mOnItemClickListener
.
onCancelClick
(
item
,
position
);
}
}
});
}
}
}
private
OnItemClickListener
mOnItemClickListener
;
public
void
setOnItemClickListener
(
OnItemClickListener
onItemClickListener
)
{
mOnItemClickListener
=
onItemClickListener
;
}
public
interface
OnItemClickListener
{
void
onItemClick
(
OrderDetailItem
datasBean
,
int
position
);
void
onPrintClick
(
OrderDetailItem
datasBean
,
int
position
);
void
onModifyClick
(
OrderDetailItem
datasBean
,
int
position
);
void
onCancelClick
(
OrderDetailItem
datasBean
,
int
position
);
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetail
Food
Adapter.java
→
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetail
Item
Adapter.java
View file @
82e6ac03
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
adapter
;
import
android.view.Gravity
;
import
android.view.View
;
import
android.widget.TextView
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
...
...
@@ -11,38 +12,28 @@ import com.gingersoft.gsa.cloud.base.common.bean.PayMethod;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem3
;
import
java.util.List
;
import
androidx.annotation.Nullable
;
public
class
OrderDetail
FoodAdapter
extends
BaseQuickAdapter
<
OrderDetail
,
BaseViewHolder
>
{
public
class
OrderDetail
ItemAdapter
extends
BaseQuickAdapter
<
SectionTextItem3
,
BaseViewHolder
>
{
public
OrderDetail
FoodAdapter
(
@Nullable
List
<
OrderDetail
>
data
)
{
public
OrderDetail
ItemAdapter
(
@Nullable
List
<
SectionTextItem3
>
data
)
{
super
(
R
.
layout
.
item_order_detail_food
,
data
);
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
OrderDetail
item
)
{
TextView
tv_food_name
=
helper
.
getView
(
R
.
id
.
tv_food_name
);
int
flevel
=
item
.
getItemType
();
String
productName
=
item
.
getProductName
();
switch
(
flevel
)
{
case
1
:
tv_food_name
.
setGravity
(
Gravity
.
LEFT
);
break
;
case
2
:
productName
=
" "
+
productName
;
tv_food_name
.
setGravity
(
Gravity
.
CENTER
);
break
;
case
3
:
productName
=
" "
+
productName
;
tv_food_name
.
setGravity
(
Gravity
.
RIGHT
);
break
;
protected
void
convert
(
BaseViewHolder
helper
,
SectionTextItem3
item
)
{
helper
.
setText
(
R
.
id
.
tv_left
,
item
.
getLeftText
());
if
(!
item
.
getCenterText
().
equals
(
"0"
))
{
helper
.
setText
(
R
.
id
.
tv_center
,
String
.
valueOf
(
item
.
getCenterText
()));
helper
.
setVisible
(
R
.
id
.
tv_center
,
true
);
}
else
{
helper
.
setVisible
(
R
.
id
.
tv_center
,
false
);
}
tv_food_name
.
setText
(
productName
);
helper
.
setText
(
R
.
id
.
tv_food_number
,
String
.
valueOf
(
item
.
getNumber
()));
helper
.
setText
(
R
.
id
.
tv_food_total
,
"$"
+
item
.
getPrice
()
*
item
.
getNumber
());
helper
.
setText
(
R
.
id
.
tv_right
,
"$"
+
item
.
getRightText
());
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetailPayMethodAdapter.java
View file @
82e6ac03
...
...
@@ -7,21 +7,22 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import
com.chad.library.adapter.base.BaseViewHolder
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDetail
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem3
;
import
java.util.List
;
import
androidx.annotation.Nullable
;
public
class
OrderDetailPayMethodAdapter
extends
BaseQuickAdapter
<
OrderDetail
,
BaseViewHolder
>
{
public
class
OrderDetailPayMethodAdapter
extends
BaseQuickAdapter
<
SectionTextItem3
,
BaseViewHolder
>
{
public
OrderDetailPayMethodAdapter
(
@Nullable
List
<
OrderDetail
>
data
)
{
public
OrderDetailPayMethodAdapter
(
@Nullable
List
<
SectionTextItem3
>
data
)
{
super
(
R
.
layout
.
item_order_detail_pay_method
,
data
);
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
OrderDetail
item
)
{
helper
.
setText
(
R
.
id
.
tv_name
,
String
.
valueOf
(
item
.
get
Number
()));
helper
.
setText
(
R
.
id
.
tv_money
,
"$"
+
item
.
get
Price
()
*
item
.
getNumber
());
protected
void
convert
(
BaseViewHolder
helper
,
SectionTextItem3
item
)
{
helper
.
setText
(
R
.
id
.
tv_name
,
String
.
valueOf
(
item
.
get
LeftText
()));
helper
.
setText
(
R
.
id
.
tv_money
,
"$"
+
item
.
get
RightText
());
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/meal/SelectMealAdapter.java
View file @
82e6ac03
...
...
@@ -259,12 +259,12 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
private
void
setNumber
(
OrderDetail
datasBean
)
{
int
number
=
datasBean
.
getNumber
();
if
(
number
==
0
)
{
//细项、折扣不需要显示数量
tv_number
.
setText
(
"
"
);
}
else
{
//
if (number == 0) {
//
//细项、折扣不需要显示数量
// tv_number.setText("0
");
//
} else {
tv_number
.
setText
(
String
.
valueOf
(
number
));
}
//
}
}
private
void
setMoney
(
OrderDetail
datasBean
)
{
...
...
@@ -300,9 +300,16 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
//设置Item选中颜色
if
(
datasBean
.
isNew
()
==
false
)
{
iv_lock
.
setVisibility
(
View
.
INVISIBLE
);
tv_name
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
Grass_green
));
tv_number
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
Grass_green
));
tv_money
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
Grass_green
));
int
number
=
datasBean
.
getNumber
();
if
(
number
==
0
)
{
tv_name
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
theme_red_color
));
tv_number
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
theme_red_color
));
tv_money
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
theme_red_color
));
}
else
{
tv_name
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
Grass_green
));
tv_number
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
Grass_green
));
tv_money
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
Grass_green
));
}
}
else
{
iv_lock
.
setVisibility
(
View
.
INVISIBLE
);
tv_number
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
black
));
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/fragment/AllOrderFragment.java
View file @
82e6ac03
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
fragment
;
import
android.content.Intent
;
import
android.net.ParseException
;
import
android.os.Bundle
;
import
android.os.Message
;
import
android.view.LayoutInflater
;
...
...
@@ -11,6 +12,8 @@ import com.gingersoft.gsa.cloud.table.R2;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity
;
import
com.gingersoft.gsa.cloud.ui.recylcler.decorator.DividerItemDecoration
;
import
com.google.gson.JsonIOException
;
import
com.google.gson.JsonParseException
;
import
com.jess.arms.base.BaseFragment
;
import
com.jess.arms.base.DefaultAdapter
;
import
com.jess.arms.di.component.AppComponent
;
...
...
@@ -19,10 +22,15 @@ import com.gingersoft.gsa.cloud.table.di.component.DaggerAllOrderComponent;
import
com.gingersoft.gsa.cloud.table.mvp.contract.AllOrderContract
;
import
com.gingersoft.gsa.cloud.table.mvp.presenter.AllOrderPresenter
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.qmuiteam.qmui.widget.QMUIEmptyView
;
import
com.scwang.smartrefresh.layout.api.RefreshLayout
;
import
com.scwang.smartrefresh.layout.listener.OnLoadMoreListener
;
import
com.scwang.smartrefresh.layout.listener.OnRefreshListener
;
import
org.json.JSONException
;
import
java.net.SocketTimeoutException
;
import
java.net.UnknownHostException
;
import
java.util.List
;
import
androidx.annotation.NonNull
;
...
...
@@ -52,11 +60,13 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
RefreshLayout
refreshLayout
;
@BindView
(
R2
.
id
.
recycle_order
)
RecyclerView
recycle_order
;
@BindView
(
R2
.
id
.
emptyView
)
QMUIEmptyView
mEmptyView
;
private
OrderCenterActivity
orderCenterActivity
;
private
int
currentPageIndex
;
private
int
pageIndex
=
1
;
private
int
pageIndex
=
0
;
private
int
pageSize
=
10
;
public
static
AllOrderFragment
newInstance
()
{
...
...
@@ -93,14 +103,14 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
@Override
public
void
onRefresh
(
@NonNull
final
RefreshLayout
refreshLayout
)
{
//重新獲取第一頁數據
pageIndex
=
1
;
orderCenterActivity
.
loadOrderList
(
refreshLayout
,
false
);
pageIndex
=
0
;
orderCenterActivity
.
loadOrderList
(
getStatus
(),
refreshLayout
,
false
);
}
});
refreshLayout
.
setOnLoadMoreListener
(
new
OnLoadMoreListener
()
{
@Override
public
void
onLoadMore
(
@NonNull
final
RefreshLayout
refreshLayout
)
{
orderCenterActivity
.
loadOrderList
(
refreshLayout
,
true
);
orderCenterActivity
.
loadOrderList
(
getStatus
(),
refreshLayout
,
true
);
}
});
}
...
...
@@ -114,12 +124,16 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
if
(
mPresenter
!=
null
)
{
mPresenter
.
updateOrderData
(
datasBeans
);
}
mEmptyView
.
hide
();
recycle_order
.
setVisibility
(
View
.
VISIBLE
);
break
;
case
1
:
List
<
OrderDetailItem
>
addDataItem
=
(
List
<
OrderDetailItem
>)
((
Message
)
data
).
obj
;
if
(
mPresenter
!=
null
)
{
mPresenter
.
addOrderData
(
addDataItem
);
}
mEmptyView
.
hide
();
recycle_order
.
setVisibility
(
View
.
VISIBLE
);
break
;
default
:
//do something
...
...
@@ -155,6 +169,48 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
}
private
View
.
OnClickListener
onRetryClickListener
=
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
//重新加載
setPageIndex
(
0
);
orderCenterActivity
.
loadOrderList
(
getStatus
(),
null
,
false
);
}
};
@Override
public
void
showEmptyView
(
boolean
isSuccess
,
int
size
,
Throwable
t
)
{
if
(
t
!=
null
)
{
if
(
t
instanceof
UnknownHostException
)
{
//沒有網絡
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_title
),
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_desc
),
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
}
else
if
(
t
instanceof
SocketTimeoutException
)
{
//請求超時
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_title
),
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_desc
),
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
}
else
if
(
t
instanceof
JsonParseException
||
t
instanceof
ParseException
||
t
instanceof
JSONException
||
t
instanceof
JsonIOException
)
{
//數據解析錯誤
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
response_error_data_parsing_error
),
null
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
}
else
{
//其他error
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_title
),
null
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
}
recycle_order
.
setVisibility
(
View
.
INVISIBLE
);
return
;
}
if
(!
isSuccess
)
{
mEmptyView
.
show
(
false
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_fail_title
),
null
,
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_retry
),
onRetryClickListener
);
recycle_order
.
setVisibility
(
View
.
INVISIBLE
);
return
;
}
if
(
size
==
0
)
{
mEmptyView
.
show
(
getResources
().
getString
(
R
.
string
.
emptyView_mode_desc_double
),
null
);
recycle_order
.
setVisibility
(
View
.
INVISIBLE
);
return
;
}
mEmptyView
.
hide
();
recycle_order
.
setVisibility
(
View
.
VISIBLE
);
}
@Override
public
void
setAllOrderAdapter
(
DefaultAdapter
adapter
)
{
recycle_order
.
setAdapter
(
adapter
);
...
...
@@ -167,6 +223,15 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
recycle_order
.
addItemDecoration
(
new
DividerItemDecoration
(
orderCenterActivity
,
LinearLayoutManager
.
VERTICAL
));
}
@Override
public
byte
getStatus
()
{
switch
(
currentPageIndex
)
{
case
1
:
return
OrderDetailItem
.
STATUS_CANCEL
;
default
:
return
OrderDetailItem
.
STATUS_CONFIRM
;
}
}
public
int
getPageIndex
()
{
return
pageIndex
;
...
...
@@ -183,4 +248,5 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
public
void
setPageSize
(
int
pageSize
)
{
this
.
pageSize
=
pageSize
;
}
}
table-mode/src/main/res/layout/activity_order_center.xml
View file @
82e6ac03
...
...
@@ -33,11 +33,5 @@
android:fitsSystemWindows=
"true"
/>
</LinearLayout>
<com.qmuiteam.qmui.widget.QMUIEmptyView
android:id=
"@+id/emptyView"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_marginTop=
"?attr/qmui_topbar_height"
android:fitsSystemWindows=
"true"
/>
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
\ No newline at end of file
table-mode/src/main/res/layout/activity_order_detail.xml
View file @
82e6ac03
...
...
@@ -94,13 +94,11 @@
android:layout_marginBottom=
"@dimen/dp_40"
android:layout_marginTop=
"?attr/qmui_topbar_height"
android:background=
"@color/qmui_config_color_white"
android:fillViewport=
"true"
android:fitsSystemWindows=
"true"
android:focusable=
"true"
>
android:fillViewport=
"true"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"
match_par
ent"
android:layout_height=
"
wrap_cont
ent"
android:orientation=
"vertical"
android:padding=
"@dimen/dp_8"
>
...
...
@@ -173,8 +171,9 @@
android:layout_height=
"wrap_content"
android:layout_below=
"@+id/tv_open_time"
android:layout_marginTop=
"@dimen/dp_10"
android:text=
""
android:text=
"
食品詳情
"
android:textColor=
"@color/black"
android:textStyle=
"bold"
android:textSize=
"@dimen/sp_16"
/>
<com.gingersoft.gsa.cloud.base.widget.NoScrollRecyclerView
...
...
table-mode/src/main/res/layout/fragment_all_order.xml
View file @
82e6ac03
...
...
@@ -17,6 +17,11 @@
android:overScrollMode=
"never"
android:background=
"@color/theme_background_color"
/>
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
<com.qmuiteam.qmui.widget.QMUIEmptyView
android:id=
"@+id/emptyView"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:fitsSystemWindows=
"true"
/>
</FrameLayout>
</com.qmuiteam.qmui.widget.QMUIWindowInsetLayout>
\ No newline at end of file
table-mode/src/main/res/layout/item_order_center.xml
View file @
82e6ac03
...
...
@@ -115,6 +115,17 @@
android:textSize=
"@dimen/sp_13"
/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id=
"@+id/btn_modify_order"
android:layout_width=
"@dimen/dp_65"
android:layout_height=
"@dimen/dp_35"
android:background=
"@color/blue_300"
android:text=
"修改訂單"
android:layout_marginRight=
"@dimen/dp_10"
android:textColor=
"@color/theme_white_color"
android:textSize=
"@dimen/sp_13"
android:visibility=
"visible"
/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id=
"@+id/btn_tips"
android:layout_width=
"@dimen/dp_65"
android:layout_height=
"@dimen/dp_35"
...
...
@@ -147,16 +158,6 @@
android:visibility=
"gone"
/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id=
"@+id/btn_modify_order"
android:layout_width=
"@dimen/dp_65"
android:layout_height=
"@dimen/dp_35"
android:background=
"@color/blue_300"
android:text=
"修改訂單"
android:textColor=
"@color/theme_white_color"
android:textSize=
"@dimen/sp_13"
android:visibility=
"gone"
/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id=
"@+id/btn_order_status"
android:layout_width=
"@dimen/dp_65"
android:layout_height=
"@dimen/dp_35"
...
...
table-mode/src/main/res/layout/item_order_detail_food.xml
View file @
82e6ac03
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:id=
"@+id/ll_item_layout"
android:layout_width=
"
fill
_parent"
android:layout_width=
"
match
_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/white"
android:orientation=
"vertical"
android:paddingLeft=
"@dimen/dp_10"
android:paddingTop=
"@dimen/dp_5"
android:paddingBottom=
"@dimen/dp_5"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
android:paddingLeft=
"@dimen/dp_10"
android:paddingTop=
"@dimen/dp_5"
android:paddingBottom=
"@dimen/dp_5"
android:weightSum=
"6"
>
<TextView
android:id=
"@+id/tv_
food_name
"
android:id=
"@+id/tv_
left
"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"3"
...
...
@@ -30,7 +24,7 @@
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
android:maxLines=
"1"
android:text=
""
/>
android:text=
"
牛肉拉麵
"
/>
<RelativeLayout
android:layout_width=
"0dp"
...
...
@@ -39,31 +33,23 @@
android:orientation=
"horizontal"
>
<TextView
android:id=
"@+id/tv_
food_numb
er"
android:id=
"@+id/tv_
cent
er"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
""
android:text=
"
1
"
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
/>
<TextView
android:id=
"@+id/tv_
food_total
"
android:id=
"@+id/tv_
right
"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:text=
""
android:text=
"
$15
"
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
/>
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:id=
"@+id/ll_content_layout"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
table-mode/src/main/res/layout/item_order_detail_pay_method.xml
View file @
82e6ac03
...
...
@@ -11,6 +11,7 @@
android:layout_marginTop=
"@dimen/dp_10"
android:text=
""
android:textColor=
"@color/black"
android:textStyle=
"bold"
android:textSize=
"@dimen/sp_16"
/>
<TextView
...
...
@@ -20,6 +21,7 @@
android:layout_alignParentRight=
"true"
android:layout_marginTop=
"@dimen/dp_10"
android:text=
""
android:textStyle=
"bold"
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_16"
/>
...
...
table-mode/src/main/res/layout/table_activity_table.xml
View file @
82e6ac03
...
...
@@ -16,17 +16,17 @@
android:layout_above=
"@+id/rv_bottom_function"
android:layout_marginTop=
"?attr/qmui_topbar_height"
>
<
androidx.viewpager.widget.ViewPager
android:id=
"@+id/
vp_table_type
"
<
com.qmuiteam.qmui.widget.tab.QMUITabSegment
android:id=
"@+id/
tabSegment
"
android:layout_width=
"match_parent"
android:layout_height=
"
match_parent
"
android:
layout_marginTop=
"?attr/qmui_topbar_height"
/>
android:layout_height=
"
@dimen/dp_45
"
android:
background=
"@drawable/shape_tab_panel_bg"
/>
<
com.gingersoft.gsa.cloud.ui.view.PagerSlidingTabStrip
android:id=
"@+id/
pts_table_type
"
<
androidx.viewpager.widget.ViewPager
android:id=
"@+id/
contentViewPager
"
android:layout_width=
"match_parent"
android:layout_height=
"
?attr/qmui_topbar_heigh
t"
android:
background=
"@color/theme_white_color"
/>
android:layout_height=
"
match_paren
t"
android:
layout_marginTop=
"@dimen/dp_45"
/>
<LinearLayout
android:id=
"@+id/ll_table_operat_content"
...
...
user-login/src/main/java/com/gingersoft/gsa/cloud/user/login/mvp/presenter/BaseLoginPresenter.java
View file @
82e6ac03
package
com
.
gingersoft
.
gsa
.
cloud
.
user
.
login
.
mvp
.
presenter
;
import
android.app.Activity
;
import
android.app.Application
;
import
android.content.Intent
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
import
com.gingersoft.gsa.cloud.ui.bean.mode.LoginBean
;
import
com.gingersoft.gsa.cloud.user.login.R
;
import
com.gingersoft.gsa.cloud.user.login.mvp.contract.BaseLoginContract
;
import
com.gingersoft.gsa.cloud.user.login.mvp.ui.activity.LoginActivity
;
import
com.jess.arms.di.scope.ActivityScope
;
import
com.jess.arms.http.imageloader.ImageLoader
;
import
com.jess.arms.integration.AppManager
;
...
...
@@ -38,9 +41,13 @@ public class BaseLoginPresenter<M extends BaseLoginContract.Model, V extends Bas
@Inject
AppManager
mAppManager
;
private
Activity
IAcitivity
;
@Inject
public
BaseLoginPresenter
(
BaseLoginContract
.
Model
model
,
BaseLoginContract
.
View
rootView
)
{
super
(
model
,
rootView
);
IAcitivity
=
(
Activity
)
rootView
;
}
@Override
...
...
@@ -83,6 +90,15 @@ public class BaseLoginPresenter<M extends BaseLoginContract.Model, V extends Bas
mRootView
.
showMessage
(
info
.
getErrMsg
());
}
}
@Override
public
void
onError
(
Throwable
t
)
{
super
.
onError
(
t
);
if
(
IAcitivity
instanceof
LoginActivity
)
{
}
else
{
mRootView
.
launchActivity
(
new
Intent
(
IAcitivity
,
LoginActivity
.
class
));
}
}
});
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment