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
f47767b0
Commit
f47767b0
authored
Oct 24, 2020
by
宁斌
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
賬單優化處理
parent
1a28da3b
Hide whitespace changes
Inline
Side-by-side
Showing
46 changed files
with
655 additions
and
1687 deletions
+655
-1687
base-module/src/main/java/com/gingersoft/gsa/cloud/bean/expandInfo/UIStyleExtendedConfiguration.java
+8
-2
base-module/src/main/java/com/gingersoft/gsa/cloud/constans/HttpsCode.java
+0
-13
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/mvp/presenter/SendOrderPresenter.java
+0
-5
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/mvp/ui/activity/SendOrderActivity.java
+20
-6
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/ui/activity/DeliveryOrderMainActivity.kt
+2
-2
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/bean/discount/OrderDiscount.java
+10
-6
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/bean/mealManger/OpenTableManage.java
+0
-101
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/billItem/BillItem.java
+6
-0
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/billItem/DiscountItem.java
+5
-2
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/cart/ShoppingCart.java
+37
-39
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/commodity/MealCommodity.java
+9
-3
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/commodity/OrderDetail.java
+5
-5
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/discount/CouponDiscount.java
+0
-4
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/discount/MemberDiscount.java
+0
-4
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/discount/MultyDiscount.java
+7
-1
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/discount/NomalDiscount.java
+1
-6
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/order/BaseOrder.java
+17
-4
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/order/DoshokuOrder.java
+63
-7
print-module/src/main/java/com/joe/print/mvp/print/PrintBill.java
+33
-25
print-module/src/main/java/com/joe/print/mvp/print/PrintKitchen.java
+13
-13
print-module/src/main/java/com/joe/print/mvp/print/PrintOtherOrderClosing.java
+0
-3
print-module/src/main/java/com/joe/print/mvp/print/PrintServe.java
+8
-11
print-module/src/main/java/com/joe/print/mvp/print/PrintSlip.java
+17
-11
print-module/src/main/java/com/joe/print/mvp/print/PrinterRoot.java
+14
-14
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/MealStandModel.java
+2
-3
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderContentModel.java
+7
-9
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/cart/DoshokuCart.java
+0
-63
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/cart/ShoppingCart.java
+0
-95
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/cart/TakeawayCart.java
+0
-21
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/discount/CouponDiscount.java
+0
-79
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/discount/MemberDiscount.java
+0
-48
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/discount/MultyDiscount.java
+0
-26
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/discount/NomalDiscount.java
+0
-61
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/BaseOrderPresenter.java
+161
-689
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/FineItemAllPresenter.java
+8
-4
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/MealStandPresenter.java
+9
-114
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderContentPresenter.java
+23
-25
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderPayPresenter.java
+8
-13
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/TablePresenter.java
+16
-22
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/orderManager/AllOrderPresenter.java
+28
-23
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/MealStandActivity.java
+25
-27
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderContentActivity.java
+26
-22
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderPayActivity.java
+13
-15
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderDetailActivity.java
+37
-29
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/meal/SelectMealAdapter.java
+8
-9
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/widget/UseMemberDialog.java
+9
-3
No files found.
base-module/src/main/java/com/gingersoft/gsa/cloud/bean/expandInfo/UIStyleExtendedConfiguration.java
View file @
f47767b0
...
@@ -17,8 +17,7 @@ public class UIStyleExtendedConfiguration {
...
@@ -17,8 +17,7 @@ public class UIStyleExtendedConfiguration {
* 食品組、食品、細項、折扣行列寬高
* 食品組、食品、細項、折扣行列寬高
*/
*/
private
ExpandInfoSetting
foodGroupRow
=
ExpandInfoSetting
.
builder
()
private
ExpandInfoSetting
foodGroupRow
=
ExpandInfoSetting
.
builder
()
// .valueInt(2)
.
valueInt
(
2
)
.
valueChar
(
"foodGroupRow類型"
)
.
remark
(
"食品組行數"
)
.
remark
(
"食品組行數"
)
.
build
();
.
build
();
private
ExpandInfoSetting
foodGroupColumn
=
ExpandInfoSetting
.
builder
()
private
ExpandInfoSetting
foodGroupColumn
=
ExpandInfoSetting
.
builder
()
...
@@ -80,6 +79,10 @@ public class UIStyleExtendedConfiguration {
...
@@ -80,6 +79,10 @@ public class UIStyleExtendedConfiguration {
/**
/**
* 食品組、食品、細項、折扣字體大小
* 食品組、食品、細項、折扣字體大小
*/
*/
private
ExpandInfoSetting
billListFontSize
=
ExpandInfoSetting
.
builder
()
.
valueInt
(
18
)
.
remark
(
"餐牌選中食品字體大小"
)
.
build
();
private
ExpandInfoSetting
foodGroupFontSize
=
ExpandInfoSetting
.
builder
()
private
ExpandInfoSetting
foodGroupFontSize
=
ExpandInfoSetting
.
builder
()
.
valueInt
(
14
)
.
valueInt
(
14
)
.
remark
(
"食品組字體大小"
)
.
remark
(
"食品組字體大小"
)
...
@@ -174,6 +177,9 @@ public class UIStyleExtendedConfiguration {
...
@@ -174,6 +177,9 @@ public class UIStyleExtendedConfiguration {
return
foodGroupFontSize
.
getValue
();
return
foodGroupFontSize
.
getValue
();
}
}
public
<
T
>
T
getBillListFontSizeValue
()
{
return
billListFontSize
.
getValue
();
}
public
<
T
>
T
getFoodFontSizeValue
()
{
public
<
T
>
T
getFoodFontSizeValue
()
{
return
foodFontSize
.
getValue
();
return
foodFontSize
.
getValue
();
}
}
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/constans/HttpsCode.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
constans
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-06-03
* 修订历史:2020-06-03
* 描述:
*/
public
interface
HttpsCode
{
}
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/mvp/presenter/SendOrderPresenter.java
View file @
f47767b0
...
@@ -2,7 +2,6 @@ package com.gingersoft.gsa.delivery_pick_mode.mvp.presenter;
...
@@ -2,7 +2,6 @@ package com.gingersoft.gsa.delivery_pick_mode.mvp.presenter;
import
android.app.Activity
;
import
android.app.Activity
;
import
android.app.Application
;
import
android.app.Application
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
...
@@ -17,16 +16,12 @@ import com.jess.arms.http.imageloader.ImageLoader;
...
@@ -17,16 +16,12 @@ import com.jess.arms.http.imageloader.ImageLoader;
import
com.jess.arms.integration.AppManager
;
import
com.jess.arms.integration.AppManager
;
import
com.jess.arms.mvp.BasePresenter
;
import
com.jess.arms.mvp.BasePresenter
;
import
com.jess.arms.utils.RxLifecycleUtils
;
import
com.jess.arms.utils.RxLifecycleUtils
;
import
org.json.JSONArray
;
import
org.json.JSONArray
;
import
org.json.JSONException
;
import
org.json.JSONException
;
import
org.json.JSONObject
;
import
org.json.JSONObject
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
javax.inject.Inject
;
import
javax.inject.Inject
;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.annotations.NonNull
;
import
io.reactivex.annotations.NonNull
;
import
io.reactivex.schedulers.Schedulers
;
import
io.reactivex.schedulers.Schedulers
;
...
...
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/mvp/ui/activity/SendOrderActivity.java
View file @
f47767b0
...
@@ -16,9 +16,11 @@ import androidx.core.content.ContextCompat;
...
@@ -16,9 +16,11 @@ import androidx.core.content.ContextCompat;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.recyclerview.widget.RecyclerView
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
order.TakeawayOrder
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimePickerUtils
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimePickerUtils
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
...
@@ -54,6 +56,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
...
@@ -54,6 +56,7 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
/**
/**
* @author admin
* @author admin
* 外送下單頁
*/
*/
public
class
SendOrderActivity
extends
BaseActivity
<
SendOrderPresenter
>
implements
SendOrderContract
.
View
,
View
.
OnClickListener
{
public
class
SendOrderActivity
extends
BaseActivity
<
SendOrderPresenter
>
implements
SendOrderContract
.
View
,
View
.
OnClickListener
{
...
@@ -111,9 +114,13 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
...
@@ -111,9 +114,13 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
@BindView
(
R2
.
id
.
group_time
)
@BindView
(
R2
.
id
.
group_time
)
Group
timeGroup
;
Group
timeGroup
;
private
TakeawayOrder
mTakeawayOrder
;
private
ShoppingCart
mShoppingCart
;
private
final
int
SELECT_ADDRESS_REQUEST_CODE
=
1001
;
private
final
int
SELECT_ADDRESS_REQUEST_CODE
=
1001
;
private
final
int
SELECT_ADDRESS_RESULT_CODE
=
1002
;
private
final
int
SELECT_ADDRESS_RESULT_CODE
=
1002
;
@Override
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
DaggerSendOrderComponent
//如找不到该类,请编译一下项目
DaggerSendOrderComponent
//如找不到该类,请编译一下项目
...
@@ -125,6 +132,13 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
...
@@ -125,6 +132,13 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
}
}
@Override
@Override
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
mTakeawayOrder
=
TakeawayOrder
.
getInstance
();
mShoppingCart
=
mTakeawayOrder
.
getShoppingCart
();
super
.
onCreate
(
savedInstanceState
);
}
@Override
public
int
initView
(
@Nullable
Bundle
savedInstanceState
)
{
public
int
initView
(
@Nullable
Bundle
savedInstanceState
)
{
return
R
.
layout
.
other_order_activity_send_order
;
return
R
.
layout
.
other_order_activity_send_order
;
}
}
...
@@ -133,7 +147,7 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
...
@@ -133,7 +147,7 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
sendTime
=
deliveryTimes
.
get
(
0
);
sendTime
=
deliveryTimes
.
get
(
0
);
List
<
OrderDetails
.
DataBean
.
PRODUCTNAMEBean
>
productnameBeans
=
mPresenter
.
productnameBeans
;
List
<
OrderDetails
.
DataBean
.
PRODUCTNAMEBean
>
productnameBeans
=
mPresenter
.
productnameBeans
;
List
<
OrderDetail
>
orderDetails
=
MyOrderManage
.
getInstance
().
getOrderFood
List
();
List
<
OrderDetail
>
orderDetails
=
mShoppingCart
.
getOrderCommodity
List
();
for
(
int
i
=
0
;
i
<
orderDetails
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
orderDetails
.
size
();
i
++)
{
OrderDetail
orderDetail
=
orderDetails
.
get
(
i
);
OrderDetail
orderDetail
=
orderDetails
.
get
(
i
);
long
foodId
=
orderDetail
.
getProductId
();
long
foodId
=
orderDetail
.
getProductId
();
...
@@ -193,15 +207,15 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
...
@@ -193,15 +207,15 @@ public class SendOrderActivity extends BaseActivity<SendOrderPresenter> implemen
rvSendOrderFoods
.
setAdapter
(
adapter
);
rvSendOrderFoods
.
setAdapter
(
adapter
);
rvSendOrderFoods
.
setLayoutManager
(
new
LinearLayoutManager
(
mContext
));
rvSendOrderFoods
.
setLayoutManager
(
new
LinearLayoutManager
(
mContext
));
List
<
Bill
OrderMoney
>
orderMoneyList
=
MyOrderManage
.
getInstance
().
getOrderMoney
List
();
List
<
Bill
Item
>
orderMoneyList
=
mShoppingCart
.
getBillItem
List
();
List
<
BillBean
>
billBeans
=
new
ArrayList
<>();
List
<
BillBean
>
billBeans
=
new
ArrayList
<>();
for
(
Bill
OrderMoney
billOrderMoney
:
orderMoneyList
)
{
for
(
Bill
Item
billOrderMoney
:
orderMoneyList
)
{
BillBean
billBean
=
new
BillBean
();
BillBean
billBean
=
new
BillBean
();
billBean
.
setName
(
billOrderMoney
.
getName
());
billBean
.
setName
(
billOrderMoney
.
getName
());
billBean
.
setAmount
(
billOrderMoney
.
getMoney
());
billBean
.
setAmount
(
billOrderMoney
.
getMoney
());
}
}
billBeans
.
add
(
new
BillBean
(
"合計:"
,
MyOrderManage
.
getInstance
()
.
getWholeAmount
(),
0
));
billBeans
.
add
(
new
BillBean
(
"合計:"
,
mShoppingCart
.
getWholeAmount
(),
0
));
billBeans
.
add
(
new
BillBean
(
"應付金額:"
,
MyOrderManage
.
getInstance
()
.
getTotalAmount
(),
0
));
billBeans
.
add
(
new
BillBean
(
"應付金額:"
,
mShoppingCart
.
getTotalAmount
(),
0
));
PayBillAdapter
payBillAdapter
=
new
PayBillAdapter
(
R
.
layout
.
item_pay_bill
,
billBeans
);
PayBillAdapter
payBillAdapter
=
new
PayBillAdapter
(
R
.
layout
.
item_pay_bill
,
billBeans
);
rvSendOrderBills
.
setAdapter
(
payBillAdapter
);
rvSendOrderBills
.
setAdapter
(
payBillAdapter
);
...
...
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/ui/activity/DeliveryOrderMainActivity.kt
View file @
f47767b0
...
@@ -23,7 +23,7 @@ import androidx.lifecycle.ViewModelProvider
...
@@ -23,7 +23,7 @@ import androidx.lifecycle.ViewModelProvider
import
androidx.viewpager.widget.ViewPager
import
androidx.viewpager.widget.ViewPager
import
com.billy.cc.core.component.CC
import
com.billy.cc.core.component.CC
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
import
com.gingersoft.gsa.cloud.base.order.
order.BaseOrder
import
com.gingersoft.gsa.cloud.base.utils.RestaurantExpandInfoUtils
import
com.gingersoft.gsa.cloud.base.utils.RestaurantExpandInfoUtils
import
com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils
import
com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils
import
com.gingersoft.gsa.cloud.base.widget.DialogUtils
import
com.gingersoft.gsa.cloud.base.widget.DialogUtils
...
@@ -598,7 +598,7 @@ class DeliveryOrderMainActivity : BaseActivity<IPresenter>(), View.OnClickListen
...
@@ -598,7 +598,7 @@ class DeliveryOrderMainActivity : BaseActivity<IPresenter>(), View.OnClickListen
}
}
R
.
id
.
tv_new_order
->
{
R
.
id
.
tv_new_order
->
{
//新訂單
//新訂單
MyOrderManage
.
getInstance
()
.
orderType
=
TAKEAWAY_TYPE
BaseOrder
.
orderType
=
TAKEAWAY_TYPE
CC
.
obtainBuilder
(
"Component.Table"
)
CC
.
obtainBuilder
(
"Component.Table"
)
.
setActionName
(
"showMealStandActivity"
)
.
setActionName
(
"showMealStandActivity"
)
.
build
()
.
build
()
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/bean/discount/OrderDiscount.java
View file @
f47767b0
package
com
.
gingersoft
.
gsa
.
cloud
.
base
.
order
.
bean
.
discount
;
package
com
.
gingersoft
.
gsa
.
cloud
.
base
.
order
.
bean
.
discount
;
import
com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem
;
import
com.gingersoft.gsa.cloud.base.order.discount.MemberDiscount
;
import
com.gingersoft.gsa.cloud.base.order.discount.NomalDiscount
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
...
@@ -103,7 +105,8 @@ public class OrderDiscount {
...
@@ -103,7 +105,8 @@ public class OrderDiscount {
Request
request
=
new
Request
();
Request
request
=
new
Request
();
request
.
setType
(
ORDER_DISCOUNT
);
request
.
setType
(
ORDER_DISCOUNT
);
if
(
discount
.
getDiscount
()
!=
null
)
{
if
(
discount
.
getDiscount
()
!=
null
)
{
request
.
setDiscountId
(
discount
.
getDiscount
().
getId
());
NomalDiscount
discount1
=
(
NomalDiscount
)
discount
.
getDiscount
();
request
.
setDiscountId
(
discount1
.
getDiscount
().
getId
());
}
}
request
.
setDiscountAmount
(
discount
.
getMoney
());
request
.
setDiscountAmount
(
discount
.
getMoney
());
request
.
setScAble
(
0
);
request
.
setScAble
(
0
);
...
@@ -114,8 +117,9 @@ public class OrderDiscount {
...
@@ -114,8 +117,9 @@ public class OrderDiscount {
Request
request
=
new
Request
();
Request
request
=
new
Request
();
request
.
setType
(
MEMBER_DISCOUNT
);
request
.
setType
(
MEMBER_DISCOUNT
);
if
(
discount
.
getDiscount
()
!=
null
)
{
if
(
discount
.
getDiscount
()
!=
null
)
{
request
.
setMemberId
(
discount
.
getDiscount
().
getId
());
MemberDiscount
memberDiscount
=
(
MemberDiscount
)
discount
.
getDiscount
();
request
.
setMemberDiscountRate
((
int
)
discount
.
getDiscount
().
getDiscount_value
());
request
.
setMemberId
(
memberDiscount
.
getMemberDiscount
().
getId
());
// request.setMemberDiscountRate((int) memberDiscount.getDiscount().getDiscount_value());
}
}
request
.
setDiscountAmount
(
discount
.
getMoney
());
request
.
setDiscountAmount
(
discount
.
getMoney
());
request
.
setScAble
(
0
);
request
.
setScAble
(
0
);
...
@@ -126,9 +130,9 @@ public class OrderDiscount {
...
@@ -126,9 +130,9 @@ public class OrderDiscount {
Request
request
=
new
Request
();
Request
request
=
new
Request
();
request
.
setType
(
COUPON_DISCOUNT
);
request
.
setType
(
COUPON_DISCOUNT
);
if
(
discount
.
getDiscount
()
!=
null
)
{
if
(
discount
.
getDiscount
()
!=
null
)
{
request
.
setMemberId
(
discount
.
getDiscount
().
getMemberId
());
//
request.setMemberId(discount.getDiscount().getMemberId());
request
.
setDiscountId
(
discount
.
getDiscount
().
getId
());
//
request.setDiscountId(discount.getDiscount().getId());
request
.
setMemberDiscountRate
((
int
)
discount
.
getDiscount
().
getDiscount_value
());
//
request.setMemberDiscountRate((int) discount.getDiscount().getDiscount_value());
}
}
request
.
setDiscountAmount
(
discount
.
getMoney
());
request
.
setDiscountAmount
(
discount
.
getMoney
());
request
.
setScAble
(
0
);
request
.
setScAble
(
0
);
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/bean/mealManger/OpenTableManage.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
base
.
order
.
bean
.
mealManger
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
lombok.Data
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-01-09
* 修订历史:2020-01-09
* 描述:保存開台返回的訂單數據
*/
@Data
public
class
OpenTableManage
{
private
String
TAG
=
getClass
().
getSimpleName
();
private
static
OpenTableManage
sDefaultOpenTableManage
;
//開台信息
private
TableBean
.
DataBean
tableBean
;
//使用狀態
private
int
useStatus
;
//開台人數
private
int
peopleNumber
=
0
;
//是否分檯
private
boolean
isSplite
=
false
;
//分檯編號
private
String
splitNo
;
public
static
OpenTableManage
getDefault
()
{
if
(
sDefaultOpenTableManage
==
null
)
{
sDefaultOpenTableManage
=
new
OpenTableManage
();
}
return
sDefaultOpenTableManage
;
}
public
void
clear
()
{
tableBean
=
null
;
peopleNumber
=
0
;
isSplite
=
false
;
splitNo
=
""
;
}
public
String
getTAG
()
{
return
TAG
;
}
public
void
setTAG
(
String
TAG
)
{
this
.
TAG
=
TAG
;
}
public
static
OpenTableManage
getsDefaultOpenTableManage
()
{
return
sDefaultOpenTableManage
;
}
public
static
void
setsDefaultOpenTableManage
(
OpenTableManage
sDefaultOpenTableManage
)
{
OpenTableManage
.
sDefaultOpenTableManage
=
sDefaultOpenTableManage
;
}
public
TableBean
.
DataBean
getTableBean
()
{
return
tableBean
;
}
public
void
setTableBean
(
TableBean
.
DataBean
tableBean
)
{
this
.
tableBean
=
tableBean
;
}
public
int
getUseStatus
()
{
return
useStatus
;
}
public
void
setUseStatus
(
int
useStatus
)
{
this
.
useStatus
=
useStatus
;
}
public
int
getPeopleNumber
()
{
return
peopleNumber
;
}
public
void
setPeopleNumber
(
int
peopleNumber
)
{
this
.
peopleNumber
=
peopleNumber
;
}
public
boolean
isSplite
()
{
return
isSplite
;
}
public
void
setSplite
(
boolean
splite
)
{
isSplite
=
splite
;
}
public
String
getSplitNo
()
{
return
splitNo
;
}
public
void
setSplitNo
(
String
splitNo
)
{
this
.
splitNo
=
splitNo
;
}
}
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/billItem/BillItem.java
View file @
f47767b0
...
@@ -53,4 +53,10 @@ public abstract class BillItem {
...
@@ -53,4 +53,10 @@ public abstract class BillItem {
this
.
name
=
name
;
this
.
name
=
name
;
this
.
money
=
money
;
this
.
money
=
money
;
}
}
public
BillItem
(
String
name
,
double
money
,
int
status
)
{
this
.
name
=
name
;
this
.
money
=
money
;
this
.
status
=
status
;
}
}
}
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/billItem/DiscountItem.java
View file @
f47767b0
package
com
.
gingersoft
.
gsa
.
cloud
.
base
.
order
.
billItem
;
package
com
.
gingersoft
.
gsa
.
cloud
.
base
.
order
.
billItem
;
import
com.gingersoft.gsa.cloud.base.order.discount.MultyDiscount
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
lombok.Getter
;
import
lombok.Getter
;
...
@@ -15,7 +16,7 @@ import lombok.Setter;
...
@@ -15,7 +16,7 @@ import lombok.Setter;
@Setter
@Setter
public
class
DiscountItem
extends
BillItem
{
public
class
DiscountItem
extends
BillItem
{
private
Discount
discount
;
private
Multy
Discount
discount
;
public
DiscountItem
()
{
public
DiscountItem
()
{
}
}
...
@@ -24,7 +25,9 @@ public class DiscountItem extends BillItem {
...
@@ -24,7 +25,9 @@ public class DiscountItem extends BillItem {
super
(
name
,
money
);
super
(
name
,
money
);
}
}
public
DiscountItem
(
String
name
,
double
money
,
int
status
)
{
super
(
name
,
money
,
status
);
}
public
void
updateBillItem
(
int
type
)
{
public
void
updateBillItem
(
int
type
)
{
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/cart/ShoppingCart.java
View file @
f47767b0
...
@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.base.order.cart;
...
@@ -3,6 +3,7 @@ package com.gingersoft.gsa.cloud.base.order.cart;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem
;
import
com.gingersoft.gsa.cloud.base.order.commodity.Commodity
;
import
com.gingersoft.gsa.cloud.base.order.commodity.Commodity
;
import
com.gingersoft.gsa.cloud.base.order.commodity.MealCommodity
;
import
com.gingersoft.gsa.cloud.base.order.commodity.MealCommodity
;
import
com.gingersoft.gsa.cloud.base.order.commodity.MealTakeaway
;
import
com.gingersoft.gsa.cloud.base.order.commodity.MealTakeaway
;
...
@@ -56,7 +57,7 @@ public class ShoppingCart {
...
@@ -56,7 +57,7 @@ public class ShoppingCart {
* @see MemberDiscount
* @see MemberDiscount
* @see CouponDiscount
* @see CouponDiscount
*/
*/
protected
List
<
MultyDiscount
>
multyDiscountList
=
new
ArrayList
<>()
;
protected
List
<
MultyDiscount
>
multyDiscountList
;
/**
/**
* 服務費
* 服務費
*/
*/
...
@@ -81,7 +82,7 @@ public class ShoppingCart {
...
@@ -81,7 +82,7 @@ public class ShoppingCart {
* @param commodityList
* @param commodityList
*/
*/
public
void
addCommodityList
(
List
<
OrderDetail
>
commodityList
)
{
public
void
addCommodityList
(
List
<
OrderDetail
>
commodityList
)
{
getOrderCommodityList
()
.
addAll
(
commodityList
);
orderCommodityList
.
addAll
(
commodityList
);
}
}
/**
/**
...
@@ -90,7 +91,7 @@ public class ShoppingCart {
...
@@ -90,7 +91,7 @@ public class ShoppingCart {
* @param commodity
* @param commodity
*/
*/
public
void
addCommodity
(
OrderDetail
commodity
)
{
public
void
addCommodity
(
OrderDetail
commodity
)
{
getOrderCommodityList
()
.
add
(
commodity
);
orderCommodityList
.
add
(
commodity
);
}
}
/**
/**
...
@@ -99,7 +100,7 @@ public class ShoppingCart {
...
@@ -99,7 +100,7 @@ public class ShoppingCart {
* @param commodity
* @param commodity
*/
*/
public
void
delCommodity
(
OrderDetail
commodity
)
{
public
void
delCommodity
(
OrderDetail
commodity
)
{
getOrderCommodityList
()
.
remove
(
commodity
);
orderCommodityList
.
remove
(
commodity
);
}
}
/**
/**
...
@@ -122,7 +123,7 @@ public class ShoppingCart {
...
@@ -122,7 +123,7 @@ public class ShoppingCart {
* @param billItem
* @param billItem
*/
*/
public
void
addBillItem
(
BillItem
billItem
)
{
public
void
addBillItem
(
BillItem
billItem
)
{
getBillItemList
()
.
add
(
billItem
);
billItemList
.
add
(
billItem
);
}
}
/**
/**
...
@@ -131,7 +132,7 @@ public class ShoppingCart {
...
@@ -131,7 +132,7 @@ public class ShoppingCart {
* @param billItems
* @param billItems
*/
*/
public
void
addBillItems
(
List
<
BillItem
>
billItems
)
{
public
void
addBillItems
(
List
<
BillItem
>
billItems
)
{
getBillItemList
()
.
addAll
(
billItems
);
billItemList
.
addAll
(
billItems
);
}
}
/**
/**
...
@@ -140,7 +141,7 @@ public class ShoppingCart {
...
@@ -140,7 +141,7 @@ public class ShoppingCart {
* @param billItem
* @param billItem
*/
*/
public
void
delBillItem
(
BillItem
billItem
)
{
public
void
delBillItem
(
BillItem
billItem
)
{
getBillItemList
()
.
remove
(
billItem
);
billItemList
.
remove
(
billItem
);
}
}
/**
/**
...
@@ -149,7 +150,7 @@ public class ShoppingCart {
...
@@ -149,7 +150,7 @@ public class ShoppingCart {
* @param multyDiscount
* @param multyDiscount
*/
*/
public
void
addMultyDiscount
(
MultyDiscount
multyDiscount
)
{
public
void
addMultyDiscount
(
MultyDiscount
multyDiscount
)
{
getMultyDiscountList
()
.
add
(
multyDiscount
);
multyDiscountList
.
add
(
multyDiscount
);
}
}
/**
/**
...
@@ -158,7 +159,7 @@ public class ShoppingCart {
...
@@ -158,7 +159,7 @@ public class ShoppingCart {
* @param multyDiscount
* @param multyDiscount
*/
*/
public
void
delMultyDiscount
(
MultyDiscount
multyDiscount
)
{
public
void
delMultyDiscount
(
MultyDiscount
multyDiscount
)
{
getMultyDiscountList
()
.
remove
(
multyDiscount
);
multyDiscountList
.
remove
(
multyDiscount
);
}
}
/**
/**
...
@@ -214,9 +215,12 @@ public class ShoppingCart {
...
@@ -214,9 +215,12 @@ public class ShoppingCart {
* 計算折扣鏈金額
* 計算折扣鏈金額
*/
*/
public
double
calculateLinkedDiscounts
(
double
money
)
{
public
double
calculateLinkedDiscounts
(
double
money
)
{
//折扣集合保存每個已經計算過的折扣
List
<
MultyDiscount
>
multyDiscountArrays
=
new
ArrayList
<>();
//折扣鏈對象
MultyDiscount
multyDiscounts
=
null
;
MultyDiscount
multyDiscounts
=
null
;
for
(
int
i
=
multyDiscountList
.
size
()
-
1
;
i
>=
0
;
i
--)
{
for
(
int
i
=
getMultyDiscountList
()
.
size
()
-
1
;
i
>=
0
;
i
--)
{
MultyDiscount
discount
=
multyDiscountList
.
get
(
i
);
MultyDiscount
discount
=
getMultyDiscountList
()
.
get
(
i
);
if
(
discount
instanceof
NomalDiscount
)
{
if
(
discount
instanceof
NomalDiscount
)
{
multyDiscounts
=
addNomalDiscount
(
multyDiscounts
,
((
NomalDiscount
)
discount
).
getDiscount
());
multyDiscounts
=
addNomalDiscount
(
multyDiscounts
,
((
NomalDiscount
)
discount
).
getDiscount
());
}
else
if
(
discount
instanceof
MemberDiscount
)
{
}
else
if
(
discount
instanceof
MemberDiscount
)
{
...
@@ -224,30 +228,19 @@ public class ShoppingCart {
...
@@ -224,30 +228,19 @@ public class ShoppingCart {
}
else
if
(
discount
instanceof
CouponDiscount
)
{
}
else
if
(
discount
instanceof
CouponDiscount
)
{
multyDiscounts
=
addCouponDiscount
(
multyDiscounts
,
((
CouponDiscount
)
discount
).
getCouponDiscount
());
multyDiscounts
=
addCouponDiscount
(
multyDiscounts
,
((
CouponDiscount
)
discount
).
getCouponDiscount
());
}
}
multyDiscountArrays
.
add
(
multyDiscounts
);
}
}
if
(
multyDiscounts
!=
null
)
{
if
(
multyDiscounts
!=
null
)
{
//計算折扣金額
money
=
multyDiscounts
.
calculate
(
money
);
money
=
multyDiscounts
.
calculate
(
money
);
}
}
return
money
;
//更新折扣billItem數據
}
for
(
MultyDiscount
discount
:
multyDiscountArrays
)
{
DiscountItem
discountItem
=
new
DiscountItem
(
discount
.
getName
(),
discount
.
getDiscountMoney
(),
discount
.
getStatus
());
private
void
updateBillItemList
()
{
discountItem
.
setDiscount
(
discount
);
billItemList
.
add
(
discountItem
);
}
public
List
<
OrderDetail
>
getOrderCommodityList
()
{
if
(
orderCommodityList
==
null
)
{
orderCommodityList
=
new
ArrayList
<>();
}
}
return
orderCommodityList
;
return
money
;
}
public
List
<
BillItem
>
getBillItemList
()
{
if
(
billItemList
==
null
)
{
billItemList
=
new
ArrayList
<>();
}
return
billItemList
;
}
}
public
List
<
MultyDiscount
>
getMultyDiscountList
()
{
public
List
<
MultyDiscount
>
getMultyDiscountList
()
{
...
@@ -294,19 +287,24 @@ public class ShoppingCart {
...
@@ -294,19 +287,24 @@ public class ShoppingCart {
}
}
/**
* 計算賬單前先重置
*/
public
void
resetBeforeBillCalculation
()
{
initialization
(
true
);
}
public
void
initialization
()
{
public
void
initialization
(
boolean
reset
)
{
if
(
orderCommodityList
!=
null
)
{
if
(!
reset
)
{
orderCommodityList
.
clear
();
if
(
orderCommodityList
!=
null
)
{
// orderCommodityList = null;
orderCommodityList
.
clear
();
}
if
(
multyDiscountList
!=
null
)
{
multyDiscountList
.
clear
();
}
}
}
if
(
billItemList
!=
null
)
{
if
(
billItemList
!=
null
)
{
billItemList
.
clear
();
billItemList
.
clear
();
// billItemList = null;
}
if
(
multyDiscountList
!=
null
)
{
multyDiscountList
.
clear
();
// multyDiscountList = null;
}
}
serviceCharge
=
null
;
serviceCharge
=
null
;
rounding
=
null
;
rounding
=
null
;
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/commodity/MealCommodity.java
View file @
f47767b0
...
@@ -3,8 +3,11 @@ package com.gingersoft.gsa.cloud.base.order.commodity;
...
@@ -3,8 +3,11 @@ package com.gingersoft.gsa.cloud.base.order.commodity;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.BaseOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.TakeawayOrder
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.constans.FoodSummaryConstans
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
...
@@ -254,7 +257,6 @@ public class MealCommodity implements Commodity {
...
@@ -254,7 +257,6 @@ public class MealCommodity implements Commodity {
private
long
ktShowPrice
;
private
long
ktShowPrice
;
/**
/**
* 此食品是否包含折扣
* 此食品是否包含折扣
*
*
...
@@ -424,7 +426,11 @@ public class MealCommodity implements Commodity {
...
@@ -424,7 +426,11 @@ public class MealCommodity implements Commodity {
mealCommodity
.
setNumber
(
1
);
mealCommodity
.
setNumber
(
1
);
mealCommodity
.
setPrice
(
discountPrice
);
mealCommodity
.
setPrice
(
discountPrice
);
mealCommodity
.
setUnit_price
(
discountPrice
);
mealCommodity
.
setUnit_price
(
discountPrice
);
mealCommodity
.
setOrderId
(
MyOrderManage
.
getInstance
().
getOrderId
());
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
RESTAURANT_MODE
))
{
mealCommodity
.
setOrderId
(
DoshokuOrder
.
getInstance
().
getOrderId
());
}
else
{
mealCommodity
.
setOrderId
(
TakeawayOrder
.
getInstance
().
getOrderId
());
}
mealCommodity
.
setIsfood
(
false
);
mealCommodity
.
setIsfood
(
false
);
mealCommodity
.
setNew
(
isNew
);
mealCommodity
.
setNew
(
isNew
);
mealCommodity
.
setType
(
DISCOUNT_TYPE
);
mealCommodity
.
setType
(
DISCOUNT_TYPE
);
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/commodity/OrderDetail.java
View file @
f47767b0
...
@@ -2,7 +2,7 @@ package com.gingersoft.gsa.cloud.base.order.commodity;
...
@@ -2,7 +2,7 @@ package com.gingersoft.gsa.cloud.base.order.commodity;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.database.bean.ComboItem
;
import
com.gingersoft.gsa.cloud.database.bean.ComboItem
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
...
@@ -1131,7 +1131,7 @@ public class OrderDetail implements Commodity, Serializable {
...
@@ -1131,7 +1131,7 @@ public class OrderDetail implements Commodity, Serializable {
orderDetail
.
setUnit_price
(
food
.
getPrice
());
orderDetail
.
setUnit_price
(
food
.
getPrice
());
orderDetail
.
setPrice
(
number
*
orderDetail
.
getUnit_price
());
orderDetail
.
setPrice
(
number
*
orderDetail
.
getUnit_price
());
orderDetail
.
setNumber
(
number
);
orderDetail
.
setNumber
(
number
);
orderDetail
.
setOrderId
(
MyOrderManage
.
getInstance
().
getOrderId
());
orderDetail
.
setOrderId
(
DoshokuOrder
.
getInstance
().
getOrderId
());
orderDetail
.
setPrintseting
(
food
.
getPrintSeting
());
orderDetail
.
setPrintseting
(
food
.
getPrintSeting
());
orderDetail
.
setIsfood
(
true
);
orderDetail
.
setIsfood
(
true
);
orderDetail
.
setNew
(
true
);
orderDetail
.
setNew
(
true
);
...
@@ -1174,7 +1174,7 @@ public class OrderDetail implements Commodity, Serializable {
...
@@ -1174,7 +1174,7 @@ public class OrderDetail implements Commodity, Serializable {
orderDetail
.
setUnit_price
(
foodCombo
.
getPrice
());
orderDetail
.
setUnit_price
(
foodCombo
.
getPrice
());
orderDetail
.
setPrice
(
number
*
orderDetail
.
getUnit_price
());
orderDetail
.
setPrice
(
number
*
orderDetail
.
getUnit_price
());
orderDetail
.
setNumber
(
number
);
orderDetail
.
setNumber
(
number
);
orderDetail
.
setOrderId
(
MyOrderManage
.
getInstance
().
getOrderId
());
orderDetail
.
setOrderId
(
DoshokuOrder
.
getInstance
().
getOrderId
());
orderDetail
.
setComid
(
foodCombo
.
getComId
());
orderDetail
.
setComid
(
foodCombo
.
getComId
());
orderDetail
.
setIsfood
(
true
);
orderDetail
.
setIsfood
(
true
);
orderDetail
.
setNew
(
true
);
orderDetail
.
setNew
(
true
);
...
@@ -1216,7 +1216,7 @@ public class OrderDetail implements Commodity, Serializable {
...
@@ -1216,7 +1216,7 @@ public class OrderDetail implements Commodity, Serializable {
orderDetail
.
setUnit_price
(
modifier
.
getPrice
());
orderDetail
.
setUnit_price
(
modifier
.
getPrice
());
orderDetail
.
setPrice
(
number
*
orderDetail
.
getUnit_price
());
orderDetail
.
setPrice
(
number
*
orderDetail
.
getUnit_price
());
orderDetail
.
setNumber
(
number
);
orderDetail
.
setNumber
(
number
);
orderDetail
.
setOrderId
(
MyOrderManage
.
getInstance
().
getOrderId
());
orderDetail
.
setOrderId
(
DoshokuOrder
.
getInstance
().
getOrderId
());
orderDetail
.
setMid
(
modifier
.
getMid
());
orderDetail
.
setMid
(
modifier
.
getMid
());
orderDetail
.
setIsfood
(
false
);
orderDetail
.
setIsfood
(
false
);
orderDetail
.
setNew
(
true
);
orderDetail
.
setNew
(
true
);
...
@@ -1249,7 +1249,7 @@ public class OrderDetail implements Commodity, Serializable {
...
@@ -1249,7 +1249,7 @@ public class OrderDetail implements Commodity, Serializable {
orderDetail
.
setNumber
(
1
);
orderDetail
.
setNumber
(
1
);
orderDetail
.
setPrice
(
discountPrice
);
orderDetail
.
setPrice
(
discountPrice
);
orderDetail
.
setUnit_price
(
discountPrice
);
orderDetail
.
setUnit_price
(
discountPrice
);
orderDetail
.
setOrderId
(
MyOrderManage
.
getInstance
().
getOrderId
());
orderDetail
.
setOrderId
(
DoshokuOrder
.
getInstance
().
getOrderId
());
orderDetail
.
setIsfood
(
false
);
orderDetail
.
setIsfood
(
false
);
orderDetail
.
setNew
(
isNew
);
orderDetail
.
setNew
(
isNew
);
orderDetail
.
setType
(
DISCOUNT_TYPE
);
orderDetail
.
setType
(
DISCOUNT_TYPE
);
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/discount/CouponDiscount.java
View file @
f47767b0
...
@@ -16,10 +16,6 @@ import lombok.Getter;
...
@@ -16,10 +16,6 @@ import lombok.Getter;
public
class
CouponDiscount
extends
MultyDiscount
{
public
class
CouponDiscount
extends
MultyDiscount
{
private
CouponDiscountBean
couponDiscount
;
private
CouponDiscountBean
couponDiscount
;
/**
* 本次折扣金额
*/
private
Double
discountMoney
;
public
CouponDiscount
(
String
name
,
MultyDiscount
nextMultyDiscount
,
CouponDiscountBean
couponDiscount
)
{
public
CouponDiscount
(
String
name
,
MultyDiscount
nextMultyDiscount
,
CouponDiscountBean
couponDiscount
)
{
super
(
name
,
nextMultyDiscount
);
super
(
name
,
nextMultyDiscount
);
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/discount/MemberDiscount.java
View file @
f47767b0
...
@@ -16,10 +16,6 @@ import lombok.Getter;
...
@@ -16,10 +16,6 @@ import lombok.Getter;
public
class
MemberDiscount
extends
MultyDiscount
{
public
class
MemberDiscount
extends
MultyDiscount
{
private
MemberInfo
memberDiscount
;
private
MemberInfo
memberDiscount
;
/**
* 本次折扣金额
*/
private
Double
discountMoney
;
public
MemberDiscount
(
String
name
,
MultyDiscount
nextMultyDiscount
,
MemberInfo
memberDiscount
)
{
public
MemberDiscount
(
String
name
,
MultyDiscount
nextMultyDiscount
,
MemberInfo
memberDiscount
)
{
super
(
name
,
nextMultyDiscount
);
super
(
name
,
nextMultyDiscount
);
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/discount/MultyDiscount.java
View file @
f47767b0
...
@@ -3,6 +3,8 @@ package com.gingersoft.gsa.cloud.base.order.discount;
...
@@ -3,6 +3,8 @@ package com.gingersoft.gsa.cloud.base.order.discount;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
lombok.Getter
;
/**
/**
* 作者:ELEGANT_BIN
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 版本:1.6.0
...
@@ -10,10 +12,15 @@ import com.gingersoft.gsa.cloud.base.order.billItem.BillItem;
...
@@ -10,10 +12,15 @@ import com.gingersoft.gsa.cloud.base.order.billItem.BillItem;
* 修订历史:2020-09-19
* 修订历史:2020-09-19
* 描述: 折扣抽象類{@link MultyDiscount}
* 描述: 折扣抽象類{@link MultyDiscount}
*/
*/
@Getter
public
abstract
class
MultyDiscount
extends
BillItem
{
public
abstract
class
MultyDiscount
extends
BillItem
{
/**責任鏈中的下一個對象*/
/**責任鏈中的下一個對象*/
protected
MultyDiscount
nextMultyDiscount
;
protected
MultyDiscount
nextMultyDiscount
;
/**
* 本次折扣金额
*/
protected
double
discountMoney
=
0.0
;
public
MultyDiscount
(
String
name
,
MultyDiscount
nextMultyDiscount
)
{
public
MultyDiscount
(
String
name
,
MultyDiscount
nextMultyDiscount
)
{
super
(
name
);
super
(
name
);
...
@@ -26,5 +33,4 @@ public abstract class MultyDiscount extends BillItem {
...
@@ -26,5 +33,4 @@ public abstract class MultyDiscount extends BillItem {
}
}
return
money
;
return
money
;
}
}
}
}
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/discount/NomalDiscount.java
View file @
f47767b0
...
@@ -16,11 +16,7 @@ import lombok.Getter;
...
@@ -16,11 +16,7 @@ import lombok.Getter;
public
class
NomalDiscount
extends
MultyDiscount
{
public
class
NomalDiscount
extends
MultyDiscount
{
private
Discount
discount
;
private
Discount
discount
;
/**
* 本次折扣金额
*/
private
Double
discountMoney
;
public
NomalDiscount
(
String
name
,
MultyDiscount
nextMultyDiscount
,
Discount
discount
)
{
public
NomalDiscount
(
String
name
,
MultyDiscount
nextMultyDiscount
,
Discount
discount
)
{
super
(
name
,
nextMultyDiscount
);
super
(
name
,
nextMultyDiscount
);
this
.
discount
=
discount
;
this
.
discount
=
discount
;
...
@@ -32,7 +28,6 @@ public class NomalDiscount extends MultyDiscount{
...
@@ -32,7 +28,6 @@ public class NomalDiscount extends MultyDiscount{
discountMoney
=
calculationDiscount
(
discount
,
money
);
discountMoney
=
calculationDiscount
(
discount
,
money
);
money
=
MoneyUtil
.
sum
(
money
,
discountMoney
);
money
=
MoneyUtil
.
sum
(
money
,
discountMoney
);
}
}
return
super
.
calculate
(
money
);
return
super
.
calculate
(
money
);
}
}
...
...
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/order/BaseOrder.java
View file @
f47767b0
...
@@ -11,7 +11,7 @@ import lombok.Setter;
...
@@ -11,7 +11,7 @@ import lombok.Setter;
* @作者: bin
* @作者: bin
* @創建時間: 2020-10-14
* @創建時間: 2020-10-14
* @更新時間: 2020-10-14
* @更新時間: 2020-10-14
* @描述:
* @描述:
訂單基類
*/
*/
@Getter
@Getter
@Setter
@Setter
...
@@ -32,7 +32,7 @@ public abstract class BaseOrder {
...
@@ -32,7 +32,7 @@ public abstract class BaseOrder {
/**
/**
* 訂單ID
* 訂單ID
*/
*/
protected
long
i
d
=
-
1
;
protected
long
orderI
d
=
-
1
;
/**
/**
* 訂單編號
* 訂單編號
*/
*/
...
@@ -43,10 +43,23 @@ public abstract class BaseOrder {
...
@@ -43,10 +43,23 @@ public abstract class BaseOrder {
protected
ShoppingCart
shoppingCart
;
protected
ShoppingCart
shoppingCart
;
/**
* 判斷是否當前訂單類型
* @param type
* @return
*/
public
static
boolean
isCurrentOrderType
(
int
type
)
{
if
(
type
==
orderType
)
{
return
true
;
}
return
false
;
}
protected
void
initialization
()
{
protected
void
initialization
()
{
orderType
=
FoodSummaryConstans
.
RESTAURANT_MODE
;
orderType
=
FoodSummaryConstans
.
RESTAURANT_MODE
;
i
d
=
-
1
;
orderI
d
=
-
1
;
orderNo
=
null
;
orderNo
=
null
;
shoppingCart
.
initialization
();
shoppingCart
.
initialization
(
false
);
}
}
}
}
order-base/src/main/java/com/gingersoft/gsa/cloud/base/order/order/DoshokuOrder.java
View file @
f47767b0
package
com
.
gingersoft
.
gsa
.
cloud
.
base
.
order
.
order
;
package
com
.
gingersoft
.
gsa
.
cloud
.
base
.
order
.
order
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.order.Member
;
import
com.gingersoft.gsa.cloud.base.order.Member
;
import
com.gingersoft.gsa.cloud.base.order.bean.DeleteOrderRequest
;
import
com.gingersoft.gsa.cloud.base.order.bean.DeleteOrderRequest
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.List
;
import
lombok.Getter
;
import
lombok.Getter
;
...
@@ -37,10 +40,6 @@ public class DoshokuOrder extends BaseOrder implements Member {
...
@@ -37,10 +40,6 @@ public class DoshokuOrder extends BaseOrder implements Member {
}
}
/**
/**
* 記錄刪除的食品以及原因
*/
private
List
<
DeleteOrderRequest
>
deleteMealOrders
;
/**
* 已下單信息
* 已下單信息
*/
*/
private
OrderBean
orderPlaced
;
private
OrderBean
orderPlaced
;
...
@@ -53,8 +52,18 @@ public class DoshokuOrder extends BaseOrder implements Member {
...
@@ -53,8 +52,18 @@ public class DoshokuOrder extends BaseOrder implements Member {
* 會員信息
* 會員信息
*/
*/
private
MemberInfo
memberInfo
;
private
MemberInfo
memberInfo
;
/**
* 記錄刪除的食品以及原因
*/
private
List
<
DeleteOrderRequest
>
deleteMealOrders
;
/**
* 本次送單食品,用於打印
*/
private
List
<
OrderDetail
>
newFoodList
=
new
ArrayList
<>();
/**
* 本次支付方式,用於打印
*/
private
List
<
PayMethod
>
billMoney
=
new
ArrayList
<>();
/**
/**
* 是否需要更新會員信息(如開台有然後清除: "true:false" 這種情況需要重新送單更新會員信息)
* 是否需要更新會員信息(如開台有然後清除: "true:false" 這種情況需要重新送單更新會員信息)
*/
*/
...
@@ -67,6 +76,24 @@ public class DoshokuOrder extends BaseOrder implements Member {
...
@@ -67,6 +76,24 @@ public class DoshokuOrder extends BaseOrder implements Member {
private
boolean
modifyOrder
=
false
;
private
boolean
modifyOrder
=
false
;
/**
/**
* 本次加多少積分
*/
private
float
addPoints
;
/**
* 之前有多少積分
*/
private
float
oldPoints
;
/**
* 現在有多少積分
*/
private
float
nowPoints
;
/**
* 結賬積分QRCode
*/
private
String
integralQrcode
;
/**
* 添加需要刪除的食品
* 添加需要刪除的食品
* @param request
* @param request
*/
*/
...
@@ -82,6 +109,17 @@ public class DoshokuOrder extends BaseOrder implements Member {
...
@@ -82,6 +109,17 @@ public class DoshokuOrder extends BaseOrder implements Member {
getDeleteMealOrders
().
remove
(
request
);
getDeleteMealOrders
().
remove
(
request
);
}
}
public
void
setDeleteMealOrders
(
List
<
DeleteOrderRequest
>
deleteMealOrders
)
{
this
.
deleteMealOrders
=
deleteMealOrders
;
}
public
Date
getOpenTableTime
()
{
if
(
orderPlaced
!=
null
&&
orderPlaced
.
getCreateTime
()
!=
null
)
{
return
new
Date
(
orderPlaced
.
getCreateTime
());
}
return
new
Date
();
}
public
List
<
DeleteOrderRequest
>
getDeleteMealOrders
()
{
public
List
<
DeleteOrderRequest
>
getDeleteMealOrders
()
{
if
(
deleteMealOrders
==
null
)
{
if
(
deleteMealOrders
==
null
)
{
deleteMealOrders
=
new
ArrayList
<>();
deleteMealOrders
=
new
ArrayList
<>();
...
@@ -89,11 +127,29 @@ public class DoshokuOrder extends BaseOrder implements Member {
...
@@ -89,11 +127,29 @@ public class DoshokuOrder extends BaseOrder implements Member {
return
deleteMealOrders
;
return
deleteMealOrders
;
}
}
public
boolean
needUpdateMemberInfo
()
{
String
[]
status
=
memberUpdateStatus
.
split
(
"-"
);
if
(
status
.
length
==
2
)
{
if
(
Boolean
.
parseBoolean
(
status
[
0
])
!=
Boolean
.
parseBoolean
(
status
[
1
]))
{
return
true
;
}
else
{
return
false
;
}
}
else
{
return
false
;
}
}
@Override
@Override
public
void
initialization
()
{
public
void
initialization
()
{
if
(
deleteMealOrders
!=
null
)
{
if
(
deleteMealOrders
!=
null
)
{
deleteMealOrders
.
clear
();
deleteMealOrders
.
clear
();
deleteMealOrders
=
null
;
}
if
(
newFoodList
!=
null
)
{
newFoodList
.
clear
();
}
if
(
billMoney
!=
null
)
{
billMoney
.
clear
();
}
}
if
(
orderPlaced
!=
null
)
{
if
(
orderPlaced
!=
null
)
{
orderPlaced
=
null
;
orderPlaced
=
null
;
...
...
print-module/src/main/java/com/joe/print/mvp/print/PrintBill.java
View file @
f47767b0
...
@@ -4,14 +4,14 @@ import android.content.Context;
...
@@ -4,14 +4,14 @@ import android.content.Context;
import
android.graphics.Bitmap
;
import
android.graphics.Bitmap
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
android.widget.LinearLayout
;
import
android.widget.LinearLayout
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillingBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillingBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.RestaurantExpandInfoUtils
;
import
com.gingersoft.gsa.cloud.base.utils.RestaurantExpandInfoUtils
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
...
@@ -19,7 +19,6 @@ import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
...
@@ -19,7 +19,6 @@ import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils;
import
com.gingersoft.gsa.cloud.constans.ExpandConstant
;
import
com.gingersoft.gsa.cloud.constans.ExpandConstant
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
import
com.gingersoft.gsa.cloud.print.bean.OrderDetails
;
import
com.gingersoft.gsa.cloud.print.bean.OrderDetails
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
...
@@ -41,17 +40,21 @@ public class PrintBill extends PrinterRoot {
...
@@ -41,17 +40,21 @@ public class PrintBill extends PrinterRoot {
@Override
@Override
public
String
getPrintData
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
public
String
getPrintData
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
List
<
OrderDetail
>
foodList
=
MyOrderManage
.
getInstance
().
getOrderFoodList
();
TableBean
.
DataBean
tableBean
=
OpenTableManage
.
getDefault
().
getTableBean
();
DoshokuOrder
doshokuOrder
=
DoshokuOrder
.
getInstance
();
ShoppingCart
shoppingCart
=
doshokuOrder
.
getShoppingCart
();
List
<
OrderDetail
>
foodList
=
shoppingCart
.
getOrderCommodityList
();
TableBean
.
DataBean
tableBean
=
doshokuOrder
.
getOpenTableInfo
();
StringBuilder
payInfo
=
new
StringBuilder
();
StringBuilder
payInfo
=
new
StringBuilder
();
for
(
PayMethod
payMethod
:
MyOrderManage
.
getInstance
()
.
getBillMoney
())
{
for
(
PayMethod
payMethod
:
doshokuOrder
.
getBillMoney
())
{
payInfo
.
append
(
payMethod
.
getPayName
()
+
" "
).
append
(
payMethod
.
getPayMoney
());
payInfo
.
append
(
payMethod
.
getPayName
()
+
" "
).
append
(
payMethod
.
getPayMoney
());
}
}
StringBuilder
memberIntegerInfo
=
new
StringBuilder
();
StringBuilder
memberIntegerInfo
=
new
StringBuilder
();
OrderDetails
.
DataBean
data
=
getOrderMemberInfo
();
OrderDetails
.
DataBean
data
=
getOrderMemberInfo
();
MyOrderManage
.
getInstance
().
getIntegralQrcode
();
if
(
data
.
getAddPoints
()
!=
0
||
data
.
getOldPoints
()
!=
0
||
data
.
getAddPoints
()
!=
0
)
{
if
(
data
.
getAddPoints
()
!=
0
||
data
.
getOldPoints
()
!=
0
||
data
.
getAddPoints
()
!=
0
)
{
memberIntegerInfo
.
append
(
getPLable
(
"本次積分:"
+
data
.
getAddPoints
(),
HTML_PRINT_GRAVITY_LEFT
))
memberIntegerInfo
.
append
(
getPLable
(
"本次積分:"
+
data
.
getAddPoints
(),
HTML_PRINT_GRAVITY_LEFT
))
.
append
(
getPLable
(
"結餘積分:"
+
data
.
getNowPoints
(),
HTML_PRINT_GRAVITY_LEFT
))
.
append
(
getPLable
(
"結餘積分:"
+
data
.
getNowPoints
(),
HTML_PRINT_GRAVITY_LEFT
))
...
@@ -75,11 +78,11 @@ public class PrintBill extends PrinterRoot {
...
@@ -75,11 +78,11 @@ public class PrintBill extends PrinterRoot {
getWholeLine
()
+
getWholeLine
()
+
getPLable
(
memberIntegerInfo
.
toString
(),
HTML_PRINT_GRAVITY_LEFT
);
getPLable
(
memberIntegerInfo
.
toString
(),
HTML_PRINT_GRAVITY_LEFT
);
String
integralQrCode
=
MyOrderManage
.
getInstance
()
.
getIntegralQrcode
();
String
integralQrCode
=
doshokuOrder
.
getIntegralQrcode
();
if
(!
TextUtils
.
isEmpty
(
integralQrCode
)
&&
if
(!
TextUtils
.
isEmpty
(
integralQrCode
)
&&
(
boolean
)
RestaurantExpandInfoUtils
.
getValue
(
ExpandConstant
.
ToPrintQRCode
,
false
))
{
(
boolean
)
RestaurantExpandInfoUtils
.
getValue
(
ExpandConstant
.
ToPrintQRCode
,
false
))
{
stringBuilder
+=
getPLable
(
"請掃描二維碼"
,
HTML_PRINT_GRAVITY_CENTER
)
+
stringBuilder
+=
getPLable
(
"請掃描二維碼"
,
HTML_PRINT_GRAVITY_CENTER
)
+
getHtmlQrCode
(
MyOrderManage
.
getInstance
()
.
getIntegralQrcode
())
+
getHtmlQrCode
(
doshokuOrder
.
getIntegralQrcode
())
+
getPLable
(
"《追加積分到個人賬戶》"
,
HTML_PRINT_GRAVITY_CENTER
);
getPLable
(
"《追加積分到個人賬戶》"
,
HTML_PRINT_GRAVITY_CENTER
);
}
}
stringBuilder
+=
"</body></html>"
;
stringBuilder
+=
"</body></html>"
;
...
@@ -92,8 +95,13 @@ public class PrintBill extends PrinterRoot {
...
@@ -92,8 +95,13 @@ public class PrintBill extends PrinterRoot {
}
}
private
Bitmap
getBitmap
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
private
Bitmap
getBitmap
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
List
<
OrderDetail
>
foodList
=
MyOrderManage
.
getInstance
().
getOrderFoodList
();
TableBean
.
DataBean
tableBean
=
OpenTableManage
.
getDefault
().
getTableBean
();
DoshokuOrder
doshokuOrder
=
DoshokuOrder
.
getInstance
();
ShoppingCart
shoppingCart
=
doshokuOrder
.
getShoppingCart
();
List
<
OrderDetail
>
foodList
=
shoppingCart
.
getOrderCommodityList
();
TableBean
.
DataBean
tableBean
=
doshokuOrder
.
getOpenTableInfo
();
LinearLayout
layout
=
new
LinearLayout
(
mContext
);
LinearLayout
layout
=
new
LinearLayout
(
mContext
);
layout
.
setOrientation
(
LinearLayout
.
VERTICAL
);
layout
.
setOrientation
(
LinearLayout
.
VERTICAL
);
...
@@ -104,10 +112,10 @@ public class PrintBill extends PrinterRoot {
...
@@ -104,10 +112,10 @@ public class PrintBill extends PrinterRoot {
//訂單信息
//訂單信息
String
tableName
=
"餐檯:"
+
tableBean
.
getTableName
();
String
tableName
=
"餐檯:"
+
tableBean
.
getTableName
();
String
peopleNum
=
"人數:"
+
OpenTableManage
.
getDefault
().
getPeopleNumber
();
String
peopleNum
=
"人數:"
+
doshokuOrder
.
getOpenTableInfo
().
getPerson
();
String
orderNum
=
"單號:"
;
String
orderNum
=
"單號:"
;
if
(
TextUtil
.
isNotEmptyOrNullOrUndefined
(
MyOrderManage
.
getInstance
()
.
getOrderNo
()))
{
if
(
TextUtil
.
isNotEmptyOrNullOrUndefined
(
doshokuOrder
.
getOrderNo
()))
{
orderNum
=
"單號:"
+
MyOrderManage
.
getInstance
()
.
getOrderNo
();
orderNum
=
"單號:"
+
doshokuOrder
.
getOrderNo
();
}
}
String
createTime
=
"日期:"
+
TimeUtils
.
parseTimeRepeat
(
tableBean
.
getCreateTime
(),
TimeUtils
.
DEFAULT_DATE_FORMAT
);
String
createTime
=
"日期:"
+
TimeUtils
.
parseTimeRepeat
(
tableBean
.
getCreateTime
(),
TimeUtils
.
DEFAULT_DATE_FORMAT
);
layout
.
addView
(
getDiningTableOrderInfo
(
mContext
,
tableName
,
peopleNum
,
orderNum
,
createTime
));
layout
.
addView
(
getDiningTableOrderInfo
(
mContext
,
tableName
,
peopleNum
,
orderNum
,
createTime
));
...
@@ -120,10 +128,10 @@ public class PrintBill extends PrinterRoot {
...
@@ -120,10 +128,10 @@ public class PrintBill extends PrinterRoot {
//訂單金額信息
//訂單金額信息
List
<
BillingBean
>
billingBeans
=
new
ArrayList
<>();
List
<
BillingBean
>
billingBeans
=
new
ArrayList
<>();
//添加合計項
//添加合計項
billingBeans
.
add
(
new
BillingBean
(
"合計"
,
MyOrderManage
.
getInstance
()
.
getWholeAmount
()));
billingBeans
.
add
(
new
BillingBean
(
"合計"
,
shoppingCart
.
getWholeAmount
()));
//添加其他金額項
//添加其他金額項
if
(
MyOrderManage
.
getInstance
().
getOrderMoney
List
().
size
()
>
0
)
{
if
(
shoppingCart
.
getBillItem
List
().
size
()
>
0
)
{
for
(
Bill
OrderMoney
item
:
MyOrderManage
.
getInstance
().
getOrderMoney
List
())
{
for
(
Bill
Item
item
:
shoppingCart
.
getBillItem
List
())
{
billingBeans
.
add
(
new
BillingBean
(
item
.
getName
(),
item
.
getMoney
()));
billingBeans
.
add
(
new
BillingBean
(
item
.
getName
(),
item
.
getMoney
()));
}
}
}
}
...
@@ -136,12 +144,12 @@ public class PrintBill extends PrinterRoot {
...
@@ -136,12 +144,12 @@ public class PrintBill extends PrinterRoot {
// for (OrderDetail OrderDetail : MyOrderManage.getInstance().getOrderFoodList()) {
// for (OrderDetail OrderDetail : MyOrderManage.getInstance().getOrderFoodList()) {
// totalAmount = MoneyUtil.sum(totalAmount, OrderDetail.getPrice());
// totalAmount = MoneyUtil.sum(totalAmount, OrderDetail.getPrice());
// }
// }
layout
.
addView
(
getAmountText
(
mContext
,
"總金額:"
+
MyOrderManage
.
getInstance
()
.
getTotalAmount
()));
layout
.
addView
(
getAmountText
(
mContext
,
"總金額:"
+
shoppingCart
.
getTotalAmount
()));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getDiningBillPayMethod
(
mContext
,
MyOrderManage
.
getInstance
()
.
getBillMoney
()));
layout
.
addView
(
getDiningBillPayMethod
(
mContext
,
doshokuOrder
.
getBillMoney
()));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getTableMealMemberIntegerView
(
mContext
,
getOrderMemberInfo
(),
MyOrderManage
.
getInstance
()
.
getIntegralQrcode
()));
layout
.
addView
(
getTableMealMemberIntegerView
(
mContext
,
getOrderMemberInfo
(),
doshokuOrder
.
getIntegralQrcode
()));
return
zoomBitmap
(
deviceBean
,
viewToBitmap
(
mContext
,
layout
));
return
zoomBitmap
(
deviceBean
,
viewToBitmap
(
mContext
,
layout
));
}
}
...
@@ -149,13 +157,13 @@ public class PrintBill extends PrinterRoot {
...
@@ -149,13 +157,13 @@ public class PrintBill extends PrinterRoot {
private
OrderDetails
.
DataBean
getOrderMemberInfo
()
{
private
OrderDetails
.
DataBean
getOrderMemberInfo
()
{
OrderDetails
.
DataBean
dataBean
=
new
OrderDetails
.
DataBean
();
OrderDetails
.
DataBean
dataBean
=
new
OrderDetails
.
DataBean
();
MemberInfo
memberInfo
=
MyOrderManage
.
getInstance
().
getMemberInfo
();
MemberInfo
memberInfo
=
DoshokuOrder
.
getInstance
().
getMemberInfo
();
if
(
memberInfo
!=
null
)
{
if
(
memberInfo
!=
null
)
{
dataBean
.
setMEMBER_NAME
(
memberInfo
.
getMemberName
());
dataBean
.
setMEMBER_NAME
(
memberInfo
.
getMemberName
());
dataBean
.
setPHONE
(
memberInfo
.
getPhone
());
dataBean
.
setPHONE
(
memberInfo
.
getPhone
());
dataBean
.
setNowPoints
(
MyOrderManage
.
getInstance
().
getNowPoints
());
dataBean
.
setNowPoints
(
DoshokuOrder
.
getInstance
().
getNowPoints
());
dataBean
.
setAddPoints
(
MyOrderManage
.
getInstance
().
getAddPoints
());
dataBean
.
setAddPoints
(
DoshokuOrder
.
getInstance
().
getAddPoints
());
dataBean
.
setOldPoints
(
MyOrderManage
.
getInstance
().
getOldPoints
());
dataBean
.
setOldPoints
(
DoshokuOrder
.
getInstance
().
getOldPoints
());
}
}
return
dataBean
;
return
dataBean
;
}
}
...
...
print-module/src/main/java/com/joe/print/mvp/print/PrintKitchen.java
View file @
f47767b0
...
@@ -9,8 +9,8 @@ import android.widget.TextView;
...
@@ -9,8 +9,8 @@ import android.widget.TextView;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.order.adapter.print.KitChenPrintFoodAdapter
;
import
com.gingersoft.gsa.cloud.base.order.adapter.print.KitChenPrintFoodAdapter
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.
order.bean.mealManger.OpenTableManage
;
import
com.gingersoft.gsa.cloud.base.
table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
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.time.TimeUtils
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
...
@@ -33,7 +33,7 @@ public class PrintKitchen extends PrinterRoot {
...
@@ -33,7 +33,7 @@ public class PrintKitchen extends PrinterRoot {
@Override
@Override
public
Map
<
String
,
List
<
Bitmap
>>
getPrintBitmap
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
public
Map
<
String
,
List
<
Bitmap
>>
getPrintBitmap
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
Map
<
String
,
List
<
Bitmap
>>
bitmapMaps
=
new
HashMap
<>();
Map
<
String
,
List
<
Bitmap
>>
bitmapMaps
=
new
HashMap
<>();
List
<
OrderDetail
>
orderDetails
=
MyOrderManage
.
getInstance
().
getNewFoodList
();
List
<
OrderDetail
>
orderDetails
=
DoshokuOrder
.
getInstance
().
getNewFoodList
();
if
(
orderDetails
!=
null
)
{
if
(
orderDetails
!=
null
)
{
// for (int i = 0; i < orderDetails.size(); i++) {
// for (int i = 0; i < orderDetails.size(); i++) {
// orderDetails.get(i).setPrintseting(printLocation[i % 2]);
// orderDetails.get(i).setPrintseting(printLocation[i % 2]);
...
@@ -156,6 +156,9 @@ public class PrintKitchen extends PrinterRoot {
...
@@ -156,6 +156,9 @@ public class PrintKitchen extends PrinterRoot {
if
(
foodList
==
null
||
foodList
.
size
()
<=
0
)
{
if
(
foodList
==
null
||
foodList
.
size
()
<=
0
)
{
return
null
;
return
null
;
}
}
DoshokuOrder
doshokuOrder
=
DoshokuOrder
.
getInstance
();
View
view
=
LinearLayout
.
inflate
(
context
,
R
.
layout
.
print_kitchen
,
null
);
View
view
=
LinearLayout
.
inflate
(
context
,
R
.
layout
.
print_kitchen
,
null
);
TextView
tvTableNumber
=
view
.
findViewById
(
R
.
id
.
tv_kitchen_print_table_number
);
TextView
tvTableNumber
=
view
.
findViewById
(
R
.
id
.
tv_kitchen_print_table_number
);
TextView
tvOrderNumber
=
view
.
findViewById
(
R
.
id
.
tv_order_num
);
TextView
tvOrderNumber
=
view
.
findViewById
(
R
.
id
.
tv_order_num
);
...
@@ -178,16 +181,17 @@ public class PrintKitchen extends PrinterRoot {
...
@@ -178,16 +181,17 @@ public class PrintKitchen extends PrinterRoot {
tvKitChenLocation
.
setVisibility
(
View
.
GONE
);
tvKitChenLocation
.
setVisibility
(
View
.
GONE
);
}
}
}
}
if
(
OpenTableManage
.
getDefault
().
getTableBean
()
!=
null
)
{
TableBean
.
DataBean
dataBean
=
doshokuOrder
.
getOpenTableInfo
();
if
(
dataBean
!=
null
)
{
//台號
//台號
tvTableNumber
.
setText
(
OpenTableManage
.
getDefault
().
getTableBean
()
.
getTableName
()
+
""
);
tvTableNumber
.
setText
(
dataBean
.
getTableName
()
+
""
);
tvTableNumber2
.
setText
(
OpenTableManage
.
getDefault
().
getTableBean
()
.
getTableName
()
+
""
);
tvTableNumber2
.
setText
(
dataBean
.
getTableName
()
+
""
);
//人數
//人數
tvPeople
.
setText
(
OpenTableManage
.
getDefault
().
getPeopleNumber
()
+
""
);
tvPeople
.
setText
(
dataBean
.
getPerson
()
+
""
);
//訂單號
//訂單號
tvOrderNumber
.
setText
(
""
+
MyOrderManage
.
getInstance
()
.
getOrderId
());
tvOrderNumber
.
setText
(
""
+
dataBean
.
getOrderId
());
//開台時間
//開台時間
tvOpeningTime
.
setText
(
TimeUtils
.
parseTimeRepeat
(
OpenTableManage
.
getDefault
().
getTableBean
()
.
getCreateTime
(),
TimeUtils
.
DEFAULT_DATE_FORMAT
));
tvOpeningTime
.
setText
(
TimeUtils
.
parseTimeRepeat
(
dataBean
.
getCreateTime
(),
TimeUtils
.
DEFAULT_DATE_FORMAT
));
}
}
//落單時間,為當前時間
//落單時間,為當前時間
tvOrderTime
.
setText
(
TimeUtils
.
getCurrentTimeInString
(
TimeUtils
.
DEFAULT_DATE_FORMAT
));
tvOrderTime
.
setText
(
TimeUtils
.
getCurrentTimeInString
(
TimeUtils
.
DEFAULT_DATE_FORMAT
));
...
@@ -197,8 +201,4 @@ public class PrintKitchen extends PrinterRoot {
...
@@ -197,8 +201,4 @@ public class PrintKitchen extends PrinterRoot {
}
}
}
}
print-module/src/main/java/com/joe/print/mvp/print/PrintOtherOrderClosing.java
View file @
f47767b0
...
@@ -6,10 +6,8 @@ import android.view.LayoutInflater;
...
@@ -6,10 +6,8 @@ import android.view.LayoutInflater;
import
android.view.View
;
import
android.view.View
;
import
android.widget.LinearLayout
;
import
android.widget.LinearLayout
;
import
android.widget.TextView
;
import
android.widget.TextView
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.recyclerview.widget.RecyclerView
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
...
@@ -23,7 +21,6 @@ import com.joe.print.R;
...
@@ -23,7 +21,6 @@ import com.joe.print.R;
import
com.joe.print.mvp.model.bean.PrintBillBean
;
import
com.joe.print.mvp.model.bean.PrintBillBean
;
import
com.joe.print.mvp.ui.adapter.BillItemAdapter
;
import
com.joe.print.mvp.ui.adapter.BillItemAdapter
;
import
com.joe.print.mvp.ui.adapter.OtherOrderAdapter
;
import
com.joe.print.mvp.ui.adapter.OtherOrderAdapter
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
...
...
print-module/src/main/java/com/joe/print/mvp/print/PrintServe.java
View file @
f47767b0
...
@@ -4,16 +4,13 @@ import android.content.Context;
...
@@ -4,16 +4,13 @@ import android.content.Context;
import
android.graphics.Bitmap
;
import
android.graphics.Bitmap
;
import
android.view.Gravity
;
import
android.view.Gravity
;
import
android.widget.LinearLayout
;
import
android.widget.LinearLayout
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
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.time.TimeUtils
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
import
com.joe.print.R
;
import
com.joe.print.R
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.List
;
...
@@ -35,8 +32,8 @@ public class PrintServe extends PrinterRoot {
...
@@ -35,8 +32,8 @@ public class PrintServe extends PrinterRoot {
@Override
@Override
public
String
getPrintData
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
public
String
getPrintData
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
List
<
OrderDetail
>
foodList
=
MyOrderManage
.
getInstance
().
getOrderFood
List
();
List
<
OrderDetail
>
foodList
=
DoshokuOrder
.
getInstance
().
getShoppingCart
().
getOrderCommodity
List
();
TableBean
.
DataBean
tableBean
=
OpenTableManage
.
getDefault
().
getTableBean
();
TableBean
.
DataBean
tableBean
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
String
stringBuilder
=
"<html><body>"
+
String
stringBuilder
=
"<html><body>"
+
getHtmlPrintHeadInfo
()
+
getHtmlPrintHeadInfo
()
+
getHtmlPrintHeadOrderInfo
(
tableBean
)
+
getHtmlPrintHeadOrderInfo
(
tableBean
)
+
...
@@ -53,11 +50,11 @@ public class PrintServe extends PrinterRoot {
...
@@ -53,11 +50,11 @@ public class PrintServe extends PrinterRoot {
private
Bitmap
getBitmap
(
Context
mContext
,
PrinterDeviceBean
printerDeviceBean
)
{
private
Bitmap
getBitmap
(
Context
mContext
,
PrinterDeviceBean
printerDeviceBean
)
{
List
<
OrderDetail
>
foodList
=
MyOrderManage
.
getInstance
().
getOrderFood
List
();
List
<
OrderDetail
>
foodList
=
DoshokuOrder
.
getInstance
().
getShoppingCart
().
getOrderCommodity
List
();
if
(
foodList
==
null
||
foodList
.
size
()
<=
0
)
{
if
(
foodList
==
null
||
foodList
.
size
()
<=
0
)
{
return
null
;
return
null
;
}
}
TableBean
.
DataBean
tableBean
=
OpenTableManage
.
getDefault
().
getTableBean
();
TableBean
.
DataBean
tableBean
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
LinearLayout
layout
=
new
LinearLayout
(
mContext
);
LinearLayout
layout
=
new
LinearLayout
(
mContext
);
layout
.
setOrientation
(
LinearLayout
.
VERTICAL
);
layout
.
setOrientation
(
LinearLayout
.
VERTICAL
);
...
@@ -66,11 +63,11 @@ public class PrintServe extends PrinterRoot {
...
@@ -66,11 +63,11 @@ public class PrintServe extends PrinterRoot {
layout
.
addView
(
getHeader
(
mContext
));
layout
.
addView
(
getHeader
(
mContext
));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getLine
(
mContext
));
String
orderNo
=
"單號:"
;
String
orderNo
=
"單號:"
;
if
(
TextUtil
.
isNotEmptyOrNullOrUndefined
(
MyOrderManage
.
getInstance
().
getOrderNo
()))
{
if
(
TextUtil
.
isNotEmptyOrNullOrUndefined
(
DoshokuOrder
.
getInstance
().
getOrderNo
()))
{
orderNo
=
"單號:"
+
MyOrderManage
.
getInstance
().
getOrderNo
();
orderNo
=
"單號:"
+
DoshokuOrder
.
getInstance
().
getOrderNo
();
}
}
//訂單信息
//訂單信息
layout
.
addView
(
getDiningTableOrderInfo
(
mContext
,
"餐檯:"
+
tableBean
.
getTableName
(),
"人數:"
+
OpenTableManage
.
getDefault
().
getPeopleNumber
(),
orderNo
,
"日期:"
+
TimeUtils
.
getCurrentTimeInString
(
TimeUtils
.
DEFAULT_DATE_FORMAT
)));
layout
.
addView
(
getDiningTableOrderInfo
(
mContext
,
"餐檯:"
+
tableBean
.
getTableName
(),
"人數:"
+
DoshokuOrder
.
getInstance
().
getOpenTableInfo
().
getPerson
(),
orderNo
,
"日期:"
+
TimeUtils
.
getCurrentTimeInString
(
TimeUtils
.
DEFAULT_DATE_FORMAT
)));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getDiningFoodList
(
mContext
,
foodList
,
printerDeviceBean
,
0
,
false
));
layout
.
addView
(
getDiningFoodList
(
mContext
,
foodList
,
printerDeviceBean
,
0
,
false
));
...
...
print-module/src/main/java/com/joe/print/mvp/print/PrintSlip.java
View file @
f47767b0
...
@@ -6,10 +6,11 @@ import android.view.Gravity;
...
@@ -6,10 +6,11 @@ import android.view.Gravity;
import
android.widget.LinearLayout
;
import
android.widget.LinearLayout
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillingBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillingBean
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.RestaurantExpandInfoUtils
;
import
com.gingersoft.gsa.cloud.base.utils.RestaurantExpandInfoUtils
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
...
@@ -46,8 +47,8 @@ public class PrintSlip extends PrinterRoot {
...
@@ -46,8 +47,8 @@ public class PrintSlip extends PrinterRoot {
@Override
@Override
public
String
getPrintData
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
public
String
getPrintData
(
Context
mContext
,
PrinterDeviceBean
deviceBean
)
{
List
<
OrderDetail
>
foodList
=
MyOrderManage
.
getInstance
().
getOrderFood
List
();
List
<
OrderDetail
>
foodList
=
DoshokuOrder
.
getInstance
().
getShoppingCart
().
getOrderCommodity
List
();
TableBean
.
DataBean
tableBean
=
OpenTableManage
.
getDefault
().
getTableBean
();
TableBean
.
DataBean
tableBean
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
String
stringBuilder
=
"<html><body>"
+
String
stringBuilder
=
"<html><body>"
+
getHtmlPrintHeadInfo
()
+
getHtmlPrintHeadInfo
()
+
...
@@ -69,11 +70,16 @@ public class PrintSlip extends PrinterRoot {
...
@@ -69,11 +70,16 @@ public class PrintSlip extends PrinterRoot {
}
}
private
Bitmap
getBitmap
(
Context
mContext
,
PrinterDeviceBean
printerDeviceBean
)
{
private
Bitmap
getBitmap
(
Context
mContext
,
PrinterDeviceBean
printerDeviceBean
)
{
List
<
OrderDetail
>
foodList
=
MyOrderManage
.
getInstance
().
getOrderFoodList
();
DoshokuOrder
doshokuOrder
=
DoshokuOrder
.
getInstance
();
ShoppingCart
shoppingCart
=
doshokuOrder
.
getShoppingCart
();
List
<
OrderDetail
>
foodList
=
shoppingCart
.
getOrderCommodityList
();
if
(
foodList
==
null
||
foodList
.
size
()
<=
0
)
{
if
(
foodList
==
null
||
foodList
.
size
()
<=
0
)
{
return
null
;
return
null
;
}
}
TableBean
.
DataBean
tableBean
=
OpenTableManage
.
getDefault
().
getTableBean
();
TableBean
.
DataBean
tableBean
=
doshokuOrder
.
getOpenTableInfo
();
LinearLayout
layout
=
new
LinearLayout
(
mContext
);
LinearLayout
layout
=
new
LinearLayout
(
mContext
);
layout
.
setOrientation
(
LinearLayout
.
VERTICAL
);
layout
.
setOrientation
(
LinearLayout
.
VERTICAL
);
...
@@ -83,23 +89,23 @@ public class PrintSlip extends PrinterRoot {
...
@@ -83,23 +89,23 @@ public class PrintSlip extends PrinterRoot {
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getLine
(
mContext
));
//訂單信息
//訂單信息
layout
.
addView
(
getDiningTableOrderInfo
(
mContext
,
"餐檯:"
+
tableBean
.
getTableName
(),
"人數:"
+
OpenTableManage
.
getDefault
().
getPeopleNumber
(),
"單號:"
+
MyOrderManage
.
getInstance
()
.
getOrderNo
(),
"日期:"
+
TimeUtils
.
getCurrentTimeInString
(
TimeUtils
.
DEFAULT_DATE_FORMAT
)));
layout
.
addView
(
getDiningTableOrderInfo
(
mContext
,
"餐檯:"
+
tableBean
.
getTableName
(),
"人數:"
+
doshokuOrder
.
getOpenTableInfo
().
getPerson
(),
"單號:"
+
doshokuOrder
.
getOrderNo
(),
"日期:"
+
TimeUtils
.
getCurrentTimeInString
(
TimeUtils
.
DEFAULT_DATE_FORMAT
)));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getDiningFoodList
(
mContext
,
foodList
,
printerDeviceBean
,
0
,
true
));
layout
.
addView
(
getDiningFoodList
(
mContext
,
foodList
,
printerDeviceBean
,
0
,
true
));
layout
.
addView
(
getHalfLine
(
mContext
));
layout
.
addView
(
getHalfLine
(
mContext
));
List
<
BillingBean
>
billingBeans
=
new
ArrayList
<>();
List
<
BillingBean
>
billingBeans
=
new
ArrayList
<>();
//添加合計項
//添加合計項
billingBeans
.
add
(
new
BillingBean
(
"合計"
,
MyOrderManage
.
getInstance
()
.
getWholeAmount
()));
billingBeans
.
add
(
new
BillingBean
(
"合計"
,
shoppingCart
.
getWholeAmount
()));
//添加其他金額項
//添加其他金額項
if
(
MyOrderManage
.
getInstance
().
getOrderMoney
List
().
size
()
>
0
)
{
if
(
shoppingCart
.
getBillItem
List
().
size
()
>
0
)
{
for
(
Bill
OrderMoney
item
:
MyOrderManage
.
getInstance
().
getOrderMoney
List
())
{
for
(
Bill
Item
item
:
shoppingCart
.
getBillItem
List
())
{
billingBeans
.
add
(
new
BillingBean
(
item
.
getName
(),
item
.
getMoney
()));
billingBeans
.
add
(
new
BillingBean
(
item
.
getName
(),
item
.
getMoney
()));
}
}
}
}
layout
.
addView
(
getDiningBillInfo
(
mContext
,
billingBeans
));
layout
.
addView
(
getDiningBillInfo
(
mContext
,
billingBeans
));
layout
.
addView
(
getHalfLine
(
mContext
));
layout
.
addView
(
getHalfLine
(
mContext
));
layout
.
addView
(
getAmountText
(
mContext
,
"總金額:"
+
MyOrderManage
.
getInstance
()
.
getTotalAmount
()));
layout
.
addView
(
getAmountText
(
mContext
,
"總金額:"
+
shoppingCart
.
getTotalAmount
()));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getLine
(
mContext
));
layout
.
addView
(
getTextView
(
mContext
,
"Thank you!"
,
Gravity
.
CENTER_HORIZONTAL
,
getDimensionPixelSize
(
mContext
,
R
.
dimen
.
dp_8
)));
layout
.
addView
(
getTextView
(
mContext
,
"Thank you!"
,
Gravity
.
CENTER_HORIZONTAL
,
getDimensionPixelSize
(
mContext
,
R
.
dimen
.
dp_8
)));
layout
.
addView
(
getTextView
(
mContext
,
TimeUtils
.
getCurrentTimeInString
(
TimeUtils
.
DEFAULT_DATE_FORMAT
),
Gravity
.
CENTER_HORIZONTAL
,
getDimensionPixelSize
(
mContext
,
R
.
dimen
.
dp_8
)));
layout
.
addView
(
getTextView
(
mContext
,
TimeUtils
.
getCurrentTimeInString
(
TimeUtils
.
DEFAULT_DATE_FORMAT
),
Gravity
.
CENTER_HORIZONTAL
,
getDimensionPixelSize
(
mContext
,
R
.
dimen
.
dp_8
)));
...
...
print-module/src/main/java/com/joe/print/mvp/print/PrinterRoot.java
View file @
f47767b0
...
@@ -30,10 +30,10 @@ import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
...
@@ -30,10 +30,10 @@ import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import
com.gingersoft.gsa.cloud.base.common.bean.BillingBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.BillingBean
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.order.adapter.print.FoodAdapter
;
import
com.gingersoft.gsa.cloud.base.order.adapter.print.FoodAdapter
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.threadPool.ThreadPoolManager
;
import
com.gingersoft.gsa.cloud.base.threadPool.ThreadPoolManager
;
import
com.gingersoft.gsa.cloud.base.utils.AidlUtil
;
import
com.gingersoft.gsa.cloud.base.utils.AidlUtil
;
...
@@ -851,35 +851,35 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
...
@@ -851,35 +851,35 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
protected
String
getHtmlPrintHeadOrderInfo
(
TableBean
.
DataBean
tableBean
)
{
protected
String
getHtmlPrintHeadOrderInfo
(
TableBean
.
DataBean
tableBean
)
{
String
orderNum
=
"單號:"
;
String
orderNum
=
"單號:"
;
if
(
TextUtil
.
isNotEmptyOrNullOrUndefined
(
MyOrderManage
.
getInstance
().
getOrderNo
()))
{
if
(
TextUtil
.
isNotEmptyOrNullOrUndefined
(
DoshokuOrder
.
getInstance
().
getOrderNo
()))
{
orderNum
=
"單號:"
+
MyOrderManage
.
getInstance
().
getOrderNo
();
orderNum
=
"單號:"
+
DoshokuOrder
.
getInstance
().
getOrderNo
();
}
}
return
getWholeLine
()
+
return
getWholeLine
()
+
getPLable
(
"餐檯:"
+
tableBean
.
getTableName
(),
HTML_PRINT_GRAVITY_LEFT
)
+
getPLable
(
"餐檯:"
+
tableBean
.
getTableName
(),
HTML_PRINT_GRAVITY_LEFT
)
+
getPLable
(
"人數:"
+
OpenTableManage
.
getDefault
().
getPeopleNumber
(),
HTML_PRINT_GRAVITY_LEFT
)
+
getPLable
(
"人數:"
+
DoshokuOrder
.
getInstance
().
getOpenTableInfo
().
getPerson
(),
HTML_PRINT_GRAVITY_LEFT
)
+
getPLable
(
orderNum
,
HTML_PRINT_GRAVITY_LEFT
)
+
getPLable
(
orderNum
,
HTML_PRINT_GRAVITY_LEFT
)
+
getPLable
(
"日期:"
+
TimeUtils
.
parseTimeRepeat
(
tableBean
.
getCreateTime
(),
TimeUtils
.
DEFAULT_DATE_FORMAT
),
HTML_PRINT_GRAVITY_LEFT
)
+
getPLable
(
"日期:"
+
TimeUtils
.
parseTimeRepeat
(
tableBean
.
getCreateTime
(),
TimeUtils
.
DEFAULT_DATE_FORMAT
),
HTML_PRINT_GRAVITY_LEFT
)
+
getWholeLine
();
getWholeLine
();
}
}
protected
String
getHtmlBillInfo
()
{
protected
String
getHtmlBillInfo
()
{
//添加合計項
//添加合計項
StringBuilder
amountStr
=
new
StringBuilder
(
getPLable
(
"合計 "
+
MyOrderManage
.
getInstance
().
getWholeAmount
(),
HTML_PRINT_GRAVITY_RIGHT
));
StringBuilder
amountStr
=
new
StringBuilder
(
getPLable
(
"合計 "
+
DoshokuOrder
.
getInstance
().
getShoppingCart
().
getWholeAmount
(),
HTML_PRINT_GRAVITY_RIGHT
));
//添加其他金額項
//添加其他金額項
if
(
MyOrderManage
.
getInstance
().
getOrderMoney
List
().
size
()
>
0
)
{
if
(
DoshokuOrder
.
getInstance
().
getShoppingCart
().
getBillItem
List
().
size
()
>
0
)
{
for
(
Bill
OrderMoney
item
:
MyOrderManage
.
getInstance
().
getOrderMoney
List
())
{
for
(
Bill
Item
item
:
DoshokuOrder
.
getInstance
().
getShoppingCart
().
getBillItem
List
())
{
amountStr
.
append
(
getPLable
(
item
.
getName
()
+
" "
+
item
.
getMoney
(),
HTML_PRINT_GRAVITY_RIGHT
));
amountStr
.
append
(
getPLable
(
item
.
getName
()
+
" "
+
item
.
getMoney
(),
HTML_PRINT_GRAVITY_RIGHT
));
}
}
}
}
amountStr
.
append
(
getLine
(
21
,
HTML_PRINT_GRAVITY_RIGHT
));
amountStr
.
append
(
getLine
(
21
,
HTML_PRINT_GRAVITY_RIGHT
));
amountStr
.
append
(
"總金額 "
).
append
(
MyOrderManage
.
getInstance
().
getTotalAmount
());
amountStr
.
append
(
"總金額 "
).
append
(
DoshokuOrder
.
getInstance
().
getShoppingCart
().
getTotalAmount
());
return
getLine
(
21
,
HTML_PRINT_GRAVITY_RIGHT
)
return
getLine
(
21
,
HTML_PRINT_GRAVITY_RIGHT
)
+
amountStr
;
+
amountStr
;
}
}
protected
String
getHtmlBillPayInfo
()
{
protected
String
getHtmlBillPayInfo
()
{
StringBuilder
payInfo
=
new
StringBuilder
();
StringBuilder
payInfo
=
new
StringBuilder
();
for
(
PayMethod
payMethod
:
MyOrderManage
.
getInstance
().
getBillMoney
())
{
for
(
PayMethod
payMethod
:
DoshokuOrder
.
getInstance
().
getBillMoney
())
{
payInfo
.
append
(
getPLable
(
payMethod
.
getPayName
()
+
" $"
+
payMethod
.
getPayMoney
(),
HTML_PRINT_GRAVITY_LEFT
));
payInfo
.
append
(
getPLable
(
payMethod
.
getPayName
()
+
" $"
+
payMethod
.
getPayMoney
(),
HTML_PRINT_GRAVITY_LEFT
));
}
}
return
getWholeLine
()
+
return
getWholeLine
()
+
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/MealStandModel.java
View file @
f47767b0
...
@@ -2,9 +2,8 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
...
@@ -2,9 +2,8 @@ package com.gingersoft.gsa.cloud.table.mvp.model;
import
android.app.Application
;
import
android.app.Application
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.database.bean.ComboItem
;
import
com.gingersoft.gsa.cloud.database.bean.ComboItem
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
com.gingersoft.gsa.cloud.database.bean.FoodCombo
;
import
com.gingersoft.gsa.cloud.database.bean.FoodCombo
;
...
@@ -205,7 +204,7 @@ public class MealStandModel extends BaseModel implements MealStandContract.Model
...
@@ -205,7 +204,7 @@ public class MealStandModel extends BaseModel implements MealStandContract.Model
@Override
@Override
public
Observable
<
BaseOrderRespose
>
apply
(
BaseResult
info
)
throws
Exception
{
public
Observable
<
BaseOrderRespose
>
apply
(
BaseResult
info
)
throws
Exception
{
if
(
info
!=
null
&&
info
.
isSuccess
())
{
if
(
info
!=
null
&&
info
.
isSuccess
())
{
return
loadOrder
(
MyOrderManage
.
getInstance
().
getOrderId
());
return
loadOrder
(
DoshokuOrder
.
getInstance
().
getOrderId
());
}
}
BaseOrderRespose
baseOrderRespose
=
new
BaseOrderRespose
();
BaseOrderRespose
baseOrderRespose
=
new
BaseOrderRespose
();
baseOrderRespose
.
setSuccess
(
info
.
isSuccess
());
baseOrderRespose
.
setSuccess
(
info
.
isSuccess
());
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/OrderContentModel.java
View file @
f47767b0
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
;
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
;
import
android.app.Application
;
import
android.app.Application
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
...
@@ -94,21 +92,21 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
...
@@ -94,21 +92,21 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
if
(
info
.
getData
()
!=
null
)
{
if
(
info
.
getData
()
!=
null
)
{
if
(
info
.
getData
()
instanceof
Double
)
{
if
(
info
.
getData
()
instanceof
Double
)
{
//未上線,避免正式版閃退
//未上線,避免正式版閃退
MyOrderManage
.
getInstance
().
setOrderId
((
Double
)
info
.
getData
());
DoshokuOrder
.
getInstance
().
setOrderId
((
long
)
info
.
getData
());
MyOrderManage
.
getInstance
().
getOrderBean
().
setOrderNo
(((
Double
)
info
.
getData
()).
longValue
()
+
""
);
DoshokuOrder
.
getInstance
().
setOrderNo
(((
Double
)
info
.
getData
()).
longValue
()
+
""
);
}
else
{
}
else
{
LinkedTreeMap
tm
=
(
LinkedTreeMap
)
info
.
getData
();
LinkedTreeMap
tm
=
(
LinkedTreeMap
)
info
.
getData
();
for
(
Object
o
:
tm
.
keySet
())
{
for
(
Object
o
:
tm
.
keySet
())
{
String
key
=
(
String
)
o
;
String
key
=
(
String
)
o
;
if
(
key
.
equals
(
"id"
))
{
if
(
key
.
equals
(
"id"
))
{
MyOrderManage
.
getInstance
().
setOrderId
((
Double
)
tm
.
get
(
key
));
DoshokuOrder
.
getInstance
().
setOrderId
((
long
)
tm
.
get
(
key
));
}
else
if
(
key
.
equals
(
"orderNo"
))
{
}
else
if
(
key
.
equals
(
"orderNo"
))
{
MyOrderManage
.
getInstance
().
getOrderBean
().
setOrderNo
((
String
)
tm
.
get
(
key
));
DoshokuOrder
.
getInstance
().
setOrderNo
((
String
)
tm
.
get
(
key
));
}
}
}
}
}
}
}
}
return
loadOrder
(
MyOrderManage
.
getInstance
().
getOrderId
());
return
loadOrder
(
DoshokuOrder
.
getInstance
().
getOrderId
());
}
}
BaseOrderRespose
baseOrderRespose
=
new
BaseOrderRespose
();
BaseOrderRespose
baseOrderRespose
=
new
BaseOrderRespose
();
baseOrderRespose
.
setSuccess
(
info
.
isSuccess
());
baseOrderRespose
.
setSuccess
(
info
.
isSuccess
());
...
@@ -128,7 +126,7 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
...
@@ -128,7 +126,7 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
public
Observable
<
BaseOrderRespose
>
apply
(
BaseResult
info
)
throws
Exception
{
public
Observable
<
BaseOrderRespose
>
apply
(
BaseResult
info
)
throws
Exception
{
if
(
info
!=
null
&&
info
.
isSuccess
())
{
if
(
info
!=
null
&&
info
.
isSuccess
())
{
saveCreateTime
(
info
.
getSysTime
());
saveCreateTime
(
info
.
getSysTime
());
return
loadOrder
(
MyOrderManage
.
getInstance
().
getOrderId
());
return
loadOrder
(
DoshokuOrder
.
getInstance
().
getOrderId
());
}
}
BaseOrderRespose
baseOrderRespose
=
new
BaseOrderRespose
();
BaseOrderRespose
baseOrderRespose
=
new
BaseOrderRespose
();
baseOrderRespose
.
setSuccess
(
info
.
isSuccess
());
baseOrderRespose
.
setSuccess
(
info
.
isSuccess
());
...
@@ -165,7 +163,7 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
...
@@ -165,7 +163,7 @@ public class OrderContentModel extends BaseModel implements OrderContentContract
@Override
@Override
public
Observable
<
BaseOrderRespose
>
apply
(
BaseOrderRespose
info
)
throws
Exception
{
public
Observable
<
BaseOrderRespose
>
apply
(
BaseOrderRespose
info
)
throws
Exception
{
if
(
info
!=
null
&&
info
.
isSuccess
())
{
if
(
info
!=
null
&&
info
.
isSuccess
())
{
return
loadOrder
(
MyOrderManage
.
getInstance
().
getOrderId
());
return
loadOrder
(
DoshokuOrder
.
getInstance
().
getOrderId
());
}
}
return
Observable
.
just
(
info
);
return
Observable
.
just
(
info
);
}
}
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/cart/DoshokuCart.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
cart
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.order.bean.DeleteOrderRequest
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.table.mvp.model.discount.CouponDiscount
;
import
com.gingersoft.gsa.cloud.table.mvp.model.discount.MemberDiscount
;
import
com.gingersoft.gsa.cloud.table.mvp.model.discount.MultyDiscount
;
import
com.gingersoft.gsa.cloud.table.mvp.model.discount.NomalDiscount
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-24
* 修订历史:2020-09-24
* 描述:堂食下單購物車
*/
public
class
DoshokuCart
extends
ShoppingCart
{
/**
* 食品列表
*/
private
List
<
OrderDetail
>
orderFoodList
=
new
ArrayList
<>();
/**
* 所有折扣實體
*/
private
MultyDiscount
multyDiscounts
;
/**
* 記錄刪除的食品以及原因
*/
private
List
<
DeleteOrderRequest
>
deleteOrders
;
/**
* 服務費
*/
private
Double
serviceCharge
;
public
MultyDiscount
addNomalDiscount
(
Discount
discount
)
{
multyDiscounts
=
new
NomalDiscount
(
multyDiscounts
,
discount
);
return
multyDiscounts
;
}
public
MultyDiscount
addMemberDiscount
(
MemberInfo
discount
)
{
multyDiscounts
=
new
MemberDiscount
(
multyDiscounts
,
discount
);
return
multyDiscounts
;
}
public
MultyDiscount
addCouponDiscount
(
CouponDiscountBean
discount
)
{
multyDiscounts
=
new
CouponDiscount
(
multyDiscounts
,
discount
);
return
multyDiscounts
;
}
@Override
public
void
pay
(
double
money
)
{
super
.
pay
(
money
);
}
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/cart/ShoppingCart.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
cart
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
java.util.List
;
import
io.reactivex.Observable
;
import
io.reactivex.SingleObserver
;
import
io.reactivex.disposables.Disposable
;
import
lombok.Data
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-19
* 修订历史:2020-09-19
* 描述: 購物車抽象類
*/
@Data
public
abstract
class
ShoppingCart
{
/**
* 合計
*/
private
double
wholeAmount
=
0.0
;
/**
* 總金額
*/
private
double
totalAmount
=
0.0
;
public
static
void
main
(
String
[]
arg
)
{
Discount
discount
=
new
Discount
();
discount
.
setType
(
1
);
discount
.
setRemark
(
"9折"
);
discount
.
setDiscount_value
(
10
);
MemberInfo
memberDiscount
=
new
MemberInfo
();
memberDiscount
.
setMemberName
(
"斯八達"
);
memberDiscount
.
setMemberDiscount
(
20
);
CouponDiscountBean
couponDiscount
=
new
CouponDiscountBean
();
couponDiscount
.
setCouponType
((
byte
)
2
);
couponDiscount
.
setCouponTypeName1
(
"立減8元"
);
couponDiscount
.
setAmount
(
8
);
// NomalDiscount nomalDiscountBean = (NomalDiscount) shoppingCart.addNomalDiscount(discount);
// MemberDiscount memberDiscountBean = (MemberDiscount) shoppingCart.addMemberDiscount(memberDiscount);
// CouponDiscount couponDiscountBean = (CouponDiscount) shoppingCart.addCouponDiscount(couponDiscount);
//
// MultyDiscount multyDiscount = shoppingCart.getMultyDiscounts();
// double money = multyDiscount.calculate(100);
//
// System.out.println("calculate : " + money);
// System.out.println("NomalDiscount discountMoney : " + nomalDiscountBean.getDiscountMoney());
// System.out.println("MemberDiscount discountMoney : " + memberDiscountBean.getDiscountMoney());
// System.out.println("CouponDiscount discountMoney : " + couponDiscountBean.getDiscountMoney());
String
[]
strs
=
new
String
[]{
"jack"
,
"ann"
,
"one"
,
"two"
,
"three"
,
"four"
};
Observable
.
fromArray
(
strs
)
.
toSortedList
()
//自然排序 ,升序
.
subscribe
(
new
SingleObserver
<
List
<
String
>>()
{
@Override
public
void
onSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onSuccess
(
List
<
String
>
list
)
{
if
(
list
!=
null
)
{
for
(
int
i
=
0
;
i
<
list
.
size
();
i
++)
{
System
.
out
.
println
(
"toList item======="
+
list
.
get
(
i
));
}
}
}
@Override
public
void
onError
(
Throwable
e
)
{
}
});
}
/**
* 具體支付類需要實現的方法
*/
public
void
pay
(
double
money
)
{
}
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/cart/TakeawayCart.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
cart
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-24
* 修订历史:2020-09-24
* 描述:外賣下單購物車
*/
public
class
TakeawayCart
extends
ShoppingCart
{
@Override
public
void
pay
(
double
money
)
{
super
.
pay
(
money
);
}
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/discount/CouponDiscount.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
discount
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
lombok.Getter
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-19
* 修订历史:2020-09-19
* 描述: 優惠券折扣{@link CouponDiscountBean}
*/
@Getter
public
class
CouponDiscount
extends
MultyDiscount
{
private
CouponDiscountBean
couponDiscount
;
/**
* 本次折扣金额
*/
private
Double
discountMoney
;
public
CouponDiscount
(
MultyDiscount
nextMultyDiscount
,
CouponDiscountBean
couponDiscount
)
{
super
(
nextMultyDiscount
);
this
.
couponDiscount
=
couponDiscount
;
}
@Override
public
double
calculate
(
double
money
)
{
if
(
couponDiscount
!=
null
)
{
//配置了消費滿減
double
totalAmount
=
money
;
if
(
couponDiscount
.
getSpend
()
!=
null
&&
totalAmount
>
couponDiscount
.
getSpend
())
{
//未滿足消費滿條件
}
else
{
discountMoney
=
calculationCoupon
(
couponDiscount
,
money
);
money
=
MoneyUtil
.
sum
(
money
,
discountMoney
);
}
}
return
super
.
calculate
(
money
);
}
/**
* 計算優惠券金額
*
* @param couponDiscount
* @param sourceMoney
* @return
*/
public
static
double
calculationCoupon
(
CouponDiscountBean
couponDiscount
,
double
sourceMoney
)
{
double
discountMoney
=
0
;
if
(
couponDiscount
.
getCouponType
()
==
2
)
{
//金額折扣
discountMoney
=
couponDiscount
.
getAmount
();
}
else
{
//百分比折扣
discountMoney
=
MoneyUtil
.
divide
(
MoneyUtil
.
multiply
(
sourceMoney
,
couponDiscount
.
getDiscount
()),
100
).
doubleValue
();
}
if
(
sourceMoney
<
discountMoney
)
{
//折扣金額不能超出總額
discountMoney
=
sourceMoney
;
}
return
-
MoneyUtil
.
get_ItemDecimals_money
(
Math
.
abs
(
discountMoney
));
}
/**
* 獲取優惠券折扣ID
*
* @return
*/
public
Long
getCouponDiscountId
()
{
if
(
couponDiscount
!=
null
)
{
return
couponDiscount
.
getId
();
}
return
null
;
}
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/discount/MemberDiscount.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
discount
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
lombok.Getter
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-19
* 修订历史:2020-09-19
* 描述: 會員折扣{@link MemberInfo#memberDiscount}
*/
@Getter
public
class
MemberDiscount
extends
MultyDiscount
{
private
MemberInfo
memberDiscount
;
/**
* 本次折扣金额
*/
private
Double
discountMoney
;
public
MemberDiscount
(
MultyDiscount
nextMultyDiscount
,
MemberInfo
memberDiscount
)
{
super
(
nextMultyDiscount
);
this
.
memberDiscount
=
memberDiscount
;
}
@Override
public
double
calculate
(
double
money
)
{
if
(
memberDiscount
!=
null
)
{
discountMoney
=
calculationMemberDiscount
(
memberDiscount
.
getMemberDiscount
(),
money
);
money
=
MoneyUtil
.
sum
(
money
,
discountMoney
);
}
return
super
.
calculate
(
money
);
}
public
static
double
calculationMemberDiscount
(
int
discountRate
,
double
sourceMoney
)
{
double
discountMoney
=
MoneyUtil
.
divide
(
MoneyUtil
.
multiply
(
sourceMoney
,
discountRate
),
100
).
doubleValue
();
if
(
sourceMoney
<
discountMoney
)
{
//折扣金額不能超出總額
discountMoney
=
sourceMoney
;
}
return
-
MoneyUtil
.
get_ItemDecimals_money
(
Math
.
abs
(
discountMoney
));
}
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/discount/MultyDiscount.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
discount
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-19
* 修订历史:2020-09-19
* 描述: 折扣抽象類{@link MultyDiscount}
*/
public
abstract
class
MultyDiscount
{
/**責任鏈中的下一個對象*/
protected
MultyDiscount
nextMultyDiscount
;
public
MultyDiscount
(
MultyDiscount
nextMultyDiscount
)
{
this
.
nextMultyDiscount
=
nextMultyDiscount
;
}
public
double
calculate
(
double
money
)
{
if
(
nextMultyDiscount
!=
null
)
{
return
nextMultyDiscount
.
calculate
(
money
);
}
return
money
;
}
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/model/discount/NomalDiscount.java
deleted
100644 → 0
View file @
1a28da3b
package
com
.
gingersoft
.
gsa
.
cloud
.
table
.
mvp
.
model
.
discount
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.database.bean.Discount
;
import
lombok.Getter
;
/**
* 作者:ELEGANT_BIN
* 版本:1.6.0
* 创建日期:2020-09-19
* 修订历史:2020-09-19
* 描述: 整單折扣{@link Discount}
*/
@Getter
public
class
NomalDiscount
extends
MultyDiscount
{
private
Discount
discount
;
/**
* 本次折扣金额
*/
private
Double
discountMoney
;
public
NomalDiscount
(
MultyDiscount
nextMultyDiscount
,
Discount
discount
)
{
super
(
nextMultyDiscount
);
this
.
discount
=
discount
;
}
@Override
public
double
calculate
(
double
money
)
{
if
(
discount
!=
null
){
discountMoney
=
calculationDiscount
(
discount
,
money
);
money
=
MoneyUtil
.
sum
(
money
,
discountMoney
);
}
return
super
.
calculate
(
money
);
}
/**
* 計算整单折扣金額
*
* @param discount
* @param sourceMoney
* @return
*/
public
static
double
calculationDiscount
(
Discount
discount
,
double
sourceMoney
)
{
double
discountMoney
;
if
(
discount
.
getType
()
==
0
)
{
//金額折扣
discountMoney
=
discount
.
getAmount
();
}
else
{
//百分比折扣
discountMoney
=
MoneyUtil
.
divide
(
MoneyUtil
.
multiply
(
sourceMoney
,
discount
.
getDiscount_value
()),
100
).
doubleValue
();
}
if
(
sourceMoney
<
discountMoney
)
{
//折扣金額不能超出總額
discountMoney
=
sourceMoney
;
}
return
-
MoneyUtil
.
get_ItemDecimals_money
(
Math
.
abs
(
discountMoney
));
}
}
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/BaseOrderPresenter.java
View file @
f47767b0
...
@@ -8,12 +8,11 @@ import android.widget.TextView;
...
@@ -8,12 +8,11 @@ import android.widget.TextView;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.RoundingItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.RoundingItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.ServiceChargeItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.ServiceChargeItem
;
...
@@ -58,6 +57,7 @@ import javax.inject.Inject;
...
@@ -58,6 +57,7 @@ import javax.inject.Inject;
import
io.reactivex.Observable
;
import
io.reactivex.Observable
;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.disposables.Disposable
;
import
io.reactivex.functions.Consumer
;
import
io.reactivex.functions.Consumer
;
import
io.reactivex.functions.Function
;
import
io.reactivex.functions.Function
;
import
io.reactivex.schedulers.Schedulers
;
import
io.reactivex.schedulers.Schedulers
;
...
@@ -94,38 +94,31 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -94,38 +94,31 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
private
OrderContentActivity
mOrderContentActivity
;
private
OrderContentActivity
mOrderContentActivity
;
private
MealStandPresenter
mMealStandPresenter
;
private
MealStandPresenter
mMealStandPresenter
;
//订单数据管理类
/**
protected
MyOrderManage
myOrderManage
;
* 訂單美食適配器
// protected OpenTableManage openTableManage;
*/
//訂單食品適配器
protected
SelectMealAdapter
mSelectMealAdapter
;
protected
SelectMealAdapter
mSelectMealAdapter
;
// protected List<OrderDetail> mOrderFoodList;
/**
* 美食列表
//整單相關金額適配器
*/
protected
List
<
OrderDetail
>
mOrderMealList
;
/**
* 賬單項適配器
*/
protected
OrderMoneyAdapter
mOrderMoneyAdapter
;
protected
OrderMoneyAdapter
mOrderMoneyAdapter
;
// protected List<BillOrderMoney> mOrderMoneyList;
protected
OrderDetail
mCurrentOrderDetailBean
;
//選中操作的食品下標
protected
int
orderSelectPosition
=
-
1
;
//币種
protected
String
cashStr
=
"$"
;
protected
String
serviceChargeStr
=
"服務費"
;
protected
String
roundingStr
=
"賬單小數"
;
private
final
String
noFoodDeliveryTip
=
"賬單沒有食品,是否開台?"
;
/**
/**
*
訂單信息
*
賬單項列表
*/
*/
protected
BaseOrder
mOrder
;
protected
List
<
BillItem
>
mBillItemList
;
/**
/**
* 餐檯信息
* 餐檯信息
*/
*/
public
TableBean
.
DataBean
mTableInfo
;
public
TableBean
.
DataBean
mTableInfo
;
/**
/**
* 訂單信息
*/
protected
BaseOrder
mOrder
;
/**
* 堂食訂單信息
* 堂食訂單信息
*/
*/
protected
DoshokuOrder
mDoshokuOrder
;
protected
DoshokuOrder
mDoshokuOrder
;
...
@@ -138,13 +131,22 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -138,13 +131,22 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
*/
*/
protected
ShoppingCart
mShoppingCart
;
protected
ShoppingCart
mShoppingCart
;
/**
/**
* 美食列表
* 已下單信息
*/
protected
List
<
OrderDetail
>
mOrderMealList
;
/**
* 賬單項列表
*/
*/
protected
List
<
BillItem
>
mBillItemList
;
private
OrderBean
orderPlaced
;
protected
OrderDetail
mCurrentOrderDetailBean
;
//選中操作的食品下標
protected
int
orderSelectPosition
=
-
1
;
//币種
protected
String
cashStr
=
"$"
;
protected
String
serviceChargeStr
=
"服務費"
;
protected
String
roundingStr
=
"賬單小數"
;
private
final
String
noFoodDeliveryTip
=
"賬單沒有食品,是否開台?"
;
private
Disposable
disposable
;
public
abstract
void
createOrder
(
boolean
isPrint
,
Class
afterToActivity
);
public
abstract
void
createOrder
(
boolean
isPrint
,
Class
afterToActivity
);
...
@@ -164,10 +166,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -164,10 +166,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
this
.
mModel
=
(
M
)
model
;
this
.
mModel
=
(
M
)
model
;
this
.
mRootView
=
(
V
)
rootView
;
this
.
mRootView
=
(
V
)
rootView
;
this
.
mBaseOrderPresenter
=
this
;
this
.
mBaseOrderPresenter
=
this
;
this
.
IActivity
=
(
Activity
)
mRootView
;
this
.
IActivity
=
(
Activity
)
mRootView
;
// this.openTableManage = mDoshokuOrder.getOpenTableInfo();
this
.
myOrderManage
=
MyOrderManage
.
getInstance
();
if
(
IActivity
instanceof
OrderContentActivity
)
{
if
(
IActivity
instanceof
OrderContentActivity
)
{
mOrderContentActivity
=
(
OrderContentActivity
)
IActivity
;
mOrderContentActivity
=
(
OrderContentActivity
)
IActivity
;
...
@@ -176,9 +175,8 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -176,9 +175,8 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
mMealStandPresenter
=
(
MealStandPresenter
)
this
;
mMealStandPresenter
=
(
MealStandPresenter
)
this
;
}
}
/****************************************************/
mOrder
=
OrderFactory
.
createOrder
(
FoodSummaryConstans
.
RESTAURANT_MODE
);
mOrder
=
OrderFactory
.
createOrder
(
FoodSummaryConstans
.
RESTAURANT_MODE
);
if
(
BaseOrder
.
orderType
==
FoodSummaryConstans
.
RESTAURANT_MODE
)
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
RESTAURANT_MODE
)
)
{
mDoshokuOrder
=
(
DoshokuOrder
)
mOrder
;
mDoshokuOrder
=
(
DoshokuOrder
)
mOrder
;
mTableInfo
=
mDoshokuOrder
.
getOpenTableInfo
();
mTableInfo
=
mDoshokuOrder
.
getOpenTableInfo
();
}
else
{
}
else
{
...
@@ -187,24 +185,16 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -187,24 +185,16 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
mShoppingCart
=
mOrder
.
getShoppingCart
();
mShoppingCart
=
mOrder
.
getShoppingCart
();
mOrderMealList
=
mShoppingCart
.
getOrderCommodityList
();
mOrderMealList
=
mShoppingCart
.
getOrderCommodityList
();
mBillItemList
=
mShoppingCart
.
getBillItemList
();
mBillItemList
=
mShoppingCart
.
getBillItemList
();
/****************************************************/
if
(
mMealStandPresenter
!=
null
)
{
orderPlaced
=
mDoshokuOrder
.
getOrderPlaced
();
}
resetSelected
();
resetSelected
();
initOrderAdapter
();
initOrderAdapter
();
initItemClickListener
();
initItemClickListener
();
// if (!containsTableService()) {
// addTableServiceAmount();
// }
// if (this instanceof MealStandPresenter) {
// addSentOrderDiscount();
// addOrderRounding();
// //設置賬單總金額
// myOrderManage.setTotalAmount(getTotalAmount());
// } else {
// updateBillOrderItem();
updateBillInfo
();
updateBillInfo
();
// }
}
}
@Override
@Override
...
@@ -213,23 +203,31 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -213,23 +203,31 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
this
.
mErrorHandler
=
null
;
this
.
mErrorHandler
=
null
;
this
.
mAppManager
=
null
;
this
.
mAppManager
=
null
;
this
.
mApplication
=
null
;
this
.
mApplication
=
null
;
if
(
disposable
!=
null
&&
!
disposable
.
isDisposed
())
{
disposable
.
dispose
();
}
}
}
/**
/**
* 更新賬單信息
* 更新賬單信息
* 1、更新合計
* 1、更新食品折扣
* 2、更新食品折扣
* 2、更新合計
* 3、更新服務費項
* 3、更新食品折扣
* 4、更新賬單折扣項{@link NomalDiscount}
* 4、更新服務費項
* 5、更新賬單小數項
* 5、更新賬單折扣項{@link NomalDiscount}
* 6、總金額
* 6、更新賬單小數項
* 7、總金額
*/
*/
public
void
updateBillInfo
()
{
public
void
updateBillInfo
()
{
double
wholeAmount
=
getFoodTotal
();
mShoppingCart
.
resetBeforeBillCalculation
();
//更新食品折扣
updateFoodDiscount
();
//更新合計
//更新合計
double
wholeAmount
=
getFoodTotal
();
mShoppingCart
.
setWholeAmount
(
wholeAmount
);
mShoppingCart
.
setWholeAmount
(
wholeAmount
);
Observable
.
just
(
wholeAmount
)
disposable
=
Observable
.
just
(
wholeAmount
)
.
subscribeOn
(
Schedulers
.
computation
())
.
subscribeOn
(
Schedulers
.
computation
())
/**
/**
* 計算服務費
* 計算服務費
...
@@ -237,26 +235,13 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -237,26 +235,13 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
.
map
(
new
Function
<
Double
,
Double
>()
{
.
map
(
new
Function
<
Double
,
Double
>()
{
@Override
@Override
public
Double
apply
(
Double
totalAmount
)
throws
Exception
{
public
Double
apply
(
Double
totalAmount
)
throws
Exception
{
ServiceChargeItem
serviceChargeItem
=
(
ServiceChargeItem
)
findBillItemByClass
(
ServiceChargeItem
.
class
);
int
serviceCharge
=
mDoshokuOrder
.
getOpenTableInfo
().
getServiceCharge
();
int
serviceCharge
=
mDoshokuOrder
.
getOpenTableInfo
().
getServiceCharge
();
if
(
serviceChargeItem
!=
null
)
{
if
(
serviceCharge
>
0
)
{
totalAmount
=
serviceChargeItem
.
updateBillItem
(
totalAmount
,
serviceCharge
);
ServiceChargeItem
item
=
new
ServiceChargeItem
(
serviceChargeStr
);
if
(
Double
.
doubleToLongBits
(
totalAmount
)
!=
0.0
)
{
totalAmount
=
item
.
updateBillItem
(
totalAmount
,
serviceCharge
);
//更新服務費
if
(
Double
.
doubleToLongBits
(
item
.
getMoney
())
!=
0.0
)
{
mShoppingCart
.
setServiceCharge
(
totalAmount
);
mBillItemList
.
add
(
item
);
}
else
{
mShoppingCart
.
setServiceCharge
(
item
.
getMoney
());
//刪除服務費
mBillItemList
.
remove
(
serviceChargeItem
);
mShoppingCart
.
setServiceCharge
(
null
);
}
}
else
{
if
(
serviceCharge
!=
0
)
{
ServiceChargeItem
item
=
new
ServiceChargeItem
(
serviceChargeStr
);
totalAmount
=
item
.
updateBillItem
(
totalAmount
,
serviceCharge
);
if
(
Double
.
doubleToLongBits
(
totalAmount
)
!=
0.0
)
{
mBillItemList
.
add
(
item
);
mShoppingCart
.
setServiceCharge
(
item
.
getMoney
());
}
}
}
}
}
return
totalAmount
;
return
totalAmount
;
...
@@ -268,15 +253,53 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -268,15 +253,53 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
.
map
(
new
Function
<
Double
,
Double
>()
{
.
map
(
new
Function
<
Double
,
Double
>()
{
@Override
@Override
public
Double
apply
(
Double
totalAmount
)
throws
Exception
{
public
Double
apply
(
Double
totalAmount
)
throws
Exception
{
double
discountableMoney
=
getDiscountableFoodTotal2
();
if
(
orderPlaced
!=
null
)
{
boolean
calculatedDiscount
=
false
;
//添加已送單折扣
for
(
BillItem
item
:
mBillItemList
)
{
List
<
OrderDiscount
.
Respose
>
orderDiscounts
=
orderPlaced
.
getDiscountDetails
();
if
(
item
instanceof
DiscountItem
&&
calculatedDiscount
==
false
)
{
if
(
orderDiscounts
!=
null
)
{
calculatedDiscount
=
true
;
for
(
OrderDiscount
.
Respose
orderDiscount
:
orderDiscounts
)
{
//調用折扣鏈進行計算
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
ORDER_DISCOUNT
)
{
totalAmount
=
mShoppingCart
.
calculateLinkedDiscounts
(
discountableMoney
);
//整單折扣
Discount
discount
=
new
Discount
();
discount
.
setId
(
orderDiscount
.
getDiscountId
());
discount
.
setRemark
(
orderDiscount
.
getRemark
());
if
(
orderDiscount
.
getDiscountValue
()
!=
0
)
{
//百分比折扣
discount
.
setType
(
1
);
discount
.
setDiscount_value
(
orderDiscount
.
getDiscountValue
());
}
if
(
orderDiscount
.
getDiscountAmount
()
!=
0
)
{
//金額折扣
discount
.
setType
(
0
);
discount
.
setAmount
(
orderDiscount
.
getDiscountAmount
());
}
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createNomalDiscount
(
discount
));
}
else
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
MEMBER_DISCOUNT
)
{
//會員折扣
MemberInfo
memberInfo
=
mDoshokuOrder
.
getMemberInfo
();
if
(
memberInfo
!=
null
)
{
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createMemberDiscount
(
memberInfo
));
}
}
else
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
COUPON_DISCOUNT
)
{
//優惠券折扣
CouponDiscountBean
couponDiscount
=
new
CouponDiscountBean
();
couponDiscount
.
setCouponTypeName1
(
orderDiscount
.
getRemark
());
couponDiscount
.
setCouponTypeName2
(
orderDiscount
.
getRemark2
());
couponDiscount
.
setCouponTypeName3
(
orderDiscount
.
getRemark3
());
couponDiscount
.
setAccumulate
(
orderDiscount
.
getAccumulate
());
couponDiscount
.
setSpend
(
orderDiscount
.
getSpend
());
couponDiscount
.
setDiscount
(
orderDiscount
.
getDiscountValue
());
couponDiscount
.
setAmount
(
orderDiscount
.
getDiscountAmount
());
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createCouponDiscount
(
couponDiscount
));
}
}
}
}
}
}
double
discountableMoney
=
getDiscountableFoodTotal2
();
if
(
discountableMoney
>
0
&&
mShoppingCart
.
getMultyDiscountList
().
size
()
>
0
)
{
//調用折扣鏈進行計算
totalAmount
=
MoneyUtil
.
sub
(
totalAmount
,
mShoppingCart
.
calculateLinkedDiscounts
(
discountableMoney
));
}
return
totalAmount
;
return
totalAmount
;
}
}
})
})
...
@@ -287,21 +310,10 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -287,21 +310,10 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
@Override
@Override
public
Double
apply
(
Double
totalAmount
)
throws
Exception
{
public
Double
apply
(
Double
totalAmount
)
throws
Exception
{
double
roundingTotalAmount
=
getTotalAmountFilterByType
(
BillItem
.
ROUNDING_TYPE
);
double
roundingTotalAmount
=
getTotalAmountFilterByType
(
BillItem
.
ROUNDING_TYPE
);
RoundingItem
roundingItem
=
(
RoundingItem
)
findBillItemByClass
(
RoundingItem
.
class
);
if
(
roundingTotalAmount
>
0
)
{
if
(
roundingItem
!=
null
)
{
totalAmount
=
roundingItem
.
updateBillItem
(
roundingTotalAmount
);
if
(
Double
.
doubleToLongBits
(
totalAmount
)
!=
0.0
)
{
//更新賬單小數
mShoppingCart
.
setRounding
(
totalAmount
);
}
else
{
//刪除賬單小數
mBillItemList
.
remove
(
roundingItem
);
mShoppingCart
.
setRounding
(
null
);
}
}
else
{
RoundingItem
item
=
new
RoundingItem
(
roundingStr
);
RoundingItem
item
=
new
RoundingItem
(
roundingStr
);
totalAmount
=
item
.
updateBillItem
(
roundingTotalAmount
);
totalAmount
=
item
.
updateBillItem
(
roundingTotalAmount
);
if
(
Double
.
doubleToLongBits
(
totalAmount
)
!=
0.0
)
{
if
(
Double
.
doubleToLongBits
(
item
.
getMoney
()
)
!=
0.0
)
{
mBillItemList
.
add
(
item
);
mBillItemList
.
add
(
item
);
mShoppingCart
.
setRounding
(
item
.
getMoney
());
mShoppingCart
.
setRounding
(
item
.
getMoney
());
}
}
...
@@ -313,6 +325,9 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -313,6 +325,9 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
.
subscribe
(
new
Consumer
<
Double
>()
{
.
subscribe
(
new
Consumer
<
Double
>()
{
@Override
@Override
public
void
accept
(
Double
totalAmount
)
throws
Exception
{
public
void
accept
(
Double
totalAmount
)
throws
Exception
{
if
(
mOrderContentActivity
!=
null
)
{
mOrderContentActivity
.
initOrderBill
(
wholeAmount
,
totalAmount
);
}
//更新總金額
//更新總金額
mShoppingCart
.
setTotalAmount
(
totalAmount
);
mShoppingCart
.
setTotalAmount
(
totalAmount
);
//刷新賬單Item數據
//刷新賬單Item數據
...
@@ -322,7 +337,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -322,7 +337,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
}
}
/**
/**
* 查詢對應的BillItem類
是否存在
* 查詢對應的BillItem類
*
*
* @param cla
* @param cla
* @return
* @return
...
@@ -368,9 +383,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -368,9 +383,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
changeNumber
(
datasBean
.
getNumber
()
-
1
);
changeNumber
(
datasBean
.
getNumber
()
-
1
);
}
}
mSelectMealAdapter
.
notifyDataSetChanged
();
mSelectMealAdapter
.
notifyDataSetChanged
();
if
(
mOrderContentActivity
!=
null
)
{
mOrderContentActivity
.
initOrderDetail
();
}
//更新折扣
//更新折扣
updateBillInfo
();
updateBillInfo
();
}
}
...
@@ -379,9 +391,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -379,9 +391,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
public
void
onMealCountAdd
(
OrderDetail
datasBean
,
int
position
)
{
public
void
onMealCountAdd
(
OrderDetail
datasBean
,
int
position
)
{
mRootView
.
recordOperat
(
true
);
mRootView
.
recordOperat
(
true
);
changeNumber
(
datasBean
.
getNumber
()
+
1
);
changeNumber
(
datasBean
.
getNumber
()
+
1
);
if
(
mOrderContentActivity
!=
null
)
{
mOrderContentActivity
.
initOrderDetail
();
}
//更新折扣
//更新折扣
updateBillInfo
();
updateBillInfo
();
}
}
...
@@ -422,7 +431,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -422,7 +431,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
if
(!
changeNumberCondition
(
number
))
{
if
(!
changeNumberCondition
(
number
))
{
return
;
return
;
}
}
myOrderManage
.
changeNumber
(
number
);
//
myOrderManage.changeNumber(number);
if
(
mMealStandPresenter
!=
null
)
{
if
(
mMealStandPresenter
!=
null
)
{
mMealStandPresenter
.
updateMealSoldoutCtrData
();
mMealStandPresenter
.
updateMealSoldoutCtrData
();
mMealStandPresenter
.
updateOrderFoodNumber
();
mMealStandPresenter
.
updateOrderFoodNumber
();
...
@@ -432,35 +441,35 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -432,35 +441,35 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
}
}
public
boolean
changeNumberCondition
(
int
i
)
{
public
boolean
changeNumberCondition
(
int
i
)
{
if
(
MyOrderManage
.
getInstance
().
getS
ize
()
<=
0
)
{
if
(
mOrderMealList
.
s
ize
()
<=
0
)
{
return
false
;
return
false
;
}
}
if
(
mSelectMealAdapter
.
getSelect_start_position
()
==
-
1
||
mSelectMealAdapter
.
getSelect_start_position
()
>=
mSelectMealAdapter
.
getInfos
().
size
())
{
if
(
mSelectMealAdapter
.
getSelect_start_position
()
==
-
1
||
mSelectMealAdapter
.
getSelect_start_position
()
>=
mSelectMealAdapter
.
getInfos
().
size
())
{
return
false
;
return
false
;
}
}
if
(
m
yOrderManage
.
getOrderFoodList
()
.
get
(
mSelectMealAdapter
.
getSelect_start_position
()).
isIsfood
()
==
false
)
{
if
(
m
OrderMealList
.
get
(
mSelectMealAdapter
.
getSelect_start_position
()).
isIsfood
()
==
false
)
{
return
false
;
return
false
;
}
}
//旧食品不可以修改数量
//旧食品不可以修改数量
if
(!
m
yOrderManage
.
isModifyOrder
()
&&
myOrderManage
.
getOrderFoodList
()
.
get
(
mSelectMealAdapter
.
getSelect_start_position
()).
isNew
()
==
false
&&
i
!=
0
)
{
if
(!
m
DoshokuOrder
.
isModifyOrder
()
&&
mOrderMealList
.
get
(
mSelectMealAdapter
.
getSelect_start_position
()).
isNew
()
==
false
&&
i
!=
0
)
{
return
false
;
return
false
;
}
}
if
(
mSelectMealAdapter
.
getSelect_position
()
==
-
1
)
{
if
(
mSelectMealAdapter
.
getSelect_position
()
==
-
1
)
{
return
false
;
return
false
;
}
}
if
(
myOrderManage
.
getOrderFoodList
().
size
()
<=
0
)
{
if
(
mOrderMealList
.
size
()
<=
0
)
{
return
false
;
}
if
(
myOrderManage
.
getSelmainstartpositon
()
>
myOrderManage
.
getOrderFoodList
().
size
())
{
return
false
;
return
false
;
}
}
OrderDetail
orderMainFood
=
myOrderManage
.
getOrderFoodList
().
get
(
myOrderManage
.
getSelmainstartpositon
());
// if (myOrderManage.getSelmainstartpositon() > mOrderMealList.size()) {
if
(
mMealStandPresenter
!=
null
&&
orderMainFood
!=
null
)
{
// return false;
//積分是否滿足
// }
if
(!
mMealStandPresenter
.
memberPointsCondition
(
orderMainFood
.
getPointsRedeem
()
*
i
,
orderMainFood
.
getProductName
()))
{
// OrderDetail orderMainFood = mOrderMealList.get(myOrderManage.getSelmainstartpositon());
return
false
;
// if (mMealStandPresenter != null && orderMainFood != null) {
}
// //積分是否滿足
}
// if (!mMealStandPresenter.memberPointsCondition(orderMainFood.getPointsRedeem() * i, orderMainFood.getProductName())) {
// return false;
// }
// }
return
true
;
return
true
;
}
}
...
@@ -473,7 +482,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -473,7 +482,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
if
(!
sendOrderConditionFilter
())
{
if
(!
sendOrderConditionFilter
())
{
return
;
return
;
}
}
if
(
MyOrderManage
.
getInstance
()
.
getOrderId
()
<
1
)
{
if
(
mDoshokuOrder
.
getOrderId
()
<
1
)
{
if
(
getFoodSize
()
==
0
)
{
if
(
getFoodSize
()
==
0
)
{
Class
[]
parameterTypes
=
{
boolean
.
class
,
Class
.
class
};
Class
[]
parameterTypes
=
{
boolean
.
class
,
Class
.
class
};
Object
[]
parameters
=
{
isPrint
,
afterToActivity
};
Object
[]
parameters
=
{
isPrint
,
afterToActivity
};
...
@@ -501,7 +510,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -501,7 +510,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
* @return
* @return
*/
*/
public
boolean
sendOrderConditionFilter
()
{
public
boolean
sendOrderConditionFilter
()
{
MemberInfo
memberInfo
=
MyOrderManage
.
getInstance
()
.
getMemberInfo
();
MemberInfo
memberInfo
=
mDoshokuOrder
.
getMemberInfo
();
if
(
memberInfo
==
null
)
{
if
(
memberInfo
==
null
)
{
for
(
OrderDetail
item
:
getNewOrderFoodLists
())
{
for
(
OrderDetail
item
:
getNewOrderFoodLists
())
{
if
(
item
.
getPointsAdd
()
!=
0
||
item
.
getPointsRedeem
()
!=
0
)
{
if
(
item
.
getPointsAdd
()
!=
0
||
item
.
getPointsRedeem
()
!=
0
)
{
...
@@ -516,330 +525,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -516,330 +525,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
}
}
/**
/**
* 更新賬單金額
*/
// public void updateBillOrderItem() {
// if (!containsTableService()) {
// addTableServiceAmount();
// }
// updateFoodDiscount();
// updateTableServiceAmount();
// updateOrderDiscount();
// updateMemberDiscount();
// updateMemberCoupon();
// updateOrderRounding();
// myOrderManage.setTotalAmount(getTotalAmount());
// }
/**
* 添加已送單折扣
*/
// private void addSentOrderDiscount() {
// OrderBean orderBean = myOrderManage.getOrderBean();
// if (orderBean != null) {
// DiscountResult discountResult = orderBean.getDiscountDetail();
// if (discountResult != null) {
// Discount discount = discountResult.getDiscount();
// MemberInfo memberDiscount = discountResult.getMemberDiscount();
// CouponDiscountBean memberCoupon = discountResult.getMemberCoupon();
// if (memberDiscount != null) {
// //整單折扣
// if (discount.getDiscount_value() != 0) {
// //百分比折扣
// discount.setType(1);
// addOrderDiscount(true, discount, BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// } else {
// //金額折扣
// discount.setType(0);
// addOrderDiscount(true, discount, BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// }
// }
// if (memberCoupon != null) {
// //會員優惠券
// if (memberDiscount != null) {
// addMemberCoupon(memberCoupon, memberDiscount.getId(), BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// }
// }
// if (memberDiscount != null) {
// //會員折扣
// addMemberDiscount(memberDiscount.getId(), memberDiscount.getMemberDiscount(), memberDiscount.getMemberName(), memberDiscount.getLevelName1(), BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// }
// }
// }
// }
// protected void addSentOrderDiscount() {
// OrderBean orderBean = myOrderManage.getOrderBean();
// if (orderBean != null) {
// List<OrderDiscount.Respose> discountDetails = orderBean.getDiscountDetails();
// if (discountDetails != null) {
// for (int i = 0; i < discountDetails.size(); i++) {
// OrderDiscount.Respose orderDiscount = discountDetails.get(i);
// if (orderDiscount.getType() == OrderDiscount.ORDER_DISCOUNT) {
// //整單折扣
// Discount discount = new Discount();
// discount.setId(orderDiscount.getDiscountId());
// discount.setRemark(orderDiscount.getRemark());
// if (orderDiscount.getDiscountValue() != 0) {
// //百分比折扣
// discount.setType(1);
// discount.setDiscount_value(orderDiscount.getDiscountValue());
// addOrderDiscount(true, discount, BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// continue;
// }
// if (orderDiscount.getDiscountAmount() != 0) {
// //金額折扣
// discount.setType(0);
// discount.setAmount(orderDiscount.getDiscountAmount());
// addOrderDiscount(true, discount, BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// continue;
// }
// } else if (orderDiscount.getType() == OrderDiscount.MEMBER_DISCOUNT) {
// //會員折扣
// MemberInfo memberInfo = myOrderManage.getMemberInfo();
// if (memberInfo != null) {
// addMemberDiscount(memberInfo.getId(), orderDiscount.getDiscountValue(), memberInfo.getMemberName(), memberInfo.getLevelName1(), BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// }
// } else if (orderDiscount.getType() == OrderDiscount.COUPON_DISCOUNT) {
// CouponDiscountBean couponDiscount = new CouponDiscountBean();
// couponDiscount.setCouponTypeName1(orderDiscount.getRemark());
// couponDiscount.setCouponTypeName2(orderDiscount.getRemark2());
// couponDiscount.setCouponTypeName3(orderDiscount.getRemark3());
// couponDiscount.setAccumulate(orderDiscount.getAccumulate());
// couponDiscount.setSpend(orderDiscount.getSpend());
// couponDiscount.setDiscount(orderDiscount.getDiscountValue());
// couponDiscount.setAmount(orderDiscount.getDiscountAmount());
//
// MemberInfo memberInfo = myOrderManage.getMemberInfo();
// if (memberInfo != null) {
// addCouponDiscount(couponDiscount, myOrderManage.getMemberInfo().getId(), BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// }
// }
// }
// }
// }
// }
/**
* 添加餐檯服務費
*/
// protected void addTableServiceAmount() {
// TableBean.DataBean dataBean = mDoshokuOrder.getOpenTableInfo().getTableBean();
// if (dataBean == null) {
// return;
// }
// double serviceAmount = MoneyUtil.divide(MoneyUtil.multiply(getScAbleFoodTotal(), dataBean.getServiceCharge()).doubleValue(), 100, MoneyUtil.ItemDecimals);
// if (serviceAmount > 0) {
// BillOrderMoney orderMoney = new BillOrderMoney();
// orderMoney.setMoney(MoneyUtil.get_ItemDecimals_money(serviceAmount));
// orderMoney.setTitle(dataBean.getServiceCharge() + "%" + serviceChargeStr);
// orderMoney.setStatus(BillOrderMoney.BILL_ITEM_ORDER_SENT_STATUS);
// orderMoney.setType(BillOrderMoney.SERVERCHARGE_TYPE);
// orderMoney.setTextColor(ArmsUtils.getColor(IActivity, R.color.theme_black));
// BillOrderMoney discountBill = getBillOrderItemByType(BillOrderMoney.ORDER_DISCOUNT_TYPE);
// if (discountBill != null) {
// mOrderMoneyList.add(0, orderMoney);
// } else {
// mOrderMoneyList.add(orderMoney);
// }
// mOrderMoneyAdapter.notifyDataSetChanged();
// }
// }
/**
* 更新服务费
*/
// private void updateTableServiceAmount() {
// BillOrderMoney billOrderMoney = getBillOrderItemByType(BillOrderMoney.SERVERCHARGE_TYPE);
// if (billOrderMoney != null) {
// TableBean.DataBean dataBean = mDoshokuOrder.getOpenTableInfo().getTableBean();
//// double serviceAmount = getTotalAmountFilterByType(BillOrderMoney.SERVERCHARGE_TYPE, BillOrderMoney.DISCOUNT_TYPE, BillOrderMoney.ROUNDING_TYPE) * dataBean.getServiceCharge() / 100;
// double serviceAmount = getScAbleFoodTotal() * dataBean.getServiceCharge() / 100;
// if (serviceAmount > 0) {
// billOrderMoney.setMoney(MoneyUtil.get_ItemDecimals_money(serviceAmount));
// } else {
// mOrderMoneyList.remove(billOrderMoney);
// }
// mOrderMoneyAdapter.notifyDataSetChanged();
// }
// }
/**
* 添加賬單折扣
*
* @param discount
*/
// protected void addOrderDiscount(boolean init, Discount discount, int status) {
//
// removeBillOrderItemByType(BillOrderMoney.ORDER_DISCOUNT_TYPE);
//
// double totalMoney = getDiscountableFoodTotal(BillOrderMoney.ORDER_DISCOUNT_TYPE, true);
// double discountPrice = OrderDiscount.calculationDiscount(discount, totalMoney);
// BillOrderMoney orderMoney = new BillOrderMoney();
// orderMoney.setMoney(discountPrice);
// orderMoney.setTitle(discount.getRemark());
// orderMoney.setType(BillOrderMoney.ORDER_DISCOUNT_TYPE);
// if (status == 0) {
// orderMoney.setTextColor(ArmsUtils.getColor(IActivity, R.color.theme_hint_color));
// } else {
// orderMoney.setTextColor(ArmsUtils.getColor(IActivity, R.color.theme_black));
// }
// orderMoney.setStatus(status);
// orderMoney.setDiscount(discount);
//
// mOrderMoneyList.add(orderMoney);
// mOrderMoneyAdapter.notifyDataSetChanged();
//
// //更新總金額
// if (!init && mOrderContentActivity != null) {
// //先更新下賬單小數,再計算總金額才不會錯
// updateOrderRounding();
// //更新合計 總金額信息
// mOrderContentActivity.initOrderDetail();
// }
// }
/**
* 更新整單折扣
*/
// protected void updateOrderDiscount() {
// BillOrderMoney orderMoney = getBillOrderItemByType(BillOrderMoney.ORDER_DISCOUNT_TYPE);
// if (orderMoney != null) {
// double totalMoney = getDiscountableFoodTotal(BillOrderMoney.ORDER_DISCOUNT_TYPE, false);
// double discountPrice = OrderDiscount.calculationDiscount(orderMoney.getDiscount(), totalMoney);
// orderMoney.setMoney(discountPrice);
// }
// }
/**
* 添加会员折扣
*
* @param memberId
* @param discountRate
* @param memberName
* @param levelName
*/
// public void addMemberDiscount(long memberId, int discountRate, String memberName, String levelName, int status) {
//
// removeBillOrderItemByType(BillOrderMoney.MEMBER_DISCOUNT_TYPE);
//
// double totalMoney = getDiscountableFoodTotal(BillOrderMoney.MEMBER_DISCOUNT_TYPE, true);
// if (!TextUtils.isEmpty(levelName)) {
// memberName = memberName + "(" + levelName + ")";
// }
// double discountPrice = OrderDiscount.calculationMemberDiscount(discountRate, totalMoney);
// BillOrderMoney orderMoney = new BillOrderMoney();
// orderMoney.setMoney(discountPrice);
// orderMoney.setTitle(memberName + discountRate + "%");
// orderMoney.setType(BillOrderMoney.MEMBER_DISCOUNT_TYPE);
// orderMoney.setTextColor(ArmsUtils.getColor(IActivity, R.color.theme_black));
// orderMoney.setStatus(status);
// //折扣
// Discount discount = new Discount();
// discount.setId(memberId);
// discount.setMemberId(memberId);
// discount.setType(1);
// discount.setRemark(memberName + discountRate + "%");
// discount.setDiscount_value(discountRate);
// orderMoney.setDiscount(discount);
//
// mOrderMoneyList.add(orderMoney);
// mOrderMoneyAdapter.notifyDataSetChanged();
// }
/**
* 更新会员折扣
*/
// protected void updateMemberDiscount() {
// BillOrderMoney orderMoney = getBillOrderItemByType(BillOrderMoney.MEMBER_DISCOUNT_TYPE);
// if (orderMoney != null) {
// double totalMoney = getDiscountableFoodTotal(BillOrderMoney.MEMBER_DISCOUNT_TYPE, false);
// double discountPrice = OrderDiscount.calculationDiscount(orderMoney.getDiscount(), totalMoney);
// orderMoney.setMoney(discountPrice);
// }
// }
/**
* 添加优惠券折扣
*
* @param coupon
* @param status
*/
// public void addCouponDiscount(CouponDiscountBean coupon, long memberId, int status) {
//
// removeBillOrderItemByType(BillOrderMoney.COUPON_DISCOUNT_TYPE);
//
// double totalMoney = getDiscountableFoodTotal(BillOrderMoney.COUPON_DISCOUNT_TYPE, true);
// double discountPrice = CouponDiscountBean.calculationCoupon(coupon.getDiscount(), coupon.getAmount(), totalMoney);
// BillOrderMoney orderMoney = new BillOrderMoney();
// orderMoney.setMoney(discountPrice);
// if (coupon.getDiscount() != 0) {
// orderMoney.setTitle(coupon.getName() + coupon.getDiscount() + "%");
// } else {
// orderMoney.setTitle(coupon.getName());
// }
// orderMoney.setType(BillOrderMoney.COUPON_DISCOUNT_TYPE);
// if (status == 0) {
// orderMoney.setTextColor(ArmsUtils.getColor(IActivity, R.color.theme_hint_color));
// } else {
// orderMoney.setTextColor(ArmsUtils.getColor(IActivity, R.color.theme_black));
// }
// orderMoney.setStatus(status);
// //折扣
// Discount discount = new Discount();
// discount.setId(coupon.getId());
// discount.setMemberId(memberId);
// discount.setRemark(coupon.getName() + coupon.getDiscount() + "%");
// discount.setDiscount_value(coupon.getDiscount());
// discount.setAmount(coupon.getAmount());
// if (coupon.getDiscount() != 0) {
// discount.setType(1);
// } else {
// discount.setType(0);
// }
// orderMoney.setDiscount(discount);
//
// mOrderMoneyList.add(orderMoney);
// mOrderMoneyAdapter.notifyDataSetChanged();
// }
/**
* 更新會員優惠券金額
*/
// public void updateMemberCoupon() {
// BillOrderMoney orderMoney = getBillOrderItemByType(BillOrderMoney.COUPON_DISCOUNT_TYPE);
// if (orderMoney != null) {
// double totalMoney = getDiscountableFoodTotal(BillOrderMoney.COUPON_DISCOUNT_TYPE, false);
// double discountPrice = CouponDiscountBean.calculationCoupon(orderMoney.getDiscount().getDiscount_value(), orderMoney.getDiscount().getAmount(), totalMoney);
// orderMoney.setMoney(discountPrice);
// }
// }
/**
* 根據類型刪除賬單項
*
* @param type
*/
// private void removeBillOrderItemByType(int type) {
// for (int i = mOrderMoneyList.size() - 1; i >= 0; i--) {
// BillOrderMoney item = mOrderMoneyList.get(i);
// if (item.getType() == type) {
// mOrderMoneyList.remove(i);
// mOrderMoneyAdapter.notifyItemChanged(i);
// break;
// }
// }
// }
// private BillOrderMoney getBillOrderItemByType(int type) {
// for (BillOrderMoney orderMoney : mOrderMoneyList) {
// if (orderMoney.getType() == type) {
// return orderMoney;
// }
// }
// return null;
// }
/**
* 更新食品折扣
* 更新食品折扣
*/
*/
protected
void
updateFoodDiscount
()
{
protected
void
updateFoodDiscount
()
{
...
@@ -902,53 +587,12 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -902,53 +587,12 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
}
}
/**
/**
* 添加賬單小數行
*/
// protected void addOrderRounding() {
// double m1 = getTotalAmountFilterByType(BillOrderMoney.ROUNDING_TYPE);
// double m2 = MoneyUtil.getOrderRounding(m1);
// double roundingMoney = 0.0;
// if (m2 != 0) {
// roundingMoney = MoneyUtil.sub(m2, MoneyUtil.get_ItemDecimals_money(m1));
// }
// if (roundingMoney != 0.0) {
// BillOrderMoney roundingItem = new BillOrderMoney();
// roundingItem.setMoney(MoneyUtil.getDecimalMoney(roundingMoney, MoneyUtil.ItemDecimals));
// roundingItem.setTitle("賬單小數");
// roundingItem.setType(BillOrderMoney.ROUNDING_TYPE);
// mOrderMoneyList.add(roundingItem);
// mOrderMoneyAdapter.notifyDataSetChanged();
// }
// }
/**
* 刪除賬單小數
*/
// private void removeOrderRouding() {
// for (BillOrderMoney item : mOrderMoneyList) {
// if (item.getType() == BillOrderMoney.ROUNDING_TYPE) {
// mOrderMoneyList.remove(item);
// mOrderMoneyAdapter.notifyDataSetChanged();
// break;
// }
// }
// }
/**
* 更新賬單小數(在最後一行)
*/
// protected void updateOrderRounding() {
// removeOrderRouding();
// addOrderRounding();
// }
/**
* 創建訂單后保存OrderId
* 創建訂單后保存OrderId
*
*
* @param orderId
* @param orderId
*/
*/
protected
void
setOrderId
(
double
orderId
)
{
protected
void
setOrderId
(
double
orderId
)
{
MyOrderManage
.
getInstance
().
setOrderId
(
orderId
);
mDoshokuOrder
.
setOrderId
((
long
)
orderId
);
}
}
/**
/**
...
@@ -964,22 +608,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -964,22 +608,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
}
}
}
}
/***
* 獲取服務費
* @return
*/
public
double
getServiceCharge
()
{
double
serviceCharge
=
0.0
;
for
(
BillItem
item
:
mBillItemList
)
{
if
(
item
.
getType
()
==
BillOrderMoney
.
SERVERCHARGE_TYPE
)
{
serviceCharge
=
item
.
getMoney
();
break
;
}
}
return
serviceCharge
;
}
/**
/**
* 獲取食品合計
* 獲取食品合計
*
*
...
@@ -1004,91 +632,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1004,91 +632,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
return
MoneyUtil
.
get_ItemDecimals_money
(
total
);
return
MoneyUtil
.
get_ItemDecimals_money
(
total
);
}
}
/**
* 獲取所有可折扣食品合計
*
* @return
*/
// public double getDiscountableFoodTotal(int discountType, boolean add) {
// double total = 0.0;
// List<OrderDetail> orderFoodList = myOrderManage.getOrderFoodList();
// int orderSize = orderFoodList.size();
// for (int i = 0; i < orderSize; i++) {
// OrderDetail food = orderFoodList.get(i);
// if (food.getNumber() == 0) {
// continue;
// }
// if (food.getItemType() == 1) {
// if (food.getAblediscount() == 1) {
// total = MoneyUtil.sum(total, food.getPrice());
// }
// } else {
// int parentIndex = food.getParentIndex() - 1;
// if (orderSize > parentIndex && orderFoodList.get(parentIndex).getAblediscount() == 1) {
// if (food.getType() == DISCOUNT_TYPE) {
// //主食品参与折扣,折扣金额直接减掉
// total = MoneyUtil.sub(total, Math.abs(food.getPrice()));
// } else {
// //主食品可參與折扣 子食品才能參與折扣
// if (food.getAblediscount() == 1) {
// total = MoneyUtil.sum(total, food.getPrice());
// }
// }
// }
// }
// }
// if (add) {
// //添加折扣
// //折上折的情况,先减去上面的折扣金额再进行折扣
// for (int i = 0; i < mOrderMoneyList.size(); i++) {
// BillOrderMoney billOrderMoney = mOrderMoneyList.get(i);
// if (billOrderMoney.getType() == BillOrderMoney.ORDER_DISCOUNT_TYPE || billOrderMoney.getType() == BillOrderMoney.MEMBER_DISCOUNT_TYPE || billOrderMoney.getType() == BillOrderMoney.COUPON_DISCOUNT_TYPE) {
// double money = billOrderMoney.getMoney();
// total = MoneyUtil.sum(total, money);
// break;
// }
// }
// } else {
// //更新折扣
// int containAllDiscount = 0;
// for (int i = 0; i < mOrderMoneyList.size(); i++) {
// BillOrderMoney billOrderMoney = mOrderMoneyList.get(i);
// if (billOrderMoney.getType() == BillOrderMoney.ORDER_DISCOUNT_TYPE) {
// containAllDiscount++;
// continue;
// }
// if (billOrderMoney.getType() == BillOrderMoney.MEMBER_DISCOUNT_TYPE) {
// containAllDiscount++;
// continue;
// }
// if (billOrderMoney.getType() == BillOrderMoney.COUPON_DISCOUNT_TYPE) {
// containAllDiscount++;
// continue;
// }
// }
// if (containAllDiscount > 1) {
// //有账单折扣+会员折扣 会员优惠券
// //折上折的情况,先减去上之前的折扣金额再进行折扣
// for (int i = 0; i < mOrderMoneyList.size(); i++) {
// BillOrderMoney billOrderMoney = mOrderMoneyList.get(i);
// if (billOrderMoney.getType() == discountType) {
// //不能减掉自身再折
// break;
// }
// if (billOrderMoney.getType() == BillOrderMoney.ORDER_DISCOUNT_TYPE || billOrderMoney.getType() == BillOrderMoney.MEMBER_DISCOUNT_TYPE || billOrderMoney.getType() == BillOrderMoney.COUPON_DISCOUNT_TYPE) {
// double money = billOrderMoney.getMoney();
// total = MoneyUtil.sum(total, money);
// break;
// }
// }
// }
// }
// if (total < 0) {
// total = 0;
// }
// return MoneyUtil.get_ItemDecimals_money(total);
// }
public
double
getDiscountableFoodTotal2
()
{
public
double
getDiscountableFoodTotal2
()
{
double
total
=
0.0
;
double
total
=
0.0
;
int
orderSize
=
mOrderMealList
.
size
();
int
orderSize
=
mOrderMealList
.
size
();
...
@@ -1121,71 +664,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1121,71 +664,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
}
}
/**
/**
* 獲取所有可服务费食品合計
*
* @return
*/
public
double
getScAbleFoodTotal
()
{
double
total
=
0.0
;
List
<
OrderDetail
>
orderFoodList
=
myOrderManage
.
getOrderFoodList
();
int
orderSize
=
orderFoodList
.
size
();
for
(
int
i
=
0
;
i
<
orderSize
;
i
++)
{
OrderDetail
food
=
orderFoodList
.
get
(
i
);
if
(
food
.
getNumber
()
==
0
)
{
continue
;
}
if
(
food
.
getItemType
()
==
1
)
{
if
(
food
.
getScAble
()
==
1
)
{
total
=
MoneyUtil
.
sum
(
total
,
food
.
getPrice
());
}
}
else
{
int
parentIndex
=
food
.
getParentIndex
()
-
1
;
if
(
orderSize
>
parentIndex
&&
orderFoodList
.
get
(
parentIndex
).
getScAble
()
==
1
)
{
if
(
food
.
getType
()
==
DISCOUNT_TYPE
)
{
//主食品参与服务费,折扣金额直接减掉
total
=
MoneyUtil
.
sub
(
total
,
Math
.
abs
(
food
.
getPrice
()));
}
else
{
//主食品可參與服务费 子食品才能參與服务费
if
(
food
.
getScAble
()
==
1
)
{
total
=
MoneyUtil
.
sum
(
total
,
food
.
getPrice
());
}
}
}
}
}
if
(
total
<
0
)
{
total
=
0
;
}
return
MoneyUtil
.
get_ItemDecimals_money
(
total
);
}
/**
* 獲取總金額
*
* @return
*/
// public double getTotalAmountFilterByType(int... filterTypes) {
// double foodTotal = getFoodTotal();
// for (BillOrderMoney item : mOrderMoneyList) {
// if (!filterType(item.getType(), filterTypes)) {
// if (item.getType() == BillOrderMoney.SERVERCHARGE_TYPE && mOrderMoneyAdapter.getFreeServiceStauts()) {
// //TODO 免服務費
// } else {
// foodTotal = MoneyUtil.sum(foodTotal, item.getMoney());
// if (0 > foodTotal) {
// //折扣金額不能超出總額
// foodTotal = 0;
// }
// }
// }
// }
// if (foodTotal < 0) {
// foodTotal = 0;
// }
// return MoneyUtil.get_ItemDecimals_money(foodTotal);
// }
/**
* 獲取總金額
* 獲取總金額
*
*
* @return
* @return
...
@@ -1194,7 +672,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1194,7 +672,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
double
foodTotal
=
getFoodTotal
();
double
foodTotal
=
getFoodTotal
();
for
(
BillItem
item
:
mBillItemList
)
{
for
(
BillItem
item
:
mBillItemList
)
{
if
(!
filterType
(
item
.
getType
(),
filterTypes
))
{
if
(!
filterType
(
item
.
getType
(),
filterTypes
))
{
if
(
item
.
getType
()
==
Bill
OrderMoney
.
SERVERCHARGE_TYPE
&&
mOrderMoneyAdapter
.
getFreeServiceStauts
())
{
if
(
item
.
getType
()
==
Bill
Item
.
SERVERCHARGE_TYPE
&&
mOrderMoneyAdapter
.
getFreeServiceStauts
())
{
//TODO 免服務費
//TODO 免服務費
}
else
{
}
else
{
foodTotal
=
MoneyUtil
.
sum
(
foodTotal
,
item
.
getMoney
());
foodTotal
=
MoneyUtil
.
sum
(
foodTotal
,
item
.
getMoney
());
...
@@ -1228,7 +706,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1228,7 +706,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
public
double
getTotalAmount
()
{
public
double
getTotalAmount
()
{
double
foodTotal
=
getFoodTotal
();
double
foodTotal
=
getFoodTotal
();
for
(
BillItem
item
:
mBillItemList
)
{
for
(
BillItem
item
:
mBillItemList
)
{
if
(
item
.
getType
()
==
Bill
OrderMoney
.
SERVERCHARGE_TYPE
&&
mOrderMoneyAdapter
.
getFreeServiceStauts
())
{
if
(
item
.
getType
()
==
Bill
Item
.
SERVERCHARGE_TYPE
&&
mOrderMoneyAdapter
.
getFreeServiceStauts
())
{
//TODO 免服務費
//TODO 免服務費
}
else
{
}
else
{
foodTotal
=
MoneyUtil
.
sum
(
foodTotal
,
item
.
getMoney
());
foodTotal
=
MoneyUtil
.
sum
(
foodTotal
,
item
.
getMoney
());
...
@@ -1251,7 +729,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1251,7 +729,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
*/
*/
protected
Double
getRounding
()
{
protected
Double
getRounding
()
{
for
(
BillItem
item
:
mBillItemList
)
{
for
(
BillItem
item
:
mBillItemList
)
{
if
(
item
.
getType
()
==
Bill
OrderMoney
.
ROUNDING_TYPE
)
{
if
(
item
.
getType
()
==
Bill
Item
.
ROUNDING_TYPE
)
{
return
item
.
getMoney
();
return
item
.
getMoney
();
}
}
}
}
...
@@ -1265,7 +743,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1265,7 +743,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
*/
*/
public
int
getFoodCount
()
{
public
int
getFoodCount
()
{
int
count
=
0
;
int
count
=
0
;
for
(
OrderDetail
food
:
m
yOrderManage
.
getOrderFoodList
()
)
{
for
(
OrderDetail
food
:
m
OrderMealList
)
{
if
(
food
.
getType
()
!=
DISCOUNT_TYPE
)
{
if
(
food
.
getType
()
!=
DISCOUNT_TYPE
)
{
//排除掉折扣
//排除掉折扣
count
+=
food
.
getNumber
();
count
+=
food
.
getNumber
();
...
@@ -1387,15 +865,15 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1387,15 +865,15 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
setChildDiscountByMainAblediscount
(
newFoodList
);
setChildDiscountByMainAblediscount
(
newFoodList
);
AddOrderRequest
request
=
new
AddOrderRequest
();
AddOrderRequest
request
=
new
AddOrderRequest
();
request
.
setOrderId
(
MyOrderManage
.
getInstance
()
.
getOrderId
());
request
.
setOrderId
(
mDoshokuOrder
.
getOrderId
());
request
.
setTableId
(
mDoshokuOrder
.
getOpenTableInfo
().
getId
());
request
.
setTableId
(
mDoshokuOrder
.
getOpenTableInfo
().
getId
());
if
(
MyOrderManage
.
getInstance
()
.
getMemberInfo
()
!=
null
)
{
if
(
mDoshokuOrder
.
getMemberInfo
()
!=
null
)
{
request
.
setMemberId
(
MyOrderManage
.
getInstance
()
.
getMemberInfo
().
getId
());
request
.
setMemberId
(
mDoshokuOrder
.
getMemberInfo
().
getId
());
}
}
request
.
setTableNumber
(
mDoshokuOrder
.
getOpenTableInfo
().
getTableNumber
());
request
.
setTableNumber
(
mDoshokuOrder
.
getOpenTableInfo
().
getTableNumber
());
request
.
setMaps
(
orderDetailBeanToAddFoodRequest
(
newFoodList
));
request
.
setMaps
(
orderDetailBeanToAddFoodRequest
(
newFoodList
));
if
(
m
yOrderManage
.
getDelete
Orders
()
!=
null
)
{
if
(
m
DoshokuOrder
.
getDeleteMeal
Orders
()
!=
null
)
{
request
.
setDeleteOrders
(
m
yOrderManage
.
getDelete
Orders
());
request
.
setDeleteOrders
(
m
DoshokuOrder
.
getDeleteMeal
Orders
());
}
}
Double
rounding
=
getRounding
();
Double
rounding
=
getRounding
();
...
@@ -1411,15 +889,15 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1411,15 +889,15 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
List
<
OrderDiscount
.
Request
>
discountRequests
=
new
ArrayList
<>();
List
<
OrderDiscount
.
Request
>
discountRequests
=
new
ArrayList
<>();
for
(
BillItem
item
:
mBillItemList
)
{
for
(
BillItem
item
:
mBillItemList
)
{
if
(
item
.
getType
()
==
Bill
OrderMoney
.
ORDER_DISCOUNT_TYPE
)
{
if
(
item
.
getType
()
==
Bill
Item
.
ORDER_DISCOUNT_TYPE
)
{
discountRequests
.
add
(
OrderDiscount
.
Request
.
orderDiscountTransRequest
((
DiscountItem
)
item
));
discountRequests
.
add
(
OrderDiscount
.
Request
.
orderDiscountTransRequest
((
DiscountItem
)
item
));
continue
;
continue
;
}
}
if
(
item
.
getType
()
==
Bill
OrderMoney
.
MEMBER_DISCOUNT_TYPE
)
{
if
(
item
.
getType
()
==
Bill
Item
.
MEMBER_DISCOUNT_TYPE
)
{
discountRequests
.
add
(
OrderDiscount
.
Request
.
memberDiscountTransRequest
((
DiscountItem
)
item
));
discountRequests
.
add
(
OrderDiscount
.
Request
.
memberDiscountTransRequest
((
DiscountItem
)
item
));
continue
;
continue
;
}
}
if
(
item
.
getType
()
==
Bill
OrderMoney
.
COUPON_DISCOUNT_TYPE
)
{
if
(
item
.
getType
()
==
Bill
Item
.
COUPON_DISCOUNT_TYPE
)
{
discountRequests
.
add
(
OrderDiscount
.
Request
.
couponDiscountTransRequest
((
DiscountItem
)
item
));
discountRequests
.
add
(
OrderDiscount
.
Request
.
couponDiscountTransRequest
((
DiscountItem
)
item
));
continue
;
continue
;
}
}
...
@@ -1435,7 +913,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1435,7 +913,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
//主食品ID
//主食品ID
long
mainProductId
=
0
;
long
mainProductId
=
0
;
//打印用到,清理掉之前保存的食品
//打印用到,清理掉之前保存的食品
MyOrderManage
.
getInstance
()
.
getNewFoodList
().
clear
();
mDoshokuOrder
.
getNewFoodList
().
clear
();
List
<
OrderBean
.
OrderDetailsBean
>
orderItems
=
null
;
List
<
OrderBean
.
OrderDetailsBean
>
orderItems
=
null
;
for
(
int
i
=
0
;
i
<
foodList
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
foodList
.
size
();
i
++)
{
OrderDetail
item
=
foodList
.
get
(
i
);
OrderDetail
item
=
foodList
.
get
(
i
);
...
@@ -1470,7 +948,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1470,7 +948,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
//這裡只添加新食品
//這裡只添加新食品
orderItems
.
add
(
request
);
orderItems
.
add
(
request
);
//保存新食品,打印用到
//保存新食品,打印用到
MyOrderManage
.
getInstance
()
.
getNewFoodList
().
add
(
item
);
mDoshokuOrder
.
getNewFoodList
().
add
(
item
);
}
}
int
nextIndex
=
i
+
1
;
int
nextIndex
=
i
+
1
;
if
(
foodList
.
size
()
>
nextIndex
&&
foodList
.
get
(
nextIndex
).
getType
()
==
DISCOUNT_TYPE
)
{
if
(
foodList
.
size
()
>
nextIndex
&&
foodList
.
get
(
nextIndex
).
getType
()
==
DISCOUNT_TYPE
)
{
...
@@ -1501,7 +979,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1501,7 +979,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
long
type1
=
1
;
long
type1
=
1
;
long
type2
=
2
;
long
type2
=
2
;
//打印用到,清理掉之前保存的食品
//打印用到,清理掉之前保存的食品
MyOrderManage
.
getInstance
()
.
getNewFoodList
().
clear
();
mDoshokuOrder
.
getNewFoodList
().
clear
();
//可重複的map
//可重複的map
Map
<
String
,
List
<
OrderBean
.
OrderDetailsBean
>>
orderDetails
=
new
HashMap
<>();
Map
<
String
,
List
<
OrderBean
.
OrderDetailsBean
>>
orderDetails
=
new
HashMap
<>();
if
(
foodList
!=
null
)
{
if
(
foodList
!=
null
)
{
...
@@ -1535,7 +1013,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1535,7 +1013,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
OrderBean
.
OrderDetailsBean
request
=
new
OrderBean
.
OrderDetailsBean
();
OrderBean
.
OrderDetailsBean
request
=
new
OrderBean
.
OrderDetailsBean
();
request
.
setMemberId
(
GsaCloudApplication
.
getMemberId
());
request
.
setMemberId
(
GsaCloudApplication
.
getMemberId
());
request
.
setOrderId
(
MyOrderManage
.
getInstance
()
.
getOrderId
());
request
.
setOrderId
(
mDoshokuOrder
.
getOrderId
());
if
(
item
.
getId
()
!=
0
)
{
if
(
item
.
getId
()
!=
0
)
{
request
.
setId
(
item
.
getId
());
request
.
setId
(
item
.
getId
());
}
}
...
@@ -1557,7 +1035,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1557,7 +1035,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
//這裡只添加新食品或有新折扣食品
//這裡只添加新食品或有新折扣食品
orderItems
.
add
(
request
);
orderItems
.
add
(
request
);
//保存新食品,打印用到
//保存新食品,打印用到
MyOrderManage
.
getInstance
()
.
getNewFoodList
().
add
(
item
);
mDoshokuOrder
.
getNewFoodList
().
add
(
item
);
}
}
int
nextIndex
=
i
+
1
;
int
nextIndex
=
i
+
1
;
if
(
foodList
.
size
()
>
nextIndex
&&
foodList
.
get
(
nextIndex
).
getType
()
==
DISCOUNT_TYPE
)
{
if
(
foodList
.
size
()
>
nextIndex
&&
foodList
.
get
(
nextIndex
).
getType
()
==
DISCOUNT_TYPE
)
{
...
@@ -1740,12 +1218,12 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1740,12 +1218,12 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
* @return
* @return
*/
*/
protected
Long
getCouponDiscountId
()
{
protected
Long
getCouponDiscountId
()
{
for
(
BillItem
item
:
mBillItemList
)
{
//
for (BillItem item : mBillItemList) {
if
(
item
.
getType
()
==
BillOrderMoney
.
COUPON_DISCOUNT_TYPE
)
{
// if (item.getType() == BillItem
.COUPON_DISCOUNT_TYPE) {
DiscountItem
discountItem
=
(
DiscountItem
)
item
;
//
DiscountItem discountItem = (DiscountItem) item;
return
discountItem
.
getDiscount
().
getId
();
//
return discountItem.getDiscount().getId();
}
//
}
}
//
}
return
null
;
return
null
;
}
}
...
@@ -1757,9 +1235,9 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1757,9 +1235,9 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
protected
BillItem
getNewDiscount
()
{
protected
BillItem
getNewDiscount
()
{
for
(
BillItem
item
:
mBillItemList
)
{
for
(
BillItem
item
:
mBillItemList
)
{
if
(
item
.
getStatus
()
==
0
&&
if
(
item
.
getStatus
()
==
0
&&
(
item
.
getType
()
==
Bill
OrderMoney
.
ORDER_DISCOUNT_TYPE
||
(
item
.
getType
()
==
Bill
Item
.
ORDER_DISCOUNT_TYPE
||
item
.
getType
()
==
Bill
OrderMoney
.
MEMBER_DISCOUNT_TYPE
||
item
.
getType
()
==
Bill
Item
.
MEMBER_DISCOUNT_TYPE
||
item
.
getType
()
==
Bill
OrderMoney
.
COUPON_DISCOUNT_TYPE
))
{
item
.
getType
()
==
Bill
Item
.
COUPON_DISCOUNT_TYPE
))
{
return
item
;
return
item
;
}
}
}
}
...
@@ -1817,16 +1295,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1817,16 +1295,6 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
return
mOrderMealList
;
return
mOrderMealList
;
}
}
// protected String getTableName() {
// String tablename = "";
// if (mDoshokuOrder.getOpenTableInfo().isSplite()) {
// tablename = mDoshokuOrder.getOpenTableInfo().getTableName() + "-" + mDoshokuOrder.getOpenTableInfo().getSplitNo();
// } else {
// tablename = mDoshokuOrder.getOpenTableInfo().getTableName();
// }
// return tablename;
// }
/**
/**
* 修改訂單
* 修改訂單
*
*
...
@@ -1835,7 +1303,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1835,7 +1303,7 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
*/
*/
public
void
updateOrderPerson
(
String
peopleNumber
,
TextView
textView
)
{
public
void
updateOrderPerson
(
String
peopleNumber
,
TextView
textView
)
{
RequestBody
requestBody
=
new
FormBody
.
Builder
()
RequestBody
requestBody
=
new
FormBody
.
Builder
()
.
add
(
"orderId"
,
String
.
valueOf
(
MyOrderManage
.
getInstance
()
.
getOrderId
()))
.
add
(
"orderId"
,
String
.
valueOf
(
mDoshokuOrder
.
getOrderId
()))
.
add
(
"person"
,
String
.
valueOf
(
peopleNumber
))
.
add
(
"person"
,
String
.
valueOf
(
peopleNumber
))
.
build
();
.
build
();
mModel
.
updateOrder
(
requestBody
)
mModel
.
updateOrder
(
requestBody
)
...
@@ -1860,6 +1328,10 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
...
@@ -1860,6 +1328,10 @@ public abstract class BaseOrderPresenter<M extends BaseOrderContract.Model, V ex
});
});
}
}
public
DoshokuOrder
getDoshokuOrder
()
{
return
mDoshokuOrder
;
}
public
ShoppingCart
getShoppingCart
()
{
public
ShoppingCart
getShoppingCart
()
{
return
mShoppingCart
;
return
mShoppingCart
;
}
}
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/FineItemAllPresenter.java
View file @
f47767b0
...
@@ -5,8 +5,10 @@ import android.app.Application;
...
@@ -5,8 +5,10 @@ import android.app.Application;
import
android.content.Context
;
import
android.content.Context
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
android.view.View
;
import
android.view.View
;
import
com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
import
com.gingersoft.gsa.cloud.base.utils.VibratorUtils
;
import
com.gingersoft.gsa.cloud.base.utils.VibratorUtils
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.R
;
...
@@ -453,8 +455,9 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
...
@@ -453,8 +455,9 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
*/
*/
protected
List
<
OrderDetail
>
getNewOrderFoodLists
()
{
protected
List
<
OrderDetail
>
getNewOrderFoodLists
()
{
List
<
OrderDetail
>
orderDetails
=
new
ArrayList
<>();
List
<
OrderDetail
>
orderDetails
=
new
ArrayList
<>();
for
(
int
i
=
0
;
i
<
MyOrderManage
.
getInstance
().
getOrderFoodList
().
size
();
i
++)
{
List
<
OrderDetail
>
orderCommodityList
=
DoshokuOrder
.
getInstance
().
getShoppingCart
().
getOrderCommodityList
();
OrderDetail
orderDetail
=
MyOrderManage
.
getInstance
().
getOrderFoodList
().
get
(
i
);
for
(
int
i
=
0
;
i
<
orderCommodityList
.
size
();
i
++)
{
OrderDetail
orderDetail
=
orderCommodityList
.
get
(
i
);
if
(
orderDetail
.
isNew
())
{
if
(
orderDetail
.
isNew
())
{
orderDetails
.
add
(
orderDetail
);
orderDetails
.
add
(
orderDetail
);
}
}
...
@@ -463,8 +466,9 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
...
@@ -463,8 +466,9 @@ public class FineItemAllPresenter extends BasePresenter<FineItemAllContract.Mode
}
}
private
void
setFid
(
List
<
Modifier
>
fineItemList
,
long
fid
)
{
private
void
setFid
(
List
<
Modifier
>
fineItemList
,
long
fid
)
{
if
(
fineItemList
==
null
)
if
(
fineItemList
==
null
)
{
return
;
return
;
}
for
(
int
i
=
0
;
i
<
fineItemList
.
size
();
i
++)
{
for
(
int
i
=
0
;
i
<
fineItemList
.
size
();
i
++)
{
Modifier
modifier
=
fineItemList
.
get
(
i
);
Modifier
modifier
=
fineItemList
.
get
(
i
);
modifier
.
setFid
(
fid
);
modifier
.
setFid
(
fid
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/MealStandPresenter.java
View file @
f47767b0
...
@@ -14,7 +14,6 @@ import com.gingersoft.gsa.cloud.base.order.billItem.BillItem;
...
@@ -14,7 +14,6 @@ import com.gingersoft.gsa.cloud.base.order.billItem.BillItem;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.ServiceChargeItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.ServiceChargeItem
;
import
com.gingersoft.gsa.cloud.base.order.discount.MultyDiscount
;
import
com.gingersoft.gsa.cloud.base.order.discount.MultyDiscount
;
...
@@ -160,110 +159,6 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
...
@@ -160,110 +159,6 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
this
.
mApplication
=
null
;
this
.
mApplication
=
null
;
}
}
/**
* 初始化張單項
* 1、添加服務費項 {@link ServiceChargeItem}
* 2、添加折扣項 {@link NomalDiscount}
*/
// private void initBillItem() {
//
// //1、添加服務費項
// if (mShoppingCart.getServiceCharge() != null) {
// mShoppingCart.addBillItem(createServiceChargeItem(mShoppingCart.getServiceCharge()));
// }
//
// //2、添加折扣項
// if (mDoshokuOrder != null) {
// //獲取已下單信息
// OrderBean orderPlaced = mDoshokuOrder.getOrderPlaced();
// if (orderPlaced != null) {
// List<OrderDiscount.Respose> discountDetails = orderPlaced.getDiscountDetails();
// for (OrderDiscount.Respose discount : discountDetails) {
// addDiscountItem(discount);
// addMultyDiscount(discount);
// }
// }
// } else {
//
// }
// }
//
// private BillItem createServiceChargeItem(double money) {
// BillItem billItem = new ServiceChargeItem(serviceChargeStr, money);
// return billItem;
// }
/**
* 創建折扣賬單項
*
* @param orderDiscount
* @return
*/
private
void
addDiscountItem
(
OrderDiscount
.
Respose
orderDiscount
)
{
DiscountItem
discountItem
=
new
DiscountItem
();
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
ORDER_DISCOUNT
)
{
discountItem
.
setName
(
orderDiscount
.
getRemark
());
}
else
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
MEMBER_DISCOUNT
)
{
//會員折扣
if
(
mDoshokuOrder
!=
null
)
{
discountItem
.
setName
(
mDoshokuOrder
.
getMemberInfo
().
getMemberName
());
}
}
else
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
COUPON_DISCOUNT
)
{
//优惠券折扣
CouponDiscountBean
couponDiscount
=
new
CouponDiscountBean
();
couponDiscount
.
setCouponTypeName1
(
orderDiscount
.
getRemark
());
couponDiscount
.
setCouponTypeName2
(
orderDiscount
.
getRemark2
());
couponDiscount
.
setCouponTypeName3
(
orderDiscount
.
getRemark3
());
discountItem
.
setName
(
couponDiscount
.
getName
());
}
mShoppingCart
.
addBillItem
(
discountItem
);
}
/**
* 將已送單折扣 添加到購物車
*/
private
void
addMultyDiscount
(
OrderDiscount
.
Respose
orderDiscount
)
{
MultyDiscount
multyDiscount
=
null
;
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
ORDER_DISCOUNT
)
{
Discount
discount
=
new
Discount
();
discount
.
setId
(
orderDiscount
.
getDiscountId
());
discount
.
setRemark
(
orderDiscount
.
getRemark
());
//整單折扣
if
(
orderDiscount
.
getDiscountValue
()
!=
0
)
{
//百分比折扣
discount
.
setType
(
1
);
discount
.
setDiscount_value
(
orderDiscount
.
getDiscountValue
());
}
if
(
orderDiscount
.
getDiscountAmount
()
!=
0
)
{
//金額折扣
discount
.
setType
(
0
);
discount
.
setAmount
(
orderDiscount
.
getDiscountAmount
());
}
multyDiscount
=
mShoppingCart
.
addNomalDiscount
(
null
,
discount
);
}
else
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
MEMBER_DISCOUNT
)
{
//會員折扣
if
(
mDoshokuOrder
!=
null
)
{
multyDiscount
=
mShoppingCart
.
addMemberDiscount
(
null
,
mDoshokuOrder
.
getMemberInfo
());
}
}
else
if
(
orderDiscount
.
getType
()
==
OrderDiscount
.
COUPON_DISCOUNT
)
{
//优惠券折扣
CouponDiscountBean
couponDiscount
=
new
CouponDiscountBean
();
couponDiscount
.
setCouponTypeName1
(
orderDiscount
.
getRemark
());
couponDiscount
.
setCouponTypeName2
(
orderDiscount
.
getRemark2
());
couponDiscount
.
setCouponTypeName3
(
orderDiscount
.
getRemark3
());
couponDiscount
.
setAccumulate
(
orderDiscount
.
getAccumulate
());
couponDiscount
.
setSpend
(
orderDiscount
.
getSpend
());
couponDiscount
.
setDiscount
(
orderDiscount
.
getDiscountValue
());
couponDiscount
.
setAmount
(
orderDiscount
.
getDiscountAmount
());
multyDiscount
=
mShoppingCart
.
addCouponDiscount
(
null
,
couponDiscount
);
}
if
(
multyDiscount
!=
null
)
{
mShoppingCart
.
addMultyDiscount
(
multyDiscount
);
}
}
public
void
startScanActivity
()
{
public
void
startScanActivity
()
{
toScanActivity
();
toScanActivity
();
}
}
...
@@ -910,7 +805,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
...
@@ -910,7 +805,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
if
(
info
.
getData
()
instanceof
Double
)
{
if
(
info
.
getData
()
instanceof
Double
)
{
//未上線,避免正式版閃退
//未上線,避免正式版閃退
setOrderId
((
Double
)
info
.
getData
());
setOrderId
((
Double
)
info
.
getData
());
MyOrderManage
.
getInstance
().
getOrderBean
()
.
setOrderNo
(((
Double
)
info
.
getData
()).
longValue
()
+
""
);
mDoshokuOrder
.
setOrderNo
(((
Double
)
info
.
getData
()).
longValue
()
+
""
);
}
else
{
}
else
{
LinkedTreeMap
tm
=
(
LinkedTreeMap
)
info
.
getData
();
LinkedTreeMap
tm
=
(
LinkedTreeMap
)
info
.
getData
();
for
(
Object
o
:
tm
.
keySet
())
{
for
(
Object
o
:
tm
.
keySet
())
{
...
@@ -918,13 +813,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
...
@@ -918,13 +813,13 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
if
(
key
.
equals
(
"id"
))
{
if
(
key
.
equals
(
"id"
))
{
setOrderId
((
Double
)
tm
.
get
(
key
));
setOrderId
((
Double
)
tm
.
get
(
key
));
}
else
if
(
key
.
equals
(
"orderNo"
))
{
}
else
if
(
key
.
equals
(
"orderNo"
))
{
MyOrderManage
.
getInstance
().
getOrderBean
()
.
setOrderNo
((
String
)
tm
.
get
(
key
));
mDoshokuOrder
.
setOrderNo
((
String
)
tm
.
get
(
key
));
}
}
}
}
}
}
}
}
mRootView
.
showMessage
(
"送單成功"
);
mRootView
.
showMessage
(
"送單成功"
);
MyOrderManage
.
getInstance
()
.
setNewFoodList
(
getOrderFoodLists
());
mDoshokuOrder
.
setNewFoodList
(
getOrderFoodLists
());
printSendOrder
(
true
);
printSendOrder
(
true
);
}
else
{
}
else
{
mRootView
.
showMessage
(
info
.
getErrMsg
());
mRootView
.
showMessage
(
info
.
getErrMsg
());
...
@@ -937,7 +832,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
...
@@ -937,7 +832,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
public
void
addOrderFood
(
boolean
isPrint
,
Class
afterToActivity
)
{
public
void
addOrderFood
(
boolean
isPrint
,
Class
afterToActivity
)
{
List
<
OrderDetail
>
foodLists
=
getOrderFoodLists
();
List
<
OrderDetail
>
foodLists
=
getOrderFoodLists
();
for
(
OrderDetail
food
:
foodLists
)
{
for
(
OrderDetail
food
:
foodLists
)
{
food
.
setOrderId
(
MyOrderManage
.
getInstance
()
.
getOrderId
());
food
.
setOrderId
(
mDoshokuOrder
.
getOrderId
());
}
}
AddOrderRequest
addOrderRequest
=
getAddOrderRequest
(
foodLists
);
AddOrderRequest
addOrderRequest
=
getAddOrderRequest
(
foodLists
);
RequestBody
requestBody
=
RequestBody
.
create
(
MediaType
.
parse
(
"application/json"
),
GsonUtils
.
GsonString
(
addOrderRequest
));
RequestBody
requestBody
=
RequestBody
.
create
(
MediaType
.
parse
(
"application/json"
),
GsonUtils
.
GsonString
(
addOrderRequest
));
...
@@ -1032,7 +927,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
...
@@ -1032,7 +927,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
//將取消信息保存到訂單信息類中
//將取消信息保存到訂單信息類中
DeleteOrderRequest
request
=
getDeleteOrderRequest
(
ids
,
reasonId
,
maxNumber
,
deleteNumber
);
DeleteOrderRequest
request
=
getDeleteOrderRequest
(
ids
,
reasonId
,
maxNumber
,
deleteNumber
);
m
yOrderManage
.
addDelete
Order
(
request
);
m
DoshokuOrder
.
addDeleteMeal
Order
(
request
);
mRootView
.
showBtnMealModifyRestoreVisibility
(
true
);
mRootView
.
showBtnMealModifyRestoreVisibility
(
true
);
...
@@ -1058,7 +953,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
...
@@ -1058,7 +953,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
item
.
setPrice
(
item
.
getNumber
()
*
item
.
getUnit_price
());
item
.
setPrice
(
item
.
getNumber
()
*
item
.
getUnit_price
());
}
}
}
}
m
yOrderManage
.
setDelete
Orders
(
null
);
m
DoshokuOrder
.
setDeleteMeal
Orders
(
null
);
mSelectMealAdapter
.
notifyDataSetChanged
();
mSelectMealAdapter
.
notifyDataSetChanged
();
//更新賬單金額
//更新賬單金額
updateBillInfo
();
updateBillInfo
();
...
@@ -1682,7 +1577,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
...
@@ -1682,7 +1577,7 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
* @return
* @return
*/
*/
public
boolean
memberPointsCondition
(
double
pointsRedeem
,
String
foodName
)
{
public
boolean
memberPointsCondition
(
double
pointsRedeem
,
String
foodName
)
{
MemberInfo
memberInfo
=
m
yOrderManage
.
getMemberInfo
();
MemberInfo
memberInfo
=
m
DoshokuOrder
.
getMemberInfo
();
if
(
memberInfo
==
null
)
{
if
(
memberInfo
==
null
)
{
//当前食品需要会员积分
//当前食品需要会员积分
if
(
pointsRedeem
>
0
)
{
if
(
pointsRedeem
>
0
)
{
...
@@ -2188,8 +2083,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
...
@@ -2188,8 +2083,8 @@ public class MealStandPresenter extends BaseOrderPresenter<MealStandContract.Mod
*/
*/
private
DeleteOrderRequest
getDeleteOrderRequest
(
String
ids
,
long
reasonId
,
int
maxNumber
,
int
deleteNumber
)
{
private
DeleteOrderRequest
getDeleteOrderRequest
(
String
ids
,
long
reasonId
,
int
maxNumber
,
int
deleteNumber
)
{
List
<
DeleteOrderRequest
.
DeleteBean
>
mapsDelete
=
getMapsDelete
(
ids
,
maxNumber
,
deleteNumber
);
List
<
DeleteOrderRequest
.
DeleteBean
>
mapsDelete
=
getMapsDelete
(
ids
,
maxNumber
,
deleteNumber
);
byte
type
=
(
byte
)
(
m
yOrderManage
.
isModifyOrder
()
?
2
:
1
);
byte
type
=
(
byte
)
(
m
DoshokuOrder
.
isModifyOrder
()
?
2
:
1
);
long
orderId
=
MyOrderManage
.
getInstance
()
.
getOrderId
();
long
orderId
=
mDoshokuOrder
.
getOrderId
();
DeleteOrderRequest
request
=
new
DeleteOrderRequest
();
DeleteOrderRequest
request
=
new
DeleteOrderRequest
();
request
.
setMapsDelete
(
mapsDelete
);
request
.
setMapsDelete
(
mapsDelete
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderContentPresenter.java
View file @
f47767b0
...
@@ -14,10 +14,11 @@ import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
...
@@ -14,10 +14,11 @@ import com.gingersoft.gsa.cloud.base.common.bean.BaseResult;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.DiscountItem
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountResult
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.CouponDiscountResult
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
order.BaseOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableExtBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableExtBean
;
...
@@ -119,7 +120,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -119,7 +120,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
public
OrderContentPresenter
(
OrderContentContract
.
Model
model
,
OrderContentContract
.
View
rootView
)
{
public
OrderContentPresenter
(
OrderContentContract
.
Model
model
,
OrderContentContract
.
View
rootView
)
{
super
(
model
,
rootView
);
super
(
model
,
rootView
);
this
.
IActivity
=
(
OrderContentActivity
)
rootView
;
this
.
IActivity
=
(
OrderContentActivity
)
rootView
;
if
(!
m
yOrderManage
.
isModifyOrder
())
{
if
(!
m
DoshokuOrder
.
isModifyOrder
())
{
//转移食品可多选
//转移食品可多选
mSelectMealAdapter
.
setSelectedMode
(
SelectMealAdapter
.
MULTIPLE_SELECTED
);
mSelectMealAdapter
.
setSelectedMode
(
SelectMealAdapter
.
MULTIPLE_SELECTED
);
}
}
...
@@ -209,7 +210,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -209,7 +210,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
// if (!canPay()) {
// if (!canPay()) {
// return;
// return;
// }
// }
if
(
hasNesOrderFoods
()
||
getNewDiscount
()
!=
null
||
m
yOrderManage
.
needUpdateMemberInfo
())
{
if
(
hasNesOrderFoods
()
||
getNewDiscount
()
!=
null
||
m
DoshokuOrder
.
needUpdateMemberInfo
())
{
Class
[]
parameterTypes
=
{
boolean
.
class
,
Class
.
class
};
Class
[]
parameterTypes
=
{
boolean
.
class
,
Class
.
class
};
Object
[]
parameters
=
{
false
,
OrderPayActivity
.
class
};
Object
[]
parameters
=
{
false
,
OrderPayActivity
.
class
};
CommonTipDialog
.
showDoubtDialog
(
IActivity
,
"賬單已變化,是否送單后去結賬"
,
BaseOrderPresenter
.
class
,
mBaseOrderPresenter
,
CommonTipDialog
.
showDoubtDialog
(
IActivity
,
"賬單已變化,是否送單后去結賬"
,
BaseOrderPresenter
.
class
,
mBaseOrderPresenter
,
...
@@ -258,10 +259,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -258,10 +259,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
@Override
@Override
public
void
onItemDeleteClick
(
BillItem
datasBean
,
int
position
)
{
public
void
onItemDeleteClick
(
BillItem
datasBean
,
int
position
)
{
remove
OrderDetai
lItem
(
position
);
remove
Bil
lItem
(
position
);
updateBillInfo
();
updateBillInfo
();
//更新總金額
IActivity
.
initOrderDetail
();
}
}
});
});
}
}
...
@@ -270,7 +269,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -270,7 +269,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
if
(
mFunctionList
.
size
()
>
0
)
{
if
(
mFunctionList
.
size
()
>
0
)
{
mFunctionList
.
clear
();
mFunctionList
.
clear
();
}
}
if
(
MyOrderManage
.
getInstance
()
.
isModifyOrder
())
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
RESTAURANT_MODE
)
&&
mDoshokuOrder
.
isModifyOrder
())
{
//修改訂單隱藏送單,印單功能
//修改訂單隱藏送單,印單功能
mFunctionList
.
add
(
new
Function
(
"結賬"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#DC0000"
),
24
));
mFunctionList
.
add
(
new
Function
(
"結賬"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#DC0000"
),
24
));
mFunctionList
.
add
(
new
Function
(
"折扣"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#008577"
),
24
));
mFunctionList
.
add
(
new
Function
(
"折扣"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#008577"
),
24
));
...
@@ -284,7 +283,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -284,7 +283,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
// if (functions.size() > 0) {
// if (functions.size() > 0) {
// mFunctionList.addAll(functions);
// mFunctionList.addAll(functions);
// } else {
// } else {
if
(
MyOrderManage
.
getInstance
().
getOrderType
()
==
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
)
{
mFunctionList
.
add
(
new
Function
(
"折扣"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#008577"
),
24
));
mFunctionList
.
add
(
new
Function
(
"折扣"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#008577"
),
24
));
mFunctionList
.
add
(
new
Function
(
"印單"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#FF8E04"
),
24
));
mFunctionList
.
add
(
new
Function
(
"印單"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#FF8E04"
),
24
));
mFunctionList
.
add
(
new
Function
(
"送單信息"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#008131"
),
24
));
mFunctionList
.
add
(
new
Function
(
"送單信息"
,
Color
.
parseColor
(
"#FFFFFF"
),
Color
.
parseColor
(
"#008131"
),
24
));
...
@@ -337,7 +336,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -337,7 +336,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
public
void
addOrderFood
(
boolean
isPrint
,
Class
afterToActivity
)
{
public
void
addOrderFood
(
boolean
isPrint
,
Class
afterToActivity
)
{
List
<
OrderDetail
>
foodLists
=
getOrderFoodLists
();
List
<
OrderDetail
>
foodLists
=
getOrderFoodLists
();
for
(
OrderDetail
food
:
foodLists
)
{
for
(
OrderDetail
food
:
foodLists
)
{
food
.
setOrderId
(
MyOrderManage
.
getInstance
()
.
getOrderId
());
food
.
setOrderId
(
mDoshokuOrder
.
getOrderId
());
}
}
AddOrderRequest
addOrderRequest
=
getAddOrderRequest
(
foodLists
);
AddOrderRequest
addOrderRequest
=
getAddOrderRequest
(
foodLists
);
RequestBody
requestBody
=
RequestBody
.
create
(
MediaType
.
parse
(
"application/json"
),
GsonUtils
.
GsonString
(
addOrderRequest
));
RequestBody
requestBody
=
RequestBody
.
create
(
MediaType
.
parse
(
"application/json"
),
GsonUtils
.
GsonString
(
addOrderRequest
));
...
@@ -421,7 +420,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -421,7 +420,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
public
void
printOrder
(
long
tableId
,
boolean
isSend
)
{
public
void
printOrder
(
long
tableId
,
boolean
isSend
)
{
RequestBody
requestBody
=
new
FormBody
.
Builder
()
RequestBody
requestBody
=
new
FormBody
.
Builder
()
.
add
(
"tableId"
,
tableId
+
""
)
.
add
(
"tableId"
,
tableId
+
""
)
.
add
(
"tableNumber"
,
mTableInfo
.
getTableNumber
())
.
add
(
"tableNumber"
,
mTableInfo
.
getTableNumber
())
.
build
();
.
build
();
mModel
.
printOrder
(
requestBody
)
mModel
.
printOrder
(
requestBody
)
.
subscribeOn
(
Schedulers
.
io
())
.
subscribeOn
(
Schedulers
.
io
())
...
@@ -459,7 +458,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -459,7 +458,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
mRootView
.
showMessage
(
"印單失敗!"
);
mRootView
.
showMessage
(
"印單失敗!"
);
if
(
isSend
)
{
if
(
isSend
)
{
//印單失敗但提交新食品成功,更新一遍訂單數據
//印單失敗但提交新食品成功,更新一遍訂單數據
loadOrder
(
MyOrderManage
.
getInstance
()
.
getOrderId
());
loadOrder
(
mDoshokuOrder
.
getOrderId
());
}
}
}
}
}
}
...
@@ -490,9 +489,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -490,9 +489,8 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
MemberInfo
memberInfo
=
couponResult
.
getMemberInfo
();
MemberInfo
memberInfo
=
couponResult
.
getMemberInfo
();
if
(
memberInfo
!=
null
)
{
if
(
memberInfo
!=
null
)
{
updateBillItem
=
true
;
updateBillItem
=
true
;
m
yOrderManage
.
setMemberInfo
(
memberInfo
);
m
DoshokuOrder
.
setMemberInfo
(
memberInfo
);
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createMemberDiscount
(
memberInfo
));
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createMemberDiscount
(
memberInfo
));
// addMemberDiscount(memberInfo.getId(), memberInfo.getMemberDiscount(), memberInfo.getMemberName(), memberInfo.getLevelName1(), BillItem.BILL_ITEM_NO_ORDER_STATUS);
}
}
CouponDiscountBean
couponBean
=
couponResult
.
getCouponBean
();
CouponDiscountBean
couponBean
=
couponResult
.
getCouponBean
();
if
(
couponBean
!=
null
)
{
if
(
couponBean
!=
null
)
{
...
@@ -501,13 +499,9 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -501,13 +499,9 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
}
}
updateBillItem
=
true
;
updateBillItem
=
true
;
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createCouponDiscount
(
couponBean
));
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createCouponDiscount
(
couponBean
));
// addCouponDiscount(couponBean, myOrderManage.getMemberInfo().getId(), BillItem.BILL_ITEM_NO_ORDER_STATUS);
}
}
if
(
updateBillItem
)
{
if
(
updateBillItem
)
{
updateBillInfo
();
updateBillInfo
();
//更新總金額
IActivity
.
initOrderDetail
();
myOrderManage
.
setTotalAmount
(
getTotalAmount
());
}
}
}
}
}
else
{
}
else
{
...
@@ -659,9 +653,9 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -659,9 +653,9 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
RequestBody
requestBody
=
new
FormBody
.
Builder
()
RequestBody
requestBody
=
new
FormBody
.
Builder
()
.
add
(
"tableId"
,
String
.
valueOf
(
mTableInfo
.
getId
()))
.
add
(
"tableId"
,
String
.
valueOf
(
mTableInfo
.
getId
()))
.
add
(
"targetId"
,
String
.
valueOf
(
dataBean
.
getId
()))
.
add
(
"targetId"
,
String
.
valueOf
(
dataBean
.
getId
()))
.
add
(
"tableNumber"
,
mTableInfo
.
getTableNumber
())
.
add
(
"tableNumber"
,
mTableInfo
.
getTableNumber
())
.
add
(
"targetTableNumber"
,
dataBean
.
getTableNumber
())
.
add
(
"targetTableNumber"
,
dataBean
.
getTableNumber
())
.
add
(
"orderId"
,
String
.
valueOf
(
MyOrderManage
.
getInstance
()
.
getOrderId
()))
.
add
(
"orderId"
,
String
.
valueOf
(
mDoshokuOrder
.
getOrderId
()))
.
add
(
"orderDetailsIds"
,
ids
)
.
add
(
"orderDetailsIds"
,
ids
)
.
build
();
.
build
();
...
@@ -688,8 +682,6 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -688,8 +682,6 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
updateOrderDetails
(
info
);
updateOrderDetails
(
info
);
updateBillInfo
();
updateBillInfo
();
IActivity
.
initOrderDetail
();
IActivity
.
backPressed
();
IActivity
.
backPressed
();
}
else
{
}
else
{
mRootView
.
showMessage
(
"獲取訂單數據失敗"
);
mRootView
.
showMessage
(
"獲取訂單數據失敗"
);
...
@@ -787,7 +779,6 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -787,7 +779,6 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
mDiscountDialog
.
setOnClickListener
(
new
DiscountDialog
.
Builder
.
OnClickListener
()
{
mDiscountDialog
.
setOnClickListener
(
new
DiscountDialog
.
Builder
.
OnClickListener
()
{
@Override
@Override
public
void
onItemClick
(
Discount
item
,
int
position
)
{
public
void
onItemClick
(
Discount
item
,
int
position
)
{
// addOrderDiscount(false, item, BillItem.BILL_ITEM_NO_ORDER_STATUS);
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createNomalDiscount
(
item
));
mShoppingCart
.
addMultyDiscount
(
mShoppingCart
.
createNomalDiscount
(
item
));
updateBillInfo
();
updateBillInfo
();
}
}
...
@@ -818,7 +809,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -818,7 +809,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
mTableInfo
.
setPerson
(
info
.
getData
().
getPerson
());
mTableInfo
.
setPerson
(
info
.
getData
().
getPerson
());
//緩存訂單信息
//緩存訂單信息
MyOrderManage
.
getInstance
().
setOrderBean
(
new
OrderBean
(
info
.
getData
()));
mDoshokuOrder
.
setOrderPlaced
(
new
OrderBean
(
info
.
getData
()));
//緩存食品信息
//緩存食品信息
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
info
.
getData
().
getOrderDetails
()));
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
info
.
getData
().
getOrderDetails
()));
...
@@ -877,13 +868,20 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -877,13 +868,20 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
return
true
;
return
true
;
}
}
public
void
removeOrderDetailItem
(
int
index
)
{
public
void
removeBillItem
(
int
index
)
{
if
(
index
<
mBillItemList
.
size
())
{
if
(
index
<
mBillItemList
.
size
())
{
BillItem
billItem
=
mBillItemList
.
get
(
index
);
if
(
billItem
instanceof
DiscountItem
)
{
//刪除折扣列表對應數據
mShoppingCart
.
delMultyDiscount
(((
DiscountItem
)
billItem
).
getDiscount
());
}
mBillItemList
.
remove
(
index
);
mBillItemList
.
remove
(
index
);
mOrderMoneyAdapter
.
notifyDataSetChanged
();
mOrderMoneyAdapter
.
notifyDataSetChanged
();
}
}
}
}
private
boolean
canPrint
()
{
private
boolean
canPrint
()
{
if
(
getFoodCount
()
==
0
)
{
if
(
getFoodCount
()
==
0
)
{
mRootView
.
showMessage
(
"沒有食品,不能印單"
);
mRootView
.
showMessage
(
"沒有食品,不能印單"
);
...
@@ -905,7 +903,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
...
@@ -905,7 +903,7 @@ public class OrderContentPresenter extends BaseOrderPresenter<OrderContentContra
mRootView
.
showMessage
(
"請選擇轉移食品"
);
mRootView
.
showMessage
(
"請選擇轉移食品"
);
return
false
;
return
false
;
}
}
if
(
m
yOrderManage
.
getOrderFoodList
()
.
get
(
mSelectMealAdapter
.
getSelect_start_position
()).
isNew
()
==
true
)
{
if
(
m
OrderMealList
.
get
(
mSelectMealAdapter
.
getSelect_start_position
()).
isNew
()
==
true
)
{
mRootView
.
showMessage
(
"請選擇已送單食品轉移"
);
mRootView
.
showMessage
(
"請選擇已送單食品轉移"
);
return
false
;
return
false
;
}
}
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/OrderPayPresenter.java
View file @
f47767b0
...
@@ -2,17 +2,12 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter;
...
@@ -2,17 +2,12 @@ package com.gingersoft.gsa.cloud.table.mvp.presenter;
import
android.app.Application
;
import
android.app.Application
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderPayRequest
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderPayRequest
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.OpenTableManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.JsonUtils
;
import
com.gingersoft.gsa.cloud.base.utils.JsonUtils
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils
;
import
com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils
;
...
@@ -219,7 +214,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
...
@@ -219,7 +214,7 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
* 結賬
* 結賬
*/
*/
public
void
toOrderPay
(
boolean
show
)
{
public
void
toOrderPay
(
boolean
show
)
{
if
(
m
yOrderManage
.
isModifyOrder
())
{
if
(
m
DoshokuOrder
.
isModifyOrder
())
{
//修改訂單
//修改訂單
updateOrderPay
();
updateOrderPay
();
return
;
return
;
...
@@ -252,13 +247,13 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
...
@@ -252,13 +247,13 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
if
(
baseResult
.
isSuccess
())
{
if
(
baseResult
.
isSuccess
())
{
OrderPayRespose
orderPayRespose
=
JsonUtils
.
parseObject
(
baseResult
.
getData
(),
OrderPayRespose
.
class
);
OrderPayRespose
orderPayRespose
=
JsonUtils
.
parseObject
(
baseResult
.
getData
(),
OrderPayRespose
.
class
);
if
(
orderPayRespose
!=
null
)
{
if
(
orderPayRespose
!=
null
)
{
if
(
m
yOrderManage
.
getMemberInfo
()
!=
null
)
{
if
(
m
DoshokuOrder
.
getMemberInfo
()
!=
null
)
{
MyOrderManage
.
getInstance
()
.
setAddPoints
(
orderPayRespose
.
getAddPoints
());
mDoshokuOrder
.
setAddPoints
(
orderPayRespose
.
getAddPoints
());
MyOrderManage
.
getInstance
()
.
setNowPoints
(
orderPayRespose
.
getNowPoints
());
mDoshokuOrder
.
setNowPoints
(
orderPayRespose
.
getNowPoints
());
MyOrderManage
.
getInstance
()
.
setOldPoints
(
orderPayRespose
.
getOldPoints
());
mDoshokuOrder
.
setOldPoints
(
orderPayRespose
.
getOldPoints
());
}
else
{
}
else
{
if
(!
TextUtils
.
isEmpty
(
orderPayRespose
.
getVerifyCode
()))
{
if
(!
TextUtils
.
isEmpty
(
orderPayRespose
.
getVerifyCode
()))
{
MyOrderManage
.
getInstance
()
.
setIntegralQrcode
(
orderPayRespose
.
getVerifyCode
());
mDoshokuOrder
.
setIntegralQrcode
(
orderPayRespose
.
getVerifyCode
());
}
}
}
}
}
}
...
@@ -279,12 +274,12 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
...
@@ -279,12 +274,12 @@ public class OrderPayPresenter extends BaseOrderPresenter<OrderPayContract.Model
private
OrderPayRequest
getOrderPayRequest
(
OrderPayView
orderPayView
)
{
private
OrderPayRequest
getOrderPayRequest
(
OrderPayView
orderPayView
)
{
MemberInfo
memberInfo
=
m
yOrderManage
.
getMemberInfo
();
MemberInfo
memberInfo
=
m
DoshokuOrder
.
getMemberInfo
();
List
<
PayMethod
>
payMethodList
=
orderPayView
.
getBillMoneyList
();
List
<
PayMethod
>
payMethodList
=
orderPayView
.
getBillMoneyList
();
OrderPayRequest
payRequest
=
new
OrderPayRequest
();
OrderPayRequest
payRequest
=
new
OrderPayRequest
();
payRequest
.
setOrderId
(
MyOrderManage
.
getInstance
()
.
getOrderId
());
payRequest
.
setOrderId
(
mDoshokuOrder
.
getOrderId
());
payRequest
.
setOrderPayType
(
orderPayType
);
payRequest
.
setOrderPayType
(
orderPayType
);
payRequest
.
setLinePayType
(
orderPayView
.
getLinePayType
());
payRequest
.
setLinePayType
(
orderPayView
.
getLinePayType
());
payRequest
.
setTableId
(
mTableInfo
.
getId
());
payRequest
.
setTableId
(
mTableInfo
.
getId
());
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/TablePresenter.java
View file @
f47767b0
...
@@ -5,13 +5,11 @@ import android.content.Context;
...
@@ -5,13 +5,11 @@ import android.content.Context;
import
android.os.CountDownTimer
;
import
android.os.CountDownTimer
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
android.view.View
;
import
android.view.View
;
import
com.billy.cc.core.component.CC
;
import
com.billy.cc.core.component.CC
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.common.bean.BaseResult
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableExtBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableExtBean
;
...
@@ -326,7 +324,9 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
...
@@ -326,7 +324,9 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
public
void
onNext
(
@NonNull
BaseOrderRespose
respose
)
{
public
void
onNext
(
@NonNull
BaseOrderRespose
respose
)
{
if
(
respose
.
isSuccess
())
{
if
(
respose
.
isSuccess
())
{
TableBean
.
DataBean
tableInfo
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
DoshokuOrder
doshokuOrder
=
DoshokuOrder
.
getInstance
();
TableBean
.
DataBean
tableInfo
=
doshokuOrder
.
getOpenTableInfo
();
tableInfo
.
setPerson
(
0
);
tableInfo
.
setPerson
(
0
);
//設置當前開台數據1584427984728 1584428017196 1584428086282
//設置當前開台數據1584427984728 1584428017196 1584428086282
// TableBean.DataBean dataBean = getTableById(tableId);
// TableBean.DataBean dataBean = getTableById(tableId);
...
@@ -345,16 +345,16 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
...
@@ -345,16 +345,16 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
List
<
OrderBean
.
OrderDetailsBean
>
orderDetailsBeans
=
respose
.
getData
().
getOrderDetails
();
List
<
OrderBean
.
OrderDetailsBean
>
orderDetailsBeans
=
respose
.
getData
().
getOrderDetails
();
//緩存訂單信息
//緩存訂單信息
MyOrderManage
.
getInstance
().
setOrderBean
(
new
OrderBean
(
orderBean
));
doshokuOrder
.
setOrderPlaced
(
new
OrderBean
(
orderBean
));
//緩存食品信息
//緩存食品信息
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
MyOrderManage
.
getInstance
().
setOrderFood
List
(
orderDetailList
);
doshokuOrder
.
getShoppingCart
().
setOrderCommodity
List
(
orderDetailList
);
}
else
{
}
else
{
MyOrderManage
.
getInstance
().
setOrderBean
(
null
);
doshokuOrder
.
setOrderPlaced
(
null
);
MyOrderManage
.
getInstance
().
setOrderFood
List
(
new
ArrayList
<>());
doshokuOrder
.
getShoppingCart
().
setOrderCommodity
List
(
new
ArrayList
<>());
}
}
DoshokuOrder
.
getInstance
()
.
setOpenTableInfo
(
openTableBean
);
doshokuOrder
.
setOpenTableInfo
(
openTableBean
);
printParper
();
printParper
();
}
else
{
}
else
{
...
@@ -372,10 +372,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
...
@@ -372,10 +372,7 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
.
build
()
.
build
()
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
//清空賬單數據
//清空賬單數據
MyOrderManage
.
getInstance
().
clear
();
//清空賬單數據
DoshokuOrder
.
getInstance
().
initialization
();
DoshokuOrder
.
getInstance
().
initialization
();
mRootView
.
canceTableAction
();
mRootView
.
canceTableAction
();
});
});
}
}
...
@@ -415,7 +412,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
...
@@ -415,7 +412,6 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
}
}
DoshokuOrder
doshokuOrder
=
DoshokuOrder
.
getInstance
();
DoshokuOrder
doshokuOrder
=
DoshokuOrder
.
getInstance
();
doshokuOrder
.
setOpenTableInfo
(
openTableBean
);
OrderBean
orderBean
=
respose
.
getData
();
OrderBean
orderBean
=
respose
.
getData
();
if
(
orderBean
!=
null
&&
respose
.
getData
().
getOrderDetails
()
!=
null
)
{
if
(
orderBean
!=
null
&&
respose
.
getData
().
getOrderDetails
()
!=
null
)
{
...
@@ -431,19 +427,17 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
...
@@ -431,19 +427,17 @@ public class TablePresenter extends BasePresenter<TableContract.Model, TableCont
setTopId
(
mealCommoditysBeans
);
setTopId
(
mealCommoditysBeans
);
//設置用餐人數
//設置用餐人數
doshokuOrder
.
getOpenTableInfo
()
.
setPerson
(
orderBean
.
getPerson
());
openTableBean
.
setPerson
(
orderBean
.
getPerson
());
//緩存訂單信息
//緩存訂單信息
doshokuOrder
.
setOrderPlaced
(
new
OrderBean
(
orderBean
));
doshokuOrder
.
setOrderPlaced
(
new
OrderBean
(
orderBean
));
doshokuOrder
.
getShoppingCart
().
addCommodityList
(
OrderDetail
.
orderTransOrderDetails
(
mealCommoditysBeans
));
doshokuOrder
.
getShoppingCart
().
addCommodityList
(
OrderDetail
.
orderTransOrderDetails
(
mealCommoditysBeans
));
if
(
orderBean
.
getMemberInfo
()
!=
null
)
{
// MyOrderManage.getInstance().setOrderFoodList(mealCommodityList);
//设置会员信息
// if (orderBean.getMemberInfo() != null) {
doshokuOrder
.
setMemberInfo
(
orderBean
.
getMemberInfo
());
// //设置会员信息
doshokuOrder
.
setMemberUpdateStatus
(
true
+
"-"
+
true
);
// MyOrderManage.getInstance().setMemberInfo(orderBean.getMemberInfo());
}
else
{
// MyOrderManage.getInstance().setMemberUpdateStatus(true + "-" + true);
doshokuOrder
.
setMemberUpdateStatus
(
false
+
"-"
+
false
);
// }else {
}
// MyOrderManage.getInstance().setMemberUpdateStatus(false + "-" + false);
// }
}
else
{
}
else
{
doshokuOrder
.
setOrderPlaced
(
null
);
doshokuOrder
.
setOrderPlaced
(
null
);
doshokuOrder
.
getShoppingCart
().
setOrderCommodityList
(
new
ArrayList
<>());
doshokuOrder
.
getShoppingCart
().
setOrderCommodityList
(
new
ArrayList
<>());
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/presenter/orderManager/AllOrderPresenter.java
View file @
f47767b0
...
@@ -5,13 +5,15 @@ import android.content.Context;
...
@@ -5,13 +5,15 @@ import android.content.Context;
import
android.content.Intent
;
import
android.content.Intent
;
import
android.text.TextUtils
;
import
android.text.TextUtils
;
import
android.util.Log
;
import
android.util.Log
;
import
com.billy.cc.core.component.CC
;
import
com.billy.cc.core.component.CC
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
...
@@ -70,12 +72,17 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
...
@@ -70,12 +72,17 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
private
OrderCenterAdapter
mOrderCenterAdapter
;
private
OrderCenterAdapter
mOrderCenterAdapter
;
private
List
<
OrderDetailItem
>
mOrderItemList
=
new
ArrayList
<>();
private
List
<
OrderDetailItem
>
mOrderItemList
=
new
ArrayList
<>();
private
DoshokuOrder
doshokuOrder
;
private
ShoppingCart
shoppingCart
;
@Inject
@Inject
public
AllOrderPresenter
(
AllOrderContract
.
Model
model
,
AllOrderContract
.
View
rootView
)
{
public
AllOrderPresenter
(
AllOrderContract
.
Model
model
,
AllOrderContract
.
View
rootView
)
{
super
(
model
,
rootView
);
super
(
model
,
rootView
);
AllOrderFragment
allOrderFragment
=
(
AllOrderFragment
)
rootView
;
AllOrderFragment
allOrderFragment
=
(
AllOrderFragment
)
rootView
;
this
.
IActivity
=
(
OrderCenterActivity
)
allOrderFragment
.
getCurrentActivity
();
this
.
IActivity
=
(
OrderCenterActivity
)
allOrderFragment
.
getCurrentActivity
();
doshokuOrder
=
DoshokuOrder
.
getInstance
();
shoppingCart
=
doshokuOrder
.
getShoppingCart
();
}
}
@Override
@Override
...
@@ -108,12 +115,13 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
...
@@ -108,12 +115,13 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
@Override
@Override
public
void
onModifyClick
(
OrderDetailItem
datasBean
,
int
position
)
{
public
void
onModifyClick
(
OrderDetailItem
datasBean
,
int
position
)
{
if
(
datasBean
.
getRestaurantTable
()
==
null
)
{
if
(
datasBean
.
getRestaurantTable
()
==
null
)
{
mRootView
.
showMessage
(
"餐檯不存在,無法修改訂單"
);
mRootView
.
showMessage
(
"餐檯不存在,無法修改訂單"
);
return
;
return
;
}
}
//設置為修改訂單操作
//設置為修改訂單操作
MyOrderManage
.
getInstance
()
.
setModifyOrder
(
true
);
doshokuOrder
.
setModifyOrder
(
true
);
/**
/**
* 緩存訂單信息
* 緩存訂單信息
*/
*/
...
@@ -126,7 +134,7 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
...
@@ -126,7 +134,7 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
if
(
datasBean
.
getDiscountDetails
()
!=
null
)
{
if
(
datasBean
.
getDiscountDetails
()
!=
null
)
{
orderBean
.
setDiscountDetails
(
datasBean
.
getDiscountDetails
());
orderBean
.
setDiscountDetails
(
datasBean
.
getDiscountDetails
());
}
}
MyOrderManage
.
getInstance
().
setOrderBean
(
orderBean
);
doshokuOrder
.
setOrderPlaced
(
orderBean
);
TableBean
.
DataBean
tableBean
=
new
TableBean
.
DataBean
(
datasBean
.
getRestaurantTable
());
TableBean
.
DataBean
tableBean
=
new
TableBean
.
DataBean
(
datasBean
.
getRestaurantTable
());
if
(!
TextUtils
.
isEmpty
(
tableBean
.
getTableNumber
()))
{
if
(!
TextUtils
.
isEmpty
(
tableBean
.
getTableNumber
()))
{
...
@@ -135,14 +143,14 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
...
@@ -135,14 +143,14 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
tableBean
.
setTableName
(
tableBean
.
getTableName
());
tableBean
.
setTableName
(
tableBean
.
getTableName
());
}
}
tableBean
.
setPerson
(
datasBean
.
getPerson
());
tableBean
.
setPerson
(
datasBean
.
getPerson
());
DoshokuOrder
.
getInstance
()
.
setOpenTableInfo
(
tableBean
);
doshokuOrder
.
setOpenTableInfo
(
tableBean
);
List
<
OrderBean
.
OrderDetailsBean
>
orderDetailsBeans
=
datasBean
.
getOrderDetails
();
List
<
OrderBean
.
OrderDetailsBean
>
orderDetailsBeans
=
datasBean
.
getOrderDetails
();
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
MyOrderManage
.
getInstance
().
setOrderFood
List
(
orderDetailList
);
doshokuOrder
.
getShoppingCart
().
addCommodity
List
(
orderDetailList
);
if
(
datasBean
.
getMemberInfo
()
!=
null
)
{
if
(
datasBean
.
getMemberInfo
()
!=
null
)
{
MyOrderManage
.
getInstance
()
.
setMemberInfo
(
datasBean
.
getMemberInfo
());
doshokuOrder
.
setMemberInfo
(
datasBean
.
getMemberInfo
());
}
}
Intent
intent
=
new
Intent
(
IActivity
,
MealStandActivity
.
class
);
Intent
intent
=
new
Intent
(
IActivity
,
MealStandActivity
.
class
);
...
@@ -172,29 +180,29 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
...
@@ -172,29 +180,29 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
private
void
startPrintOrder
(
OrderDetailItem
orderDetailItem
,
List
<
OrderDetail
>
orderDetailList
)
{
private
void
startPrintOrder
(
OrderDetailItem
orderDetailItem
,
List
<
OrderDetail
>
orderDetailList
)
{
double
wholeAmount
=
getWholeAmount
(
orderDetailList
);
double
wholeAmount
=
getWholeAmount
(
orderDetailList
);
MyOrderManage
.
getInstance
().
setOrderFoodList
(
orderDetailList
);
doshokuOrder
.
setOrderId
(
orderDetailItem
.
getId
()
);
MyOrderManage
.
getInstance
().
setOrderMoneyList
(
getOrderMoneyList
(
orderDetailItem
,
wholeAmount
)
);
shoppingCart
.
setOrderCommodityList
(
orderDetailList
);
MyOrderManage
.
getInstance
().
setOrderId
(
orderDetailItem
.
getId
(
));
shoppingCart
.
setBillItemList
(
getOrderMoneyList
(
orderDetailItem
,
wholeAmount
));
MyOrderManage
.
getInstance
()
.
setWholeAmount
(
wholeAmount
);
shoppingCart
.
setWholeAmount
(
wholeAmount
);
MyOrderManage
.
getInstance
()
.
setTotalAmount
(
orderDetailItem
.
getTotalAmount
());
shoppingCart
.
setTotalAmount
(
orderDetailItem
.
getTotalAmount
());
TableBean
.
DataBean
dataBean
=
new
TableBean
.
DataBean
();
TableBean
.
DataBean
dataBean
=
new
TableBean
.
DataBean
();
dataBean
.
setTableName
(
orderDetailItem
.
getTableName
());
dataBean
.
setTableName
(
orderDetailItem
.
getTableName
());
if
(!
TextUtils
.
isEmpty
(
orderDetailItem
.
getCreateTime
()))
{
if
(!
TextUtils
.
isEmpty
(
orderDetailItem
.
getCreateTime
()))
{
dataBean
.
setCreateTime
(
TimeUtils
.
getStringByFormat
(
new
Date
(
orderDetailItem
.
getCreateTime
()),
TimeUtils
.
DEFAULT_DATE_FORMAT_YMDHM
));
dataBean
.
setCreateTime
(
TimeUtils
.
getStringByFormat
(
new
Date
(
orderDetailItem
.
getCreateTime
()),
TimeUtils
.
DEFAULT_DATE_FORMAT_YMDHM
));
}
}
dataBean
.
setPerson
(
orderDetailItem
.
getPerson
());
dataBean
.
setPerson
(
orderDetailItem
.
getPerson
());
DoshokuOrder
.
getInstance
()
.
setOpenTableInfo
(
dataBean
);
doshokuOrder
.
setOpenTableInfo
(
dataBean
);
if
(
orderDetailItem
.
getMemberInfo
()
!=
null
)
{
if
(
orderDetailItem
.
getMemberInfo
()
!=
null
)
{
MyOrderManage
.
getInstance
()
.
setMemberInfo
(
orderDetailItem
.
getMemberInfo
());
doshokuOrder
.
setMemberInfo
(
orderDetailItem
.
getMemberInfo
());
}
else
{
}
else
{
MyOrderManage
.
getInstance
()
.
setIntegralQrcode
(
orderDetailItem
.
getVerifyCode
());
doshokuOrder
.
setIntegralQrcode
(
orderDetailItem
.
getVerifyCode
());
}
}
List
<
PayMethod
>
payMethodList
=
getPayMethodList
(
orderDetailItem
.
getOrderPays
());
List
<
PayMethod
>
payMethodList
=
getPayMethodList
(
orderDetailItem
.
getOrderPays
());
if
(
payMethodList
!=
null
)
{
if
(
payMethodList
!=
null
)
{
//設置打印所需支付方式
//設置打印所需支付方式
MyOrderManage
.
getInstance
()
.
setBillMoney
(
payMethodList
);
doshokuOrder
.
setBillMoney
(
payMethodList
);
}
}
CC
.
obtainBuilder
(
"Component.Print"
)
CC
.
obtainBuilder
(
"Component.Print"
)
.
setActionName
(
"printActivity"
)
.
setActionName
(
"printActivity"
)
...
@@ -202,16 +210,13 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
...
@@ -202,16 +210,13 @@ public class AllOrderPresenter extends BasePresenter<AllOrderContract.Model, All
.
build
()
.
build
()
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
Log
.
e
(
"error"
,
"是否成功打印:"
+
result
.
isSuccess
());
Log
.
e
(
"error"
,
"是否成功打印:"
+
result
.
isSuccess
());
doshokuOrder
.
initialization
();
MyOrderManage
.
getInstance
().
clear
();
DoshokuOrder
.
getInstance
().
setOpenTableInfo
(
null
);
});
});
}
}
private
List
<
Bill
OrderMoney
>
getOrderMoneyList
(
OrderDetailItem
orderDetailItem
,
double
totalMoney
)
{
private
List
<
Bill
Item
>
getOrderMoneyList
(
OrderDetailItem
orderDetailItem
,
double
totalMoney
)
{
List
<
SectionTextItem3
>
printOrderMoneyList
=
new
ArrayList
<>();
List
<
SectionTextItem3
>
printOrderMoneyList
=
new
ArrayList
<>();
List
<
Bill
OrderMoney
>
printBillOrderMoneyList
=
new
ArrayList
<>();
List
<
Bill
Item
>
printBillOrderMoneyList
=
new
ArrayList
<>();
SectionTextItem3
serviceAmountSection
=
getOrderServiceAmountSection
(
orderDetailItem
);
SectionTextItem3
serviceAmountSection
=
getOrderServiceAmountSection
(
orderDetailItem
);
if
(
serviceAmountSection
!=
null
)
{
if
(
serviceAmountSection
!=
null
)
{
printOrderMoneyList
.
add
(
serviceAmountSection
);
printOrderMoneyList
.
add
(
serviceAmountSection
);
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/MealStandActivity.java
View file @
f47767b0
...
@@ -28,7 +28,7 @@ import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
...
@@ -28,7 +28,7 @@ import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
order.BaseOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.VibratorUtils
;
import
com.gingersoft.gsa.cloud.base.utils.VibratorUtils
;
...
@@ -307,7 +307,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -307,7 +307,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
}
}
mPresenter
.
toFindMeal
(
inputText
);
mPresenter
.
toFindMeal
(
inputText
);
});
});
if
(
!
MyOrderManage
.
getInstance
().
isModifyOrder
())
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
RESTAURANT_MODE
)
&&
!
DoshokuOrder
.
getInstance
().
isModifyOrder
())
{
//根据倒计时时间自动退出当前页面
//根据倒计时时间自动退出当前页面
initAutoQuit
();
initAutoQuit
();
}
}
...
@@ -326,7 +326,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -326,7 +326,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
}
}
private
void
initTableDetail
()
{
private
void
initTableDetail
()
{
if
(
MyOrderManage
.
getInstance
().
getOrderType
()
==
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
)
{
TableBean
.
DataBean
tableBean
=
new
TableBean
.
DataBean
();
TableBean
.
DataBean
tableBean
=
new
TableBean
.
DataBean
();
tableBean
.
setPerson
(
1
);
tableBean
.
setPerson
(
1
);
tableBean
.
setTableName
(
"外賣"
);
tableBean
.
setTableName
(
"外賣"
);
...
@@ -347,7 +347,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -347,7 +347,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
mPresenter
.
resetSelected
();
mPresenter
.
resetSelected
();
mPresenter
.
updateOrderFoodNumber
();
mPresenter
.
updateOrderFoodNumber
();
mPresenter
.
updateFoodSoldoutCtrData
();
mPresenter
.
updateFoodSoldoutCtrData
();
if
(
MyOrderManage
.
getInstance
().
getMemberInfo
()
!=
null
)
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
RESTAURANT_MODE
)
&&
DoshokuOrder
.
getInstance
().
getMemberInfo
()
!=
null
)
{
useMember
();
useMember
();
}
}
initOrderDetail
();
initOrderDetail
();
...
@@ -589,7 +589,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -589,7 +589,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@OnClick
(
R2
.
id
.
btn_table
)
@OnClick
(
R2
.
id
.
btn_table
)
void
onClickTable
()
{
void
onClickTable
()
{
if
(
MyOrderManage
.
getInstance
().
getOrderType
()
==
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
)
{
return
;
return
;
}
}
//type取值:1:qrCdoetype,2:手機號,3:memberId
//type取值:1:qrCdoetype,2:手機號,3:memberId
...
@@ -612,18 +612,17 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -612,18 +612,17 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
public
void
onUseMember
(
UseMemberDialog
dialog
)
{
public
void
onUseMember
(
UseMemberDialog
dialog
)
{
if
(
mMemberInfo
!=
null
)
{
if
(
mMemberInfo
!=
null
)
{
dialog
.
dismiss
();
dialog
.
dismiss
();
MyOrderManage
.
getInstance
().
setMemberInfo
(
mMemberInfo
);
DoshokuOrder
.
getInstance
().
setMemberInfo
(
mMemberInfo
);
//添加会员折扣行
//添加会员折扣行
mPresenter
.
getShoppingCart
().
addMultyDiscount
(
mPresenter
.
getShoppingCart
().
createMemberDiscount
(
mMemberInfo
));
mPresenter
.
getShoppingCart
().
addMultyDiscount
(
mPresenter
.
getShoppingCart
().
createMemberDiscount
(
mMemberInfo
));
// mPresenter.getShoppingCart().addMultyDiscount(mMemberInfo.getId(), mMemberInfo.getMemberDiscount(), mMemberInfo.getMemberName(), mMemberInfo.getLevelName1(), BillOrderMoney.BILL_ITEM_NO_ORDER_STATUS);
useMember
();
useMember
();
if
(
MyOrderManage
.
getInstance
().
needUpdateMemberInfo
())
{
if
(
DoshokuOrder
.
getInstance
().
needUpdateMemberInfo
())
{
return
;
return
;
}
}
String
[]
updateMemberStatus
=
MyOrderManage
.
getInstance
().
getMemberUpdateStatus
().
split
(
"-"
);
String
[]
updateMemberStatus
=
DoshokuOrder
.
getInstance
().
getMemberUpdateStatus
().
split
(
"-"
);
if
(
Boolean
.
parseBoolean
(
updateMemberStatus
[
0
])
==
true
)
{
if
(
Boolean
.
parseBoolean
(
updateMemberStatus
[
0
])
==
true
)
{
MyOrderManage
.
getInstance
().
setMemberUpdateStatus
(
updateMemberStatus
[
0
]
+
"-"
+
true
);
DoshokuOrder
.
getInstance
().
setMemberUpdateStatus
(
updateMemberStatus
[
0
]
+
"-"
+
true
);
}
}
}
else
{
}
else
{
showMessage
(
"請輸入正確的會員號碼!"
);
showMessage
(
"請輸入正確的會員號碼!"
);
...
@@ -633,21 +632,20 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -633,21 +632,20 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@Override
@Override
public
void
clearMemberInfo
()
{
public
void
clearMemberInfo
()
{
btn_table
.
setBackgroundColor
(
Color
.
parseColor
(
"#336699"
));
btn_table
.
setBackgroundColor
(
Color
.
parseColor
(
"#336699"
));
MyOrderManage
.
getInstance
().
setMemberInfo
(
null
);
DoshokuOrder
.
getInstance
().
setMemberInfo
(
null
);
//刪除會員折扣行
//更新賬單信息
// mPresenter.removeMemberDiscountItem();
mPresenter
.
updateBillInfo
();
mPresenter
.
updateBillInfo
();
if
(
DoshokuOrder
.
getInstance
().
needUpdateMemberInfo
())
{
if
(
MyOrderManage
.
getInstance
().
needUpdateMemberInfo
())
{
return
;
return
;
}
}
String
[]
updateMemberStatus
=
MyOrderManage
.
getInstance
().
getMemberUpdateStatus
().
split
(
"-"
);
String
[]
updateMemberStatus
=
DoshokuOrder
.
getInstance
().
getMemberUpdateStatus
().
split
(
"-"
);
if
(
Boolean
.
parseBoolean
(
updateMemberStatus
[
0
])
==
true
)
{
if
(
Boolean
.
parseBoolean
(
updateMemberStatus
[
0
])
==
true
)
{
MyOrderManage
.
getInstance
().
setMemberUpdateStatus
(
updateMemberStatus
[
0
]
+
"-"
+
false
);
DoshokuOrder
.
getInstance
().
setMemberUpdateStatus
(
updateMemberStatus
[
0
]
+
"-"
+
false
);
}
}
}
}
});
});
}
}
mUseMemberDialog
.
setMemberInfo
(
DoshokuOrder
.
getInstance
().
getMemberInfo
());
mUseMemberDialog
.
build
().
show
();
mUseMemberDialog
.
build
().
show
();
}
}
...
@@ -702,7 +700,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -702,7 +700,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
int
id
=
v
.
getId
();
int
id
=
v
.
getId
();
if
(
id
==
R
.
id
.
btn_numberman
)
{
if
(
id
==
R
.
id
.
btn_numberman
)
{
if
(
MyOrderManage
.
getInstance
().
getOrderType
()
==
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
)
{
return
;
return
;
}
}
showChoosePeopleNumDialog
(
true
);
showChoosePeopleNumDialog
(
true
);
...
@@ -728,7 +726,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -728,7 +726,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
mPresenter
.
restoreDeleteFood
();
mPresenter
.
restoreDeleteFood
();
showBtnMealModifyRestoreVisibility
(
false
);
showBtnMealModifyRestoreVisibility
(
false
);
}
else
if
(
id
==
R
.
id
.
btn_send_order
)
{
}
else
if
(
id
==
R
.
id
.
btn_send_order
)
{
if
(
MyOrderManage
.
getInstance
().
getOrderType
()
==
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
TAKEAWAY_TYPE
)
)
{
CC
.
obtainBuilder
(
"ComponentDeliveryPick"
)
CC
.
obtainBuilder
(
"ComponentDeliveryPick"
)
.
setActionName
(
"SendOrder"
)
.
setActionName
(
"SendOrder"
)
.
build
()
.
build
()
...
@@ -770,14 +768,14 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -770,14 +768,14 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
case
3
:
case
3
:
case
4
:
case
4
:
case
5
:
case
5
:
if
(
BuildConfig
.
DEBUG
)
{
if
(
BuildConfig
.
DEBUG
&&
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
RESTAURANT_MODE
)
)
{
if
(
i
==
1
)
{
if
(
i
==
1
)
{
OrderBean
order
=
MyOrderManage
.
getInstance
().
getOrderBean
();
OrderBean
order
=
DoshokuOrder
.
getInstance
().
getOrderPlaced
();
if
(
order
!=
null
)
{
if
(
order
!=
null
)
{
ArmsUtils
.
snackbarText
(
"訂單ID:"
+
order
.
getId
());
ArmsUtils
.
snackbarText
(
"訂單ID:"
+
order
.
getId
());
}
}
}
else
if
(
i
==
2
)
{
}
else
if
(
i
==
2
)
{
MemberInfo
memberInfo
=
MyOrderManage
.
getInstance
().
getMemberInfo
();
MemberInfo
memberInfo
=
DoshokuOrder
.
getInstance
().
getMemberInfo
();
if
(
memberInfo
!=
null
)
{
if
(
memberInfo
!=
null
)
{
showMessage
(
"積分兌現金比例: "
+
memberInfo
.
getPointRedeemCash
());
showMessage
(
"積分兌現金比例: "
+
memberInfo
.
getPointRedeemCash
());
}
}
...
@@ -793,8 +791,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -793,8 +791,9 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@Override
@Override
public
void
onComfirmClick
(
String
number
)
{
public
void
onComfirmClick
(
String
number
)
{
int
inumber
=
Integer
.
parseInt
(
number
);
int
inumber
=
Integer
.
parseInt
(
number
);
if
(
inumber
==
0
)
if
(
inumber
==
0
)
{
return
;
return
;
}
mPresenter
.
changeNumber
(
inumber
);
mPresenter
.
changeNumber
(
inumber
);
}
}
...
@@ -821,11 +820,10 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -821,11 +820,10 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
returnBeforeActivity
(
true
);
returnBeforeActivity
(
true
);
}
}
public
void
returnBeforeActivity
(
boolean
initTable
)
{
public
void
returnBeforeActivity
(
boolean
initTable
)
{
SPUtils
.
put
(
this
,
MealConstant
.
EXIT_IS_PLU_MODE
,
isPluMode
);
SPUtils
.
put
(
this
,
MealConstant
.
EXIT_IS_PLU_MODE
,
isPluMode
);
TableBean
.
DataBean
dataBean
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
RESTAURANT_MODE
)
&&
initTable
&&
!
DoshokuOrder
.
getInstance
().
isModifyOrder
())
{
if
(
initTable
&&
dataBean
!=
null
&&
!
MyOrderManage
.
getInstance
().
isModifyOrder
())
{
TableBean
.
DataBean
dataBean
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
//通知更新餐台状态
//通知更新餐台状态
EventBus
.
getDefault
().
post
(
new
InitTableEvent
(
dataBean
.
getId
(),
dataBean
.
getTableNumber
()),
"initTable_status_event"
);
EventBus
.
getDefault
().
post
(
new
InitTableEvent
(
dataBean
.
getId
(),
dataBean
.
getTableNumber
()),
"initTable_status_event"
);
}
}
...
@@ -1169,7 +1167,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
...
@@ -1169,7 +1167,7 @@ public class MealStandActivity extends BaseFragmentActivity<MealStandPresenter>
@Override
@Override
public
void
initLayoutVisible
()
{
public
void
initLayoutVisible
()
{
if
(
MyOrderManage
.
getInstance
().
isModifyOrder
())
{
if
(
BaseOrder
.
isCurrentOrderType
(
FoodSummaryConstans
.
RESTAURANT_MODE
)
&&
DoshokuOrder
.
getInstance
().
isModifyOrder
())
{
//修改訂單隱藏送單功能
//修改訂單隱藏送單功能
fl_send_order
.
setVisibility
(
View
.
GONE
);
fl_send_order
.
setVisibility
(
View
.
GONE
);
}
}
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderContentActivity.java
View file @
f47767b0
...
@@ -14,7 +14,6 @@ import android.widget.Button;
...
@@ -14,7 +14,6 @@ import android.widget.Button;
import
android.widget.Chronometer
;
import
android.widget.Chronometer
;
import
android.widget.SimpleAdapter
;
import
android.widget.SimpleAdapter
;
import
android.widget.TextView
;
import
android.widget.TextView
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
androidx.annotation.Nullable
;
import
androidx.core.content.ContextCompat
;
import
androidx.core.content.ContextCompat
;
...
@@ -23,9 +22,8 @@ import androidx.recyclerview.widget.DefaultItemAnimator;
...
@@ -23,9 +22,8 @@ import androidx.recyclerview.widget.DefaultItemAnimator;
import
androidx.recyclerview.widget.GridLayoutManager
;
import
androidx.recyclerview.widget.GridLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.viewpager.widget.ViewPager
;
import
androidx.viewpager.widget.ViewPager
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.VibratorUtils
;
import
com.gingersoft.gsa.cloud.base.utils.VibratorUtils
;
...
@@ -161,6 +159,8 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
...
@@ -161,6 +159,8 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
private
List
<
TableBean
.
DataBean
>
mTableList
;
private
List
<
TableBean
.
DataBean
>
mTableList
;
private
DoshokuOrder
mDoshokuOrder
;
private
ShoppingCart
mShoppingCart
;
@Override
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
...
@@ -173,24 +173,32 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
...
@@ -173,24 +173,32 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
}
}
@Override
@Override
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
mDoshokuOrder
=
DoshokuOrder
.
getInstance
();
mShoppingCart
=
mDoshokuOrder
.
getShoppingCart
();
super
.
onCreate
(
savedInstanceState
);
}
@Override
public
int
initView
(
@Nullable
Bundle
savedInstanceState
)
{
public
int
initView
(
@Nullable
Bundle
savedInstanceState
)
{
return
R
.
layout
.
table_activity_order_content
;
//如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
return
R
.
layout
.
table_activity_order_content
;
//如果你不需要框架帮你设置 setContentView(id) 需要自行设置,请返回 0
}
}
@Override
@Override
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
initOrderDetail
();
initTopInfo
();
initTopInfo
();
initOrderBill
(
mPresenter
.
getFoodTotal
(),
mPresenter
.
getTotalAmount
());
mPresenter
.
initTopFunctionData
();
mPresenter
.
initTopFunctionData
();
mPresenter
.
initAdapter
();
mPresenter
.
initAdapter
();
mPresenter
.
initItemListener
();
mPresenter
.
initItemListener
();
if
(!
MyOrderManage
.
getInstance
()
.
isModifyOrder
())
{
if
(!
mDoshokuOrder
.
isModifyOrder
())
{
//根据倒计时时间自动退出当前页面
//根据倒计时时间自动退出当前页面
initAutoQuit
();
initAutoQuit
();
}
}
}
}
public
void
initOrder
Detail
(
)
{
public
void
initOrder
Bill
(
double
wholeAmount
,
double
totalAmount
)
{
int
foodCount
=
mPresenter
.
getFoodCount
();
int
foodCount
=
mPresenter
.
getFoodCount
();
if
(
foodCount
>
0
)
{
if
(
foodCount
>
0
)
{
btn_order_count
.
setText
(
String
.
valueOf
(
foodCount
));
btn_order_count
.
setText
(
String
.
valueOf
(
foodCount
));
...
@@ -198,27 +206,22 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
...
@@ -198,27 +206,22 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
}
else
{
}
else
{
btn_order_count
.
setVisibility
(
View
.
INVISIBLE
);
btn_order_count
.
setVisibility
(
View
.
INVISIBLE
);
}
}
double
wholeAmount
=
mPresenter
.
getFoodTotal
();
tv_whole
.
setText
(
"合計 $"
+
wholeAmount
);
tv_whole
.
setText
(
"合計 $"
+
wholeAmount
);
tv_total
.
setText
(
"$"
+
mPresenter
.
getTotalAmount
());
tv_total
.
setText
(
"$"
+
totalAmount
);
MyOrderManage
.
getInstance
().
setWholeAmount
(
wholeAmount
);
}
}
private
void
initTopInfo
()
{
private
void
initTopInfo
()
{
TableBean
.
DataBean
tableInfo
=
DoshokuOrder
.
getInstance
()
.
getOpenTableInfo
();
TableBean
.
DataBean
tableInfo
=
mDoshokuOrder
.
getOpenTableInfo
();
Date
dd
=
MyOrderManage
.
getInstance
()
.
getOpenTableTime
();
Date
dd
=
mDoshokuOrder
.
getOpenTableTime
();
String
openTime
=
String
.
format
(
"%tH:%tM"
,
dd
,
dd
);
String
openTime
=
String
.
format
(
"%tH:%tM"
,
dd
,
dd
);
String
tableno
=
""
;
String
tableno
=
""
;
if
(
tableInfo
.
getSplitStatus
()
!=
0
)
{
if
(
tableInfo
.
getSplitStatus
()
!=
0
)
{
tableno
=
tableInfo
.
getTableName
();
tableno
=
tableInfo
.
getTableName
()
.
trim
()
+
"-"
+
tableInfo
.
getTableNumber
().
trim
()
;
}
else
{
}
else
{
//TODO 暫未分檯功能
tableno
=
tableInfo
.
getTableName
();
// tableno = GSAApplication.tableContract.getTableno().trim() + "-" + GSAApplication.tableContract.getTableno_split().trim();
}
}
btn_table
.
setText
(
tableno
);
btn_table
.
setText
(
tableno
);
tv_time
.
setText
(
"時間:"
+
openTime
);
tv_time
.
setText
(
"時間:"
+
openTime
);
...
@@ -233,7 +236,7 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
...
@@ -233,7 +236,7 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
@Override
@Override
protected
void
onResume
()
{
protected
void
onResume
()
{
super
.
onResume
();
super
.
onResume
();
if
(
MyOrderManage
.
getInstance
()
.
getMemberInfo
()
!=
null
)
{
if
(
mDoshokuOrder
.
getMemberInfo
()
!=
null
)
{
useMember
();
useMember
();
}
}
}
}
...
@@ -463,8 +466,9 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
...
@@ -463,8 +466,9 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
@Override
@Override
public
void
recordOperat
(
boolean
isPressButtonSound
)
{
public
void
recordOperat
(
boolean
isPressButtonSound
)
{
if
(
isPressButtonSound
)
if
(
isPressButtonSound
)
{
VibratorUtils
.
pressButtonSound
(
this
);
VibratorUtils
.
pressButtonSound
(
this
);
}
//关闭倒计时
//关闭倒计时
if
(
chronometer
!=
null
)
{
if
(
chronometer
!=
null
)
{
chronometer
.
stop
();
chronometer
.
stop
();
...
@@ -478,7 +482,7 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
...
@@ -478,7 +482,7 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
public
void
returnTableActivity
(
boolean
initTable
)
{
public
void
returnTableActivity
(
boolean
initTable
)
{
TableBean
.
DataBean
tableInfo
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
TableBean
.
DataBean
tableInfo
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
if
(
initTable
&&
tableInfo
!=
null
&&
!
MyOrderManage
.
getInstance
()
.
isModifyOrder
())
{
if
(
initTable
&&
tableInfo
!=
null
&&
!
mDoshokuOrder
.
isModifyOrder
())
{
//通知更新餐台状态
//通知更新餐台状态
EventBus
.
getDefault
().
post
(
new
InitTableEvent
(
tableInfo
.
getId
(),
tableInfo
.
getTableNumber
()),
"initTable_status_event"
);
EventBus
.
getDefault
().
post
(
new
InitTableEvent
(
tableInfo
.
getId
(),
tableInfo
.
getTableNumber
()),
"initTable_status_event"
);
}
}
...
@@ -598,8 +602,8 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
...
@@ -598,8 +602,8 @@ public class OrderContentActivity extends BaseFragmentActivity<OrderContentPrese
if
(
qrCodeContent
.
length
==
2
)
{
if
(
qrCodeContent
.
length
==
2
)
{
long
couponMemberId
=
Long
.
parseLong
(
qrCodeContent
[
0
]);
long
couponMemberId
=
Long
.
parseLong
(
qrCodeContent
[
0
]);
Long
memberId
=
null
;
Long
memberId
=
null
;
if
(
MyOrderManage
.
getInstance
()
.
getMemberInfo
()
!=
null
)
{
if
(
mDoshokuOrder
.
getMemberInfo
()
!=
null
)
{
memberId
=
MyOrderManage
.
getInstance
()
.
getMemberInfo
().
getId
();
memberId
=
mDoshokuOrder
.
getMemberInfo
().
getId
();
if
(
memberId
!=
couponMemberId
)
{
if
(
memberId
!=
couponMemberId
)
{
showMessage
(
"請掃描當前會員的優惠券碼"
);
showMessage
(
"請掃描當前會員的優惠券碼"
);
return
;
return
;
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/OrderPayActivity.java
View file @
f47767b0
...
@@ -14,7 +14,6 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
...
@@ -14,7 +14,6 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.BigDecimalUtils
;
import
com.gingersoft.gsa.cloud.base.utils.BigDecimalUtils
;
...
@@ -53,6 +52,7 @@ import javax.inject.Inject;
...
@@ -53,6 +52,7 @@ import javax.inject.Inject;
import
androidx.annotation.NonNull
;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
androidx.annotation.Nullable
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.recyclerview.widget.RecyclerView
;
import
butterknife.BindView
;
import
butterknife.BindView
;
import
butterknife.OnClick
;
import
butterknife.OnClick
;
import
butterknife.OnLongClick
;
import
butterknife.OnLongClick
;
...
@@ -193,21 +193,21 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
...
@@ -193,21 +193,21 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
mPresenter
.
setFreeServiceStauts
(
isUseFreeServicePayMethod
);
mPresenter
.
setFreeServiceStauts
(
isUseFreeServicePayMethod
);
}
}
});
});
gsaPayView
.
setServiceCharge
(
mPresenter
.
getServiceCharge
());
gsaPayView
.
setServiceCharge
(
mPresenter
.
getS
hoppingCart
().
getS
erviceCharge
());
}
}
private
void
initTopInfo
()
{
private
void
initTopInfo
()
{
TableBean
.
DataBean
tableInfo
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
TableBean
.
DataBean
tableInfo
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
Date
dd
=
MyOrderManage
.
getInstance
().
getOpenTableTime
();
Date
dd
=
DoshokuOrder
.
getInstance
().
getOpenTableTime
();
String
openTime
=
String
.
format
(
"%tH:%tM"
,
dd
,
dd
);
String
openTime
=
String
.
format
(
"%tH:%tM"
,
dd
,
dd
);
String
tableno
=
""
;
String
tableno
=
""
;
if
(
tableInfo
.
getSplitStatus
()
=
=
0
)
{
if
(
tableInfo
.
getSplitStatus
()
!
=
0
)
{
tableno
=
tableInfo
.
getTableName
();
tableno
=
tableInfo
.
getTableName
().
trim
()
+
"-"
+
tableInfo
.
getTableNumber
().
trim
();
}
else
{
}
else
{
tableno
=
tableInfo
.
getTableName
()
.
trim
()
;
tableno
=
tableInfo
.
getTableName
();
}
}
btn_table
.
setText
(
tableno
);
btn_table
.
setText
(
tableno
);
tv_time
.
setText
(
"時間:"
+
openTime
);
tv_time
.
setText
(
"時間:"
+
openTime
);
...
@@ -223,12 +223,12 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
...
@@ -223,12 +223,12 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
double
wholeAmount
=
mPresenter
.
getFoodTotal
();
double
wholeAmount
=
mPresenter
.
getFoodTotal
();
tv_whole
.
setText
(
"合計 $"
+
wholeAmount
);
tv_whole
.
setText
(
"合計 $"
+
wholeAmount
);
MyOrderManage
.
getInstance
().
setWholeAmount
(
wholeAmount
);
DoshokuOrder
.
getInstance
().
getShoppingCart
().
setWholeAmount
(
wholeAmount
);
}
}
private
void
initMemberInfo
()
{
private
void
initMemberInfo
()
{
//会员信息
//会员信息
MemberInfo
memberInfo
=
MyOrderManage
.
getInstance
().
getMemberInfo
();
MemberInfo
memberInfo
=
DoshokuOrder
.
getInstance
().
getMemberInfo
();
if
(
memberInfo
!=
null
)
{
if
(
memberInfo
!=
null
)
{
tv_member_info
.
setVisibility
(
View
.
VISIBLE
);
tv_member_info
.
setVisibility
(
View
.
VISIBLE
);
tv_member_info
.
setText
(
getMemberInfo
());
tv_member_info
.
setText
(
getMemberInfo
());
...
@@ -243,7 +243,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
...
@@ -243,7 +243,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
}
}
private
String
getMemberInfo
()
{
private
String
getMemberInfo
()
{
MemberInfo
memberBean
=
MyOrderManage
.
getInstance
().
getMemberInfo
();
MemberInfo
memberBean
=
DoshokuOrder
.
getInstance
().
getMemberInfo
();
String
memberInfo
;
String
memberInfo
;
String
memberName
=
memberBean
.
getMemberName
();
String
memberName
=
memberBean
.
getMemberName
();
String
LevelName1
=
memberBean
.
getLevelName1
();
String
LevelName1
=
memberBean
.
getLevelName1
();
...
@@ -274,7 +274,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
...
@@ -274,7 +274,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
memberIntegral
=
memberBean
.
getMemberPoint
();
memberIntegral
=
memberBean
.
getMemberPoint
();
memberPointRedeemCash
=
memberBean
.
getPointRedeemCash
();
memberPointRedeemCash
=
memberBean
.
getPointRedeemCash
();
//獲取積分支付抵扣金額
//獲取積分支付抵扣金額
double
consumptionPoints
=
gsaPayView
.
getPayForConsumptionPoints
(
null
,
memberPointRedeemCash
);
double
consumptionPoints
=
gsaPayView
.
getPayForConsumptionPoints
(
null
,
memberPointRedeemCash
);
//本次積分消耗(積分支付 + 食品獲得積分 + 食品消費積分)
//本次積分消耗(積分支付 + 食品獲得積分 + 食品消費積分)
double
thisTimePoints
=
BigDecimalUtils
.
add
(
BigDecimalUtils
.
add
(
consumptionPoints
,
mPresenter
.
getPointsAdd
()),
mPresenter
.
getPointsRedeem
());
double
thisTimePoints
=
BigDecimalUtils
.
add
(
BigDecimalUtils
.
add
(
consumptionPoints
,
mPresenter
.
getPointsAdd
()),
mPresenter
.
getPointsRedeem
());
if
(
thisTimePoints
>
0
)
{
if
(
thisTimePoints
>
0
)
{
...
@@ -466,9 +466,9 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
...
@@ -466,9 +466,9 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
setBillMoney
();
setBillMoney
();
TableBean
.
DataBean
tableInfo
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
TableBean
.
DataBean
tableInfo
=
DoshokuOrder
.
getInstance
().
getOpenTableInfo
();
if
(!
MyOrderManage
.
getInstance
().
isModifyOrder
())
{
if
(!
DoshokuOrder
.
getInstance
().
isModifyOrder
())
{
//通知更新餐台状态
//通知更新餐台状态
EventBus
.
getDefault
().
post
(
new
InitTableEvent
(
tableInfo
.
getId
(),
tableInfo
.
getTableNumber
()),
"initTable_status_event"
);
EventBus
.
getDefault
().
post
(
new
InitTableEvent
(
tableInfo
.
getId
(),
tableInfo
.
getTableNumber
()),
"initTable_status_event"
);
}
}
showMessage
(
"支付成功"
);
showMessage
(
"支付成功"
);
...
@@ -503,8 +503,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
...
@@ -503,8 +503,6 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
// if (result.isSuccess()) {
// if (result.isSuccess()) {
// //打印成功
// //打印成功
// }
// }
//清空賬單數據
MyOrderManage
.
getInstance
().
clear
();
//清空開檯數據
//清空開檯數據
DoshokuOrder
.
getInstance
().
initialization
();
DoshokuOrder
.
getInstance
().
initialization
();
...
@@ -524,7 +522,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
...
@@ -524,7 +522,7 @@ public class OrderPayActivity extends BaseActivity<OrderPayPresenter> implements
payMethod
.
setPayMoney
(
mPresenter
.
getTipsPrice
());
payMethod
.
setPayMoney
(
mPresenter
.
getTipsPrice
());
billMoneyList
.
add
(
payMethod
);
billMoneyList
.
add
(
payMethod
);
}
}
MyOrderManage
.
getInstance
().
setBillMoney
(
billMoneyList
);
DoshokuOrder
.
getInstance
().
setBillMoney
(
billMoneyList
);
}
}
public
void
setBillMethodAdapter
(
BaseQuickAdapter
adapter
)
{
public
void
setBillMethodAdapter
(
BaseQuickAdapter
adapter
)
{
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/activity/orderManager/OrderDetailActivity.java
View file @
f47767b0
...
@@ -14,13 +14,15 @@ import androidx.annotation.Nullable;
...
@@ -14,13 +14,15 @@ import androidx.annotation.Nullable;
import
androidx.core.content.ContextCompat
;
import
androidx.core.content.ContextCompat
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.recyclerview.widget.RecyclerView
;
import
com.billy.cc.core.component.CC
;
import
com.billy.cc.core.component.CC
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillItem
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.billItem.BillOrderMoney
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.bean.OrderBean
;
import
com.gingersoft.gsa.cloud.base.order.cart.ShoppingCart
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.discount.OrderDiscount
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.order.order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.table.bean.TableBean
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
...
@@ -31,7 +33,6 @@ import com.gingersoft.gsa.cloud.table.R2;
...
@@ -31,7 +33,6 @@ import com.gingersoft.gsa.cloud.table.R2;
import
com.gingersoft.gsa.cloud.table.di.component.DaggerOrderDetailComponent
;
import
com.gingersoft.gsa.cloud.table.di.component.DaggerOrderDetailComponent
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract
;
import
com.gingersoft.gsa.cloud.table.mvp.contract.OrderDetailContract
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.table.mvp.model.bean.OrderDetailItem
;
import
com.gingersoft.gsa.cloud.table.mvp.model.cart.DoshokuCart
;
import
com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil
;
import
com.gingersoft.gsa.cloud.table.mvp.model.utils.OrderAssemblyUtil
;
import
com.gingersoft.gsa.cloud.table.mvp.presenter.orderManager.OrderDetailPresenter
;
import
com.gingersoft.gsa.cloud.table.mvp.presenter.orderManager.OrderDetailPresenter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.activity.MealStandActivity
;
...
@@ -135,6 +136,8 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
...
@@ -135,6 +136,8 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
private
OrderCenterMoneyAdapter
mOrderDetailPayMethodAdapter
;
private
OrderCenterMoneyAdapter
mOrderDetailPayMethodAdapter
;
private
List
<
SectionTextItem3
>
mOrderCenterPayMethodList
=
new
ArrayList
<>();
private
List
<
SectionTextItem3
>
mOrderCenterPayMethodList
=
new
ArrayList
<>();
private
DoshokuOrder
mDoshokuOrder
;
private
ShoppingCart
mShoppingCart
;
@Override
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
...
@@ -152,6 +155,13 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
...
@@ -152,6 +155,13 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
}
}
@Override
@Override
protected
void
onCreate
(
@Nullable
Bundle
savedInstanceState
)
{
mDoshokuOrder
=
mDoshokuOrder
;
mShoppingCart
=
mDoshokuOrder
.
getShoppingCart
();
super
.
onCreate
(
savedInstanceState
);
}
@Override
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
public
void
initData
(
@Nullable
Bundle
savedInstanceState
)
{
scrollview
.
post
(
new
Runnable
()
{
scrollview
.
post
(
new
Runnable
()
{
@Override
@Override
...
@@ -244,7 +254,7 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
...
@@ -244,7 +254,7 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
mOrderDetailPayMethodAdapter
.
notifyDataSetChanged
();
mOrderDetailPayMethodAdapter
.
notifyDataSetChanged
();
}
}
//設置打印所需支付方式
//設置打印所需支付方式
MyOrderManage
.
getInstance
()
.
setBillMoney
(
payMethodList
);
mDoshokuOrder
.
setBillMoney
(
payMethodList
);
}
}
public
static
List
<
SectionTextItem3
>
orderPayMethodTransSectionTextItem3
(
List
<
PayMethod
>
payMethodList
)
{
public
static
List
<
SectionTextItem3
>
orderPayMethodTransSectionTextItem3
(
List
<
PayMethod
>
payMethodList
)
{
...
@@ -438,12 +448,12 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
...
@@ -438,12 +448,12 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
}
}
private
void
startModifyOrder
(
OrderDetailItem
datasBean
)
{
private
void
startModifyOrder
(
OrderDetailItem
datasBean
)
{
if
(
datasBean
.
getRestaurantTable
()
==
null
)
{
if
(
datasBean
.
getRestaurantTable
()
==
null
)
{
showMessage
(
"餐檯不存在,無法修改訂單"
);
showMessage
(
"餐檯不存在,無法修改訂單"
);
return
;
return
;
}
}
//設置為修改訂單操作
//設置為修改訂單操作
MyOrderManage
.
getInstance
()
.
setModifyOrder
(
true
);
mDoshokuOrder
.
setModifyOrder
(
true
);
/**
/**
* 緩存訂單信息
* 緩存訂單信息
*/
*/
...
@@ -457,7 +467,7 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
...
@@ -457,7 +467,7 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
if
(
datasBean
.
getDiscountDetails
()
!=
null
)
{
if
(
datasBean
.
getDiscountDetails
()
!=
null
)
{
orderBean
.
setDiscountDetails
(
datasBean
.
getDiscountDetails
());
orderBean
.
setDiscountDetails
(
datasBean
.
getDiscountDetails
());
}
}
MyOrderManage
.
getInstance
().
setOrderBean
(
orderBean
);
mDoshokuOrder
.
setOrderPlaced
(
orderBean
);
TableBean
.
DataBean
tableBean
=
new
TableBean
.
DataBean
(
datasBean
.
getRestaurantTable
());
TableBean
.
DataBean
tableBean
=
new
TableBean
.
DataBean
(
datasBean
.
getRestaurantTable
());
if
(!
TextUtils
.
isEmpty
(
tableBean
.
getTableNumber
()))
{
if
(!
TextUtils
.
isEmpty
(
tableBean
.
getTableNumber
()))
{
...
@@ -466,14 +476,14 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
...
@@ -466,14 +476,14 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
tableBean
.
setTableName
(
tableBean
.
getTableName
());
tableBean
.
setTableName
(
tableBean
.
getTableName
());
}
}
tableBean
.
setPerson
(
datasBean
.
getPerson
());
tableBean
.
setPerson
(
datasBean
.
getPerson
());
DoshokuOrder
.
getInstance
()
.
setOpenTableInfo
(
tableBean
);
mDoshokuOrder
.
setOpenTableInfo
(
tableBean
);
List
<
OrderBean
.
OrderDetailsBean
>
orderDetailsBeans
=
datasBean
.
getOrderDetails
();
List
<
OrderBean
.
OrderDetailsBean
>
orderDetailsBeans
=
datasBean
.
getOrderDetails
();
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
List
<
OrderDetail
>
orderDetailList
=
OrderAssemblyUtil
.
assemblyOrder
(
OrderDetail
.
orderTransOrderDetails
(
orderDetailsBeans
));
MyOrderManage
.
getInstance
().
setOrderFood
List
(
orderDetailList
);
mDoshokuOrder
.
getShoppingCart
().
setOrderCommodity
List
(
orderDetailList
);
if
(
datasBean
.
getMemberInfo
()
!=
null
)
{
if
(
datasBean
.
getMemberInfo
()
!=
null
)
{
MyOrderManage
.
getInstance
()
.
setMemberInfo
(
datasBean
.
getMemberInfo
());
mDoshokuOrder
.
setMemberInfo
(
datasBean
.
getMemberInfo
());
}
}
Intent
intent
=
new
Intent
(
this
,
MealStandActivity
.
class
);
Intent
intent
=
new
Intent
(
this
,
MealStandActivity
.
class
);
...
@@ -487,30 +497,30 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
...
@@ -487,30 +497,30 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
* @param orderDetailList
* @param orderDetailList
*/
*/
private
void
startPrintOrder
(
OrderDetailItem
orderDetailItem
,
List
<
OrderDetail
>
orderDetailList
)
{
private
void
startPrintOrder
(
OrderDetailItem
orderDetailItem
,
List
<
OrderDetail
>
orderDetailList
)
{
MyOrderManage
.
getInstance
().
setOrderFood
List
(
orderDetailList
);
mShoppingCart
.
setOrderCommodity
List
(
orderDetailList
);
MyOrderManage
.
getInstance
().
setOrderMoney
List
(
getOrderMoneyList
());
mShoppingCart
.
setBillItem
List
(
getOrderMoneyList
());
MyOrderManage
.
getInstance
()
.
setOrderId
(
orderDetailItem
.
getId
());
mDoshokuOrder
.
setOrderId
(
orderDetailItem
.
getId
());
MyOrderManage
.
getInstance
()
.
setWholeAmount
(
getTotalMoney
());
mShoppingCart
.
setWholeAmount
(
getTotalMoney
());
MyOrderManage
.
getInstance
()
.
setTotalAmount
(
orderDetailItem
.
getTotalAmount
());
mShoppingCart
.
setTotalAmount
(
orderDetailItem
.
getTotalAmount
());
TableBean
.
DataBean
dataBean
=
new
TableBean
.
DataBean
();
TableBean
.
DataBean
dataBean
=
new
TableBean
.
DataBean
();
dataBean
.
setTableName
(
orderDetailItem
.
getTableName
());
dataBean
.
setTableName
(
orderDetailItem
.
getTableName
());
if
(!
TextUtils
.
isEmpty
(
orderDetailItem
.
getCreateTime
()))
{
if
(!
TextUtils
.
isEmpty
(
orderDetailItem
.
getCreateTime
()))
{
dataBean
.
setCreateTime
(
TimeUtils
.
getStringByFormat
(
new
Date
(
orderDetailItem
.
getCreateTime
()),
TimeUtils
.
DEFAULT_DATE_FORMAT_YMDHM
));
dataBean
.
setCreateTime
(
TimeUtils
.
getStringByFormat
(
new
Date
(
orderDetailItem
.
getCreateTime
()),
TimeUtils
.
DEFAULT_DATE_FORMAT_YMDHM
));
}
}
dataBean
.
setPerson
(
orderDetailItem
.
getPerson
());
dataBean
.
setPerson
(
orderDetailItem
.
getPerson
());
DoshokuOrder
.
getInstance
()
.
setOpenTableInfo
(
dataBean
);
mDoshokuOrder
.
setOpenTableInfo
(
dataBean
);
List
<
PayMethod
>
payMethodList
=
getPayMethodList
(
orderDetailItem
.
getOrderPays
());
List
<
PayMethod
>
payMethodList
=
getPayMethodList
(
orderDetailItem
.
getOrderPays
());
if
(
payMethodList
!=
null
)
{
if
(
payMethodList
!=
null
)
{
//設置打印所需支付方式
//設置打印所需支付方式
MyOrderManage
.
getInstance
()
.
setBillMoney
(
payMethodList
);
mDoshokuOrder
.
setBillMoney
(
payMethodList
);
}
}
if
(
orderDetailItem
.
getMemberInfo
()
!=
null
)
{
if
(
orderDetailItem
.
getMemberInfo
()
!=
null
)
{
MyOrderManage
.
getInstance
()
.
setMemberInfo
(
orderDetailItem
.
getMemberInfo
());
mDoshokuOrder
.
setMemberInfo
(
orderDetailItem
.
getMemberInfo
());
}
else
{
}
else
{
MyOrderManage
.
getInstance
()
.
setIntegralQrcode
(
orderDetailItem
.
getVerifyCode
());
mDoshokuOrder
.
setIntegralQrcode
(
orderDetailItem
.
getVerifyCode
());
}
}
CC
.
obtainBuilder
(
"Component.Print"
)
CC
.
obtainBuilder
(
"Component.Print"
)
...
@@ -519,21 +529,19 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
...
@@ -519,21 +529,19 @@ public class OrderDetailActivity extends BaseActivity<OrderDetailPresenter> impl
.
build
()
.
build
()
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
.
callAsyncCallbackOnMainThread
((
cc
,
result
)
->
{
Log
.
e
(
"error"
,
"是否成功打印:"
+
result
.
isSuccess
());
Log
.
e
(
"error"
,
"是否成功打印:"
+
result
.
isSuccess
());
MyOrderManage
.
getInstance
().
clear
();
mDoshokuOrder
.
initialization
();
DoshokuOrder
.
getInstance
().
setOpenTableInfo
(
null
);
});
});
}
}
private
List
<
Bill
OrderMoney
>
getOrderMoneyList
()
{
private
List
<
Bill
Item
>
getOrderMoneyList
()
{
List
<
Bill
OrderMoney
>
billOrderMoneyList
=
new
ArrayList
<>();
List
<
Bill
Item
>
billOrderMoneyList
=
new
ArrayList
<>();
if
(
mOrderCenterMoneyList
!=
null
)
{
if
(
mOrderCenterMoneyList
!=
null
)
{
for
(
SectionTextItem3
item
:
mOrderCenterMoneyList
)
{
for
(
SectionTextItem3
item
:
mOrderCenterMoneyList
)
{
Bill
OrderMoney
billOrderMoney
=
new
BillOrderMoney
();
Bill
Item
billItem
=
new
BillOrderMoney
();
bill
OrderMoney
.
setName
(
item
.
getLeftText
());
bill
Item
.
setName
(
item
.
getLeftText
());
bill
OrderMoney
.
setMoney
(
Double
.
parseDouble
(
item
.
getRightText
()));
bill
Item
.
setMoney
(
Double
.
parseDouble
(
item
.
getRightText
()));
billOrderMoneyList
.
add
(
bill
OrderMoney
);
billOrderMoneyList
.
add
(
bill
Item
);
}
}
}
}
return
billOrderMoneyList
;
return
billOrderMoneyList
;
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/adapter/meal/SelectMealAdapter.java
View file @
f47767b0
...
@@ -7,11 +7,9 @@ import android.view.View;
...
@@ -7,11 +7,9 @@ import android.view.View;
import
android.widget.ImageView
;
import
android.widget.ImageView
;
import
android.widget.RelativeLayout
;
import
android.widget.RelativeLayout
;
import
android.widget.TextView
;
import
android.widget.TextView
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.order.commodity.Commodity
;
import
com.gingersoft.gsa.cloud.base.order.commodity.Commodity
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.commodity.OrderDetail
;
import
com.gingersoft.gsa.cloud.base.order.bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.constans.MealConstant
;
import
com.gingersoft.gsa.cloud.constans.MealConstant
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.R
;
...
@@ -75,6 +73,7 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
...
@@ -75,6 +73,7 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
public
SelectMealAdapter
(
Context
context
,
List
<
OrderDetail
>
data
,
BasePresenter
presenter
)
{
public
SelectMealAdapter
(
Context
context
,
List
<
OrderDetail
>
data
,
BasePresenter
presenter
)
{
super
(
data
);
super
(
data
);
this
.
mContext
=
context
;
this
.
mContext
=
context
;
this
.
BillListFontSize
=
GsaCloudApplication
.
uiStyleConfiguration
.
getBillListFontSizeValue
();
if
(
presenter
instanceof
MealStandPresenter
)
{
if
(
presenter
instanceof
MealStandPresenter
)
{
// this.mMealStandPresenter = (MealStandPresenter) presenter;
// this.mMealStandPresenter = (MealStandPresenter) presenter;
this
.
mMealStandActivity
=
(
MealStandActivity
)
context
;
this
.
mMealStandActivity
=
(
MealStandActivity
)
context
;
...
@@ -621,13 +620,13 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
...
@@ -621,13 +620,13 @@ public class SelectMealAdapter extends DefaultAdapter<OrderDetail> {
}
}
public
void
setMyOrderManageSelectPosition
()
{
public
void
setMyOrderManageSelectPosition
()
{
MyOrderManage
.
getInstance
().
setSelect_Full_start_position
(
select_full_start_position
);
//
MyOrderManage.getInstance().setSelect_Full_start_position(select_full_start_position);
MyOrderManage
.
getInstance
().
setSelect_Full_end_position
(
select_full_end_position
);
//
MyOrderManage.getInstance().setSelect_Full_end_position(select_full_end_position);
MyOrderManage
.
getInstance
().
setSelstartpostion
(
select_start_position
);
//
MyOrderManage.getInstance().setSelstartpostion(select_start_position);
MyOrderManage
.
getInstance
().
setSelendpostion
(
select_end_position
);
//
MyOrderManage.getInstance().setSelendpostion(select_end_position);
MyOrderManage
.
getInstance
().
setSelmainendpostion
(
mainEndPos
);
//
MyOrderManage.getInstance().setSelmainendpostion(mainEndPos);
MyOrderManage
.
getInstance
().
setSelmainstartpositon
(
mainStartPos
);
//
MyOrderManage.getInstance().setSelmainstartpositon(mainStartPos);
MyOrderManage
.
getInstance
().
setSelpostion
(
select_position
);
//
MyOrderManage.getInstance().setSelpostion(select_position);
}
}
/**
/**
...
...
table-module/src/main/java/com/gingersoft/gsa/cloud/table/mvp/ui/widget/UseMemberDialog.java
View file @
f47767b0
...
@@ -17,10 +17,9 @@ import android.view.animation.DecelerateInterpolator;
...
@@ -17,10 +17,9 @@ import android.view.animation.DecelerateInterpolator;
import
android.view.animation.TranslateAnimation
;
import
android.view.animation.TranslateAnimation
;
import
android.widget.ImageView
;
import
android.widget.ImageView
;
import
android.widget.LinearLayout
;
import
android.widget.LinearLayout
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.common.bean.MemberInfo
;
import
com.gingersoft.gsa.cloud.base.order.
bean.mealManger.MyOrderManage
;
import
com.gingersoft.gsa.cloud.base.order.
order.DoshokuOrder
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.R
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.MemberInfoAdapter
;
import
com.gingersoft.gsa.cloud.table.mvp.ui.adapter.MemberInfoAdapter
;
import
com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem
;
import
com.gingersoft.gsa.cloud.ui.bean.view.SectionTextItem
;
...
@@ -73,6 +72,8 @@ public class UseMemberDialog extends Dialog {
...
@@ -73,6 +72,8 @@ public class UseMemberDialog extends Dialog {
private
MemberInfoAdapter
mMemberInfoAdapter
;
private
MemberInfoAdapter
mMemberInfoAdapter
;
private
List
<
SectionTextItem
>
mMemberInfoList
;
private
List
<
SectionTextItem
>
mMemberInfoList
;
private
MemberInfo
memberInfo
;
public
UseMemberDialog
(
Context
context
)
{
public
UseMemberDialog
(
Context
context
)
{
super
(
context
,
R
.
style
.
QMUI_BottomSheet
);
super
(
context
,
R
.
style
.
QMUI_BottomSheet
);
...
@@ -214,7 +215,7 @@ public class UseMemberDialog extends Dialog {
...
@@ -214,7 +215,7 @@ public class UseMemberDialog extends Dialog {
mDialog
=
new
UseMemberDialog
(
mContext
);
mDialog
=
new
UseMemberDialog
(
mContext
);
View
contentView
=
buildViews
();
View
contentView
=
buildViews
();
mDialog
.
setContentView
(
contentView
,
new
LinearLayout
.
LayoutParams
(
ViewGroup
.
LayoutParams
.
MATCH_PARENT
,
(
int
)
(
QMUIDisplayHelper
.
getScreenHeight
(
mContext
)
*
0.65
)));
mDialog
.
setContentView
(
contentView
,
new
LinearLayout
.
LayoutParams
(
ViewGroup
.
LayoutParams
.
MATCH_PARENT
,
(
int
)
(
QMUIDisplayHelper
.
getScreenHeight
(
mContext
)
*
0.65
)));
updateMemberInfo
(
MyOrderManage
.
getInstance
().
getMemberInfo
()
);
updateMemberInfo
(
memberInfo
);
return
mDialog
;
return
mDialog
;
}
}
...
@@ -348,6 +349,10 @@ public class UseMemberDialog extends Dialog {
...
@@ -348,6 +349,10 @@ public class UseMemberDialog extends Dialog {
btn_scan
.
setVisibility
(!
show
?
View
.
VISIBLE
:
View
.
GONE
);
btn_scan
.
setVisibility
(!
show
?
View
.
VISIBLE
:
View
.
GONE
);
}
}
public
void
setMemberInfo
(
MemberInfo
memberInfo
)
{
this
.
memberInfo
=
memberInfo
;
}
private
String
getTvPhone
()
{
private
String
getTvPhone
()
{
return
ed_phone
.
getText
().
toString
();
return
ed_phone
.
getText
().
toString
();
}
}
...
@@ -356,6 +361,7 @@ public class UseMemberDialog extends Dialog {
...
@@ -356,6 +361,7 @@ public class UseMemberDialog extends Dialog {
return
R
.
layout
.
meal_dialog_use_member
;
return
R
.
layout
.
meal_dialog_use_member
;
}
}
private
OnLayoutClickListener
onLayoutClickListener
;
private
OnLayoutClickListener
onLayoutClickListener
;
public
UseMemberDialog
setOnLayoutClickListener
(
OnLayoutClickListener
onLayoutClickListener
)
{
public
UseMemberDialog
setOnLayoutClickListener
(
OnLayoutClickListener
onLayoutClickListener
)
{
...
...
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