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
cd58cb90
Commit
cd58cb90
authored
Mar 14, 2020
by
宁斌
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
新增賬單列表,賬單詳情頁面
parent
1305e525
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
37 changed files
with
781 additions
and
445 deletions
+781
-445
arms/src/main/java/com/jess/arms/utils/DeviceUtils.java
+28
-13
public-base/src/main/java/com/gingersoft/gsa/cloud/base/application/GsaCloudApplication.java
+2
-2
public-base/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderBean.java
+6
-3
public-base/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderDetail.java
+3
-3
public-base/src/main/java/com/gingersoft/gsa/cloud/base/utils/constans/AppConstans.java
+3
-1
public-base/src/main/java/com/gingersoft/gsa/cloud/base/utils/constans/Constans.java
+0
-1
public-base/src/main/java/com/gingersoft/gsa/cloud/base/utils/crash/AppCrashHandler.java
+11
-20
public-base/src/main/java/com/gingersoft/gsa/cloud/globalconfig/applyOptions/MyOkhttpConfiguration.java
+4
-2
public-base/src/main/res/values/strings.xml
+7
-0
table-mode/src/main/AndroidManifest.xml
+2
-2
table-mode/src/main/debug/AndroidManifest.xml
+5
-4
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/ComponentTable.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/di/component/OrderCenterComponent.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/di/component/OrderDetailComponent.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderCenterContract.java
+17
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderCenterModel.java
+12
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/OrderDetailItem.java
+0
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/service/OrderService.java
+22
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/AllOrderPresenter.java
+35
-6
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderCenterPresenter.java
+80
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/TablePresenter.java
+0
-19
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderCenterActivity.java
+0
-194
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderContentActivity.java
+1
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderDetailActivity.java
+0
-107
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/TableActivity.java
+0
-1
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderCenterActivity.java
+0
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderDetailActivity.java
+239
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderCenterAdapter.java
+23
-20
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetailFoodAdapter.java
+48
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetailPayMethodAdapter.java
+27
-0
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/fragment/AllOrderFragment.java
+62
-17
table-mode/src/main/res/layout/activity_order_center.xml
+8
-0
table-mode/src/main/res/layout/activity_order_detail.xml
+0
-0
table-mode/src/main/res/layout/fragment_all_order.xml
+2
-1
table-mode/src/main/res/layout/item_order_center.xml
+34
-25
table-mode/src/main/res/layout/item_order_detail_food.xml
+70
-0
table-mode/src/main/res/layout/item_order_detail_pay_method.xml
+27
-0
No files found.
arms/src/main/java/com/jess/arms/utils/DeviceUtils.java
View file @
cd58cb90
...
...
@@ -810,21 +810,36 @@ public class DeviceUtils {
}
public
static
boolean
netIsConnected
(
Context
context
)
{
ConnectivityManager
connectMgr
=
(
ConnectivityManager
)
context
.
getApplicationContext
().
getSystemService
(
Context
.
CONNECTIVITY_SERVICE
);
//手机网络连接状态
NetworkInfo
mobNetInfo
=
null
;
try
{
mobNetInfo
=
connectMgr
.
getNetworkInfo
(
ConnectivityManager
.
TYPE_MOBILE
);
}
catch
(
SecurityException
e
)
{
e
.
printStackTrace
();
// ConnectivityManager connectMgr = (ConnectivityManager) context.getApplicationContext().getSystemService(Context.CONNECTIVITY_SERVICE);
// //手机网络连接状态
// NetworkInfo mobNetInfo = null;
// try {
// mobNetInfo = connectMgr.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
// } catch (SecurityException e) {
// e.printStackTrace();
// }
// //WIFI连接状态
// NetworkInfo wifiNetInfo = connectMgr.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
// if (mobNetInfo != null && !mobNetInfo.isConnected() && !wifiNetInfo.isConnected()) {
// //当前无可用的网络
// return false;
// }
// return true;
ConnectivityManager
cm
=
(
ConnectivityManager
)
context
.
getSystemService
(
Context
.
CONNECTIVITY_SERVICE
);
if
(
cm
==
null
)
{
}
else
{
//如果仅仅是用来判断网络连接
//则可以使用 cm.getActiveNetworkInfo().isAvailable();
NetworkInfo
[]
info
=
cm
.
getAllNetworkInfo
();
if
(
info
!=
null
)
{
for
(
int
i
=
0
;
i
<
info
.
length
;
i
++)
{
if
(
info
[
i
].
getState
()
==
NetworkInfo
.
State
.
CONNECTED
)
{
return
true
;
}
//WIFI连接状态
NetworkInfo
wifiNetInfo
=
connectMgr
.
getNetworkInfo
(
ConnectivityManager
.
TYPE_WIFI
);
if
(
mobNetInfo
!=
null
&&
!
mobNetInfo
.
isConnected
()
&&
!
wifiNetInfo
.
isConnected
())
{
//当前无可用的网络
return
false
;
}
return
true
;
}
}
return
false
;
}
/**
...
...
public-base/src/main/java/com/gingersoft/gsa/cloud/base/application/GsaCloudApplication.java
View file @
cd58cb90
...
...
@@ -51,9 +51,9 @@ public class GsaCloudApplication extends BaseApplication {
private
static
GsaCloudApplication
mAppContext
;
private
Activity
mCurrentActivity
;
/**
* 设置请求超时默认
20秒钟 从后台获取超时时间
* 设置请求超时默认
15秒钟
*/
public
static
int
REQUEST_TIMEOUT
=
20
;
public
static
int
REQUEST_TIMEOUT
=
15
;
public
static
boolean
isLogin
=
false
;
public
static
CurrentAndroidSetting
androidSetting
;
...
...
public-base/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderBean.java
View file @
cd58cb90
...
...
@@ -2,6 +2,8 @@ package com.gingersoft.gsa.cloud.base.common.bean;
import
com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage
;
import
com.gingersoft.gsa.cloud.database.bean.Food
;
import
java.io.Serializable
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
@@ -106,9 +108,11 @@ public class OrderBean {
this
.
orderDetails
=
orderDetails
;
}
public
static
class
OrderDetailsBean
{
public
static
class
OrderDetailsBean
implements
Serializable
{
/**
* id : 1621502
* orderId : 47039
* parentId : 1639956
* productName : 胡椒排骨涼瓜煲
* productId : 4257
* price : 58.0
...
...
@@ -138,8 +142,7 @@ public class OrderBean {
}
public
OrderDetailsBean
(
String
productName
,
long
productId
,
long
parentId
,
double
price
,
double
lunchboxPrice
,
int
number
,
byte
type
,
long
orderId
)
{
public
OrderDetailsBean
(
String
productName
,
long
productId
,
long
parentId
,
double
price
,
double
lunchboxPrice
,
int
number
,
byte
type
,
long
orderId
)
{
this
.
productName
=
productName
;
this
.
productId
=
productId
;
this
.
parentId
=
parentId
;
...
...
public-base/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderDetail.java
View file @
cd58cb90
...
...
@@ -509,7 +509,7 @@ public class OrderDetail implements Serializable {
orderDetail
.
setParentId
(
orderDetailsBean
.
getParentId
());
orderDetail
.
setProductName
(
orderDetailsBean
.
getProductName
());
orderDetail
.
setNumber
(
orderDetailsBean
.
getNumber
());
orderDetail
.
setPrice
(
orderDetailsBean
.
getPrice
());
orderDetail
.
setPrice
(
orderDetailsBean
.
getPrice
()
*
orderDetailsBean
.
getNumber
()
);
orderDetail
.
setVisible
(
orderDetailsBean
.
getStatus
()
==
0
);
// orderDetail.setAutomod(foods.getAutomod());
orderDetail
.
setIsfood
(
orderDetailsBean
.
getType
()
==
FOOD_TYPE
?
true
:
false
);
...
...
@@ -589,7 +589,7 @@ public class OrderDetail implements Serializable {
* @param isRvMealClicked
* @return
*/
public
static
OrderDetail
comboTransOrderDetail
(
ComboItem
foodCombo
,
long
id
,
int
number
,
String
prop
,
boolean
isRvMealClicked
)
{
public
static
OrderDetail
comboTransOrderDetail
(
ComboItem
foodCombo
,
long
id
,
int
number
,
String
prop
,
boolean
isRvMealClicked
)
{
OrderDetail
orderDetail
=
new
OrderDetail
();
orderDetail
.
setProductName
(
foodCombo
.
getName
());
if
(
foodCombo
.
getFid
()
!=
null
)
{
...
...
@@ -626,7 +626,7 @@ public class OrderDetail implements Serializable {
* @param number
* @return
*/
public
static
OrderDetail
modifierTransOrderDetail
(
Modifier
modifier
,
long
id
,
int
number
)
{
public
static
OrderDetail
modifierTransOrderDetail
(
Modifier
modifier
,
long
id
,
int
number
)
{
OrderDetail
orderDetail
=
new
OrderDetail
();
orderDetail
.
setProductName
(
modifier
.
getModifierName
());
orderDetail
.
setTopId
(
modifier
.
getFid
());
...
...
public-base/src/main/java/com/gingersoft/gsa/cloud/base/utils/constans/AppConstans.java
View file @
cd58cb90
...
...
@@ -9,7 +9,9 @@ public class AppConstans {
public
static
final
String
APP_TYPE
=
"9"
;
public
static
final
String
VIBRATION_PROGRESS
=
"vibration_progress"
;
//震动强度
public
static
final
String
PRESSSOUND_PROGRESS
=
"presssound_progress"
;
//按键音量
}
public-base/src/main/java/com/gingersoft/gsa/cloud/base/utils/constans/Constans.java
View file @
cd58cb90
...
...
@@ -12,5 +12,4 @@ public class Constans {
}
public-base/src/main/java/com/gingersoft/gsa/cloud/base/utils/crash/AppCrashHandler.java
View file @
cd58cb90
...
...
@@ -85,18 +85,14 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
**/
private
String
ErrorStr
=
"發生錯誤, 請聯絡支援人員!"
;
/**
* 使用Properties来保存设备的信息和错误堆栈信息
*/
private
static
final
String
VERSION_NAME
=
"versionName"
;
private
static
final
String
VERSION_CODE
=
"versionCode"
;
private
static
final
String
STACK_TRACE
=
"STACK_TRACE"
;
/**
* 错误报告文件的扩展名
*/
private
static
final
String
CRASH_REPORTER_EXTENSION
=
".
cyposdebug
"
;
private
static
final
String
CRASH_REPORTER_EXTENSION
=
".
json
"
;
private
SimpleDateFormat
format
=
new
SimpleDateFormat
(
"yyyy-MM-dd-HH:mm:ss"
);
// 用于格式化日期,作为日志文件名的一部分
private
Map
<
String
,
String
>
info
=
new
HashMap
<
String
,
String
>();
// 用来存储设备信息和异常信息
// 用于格式化日期,作为日志文件名的一部分
private
SimpleDateFormat
format
=
new
SimpleDateFormat
(
"yyyy-MM-dd-HH:mm:ss"
);
// 用来存储设备信息和异常信息
private
Map
<
String
,
String
>
info
=
new
HashMap
<>();
/**
* 保证只有一个CrashHandler实例
...
...
@@ -125,7 +121,6 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
mContext
=
ctx
;
mDefaultHandler
=
Thread
.
getDefaultUncaughtExceptionHandler
();
Thread
.
setDefaultUncaughtExceptionHandler
(
this
);
File
file
=
new
File
(
FileUtils
.
ERRORLOG_PATH
);
if
(
file
.
exists
())
{
sendCrashReportsToServer
();
...
...
@@ -206,14 +201,10 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
File
file
=
new
File
(
FileUtils
.
ERRORLOG_PATH
);
File
[]
files
=
file
.
listFiles
();
if
(
files
!=
null
&&
files
.
length
>
0
)
{
// List<File> fileList = Arrays.asList(files);
List
<
File
>
fileList
=
new
ArrayList
<>();
fileList
.
add
(
files
[
0
]);
List
<
File
>
fileList
=
Arrays
.
asList
(
files
);
HashMap
<
String
,
String
>
params
=
new
HashMap
<>();
params
.
put
(
"type"
,
"1"
);
params
.
put
(
"uid"
,
String
.
valueOf
(
GsaCloudApplication
.
getMemberId
(
mContext
)));
String
url
=
HttpsConstans
.
ROOT_SERVER_ADDRESS_FORMAL
+
Api
.
upload_app_log
;
OkHttp3Utils
.
sendFileMultipart
(
url
,
"files"
,
fileList
,
params
)
.
subscribeOn
(
Schedulers
.
io
())
...
...
@@ -230,10 +221,10 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
BaseResult
result
=
JsonUtils
.
parseObject
(
data
,
BaseResult
.
class
);
if
(
result
.
isSuccess
())
{
//上傳成功后刪除對應文件
//
for (File dfile : file.listFiles()) {
// boolean result
= dfile.delete();
// LogUtil.d(TAG, "delete result : " + result
);
//
}
for
(
File
dfile
:
file
.
listFiles
())
{
boolean
delete
=
dfile
.
delete
();
LogUtil
.
d
(
TAG
,
"delete result : "
+
delete
);
}
}
XLog
.
d
(
TAG
,
"sendFileMultipart onNext: "
+
data
);
}
...
...
@@ -273,7 +264,7 @@ public class AppCrashHandler implements UncaughtExceptionHandler {
long
timetamp
=
System
.
currentTimeMillis
();
String
time
=
format
.
format
(
new
Date
());
String
MemberName
=
GsaCloudApplication
.
getMemberName
(
mContext
);
String
fileName
=
"crash-"
+
MemberName
+
"-"
+
time
+
"-"
+
timetamp
+
"-"
+
DeviceUtils
.
getVersionName
(
mContext
)
+
".xml"
;
String
fileName
=
"crash-"
+
MemberName
+
"-"
+
time
+
"-"
+
timetamp
+
"-"
+
DeviceUtils
.
getVersionName
(
mContext
)
+
CRASH_REPORTER_EXTENSION
;
if
(
Environment
.
getExternalStorageState
().
equals
(
Environment
.
MEDIA_MOUNTED
))
{
//外部存储卡
try
{
File
dir
=
new
File
(
FileUtils
.
ERRORLOG_PATH
);
...
...
public-base/src/main/java/com/gingersoft/gsa/cloud/globalconfig/applyOptions/MyOkhttpConfiguration.java
View file @
cd58cb90
...
...
@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.globalconfig.applyOptions;
import
android.content.Context
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.jess.arms.di.module.ClientModule
;
import
java.util.concurrent.TimeUnit
;
...
...
@@ -17,12 +18,13 @@ import okhttp3.OkHttpClient;
* description:
*/
public
class
MyOkhttpConfiguration
implements
ClientModule
.
OkhttpConfiguration
{
public
class
MyOkhttpConfiguration
implements
ClientModule
.
OkhttpConfiguration
{
@Override
public
void
configOkhttp
(
Context
context
,
OkHttpClient
.
Builder
builder
)
{
// builder.sslSocketFactory(); //支持 Https,详情请百度
builder
.
writeTimeout
(
15
,
TimeUnit
.
SECONDS
);
builder
.
writeTimeout
(
GsaCloudApplication
.
REQUEST_TIMEOUT
,
TimeUnit
.
SECONDS
);
builder
.
readTimeout
(
GsaCloudApplication
.
REQUEST_TIMEOUT
,
TimeUnit
.
SECONDS
);
//使用一行代码监听 Retrofit/Okhttp 上传下载进度监听,以及 Glide 加载进度监听 详细使用方法查看 https://github.com/JessYanCoding/ProgressManager
ProgressManager
.
getInstance
().
with
(
builder
);
//让 Retrofit 同时支持多个 BaseUrl 以及动态改变 BaseUrl. 详细使用请方法查看 https://github.com/JessYanCoding/RetrofitUrlManager
...
...
public-base/src/main/res/values/strings.xml
View file @
cd58cb90
...
...
@@ -117,6 +117,13 @@
<string
name=
"srl_footer_failed"
>
加載失敗
</string>
<string
name=
"srl_footer_nothing"
>
沒有更多數據了
</string>
<!-- EmptyViewFragment 空界面展示界面 -->
<string
name=
"emptyView_mode_title_loading"
>
顯示Loading
</string>
<string
name=
"emptyView_mode_desc_fail_title"
>
加載失敗
</string>
<string
name=
"emptyView_mode_desc_fail_desc"
>
請檢測網絡是否正常連接
</string>
<string
name=
"emptyView_mode_desc_retry"
>
點擊重試
</string>
<string
name=
"emptyView_mode_desc_double"
>
未獲取到數據
</string>
<!-- HttpError -->
<string
name=
"response_error_unknown_error"
>
未知錯誤
</string>
<string
name=
"response_error_network_unavailable"
>
網絡不可用
</string>
...
...
table-mode/src/main/AndroidManifest.xml
View file @
cd58cb90
...
...
@@ -8,8 +8,8 @@
<activity
android:name=
".mvp.ui.activity.MealStandActivity"
/>
<activity
android:name=
".mvp.ui.activity.OrderPayActivity"
/>
<activity
android:name=
".mvp.ui.activity.OrderContentActivity"
/>
<activity
android:name=
".mvp.ui.activity.OrderCenterActivity"
/>
<activity
android:name=
".mvp.ui.activity.OrderDetailActivity"
/>
<activity
android:name=
".mvp.ui.activity.
orderManager.
OrderCenterActivity"
/>
<activity
android:name=
".mvp.ui.activity.
orderManager.
OrderDetailActivity"
/>
<meta-data
android:name=
"com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
android:value=
"ConfigModule"
/>
...
...
table-mode/src/main/debug/AndroidManifest.xml
View file @
cd58cb90
...
...
@@ -10,8 +10,8 @@
android:roundIcon=
"@mipmap/ic_launcher_round"
android:supportsRtl=
"true"
android:theme=
"@style/AppTheme.Base"
>
<activity
android:name=
".mvp.ui.activity.OrderDetailActivity"
/>
<activity
android:name=
".mvp.ui.activity.OrderCenterActivity"
/>
<activity
android:name=
".mvp.ui.activity.
orderManager.
OrderDetailActivity"
/>
<activity
android:name=
".mvp.ui.activity.
orderManager.
OrderCenterActivity"
/>
<activity
android:name=
".mvp.ui.activity.TableActivity"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
...
...
@@ -31,12 +31,12 @@
android:name=
"design_height_in_dp"
android:value=
"540"
/>
</application>
<uses-permission
android:name=
"android.permission.READ_EXTERNAL_STORAGE"
/>
<uses-permission
android:name=
"android.permission.RECEIVE_USER_PRESENT"
/>
<uses-permission
android:name=
"android.permission.INTERNET"
/>
<uses-permission
android:name=
"android.permission.WAKE_LOCK"
/>
<uses-permission
android:name=
"android.permission.READ_PHONE_STATE"
/>
<uses-permission
android:name=
"android.permission.WRITE_EXTERNAL_STORAGE"
/>
<uses-permission
android:name=
"android.permission.READ_EXTERNAL_STORAGE"
/>
</manifest>
\ No newline at end of file
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/ComponentTable.java
View file @
cd58cb90
...
...
@@ -4,7 +4,7 @@ import com.billy.cc.core.component.CC;
import
com.billy.cc.core.component.CCResult
;
import
com.billy.cc.core.component.CCUtil
;
import
com.billy.cc.core.component.IComponent
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderCenterActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.
orderManager.
OrderCenterActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity
;
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/di/component/OrderCenterComponent.java
View file @
cd58cb90
...
...
@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.table.di.module.OrderCenterModule;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderCenterContract
;
import
com.jess.arms.di.scope.ActivityScope
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderCenterActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.
orderManager.
OrderCenterActivity
;
/**
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/di/component/OrderDetailComponent.java
View file @
cd58cb90
...
...
@@ -9,7 +9,7 @@ import com.gingersoft.gsa.cloud.table.di.module.OrderDetailModule;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract
;
import
com.jess.arms.di.scope.ActivityScope
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderDetailActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.
orderManager.
OrderDetailActivity
;
/**
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderCenterContract.java
View file @
cd58cb90
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
java.util.List
;
import
io.reactivex.Observable
;
/**
* ================================================
...
...
@@ -20,10 +26,21 @@ public interface OrderCenterContract {
//对于经常使用的关于UI的方法可以定义到IView中,如显示隐藏进度条,和显示文字消息
interface
View
extends
IView
{
void
showEmptyView
(
boolean
isSuccess
,
int
size
,
Throwable
t
);
void
returnOrderItemList
(
List
<
OrderDetailItem
>
orderItemList
);
void
setPageIndex
(
int
index
);
int
getPageIndex
();
int
getPageSize
();
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存
interface
Model
extends
IModel
{
Observable
<
BaseResult
>
loadOrderList
(
int
restaurantId
,
int
pageIndex
,
int
pageSize
);
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderCenterModel.java
View file @
cd58cb90
...
...
@@ -2,6 +2,9 @@ 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.table.mvp.model.service.MealService
;
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 +15,8 @@ import javax.inject.Inject;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderCenterContract
;
import
io.reactivex.Observable
;
/**
* ================================================
...
...
@@ -43,4 +48,10 @@ public class OrderCenterModel extends BaseModel implements OrderCenterContract.M
this
.
mGson
=
null
;
this
.
mApplication
=
null
;
}
@Override
public
Observable
<
BaseResult
>
loadOrderList
(
int
restaurantId
,
int
pageIndex
,
int
pageSize
)
{
return
mRepositoryManager
.
obtainRetrofitService
(
OrderService
.
class
)
.
loadOrderList
(
restaurantId
,
pageIndex
,
pageSize
);
}
}
\ No newline at end of file
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/OrderDetailItem.java
0 → 100644
View file @
cd58cb90
This diff is collapsed.
Click to expand it.
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/service/OrderService.java
0 → 100644
View file @
cd58cb90
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
service
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
io.reactivex.Observable
;
import
me.jessyan.retrofiturlmanager.RetrofitUrlManager
;
import
okhttp3.RequestBody
;
import
retrofit2.http.Body
;
import
retrofit2.http.GET
;
import
retrofit2.http.POST
;
import
retrofit2.http.Query
;
/**
* Created by Wyh on 2020/1/17.
*/
public
interface
OrderService
{
@POST
(
"order/list"
+
RetrofitUrlManager
.
IDENTIFICATION_PATH_SIZE
+
2
)
Observable
<
BaseResult
>
loadOrderList
(
@Query
(
"restaurantId"
)
int
restaurantId
,
@Query
(
"pageIndex"
)
int
pageIndex
,
@Query
(
"pageSize"
)
int
pageSize
);
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/AllOrderPresenter.java
View file @
cd58cb90
...
...
@@ -2,11 +2,15 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter;
import
android.app.Application
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.view.View
;
import
com.gingersoft.gsa.cloud.base.common.bean.TableBean
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.TableActivity
;
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.table.mvp.ui.activity.orderManager.OrderDetailActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.OrderCenterAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.TableAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.fragment.AllOrderFragment
;
import
com.jess.arms.base.DefaultAdapter
;
import
com.jess.arms.integration.AppManager
;
import
com.jess.arms.di.scope.FragmentScope
;
import
com.jess.arms.mvp.BasePresenter
;
...
...
@@ -17,7 +21,6 @@ import me.jessyan.rxerrorhandler.core.RxErrorHandler;
import
javax.inject.Inject
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.AllOrderContract
;
import
com.jess.arms.utils.DeviceUtils
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
@@ -46,12 +49,15 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
@Inject
AppManager
mAppManager
;
private
OrderCenterActivity
IActivity
;
private
OrderCenterAdapter
mOrderCenterAdapter
;
private
List
<
O
bject
>
mTable
List
=
new
ArrayList
<>();
private
List
<
O
rderDetailItem
>
mOrderItem
List
=
new
ArrayList
<>();
@Inject
public
AllOrderPresenter
(
AllOrderContract
.
Model
model
,
AllOrderContract
.
View
rootView
)
{
super
(
model
,
rootView
);
AllOrderFragment
allOrderFragment
=
(
AllOrderFragment
)
rootView
;
this
.
IActivity
=
(
OrderCenterActivity
)
allOrderFragment
.
getActivity
();
}
@Override
...
...
@@ -65,9 +71,32 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
public
void
initOrderAdapter
(
Context
context
)
{
if
(
mOrderCenterAdapter
==
null
)
{
mOrderCenterAdapter
=
new
OrderCenterAdapter
(
context
,
m
Table
List
);
mOrderCenterAdapter
=
new
OrderCenterAdapter
(
context
,
m
OrderItem
List
);
mRootView
.
setAllOrderAdapter
(
mOrderCenterAdapter
);
}
mOrderCenterAdapter
.
setOnItemClickListener
(
new
DefaultAdapter
.
OnRecyclerViewItemClickListener
()
{
@Override
public
void
onItemClick
(
View
view
,
int
viewType
,
Object
data
,
int
position
)
{
Intent
intent
=
new
Intent
(
IActivity
,
OrderDetailActivity
.
class
);
intent
.
putExtra
(
"orderDetailItem"
,
(
OrderDetailItem
)
data
);
mRootView
.
launchActivity
(
intent
);
}
});
}
public
void
updateOrderData
(
List
<
OrderDetailItem
>
orderItemList
)
{
if
(
orderItemList
!=
null
)
{
mOrderItemList
.
clear
();
mOrderItemList
.
addAll
(
orderItemList
);
mOrderCenterAdapter
.
notifyDataSetChanged
();
}
}
public
void
addOrderData
(
List
<
OrderDetailItem
>
orderItemList
)
{
if
(
orderItemList
!=
null
)
{
mOrderItemList
.
addAll
(
orderItemList
);
mOrderCenterAdapter
.
notifyDataSetChanged
();
}
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderCenterPresenter.java
View file @
cd58cb90
...
...
@@ -2,16 +2,29 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter;
import
android.app.Application
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
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.gingersoft.gsa.cloud.table.mvp.ui.activity.orderManager.OrderCenterActivity
;
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.OrderCenterContract
;
import
com.jess.arms.utils.RxLifecycleUtils
;
import
com.scwang.smartrefresh.layout.api.RefreshLayout
;
import
java.util.List
;
/**
...
...
@@ -37,9 +50,13 @@ public class OrderCenterPresenter extends BasePresenter<OrderCenterContract.Mode
@Inject
AppManager
mAppManager
;
private
OrderCenterActivity
IActivity
;
@Inject
public
OrderCenterPresenter
(
OrderCenterContract
.
Model
model
,
OrderCenterContract
.
View
rootView
)
{
super
(
model
,
rootView
);
this
.
IActivity
=
(
OrderCenterActivity
)
rootView
;
}
@Override
...
...
@@ -51,5 +68,68 @@ public class OrderCenterPresenter extends BasePresenter<OrderCenterContract.Mode
this
.
mApplication
=
null
;
}
/**
* 獲取訂單列表
*
* @param pageIndex
* @param pageSize
* @param refreshLayout
* @param isLoadMore
*/
public
void
loadOrderList
(
int
pageIndex
,
int
pageSize
,
RefreshLayout
refreshLayout
,
boolean
isLoadMore
)
{
int
restaurantId
=
GsaCloudApplication
.
getRestaurantId
(
mApplication
);
mModel
.
loadOrderList
(
restaurantId
,
pageIndex
,
pageSize
)
.
subscribeOn
(
Schedulers
.
io
())
.
doOnSubscribe
(
disposable
->
{
if
(
refreshLayout
==
null
)
{
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
);
}
resetRefreshLayout
();
}
@Override
public
void
onError
(
Throwable
t
)
{
super
.
onError
(
t
);
mRootView
.
showEmptyView
(
false
,
0
,
t
);
resetRefreshLayout
();
}
private
void
resetRefreshLayout
()
{
if
(
refreshLayout
!=
null
)
{
if
(
isLoadMore
)
{
refreshLayout
.
finishLoadMore
();
}
else
{
refreshLayout
.
finishRefresh
();
refreshLayout
.
resetNoMoreData
();
//setNoMoreData(false);
}
}
}
});
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/TablePresenter.java
View file @
cd58cb90
...
...
@@ -157,25 +157,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
});
return
;
}
// if (mBottomFunctionList.get(position).getResName().equals("↑")) {
// mBottomFunctionList.add(new Function((long) 5, 1, 2025, "skyorder", "", ""));
// mBottomFunctionList.add(new Function((long) 6, 1, 2025, "上菜紙", "", ""));
// for (int i = 0; i < mBottomFunctionList.size(); i++) {
// boolean isMore = mBottomFunctionList.get(i).getResName().equals("↑");
// if (isMore)
// mBottomFunctionList.get(i).setResName("↓");
// }
// mBottomFunctionAdapter.notifyDataSetChanged();
// } else if (mBottomFunctionList.get(position).getResName().equals("↓")) {
// mBottomFunctionList.remove(mBottomFunctionList.size() - 1);
// mBottomFunctionList.remove(mBottomFunctionList.size() - 1);
// for (int i = 0; i < mBottomFunctionList.size(); i++) {
// boolean isMore = mBottomFunctionList.get(i).getResName().equals("↓");
// if (isMore)
// mBottomFunctionList.get(i).setResName("↑");
// }
// mBottomFunctionAdapter.notifyDataSetChanged();
// }
}
});
}
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderCenterActivity.java
deleted
100644 → 0
View file @
1305e525
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
activity
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.util.TypedValue
;
import
android.view.Gravity
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.widget.TextView
;
import
com.billy.cc.core.component.CC
;
import
com.gingersoft.gsa.cloud.base.qmui.arch.QMUIFragment
;
import
com.gingersoft.gsa.cloud.base.qmui.arch.QMUIFragmentPagerAdapter
;
import
com.gingersoft.gsa.cloud.table.R2
;
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
;
import
com.gingersoft.gsa.cloud.ui.view.PagerSlidingTabStrip
;
import
com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog
;
import
com.jess.arms.base.BaseActivity
;
import
com.jess.arms.di.component.AppComponent
;
import
com.jess.arms.utils.ArmsUtils
;
import
com.gingersoft.gsa.cloud.table.di.component.DaggerOrderCenterComponent
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderCenterContract
;
import
com.gingersoft.gsa.cloud.table.mvp.presenter.OrderCenterPresenter
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.qmuiteam.qmui.alpha.QMUIAlphaImageButton
;
import
com.qmuiteam.qmui.widget.QMUITopBar
;
import
com.qmuiteam.qmui.widget.QMUIViewPager
;
import
com.qmuiteam.qmui.widget.tab.QMUITabBuilder
;
import
com.qmuiteam.qmui.widget.tab.QMUITabSegment
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
androidx.core.content.ContextCompat
;
import
androidx.fragment.app.Fragment
;
import
androidx.fragment.app.FragmentManager
;
import
androidx.viewpager.widget.PagerAdapter
;
import
androidx.viewpager.widget.ViewPager
;
import
butterknife.BindView
;
import
static
com
.
jess
.
arms
.
utils
.
Preconditions
.
checkNotNull
;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 03/13/2020 14:28
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public
class
OrderCenterActivity
extends
BaseActivity
<
OrderCenterPresenter
>
implements
OrderCenterContract
.
View
{
@BindView
(
R2
.
id
.
topbar
)
QMUITopBar
mTopBar
;
@BindView
(
R2
.
id
.
tabSegment
)
QMUITabSegment
mTabSegment
;
@BindView
(
R2
.
id
.
contentViewPager
)
ViewPager
mContentViewPager
;
private
String
[]
tabTitles
=
{
"全部"
,
"已取消"
};
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
DaggerOrderCenterComponent
//如找不到该类,请编译一下项目
.
builder
()
.
appComponent
(
appComponent
)
.
view
(
this
)
.
build
()
.
inject
(
this
);
}
@Override
public
int
initView
(
@Nullable
Bundle
savedInstanceState
)
{
return
R
.
layout
.
activity_order_center
;
//如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
}
@Override
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
initTabAndPager
();
}
private
void
initTabAndPager
()
{
QMUIFragmentPagerAdapter
pagerAdapter
=
new
QMUIFragmentPagerAdapter
(
getSupportFragmentManager
())
{
@Override
public
Fragment
createFragment
(
int
position
)
{
AllOrderFragment
fragment
=
new
AllOrderFragment
();
Bundle
bundle
=
new
Bundle
();
bundle
.
putInt
(
"currentPageIndex"
,
position
);
fragment
.
setArguments
(
bundle
);
return
fragment
;
}
@Override
public
int
getCount
()
{
return
2
;
}
@Override
public
CharSequence
getPageTitle
(
int
position
)
{
switch
(
position
)
{
case
0
:
return
"全部"
;
case
1
:
return
"已取消"
;
case
3
:
default
:
return
"全部"
;
}
}
};
mContentViewPager
.
setAdapter
(
pagerAdapter
);
mTabSegment
.
setupWithViewPager
(
mContentViewPager
);
}
@Override
public
void
initIntent
()
{
}
@Override
public
void
initTopBar
()
{
mTopBar
.
setBackgroundColor
(
ContextCompat
.
getColor
(
this
,
R
.
color
.
theme_color
));
mTopBar
.
addLeftBackImageButton
().
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
killMyself
();
}
});
mTopBar
.
setTitle
(
"張單管理"
);
}
@Override
public
void
initLanguage
()
{
}
@Override
public
void
initLayoutParams
()
{
}
@Override
public
void
initLayoutVisible
()
{
}
@Override
public
void
showLoading
(
String
message
)
{
if
(
message
!=
null
)
LoadingDialog
.
showDialogForLoading
(
this
,
message
,
true
);
else
LoadingDialog
.
showDialogForLoading
(
this
);
}
@Override
public
void
hideLoading
()
{
LoadingDialog
.
cancelDialogForLoading
();
}
@Override
public
void
showMessage
(
@NonNull
String
message
)
{
checkNotNull
(
message
);
ArmsUtils
.
makeText
(
this
,
message
);
}
@Override
public
void
launchActivity
(
@NonNull
Intent
intent
)
{
checkNotNull
(
intent
);
ArmsUtils
.
startActivity
(
intent
);
}
@Override
public
void
killMyself
()
{
finish
();
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderContentActivity.java
View file @
cd58cb90
...
...
@@ -43,7 +43,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/**
* ================================================
* Description:
* Description:
賬單內容
* <p>
* Created by MVPArmsTemplate on 01/09/2020 19:23
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderDetailActivity.java
deleted
100644 → 0
View file @
1305e525
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
activity
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
com.gingersoft.gsa.cloud.table.mvp.presenter.OrderDetailPresenter
;
import
com.jess.arms.base.BaseActivity
;
import
com.jess.arms.di.component.AppComponent
;
import
com.jess.arms.utils.ArmsUtils
;
import
com.gingersoft.gsa.cloud.table.di.component.DaggerOrderDetailComponent
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract
;
import
com.gingersoft.gsa.cloud.table.R
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
static
com
.
jess
.
arms
.
utils
.
Preconditions
.
checkNotNull
;
/**
* ================================================
* Description:
* <p>
* Created by MVPArmsTemplate on 03/13/2020 14:29
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public
class
OrderDetailActivity
extends
BaseActivity
<
OrderDetailPresenter
>
implements
OrderDetailContract
.
View
{
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
DaggerOrderDetailComponent
//如找不到该类,请编译一下项目
.
builder
()
.
appComponent
(
appComponent
)
.
view
(
this
)
.
build
()
.
inject
(
this
);
}
@Override
public
int
initView
(
@Nullable
Bundle
savedInstanceState
)
{
return
R
.
layout
.
activity_order_detail
;
//如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
}
@Override
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
}
@Override
public
void
initIntent
()
{
}
@Override
public
void
initTopBar
()
{
}
@Override
public
void
initLanguage
()
{
}
@Override
public
void
initLayoutParams
()
{
}
@Override
public
void
initLayoutVisible
()
{
}
@Override
public
void
showLoading
(
String
message
)
{
}
@Override
public
void
hideLoading
()
{
}
@Override
public
void
showMessage
(
@NonNull
String
message
)
{
checkNotNull
(
message
);
ArmsUtils
.
snackbarText
(
message
);
}
@Override
public
void
launchActivity
(
@NonNull
Intent
intent
)
{
checkNotNull
(
intent
);
ArmsUtils
.
startActivity
(
intent
);
}
@Override
public
void
killMyself
()
{
finish
();
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/TableActivity.java
View file @
cd58cb90
...
...
@@ -130,7 +130,6 @@ public class TableActivity extends BaseActivity<TablePresenter> implements Table
@Override
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
initTabBarViewPage
();
mPresenter
.
initBottomFunction
();
mPresenter
.
getTables
(
true
);
...
...
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderCenterActivity.java
0 → 100644
View file @
cd58cb90
This diff is collapsed.
Click to expand it.
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderDetailActivity.java
0 → 100644
View file @
cd58cb90
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
activity
.
orderManager
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.view.View
;
import
android.widget.LinearLayout
;
import
android.widget.ScrollView
;
import
android.widget.TextView
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
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.adapter.OrderDetailPayMethodAdapter
;
import
com.gingersoft.gsa.cloud.ui.recylcler.decorator.DividerItemDecoration
;
import
com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog
;
import
com.jess.arms.base.BaseActivity
;
import
com.jess.arms.di.component.AppComponent
;
import
com.jess.arms.utils.ArmsUtils
;
import
com.gingersoft.gsa.cloud.table.di.component.DaggerOrderDetailComponent
;
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
java.util.ArrayList
;
import
java.util.List
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
androidx.core.content.ContextCompat
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
butterknife.BindView
;
import
static
com
.
jess
.
arms
.
utils
.
Preconditions
.
checkNotNull
;
/**
* ================================================
* Description: 訂單詳情頁#顯示單條該餐廳下已結賬單
* <p>
* Created by MVPArmsTemplate on 03/13/2020 14:29
* <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
* <a href="https://github.com/JessYanCoding">Follow me</a>
* <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
* <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
* <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
* ================================================
*/
public
class
OrderDetailActivity
extends
BaseActivity
<
OrderDetailPresenter
>
implements
OrderDetailContract
.
View
{
@BindView
(
R2
.
id
.
topbar
)
QMUITopBar
mTopBar
;
@BindView
(
R2
.
id
.
scrollview
)
ScrollView
scrollview
;
@BindView
(
R2
.
id
.
tv_table_name
)
TextView
tv_table_name
;
@BindView
(
R2
.
id
.
tv_people_num
)
TextView
tv_people_num
;
@BindView
(
R2
.
id
.
tv_order_num
)
TextView
tv_order_num
;
@BindView
(
R2
.
id
.
tv_open_time
)
TextView
tv_open_time
;
@BindView
(
R2
.
id
.
tv_pay_time
)
TextView
tv_pay_time
;
@BindView
(
R2
.
id
.
tv_food_detail_text
)
TextView
tv_food_detail_text
;
@BindView
(
R2
.
id
.
recycler_food
)
RecyclerView
recycler_food
;
@BindView
(
R2
.
id
.
recycler_discount
)
RecyclerView
recycler_discount
;
@BindView
(
R2
.
id
.
recycler_pay_method
)
RecyclerView
recycler_pay_method
;
@BindView
(
R2
.
id
.
tv_total_text
)
TextView
tv_total_text
;
@BindView
(
R2
.
id
.
tv_server_money_text
)
TextView
tv_server_money_text
;
@BindView
(
R2
.
id
.
tv_total_money_text
)
TextView
tv_total_money_text
;
@BindView
(
R2
.
id
.
tv_total
)
TextView
tv_total
;
@BindView
(
R2
.
id
.
tv_server_money
)
TextView
tv_server_money
;
@BindView
(
R2
.
id
.
tv_total_money
)
TextView
tv_total_money
;
@BindView
(
R2
.
id
.
btn_print_order
)
QMUIAlphaButton
btn_print_order
;
@BindView
(
R2
.
id
.
btn_tips
)
QMUIAlphaButton
btn_tips
;
@BindView
(
R2
.
id
.
btn_refund
)
QMUIAlphaButton
btn_refund
;
@BindView
(
R2
.
id
.
btn_cancel_order
)
QMUIAlphaButton
btn_cancel_order
;
@BindView
(
R2
.
id
.
btn_modify_order
)
QMUIAlphaButton
btn_modify_order
;
@BindView
(
R2
.
id
.
ll_bottom
)
LinearLayout
ll_bottom
;
@BindView
(
R2
.
id
.
tv_order_status
)
TextView
tv_order_status
;
private
OrderDetailItem
mOrderDetailItem
;
private
OrderDetailFoodAdapter
mOrderDetailFoodAdapter
;
private
List
<
OrderDetail
>
mOrderDetailList
=
new
ArrayList
<>();
private
OrderDetailPayMethodAdapter
MOrderDetailPayMethodAdapter
;
// private List<Object> mOrderDetailList;
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
DaggerOrderDetailComponent
//如找不到该类,请编译一下项目
.
builder
()
.
appComponent
(
appComponent
)
.
view
(
this
)
.
build
()
.
inject
(
this
);
}
@Override
public
int
initView
(
@Nullable
Bundle
savedInstanceState
)
{
return
R
.
layout
.
activity_order_detail
;
//如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
}
@Override
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
initOrderDetail
(
mOrderDetailItem
);
}
private
void
initOrderDetail
(
OrderDetailItem
mOrderDetailItem
)
{
if
(
mOrderDetailItem
!=
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
.
getCreateTime
());
tv_table_name
.
setText
(
tableName
+
mOrderDetailItem
.
getId
());
tv_people_num
.
setText
(
pax
+
mOrderDetailItem
.
getPerson
());
tv_order_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_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
);
mOrderDetailFoodAdapter
=
new
OrderDetailFoodAdapter
(
mOrderDetailList
);
recycler_food
.
setAdapter
(
mOrderDetailFoodAdapter
);
LinearLayoutManager
mAllOrderRecycleLayoutManager
=
new
LinearLayoutManager
(
this
,
LinearLayoutManager
.
VERTICAL
,
false
);
recycler_food
.
setLayoutManager
(
mAllOrderRecycleLayoutManager
);
recycler_food
.
addItemDecoration
(
new
DividerItemDecoration
(
this
,
LinearLayoutManager
.
VERTICAL
));
}
}
@Override
public
void
initIntent
()
{
Intent
intent
=
getIntent
();
mOrderDetailItem
=
(
OrderDetailItem
)
intent
.
getSerializableExtra
(
"orderDetailItem"
);
}
@Override
public
void
initTopBar
()
{
mTopBar
.
setBackgroundColor
(
ContextCompat
.
getColor
(
this
,
R
.
color
.
theme_color
));
mTopBar
.
addLeftBackImageButton
().
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
killMyself
();
// 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
));
}
@Override
public
void
initLanguage
()
{
}
@Override
public
void
initLayoutParams
()
{
}
@Override
public
void
initLayoutVisible
()
{
}
@Override
public
void
showLoading
(
String
message
)
{
if
(
message
!=
null
)
LoadingDialog
.
showDialogForLoading
(
this
,
message
,
true
);
else
LoadingDialog
.
showDialogForLoading
(
this
);
}
@Override
public
void
hideLoading
()
{
LoadingDialog
.
cancelDialogForLoading
();
}
@Override
public
void
showMessage
(
@NonNull
String
message
)
{
checkNotNull
(
message
);
ArmsUtils
.
makeText
(
this
,
message
);
}
@Override
public
void
launchActivity
(
@NonNull
Intent
intent
)
{
checkNotNull
(
intent
);
ArmsUtils
.
startActivity
(
intent
);
}
@Override
public
void
killMyself
()
{
finish
();
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderCenterAdapter.java
View file @
cd58cb90
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
adapter
;
import
android.app.Activity
;
import
android.content.Context
;
import
android.view.View
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.TextView
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.R2
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.
BillOrderMoney
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.
OrderDetailItem
;
import
com.jess.arms.base.BaseHolder
;
import
com.jess.arms.base.DefaultAdapter
;
import
com.qmuiteam.qmui.alpha.QMUIAlphaButton
;
...
...
@@ -25,11 +24,11 @@ import butterknife.BindView;
* 修订历史:2018/6/27
* 描述:
*/
public
class
OrderCenterAdapter
extends
DefaultAdapter
<
O
bject
>
{
public
class
OrderCenterAdapter
extends
DefaultAdapter
<
O
rderDetailItem
>
{
private
Context
mContext
;
public
OrderCenterAdapter
(
Context
context
,
List
<
O
bject
>
infos
)
{
public
OrderCenterAdapter
(
Context
context
,
List
<
O
rderDetailItem
>
infos
)
{
super
(
infos
);
this
.
mContext
=
context
;
}
...
...
@@ -40,7 +39,7 @@ public class OrderCenterAdapter extends DefaultAdapter<Object> {
}
@Override
public
BaseHolder
<
O
bject
>
getHolder
(
View
v
,
int
viewType
)
{
public
BaseHolder
<
O
rderDetailItem
>
getHolder
(
View
v
,
int
viewType
)
{
return
new
OrderCenterItemHolder
(
v
);
}
...
...
@@ -49,7 +48,7 @@ public class OrderCenterAdapter extends DefaultAdapter<Object> {
return
R
.
layout
.
item_order_center
;
}
class
OrderCenterItemHolder
extends
BaseHolder
<
O
bject
>
{
class
OrderCenterItemHolder
extends
BaseHolder
<
O
rderDetailItem
>
{
@BindView
(
R2
.
id
.
ll_root_container
)
LinearLayout
ll_root_container
;
...
...
@@ -79,29 +78,33 @@ public class OrderCenterAdapter extends DefaultAdapter<Object> {
@BindView
(
R2
.
id
.
btn_order_status
)
QMUIAlphaButton
btn_order_status
;
@BindView
(
R2
.
id
.
ll_bottom
)
QMUIAlphaButton
ll_bottom
;
LinearLayout
ll_bottom
;
public
OrderCenterItemHolder
(
View
itemView
)
{
super
(
itemView
);
}
@Override
public
void
setData
(
O
bject
datasBean
,
int
position
)
{
public
void
setData
(
O
rderDetailItem
datasBean
,
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
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"
,
"取消訂單"
));
private
OnItemClickListener
mOnItemClickListener
;
public
void
setOnItemClickListener
(
OnItemClickListener
onItemClickListener
)
{
mOnItemClickListener
=
onItemClickListener
;
}
public
interface
OnItemClickListener
{
void
onItemClick
(
BillOrderMoney
datasBean
,
int
position
);
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetailFoodAdapter.java
0 → 100644
View file @
cd58cb90
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
adapter
;
import
android.view.Gravity
;
import
android.widget.TextView
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.chad.library.adapter.base.BaseViewHolder
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.common.bean.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
java.util.List
;
import
androidx.annotation.Nullable
;
public
class
OrderDetailFoodAdapter
extends
BaseQuickAdapter
<
OrderDetail
,
BaseViewHolder
>
{
public
OrderDetailFoodAdapter
(
@Nullable
List
<
OrderDetail
>
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
;
}
tv_food_name
.
setText
(
productName
);
helper
.
setText
(
R
.
id
.
tv_food_number
,
item
.
getNumber
());
helper
.
setText
(
R
.
id
.
tv_food_total
,
"$"
+
item
.
getPrice
()
*
item
.
getNumber
());
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderDetailPayMethodAdapter.java
0 → 100644
View file @
cd58cb90
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
adapter
;
import
android.view.Gravity
;
import
android.widget.TextView
;
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
java.util.List
;
import
androidx.annotation.Nullable
;
public
class
OrderDetailPayMethodAdapter
extends
BaseQuickAdapter
<
OrderDetail
,
BaseViewHolder
>
{
public
OrderDetailPayMethodAdapter
(
@Nullable
List
<
OrderDetail
>
data
)
{
super
(
R
.
layout
.
item_order_detail_pay_method
,
data
);
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
OrderDetail
item
)
{
helper
.
setText
(
R
.
id
.
tv_name
,
item
.
getNumber
());
helper
.
setText
(
R
.
id
.
tv_money
,
"$"
+
item
.
getPrice
()
*
item
.
getNumber
());
}
}
table-mode/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/fragment/AllOrderFragment.java
View file @
cd58cb90
...
...
@@ -6,8 +6,11 @@ import android.os.Message;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
com.gingersoft.gsa.cloud.table.R2
;
import
com.gingersoft.gsa.cloud.ui.recylcler.decorator.GridDividerItemDecoration
;
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.jess.arms.base.BaseFragment
;
import
com.jess.arms.base.DefaultAdapter
;
import
com.jess.arms.di.component.AppComponent
;
...
...
@@ -16,10 +19,12 @@ 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.util.QMUIDisplayHelper
;
import
com.scwang.smartrefresh.layout.SmartRefreshLayout
;
import
com.scwang.smartrefresh.layout.api.RefreshLayout
;
import
com.scwang.smartrefresh.layout.listener.OnLoadMoreListener
;
import
com.scwang.smartrefresh.layout.listener.OnRefreshListener
;
import
java.util.List
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
...
...
@@ -44,11 +49,15 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
public
class
AllOrderFragment
extends
BaseFragment
<
AllOrderPresenter
>
implements
AllOrderContract
.
View
{
@BindView
(
R2
.
id
.
refreshLayout
)
Smart
RefreshLayout
refreshLayout
;
RefreshLayout
refreshLayout
;
@BindView
(
R2
.
id
.
recycle_order
)
RecyclerView
recycle_order
;
private
int
currentPageInde
;
private
OrderCenterActivity
orderCenterActivity
;
private
int
currentPageIndex
;
private
int
pageIndex
=
1
;
private
int
pageSize
=
10
;
public
static
AllOrderFragment
newInstance
()
{
AllOrderFragment
fragment
=
new
AllOrderFragment
();
...
...
@@ -72,9 +81,28 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
@Override
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
currentPageInde
=
(
int
)
getArguments
().
getInt
(
"currentPageIndex"
,
0
);
currentPageIndex
=
getArguments
().
getInt
(
"currentPageIndex"
,
0
);
orderCenterActivity
=
(
OrderCenterActivity
)
getActivity
();
mPresenter
.
initOrderAdapter
(
getActivity
());
initRefreshLayout
();
}
private
void
initRefreshLayout
()
{
refreshLayout
.
setOnRefreshListener
(
new
OnRefreshListener
()
{
@Override
public
void
onRefresh
(
@NonNull
final
RefreshLayout
refreshLayout
)
{
//重新獲取第一頁數據
pageIndex
=
1
;
orderCenterActivity
.
loadOrderList
(
refreshLayout
,
false
);
}
});
refreshLayout
.
setOnLoadMoreListener
(
new
OnLoadMoreListener
()
{
@Override
public
void
onLoadMore
(
@NonNull
final
RefreshLayout
refreshLayout
)
{
orderCenterActivity
.
loadOrderList
(
refreshLayout
,
true
);
}
});
}
@Override
...
...
@@ -82,16 +110,17 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
if
(
data
!=
null
&&
data
instanceof
Message
)
{
switch
(((
Message
)
data
).
what
)
{
case
0
:
List
<
OrderDetailItem
>
datasBeans
=
(
List
<
OrderDetailItem
>)
((
Message
)
data
).
obj
;
if
(
mPresenter
!=
null
)
{
mPresenter
.
updateOrderData
(
datasBeans
);
}
break
;
case
1
:
List
<
OrderDetailItem
>
addDataItem
=
(
List
<
OrderDetailItem
>)
((
Message
)
data
).
obj
;
if
(
mPresenter
!=
null
)
{
mPresenter
.
addOrderData
(
addDataItem
);
}
break
;
case
1
:
//刷新全部数据
// datasBeans = (List<TableBean.DataBean>) ((Message) data).obj;
// if (mPresenter != null) {
// //recycleView正在滑动
// if (recycle_all_table.getScrollState() != 0) {
// } else {
// mPresenter.updateAllTableData(getActivity(), datasBeans);
// }
// }
default
:
//do something
break
;
...
...
@@ -123,8 +152,8 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
@Override
public
void
killMyself
()
{
}
}
@Override
public
void
setAllOrderAdapter
(
DefaultAdapter
adapter
)
{
...
...
@@ -135,7 +164,23 @@ public class AllOrderFragment extends BaseFragment<AllOrderPresenter> implements
private
void
initAllOrderRecycleViewLayout
()
{
LinearLayoutManager
mAllOrderRecycleLayoutManager
=
new
LinearLayoutManager
(
getActivity
(),
LinearLayoutManager
.
VERTICAL
,
false
);
recycle_order
.
setLayoutManager
(
mAllOrderRecycleLayoutManager
);
recycle_order
.
addItemDecoration
(
new
GridDividerItemDecoration
(
QMUIDisplayHelper
.
dpToPx
(
1
),
ArmsUtils
.
getColor
(
getActivity
(),
R
.
color
.
theme_grey_color
)));
recycle_order
.
addItemDecoration
(
new
DividerItemDecoration
(
orderCenterActivity
,
LinearLayoutManager
.
VERTICAL
));
}
public
int
getPageIndex
()
{
return
pageIndex
;
}
public
void
setPageIndex
(
int
pageIndex
)
{
this
.
pageIndex
=
pageIndex
;
}
public
int
getPageSize
()
{
return
pageSize
;
}
public
void
setPageSize
(
int
pageSize
)
{
this
.
pageSize
=
pageSize
;
}
}
table-mode/src/main/res/layout/activity_order_center.xml
View file @
cd58cb90
...
...
@@ -33,4 +33,11 @@
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 @
cd58cb90
This diff is collapsed.
Click to expand it.
table-mode/src/main/res/layout/fragment_all_order.xml
View file @
cd58cb90
...
...
@@ -14,7 +14,8 @@
android:id=
"@+id/recycle_order"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:overScrollMode=
"never"
/>
android:overScrollMode=
"never"
android:background=
"@color/theme_background_color"
/>
</com.scwang.smartrefresh.layout.SmartRefreshLayout>
</FrameLayout>
...
...
table-mode/src/main/res/layout/item_order_center.xml
View file @
cd58cb90
...
...
@@ -4,6 +4,7 @@
android:id=
"@+id/ll_root_container"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp_5"
android:background=
"@drawable/selector_item_background"
android:orientation=
"vertical"
android:padding=
"@dimen/dp_8"
>
...
...
@@ -33,23 +34,12 @@
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
/>
<TextView
android:id=
"@+id/tv_people_num"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_gravity=
"right|center_vertical"
android:layout_weight=
"1"
android:gravity=
"right"
android:text=
"人數:2"
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp_
3
"
android:layout_marginTop=
"@dimen/dp_
5
"
android:orientation=
"horizontal"
>
<TextView
...
...
@@ -62,29 +52,49 @@
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
/>
<TextView
android:id=
"@+id/tv_p
ay_money
"
android:id=
"@+id/tv_p
eople_num
"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"right|center_vertical"
android:text=
"金額:$230"
android:gravity=
"right"
android:text=
"人數:2"
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_1
8"
android:textStyle=
"bold"
/>
android:textSize=
"@dimen/sp_1
4"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp_3"
android:orientation=
"horizontal"
>
<TextView
android:id=
"@+id/tv_pay_time"
android:layout_width=
"wrap_content
"
android:layout_width=
"0dp
"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center_vertical"
android:layout_marginTop=
"@dimen/dp_3"
android:layout_weight=
"1"
android:text=
"結賬:2019-7-2"
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
/>
<TextView
android:id=
"@+id/tv_pay_money"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"right|center_vertical"
android:gravity=
"right"
android:text=
"金額:$230"
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_18"
android:textStyle=
"bold"
/>
</LinearLayout>
<LinearLayout
android:id=
"@+id/ll_bottom"
...
...
@@ -111,17 +121,16 @@
android:layout_marginRight=
"@dimen/dp_10"
android:background=
"@color/green_400"
android:text=
"貼士"
android:visibility=
"gone"
android:textColor=
"@color/theme_white_color"
android:textSize=
"@dimen/sp_13"
/>
android:textSize=
"@dimen/sp_13"
android:visibility=
"gone"
/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id=
"@+id/btn_cancel_order"
android:layout_width=
"@dimen/dp_65"
android:layout_height=
"@dimen/dp_35"
android:background=
"@color/red_400"
android:layout_marginRight=
"@dimen/dp_10"
android:background=
"@color/red_400"
android:text=
"取消訂單"
android:textColor=
"@color/theme_white_color"
android:textSize=
"@dimen/sp_13"
/>
...
...
@@ -135,7 +144,7 @@
android:text=
"退款"
android:textColor=
"@color/theme_white_color"
android:textSize=
"@dimen/sp_13"
android:visibility=
"
visibl
e"
/>
android:visibility=
"
gon
e"
/>
<com.qmuiteam.qmui.alpha.QMUIAlphaButton
android:id=
"@+id/btn_modify_order"
...
...
@@ -143,18 +152,18 @@
android:layout_height=
"@dimen/dp_35"
android:background=
"@color/blue_300"
android:text=
"修改訂單"
android:visibility=
"gone"
android:textColor=
"@color/theme_white_color"
android:textSize=
"@dimen/sp_13"
/>
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"
android:background=
"@color/gray"
android:clickable=
"false"
android:text=
"已取消"
android:textColor=
"@color/theme_white_color"
android:clickable=
"false"
android:textSize=
"@dimen/sp_13"
android:visibility=
"gone"
/>
</LinearLayout>
...
...
table-mode/src/main/res/layout/item_order_detail_food.xml
0 → 100644
View file @
cd58cb90
<?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_height=
"fill_parent"
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:weightSum=
"6"
>
<TextView
android:id=
"@+id/tv_food_name"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"3"
android:ellipsize=
"end"
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
android:maxLines=
"1"
android:text=
""
/>
<RelativeLayout
android:layout_width=
"0dp"
android:layout_height=
"match_parent"
android:layout_weight=
"3"
android:orientation=
"horizontal"
>
<TextView
android:id=
"@+id/tv_food_number"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
""
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_14"
/>
<TextView
android:id=
"@+id/tv_food_total"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:text=
""
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
0 → 100644
View file @
cd58cb90
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:orientation=
"horizontal"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<TextView
android:id=
"@+id/tv_name"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp_10"
android:text=
""
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_16"
/>
<TextView
android:id=
"@+id/tv_money"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_marginTop=
"@dimen/dp_10"
android:text=
""
android:textColor=
"@color/black"
android:textSize=
"@dimen/sp_16"
/>
</RelativeLayout>
\ No newline at end of file
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