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
19072f96
Commit
19072f96
authored
Sep 09, 2020
by
宁斌
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1、餐檯模式使用會員修改
2、删除食品页面, 送单接口调整 3、首页多次登出 再次进入,退出不了应用
parent
e3e7e244
Show whitespace changes
Inline
Side-by-side
Showing
63 changed files
with
827 additions
and
764 deletions
+827
-764
arms/src/main/java/com/jess/arms/base/BaseFragment.java
+5
-0
arms/src/main/java/com/jess/arms/di/module/ClientModule.java
+1
-1
base-module/src/main/AndroidManifest.xml
+3
-1
base-module/src/main/debug/AndroidManifest.xml
+3
-1
base-module/src/main/java/com/gingersoft/gsa/cloud/base/application/GsaCloudApplication.java
+1
-1
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/MemberInfo.java
+7
-6
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderDetail.java
+27
-1
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderDiscount.java
+3
-1
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderPayRequest.java
+6
-2
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/RestaurantExpandInfoUtils.java
+1
-1
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/TableBean.java
+2
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/TableExtBean.java
+1
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/mealManage/MyOrderManage.java
+59
-43
base-module/src/main/java/com/gingersoft/gsa/cloud/base/utils/view/QRCodeUtil.java
+32
-2
base-module/src/main/java/com/gingersoft/gsa/cloud/function/FunctionManager.java
+17
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/globalconfig/applyOptions/MyResponseErrorListener.java
+6
-5
base-module/src/main/java/com/gingersoft/gsa/cloud/globalconfig/applyOptions/MyRxCacheConfiguration.java
+1
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/globalconfig/lifecyclesOptioins/MyActivityLifecycle.java
+5
-1
base-module/src/main/java/com/gingersoft/gsa/cloud/ui/bean/view/SectionTextItem3.java
+4
-5
base-module/src/main/java/com/gingersoft/gsa/cloud/ui/view/OrderPayView.java
+46
-3
base-module/src/main/java/com/gingersoft/gsa/cloud/zxing/MipcaCaptureActivity.java
+11
-9
base-module/src/main/java/com/gingersoft/gsa/cloud/zxing/PointsOverlayView.java
+0
-53
coldchain-module/src/main/java/com/gingersoft/coldchain_module/mvp/ui/activity/OrderDetailsActivity.java
+2
-1
download-module/src/main/java/com/gingersoft/gsa/cloud/download/mvp/model/downmanager/DownloadManager.java
+1
-3
download-module/src/main/java/com/gingersoft/gsa/cloud/download/mvp/model/downmanager/DownloadTaskImp.java
+0
-18
download-module/src/main/java/com/gingersoft/gsa/cloud/download/mvp/presenter/DownloadPresenter.java
+1
-1
login-module/src/main/AndroidManifest.xml
+2
-3
login-module/src/main/debug/AndroidManifest.xml
+4
-2
login-module/src/main/java/com/gingersoft/gsa/cloud/login/mvp/presenter/BaseLoginPresenter.java
+13
-4
login-module/src/main/java/com/gingersoft/gsa/cloud/login/mvp/ui/activity/mvp/ui/activity/ChooseRestaurantActivity.java
+6
-2
login-module/src/main/java/com/gingersoft/gsa/cloud/login/mvp/ui/activity/mvp/ui/activity/WelcomeActivity.java
+6
-2
main-module/src/main/AndroidManifest.xml
+4
-2
main-module/src/main/debug/AndroidManifest.xml
+2
-1
main-module/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/NewMainActivity.java
+11
-6
manager-module/src/main/java/com/gingersoft/gsa/cloud/manager/mvp/ui/activity/TableManageActivity.java
+2
-2
manager-module/src/main/java/com/gingersoft/gsa/cloud/manager/mvp/ui/adapter/AreaManageAdapter.java
+2
-1
manager-module/src/main/java/com/gingersoft/gsa/cloud/manager/mvp/ui/fragment/AddAreaFragment.java
+1
-1
manager-module/src/main/res/layout/manager_item_manage_table.xml
+0
-1
print-module/src/main/java/com/joe/print/mvp/print/PrintBill.java
+4
-4
print-module/src/main/java/com/joe/print/mvp/print/PrinterRoot.java
+24
-3
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/MealStandContract.java
+2
-4
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderPayContract.java
+0
-2
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/OrderDetailItem.java
+23
-11
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/OrderPayRespose.java
+29
-0
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/request/AddOrderRequest.java
+9
-1
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/request/DeleteOrderRequest.java
+0
-37
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/service/MealService.java
+0
-5
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/BaseOrderPresenter.java
+105
-41
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/MealStandPresenter.java
+98
-71
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderContentPresenter.java
+21
-1
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderPayPresenter.java
+42
-59
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/TablePresenter.java
+1
-2
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/orderManager/AllOrderPresenter.java
+25
-18
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/MealStandActivity.java
+17
-5
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderContentActivity.java
+6
-12
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderPayActivity.java
+23
-244
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/SoldoutCtrlActivity.java
+7
-7
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/TableActivity.java
+13
-2
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderDetailActivity.java
+21
-21
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderMoneyAdapter.java
+27
-0
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/meal/SelectMealAdapter.java
+13
-8
table-module/src/main/res/layout/meal_item_select_meal_stand.xml
+4
-13
table-module/src/main/res/layout/table_activity_meal_stand.xml
+15
-7
No files found.
arms/src/main/java/com/jess/arms/base/BaseFragment.java
View file @
19072f96
...
...
@@ -32,11 +32,15 @@ import com.jess.arms.utils.ArmsUtils;
import
com.qmuiteam.qmui.arch.QMUIFragment
;
import
com.qmuiteam.qmui.skin.QMUISkinMaker
;
import
com.trello.rxlifecycle2.android.FragmentEvent
;
import
java.util.Observable
;
import
javax.inject.Inject
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
androidx.fragment.app.Fragment
;
import
androidx.fragment.app.FragmentActivity
;
import
io.reactivex.Observer
;
import
io.reactivex.subjects.BehaviorSubject
;
import
io.reactivex.subjects.Subject
;
import
me.yokeyword.fragmentation.ExtraTransaction
;
...
...
@@ -68,6 +72,7 @@ public abstract class BaseFragment<P extends IPresenter> extends Fragment implem
final
SupportFragmentDelegate
mDelegate
=
new
SupportFragmentDelegate
(
this
);
protected
BaseFragmentActivity
_mActivity
;
private
Observable
mObservable
;
@NonNull
@Override
...
...
arms/src/main/java/com/jess/arms/di/module/ClientModule.java
View file @
19072f96
...
...
@@ -58,7 +58,7 @@ import retrofit2.converter.gson.GsonConverterFactory;
*/
@Module
public
abstract
class
ClientModule
{
public
static
int
TIME_OUT
=
1
0
;
public
static
int
TIME_OUT
=
1
5
;
/**
* 提供 {@link Retrofit}
...
...
base-module/src/main/AndroidManifest.xml
View file @
19072f96
...
...
@@ -10,7 +10,9 @@
android:networkSecurityConfig=
"@xml/network_android"
android:theme=
"@style/AppTheme"
>
<activity
android:name=
"com.gingersoft.gsa.cloud.ui.activity.WebActivity"
/>
<activity
android:name=
"com.gingersoft.gsa.cloud.zxing.MipcaCaptureActivity"
/>
<activity
android:name=
"com.gingersoft.gsa.cloud.zxing.MipcaCaptureActivity"
android:launchMode=
"singleInstance"
/>
<meta-data
android:name=
"com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
...
...
base-module/src/main/debug/AndroidManifest.xml
View file @
19072f96
...
...
@@ -10,7 +10,9 @@
android:networkSecurityConfig=
"@xml/network_android"
android:theme=
"@style/AppTheme"
>
<activity
android:name=
"com.gingersoft.gsa.cloud.ui.activity.WebActivity"
/>
<activity
android:name=
"com.gingersoft.gsa.cloud.zxing.MipcaCaptureActivity"
/>
<activity
android:name=
"com.gingersoft.gsa.cloud.zxing.MipcaCaptureActivity"
android:launchMode=
"singleInstance"
/>
<meta-data
android:name=
"com.gingersoft.gsa.cloud.globalconfig.GlobalConfiguration"
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/application/GsaCloudApplication.java
View file @
19072f96
...
...
@@ -364,7 +364,7 @@ public class GsaCloudApplication extends BaseApplication {
}
/**
* 获取系统上下文
:用于ToastUtil类
* 获取系统上下文
*/
public
static
GsaCloudApplication
getAppContext
()
{
return
mAppContext
;
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/MemberInfo.java
View file @
19072f96
...
...
@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.base.common.bean;
import
android.text.TextUtils
;
import
java.io.Serializable
;
import
java.util.Date
;
import
lombok.Data
;
...
...
@@ -14,7 +15,7 @@ import lombok.Data;
* 描述:
*/
@Data
public
class
MemberInfo
{
public
class
MemberInfo
implements
Serializable
{
/**
* ablediscount : 0
...
...
@@ -198,7 +199,7 @@ public class MemberInfo {
}
@Data
public
static
class
CreateTimeBean
{
public
static
class
CreateTimeBean
implements
Serializable
{
/**
* date : 28
* day : 4
...
...
@@ -224,7 +225,7 @@ public class MemberInfo {
}
@Data
public
static
class
OptTimeBean
{
public
static
class
OptTimeBean
implements
Serializable
{
/**
* date : 25
* day : 6
...
...
@@ -250,7 +251,7 @@ public class MemberInfo {
}
@Data
public
static
class
UpdateTimeBean
{
public
static
class
UpdateTimeBean
implements
Serializable
{
/**
* date : 23
* day : 4
...
...
@@ -276,7 +277,7 @@ public class MemberInfo {
}
@Data
public
static
class
MemberExpireDateBean
{
public
static
class
MemberExpireDateBean
implements
Serializable
{
/**
* date : 25
* day : 6
...
...
@@ -302,7 +303,7 @@ public class MemberInfo {
}
@Data
public
static
class
VaildTimeBean
{
public
static
class
VaildTimeBean
implements
Serializable
{
/**
* date : 25
* day : 6
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderDetail.java
View file @
19072f96
...
...
@@ -67,7 +67,6 @@ public class OrderDetail implements Serializable {
private
int
bgColor
;
//字體色
private
int
fontColor
;
//是否组合商品 1-组合商品 2-组合商品的子商品
private
int
ComboLevel
=
0
;
//套餐食品是否自動跟餐
...
...
@@ -76,6 +75,19 @@ public class OrderDetail implements Serializable {
* 動態的最大選中數
*/
private
String
currentMaxNumber
=
""
;
/**
* 删除食品相关
*/
//该食品是否修改过
private
boolean
isModify
=
false
;
//修改食品前的数量
private
int
modifyBeforeNumber
=
0
;
//取消食品备注
private
String
cancelReason
;
//取消食品原因ID
private
int
reasonId
;
//取消食品数量
private
int
cancelNumber
;
//"food" or "discount" or "modifiy"
private
int
prop
=
FOOD_PROP
;
/**
...
...
@@ -297,6 +309,20 @@ public class OrderDetail implements Serializable {
this
.
currentMaxNumber
=
orderDetail
.
currentMaxNumber
;
this
.
pointsAdd
=
orderDetail
.
pointsAdd
;
this
.
pointsRedeem
=
orderDetail
.
pointsRedeem
;
this
.
isModify
=
orderDetail
.
isModify
;
this
.
modifyBeforeNumber
=
orderDetail
.
modifyBeforeNumber
;
this
.
cancelReason
=
orderDetail
.
cancelReason
;
this
.
reasonId
=
orderDetail
.
reasonId
;
this
.
cancelNumber
=
orderDetail
.
cancelNumber
;
}
public
boolean
isModify
()
{
if
(!
isNew
&&
modifyBeforeNumber
!=
0
&&
number
!=
modifyBeforeNumber
)
{
isModify
=
true
;
}
else
{
isModify
=
false
;
}
return
isModify
;
}
public
int
getSelected
()
{
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderDiscount.java
View file @
19072f96
package
com
.
gingersoft
.
gsa
.
cloud
.
base
.
common
.
bean
;
import
java.io.Serializable
;
import
lombok.Data
;
/**
...
...
@@ -69,7 +71,7 @@ public class OrderDiscount {
}
@Data
public
static
class
Respose
{
public
static
class
Respose
implements
Serializable
{
/**
* 整單折扣ID
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/OrderPayRequest.java
View file @
19072f96
...
...
@@ -26,10 +26,14 @@ public class OrderPayRequest {
private
int
tableId
;
private
String
tableNumber
;
private
long
memberId
;
/
/當前加的積分
/
**當前加的積分*/
private
Double
pointsAdd
;
/
/當前減去的積分
/
**當前減去的積分*/
private
Double
pointsUse
;
/**
* 是否免服務費(0:否 1:是)
*/
private
int
whetherFreeService
;
private
List
<
orderPay
>
orderPays
=
new
ArrayList
<>();
@Data
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/RestaurantExpandInfoUtils.java
View file @
19072f96
...
...
@@ -37,7 +37,7 @@ public class RestaurantExpandInfoUtils {
GsaCloudApplication
.
androidSetting
.
setMergeSendFood
(
expandInfo
.
getValueInt
()
==
1
?
true
:
false
);
}
if
(
expandInfo
.
getSettingName
().
equals
(
ExpandConstant
.
AutoPrinterParper
))
{
GsaCloudApplication
.
androidSetting
.
setAutoPrinterParper
(
expandInfo
.
getValueInt
()
==
1
?
true
:
false
);
GsaCloudApplication
.
androidSetting
.
setAutoPrinterParper
(
expandInfo
.
getValueInt
()
==
1
?
true
:
false
);
}
}
}
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/TableBean.java
View file @
19072f96
...
...
@@ -174,6 +174,7 @@ public class TableBean {
tableBean
.
setId
(
dataBean
.
getId
());
tableBean
.
setTableName
(
dataBean
.
getTableName
()
+
"-"
+
dataBean
.
getTableNumber
());
tableBean
.
setOrderId
(
dataBean
.
getOrderId
());
tableBean
.
setMemberId
(
dataBean
.
getMemberId
());
// tableBean.setRestaurantId();
// tableBean.setQrCode();
// tableBean.setQrCodeImg();
...
...
@@ -191,6 +192,7 @@ public class TableBean {
tableBean
.
setId
(
dataBean
.
getId
());
tableBean
.
setTableName
(
mainTable
.
getTableName
()
+
"-"
+
dataBean
.
getTableNumber
());
tableBean
.
setOrderId
(
dataBean
.
getOrderId
());
tableBean
.
setMemberId
(
dataBean
.
getMemberId
());
// tableBean.setRestaurantId();
// tableBean.setQrCode();
// tableBean.setQrCodeImg();
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/TableExtBean.java
View file @
19072f96
...
...
@@ -36,6 +36,7 @@ public class TableExtBean {
private
int
id
;
private
int
tableId
;
private
long
orderId
;
private
long
memberId
;
private
int
inUse
;
private
int
tableStatus
;
private
String
deviceName
;
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/mealManage/MyOrderManage.java
View file @
19072f96
...
...
@@ -5,6 +5,7 @@ import android.text.TextUtils;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.common.bean.DeleteOrderRequest
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDetail
;
...
...
@@ -27,7 +28,9 @@ import java.util.List;
public
class
MyOrderManage
{
private
static
MyOrderManage
myOrderManage
;
/**外賣接單*/
/**
* 外賣接單
*/
private
static
OrderDetails
.
DataBean
dataBean
;
public
static
MyOrderManage
getInstance
()
{
...
...
@@ -37,9 +40,6 @@ public class MyOrderManage {
return
myOrderManage
;
}
private
Activity
context
;
// private MealStandPresenter presenter;
private
boolean
overMaxQty
=
false
;
private
int
Languageindex
;
private
boolean
Edit_Send
=
false
;
...
...
@@ -72,6 +72,10 @@ public class MyOrderManage {
*/
private
List
<
OrderDetail
>
newFoodList
=
new
ArrayList
<>();
/**
* 記錄刪除的食品以及原因
*/
private
List
<
DeleteOrderRequest
>
deleteOrders
;
/**
* 整單折扣,服務費
*/
protected
List
<
BillOrderMoney
>
orderMoneyList
=
new
ArrayList
<>();
...
...
@@ -80,29 +84,31 @@ public class MyOrderManage {
*/
private
List
<
PayMethod
>
billMoney
=
new
ArrayList
<>();
/**
*
結賬前積分(堂食結賬)
*
合計
*/
private
Double
pointsOld
;
private
double
wholeAmount
=
0.0
;
/**
*
結賬后積分(堂食結賬)
*
總金額
*/
private
Double
pointsNow
;
private
double
totalAmount
=
0.0
;
/**
*
結賬加的積分(堂食結賬)
*
本次加多少積分
*/
private
Double
pointsAdd
;
private
float
addPoints
;
/**
*
結賬減去的積分(堂食結賬)
*
之前有多少積分
*/
private
Double
pointsUse
;
private
float
oldPoints
;
/**
*
合計
*
現在有多少積分
*/
private
double
wholeAmount
=
0.0
;
private
float
nowPoint
;
/**
*
總金額
*
結賬積分QRCode
*/
private
double
totalAmount
=
0.0
;
private
String
integralQrcode
;
/**
* 記錄修改訂單操作
...
...
@@ -164,6 +170,21 @@ public class MyOrderManage {
this
.
memberInfo
=
memberInfo
;
}
public
List
<
DeleteOrderRequest
>
getDeleteOrders
()
{
if
(
deleteOrders
==
null
)
{
deleteOrders
=
new
ArrayList
<>();
}
return
deleteOrders
;
}
public
void
setDeleteOrders
(
List
<
DeleteOrderRequest
>
deleteOrders
)
{
this
.
deleteOrders
=
deleteOrders
;
}
public
void
addDeleteOrder
(
DeleteOrderRequest
orderRequest
){
getDeleteOrders
().
add
(
orderRequest
);
}
public
void
changeNumber
(
int
number
)
{
if
(
orderFoodList
.
size
()
<=
0
)
{
...
...
@@ -310,18 +331,13 @@ public class MyOrderManage {
if
(
billMoney
!=
null
)
{
billMoney
.
clear
();
}
if
(
pointsOld
!=
null
)
{
pointsOld
=
null
;
}
if
(
pointsNow
!=
null
)
{
pointsNow
=
null
;
}
if
(
pointsAdd
!=
null
)
{
pointsAdd
=
null
;
}
if
(
pointsUse
!=
null
)
{
pointsUse
=
null
;
if
(
deleteOrders
!=
null
)
{
deleteOrders
.
clear
();
}
addPoints
=
0
;
oldPoints
=
0
;
nowPoint
=
0
;
integralQrcode
=
""
;
wholeAmount
=
0.0
;
totalAmount
=
0.0
;
orderBean
=
null
;
...
...
@@ -440,36 +456,36 @@ public class MyOrderManage {
this
.
mseq
=
mseq
;
}
public
Double
getPointsOld
()
{
return
pointsOld
;
public
float
getAddPoints
()
{
return
addPoints
;
}
public
void
set
PointsOld
(
Double
pointsOld
)
{
this
.
pointsOld
=
pointsOld
;
public
void
set
AddPoints
(
float
addPoints
)
{
this
.
addPoints
=
addPoints
;
}
public
Double
getPointsNow
()
{
return
pointsNow
;
public
float
getOldPoints
()
{
return
oldPoints
;
}
public
void
set
PointsNow
(
Double
pointsNow
)
{
this
.
pointsNow
=
pointsNow
;
public
void
set
OldPoints
(
float
oldPoints
)
{
this
.
oldPoints
=
oldPoints
;
}
public
Double
getPointsAdd
()
{
return
pointsAdd
;
public
float
getNowPoint
()
{
return
nowPoint
;
}
public
void
set
PointsAdd
(
Double
pointsAdd
)
{
this
.
pointsAdd
=
pointsAdd
;
public
void
set
NowPoint
(
float
nowPoint
)
{
this
.
nowPoint
=
nowPoint
;
}
public
Double
getPointsUs
e
()
{
return
pointsUs
e
;
public
String
getIntegralQrcod
e
()
{
return
integralQrcod
e
;
}
public
void
set
PointsUse
(
Double
pointsUs
e
)
{
this
.
pointsUse
=
pointsUs
e
;
public
void
set
IntegralQrcode
(
String
integralQrcod
e
)
{
this
.
integralQrcode
=
integralQrcod
e
;
}
public
List
<
OrderDetail
>
getOrderFoodList
()
{
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/utils/view/QRCodeUtil.java
View file @
19072f96
...
...
@@ -5,19 +5,19 @@ import android.graphics.Canvas;
import
com.google.zxing.BarcodeFormat
;
import
com.google.zxing.EncodeHintType
;
import
com.google.zxing.WriterException
;
import
com.google.zxing.common.BitMatrix
;
import
com.google.zxing.qrcode.QRCodeWriter
;
import
com.google.zxing.qrcode.decoder.ErrorCorrectionLevel
;
import
java.io.FileOutputStream
;
import
java.util.HashMap
;
import
java.util.Hashtable
;
import
java.util.Map
;
/**
* 二维码生成工具类
* Created by Alex on 2016/10/10.
*/
public
class
QRCodeUtil
{
/**
* 生成二维码Bitmap
...
...
@@ -73,6 +73,36 @@ public class QRCodeUtil {
}
/**
* 根据指定内容生成自定义宽高的二维码图片
*
* @param content 需要生成二维码的内容
* @param width 二维码宽度
* @param height 二维码高度
* @throws WriterException 生成二维码异常
*/
public
static
Bitmap
makeQRImage
(
String
content
,
int
width
,
int
height
)
throws
WriterException
{
Hashtable
<
EncodeHintType
,
Object
>
hints
=
new
Hashtable
<>();
hints
.
put
(
EncodeHintType
.
CHARACTER_SET
,
"utf-8"
);
hints
.
put
(
EncodeHintType
.
MARGIN
,
0
);
// default is 4
// 图像数据转换,使用了矩阵转换
BitMatrix
bitMatrix
=
new
QRCodeWriter
().
encode
(
content
,
BarcodeFormat
.
QR_CODE
,
width
,
height
,
hints
);
int
[]
pixels
=
new
int
[
width
*
height
];
// 按照二维码的算法,逐个生成二维码的图片,两个for循环是图片横列扫描的结果
for
(
int
y
=
0
;
y
<
height
;
y
++)
{
for
(
int
x
=
0
;
x
<
width
;
x
++)
{
if
(
bitMatrix
.
get
(
x
,
y
))
pixels
[
y
*
width
+
x
]
=
0xff000000
;
else
pixels
[
y
*
width
+
x
]
=
0xffffffff
;
}
}
// 生成二维码图片的格式,使用ARGB_8888
Bitmap
bitmap
=
Bitmap
.
createBitmap
(
width
,
height
,
Bitmap
.
Config
.
ARGB_8888
);
bitmap
.
setPixels
(
pixels
,
0
,
width
,
0
,
0
,
width
,
height
);
return
bitmap
;
}
/**
* 在二维码中间添加Logo图案
*/
private
static
Bitmap
addLogo
(
Bitmap
src
,
Bitmap
logo
)
{
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/function/FunctionManager.java
View file @
19072f96
...
...
@@ -73,5 +73,22 @@ public class FunctionManager {
return
functions
;
}
private
static
boolean
ready
;
private
static
int
number
;
private
static
class
ReaderThread
extends
Thread
{
@Override
public
void
run
()
{
while
(!
ready
)
{
Thread
.
yield
();
}
System
.
out
.
println
(
number
);
}
}
public
static
void
main
(
String
[]
args
)
{
new
ReaderThread
().
start
();
number
=
42
;
ready
=
true
;
}
}
base-module/src/main/java/com/gingersoft/gsa/cloud/globalconfig/applyOptions/MyResponseErrorListener.java
View file @
19072f96
...
...
@@ -77,11 +77,12 @@ public class MyResponseErrorListener implements ResponseErrorListener {
showloggedDialog
(
activity
,
ArmsUtils
.
getString
(
context
,
R
.
string
.
response_error_request_logged
));
}
}
else
{
// if (httpException.code() == 400) {
// //Bad Request
// Activity activity = GsaCloudApplication.getAppContext().getCurrentActivity();
// toLoginActivity(activity);
// }
if
(
httpException
.
code
()
==
400
)
{
//Bad Request
ArmsUtils
.
killAll
();
Activity
activity
=
GsaCloudApplication
.
getAppContext
().
getCurrentActivity
();
toLoginActivity
(
activity
);
}
msg
=
httpException
.
message
();
}
return
msg
;
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/globalconfig/applyOptions/MyRxCacheConfiguration.java
View file @
19072f96
...
...
@@ -7,6 +7,7 @@ import com.jess.arms.di.module.ClientModule;
import
io.rx_cache2.internal.RxCache
;
public
class
MyRxCacheConfiguration
implements
ClientModule
.
RxCacheConfiguration
{
@Override
public
RxCache
configRxCache
(
Context
context
,
RxCache
.
Builder
builder
)
{
// 当数据无法加载时,使用过期数据
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/globalconfig/lifecyclesOptioins/MyActivityLifecycle.java
View file @
19072f96
...
...
@@ -25,7 +25,6 @@ public class MyActivityLifecycle implements Application.ActivityLifecycleCallbac
activity
.
getIntent
().
putExtra
(
"isInitToolbar"
,
true
);
//这里全局给Activity设置toolbar和title,你想象力有多丰富,这里就有多强大,以前放到BaseActivity的操作都可以放到这里
// new ToolbarUtil(activity).setToolbar();
}
}
...
...
@@ -48,6 +47,11 @@ public class MyActivityLifecycle implements Application.ActivityLifecycleCallbac
MyOrderManage
.
getInstance
().
clear
();
//清空開檯數據
OpenTableManage
.
getDefault
().
clear
();
}
else
if
(
name
.
equals
(
"OrderCenterActivity"
)
||
name
.
equals
(
"OrderDetailActivity"
))
{
//清空賬單數據
MyOrderManage
.
getInstance
().
clear
();
//清空開檯數據
OpenTableManage
.
getDefault
().
clear
();
}
GsaCloudApplication
.
getAppContext
().
setCurrentActivity
(
activity
);
}
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/ui/bean/view/SectionTextItem3.java
View file @
19072f96
...
...
@@ -2,6 +2,7 @@ package com.gingersoft.gsa.cloud.ui.bean.view;
import
com.gingersoft.gsa.cloud.base.R
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
...
...
@@ -124,16 +125,14 @@ public class SectionTextItem3 {
return
sectionTextItem3List
;
}
public
static
List
<
SectionTextItem3
>
discountTransSectionTextItem3
(
Discount
discount
)
{
List
<
SectionTextItem3
>
sectionTextItem3List
=
new
ArrayList
<>();
public
static
SectionTextItem3
discountTransSectionTextItem3
(
OrderDiscount
.
Respose
discount
)
{
SectionTextItem3
sectionTextItem3
=
new
SectionTextItem3
();
sectionTextItem3
.
setLeftText
(
discount
.
getRemark
());
sectionTextItem3
.
setCenterText
(
String
.
valueOf
(
0
));
sectionTextItem3
.
setRightText
(
String
.
valueOf
(
discount
.
getAmount
()));
sectionTextItem3
.
setRightText
(
String
.
valueOf
(
discount
.
get
Discount
Amount
()));
sectionTextItem3
.
setLeftTextStyle
(
R
.
style
.
order_paymethod_text_style
);
sectionTextItem3
.
setRightTextStyle
(
R
.
style
.
order_paymethod_text_style
);
sectionTextItem3List
.
add
(
sectionTextItem3
);
return
sectionTextItem3List
;
return
sectionTextItem3
;
}
public
static
SectionTextItem3
roundingTransSectionTextItem3
(
double
amuout
)
{
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/ui/view/OrderPayView.java
View file @
19072f96
...
...
@@ -32,7 +32,7 @@ public class OrderPayView extends LinearLayout {
private
BillMethodAdapter
mBillMethodAdapter
;
private
int
foodCount
;
private
OnSureClickLisenter
mOnSureClickLisenter
;
private
OnWhetherFreeServiceChangeLisenter
mOnWhetherFreeServiceChangeLisenter
;
private
TextView
tvDifferenceName
;
private
TextView
tvDifferenceMoney
;
...
...
@@ -67,6 +67,10 @@ public class OrderPayView extends LinearLayout {
super
(
context
,
attrs
,
defStyleAttr
);
}
public
void
setTotalAmount
(
double
totalAmount
)
{
this
.
totalAmount
=
totalAmount
;
}
public
void
loadInfo
(
Context
context
,
List
<
PayMethod
>
mBillMethodList
,
double
totalAmount
,
int
foodCount
)
{
this
.
totalAmount
=
totalAmount
;
this
.
mBillMoneyList
=
new
ArrayList
<>();
...
...
@@ -108,6 +112,9 @@ public class OrderPayView extends LinearLayout {
//替换掉第一个
mBillMoneyList
.
remove
(
0
);
}
setWhetherFreeServiceCallback
(
method
);
//是否同步金額
//固定金額 (0:否 1:是)
if
(
method
.
getWhetherFixedAmount
()
==
1
)
{
...
...
@@ -160,6 +167,8 @@ public class OrderPayView extends LinearLayout {
mBillMoneyAdapter
.
notifyDataSetChanged
();
//設置差額狀態
setDifferenceText
(
context
);
setWhetherFreeServiceCallback
(
null
);
}
});
...
...
@@ -203,6 +212,29 @@ public class OrderPayView extends LinearLayout {
this
.
addView
(
view
);
}
/**
* 設置是否免服務費回調
*/
public
void
setWhetherFreeServiceCallback
(
PayMethod
addPayMethod
)
{
int
whetherFreeService
=
0
;
if
(
addPayMethod
!=
null
)
{
if
(
addPayMethod
.
getWhetherFreeService
()
==
1
)
{
whetherFreeService
=
1
;
}
}
if
(
whetherFreeService
==
0
)
{
for
(
PayMethod
payMethod
:
mBillMoneyList
)
{
if
(
payMethod
.
getWhetherFreeService
()
==
1
)
{
whetherFreeService
=
1
;
break
;
}
}
}
if
(
mOnWhetherFreeServiceChangeLisenter
!=
null
)
{
mOnWhetherFreeServiceChangeLisenter
.
onWhetherFreeServiceChange
(
whetherFreeService
);
}
}
public
void
notifyBillMethodAdapter
(
List
<
PayMethod
>
mBillMethodList
)
{
if
(
mBillMethodAdapter
!=
null
)
mBillMethodAdapter
.
setNewData
(
mBillMethodList
);
...
...
@@ -259,6 +291,7 @@ public class OrderPayView extends LinearLayout {
return
null
;
}
/**
* 獲取找零或貼士金額
*
...
...
@@ -356,13 +389,23 @@ public class OrderPayView extends LinearLayout {
btn_order_count
.
setVisibility
(
View
.
INVISIBLE
);
}
tv_total
.
setText
(
"$"
+
totalAmount
);
}
public
interface
OnSureClickLisenter
{
void
onClick
(
List
<
PayMethod
>
mBillMoneyList
)
;
public
void
setOnWhetherFreeServiceChangeLisenter
(
OnWhetherFreeServiceChangeLisenter
onWhetherFreeServiceChangeLisenter
)
{
this
.
mOnWhetherFreeServiceChangeLisenter
=
onWhetherFreeServiceChangeLisenter
;
}
public
void
setmOnSureClickLisenter
(
OnSureClickLisenter
mOnSureClickLisenter
)
{
this
.
mOnSureClickLisenter
=
mOnSureClickLisenter
;
}
public
interface
OnWhetherFreeServiceChangeLisenter
{
void
onWhetherFreeServiceChange
(
int
whetherFreeService
);
}
public
interface
OnSureClickLisenter
{
void
onClick
(
List
<
PayMethod
>
mBillMoneyList
);
}
}
base-module/src/main/java/com/gingersoft/gsa/cloud/zxing/MipcaCaptureActivity.java
View file @
19072f96
...
...
@@ -148,6 +148,9 @@ public class MipcaCaptureActivity extends BaseActivity<BasePresenter> implements
@Override
public
void
onClick
(
View
v
)
{
Intent
intent
=
new
Intent
();
intent
.
putExtra
(
"qrCodeResult"
,
""
);
setResult
(
CALL_BACK_QR_RESULT
,
intent
);
killMyself
();
}
});
...
...
@@ -155,6 +158,14 @@ public class MipcaCaptureActivity extends BaseActivity<BasePresenter> implements
}
@Override
public
void
onBackPressed
()
{
Intent
intent
=
new
Intent
();
intent
.
putExtra
(
"qrCodeResult"
,
""
);
setResult
(
CALL_BACK_QR_RESULT
,
intent
);
killMyself
();
}
@Override
public
void
initLanguage
()
{
}
...
...
@@ -241,13 +252,6 @@ public class MipcaCaptureActivity extends BaseActivity<BasePresenter> implements
}
else
{
finish
();
}
// if (resultCode == Activity.RESULT_OK && requestCode == REQUEST_CODE_CHOOSE_QRCODE_FROM_GALLERY) {
// final String picturePath = BGAPhotoPickerActivity.getSelectedPhotos(data).get(0);
// // 本来就用到 QRCodeView 时可直接调 QRCodeView 的方法,走通用的回调
// mZXingView.decodeQRCode(picturePath);
//
// }
}
@Override
...
...
@@ -283,7 +287,6 @@ public class MipcaCaptureActivity extends BaseActivity<BasePresenter> implements
@Override
public
void
onScanQRCodeSuccess
(
String
result
)
{
Log
.
i
(
TAG
,
"onScanQRCodeSuccess:"
+
result
);
showMessage
(
"掃描結果: "
+
result
);
vibrate
();
mZXingView
.
startSpot
();
...
...
@@ -316,7 +319,6 @@ public class MipcaCaptureActivity extends BaseActivity<BasePresenter> implements
showMessage
(
"打開相機出錯!"
);
}
//解析二维码图片,返回结果封装在Result对象中
private
com
.
google
.
zxing
.
Result
parseQRcodeBitmap
(
Uri
uri
)
{
String
path
=
getPath
(
mContext
,
uri
);
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/zxing/PointsOverlayView.java
deleted
100644 → 0
View file @
e3e7e244
package
com
.
gingersoft
.
gsa
.
cloud
.
zxing
;
import
android.content.Context
;
import
android.graphics.Canvas
;
import
android.graphics.Color
;
import
android.graphics.Paint
;
import
android.graphics.PointF
;
import
android.util.AttributeSet
;
import
android.view.View
;
public
class
PointsOverlayView
extends
View
{
PointF
[]
points
;
private
Paint
paint
;
public
PointsOverlayView
(
Context
context
)
{
super
(
context
);
init
();
}
public
PointsOverlayView
(
Context
context
,
AttributeSet
attrs
)
{
super
(
context
,
attrs
);
init
();
}
public
PointsOverlayView
(
Context
context
,
AttributeSet
attrs
,
int
defStyleAttr
)
{
super
(
context
,
attrs
,
defStyleAttr
);
init
();
}
private
void
init
()
{
paint
=
new
Paint
();
paint
.
setColor
(
Color
.
YELLOW
);
paint
.
setStyle
(
Paint
.
Style
.
FILL
);
}
/**
* @param points
*/
public
void
setPoints
(
PointF
[]
points
)
{
this
.
points
=
points
;
invalidate
();
}
@Override
public
void
draw
(
Canvas
canvas
)
{
super
.
draw
(
canvas
);
if
(
points
!=
null
)
{
for
(
PointF
pointF
:
points
)
{
canvas
.
drawCircle
(
pointF
.
x
,
pointF
.
y
,
10
,
paint
);
}
}
}
}
coldchain-module/src/main/java/com/gingersoft/coldchain_module/mvp/ui/activity/OrderDetailsActivity.java
View file @
19072f96
...
...
@@ -24,6 +24,7 @@ import com.gingersoft.coldchain_module.mvp.presenter.OrderDetailsPresenter;
import
com.gingersoft.coldchain_module.mvp.ui.adapter.MyPrintDocumentAdapter
;
import
com.gingersoft.coldchain_module.mvp.ui.adapter.OrderDetailsBtnAdapter
;
import
com.gingersoft.coldchain_module.mvp.ui.adapter.OrderDetailsFoodAdapter
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
...
...
@@ -130,7 +131,7 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailsPresenter> im
requestPermissions
(
null
);
mPresenter
.
findOrderDetails
(
orderId
,
isRead
);
// mPresenter.download("https://labels.shipany.io/sbx2/325764d7-b2e2-4d8b-9a68-7f4473719f9c/2020-08-27/20200827171831451_SF5805023992121_144ac51b-5370-46db-9e8d-50904e33b1b7.pdf");
List
<
Function
>
functionByResModule
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
this
,
FunctionManagerConstans
.
takeaway
.
class
,
FunctionManagerConstans
.
takeaway
.
orderDetails
,
"orderDetails/btn"
);
List
<
Function
>
functionByResModule
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
GsaCloudApplication
.
getAppContext
()
,
FunctionManagerConstans
.
takeaway
.
class
,
FunctionManagerConstans
.
takeaway
.
orderDetails
,
"orderDetails/btn"
);
btnBuilder
=
BtnBuilder
.
getInstance
(
functionByResModule
);
}
...
...
download-module/src/main/java/com/gingersoft/gsa/cloud/download/mvp/model/downmanager/DownloadManager.java
View file @
19072f96
...
...
@@ -29,7 +29,6 @@ public class DownloadManager {
private
static
DownloadManager
downloadManager
;
private
Context
context
;
//当前请求响应成功数
private
int
responseSuccessCount
;
//当前请求响应失敗数
...
...
@@ -44,8 +43,7 @@ public class DownloadManager {
return
downloadManager
;
}
public
DownloadManager
takeRequestExecute
(
Context
context
,
List
<
DownloadRequest
>
requests
,
DownloadPresenter
presenter
)
{
this
.
context
=
context
;
public
DownloadManager
takeRequestExecute
(
List
<
DownloadRequest
>
requests
,
DownloadPresenter
presenter
)
{
this
.
requestCount
=
requests
.
size
();
//重置响应数
this
.
responseSuccessCount
=
0
;
...
...
download-module/src/main/java/com/gingersoft/gsa/cloud/download/mvp/model/downmanager/DownloadTaskImp.java
View file @
19072f96
...
...
@@ -21,24 +21,6 @@ public class DownloadTaskImp implements Runnable {
@Override
public
void
run
()
{
// DownloadManager.getInstance().download(request);
// switch (request.getDownTag()) {
// case 0:
// presenter.downFun();
// break;
// case 1:
// presenter.downFoodList();
// break;
// case 2:
// presenter.downModifier();
// break;
// case 3:
// presenter.downCombo();
// break;
// case 4:
// presenter.downFoodModifier();
// break;
// }
switch
(
request
.
getDownTag
())
{
case
0
:
presenter
.
downFun
(
request
.
getDownTag
());
...
...
download-module/src/main/java/com/gingersoft/gsa/cloud/download/mvp/presenter/DownloadPresenter.java
View file @
19072f96
...
...
@@ -154,7 +154,7 @@ public class DownloadPresenter extends BasePresenter<DownloadContract.Model, Dow
List
<
DownloadRequest
>
requests
=
getDownloadRequests
(
getDownloadUrls
(
restaurantId
),
restaurantId
);
DownloadManager
.
getInstance
().
takeRequestExecute
(
IActivity
,
requests
,
this
);
DownloadManager
.
getInstance
().
takeRequestExecute
(
requests
,
this
);
// .setDownloadResultListener(new DownloadManager.OnDownloadResultListener() {
//
// @Override
...
...
login-module/src/main/AndroidManifest.xml
View file @
19072f96
...
...
@@ -28,7 +28,7 @@
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.WelcomeActivity"
android:launchMode=
"singleT
op
"
>
android:launchMode=
"singleT
ask
"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<action
android:name=
"android.intent.action.VIEW"
/>
...
...
@@ -38,9 +38,8 @@
</activity>
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.LoginActivity"
android:launchMode=
"singleT
op"
/>
android:launchMode=
"singleT
ask"
/>
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.SwitchServerActivity"
/>
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.RecoverPasswordActivity"
/>
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.ChooseRestaurantActivity"
/>
<meta-data
...
...
login-module/src/main/debug/AndroidManifest.xml
View file @
19072f96
...
...
@@ -10,8 +10,10 @@ package="com.gingersoft.gsa.cloud.login">
android:supportsRtl=
"true"
android:theme=
"@style/AppTheme"
>
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.LoginActivity"
android:launchMode=
"singleTop"
/>
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.LoginActivity"
android:launchMode=
"singleTask"
/>
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.SwitchServerActivity"
/>
<activity
android:name=
".mvp.ui.activity.mvp.ui.activity.WelcomeActivity"
>
<intent-filter>
...
...
login-module/src/main/java/com/gingersoft/gsa/cloud/login/mvp/presenter/BaseLoginPresenter.java
View file @
19072f96
...
...
@@ -22,6 +22,7 @@ import com.jess.arms.di.scope.ActivityScope;
import
com.jess.arms.http.imageloader.ImageLoader
;
import
com.jess.arms.integration.AppManager
;
import
com.jess.arms.mvp.BasePresenter
;
import
com.jess.arms.utils.DeviceUtils
;
import
com.jess.arms.utils.RxLifecycleUtils
;
import
java.util.List
;
...
...
@@ -71,8 +72,15 @@ public class BaseLoginPresenter<M extends BaseLoginContract.Model, V extends Bas
mRootView
.
startToSwitchServer
();
return
;
}
RequestBody
requestBody
;
requestBody
=
new
FormBody
.
Builder
()
if
(!
DeviceUtils
.
netIsConnected
(
GsaCloudApplication
.
getAppContext
()))
{
//防止沒有網絡 請求登錄接口卡在歡迎頁
if
(
IAcitivity
instanceof
LoginActivity
)
{
}
else
{
mRootView
.
launchActivity
(
new
Intent
(
IAcitivity
,
LoginActivity
.
class
));
return
;
}
}
RequestBody
requestBody
=
new
FormBody
.
Builder
()
.
add
(
"userName"
,
account
.
trim
()
+
""
)
.
add
(
"passWord"
,
pwd
.
trim
()
+
""
)
.
build
();
...
...
@@ -130,7 +138,7 @@ public class BaseLoginPresenter<M extends BaseLoginContract.Model, V extends Bas
@Override
public
void
onNext
(
@NonNull
BrandsBean
info
)
{
if
(
info
!=
null
)
{
if
(
TextUtil
.
isNotEmptyOrNullOrUndefined
(
info
.
getMessage
()))
{
if
(
TextUtil
.
isNotEmptyOrNullOrUndefined
(
info
.
getMessage
()))
{
mRootView
.
showMessage
(
info
.
getMessage
());
}
mRootView
.
saveRestaurantListInfo
(
info
.
getData
());
...
...
@@ -166,7 +174,8 @@ public class BaseLoginPresenter<M extends BaseLoginContract.Model, V extends Bas
@Override
public
void
onNext
(
PublicBean
s
)
{
if
(
s
!=
null
&&
s
.
isSuccess
())
{
List
<
LoginLimitBean
>
loginLimitBeans
=
new
Gson
().
fromJson
(
GsonUtils
.
GsonString
(
s
.
getData
()),
new
TypeToken
<
List
<
LoginLimitBean
>>()
{}.
getType
());
List
<
LoginLimitBean
>
loginLimitBeans
=
new
Gson
().
fromJson
(
GsonUtils
.
GsonString
(
s
.
getData
()),
new
TypeToken
<
List
<
LoginLimitBean
>>()
{
}.
getType
());
// List<LoginLimitBean> logins = GsonUtils.GsonToList("", LoginLimitBean.class);
if
(
loginLimitBeans
==
null
||
loginLimitBeans
.
size
()
<=
0
)
{
if
(
isDownload
)
{
...
...
login-module/src/main/java/com/gingersoft/gsa/cloud/login/mvp/ui/activity/mvp/ui/activity/ChooseRestaurantActivity.java
View file @
19072f96
...
...
@@ -261,13 +261,18 @@ public class ChooseRestaurantActivity extends BaseActivity<ChooseRestaurantPrese
}
@Override
protected
void
onStop
()
{
super
.
onStop
();
killMyself
();
}
@Override
public
void
jumpDownloadActivity
()
{
CC
.
obtainBuilder
(
"Component.Download"
)
.
setActionName
(
"showDownloadActivity"
)
.
addParam
(
"fromPage"
,
1
)
.
build
()
.
call
();
killMyself
();
}
@Override
...
...
@@ -281,7 +286,6 @@ public class ChooseRestaurantActivity extends BaseActivity<ChooseRestaurantPrese
.
setActionName
(
"showMainActivity"
)
.
build
()
.
call
();
killMyself
();
}
@Override
...
...
login-module/src/main/java/com/gingersoft/gsa/cloud/login/mvp/ui/activity/mvp/ui/activity/WelcomeActivity.java
View file @
19072f96
...
...
@@ -101,7 +101,6 @@ public class WelcomeActivity extends LoginInterfaceImpl<WelcomePresenter> implem
String
pwd
=
Aes
.
aesDecrypt
((
String
)
SPUtils
.
get
(
mContext
,
UserConstans
.
LOGIN_PASSWORD
,
""
));
mPresenter
.
login
(
SPUtils
.
get
(
mContext
,
UserConstans
.
LOGIN_USERNAME
,
""
)
+
""
,
pwd
);
}
else
{
killMyself
();
startActivity
(
new
Intent
(
mContext
,
LoginActivity
.
class
));
}
}
...
...
@@ -136,6 +135,12 @@ public class WelcomeActivity extends LoginInterfaceImpl<WelcomePresenter> implem
magicIndicator
.
attachToViewPager
(
mVpGuide
);
}
@Override
protected
void
onStop
()
{
super
.
onStop
();
killMyself
();
}
private
void
updateUI
(
int
position
)
{
mTvGuideTitle
.
setText
(
guideBeanList
.
get
(
position
).
getTitle
());
mTvGuideDetails
.
setText
(
guideBeanList
.
get
(
position
).
getDetails
());
...
...
@@ -274,7 +279,6 @@ public class WelcomeActivity extends LoginInterfaceImpl<WelcomePresenter> implem
//立即體驗
SPUtils
.
put
(
mContext
,
UserConstans
.
IS_GUIDE
,
false
);
startActivity
(
new
Intent
(
mContext
,
LoginActivity
.
class
));
killMyself
();
}
}
}
main-module/src/main/AndroidManifest.xml
View file @
19072f96
...
...
@@ -2,9 +2,10 @@
<manifest
xmlns:android=
"http://schemas.android.com/apk/res/android"
package=
"com.gingersoft.gsa.cloud.main"
>
<uses-permission
android:name=
"android.permission.INTERNET"
/>
<application>
<activity
android:name=
".mvp.ui.activity.NewMainActivity"
/>
<activity
android:name=
".mvp.ui.activity.NewMainActivity"
android:launchMode=
"singleTask"
/>
<activity
android:name=
".mvp.ui.activity.MainActivity"
/>
<activity
android:name=
".mvp.ui.activity.ReportActivity"
/>
<activity
android:name=
".mvp.ui.activity.SettlementActivity"
/>
...
...
@@ -22,4 +23,5 @@
android:name=
"design_height_in_dp"
android:value=
"640"
/>
</application>
<uses-permission
android:name=
"android.permission.INTERNET"
/>
</manifest>
main-module/src/main/debug/AndroidManifest.xml
View file @
19072f96
...
...
@@ -10,7 +10,7 @@
android:networkSecurityConfig=
"@xml/network_android"
android:supportsRtl=
"true"
android:theme=
"@style/AppTheme"
>
<activity
android:name=
".mvp.ui.activity.LanguageActivity"
></activity
>
<activity
android:name=
".mvp.ui.activity.LanguageActivity"
/
>
<activity
android:name=
".mvp.ui.activity.ReportActivity"
/>
<activity
android:name=
".mvp.ui.activity.MainActivity"
/>
<activity
android:name=
".mvp.ui.activity.SettlementActivity"
/>
...
...
@@ -18,6 +18,7 @@
<activity
android:name=
".mvp.ui.activity.LookLogActivity"
/>
<activity
android:name=
".mvp.ui.activity.NewMainActivity"
android:launchMode=
"singleTask"
android:theme=
"@style/MainTheme"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
...
...
main-module/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/NewMainActivity.java
View file @
19072f96
...
...
@@ -189,6 +189,12 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
.
call
();
}
@Override
protected
void
onRestart
()
{
super
.
onRestart
();
tvStoreName
.
setText
(
GsaCloudApplication
.
getRestaurantName
(
mContext
));
}
/**
* 初始化側邊欄菜單項
*/
...
...
@@ -283,7 +289,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
// functions.add(new Function((long) 149, 152, 5, "操作記錄", R.drawable.ic_operation_record_close, 1));
// } else {
List
<
Function
>
orderFuncations
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
this
,
ComponentMain
.
main
.
class
,
ComponentMain
.
main
.
order
,
"order"
);
List
<
Function
>
orderFuncations
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
GsaCloudApplication
.
getAppContext
()
,
ComponentMain
.
main
.
class
,
ComponentMain
.
main
.
order
,
"order"
);
if
(
orderFuncations
.
size
()
>
0
)
{
functions
.
addAll
(
orderFuncations
);
sl_order
.
setVisibility
(
View
.
VISIBLE
);
...
...
@@ -291,7 +297,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
sl_order
.
setVisibility
(
View
.
INVISIBLE
);
}
List
<
Function
>
managerFuncations
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
this
,
ComponentMain
.
main
.
class
,
ComponentMain
.
main
.
manager
,
"manager"
);
List
<
Function
>
managerFuncations
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
GsaCloudApplication
.
getAppContext
()
,
ComponentMain
.
main
.
class
,
ComponentMain
.
main
.
manager
,
"manager"
);
if
(
managerFuncations
.
size
()
>
0
)
{
functions
.
addAll
(
managerFuncations
);
ll_management
.
setVisibility
(
View
.
VISIBLE
);
...
...
@@ -299,7 +305,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
ll_management
.
setVisibility
(
View
.
GONE
);
}
List
<
Function
>
employeeFuncations
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
this
,
ComponentMain
.
main
.
class
,
ComponentMain
.
main
.
employee
,
"employee"
);
List
<
Function
>
employeeFuncations
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
GsaCloudApplication
.
getAppContext
()
,
ComponentMain
.
main
.
class
,
ComponentMain
.
main
.
employee
,
"employee"
);
if
(
employeeFuncations
.
size
()
>
0
)
{
functions
.
addAll
(
employeeFuncations
);
ll_staff_management
.
setVisibility
(
View
.
VISIBLE
);
...
...
@@ -550,12 +556,12 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
.
setActionName
(
"stopPrintService"
)
.
build
()
.
call
();
killMyself
();
//跳轉登陸頁面
CC
.
obtainBuilder
(
"User.Component.Login"
)
.
setActionName
(
"showActivityA"
)
.
build
()
.
call
();
finish
();
}
@Override
...
...
@@ -583,8 +589,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
showMessage
(
"再按一次退出應用"
);
mExitTime
=
System
.
currentTimeMillis
();
}
else
{
finish
();
System
.
exit
(
0
);
ArmsUtils
.
exitApp
();
}
}
return
true
;
...
...
manager-module/src/main/java/com/gingersoft/gsa/cloud/manager/mvp/ui/activity/TableManageActivity.java
View file @
19072f96
...
...
@@ -221,9 +221,9 @@ public class TableManageActivity extends BaseFragmentActivity<TableManagePresent
if
(
fragment
!=
null
)
{
if
(
fragment
instanceof
AreaListFragment
)
{
AreaListFragment
areaListFragment
=
(
AreaListFragment
)
fragment
;
//
if (!areaListFragment.isRadioEdit()) {
if
(!
areaListFragment
.
isRadioEdit
())
{
areaListFragment
.
updateAreaData
(
areas
);
//
}
}
}
else
if
(
fragment
instanceof
TableListFragment
)
{
TableListFragment
tableListFragment
=
(
TableListFragment
)
fragment
;
tableListFragment
.
setAreaData
(
areas
);
...
...
manager-module/src/main/java/com/gingersoft/gsa/cloud/manager/mvp/ui/adapter/AreaManageAdapter.java
View file @
19072f96
...
...
@@ -85,11 +85,11 @@ public class AreaManageAdapter extends DefaultAdapter<TableArea> {
// }
// });
if
(
isRadioEdit
)
{
cb_checked
.
setChecked
(
datasBean
.
isChecked
());
cb_checked
.
setVisibility
(
View
.
VISIBLE
);
cb_checked
.
setOnCheckedChangeListener
(
new
CompoundButton
.
OnCheckedChangeListener
()
{
@Override
public
void
onCheckedChanged
(
CompoundButton
buttonView
,
boolean
isChecked
)
{
buttonView
.
setChecked
(
isChecked
);
datasBean
.
setChecked
(
isChecked
);
}
});
...
...
@@ -102,6 +102,7 @@ public class AreaManageAdapter extends DefaultAdapter<TableArea> {
ed_name
.
setFocusable
(
false
);
ed_name
.
setFocusableInTouchMode
(
false
);
}
cb_checked
.
setChecked
(
datasBean
.
isChecked
());
}
}
...
...
manager-module/src/main/java/com/gingersoft/gsa/cloud/manager/mvp/ui/fragment/AddAreaFragment.java
View file @
19072f96
...
...
@@ -177,7 +177,7 @@ public class AddAreaFragment extends BaseFragment<AddAreaPresenter> implements A
textView
.
setLineSpacing
(
QMUIDisplayHelper
.
dp2px
(
mContext
,
4
),
1.0f
);
int
padding
=
QMUIDisplayHelper
.
dp2px
(
mContext
,
20
);
textView
.
setPadding
(
padding
,
padding
,
padding
,
padding
);
textView
.
setText
(
"默認值為100,數字越小排序\n"
+
"越靠前
!
"
);
textView
.
setText
(
"默認值為100,數字越小排序\n"
+
"越靠前
!
"
);
int
color
=
QMUIResHelper
.
getAttrColor
(
mContext
,
R
.
attr
.
app_skin_common_title_text_color
);
textView
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
theme_black
));
// QMUISkinValueBuilder builder = QMUISkinValueBuilder.acquire();
...
...
manager-module/src/main/res/layout/manager_item_manage_table.xml
View file @
19072f96
...
...
@@ -106,7 +106,6 @@
android:layout_height=
"wrap_content"
app:backgroundColor=
"@color/theme_white_color"
app:corner=
"rightBottom"
app:primaryText=
"堂"
app:primaryTextColor=
"#249B65"
app:primaryTextSize=
"10sp"
/>
...
...
print-module/src/main/java/com/joe/print/mvp/print/PrintBill.java
View file @
19072f96
...
...
@@ -103,7 +103,7 @@ public class PrintBill extends PrinterRoot {
layout
.
addView
(
getDiningBillPayMethod
(
mContext
,
MyOrderManage
.
getInstance
().
getBillMoney
()));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getTableMealMemberIntegerView
(
mContext
,
getOrderDetail
()));
layout
.
addView
(
getTableMealMemberIntegerView
(
mContext
,
getOrderDetail
()
,
MyOrderManage
.
getInstance
().
getIntegralQrcode
()
));
return
zoomBitmap
(
deviceBean
,
viewToBitmap
(
mContext
,
layout
));
}
...
...
@@ -111,9 +111,9 @@ public class PrintBill extends PrinterRoot {
private
OrderDetails
.
DataBean
getOrderDetail
()
{
OrderDetails
.
DataBean
dataBean
=
new
OrderDetails
.
DataBean
();
dataBean
.
setNowPoints
(
MyOrderManage
.
getInstance
().
get
PointsNow
());
dataBean
.
setAddPoints
(
MyOrderManage
.
getInstance
().
get
PointsAdd
());
dataBean
.
setOldPoints
(
MyOrderManage
.
getInstance
().
get
PointsUse
());
dataBean
.
setNowPoints
(
MyOrderManage
.
getInstance
().
get
NowPoint
());
dataBean
.
setAddPoints
(
MyOrderManage
.
getInstance
().
get
AddPoints
());
dataBean
.
setOldPoints
(
MyOrderManage
.
getInstance
().
get
OldPoints
());
MemberInfo
memberInfo
=
MyOrderManage
.
getInstance
().
getMemberInfo
();
if
(
memberInfo
!=
null
)
{
...
...
print-module/src/main/java/com/joe/print/mvp/print/PrinterRoot.java
View file @
19072f96
...
...
@@ -8,10 +8,12 @@ import android.hardware.usb.UsbManager;
import
android.os.Build
;
import
android.os.IBinder
;
import
android.os.RemoteException
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
android.view.Gravity
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.TextView
;
...
...
@@ -35,14 +37,17 @@ import com.gingersoft.gsa.cloud.base.utils.AidlUtil;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
import
com.gingersoft.gsa.cloud.base.utils.view.BitmapUtil
;
import
com.gingersoft.gsa.cloud.base.utils.view.ImageUtils
;
import
com.gingersoft.gsa.cloud.base.utils.view.LayoutToBitmapUtils
;
import
com.gingersoft.gsa.cloud.base.utils.view.QRCodeUtil
;
import
com.gingersoft.gsa.cloud.constans.PrintConstans
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
import
com.gingersoft.gsa.cloud.print.PrintExecutor
;
import
com.gingersoft.gsa.cloud.print.PrintSocketHolder
;
import
com.gingersoft.gsa.cloud.print.PrinterWriter58mm
;
import
com.gingersoft.gsa.cloud.print.bean.OrderDetails
;
import
com.google.zxing.WriterException
;
import
com.hyweb.n5.lib.constant.PrinterConstant
;
import
com.hyweb.n5.lib.util.PrinterUtil
;
import
com.hyweb.n5.server.aidl.IOnPrintCallback
;
...
...
@@ -563,14 +568,18 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
return
view
;
}
protected
View
getTableMealMemberIntegerView
(
Context
mContext
,
OrderDetails
.
DataBean
data
)
{
View
view
=
View
.
inflate
(
mContext
,
R
.
layout
.
print_model_
takeaway
_member_integer_info
,
null
);
protected
View
getTableMealMemberIntegerView
(
Context
mContext
,
OrderDetails
.
DataBean
data
,
String
integralQrcode
)
{
View
view
=
View
.
inflate
(
mContext
,
R
.
layout
.
print_model_
meal
_member_integer_info
,
null
);
TextView
tvMemberNum
=
view
.
findViewById
(
R
.
id
.
tv_print_model_member_number
);
//會員號碼
TextView
tvMemberName
=
view
.
findViewById
(
R
.
id
.
tv_print_model_member_name
);
//會員名稱
TextView
tvMemberPhone
=
view
.
findViewById
(
R
.
id
.
tv_print_model_member_phone
);
//會員電話
TextView
tvNowPoint
=
view
.
findViewById
(
R
.
id
.
tv_print_model_nowPoints
);
//現在的積分
TextView
tvAddPoints
=
view
.
findViewById
(
R
.
id
.
tv_print_model_addPoints
);
//本次添加積分
TextView
tvOldPoints
=
view
.
findViewById
(
R
.
id
.
tv_print_model_oldPoints
);
//之前的積分
LinearLayout
llIntegralQrcode
=
view
.
findViewById
(
R
.
id
.
ll_integral_qrcode
);
ImageView
ivIntegralQrcode
=
view
.
findViewById
(
R
.
id
.
iv_integral_qrcode
);
if
(
data
.
getAddPoints
()
!=
0
||
data
.
getOldPoints
()
!=
0
||
data
.
getAddPoints
()
!=
0
)
{
tvAddPoints
.
setText
(
"本次積分:"
+
data
.
getAddPoints
());
tvNowPoint
.
setText
(
"結餘積分:"
+
data
.
getNowPoints
());
...
...
@@ -583,6 +592,18 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
tvMemberPhone
.
setText
(
"會員電話:"
+
getReplaceAfter
(
data
.
getPHONE
()));
}
}
//生成積分QRCode碼(飯糰APP掃碼獲得積分)
if
(
TextUtils
.
isEmpty
(
integralQrcode
))
{
llIntegralQrcode
.
setVisibility
(
View
.
GONE
);
}
else
{
llIntegralQrcode
.
setVisibility
(
View
.
VISIBLE
);
try
{
Bitmap
QRImage
=
QRCodeUtil
.
makeQRImage
(
integralQrcode
,
180
,
180
);
ivIntegralQrcode
.
setImageBitmap
(
QRImage
);
}
catch
(
WriterException
e
)
{
e
.
printStackTrace
();
}
}
return
view
;
}
...
...
@@ -639,7 +660,7 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
return
getVerticalRecyclerView
(
mContext
,
new
BillItemAdapter
(
data
));
}
protected
void
addTakeawayPayViews
(
Context
mContext
,
ViewGroup
parent
,
List
<
OrderDetails
.
DataBean
.
PayMultiple
>
payMultiples
,
double
payAmount
){
protected
void
addTakeawayPayViews
(
Context
mContext
,
ViewGroup
parent
,
List
<
OrderDetails
.
DataBean
.
PayMultiple
>
payMultiples
,
double
payAmount
)
{
if
(
payMultiples
!=
null
&&
payMultiples
.
size
()
>
0
)
{
for
(
OrderDetails
.
DataBean
.
PayMultiple
payMultiple
:
payMultiples
)
{
if
(!
TextUtil
.
isEmptyOrNullOrUndefined
(
payMultiple
.
getPayName
()))
{
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/MealStandContract.java
View file @
19072f96
...
...
@@ -4,7 +4,6 @@ import android.app.Activity;
import
android.widget.BaseAdapter
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult2
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.database.bean.ComboItem
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
...
...
@@ -14,16 +13,13 @@ import com.gingersoft.gsa.cloud.database.bean.FoodModifier;
import
com.gingersoft.gsa.cloud.database.bean.Modifier
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.FoodReason
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.request.DeleteOrderRequest
;
import
com.jess.arms.base.DefaultAdapter
;
import
java.util.List
;
import
java.util.Map
;
import
androidx.recyclerview.widget.RecyclerView
;
import
io.reactivex.Observable
;
import
okhttp3.RequestBody
;
import
retrofit2.http.Query
;
/**
...
...
@@ -102,6 +98,8 @@ public interface MealStandContract {
void
showModifyLayoutVisibility
(
boolean
show
);
void
showBtnMealModifyRestoreVisibility
(
boolean
show
);
void
setOrderFoodCount
(
String
number
);
void
setMealRvScrollToPosition
(
int
position
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/contract/OrderPayContract.java
View file @
19072f96
...
...
@@ -28,8 +28,6 @@ import okhttp3.RequestBody;
public
interface
OrderPayContract
{
interface
View
extends
BaseOrderContract
.
View
{
void
setDifferenceText
();
void
showTipDialog
(
String
msg
,
String
btnCancelInfo
,
String
btnOkInfo
);
void
showStatusDialog
(
int
operatType
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/OrderDetailItem.java
View file @
19072f96
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
bean
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.common.bean.TableBean
;
import
lombok.Data
;
...
...
@@ -79,25 +81,35 @@ public class OrderDetailItem implements Serializable {
// private double tipsPrice;
// private byte linePayType;
/**折扣ID*/
private
Long
discountId
;
/**折扣金額*/
private
double
discountAmount
;
/**折扣比例*/
private
int
discountValue
;
/**折扣名稱*/
private
String
remark
;
/**折扣類型*/
private
int
type
;
// /**折扣ID*/
// private Long discountId;
// /**折扣金額*/
// private double discountAmount;
// /**折扣比例*/
// private int discountValue;
// /**折扣名稱*/
// private String remark;
// /**折扣類型*/
// private int type;
/**生成訂單時間*/
private
String
createTime
;
/**結賬時間*/
private
String
endTime
;
/**訂單食品詳情*/
private
List
<
OrderBean
.
OrderDetailsBean
>
orderDetails
;
/**折扣詳情*/
private
List
<
OrderDiscount
.
Respose
>
discountDetails
;
/**支付詳情*/
private
List
<
OrderPayBean
>
orderPays
;
/**餐檯信息*/
private
TableBean
.
DataBean
restaurantTable
;
/**會員信息*/
private
MemberInfo
memberInfo
;
/**會員積分碼*/
private
String
verifyCode
;
/**
* 訂單狀態:0:未支付;1:待確認(已支付, 待餐廳確認);2:制作中(餐厅确认);3:派送中;4:确认收货(完成);5:是否评论;6:取消;
...
...
@@ -112,7 +124,7 @@ public class OrderDetailItem implements Serializable {
@Data
public
static
class
OrderPayBean
implements
Serializable
{
public
static
final
class
OrderPayBean
implements
Serializable
{
private
long
id
;
private
long
lineOrderId
;
private
int
payType
;
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/OrderPayRespose.java
0 → 100644
View file @
19072f96
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
bean
;
import
lombok.Data
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-02
* 修订历史:2020-09-02
* 描述:
*/
@Data
public
class
OrderPayRespose
{
/**
* verifyCode : 387F9C1D8B2AD91B42982C8E50835A8C
* oldPoints : 0
*/
private
String
verifyCode
;
//本次加多少積分
private
float
addPoints
;
//之前有多少積分
private
float
oldPoints
;
//現在有多少積分
private
float
nowPoint
;
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/request/AddOrderRequest.java
View file @
19072f96
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
bean
.
request
;
import
com.gingersoft.gsa.cloud.base.common.bean.DeleteOrderRequest
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDiscount
;
...
...
@@ -19,12 +20,19 @@ import lombok.Data;
public
class
AddOrderRequest
{
private
long
orderId
;
/**
* 使用會員ID
*/
private
Long
memberId
;
private
long
tableId
;
private
String
tableNumber
;
/**賬單小數*/
/**
* 賬單小數
*/
private
Double
rounding
;
private
List
<
OrderDiscount
.
Request
>
discountDetails
;
private
Map
<
String
,
List
<
OrderBean
.
OrderDetailsBean
>>
maps
;
private
List
<
DeleteOrderRequest
>
deleteOrders
;
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/bean/request/DeleteOrderRequest.java
deleted
100644 → 0
View file @
e3e7e244
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
bean
.
request
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderDetail
;
import
java.util.List
;
import
java.util.Map
;
import
lombok.Data
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-02-22
* 修订历史:2020-02-22
* 描述:
*/
public
class
DeleteOrderRequest
{
@Data
public
static
class
Request
{
private
List
<
Map
<
Byte
,
DeleteOrderRequest
.
DeleteBean
>>
mapsDelete
;
private
long
orderId
;
private
long
tableId
;
private
String
tableNumber
;
private
byte
type
;
private
long
reasonId
;
}
@Data
public
static
class
DeleteBean
{
private
long
id
;
private
int
number
;
}
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/service/MealService.java
View file @
19072f96
...
...
@@ -5,14 +5,9 @@ import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import
com.gingersoft.gsa.cloud.base.common.bean.FoodBean
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.BaseRespose
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.FoodReason
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.request.DeleteOrderRequest
;
import
java.util.List
;
import
java.util.Map
;
import
io.reactivex.Observable
;
import
me.jessyan.retrofiturlmanager.RetrofitUrlManager
;
import
okhttp3.FormBody
;
import
okhttp3.RequestBody
;
import
retrofit2.http.Body
;
import
retrofit2.http.Field
;
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/BaseOrderPresenter.java
View file @
19072f96
...
...
@@ -138,9 +138,10 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
initOrderAdapter
();
initItemClickListener
();
// removeBillOrderMoney();
if
(
this
instanceof
MealStandPresenter
)
{
if
(!
containsTableService
())
{
addTableServiceAmount
();
}
if
(
this
instanceof
MealStandPresenter
)
{
addSentOrderDiscount
();
addOrderRounding
();
//設置賬單總金額
...
...
@@ -150,15 +151,14 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
}
}
private
void
removeBillOrderMoney
()
{
private
boolean
containsTableService
()
{
for
(
int
i
=
mOrderMoneyList
.
size
()
-
1
;
i
>=
0
;
i
--)
{
BillOrderMoney
billOrderMoney
=
mOrderMoneyList
.
get
(
i
);
if
((
billOrderMoney
.
getType
()
==
BillOrderMoney
.
ORDER_DISCOUNT_TYPE
||
billOrderMoney
.
getType
()
==
BillOrderMoney
.
MEMBER_DISCOUNT_TYPE
)
&&
billOrderMoney
.
getStatus
()
==
0
)
{
//未送單折扣不刪除
}
else
{
mOrderMoneyList
.
remove
(
i
);
if
(
billOrderMoney
.
getType
()
==
BillOrderMoney
.
SERVERCHARGE_TYPE
)
{
return
true
;
}
}
return
false
;
}
@Override
...
...
@@ -290,6 +290,9 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
* @param isPrint 是否印單
*/
public
void
sendOrder
(
boolean
isPrint
)
{
if
(!
sendOrderConditionFilter
())
{
return
;
}
if
(
MyOrderManage
.
getInstance
().
getOrderId
()
<
1
)
{
if
(
getFoodSize
()
==
0
)
{
Class
[]
parameterTypes
=
{
boolean
.
class
};
...
...
@@ -325,9 +328,32 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
}
/**
* 送單條件過濾
*
* @return
*/
public
boolean
sendOrderConditionFilter
()
{
MemberInfo
memberInfo
=
MyOrderManage
.
getInstance
().
getMemberInfo
();
if
(
memberInfo
==
null
)
{
for
(
OrderDetail
item
:
getNewOrderFoodLists
())
{
if
(
item
.
getPointsAdd
()
!=
0
||
item
.
getPointsRedeem
()
!=
0
)
{
String
msg
=
"有積分食品,請使用會員后結賬!"
;
CommonTipDialog
.
showSurpisedDialog
(
IActivity
,
msg
,
BaseOrderPresenter
.
class
,
this
,
""
,
null
,
null
);
return
false
;
}
}
}
return
true
;
}
/**
* 更新賬單金額
*/
public
void
updateOrderMoneyItem
()
{
if
(!
containsTableService
())
{
addTableServiceAmount
();
}
updateFoodDiscount
();
updateTableServiceAmount
();
updateOrderDiscount
();
...
...
@@ -350,17 +376,20 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
//整單折扣
Discount
discount
=
new
Discount
();
discount
.
setId
(
orderDiscount
.
getDiscountId
());
discount
.
setType
(
orderDiscount
.
getType
());
discount
.
setRemark
(
orderDiscount
.
getRemark
());
if
(
orderDiscount
.
getDiscountValue
()
!=
0
)
{
//百分比折扣
discount
.
setType
(
1
);
discount
.
setDiscount_value
(
orderDiscount
.
getDiscountValue
());
addOrderDiscount
(
true
,
discount
,
1
);
continue
;
}
if
(
orderDiscount
.
getDiscountAmount
()
!=
0
)
{
//金額折扣
discount
.
setType
(
0
);
discount
.
setAmount
(
orderDiscount
.
getDiscountAmount
());
addOrderDiscount
(
true
,
discount
,
1
);
continue
;
}
}
else
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
MEMBER_DISCOUNT
)
{
//會員折扣
...
...
@@ -419,7 +448,6 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
}
}
/**
* 添加賬單折扣
*
...
...
@@ -662,6 +690,8 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
public
double
getFoodTotal
()
{
double
total
=
0.0
;
for
(
OrderDetail
food
:
myOrderManage
.
getOrderFoodList
())
{
if
(
food
.
getNumber
()
==
0
)
continue
;
if
(
food
.
getType
()
==
OrderDetail
.
DISCOUNT_TYPE
)
{
//折扣金额直接减掉
total
=
MoneyUtil
.
sub
(
total
,
Math
.
abs
(
food
.
getPrice
()));
...
...
@@ -685,6 +715,8 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
int
orderSize
=
myOrderManage
.
getOrderFoodList
().
size
();
for
(
int
i
=
0
;
i
<
orderSize
;
i
++)
{
OrderDetail
food
=
myOrderManage
.
getOrderFoodList
().
get
(
i
);
if
(
food
.
getNumber
()
==
0
)
continue
;
if
(
food
.
getItemType
()
==
1
)
{
if
(
food
.
getAblediscount
()
==
1
)
{
total
=
MoneyUtil
.
sum
(
total
,
food
.
getPrice
());
...
...
@@ -759,6 +791,8 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
int
orderSize
=
myOrderManage
.
getOrderFoodList
().
size
();
for
(
int
i
=
0
;
i
<
orderSize
;
i
++)
{
OrderDetail
food
=
myOrderManage
.
getOrderFoodList
().
get
(
i
);
if
(
food
.
getNumber
()
==
0
)
continue
;
if
(
food
.
getItemType
()
==
1
)
{
if
(
food
.
getScAble
()
==
1
)
{
total
=
MoneyUtil
.
sum
(
total
,
food
.
getPrice
());
...
...
@@ -792,8 +826,10 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
public
double
getTotalAmountFilterByType
(
int
...
filterTypes
)
{
double
foodTotal
=
getFoodTotal
();
for
(
BillOrderMoney
item
:
mOrderMoneyList
)
{
// if (item.getType() != BillOrderMoney.ROUNDING_TYPE) {
if
(!
filterType
(
item
.
getType
(),
filterTypes
))
{
if
(
item
.
getType
()
==
BillOrderMoney
.
SERVERCHARGE_TYPE
&&
mOrderMoneyAdapter
.
getWhetherFreeService
()
==
1
)
{
//TODO 免服務費
}
else
{
foodTotal
=
MoneyUtil
.
sum
(
foodTotal
,
item
.
getMoney
());
if
(
0
>
foodTotal
)
{
//折扣金額不能超出總額
...
...
@@ -801,6 +837,7 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
}
}
}
}
if
(
foodTotal
<
0
)
{
foodTotal
=
0
;
}
...
...
@@ -824,12 +861,16 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
public
double
getTotalAmount
()
{
double
foodTotal
=
getFoodTotal
();
for
(
BillOrderMoney
item
:
mOrderMoneyList
)
{
if
(
item
.
getType
()
==
BillOrderMoney
.
SERVERCHARGE_TYPE
&&
mOrderMoneyAdapter
.
getWhetherFreeService
()
==
1
)
{
//TODO 免服務費
}
else
{
foodTotal
=
MoneyUtil
.
sum
(
foodTotal
,
item
.
getMoney
());
if
(
0
>
foodTotal
)
{
//折扣金額不能超出總額
foodTotal
=
0
;
}
}
}
if
(
foodTotal
<
0
)
{
foodTotal
=
0
;
}
...
...
@@ -901,6 +942,47 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
return
str
;
}
/**
* 返回選中已送單食品
*
* @return
*/
protected
List
<
OrderDetail
>
getSelectedOldFood
()
{
List
<
OrderDetail
>
selectedOldOrders
=
new
ArrayList
<>();
List
<
OrderDetail
>
oldOrders
=
getOldOrderFoodLists
();
int
start_position
=
mSelectMealAdapter
.
getSelect_full_start_position
();
int
end_position
=
mSelectMealAdapter
.
getSelect_full_end_position
();
for
(
int
i
=
oldOrders
.
size
()
-
1
;
i
>=
0
;
i
--)
{
if
(
start_position
<=
i
&&
i
<=
end_position
)
{
OrderDetail
orderDetail1
=
oldOrders
.
get
(
i
);
if
(
orderDetail1
.
getType
()
!=
DISCOUNT_TYPE
)
{
selectedOldOrders
.
add
(
orderDetail1
);
}
}
}
return
selectedOldOrders
;
}
/**
* 返回選中已送單食品、折扣
*
* @return
*/
protected
List
<
OrderDetail
>
getSelectedOldFoodAndDicount
()
{
List
<
OrderDetail
>
selectedOldOrders
=
new
ArrayList
<>();
List
<
OrderDetail
>
oldOrders
=
getOldOrderFoodLists
();
int
start_position
=
mSelectMealAdapter
.
getSelect_full_start_position
();
int
end_position
=
mSelectMealAdapter
.
getSelect_full_end_position
();
for
(
int
i
=
oldOrders
.
size
()
-
1
;
i
>=
0
;
i
--)
{
if
(
start_position
<=
i
&&
i
<=
end_position
)
{
OrderDetail
orderDetail1
=
oldOrders
.
get
(
i
);
selectedOldOrders
.
add
(
orderDetail1
);
}
}
return
selectedOldOrders
;
}
/**
* 删除已选中的食品
*/
...
...
@@ -976,10 +1058,17 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
setChildDiscountByMainAblediscount
(
newFoodList
);
AddOrderRequest
request
=
new
AddOrderRequest
();
request
.
setTableNumber
(
OpenTableManage
.
getDefault
().
getTableBean
().
getTableNumber
());
request
.
setMaps
(
orderDetailBeanToAddFoodRequest
(
newFoodList
));
request
.
setOrderId
(
MyOrderManage
.
getInstance
().
getOrderId
());
request
.
setTableId
(
OpenTableManage
.
getDefault
().
getTableBean
().
getId
());
if
(
MyOrderManage
.
getInstance
().
getMemberInfo
()
!=
null
)
{
request
.
setMemberId
(
MyOrderManage
.
getInstance
().
getMemberInfo
().
getId
());
}
request
.
setTableNumber
(
OpenTableManage
.
getDefault
().
getTableBean
().
getTableNumber
());
request
.
setMaps
(
orderDetailBeanToAddFoodRequest
(
newFoodList
));
if
(
myOrderManage
.
getDeleteOrders
()
!=
null
)
{
request
.
setDeleteOrders
(
myOrderManage
.
getDeleteOrders
());
}
Double
rounding
=
getRounding
();
request
.
setRounding
(
rounding
!=
null
?
rounding
:
0
);
...
...
@@ -1291,20 +1380,6 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
}
/**
* 返回整單折扣
*
* @return
*/
protected
BillOrderMoney
getOrderDiscount
()
{
for
(
BillOrderMoney
item
:
mOrderMoneyList
)
{
if
(
item
.
getType
()
==
BillOrderMoney
.
ORDER_DISCOUNT_TYPE
)
{
return
item
;
}
}
return
null
;
}
/**
* 返回未送單整單折扣
*
* @return
...
...
@@ -1318,21 +1393,6 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
return
null
;
}
/**
* 返回未送單會員折扣
*
* @return
*/
protected
BillOrderMoney
getMemberDiscount
()
{
for
(
BillOrderMoney
item
:
mOrderMoneyList
)
{
if
(
item
.
getType
()
==
BillOrderMoney
.
MEMBER_DISCOUNT_TYPE
)
{
return
item
;
}
}
return
null
;
}
/**
* 返回未送單食品列表
*
...
...
@@ -1394,6 +1454,10 @@ public class BaseOrderPresenter<M extends BaseOrderContract.Model, V extends Bas
return
myOrderManage
.
getOrderFoodList
();
}
public
OrderMoneyAdapter
getOrderMoneyAdapter
()
{
return
mOrderMoneyAdapter
;
}
protected
void
sortSelectMealByIsNew
()
{
List
<
OrderDetail
>
orderDetail
=
mOrderFoodList
;
List
<
OrderDetail
>
sortOrderList
=
new
ArrayList
<>();
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/MealStandPresenter.java
View file @
19072f96
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
presenter
;
import
android.app.Application
;
import
android.content.Intent
;
import
android.graphics.Color
;
import
android.text.TextUtils
;
import
android.util.SparseArray
;
import
android.view.View
;
import
android.widget.Button
;
import
com.billy.cc.core.component.CC
;
import
com.gingersoft.gsa.cloud.aspectj.XClickUtil
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult2
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.OrderBean
;
...
...
@@ -39,7 +35,7 @@ import com.gingersoft.gsa.cloud.table.mvp.model.bean.FoodReason;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.SoldoutCtrFood
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.request.AddOrderRequest
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.request.CreateOrderRequest
;
import
com.gingersoft.gsa.cloud.
table.mvp.model.bean.request
.DeleteOrderRequest
;
import
com.gingersoft.gsa.cloud.
base.common.bean
.DeleteOrderRequest
;
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.adapter.meal.ComboAdapter
;
...
...
@@ -50,20 +46,14 @@ 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.CancelFoodDialog
;
import
com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog
;
import
com.gingersoft.gsa.cloud.zxing.MipcaCaptureActivity
;
import
com.jess.arms.base.DefaultAdapter
;
import
com.jess.arms.di.scope.ActivityScope
;
import
com.jess.arms.http.imageloader.ImageLoader
;
import
com.jess.arms.integration.AppManager
;
import
com.jess.arms.utils.ArmsUtils
;
import
com.jess.arms.utils.DeviceUtils
;
import
com.jess.arms.utils.PermissionUtil
;
import
com.jess.arms.utils.RxLifecycleUtils
;
import
com.qmuiteam.qmui.widget.dialog.QMUIDialog
;
import
com.qmuiteam.qmui.widget.dialog.QMUIDialogAction
;
import
com.tbruyelle.rxpermissions2.RxPermissions
;
import
org.simple.eventbus.EventBus
;
import
org.simple.eventbus.Subscriber
;
import
java.util.ArrayList
;
...
...
@@ -816,74 +806,112 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
}
/**
* 問題:刪除數量 1.賬單小數未更新 世維調整
* 刪除已送單食品
* 標記需刪除食品
*
* @param maxNumber
* @param deleteNumber
* @param reasonId
*/
public
void
deleteFood
(
int
maxNumber
,
int
deleteNumber
,
long
reasonId
)
{
public
void
markDeleteFood
(
int
maxNumber
,
int
deleteNumber
,
int
reasonId
,
String
reason
)
{
String
ids
=
getSelectedOldFoodIds
();
if
(
TextUtils
.
isEmpty
(
ids
))
{
return
;
}
DeleteOrderRequest
.
Request
request
=
getDeleteOrderRequest
(
ids
,
reasonId
,
maxNumber
,
deleteNumber
);
String
deleteOrderRequest
=
GsonUtils
.
GsonString
(
request
);
RequestBody
requestBody
=
RequestBody
.
create
(
MediaType
.
parse
(
"application/json"
),
deleteOrderRequest
);
mModel
.
deleteFood
(
requestBody
)
.
subscribeOn
(
Schedulers
.
io
())
.
doOnSubscribe
(
disposable
->
mRootView
.
showLoading
(
null
))
.
subscribeOn
(
AndroidSchedulers
.
mainThread
())
.
observeOn
(
AndroidSchedulers
.
mainThread
())
.
doAfterTerminate
(()
->
mRootView
.
hideLoading
())
.
compose
(
RxLifecycleUtils
.
bindToLifecycle
(
mRootView
))
.
subscribe
(
new
ErrorHandleSubscriber
<
BaseRespose
>(
mErrorHandler
)
{
@Override
public
void
onNext
(
@NonNull
BaseRespose
info
)
{
if
(
info
==
null
)
{
mRootView
.
showMessage
(
"刪除失敗"
);
return
;
List
<
OrderDetail
>
oldOrders
=
getSelectedOldFoodAndDicount
();
for
(
OrderDetail
item
:
oldOrders
)
{
//保存取消前的數量
item
.
setModifyBeforeNumber
(
item
.
getNumber
());
//將數量標記成已刪除
int
afterDeleteNumber
=
item
.
getNumber
()
-
deleteNumber
;
if
(
afterDeleteNumber
>
0
)
{
item
.
setNumber
(
afterDeleteNumber
);
}
else
{
item
.
setNumber
(
0
);
}
if
(
info
.
isSuccess
())
{
mRootView
.
showMessage
(
"刪除成功"
);
//删除所有已下单信息
deleteOldFood
();
if
(
info
.
getData
()
!=
null
&&
info
.
getData
().
getOrderDetails
()
!=
null
)
{
OpenTableManage
.
getDefault
().
setPeopleNumber
(
info
.
getData
().
getPerson
());
//緩存訂單信息
MyOrderManage
.
getInstance
().
setOrderBean
(
new
OrderBean
(
info
.
getData
()));
//緩存食品信息
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
info
.
getData
().
getOrderDetails
()));
mOrderFoodList
.
addAll
(
orderDetailList
);
item
.
setCancelReason
(
reason
);
item
.
setReasonId
(
reasonId
);
item
.
setCancelNumber
(
deleteNumber
);
}
mSelectMealAdapter
.
notifyDataSetChanged
();
//重新排序食品 将已下单食品放到前面
sortSelectMealByIsNew
();
//將取消信息保存到訂單信息類中
DeleteOrderRequest
request
=
getDeleteOrderRequest
(
ids
,
reasonId
,
maxNumber
,
deleteNumber
);
myOrderManage
.
addDeleteOrder
(
request
);
mSelectMealAdapter
.
notifyDataSetChanged
();
mSelectMealAdapter
.
setIndex
();
mRootView
.
showBtnMealModifyRestoreVisibility
(
true
);
//重新獲取沽清數據
getCurrentSoldoutFood
();
// String deleteOrderRequest = GsonUtils.GsonString(request);
// RequestBody requestBody = RequestBody.create(MediaType.parse("application/json"), deleteOrderRequest);
//
// mModel.deleteFood(requestBody)
// .subscribeOn(Schedulers.io())
// .doOnSubscribe(disposable -> mRootView.showLoading(null))
// .subscribeOn(AndroidSchedulers.mainThread())
// .observeOn(AndroidSchedulers.mainThread())
// .doAfterTerminate(() -> mRootView.hideLoading())
// .compose(RxLifecycleUtils.bindToLifecycle(mRootView))
// .subscribe(new ErrorHandleSubscriber<BaseRespose>(mErrorHandler) {
//
// @Override
// public void onNext(@NonNull BaseRespose info) {
//
// if (info == null) {
// mRootView.showMessage("刪除失敗");
// return;
// }
//
// if (info.isSuccess()) {
//
// mRootView.showMessage("刪除成功");
//
// //删除所有已下单信息
// deleteOldFood();
//
// if (info.getData() != null && info.getData().getOrderDetails() != null) {
//
// OpenTableManage.getDefault().setPeopleNumber(info.getData().getPerson());
// //緩存訂單信息
// MyOrderManage.getInstance().setOrderBean(new OrderBean(info.getData()));
// //緩存食品信息
// List<OrderDetail> orderDetailList = OrderAssemblyUtil.assemblyOrder(OrderDetail.orderTransOrderDetails(info.getData().getOrderDetails()));
//
// mOrderFoodList.addAll(orderDetailList);
// }
//
// //重新排序食品 将已下单食品放到前面
// sortSelectMealByIsNew();
//
// mSelectMealAdapter.notifyDataSetChanged();
// mSelectMealAdapter.setIndex();
//
// //重新獲取沽清數據
// getCurrentSoldoutFood();
//
// mRootView.showViewModeVisibility(MealConstant.food_group_ViewMode, MealConstant.food_ViewMode);
// } else {
// mRootView.showMessage("獲取訂單數據失敗");
// }
// }
// });
}
mRootView
.
showViewModeVisibility
(
MealConstant
.
food_group_ViewMode
,
MealConstant
.
food_ViewMode
);
}
else
{
mRootView
.
showMessage
(
"獲取訂單數據失敗"
);
/**
* 恢復標記刪除的食品
*/
public
void
restoreDeleteFood
()
{
for
(
OrderDetail
item
:
mOrderFoodList
)
{
if
(!
item
.
isModify
()){
continue
;
}
item
.
setNumber
(
item
.
getModifyBeforeNumber
());
item
.
setModifyBeforeNumber
(
0
);
item
.
setCancelReason
(
""
);
item
.
setReasonId
(
0
);
item
.
setCancelNumber
(
0
);
}
});
myOrderManage
.
setDeleteOrders
(
null
);
mSelectMealAdapter
.
notifyDataSetChanged
();
}
public
void
queryMember
(
int
type
,
String
parm
,
String
shopName
,
int
tableId
,
String
tableNumber
)
{
...
...
@@ -1033,7 +1061,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
mCancelFoodDialog
.
build
().
dismiss
();
mCancelFoodDialog
=
null
;
}
deleteFood
(
maxNumber
,
deleteNumber
,
reasonId
);
markDeleteFood
(
maxNumber
,
deleteNumber
,
reasonId
,
reason
);
});
dialogBuilder
.
addAction
(
"取消"
,
(
dialog
,
index
)
->
dialog
.
dismiss
());
dialogBuilder
.
create
(
R
.
style
.
MyDialogTheme2
).
show
();
...
...
@@ -2056,12 +2084,12 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
* @param deleteNumber
* @return
*/
private
DeleteOrderRequest
.
Request
getDeleteOrderRequest
(
String
ids
,
long
reasonId
,
int
maxNumber
,
int
deleteNumber
)
{
List
<
Map
<
Byte
,
DeleteOrderRequest
.
DeleteBean
>
>
mapsDelete
=
getMapsDelete
(
ids
,
maxNumber
,
deleteNumber
);
private
DeleteOrderRequest
getDeleteOrderRequest
(
String
ids
,
long
reasonId
,
int
maxNumber
,
int
deleteNumber
)
{
List
<
DeleteOrderRequest
.
DeleteBean
>
mapsDelete
=
getMapsDelete
(
ids
,
maxNumber
,
deleteNumber
);
byte
type
=
(
byte
)
(
myOrderManage
.
isModifyOrder
()
?
2
:
1
);
long
orderId
=
MyOrderManage
.
getInstance
().
getOrderId
();
DeleteOrderRequest
.
Request
request
=
new
DeleteOrderRequest
.
Request
();
DeleteOrderRequest
request
=
new
DeleteOrder
Request
();
request
.
setMapsDelete
(
mapsDelete
);
request
.
setOrderId
(
orderId
);
request
.
setTableId
(
OpenTableManage
.
getDefault
().
getTableBean
().
getId
());
...
...
@@ -2079,21 +2107,20 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
* @param deleteNumber
* @return
*/
private
List
<
Map
<
Byte
,
DeleteOrderRequest
.
DeleteBean
>>
getMapsDelete
(
String
ids
,
int
maxNumber
,
int
deleteNumber
)
{
List
<
Map
<
Byte
,
DeleteOrderRequest
.
DeleteBean
>>
deleteMaps
=
new
ArrayList
<>();
private
List
<
DeleteOrderRequest
.
DeleteBean
>
getMapsDelete
(
String
ids
,
int
maxNumber
,
int
deleteNumber
)
{
List
<
DeleteOrderRequest
.
DeleteBean
>
deleteMaps
=
new
ArrayList
<>();
//取消食品id
String
[]
idsArray
=
ids
.
split
(
","
);
//取消食品數量
String
[]
quantitys
=
getQuantitys
(
idsArray
.
length
,
maxNumber
,
deleteNumber
).
split
(
","
);
for
(
int
i
=
0
;
i
<
idsArray
.
length
;
i
++)
{
String
[]
quantitysStr
=
quantitys
[
i
].
split
(
"_"
);
Map
<
Byte
,
DeleteOrderRequest
.
DeleteBean
>
map
=
new
HashMap
<>();
//
Map<Byte, DeleteOrderRequest.DeleteBean> map = new HashMap<>();
DeleteOrderRequest
.
DeleteBean
request
=
new
DeleteOrderRequest
.
DeleteBean
();
request
.
setId
(
Long
.
parseLong
(
idsArray
[
i
]));
request
.
setNumber
(
Integer
.
parseInt
(
quantitysStr
[
1
]));
map
.
put
(
Byte
.
parseByte
(
quantitysStr
[
0
]),
request
);
deleteMaps
.
add
(
map
);
//
map.put(Byte.parseByte(quantitysStr[0]), request);
deleteMaps
.
add
(
request
);
}
return
deleteMaps
;
}
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderContentPresenter.java
View file @
19072f96
...
...
@@ -246,8 +246,9 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
if
(
MyOrderManage
.
getInstance
().
isModifyOrder
())
{
//修改訂單隱藏送單,印單功能
mFunctionList
.
add
(
new
Function
(
"結賬"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#DC0000"
),
24
));
mFunctionList
.
add
(
new
Function
(
"折扣"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#008577"
),
24
));
}
else
{
List
<
Function
>
functions
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
IActivity
,
ComponentTable
.
table
.
class
,
ComponentTable
.
table
.
order
,
"order"
);
List
<
Function
>
functions
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
GsaCloudApplication
.
getAppContext
()
,
ComponentTable
.
table
.
class
,
ComponentTable
.
table
.
order
,
"order"
);
for
(
int
i
=
0
;
i
<
functions
.
size
();
i
++)
{
if
(
functions
.
get
(
i
).
getParentId
()
==
0
)
{
functions
.
remove
(
i
);
...
...
@@ -726,6 +727,25 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
mDiscountDialog
.
build
().
show
();
}
/**
* 轉移條件過濾
*
* @return
*/
public
boolean
transferFoodConditionFilter
(
long
memberId
)
{
List
<
OrderDetail
>
oldOrderDetails
=
getSelectedOldFood
();
for
(
OrderDetail
item
:
oldOrderDetails
)
{
//積分食品轉移-》目標檯不是會員檯-》提示不可轉移
if
((
item
.
getPointsAdd
()
!=
0
||
item
.
getPointsRedeem
()
!=
0
)
&&
memberId
==
0
)
{
String
msg
=
"積分食品轉移,目標檯不是會員檯,不可轉移!"
;
CommonTipDialog
.
showSurpisedDialog
(
IActivity
,
msg
,
OrderContentPresenter
.
class
,
OrderContentPresenter
.
this
,
""
,
null
,
null
);
return
false
;
}
}
return
true
;
}
public
void
removeOrderDetailItem
(
int
index
)
{
if
(
index
<
mOrderMoneyList
.
size
())
{
mOrderMoneyList
.
remove
(
index
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderPayPresenter.java
View file @
19072f96
...
...
@@ -13,12 +13,13 @@ import com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage;
import
com.gingersoft.gsa.cloud.base.utils.JsonUtils
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils
;
import
com.gingersoft.gsa.cloud.table.app.payment.PayConstant
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderPayContract
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderPayRespose
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.request.AddOrderRequest
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.request.CreateOrderRequest
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderPayActivity
;
import
com.gingersoft.gsa.cloud.ui.view.OrderPayView
;
import
com.gingersoft.gsa.cloud.ui.widget.dialog.CommonTipDialog
;
import
com.jess.arms.di.scope.ActivityScope
;
import
com.jess.arms.http.imageloader.ImageLoader
;
import
com.jess.arms.integration.AppManager
;
...
...
@@ -189,7 +190,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
if
(
baseResult
.
isSuccess
())
{
List
<
PayMethod
>
payMethods
=
JsonUtils
.
parseArray
(
baseResult
.
getData
(),
PayMethod
.
class
);
for
(
int
i
=
0
;
i
<
payMethods
.
size
();
i
++)
{
//這裡有對象為null的
清機
排除掉
//這裡有對象為null的
情況
排除掉
if
(
payMethods
.
get
(
i
)
==
null
)
{
payMethods
.
remove
(
i
);
}
...
...
@@ -234,33 +235,20 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
public
void
onNext
(
BaseResult
baseResult
)
{
mRootView
.
hideLoading
();
if
(
baseResult
.
isSuccess
())
{
MemberInfo
memberInfo
=
MyOrderManage
.
getInstance
().
getMemberInfo
();
if
(
memberInfo
!=
null
)
{
setPoints
(
memberInfo
);
}
OrderPayRespose
orderPayRespose
=
JsonUtils
.
parseObject
(
baseResult
.
getData
(),
OrderPayRespose
.
class
);
MyOrderManage
.
getInstance
().
setAddPoints
(
orderPayRespose
.
getAddPoints
());
MyOrderManage
.
getInstance
().
setNowPoint
(
orderPayRespose
.
getNowPoint
());
MyOrderManage
.
getInstance
().
setOldPoints
(
orderPayRespose
.
getOldPoints
());
MyOrderManage
.
getInstance
().
setIntegralQrcode
(
orderPayRespose
.
getVerifyCode
());
// MemberInfo memberInfo = MyOrderManage.getInstance().getMemberInfo();
// if (memberInfo != null) {
// setPoints(memberInfo);
// }
//結賬成功
mRootView
.
paySuccess
();
}
}
private
void
setPoints
(
MemberInfo
memberInfo
)
{
double
pointsAdd
=
getPointsAdd
();
double
pointsUse
=
getPointsRedeem
();
double
pointsOld
=
memberInfo
.
getMemberPoint
();
double
pointsNow
=
pointsOld
+
(
pointsAdd
+
pointsUse
);
MyOrderManage
.
getInstance
().
setPointsOld
(
pointsOld
);
MyOrderManage
.
getInstance
().
setPointsNow
(
pointsNow
);
if
(
pointsAdd
>
0
)
{
MyOrderManage
.
getInstance
().
setPointsAdd
(
pointsAdd
);
}
if
(
pointsUse
>
0
)
{
MyOrderManage
.
getInstance
().
setPointsUse
(
pointsUse
);
}
}
@Override
public
void
onError
(
Throwable
t
)
{
super
.
onError
(
t
);
...
...
@@ -278,14 +266,16 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
payRequest
.
setLinePayType
(
orderPayView
.
getLinePayType
());
payRequest
.
setTableId
(
OpenTableManage
.
getDefault
().
getTableBean
().
getId
());
payRequest
.
setTableNumber
(
OpenTableManage
.
getDefault
().
getTableBean
().
getTableNumber
());
payRequest
.
setMemberId
(
GsaCloudApplication
.
getMemberId
(
mApplication
));
if
(
myOrderManage
.
getMemberInfo
()
!=
null
)
{
payRequest
.
setMemberId
(
myOrderManage
.
getMemberInfo
().
getId
());
}
payRequest
.
setPointsAdd
(
getPointsAdd
());
payRequest
.
setPointsUse
(
getPointsRedeem
());
for
(
int
i
=
0
;
i
<
payMethodList
.
size
();
i
++)
{
PayMethod
payMethod
=
payMethodList
.
get
(
i
);
OrderPayRequest
.
orderPay
orderPay
=
new
OrderPayRequest
.
orderPay
();
orderPay
.
setPayType
(
payMethod
.
get
Id
());
orderPay
.
setPayType
(
payMethod
.
get
PayType
());
if
(
payMethodList
.
size
()
==
2
)
{
if
(
i
==
1
)
{
//小费放在第二种支付方式里面
...
...
@@ -398,7 +388,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
* 結賬前創建訂單或添加食品
*/
public
void
sendOrderBefore
()
{
if
(
hasNesOrderFoods
()
||
getNesOrderDiscount
()
!=
null
)
{
if
(
hasNesOrderFoods
()
||
getNesOrderDiscount
()
!=
null
||
hasDeleteFood
()
)
{
//有食品或折扣未送單 先送單
sendOrder
(
false
);
}
else
{
...
...
@@ -407,13 +397,31 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
}
}
public
void
pressExact
()
{
// double differenceMoney = getDifferenceMoney();
// PayMethod billMoneyBean = getSelectBillMoney();
// if (billMoneyBean != null && differenceMoney > 0) {
// billMoneyBean.setPayMoney(billMoneyBean.getPayMoney() + differenceMoney);
// mBillMoneyAdapter.notifyDataSetChanged();
// }
/**
* 是否修刪除過食品
*
* @return
*/
private
boolean
hasDeleteFood
()
{
for
(
OrderDetail
item
:
mOrderFoodList
)
{
if
(
item
.
isModify
())
{
return
true
;
}
}
return
false
;
}
public
void
setWhetherFreeService
(
int
whetherFreeService
)
{
//更新服務費中劃線
mOrderMoneyAdapter
.
setWhetherFreeService
(
whetherFreeService
);
//更新總金額
updateOrderMoneyItem
();
OrderPayView
orderPayView
=
IActivity
.
getGsaPayView
();
if
(
orderPayView
!=
null
)
{
orderPayView
.
setTotalAmount
(
getTotalAmount
());
orderPayView
.
initOrderDetail
();
orderPayView
.
setDifferenceText
(
GsaCloudApplication
.
getAppContext
());
}
}
/**
...
...
@@ -430,20 +438,6 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
}
/**
* 是否現金支付
*
* @param datasBean
* @return
*/
private
boolean
isCashPayMethod
(
PayMethod
datasBean
)
{
// if (datasBean.getPayType().equals(PayConstant.PAY_WAY_CASH)) {
return
true
;
// } else {
// return false;
// }
}
/**
* 獲取超出的金額為找零還是貼士: linePayType 1 tipsPrice 为找零 2 tipsPrice为贴上
* 現金,掃碼QR = 找零
* 信用卡 = 貼士
...
...
@@ -469,17 +463,6 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
}
/**
* 獲取食品總金額
*
* @return
*/
private
double
getAmount
()
{
//支付總額減去找零或貼士
// return getBillMoney() - getTipsPrice();
return
getBillMoney
();
}
/**
* 獲取支付差額
*
* @return
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/TablePresenter.java
View file @
19072f96
...
...
@@ -207,10 +207,9 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
});
}
public
void
initBottomFunctionItem
()
{
boolean
addFuctions
=
false
;
List
<
Function
>
functions
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
IActivity
,
ComponentTable
.
table
.
class
,
ComponentTable
.
table
.
bottom
,
"bottom"
);
List
<
Function
>
functions
=
FunctionManager
.
getDefault
().
getFunctionByResModule
(
GsaCloudApplication
.
getAppContext
()
,
ComponentTable
.
table
.
class
,
ComponentTable
.
table
.
bottom
,
"bottom"
);
for
(
int
i
=
0
;
i
<
functions
.
size
();
i
++)
{
if
(
functions
.
get
(
i
).
getParentId
()
==
0
)
{
//有配置餐檯操作模块
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/orderManager/AllOrderPresenter.java
View file @
19072f96
...
...
@@ -3,12 +3,14 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter.orderManager;
import
android.app.Application
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
com.billy.cc.core.component.CC
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney
;
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.OrderDiscount
;
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
;
...
...
@@ -121,14 +123,17 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
orderBean
.
setOrderNo
(
datasBean
.
getOrderNo
());
orderBean
.
setPerson
(
datasBean
.
getPerson
());
orderBean
.
setCreateTime
(
datasBean
.
getCreateTime
());
if
(
datasBean
.
getDiscountDetails
()
!=
null
)
{
orderBean
.
setDiscountDetails
(
datasBean
.
getDiscountDetails
());
}
MyOrderManage
.
getInstance
().
setOrderBean
(
orderBean
);
// TableBean.DataBean openTableBean = new TableBean.DataBean();
// openTableBean.setCreateTime(TimeUtil.getStringByFormat(new Date(datasBean.getCreateTime()), TimeUtil.dateFormatYMDHM));
// openTableBean.setTableName(datasBean.getTableName());
// openTableBean.setId(datasBean.getTableId());
TableBean
.
DataBean
tableBean
=
new
TableBean
.
DataBean
(
datasBean
.
getRestaurantTable
());
if
(!
TextUtils
.
isEmpty
(
tableBean
.
getTableNumber
()))
{
tableBean
.
setTableName
(
tableBean
.
getTableName
()
+
"-"
+
tableBean
.
getTableNumber
());
}
else
{
tableBean
.
setTableName
(
tableBean
.
getTableName
());
}
OpenTableManage
.
getDefault
().
setTableBean
(
tableBean
);
OpenTableManage
.
getDefault
().
setPeopleNumber
(
datasBean
.
getPerson
());
...
...
@@ -136,6 +141,10 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
MyOrderManage
.
getInstance
().
setOrderFoodList
(
orderDetailList
);
if
(
datasBean
.
getMemberInfo
()
!=
null
)
{
MyOrderManage
.
getInstance
().
setMemberInfo
(
datasBean
.
getMemberInfo
());
}
Intent
intent
=
new
Intent
(
IActivity
,
MealStandActivity
.
class
);
IActivity
.
startActivityForResult
(
intent
,
OrderCenterActivity
.
MODIFY_ORDER_RETURN_CODE
);
}
...
...
@@ -164,7 +173,7 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
double
wholeAmount
=
getWholeAmount
(
orderDetailList
);
MyOrderManage
.
getInstance
().
setOrderFoodList
(
orderDetailList
);
MyOrderManage
.
getInstance
().
setOrderMoneyList
(
getOrderMoneyList
(
orderDetailItem
,
wholeAmount
));
MyOrderManage
.
getInstance
().
setOrderMoneyList
(
getOrderMoneyList
(
orderDetailItem
,
wholeAmount
));
MyOrderManage
.
getInstance
().
setOrderId
(
orderDetailItem
.
getId
());
MyOrderManage
.
getInstance
().
setWholeAmount
(
wholeAmount
);
MyOrderManage
.
getInstance
().
setTotalAmount
(
orderDetailItem
.
getTotalAmount
());
...
...
@@ -191,7 +200,6 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
});
}
private
List
<
BillOrderMoney
>
getOrderMoneyList
(
OrderDetailItem
orderDetailItem
,
double
totalMoney
)
{
List
<
SectionTextItem3
>
printOrderMoneyList
=
new
ArrayList
<>();
List
<
BillOrderMoney
>
printBillOrderMoneyList
=
new
ArrayList
<>();
...
...
@@ -199,10 +207,12 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
if
(
serviceAmountSection
!=
null
)
{
printOrderMoneyList
.
add
(
serviceAmountSection
);
}
List
<
SectionTextItem3
>
discountSections
=
getOrderDiscountSections
(
orderDetailItem
,
totalMoney
);
List
<
SectionTextItem3
>
discountSections
=
getOrderDiscountSections
(
orderDetailItem
);
if
(
discountSections
!=
null
)
{
printOrderMoneyList
.
addAll
(
discountSections
);
}
SectionTextItem3
roudingSection
=
getOrderRoudingSection
(
orderDetailItem
);
if
(
roudingSection
!=
null
)
{
printOrderMoneyList
.
add
(
roudingSection
);
...
...
@@ -234,21 +244,18 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
* 獲取賬單折扣列
*
* @param orderDetailItem
* @param totalMoney
* @return
*/
private
List
<
SectionTextItem3
>
getOrderDiscountSections
(
OrderDetailItem
orderDetailItem
,
double
totalMoney
)
{
if
(
orderDetailItem
.
getRemark
()
!=
null
)
{
private
List
<
SectionTextItem3
>
getOrderDiscountSections
(
OrderDetailItem
orderDetailItem
)
{
List
<
SectionTextItem3
>
sectionTextItem3s
=
null
;
if
(
orderDetailItem
.
getDiscountDetails
()
!=
null
)
{
sectionTextItem3s
=
new
ArrayList
<>();
//折扣
Discount
discount
=
new
Discount
();
discount
.
setType
(
orderDetailItem
.
getType
());
discount
.
setRemark
(
orderDetailItem
.
getRemark
());
discount
.
setDiscount_value
(
orderDetailItem
.
getDiscountValue
());
double
discountPrice
=
Discount
.
calculationDiscount
(
discount
,
totalMoney
);
discount
.
setAmount
(
discountPrice
);
return
SectionTextItem3
.
discountTransSectionTextItem3
(
discount
);
for
(
OrderDiscount
.
Respose
discount
:
orderDetailItem
.
getDiscountDetails
())
{
sectionTextItem3s
.
add
(
SectionTextItem3
.
discountTransSectionTextItem3
(
discount
));
}
return
null
;
}
return
sectionTextItem3s
;
}
/**
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/MealStandActivity.java
View file @
19072f96
...
...
@@ -168,7 +168,6 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@BindView
(
R2
.
id
.
btn_order_count
)
Button
btn_order_count
;
//送单
@BindView
(
R2
.
id
.
fl_send_order
)
FrameLayout
fl_send_order
;
@BindView
(
R2
.
id
.
btn_send_order
)
...
...
@@ -176,7 +175,6 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
// @BindView(R2.id.btn_send_order_machine_name)
// TextView btn_send_order_machine_name;
//印单
@BindView
(
R2
.
id
.
fl_printer_order
)
FrameLayout
fl_printer_order
;
@BindView
(
R2
.
id
.
btn_order_printer
)
...
...
@@ -203,8 +201,8 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
// TextView btn_meal_discount;
@BindView
(
R2
.
id
.
btn_meal_delete
)
TextView
btn_meal_delete
;
//
@BindView(R2.id.btn_meal_modify_restore)
// ImageButton
btn_meal_modify_restore;
@BindView
(
R2
.
id
.
btn_meal_modify_restore
)
TextView
btn_meal_modify_restore
;
// @BindView(R2.id.btn_change_Language)
// ImageButton btn_change_Language;
// @BindView(R2.id.btn_food_merge)
...
...
@@ -599,6 +597,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@Override
public
void
onUseMember
(
UseMemberDialog
dialog
)
{
if
(
mMemberInfo
!=
null
)
{
mUseMemberDialog
.
cancel
();
MyOrderManage
.
getInstance
().
setMemberInfo
(
mMemberInfo
);
//添加会员折扣行
mPresenter
.
addMemberDiscount
(
mMemberInfo
.
getId
(),
mMemberInfo
.
getMemberDiscount
(),
mMemberInfo
.
getMemberName
(),
mMemberInfo
.
getLevelName1
());
...
...
@@ -666,7 +665,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
}
@OnClick
({
R2
.
id
.
btn_key1
,
R2
.
id
.
btn_key2
,
R2
.
id
.
btn_key3
,
R2
.
id
.
btn_key4
,
R2
.
id
.
btn_key5
,
R2
.
id
.
btn_keys
,
R2
.
id
.
btn_numberman
,
R2
.
id
.
btn_fid
,
R2
.
id
.
btn_meal_delete
,
R2
.
id
.
btn_send_order
,
R2
.
id
.
tv_no_save_return
,
R2
.
id
.
fl_order_content
,
R2
.
id
.
btn_numberman
,
R2
.
id
.
btn_fid
,
R2
.
id
.
btn_meal_delete
,
R2
.
id
.
btn_
meal_modify_restore
,
R2
.
id
.
btn_
send_order
,
R2
.
id
.
tv_no_save_return
,
R2
.
id
.
fl_order_content
,
R2
.
id
.
btn_taste
,
R2
.
id
.
btn_msg
,
R2
.
id
.
btn_delete
,
R2
.
id
.
btn_end
,
R2
.
id
.
iv_fine_back
})
public
void
onClick
(
View
v
)
{
...
...
@@ -693,6 +692,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
showViewModeVisibility
(
MealConstant
.
food_group_ViewMode
,
MealConstant
.
food_ViewMode
);
SPUtils
.
put
(
this
,
MealConstant
.
EXIT_IS_PLU_MODE
,
false
);
setPluMode
();
}
else
if
(
id
==
R
.
id
.
btn_meal_modify_restore
)
{
mPresenter
.
restoreDeleteFood
();
showBtnMealModifyRestoreVisibility
(
false
);
}
else
if
(
id
==
R
.
id
.
btn_send_order
)
{
mPresenter
.
sendOrder
(
false
);
}
else
if
(
id
==
R
.
id
.
fl_order_content
)
{
...
...
@@ -758,6 +760,8 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
mChooseNumberDialog
.
setCancelable
(
true
);
mChooseNumberDialog
.
show
();
break
;
default
:
break
;
}
}
else
if
(
id
==
R
.
id
.
iv_fine_back
)
{
showViewModeVisibility
(
MealConstant
.
combo_ViewMode
,
MealConstant
.
modifier_ViewMode
);
...
...
@@ -1056,6 +1060,8 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
case
MealConstant
.
fine_ViewMode
:
showModifyLayoutVisibility
(
true
);
break
;
default
:
break
;
}
}
...
...
@@ -1239,6 +1245,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
}
}
else
if
(
requestCode
==
MipcaCaptureActivity
.
CALL_BACK_QR_RESULT
)
{
String
qrCodeResult
=
data
.
getStringExtra
(
"qrCodeResult"
);
mPresenter
.
queryMember
(
1
,
qrCodeResult
,
GsaCloudApplication
.
getGsPosShopId
(
mContext
),
OpenTableManage
.
getDefault
().
getTableBean
().
getId
(),
OpenTableManage
.
getDefault
().
getTableBean
().
getTableNumber
());
}
}
...
...
@@ -1271,6 +1278,11 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
rv_modifier
.
setLayoutParams
(
layoutParam
);
}
@Override
public
void
showBtnMealModifyRestoreVisibility
(
boolean
show
)
{
btn_meal_modify_restore
.
setVisibility
(
show
?
View
.
VISIBLE
:
View
.
GONE
);
}
private
void
setSelectFunctionVisibility
(
int
visibility
)
{
btn_anti_selection
.
setVisibility
(
visibility
);
btn_select_all
.
setVisibility
(
visibility
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderContentActivity.java
View file @
19072f96
...
...
@@ -25,6 +25,7 @@ import androidx.recyclerview.widget.GridLayoutManager;
import
androidx.recyclerview.widget.RecyclerView
;
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.TableBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.common.bean.mealManage.OpenTableManage
;
...
...
@@ -257,23 +258,12 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
tv_action_name
.
setVisibility
(
View
.
GONE
);
}
// @Override
// protected void doOnBackPressed() {
//// super.doOnBackPressed();
// backPressed();
// }
@Override
public
void
onBackPressedSupport
()
{
super
.
onBackPressedSupport
();
backPressed
();
}
// @Override
// public void onBackPressed() {
// backPressed();
// }
@Override
public
void
initIntent
()
{
...
...
@@ -332,6 +322,9 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
@Override
public
void
clickTableItem
(
TableBean
.
DataBean
dataBean
)
{
if
(!
mPresenter
.
transferFoodConditionFilter
(
dataBean
.
getMemberId
())){
return
;
}
switch
(
mCurrentOperatType
)
{
case
OrderConentOperatTypeConstant
.
transfer_food_2
:
if
(
dataBean
.
getSplitStatus
()
==
1
)
{
...
...
@@ -346,6 +339,7 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
}
}
@Override
public
void
onStartRefreshTableData
()
{
isRefreshData
=
true
;
...
...
@@ -577,7 +571,7 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
setResult
(
Activity
.
RESULT_OK
,
null
);
killMyself
();
}
}
else
if
(
requestCode
==
MipcaCaptureActivity
.
CALL_BACK_QR_RESULT
)
{
}
else
if
(
requestCode
==
MipcaCaptureActivity
.
CALL_BACK_QR_RESULT
)
{
String
qrCodeResult
=
data
.
getStringExtra
(
"qrCodeResult"
);
}
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderPayActivity.java
View file @
19072f96
...
...
@@ -4,6 +4,7 @@ import android.app.Activity;
import
android.content.Context
;
import
android.content.Intent
;
import
android.graphics.Color
;
import
android.graphics.Paint
;
import
android.os.Bundle
;
import
android.text.TextUtils
;
import
android.util.Log
;
...
...
@@ -128,8 +129,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
// @BindView(R2.id.btn_order_count)
// Button btn_order_count;
//支付狀態Dialog
private
StatusLoadingDialog
mStatusLoadingDialog
;
// private QMUITipDialog tipDialog;
@BindView
(
R2
.
id
.
gsa_pay_view
)
OrderPayView
gsaPayView
;
...
...
@@ -156,14 +155,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
private
int
pointRule
;
/**
* N5相关
*/
private
String
N5_RESP
;
//支付回调数据
private
SaleRespose
saleRespose
;
//退款回调数据
private
RefundRespose
refundRespose
;
private
int
mWhetherFreeService
=
0
;
public
static
void
startOrderPayActivityFormSale
(
Context
context
,
String
response
)
{
Intent
intent
=
new
Intent
(
context
,
OrderPayActivity
.
class
);
...
...
@@ -200,10 +192,19 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
mPresenter
.
initAdapter
();
// mPresenter.initBillListener();
mPresenter
.
getPayMethods
();
initOrderPayView
();
initTopInfo
();
initOrderDetail
();
initMemberInfo
();
initN5RespCallBack
();
}
private
void
initOrderPayView
()
{
gsaPayView
.
setOnWhetherFreeServiceChangeLisenter
(
new
OrderPayView
.
OnWhetherFreeServiceChangeLisenter
()
{
@Override
public
void
onWhetherFreeServiceChange
(
int
whetherFreeService
)
{
mPresenter
.
setWhetherFreeService
(
whetherFreeService
);
}
});
}
private
void
initTopInfo
()
{
...
...
@@ -230,20 +231,10 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
}
public
void
initOrderDetail
()
{
// int foodCount = mPresenter.getFoodCount();
// if (foodCount > 0) {
// btn_order_count.setText(String.valueOf(foodCount));
// btn_order_count.setVisibility(View.VISIBLE);
// } else {
// btn_order_count.setVisibility(View.INVISIBLE);
// }
double
wholeAmount
=
mPresenter
.
getFoodTotal
();
tv_whole
.
setText
(
"合計 $"
+
wholeAmount
);
MyOrderManage
.
getInstance
().
setWholeAmount
(
wholeAmount
);
// tv_total.setText("$" + mPresenter.getTotalAmount());
// setDifferenceText();
}
private
void
initMemberInfo
()
{
...
...
@@ -282,10 +273,9 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
showPoints
=
true
;
}
}
if
(!
showPoints
)
{
if
(!
showPoints
)
{
memberInfo
=
memberInfo
+
":"
+
memberBean
.
getMemberPoint
();
}
// memberIntegral = memberBean.getMemberPoint();
// memberPointRedeemCash = memberBean.getPointRedeemCash();
// //獲取積分支付抵扣金額
...
...
@@ -299,30 +289,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
return
memberInfo
;
}
@Override
public
void
setDifferenceText
()
{
// double difference = mPresenter.getDifferenceMoney();
// if (difference < 0) {
// //貼士
// if (mPresenter.getLinePayType() == 1) {
// tv_difference_name.setText("找零");
// tv_difference_money.setTextColor(ArmsUtils.getColor(this, R.color.red));
// } else {
// tv_difference_name.setText("貼士");
// tv_difference_money.setTextColor(ArmsUtils.getColor(this, R.color.Grass_green));
// }
// tv_difference_money.setText("$" + Math.abs(difference));
// } else {
// //尚欠
// tv_difference_name.setText("尚欠金額");
// tv_difference_money.setTextColor(ArmsUtils.getColor(this, R.color.red));
// if (difference == 0)
// tv_difference_money.setText("$" + Math.abs(difference));
// else
// tv_difference_money.setText("-$" + Math.abs(difference));
// }
}
@OnClick
({
R2
.
id
.
btn_people_num
,
R2
.
id
.
btn_table
,
R2
.
id
.
btn_sure_pay
,
R2
.
id
.
btn_exact
})
public
void
onClick
(
View
v
)
{
...
...
@@ -347,8 +313,8 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
showMessage
(
"請選擇支付方式"
);
return
;
}
mPresenter
.
pressExact
();
setDifferenceText
();
//
mPresenter.pressExact();
//
setDifferenceText();
}
// else if (id == R.id.btn_keypad) {
// if (mPresenter.getSelectBillMoney() == null) {
...
...
@@ -367,64 +333,18 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
}
return
false
;
}
//
// @SwitchPrintMethod
// public void switchPrint(View v) {
//
// PrinterUtils.switchPrintMethod(mContext);
// }
private
void
backPressed
()
{
// if (isPrepay) {
// //恢復預結賬前的食品
// mPresenter.restorePrepayBeaforeOrderFoodList();
// }
killMyself
();
}
// @Override
// protected void doOnBackPressed() {
//// super.doOnBackPressed();
// backPressed();
// }
@Override
public
void
onBackPressed
()
{
backPressed
();
}
// private void tipMoneyInsufficient() {
// if (tipDialog == null) {
// tipDialog = new QMUITipDialog.Builder(this)
// .setIconType(QMUITipDialog.Builder.ICON_TYPE_INFO)
// .setTipWord("金額不足!")
// .create();
// }
// tipDialog.show();
// btn_order_count.postDelayed(new Runnable() {
// @Override
// public void run() {
// tipDialog.dismiss();
// }
// }, 1500);
// }
@Override
public
void
initIntent
()
{
Intent
intent
=
getIntent
();
N5_RESP
=
intent
.
getAction
();
LogUtil
.
d
(
TAG
,
"initIntent N5_RESP: "
+
N5_RESP
);
if
(!
TextUtils
.
isEmpty
(
N5_RESP
))
{
if
(
N5_RESP
.
equals
(
"SALE_RESP"
))
{
//N5支付回調数据
String
saleDataJson
=
intent
.
getStringExtra
(
"SALE_DATA"
);
saleRespose
=
GsonUtils
.
GsonToBean
(
saleDataJson
,
SaleRespose
.
class
);
}
else
if
(
N5_RESP
.
equals
(
"REFUND_RESP"
))
{
//N5退款回調数据
String
refundDataJson
=
intent
.
getStringExtra
(
"REFUND_DATA"
);
refundRespose
=
GsonUtils
.
GsonToBean
(
refundDataJson
,
RefundRespose
.
class
);
}
}
}
@Override
...
...
@@ -479,27 +399,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
@Override
public
void
showStatusDialog
(
int
operatType
)
{
if
(
mStatusLoadingDialog
==
null
)
{
mStatusLoadingDialog
=
new
StatusLoadingDialog
(
this
);
}
switch
(
operatType
)
{
case
StatusLoadingDialog
.
SALE_LOADING
:
mStatusLoadingDialog
.
setOpeatType
(
StatusLoadingDialog
.
VOID_LOADING
);
mStatusLoadingDialog
.
setLoadingText
(
"支付"
);
mStatusLoadingDialog
.
setStatusText
(
"支付中..."
);
break
;
case
StatusLoadingDialog
.
REFUND_LOADING
:
mStatusLoadingDialog
.
setOpeatType
(
StatusLoadingDialog
.
VOID_LOADING
);
mStatusLoadingDialog
.
setLoadingText
(
"退款"
);
mStatusLoadingDialog
.
setStatusText
(
"退款中..."
);
break
;
case
StatusLoadingDialog
.
VOID_LOADING
:
mStatusLoadingDialog
.
setOpeatType
(
StatusLoadingDialog
.
VOID_LOADING
);
mStatusLoadingDialog
.
setLoadingText
(
"取消"
);
mStatusLoadingDialog
.
setStatusText
(
"取消..."
);
break
;
}
mStatusLoadingDialog
.
show
();
}
@Override
...
...
@@ -546,7 +445,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
PayMethod
billMoneyBean
=
mPresenter
.
getSelectBillMoney
();
billMoneyBean
.
setPayMoney
(
Double
.
parseDouble
(
money
));
// mPresenter.getBillMoneyAdapter().notifyDataSetChanged();
setDifferenceText
();
//
setDifferenceText();
}
})
.
show
();
...
...
@@ -583,13 +482,13 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
}
}
if
(
openInstruction
)
{
CC
.
obtainBuilder
(
"Component.Print"
)
.
setActionName
(
"printActivity"
)
.
addParam
(
PrintConstans
.
PRINT_TYPE
,
PrintConstans
.
PRINT_INSTRUCTION
)
.
build
()
.
callAsync
((
cc
,
result
)
->
{
// CC.obtainBuilder("Component.Print")
// .setActionName("printActivity")
// .addParam(PrintConstans.PRINT_TYPE, PrintConstans.PRINT_INSTRUCTION)
// .build()
// .callAsync((cc, result) -> {
// });
printBill
();
});
}
else
{
printBill
();
}
...
...
@@ -651,38 +550,13 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
@Override
public
StatusLoadingDialog
getStatusLoadingDialog
()
{
return
mStatusLoadingDialog
;
return
null
;
}
@Override
public
void
showSaleStatusDialog
(
SaleRespose
saleRespose
)
{
//顯示支付成功提示彈窗
showStatusDialog
(
StatusLoadingDialog
.
SALE_LOADING
);
// switch (saleRespose.getSTATUS()) {
// case PayConstant.PAY_STATUS_00:
// boolean useExternalPrint = GSAApplication.deviceType != GSAApplication.DEVICE_PHONE && !AndroidSettingUtils.isUseExternalPrint();
// if (PayVariableManage.getInstance().isModifyOrderOperat()) {
// if (useExternalPrint) {
// //支付回传数据(手持設備打印結賬單)
// mPresenter.sumitOrder(SendOrderConstant.send_style_7);
// } else {
// //支付回传数据(外部打印結賬單)
// mPresenter.sumitOrder(SendOrderConstant.send_style_8);
// }
// } else {
// if (useExternalPrint) {
// //支付回传数据(外部打印結賬單)
// mPresenter.sumitOrder(SendOrderConstant.send_style_6);
// } else {
// //支付回传数据(手持設備打印結賬單)
// mPresenter.sumitOrder(SendOrderConstant.send_style_5);
// }
// }
// break;
// default:
// onPayFailure(saleRespose.getSTATUS());
// break;
// }
}
@Override
...
...
@@ -692,33 +566,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
@Override
public
void
onPayFailure
(
String
status
)
{
mStatusLoadingDialog
.
loadFailure
(
status
);
mStatusLoadingDialog
.
setOnLoadStautsListener
(
new
StatusLoadingDialog
.
OnLoadStautsListener
()
{
@Override
public
void
loadSuccessEnd
()
{
// //只有支付成功才返回到原有页面
// EventBus.getDefault().postSticky(true, EventTagConstant.UPDATE_ORDER_LIST);
//
// mAppManager.killActivity(OrderContentActivity.class);
// mAppManager.killActivity(MealStandActivity.class);
// mAppManager.killActivity(OrderDetailActivity.class);
// mAppManager.killActivity(OrderPayActivity.class);
//// if (variableManage.isModifyOrderOperat()) {
//// mAppManager.killActivity(TableServiceActivity.class);
//// } else {
// mAppManager.killActivity(OrderManagementActivity.class);
//// }
}
@Override
public
void
loadFailureEnd
()
{
if
(
status
.
equals
(
PayConstant
.
PAY_STATUS_00
))
{
returnTableActivityBefore
();
}
}
});
}
@Override
...
...
@@ -740,74 +587,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
}
}
public
SaleRespose
getSaleRespose
()
{
return
saleRespose
;
}
public
void
setSaleRespose
(
SaleRespose
saleRespose
)
{
this
.
saleRespose
=
saleRespose
;
}
// public boolean isPrepay() {
// return isPrepay;
// }
public
void
initN5RespCallBack
()
{
if
(!
TextUtils
.
isEmpty
(
N5_RESP
))
{
if
(
N5_RESP
.
equals
(
"SALE_RESP"
)
&&
saleRespose
!=
null
)
{
LogUtil
.
d
(
TAG
,
"initN5RespCallBack: "
+
N5_RESP
+
" "
+
saleRespose
.
toString
());
showSaleStatusDialog
(
saleRespose
);
}
else
if
(
N5_RESP
.
equals
(
"REFUND_RESP"
)
&&
refundRespose
!=
null
)
{
showRefundStatusDialog
(
refundRespose
);
}
}
}
private
IN5Callback
in5Callback
=
new
IN5Callback
()
{
@Override
public
void
onSaleCall
(
SaleRespose
response
)
{
saleRespose
=
response
;
showMessage
(
"onSaleCall: "
+
response
.
toString
());
// showSaleStatusDialog(response);
}
@Override
public
void
onVoidCall
(
VoidRespose
response
)
{
// showVoidStatusDialog(response);
}
@Override
public
void
onRefundCall
(
RefundRespose
response
)
{
// showRefundStatusDialog(response);
}
@Override
public
void
onRetrievalCall
(
RetrievalRespose
response
)
{
SaleRespose
saleRespose
=
new
SaleRespose
();
saleRespose
.
setSTATUS
(
response
.
getSTATUS
());
// showSaleStatusDialog(saleRespose);
}
@Override
public
void
onAdjustCall
(
AdjustTipRespose
response
)
{
}
@Override
public
void
onSettleCall
(
SettlementRespose
response
)
{
}
@Override
public
void
onPrinterCall
(
String
response
)
{
}
};
@Override
public
void
onPointerCaptureChanged
(
boolean
hasCapture
)
{
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/SoldoutCtrlActivity.java
View file @
19072f96
...
...
@@ -220,8 +220,8 @@ public class SoldoutCtrlActivity extends BaseFragmentActivity<SoldoutCtrlPresent
@Override
public
void
initLanguage
()
{
tv_sold_hmmc
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"soldout_head_name"
,
"項目名稱"
));
tv_sold_hmsl
.
setText
(
LanguageUtils
.
get_language_system
(
this
,
"soldout_head_number"
,
"數量"
));
tv_sold_hmmc
.
setText
(
LanguageUtils
.
get_language_system
(
GsaCloudApplication
.
getAppContext
()
,
"soldout_head_name"
,
"項目名稱"
));
tv_sold_hmsl
.
setText
(
LanguageUtils
.
get_language_system
(
GsaCloudApplication
.
getAppContext
()
,
"soldout_head_number"
,
"數量"
));
}
@Override
...
...
@@ -233,7 +233,7 @@ public class SoldoutCtrlActivity extends BaseFragmentActivity<SoldoutCtrlPresent
}
private
void
initRecyclerHeight
()
{
int
screenHeidth
=
ArmsUtils
.
getScreenHeidth
(
this
);
int
screenHeidth
=
ArmsUtils
.
getScreenHeidth
(
GsaCloudApplication
.
getAppContext
()
);
LinearLayout
.
LayoutParams
para1
=
(
LinearLayout
.
LayoutParams
)
recycle_current_soldout_food
.
getLayoutParams
();
para1
.
height
=
screenHeidth
*
33
/
100
;
recycle_current_soldout_food
.
setLayoutParams
(
para1
);
...
...
@@ -279,7 +279,7 @@ public class SoldoutCtrlActivity extends BaseFragmentActivity<SoldoutCtrlPresent
@Override
public
void
onItemClick
(
Food
datasBean
,
int
position
)
{
VibratorUtils
.
pressButtonSound
(
SoldoutCtrlActivity
.
this
);
VibratorUtils
.
pressButtonSound
(
GsaCloudApplication
.
getAppContext
()
);
datasBean
.
setSelected
(
true
);
...
...
@@ -302,7 +302,7 @@ public class SoldoutCtrlActivity extends BaseFragmentActivity<SoldoutCtrlPresent
}
}
if
(!
isStopOpeart
)
{
String
msg
=
LanguageUtils
.
get_language_system
(
SoldoutCtrlActivity
.
this
,
"whether.suspend.group"
,
"是否暫停組別?"
)
+
datasBean
.
getFoodName
()
+
"\"?"
;
String
msg
=
LanguageUtils
.
get_language_system
(
GsaCloudApplication
.
getAppContext
()
,
"whether.suspend.group"
,
"是否暫停組別?"
)
+
datasBean
.
getFoodName
()
+
"\"?"
;
Class
[]
parameterTypes
=
{
Long
.
class
,
int
.
class
,
int
.
class
};
Object
[]
parameters
=
{
datasBean
.
getId
(),
1
,
2
};
CommonTipDialog
.
showDoubtDialog
(
SoldoutCtrlActivity
.
this
,
msg
,
SoldoutCtrlPresenter
.
class
,
mPresenter
,
"updateInvisible"
,
parameterTypes
,
parameters
);
...
...
@@ -396,13 +396,13 @@ public class SoldoutCtrlActivity extends BaseFragmentActivity<SoldoutCtrlPresent
}
else
{
id
=
datasBean
.
getFoodId
();
}
//恢復暫停數量
String
msg
=
LanguageUtils
.
get_language_system
(
this
,
"whether.recover"
,
"是否恢復["
)
+
datasBean
.
getFoodName
()
+
"]"
;
String
msg
=
LanguageUtils
.
get_language_system
(
GsaCloudApplication
.
getAppContext
()
,
"whether.recover"
,
"是否恢復["
)
+
datasBean
.
getFoodName
()
+
"]"
;
Class
[]
parameterTypes
=
{
Long
.
class
,
int
.
class
,
int
.
class
};
Object
[]
parameters
=
{
id
,
datasBean
.
getType
(),
0
};
CommonTipDialog
.
showDoubtDialog
(
this
,
msg
,
SoldoutCtrlPresenter
.
class
,
mPresenter
,
"updateInvisible"
,
parameterTypes
,
parameters
);
}
else
{
//恢復沽清數量
String
msg
=
LanguageUtils
.
get_language_system
(
this
,
"whether.recover"
,
"是否恢復["
)
+
datasBean
.
getName
()
+
"]"
;
String
msg
=
LanguageUtils
.
get_language_system
(
GsaCloudApplication
.
getAppContext
()
,
"whether.recover"
,
"是否恢復["
)
+
datasBean
.
getName
()
+
"]"
;
Class
[]
parameterTypes
=
{
long
.
class
};
Object
[]
parameters
=
{
datasBean
.
getId
()};
CommonTipDialog
.
showDoubtDialog
(
this
,
msg
,
SoldoutCtrlPresenter
.
class
,
mPresenter
,
"restoreSoldoutCtrl"
,
parameterTypes
,
parameters
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/TableActivity.java
View file @
19072f96
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
activity
;
import
android.app.ActivityManager
;
import
android.content.Intent
;
import
android.os.AsyncTask
;
import
android.os.Bundle
;
import
android.os.Message
;
import
android.os.PersistableBundle
;
import
android.view.View
;
import
android.widget.AdapterView
;
import
android.widget.ImageView
;
...
...
@@ -170,9 +172,18 @@ public class TableActivity extends BaseFragmentActivity<TablePresenter> implemen
canceOperat
();
}
@Override
protected
void
onRestart
()
{
super
.
onRestart
();
mPresenter
.
initBottomFunction
();
//開始刷新餐檯數據
onStartRefreshTableData
();
}
@Override
protected
void
on
Resume
()
{
super
.
on
Resume
();
protected
void
on
Start
()
{
super
.
on
Start
();
mPresenter
.
initBottomFunction
();
//開始刷新餐檯數據
onStartRefreshTableData
();
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderDetailActivity.java
View file @
19072f96
...
...
@@ -19,6 +19,7 @@ import com.billy.cc.core.component.CC;
import
com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney
;
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.OrderDiscount
;
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
;
...
...
@@ -197,7 +198,7 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
if
(
serviceAmountSection
!=
null
)
{
mOrderCenterMoneyList
.
add
(
serviceAmountSection
);
}
List
<
SectionTextItem3
>
discountSections
=
getOrderDiscountSections
(
orderDetailItem
,
totalMoney
);
List
<
SectionTextItem3
>
discountSections
=
getOrderDiscountSections
(
orderDetailItem
);
if
(
discountSections
!=
null
)
{
mOrderCenterMoneyList
.
addAll
(
discountSections
);
}
...
...
@@ -279,21 +280,18 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
* 獲取賬單折扣列
*
* @param orderDetailItem
* @param totalMoney
* @return
*/
private
List
<
SectionTextItem3
>
getOrderDiscountSections
(
OrderDetailItem
orderDetailItem
,
double
totalMoney
)
{
if
(
orderDetailItem
.
getRemark
()
!=
null
)
{
private
List
<
SectionTextItem3
>
getOrderDiscountSections
(
OrderDetailItem
orderDetailItem
)
{
List
<
SectionTextItem3
>
sectionTextItem3s
=
null
;
if
(
orderDetailItem
.
getDiscountDetails
()
!=
null
)
{
sectionTextItem3s
=
new
ArrayList
<>();
//折扣
Discount
discount
=
new
Discount
();
discount
.
setType
(
orderDetailItem
.
getType
());
discount
.
setRemark
(
orderDetailItem
.
getRemark
());
discount
.
setDiscount_value
(
orderDetailItem
.
getDiscountValue
());
double
discountPrice
=
Discount
.
calculationDiscount
(
discount
,
totalMoney
);
discount
.
setAmount
(
discountPrice
);
return
SectionTextItem3
.
discountTransSectionTextItem3
(
discount
);
for
(
OrderDiscount
.
Respose
discount
:
orderDetailItem
.
getDiscountDetails
())
{
sectionTextItem3s
.
add
(
SectionTextItem3
.
discountTransSectionTextItem3
(
discount
));
}
return
null
;
}
return
sectionTextItem3s
;
}
/**
...
...
@@ -402,21 +400,19 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
orderBean
.
setStatus
(
datasBean
.
getStatus
());
orderBean
.
setOrderNo
(
datasBean
.
getOrderNo
());
orderBean
.
setPerson
(
datasBean
.
getPerson
());
// orderBean.setType(datasBean.getType());
// orderBean.setRemark(datasBean.getRemark());
// orderBean.setDiscountAmount(datasBean.getDiscountAmount());
// orderBean.setDiscountValue(datasBean.getDiscountValue());
orderBean
.
setCreateTime
(
datasBean
.
getCreateTime
());
orderBean
.
setOrderDetails
(
datasBean
.
getOrderDetails
());
if
(
datasBean
.
getDiscountDetails
()
!=
null
)
{
orderBean
.
setDiscountDetails
(
datasBean
.
getDiscountDetails
());
}
MyOrderManage
.
getInstance
().
setOrderBean
(
orderBean
);
// TableBean.DataBean openTableBean = new TableBean.DataBean();
// openTableBean.setCreateTime(TimeUtil.getStringByFormat(new Date(datasBean.getCreateTime()), TimeUtil.dateFormatYMDHM));
// openTableBean.setTableName(datasBean.getTableName());
// openTableBean.setId(datasBean.getTableId());
// OpenTableManage.getDefault().setTableBean(openTableBean);
TableBean
.
DataBean
tableBean
=
new
TableBean
.
DataBean
(
datasBean
.
getRestaurantTable
());
if
(!
TextUtils
.
isEmpty
(
tableBean
.
getTableNumber
()))
{
tableBean
.
setTableName
(
tableBean
.
getTableName
()
+
"-"
+
tableBean
.
getTableNumber
());
}
else
{
tableBean
.
setTableName
(
tableBean
.
getTableName
());
}
OpenTableManage
.
getDefault
().
setTableBean
(
tableBean
);
OpenTableManage
.
getDefault
().
setPeopleNumber
(
datasBean
.
getPerson
());
...
...
@@ -424,6 +420,10 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
MyOrderManage
.
getInstance
().
setOrderFoodList
(
orderDetailList
);
if
(
datasBean
.
getMemberInfo
()
!=
null
)
{
MyOrderManage
.
getInstance
().
setMemberInfo
(
datasBean
.
getMemberInfo
());
}
Intent
intent
=
new
Intent
(
this
,
MealStandActivity
.
class
);
startActivityForResult
(
intent
,
OrderCenterActivity
.
MODIFY_ORDER_RETURN_CODE
);
}
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/OrderMoneyAdapter.java
View file @
19072f96
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
ui
.
adapter
;
import
android.app.Activity
;
import
android.graphics.Paint
;
import
android.view.View
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.TextView
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.R2
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.OrderContentActivity
;
...
...
@@ -30,6 +32,10 @@ public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
private
Activity
mContext
;
private
String
cashStr
;
/**
* 是否免服務費(0:否 1:是)
*/
private
int
whetherFreeService
;
private
int
BillTotalFontSize
;
public
OrderMoneyAdapter
(
Activity
context
,
List
<
BillOrderMoney
>
infos
,
String
cashStr
)
{
...
...
@@ -40,6 +46,15 @@ public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
this
.
BillTotalFontSize
=
18
;
}
public
void
setWhetherFreeService
(
int
whetherFreeService
)
{
this
.
whetherFreeService
=
whetherFreeService
;
notifyDataSetChanged
();
}
public
int
getWhetherFreeService
()
{
return
whetherFreeService
;
}
@Override
public
int
getItemCount
()
{
return
mInfos
.
size
();
...
...
@@ -82,6 +97,18 @@ public class OrderMoneyAdapter extends DefaultAdapter<BillOrderMoney> {
tv_money
.
setText
(
cashStr
+
datasBean
.
getMoney
());
}
if
(
datasBean
.
getType
()
==
BillOrderMoney
.
SERVERCHARGE_TYPE
)
{
if
(
whetherFreeService
==
1
)
{
// 中划线
tv_title
.
getPaint
().
setFlags
(
Paint
.
STRIKE_THRU_TEXT_FLAG
|
Paint
.
ANTI_ALIAS_FLAG
);
tv_money
.
getPaint
().
setFlags
(
Paint
.
STRIKE_THRU_TEXT_FLAG
|
Paint
.
ANTI_ALIAS_FLAG
);
}
else
{
// 取消设置的的划线
tv_title
.
getPaint
().
setFlags
(
0
);
tv_money
.
getPaint
().
setFlags
(
0
);
}
}
tv_title
.
setTextSize
(
BillTotalFontSize
);
tv_money
.
setTextSize
(
BillTotalFontSize
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/meal/SelectMealAdapter.java
View file @
19072f96
...
...
@@ -8,6 +8,7 @@ import android.widget.ImageView;
import
android.widget.RelativeLayout
;
import
android.widget.TextView
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.mealManage.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.database.bean.Food
;
...
...
@@ -42,7 +43,6 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
private
Context
mContext
;
private
MealStandActivity
mMealStandActivity
;
private
MealStandPresenter
mMealStandPresenter
;
private
OrderContentPresenter
mOrderContentPresenter
;
private
int
BillListFontSize
=
18
;
...
...
@@ -77,7 +77,7 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
super
(
data
);
this
.
mContext
=
context
;
if
(
presenter
instanceof
MealStandPresenter
)
{
this
.
mMealStandPresenter
=
(
MealStandPresenter
)
presenter
;
//
this.mMealStandPresenter = (MealStandPresenter) presenter;
this
.
mMealStandActivity
=
(
MealStandActivity
)
context
;
}
else
if
(
presenter
instanceof
OrderContentPresenter
)
{
this
.
mOrderContentPresenter
=
(
OrderContentPresenter
)
presenter
;
...
...
@@ -194,12 +194,12 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
tv_S_1
.
setVisibility
(
View
.
INVISIBLE
);
tv_discount_money
.
setVisibility
(
View
.
INVISIBLE
);
//
if (datasBean.isModify()) {
//
tv_modify_before_number.setText(String.valueOf(datasBean.getModifyBeforeNumber()));
//
tv_modify_before_number.setVisibility(View.VISIBLE);
//
} else {
//
tv_modify_before_number.setVisibility(View.INVISIBLE);
//
}
if
(
datasBean
.
isModify
())
{
tv_modify_before_number
.
setText
(
String
.
valueOf
(
datasBean
.
getModifyBeforeNumber
()));
tv_modify_before_number
.
setVisibility
(
View
.
VISIBLE
);
}
else
{
tv_modify_before_number
.
setVisibility
(
View
.
INVISIBLE
);
}
//
// if (datasBean.getMix_DETAIL_ID() > 0) {
// tv_mix.setText(String.valueOf(datasBean.getMix_DETAIL_ID()));
...
...
@@ -324,6 +324,11 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
tv_name
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
black
));
tv_money
.
setTextColor
(
ArmsUtils
.
getColor
(
mContext
,
R
.
color
.
black
));
}
if
(
datasBean
.
isModify
())
{
//数量为0 说明是修改订单 删除的食品,颜色设置了红色
tv_name
.
setTextColor
(
ArmsUtils
.
getColor
(
GsaCloudApplication
.
getAppContext
(),
R
.
color
.
red_500
));
}
}
public
void
setTextSize
()
{
...
...
table-module/src/main/res/layout/meal_item_select_meal_stand.xml
View file @
19072f96
...
...
@@ -198,23 +198,14 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentTop=
"true"
android:layout_toRightOf=
"@+id/tv_number"
android:gravity=
"center"
android:layout_toLeftOf=
"@+id/rl_select"
android:layout_marginLeft=
"@dimen/dp_5"
android:text=
"30"
android:textColor=
"@color/orange_200"
android:textSize=
"@dimen/sp_1
4
"
android:textSize=
"@dimen/sp_1
6
"
android:visibility=
"gone"
/>
<!-- <TextView-->
<!-- android:id="@+id/tv_number"-->
<!-- android:layout_width="@dimen/dp_35"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:layout_alignParentTop="true"-->
<!-- android:layout_toRightOf="@+id/rl_food_line"-->
<!-- android:gravity="center"-->
<!-- android:text="20"-->
<!-- android:textColor="@color/theme_black"-->
<!-- android:textSize="@dimen/sp_20" />-->
<TextView
android:id=
"@+id/tv_number"
android:layout_width=
"@dimen/dp_35"
...
...
table-module/src/main/res/layout/table_activity_meal_stand.xml
View file @
19072f96
...
...
@@ -88,6 +88,21 @@
android:textColor=
"@color/theme_black"
android:textSize=
"@dimen/sp_12"
/>
<TextView
android:id=
"@+id/btn_meal_modify_restore"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/dp_8"
android:background=
"@drawable/ui_selector_item_background"
android:drawablePadding=
"@dimen/dp_1"
android:drawableTop=
"@drawable/meal_modify_restore"
android:gravity=
"center"
android:text=
"恢復"
android:textAllCaps=
"false"
android:textColor=
"@color/theme_black"
android:textSize=
"@dimen/sp_12"
android:visibility=
"gone"
/>
<!-- <TextView-->
<!-- android:id="@+id/btn_food_mode"-->
<!-- android:layout_width="match_parent"-->
...
...
@@ -153,13 +168,6 @@
<!-- android:textSize="@dimen/sp_12"/>-->
<!-- <ImageButton-->
<!-- android:id="@+id/btn_meal_modify_restore"-->
<!-- style="@style/ButtonBorderless"-->
<!-- android:layout_width="match_parent"-->
<!-- android:layout_height="wrap_content"-->
<!-- android:src="@drawable/meal_modify_restore" />-->
<!-- <ImageButton-->
<!-- android:id="@+id/btn_change_Language"-->
<!-- style="@style/ButtonBorderless"-->
<!-- android:layout_width="match_parent"-->
...
...
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