Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
T
TangKuPos
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王海
TangKuPos
Commits
95915c36
Commit
95915c36
authored
Dec 27, 2017
by
王海
Browse files
Options
Browse Files
Download
Plain Diff
Merge remote-tracking branch 'origin/master'
parents
e9d75761
12ceb5ec
Changes
75
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
75 changed files
with
2188 additions
and
425 deletions
+2188
-425
app/src/main/AndroidManifest.xml
app/src/main/AndroidManifest.xml
+23
-23
app/src/main/java/com/xingdata/zzdpos/C.java
app/src/main/java/com/xingdata/zzdpos/C.java
+10
-4
app/src/main/java/com/xingdata/zzdpos/api/ApiFactory.java
app/src/main/java/com/xingdata/zzdpos/api/ApiFactory.java
+17
-5
app/src/main/java/com/xingdata/zzdpos/api/ApiService.java
app/src/main/java/com/xingdata/zzdpos/api/ApiService.java
+14
-3
app/src/main/java/com/xingdata/zzdpos/base/BaseSheetDialog.java
...c/main/java/com/xingdata/zzdpos/base/BaseSheetDialog.java
+7
-1
app/src/main/java/com/xingdata/zzdpos/model/Saledetail.java
app/src/main/java/com/xingdata/zzdpos/model/Saledetail.java
+7
-8
app/src/main/java/com/xingdata/zzdpos/model/Saleorder.java
app/src/main/java/com/xingdata/zzdpos/model/Saleorder.java
+33
-5
app/src/main/java/com/xingdata/zzdpos/ui/dialog/LoadingDialog.java
...ain/java/com/xingdata/zzdpos/ui/dialog/LoadingDialog.java
+3
-53
app/src/main/java/com/xingdata/zzdpos/ui/settle/SettleActivity.java
...in/java/com/xingdata/zzdpos/ui/settle/SettleActivity.java
+6
-0
app/src/main/java/com/xingdata/zzdpos/ui/settle/SettleContract.java
...in/java/com/xingdata/zzdpos/ui/settle/SettleContract.java
+8
-0
app/src/main/java/com/xingdata/zzdpos/ui/settle/SettlePresenter.java
...n/java/com/xingdata/zzdpos/ui/settle/SettlePresenter.java
+4
-1
app/src/main/java/com/xingdata/zzdpos/ui/settle/adapter/SaledetailAdapter.java
.../xingdata/zzdpos/ui/settle/adapter/SaledetailAdapter.java
+21
-0
app/src/main/java/com/xingdata/zzdpos/ui/settle/fragment/SettleFragment.java
...om/xingdata/zzdpos/ui/settle/fragment/SettleFragment.java
+29
-0
app/src/main/java/com/xingdata/zzdpos/ui/statistics/StatisticsActivity.java
...com/xingdata/zzdpos/ui/statistics/StatisticsActivity.java
+32
-3
app/src/main/java/com/xingdata/zzdpos/ui/statistics/StatisticsContract.java
...com/xingdata/zzdpos/ui/statistics/StatisticsContract.java
+33
-1
app/src/main/java/com/xingdata/zzdpos/ui/statistics/StatisticsDetailActivity.java
...ngdata/zzdpos/ui/statistics/StatisticsDetailActivity.java
+70
-0
app/src/main/java/com/xingdata/zzdpos/ui/statistics/StatisticsPresenter.java
...om/xingdata/zzdpos/ui/statistics/StatisticsPresenter.java
+45
-8
app/src/main/java/com/xingdata/zzdpos/ui/statistics/adapter/StatisticsAdapter.java
...gdata/zzdpos/ui/statistics/adapter/StatisticsAdapter.java
+27
-1
app/src/main/java/com/xingdata/zzdpos/ui/statistics/adapter/StatisticsGroupAdapter.java
.../zzdpos/ui/statistics/adapter/StatisticsGroupAdapter.java
+32
-0
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/StatisticsFragment.java
...ata/zzdpos/ui/statistics/fragment/StatisticsFragment.java
+11
-1
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/StatisticsTitleFragment.java
...zdpos/ui/statistics/fragment/StatisticsTitleFragment.java
+117
-0
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/order/OrderListFragment.java
...zdpos/ui/statistics/fragment/order/OrderListFragment.java
+11
-7
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/order/OrderMainFragment.java
...zdpos/ui/statistics/fragment/order/OrderMainFragment.java
+3
-17
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/order/OrderSearchFragment.java
...pos/ui/statistics/fragment/order/OrderSearchFragment.java
+88
-0
app/src/main/java/com/xingdata/zzdpos/ui/store/StoreActivity.java
...main/java/com/xingdata/zzdpos/ui/store/StoreActivity.java
+19
-0
app/src/main/java/com/xingdata/zzdpos/ui/store/StoreContract.java
...main/java/com/xingdata/zzdpos/ui/store/StoreContract.java
+14
-10
app/src/main/java/com/xingdata/zzdpos/ui/store/StorePresenter.java
...ain/java/com/xingdata/zzdpos/ui/store/StorePresenter.java
+15
-39
app/src/main/java/com/xingdata/zzdpos/ui/store/adapter/SaledetailAdapter.java
...m/xingdata/zzdpos/ui/store/adapter/SaledetailAdapter.java
+53
-1
app/src/main/java/com/xingdata/zzdpos/ui/store/adapter/SkuAdapter.java
...java/com/xingdata/zzdpos/ui/store/adapter/SkuAdapter.java
+19
-4
app/src/main/java/com/xingdata/zzdpos/ui/store/dialog/CartDialog.java
.../java/com/xingdata/zzdpos/ui/store/dialog/CartDialog.java
+50
-0
app/src/main/java/com/xingdata/zzdpos/ui/store/fragment/StoreFragment.java
.../com/xingdata/zzdpos/ui/store/fragment/StoreFragment.java
+1
-1
app/src/main/java/com/xingdata/zzdpos/ui/vip/VipActivity.java
...src/main/java/com/xingdata/zzdpos/ui/vip/VipActivity.java
+8
-6
app/src/main/java/com/xingdata/zzdpos/ui/vip/VipContract.java
...src/main/java/com/xingdata/zzdpos/ui/vip/VipContract.java
+9
-6
app/src/main/java/com/xingdata/zzdpos/ui/vip/VipPresenter.java
...rc/main/java/com/xingdata/zzdpos/ui/vip/VipPresenter.java
+17
-4
app/src/main/java/com/xingdata/zzdpos/ui/vip/adapter/VipRechargeAdapter.java
...om/xingdata/zzdpos/ui/vip/adapter/VipRechargeAdapter.java
+1
-1
app/src/main/java/com/xingdata/zzdpos/ui/vip/dialog/VipEditMenuDialog.java
.../com/xingdata/zzdpos/ui/vip/dialog/VipEditMenuDialog.java
+28
-0
app/src/main/java/com/xingdata/zzdpos/ui/vip/fragment/VipInfoFragment.java
.../com/xingdata/zzdpos/ui/vip/fragment/VipInfoFragment.java
+27
-3
app/src/main/java/com/xingdata/zzdpos/ui/vip/fragment/VipLevleFragment.java
...com/xingdata/zzdpos/ui/vip/fragment/VipLevleFragment.java
+48
-16
app/src/main/java/com/xingdata/zzdpos/ui/vip/fragment/VipListFragment.java
.../com/xingdata/zzdpos/ui/vip/fragment/VipListFragment.java
+49
-9
app/src/main/java/com/xingdata/zzdpos/ui/vip/fragment/VipTitleFragment.java
...com/xingdata/zzdpos/ui/vip/fragment/VipTitleFragment.java
+2
-1
app/src/main/java/com/xingdata/zzdpos/util/SystemUtil.java
app/src/main/java/com/xingdata/zzdpos/util/SystemUtil.java
+1
-1
app/src/main/res/drawable/shape_white.xml
app/src/main/res/drawable/shape_white.xml
+7
-0
app/src/main/res/layout/activity_statistics_detail.xml
app/src/main/res/layout/activity_statistics_detail.xml
+79
-0
app/src/main/res/layout/dialog_store_cart.xml
app/src/main/res/layout/dialog_store_cart.xml
+157
-9
app/src/main/res/layout/dialog_store_ms.xml
app/src/main/res/layout/dialog_store_ms.xml
+7
-1
app/src/main/res/layout/dialog_vip_menu.xml
app/src/main/res/layout/dialog_vip_menu.xml
+74
-0
app/src/main/res/layout/fragment_order_main.xml
app/src/main/res/layout/fragment_order_main.xml
+1
-8
app/src/main/res/layout/fragment_order_search.xml
app/src/main/res/layout/fragment_order_search.xml
+36
-0
app/src/main/res/layout/fragment_settle.xml
app/src/main/res/layout/fragment_settle.xml
+103
-10
app/src/main/res/layout/fragment_statistics.xml
app/src/main/res/layout/fragment_statistics.xml
+23
-4
app/src/main/res/layout/fragment_statistics_title.xml
app/src/main/res/layout/fragment_statistics_title.xml
+47
-0
app/src/main/res/layout/fragment_store.xml
app/src/main/res/layout/fragment_store.xml
+2
-1
app/src/main/res/layout/fragment_vipinfo.xml
app/src/main/res/layout/fragment_vipinfo.xml
+10
-1
app/src/main/res/layout/fragment_viplevel_title.xml
app/src/main/res/layout/fragment_viplevel_title.xml
+2
-4
app/src/main/res/layout/fragment_viptitle.xml
app/src/main/res/layout/fragment_viptitle.xml
+1
-0
app/src/main/res/layout/item_settle_saledetail.xml
app/src/main/res/layout/item_settle_saledetail.xml
+83
-0
app/src/main/res/layout/item_store_saledatail.xml
app/src/main/res/layout/item_store_saledatail.xml
+0
-118
app/src/main/res/layout/item_store_saledetail.xml
app/src/main/res/layout/item_store_saledetail.xml
+94
-0
app/src/main/res/layout/item_store_sku.xml
app/src/main/res/layout/item_store_sku.xml
+3
-2
app/src/main/res/layout/item_vip_recharge_item.xml
app/src/main/res/layout/item_vip_recharge_item.xml
+2
-2
app/src/main/res/layout/title.xml
app/src/main/res/layout/title.xml
+6
-5
app/src/main/res/layout/title_appback.xml
app/src/main/res/layout/title_appback.xml
+1
-1
app/src/main/res/layout/title_order.xml
app/src/main/res/layout/title_order.xml
+18
-3
app/src/main/res/layout/title_pop.xml
app/src/main/res/layout/title_pop.xml
+2
-13
app/src/main/res/layout/view_order_detail.xml
app/src/main/res/layout/view_order_detail.xml
+298
-0
app/src/main/res/layout/view_search_paytype.xml
app/src/main/res/layout/view_search_paytype.xml
+94
-0
app/src/main/res/mipmap-xhdpi/but_unfurled.png
app/src/main/res/mipmap-xhdpi/but_unfurled.png
+0
-0
app/src/main/res/mipmap-xhdpi/but_up.png
app/src/main/res/mipmap-xhdpi/but_up.png
+0
-0
app/src/main/res/mipmap-xxhdpi/but_unfurled.png
app/src/main/res/mipmap-xxhdpi/but_unfurled.png
+0
-0
app/src/main/res/mipmap-xxhdpi/but_up.png
app/src/main/res/mipmap-xxhdpi/but_up.png
+0
-0
app/src/main/res/mipmap-xxxhdpi/but_unfurled.png
app/src/main/res/mipmap-xxxhdpi/but_unfurled.png
+0
-0
app/src/main/res/mipmap-xxxhdpi/but_up.png
app/src/main/res/mipmap-xxxhdpi/but_up.png
+0
-0
app/src/main/res/values/colors.xml
app/src/main/res/values/colors.xml
+1
-0
app/src/main/res/values/strings.xml
app/src/main/res/values/strings.xml
+14
-0
app/src/main/res/values/styles.xml
app/src/main/res/values/styles.xml
+11
-0
No files found.
app/src/main/AndroidManifest.xml
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android=
"http://schemas.android.com/apk/res/android"
package=
"com.xingdata.zzdpos"
>
package=
"com.xingdata.zzdpos"
>
<uses-permission
android:name=
"android.permission.INTERNET"
/>
<uses-permission
android:name=
"android.permission.WRITE_EXTERNAL_STORAGE"
/>
<uses-permission
android:name=
"android.permission.SEND_SMS"
/>
<uses-permission
android:name=
"android.permission.INTERNET"
/>
<uses-permission
android:name=
"android.permission.WRITE_EXTERNAL_STORAGE"
/>
<uses-permission
android:name=
"android.permission.SEND_SMS"
/>
<application
android:name=
".App"
...
...
@@ -19,71 +19,71 @@
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:label=
"@string/main_title"
android:launchMode=
"singleTask"
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.splash.SplashActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:theme=
"@style/AppTheme"
>
<intent-filter>
<action
android:name=
"android.intent.action.MAIN"
/>
<action
android:name=
"android.intent.action.MAIN"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
<category
android:name=
"android.intent.category.LAUNCHER"
/>
</intent-filter>
</activity>
<activity
android:name=
".ui.login.LoginActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.exception.ErrorDialogActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:theme=
"@style/Theme.AppCompat.Light.Dialog"
/>
android:theme=
"@style/Theme.AppCompat.Light.Dialog"
/>
<activity
android:name=
".ui.exception.ServerErrActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:theme=
"@style/Theme.AppCompat.Light.Dialog"
/>
android:theme=
"@style/Theme.AppCompat.Light.Dialog"
/>
<activity
android:name=
".ui.payment.PaymentActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.marketing.integral.IntegralActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:theme=
"@style/AppTheme"
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.marketing.ticket.ReturnTicketActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:label=
"@string/title_activity_ticket"
android:theme=
"@style/AppTheme"
/>
android:theme=
"@style/AppTheme"
/>
<activity
android:name=
".ui.sendticke.SendTicketActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:label=
"@string/title_activity_ticket"
android:theme=
"@style/AppTheme"
/>
android:theme=
"@style/AppTheme"
/>
<activity
android:name=
".ui.settle.SettleActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.store.StoreActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.announcement.AnnouncementActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:screenOrientation=
"portrait"
android:theme=
"@style/AppTheme"
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.help.HelpActivity"
/>
<activity
android:name=
".ui.feedback.FeedBackActivity"
/>
<activity
android:name=
".ui.statistics.StatisticsActivity"
/>
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.help.HelpActivity"
/>
<activity
android:name=
".ui.feedback.FeedBackActivity"
/>
<activity
android:name=
".ui.statistics.StatisticsActivity"
/>
<activity
android:name=
".ui.vip.VipActivity"
android:configChanges=
"keyboard|orientation|screenSize|keyboardHidden"
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.marketing.marketingMenu.MarketingMenuActivity"
>
</activity>
android:windowSoftInputMode=
"adjustUnspecified|stateHidden"
/>
<activity
android:name=
".ui.marketing.marketingMenu.MarketingMenuActivity"
>
</activity>
<
activity
android:name=
".ui.statistics.StatisticsDetailActivity"
><
/activity>
</application>
</manifest>
\ No newline at end of file
app/src/main/java/com/xingdata/zzdpos/C.java
View file @
95915c36
...
...
@@ -128,10 +128,7 @@ public class C {
* 订单查询
*/
public
static
final
String
getSaleOrder
=
PKG
+
"saleorder/queryMis"
;
/**
* 订单列表查询
*/
public
static
final
String
queryOrderList
=
PKG
+
"saleorder/query"
;
/**
* 销售订单详情查询
*/
...
...
@@ -347,6 +344,7 @@ public class C {
private
static
final
String
ROOT_URL
=
PKG
+
"level/"
;
public
static
final
String
add
=
ROOT_URL
+
"add"
;
public
static
final
String
update
=
ROOT_URL
+
"update"
;
public
static
final
String
queryAll
=
ROOT_URL
+
"queryAll"
;
}
public
final
class
COR
{
...
...
@@ -366,6 +364,14 @@ public class C {
public
static
final
String
getLastVer
=
PKG
+
"ver/getLastVer"
;
}
/**
* 会员相关
*/
public
final
class
VIP
{
private
static
final
String
ROOT_URL
=
PKG
+
"user/"
;
public
static
final
String
query
=
PKG
+
"query"
;
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/api/ApiFactory.java
View file @
95915c36
...
...
@@ -12,6 +12,7 @@ import com.xingdata.zzdpos.model.Gbound;
import
com.xingdata.zzdpos.model.Mscard
;
import
com.xingdata.zzdpos.model.NewSssku
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Sta
;
import
com.xingdata.zzdpos.model.Trule
;
import
com.xingdata.zzdpos.model.Ubound
;
import
com.xingdata.zzdpos.model.UsskuParam
;
...
...
@@ -255,9 +256,9 @@ public final class ApiFactory {
* @param pageSize
* @return
*/
public
static
Observable
<
Pager
<
com
.
xingdata
.
zzdpos
.
model
.
Saleorder
>>
getSaleOrderList
(
int
pageNulmber
,
int
public
static
Observable
<
Pager
<
com
.
xingdata
.
zzdpos
.
model
.
Saleorder
>>
getSaleOrderList
(
String
orderStatus
,
int
pageNulmber
,
int
pageSize
,
long
startDate
,
long
endDate
)
{
return
Api
.
getInstance
().
service
.
getSaleOrder
(
pageNulmber
,
pageSize
,
startDate
,
return
Api
.
getInstance
().
service
.
getSaleOrder
(
orderStatus
,
pageNulmber
,
pageSize
,
startDate
,
endDate
).
onErrorReturn
(
new
ErrorFilter
<>()).
map
(
new
ResultFilter
<>()).
subscribeOn
(
Schedulers
.
io
())
.
observeOn
(
AndroidSchedulers
.
mainThread
());
...
...
@@ -735,12 +736,13 @@ public final class ApiFactory {
}
}
public
static
class
Sat
{
public
static
class
Sta
{
/**
/**
* 查询统计详情
*/
public
static
Observable
<
Sat
>
queryNotice
()
{
return
Api
.
getInstance
().
service
.
queryS
at
()
public
static
Observable
<
com
.
xingdata
.
zzdpos
.
model
.
Sta
>
querySta
()
{
return
Api
.
getInstance
().
service
.
queryS
ta
()
.
onErrorReturn
(
new
ErrorFilter
<>())
.
map
(
new
ResultFilter
<>())
.
subscribeOn
(
Schedulers
.
io
())
...
...
@@ -980,6 +982,16 @@ public final class ApiFactory {
.
observeOn
(
AndroidSchedulers
.
mainThread
())
.
retryWhen
(
new
RetryHelper
(
3
));
}
public
static
Observable
<
Pager
<
com
.
xingdata
.
zzdpos
.
model
.
Level
>>
getVipLevelList
(
int
pageNumber
,
int
pageSize
)
{
return
Api
.
getInstance
().
service
.
getVipLevelList
(
pageNumber
,
pageSize
)
.
onErrorReturn
(
new
ErrorFilter
<>())
.
map
(
new
ResultFilter
<>())
.
subscribeOn
(
Schedulers
.
io
())
.
observeOn
(
AndroidSchedulers
.
mainThread
())
.
retryWhen
(
new
RetryHelper
(
3
));
}
}
public
static
class
Cor
{
...
...
app/src/main/java/com/xingdata/zzdpos/api/ApiService.java
View file @
95915c36
...
...
@@ -21,6 +21,7 @@ import com.xingdata.zzdpos.model.Psb;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.model.Sta
;
import
com.xingdata.zzdpos.model.Ticket
;
import
com.xingdata.zzdpos.model.Trule
;
import
com.xingdata.zzdpos.model.Ubound
;
...
...
@@ -134,8 +135,8 @@ interface ApiService {
@Query
(
"wd"
)
String
wd
);
@POST
(
C
.
URL
.
ORDER
.
queryOrderList
)
Observable
<
HttpMessage
<
Pager
<
Saleorder
>>>
getSaleOrder
(
@Query
(
"pageNumber"
)
int
pageNum
,
@Query
@POST
(
C
.
URL
.
ORDER
.
getSaleOrder
)
Observable
<
HttpMessage
<
Pager
<
Saleorder
>>>
getSaleOrder
(
@Query
(
"
orderStatus"
)
String
orderStatus
,
@Query
(
"
pageNumber"
)
int
pageNum
,
@Query
(
"pageSize"
)
int
pageSize
,
@Query
(
"startDate"
)
long
startDate
,
@Query
(
"endDate"
)
long
endDate
);
...
...
@@ -174,7 +175,7 @@ interface ApiService {
(
"pageSize"
)
int
pageSize
);
@POST
(
C
.
URL
.
STA
.
statistics
)
Observable
<
HttpMessage
<
ApiFactory
.
Sat
>>
querySat
();
Observable
<
HttpMessage
<
Sta
>>
querySta
();
@POST
(
C
.
URL
.
PSB
.
queryDetail
)
Observable
<
HttpMessage
<
Psb
>>
queryPsbDetail
(
@Query
(
"psbNo"
)
String
psbNo
,
@Query
(
"id"
)
long
id
);
...
...
@@ -342,6 +343,9 @@ interface ApiService {
@POST
(
C
.
URL
.
LEVEL
.
update
)
Observable
<
HttpMessage
<
Level
>>
updateVipLevel
(
@Body
Level
l
);
@POST
(
C
.
URL
.
LEVEL
.
queryAll
)
Observable
<
HttpMessage
<
Pager
<
Level
>>>
getVipLevelList
(
@Query
(
"pageNumber"
)
int
pageNumber
,
@Query
(
"pageSize"
)
int
pageSize
);
@POST
(
C
.
URL
.
MSCARD
.
update
)
Observable
<
HttpMessage
<
Mscard
>>
updateMscard
(
@Body
Mscard
m
);
...
...
@@ -367,4 +371,11 @@ interface ApiService {
@POST
(
C
.
URL
.
VER
.
getLastVer
)
Observable
<
HttpMessage
<
Ver
>>
getLastVer
(
@Query
(
"sn"
)
String
sn
);
@POST
(
C
.
URL
.
VIP
.
query
)
Observable
<
HttpMessage
<
Pager
<
Vip
>>>
getVipList
(
@Query
(
"vipLevel"
)
String
keycode
,
@Query
(
"pageNumber"
)
int
pageNumber
,
@Query
(
"pageSize"
)
int
pageSize
);
}
app/src/main/java/com/xingdata/zzdpos/base/BaseSheetDialog.java
View file @
95915c36
...
...
@@ -17,6 +17,7 @@ import android.view.WindowManager;
public
abstract
class
BaseSheetDialog
<
P
extends
BasePresenter
,
B
extends
ViewDataBinding
>
extends
BaseDialog
<
P
,
B
>
{
public
BottomSheetBehavior
mBehavior
;
@NonNull
@Override
public
Dialog
onCreateDialog
(
Bundle
savedInstanceState
)
{
...
...
@@ -27,12 +28,17 @@ public abstract class BaseSheetDialog<P extends BasePresenter, B extends ViewDat
MyBottomSheetDialog
dialog
=
new
MyBottomSheetDialog
(
mContext
);
mViewBinding
=
DataBindingUtil
.
inflate
(
LayoutInflater
.
from
(
mContext
),
getLayoutId
(),
null
,
false
);
dialog
.
setContentView
(
mViewBinding
.
getRoot
());
if
(
isTransparentBackground
())
{
((
View
)
mViewBinding
.
getRoot
().
getParent
()).
setBackgroundColor
(
getResources
().
getColor
(
android
.
R
.
color
.
transparent
));
}
mBehavior
=
BottomSheetBehavior
.
from
((
View
)
mViewBinding
.
getRoot
().
getParent
());
this
.
initView
();
return
dialog
;
}
protected
boolean
isTransparentBackground
()
{
return
false
;
}
@Override
public
View
onCreateView
(
@NonNull
LayoutInflater
inflater
,
ViewGroup
container
,
Bundle
savedInstanceState
)
{
...
...
app/src/main/java/com/xingdata/zzdpos/model/Saledetail.java
View file @
95915c36
...
...
@@ -13,15 +13,15 @@ import com.xingdata.zzdpos.util.ConvertUtil;
* 订单详情(购物车商品明细)
*/
public
class
Saledetail
implements
BaseModel
,
BaseBean
,
BaseGoodPrint
{
@JSONField
(
serialize
=
false
)
public
boolean
isDiscount
()
{
return
skuPrice
.
longValue
()
!=
skuPricePay
.
longValue
();
}
@JSONField
(
serialize
=
false
)
public
double
getDiscountRate
()
{
return
skuPricePay
/
skuPrice
*
100
;
}
@JSONField
(
serialize
=
false
)
public
Long
getPromotionDisRate
()
{
return
skuPromotionPrice
*
100
/
skuPricePay
;
}
...
...
@@ -58,12 +58,12 @@ public class Saledetail implements BaseModel, BaseBean,BaseGoodPrint {
@Override
public
String
getPrice
()
{
return
ConvertUtil
.
fenToYuan
(
skuPrice
,
false
);
return
ConvertUtil
.
fenToYuan
(
skuPrice
,
false
);
}
@Override
public
String
getSubtotal
()
{
return
ConvertUtil
.
fenToYuan
(
detailAmt
,
false
);
return
ConvertUtil
.
fenToYuan
(
detailAmt
,
false
);
}
@Override
...
...
@@ -217,11 +217,10 @@ public class Saledetail implements BaseModel, BaseBean,BaseGoodPrint {
*/
public
void
setVip
(
Vip
vip
)
{
this
.
vip
=
vip
;
skuPricePay
=
skuOffFlag
>
0
?
skuPrice
*
(
vip
.
getVipDefDiscount
()
>
0
?
vip
.
getVipDefDiscount
()
:
100
)
/
100
:
skuPrice
;
skuPricePay
=
skuOffFlag
>
0
?
skuPrice
*
(
vip
.
getVipDefDiscount
()
>
0
?
vip
.
getVipDefDiscount
()
:
100
)
/
100
:
skuPrice
;
detailAmt
=
skuPricePay
*
detailCnt
;
}
@JSONField
(
serialize
=
false
)
public
Long
getPromotionAmt
()
{
return
detailAmt
-
(
detailCnt
*
(
skuOffFlag
>
0
?
skuPromotionPrice
*
(
vip
.
getVipDefDiscount
()
>
0
?
vip
.
getVipDefDiscount
()
:
100
)
/
100
:
...
...
app/src/main/java/com/xingdata/zzdpos/model/Saleorder.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
model
;
import
android.provider.MediaStore
;
import
android.support.annotation.Nullable
;
import
android.util.ArrayMap
;
import
com.alibaba.fastjson.annotation.JSONField
;
import
com.chad.library.adapter.base.entity.SectionEntity
;
import
com.xingdata.api.print.entity.BaseGoodPrint
;
import
com.xingdata.api.print.entity.BaseOrderPrint
;
import
com.xingdata.zzdpos.C
;
...
...
@@ -20,9 +22,21 @@ import java.util.Map;
/**
* 订单
*/
public
class
Saleorder
implements
BaseModel
,
BaseBean
,
BaseOrderPrint
{
public
class
Saleorder
extends
SectionEntity
<
MediaStore
.
Video
>
implements
BaseModel
,
BaseBean
,
BaseOrderPrint
{
public
Saleorder
(
boolean
isHeader
,
String
header
)
{
super
(
isHeader
,
header
);
}
public
Saleorder
(
MediaStore
.
Video
video
)
{
super
(
video
);
}
public
Saleorder
()
{
super
(
false
,
""
);
}
/**
* 获取参数对象
*
...
...
@@ -209,6 +223,8 @@ public class Saleorder implements BaseModel, BaseBean, BaseOrderPrint {
public
String
payAcctNo
;
}
private
String
firstName
;
/**
* 订单的总成本
*/
...
...
@@ -1016,11 +1032,15 @@ public class Saleorder implements BaseModel, BaseBean, BaseOrderPrint {
@Override
public
List
<
BaseGoodPrint
>
getGoodList
()
{
List
<
BaseGoodPrint
>
baseGoodPrints
=
new
ArrayList
<>();
for
(
Saledetail
saledetail
:
saledetailList
)
{
baseGoodPrints
.
add
(
saledetail
);
if
(
saledetailList
!=
null
)
{
List
<
BaseGoodPrint
>
baseGoodPrints
=
new
ArrayList
<>();
for
(
Saledetail
saledetail
:
saledetailList
)
{
baseGoodPrints
.
add
(
saledetail
);
}
return
baseGoodPrints
;
}
else
{
return
null
;
}
return
baseGoodPrints
;
}
@Override
...
...
@@ -1109,4 +1129,12 @@ public class Saleorder implements BaseModel, BaseBean, BaseOrderPrint {
this
.
money
=
money
;
}
}
public
String
getFirstName
()
{
return
firstName
;
}
public
void
setFirstName
(
String
firstName
)
{
this
.
firstName
=
firstName
;
}
}
\ No newline at end of file
app/src/main/java/com/xingdata/zzdpos/ui/dialog/LoadingDialog.java
View file @
95915c36
...
...
@@ -4,24 +4,14 @@ package com.xingdata.zzdpos.ui.dialog;
import
android.content.DialogInterface
;
import
android.os.Bundle
;
import
com.blankj.utilcode.util.LogUtils
;
import
java.util.concurrent.TimeUnit
;
import
io.reactivex.Observable
;
import
io.reactivex.Observer
;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.annotations.NonNull
;
import
io.reactivex.disposables.Disposable
;
import
io.reactivex.functions.Consumer
;
import
io.reactivex.functions.Function
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.base.BaseDialog
;
import
com.xingdata.zzdpos.base.BasePresenter
;
import
com.xingdata.zzdpos.databinding.DialogLoadingBinding
;
import
io.reactivex.disposables.Disposable
;
public
class
LoadingDialog
extends
BaseDialog
<
BasePresenter
,
DialogLoadingBinding
>
{
Disposable
disp
;
boolean
isClose
=
true
;
...
...
@@ -55,49 +45,9 @@ public class LoadingDialog extends BaseDialog<BasePresenter, DialogLoadingBindin
@Override
public
void
show
(
BaseActivity
activity
)
{
super
.
show
(
activity
);
if
(
isClose
)
{
int
recLen
=
20
;
Observable
.
interval
(
0
,
1
,
TimeUnit
.
SECONDS
).
take
(
recLen
+
1
).
map
(
new
Function
<
Long
,
Long
>
()
{
@Override
public
Long
apply
(
@NonNull
Long
aLong
)
throws
Exception
{
return
recLen
-
aLong
;
}
}).
observeOn
(
AndroidSchedulers
.
mainThread
()).
doOnSubscribe
(
new
Consumer
<
Disposable
>()
{
@Override
public
void
accept
(
Disposable
disposable
)
throws
Exception
{
disp
=
disposable
;
}
}).
subscribe
(
new
Observer
<
Long
>()
{
@Override
public
void
onSubscribe
(
@NonNull
Disposable
d
)
{
disp
=
d
;
}
@Override
public
void
onNext
(
@NonNull
Long
aLong
)
{
LogUtils
.
e
(
"对话框将在"
+
aLong
+
"S后关闭"
);
}
@Override
public
void
onError
(
@NonNull
Throwable
e
)
{
}
@Override
public
void
onComplete
()
{
dismiss
();
if
(
null
!=
disp
)
{
disp
.
dispose
();
}
}
});
}
super
.
show
(
activity
,
20
);
}
@Override
public
void
onDismiss
(
DialogInterface
dialog
)
{
super
.
onDismiss
(
dialog
);
...
...
app/src/main/java/com/xingdata/zzdpos/ui/settle/SettleActivity.java
View file @
95915c36
...
...
@@ -9,6 +9,7 @@ import com.xingdata.zzdpos.R;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.databinding.ActivitySettleBinding
;
import
com.xingdata.zzdpos.model.Pay
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.model.Ticket
;
import
com.xingdata.zzdpos.model.Vip
;
...
...
@@ -111,6 +112,11 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle
mCashPayFragment
.
loadSaleorder
(
saleorder
);
}
@Override
public
void
loadSaledetails
(
List
<
Saledetail
>
saledetails
)
{
}
@Override
public
void
showPayFragment
(
int
payChannel
)
{
switch
(
payChannel
)
{
...
...
app/src/main/java/com/xingdata/zzdpos/ui/settle/SettleContract.java
View file @
95915c36
...
...
@@ -3,6 +3,7 @@ package com.xingdata.zzdpos.ui.settle;
import
com.xingdata.zzdpos.base.BasePresenter
;
import
com.xingdata.zzdpos.base.BaseView
;
import
com.xingdata.zzdpos.model.Pay
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.model.Ticket
;
import
com.xingdata.zzdpos.model.Vip
;
...
...
@@ -77,6 +78,13 @@ interface SettleContract {
*/
void
loadSaleorder
(
Saleorder
saleorder
);
/**
* 加载订单
*
* @param saledetails 详情列表
*/
void
loadSaledetails
(
List
<
Saledetail
>
saledetails
);
/**
* 显示支付页面
*
...
...
app/src/main/java/com/xingdata/zzdpos/ui/settle/SettlePresenter.java
View file @
95915c36
...
...
@@ -86,7 +86,8 @@ public class SettlePresenter extends SettleContract.Presenter {
* 获取开单信息
*/
private
void
getStoreIntent
()
{
mSaledetails
.
addAll
((
ArrayList
)
getIntent
().
getSerializableExtra
(
C
.
EXTRA_KEY
.
SETTLE_EXTRA
));
mSaleorder
.
setSaledetails
(
mSaledetails
);
}
...
...
@@ -123,6 +124,8 @@ public class SettlePresenter extends SettleContract.Presenter {
public
void
selectVip
(
Vip
vip
)
{
// 设置会员
this
.
setVip
(
vip
);
// 重新设置购物车
mSaleorder
.
setSaledetails
(
mSaledetails
);
// 计算价格
this
.
reprice
();
...
...
app/src/main/java/com/xingdata/zzdpos/ui/settle/adapter/SaledetailAdapter.java
0 → 100644
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
settle
.
adapter
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseAdapter
;
import
com.xingdata.zzdpos.databinding.ItemSettleSaledetailBinding
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
java.util.ArrayList
;
public
class
SaledetailAdapter
extends
BaseAdapter
<
Saledetail
,
ItemSettleSaledetailBinding
>
{
public
SaledetailAdapter
()
{
super
(
R
.
layout
.
item_store_saledetail
,
new
ArrayList
<>());
}
@Override
protected
void
convert
(
ItemSettleSaledetailBinding
mViewBinding
,
Saledetail
item
)
{
}
}
app/src/main/java/com/xingdata/zzdpos/ui/settle/fragment/SettleFragment.java
View file @
95915c36
...
...
@@ -2,6 +2,7 @@ package com.xingdata.zzdpos.ui.settle.fragment;
import
android.support.design.widget.BottomSheetBehavior
;
import
android.support.v7.widget.StaggeredGridLayoutManager
;
import
android.view.View
;
import
com.xingdata.zzdpos.C
;
import
com.xingdata.zzdpos.R
;
...
...
@@ -69,8 +70,36 @@ public class SettleFragment extends BaseFragment<SettlePresenter, FragmentSettle
* @param settleMode 收款模式
*/
public
void
setViewBySettleMode
(
int
settleMode
)
{
switch
(
settleMode
)
{
case
C
.
SETTLE_MODE
.
PAYMENT
:
mViewBinding
.
llTicket
.
setVisibility
(
View
.
GONE
);
break
;
case
C
.
SETTLE_MODE
.
STORE
:
mViewBinding
.
llTicket
.
setVisibility
(
View
.
VISIBLE
);
this
.
initStoreView
();
break
;
}
}
/**
* 初始化
*/
private
void
initStoreView
()
{
mViewBinding
.
llSaledetail
.
setOnClickListener
(
view
->
mViewBinding
.
cbSaledetail
.
setChecked
(!
mViewBinding
.
cbSaledetail
.
isChecked
()));
mViewBinding
.
llMs
.
setOnClickListener
(
view
->
mViewBinding
.
cbMs
.
setChecked
(!
mViewBinding
.
cbMs
.
isChecked
()));
mViewBinding
.
cbSaledetail
.
setOnCheckedChangeListener
((
compoundButton
,
b
)
->
{
mViewBinding
.
cbSaledetail
.
setButtonDrawable
(
b
?
R
.
mipmap
.
but_up
:
R
.
mipmap
.
but_unfurled
);
mViewBinding
.
rlSaledetail
.
setVisibility
(
b
?
View
.
VISIBLE
:
View
.
GONE
);
});
mViewBinding
.
cbMs
.
setOnCheckedChangeListener
((
compoundButton
,
b
)
->
{
mViewBinding
.
cbMs
.
setButtonDrawable
(
b
?
R
.
mipmap
.
but_up
:
R
.
mipmap
.
but_unfurled
);
mViewBinding
.
rlMs
.
setVisibility
(
b
?
View
.
VISIBLE
:
View
.
GONE
);
});
}
/**
* 加载会员
*
...
...
app/src/main/java/com/xingdata/zzdpos/ui/statistics/StatisticsActivity.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.view.KeyEvent
;
import
com.alibaba.fastjson.JSON
;
import
com.blankj.utilcode.util.ActivityUtils
;
import
com.blankj.utilcode.util.FragmentUtils
;
import
com.xingdata.zzdpos.C
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.databinding.ActivityStatisticsBinding
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.
ui.statistics.fragment.OrderMainFragment
;
import
com.xingdata.zzdpos.
model.Sta
;
import
com.xingdata.zzdpos.ui.statistics.fragment.StatisticsFragment
;
import
com.xingdata.zzdpos.ui.statistics.fragment.StatisticsTitleFragment
;
public
class
StatisticsActivity
extends
BaseActivity
<
StatisticsPresenter
,
ActivityStatisticsBinding
>
implements
StatisticsContract
.
View
{
private
StatisticsFragment
mStatisticsFragment
=
new
StatisticsFragment
();
private
OrderMainFragment
mOrderMainFragment
=
new
OrderMain
Fragment
();
private
StatisticsTitleFragment
mStatisticsTitleFragment
=
new
StatisticsTitle
Fragment
();
@Override
public
int
getLayoutId
()
{
...
...
@@ -29,11 +35,34 @@ public class StatisticsActivity extends BaseActivity<StatisticsPresenter, Activi
}
@Override
public
void
setSatInfo
(
Sta
sta
)
{
mStatisticsFragment
.
setSatInfo
(
sta
);
}
@Override
public
void
showOrderListFragment
()
{
FragmentUtils
.
add
(
getSupportFragmentManager
(),
mOrderMainFragment
,
mViewBinding
.
fragmentContainer
.
getId
(),
false
,
true
);
mStatisticsTitleFragment
.
setTitle
(
C
.
MENU
.
MENU_STATISTICS_ORDER
);
FragmentUtils
.
add
(
getSupportFragmentManager
(),
mStatisticsTitleFragment
,
mViewBinding
.
fragmentContainer
.
getId
(),
false
,
true
);
}
@Override
public
void
showMStFragment
()
{
mStatisticsTitleFragment
.
setTitle
(
C
.
MENU
.
MENU_STATISTICS_MS
);
FragmentUtils
.
add
(
getSupportFragmentManager
(),
mStatisticsTitleFragment
,
mViewBinding
.
fragmentContainer
.
getId
(),
false
,
true
);
}
@Override
public
void
searchSuc
(
Pager
<
Saleorder
>
saleorderPager
,
String
wd
)
{
mStatisticsTitleFragment
.
searchSuc
(
saleorderPager
,
wd
);
}
@Override
public
void
getOrderDetailSuss
(
Saleorder
saleorder
)
{
Intent
intent
=
new
Intent
(
this
,
StatisticsDetailActivity
.
class
);
intent
.
putExtra
(
Saleorder
.
class
.
getName
(),
JSON
.
toJSONString
(
saleorder
));
ActivityUtils
.
startActivity
(
intent
);
}
@Override
...
...
app/src/main/java/com/xingdata/zzdpos/ui/statistics/StatisticsContract.java
View file @
95915c36
...
...
@@ -4,35 +4,67 @@ import com.xingdata.zzdpos.base.BasePresenter;
import
com.xingdata.zzdpos.base.BaseView
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.ui.statistics.fragment.OrderListFragment
;
import
com.xingdata.zzdpos.model.Sta
;
import
com.xingdata.zzdpos.ui.statistics.fragment.order.OrderListFragment
;
/**
* Created by Administrator on 2017/12/23.
*/
public
interface
StatisticsContract
{
interface
DetallView
extends
BaseView
{
}
interface
View
extends
BaseView
{
/**
* 设置统计信息
*/
void
setSatInfo
(
Sta
sta
);
/**
* 跳转订单列表页
*/
void
showOrderListFragment
();
/**
* 跳转营销页
*/
void
showMStFragment
();
/**
* 搜索成功
*/
void
searchSuc
(
Pager
<
Saleorder
>
saleorderPager
,
String
wd
);
void
getOrderDetailSuss
(
Saleorder
saleorder
);
}
abstract
class
Presenter
extends
BasePresenter
<
View
>
{
/**
* 跳转营销页
*/
public
abstract
void
clickMs
();
/**
* 跳转订单列表页
*/
public
abstract
void
clickOrderList
();
/**
* 获取订单明细
*/
public
abstract
void
getOrderDetail
(
Saleorder
saleorder
);
/**
* 获取订单列表
*/
public
abstract
void
getOrderList
(
int
pageNumber
,
int
pageSize
,
long
startDate
,
long
endDate
,
OrderListFragment
orderListFragment
);
/**
* 搜索订单列表
*/
public
abstract
void
getSaleOrderList
(
String
orderNo
,
int
pageNumber
,
String
wd
);
/**
* 获取统计详情
...
...
app/src/main/java/com/xingdata/zzdpos/ui/statistics/StatisticsDetailActivity.java
0 → 100644
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
;
import
android.databinding.DataBindingUtil
;
import
android.util.TimeUtils
;
import
com.alibaba.fastjson.JSON
;
import
com.google.gson.Gson
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.databinding.ActivityStatisticsDetailBinding
;
import
com.xingdata.zzdpos.databinding.ViewOrderDetailBinding
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.util.ConvertUtil
;
import
org.json.JSONObject
;
public
class
StatisticsDetailActivity
extends
BaseActivity
<
StatisticsPresenter
,
ActivityStatisticsDetailBinding
>
implements
StatisticsContract
.
DetallView
{
private
Saleorder
mSaleorder
;
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
activity_statistics_detail
;
}
@Override
public
void
initView
()
{
initData
();
}
private
void
initData
()
{
if
(
getIntent
().
getExtras
()
!=
null
)
{
String
data
=
getIntent
().
getStringExtra
(
Saleorder
.
class
.
getName
());
if
(
data
!=
null
)
{
mSaleorder
=
new
Gson
().
fromJson
(
data
,
Saleorder
.
class
);
mViewBinding
.
icTitle
.
tvTitle
.
setText
(
R
.
string
.
statistics_order_detail_hint
);
mViewBinding
.
viewOrderDetail
.
getViewStub
().
inflate
();
ViewOrderDetailBinding
viewOrderDetailBinding
=
DataBindingUtil
.
bind
(
mViewBinding
.
viewOrderDetail
.
getRoot
());
viewOrderDetailBinding
.
tvAmt
.
setText
(
ConvertUtil
.
fenToYuan
(
mSaleorder
.
getOrderPayAmt
(),
true
));
viewOrderDetailBinding
.
setDate
(
com
.
blankj
.
utilcode
.
util
.
TimeUtils
.
millis2String
(
mSaleorder
.
getCreateTime
()));
viewOrderDetailBinding
.
setOrderNo
(
mSaleorder
.
getOrderNo
());
viewOrderDetailBinding
.
setDisAmt
(
ConvertUtil
.
fenToYuan
(
mSaleorder
.
getOrderReduAmt
(),
false
));
viewOrderDetailBinding
.
setPayType
(
mSaleorder
.
getSalepay
()
==
null
?
"未支付"
:
mSaleorder
.
getSalepay
().
getPayName
());
viewOrderDetailBinding
.
setSumAmt
(
ConvertUtil
.
fenToYuan
(
mSaleorder
.
getOrderAuthAmt
(),
false
));
viewOrderDetailBinding
.
setOperName
(
mSaleorder
.
getOperName
());
viewOrderDetailBinding
.
setGoodsNum
(
mSaleorder
.
getOrderCnt
()+
""
);
if
(
mSaleorder
.
getCutAmt
()==
null
||
mSaleorder
.
getCutAmt
()==
0
){
viewOrderDetailBinding
.
setCutAmtShow
(
false
);
}
else
{
viewOrderDetailBinding
.
setCutAmtShow
(
true
);
viewOrderDetailBinding
.
setCutAmt
(
ConvertUtil
.
fenToYuan
(
mSaleorder
.
getCutAmt
(),
false
));
}
}
}
}
@Override
public
void
onBackPressedSupport
()
{
super
.
onBackPressedSupport
();
}
}
app/src/main/java/com/xingdata/zzdpos/ui/statistics/StatisticsPresenter.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
;
import
android.view.KeyEvent
;
import
com.blankj.utilcode.util.FragmentUtils
;
import
com.blankj.utilcode.util.ToastUtils
;
import
com.xingdata.zzdpos.api.ApiFactory
;
import
com.xingdata.zzdpos.ui.statistics.fragment.OrderListFragment
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.ui.statistics.fragment.order.OrderListFragment
;
/**
* Created by Administrator on 2017/12/23.
...
...
@@ -22,6 +20,11 @@ public class StatisticsPresenter extends StatisticsContract.Presenter {
}
@Override
public
void
clickMs
()
{
mView
.
showMStFragment
();
}
@Override
public
void
clickOrderList
()
{
mView
.
showOrderListFragment
();
...
...
@@ -30,7 +33,7 @@ public class StatisticsPresenter extends StatisticsContract.Presenter {
@Override
public
void
getOrderList
(
int
pageNumber
,
int
pageSize
,
long
startDate
,
long
endDate
,
OrderListFragment
fragment
)
{
ApiFactory
.
Test
.
getSaleOrderList
(
pageNumber
,
pageSize
,
startDate
,
endDate
).
doFinally
(()
->
{
ApiFactory
.
Test
.
getSaleOrderList
(
"99"
,
pageNumber
,
pageSize
,
startDate
,
endDate
).
doFinally
(()
->
{
})
.
subscribe
(
orderlist
->
{
...
...
@@ -42,11 +45,11 @@ public class StatisticsPresenter extends StatisticsContract.Presenter {
@Override
public
void
getSat
()
{
ApiFactory
.
S
at
.
queryNotice
().
doFinally
(()
->
{
ApiFactory
.
S
ta
.
querySta
().
doFinally
(()
->
{
})
.
subscribe
(
s
at
->
{
.
subscribe
(
s
ta
->
{
mView
.
setSatInfo
(
sta
);
},
throwable
->
{
ToastUtils
.
showShort
(
throwable
.
getMessage
());
});
...
...
@@ -55,4 +58,38 @@ public class StatisticsPresenter extends StatisticsContract.Presenter {
public
void
getOrderList
(
int
pageNumber
,
long
startDate
,
long
endDate
,
OrderListFragment
fragment
)
{
getOrderList
(
pageNumber
,
pageSize
,
startDate
,
endDate
,
fragment
);
}
@Override
public
void
getOrderDetail
(
Saleorder
mSaleorder
)
{
ApiFactory
.
Test
.
getSaleOrderDetail
(
mSaleorder
.
getId
()
+
""
).
subscribe
(
saleorder
->
{
mView
.
getOrderDetailSuss
(
saleorder
);
},
throwable
->
{
ToastUtils
.
showShort
(
throwable
.
getMessage
());
});
}
/**
* 状态,0:已完成,1:退货,7赊账,99:全部订单
*
* @param orderNo 订单号
*/
@Override
public
void
getSaleOrderList
(
String
orderNo
,
int
pageNumber
,
String
wd
)
{
ApiFactory
.
Test
.
getSaleOrderList
(
pageNumber
,
pageSize
,
"99"
,
orderNo
,
wd
)
.
subscribe
(
saleorderPager
->
{
//判断是否能加载更多
if
(
saleorderPager
.
getList
()
==
null
||
saleorderPager
.
getList
().
size
()
==
0
)
{
ToastUtils
.
showShort
(
"没有查询到相关订单"
);
}
else
{
mView
.
searchSuc
(
saleorderPager
,
wd
);
}
},
throwable
->
{
ToastUtils
.
showShort
(
throwable
.
getMessage
());
});
}
}
app/src/main/java/com/xingdata/zzdpos/ui/statistics/adapter/StatisticsAdapter.java
View file @
95915c36
...
...
@@ -7,6 +7,7 @@ import android.view.View;
import
android.view.ViewGroup
;
import
com.blankj.utilcode.util.TimeUtils
;
import
com.xingdata.zzdpos.C
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseAdapter
;
import
com.xingdata.zzdpos.databinding.ItemStatisticsBinding
;
...
...
@@ -26,8 +27,33 @@ public class StatisticsAdapter extends BaseAdapter<Saleorder, ItemStatisticsBind
@Override
protected
void
convert
(
ItemStatisticsBinding
mViewBinding
,
Saleorder
item
)
{
mViewBinding
.
tvLeftTop
.
setText
(
item
.
getOrderNo
());
if
(
item
.
getFirstName
()!=
null
){
mViewBinding
.
tvLeftTop
.
setText
(
item
.
getFirstName
());
}
else
{
mViewBinding
.
tvLeftTop
.
setText
(
item
.
getOrderNo
());
}
mViewBinding
.
tvLeftBottom
.
setText
(
TimeUtils
.
millis2String
(
item
.
getCreateTime
()));
switch
(
item
.
getPayType
()){
case
C
.
PAY_CHANNEL
.
CASH
:
mViewBinding
.
imgLeft
.
setImageResource
(
R
.
mipmap
.
pay_cash
);
break
;
case
C
.
PAY_CHANNEL
.
WECHAT
:
mViewBinding
.
imgLeft
.
setImageResource
(
R
.
mipmap
.
pay_wechat
);
break
;
case
C
.
PAY_CHANNEL
.
ALI
:
mViewBinding
.
imgLeft
.
setImageResource
(
R
.
mipmap
.
pay_alipay
);
break
;
case
C
.
PAY_CHANNEL
.
BANK
:
mViewBinding
.
imgLeft
.
setImageResource
(
R
.
mipmap
.
pay_card
);
break
;
case
C
.
PAY_CHANNEL
.
CARD
:
mViewBinding
.
imgLeft
.
setImageResource
(
R
.
mipmap
.
pay_membershipcard
);
break
;
case
C
.
PAY_CHANNEL
.
TALLY
:
mViewBinding
.
imgLeft
.
setImageResource
(
R
.
mipmap
.
pay_credit
);
break
;
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/statistics/adapter/StatisticsGroupAdapter.java
0 → 100644
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
.
adapter
;
import
android.support.v7.widget.RecyclerView
;
import
com.chad.library.adapter.base.BaseSectionQuickAdapter
;
import
com.chad.library.adapter.base.BaseViewHolder
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
java.util.List
;
/**
* Created by Administrator on 2017/12/26.
*/
public
class
StatisticsGroupAdapter
extends
BaseSectionQuickAdapter
<
Saleorder
,
BaseViewHolder
>
{
public
StatisticsGroupAdapter
(
int
layoutResId
,
int
sectionHeadResId
,
List
<
Saleorder
>
data
)
{
super
(
layoutResId
,
sectionHeadResId
,
data
);
}
@Override
protected
void
convertHead
(
com
.
chad
.
library
.
adapter
.
base
.
BaseViewHolder
helper
,
Saleorder
item
)
{
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
Saleorder
item
)
{
}
}
\ No newline at end of file
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/StatisticsFragment.java
View file @
95915c36
...
...
@@ -10,9 +10,11 @@ import com.xingdata.zzdpos.R;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentStatisticsBinding
;
import
com.xingdata.zzdpos.model.Sta
;
import
com.xingdata.zzdpos.ui.main.MainPresenter
;
import
com.xingdata.zzdpos.ui.main.adapter.MenuRecyclerAdapter
;
import
com.xingdata.zzdpos.ui.statistics.StatisticsPresenter
;
import
com.xingdata.zzdpos.util.ConvertUtil
;
import
com.xingdata.zzdpos.util.MyMenuItemDecoration
;
import
com.xingdata.zzdpos.util.OnClickListener
;
...
...
@@ -56,7 +58,7 @@ public class StatisticsFragment extends BaseFragment<StatisticsPresenter, Fragme
mPresenter
.
clickOrderList
();
break
;
case
C
.
MENU
.
MENU_STATISTICS_MS
:
//营销
mPresenter
.
clickMs
();
break
;
}
...
...
@@ -65,4 +67,12 @@ public class StatisticsFragment extends BaseFragment<StatisticsPresenter, Fragme
}
public
void
setSatInfo
(
Sta
sta
)
{
mViewBinding
.
setTodayAmt
(
ConvertUtil
.
fenToYuan
(
sta
.
getSaleAmt
(),
false
));
mViewBinding
.
setTodayOrder
(
String
.
valueOf
(
sta
.
getSaleCount
()));
mViewBinding
.
setTodayRecharge
(
ConvertUtil
.
fenToYuan
(
sta
.
getCardAmt
(),
false
));
mViewBinding
.
setTodayVipAdd
(
String
.
valueOf
(
sta
.
getVipCount
()));
}
}
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/StatisticsTitleFragment.java
0 → 100644
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
.
fragment
;
import
android.view.KeyEvent
;
import
android.view.View
;
import
com.blankj.utilcode.util.FragmentUtils
;
import
com.xingdata.zzdpos.C
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentStatisticsTitleBinding
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.ui.statistics.StatisticsPresenter
;
import
com.xingdata.zzdpos.ui.statistics.fragment.order.OrderMainFragment
;
import
com.xingdata.zzdpos.ui.statistics.fragment.order.OrderSearchFragment
;
import
com.xingdata.zzdpos.util.OnClickListener
;
public
class
StatisticsTitleFragment
extends
BaseFragment
<
StatisticsPresenter
,
FragmentStatisticsTitleBinding
>
{
private
int
fragmentMenu
;
private
OrderMainFragment
mOrderMainFragment
=
new
OrderMainFragment
();
private
OrderSearchFragment
mOrderSearchFragment
=
new
OrderSearchFragment
();
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
fragment_statistics_title
;
}
@Override
public
void
initView
()
{
switch
(
fragmentMenu
)
{
case
C
.
MENU
.
MENU_STATISTICS_ORDER
:
FragmentUtils
.
add
(
getChildFragmentManager
(),
mOrderMainFragment
,
mViewBinding
.
mainFrame
.
getId
(),
false
,
true
);
mViewBinding
.
icTitle
.
edTitle
.
setOnFocusChangeListener
(
new
View
.
OnFocusChangeListener
()
{
@Override
public
void
onFocusChange
(
View
view
,
boolean
b
)
{
if
(
b
)
{
if
(
mViewBinding
.
viewStub
.
isInflated
())
{
mViewBinding
.
viewStub
.
getRoot
().
setVisibility
(
View
.
VISIBLE
);
}
else
{
mViewBinding
.
viewStub
.
getViewStub
().
inflate
();
}
}
else
{
mViewBinding
.
viewStub
.
getRoot
().
setVisibility
(
View
.
GONE
);
}
}
});
mViewBinding
.
icTitle
.
edTitle
.
setOnKeyListener
((
v
,
keyCode
,
event
)
->
{
if
(
keyCode
==
KeyEvent
.
KEYCODE_ENTER
&&
event
.
getAction
()
==
KeyEvent
.
ACTION_UP
)
{
mPresenter
.
getSaleOrderList
(
null
,
1
,
mViewBinding
.
icTitle
.
edTitle
.
getText
().
toString
());
hideSoftInput
();
}
return
false
;
});
break
;
case
C
.
MENU
.
MENU_STATISTICS_MS
:
mViewBinding
.
icTitle
.
edTitle
.
setVisibility
(
View
.
GONE
);
mViewBinding
.
icTitle
.
tvTitle
.
setText
(
R
.
string
.
menu_ms
);
mViewBinding
.
icTitle
.
tvTitle
.
setVisibility
(
View
.
VISIBLE
);
break
;
}
mViewBinding
.
icTitle
.
setOnClickListener
(
new
OnClickListener
()
{
@Override
protected
void
myOnClickListener
(
View
v
)
{
if
(
mViewBinding
.
icTitle
.
edTitle
.
isFocused
())
{
mViewBinding
.
icTitle
.
edTitle
.
clearFocus
();
return
;
}
if
(
mOrderSearchFragment
.
isAdded
())
{
FragmentUtils
.
remove
(
mOrderSearchFragment
);
return
;
}
pop
();
}
});
}
public
void
setTitle
(
int
c
)
{
fragmentMenu
=
c
;
}
public
void
searchSuc
(
Pager
<
Saleorder
>
saleorderPager
,
String
wd
)
{
if
(!
mOrderSearchFragment
.
isAdded
())
{
mOrderSearchFragment
.
setCreateDate
(
saleorderPager
,
wd
);
FragmentUtils
.
add
(
getChildFragmentManager
(),
mOrderSearchFragment
,
mViewBinding
.
mainFrame
.
getId
(),
false
,
true
);
}
else
{
mOrderSearchFragment
.
setData
(
saleorderPager
,
saleorderPager
.
isFirstPage
());
}
}
@Override
public
boolean
onBackPressedSupport
()
{
if
(
mViewBinding
.
icTitle
.
edTitle
.
isFocused
())
{
mViewBinding
.
icTitle
.
edTitle
.
clearFocus
();
return
true
;
}
if
(
mOrderSearchFragment
.
isAdded
())
{
FragmentUtils
.
remove
(
mOrderSearchFragment
);
return
true
;
}
mViewBinding
.
icTitle
.
edTitle
.
setText
(
""
);
return
false
;
}
}
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/OrderListFragment.java
→
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/
order/
OrderListFragment.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
.
fragment
;
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
.
fragment
.
order
;
import
android.annotation.SuppressLint
;
import
android.support.v7.widget.LinearLayoutManager
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.widget.TextView
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseFragment
;
...
...
@@ -27,10 +25,9 @@ import java.util.List;
public
class
OrderListFragment
extends
BaseFragment
<
StatisticsPresenter
,
FragmentOrderListBinding
>
{
private
StatisticsAdapter
mStatisticsAdapter
;
private
List
<
Saleorder
>
saleorders
=
new
ArrayList
<>();
private
Long
monthDateStart
;
private
Long
monthDateEnd
;
private
int
pagerNum
=
1
;
private
int
pagerNum
;
public
OrderListFragment
setDate
(
Long
end
,
Long
start
)
{
monthDateStart
=
start
;
...
...
@@ -46,6 +43,7 @@ public class OrderListFragment extends BaseFragment<StatisticsPresenter, Fragmen
@Override
public
void
initView
()
{
pagerNum
=
1
;
Calendar
calendar
=
Calendar
.
getInstance
();
//获得当前时间的月份,月份从0开始所以结果要加1
int
monthNow
=
calendar
.
get
(
Calendar
.
MONTH
)
+
1
;
...
...
@@ -66,7 +64,7 @@ public class OrderListFragment extends BaseFragment<StatisticsPresenter, Fragmen
mViewBinding
.
tvEmpty
.
setText
(
R
.
string
.
statistics_search_empty
);
if
(
mStatisticsAdapter
==
null
)
{
mStatisticsAdapter
=
new
StatisticsAdapter
(
saleorders
);
mStatisticsAdapter
=
new
StatisticsAdapter
(
new
ArrayList
<>()
);
mViewBinding
.
statisticsRecycler
.
setLayoutManager
(
new
LinearLayoutManager
(
getActivity
()));
mViewBinding
.
statisticsRecycler
.
setAdapter
(
mStatisticsAdapter
);
...
...
@@ -75,6 +73,12 @@ public class OrderListFragment extends BaseFragment<StatisticsPresenter, Fragmen
mViewBinding
.
statisticsRecycler
.
setAdapter
(
mStatisticsAdapter
);
}
mStatisticsAdapter
.
setOnItemClickListener
(
new
BaseQuickAdapter
.
OnItemClickListener
()
{
@Override
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
mPresenter
.
getOrderDetail
(
mStatisticsAdapter
.
getData
().
get
(
position
));
}
});
mViewBinding
.
srlProduct
.
setOnRefreshListener
(
this
::
onRefresh
);
mStatisticsAdapter
.
setOnLoadMoreListener
(
this
::
onLoadMore
,
mViewBinding
.
statisticsRecycler
);
...
...
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/OrderMainFragment.java
→
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/
order/
OrderMainFragment.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
.
fragment
;
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
.
fragment
.
order
;
import
android.support.design.widget.TabLayout
;
import
android.support.v4.app.Fragment
;
import
android.view.View
;
import
com.blankj.utilcode.util.TimeUtils
;
import
com.blankj.utilcode.util.ToastUtils
;
...
...
@@ -13,10 +11,7 @@ import com.xingdata.zzdpos.base.BaseFragment;
import
com.xingdata.zzdpos.databinding.FragmentOrderMainBinding
;
import
com.xingdata.zzdpos.ui.main.MainPresenter
;
import
com.xingdata.zzdpos.ui.main.adapter.FragmentViewAdapter
;
import
com.xingdata.zzdpos.ui.main.fragment.ServiceFragment
;
import
com.xingdata.zzdpos.ui.statistics.adapter.FragmentStateAdapter
;
import
com.xingdata.zzdpos.util.OnClickListener
;
import
com.xingdata.zzdpos.util.StringUtil
;
...
...
@@ -24,16 +19,13 @@ import java.text.SimpleDateFormat;
import
java.util.ArrayList
;
import
java.util.Calendar
;
import
java.util.List
;
import
java.util.logging.Handler
;
import
io.reactivex.Observable
;
import
io.reactivex.ObservableEmitter
;
import
io.reactivex.ObservableOnSubscribe
;
import
io.reactivex.Observer
;
import
io.reactivex.Scheduler
;
import
io.reactivex.android.schedulers.AndroidSchedulers
;
import
io.reactivex.disposables.Disposable
;
import
io.reactivex.functions.Consumer
;
import
io.reactivex.functions.Function
;
import
io.reactivex.schedulers.Schedulers
;
...
...
@@ -54,13 +46,8 @@ public class OrderMainFragment extends BaseFragment<MainPresenter, FragmentOrder
public
void
initView
()
{
Calendar
calendar
=
Calendar
.
getInstance
();
//获得当前时间的月份,月份从0开始所以结果要加1
month
=
calendar
.
get
(
Calendar
.
MONTH
)
+
1
;
mViewBinding
.
icTitle
.
setOnClickListener
(
new
OnClickListener
()
{
@Override
protected
void
myOnClickListener
(
View
v
)
{
pop
();
}
});
month
=
calendar
.
get
(
Calendar
.
MONTH
)
+
1
;
initViewPager
();
...
...
@@ -148,5 +135,4 @@ public class OrderMainFragment extends BaseFragment<MainPresenter, FragmentOrder
}
}
}
app/src/main/java/com/xingdata/zzdpos/ui/statistics/fragment/order/OrderSearchFragment.java
0 → 100644
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
statistics
.
fragment
.
order
;
import
android.support.v7.widget.LinearLayoutManager
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentOrderSearchBinding
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.ui.statistics.StatisticsPresenter
;
import
com.xingdata.zzdpos.ui.statistics.adapter.StatisticsAdapter
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
OrderSearchFragment
extends
BaseFragment
<
StatisticsPresenter
,
FragmentOrderSearchBinding
>
{
private
StatisticsAdapter
mStatisticsAdapter
;
private
Pager
<
Saleorder
>
saleorders
;
private
int
pagerNum
=
1
;
private
String
wd
=
""
;
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
fragment_order_search
;
}
@Override
public
void
initView
()
{
if
(
mStatisticsAdapter
==
null
)
{
mStatisticsAdapter
=
new
StatisticsAdapter
(
new
ArrayList
<>());
mViewBinding
.
statisticsRecycler
.
setLayoutManager
(
new
LinearLayoutManager
(
getActivity
()));
mViewBinding
.
statisticsRecycler
.
setAdapter
(
mStatisticsAdapter
);
}
else
{
mViewBinding
.
statisticsRecycler
.
setLayoutManager
(
new
LinearLayoutManager
(
getActivity
()));
mViewBinding
.
statisticsRecycler
.
setAdapter
(
mStatisticsAdapter
);
}
mViewBinding
.
srlProduct
.
setOnRefreshListener
(
this
::
onRefresh
);
mStatisticsAdapter
.
setOnLoadMoreListener
(
this
::
onLoadMore
,
mViewBinding
.
statisticsRecycler
);
if
(
saleorders
!=
null
)
{
setData
(
saleorders
,
saleorders
.
isFirstPage
());
}
}
private
void
onRefresh
()
{
pagerNum
=
1
;
mPresenter
.
getSaleOrderList
(
null
,
pagerNum
,
wd
);
}
private
void
onLoadMore
()
{
pagerNum
++;
mPresenter
.
getSaleOrderList
(
null
,
pagerNum
,
wd
);
}
/**
* 设置数据
*
* @param pager 数据
* @param isRefresh 是否刷新
*/
public
void
setData
(
Pager
<
Saleorder
>
pager
,
boolean
isRefresh
)
{
if
(
isRefresh
)
{
mStatisticsAdapter
.
setEnableLoadMore
(
true
);
mViewBinding
.
srlProduct
.
setRefreshing
(
false
);
}
if
(
isRefresh
)
mStatisticsAdapter
.
setNewData
(
pager
.
getList
());
else
if
(
pager
.
getList
().
size
()
>
0
)
mStatisticsAdapter
.
addData
(
pager
.
getList
());
if
(
pager
.
isLastPage
())
mStatisticsAdapter
.
loadMoreEnd
(
isRefresh
);
else
mStatisticsAdapter
.
loadMoreComplete
();
}
public
void
setCreateDate
(
Pager
<
Saleorder
>
list
,
String
wd
)
{
this
.
saleorders
=
list
;
this
.
wd
=
wd
;
}
}
app/src/main/java/com/xingdata/zzdpos/ui/store/StoreActivity.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
store
;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.view.inputmethod.EditorInfo
;
import
com.blankj.utilcode.util.ActivityUtils
;
import
com.blankj.utilcode.util.KeyboardUtils
;
import
com.xingdata.zzdpos.C
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.base.BaseSku
;
...
...
@@ -12,12 +16,14 @@ import com.xingdata.zzdpos.model.Saledetail;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.ui.dialog.LoadingDialog
;
import
com.xingdata.zzdpos.ui.settle.SettleActivity
;
import
com.xingdata.zzdpos.ui.store.dialog.CartDialog
;
import
com.xingdata.zzdpos.ui.store.dialog.MsDialog
;
import
com.xingdata.zzdpos.ui.store.fragment.ScanFragment
;
import
com.xingdata.zzdpos.ui.store.fragment.SearchFragment
;
import
com.xingdata.zzdpos.ui.store.fragment.StoreFragment
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
@@ -53,6 +59,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
});
}
@Override
public
<
Sku
extends
BaseSku
>
void
loadSkus
(
List
<
Sku
>
skus
,
boolean
isRefresh
)
{
mStoreFragment
.
loadSkus
(
skus
,
isRefresh
);
...
...
@@ -83,6 +90,8 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
mViewBinding
.
setCartCount
(
saleorder
.
getOrderCnt
());
mViewBinding
.
setOrderPayAmt
(
saleorder
.
getOrderPayAmt
());
mViewBinding
.
setMsDisAmt
(
saleorder
.
getMsDisAmt
());
if
(
mCartDialog
.
isShowing
)
mCartDialog
.
loadSaleorder
(
saleorder
);
}
@Override
...
...
@@ -106,4 +115,14 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
mCartDialog
.
setSaleorder
(
saleorder
).
setSaledetails
(
saledetails
).
show
(
this
);
}
@Override
public
void
showSettle
(
List
<
Saledetail
>
saledetails
)
{
Intent
intent
=
new
Intent
(
StoreActivity
.
this
,
SettleActivity
.
class
);
intent
.
putExtra
(
C
.
EXTRA_KEY
.
SETTLE_MODE
,
C
.
SETTLE_MODE
.
STORE
);
Bundle
bundle
=
new
Bundle
();
bundle
.
putSerializable
(
C
.
EXTRA_KEY
.
SETTLE_EXTRA
,
new
ArrayList
(
saledetails
));
intent
.
putExtras
(
bundle
);
ActivityUtils
.
startActivity
(
intent
);
}
}
app/src/main/java/com/xingdata/zzdpos/ui/store/StoreContract.java
View file @
95915c36
...
...
@@ -85,6 +85,14 @@ interface StoreContract {
* @param saledetails 购物车信息
*/
void
showCartDialog
(
Saleorder
saleorder
,
List
<
Saledetail
>
saledetails
);
/**
* 显示结算页面
*
* @param saledetails 购物车详情列表
*/
void
showSettle
(
List
<
Saledetail
>
saledetails
);
}
abstract
class
Presenter
extends
BasePresenter
<
View
>
{
...
...
@@ -148,23 +156,19 @@ interface StoreContract {
public
abstract
<
Sku
extends
BaseSku
>
void
clickRemoveSku
(
Sku
sku
);
/**
* 购物车页面 - 点击添加购物信息
*
* @param saledetail 购物信息
* 购物车页面 - 购物车发生变化
*/
public
abstract
void
c
lickAddSaledetail
(
Saledetail
saledetail
);
public
abstract
void
c
artChanged
(
);
/**
* 购物车页面 - 点击删除购物信息
*
* @param saledetail 购物信息
* 购物车界面 - 关闭
*/
public
abstract
void
clickRemoveSaledetail
(
Saledetail
saledetail
);
public
abstract
void
onCartDialogCancel
(
);
/**
* 购物车
列表 - 关闭
* 购物车
界面 - 清空购物车
*/
public
abstract
void
onCartDialogCancel
();
public
abstract
void
clearCart
();
}
}
app/src/main/java/com/xingdata/zzdpos/ui/store/StorePresenter.java
View file @
95915c36
...
...
@@ -49,6 +49,7 @@ public class StorePresenter extends StoreContract.Presenter {
@Override
public
void
clickSettle
()
{
mView
.
showSettle
(
mSaledetails
);
}
@Override
...
...
@@ -99,10 +100,8 @@ public class StorePresenter extends StoreContract.Presenter {
updateCart
(
sku
,
1
);
//发送购物车信息(不需要刷新页面)
mView
.
loadSaledetails
(
mSaledetails
,
false
);
//设置订单信息
mSaleorder
.
setSaledetails
(
mSaledetails
);
//统计订单信息
this
.
reprice
();
//购物车发生变化
this
.
cartChanged
();
}
@Override
...
...
@@ -111,16 +110,12 @@ public class StorePresenter extends StoreContract.Presenter {
updateCart
(
sku
,
-
1
);
//发送购物车信息(不需要刷新页面)
mView
.
loadSaledetails
(
mSaledetails
,
false
);
//设置订单信息
mSaleorder
.
setSaledetails
(
mSaledetails
);
//统计订单信息
this
.
reprice
();
//购物车发生变化
this
.
cartChanged
();
}
@Override
public
void
clickAddSaledetail
(
Saledetail
saledetail
)
{
//更新购物车信息
updateCart
(
saledetail
,
1
);
public
void
cartChanged
()
{
//设置订单信息
mSaleorder
.
setSaledetails
(
mSaledetails
);
//统计订单信息
...
...
@@ -128,20 +123,21 @@ public class StorePresenter extends StoreContract.Presenter {
}
@Override
public
void
clickRemoveSaledetail
(
Saledetail
saledetail
)
{
updateCart
(
saledetail
,
-
1
);
public
void
onCartDialogCancel
()
{
//发送购物车信息并刷新页面
mView
.
loadSaledetails
(
mSaledetails
,
true
);
}
@Override
public
void
clearCart
()
{
//清空购物车
this
.
mSaledetails
=
new
ArrayList
<>();
//设置订单信息
mSaleorder
.
setSaledetails
(
mSaledetails
);
//统计订单信息
this
.
reprice
();
}
@Override
public
void
onCartDialogCancel
()
{
//发送购物车信息并刷新页面
mView
.
loadSaledetails
(
mSaledetails
,
true
);
}
/**
* 获取商品分组
...
...
@@ -217,26 +213,6 @@ public class StorePresenter extends StoreContract.Presenter {
}
}
/**
* 操作购物车商品
*
* @param saledetail 购物车信息
* @param value 变化的数值
*/
private
void
updateCart
(
Saledetail
saledetail
,
int
value
)
{
for
(
int
i
=
0
;
i
<
mSaledetails
.
size
();
i
++)
{
if
(
saledetail
.
getSkuId
().
longValue
()
==
mSaledetails
.
get
(
i
).
getSkuId
())
{
int
count
=
mSaledetails
.
get
(
i
).
getDetailCnt
()
+
value
;
if
(
count
>
0
)
{
mSaledetails
.
get
(
i
).
setCount
(
mSaledetails
.
get
(
i
).
getDetailCnt
()
+
value
);
}
else
{
mSaledetails
.
remove
(
i
);
}
return
;
}
}
}
/**
* 统计订单信息
*/
...
...
app/src/main/java/com/xingdata/zzdpos/ui/store/adapter/SaledetailAdapter.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
store
.
adapter
;
public
class
SaledetailAdapter
{
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseAdapter
;
import
com.xingdata.zzdpos.base.BaseViewHolder
;
import
com.xingdata.zzdpos.databinding.ItemStoreSaledetailBinding
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.ui.store.dialog.CartDialog
;
import
com.xingdata.zzdpos.util.ConvertUtil
;
import
java.util.List
;
public
class
SaledetailAdapter
extends
BaseAdapter
<
Saledetail
,
ItemStoreSaledetailBinding
>
{
public
SaledetailAdapter
(
List
<
Saledetail
>
saledetails
)
{
super
(
R
.
layout
.
item_store_saledetail
,
saledetails
);
}
private
CartDialog
.
OnCountChangeListener
mOnCountChangeListener
;
public
void
setOnCountChangeListener
(
CartDialog
.
OnCountChangeListener
onCountChangeListener
)
{
this
.
mOnCountChangeListener
=
onCountChangeListener
;
}
@Override
protected
void
convert
(
ItemStoreSaledetailBinding
mViewBinding
,
Saledetail
item
)
{
mViewBinding
.
tvName
.
setText
(
item
.
getSpuName
());
mViewBinding
.
tvPrice
.
setText
(
ConvertUtil
.
fenToYuan
(
item
.
getSkuPricePay
(),
true
));
mViewBinding
.
ivIncrease
.
setOnClickListener
(
view
->
{
if
(
mViewBinding
.
getCount
()
>=
99
)
return
;
mViewBinding
.
setCount
(
mViewBinding
.
getCount
()
+
1
);
mViewBinding
.
ivIncrease
.
setImageResource
(
mViewBinding
.
getCount
()
>
0
?
R
.
mipmap
.
but_increase01
:
R
.
mipmap
.
but_increase02
);
if
(
mOnCountChangeListener
!=
null
)
{
mOnCountChangeListener
.
onCountChange
(
item
,
1
);
}
});
mViewBinding
.
ivReduce
.
setOnClickListener
(
view
->
{
mViewBinding
.
setCount
(
mViewBinding
.
getCount
()
-
1
);
mViewBinding
.
ivIncrease
.
setImageResource
(
mViewBinding
.
getCount
()
>
0
?
R
.
mipmap
.
but_increase01
:
R
.
mipmap
.
but_increase02
);
if
(
mOnCountChangeListener
!=
null
)
{
mOnCountChangeListener
.
onCountChange
(
item
,
-
1
);
}
});
mViewBinding
.
setCount
(
item
.
getDetailCnt
());
mViewBinding
.
ivIncrease
.
setImageResource
(
mViewBinding
.
getCount
()
>
0
?
R
.
mipmap
.
but_increase01
:
R
.
mipmap
.
but_increase02
);
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
Saledetail
item
)
{
super
.
convert
(
helper
,
item
);
}
}
app/src/main/java/com/xingdata/zzdpos/ui/store/adapter/SkuAdapter.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
store
.
adapter
;
import
android.support.annotation.Nullable
;
import
android.view.View
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseAdapter
;
...
...
@@ -24,7 +25,6 @@ public class SkuAdapter<T extends BaseSku> extends BaseAdapter<T, ItemStoreSkuBi
private
StoreFragment
.
OnCountChangeListener
mOnCountChangeListener
;
public
void
setSaledetails
(
List
<
Saledetail
>
saledetails
)
{
this
.
mSaledetails
=
saledetails
;
}
...
...
@@ -39,22 +39,24 @@ public class SkuAdapter<T extends BaseSku> extends BaseAdapter<T, ItemStoreSkuBi
mViewBinding
.
tvName
.
setText
(
item
.
getSpuName
());
mViewBinding
.
tvAmt
.
setText
(
ConvertUtil
.
fenToYuan
(
item
.
getSkuRetailPrice1
()));
mViewBinding
.
ivIncrease
.
setOnClickListener
(
view
->
{
if
(
mViewBinding
.
getCount
()
>=
99
)
return
;
mViewBinding
.
setCount
(
mViewBinding
.
getCount
()
+
1
);
mViewBinding
.
ivIncrease
.
setImageResource
(
mViewBinding
.
getCount
()
>
0
?
R
.
mipmap
.
but_increase01
:
R
.
mipmap
.
but_increase02
);
setViewByCount
(
mViewBinding
);
if
(
mOnCountChangeListener
!=
null
)
{
mOnCountChangeListener
.
onCountChange
(
item
,
1
);
}
});
mViewBinding
.
ivReduce
.
setOnClickListener
(
view
->
{
mViewBinding
.
setCount
(
mViewBinding
.
getCount
()
-
1
);
mViewBinding
.
ivIncrease
.
setImageResource
(
mViewBinding
.
getCount
()
>
0
?
R
.
mipmap
.
but_increase01
:
R
.
mipmap
.
but_increase02
);
setViewByCount
(
mViewBinding
);
if
(
mOnCountChangeListener
!=
null
)
{
mOnCountChangeListener
.
onCountChange
(
item
,
-
1
);
}
});
mViewBinding
.
setCount
(
0
);
for
(
int
i
=
0
;
i
<
mSaledetails
.
size
();
i
++)
{
if
(
mSaledetails
.
get
(
i
).
getSkuId
().
longValue
()
==
item
.
getSkuId
())
{
...
...
@@ -62,7 +64,20 @@ public class SkuAdapter<T extends BaseSku> extends BaseAdapter<T, ItemStoreSkuBi
break
;
}
}
mViewBinding
.
ivIncrease
.
setImageResource
(
mViewBinding
.
getCount
()
>
0
?
R
.
mipmap
.
but_increase01
:
R
.
mipmap
.
but_increase02
);
setViewByCount
(
mViewBinding
);
}
private
void
setViewByCount
(
ItemStoreSkuBinding
mViewBinding
)
{
if
(
mViewBinding
.
getCount
()
>
0
)
{
mViewBinding
.
ivIncrease
.
setImageResource
(
R
.
mipmap
.
but_increase01
);
mViewBinding
.
ivReduce
.
setVisibility
(
View
.
VISIBLE
);
mViewBinding
.
tvCount
.
setVisibility
(
View
.
VISIBLE
);
}
else
{
mViewBinding
.
ivIncrease
.
setImageResource
(
R
.
mipmap
.
but_increase02
);
mViewBinding
.
ivReduce
.
setVisibility
(
View
.
GONE
);
mViewBinding
.
tvCount
.
setVisibility
(
View
.
GONE
);
}
}
@Override
...
...
app/src/main/java/com/xingdata/zzdpos/ui/store/dialog/CartDialog.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
store
.
dialog
;
import
android.content.DialogInterface
;
import
android.support.v7.widget.LinearLayoutManager
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseSheetDialog
;
...
...
@@ -8,6 +9,7 @@ import com.xingdata.zzdpos.databinding.DialogStoreCartBinding;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.ui.store.StorePresenter
;
import
com.xingdata.zzdpos.ui.store.adapter.SaledetailAdapter
;
import
java.util.List
;
...
...
@@ -17,6 +19,15 @@ public class CartDialog extends BaseSheetDialog<StorePresenter, DialogStoreCartB
private
Saleorder
mSaleorder
;
private
List
<
Saledetail
>
mSaledetails
;
public
interface
OnCountChangeListener
{
void
onCountChange
(
Saledetail
saledetail
,
int
value
);
}
@Override
protected
boolean
isTransparentBackground
()
{
return
true
;
}
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
dialog_store_cart
;
...
...
@@ -24,8 +35,47 @@ public class CartDialog extends BaseSheetDialog<StorePresenter, DialogStoreCartB
@Override
public
void
initView
()
{
this
.
loadSaleorder
(
mSaleorder
);
// init C
SaledetailAdapter
mSaledetailAdapter
=
new
SaledetailAdapter
(
mSaledetails
);
mViewBinding
.
rlCart
.
setAdapter
(
mSaledetailAdapter
);
mViewBinding
.
rlCart
.
setLayoutManager
(
new
LinearLayoutManager
(
mContext
));
// set C listener
mSaledetailAdapter
.
setOnCountChangeListener
((
saledetail
,
value
)
->
{
for
(
int
i
=
0
;
i
<
mSaledetails
.
size
();
i
++)
{
if
(
mSaledetails
.
get
(
i
).
getSkuId
().
longValue
()
==
saledetail
.
getSkuId
())
{
int
count
=
mSaledetails
.
get
(
i
).
getDetailCnt
()
+
value
;
if
(
count
>
0
)
{
mSaledetails
.
get
(
i
).
setCount
(
mSaledetails
.
get
(
i
).
getDetailCnt
()
+
value
);
}
else
{
mSaledetailAdapter
.
getData
().
remove
(
i
);
mSaledetailAdapter
.
notifyDataSetChanged
();
}
mPresenter
.
cartChanged
();
break
;
}
}
});
// set Other listener
mViewBinding
.
tvSettle
.
setOnClickListener
(
view
->
mPresenter
.
clickSettle
());
mViewBinding
.
tvClear
.
setOnClickListener
(
view
->
mPresenter
.
clearCart
());
}
/**
* 加载订单信息
*
* @param saleorder 订单信息
*/
public
void
loadSaleorder
(
Saleorder
saleorder
)
{
mViewBinding
.
setCartCount
(
saleorder
.
getOrderCnt
());
mViewBinding
.
setOrderPayAmt
(
saleorder
.
getOrderPayAmt
());
mViewBinding
.
setMsDisAmt
(
saleorder
.
getMsDisAmt
());
if
(
saleorder
.
getOrderCnt
()
==
0
)
this
.
dismiss
();
}
public
CartDialog
setSaleorder
(
Saleorder
saleorder
)
{
...
...
app/src/main/java/com/xingdata/zzdpos/ui/store/fragment/StoreFragment.java
View file @
95915c36
...
...
@@ -43,6 +43,7 @@ public class StoreFragment extends BaseFragment<StorePresenter, FragmentStoreBin
mViewBinding
.
rlSkugrp
.
setAdapter
(
mSkugrpAdapter
);
mViewBinding
.
rlSkugrp
.
setLayoutManager
(
new
LinearLayoutManager
(
mContext
));
// set sku listener
mViewBinding
.
srlSku
.
setOnRefreshListener
(
this
::
refreshSku
);
mSkuAdapter
.
setOnLoadMoreListener
(
this
::
loadMoreSku
,
mViewBinding
.
rlSku
);
...
...
@@ -64,7 +65,6 @@ public class StoreFragment extends BaseFragment<StorePresenter, FragmentStoreBin
mPresenter
.
initStore
();
}
/**
* 刷新商品
*/
...
...
app/src/main/java/com/xingdata/zzdpos/ui/vip/VipActivity.java
View file @
95915c36
...
...
@@ -26,15 +26,15 @@ public class VipActivity extends BaseActivity<VipPresenter, ActivityVipBinding>
@Override
public
void
initView
()
{
loadRootFragment
(
R
.
id
.
vip_list_frame
,
vipListFragment
,
false
,
false
);
loadRootFragment
(
R
.
id
.
vip_level_frame
,
vipLevleFragment
,
false
,
false
);
loadRootFragment
(
R
.
id
.
vip_title_frame
,
vipTitleFragment
,
false
,
false
);
loadRootFragment
(
R
.
id
.
vip_list_frame
,
vipListFragment
,
false
,
false
);
}
@Override
public
void
addVip
()
{
}
@Override
...
...
@@ -43,15 +43,17 @@ public class VipActivity extends BaseActivity<VipPresenter, ActivityVipBinding>
}
@Override
public
Pager
<
Vip
>
getVipLevelSus
(
)
{
return
null
;
public
void
getVipLevelSus
(
Pager
<
Level
>
levelPager
)
{
}
@Override
public
Pager
<
Level
>
getVipListSus
(
)
{
return
null
;
public
void
getVipListSus
(
Pager
<
Vip
>
vipPager
)
{
}
@Override
public
String
getVipNumberSus
()
{
return
null
;
...
...
app/src/main/java/com/xingdata/zzdpos/ui/vip/VipContract.java
View file @
95915c36
...
...
@@ -7,26 +7,29 @@ import com.xingdata.zzdpos.model.Pager;
import
com.xingdata.zzdpos.model.Vip
;
interface
VipContract
{
public
interface
VipContract
{
interface
View
extends
BaseView
{
void
addVip
();
String
addVipSus
();
Pager
<
Vip
>
getVipLevelSus
();
Pager
<
Level
>
getVipListSus
();
void
getVipLevelSus
(
Pager
<
Level
>
levelPager
);
void
getVipListSus
(
Pager
<
Vip
>
vipPager
);
String
getVipNumberSus
();
}
abstract
class
Presenter
extends
BasePresenter
<
VipContract
.
View
>
{
public
abstract
void
getVipList
(
int
levelId
,
int
pageNumber
);
public
abstract
void
getVipList
(
int
pageNumber
,
int
vipLevel
);
public
abstract
void
getVipLevel
();
public
abstract
void
getVipLevel
(
int
pageNum
,
int
pageSize
);
public
abstract
void
getVipNumber
();
public
abstract
void
addVip
();
public
abstract
void
addVip
();
}
}
\ No newline at end of file
app/src/main/java/com/xingdata/zzdpos/ui/vip/VipPresenter.java
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
vip
;
import
com.blankj.utilcode.util.ToastUtils
;
import
com.xingdata.zzdpos.api.ApiFactory
;
import
com.xingdata.zzdpos.ui.vip.fragment.VipInfoFragment
;
public
class
VipPresenter
extends
VipContract
.
Presenter
{
...
...
@@ -10,14 +12,25 @@ public class VipPresenter extends VipContract.Presenter {
public
void
onAttached
()
{
}
@Override
public
void
getVipList
(
int
levelId
,
int
pageNumber
)
{
@Override
public
void
getVipList
(
int
pageNumber
,
int
vipLevel
)
{
ApiFactory
.
User
.
getVipList
(
pageNumber
).
subscribe
(
vipPager
->
{
mView
.
getVipListSus
(
vipPager
);
},
throwable
->
{
ToastUtils
.
showShort
(
throwable
.
getMessage
());
});
}
@Override
public
void
getVipLevel
()
{
@Override
public
void
getVipLevel
(
int
pageNum
,
int
pageSize
)
{
ApiFactory
.
Level
.
getVipLevelList
(
pageNum
,
pageSize
).
subscribe
(
vipPager
->
{
mView
.
getVipLevelSus
(
vipPager
);
},
throwable
->
{
ToastUtils
.
showShort
(
throwable
.
getMessage
());
});
}
@Override
...
...
app/src/main/java/com/xingdata/zzdpos/ui/vip/adapter/VipRechargeAdapter.java
View file @
95915c36
...
...
@@ -20,7 +20,7 @@ public class VipRechargeAdapter extends BaseAdapter<VipRechangeOrder, ItemVipRec
private
Context
mContext
;
public
VipRechargeAdapter
(
Context
mContext
,
@Nullable
List
<
VipRechangeOrder
>
data
)
{
super
(
R
.
layout
.
item_vip_
list
_item
,
data
);
super
(
R
.
layout
.
item_vip_
recharge
_item
,
data
);
this
.
mContext
=
mContext
;
}
@Override
...
...
app/src/main/java/com/xingdata/zzdpos/ui/vip/dialog/VipEditMenuDialog.java
0 → 100644
View file @
95915c36
package
com
.
xingdata
.
zzdpos
.
ui
.
vip
.
dialog
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseSheetDialog
;
import
com.xingdata.zzdpos.databinding.DialogVipMenuBinding
;
import
com.xingdata.zzdpos.ui.vip.VipPresenter
;
/**
* Created by JM_DEV on 2017/12/27.
*/
public
class
VipEditMenuDialog
extends
BaseSheetDialog
<
VipPresenter
,
DialogVipMenuBinding
>
{
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
dialog_vip_menu
;
}
@Override
public
void
initView
()
{
}
@Override
protected
boolean
isTransparentBackground
()
{
return
true
;
}
}
app/src/main/java/com/xingdata/zzdpos/ui/vip/fragment/VipInfoFragment.java
View file @
95915c36
...
...
@@ -8,11 +8,14 @@ import android.support.v7.widget.LinearLayoutManager;
import
com.blankj.utilcode.util.ToastUtils
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.base.BaseSheetDialog
;
import
com.xingdata.zzdpos.databinding.FragmentVipinfoBinding
;
import
com.xingdata.zzdpos.model.VipRechangeOrder
;
import
com.xingdata.zzdpos.ui.vip.VipPresenter
;
import
com.xingdata.zzdpos.ui.vip.adapter.VipRechargeAdapter
;
import
com.xingdata.zzdpos.ui.vip.dialog.VipEditMenuDialog
;
import
java.util.ArrayList
;
import
java.util.List
;
...
...
@@ -20,9 +23,10 @@ import java.util.List;
/**
* 会员信息界面
*/
public
class
VipInfoFragment
extends
BaseFragment
<
VipPresenter
,
FragmentVipinfoBinding
>
{
public
class
VipInfoFragment
extends
BaseFragment
<
VipPresenter
,
FragmentVipinfoBinding
>
{
private
VipRechargeAdapter
vipRechargeAdapter
;
private
List
<
VipRechangeOrder
>
orders
=
new
ArrayList
<>();
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
fragment_vipinfo
;
...
...
@@ -30,14 +34,34 @@ public class VipInfoFragment extends BaseFragment<VipPresenter, FragmentVipinfoB
@Override
public
void
initView
()
{
for
(
int
i
=
0
;
i
<
10
;
i
++){
orders
.
add
(
new
VipRechangeOrder
());
}
vipRechargeAdapter
=
new
VipRechargeAdapter
(
getActivity
(),
orders
);
mViewBinding
.
rechargeRecyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
getActivity
()));
mViewBinding
.
rechargeRecyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
getActivity
()));
mViewBinding
.
rechargeRecyclerView
.
setAdapter
(
vipRechargeAdapter
);
mViewBinding
.
rechargeRefresh
.
setOnRefreshListener
(
this
::
onRefresh
);
vipRechargeAdapter
.
setEnableLoadMore
(
true
);
vipRechargeAdapter
.
setOnLoadMoreListener
(
this
::
onLoadMore
,
mViewBinding
.
rechargeRecyclerView
);
mViewBinding
.
infoTitle
.
popMenu
.
setOnClickListener
(
view
->{
new
VipEditMenuDialog
().
show
((
BaseActivity
)
getActivity
());
});
mViewBinding
.
infoTitle
.
ivBack
.
setOnClickListener
(
view
->
{
ToastUtils
.
showShort
(
"aaaaaaaaaa"
);
});
}
private
void
onLoadMore
()
{
vipRechargeAdapter
.
addData
(
new
VipRechangeOrder
());
vipRechargeAdapter
.
setEnableLoadMore
(
true
);
vipRechargeAdapter
.
loadMoreComplete
();
ToastUtils
.
showShort
(
"刷新成功"
);
}
private
void
onRefresh
()
{
vipRechargeAdapter
.
addData
(
new
ArrayList
<
VipRechangeOrder
>());
mViewBinding
.
rechargeRefresh
.
setRefreshing
(
false
);
ToastUtils
.
showShort
(
"刷新成功"
);
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/vip/fragment/VipLevleFragment.java
View file @
95915c36
...
...
@@ -16,13 +16,17 @@ import android.widget.RadioGroup;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentViplevelTitleBinding
;
import
com.xingdata.zzdpos.model.Level
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Vip
;
import
com.xingdata.zzdpos.ui.vip.VipActivity
;
import
com.xingdata.zzdpos.ui.vip.VipContract
;
import
com.xingdata.zzdpos.ui.vip.VipPresenter
;
/**
* 会员等级列表
*/
public
class
VipLevleFragment
extends
BaseFragment
<
VipPresenter
,
FragmentViplevelTitleBinding
>
{
public
class
VipLevleFragment
extends
BaseFragment
<
VipPresenter
,
FragmentViplevelTitleBinding
>
implements
VipContract
.
View
{
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
fragment_viplevel_title
;
...
...
@@ -30,19 +34,7 @@ public class VipLevleFragment extends BaseFragment<VipPresenter, FragmentVipleve
@Override
public
void
initView
()
{
LinearLayout
.
LayoutParams
layoutParams
=
new
LinearLayout
.
LayoutParams
(
LinearLayout
.
LayoutParams
.
MATCH_PARENT
,
LinearLayout
.
LayoutParams
.
MATCH_PARENT
);
layoutParams
.
height
=
120
;
layoutParams
.
width
=
LinearLayout
.
LayoutParams
.
MATCH_PARENT
;
for
(
int
i
=
0
;
i
<
5
;
i
++)
{
mViewBinding
.
vipLevelRadioGroup
.
addView
(
addRadioButton
(
layoutParams
));
}
((
RadioButton
)
mViewBinding
.
vipLevelRadioGroup
.
getChildAt
(
0
)).
setChecked
(
true
);
mViewBinding
.
vipLevelRadioGroup
.
setOnCheckedChangeListener
((
radioGroup
,
n
)
->
{
for
(
int
i
=
0
;
i
<
mViewBinding
.
vipLevelRadioGroup
.
getChildCount
();
i
++)
{
//动态设置按钮颜色
setRadioButtonChecked
(
i
==
n
-
1
,
((
RadioButton
)
radioGroup
.
getChildAt
(
i
)));
}
});
mPresenter
.
getVipLevel
(
0
,
200
);
}
/**
...
...
@@ -58,13 +50,15 @@ public class VipLevleFragment extends BaseFragment<VipPresenter, FragmentVipleve
}
else
{
button
.
setTextSize
(
15
);
}
mPresenter
.
getVipList
(
0
,
Integer
.
parseInt
(
button
.
getTag
().
toString
()));
}
@SuppressLint
(
"ResourceAsColor"
)
private
RadioButton
addRadioButton
(
LinearLayout
.
LayoutParams
layoutParams
)
{
private
RadioButton
addRadioButton
(
LinearLayout
.
LayoutParams
layoutParams
,
Level
level
)
{
RadioButton
radioButton
=
new
RadioButton
(
getActivity
());
radioButton
.
setTextSize
(
15
);
radioButton
.
setText
(
"金牌会员"
);
radioButton
.
setText
(
level
.
getVipLevelName
());
radioButton
.
setTag
(
level
.
getVipLevel
());
setRadioButtonChecked
(
false
,
radioButton
);
radioButton
.
setGravity
(
Gravity
.
CENTER
);
radioButton
.
setButtonDrawable
(
null
);
...
...
@@ -74,4 +68,42 @@ public class VipLevleFragment extends BaseFragment<VipPresenter, FragmentVipleve
radioButton
.
setLayoutParams
(
layoutParams
);
return
radioButton
;
}
@Override
public
void
addVip
()
{
}
@Override
public
String
addVipSus
()
{
return
null
;
}
@Override
public
void
getVipLevelSus
(
Pager
<
Level
>
levelPager
)
{
LinearLayout
.
LayoutParams
layoutParams
=
new
LinearLayout
.
LayoutParams
(
LinearLayout
.
LayoutParams
.
MATCH_PARENT
,
LinearLayout
.
LayoutParams
.
MATCH_PARENT
);
layoutParams
.
height
=
120
;
layoutParams
.
width
=
LinearLayout
.
LayoutParams
.
MATCH_PARENT
;
for
(
int
i
=
0
;
i
<
levelPager
.
getPageSize
();
i
++)
{
mViewBinding
.
vipLevelRadioGroup
.
addView
(
addRadioButton
(
layoutParams
,
levelPager
.
getList
().
get
(
i
)));
}
((
RadioButton
)
mViewBinding
.
vipLevelRadioGroup
.
getChildAt
(
0
)).
setChecked
(
true
);
mViewBinding
.
vipLevelRadioGroup
.
setOnCheckedChangeListener
((
radioGroup
,
n
)
->
{
for
(
int
i
=
0
;
i
<
mViewBinding
.
vipLevelRadioGroup
.
getChildCount
();
i
++)
{
//动态设置按钮颜色
setRadioButtonChecked
(
i
==
n
-
1
,
((
RadioButton
)
radioGroup
.
getChildAt
(
i
)));
}
});
}
@Override
public
void
getVipListSus
(
Pager
<
Vip
>
vipPager
)
{
}
@Override
public
String
getVipNumberSus
()
{
return
null
;
}
}
app/src/main/java/com/xingdata/zzdpos/ui/vip/fragment/VipListFragment.java
View file @
95915c36
...
...
@@ -5,14 +5,15 @@ package com.xingdata.zzdpos.ui.vip.fragment;
*/
import
android.support.v7.widget.LinearLayoutManager
;
import
android.support.v7.widget.RecyclerView
;
import
com.blankj.utilcode.util.ToastUtils
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentVipListBinding
;
import
com.xingdata.zzdpos.databinding.FragmentViplevelTitleBinding
;
import
com.xingdata.zzdpos.model.Level
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Vip
;
import
com.xingdata.zzdpos.ui.vip.VipContract
;
import
com.xingdata.zzdpos.ui.vip.VipPresenter
;
import
com.xingdata.zzdpos.ui.vip.adapter.VipListAdapter
;
...
...
@@ -22,9 +23,10 @@ import java.util.List;
/**
* 会员列表
*/
public
class
VipListFragment
extends
BaseFragment
<
VipPresenter
,
FragmentVipListBinding
>
{
public
class
VipListFragment
extends
BaseFragment
<
VipPresenter
,
FragmentVipListBinding
>
implements
VipContract
.
View
{
private
VipListAdapter
vipListAdapter
;
private
List
<
Vip
>
vips
=
new
ArrayList
<>();
private
int
inViplevel
=
0
;
@Override
...
...
@@ -35,21 +37,59 @@ public class VipListFragment extends BaseFragment<VipPresenter, FragmentVipListB
@Override
public
void
initView
()
{
vipListAdapter
=
new
VipListAdapter
(
getActivity
(),
vips
);
mViewBinding
.
vipRecyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
getActivity
()));
mViewBinding
.
vipRecyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
getActivity
()));
mViewBinding
.
vipRecyclerView
.
setAdapter
(
vipListAdapter
);
mViewBinding
.
vipRefresh
.
setOnRefreshListener
(
this
::
onRefresh
);
mViewBinding
.
vipRecyclerView
.
setOnClickListener
(
view
->
{
start
(
new
VipInfoFragment
());
vipListAdapter
.
setOnItemClickListener
((
adapter
,
view
,
position
)
->
{
((
BaseActivity
)
getActivity
()).
start
(
new
VipInfoFragment
());
});
vipListAdapter
.
setOnLoadMoreListener
(
this
::
onLoadMore
,
mViewBinding
.
vipRecyclerView
);
vipListAdapter
.
setEnableLoadMore
(
true
);
}
private
void
on
Refresh
()
{
private
void
on
LoadMore
()
{
Vip
vip
=
new
Vip
();
vip
.
setVipName
(
"张山"
);
vip
.
setVipMobile
(
13311221212L
);
vip
.
setVipDefDiscount
(
80
);
vipListAdapter
.
addData
(
vip
);
ToastUtils
.
showShort
(
"刷新成功"
);
vipListAdapter
.
loadMoreComplete
();
}
private
void
onRefresh
()
{
// mPresenter.getVipList(inViplevel,0);
}
@Override
public
void
addVip
()
{
}
@Override
public
String
addVipSus
()
{
return
null
;
}
@Override
public
void
getVipLevelSus
(
Pager
<
Level
>
levelPager
)
{
}
@Override
public
void
getVipListSus
(
Pager
<
Vip
>
vipPager
)
{
mViewBinding
.
vipRefresh
.
setRefreshing
(
false
);
if
(
vipPager
.
isFirstPage
())
{
vips
.
clear
();
vipListAdapter
.
notifyDataSetChanged
();
}
else
{
vipListAdapter
.
addData
(
vipPager
.
getList
());
}
}
@Override
public
String
getVipNumberSus
()
{
return
null
;
}
}
app/src/main/java/com/xingdata/zzdpos/ui/vip/fragment/VipTitleFragment.java
View file @
95915c36
...
...
@@ -10,6 +10,7 @@ import android.widget.LinearLayout;
import
android.widget.RadioButton
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentViplevelTitleBinding
;
import
com.xingdata.zzdpos.databinding.FragmentViptitleBinding
;
...
...
@@ -25,7 +26,7 @@ public class VipTitleFragment extends BaseFragment<VipPresenter, FragmentViptitl
@Override
public
void
initView
()
{
mViewBinding
.
addButton
.
setOnClickListener
(
view
->
{
start
(
mPresenter
.
vipInfoFragment
);
((
BaseActivity
)
getActivity
()).
start
(
mPresenter
.
vipInfoFragment
);
});
}
}
app/src/main/java/com/xingdata/zzdpos/util/SystemUtil.java
View file @
95915c36
...
...
@@ -55,7 +55,7 @@ public final class SystemUtil {
}
}
// return deviceSN;
return
"
92209325
"
;
return
"
548496
"
;
}
...
...
app/src/main/res/drawable/shape_white.xml
0 → 100644
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:radius=
"5dp"
/>
<solid
android:color=
"@color/white"
/>
</shape>
\ No newline at end of file
app/src/main/res/layout/activity_statistics_detail.xml
0 → 100644
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout>
<android.support.constraint.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/gray_zhouyu"
tools:context=
"com.xingdata.zzdpos.ui.statistics.StatisticsDetailActivity"
>
<include
android:id=
"@+id/ic_title"
layout=
"@layout/title"
app:layout_constraintTop_toTopOf=
"parent"
/>
<android.support.v7.widget.CardView
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_margin=
"@dimen/all_margin"
app:layout_constraintBottom_toTopOf=
"@id/ll_bottom"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/ic_title"
>
<ViewStub
android:id=
"@+id/view_order_detail"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout=
"@layout/view_order_detail"
/>
</android.support.v7.widget.CardView>
<LinearLayout
android:id=
"@+id/ll_bottom"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/all_padding"
android:background=
"@color/white_caocao"
android:elevation=
"@dimen/view_line_L2"
android:orientation=
"horizontal"
android:weightSum=
"2"
app:layout_constraintBottom_toBottomOf=
"parent"
>
<Button
android:id=
"@+id/btn_cancel"
style=
"@style/button_passive"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_margin=
"@dimen/all_padding"
android:layout_weight=
"1"
android:stateListAnimator=
"@null"
android:text=
"@string/settle_print_receipt"
android:textSize=
"@dimen/all_text_size"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintRight_toLeftOf=
"@id/btn_confirm"
app:layout_constraintTop_toTopOf=
"parent"
tools:targetApi=
"lollipop"
/>
<Button
android:id=
"@+id/btn_confirm"
style=
"@style/button_positive"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_margin=
"@dimen/all_padding"
android:layout_weight=
"1"
android:stateListAnimator=
"@null"
android:text=
"@string/pay_return"
android:textSize=
"@dimen/all_text_size"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintLeft_toRightOf=
"@id/btn_cancel"
app:layout_constraintRight_toRightOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
tools:targetApi=
"lollipop"
/>
</LinearLayout>
</android.support.constraint.ConstraintLayout>
</layout>
\ No newline at end of file
app/src/main/res/layout/dialog_store_cart.xml
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<LinearLayout
<data>
<import
type=
"android.view.View"
/>
<import
type=
"com.xingdata.zzdpos.util.ConvertUtil"
/>
<variable
name=
"cartCount"
type=
"int"
/>
<variable
name=
"orderPayAmt"
type=
"long"
/>
<variable
name=
"msDisAmt"
type=
"long"
/>
</data>
<android.support.constraint.ConstraintLayout
android:layout_width=
"match_parent"
android:layout_height=
"200dp"
android:background=
"@color/red_xishi"
android:layout_height=
"wrap_content"
android:gravity=
"center"
android:orientation=
"vertical"
>
<TextView
<LinearLayout
android:id=
"@+id/ll_title"
android:layout_width=
"0dp"
android:layout_height=
"?attr/actionBarSize"
android:background=
"@color/white_caocao"
android:gravity=
"center_vertical|end"
android:paddingEnd=
"@dimen/all_margin"
android:paddingStart=
"@dimen/all_margin"
app:layout_constraintBottom_toTopOf=
"@id/rl_cart"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintRight_toRightOf=
"parent"
>
<TextView
android:id=
"@+id/tv_clear"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:foreground=
"?android:attr/selectableItemBackground"
android:paddingBottom=
"@dimen/all_spacing"
android:paddingEnd=
"@dimen/all_margin_big"
android:paddingStart=
"@dimen/all_margin_big"
android:paddingTop=
"@dimen/all_spacing"
android:text=
"@string/store_clear_all"
android:textColor=
"@color/black_baozheng"
/>
</LinearLayout>
<View
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/all_line_width"
android:background=
"@color/gray_huanggai"
app:layout_constraintBottom_toTopOf=
"@id/rl_cart"
/>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/rl_cart"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/white_caocao"
app:layout_constraintBottom_toTopOf=
"@id/ll_info"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/all_line_width"
android:background=
"@color/gray_huanggai"
app:layout_constraintBottom_toTopOf=
"@id/ll_info"
/>
<LinearLayout
android:id=
"@+id/ll_info"
android:layout_width=
"0dp"
android:layout_height=
"?attr/actionBarSize"
android:background=
"@color/white_caocao"
android:gravity=
"center_vertical"
android:orientation=
"horizontal"
android:paddingEnd=
"@dimen/all_margin"
android:paddingStart=
"@dimen/all_margin"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintRight_toRightOf=
"parent"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/store_pay_amt"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_text_size"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/all_spacing"
android:text=
"@string/money_rmb"
android:textColor=
"@color/red_guanyu"
android:textSize=
"@dimen/all_text_size"
/>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:text=
"@{ConvertUtil.fenToYuan(orderPayAmt)}"
android:textColor=
"@color/red_guanyu"
android:textSize=
"@dimen/all_sub_title_size"
android:textStyle=
"bold"
/>
<TextView
android:id=
"@+id/tv_settle"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@drawable/shape_red_round_rectangle_more_round"
android:foreground=
"?android:attr/actionBarItemBackground"
android:paddingBottom=
"@dimen/all_spacing"
android:paddingEnd=
"@dimen/all_margin_big"
android:paddingStart=
"@dimen/all_margin_big"
android:paddingTop=
"@dimen/all_spacing"
android:text=
"@string/store_btn_settle"
android:textColor=
"@color/white_caocao"
/>
</LinearLayout>
<FrameLayout
android:id=
"@+id/fl_logo"
android:layout_width=
"wrap_content"
android:layout_height=
"50dp"
android:text=
"测试测试测试"
android:textColor=
"@color/white_caocao"
/>
android:layout_height=
"wrap_content"
android:layout_marginBottom=
"@dimen/all_margin"
android:layout_marginStart=
"@dimen/all_margin"
android:animateLayoutChanges=
"true"
app:layout_constraintBottom_toBottomOf=
"@id/ll_title"
app:layout_constraintLeft_toLeftOf=
"parent"
>
<ImageView
android:id=
"@+id/iv_cart"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/all_spacing"
android:contentDescription=
"@string/store_cart"
android:foreground=
"?attr/actionBarItemBackground"
android:src=
"@mipmap/shopping_cart"
/>
<TextView
android:layout_width=
"@dimen/store_cart_count"
android:layout_height=
"@dimen/store_cart_count"
android:layout_gravity=
"end"
android:background=
"@drawable/shape_white_oval"
android:gravity=
"center"
android:text=
'@{cartCount+""}'
android:textColor=
"@color/red_guanyu"
android:textSize=
"@{cartCount < 100?@dimen/all_caption_size:@dimen/all_tiny_size}"
android:textStyle=
"bold"
android:visibility=
"@{cartCount>0?View.VISIBLE:View.GONE}"
/>
</FrameLayout>
</
Linear
Layout>
</
android.support.constraint.Constraint
Layout>
</layout>
\ No newline at end of file
app/src/main/res/layout/dialog_store_ms.xml
View file @
95915c36
...
...
@@ -4,9 +4,15 @@
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@
drawable/transparent_border
"
android:background=
"@
color/transparent
"
android:gravity=
"center"
android:orientation=
"vertical"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"AAAAAAAAAAAAAAAAAA"
/>
</LinearLayout>
</layout>
\ No newline at end of file
app/src/main/res/layout/dialog_vip_menu.xml
0 → 100644
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/transparent"
android:orientation=
"vertical"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_margin=
"@dimen/dp_10"
android:background=
"@drawable/shape_white"
android:gravity=
"center_horizontal"
android:orientation=
"vertical"
>
<TextView
style=
"@style/default_bluetext_popbutton"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"@dimen/dtail_hight_5"
android:background=
"@color/white"
android:text=
"编辑会员"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"1dp"
android:background=
"@color/line_bg"
/>
<TextView
style=
"@style/default_bluetext_popbutton"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"@dimen/dtail_hight_5"
android:background=
"@color/white"
android:text=
"充值会员"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"1dp"
android:background=
"@color/line_bg"
/>
<TextView
style=
"@style/default_bluetext_popbutton"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"@dimen/dtail_hight_5"
android:background=
"@color/white"
android:text=
"消费记录"
/>
</LinearLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_margin=
"@dimen/dp_10"
android:layout_marginTop=
"30dp"
android:background=
"@drawable/shape_white"
android:gravity=
"center_horizontal"
android:orientation=
"vertical"
>
<TextView
style=
"@style/default_bluetext_popbutton"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_margin=
"@dimen/dtail_hight_5"
android:background=
"@color/white"
android:text=
"取消"
/>
</LinearLayout>
</LinearLayout>
</layout>
\ No newline at end of file
app/src/main/res/layout/fragment_order_main.xml
View file @
95915c36
...
...
@@ -17,19 +17,12 @@
app:layout_constraintGuide_percent=
"0.38"
/>
<include
android:id=
"@+id/ic_title"
layout=
"@layout/title_order"
android:elevation=
"@dimen/view_line_L1"
app:layout_constraintTop_toTopOf=
"parent"
/>
<android.support.design.widget.TabLayout
android:id=
"@+id/tab_layout"
android:layout_width=
"match_parent"
android:layout_height=
"30dp"
android:elevation=
"@dimen/view_line_L1"
app:layout_constraintTop_toBottomOf=
"@id/ic_title"
app:layout_constraintTop_toTopOf=
"parent"
app:tabIndicatorHeight=
"0dp"
app:tabMinWidth=
"100dp"
app:tabMode=
"scrollable"
...
...
app/src/main/res/layout/fragment_order_search.xml
0 → 100644
View file @
95915c36
<layout>
<android.support.constraint.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/gray_zhouyu"
tools:context=
"com.example.administrator.tangkupos.CasherFragment"
>
<!-- TODO: Update blank fragmfragment_integral_indexyout -->
<android.support.v4.widget.SwipeRefreshLayout
android:id=
"@+id/srl_product"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_marginTop=
"@dimen/all_padding"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/statistics_recycler"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
</android.support.v7.widget.RecyclerView>
</android.support.v4.widget.SwipeRefreshLayout>
</android.support.constraint.ConstraintLayout>
</layout>
\ No newline at end of file
app/src/main/res/layout/fragment_settle.xml
View file @
95915c36
...
...
@@ -172,19 +172,113 @@
<View
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/all_line_width"
android:layout_marginBottom=
"@dimen/all_spacing"
android:background=
"@color/gray_huanggai"
/>
<FrameLayout
android:id=
"@+id/f_saledetail"
<View
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/all_line_width"
android:layout_marginTop=
"@dimen/all_margin"
android:background=
"@color/gray_huanggai"
/>
<LinearLayout
android:id=
"@+id/ll_store"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:visibility=
"gone"
/>
android:orientation=
"vertical"
>
<LinearLayout
android:id=
"@+id/ll_saledetail"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:animateLayoutChanges=
"true"
android:background=
"@color/white_caocao"
android:foreground=
"?android:attr/selectableItemBackground"
android:orientation=
"horizontal"
android:paddingEnd=
"@dimen/all_margin"
android:paddingStart=
"@dimen/all_margin"
>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"?attr/actionBarSize"
android:layout_weight=
"1"
android:gravity=
"center_vertical"
android:text=
"@string/settle_saledetail_hint"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_text_size"
/>
<CheckBox
android:id=
"@+id/cb_saledetail"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:button=
"@mipmap/but_unfurled"
android:foreground=
"?android:attr/actionBarItemBackground"
/>
</LinearLayout>
<View
android:id=
"@+id/rl_saledetail"
android:layout_width=
"match_parent"
android:layout_height=
"300dp"
android:background=
"@color/red_xishi"
android:visibility=
"gone"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/all_line_width"
android:layout_marginEnd=
"@dimen/all_margin"
android:layout_marginStart=
"@dimen/all_margin"
android:background=
"@color/gray_kongming"
/>
<LinearLayout
android:id=
"@+id/ll_ms"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:animateLayoutChanges=
"true"
android:background=
"@color/white_caocao"
android:foreground=
"?android:attr/selectableItemBackground"
android:orientation=
"horizontal"
android:paddingEnd=
"@dimen/all_margin"
android:paddingStart=
"@dimen/all_margin"
>
<TextView
android:layout_width=
"0dp"
android:layout_height=
"?attr/actionBarSize"
android:layout_weight=
"1"
android:gravity=
"center_vertical"
android:text=
"@string/settle_ms_hint"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_text_size"
/>
<CheckBox
android:id=
"@+id/cb_ms"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:button=
"@mipmap/but_unfurled"
android:foreground=
"?android:attr/actionBarItemBackground"
/>
</LinearLayout>
<View
android:id=
"@+id/rl_ms"
android:layout_width=
"match_parent"
android:layout_height=
"100dp"
android:background=
"@color/red_diaochan"
android:visibility=
"gone"
/>
<View
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/all_line_width"
android:background=
"@color/gray_huanggai"
/>
</LinearLayout>
<LinearLayout
android:id=
"@+id/ll_vip"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/all_margin"
android:background=
"@color/white_caocao"
android:orientation=
"vertical"
>
...
...
@@ -223,7 +317,7 @@
android:layout_height=
"@dimen/all_line_width"
android:layout_marginEnd=
"@dimen/all_margin"
android:layout_marginStart=
"@dimen/all_margin"
android:background=
"@color/gray_
huanggai
"
/>
android:background=
"@color/gray_
kongming
"
/>
<LinearLayout
android:id=
"@+id/ll_ticket"
...
...
@@ -271,7 +365,7 @@
android:layout_height=
"@dimen/all_line_width"
android:layout_marginEnd=
"@dimen/all_margin"
android:layout_marginStart=
"@dimen/all_margin"
android:background=
"@color/gray_
huanggai
"
/>
android:background=
"@color/gray_
kongming
"
/>
<LinearLayout
android:id=
"@+id/ll_point"
...
...
@@ -296,7 +390,7 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/all_spacing"
android:text=
"@{@string/settle_point_vip_text + avlPoints + @string/settle_point_amt_text + pointDisAmt}"
android:text=
"@{@string/settle_point_vip_text + avlPoints + @string/settle_point_amt_text + pointDisAmt
+@string/unit_rmb_yuan
}"
android:textColor=
"@color/black_likui"
/>
<CheckBox
...
...
@@ -304,7 +398,7 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:button=
"@mipmap/but_elect02"
android:contentDescription=
"@string/settle_
balance
"
/>
android:contentDescription=
"@string/settle_
point
"
/>
</LinearLayout>
...
...
@@ -313,7 +407,7 @@
android:layout_height=
"@dimen/all_line_width"
android:layout_marginEnd=
"@dimen/all_margin"
android:layout_marginStart=
"@dimen/all_margin"
android:background=
"@color/gray_
huanggai
"
/>
android:background=
"@color/gray_
kongming
"
/>
<LinearLayout
android:layout_width=
"match_parent"
...
...
@@ -348,7 +442,6 @@
</LinearLayout>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
...
...
app/src/main/res/layout/fragment_statistics.xml
View file @
95915c36
<layout>
<data>
<variable
name=
"todayAmt"
type=
"String"
/>
<variable
name=
"todayOrder"
type=
"String"
/>
<variable
name=
"todayRecharge"
type=
"String"
/>
<variable
name=
"todayVipAdd"
type=
"String"
/>
</data>
<android.support.constraint.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
...
...
@@ -43,7 +62,7 @@
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"
32000
"
android:text=
"
@{todayAmt}
"
android:textColor=
"@color/white_caocao"
android:textSize=
"@dimen/all_text_size_big_big"
/>
...
...
@@ -73,7 +92,7 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"
256
"
android:text=
"
@{todayOrder}
"
android:textColor=
"@color/white_caocao"
/>
<TextView
...
...
@@ -95,7 +114,7 @@
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"
256
"
android:text=
"
@{todayRecharge}
"
android:textColor=
"@color/white_caocao"
/>
<TextView
...
...
@@ -116,7 +135,7 @@
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"
256
"
android:text=
"
@{todayVipAdd}
"
android:textColor=
"@color/white_caocao"
/>
<TextView
...
...
app/src/main/res/layout/fragment_statistics_title.xml
0 → 100644
View file @
95915c36
<layout>
<android.support.constraint.ConstraintLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
xmlns:tools=
"http://schemas.android.com/tools"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/gray_zhouyu"
tools:context=
"com.example.administrator.tangkupos.CasherFragment"
>
<!-- TODO: Update blank fragmfragment_integral_indexyout -->
<android.support.constraint.Guideline
android:id=
"@+id/guideline"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:orientation=
"horizontal"
app:layout_constraintGuide_percent=
"0.38"
/>
<include
android:id=
"@+id/ic_title"
layout=
"@layout/title_order"
app:layout_constraintTop_toTopOf=
"parent"
/>
<FrameLayout
android:id=
"@+id/main_frame"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/ic_title"
>
</FrameLayout>
<ViewStub
android:id=
"@+id/view_stub"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout=
"@layout/view_search_paytype"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toEndOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/ic_title"
/>
</android.support.constraint.ConstraintLayout>
</layout>
\ No newline at end of file
app/src/main/res/layout/fragment_store.xml
View file @
95915c36
...
...
@@ -42,7 +42,8 @@
android:id=
"@+id/srl_sku"
android:layout_width=
"0dp"
android:layout_height=
"match_parent"
android:layout_weight=
"3"
>
android:layout_weight=
"3"
android:background=
"@color/white_caocao"
>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/rl_sku"
...
...
app/src/main/res/layout/fragment_vipinfo.xml
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout>
<data>
<variable
name=
"onClickListener"
type=
"com.xingdata.zzdpos.util.OnClickListener"
/>
</data>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/bg"
android:orientation=
"vertical"
>
<include
layout=
"@layout/title_pop"
/>
<include
android:id=
"@+id/info_title"
layout=
"@layout/title_pop"
/>
<LinearLayout
android:layout_width=
"match_parent"
...
...
app/src/main/res/layout/fragment_viplevel_title.xml
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
...
...
@@ -8,12 +7,11 @@
android:orientation=
"vertical"
>
<RadioGroup
android:gravity=
"center"
android:id=
"@+id/vip_level_RadioGroup"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:
orientation=
"vertical"
>
</RadioGroup>
android:
gravity=
"center"
android:orientation=
"vertical"
>
</RadioGroup>
</LinearLayout>
</layout>
\ No newline at end of file
app/src/main/res/layout/fragment_viptitle.xml
View file @
95915c36
...
...
@@ -12,6 +12,7 @@
</data>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/white"
...
...
app/src/main/res/layout/item_settle_saledetail.xml
0 → 100644
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<android.support.constraint.ConstraintLayout
android:layout_width=
"match_parent"
android:layout_height=
"?attr/actionBarSize"
android:orientation=
"vertical"
android:paddingEnd=
"@dimen/all_margin"
android:paddingStart=
"@dimen/all_margin"
>
<TextView
android:id=
"@+id/tv_name"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:maxLines=
"2"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_caption_size"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintHorizontal_weight=
"6"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintRight_toLeftOf=
"@+id/tv_count"
app:layout_constraintTop_toTopOf=
"parent"
/>
<TextView
android:id=
"@+id/tv_count"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:gravity=
"end"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_caption_size"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintHorizontal_weight=
"1"
app:layout_constraintLeft_toRightOf=
"@+id/tv_name"
app:layout_constraintRight_toLeftOf=
"@+id/tv_price"
app:layout_constraintTop_toTopOf=
"parent"
/>
<TextView
android:id=
"@+id/tv_initial_price"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:gravity=
"end"
android:textColor=
"@color/gray"
android:textSize=
"@dimen/all_caption_size"
android:visibility=
"gone"
app:layout_constraintBottom_toTopOf=
"@+id/tv_price"
app:layout_constraintLeft_toRightOf=
"@+id/tv_count"
app:layout_constraintRight_toLeftOf=
"@+id/tv_amt"
app:layout_constraintTop_toTopOf=
"parent"
/>
<TextView
android:id=
"@+id/tv_price"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:gravity=
"end"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_caption_size"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintHorizontal_weight=
"2"
app:layout_constraintLeft_toRightOf=
"@+id/tv_count"
app:layout_constraintRight_toLeftOf=
"@+id/tv_amt"
app:layout_constraintTop_toBottomOf=
"@id/tv_initial_price"
/>
<TextView
android:id=
"@+id/tv_amt"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:gravity=
"end"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_caption_size"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintHorizontal_weight=
"2"
app:layout_constraintLeft_toRightOf=
"@+id/tv_price"
app:layout_constraintRight_toRightOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
</android.support.constraint.ConstraintLayout>
</layout>
app/src/main/res/layout/item_store_saledatail.xml
deleted
100644 → 0
View file @
e9d75761
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<data>
<import
type=
"android.view.View"
/>
<variable
name=
"count"
type=
"int"
/>
</data>
<android.support.constraint.ConstraintLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/white_caocao"
android:paddingEnd=
"@dimen/all_margin"
android:paddingStart=
"@dimen/all_margin"
android:paddingTop=
"@dimen/all_margin"
>
<com.facebook.drawee.view.SimpleDraweeView
android:id=
"@+id/iv_pic"
android:layout_width=
"80dp"
android:layout_height=
"80dp"
app:failureImage=
"@mipmap/icon_goods_default"
app:placeholderImage=
"@mipmap/icon_goods_default"
app:roundedCornerRadius=
"@dimen/all_shape_radius"
/>
<TextView
android:id=
"@+id/tv_name"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_marginStart=
"@dimen/all_margin"
android:lines=
"2"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_text_size"
app:layout_constraintLeft_toRightOf=
"@id/iv_pic"
app:layout_constraintRight_toRightOf=
"parent"
/>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/all_spacing"
app:layout_constraintBottom_toBottomOf=
"@id/ll_count"
app:layout_constraintLeft_toLeftOf=
"@id/tv_name"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/money_rmb"
android:textColor=
"@color/red_guanyu"
android:textSize=
"@dimen/all_caption_size"
android:textStyle=
"bold"
/>
<TextView
android:id=
"@+id/tv_amt"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:textColor=
"@color/red_guanyu"
android:textSize=
"@dimen/all_text_size"
android:textStyle=
"bold"
/>
</LinearLayout>
<LinearLayout
android:id=
"@+id/ll_count"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"@dimen/all_spacing"
android:animateLayoutChanges=
"true"
android:gravity=
"center"
app:layout_constraintBottom_toBottomOf=
"@id/iv_pic"
app:layout_constraintRight_toRightOf=
"@id/tv_name"
>
<ImageView
android:id=
"@+id/iv_reduce"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:contentDescription=
"@string/store_reduce"
android:foreground=
"?android:attr/actionBarItemBackground"
android:src=
"@mipmap/but_reduce"
android:visibility=
"@{count>0?View.VISIBLE:View.INVISIBLE}"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/all_spacing"
android:layout_marginStart=
"@dimen/all_spacing"
android:text=
'@{count+""}'
android:textColor=
"@color/black_likui"
android:textSize=
"@dimen/all_sub_title_size"
android:visibility=
"@{count>0?View.VISIBLE:View.INVISIBLE}"
/>
<ImageView
android:id=
"@+id/iv_increase"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:contentDescription=
"@string/store_increase"
android:foreground=
"?android:attr/actionBarItemBackground"
android:src=
"@mipmap/but_increase02"
/>
</LinearLayout>
<View
android:layout_width=
"0dp"
android:layout_height=
"@dimen/all_line_width"
android:layout_marginTop=
"@dimen/all_margin"
android:background=
"@color/gray_kongming"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintLeft_toLeftOf=
"parent"
app:layout_constraintRight_toRightOf=
"parent"
app:layout_constraintTop_toBottomOf=
"@id/iv_pic"
/>
</android.support.constraint.ConstraintLayout>
</layout>
app/src/main/res/layout/item_store_saledetail.xml
0 → 100644
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<data>
<import
type=
"android.view.View"
/>
<variable
name=
"count"
type=
"int"
/>
</data>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"?attr/actionBarSize"
android:background=
"@color/white_caocao"
android:gravity=
"center"
android:paddingEnd=
"@dimen/all_margin"
android:paddingStart=
"@dimen/all_margin"
>
<TextView
android:id=
"@+id/tv_name"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"2"
android:singleLine=
"true"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_text_size"
/>
<TextView
android:id=
"@+id/tv_price"
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:gravity=
"center"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_text_size"
/>
<LinearLayout
android:layout_width=
"0dp"
android:layout_height=
"wrap_content"
android:layout_weight=
"1"
android:gravity=
"end"
>
<ImageView
android:id=
"@+id/iv_reduce"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:contentDescription=
"@string/store_reduce"
android:foreground=
"?android:attr/actionBarItemBackground"
android:src=
"@mipmap/but_reduce"
android:visibility=
"@{count>0?View.VISIBLE:View.INVISIBLE}"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/all_spacing"
android:layout_marginStart=
"@dimen/all_spacing"
android:text=
'@{count+""}'
android:textColor=
"@color/black_likui"
android:textSize=
"@dimen/all_text_size"
android:visibility=
"@{count>0?View.VISIBLE:View.INVISIBLE}"
/>
<ImageView
android:id=
"@+id/iv_increase"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:contentDescription=
"@string/store_increase"
android:foreground=
"?android:attr/actionBarItemBackground"
android:src=
"@mipmap/but_increase02"
/>
</LinearLayout>
</LinearLayout>
<View
android:layout_width=
"match_parent"
android:layout_height=
"@dimen/all_line_width"
android:layout_marginEnd=
"@dimen/all_margin"
android:layout_marginStart=
"@dimen/all_margin"
android:background=
"@color/gray_kongming"
/>
</LinearLayout>
</layout>
app/src/main/res/layout/item_store_sku.xml
View file @
95915c36
...
...
@@ -80,9 +80,10 @@
android:contentDescription=
"@string/store_reduce"
android:foreground=
"?android:attr/actionBarItemBackground"
android:src=
"@mipmap/but_reduce"
android:visibility=
"
@{count>0?View.VISIBLE:View.INVISIBLE}
"
/>
android:visibility=
"
gone
"
/>
<TextView
android:id=
"@+id/tv_count"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/all_spacing"
...
...
@@ -90,7 +91,7 @@
android:text=
'@{count+""}'
android:textColor=
"@color/black_likui"
android:textSize=
"@dimen/all_sub_title_size"
android:visibility=
"
@{count>0?View.VISIBLE:View.INVISIBLE}
"
/>
android:visibility=
"
gone
"
/>
<ImageView
android:id=
"@+id/iv_increase"
...
...
app/src/main/res/layout/item_vip_recharge_item.xml
View file @
95915c36
...
...
@@ -8,8 +8,8 @@
android:orientation=
"horizontal"
>
<ImageView
android:layout_width=
"
wrap_content
"
android:layout_height=
"
wrap_content
"
android:layout_width=
"
30dp
"
android:layout_height=
"
30dp
"
android:layout_margin=
"@dimen/all_margin"
android:background=
"@mipmap/pay_alipay"
/>
...
...
app/src/main/res/layout/title.xml
View file @
95915c36
...
...
@@ -19,10 +19,11 @@
<ImageButton
android:id=
"@+id/iv_back"
android:layout_width=
"60dp"
android:layout_height=
"?attr/actionBarSize"
android:background=
"@mipmap/go_back"
android:onClick=
"@{onClickListener}"
/>
android:layout_width=
"?attr/actionBarSize"
android:layout_height=
"match_parent"
android:background=
"@color/transparent"
android:src=
"@mipmap/go_back"
android:onClick=
"@{onClickListener}"
/>
<TextView
android:id=
"@+id/tv_title"
...
...
@@ -31,7 +32,7 @@
android:layout_centerInParent=
"true"
android:text=
"标题"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/
text_secondary_titl
e"
/>
android:textSize=
"@dimen/
big_text_siz
e"
/>
</RelativeLayout>
...
...
app/src/main/res/layout/title_appback.xml
View file @
95915c36
...
...
@@ -34,7 +34,7 @@
android:layout_centerInParent=
"true"
android:text=
"标题"
android:textColor=
"@color/white"
android:textSize=
"@dimen/
text_secondary_titl
e"
android:textSize=
"@dimen/
big_text_siz
e"
/>
...
...
app/src/main/res/layout/title_order.xml
View file @
95915c36
...
...
@@ -22,8 +22,7 @@
android:layout_height=
"match_parent"
android:background=
"@color/transparent"
android:onClick=
"@{onClickListener}"
android:padding=
"@dimen/all_margin"
android:src=
"@mipmap/back_black"
android:src=
"@mipmap/go_back"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintStart_toStartOf=
"parent"
app:layout_constraintTop_toTopOf=
"parent"
/>
...
...
@@ -43,10 +42,11 @@
<!--app:layout_constraintTop_toTopOf="parent" />-->
<EditText
android:id=
"@+id/
tv
_title"
android:id=
"@+id/
ed
_title"
style=
"@style/searchBarEditor"
android:layout_width=
"0dp"
android:layout_height=
"match_parent"
android:hint=
"@string/statistics_order_edit_hint"
android:inputType=
"number"
android:textColor=
"@color/black_likui"
android:textColorHint=
"@color/gray_huanggai"
...
...
@@ -57,6 +57,21 @@
app:layout_constraintTop_toTopOf=
"parent"
app:layout_goneMarginRight=
"@dimen/all_padding"
/>
<TextView
android:id=
"@+id/tv_title"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerInParent=
"true"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/big_text_size"
android:visibility=
"gone"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintEnd_toStartOf=
"@id/iv_right"
app:layout_constraintStart_toEndOf=
"@id/iv_back"
app:layout_constraintTop_toTopOf=
"parent"
app:layout_goneMarginRight=
"?attr/actionBarSize"
/>
<ImageButton
android:id=
"@+id/iv_right"
android:layout_width=
"?attr/actionBarSize"
...
...
app/src/main/res/layout/title_pop.xml
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout>
<data>
<variable
name=
"onClickListener"
type=
"com.xingdata.zzdpos.util.OnClickListener"
/>
</data>
<RelativeLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"?attr/actionBarSize"
...
...
@@ -21,8 +12,7 @@
android:id=
"@+id/iv_back"
android:layout_width=
"?attr/actionBarSize"
android:layout_height=
"match_parent"
android:background=
"@mipmap/go_back"
android:onClick=
"@{onClickListener}"
/>
android:background=
"@mipmap/go_back"
/>
<TextView
android:id=
"@+id/tv_title"
...
...
@@ -38,8 +28,7 @@
android:layout_width=
"60dp"
android:layout_height=
"match_parent"
android:layout_alignParentRight=
"true"
android:background=
"@mipmap/pop_menu"
android:onClick=
"@{onClickListener}"
/>
android:background=
"@mipmap/pop_menu"
/>
</RelativeLayout>
...
...
app/src/main/res/layout/view_order_detail.xml
0 → 100644
View file @
95915c36
This diff is collapsed.
Click to expand it.
app/src/main/res/layout/view_search_paytype.xml
0 → 100644
View file @
95915c36
<?xml version="1.0" encoding="utf-8"?>
<layout>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/gray_zhouyu"
android:orientation=
"vertical"
>
<TableLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:shrinkColumns=
"1,2,3"
>
<TextView
android:id=
"@+id/tv_empty"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:padding=
"@dimen/all_padding"
android:text=
"按支付方式搜索"
/>
<TableRow>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/dp_4"
android:layout_marginStart=
"@dimen/all_padding"
android:layout_weight=
"1"
android:background=
"@color/red_diaochan"
android:padding=
"@dimen/all_padding"
android:src=
"@mipmap/pay_cash"
/>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/dp_4"
android:layout_marginStart=
"@dimen/dp_4"
android:layout_weight=
"1"
android:background=
"@color/blue_yuefei"
android:padding=
"@dimen/all_padding"
android:src=
"@mipmap/pay_alipay"
/>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/all_padding"
android:layout_marginStart=
"@dimen/dp_4"
android:layout_weight=
"1"
android:background=
"@color/green_kongrong"
android:padding=
"@dimen/all_padding"
android:src=
"@mipmap/pay_wechat"
/>
</TableRow>
<TableRow>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/dp_4"
android:layout_marginStart=
"@dimen/all_padding"
android:layout_marginTop=
"@dimen/all_margin"
android:layout_weight=
"1"
android:background=
"@color/cyan_liubei"
android:padding=
"@dimen/all_padding"
android:src=
"@mipmap/pay_card"
/>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/dp_4"
android:layout_marginStart=
"@dimen/dp_4"
android:layout_marginTop=
"@dimen/all_margin"
android:layout_weight=
"1"
android:background=
"@color/yellow_huangxin"
android:padding=
"@dimen/all_padding"
android:src=
"@mipmap/pay_membershipcard"
/>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginEnd=
"@dimen/all_padding"
android:layout_marginStart=
"@dimen/dp_4"
android:layout_marginTop=
"@dimen/all_margin"
android:layout_weight=
"1"
android:background=
"@color/purple_yanqing"
android:padding=
"@dimen/all_padding"
android:src=
"@mipmap/pay_credit"
/>
</TableRow>
</TableLayout>
</LinearLayout>
</layout>
\ No newline at end of file
app/src/main/res/mipmap-xhdpi/but_unfurled.png
0 → 100644
View file @
95915c36
1.12 KB
app/src/main/res/mipmap-xhdpi/but_up.png
0 → 100644
View file @
95915c36
1.11 KB
app/src/main/res/mipmap-xxhdpi/but_unfurled.png
0 → 100644
View file @
95915c36
1.22 KB
app/src/main/res/mipmap-xxhdpi/but_up.png
0 → 100644
View file @
95915c36
1.25 KB
app/src/main/res/mipmap-xxxhdpi/but_unfurled.png
0 → 100644
View file @
95915c36
1.33 KB
app/src/main/res/mipmap-xxxhdpi/but_up.png
0 → 100644
View file @
95915c36
1.31 KB
app/src/main/res/values/colors.xml
View file @
95915c36
...
...
@@ -153,4 +153,5 @@
<color
name=
"purple_yanqing"
>
#6590e6
</color>
</resources>
app/src/main/res/values/strings.xml
View file @
95915c36
...
...
@@ -520,6 +520,8 @@
<string
name=
"settle_point_vip_text"
>
可用积分
</string>
<string
name=
"settle_point_amt_text"
>
, 可抵用
</string>
<string
name=
"settle_balance"
>
账户余额
</string>
<string
name=
"settle_saledetail_hint"
>
商品详情
</string>
<string
name=
"settle_ms_hint"
>
账户余额
</string>
<!--支付里的Vip-->
<string
name=
"settle_vip_search_hint"
>
请输入会员手机号
</string>
...
...
@@ -535,6 +537,7 @@
<string
name=
"store_pay_amt"
>
合计:
</string>
<string
name=
"store_cart"
>
购物车
</string>
<string
name=
"store_btn_settle"
>
选好了
</string>
<string
name=
"store_clear_all"
>
全部清空
</string>
<string
name=
"store_ms_dis"
>
已减
</string>
<string
name=
"store_scan"
>
扫描
</string>
<string
name=
"store_search_hint"
>
请输入商品名称/助记码/条码
</string>
...
...
@@ -577,6 +580,17 @@
<string
name=
"statistics_todayRecharge_hint"
>
今日充值
</string>
<string
name=
"statistics_todayVipAdd_hint"
>
今日新增会员
</string>
<string
name=
"statistics_search_empty"
>
没有查询到订单~
</string>
<string
name=
"statistics_order_edit_hint"
>
请输入单号
</string>
<string
name=
"statistics_order_detail_hint"
>
订单详情
</string>
<!--商品详情POS-->
<string
name=
"oder_detail_date"
>
交易时间:
</string>
<string
name=
"oder_detail_no"
>
订单号:
</string>
<string
name=
"oder_detail_oper"
>
收银员:
</string>
<string
name=
"oder_detail_payType"
>
收款方式:
</string>
<string
name=
"oder_detail_goodsNum"
>
商品总数:
</string>
<string
name=
"oder_detail_discountAmt"
>
优惠金额:
</string>
<string
name=
"oder_detail_SumAmt"
>
合计金额:
</string>
<string
name=
"oder_detail_cutAmt"
>
抹零金额:
</string>
</resources>
app/src/main/res/values/styles.xml
View file @
95915c36
...
...
@@ -43,6 +43,17 @@
<item
name=
"android:textColor"
>
@color/black
</item>
<item
name=
"android:textSize"
>
@dimen/detail_textview_size
</item>
</style>
<style
name=
"default_bluetext_popbutton"
>
<item
name=
"android:layout_width"
>
wrap_content
</item>
<item
name=
"android:layout_height"
>
match_parent
</item>
<item
name=
"android:gravity"
>
center_vertical
</item>
<item
name=
"android:singleLine"
>
true
</item>
<item
name=
"android:padding"
>
@dimen/dp_4
</item>
<item
name=
"android:textColor"
>
@color/blue_mawu
</item>
<item
name=
"android:textSize"
>
@dimen/big_text_size
</item>
</style>
<style
name=
"default_title"
>
<item
name=
"android:gravity"
>
center_vertical
</item>
...
...
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