Commit 1fd95c8e authored by 姜敏's avatar 姜敏

Merge remote-tracking branch 'origin/master'

parents f70336df 0d777680
...@@ -3,8 +3,6 @@ ...@@ -3,8 +3,6 @@
<component name="ProjectModuleManager"> <component name="ProjectModuleManager">
<modules> <modules>
<module fileurl="file://$PROJECT_DIR$/TangKuPos.iml" filepath="$PROJECT_DIR$/TangKuPos.iml" /> <module fileurl="file://$PROJECT_DIR$/TangKuPos.iml" filepath="$PROJECT_DIR$/TangKuPos.iml" />
<module fileurl="file://C:\Users\JM_DEV\AndroidStudioProjects\TangKuPos2\TangKuPos.iml" filepath="C:\Users\JM_DEV\AndroidStudioProjects\TangKuPos2\TangKuPos.iml" />
<module fileurl="file://D:\Work\Android\AndroidProject\XingData\TangKuPos\TangKuPos2.iml" filepath="D:\Work\Android\AndroidProject\XingData\TangKuPos\TangKuPos2.iml" />
<module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" /> <module fileurl="file://$PROJECT_DIR$/app/app.iml" filepath="$PROJECT_DIR$/app/app.iml" />
</modules> </modules>
</component> </component>
......
...@@ -48,6 +48,7 @@ ...@@ -48,6 +48,7 @@
<activity <activity
android:name=".ui.payment.PaymentActivity" android:name=".ui.payment.PaymentActivity"
android:configChanges="keyboard|orientation|screenSize|keyboardHidden" android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:launchMode="singleTask"
android:windowSoftInputMode="adjustUnspecified|stateHidden" /> android:windowSoftInputMode="adjustUnspecified|stateHidden" />
<activity <activity
android:name=".ui.marketing.integral.IntegralActivity" android:name=".ui.marketing.integral.IntegralActivity"
...@@ -71,6 +72,7 @@ ...@@ -71,6 +72,7 @@
<activity <activity
android:name=".ui.store.StoreActivity" android:name=".ui.store.StoreActivity"
android:configChanges="keyboard|orientation|screenSize|keyboardHidden" android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:launchMode="singleTask"
android:windowSoftInputMode="adjustUnspecified|stateHidden" /> android:windowSoftInputMode="adjustUnspecified|stateHidden" />
<activity <activity
android:name=".ui.announcement.AnnouncementActivity" android:name=".ui.announcement.AnnouncementActivity"
......
...@@ -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();
......
...@@ -682,10 +682,8 @@ public final class ApiFactory { ...@@ -682,10 +682,8 @@ public final class ApiFactory {
.observeOn(AndroidSchedulers.mainThread()); .observeOn(AndroidSchedulers.mainThread());
} }
public static Observable<Pager<com.xingdata.zzdpos.model.Sssku>> querySssku(int pageNum, public static Observable<Pager<com.xingdata.zzdpos.model.Sssku>> querySssku(int pageNum, String keyword, Long skuGrpId) {
String keyword, Long skuGrpId) { return Api.getInstance().service.querySssku(pageNum, C.PRODUCT.PAGE_SIZE, skuGrpId, keyword)
return Api.getInstance().service.querySssku(pageNum, C.PRODUCT.PAGE_SIZE, skuGrpId,
keyword)
.onErrorReturn(new ErrorFilter<>()) .onErrorReturn(new ErrorFilter<>())
.map(new ResultFilter<>()) .map(new ResultFilter<>())
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
...@@ -693,8 +691,7 @@ public final class ApiFactory { ...@@ -693,8 +691,7 @@ public final class ApiFactory {
.retryWhen(new RetryHelper(3)); .retryWhen(new RetryHelper(3));
} }
public static Observable<Pager<com.xingdata.zzdpos.model.Sssku>> querySssku(int pageNum, public static Observable<Pager<com.xingdata.zzdpos.model.Sssku>> querySssku(int pageNum, String keyword) {
String keyword) {
return Api.getInstance().service.querySssku(pageNum, C.PRODUCT.PAGE_SIZE, keyword) return Api.getInstance().service.querySssku(pageNum, C.PRODUCT.PAGE_SIZE, keyword)
.onErrorReturn(new ErrorFilter<>()) .onErrorReturn(new ErrorFilter<>())
.map(new ResultFilter<>()) .map(new ResultFilter<>())
......
...@@ -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) {
......
package com.xingdata.zzdpos.ui.manage.sssku; package com.xingdata.zzdpos.ui.manage.sssku;
import android.view.MotionEvent; import android.view.MotionEvent;
import android.view.inputmethod.EditorInfo;
import com.blankj.utilcode.util.ActivityUtils; import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.KeyboardUtils;
import com.blankj.utilcode.util.StringUtils;
import com.blankj.utilcode.util.ToastUtils; import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.zzdpos.C; import com.xingdata.zzdpos.C;
import com.xingdata.zzdpos.R; 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;
...@@ -54,17 +52,10 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin ...@@ -54,17 +52,10 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
public void initView() { public void initView() {
this.showTitleBarByTitleMode(C.TITLE_MODE.SKU_MANAGER); this.showTitleBarByTitleMode(C.TITLE_MODE.SKU_MANAGER);
this.loadRootFragment(R.id.f_sssku, mManagerFragment); this.loadRootFragment(R.id.f_sssku, mManagerFragment);
mViewBinding.btnBack.setOnClickListener(view -> getTopFragment().onBackPressedSupport()); mViewBinding.btnBack.setOnClickListener(view -> getTopFragment().onBackPressedSupport());
mViewBinding.etSearch.setOnEditorActionListener((textView, i, keyEvent) -> {
if (i == EditorInfo.IME_ACTION_SEARCH && !StringUtils.isEmpty(textView.getText())) {
KeyboardUtils.hideSoftInput(textView);
mPresenter.searchSku(textView.getText().toString());
}
return false;
});
mViewBinding.btnScan.setOnClickListener(view -> mPresenter.clickScan(mViewBinding.getTitleMode())); mViewBinding.btnScan.setOnClickListener(view -> mPresenter.clickScan(mViewBinding.getTitleMode()));
mViewBinding.btnMenu.setOnClickListener(view -> mPresenter.clickSkuMenu()); mViewBinding.btnMenu.setOnClickListener(view -> mPresenter.clickSkuMenu());
mViewBinding.vSearch.setOnSearchListener(keyword -> mPresenter.searchSku(keyword));
} }
@Override @Override
...@@ -77,7 +68,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin ...@@ -77,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);
} }
...@@ -105,7 +96,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin ...@@ -105,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);
} }
...@@ -128,18 +119,17 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin ...@@ -128,18 +119,17 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
@Override @Override
public void showSearchFragment(int searchType) { public void showSearchFragment(int searchType) {
if (mSearchFragment.isAdded()) return; if (mSearchFragment.isAdded()) return;
mViewBinding.etSearch.requestFocus();
KeyboardUtils.showSoftInput(mViewBinding.etSearch);
this.showTitleBarByTitleMode(searchType); this.showTitleBarByTitleMode(searchType);
mViewBinding.vSearch.clear();
mViewBinding.vSearch.showSoftInput();
this.start(mSearchFragment.setKeyword("").setSearchType(searchType)); this.start(mSearchFragment.setKeyword("").setSearchType(searchType));
} }
@Override @Override
public void showSearchFragment(String keyword, int searchType) { public void showSearchFragment(String keyword, int searchType) {
if (mSearchFragment.isAdded()) return; if (mSearchFragment.isAdded()) return;
mViewBinding.etSearch.requestFocus();
KeyboardUtils.showSoftInput(mViewBinding.etSearch);
this.showTitleBarByTitleMode(searchType); this.showTitleBarByTitleMode(searchType);
mViewBinding.vSearch.setText(keyword);
this.start(mSearchFragment.setKeyword(keyword).setSearchType(searchType)); this.start(mSearchFragment.setKeyword(keyword).setSearchType(searchType));
} }
...@@ -162,7 +152,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin ...@@ -162,7 +152,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
mScanFragment.setOnBackPressedListener(this::backToAddFragment); mScanFragment.setOnBackPressedListener(this::backToAddFragment);
break; break;
} }
KeyboardUtils.hideSoftInput(mViewBinding.etSearch); mViewBinding.vSearch.hideSoftInput();
this.start(mScanFragment); this.start(mScanFragment);
} }
...@@ -306,13 +296,13 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin ...@@ -306,13 +296,13 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
private void showTitleBarByTitleMode(int titleMode) { private void showTitleBarByTitleMode(int titleMode) {
if (mViewBinding.getTitleMode() == titleMode) return; if (mViewBinding.getTitleMode() == titleMode) return;
mViewBinding.setTitleMode(titleMode); mViewBinding.setTitleMode(titleMode);
mViewBinding.etSearch.setText(""); mViewBinding.vSearch.clear();
switch (titleMode) { switch (titleMode) {
case C.TITLE_MODE.SKU: case C.TITLE_MODE.SKU:
mViewBinding.etSearch.setHint(R.string.sssku_search_hint); mViewBinding.vSearch.setHint(getString(R.string.sssku_search_hint));
break; break;
case C.TITLE_MODE.PKG: case C.TITLE_MODE.PKG:
mViewBinding.etSearch.setHint(R.string.sssku_search_hint); mViewBinding.vSearch.setHint(getString(R.string.sssku_search_hint));
break; break;
case C.TITLE_MODE.SKU_DETAIL: case C.TITLE_MODE.SKU_DETAIL:
break; break;
...@@ -323,7 +313,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin ...@@ -323,7 +313,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
* 重置搜索栏 * 重置搜索栏
*/ */
private void resetSearchBar() { private void resetSearchBar() {
mViewBinding.etSearch.setText(""); mViewBinding.vSearch.clear();
mViewBinding.clTitle.requestFocus(); mViewBinding.clTitle.requestFocus();
} }
......
...@@ -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);
/** /**
* 加载供应商列表 * 加载供应商列表
......
...@@ -37,7 +37,7 @@ public class SsskuPresenter extends SsskuContract.Presenter { ...@@ -37,7 +37,7 @@ public class SsskuPresenter extends SsskuContract.Presenter {
@Override @Override
public void refreshSku() { public void refreshSku() {
this.mPageNum = 0; this.mPageNum = 1;
this.mSkuGrpId = 0L; this.mSkuGrpId = 0L;
mView.loadSkugrpState(mSkuGrpId); mView.loadSkugrpState(mSkuGrpId);
this.getSku(); this.getSku();
...@@ -62,7 +62,7 @@ public class SsskuPresenter extends SsskuContract.Presenter { ...@@ -62,7 +62,7 @@ public class SsskuPresenter extends SsskuContract.Presenter {
@Override @Override
public void clickSkugrp(Sskugrp sskugrp) { public void clickSkugrp(Sskugrp sskugrp) {
//点击商品管理里的分组 //点击商品管理里的分组
this.mPageNum = 0; this.mPageNum = 1;
this.mSkuGrpId = sskugrp.getSkuGrpId(); this.mSkuGrpId = sskugrp.getSkuGrpId();
mView.loadSkugrpState(mSkuGrpId); mView.loadSkugrpState(mSkuGrpId);
this.getSku(); this.getSku();
...@@ -109,7 +109,7 @@ public class SsskuPresenter extends SsskuContract.Presenter { ...@@ -109,7 +109,7 @@ public class SsskuPresenter extends SsskuContract.Presenter {
@Override @Override
public void searchSku(String keyword) { public void searchSku(String keyword) {
this.mSearchPageNum = 0; this.mSearchPageNum = 1;
this.mKeyword = keyword; this.mKeyword = keyword;
this.getSearchSku(); this.getSearchSku();
} }
...@@ -180,7 +180,7 @@ public class SsskuPresenter extends SsskuContract.Presenter { ...@@ -180,7 +180,7 @@ public class SsskuPresenter extends SsskuContract.Presenter {
public void clickDeleteSkugrp(Sskugrp sskugrp) { public void clickDeleteSkugrp(Sskugrp sskugrp) {
mView.showLoadingDialog(); mView.showLoadingDialog();
if (mSkuGrpId.longValue() == sskugrp.getSkuGrpId()) { if (mSkuGrpId.longValue() == sskugrp.getSkuGrpId()) {
this.mPageNum = 0; this.mPageNum = 1;
this.mSkuGrpId = 0L; this.mSkuGrpId = 0L;
mView.loadSkugrpState(0L); mView.loadSkugrpState(0L);
this.getSku(); this.getSku();
...@@ -305,9 +305,9 @@ public class SsskuPresenter extends SsskuContract.Presenter { ...@@ -305,9 +305,9 @@ public class SsskuPresenter extends SsskuContract.Presenter {
ApiFactory.Sssku.querySssku(mPageNum, "", mSkuGrpId) ApiFactory.Sssku.querySssku(mPageNum, "", mSkuGrpId)
.doOnSubscribe(subscription -> mView.dismissLoadingDialog()) .doOnSubscribe(subscription -> mView.dismissLoadingDialog())
.subscribe(ssskuPager -> { .subscribe(ssskuPager -> {
if (mPageNum == 0 && mSkuGrpId == 0L) if (mPageNum == 1 && mSkuGrpId == 0L)
mView.loadSsskuCount(ssskuPager.getTotalRow()); mView.loadSsskuCount(ssskuPager.getTotalRow());
mView.loadSkus(ssskuPager.getList(), mPageNum == 0); mView.loadSkus(ssskuPager, mPageNum == 1);
}) })
); );
} }
...@@ -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 == 1))
); );
} }
......
...@@ -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();
} }
......
...@@ -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();
} }
......
...@@ -2,9 +2,7 @@ package com.xingdata.zzdpos.ui.marketing.ms; ...@@ -2,9 +2,7 @@ package com.xingdata.zzdpos.ui.marketing.ms;
import android.view.MotionEvent; import android.view.MotionEvent;
import android.view.inputmethod.EditorInfo;
import com.blankj.utilcode.util.KeyboardUtils;
import com.blankj.utilcode.util.ToastUtils; import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.zzdpos.C; import com.xingdata.zzdpos.C;
import com.xingdata.zzdpos.R; import com.xingdata.zzdpos.R;
...@@ -12,6 +10,7 @@ import com.xingdata.zzdpos.base.BaseActivity; ...@@ -12,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;
...@@ -47,13 +46,7 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A ...@@ -47,13 +46,7 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A
this.loadRootFragment(R.id.f_ms, mManagerFragment); this.loadRootFragment(R.id.f_ms, mManagerFragment);
mViewBinding.setTitleMode(C.TITLE_MODE.TEXT); mViewBinding.setTitleMode(C.TITLE_MODE.TEXT);
mViewBinding.btnBack.setOnClickListener(view -> getTopFragment().onBackPressedSupport()); mViewBinding.btnBack.setOnClickListener(view -> getTopFragment().onBackPressedSupport());
mViewBinding.etSearch.setOnEditorActionListener((textView, i, keyEvent) -> { mViewBinding.vSearch.setOnSearchListener(keyword -> mPresenter.clickSearchButton(keyword));
if (i == EditorInfo.IME_ACTION_SEARCH) {
KeyboardUtils.hideSoftInput(textView);
mPresenter.clickSearchButton(textView.getText().toString());
}
return false;
});
} }
@Override @Override
...@@ -66,7 +59,7 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A ...@@ -66,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);
} }
...@@ -92,12 +85,15 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A ...@@ -92,12 +85,15 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A
@Override @Override
public void showSearchFragment(int searchType) { public void showSearchFragment(int searchType) {
this.showTitleBarByTitleMode(searchType); this.showTitleBarByTitleMode(searchType);
mViewBinding.vSearch.clear();
mViewBinding.vSearch.showSoftInput();
this.start(mSearchFragment.setKeyword("").setSearchType(searchType)); this.start(mSearchFragment.setKeyword("").setSearchType(searchType));
} }
@Override @Override
public void showSearchFragment(String keyword, int searchType) { public void showSearchFragment(String keyword, int searchType) {
this.showTitleBarByTitleMode(searchType); this.showTitleBarByTitleMode(searchType);
mViewBinding.vSearch.setText(keyword);
this.start(mSearchFragment.setKeyword(keyword).setSearchType(searchType)); this.start(mSearchFragment.setKeyword(keyword).setSearchType(searchType));
} }
...@@ -196,13 +192,13 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A ...@@ -196,13 +192,13 @@ public class MsActivity<Sku extends BaseSku> extends BaseActivity<MsPresenter, A
private void showTitleBarByTitleMode(int titleMode) { private void showTitleBarByTitleMode(int titleMode) {
if (mViewBinding.getTitleMode() == titleMode) return; if (mViewBinding.getTitleMode() == titleMode) return;
mViewBinding.setTitleMode(titleMode); mViewBinding.setTitleMode(titleMode);
mViewBinding.etSearch.setText(""); mViewBinding.vSearch.clear();
switch (titleMode) { switch (titleMode) {
case C.TITLE_MODE.SKU: case C.TITLE_MODE.SKU:
mViewBinding.etSearch.setHint(R.string.ms_editor_type_gift_search_hint); mViewBinding.vSearch.setHint(getString(R.string.ms_editor_type_gift_search_hint));
break; break;
case C.TITLE_MODE.GIFT: case C.TITLE_MODE.GIFT:
mViewBinding.etSearch.setHint(R.string.ms_editor_type_gift_search_hint); mViewBinding.vSearch.setHint(getString(R.string.ms_editor_type_gift_search_hint));
break; break;
} }
} }
......
...@@ -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);
/** /**
* 显示添加页面 * 显示添加页面
......
...@@ -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)));
} }
......
...@@ -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();
} }
......
...@@ -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);
} }
......
...@@ -5,7 +5,6 @@ import android.support.v7.widget.LinearLayoutManager; ...@@ -5,7 +5,6 @@ import android.support.v7.widget.LinearLayoutManager;
import android.view.View; import android.view.View;
import android.widget.TextView; import android.widget.TextView;
import com.blankj.utilcode.util.KeyboardUtils;
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.FragmentSendTickerVipBinding; import com.xingdata.zzdpos.databinding.FragmentSendTickerVipBinding;
...@@ -13,7 +12,6 @@ import com.xingdata.zzdpos.model.Vip; ...@@ -13,7 +12,6 @@ import com.xingdata.zzdpos.model.Vip;
import com.xingdata.zzdpos.ui.sendticke.SendTicketPresenter; import com.xingdata.zzdpos.ui.sendticke.SendTicketPresenter;
import com.xingdata.zzdpos.ui.sendticke.adapter.VipAdapter; import com.xingdata.zzdpos.ui.sendticke.adapter.VipAdapter;
import com.xingdata.zzdpos.ui.settle.SettleActivity; import com.xingdata.zzdpos.ui.settle.SettleActivity;
import com.xingdata.zzdpos.util.Global;
import com.xingdata.zzdpos.util.OnClickListener; import com.xingdata.zzdpos.util.OnClickListener;
import java.util.List; import java.util.List;
...@@ -66,14 +64,12 @@ public class VipFragment extends BaseFragment<SendTicketPresenter, FragmentSendT ...@@ -66,14 +64,12 @@ public class VipFragment extends BaseFragment<SendTicketPresenter, FragmentSendT
} }
} }
}); });
mViewBinding.etSearch.setOnEditorActionListener((textView, i, keyEvent) -> { mViewBinding.vSearch.setOnSearchListener(keyword -> {
KeyboardUtils.hideSoftInput(textView); mViewBinding.vSearch.hideSoftInput();
mPresenter.searchVip(textView.getText().toString()); mPresenter.searchVip(keyword);
return false;
}); });
Global.setFocus(mViewBinding.etSearch, getActivity()); mViewBinding.vSearch.setHint("请输入会员手机号进行搜索");
// KeyboardUtils.showSoftInput(getActivity()); mViewBinding.vSearch.showSoftInput();
} }
/** /**
......
...@@ -15,6 +15,7 @@ import com.xingdata.zzdpos.model.Ticket; ...@@ -15,6 +15,7 @@ import com.xingdata.zzdpos.model.Ticket;
import com.xingdata.zzdpos.model.Vip; import com.xingdata.zzdpos.model.Vip;
import com.xingdata.zzdpos.ui.dialog.LoadingDialog; import com.xingdata.zzdpos.ui.dialog.LoadingDialog;
import com.xingdata.zzdpos.ui.main.MainActivity; import com.xingdata.zzdpos.ui.main.MainActivity;
import com.xingdata.zzdpos.ui.payment.PaymentActivity;
import com.xingdata.zzdpos.ui.scan.ScanFragment; import com.xingdata.zzdpos.ui.scan.ScanFragment;
import com.xingdata.zzdpos.ui.settle.dialog.PasswordDialog; import com.xingdata.zzdpos.ui.settle.dialog.PasswordDialog;
import com.xingdata.zzdpos.ui.settle.dialog.PayingDialog; import com.xingdata.zzdpos.ui.settle.dialog.PayingDialog;
...@@ -23,13 +24,13 @@ import com.xingdata.zzdpos.ui.settle.fragment.PayResultFragment; ...@@ -23,13 +24,13 @@ import com.xingdata.zzdpos.ui.settle.fragment.PayResultFragment;
import com.xingdata.zzdpos.ui.settle.fragment.SettleFragment; import com.xingdata.zzdpos.ui.settle.fragment.SettleFragment;
import com.xingdata.zzdpos.ui.settle.fragment.TicketFragment; import com.xingdata.zzdpos.ui.settle.fragment.TicketFragment;
import com.xingdata.zzdpos.ui.settle.fragment.VipFragment; import com.xingdata.zzdpos.ui.settle.fragment.VipFragment;
import com.xingdata.zzdpos.ui.store.StoreActivity;
import com.xingdata.zzdpos.util.Global; import com.xingdata.zzdpos.util.Global;
import java.util.List; import java.util.List;
public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettleBinding> public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettleBinding> implements SettleContract.View {
implements SettleContract.View {
private SettleFragment mSettleFragment = new SettleFragment(); private SettleFragment mSettleFragment = new SettleFragment();
...@@ -175,8 +176,8 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle ...@@ -175,8 +176,8 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle
} }
@Override @Override
public void showPaySuccFragment(Saleorder saleorder) { public void showPaySuccFragment(Saleorder saleorder, int settleMode) {
this.start(mPayResultFragment.setResult(true).setSaleorder(saleorder)); this.start(mPayResultFragment.setResult(true).setSaleorder(saleorder).setSettleMode(settleMode));
this.showTitleBarByTitleMode(C.TITLE_MODE.TEXT); this.showTitleBarByTitleMode(C.TITLE_MODE.TEXT);
mViewBinding.tvTitle.setText(R.string.settle_pay_result_title); mViewBinding.tvTitle.setText(R.string.settle_pay_result_title);
mPayingDialog.dismiss(); mPayingDialog.dismiss();
...@@ -200,9 +201,22 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle ...@@ -200,9 +201,22 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle
public void backToSettleFragment() { public void backToSettleFragment() {
this.showTitleBarByTitleMode(C.TITLE_MODE.TEXT); this.showTitleBarByTitleMode(C.TITLE_MODE.TEXT);
mViewBinding.tvTitle.setText(R.string.settle_title); mViewBinding.tvTitle.setText(R.string.settle_title);
mViewBinding.vSearch.hideSoftInput();
this.pop(); this.pop();
} }
@Override
public void backToPaymentActivity() {
ActivityUtils.startActivity(this, MainActivity.class);
ActivityUtils.startActivity(this, PaymentActivity.class);
}
@Override
public void backToStoreActivity() {
ActivityUtils.startActivity(this, MainActivity.class);
ActivityUtils.startActivity(this, StoreActivity.class);
}
@Override @Override
public void backToMainActivity() { public void backToMainActivity() {
ActivityUtils.startActivity(this, MainActivity.class); ActivityUtils.startActivity(this, MainActivity.class);
......
...@@ -114,9 +114,10 @@ interface SettleContract { ...@@ -114,9 +114,10 @@ interface SettleContract {
/** /**
* 显示支付成功界面 * 显示支付成功界面
* *
* @param saleorder 订单信息 * @param saleorder 订单信息
* @param settleMode 结算模式
*/ */
void showPaySuccFragment(Saleorder saleorder); void showPaySuccFragment(Saleorder saleorder, int settleMode);
/** /**
* 显示支付失败界面 * 显示支付失败界面
...@@ -136,6 +137,16 @@ interface SettleContract { ...@@ -136,6 +137,16 @@ interface SettleContract {
*/ */
void backToSettleFragment(); void backToSettleFragment();
/**
* 返回收款页面
*/
void backToPaymentActivity();
/**
* 返回开单页面
*/
void backToStoreActivity();
/** /**
* 返回主页面 * 返回主页面
*/ */
...@@ -267,6 +278,11 @@ interface SettleContract { ...@@ -267,6 +278,11 @@ interface SettleContract {
*/ */
public abstract void clickComplete(); public abstract void clickComplete();
/**
* 支付结果页面 - 继续操作
*/
public abstract void clickContinue();
/** /**
* 支付结果页面 - 重试 * 支付结果页面 - 重试
*/ */
......
...@@ -325,6 +325,18 @@ public class SettlePresenter extends SettleContract.Presenter { ...@@ -325,6 +325,18 @@ public class SettlePresenter extends SettleContract.Presenter {
mView.backToMainActivity(); mView.backToMainActivity();
} }
@Override
public void clickContinue() {
switch (mSettleMode) {
case C.SETTLE_MODE.PAYMENT:
mView.backToPaymentActivity();
break;
case C.SETTLE_MODE.STORE:
mView.backToStoreActivity();
break;
}
}
@Override @Override
public void clickRetry() { public void clickRetry() {
mView.backToSettleFragment(); mView.backToSettleFragment();
...@@ -375,7 +387,7 @@ public class SettlePresenter extends SettleContract.Presenter { ...@@ -375,7 +387,7 @@ public class SettlePresenter extends SettleContract.Presenter {
* 支付成功 * 支付成功
*/ */
private void paySucc(Saleorder saleorder) { private void paySucc(Saleorder saleorder) {
mView.showPaySuccFragment(saleorder); mView.showPaySuccFragment(saleorder, this.mSettleMode);
this.updateHandover(MainPresenter.handoverInfo); this.updateHandover(MainPresenter.handoverInfo);
try { try {
ZX_PrintPOS.getInstance(MainActivity.mainActivity).print(1, saleorder); ZX_PrintPOS.getInstance(MainActivity.mainActivity).print(1, saleorder);
......
...@@ -22,12 +22,9 @@ public class TicketAdapter extends BaseAdapter<Ticket, ItemSettleTicketBinding> ...@@ -22,12 +22,9 @@ public class TicketAdapter extends BaseAdapter<Ticket, ItemSettleTicketBinding>
@Override @Override
protected void convert(ItemSettleTicketBinding mViewBinding, Ticket item) { protected void convert(ItemSettleTicketBinding mViewBinding, Ticket item) {
mViewBinding.tvTicketMoneys.setText(mContext.getResources().getString(R.string.money, mViewBinding.tvTicketMoneys.setText(ConvertUtil.fenToYuanNoPoint(item.getTicketValAmt()));
ConvertUtil.fenToYuanNoPoint(item.getTicketValAmt()))); mViewBinding.tvRule.setText(mContext.getResources().getString(R.string.tv_rule, ConvertUtil.fenToYuanNoPoint(item.getTruleOrderAmt())));
mViewBinding.tvRule.setText(mContext.getResources().getString(R.string.tv_rule, mViewBinding.tvDate.setText(mContext.getResources().getString(R.string.tv_date, TimeUtils.millis2String(item.getTicketExp(), new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()))));
ConvertUtil.fenToYuanNoPoint(item.getTruleOrderAmt())));
mViewBinding.tvDate.setText(mContext.getResources().getString(R.string.tv_date,
TimeUtils.millis2String(item.getTicketExp(), new SimpleDateFormat("yyyy-MM-dd", Locale.getDefault()))));
if (item.isSelected()) { if (item.isSelected()) {
mViewBinding.ivSelect.setImageResource(R.mipmap.but_elect01_stroke); mViewBinding.ivSelect.setImageResource(R.mipmap.but_elect01_stroke);
......
package com.xingdata.zzdpos.ui.settle.fragment; package com.xingdata.zzdpos.ui.settle.fragment;
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.FragmentPayResultBinding; import com.xingdata.zzdpos.databinding.FragmentPayResultBinding;
...@@ -10,6 +11,7 @@ import com.xingdata.zzdpos.ui.settle.SettlePresenter; ...@@ -10,6 +11,7 @@ import com.xingdata.zzdpos.ui.settle.SettlePresenter;
public class PayResultFragment extends BaseFragment<SettlePresenter, FragmentPayResultBinding> { public class PayResultFragment extends BaseFragment<SettlePresenter, FragmentPayResultBinding> {
private boolean mResult; private boolean mResult;
private Saleorder mSaleorder; private Saleorder mSaleorder;
private int mSettleMode;
@Override @Override
public int getLayoutId() { public int getLayoutId() {
...@@ -37,6 +39,19 @@ public class PayResultFragment extends BaseFragment<SettlePresenter, FragmentPay ...@@ -37,6 +39,19 @@ public class PayResultFragment extends BaseFragment<SettlePresenter, FragmentPay
if (mResult) mPresenter.clickComplete(); if (mResult) mPresenter.clickComplete();
else mPresenter.clickRetry(); else mPresenter.clickRetry();
}); });
mViewBinding.btnContinue.setOnClickListener(view -> {
mPresenter.clickContinue();
});
switch (mSettleMode) {
case C.SETTLE_MODE.PAYMENT:
mViewBinding.setStrSettleMode("继续收款");
break;
case C.SETTLE_MODE.STORE:
mViewBinding.setStrSettleMode("继续开单");
break;
}
} }
@Override @Override
...@@ -68,4 +83,15 @@ public class PayResultFragment extends BaseFragment<SettlePresenter, FragmentPay ...@@ -68,4 +83,15 @@ public class PayResultFragment extends BaseFragment<SettlePresenter, FragmentPay
return this; return this;
} }
/**
* 设置结算模式
*
* @param settleMode 结算模式
* @return this
*/
public PayResultFragment setSettleMode(int settleMode) {
this.mSettleMode = settleMode;
return this;
}
} }
...@@ -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("[.]"))
......
...@@ -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);
} }
......
...@@ -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);
/** /**
* 加载订单信息 * 加载订单信息
......
...@@ -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();
} }
......
...@@ -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();
} }
......
...@@ -19,6 +19,11 @@ public class Global { ...@@ -19,6 +19,11 @@ public class Global {
return false; return false;
} }
/**
* 判断sn是否为null
*
* @return
*/
public static boolean isSnNull() { public static boolean isSnNull() {
if (isNull(SystemUtil.getDeviceSN())) { if (isNull(SystemUtil.getDeviceSN())) {
return true; return true;
...@@ -27,6 +32,12 @@ public class Global { ...@@ -27,6 +32,12 @@ public class Global {
} }
} }
/**
* 点击空白隐藏键盘
*
* @param ev
* @param context
*/
public static void clickHideKeyboard(MotionEvent ev, Activity context) { public static void clickHideKeyboard(MotionEvent ev, Activity context) {
if (ev.getAction() == MotionEvent.ACTION_DOWN) { if (ev.getAction() == MotionEvent.ACTION_DOWN) {
View v = context.getCurrentFocus(); View v = context.getCurrentFocus();
...@@ -40,6 +51,12 @@ public class Global { ...@@ -40,6 +51,12 @@ public class Global {
} }
} }
/**
* 设置焦点并弹出键盘
*
* @param view
* @param context
*/
public static void setFocus(View view, Context context) { public static void setFocus(View view, Context context) {
view.setFocusable(true); view.setFocusable(true);
view.setFocusableInTouchMode(true); view.setFocusableInTouchMode(true);
......
...@@ -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 "5484965656"; return "5536bef2";
} }
/** /**
......
...@@ -16,11 +16,18 @@ import com.blankj.utilcode.util.StringUtils; ...@@ -16,11 +16,18 @@ import com.blankj.utilcode.util.StringUtils;
import com.blankj.utilcode.util.ToastUtils; import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.zzdpos.R; import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.databinding.ViewSearchBarBinding; import com.xingdata.zzdpos.databinding.ViewSearchBarBinding;
import com.xingdata.zzdpos.util.Global;
@SuppressLint("AppCompatCustomView") @SuppressLint("AppCompatCustomView")
public class SearchBar extends ConstraintLayout { public class SearchBar extends ConstraintLayout {
private ViewSearchBarBinding mViewBinding; private ViewSearchBarBinding mViewBinding;
private boolean isEmptyEnabled;
public void setEmptyEnabled(boolean emptyEnabled) {
isEmptyEnabled = emptyEnabled;
}
public interface OnSearchListener { public interface OnSearchListener {
void onSearch(String keyword); void onSearch(String keyword);
} }
...@@ -60,7 +67,15 @@ public class SearchBar extends ConstraintLayout { ...@@ -60,7 +67,15 @@ public class SearchBar extends ConstraintLayout {
* 显示软键盘 * 显示软键盘
*/ */
public void showSoftInput() { public void showSoftInput() {
KeyboardUtils.showSoftInput(mViewBinding.etSearch); Global.setFocus(mViewBinding.etSearch, getContext());
// KeyboardUtils.showSoftInput(mViewBinding.etSearch);
}
/**
* 隐藏软键盘
*/
public void hideSoftInput() {
KeyboardUtils.hideSoftInput(mViewBinding.etSearch);
} }
public SearchBar(Context context, AttributeSet attrs) { public SearchBar(Context context, AttributeSet attrs) {
...@@ -68,21 +83,22 @@ public class SearchBar extends ConstraintLayout { ...@@ -68,21 +83,22 @@ public class SearchBar extends ConstraintLayout {
mViewBinding = DataBindingUtil.inflate(LayoutInflater.from(context), R.layout.view_search_bar, this, true); mViewBinding = DataBindingUtil.inflate(LayoutInflater.from(context), R.layout.view_search_bar, this, true);
mViewBinding.etSearch.setOnEditorActionListener((textView, i, keyEvent) -> { mViewBinding.etSearch.setOnEditorActionListener((textView, i, keyEvent) -> {
if (i == EditorInfo.IME_ACTION_SEARCH && !StringUtils.isEmpty(textView.getText())) { if (i == EditorInfo.IME_ACTION_SEARCH) {
String str = mViewBinding.etSearch.getText().toString(); String str = mViewBinding.etSearch.getText().toString();
if (StringUtils.isEmpty(str)) { if (StringUtils.isEmpty(str) && !isEmptyEnabled) {
ToastUtils.showShort("请输入搜索内容"); ToastUtils.showShort("请输入搜索内容");
return false; return true;
} }
KeyboardUtils.hideSoftInput(mViewBinding.etSearch); KeyboardUtils.hideSoftInput(mViewBinding.etSearch);
mOnSearchListener.onSearch(str); mOnSearchListener.onSearch(str);
} }
return false; return true;
}); });
mViewBinding.tvSearch.setOnClickListener(view -> { mViewBinding.tvSearch.setOnClickListener(view -> {
String str = mViewBinding.etSearch.getText().toString(); String str = mViewBinding.etSearch.getText().toString();
if (StringUtils.isEmpty(str)) { if (StringUtils.isEmpty(str) && !isEmptyEnabled) {
ToastUtils.showShort("请输入搜索内容"); ToastUtils.showShort("请输入搜索内容");
this.showSoftInput();
return; return;
} }
KeyboardUtils.hideSoftInput(mViewBinding.etSearch); KeyboardUtils.hideSoftInput(mViewBinding.etSearch);
......
package com.xingdata.zzdpos;
public class zxpay {
static {
System.loadLibrary("jsonpay");
}
public static native String jsonpay(String string);
}
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
<android.support.constraint.ConstraintLayout <android.support.constraint.ConstraintLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
android:animateLayoutChanges="true"
android:background="@color/white_caocao"> android:background="@color/white_caocao">
<ImageButton <ImageButton
...@@ -33,25 +34,16 @@ ...@@ -33,25 +34,16 @@
android:src="@mipmap/back_black" android:src="@mipmap/back_black"
app:layout_constraintLeft_toLeftOf="parent" /> app:layout_constraintLeft_toLeftOf="parent" />
<LinearLayout <com.xingdata.zzdpos.view.SearchBar
android:id="@+id/v_search"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="match_parent" android:layout_height="0dp"
android:layout_marginEnd="@dimen/all_margin" android:visibility="@{titleMode>1?View.VISIBLE:View.INVISIBLE}"
android:visibility="@{titleMode>1?0:8}" app:inputType="text"
app:layout_constraintBottom_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toRightOf="@id/btn_back" app:layout_constraintLeft_toRightOf="@id/btn_back"
app:layout_constraintRight_toRightOf="parent" app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="parent"> app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/et_search"
style="@style/searchBarEditor"
android:layout_width="0dp"
android:layout_weight="1"
android:inputType="text"
android:labelFor="@+id/et_search" />
</LinearLayout>
<TextView <TextView
android:id="@+id/tv_title" android:id="@+id/tv_title"
......
...@@ -20,7 +20,6 @@ ...@@ -20,7 +20,6 @@
<FrameLayout <FrameLayout
android:id="@+id/fragment" android:id="@+id/fragment"
style="@style/xuline_margin"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_gravity="center" android:layout_gravity="center"
......
...@@ -20,6 +20,7 @@ ...@@ -20,6 +20,7 @@
<android.support.constraint.ConstraintLayout <android.support.constraint.ConstraintLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
android:animateLayoutChanges="true"
android:background="@color/white_caocao"> android:background="@color/white_caocao">
<ImageButton <ImageButton
......
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
android:id="@+id/cl_title" android:id="@+id/cl_title"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
android:animateLayoutChanges="true"
android:background="@color/white_caocao" android:background="@color/white_caocao"
android:focusable="true" android:focusable="true"
android:focusableInTouchMode="true"> android:focusableInTouchMode="true">
...@@ -37,25 +38,16 @@ ...@@ -37,25 +38,16 @@
android:src="@mipmap/back_black" android:src="@mipmap/back_black"
app:layout_constraintLeft_toLeftOf="parent" /> app:layout_constraintLeft_toLeftOf="parent" />
<LinearLayout <com.xingdata.zzdpos.view.SearchBar
android:id="@+id/v_search"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="match_parent" android:layout_height="0dp"
android:layout_marginEnd="@dimen/all_margin" android:visibility="@{titleMode==1||titleMode==6||titleMode==8||titleMode==9||titleMode==10?View.GONE:View.VISIBLE}"
android:visibility="@{titleMode==1||titleMode==6||titleMode==8||titleMode==9||titleMode==10?8:0}" app:inputType="text"
app:layout_constraintBottom_toTopOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toRightOf="@id/btn_back" app:layout_constraintLeft_toRightOf="@id/btn_back"
app:layout_constraintRight_toRightOf="parent" app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="parent"> app:layout_constraintTop_toTopOf="parent" />
<EditText
android:id="@+id/et_search"
style="@style/searchBarEditor"
android:layout_width="0dp"
android:layout_weight="1"
android:inputType="text"
android:labelFor="@+id/et_search" />
</LinearLayout>
<TextView <TextView
android:id="@+id/tv_title" android:id="@+id/tv_title"
...@@ -65,7 +57,7 @@ ...@@ -65,7 +57,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" />
...@@ -93,7 +85,7 @@ ...@@ -93,7 +85,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
......
...@@ -4,10 +4,16 @@ ...@@ -4,10 +4,16 @@
<data> <data>
<import type="android.view.View" />
<variable <variable
name="payResult" name="payResult"
type="boolean" /> type="boolean" />
<variable
name="strSettleMode"
type="String" />
</data> </data>
<LinearLayout <LinearLayout
...@@ -62,7 +68,7 @@ ...@@ -62,7 +68,7 @@
android:paddingBottom="@dimen/all_spacing" android:paddingBottom="@dimen/all_spacing"
android:paddingEnd="@dimen/all_margin" android:paddingEnd="@dimen/all_margin"
android:paddingStart="@dimen/all_margin" android:paddingStart="@dimen/all_margin"
android:visibility="@{payResult?0:8}"> android:visibility="@{payResult?View.VISIBLE:View.GONE}">
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
...@@ -87,7 +93,7 @@ ...@@ -87,7 +93,7 @@
android:paddingBottom="@dimen/all_spacing" android:paddingBottom="@dimen/all_spacing"
android:paddingEnd="@dimen/all_margin" android:paddingEnd="@dimen/all_margin"
android:paddingStart="@dimen/all_margin" android:paddingStart="@dimen/all_margin"
android:visibility="@{payResult?0:8}"> android:visibility="@{payResult?View.VISIBLE:View.GONE}">
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
...@@ -168,5 +174,19 @@ ...@@ -168,5 +174,19 @@
android:textColor="@color/white_caocao" android:textColor="@color/white_caocao"
android:textSize="@dimen/all_text_size" /> android:textSize="@dimen/all_text_size" />
<Button
android:id="@+id/btn_continue"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="@dimen/all_margin"
android:layout_marginEnd="@dimen/all_margin"
android:layout_marginStart="@dimen/all_margin"
android:background="@drawable/shape_red_r1_thr"
android:foreground="?android:attr/selectableItemBackground"
android:text="@{strSettleMode}"
android:textColor="@color/red_guanyu"
android:textSize="@dimen/all_text_size"
android:visibility="@{payResult?View.VISIBLE:View.GONE}" />
</LinearLayout> </LinearLayout>
</layout> </layout>
\ No newline at end of file
...@@ -48,29 +48,40 @@ ...@@ -48,29 +48,40 @@
android:src="@mipmap/back_black" android:src="@mipmap/back_black"
app:layout_constraintLeft_toLeftOf="parent"/> app:layout_constraintLeft_toLeftOf="parent"/>
<LinearLayout <!--<LinearLayout-->
<!--android:layout_width="0dp"-->
<!--android:layout_height="match_parent"-->
<!--android:layout_marginEnd="@dimen/all_margin"-->
<!--app:layout_constraintBottom_toTopOf="parent"-->
<!--app:layout_constraintLeft_toRightOf="@id/btn_back"-->
<!--app:layout_constraintRight_toRightOf="parent"-->
<!--app:layout_constraintTop_toBottomOf="parent">-->
<!--<EditText-->
<!--android:id="@+id/et_search"-->
<!--style="@style/searchBarEditor"-->
<!--android:layout_width="0dp"-->
<!--android:layout_weight="1"-->
<!--android:hint="@string/vip_seach_hint"-->
<!--android:inputType="number"-->
<!--android:maxLength="11"-->
<!--android:textColor="@color/black_likui"-->
<!--android:textColorHint="@color/gray_huanggai"-->
<!--android:textSize="@dimen/all_text_size_low"-->
<!--android:visibility="gone"/>-->
<!---->
<!--</LinearLayout>-->
<com.xingdata.zzdpos.view.SearchBar
android:id="@+id/v_search"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="match_parent" android:layout_height="0dp"
android:layout_marginEnd="@dimen/all_margin" android:inputType="number"
app:layout_constraintBottom_toTopOf="parent" android:maxLength="11"
app:hint="@string/store_search_hint"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toRightOf="@id/btn_back" app:layout_constraintLeft_toRightOf="@id/btn_back"
app:layout_constraintRight_toRightOf="parent" app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="parent"> app:layout_constraintTop_toTopOf="parent"/>
<EditText
android:id="@+id/et_search"
style="@style/searchBarEditor"
android:layout_width="0dp"
android:layout_weight="1"
android:hint="@string/vip_seach_hint"
android:inputType="number"
android:maxLength="11"
android:textColor="@color/black_likui"
android:textColorHint="@color/gray_huanggai"
android:textSize="@dimen/all_text_size_low"/>
</LinearLayout>
<View <View
android:layout_width="match_parent" android:layout_width="match_parent"
......
...@@ -246,7 +246,7 @@ ...@@ -246,7 +246,7 @@
<TextView <TextView
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_weight="5" android:layout_weight="4"
android:gravity="start" android:gravity="start"
android:text="@string/cart_amt" android:text="@string/cart_amt"
android:textColor="@color/black_baozheng" android:textColor="@color/black_baozheng"
......
...@@ -66,16 +66,14 @@ ...@@ -66,16 +66,14 @@
<TextView <TextView
android:id="@+id/tv_confirm" android:id="@+id/tv_confirm"
android:layout_width="wrap_content" android:layout_width="@dimen/button2_width"
android:layout_height="wrap_content" android:layout_height="@dimen/button2_height"
android:background="@drawable/shape_red_round_rectangle_more_round" android:background="@drawable/shape_red_round_rectangle_more_round"
android:foreground="?android:attr/selectableItemBackgroundBorderless" android:foreground="?android:attr/actionBarItemBackground"
android:paddingBottom="@dimen/all_spacing" android:gravity="center"
android:paddingEnd="@dimen/all_margin_big"
android:paddingStart="@dimen/all_margin_big"
android:paddingTop="@dimen/all_spacing"
android:text="@string/all_confirm" android:text="@string/all_confirm"
android:textColor="@color/white_caocao" /> android:textColor="@color/white_caocao"
android:textSize="@dimen/all_text_size" />
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
......
...@@ -14,7 +14,11 @@ ...@@ -14,7 +14,11 @@
<RelativeLayout <RelativeLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:orientation="horizontal"> android:orientation="horizontal"
android:paddingBottom="@dimen/all_spacing"
android:paddingEnd="@dimen/all_margin"
android:paddingStart="@dimen/all_margin"
android:paddingTop="@dimen/all_spacing">
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
......
...@@ -5,23 +5,24 @@ ...@@ -5,23 +5,24 @@
<variable <variable
name="onClickListener" name="onClickListener"
type="com.xingdata.zzdpos.util.OnClickListener"/> type="com.xingdata.zzdpos.util.OnClickListener" />
</data> </data>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android" <android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
android:background="@drawable/up_down_line_white_bottom" android:background="@drawable/up_down_line_white_bottom"
android:orientation="horizontal"> android:orientation="horizontal">
<ImageButton <ImageButton
android:id="@+id/iv_back" android:id="@+id/iv_back"
android:layout_width="?attr/actionBarSize" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/transparent" android:background="@color/transparent"
android:onClick="@{onClickListener}" android:onClick="@{onClickListener}"
android:padding="@dimen/all_padding"
android:src="@mipmap/go_back" /> android:src="@mipmap/go_back" />
<TextView <TextView
...@@ -30,13 +31,12 @@ ...@@ -30,13 +31,12 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_centerInParent="true" android:layout_centerInParent="true"
android:text="标题" android:text="标题"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:textColor="@color/black_baozheng" android:textColor="@color/black_baozheng"
android:textSize="@dimen/all_sub_title_size"/> android:textSize="@dimen/all_sub_title_size"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout> </android.support.constraint.ConstraintLayout>
......
...@@ -5,27 +5,27 @@ ...@@ -5,27 +5,27 @@
<variable <variable
name="onClickListener" name="onClickListener"
type="com.xingdata.zzdpos.util.OnClickListener"/> type="com.xingdata.zzdpos.util.OnClickListener" />
</data> </data>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize" android:layout_height="?attr/actionBarSize"
android:background="@drawable/singleline" android:background="@drawable/singleline"
android:orientation="horizontal"> android:orientation="horizontal">
<ImageButton <ImageButton
android:id="@+id/iv_back" android:id="@+id/iv_back"
android:layout_width="?attr/actionBarSize" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/transparent" android:background="@color/transparent"
android:gravity="center" android:gravity="center"
android:onClick="@{onClickListener}" android:onClick="@{onClickListener}"
android:padding="@dimen/all_margin" android:padding="@dimen/all_padding"
android:src="@mipmap/back_white"/> android:src="@mipmap/back_white" />
<TextView <TextView
android:id="@+id/tv_title" android:id="@+id/tv_title"
...@@ -34,8 +34,7 @@ ...@@ -34,8 +34,7 @@
android:layout_centerInParent="true" android:layout_centerInParent="true"
android:text="标题" android:text="标题"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="@dimen/all_sub_title_size" android:textSize="@dimen/all_sub_title_size" />
/>
</RelativeLayout> </RelativeLayout>
......
...@@ -10,9 +10,10 @@ ...@@ -10,9 +10,10 @@
<ImageButton <ImageButton
android:id="@+id/iv_back" android:id="@+id/iv_back"
android:layout_width="?attr/actionBarSize" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@mipmap/go_back" /> android:background="@mipmap/go_back"
android:padding="@dimen/all_padding" />
<TextView <TextView
android:id="@+id/tv_title" android:id="@+id/tv_title"
...@@ -25,10 +26,11 @@ ...@@ -25,10 +26,11 @@
<ImageButton <ImageButton
android:id="@+id/pop_menu" android:id="@+id/pop_menu"
android:layout_width="60dp" android:layout_width="wrap_content"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"
android:background="@mipmap/pop_menu" /> android:background="@mipmap/pop_menu"
android:padding="@dimen/all_padding" />
</RelativeLayout> </RelativeLayout>
......
...@@ -36,6 +36,7 @@ ...@@ -36,6 +36,7 @@
android:background="?attr/actionBarItemBackground" android:background="?attr/actionBarItemBackground"
android:contentDescription="@string/search_clear" android:contentDescription="@string/search_clear"
android:padding="@dimen/all_spacing" android:padding="@dimen/all_spacing"
android:src="@mipmap/ic_clear" android:src="@mipmap/ic_clear"
android:visibility="@{keywordLength>0?View.VISIBLE:View.GONE}" android:visibility="@{keywordLength>0?View.VISIBLE:View.GONE}"
app:layout_constraintBottom_toTopOf="parent" app:layout_constraintBottom_toTopOf="parent"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment