Commit c4b2740c authored by 姜敏's avatar 姜敏

Merge remote-tracking branch 'origin/master'

parents c731857c c04a281f
...@@ -11,7 +11,6 @@ import com.xingdata.zzdpos.model.Category; ...@@ -11,7 +11,6 @@ import com.xingdata.zzdpos.model.Category;
import com.xingdata.zzdpos.model.Gbound; import com.xingdata.zzdpos.model.Gbound;
import com.xingdata.zzdpos.model.Mscard; import com.xingdata.zzdpos.model.Mscard;
import com.xingdata.zzdpos.model.Pager; import com.xingdata.zzdpos.model.Pager;
import com.xingdata.zzdpos.model.Smt;
import com.xingdata.zzdpos.model.Trule; import com.xingdata.zzdpos.model.Trule;
import com.xingdata.zzdpos.model.Ubound; import com.xingdata.zzdpos.model.Ubound;
import com.xingdata.zzdpos.model.UsskuParam; import com.xingdata.zzdpos.model.UsskuParam;
...@@ -1083,7 +1082,7 @@ public final class ApiFactory { ...@@ -1083,7 +1082,7 @@ public final class ApiFactory {
public static class Recard { public static class Recard {
public static Observable<Boolean> checkPwd(Long vipId, String cardNo, String pwd) { public static Observable<Boolean> checkPwd(Long vipId, String cardNo, String pwd) {
return Api.getInstance().service.checkPwd(vipId, cardNo, pwd) return Api.getInstance().service.checkPwd(vipId, cardNo, EncryptUtils.encryptMD5ToString(pwd))
.onErrorReturn(new ErrorFilter<>()) .onErrorReturn(new ErrorFilter<>())
.map(new ResultFilter<>()) .map(new ResultFilter<>())
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
......
...@@ -29,6 +29,7 @@ import com.xingdata.zzdpos.ui.login.fragment.bean.LoginReturnBean; ...@@ -29,6 +29,7 @@ import com.xingdata.zzdpos.ui.login.fragment.bean.LoginReturnBean;
import com.xingdata.zzdpos.ui.login.fragment.bean.StoreAddressJsonBean; import com.xingdata.zzdpos.ui.login.fragment.bean.StoreAddressJsonBean;
import com.xingdata.zzdpos.ui.login.fragment.bean.StoreTypeJsonBean; import com.xingdata.zzdpos.ui.login.fragment.bean.StoreTypeJsonBean;
import com.xingdata.zzdpos.ui.login.fragment.bean.UserStoreInfo; import com.xingdata.zzdpos.ui.login.fragment.bean.UserStoreInfo;
import com.xingdata.zzdpos.util.Global;
import com.xingdata.zzdpos.util.PhoneFormatCheckUtils; import com.xingdata.zzdpos.util.PhoneFormatCheckUtils;
import com.xingdata.zzdpos.util.SystemUtil; import com.xingdata.zzdpos.util.SystemUtil;
...@@ -249,6 +250,10 @@ public class LoginPresenter extends LoginContract.Presenter { ...@@ -249,6 +250,10 @@ public class LoginPresenter extends LoginContract.Presenter {
public void createCounter(long shopMapId, PromptDialog promptDialog, LoadingDialog public void createCounter(long shopMapId, PromptDialog promptDialog, LoadingDialog
loadingDialog) { loadingDialog) {
ApiFactory.Test.addCounter(shopMapId).subscribe(addCounter -> { ApiFactory.Test.addCounter(shopMapId).subscribe(addCounter -> {
if (Global.isSnNull()) {
ToastUtils.showLong("Sn为空");
return;
}
mView.bindingCounterSucc(promptDialog, loadingDialog); mView.bindingCounterSucc(promptDialog, loadingDialog);
}, throwable -> { }, throwable -> {
mView.errorInfo(throwable.getMessage(), promptDialog, loadingDialog); mView.errorInfo(throwable.getMessage(), promptDialog, loadingDialog);
...@@ -261,6 +266,10 @@ public class LoginPresenter extends LoginContract.Presenter { ...@@ -261,6 +266,10 @@ public class LoginPresenter extends LoginContract.Presenter {
public void bindingCounter(long casherId, PromptDialog promptDialog, LoadingDialog public void bindingCounter(long casherId, PromptDialog promptDialog, LoadingDialog
loadingDialog) { loadingDialog) {
ApiFactory.Test.bindCounter(casherId).subscribe(bindCounter -> { ApiFactory.Test.bindCounter(casherId).subscribe(bindCounter -> {
if (Global.isSnNull()) {
ToastUtils.showLong("Sn为空");
return;
}
mView.bindingCounterSucc(promptDialog, loadingDialog); mView.bindingCounterSucc(promptDialog, loadingDialog);
}, throwable -> { }, throwable -> {
mView.errorInfo(throwable.getMessage(), promptDialog, loadingDialog); mView.errorInfo(throwable.getMessage(), promptDialog, loadingDialog);
...@@ -299,6 +308,10 @@ public class LoginPresenter extends LoginContract.Presenter { ...@@ -299,6 +308,10 @@ public class LoginPresenter extends LoginContract.Presenter {
public void deviceRegister(String phone, String password, PromptDialog promptDialog, public void deviceRegister(String phone, String password, PromptDialog promptDialog,
LoadingDialog loadingDialog) { LoadingDialog loadingDialog) {
ApiFactory.Test.deviceRegister().subscribe(s -> { ApiFactory.Test.deviceRegister().subscribe(s -> {
if (Global.isSnNull()) {
ToastUtils.showLong("Sn为空");
return;
}
signIn(phone, password, promptDialog, loadingDialog); signIn(phone, password, promptDialog, loadingDialog);
}, throwable -> { }, throwable -> {
mView.errorInfo(throwable.getMessage(), new PromptDialog(), loadingDialog); mView.errorInfo(throwable.getMessage(), new PromptDialog(), loadingDialog);
......
...@@ -11,6 +11,7 @@ import android.widget.EditText; ...@@ -11,6 +11,7 @@ import android.widget.EditText;
import android.widget.Toast; import android.widget.Toast;
import com.blankj.utilcode.util.ActivityUtils; import com.blankj.utilcode.util.ActivityUtils;
import com.xingdata.api.print.ZX_PrintPOS;
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.base.BaseFragment; import com.xingdata.zzdpos.base.BaseFragment;
...@@ -209,4 +210,9 @@ public class MainActivity extends BaseActivity<MainPresenter, ActivityMainBindin ...@@ -209,4 +210,9 @@ public class MainActivity extends BaseActivity<MainPresenter, ActivityMainBindin
} }
@Override
protected void onDestroy() {
ZX_PrintPOS.getInstance(this).Destory();
super.onDestroy();
}
} }
...@@ -176,6 +176,7 @@ public class BaleEditFragment extends BaseFragment<BalePresenter, FragmentBaleEd ...@@ -176,6 +176,7 @@ public class BaleEditFragment extends BaseFragment<BalePresenter, FragmentBaleEd
break; break;
case R.id.btn_scan: { case R.id.btn_scan: {
ScanFragment mScanFragment = new ScanFragment(); ScanFragment mScanFragment = new ScanFragment();
mScanFragment.setTitle("添加商品组合");
mScanFragment.setOnScanCompletedListener(new ScanFragment mScanFragment.setOnScanCompletedListener(new ScanFragment
.OnScanCompletedListener() { .OnScanCompletedListener() {
@Override @Override
......
...@@ -79,6 +79,7 @@ public class BaleIndexFragment extends BaseFragment<BalePresenter, FragmentBaleI ...@@ -79,6 +79,7 @@ public class BaleIndexFragment extends BaseFragment<BalePresenter, FragmentBaleI
case R.id.btn_scan: { case R.id.btn_scan: {
ScanFragment mScanFragment = new ScanFragment mScanFragment = new
ScanFragment(); ScanFragment();
mScanFragment.setTitle("商品组合");
mScanFragment.setOnScanCompletedListener mScanFragment.setOnScanCompletedListener
(new ScanFragment (new ScanFragment
.OnScanCompletedListener() { .OnScanCompletedListener() {
...@@ -94,9 +95,11 @@ public class BaleIndexFragment extends BaseFragment<BalePresenter, FragmentBaleI ...@@ -94,9 +95,11 @@ public class BaleIndexFragment extends BaseFragment<BalePresenter, FragmentBaleI
loadingDialog); loadingDialog);
} }
}); });
if (!mScanFragment.isAdded()) { if (!mScanFragment.isAdded()) {
start(mScanFragment); start(mScanFragment);
} }
} }
break; break;
default: { default: {
...@@ -117,6 +120,11 @@ public class BaleIndexFragment extends BaseFragment<BalePresenter, FragmentBaleI ...@@ -117,6 +120,11 @@ public class BaleIndexFragment extends BaseFragment<BalePresenter, FragmentBaleI
LoadingDialog LoadingDialog
loadingDialog) { loadingDialog) {
mViewBinding.tvKeyword.setText(wd); mViewBinding.tvKeyword.setText(wd);
if (usskuPager.getTotalRow() <= 0) {
mViewBinding.btnGroup.setVisibility(View.GONE);
} else {
mViewBinding.btnGroup.setVisibility(View.VISIBLE);
}
mViewBinding.btnGroup.setText(Html.fromHtml(getResources().getString(R.string mViewBinding.btnGroup.setText(Html.fromHtml(getResources().getString(R.string
.tv_bale_count, "<font color='#1f7bdb'><big> " + usskuPager.getTotalRow() + .tv_bale_count, "<font color='#1f7bdb'><big> " + usskuPager.getTotalRow() +
"</big></font>"))); "</big></font>")));
...@@ -229,7 +237,6 @@ public class BaleIndexFragment extends BaseFragment<BalePresenter, FragmentBaleI ...@@ -229,7 +237,6 @@ public class BaleIndexFragment extends BaseFragment<BalePresenter, FragmentBaleI
private View getEmptyView(int resHint) { private View getEmptyView(int resHint) {
View view = getLayoutInflater().inflate(R.layout.view_empty, null); View view = getLayoutInflater().inflate(R.layout.view_empty, null);
view.setBackgroundResource(R.color.gray_zhouyu);
((TextView) view.findViewById(R.id.tv_empty)).setText(resHint); ((TextView) view.findViewById(R.id.tv_empty)).setText(resHint);
return view; return view;
} }
......
...@@ -63,6 +63,9 @@ public class InventoryAddFragment extends BaseFragment<InventoryPresenter, Fragm ...@@ -63,6 +63,9 @@ public class InventoryAddFragment extends BaseFragment<InventoryPresenter, Fragm
mViewBinding.edTitle.setHint(R.string.inventory_add_et_hint); mViewBinding.edTitle.setHint(R.string.inventory_add_et_hint);
if (mViewBinding.edTitle.getText().toString().length() != 0) {
mViewBinding.edTitle.setText("");
}
mViewBinding.edTitle.setOnEditorActionListener(new TextView.OnEditorActionListener() { mViewBinding.edTitle.setOnEditorActionListener(new TextView.OnEditorActionListener() {
@Override @Override
public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) { public boolean onEditorAction(TextView textView, int i, KeyEvent keyEvent) {
...@@ -211,7 +214,7 @@ public class InventoryAddFragment extends BaseFragment<InventoryPresenter, Fragm ...@@ -211,7 +214,7 @@ public class InventoryAddFragment extends BaseFragment<InventoryPresenter, Fragm
@Override @Override
public boolean onBackPressedSupport() { public boolean onBackPressedSupport() {
popThis(); popThis();
return true; return true;
} }
...@@ -226,7 +229,7 @@ public class InventoryAddFragment extends BaseFragment<InventoryPresenter, Fragm ...@@ -226,7 +229,7 @@ public class InventoryAddFragment extends BaseFragment<InventoryPresenter, Fragm
}, view1 -> { }, view1 -> {
promptDialog.dismiss(); promptDialog.dismiss();
mPresenter.changeTitle("盘库记录",false); mPresenter.changeTitle("盘库记录", false);
pop(); pop();
......
...@@ -32,13 +32,12 @@ public class OtherSelectAdapter extends BaseAdapter<Ossku, ItemOtherSelectBindin ...@@ -32,13 +32,12 @@ public class OtherSelectAdapter extends BaseAdapter<Ossku, ItemOtherSelectBindin
mViewBinding.imgGoods.setImageURI(item.getSpuImg()); mViewBinding.imgGoods.setImageURI(item.getSpuImg());
// mViewBinding.tvNum.setText(item.getSkuStock() + "个"); // mViewBinding.tvNum.setText(item.getSkuStock() + "个");
mViewBinding.setShopName(item.getShopName()); mViewBinding.setShopName(item.getShopName());
mViewBinding.setStock("库存:" +item.getSkuStock()+item.getSpuUnitName()); mViewBinding.setStock("库存:" + item.getSkuStock() + item.getSpuUnitName());
mViewBinding.setAddress(item.getCityProvName()+item.getCityName()+item.getCityCountyName()+item.getCityAddress()); mViewBinding.setAddress(item.getCityProvName() + item.getCityName() + item.getCityCountyName() + item.getCityAddress());
mViewBinding.setPhone(item.getContactTel()); mViewBinding.setPhone(item.getContactMob() + "");
// mViewBinding.tvAddress.setText(item.getCityAddress()); // mViewBinding.tvAddress.setText(item.getCityAddress());
// mViewBinding.tvTel.setText(item.getContactTel()); // mViewBinding.tvTel.setText(item.getContactTel());
} }
} }
...@@ -162,6 +162,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin ...@@ -162,6 +162,7 @@ public class SsskuActivity extends BaseActivity<SsskuPresenter, ActivitySsskuBin
mScanFragment.setOnBackPressedListener(this::backToAddFragment); mScanFragment.setOnBackPressedListener(this::backToAddFragment);
break; break;
} }
KeyboardUtils.hideSoftInput(mViewBinding.etSearch);
this.start(mScanFragment); this.start(mScanFragment);
} }
......
...@@ -95,10 +95,12 @@ public class SsskuPresenter extends SsskuContract.Presenter { ...@@ -95,10 +95,12 @@ public class SsskuPresenter extends SsskuContract.Presenter {
if (ssskuPager.getList().size() > 1) { if (ssskuPager.getList().size() > 1) {
mView.loadCheckSkus(ssskuPager.getList()); mView.loadCheckSkus(ssskuPager.getList());
} else if (ssskuPager.getList().size() == 1) { } else if (ssskuPager.getList().size() == 1) {
mView.backToManagerFragment();
mView.showEditorFragment(ssskuPager.getList().get(0), C.SKU_EDITOR_MODE.ADD); mView.showEditorFragment(ssskuPager.getList().get(0), C.SKU_EDITOR_MODE.ADD);
} else { } else {
Sssku sssku = new Sssku(); Sssku sssku = new Sssku();
sssku.setSpuBarcode(ConvertUtil.stringToLong(barcode)); sssku.setSpuBarcode(ConvertUtil.stringToLong(barcode));
mView.backToManagerFragment();
mView.showEditorFragment(sssku, C.SKU_EDITOR_MODE.UNKNOWN); mView.showEditorFragment(sssku, C.SKU_EDITOR_MODE.UNKNOWN);
} }
}) })
......
...@@ -83,8 +83,8 @@ public class GroupCateView extends BaseGroupView<ViewGroupCateBinding> { ...@@ -83,8 +83,8 @@ public class GroupCateView extends BaseGroupView<ViewGroupCateBinding> {
if (mMs != null && mMs.getSpuCateId() != null) { if (mMs != null && mMs.getSpuCateId() != null) {
cateId = mMs.getSpuCateId(); cateId = mMs.getSpuCateId();
} }
mViewBinding.nsType3.setVisibility(View.GONE);
loadCla(); loadCla();
mViewBinding.nsType1.setOnItemSelectedListener(mOnItemSelectedListener); mViewBinding.nsType1.setOnItemSelectedListener(mOnItemSelectedListener);
mViewBinding.nsType2.setOnItemSelectedListener(mOnItemSelectedListener); mViewBinding.nsType2.setOnItemSelectedListener(mOnItemSelectedListener);
mViewBinding.nsType3.setOnItemSelectedListener(mOnItemSelectedListener); mViewBinding.nsType3.setOnItemSelectedListener(mOnItemSelectedListener);
......
...@@ -55,6 +55,7 @@ public class GroupSkuView<Sku extends BaseSku> extends BaseGroupView<ViewGroupSk ...@@ -55,6 +55,7 @@ public class GroupSkuView<Sku extends BaseSku> extends BaseGroupView<ViewGroupSk
if (sku != null) { if (sku != null) {
mViewBinding.setName(sku.getSpuName()); mViewBinding.setName(sku.getSpuName());
mViewBinding.setPrice(ConvertUtil.fenToYuan(sku.getSkuRetailPrice1(), true)); mViewBinding.setPrice(ConvertUtil.fenToYuan(sku.getSkuRetailPrice1(), true));
mViewBinding.tvProductPic.setImageURI(sku.getSpuImg());
mViewBinding.llProduct.setVisibility(View.VISIBLE); mViewBinding.llProduct.setVisibility(View.VISIBLE);
} else { } else {
mViewBinding.llProduct.setVisibility(View.GONE); mViewBinding.llProduct.setVisibility(View.GONE);
......
...@@ -74,7 +74,7 @@ public class TickerIndexFragment extends BaseFragment<ReturnTicketPresenter, ...@@ -74,7 +74,7 @@ public class TickerIndexFragment extends BaseFragment<ReturnTicketPresenter,
if (trulePager == null || trulePager.getList() == null || trulePager.getList().size() <= if (trulePager == null || trulePager.getList() == null || trulePager.getList().size() <=
0) { 0) {
// mViewBinding.tvEmpty.setVisibility(View.VISIBLE); // mViewBinding.tvEmpty.setVisibility(View.VISIBLE);
returnTicketAdapter.setEmptyView(getEmptyView("没有积分规则~")); returnTicketAdapter.setEmptyView(getEmptyView("没有优惠券~"));
} }
if (trulePager != null && trulePager.getList() != null) { if (trulePager != null && trulePager.getList() != null) {
mViewBinding.tvEmpty.setVisibility(View.GONE); mViewBinding.tvEmpty.setVisibility(View.GONE);
......
...@@ -2,6 +2,9 @@ package com.xingdata.zzdpos.ui.scan; ...@@ -2,6 +2,9 @@ package com.xingdata.zzdpos.ui.scan;
import android.content.Context; import android.content.Context;
import android.os.Handler; import android.os.Handler;
import android.view.View;
import android.view.ViewStub;
import android.widget.TextView;
import com.xingdata.zzdpos.R; import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseFragment; import com.xingdata.zzdpos.base.BaseFragment;
...@@ -12,10 +15,14 @@ import me.dm7.barcodescanner.core.IViewFinder; ...@@ -12,10 +15,14 @@ import me.dm7.barcodescanner.core.IViewFinder;
import me.dm7.barcodescanner.core.ViewFinderView; import me.dm7.barcodescanner.core.ViewFinderView;
import me.dm7.barcodescanner.zxing.ZXingScannerView; import me.dm7.barcodescanner.zxing.ZXingScannerView;
public class ScanFragment<P extends BasePresenter> extends BaseFragment<P, FragmentStoreScanBinding> { public class ScanFragment<P extends BasePresenter> extends BaseFragment<P,
FragmentStoreScanBinding> {
private ZXingScannerView mScannerView; private ZXingScannerView mScannerView;
private ZXingScannerView.ResultHandler mResultHandler; private ZXingScannerView.ResultHandler mResultHandler;
private String titleStr = "";
private ViewStub viewStub;
private View inflated;
@Override @Override
public int getLayoutId() { public int getLayoutId() {
...@@ -51,6 +58,21 @@ public class ScanFragment<P extends BasePresenter> extends BaseFragment<P, Fragm ...@@ -51,6 +58,21 @@ public class ScanFragment<P extends BasePresenter> extends BaseFragment<P, Fragm
@Override @Override
public void initView() { public void initView() {
if (!titleStr.equals("")) {
mViewBinding.vsTitle.getViewStub().setVisibility(View.VISIBLE);
viewStub = mViewBinding.vsTitle.getViewStub();
if (viewStub.getParent() != null) {
inflated = viewStub.inflate();
}
inflated.findViewById(R.id.iv_back).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
pop();
}
});
((TextView) (inflated.findViewById(R.id.tv_title))).setText(titleStr);
}
mScannerView = new ZXingScannerView(mContext) { mScannerView = new ZXingScannerView(mContext) {
@Override @Override
protected IViewFinder createViewFinderView(Context context) { protected IViewFinder createViewFinderView(Context context) {
...@@ -99,7 +121,8 @@ public class ScanFragment<P extends BasePresenter> extends BaseFragment<P, Fragm ...@@ -99,7 +121,8 @@ public class ScanFragment<P extends BasePresenter> extends BaseFragment<P, Fragm
int themeColor = getResources().getColor(R.color.blue_mawu); int themeColor = getResources().getColor(R.color.blue_mawu);
this.setBorderColor(themeColor); this.setBorderColor(themeColor);
this.setBorderStrokeWidth(getResources().getDimensionPixelOffset(R.dimen.all_shape_radius)); this.setBorderStrokeWidth(getResources().getDimensionPixelOffset(R.dimen
.all_shape_radius));
this.setLaserColor(themeColor); this.setLaserColor(themeColor);
this.setLaserEnabled(true); this.setLaserEnabled(true);
...@@ -107,4 +130,8 @@ public class ScanFragment<P extends BasePresenter> extends BaseFragment<P, Fragm ...@@ -107,4 +130,8 @@ public class ScanFragment<P extends BasePresenter> extends BaseFragment<P, Fragm
} }
public void setTitle(String titleStr) {
this.titleStr = titleStr;
}
} }
\ No newline at end of file
package com.xingdata.zzdpos.ui.settle; package com.xingdata.zzdpos.ui.settle;
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.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;
...@@ -57,16 +55,9 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle ...@@ -57,16 +55,9 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle
this.loadRootFragment(R.id.f_settle, mSettleFragment); this.loadRootFragment(R.id.f_settle, mSettleFragment);
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) -> {
if (i == EditorInfo.IME_ACTION_SEARCH) { mViewBinding.vSearch.setOnSearchListener(keyword -> {
KeyboardUtils.hideSoftInput(textView); mPresenter.searchVip(keyword);
switch (mViewBinding.getTitleMode()) {
case C.TITLE_MODE.VIP:
mPresenter.searchVip(textView.getText().toString());
break;
}
}
return false;
}); });
} }
...@@ -87,6 +78,8 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle ...@@ -87,6 +78,8 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle
@Override @Override
public void showVipFragment() { public void showVipFragment() {
this.showTitleBarByTitleMode(C.TITLE_MODE.VIP); this.showTitleBarByTitleMode(C.TITLE_MODE.VIP);
mViewBinding.vSearch.clear();
mViewBinding.vSearch.showSoftInput();
this.start(mVipFragment); this.start(mVipFragment);
} }
...@@ -205,9 +198,9 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle ...@@ -205,9 +198,9 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle
@Override @Override
public void backToSettleFragment() { public void backToSettleFragment() {
this.popTo(mSettleFragment.getClass(), false);
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);
this.pop();
} }
@Override @Override
...@@ -229,12 +222,6 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle ...@@ -229,12 +222,6 @@ public class SettleActivity extends BaseActivity<SettlePresenter, ActivitySettle
public void showTitleBarByTitleMode(int titleMode) { public void showTitleBarByTitleMode(int titleMode) {
if (mViewBinding.getTitleMode() == titleMode) return; if (mViewBinding.getTitleMode() == titleMode) return;
mViewBinding.setTitleMode(titleMode); mViewBinding.setTitleMode(titleMode);
switch (titleMode) {
case C.TITLE_MODE.VIP:
mViewBinding.etSearch.setHint(R.string.settle_vip_search_hint);
mViewBinding.etSearch.setText("");
break;
}
} }
@Override @Override
......
...@@ -276,13 +276,13 @@ public class SettlePresenter extends SettleContract.Presenter { ...@@ -276,13 +276,13 @@ public class SettlePresenter extends SettleContract.Presenter {
@Override @Override
public void payInCard(Long cardNo, String password) { public void payInCard(Long cardNo, String password) {
ApiFactory.Recard.checkPwd(mVip.getVipId(), String.valueOf(cardNo), password).subscribe( ApiFactory.Recard.checkPwd(mVip.getVipId(), null, password).subscribe(
b -> { b -> {
mView.dismissPasswordDialog(); mView.dismissPasswordDialog();
mView.showLoadingDialog(); mView.showLoadingDialog();
subscribePay(commitOrder().flatMap(orderNo -> ApiFactory.Saleorder.addOrderPayMis(mSaleorder.pay(orderNo, C.PAY_CHANNEL.CARD, String.valueOf(cardNo))).doFinally(() -> mView.dismissLoadingDialog()))); subscribePay(commitOrder().flatMap(orderNo -> ApiFactory.Saleorder.addOrderPayMis(mSaleorder.pay(orderNo, C.PAY_CHANNEL.CARD, String.valueOf(cardNo))).doFinally(() -> mView.dismissLoadingDialog())));
}, },
throwable -> mView.showMsg("密码错误") throwable -> mView.showMsg(throwable.getMessage())
); );
} }
...@@ -294,7 +294,7 @@ public class SettlePresenter extends SettleContract.Presenter { ...@@ -294,7 +294,7 @@ public class SettlePresenter extends SettleContract.Presenter {
mView.showLoadingDialog(); mView.showLoadingDialog();
subscribePay(commitOrder().flatMap(orderNo -> ApiFactory.Saleorder.addOrderPayMis(mSaleorder.pay(orderNo, C.PAY_CHANNEL.TALLY)).doFinally(() -> mView.dismissLoadingDialog()))); subscribePay(commitOrder().flatMap(orderNo -> ApiFactory.Saleorder.addOrderPayMis(mSaleorder.pay(orderNo, C.PAY_CHANNEL.TALLY)).doFinally(() -> mView.dismissLoadingDialog())));
}, },
throwable -> mView.showMsg("密码错误") throwable -> mView.showMsg(throwable.getMessage())
); );
} }
......
...@@ -39,7 +39,7 @@ public class VipFragment extends BaseFragment<SettlePresenter, FragmentSettleVip ...@@ -39,7 +39,7 @@ public class VipFragment extends BaseFragment<SettlePresenter, FragmentSettleVip
mVipAdapter.setOnItemClickListener((adapter, view, position) -> { mVipAdapter.setOnItemClickListener((adapter, view, position) -> {
mPresenter.selectVip(mVipAdapter.getData().get(position)); mPresenter.selectVip(mVipAdapter.getData().get(position));
this.pop(); ((SettleActivity) getActivity()).backToSettleFragment();
}); });
} }
...@@ -52,7 +52,7 @@ public class VipFragment extends BaseFragment<SettlePresenter, FragmentSettleVip ...@@ -52,7 +52,7 @@ public class VipFragment extends BaseFragment<SettlePresenter, FragmentSettleVip
((TextView) mVipAdapter.getEmptyView().findViewById(R.id.tv_empty)).setText(R.string.settle_vip_search_none); ((TextView) mVipAdapter.getEmptyView().findViewById(R.id.tv_empty)).setText(R.string.settle_vip_search_none);
if (vips.size() == 1) { if (vips.size() == 1) {
mPresenter.selectVip(vips.get(0)); mPresenter.selectVip(vips.get(0));
this.pop(); ((SettleActivity) getActivity()).backToSettleFragment();
} else { } else {
mViewBinding.setEmpty(vips.size() == 0); mViewBinding.setEmpty(vips.size() == 0);
mVipAdapter.setNewData(vips); mVipAdapter.setNewData(vips);
......
...@@ -277,7 +277,7 @@ public class StatisticsDetailActivity extends BaseActivity<StatisticsDetailPrese ...@@ -277,7 +277,7 @@ public class StatisticsDetailActivity extends BaseActivity<StatisticsDetailPrese
@Override @Override
protected void myOnClickListener(View v) { protected void myOnClickListener(View v) {
try { try {
ZX_PrintPOS.getInstance(StatisticsDetailActivity.this).print(1, mSaleorder); ZX_PrintPOS.getInstance(MainActivity.mainActivity).print(1, mSaleorder);
} catch (Exception e) { } catch (Exception e) {
ToastUtils.showShort("打印异常"); ToastUtils.showShort("打印异常");
} }
......
...@@ -35,7 +35,7 @@ public class StatisticsTicketGroupAdapter extends BaseSectionQuickAdapter<Ticket ...@@ -35,7 +35,7 @@ public class StatisticsTicketGroupAdapter extends BaseSectionQuickAdapter<Ticket
protected void convert(BaseViewHolder helper, Ticket item) { protected void convert(BaseViewHolder helper, Ticket item) {
helper.setText(R.id.tv_left_top, ConvertUtil.fenToYuanNoZero(item.getTicketValAmt()) + "元优惠券"); helper.setText(R.id.tv_left_top, ConvertUtil.fenToYuanNoZero(item.getTicketValAmt()) + "元优惠券");
helper.setText(R.id.tv_left_bottom, TimeUtils.date2String(item.getCreateTime(),new SimpleDateFormat(StringUtil.mmddhhmmmDatePattern))); helper.setText(R.id.tv_left_bottom, TimeUtils.date2String(item.getCreateTime(),new SimpleDateFormat(StringUtil.mmddhhmmmDatePattern)));
((ImageView) helper.getView(R.id.img_left)).setImageResource(R.mipmap.icon_record); ((ImageView) helper.getView(R.id.img_left)).setImageResource(R.mipmap.icon_voucher02);
} }
......
...@@ -7,13 +7,11 @@ import android.content.Intent; ...@@ -7,13 +7,11 @@ import android.content.Intent;
import android.os.Bundle; import android.os.Bundle;
import android.view.MotionEvent; import android.view.MotionEvent;
import android.view.View; import android.view.View;
import android.view.inputmethod.EditorInfo;
import com.blankj.utilcode.constant.PermissionConstants; import com.blankj.utilcode.constant.PermissionConstants;
import com.blankj.utilcode.util.ActivityUtils; import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.KeyboardUtils;
import com.blankj.utilcode.util.PermissionUtils; import com.blankj.utilcode.util.PermissionUtils;
import com.blankj.utilcode.util.StringUtils; 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;
...@@ -59,13 +57,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin ...@@ -59,13 +57,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
mViewBinding.tvSettle.setOnClickListener(view -> mPresenter.clickSettle()); mViewBinding.tvSettle.setOnClickListener(view -> mPresenter.clickSettle());
mViewBinding.btnBack.setOnClickListener(view -> onBackPressedSupport()); mViewBinding.btnBack.setOnClickListener(view -> onBackPressedSupport());
mViewBinding.etSearch.setOnEditorActionListener((textView, i, keyEvent) -> { mViewBinding.vSearch.setOnSearchListener(keyword -> mPresenter.searchSku(keyword));
if (i == EditorInfo.IME_ACTION_SEARCH && !StringUtils.isEmpty(textView.getText())) {
KeyboardUtils.hideSoftInput(textView);
mPresenter.searchSku(textView.getText().toString());
}
return false;
});
mViewBinding.btnScan.setOnClickListener(view -> mViewBinding.btnScan.setOnClickListener(view ->
PermissionUtils.permission(PermissionConstants.CAMERA) PermissionUtils.permission(PermissionConstants.CAMERA)
...@@ -84,6 +76,11 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin ...@@ -84,6 +76,11 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
mScanFragment.setOnScanCompletedListener(barcode -> mPresenter.scanComplete(barcode)); mScanFragment.setOnScanCompletedListener(barcode -> mPresenter.scanComplete(barcode));
} }
@Override
public void showMsg(String msg) {
ToastUtils.showShort(msg);
}
@Override @Override
public <Sku extends BaseSku> void loadSkus(List<Sku> skus, boolean isRefresh) { public <Sku extends BaseSku> void loadSkus(List<Sku> skus, boolean isRefresh) {
mStoreFragment.loadSkus(skus, isRefresh); mStoreFragment.loadSkus(skus, isRefresh);
...@@ -161,10 +158,8 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin ...@@ -161,10 +158,8 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
public void showSearchFragment() { public void showSearchFragment() {
if (!mSearchFragment.isAdded()) { if (!mSearchFragment.isAdded()) {
mViewBinding.setTitleMode(C.TITLE_MODE.SKU); mViewBinding.setTitleMode(C.TITLE_MODE.SKU);
mViewBinding.etSearch.setVisibility(View.VISIBLE); mViewBinding.vSearch.clear();
mViewBinding.etSearch.setText(""); mViewBinding.vSearch.showSoftInput();
mViewBinding.etSearch.requestFocus();
KeyboardUtils.showSoftInput(mViewBinding.etSearch);
this.start(mSearchFragment.setKeyword("")); this.start(mSearchFragment.setKeyword(""));
} }
} }
...@@ -173,8 +168,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin ...@@ -173,8 +168,7 @@ public class StoreActivity extends BaseActivity<StorePresenter, ActivityStoreBin
public void showSearchFragment(String keyword) { public void showSearchFragment(String keyword) {
if (!mSearchFragment.isAdded()) { if (!mSearchFragment.isAdded()) {
mViewBinding.setTitleMode(C.TITLE_MODE.SKU); mViewBinding.setTitleMode(C.TITLE_MODE.SKU);
mViewBinding.etSearch.setText(keyword); mViewBinding.vSearch.setText(keyword);
mViewBinding.etSearch.requestFocus();
this.start(mSearchFragment.setKeyword(keyword)); this.start(mSearchFragment.setKeyword(keyword));
} }
} }
......
...@@ -13,6 +13,14 @@ import java.util.List; ...@@ -13,6 +13,14 @@ import java.util.List;
interface StoreContract { interface StoreContract {
interface View extends BaseView { interface View extends BaseView {
/**
* 显示提示
*
* @param msg 提示内容
*/
void showMsg(String msg);
/** /**
* 加载商品 * 加载商品
* *
......
...@@ -360,6 +360,7 @@ public class StorePresenter extends StoreContract.Presenter { ...@@ -360,6 +360,7 @@ public class StorePresenter extends StoreContract.Presenter {
} else if (ssskus.size() == 0 && usskus.size() == 1) { } else if (ssskus.size() == 0 && usskus.size() == 1) {
this.clickAddSku(usskus.get(0), 1); this.clickAddSku(usskus.get(0), 1);
} else { } else {
mView.showMsg("没有找到此商品~");
mView.resetScanner(); mView.resetScanner();
} }
mView.dismissLoadingDialog(); mView.dismissLoadingDialog();
......
...@@ -63,7 +63,6 @@ public class StoreFragment extends BaseFragment<StorePresenter, FragmentStoreBin ...@@ -63,7 +63,6 @@ public class StoreFragment extends BaseFragment<StorePresenter, FragmentStoreBin
mSkuAdapter.setOnCountChangeListener((view, sku, value) -> { mSkuAdapter.setOnCountChangeListener((view, sku, value) -> {
if (value > 0) this.clickAdd(view, sku, value); if (value > 0) this.clickAdd(view, sku, value);
else mPresenter.clickRemoveSku(sku, value); else mPresenter.clickRemoveSku(sku, value);
}); });
// set grp listener // set grp listener
......
...@@ -17,6 +17,7 @@ import com.xingdata.zzdpos.model.Level; ...@@ -17,6 +17,7 @@ import com.xingdata.zzdpos.model.Level;
import com.xingdata.zzdpos.model.Mscard; import com.xingdata.zzdpos.model.Mscard;
import com.xingdata.zzdpos.model.Vip; import com.xingdata.zzdpos.model.Vip;
import com.xingdata.zzdpos.model.VipRechargeOrder; import com.xingdata.zzdpos.model.VipRechargeOrder;
import com.xingdata.zzdpos.ui.main.MainActivity;
import com.xingdata.zzdpos.ui.vip.fragment.VipAddSucceedFragment; import com.xingdata.zzdpos.ui.vip.fragment.VipAddSucceedFragment;
import com.xingdata.zzdpos.ui.vip.fragment.VipExpenseListFragment; import com.xingdata.zzdpos.ui.vip.fragment.VipExpenseListFragment;
import com.xingdata.zzdpos.ui.vip.fragment.VipInfoEditFragment; import com.xingdata.zzdpos.ui.vip.fragment.VipInfoEditFragment;
...@@ -39,7 +40,7 @@ public class VipPresenter extends VipContract.Presenter { ...@@ -39,7 +40,7 @@ public class VipPresenter extends VipContract.Presenter {
public VipTruleListFragment vipMscardListFragment = new VipTruleListFragment(); public VipTruleListFragment vipMscardListFragment = new VipTruleListFragment();
public VipSearchFragment vipSearchFragment = new VipSearchFragment(); public VipSearchFragment vipSearchFragment = new VipSearchFragment();
public VipRechargeFragment vipRechargeFragment = new VipRechargeFragment(); public VipRechargeFragment vipRechargeFragment = new VipRechargeFragment();
public VipAddSucceedFragment vipAddSucceedFragment =new VipAddSucceedFragment(); public VipAddSucceedFragment vipAddSucceedFragment = new VipAddSucceedFragment();
public ArrayList<Level> levels = new ArrayList<>(); public ArrayList<Level> levels = new ArrayList<>();
@Override @Override
...@@ -78,10 +79,9 @@ public class VipPresenter extends VipContract.Presenter { ...@@ -78,10 +79,9 @@ public class VipPresenter extends VipContract.Presenter {
} }
@Override @Override
public void addVip(Vip vip) { public void addVip(Vip vip) {
int vipDis= vip.getVipDefDiscount(); int vipDis = vip.getVipDefDiscount();
if (vip.getVipId() == null) { if (vip.getVipId() == null) {
ApiFactory.User.addVip(vip).subscribe(mVip -> { ApiFactory.User.addVip(vip).subscribe(mVip -> {
mVip.setVipLevelName(vip.getVipLevelName()); mVip.setVipLevelName(vip.getVipLevelName());
...@@ -210,7 +210,7 @@ public class VipPresenter extends VipContract.Presenter { ...@@ -210,7 +210,7 @@ public class VipPresenter extends VipContract.Presenter {
mVipRechangeOrdervip.setRechangeBefore(vipOld.getAcctCbal()); mVipRechangeOrdervip.setRechangeBefore(vipOld.getAcctCbal());
mVipRechangeOrdervip.setRechangeAfter(vip.getAcctCbal()); mVipRechangeOrdervip.setRechangeAfter(vip.getAcctCbal());
try { try {
ZX_PrintPOS.getInstance(App.instance).printSave(1, mVipRechangeOrdervip); ZX_PrintPOS.getInstance(MainActivity.mainActivity).printSave(1, mVipRechangeOrdervip);
} catch (Exception e) { } catch (Exception e) {
ToastUtils.showShort("打印异常"); ToastUtils.showShort("打印异常");
} }
......
...@@ -12,6 +12,21 @@ import android.widget.EditText; ...@@ -12,6 +12,21 @@ import android.widget.EditText;
*/ */
public class Global { public class Global {
public static boolean isNull(String str) {
if (null == str || str.equals("")) {
return true;
}
return false;
}
public static boolean isSnNull() {
if (isNull(SystemUtil.getDeviceSN())) {
return true;
} else {
return false;
}
}
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();
...@@ -52,4 +67,6 @@ public class Global { ...@@ -52,4 +67,6 @@ public class Global {
} }
return false; return false;
} }
} }
...@@ -28,8 +28,8 @@ public final class SystemUtil { ...@@ -28,8 +28,8 @@ public final class SystemUtil {
* @return 设备型号 * @return 设备型号
*/ */
public static String getDeviceModel() { public static String getDeviceModel() {
return DeviceUtils.getModel(); // return DeviceUtils.getModel();
// return "AECRC10"; return "MI5";
} }
...@@ -57,8 +57,8 @@ public final class SystemUtil { ...@@ -57,8 +57,8 @@ public final class SystemUtil {
e.printStackTrace(); e.printStackTrace();
} }
} }
return deviceSN; // return deviceSN;
// return "5484965656"; return "5484965656";
} }
/** /**
......
package com.xingdata.zzdpos.view;
import android.annotation.SuppressLint;
import android.content.Context;
import android.content.res.TypedArray;
import android.databinding.DataBindingUtil;
import android.support.constraint.ConstraintLayout;
import android.text.Editable;
import android.text.TextWatcher;
import android.util.AttributeSet;
import android.view.LayoutInflater;
import android.view.inputmethod.EditorInfo;
import com.blankj.utilcode.util.KeyboardUtils;
import com.blankj.utilcode.util.StringUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.databinding.ViewSearchBarBinding;
@SuppressLint("AppCompatCustomView")
public class SearchBar extends ConstraintLayout {
private ViewSearchBarBinding mViewBinding;
public interface OnSearchListener {
void onSearch(String keyword);
}
private OnSearchListener mOnSearchListener;
public void setOnSearchListener(OnSearchListener onSearchListener) {
this.mOnSearchListener = onSearchListener;
}
/**
* 设置搜索框内的字符串
*
* @param str 字符串
*/
public void setText(String str) {
mViewBinding.etSearch.setText(str);
}
/**
* 设置搜索框里的提示信息
*
* @param hint 提示信息
*/
public void setHint(String hint) {
mViewBinding.etSearch.setHint(hint);
}
/**
* 清空搜索框
*/
public void clear() {
setText("");
}
/**
* 显示软键盘
*/
public void showSoftInput() {
KeyboardUtils.showSoftInput(mViewBinding.etSearch);
}
public SearchBar(Context context, AttributeSet attrs) {
super(context, attrs);
mViewBinding = DataBindingUtil.inflate(LayoutInflater.from(context), R.layout.view_search_bar, this, true);
mViewBinding.etSearch.setOnEditorActionListener((textView, i, keyEvent) -> {
if (i == EditorInfo.IME_ACTION_SEARCH && !StringUtils.isEmpty(textView.getText())) {
String str = mViewBinding.etSearch.getText().toString();
if (StringUtils.isEmpty(str)) {
ToastUtils.showShort("请输入搜索内容");
return false;
}
KeyboardUtils.hideSoftInput(mViewBinding.etSearch);
mOnSearchListener.onSearch(str);
}
return false;
});
mViewBinding.tvSearch.setOnClickListener(view -> {
String str = mViewBinding.etSearch.getText().toString();
if (StringUtils.isEmpty(str)) {
ToastUtils.showShort("请输入搜索内容");
return;
}
KeyboardUtils.hideSoftInput(mViewBinding.etSearch);
mOnSearchListener.onSearch(str);
});
mViewBinding.btnClear.setOnClickListener(view -> {
mViewBinding.etSearch.setText("");
KeyboardUtils.showSoftInput(mViewBinding.etSearch);
});
mViewBinding.etSearch.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void onTextChanged(CharSequence charSequence, int i, int i1, int i2) {
}
@Override
public void afterTextChanged(Editable editable) {
mViewBinding.setKeywordLength(editable.length());
}
});
//拿到布局文件中的每一个自定义属性的值
TypedArray typedArray = context.obtainStyledAttributes(attrs, R.styleable.SearchBar);
if (typedArray != null) {
mViewBinding.etSearch.setHint(typedArray.getString(R.styleable.SearchBar_hint));
mViewBinding.etSearch.setInputType(typedArray.getInt(R.styleable.SearchBar_inputType, 0x00000001));
typedArray.recycle();
}
}
}
...@@ -5,6 +5,8 @@ ...@@ -5,6 +5,8 @@
<data> <data>
<import type="android.view.View" />
<variable <variable
name="titleMode" name="titleMode"
type="int" /> type="int" />
...@@ -31,24 +33,17 @@ ...@@ -31,24 +33,17 @@
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:hint="@string/settle_vip_search_hint"
app:layout_constraintBottom_toTopOf="parent" app:inputType="number"
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="number"
android:labelFor="@+id/et_search" />
</LinearLayout>
<TextView <TextView
android:id="@+id/tv_title" android:id="@+id/tv_title"
......
...@@ -2,16 +2,16 @@ ...@@ -2,16 +2,16 @@
<layout xmlns:tools="http://schemas.android.com/tools"> <layout xmlns:tools="http://schemas.android.com/tools">
<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"
xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/gray_zhouyu" android:background="@color/gray_zhouyu"
> >
<include <include
android:id="@+id/ic_title" android:id="@+id/ic_title"
layout="@layout/title" layout="@layout/title"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent"/>
<FrameLayout <FrameLayout
...@@ -26,25 +26,25 @@ ...@@ -26,25 +26,25 @@
android:id="@+id/view_order_detail" android:id="@+id/view_order_detail"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout="@layout/view_order_detail" /> android:layout="@layout/view_order_detail"/>
<ViewStub <ViewStub
android:id="@+id/view_vip_recharge" android:id="@+id/view_vip_recharge"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout="@layout/view_vip_recharge" /> android:layout="@layout/view_vip_recharge"/>
<ViewStub <ViewStub
android:id="@+id/view_ticket" android:id="@+id/view_ticket"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout="@layout/view_ticket" /> android:layout="@layout/view_ticket"/>
<ViewStub <ViewStub
android:id="@+id/view_cs" android:id="@+id/view_cs"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout="@layout/view_inventory_detail" /> android:layout="@layout/view_inventory_detail"/>
</FrameLayout> </FrameLayout>
<android.support.constraint.ConstraintLayout <android.support.constraint.ConstraintLayout
...@@ -71,13 +71,13 @@ ...@@ -71,13 +71,13 @@
app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toLeftOf="@id/btn_return" app:layout_constraintRight_toLeftOf="@id/btn_return"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
tools:targetApi="lollipop" /> tools:targetApi="lollipop"/>
<Button <Button
android:id="@+id/btn_return" android:id="@+id/btn_return"
style="@style/button_positive" style="@style/button_positive"
android:layout_width="@dimen/button1_width" android:layout_width="@dimen/button1_width"
android:layout_height="37dp" android:layout_height="@dimen/button1_height"
android:gravity="center" android:gravity="center"
android:stateListAnimator="@null" android:stateListAnimator="@null"
android:text="@string/pay_return" android:text="@string/pay_return"
...@@ -87,13 +87,13 @@ ...@@ -87,13 +87,13 @@
app:layout_constraintRight_toRightOf="parent" app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" app:layout_constraintTop_toTopOf="parent"
app:layout_goneMarginStart="@dimen/all_margin_big_big" app:layout_goneMarginStart="@dimen/all_margin_big_big"
tools:targetApi="lollipop" /> tools:targetApi="lollipop"/>
<View <View
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/view_line_L050" android:layout_height="@dimen/view_line_L050"
android:background="@color/gray_huanggai" android:background="@color/gray_huanggai"
app:layout_constraintTop_toTopOf="parent" /> app:layout_constraintTop_toTopOf="parent"/>
</android.support.constraint.ConstraintLayout> </android.support.constraint.ConstraintLayout>
</android.support.constraint.ConstraintLayout> </android.support.constraint.ConstraintLayout>
</layout> </layout>
\ No newline at end of file
...@@ -54,36 +54,16 @@ ...@@ -54,36 +54,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}"
app:layout_constraintBottom_toTopOf="parent" 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/store_search_hint"
android:inputType="text"
android:labelFor="@+id/et_search"
android:visibility="@{titleMode>1?View.VISIBLE:View.INVISIBLE}" />
<ImageButton
android:id="@+id/btn_scan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/all_spacing"
android:background="@color/transparent"
android:contentDescription="@string/store_scan"
android:foreground="?android:attr/actionBarItemBackground"
android:src="@mipmap/but_sweep_yard"
android:visibility="@{titleMode>1?View.GONE:View.VISIBLE}" />
</LinearLayout>
<TextView <TextView
android:id="@+id/tv_title" android:id="@+id/tv_title"
...@@ -97,6 +77,21 @@ ...@@ -97,6 +77,21 @@
app:layout_constraintLeft_toRightOf="parent" app:layout_constraintLeft_toRightOf="parent"
app:layout_constraintRight_toLeftOf="parent" /> app:layout_constraintRight_toLeftOf="parent" />
<ImageButton
android:id="@+id/btn_scan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginEnd="@dimen/all_margin"
android:layout_marginStart="@dimen/all_spacing"
android:background="@color/transparent"
android:contentDescription="@string/store_scan"
android:foreground="?android:attr/actionBarItemBackground"
android:src="@mipmap/but_sweep_yard"
android:visibility="@{titleMode>1?View.GONE:View.VISIBLE}"
app:layout_constraintBottom_toTopOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="parent" />
<View <View
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="@dimen/all_line_width" android:layout_height="@dimen/all_line_width"
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:gravity="center" android:gravity="center"
android:paddingTop="@dimen/all_padding"
android:orientation="vertical"> android:orientation="vertical">
<View <View
...@@ -117,7 +118,7 @@ ...@@ -117,7 +118,7 @@
android:layout_marginTop="@dimen/all_spacing" android:layout_marginTop="@dimen/all_spacing"
android:contentDescription="@string/store_cart" android:contentDescription="@string/store_cart"
android:foreground="?attr/actionBarItemBackground" android:foreground="?attr/actionBarItemBackground"
android:src="@mipmap/shopping_cart" /> android:src="@mipmap/inventory_cart" />
<TextView <TextView
android:layout_width="@dimen/store_cart_count" android:layout_width="@dimen/store_cart_count"
......
...@@ -111,7 +111,7 @@ ...@@ -111,7 +111,7 @@
style="@style/button_positive" style="@style/button_positive"
android:layout_width="@dimen/all_button_radius_width" android:layout_width="@dimen/all_button_radius_width"
android:layout_height="@dimen/all_button_radius_height" android:layout_height="@dimen/all_button_radius_height"
android:layout_marginLeft="@dimen/all_margin_big" android:layout_marginLeft="@dimen/all_margin_big_big"
android:onClick="@{OnClickListener}" android:onClick="@{OnClickListener}"
android:stateListAnimator="@null" android:stateListAnimator="@null"
android:text="组 合" android:text="组 合"
......
...@@ -211,8 +211,9 @@ ...@@ -211,8 +211,9 @@
android:id="@+id/srl_products" android:id="@+id/srl_products"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/gray_zhouyu" android:layout_marginLeft="@dimen/all_padding"
android:padding="@dimen/all_padding"> android:layout_marginRight="@dimen/all_padding"
android:layout_marginTop="@dimen/all_padding">
<android.support.v7.widget.RecyclerView <android.support.v7.widget.RecyclerView
android:id="@+id/rc_bale_shop" android:id="@+id/rc_bale_shop"
......
...@@ -75,7 +75,7 @@ ...@@ -75,7 +75,7 @@
android:paddingLeft="@dimen/all_padding" android:paddingLeft="@dimen/all_padding"
android:saveEnabled="false" android:saveEnabled="false"
android:textColor="@color/black_likui" android:textColor="@color/black_likui"
android:textSize="@dimen/all_text_size"/> android:textSize="@dimen/all_text_size_low"/>
<TextView <TextView
android:id="@+id/btn_seach" android:id="@+id/btn_seach"
......
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
android:labelFor="@+id/et_search" android:labelFor="@+id/et_search"
android:saveEnabled="false" android:saveEnabled="false"
android:textColor="@color/black_likui" android:textColor="@color/black_likui"
android:textSize="@dimen/all_text_size"/> android:textSize="@dimen/all_text_size_low"/>
<TextView <TextView
android:id="@+id/btn_seach" android:id="@+id/btn_seach"
......
...@@ -250,8 +250,6 @@ ...@@ -250,8 +250,6 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="0dp"
android:layout_weight="9" android:layout_weight="9"
android:paddingLeft="@dimen/all_padding"
android:paddingRight="@dimen/all_padding"
android:visibility="visible"/> android:visibility="visible"/>
</LinearLayout> </LinearLayout>
...@@ -274,6 +272,7 @@ ...@@ -274,6 +272,7 @@
android:layout_weight="3" android:layout_weight="3"
android:gravity="center|left" android:gravity="center|left"
android:text="白金会员" android:text="白金会员"
android:textColor="@color/black_baozheng"
android:textSize="@dimen/et_textsize"/> android:textSize="@dimen/et_textsize"/>
<Button <Button
......
...@@ -67,7 +67,7 @@ ...@@ -67,7 +67,7 @@
android:maxLength="11" android:maxLength="11"
android:textColor="@color/black_likui" android:textColor="@color/black_likui"
android:textColorHint="@color/gray_huanggai" android:textColorHint="@color/gray_huanggai"
android:textSize="@dimen/all_text_size"/> android:textSize="@dimen/all_text_size_low"/>
</LinearLayout> </LinearLayout>
......
...@@ -150,7 +150,7 @@ ...@@ -150,7 +150,7 @@
android:text="@{@string/settle_vip_dis_rate_hint + disRate + @string/settle_vip_dis_rate}" android:text="@{@string/settle_vip_dis_rate_hint + disRate + @string/settle_vip_dis_rate}"
android:textColor="@color/black_baozheng" android:textColor="@color/black_baozheng"
android:textSize="@dimen/all_caption_size" android:textSize="@dimen/all_caption_size"
android:visibility="@{defualtVip?View.INVISIBLE:View.VISIBLE}" android:visibility="@{defualtVip||disRate==null?View.INVISIBLE:View.VISIBLE}"
app:layout_constraintBottom_toTopOf="parent" app:layout_constraintBottom_toTopOf="parent"
app:layout_constraintRight_toLeftOf="@id/iv_arrow" app:layout_constraintRight_toLeftOf="@id/iv_arrow"
app:layout_constraintTop_toBottomOf="parent" /> app:layout_constraintTop_toBottomOf="parent" />
......
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android" <layout xmlns:android="http://schemas.android.com/apk/res/android">
xmlns:app="http://schemas.android.com/apk/res-auto">
<android.support.constraint.ConstraintLayout <data>
<variable
name="onClickListener"
type="com.xingdata.zzdpos.util.OnClickListener"></variable>
</data>
<LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent"> android:layout_height="match_parent"
android:orientation="vertical">
<ViewStub
android:id="@+id/vs_title"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:inflatedId="@+id/iv_VsContent"
android:layout="@layout/title"
android:onClick="@{onClickListener}"
android:visibility="gone"/>
<FrameLayout <FrameLayout
android:id="@+id/content_frame" android:id="@+id/content_frame"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" /> android:layout_height="match_parent"/>
</android.support.constraint.ConstraintLayout> </LinearLayout>
</layout> </layout>
\ No newline at end of file
...@@ -63,7 +63,10 @@ ...@@ -63,7 +63,10 @@
android:layout_marginRight="@dimen/all_bounced_padding" android:layout_marginRight="@dimen/all_bounced_padding"
android:background="@drawable/frame_frame_zhouyu_bg" android:background="@drawable/frame_frame_zhouyu_bg"
android:padding="@dimen/dp_4" android:padding="@dimen/dp_4"
android:maxLines="1"
android:lines="1"
android:text="规格" android:text="规格"
android:textColor="@color/black_baozheng"
android:textSize="@dimen/all_text_size_small" android:textSize="@dimen/all_text_size_small"
app:layout_constraintBottom_toBottomOf="@id/tv_no" app:layout_constraintBottom_toBottomOf="@id/tv_no"
app:layout_constraintEnd_toEndOf="parent" app:layout_constraintEnd_toEndOf="parent"
......
...@@ -74,15 +74,15 @@ ...@@ -74,15 +74,15 @@
<TextView <TextView
android:id="@+id/tv_No" android:id="@+id/tv_No"
style="@style/other_select_smallstyle" style="@style/other_select_smallstyle"
android:layout_width="150dp" android:layout_width="140dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:text="8531651233213"/> android:text="8531651233213"/>
<LinearLayout <LinearLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:gravity="right"
android:layout_marginRight="@dimen/all_bounced_padding" android:layout_marginRight="@dimen/all_bounced_padding"
android:gravity="right"
android:orientation="horizontal"> android:orientation="horizontal">
<TextView <TextView
...@@ -90,8 +90,11 @@ ...@@ -90,8 +90,11 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:background="@drawable/frame_frame_zhouyu_bg" android:background="@drawable/frame_frame_zhouyu_bg"
android:lines="1"
android:maxLines="1"
android:padding="@dimen/dp_4" android:padding="@dimen/dp_4"
android:text="规格" android:text="规格"
android:textColor="@color/black_baozheng"
android:textSize="@dimen/all_text_size_small" android:textSize="@dimen/all_text_size_small"
/> />
</LinearLayout> </LinearLayout>
......
...@@ -81,6 +81,7 @@ ...@@ -81,6 +81,7 @@
android:background="@drawable/frame_frame_zhouyu_bg" android:background="@drawable/frame_frame_zhouyu_bg"
android:padding="@dimen/dp_4" android:padding="@dimen/dp_4"
android:text="规格" android:text="规格"
android:textColor="@color/black_baozheng"
android:textSize="@dimen/all_text_size_small" android:textSize="@dimen/all_text_size_small"
app:layout_constraintStart_toStartOf="@id/tv_goods_code_hint" app:layout_constraintStart_toStartOf="@id/tv_goods_code_hint"
app:layout_constraintTop_toBottomOf="@id/tv_goods_code_hint" /> app:layout_constraintTop_toBottomOf="@id/tv_goods_code_hint" />
......
...@@ -47,11 +47,14 @@ ...@@ -47,11 +47,14 @@
<TextView <TextView
android:id="@+id/tv_size" android:id="@+id/tv_size"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="@dimen/all_margin_big"
android:layout_marginTop="@dimen/all_margin" android:layout_marginTop="@dimen/all_margin"
android:background="@drawable/shape_black_b2" android:background="@drawable/shape_black_b2"
android:padding="@dimen/all_spacing" android:gravity="center"
android:paddingEnd="@dimen/all_spacing"
android:paddingStart="@dimen/all_spacing"
android:text="@{@string/sku_size+spuUnitName}" android:text="@{@string/sku_size+spuUnitName}"
android:textColor="@color/black_baozheng"
android:textSize="@dimen/all_caption_size" android:textSize="@dimen/all_caption_size"
app:layout_constraintBottom_toBottomOf="@id/ll_price" app:layout_constraintBottom_toBottomOf="@id/ll_price"
app:layout_constraintLeft_toLeftOf="@id/tv_name" /> app:layout_constraintLeft_toLeftOf="@id/tv_name" />
......
...@@ -4,7 +4,6 @@ ...@@ -4,7 +4,6 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/gray_zhouyu"
android:gravity="center" android:gravity="center"
android:orientation="vertical"> android:orientation="vertical">
......
...@@ -49,7 +49,6 @@ ...@@ -49,7 +49,6 @@
android:id="@+id/ns_type_3" android:id="@+id/ns_type_3"
android:layout_width="0dp" android:layout_width="0dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="@id/ns_type_1" app:layout_constraintLeft_toLeftOf="@id/ns_type_1"
app:layout_constraintRight_toRightOf="parent" app:layout_constraintRight_toRightOf="parent"
......
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<data>
<import type="android.view.View" />
<variable
name="keywordLength"
type="int" />
</data>
<android.support.constraint.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<EditText
android:id="@+id/et_search"
style="@style/searchBarEditor"
android:layout_width="0dp"
android:labelFor="@+id/et_search"
android:paddingEnd="@dimen/all_margin_big"
android:paddingStart="@dimen/all_spacing"
app:layout_constraintBottom_toTopOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toLeftOf="@id/tv_search"
app:layout_constraintTop_toBottomOf="parent" />
<ImageButton
android:id="@+id/btn_clear"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="?attr/actionBarItemBackground"
android:contentDescription="@string/search_clear"
android:padding="@dimen/all_spacing"
android:src="@mipmap/ic_clear"
android:visibility="@{keywordLength>0?View.VISIBLE:View.GONE}"
app:layout_constraintBottom_toTopOf="parent"
app:layout_constraintRight_toRightOf="@id/et_search"
app:layout_constraintTop_toBottomOf="parent" />
<TextView
android:id="@+id/tv_search"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:background="?attr/actionBarItemBackground"
android:gravity="center"
android:paddingEnd="@dimen/all_margin"
android:paddingStart="@dimen/all_margin"
android:text="@string/search_action"
android:textColor="@color/black_baozheng"
android:textSize="@dimen/all_body_size"
app:layout_constraintLeft_toRightOf="@id/et_search"
app:layout_constraintRight_toRightOf="parent" />
</android.support.constraint.ConstraintLayout>
</layout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<resources> <resources>
<declare-styleable name="NineGridImageView"> <declare-styleable name="NineGridImageView">
<attr format="dimension" name="imgGap"/> <attr name="imgGap" format="dimension" />
</declare-styleable>
<declare-styleable name="SearchBar">
<attr name="inputType">
<!-- There is no content type. The text is not editable. -->
<flag name="none" value="0x00000000" />
<!-- Just plain old text. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_NORMAL}. -->
<flag name="text" value="0x00000001" />
<!-- Can be combined with <var>text</var> and its variations to
request capitalization of all characters. Corresponds to
{@link android.text.InputType#TYPE_TEXT_FLAG_CAP_CHARACTERS}. -->
<flag name="textCapCharacters" value="0x00001001" />
<!-- Can be combined with <var>text</var> and its variations to
request capitalization of the first character of every word. Corresponds to
{@link android.text.InputType#TYPE_TEXT_FLAG_CAP_WORDS}. -->
<flag name="textCapWords" value="0x00002001" />
<!-- Can be combined with <var>text</var> and its variations to
request capitalization of the first character of every sentence. Corresponds to
{@link android.text.InputType#TYPE_TEXT_FLAG_CAP_SENTENCES}. -->
<flag name="textCapSentences" value="0x00004001" />
<!-- Can be combined with <var>text</var> and its variations to
request auto-correction of text being input. Corresponds to
{@link android.text.InputType#TYPE_TEXT_FLAG_AUTO_CORRECT}. -->
<flag name="textAutoCorrect" value="0x00008001" />
<!-- Can be combined with <var>text</var> and its variations to
specify that this field will be doing its own auto-completion and
talking with the input method appropriately. Corresponds to
{@link android.text.InputType#TYPE_TEXT_FLAG_AUTO_COMPLETE}. -->
<flag name="textAutoComplete" value="0x00010001" />
<!-- Can be combined with <var>text</var> and its variations to
allow multiple lines of text in the field. If this flag is not set,
the text field will be constrained to a single line. Corresponds to
{@link android.text.InputType#TYPE_TEXT_FLAG_MULTI_LINE}. -->
<flag name="textMultiLine" value="0x00020001" />
<!-- Can be combined with <var>text</var> and its variations to
indicate that though the regular text view should not be multiple
lines, the IME should provide multiple lines if it can. Corresponds to
{@link android.text.InputType#TYPE_TEXT_FLAG_IME_MULTI_LINE}. -->
<flag name="textImeMultiLine" value="0x00040001" />
<!-- Can be combined with <var>text</var> and its variations to
indicate that the IME should not show any
dictionary-based word suggestions. Corresponds to
{@link android.text.InputType#TYPE_TEXT_FLAG_NO_SUGGESTIONS}. -->
<flag name="textNoSuggestions" value="0x00080001" />
<!-- Text that will be used as a URI. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_URI}. -->
<flag name="textUri" value="0x00000011" />
<!-- Text that will be used as an e-mail address. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_EMAIL_ADDRESS}. -->
<flag name="textEmailAddress" value="0x00000021" />
<!-- Text that is being supplied as the subject of an e-mail. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_EMAIL_SUBJECT}. -->
<flag name="textEmailSubject" value="0x00000031" />
<!-- Text that is the content of a short message. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_SHORT_MESSAGE}. -->
<flag name="textShortMessage" value="0x00000041" />
<!-- Text that is the content of a long message. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_LONG_MESSAGE}. -->
<flag name="textLongMessage" value="0x00000051" />
<!-- Text that is the name of a person. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_PERSON_NAME}. -->
<flag name="textPersonName" value="0x00000061" />
<!-- Text that is being supplied as a postal mailing address. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_POSTAL_ADDRESS}. -->
<flag name="textPostalAddress" value="0x00000071" />
<!-- Text that is a password. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_PASSWORD}. -->
<flag name="textPassword" value="0x00000081" />
<!-- Text that is a password that should be visible. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_VISIBLE_PASSWORD}. -->
<flag name="textVisiblePassword" value="0x00000091" />
<!-- Text that is being supplied as text in a web form. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_WEB_EDIT_TEXT}. -->
<flag name="textWebEditText" value="0x000000a1" />
<!-- Text that is filtering some other data. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_FILTER}. -->
<flag name="textFilter" value="0x000000b1" />
<!-- Text that is for phonetic pronunciation, such as a phonetic name
field in a contact entry. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_PHONETIC}. -->
<flag name="textPhonetic" value="0x000000c1" />
<!-- Text that will be used as an e-mail address on a web form. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_WEB_EMAIL_ADDRESS}. -->
<flag name="textWebEmailAddress" value="0x000000d1" />
<!-- Text that will be used as a password on a web form. Corresponds to
{@link android.text.InputType#TYPE_CLASS_TEXT} |
{@link android.text.InputType#TYPE_TEXT_VARIATION_WEB_PASSWORD}. -->
<flag name="textWebPassword" value="0x000000e1" />
<!-- A numeric only field. Corresponds to
{@link android.text.InputType#TYPE_CLASS_NUMBER} |
{@link android.text.InputType#TYPE_NUMBER_VARIATION_NORMAL}. -->
<flag name="number" value="0x00000002" />
<!-- Can be combined with <var>number</var> and its other options to
allow a signed number. Corresponds to
{@link android.text.InputType#TYPE_CLASS_NUMBER} |
{@link android.text.InputType#TYPE_NUMBER_FLAG_SIGNED}. -->
<flag name="numberSigned" value="0x00001002" />
<!-- Can be combined with <var>number</var> and its other options to
allow a decimal (fractional) number. Corresponds to
{@link android.text.InputType#TYPE_CLASS_NUMBER} |
{@link android.text.InputType#TYPE_NUMBER_FLAG_DECIMAL}. -->
<flag name="numberDecimal" value="0x00002002" />
<!-- A numeric password field. Corresponds to
{@link android.text.InputType#TYPE_CLASS_NUMBER} |
{@link android.text.InputType#TYPE_NUMBER_VARIATION_PASSWORD}. -->
<flag name="numberPassword" value="0x00000012" />
<!-- For entering a phone number. Corresponds to
{@link android.text.InputType#TYPE_CLASS_PHONE}. -->
<flag name="phone" value="0x00000003" />
<!-- For entering a date and time. Corresponds to
{@link android.text.InputType#TYPE_CLASS_DATETIME} |
{@link android.text.InputType#TYPE_DATETIME_VARIATION_NORMAL}. -->
<flag name="datetime" value="0x00000004" />
<!-- For entering a date. Corresponds to
{@link android.text.InputType#TYPE_CLASS_DATETIME} |
{@link android.text.InputType#TYPE_DATETIME_VARIATION_DATE}. -->
<flag name="date" value="0x00000014" />
<!-- For entering a time. Corresponds to
{@link android.text.InputType#TYPE_CLASS_DATETIME} |
{@link android.text.InputType#TYPE_DATETIME_VARIATION_TIME}. -->
<flag name="time" value="0x00000024" />
</attr>
<attr name="hint" format="reference|string" />
</declare-styleable> </declare-styleable>
</resources> </resources>
\ No newline at end of file
...@@ -272,16 +272,16 @@ ...@@ -272,16 +272,16 @@
<string name="other_selcet_shop">共%s个门店库存</string> <string name="other_selcet_shop">共%s个门店库存</string>
<!--补货界面--> <!--补货界面-->
<string name="replenishment_meun">补货</string> <string name="replenishment_meun">补货</string>
<string name="replenishment_add">一键补货</string> <string name="replenishment_add">一键补货</string>
<string name="replenishment_order">共%s个订单</string> <string name="replenishment_order">共%s个订单</string>
<string name="replenishment_search_hint">搜索供货商订单</string> <string name="replenishment_search_hint">搜索供货商订单</string>
<string name="replenishment_empty_hint">还没有货单哦~</string> <string name="replenishment_empty_hint">还没有货单哦~</string>
<string name="replenishment_detail_cancel">关闭</string> <string name="replenishment_detail_cancel">关闭</string>
<string name="replenishment_detail_submit">定货提交</string> <string name="replenishment_detail_submit">定货提交</string>
<string name="replenishment_detail_print">打印</string> <string name="replenishment_detail_print">打印</string>
<string name="replenishment_detail_title">定货明细</string> <string name="replenishment_detail_title">定货明细</string>
<string name="replenishment_detail_full">货物满满\n不需要货哦~</string> <string name="replenishment_detail_full">货物满满\n不需要货哦~</string>
<!--盘点界面--> <!--盘点界面-->
<string name="inventory_meun">库存盘点</string> <string name="inventory_meun">库存盘点</string>
<string name="inventory_add">开始盘库</string> <string name="inventory_add">开始盘库</string>
...@@ -421,7 +421,7 @@ ...@@ -421,7 +421,7 @@
<string name="sssku_cost_hint">是否按此包装进货:</string> <string name="sssku_cost_hint">是否按此包装进货:</string>
<string name="sssku_stock_low_limit">库存下限:</string> <string name="sssku_stock_low_limit">库存下限:</string>
<string name="sssku_stock_upper_limit">库存上限:</string> <string name="sssku_stock_upper_limit">库存上限:</string>
<string name="sssku_min_oder">最小货:</string> <string name="sssku_min_oder">最小货:</string>
<string name="sssku_pack_name">品名:</string> <string name="sssku_pack_name">品名:</string>
<string name="sssku_pack_price">售价:</string> <string name="sssku_pack_price">售价:</string>
<string name="sssku_pack_default_unit"></string> <string name="sssku_pack_default_unit"></string>
...@@ -513,7 +513,7 @@ ...@@ -513,7 +513,7 @@
<string name="menu_manager_oper">店员管理</string> <string name="menu_manager_oper">店员管理</string>
<string name="menu_manager_goods">商品维护</string> <string name="menu_manager_goods">商品维护</string>
<string name="menu_manager_bale">商品组合</string> <string name="menu_manager_bale">商品组合</string>
<string name="menu_manager_replenishment">补货</string> <string name="menu_manager_replenishment">补货</string>
<string name="menu_manager_other">邻库查询</string> <string name="menu_manager_other">邻库查询</string>
<string name="menu_manager_inventory">库存盘点</string> <string name="menu_manager_inventory">库存盘点</string>
...@@ -726,7 +726,7 @@ ...@@ -726,7 +726,7 @@
<string name="sku_cost">进价:</string> <string name="sku_cost">进价:</string>
<string name="sku_stock_low_limit">库存下限:</string> <string name="sku_stock_low_limit">库存下限:</string>
<string name="sku_stock_upper_limit">库存上限:</string> <string name="sku_stock_upper_limit">库存上限:</string>
<string name="sku_min_oder">最小货:</string> <string name="sku_min_oder">最小货:</string>
<string name="sku_update">编辑商品</string> <string name="sku_update">编辑商品</string>
<string name="sku_update_price">调整价格</string> <string name="sku_update_price">调整价格</string>
...@@ -736,4 +736,10 @@ ...@@ -736,4 +736,10 @@
<string name="sku_empty_hint">没有找到对应商品~</string> <string name="sku_empty_hint">没有找到对应商品~</string>
<string name="search_action">搜索</string>
<string name="search_clear">清空</string>
</resources> </resources>
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