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
4eb532b8
Commit
4eb532b8
authored
Jan 30, 2018
by
zhang_z
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修复所有的列表;
parent
2c3613a0
Changes
19
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
74 additions
and
55 deletions
+74
-55
app/src/main/java/com/xingdata/zzdpos/App.java
app/src/main/java/com/xingdata/zzdpos/App.java
+1
-1
app/src/main/java/com/xingdata/zzdpos/db/DBFactory.java
app/src/main/java/com/xingdata/zzdpos/db/DBFactory.java
+22
-8
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/SsskuActivity.java
...va/com/xingdata/zzdpos/ui/manage/sssku/SsskuActivity.java
+3
-2
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/SsskuContract.java
...va/com/xingdata/zzdpos/ui/manage/sssku/SsskuContract.java
+3
-2
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/SsskuPresenter.java
...a/com/xingdata/zzdpos/ui/manage/sssku/SsskuPresenter.java
+2
-2
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/fragment/ManagerFragment.java
...data/zzdpos/ui/manage/sssku/fragment/ManagerFragment.java
+5
-4
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/fragment/SearchFragment.java
...gdata/zzdpos/ui/manage/sssku/fragment/SearchFragment.java
+5
-6
app/src/main/java/com/xingdata/zzdpos/ui/marketing/ms/MsActivity.java
.../java/com/xingdata/zzdpos/ui/marketing/ms/MsActivity.java
+2
-1
app/src/main/java/com/xingdata/zzdpos/ui/marketing/ms/MsContract.java
.../java/com/xingdata/zzdpos/ui/marketing/ms/MsContract.java
+2
-1
app/src/main/java/com/xingdata/zzdpos/ui/marketing/ms/MsPresenter.java
...java/com/xingdata/zzdpos/ui/marketing/ms/MsPresenter.java
+1
-1
app/src/main/java/com/xingdata/zzdpos/ui/marketing/ms/fragment/ManagerFragment.java
...data/zzdpos/ui/marketing/ms/fragment/ManagerFragment.java
+5
-7
app/src/main/java/com/xingdata/zzdpos/ui/payment/PaymentPresenter.java
...java/com/xingdata/zzdpos/ui/payment/PaymentPresenter.java
+1
-1
app/src/main/java/com/xingdata/zzdpos/ui/settle/view/InputerView.java
.../java/com/xingdata/zzdpos/ui/settle/view/InputerView.java
+1
-1
app/src/main/java/com/xingdata/zzdpos/ui/store/StoreActivity.java
...main/java/com/xingdata/zzdpos/ui/store/StoreActivity.java
+3
-2
app/src/main/java/com/xingdata/zzdpos/ui/store/StoreContract.java
...main/java/com/xingdata/zzdpos/ui/store/StoreContract.java
+3
-2
app/src/main/java/com/xingdata/zzdpos/ui/store/fragment/SearchFragment.java
...com/xingdata/zzdpos/ui/store/fragment/SearchFragment.java
+5
-5
app/src/main/java/com/xingdata/zzdpos/ui/store/fragment/StoreFragment.java
.../com/xingdata/zzdpos/ui/store/fragment/StoreFragment.java
+5
-4
app/src/main/java/com/xingdata/zzdpos/util/SystemUtil.java
app/src/main/java/com/xingdata/zzdpos/util/SystemUtil.java
+2
-2
app/src/main/res/layout/activity_sssku.xml
app/src/main/res/layout/activity_sssku.xml
+3
-3
No files found.
app/src/main/java/com/xingdata/zzdpos/App.java
View file @
4eb532b8
...
@@ -70,7 +70,7 @@ public class App extends Application {
...
@@ -70,7 +70,7 @@ public class App extends Application {
.
start
();
.
start
();
// 初始化异常处理
// 初始化异常处理
initEx
();
//
initEx();
//初始化Fragment框架
//初始化Fragment框架
initFragment
();
initFragment
();
...
...
app/src/main/java/com/xingdata/zzdpos/db/DBFactory.java
View file @
4eb532b8
...
@@ -9,6 +9,7 @@ import com.xingdata.zzdpos.base.BaseModel;
...
@@ -9,6 +9,7 @@ import com.xingdata.zzdpos.base.BaseModel;
import
com.xingdata.zzdpos.model.HandoverInfo
;
import
com.xingdata.zzdpos.model.HandoverInfo
;
import
com.xingdata.zzdpos.model.Level
;
import
com.xingdata.zzdpos.model.Level
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Pay
;
import
com.xingdata.zzdpos.model.Pay
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.model.Sssku
;
...
@@ -68,7 +69,7 @@ public class DBFactory {
...
@@ -68,7 +69,7 @@ public class DBFactory {
* @param skuGrpId 分组ID
* @param skuGrpId 分组ID
* @return 商品List
* @return 商品List
*/
*/
public
static
Observable
<
List
<
Sssku
>>
querySku
(
int
pageNum
,
Long
skuGrpId
)
{
public
static
Observable
<
Pager
<
Sssku
>>
querySku
(
int
pageNum
,
Long
skuGrpId
)
{
RealmQuery
<
Sssku
>
query
=
DB
.
getInstance
().
get
(
MainPresenter
.
class
).
where
(
Sssku
.
class
);
RealmQuery
<
Sssku
>
query
=
DB
.
getInstance
().
get
(
MainPresenter
.
class
).
where
(
Sssku
.
class
);
//skuGrpId
//skuGrpId
...
@@ -87,7 +88,7 @@ public class DBFactory {
...
@@ -87,7 +88,7 @@ public class DBFactory {
* @param keyword 关键字
* @param keyword 关键字
* @return 商品List
* @return 商品List
*/
*/
public
static
Observable
<
List
<
Sssku
>>
querySku
(
int
pageNum
,
String
keyword
)
{
public
static
Observable
<
Pager
<
Sssku
>>
querySku
(
int
pageNum
,
String
keyword
)
{
RealmQuery
<
Sssku
>
query
=
DB
.
getInstance
().
get
(
MainPresenter
.
class
).
where
(
Sssku
.
class
);
RealmQuery
<
Sssku
>
query
=
DB
.
getInstance
().
get
(
MainPresenter
.
class
).
where
(
Sssku
.
class
);
long
_keyword
=
StringUtil
.
strToLong
(
keyword
);
long
_keyword
=
StringUtil
.
strToLong
(
keyword
);
...
@@ -112,12 +113,18 @@ public class DBFactory {
...
@@ -112,12 +113,18 @@ public class DBFactory {
*
*
* @return 组合商品
* @return 组合商品
*/
*/
public
static
Observable
<
List
<
Ussku
>>
queryUSku
()
{
public
static
Observable
<
Pager
<
Ussku
>>
queryUSku
()
{
RealmQuery
<
Ussku
>
query
=
DB
.
getInstance
().
get
(
MainPresenter
.
class
).
where
(
Ussku
.
class
);
RealmQuery
<
Ussku
>
query
=
DB
.
getInstance
().
get
(
MainPresenter
.
class
).
where
(
Ussku
.
class
);
query
.
equalTo
(
"skuStatus"
,
0
);
query
.
equalTo
(
"skuStatus"
,
0
);
return
Observable
.
just
(
query
.
findAll
())
return
Observable
.
just
(
query
.
findAll
())
.
flatMap
(
usskus
->
Observable
.
just
(
getList
(
usskus
)));
.
flatMap
(
usskus
->
{
Pager
<
Ussku
>
usskuPager
=
new
Pager
<>();
usskuPager
.
setFirstPage
(
true
);
usskuPager
.
setLastPage
(
true
);
usskuPager
.
setList
(
getList
(
usskus
));
return
Observable
.
just
(
usskuPager
);
});
}
}
...
@@ -262,22 +269,29 @@ public class DBFactory {
...
@@ -262,22 +269,29 @@ public class DBFactory {
}
}
}
}
public
static
<
E
extends
RealmModel
>
List
<
E
>
getLimitList
(
RealmResults
<
E
>
data
,
int
offset
,
public
static
<
E
extends
RealmModel
>
Pager
<
E
>
getLimitList
(
RealmResults
<
E
>
data
,
int
offset
,
int
limit
)
{
int
limit
)
{
Pager
<
E
>
pager
=
new
Pager
<>();
pager
.
setTotalRow
(
data
.
size
());
pager
.
setFirstPage
(
offset
<=
1
);
pager
.
setPageSize
(
data
.
size
()
/
limit
+
1
);
List
<
E
>
obtainList
=
new
ArrayList
<>();
List
<
E
>
obtainList
=
new
ArrayList
<>();
Realm
realm
=
Realm
.
getDefaultInstance
();
Realm
realm
=
Realm
.
getDefaultInstance
();
if
(
data
.
size
()
==
0
)
{
if
(
data
.
size
()
==
0
)
{
return
obtainList
;
return
pager
;
}
}
for
(
int
i
=
offset
*
limit
;
i
<
offset
*
limit
+
limit
;
i
++)
{
for
(
int
i
=
offset
*
limit
;
i
<
offset
*
limit
+
limit
;
i
++)
{
if
(
i
>=
data
.
size
())
{
if
(
i
>=
data
.
size
())
{
pager
.
setLastPage
(
true
);
break
;
break
;
}
}
E
temp
=
realm
.
copyFromRealm
(
data
.
get
(
i
));
E
temp
=
realm
.
copyFromRealm
(
data
.
get
(
i
));
obtainList
.
add
(
temp
);
obtainList
.
add
(
temp
);
}
}
realm
.
close
();
realm
.
close
();
return
obtainList
;
pager
.
setList
(
obtainList
);
return
pager
;
}
}
public
static
<
E
extends
RealmModel
>
List
<
E
>
getList
(
RealmResults
<
E
>
data
)
{
public
static
<
E
extends
RealmModel
>
List
<
E
>
getList
(
RealmResults
<
E
>
data
)
{
...
...
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/SsskuActivity.java
View file @
4eb532b8
...
@@ -9,6 +9,7 @@ import com.xingdata.zzdpos.R;
...
@@ -9,6 +9,7 @@ import com.xingdata.zzdpos.R;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.base.BaseActivity
;
import
com.xingdata.zzdpos.databinding.ActivitySsskuBinding
;
import
com.xingdata.zzdpos.databinding.ActivitySsskuBinding
;
import
com.xingdata.zzdpos.model.Cor
;
import
com.xingdata.zzdpos.model.Cor
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.ui.dialog.LoadingDialog
;
import
com.xingdata.zzdpos.ui.dialog.LoadingDialog
;
...
@@ -67,7 +68,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
...
@@ -67,7 +68,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
}
}
@Override
@Override
public
void
loadSkus
(
List
<
Sssku
>
skus
,
boolean
isRefresh
)
{
public
void
loadSkus
(
Pager
<
Sssku
>
skus
,
boolean
isRefresh
)
{
mManagerFragment
.
loadSkus
(
skus
,
isRefresh
);
mManagerFragment
.
loadSkus
(
skus
,
isRefresh
);
}
}
...
@@ -95,7 +96,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
...
@@ -95,7 +96,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
}
}
@Override
@Override
public
void
loadSearchResult
(
List
<
Sssku
>
skus
,
boolean
isRefresh
)
{
public
void
loadSearchResult
(
Pager
<
Sssku
>
skus
,
boolean
isRefresh
)
{
mSearchFragment
.
loadSkus
(
skus
,
isRefresh
);
mSearchFragment
.
loadSkus
(
skus
,
isRefresh
);
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/SsskuContract.java
View file @
4eb532b8
...
@@ -4,6 +4,7 @@ package com.xingdata.zzdpos.ui.manage.sssku;
...
@@ -4,6 +4,7 @@ package com.xingdata.zzdpos.ui.manage.sssku;
import
com.xingdata.zzdpos.base.BasePresenter
;
import
com.xingdata.zzdpos.base.BasePresenter
;
import
com.xingdata.zzdpos.base.BaseView
;
import
com.xingdata.zzdpos.base.BaseView
;
import
com.xingdata.zzdpos.model.Cor
;
import
com.xingdata.zzdpos.model.Cor
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.model.Sssku
;
...
@@ -26,7 +27,7 @@ public interface SsskuContract {
...
@@ -26,7 +27,7 @@ public interface SsskuContract {
* @param skus 商品列表
* @param skus 商品列表
* @param isRefresh 是否刷新列表
* @param isRefresh 是否刷新列表
*/
*/
void
loadSkus
(
List
<
Sssku
>
skus
,
boolean
isRefresh
);
void
loadSkus
(
Pager
<
Sssku
>
skus
,
boolean
isRefresh
);
/**
/**
* 加载商品分组
* 加载商品分组
...
@@ -60,7 +61,7 @@ public interface SsskuContract {
...
@@ -60,7 +61,7 @@ public interface SsskuContract {
* @param skus 商品列表
* @param skus 商品列表
* @param isRefresh 是否刷新列表
* @param isRefresh 是否刷新列表
*/
*/
void
loadSearchResult
(
List
<
Sssku
>
skus
,
boolean
isRefresh
);
void
loadSearchResult
(
Pager
<
Sssku
>
skus
,
boolean
isRefresh
);
/**
/**
* 加载供应商列表
* 加载供应商列表
...
...
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/SsskuPresenter.java
View file @
4eb532b8
...
@@ -307,7 +307,7 @@ public class SsskuPresenter extends SsskuContract.Presenter {
...
@@ -307,7 +307,7 @@ public class SsskuPresenter extends SsskuContract.Presenter {
.
subscribe
(
ssskuPager
->
{
.
subscribe
(
ssskuPager
->
{
if
(
mPageNum
==
0
&&
mSkuGrpId
==
0L
)
if
(
mPageNum
==
0
&&
mSkuGrpId
==
0L
)
mView
.
loadSsskuCount
(
ssskuPager
.
getTotalRow
());
mView
.
loadSsskuCount
(
ssskuPager
.
getTotalRow
());
mView
.
loadSkus
(
ssskuPager
.
getList
()
,
mPageNum
==
0
);
mView
.
loadSkus
(
ssskuPager
,
mPageNum
==
0
);
})
})
);
);
}
}
...
@@ -320,7 +320,7 @@ public class SsskuPresenter extends SsskuContract.Presenter {
...
@@ -320,7 +320,7 @@ public class SsskuPresenter extends SsskuContract.Presenter {
mCompositeDisposable
.
add
(
mCompositeDisposable
.
add
(
ApiFactory
.
Sssku
.
querySssku
(
mSearchPageNum
,
mKeyword
)
ApiFactory
.
Sssku
.
querySssku
(
mSearchPageNum
,
mKeyword
)
.
doOnSubscribe
(
subscription
->
mView
.
dismissLoadingDialog
())
.
doOnSubscribe
(
subscription
->
mView
.
dismissLoadingDialog
())
.
subscribe
(
ssskuPager
->
mView
.
loadSearchResult
(
ssskuPager
.
getList
()
,
mSearchPageNum
==
0
))
.
subscribe
(
ssskuPager
->
mView
.
loadSearchResult
(
ssskuPager
,
mSearchPageNum
==
0
))
);
);
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/fragment/ManagerFragment.java
View file @
4eb532b8
...
@@ -10,6 +10,7 @@ import com.xingdata.zzdpos.C;
...
@@ -10,6 +10,7 @@ import com.xingdata.zzdpos.C;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentSsskuManagerBinding
;
import
com.xingdata.zzdpos.databinding.FragmentSsskuManagerBinding
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.ui.manage.sssku.SsskuActivity
;
import
com.xingdata.zzdpos.ui.manage.sssku.SsskuActivity
;
...
@@ -75,14 +76,14 @@ public class ManagerFragment extends BaseFragment<SsskuPresenter, FragmentSsskuM
...
@@ -75,14 +76,14 @@ public class ManagerFragment extends BaseFragment<SsskuPresenter, FragmentSsskuM
* @param skus 商品信息
* @param skus 商品信息
* @param isRefresh 是否需要刷新
* @param isRefresh 是否需要刷新
*/
*/
public
void
loadSkus
(
List
<
Sssku
>
skus
,
boolean
isRefresh
)
{
public
void
loadSkus
(
Pager
<
Sssku
>
skus
,
boolean
isRefresh
)
{
if
(
isRefresh
)
{
if
(
isRefresh
)
{
mSkuAdapter
.
isUseEmpty
(
true
);
mSkuAdapter
.
isUseEmpty
(
true
);
mSkuAdapter
.
setEnableLoadMore
(
true
);
mSkuAdapter
.
setEnableLoadMore
(
true
);
mViewBinding
.
srlSku
.
setRefreshing
(
false
);
mViewBinding
.
srlSku
.
setRefreshing
(
false
);
mSkuAdapter
.
setNewData
(
skus
);
mSkuAdapter
.
setNewData
(
skus
.
getList
()
);
}
else
if
(
skus
.
size
()
>
0
)
mSkuAdapter
.
addData
(
skus
);
}
else
if
(
skus
.
getList
().
size
()
>
0
)
mSkuAdapter
.
addData
(
skus
.
getList
()
);
if
(
skus
.
size
()
<=
C
.
PRODUCT
.
PAGE_SIZE
)
mSkuAdapter
.
loadMoreEnd
(
false
);
if
(
skus
.
isLastPage
()
)
mSkuAdapter
.
loadMoreEnd
(
false
);
else
mSkuAdapter
.
loadMoreComplete
();
else
mSkuAdapter
.
loadMoreComplete
();
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/manage/sssku/fragment/SearchFragment.java
View file @
4eb532b8
...
@@ -10,13 +10,12 @@ import com.xingdata.zzdpos.C;
...
@@ -10,13 +10,12 @@ import com.xingdata.zzdpos.C;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentSsskuSearchBinding
;
import
com.xingdata.zzdpos.databinding.FragmentSsskuSearchBinding
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.model.Sssku
;
import
com.xingdata.zzdpos.ui.manage.sssku.SsskuActivity
;
import
com.xingdata.zzdpos.ui.manage.sssku.SsskuActivity
;
import
com.xingdata.zzdpos.ui.manage.sssku.SsskuPresenter
;
import
com.xingdata.zzdpos.ui.manage.sssku.SsskuPresenter
;
import
com.xingdata.zzdpos.ui.marketing.ms.adapter.SkuAdapter
;
import
com.xingdata.zzdpos.ui.marketing.ms.adapter.SkuAdapter
;
import
java.util.List
;
public
class
SearchFragment
extends
BaseFragment
<
SsskuPresenter
,
FragmentSsskuSearchBinding
>
{
public
class
SearchFragment
extends
BaseFragment
<
SsskuPresenter
,
FragmentSsskuSearchBinding
>
{
private
int
mSearchType
;
private
int
mSearchType
;
...
@@ -73,13 +72,13 @@ public class SearchFragment extends BaseFragment<SsskuPresenter, FragmentSsskuSe
...
@@ -73,13 +72,13 @@ public class SearchFragment extends BaseFragment<SsskuPresenter, FragmentSsskuSe
* @param skus 商品
* @param skus 商品
* @param isRefresh 是否刷新
* @param isRefresh 是否刷新
*/
*/
public
void
loadSkus
(
List
<
Sssku
>
skus
,
boolean
isRefresh
)
{
public
void
loadSkus
(
Pager
<
Sssku
>
skus
,
boolean
isRefresh
)
{
if
(
isRefresh
)
{
if
(
isRefresh
)
{
mSkuAdapter
.
isUseEmpty
(
true
);
mSkuAdapter
.
isUseEmpty
(
true
);
mSkuAdapter
.
setEnableLoadMore
(
true
);
mSkuAdapter
.
setEnableLoadMore
(
true
);
mSkuAdapter
.
setNewData
(
skus
);
mSkuAdapter
.
setNewData
(
skus
.
getList
()
);
}
else
if
(
skus
.
size
()
>
0
)
mSkuAdapter
.
addData
(
skus
);
}
else
if
(
skus
.
getList
().
size
()
>
0
)
mSkuAdapter
.
addData
(
skus
.
getList
()
);
if
(
skus
.
size
()
<=
C
.
PRODUCT
.
PAGE_SIZE
)
mSkuAdapter
.
loadMoreEnd
(
isRefresh
);
if
(
skus
.
isLastPage
()
)
mSkuAdapter
.
loadMoreEnd
(
isRefresh
);
else
mSkuAdapter
.
loadMoreComplete
();
else
mSkuAdapter
.
loadMoreComplete
();
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/marketing/ms/MsActivity.java
View file @
4eb532b8
...
@@ -10,6 +10,7 @@ import com.xingdata.zzdpos.base.BaseActivity;
...
@@ -10,6 +10,7 @@ import com.xingdata.zzdpos.base.BaseActivity;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.databinding.ActivityMsBinding
;
import
com.xingdata.zzdpos.databinding.ActivityMsBinding
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.ui.dialog.LoadingDialog
;
import
com.xingdata.zzdpos.ui.dialog.LoadingDialog
;
import
com.xingdata.zzdpos.ui.marketing.ms.fragment.AddFragment
;
import
com.xingdata.zzdpos.ui.marketing.ms.fragment.AddFragment
;
import
com.xingdata.zzdpos.ui.marketing.ms.fragment.EditorFragment
;
import
com.xingdata.zzdpos.ui.marketing.ms.fragment.EditorFragment
;
...
@@ -58,7 +59,7 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A
...
@@ -58,7 +59,7 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A
}
}
@Override
@Override
public
void
loadMss
(
List
<
Ms
>
mss
,
boolean
isRefresh
)
{
public
void
loadMss
(
Pager
<
Ms
>
mss
,
boolean
isRefresh
)
{
mManagerFragment
.
loadMss
(
mss
,
isRefresh
);
mManagerFragment
.
loadMss
(
mss
,
isRefresh
);
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/marketing/ms/MsContract.java
View file @
4eb532b8
...
@@ -4,6 +4,7 @@ import com.xingdata.zzdpos.base.BasePresenter;
...
@@ -4,6 +4,7 @@ import com.xingdata.zzdpos.base.BasePresenter;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.base.BaseView
;
import
com.xingdata.zzdpos.base.BaseView
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.ui.marketing.ms.model.Area
;
import
com.xingdata.zzdpos.ui.marketing.ms.model.Area
;
import
com.xingdata.zzdpos.ui.marketing.ms.model.Group
;
import
com.xingdata.zzdpos.ui.marketing.ms.model.Group
;
import
com.xingdata.zzdpos.ui.marketing.ms.model.Type
;
import
com.xingdata.zzdpos.ui.marketing.ms.model.Type
;
...
@@ -24,7 +25,7 @@ interface MsContract {
...
@@ -24,7 +25,7 @@ interface MsContract {
/**
/**
* 加载营销计划数据
* 加载营销计划数据
*/
*/
void
loadMss
(
List
<
Ms
>
mss
,
boolean
isRefresh
);
void
loadMss
(
Pager
<
Ms
>
mss
,
boolean
isRefresh
);
/**
/**
* 显示添加页面
* 显示添加页面
...
...
app/src/main/java/com/xingdata/zzdpos/ui/marketing/ms/MsPresenter.java
View file @
4eb532b8
...
@@ -219,7 +219,7 @@ public class MsPresenter<Sku extends BaseSku> extends MsContract.Presenter<Sku>
...
@@ -219,7 +219,7 @@ public class MsPresenter<Sku extends BaseSku> extends MsContract.Presenter<Sku>
* 获取营销计划
* 获取营销计划
*/
*/
private
void
getMs
()
{
private
void
getMs
()
{
mCompositeDisposable
.
add
(
ApiFactory
.
Ms
.
query
(
mPageNum
).
subscribe
(
msPager
->
mView
.
loadMss
(
msPager
.
getList
()
,
mPageNum
==
1
)));
mCompositeDisposable
.
add
(
ApiFactory
.
Ms
.
query
(
mPageNum
).
subscribe
(
msPager
->
mView
.
loadMss
(
msPager
,
mPageNum
==
1
)));
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/marketing/ms/fragment/ManagerFragment.java
View file @
4eb532b8
...
@@ -6,18 +6,16 @@ import android.support.v7.widget.LinearLayoutManager;
...
@@ -6,18 +6,16 @@ import android.support.v7.widget.LinearLayoutManager;
import
android.view.View
;
import
android.view.View
;
import
android.widget.TextView
;
import
android.widget.TextView
;
import
com.xingdata.zzdpos.C
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.databinding.FragmentMsManagerBinding
;
import
com.xingdata.zzdpos.databinding.FragmentMsManagerBinding
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.ui.marketing.ms.MsActivity
;
import
com.xingdata.zzdpos.ui.marketing.ms.MsActivity
;
import
com.xingdata.zzdpos.ui.marketing.ms.MsPresenter
;
import
com.xingdata.zzdpos.ui.marketing.ms.MsPresenter
;
import
com.xingdata.zzdpos.ui.marketing.ms.adapter.MsAdapter
;
import
com.xingdata.zzdpos.ui.marketing.ms.adapter.MsAdapter
;
import
com.xingdata.zzdpos.util.RecyclerViewUtil
;
import
com.xingdata.zzdpos.util.RecyclerViewUtil
;
import
java.util.List
;
public
class
ManagerFragment
extends
BaseFragment
<
MsPresenter
,
FragmentMsManagerBinding
>
{
public
class
ManagerFragment
extends
BaseFragment
<
MsPresenter
,
FragmentMsManagerBinding
>
{
private
MsAdapter
mMsAdapter
;
private
MsAdapter
mMsAdapter
;
...
@@ -65,14 +63,14 @@ public class ManagerFragment extends BaseFragment<MsPresenter, FragmentMsManager
...
@@ -65,14 +63,14 @@ public class ManagerFragment extends BaseFragment<MsPresenter, FragmentMsManager
* @param mss 营销计划
* @param mss 营销计划
* @param isRefresh 是否刷新
* @param isRefresh 是否刷新
*/
*/
public
void
loadMss
(
List
<
Ms
>
mss
,
boolean
isRefresh
)
{
public
void
loadMss
(
Pager
<
Ms
>
mss
,
boolean
isRefresh
)
{
if
(
isRefresh
)
{
if
(
isRefresh
)
{
mMsAdapter
.
isUseEmpty
(
true
);
mMsAdapter
.
isUseEmpty
(
true
);
mMsAdapter
.
setEnableLoadMore
(
true
);
mMsAdapter
.
setEnableLoadMore
(
true
);
mViewBinding
.
srlMs
.
setRefreshing
(
false
);
mViewBinding
.
srlMs
.
setRefreshing
(
false
);
mMsAdapter
.
setNewData
(
mss
);
mMsAdapter
.
setNewData
(
mss
.
getList
()
);
}
else
if
(
mss
.
size
()
>
0
)
mMsAdapter
.
addData
(
mss
);
}
else
if
(
mss
.
getList
().
size
()
>
0
)
mMsAdapter
.
addData
(
mss
.
getList
()
);
if
(
mss
.
size
()
<=
C
.
PRODUCT
.
PAGE_SIZE
)
mMsAdapter
.
loadMoreEnd
(
isRefresh
);
if
(
mss
.
isLastPage
()
)
mMsAdapter
.
loadMoreEnd
(
isRefresh
);
else
mMsAdapter
.
loadMoreComplete
();
else
mMsAdapter
.
loadMoreComplete
();
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/payment/PaymentPresenter.java
View file @
4eb532b8
...
@@ -9,7 +9,7 @@ public class PaymentPresenter extends PaymentContract.Presenter {
...
@@ -9,7 +9,7 @@ public class PaymentPresenter extends PaymentContract.Presenter {
@Override
@Override
public
void
clickSettle
(
Long
amt
)
{
public
void
clickSettle
(
Long
amt
)
{
if
(
amt
>
99999999999L
)
{
if
(
amt
>
99999999999L
)
{
mView
.
showMsg
(
"
金额不合法,请重新输入
"
);
mView
.
showMsg
(
"
您填写的金额超出范围
"
);
}
else
{
}
else
{
mView
.
showSettle
(
amt
);
mView
.
showSettle
(
amt
);
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/settle/view/InputerView.java
View file @
4eb532b8
...
@@ -62,7 +62,7 @@ public class InputerView<P extends BasePresenter> extends BaseFragment<P, ViewIn
...
@@ -62,7 +62,7 @@ public class InputerView<P extends BasePresenter> extends BaseFragment<P, ViewIn
}
}
String
str
=
((
TextView
)
view
).
getText
().
toString
();
String
str
=
((
TextView
)
view
).
getText
().
toString
();
//限制位数
//限制位数
if
(
str
.
matches
(
"[0-9]+"
)
&&
mValue
.
split
(
"[.]"
).
length
>
1
&&
mValue
.
split
(
"[.]"
)[
1
].
length
()
==
2
)
if
(
str
.
matches
(
"[0-9]+"
)
&&
((!
mValue
.
contains
(
"."
)
&&
mValue
.
length
()
==
6
)
||
(
mValue
.
split
(
"[.]"
).
length
>
1
&&
mValue
.
split
(
"[.]"
)[
1
].
length
()
==
2
))
)
return
;
return
;
//限制小数点
//限制小数点
if
((
mValue
.
length
()
==
0
||
mValue
.
contains
(
"."
))
&&
str
.
matches
(
"[.]"
))
if
((
mValue
.
length
()
==
0
||
mValue
.
contains
(
"."
))
&&
str
.
matches
(
"[.]"
))
...
...
app/src/main/java/com/xingdata/zzdpos/ui/store/StoreActivity.java
View file @
4eb532b8
...
@@ -18,6 +18,7 @@ import com.xingdata.zzdpos.base.BaseActivity;
...
@@ -18,6 +18,7 @@ import com.xingdata.zzdpos.base.BaseActivity;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.databinding.ActivityStoreBinding
;
import
com.xingdata.zzdpos.databinding.ActivityStoreBinding
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sskugrp
;
...
@@ -82,7 +83,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
...
@@ -82,7 +83,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
}
}
@Override
@Override
public
<
Sku
extends
BaseSku
>
void
loadSkus
(
List
<
Sku
>
skus
,
boolean
isRefresh
)
{
public
<
Sku
extends
BaseSku
>
void
loadSkus
(
Pager
<
Sku
>
skus
,
boolean
isRefresh
)
{
mStoreFragment
.
loadSkus
(
skus
,
isRefresh
);
mStoreFragment
.
loadSkus
(
skus
,
isRefresh
);
}
}
...
@@ -103,7 +104,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
...
@@ -103,7 +104,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
}
}
@Override
@Override
public
<
Sku
extends
BaseSku
>
void
loadSearchResult
(
List
<
Sku
>
skus
,
boolean
isRefresh
)
{
public
<
Sku
extends
BaseSku
>
void
loadSearchResult
(
Pager
<
Sku
>
skus
,
boolean
isRefresh
)
{
mSearchFragment
.
loadSkus
(
skus
,
isRefresh
);
mSearchFragment
.
loadSkus
(
skus
,
isRefresh
);
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/store/StoreContract.java
View file @
4eb532b8
...
@@ -4,6 +4,7 @@ import com.xingdata.zzdpos.base.BasePresenter;
...
@@ -4,6 +4,7 @@ import com.xingdata.zzdpos.base.BasePresenter;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.base.BaseView
;
import
com.xingdata.zzdpos.base.BaseView
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.model.Saleorder
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sskugrp
;
...
@@ -28,7 +29,7 @@ interface StoreContract {
...
@@ -28,7 +29,7 @@ interface StoreContract {
* @param isRefresh 是否刷新列表
* @param isRefresh 是否刷新列表
* @param <Sku> 商品类型
* @param <Sku> 商品类型
*/
*/
<
Sku
extends
BaseSku
>
void
loadSkus
(
List
<
Sku
>
skus
,
boolean
isRefresh
);
<
Sku
extends
BaseSku
>
void
loadSkus
(
Pager
<
Sku
>
skus
,
boolean
isRefresh
);
/**
/**
* 加载商品分组
* 加载商品分组
...
@@ -58,7 +59,7 @@ interface StoreContract {
...
@@ -58,7 +59,7 @@ interface StoreContract {
* @param isRefresh 是否刷新列表
* @param isRefresh 是否刷新列表
* @param <Sku> 商品类型
* @param <Sku> 商品类型
*/
*/
<
Sku
extends
BaseSku
>
void
loadSearchResult
(
List
<
Sku
>
skus
,
boolean
isRefresh
);
<
Sku
extends
BaseSku
>
void
loadSearchResult
(
Pager
<
Sku
>
skus
,
boolean
isRefresh
);
/**
/**
* 加载订单信息
* 加载订单信息
...
...
app/src/main/java/com/xingdata/zzdpos/ui/store/fragment/SearchFragment.java
View file @
4eb532b8
...
@@ -14,11 +14,11 @@ import android.widget.TextView;
...
@@ -14,11 +14,11 @@ import android.widget.TextView;
import
com.blankj.utilcode.util.ScreenUtils
;
import
com.blankj.utilcode.util.ScreenUtils
;
import
com.blankj.utilcode.util.StringUtils
;
import
com.blankj.utilcode.util.StringUtils
;
import
com.xingdata.zzdpos.C
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.R
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.base.BaseFragment
;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.base.BaseSku
;
import
com.xingdata.zzdpos.databinding.FragmentStoreSearchBinding
;
import
com.xingdata.zzdpos.databinding.FragmentStoreSearchBinding
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.ui.store.StorePresenter
;
import
com.xingdata.zzdpos.ui.store.StorePresenter
;
import
com.xingdata.zzdpos.ui.store.adapter.SkuAdapter
;
import
com.xingdata.zzdpos.ui.store.adapter.SkuAdapter
;
...
@@ -83,13 +83,13 @@ public class SearchFragment extends BaseFragment<StorePresenter, FragmentStoreSe
...
@@ -83,13 +83,13 @@ public class SearchFragment extends BaseFragment<StorePresenter, FragmentStoreSe
* @param isRefresh 是否刷新
* @param isRefresh 是否刷新
* @param <Sku> 商品类型
* @param <Sku> 商品类型
*/
*/
public
<
Sku
extends
BaseSku
>
void
loadSkus
(
List
<
Sku
>
skus
,
boolean
isRefresh
)
{
public
<
Sku
extends
BaseSku
>
void
loadSkus
(
Pager
<
Sku
>
skus
,
boolean
isRefresh
)
{
if
(
isRefresh
)
{
if
(
isRefresh
)
{
mSkuAdapter
.
isUseEmpty
(
true
);
mSkuAdapter
.
isUseEmpty
(
true
);
mSkuAdapter
.
setEnableLoadMore
(
true
);
mSkuAdapter
.
setEnableLoadMore
(
true
);
mSkuAdapter
.
setNewData
(
skus
);
mSkuAdapter
.
setNewData
(
skus
.
getList
()
);
}
else
if
(
skus
.
size
()
>
0
)
mSkuAdapter
.
addData
(
skus
);
}
else
if
(
skus
.
getList
().
size
()
>
0
)
mSkuAdapter
.
addData
(
skus
.
getList
()
);
if
(
skus
.
size
()
<=
C
.
PRODUCT
.
PAGE_SIZE
)
mSkuAdapter
.
loadMoreEnd
(
isRefresh
);
if
(
skus
.
isLastPage
())
mSkuAdapter
.
loadMoreEnd
(
false
);
else
mSkuAdapter
.
loadMoreComplete
();
else
mSkuAdapter
.
loadMoreComplete
();
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/ui/store/fragment/StoreFragment.java
View file @
4eb532b8
...
@@ -21,6 +21,7 @@ import com.xingdata.zzdpos.base.BaseSku;
...
@@ -21,6 +21,7 @@ import com.xingdata.zzdpos.base.BaseSku;
import
com.xingdata.zzdpos.databinding.FragmentStoreBinding
;
import
com.xingdata.zzdpos.databinding.FragmentStoreBinding
;
import
com.xingdata.zzdpos.db.DBFactory
;
import
com.xingdata.zzdpos.db.DBFactory
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Ms
;
import
com.xingdata.zzdpos.model.Pager
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Saledetail
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.model.Sskugrp
;
import
com.xingdata.zzdpos.ui.store.StorePresenter
;
import
com.xingdata.zzdpos.ui.store.StorePresenter
;
...
@@ -210,14 +211,14 @@ public class StoreFragment extends BaseFragment<StorePresenter, FragmentStoreBin
...
@@ -210,14 +211,14 @@ public class StoreFragment extends BaseFragment<StorePresenter, FragmentStoreBin
* @param isRefresh 是否刷新
* @param isRefresh 是否刷新
* @param <Sku> 商品类型
* @param <Sku> 商品类型
*/
*/
public
<
Sku
extends
BaseSku
>
void
loadSkus
(
List
<
Sku
>
skus
,
boolean
isRefresh
)
{
public
<
Sku
extends
BaseSku
>
void
loadSkus
(
Pager
<
Sku
>
skus
,
boolean
isRefresh
)
{
if
(
isRefresh
)
{
if
(
isRefresh
)
{
mSkuAdapter
.
isUseEmpty
(
true
);
mSkuAdapter
.
isUseEmpty
(
true
);
mSkuAdapter
.
setEnableLoadMore
(
true
);
mSkuAdapter
.
setEnableLoadMore
(
true
);
mViewBinding
.
srlSku
.
setRefreshing
(
false
);
mViewBinding
.
srlSku
.
setRefreshing
(
false
);
mSkuAdapter
.
setNewData
(
skus
);
mSkuAdapter
.
setNewData
(
skus
.
getList
()
);
}
else
if
(
skus
.
size
()
>
0
)
mSkuAdapter
.
addData
(
skus
);
}
else
if
(
skus
.
getList
().
size
()
>
0
)
mSkuAdapter
.
addData
(
skus
.
getList
()
);
if
(
skus
.
size
()
<=
C
.
PRODUCT
.
PAGE_SIZE
)
mSkuAdapter
.
loadMoreEnd
(
false
);
if
(
skus
.
isLastPage
()
)
mSkuAdapter
.
loadMoreEnd
(
false
);
else
mSkuAdapter
.
loadMoreComplete
();
else
mSkuAdapter
.
loadMoreComplete
();
}
}
...
...
app/src/main/java/com/xingdata/zzdpos/util/SystemUtil.java
View file @
4eb532b8
...
@@ -29,7 +29,7 @@ public final class SystemUtil {
...
@@ -29,7 +29,7 @@ public final class SystemUtil {
*/
*/
public
static
String
getDeviceModel
()
{
public
static
String
getDeviceModel
()
{
// return DeviceUtils.getModel();
// return DeviceUtils.getModel();
return
"
MI5
"
;
return
"
X990
"
;
}
}
...
@@ -58,7 +58,7 @@ public final class SystemUtil {
...
@@ -58,7 +58,7 @@ public final class SystemUtil {
}
}
}
}
// return deviceSN;
// return deviceSN;
return
"5
484965656
"
;
return
"5
536bef2
"
;
}
}
/**
/**
...
...
app/src/main/res/layout/activity_sssku.xml
View file @
4eb532b8
...
@@ -41,7 +41,7 @@
...
@@ -41,7 +41,7 @@
android:id=
"@+id/v_search"
android:id=
"@+id/v_search"
android:layout_width=
"0dp"
android:layout_width=
"0dp"
android:layout_height=
"0dp"
android:layout_height=
"0dp"
android:visibility=
"@{titleMode==1||titleMode==6||titleMode==8||titleMode==9||titleMode==10?View.
VISIBLE:View.IN
VISIBLE}"
android:visibility=
"@{titleMode==1||titleMode==6||titleMode==8||titleMode==9||titleMode==10?View.
GONE:View.
VISIBLE}"
app:inputType=
"text"
app:inputType=
"text"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintBottom_toBottomOf=
"parent"
app:layout_constraintLeft_toRightOf=
"@id/btn_back"
app:layout_constraintLeft_toRightOf=
"@id/btn_back"
...
@@ -56,7 +56,7 @@
...
@@ -56,7 +56,7 @@
android:text=
"@string/sssku_title"
android:text=
"@string/sssku_title"
android:textColor=
"@color/black_baozheng"
android:textColor=
"@color/black_baozheng"
android:textSize=
"@dimen/all_sub_title_size"
android:textSize=
"@dimen/all_sub_title_size"
android:visibility=
"@{titleMode==1||titleMode==6||titleMode==8||titleMode==9||titleMode==10?
0:8
}"
android:visibility=
"@{titleMode==1||titleMode==6||titleMode==8||titleMode==9||titleMode==10?
View.VISIBLE:View.GONE
}"
app:layout_constraintLeft_toRightOf=
"parent"
app:layout_constraintLeft_toRightOf=
"parent"
app:layout_constraintRight_toLeftOf=
"parent"
/>
app:layout_constraintRight_toLeftOf=
"parent"
/>
...
@@ -84,7 +84,7 @@
...
@@ -84,7 +84,7 @@
android:gravity=
"center"
android:gravity=
"center"
android:padding=
"@dimen/all_margin"
android:padding=
"@dimen/all_margin"
android:src=
"@mipmap/click_down"
android:src=
"@mipmap/click_down"
android:visibility=
"@{titleMode==6?
0:8
}"
android:visibility=
"@{titleMode==6?
View.VISIBLE:View.GONE
}"
app:layout_constraintRight_toRightOf=
"parent"
/>
app:layout_constraintRight_toRightOf=
"parent"
/>
<ImageButton
<ImageButton
...
...
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