Commit 119a177a authored by 陈前's avatar 陈前

现在有首页了,大家可以在CasherFragment写自己的跳转

parent 1a61ae0c
......@@ -7,6 +7,15 @@ package com.xingdata.zzdpos;
*/
public class C {
public final class MENU {
public static final int MENU_VIP = 101;
public static final int MENU_RECHARGE = 102;
public static final int MENU_MS = 103;
public static final int MENU_TICKET = 104;
public static final int MENU_STATISTICS = 105;
public static final int MENU_MANAGER = 106;
}
public final class HEAD {
public static final String USER_AGENT = "UrlConnection - ZZDHttpClient V1.0";
......
package com.xingdata.zzdpos;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(com.xingdata.zzdpos.R.layout.activity_main);
}
}
......@@ -3,7 +3,6 @@ package com.xingdata.zzdpos.ui.login;
import android.content.Intent;
import android.view.View;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.AppUtils;
import com.blankj.utilcode.util.KeyboardUtils;
import com.blankj.utilcode.util.LogUtils;
......@@ -13,8 +12,7 @@ import com.blankj.utilcode.util.ToastUtils;
import java.util.ArrayList;
import java.util.List;
import com.xingdata.zzdpos.App;
import com.xingdata.zzdpos.MainActivity;
import com.xingdata.zzdpos.ui.main.MainActivity;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseActivity;
import com.xingdata.zzdpos.databinding.ActivityLoginBinding;
......
package com.xingdata.zzdpos.ui.main;
import android.app.Activity;
import android.support.design.widget.TabLayout;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentPagerAdapter;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseActivity;
import com.xingdata.zzdpos.databinding.ActivityMainBinding;
import com.xingdata.zzdpos.ui.main.adapter.FragmentViewAdapter;
import com.xingdata.zzdpos.ui.main.fragment.CasherFragment;
import java.util.ArrayList;
import java.util.List;
public class MainActivity extends BaseActivity<MainPresenter, ActivityMainBinding> {
private int[] titleInts={R.string.menu_cashier,R.string.menu_service,R.string.menu_myself};
private int[] iconList ={R.mipmap.icon_menu_cashier_1,R.mipmap.icon_menu_service_0,R.mipmap.icon_menu_myself_0};
private FragmentPagerAdapter mFragmentPagerAdapter;
@Override
public int getLayoutId() {
return R.layout.activity_main;
}
@Override
public void initView() {
List<Fragment> fragments = new ArrayList<>();
fragments.add(new CasherFragment());
fragments.add(new CasherFragment());
fragments.add(new CasherFragment());
mFragmentPagerAdapter = new FragmentViewAdapter(fragments, getSupportFragmentManager());
mViewBinding.fragmentContainer.setAdapter(mFragmentPagerAdapter);
mViewBinding.tabLayout.setupWithViewPager(mViewBinding.fragmentContainer);
setupTabIcons();
mViewBinding.tabLayout.addOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
@Override
public void onTabSelected(TabLayout.Tab tab) {
switch (tab.getPosition()) {
case 0:
tab.setIcon(R.mipmap.icon_menu_cashier_1);
break;
case 1:
tab.setIcon(R.mipmap.icon_menu_service_1);
break;
case 2:
tab.setIcon(R.mipmap.icon_menu_myself_1);
break;
}
}
@Override
public void onTabUnselected(TabLayout.Tab tab) {
switch (tab.getPosition()) {
case 0:
tab.setIcon(R.mipmap.icon_menu_cashier_0);
break;
case 1:
tab.setIcon(R.mipmap.icon_menu_service_0);
break;
case 2:
tab.setIcon(R.mipmap.icon_menu_myself_0);
break;
}
}
@Override
public void onTabReselected(TabLayout.Tab tab) {
}
});
}
private void setupTabIcons() {
for (int i = 0; i < 3; i++) {
mViewBinding.tabLayout.getTabAt(i).setIcon(iconList[i]).setText(titleInts[i]);
}
}
}
package com.xingdata.zzdpos.ui.main;
import com.xingdata.zzdpos.base.BasePresenter;
import com.xingdata.zzdpos.base.BaseView;
interface MainContract {
interface View extends BaseView {
// /**
// * 交班确认
// */
// void handoverOk();
//
// /**
// * 显示修改密码页面
// */
// void showChangePasswordDialog();
//
// /**
// * 显示交班报表页面
// */
// void showHandoverDialog();
//
// /**
// * 显示反馈页面
// */
// void showFeedbackDialog();
//
// /**
// * 前往锁屏模块
// */
// void goLockActivity();
//
// /**
// * 显示文字内容
// *
// * @param msg 要显示的内容
// */
// void showMsg(String msg);
//
//
// /**
// * 显示文字内容
// *
// * @param resMsg 要显示内容的res地址
// */
// void showMsg(int resMsg);
//
// /**
// * 加载商店的商品分组列表
// *
// * @param sskugrpList 商品分组
// */
// void loadStoreGroups(List<Sskugrp> sskugrpList);
//
//
// /**
// * 加载分组状态
// *
// * @param skugrpId 分组状态
// */
// void loadStoreGroupState(Long skugrpId);
//
// /**
// * 加载商店的商品列表
// *
// * @param ssskuList 商品列表
// * @param isRefresh 是否刷新
// */
// void loadStoreProducts(List<Sssku> ssskuList, boolean isRefresh);
//
// /**
// * 加载商店的组合商品列表
// *
// * @param usskuList 组合商品列表
// */
// void loadStoreUProducts(List<Ussku> usskuList);
//
//
// /**
// * 加载换购列表
// *
// * @param giftList 换购列表
// */
// void loadGifts(List<Gift> giftList);
//
// /**
// * 加载购物车的商品列表
// *
// * @param saledetailList 商品列表
// */
// void loadCartProducts(List<Saledetail> saledetailList);
//
// /**
// * 加载结算信息
// *
// * @param payList 购物渠道列表
// * @param vip 会员信息
// * @param orderInfo 订单信息
// */
// void loadSettleInfo(List<Pay> payList, Vip vip, Saleorder orderInfo);
//
// /**
// * 加载优惠卷信息
// *
// * @param ticketList 优惠卷列表
// */
// void loadTicket(List<Ticket> ticketList);
//
// /**
// * 添加进购物车
// *
// * @param position 商品详情的position
// */
// void addCartProduct(int position);
//
// /**
// * 更新购物车数据
// *
// * @param position 商品详情的position
// */
// void updateCartProduct(int position);
//
// /**
// * 删除购物车数据
// *
// * @param position 商品详情的position
// */
// void deleteCartProduct(int position);
//
//
// /**
// * 加载订单信息
// *
// * @param saleorder 订单信息
// */
// void loadOrderInfo(Saleorder saleorder);
//
// /**
// * 加载会员信息
// *
// * @param vip 会员信息
// */
// void loadVipInfo(Vip vip);
//
// /**
// * 显示结算页面
// */
// void showSettleFragment();
//
// /**
// * 返回商店页面
// */
// void showStoreFragment();
//
// /**
// * 显示兑奖界面
// */
// void showAwardDialog();
//
// /**
// * 显示会员添加页面
// */
// void showVipAddDialog();
//
// /**
// * 显示卡片查询页面
// */
// void showCardUsingDialog();
//
// /**
// * 控制是否显示添加会员入口
// */
// void showVipAddNewText(boolean is);
//
// /**
// * 显示会员添加页面的新增会员页面
// */
// void showVipAddNewView(Vip vip);
//
// /**
// * 显示会员详情页面
// */
// void showVipMessageDialog(Vip vip, Saleorder saleorder);
//
// /**
// * 显示卡片密码输入界面
// */
// void showInputPassWord(String card);
//
// /**
// * 显示无码商品页面
// */
// void showNoBarcodeDialog();
//
// /**
// * 显示抹零页面
// *
// * @param saleorder 订单信息
// */
// void showDisChangeDialog(Saleorder saleorder);
//
// /**
// * 显示购物车商品详情页面
// *
// * @param saledetail 商品详情
// */
// void showCartDetailDialog(Saledetail saledetail);
//
// /**
// * 显示商店商品详情页面
// *
// * @param ssskuList 标准商品信息列表
// * @param usskuList 组合商品信息列表
// */
// void showStoreDetailDialog(List<Sssku> ssskuList, List<Ussku> usskuList);
//
// /**
// * 关闭弹窗
// *
// * @param clazz 要关闭的弹窗
// */
// void dismissDialog(Class clazz);
//
// /**
// * 关闭所有弹窗
// */
// void dismissAllDialog();
//
// /**
// * 切换支付密码
// */
// void changePayPassword(String password);
//
// /**
// * 改变订单锁定状态
// *
// * @param isLock 是否锁定
// */
// void changeOrderLockState(boolean isLock);
//
// /**
// * 改变购物车下端按钮状态
// */
// void changeCartButtons();
//
// /**
// * 显示读取对话框
// */
// void showLoadingDialog();
//
// /**
// * 隐藏读取对话框
// */
// void dismissLoadingDialog();
//
//
// /**
// * 改变挂单数量
// *
// * @param pendingList 挂单的数量
// */
// void loadPending(List<List<Saledetail>> pendingList);
}
abstract class Presenter extends BasePresenter<View> {
// /**
// * 菜单EXIT页面 - 点击修改密码 打开修改密码页面
// */
// public abstract void clickChangePassword();
//
// /**
// * 菜单EXIT页面 - 点击交班 打开交班报表页面
// */
// public abstract void clickHandover();
//
//
// /**
// * 菜单Help页面 - 点击反馈 打开反馈页面
// */
// public abstract void clickFeedback();
//
// /**
// * 菜单Help页面 - 点击锁屏 前往锁屏模块
// */
// public abstract void clickLock();
//
// /**
// * 菜单页面 - 点击打开兑奖
// */
// public abstract void clickAward();
//
// /**
// * 商品页面 - 获取商品列表
// */
// public abstract void getGroups();
//
// /**
// * 商品页面 - 刷新商品
// */
// public abstract void refreshProduct();
//
// /**
// * 商品页面 - 加载更多商品
// */
// public abstract void loadMoreProduct();
//
// /**
// * 商品页面 - 搜索商品
// *
// * @param keyword 搜索用的关键字
// */
// public abstract void searchProduct(String keyword);
//
// /**
// * 商品页面 - 切换分组
// *
// * @param sskugrp 分组
// */
// public abstract void clickGroup(Sskugrp sskugrp);
//
// /**
// * 商品页面 - 点击商店里的商品
// *
// * @param sku 商品
// */
// public abstract <T extends BaseSku> void clickProductInStore(T sku);
//
//
// /**
// * 商品详情页面 - 确认选择商品
// *
// * @param sku 选择的商品
// */
// public abstract <T extends BaseSku> void selectProductInStoreDetail(T sku);
//
//
// /**
// * 购物车页面 - 点击购物车里的商品
// *
// * @param saledetail 商品明细信息
// */
// public abstract void clickProductInCart(Saledetail saledetail);
//
// /**
// * 购物车页面 - 点击结算
// */
// public abstract void clickSettle();
//
// /**
// * 购物车页面 - 点击显示会员
// */
// public abstract void clickShowVip();
//
// /**
// * 购物车页面 - 点击显示无码商品
// */
// public abstract void clickShowNoBarcode();
//
// /**
// * 购物车页面 - 点击会员退出登录
// */
// public abstract void clickLogOut();
//
// /**
// * 购物车页面 - 清空数据
// */
// public abstract void clearAll();
//
// /**
// * 购物车页面 - 挂单/取单
// */
// public abstract void clickPending();
//
// /**
// * 购物车页面 - 抹零
// */
// public abstract void clickDisChange();
//
// /**
// * 购物车详情页面 - 删除商品
// *
// * @param saledetail 要删除的商品
// */
// public abstract void deleteProduct(Saledetail saledetail);
//
// /**
// * 购物车详情页面 - 修改商品数量
// *
// * @param saledetail 要删除的商品
// */
// public abstract void setProductCount(Saledetail saledetail);
//
// /**
// * 购物车页面 - 购物车发生变化
// */
// public abstract void cartChanged();
//
// /**
// * 会员界面 - 查找会员
// *
// * @param keyword 搜索关键字
// */
// public abstract void searchVip(String keyword);
//
// /**
// * 会员界面 - 新增会员
// */
//
//
// public abstract void addVip(Vip vip);
//
// /**
// * 会员详情页面 - 初始化
// */
// public abstract void initVipMessage();
//
// /**
// * 会员详情页面 - 提交优惠信息
// *
// * @param ticket 使用的优惠卷
// * @param isUsePoint 是否使用积分
// */
// public abstract void commitDisInfo(Ticket ticket, boolean isUsePoint);
//
// /**
// * 无码页面 - 添加无码商品
// *
// * @param amt 金额
// * @param remark 备注
// */
// public abstract void addNoBarcodeProduct(Long amt, String remark);
//
//
// /**
// * 抹零页面 - 提交抹零金额
// *
// * @param disAmt 抹掉的金额
// */
// public abstract void commitDisAmt(Long disAmt);
//
// /**
// * 结算页面 - 初始化
// */
// public abstract void initSettle();
//
// /**
// * 结算页面 - 切换支付渠道
// */
// public abstract void selectedPayChannel(int payType);
//
// /**
// * 结算页面 - 现金支付
// *
// * @param inputAmt 输入金额
// * @param changeAmt 找零金额
// */
// public abstract void payInCash(Long inputAmt, Long changeAmt);
//
// /**
// * 结算页面 - 支付宝支付
// *
// * @param payCode 支付码
// */
// public abstract void payInAli(String payCode);
//
// /**
// * 结算页面 - 微信支付
// *
// * @param payCode 支付码
// */
// public abstract void payInWechat(String payCode);
//
// /**
// * 结算页面 - 银行卡支付
// */
// public abstract void payInBank();
//
// /**
// * 结算页面 - 储值卡
// *
// * @param cardNo 卡号
// * @param password 密码
// */
// public abstract void payInCard(Long cardNo, String password);
//
// /**
// * 结算页面 - 赊账
// */
// public abstract void payInTally();
//
// /**
// * 结算页面 - 取消结算
// */
// public abstract void cancelPay();
//
// /**
// * 储值卡界面 - 查询卡
// *
// * @param keyword 搜索全卡号
// */
// public abstract void searchCard(String keyword);
//
// /**
// * 同步所有表
// */
// public abstract void sync(SplashPresenter.SynchronousTask synchronousTask);
//
// /**
// * 初始化交班记录
// */
// public abstract void initHandoverInfo();
//
// /**
// * 交班确认
// */
// public abstract void clickHandoverOk();
//
// /**
// * 点击换购确定按钮
// */
// public abstract void clickGiftConfirm(Gift gift);
//
// /**
// * 反馈确认
// */
// public abstract void clickFeedOk(Feed feed);
//
// /**
// * 注销
// */
// public abstract void logout();
//
//
// /**
// * 搜索框获取焦点
// *
// * @param isHas 是否获取焦点
// */
// public abstract void searchBarHasFocus(boolean isHas);
}
}
package com.xingdata.zzdpos.ui.main;
import android.os.Message;
import android.view.KeyEvent;
import com.alibaba.fastjson.JSON;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.LogUtils;
import com.blankj.utilcode.util.SPUtils;
import com.blankj.utilcode.util.StringUtils;
import com.blankj.utilcode.util.TimeUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.api.print.ZX_PrintPOS;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Locale;
import io.reactivex.Observable;
import io.reactivex.ObservableSource;
import io.reactivex.functions.Function;
public class MainPresenter extends MainContract.Presenter {
@Override
public void onAttached() {
}
// public static HandoverInfo handoverInfo;
//
// /**
// * 当前的使用的支付方式
// */
// private int mPayType;
// /**
// * 当前的营销活动列表
// */
// private List<Ms> mMsList;
//
// /**
// * 当前设备的支付渠道信息
// */
// private List<Pay> mPayChannels;
//
// /**
// * 当前购物车的商品明细
// */
// private List<Saledetail> mCartProducts;
//
// /**
// * 当前订单信息
// */
// private Saleorder mOrderInfo;
//
// /**
// * 当前会员
// */
// private Vip mVip;
//
// /**
// * 当前页码
// */
// private int mPageNum;
//
// /**
// * 当前的搜索关键字
// */
// private String mKeyword;
//
// /**
// * 当前的分组Id
// */
// private Long mSkuGrpId;
//
// /**
// * 挂单列表 - 购物车
// */
// private List<List<Saledetail>> mPendingCarts;
// /**
// * 挂单列表 - 会员
// */
// private List<Vip> mPendingVips;
//
// /**
// * 换购商品列表
// */
// private List<Gift> mGiftList;
//
// /**
// * 扫描工具
// */
// private ScannerUtil mScannerUtil;
//
//
// @Override
// public void onAttached() {
// this.initRealm();
//
// mVip = Vip.createDefault();
// mCartProducts = new ArrayList<>();
// mOrderInfo = new Saleorder();
//
// mMsList = new ArrayList<>();
// mGiftList = new ArrayList<>();
// mPendingCarts = new ArrayList<>();
// mPendingVips = new ArrayList<>();
//
// //注册扫码枪监听
// mScannerUtil = new ScannerUtil(this::scanComplete);
//
// //获取支付渠道信息
// this.getPayChannels();
// //获取营销活动信息
// this.getMsList();
// }
//
// @Override
// public void clickLock() {
// mView.goLockActivity();
// }
//
// @Override
// public void clickAward() {
// mView.showAwardDialog();
// }
//
// @Override
// public void clickChangePassword() {
// mView.showChangePasswordDialog();
// }
//
// @Override
// public void clickHandover() {
// mView.showHandoverDialog();
// }
//
//
// @Override
// public void clickFeedback() {
// mView.showFeedbackDialog();
// }
//
// @Override
// public void getGroups() {
// mCompositeDisposable.add(
// DBFactory.Main.queryGroups().subscribe(
// sskugrps -> {
// Sskugrp sskugrp = new Sskugrp();
// sskugrp.setSkuGrpId(-1L);
// sskugrp.setSkuGrpName("组合商品");
// sskugrp.setSelected(false);
// sskugrps.add(0, sskugrp);
//
// sskugrp = new Sskugrp();
// sskugrp.setSkuGrpId(0L);
// sskugrp.setSkuGrpName("全部分组");
// sskugrp.setSelected(true);
// sskugrps.add(0, sskugrp);
//
// mView.loadStoreGroups(sskugrps);
// })
// );
// }
//
// @Override
// public void refreshProduct() {
// this.mPageNum = 0;
// this.mSkuGrpId = 0L;
// this.mKeyword = "";
// mView.loadStoreGroupState(mSkuGrpId);
// this.getProducts();
// }
//
// @Override
// public void loadMoreProduct() {
// this.mPageNum++;
// this.getProducts();
// }
//
// @Override
// public void searchProduct(String keyword) {
// this.mPageNum = 0;
// this.mKeyword = keyword;
// this.getProducts();
// }
//
// @Override
// public void clickGroup(Sskugrp sskugrp) {
// this.mPageNum = 0;
// this.mSkuGrpId = sskugrp.getSkuGrpId();
// mView.loadStoreGroupState(mSkuGrpId);
// if (mSkuGrpId < 0) this.getUProducts();
// else this.getProducts();
// }
//
// @Override
// public <T extends BaseSku> void clickProductInStore(T sku) {
// addProductToCart(sku);
// }
//
// @Override
// public <T extends BaseSku> void selectProductInStoreDetail(T sku) {
// addProductToCart(sku);
// }
//
//
// @Override
// public void clickProductInCart(Saledetail saledetail) {
// mView.showCartDetailDialog(saledetail);
// }
//
// @Override
// public void clickSettle() {
// mView.showSettleFragment();
// }
//
//
// @Override
// public void clickShowVip() {
// if (mVip.isDefaultVip()) {
// mView.showVipAddDialog();
// } else {
// mView.showVipMessageDialog(mVip, mOrderInfo);
// }
// }
//
// @Override
// public void clickShowNoBarcode() {
// mView.showNoBarcodeDialog();
// }
//
//
// @Override
// public void clickLogOut() {
// this.setVip(Vip.createDefault());
// }
//
// @Override
// public void clearAll() {
// clearOrder();
// clearVip();
// clearCart();
// clearPending();
// clearCart();
// }
//
// @Override
// public void clickPending() {
// if (mPendingCarts.size() == 0) {
// mPendingCarts.add(mCartProducts);
// mPendingVips.add(mVip);
//
// this.mVip = Vip.createDefault();
// this.mCartProducts = new ArrayList<>();
//
// mView.loadCartProducts(this.mCartProducts);
// mView.loadVipInfo(this.mVip);
//
// sendToViceScreen(ViceScreenMessageManager.VICE_VIP_INFO, this.mVip);
// sendToViceScreen(ViceScreenMessageManager.VICE_LIST, this.mCartProducts);
// } else {
// this.mCartProducts = mPendingCarts.get(0);
// this.mVip = mPendingVips.get(0);
//
// mView.loadCartProducts(this.mCartProducts);
// mView.loadVipInfo(this.mVip);
//
// sendToViceScreen(ViceScreenMessageManager.VICE_VIP_INFO, this.mVip);
// sendToViceScreen(ViceScreenMessageManager.VICE_LIST, this.mCartProducts);
//
// mPendingCarts.clear();
// mPendingVips.clear();
//
// }
// mView.loadPending(mPendingCarts);
// }
//
// @Override
// public void clickDisChange() {
// mView.showDisChangeDialog(mOrderInfo);
// }
//
//
// private boolean isEqual(Saledetail o1, Saledetail o2) {
// return o1.getSkuId().longValue() == o2.getSkuId() &&
// (o1.getMsId() == null || (o2.getMsId() != null && o1.getMsId().longValue() == o2.getMsId()));
// }
//
// @Override
// public void deleteProduct(Saledetail saledetail) {
// for (int i = 0; i < mCartProducts.size(); i++) {
// if (isEqual(mCartProducts.get(i), saledetail)) {
// mCartProducts.remove(saledetail);
// mView.deleteCartProduct(i);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_ITEM_DEL, i);
// break;
// }
// }
// }
//
// @Override
// public void setProductCount(Saledetail saledetail) {
// for (int i = 0; i < mCartProducts.size(); i++) {
// if (isEqual(mCartProducts.get(i), saledetail)) {
// if (saledetail.getMsId() != null && saledetail.getMsId() > 0) return;
// mCartProducts.set(i, saledetail);
// mView.updateCartProduct(i);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_ITEM_UPDATA, i);
// break;
// }
// }
// }
//
// @Override
// public void cartChanged() {
// //重置商品
// for (int i = 0; i < mMsList.size(); i++) {
// mMsList.get(i).setSaledetailList(new ArrayList<>());
// }
//
// //添加商品
// for (int i = 0; i < mCartProducts.size(); i++) {
// for (int j = 0; j < mMsList.size(); j++) {
// if (!mMsList.get(j).isAvailable(mVip)) continue;
// if (mMsList.get(j).addSaledetail(mCartProducts.get(i))) break;
// }
// }
// Ms.OnApplyListener onApplyListener = new Ms.OnApplyListener() {
//
// @Override
// public void setDis(Ms ms) {
// mOrderInfo.addMsDis(ms);
// }
//
// @Override
// public void addGift(Long msId, Long skuId, long addAmt) {
// mCompositeDisposable.add(
// DBFactory.Main.queryProductBySkuId(skuId)
// .subscribe(ssskuList -> {
// if (ssskuList.size() == 0) return;
// for (int i = 0; i < mGiftList.size(); i++) {
// if (mGiftList.get(i).getMsId().longValue() == msId) {
// return;
// }
// }
// mGiftList.add(new Gift(msId, ssskuList.get(0), addAmt));
// mView.loadGifts(mGiftList);
// })
// );
// }
//
// @Override
// public void removeGift(Long msId) {
// for (int i = 0; i < mGiftList.size(); i++) {
// if (mGiftList.get(i).getMsId().longValue() == msId) {
// mGiftList.remove(i);
// mView.loadGifts(mGiftList);
// break;
// }
// }
// for (int i = 0; i < mCartProducts.size(); i++) {
// if (mCartProducts.get(i).getMsId() > 0 && mCartProducts.get(i).getMsId()
// .longValue() == msId) {
// mCartProducts.remove(i);
// mView.deleteCartProduct(i);
// MainPresenter.this.sendToViceScreen(ViceScreenMessageManager
// .VICE_ITEM_DEL, i);
// break;
// }
// }
// }
// };
//
// //判断
// for (int i = 0; i < mMsList.size(); i++) {
// mMsList.get(i).setOnApplyListener(onApplyListener);
// mMsList.get(i).execute();
// }
//
// mOrderInfo.setSaledetails(mCartProducts).settle();
// mView.loadOrderInfo(mOrderInfo);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_ORDERINFO, mOrderInfo);
// }
//
//
// @Override
// public void searchVip(String keyword) {
// mView.showLoadingDialog();
// ApiFactory.User.queryUserDetailByKeyword(keyword)
// .doOnSubscribe(vip -> mView.dismissLoadingDialog())
// .subscribe(vip -> {
// mVip = vip;
// if (vip.getVipLevel() > 0) {
// setVip(mVip);
// mView.showVipMessageDialog(mVip, mOrderInfo);
// } else {
//
// mView.showVipAddNewView(mVip);
// }
// }, throwable -> mView.showVipAddNewText(true));
// }
//
// @Override
// public void addVip(Vip vip) {
// //新增会员
// ApiFactory.User.addVip(vip).subscribe(
// this::setVip
// , throwable -> {
// LogUtils.e("失败 : " + throwable.getMessage());
// ToastUtils.showLong("失败 : " + throwable.getMessage());
// });
// }
//
// @Override
// public void initVipMessage() {
// //获取优惠卷列表
// ApiFactory.Ticket.query(mVip.getVipId()).subscribe(
// tickets -> mView.loadTicket(tickets),
// throwable -> {
// }
// );
// }
//
// @Override
// public void commitDisInfo(Ticket ticket, boolean isUsePoint) {
// mOrderInfo.setTicket(ticket).setBound(isUsePoint, mVip.getBoundCbal()).settle();
// mView.loadOrderInfo(mOrderInfo);
// }
//
// @Override
// public void addNoBarcodeProduct(Long amt, String remark) {
// mCartProducts.add(0, Saledetail.create(remark, amt, mVip));
// mView.addCartProduct(0);
// }
//
// @Override
// public void commitDisAmt(Long disAmt) {
// mOrderInfo.setDisChange(disAmt).settle();
// mView.loadOrderInfo(mOrderInfo);
// }
//
// @Override
// public void initSettle() {
// mView.loadSettleInfo(mPayChannels, mVip, mOrderInfo);
// }
//
// @Override
// public void selectedPayChannel(int payType) {
// switch (payType) {
// case C.PAY_CHANNEL.CARD:
// case C.PAY_CHANNEL.TALLY:
// this.sendToViceScreen(ViceScreenMessageManager.VICE_PASSWORD, true);
// break;
// default:
// this.sendToViceScreen(ViceScreenMessageManager.VICE_PASSWORD, false);
// break;
// }
// }
//
//
// @Override
// public void payInCash(Long inputAmt, Long changeAmt) {
// this.mPayType = C.PAY_CHANNEL.CASH;
// if (mCartProducts.size() == 0) return;
// subscribePay(commitOrder()
// .flatMap(orderNo -> ApiFactory.Saleorder.addOrderPayMis(mOrderInfo.pay(orderNo, C.PAY_CHANNEL.CASH)))
// );
// }
//
// @Override
// public void payInAli(String payCode) {
// this.mPayType = C.PAY_CHANNEL.ALI;
// if (mCartProducts.size() == 0) return;
// subscribePay(commitOrder().flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String s) throws Exception {
// //TODO 支付宝支付
// return Observable.just(s);
// }
// }).flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String orderNo) throws Exception {
// return ApiFactory.Saleorder.addOrderPayMis(mOrderInfo.pay(orderNo, C.PAY_CHANNEL.CASH, payCode));
// }
// }));
// }
//
// @Override
// public void payInWechat(String payCode) {
// this.mPayType = C.PAY_CHANNEL.WECHAT;
// if (mCartProducts.size() == 0) return;
// subscribePay(commitOrder().flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String s) throws Exception {
// //TODO 微信支付
// return Observable.just(s);
// }
// }).flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String orderNo) throws Exception {
// return ApiFactory.Saleorder.addOrderPayMis(mOrderInfo.pay(orderNo, C.PAY_CHANNEL.CASH, payCode));
// }
// }));
// }
//
// @Override
// public void payInBank() {
// this.mPayType = C.PAY_CHANNEL.BANK;
// if (mCartProducts.size() == 0) return;
// subscribePay(commitOrder().flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String s) throws Exception {
// //TODO 银行卡支付
// return Observable.just(s);
// }
// }).flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String orderNo) throws Exception {
// return ApiFactory.Saleorder.addOrderPayMis(mOrderInfo.pay(orderNo, C.PAY_CHANNEL.BANK));
// }
// }));
// }
//
// @Override
// public void payInCard(Long cardNo, String password) {
// this.mPayType = C.PAY_CHANNEL.CARD;
// if (mCartProducts.size() == 0) return;
// subscribePay(ApiFactory.Recard.checkPwd(mVip.getVipId(), String.valueOf(cardNo),
// password).flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String s) throws Exception {
// return commitOrder();
// }
// }).flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String orderNo) throws Exception {
// return ApiFactory.Saleorder.addOrderPayMis(mOrderInfo.pay(orderNo, C.PAY_CHANNEL.CARD, String.valueOf(cardNo)));
// }
// }));
// }
//
// @Override
// public void payInTally() {
// this.mPayType = C.PAY_CHANNEL.TALLY;
// if (mCartProducts.size() == 0) return;
// subscribePay(commitOrder().flatMap(new Function<String, ObservableSource<String>>() {
// @Override
// public ObservableSource<String> apply(String orderNo) throws Exception {
// return ApiFactory.Saleorder.addOrderPayMis(mOrderInfo.pay(orderNo, C.PAY_CHANNEL.TALLY));
// }
// }));
//
// }
//
// @Override
// @Deprecated
// public void searchCard(String keyword) {
// //这一版没有使用其他卡交易的选项
// }
//
// @Override
// public void sync(SplashPresenter.SynchronousTask synchronousTask) {
// //同步请求前,置空同步过程的错误信息
// SPUtils.getInstance().put(SplashActivity.SYNCHRONOUSERRORCODE, "");
// SPUtils.getInstance().put(SplashActivity.SYNCHRONOUSERRORMSG, "");
// for (int i = 0; i < SplashPresenter.listSync.size(); i++) {
// ApiFactory.Sync.allDownload(SplashPresenter.listSync.get(i), synchronousTask, (100.00 / SplashPresenter.listSync.size()));
// }
// }
//
//
// @Override
// public void dispatchKeyEvent(KeyEvent event) {
// mScannerUtil.analysisKeyEvent(event);
// super.dispatchKeyEvent(event);
// }
//
//
// /**
// * 设置会员
// *
// * @param vip 会员信息
// */
// private void setVip(Vip vip) {
// this.mVip = vip;
// for (int i = 0; i < mCartProducts.size(); i++) mCartProducts.get(i).setVip(mVip);
// if (vip.getBoundCbal() != null) {
// //清空优惠券和积分
// mOrderInfo.setBound(false, vip.getBoundCbal()).setTicket(Ticket.defualt()).settle();
// }
// //发送到副屏
// this.sendToViceScreen(ViceScreenMessageManager.VICE_VIP_INFO, vip);
// //加载购物车信息
// mView.loadCartProducts(mCartProducts);
// //加载会员信息
// mView.loadVipInfo(mVip);
// //关闭对话框
// mView.dismissDialog(VipAddDialog.class);
// }
//
// /**
// * 扫描成功
// *
// * @param barcode 条形码
// */
// private void scanComplete(String barcode) {
// getProductByBarcode(barcode);
// }
//
// /**
// * 根据条形码获取商品
// *
// * @param barcode 条形码
// */
// private void getProductByBarcode(String barcode) {
// mView.showLoadingDialog();
// List<Sssku> ssskus = DBFactory.getList(DB.getInstance().get(MainPresenter.class).where
// (Sssku.class)
// .equalTo("spuBarcode", StringUtil.strToLong(barcode))
// .equalTo("skuStatus", 0)
// .findAll());
// List<Ussku> usskus = DBFactory.getList(DB.getInstance().get(MainPresenter.class).where
// (Ussku.class)
// .equalTo("spuBarcode", StringUtil.strToLong(barcode))
// .equalTo("skuStatus", 0)
// .findAll());
// if (ssskus.size() + usskus.size() > 1) {
// mView.showStoreDetailDialog(ssskus, usskus);
// } else if (ssskus.size() == 1 && usskus.size() == 0) {
// this.addProductToCart(ssskus.get(0));
// } else if (ssskus.size() == 0 && usskus.size() == 1) {
// this.addProductToCart(usskus.get(0));
// } else {
// mView.showMsg(R.string.store_scan_empty_hint);
// }
// mView.dismissLoadingDialog();
// }
//
// /**
// * 添加商品进购物车
// *
// * @param sku 要添加的商品
// */
// private <T extends BaseSku> void addProductToCart(T sku) {
// for (int i = 0; i < mCartProducts.size(); i++) {
// if (sku.getSkuId().longValue() == mCartProducts.get(i).getSkuId()
// && (mCartProducts.get(i).getMsId() == null || mCartProducts.get(i).getMsId() == 0)) {
// if (mCartProducts.get(i).getDetailCnt() >= 99) return;
// mCartProducts.get(i).setCount(mCartProducts.get(i).getDetailCnt() + 1);
// mView.updateCartProduct(i);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_ITEM_UPDATA, i);
// return;
// }
// }
// Saledetail saledetail = Saledetail.create(sku, mVip);
// mCartProducts.add(0, saledetail);
// mView.addCartProduct(0);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_ITEM_ADD, 0);
// }
//
//
// /**
// * 获取商品列表
// */
// private void getProducts() {
// mView.showLoadingDialog();
//
// mCompositeDisposable.add(
// DBFactory.Main.queryProducts(mPageNum, mKeyword, mSkuGrpId)
// .doOnSubscribe(subscription -> mView.dismissLoadingDialog())
// .subscribe(ssskus -> {
// if (mPageNum == 0) getMsList();
// mView.loadStoreProducts(ssskus, mPageNum == 0);
// })
// );
// }
//
// /**
// * 获取组合商品
// */
// private void getUProducts() {
// mView.showLoadingDialog();
//
// mCompositeDisposable.add(
// DBFactory.Main.queryUProducts()
// .doOnSubscribe(subscription -> mView.dismissLoadingDialog())
// .subscribe(usskus -> {
// if (mSkuGrpId < 0) mView.loadStoreUProducts(usskus);
// })
// );
// }
//
//
// /**
// * 发送信息到副屏
// */
// public void sendToViceScreen(int type, Object object) {
// Message message = new Message();
// message.what = type;
// message.obj = object;
// App.instance.viceScreenMessageManager.sendMessageToViceScreen(message);
// }
//
//
// /**
// * 获取支付渠道
// */
// private void getPayChannels() {
// mCompositeDisposable.add(
// DBFactory.Main.queryPays().subscribe(
// pays -> {
// mPayChannels = new ArrayList<>();
// mPayChannels.addAll(pays);
// for (int i = 0; i < mPayChannels.size(); i++) {
// mPayChannels.get(i).init();
// }
// }
// )
// );
// }
//
// /**
// * 获取营销活动
// */
// private void getMsList() {
// mCompositeDisposable.add(
// DBFactory.Main.queryMss().subscribe(
// msList -> {
// mMsList = msList;
// }
// )
// );
// }
//
// /**
// * 获取参数形式的订单信息
// *
// * @return 参数形式的订单信息
// */
// private Saleorder.Param createSaleorderParam() {
// Saleorder.Param saleorderParam = mOrderInfo.setVip(mVip).param();
// for (int i = 0; i < mCartProducts.size(); i++) {
// saleorderParam.saleOrderParamDetailList.add(mCartProducts.get(i).param());
// }
// return saleorderParam;
// }
//
//
// /**
// * 提交订单
// */
// private Observable<String> commitOrder() {
// if (StringUtils.isEmpty(mOrderInfo.getOrderNo())) {
// return ApiFactory.Saleorder.addOrderMis(createSaleorderParam())
// .doAfterNext(s -> {
// //锁定订单状态
// mOrderInfo.setOrderNo(s);
// mView.changeOrderLockState(true);
// });
// } else {
// return Observable.just(mOrderInfo.getOrderNo());
// }
// }
//
//
// /**
// * 订阅支付
// *
// * @param observable 数据源
// */
// private void subscribePay(Observable<String> observable) {
// mView.showLoadingDialog();
// observable
// .doFinally(() -> mView.dismissLoadingDialog())
// .subscribe(this::paySucc, throwable -> payFail());
// }
//
// /**
// * 支付成功
// */
// private void paySucc(String s) {
// try {
// Saleorder print = JSON.parseObject(s, Saleorder.class);
// ZX_PrintPOS.getInstance(App.instance).print(1, print);
// } catch (Exception e) {
// ToastUtils.showShort("打印异常");
// }
// PromptDialog mPromptDialog = new PromptDialog();
// mPromptDialog.setDialogType(PromptDialog.PROMPTDIALOG_SUCC, "支付成功");
// mPromptDialog.setCustomButton("确定", view -> mPromptDialog.dismiss());
// mPromptDialog.show((BaseActivity) ActivityUtils.getTopActivity(), 2);
//
// this.updateHandover();
//
// clearOrder();
// clearVip();
// clearCart();
// clearMs();
//
// mView.changeOrderLockState(false);
// mView.showStoreFragment();
// }
//
// /**
// * 支付失败
// */
// private void payFail() {
// PromptDialog mPromptDialog = new PromptDialog();
// mPromptDialog.setDialogType(PromptDialog.PROMPTDIALOG_ERROR, "支付失败");
// mPromptDialog.setCustomButton("重试", view -> mPromptDialog.dismiss());
// mPromptDialog.show((BaseActivity) ActivityUtils.getTopActivity());
// }
//
// /**
// * 取消结算
// */
// @Override
// public void cancelPay() {
// this.sendToViceScreen(ViceScreenMessageManager.VICE_ORDERINFO, mOrderInfo);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_SUPER_PURCHASE, false);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_PASSWORD, false);
// mView.changeCartButtons();
// }
//
//
// /**
// * 清空订单信息
// */
// private void clearOrder() {
// this.mOrderInfo = new Saleorder();
// }
//
// /**
// * 清理购物车
// */
// private void clearCart() {
// this.mCartProducts = new ArrayList<>();
// mView.loadCartProducts(mCartProducts);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_LIST, mCartProducts);
// }
//
// /**
// * 清空会员
// */
// private void clearVip() {
// this.mVip = Vip.createDefault();
// mView.loadVipInfo(mVip);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_VIP_INFO, mVip);
// }
//
// /**
// * 重置营销计划
// */
// private void clearMs() {
// for (int i = 0; i < mMsList.size(); i++) {
// mMsList.get(i).setSaledetailList(new ArrayList<>());
// }
// mView.loadGifts(mGiftList);
// }
//
// /**
// * 清空挂单信息
// */
// private void clearPending() {
// this.mPendingCarts = new ArrayList<>();
// mView.loadPending(mPendingCarts);
// }
//
//
// @Override
// public void initHandoverInfo() {
// SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMdd", Locale.getDefault());
// String time = TimeUtils.millis2String(System.currentTimeMillis(), simpleDateFormat);
// handoverInfo = DBFactory.Main.queryHandoverInfo(LoginPresenter.loginReturnBean.getOperId
// (), time);
// if (handoverInfo == null) {
// handoverInfo = new HandoverInfo();
// handoverInfo.setId(Long.valueOf(LoginPresenter.loginReturnBean.getOperId() + time));
// handoverInfo.setDate(time);
// handoverInfo.setOperId(LoginPresenter.loginReturnBean.getOperId());
// handoverInfo.setAlipay(0L);
// handoverInfo.setPos(0L);
// handoverInfo.setCash(0L);
// handoverInfo.setFinallyAmt(0L);
// handoverInfo.setSumOrder(0L);
// handoverInfo.setVip(0L);
// handoverInfo.setWechat(0L);
// DBFactory.Main.updateHandoverInfo(handoverInfo);
// }
// }
//
// /**
// * 更新交班信息
// */
// private void updateHandover() {
// getRealm().beginTransaction();
// handoverInfo.setSumOrder(handoverInfo.getSumOrder() + 1);
// switch (mPayType) {
// case C.PAY_CHANNEL.CASH:
// handoverInfo.setCash(handoverInfo.getCash() + mOrderInfo.getOrderPayAmt());
// handoverInfo.setFinallyAmt(handoverInfo.getFinallyAmt() + mOrderInfo
// .getOrderPayAmt());
// break;
// case C.PAY_CHANNEL.WECHAT:
// handoverInfo.setWechat(handoverInfo.getWechat() + mOrderInfo.getOrderPayAmt());
// handoverInfo.setFinallyAmt(handoverInfo.getFinallyAmt() + mOrderInfo
// .getOrderPayAmt());
// break;
// case C.PAY_CHANNEL.ALI:
// handoverInfo.setAlipay(handoverInfo.getAlipay() + mOrderInfo.getOrderPayAmt());
// handoverInfo.setFinallyAmt(handoverInfo.getFinallyAmt() + mOrderInfo
// .getOrderPayAmt());
// break;
// case C.PAY_CHANNEL.BANK:
// handoverInfo.setPos(handoverInfo.getPos() + mOrderInfo.getOrderPayAmt());
// handoverInfo.setFinallyAmt(handoverInfo.getFinallyAmt() + mOrderInfo
// .getOrderPayAmt());
// break;
// case C.PAY_CHANNEL.CARD:
// handoverInfo.setVip(handoverInfo.getVip() + mOrderInfo.getOrderPayAmt());
// handoverInfo.setFinallyAmt(handoverInfo.getFinallyAmt() + mOrderInfo
// .getOrderPayAmt());
// break;
// case C.PAY_CHANNEL.TALLY:
// break;
// }
// getRealm().copyToRealmOrUpdate(handoverInfo);
// getRealm().commitTransaction();
// }
//
//
// @Override
// public void clickHandoverOk() {
// logout();
// mView.handoverOk();
// }
//
// @Override
// public void clickFeedOk(Feed feed) {
// ApiFactory.Feed.addFeed(feed)
// .subscribe(object -> {
// }, throwable -> {
// ToastUtils.showShort(throwable.getMessage());
// });
// }
//
// @Override
// public void logout() {
// ApiFactory.Test.logout()
// .subscribe(object -> {
// }, throwable -> {
// ToastUtils.showShort(throwable.getMessage());
// });
// }
//
// @Override
// public void searchBarHasFocus(boolean isHas) {
// if (isHas) mScannerUtil.close();
// else mScannerUtil.open();
// }
//
// @Override
// public void clickGiftConfirm(Gift gift) {
// for (int i = 0; i < mCartProducts.size(); i++) {
// if (gift.getSssku().getSkuId().longValue() == mCartProducts.get(i).getSkuId()
// && gift.getMsId().longValue() == mCartProducts.get(i).getMsId()) {
// return;
// }
// }
// Saledetail saledetail = Saledetail.create(gift, mVip);
// mCartProducts.add(0, saledetail);
// mView.addCartProduct(0);
// this.sendToViceScreen(ViceScreenMessageManager.VICE_ITEM_ADD, 0);
// }
}
package com.xingdata.zzdpos.ui.main.adapter;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import java.util.List;
/**
* Created by Administrator on 2017/12/20.
*/
public class FragmentViewAdapter extends FragmentPagerAdapter {
private List<Fragment> fragmentList;
public FragmentViewAdapter(List<Fragment> fragmentList, FragmentManager fm) {
super(fm);
this.fragmentList = fragmentList;
}
@Override
public Fragment getItem(int position) {
return fragmentList.get(position);
}
@Override
public int getCount() {
return fragmentList.size();
}
}
package com.xingdata.zzdpos.ui.main.adapter;
import android.content.Context;
import android.support.annotation.Nullable;
import com.xingdata.zzdpos.C;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseAdapter;
import com.xingdata.zzdpos.databinding.ItemMenuDetailBinding;
import java.util.List;
/**
* Created by Administrator on 2017/12/21.
*/
public class MenuRecyclerAdapter extends BaseAdapter<Integer, ItemMenuDetailBinding> {
private List<Integer> integers;
private Context mContext;
private Integer titleId;
private Integer imgId;
public MenuRecyclerAdapter(Context mContext, @Nullable List<Integer> integers) {
super(R.layout.item_menu_detail, integers);
this.mContext = mContext;
this.integers = integers;
}
@Override
protected void convert(ItemMenuDetailBinding mViewBinding, Integer item) {
switch (item) {
case C.MENU.MENU_VIP://会员
titleId = R.string.menu_vip;
imgId = R.mipmap.icon_members;
break;
case C.MENU.MENU_RECHARGE://充值
titleId = R.string.menu_recharge;
imgId = R.mipmap.icon_recharge;
break;
case C.MENU.MENU_MS://营销
titleId = R.string.menu_ms;
imgId = R.mipmap.icon_marketing;
break;
case C.MENU.MENU_TICKET://优惠券
titleId = R.string.menu_ticket;
imgId = R.mipmap.icon_sendstamps;
break;
case C.MENU.MENU_STATISTICS://统计
titleId = R.string.menu_statistics;
imgId = R.mipmap.icon_statistics;
break;
case C.MENU.MENU_MANAGER://管理
titleId = R.string.menu_manager;
imgId = R.mipmap.icon_administer;
break;
}
mViewBinding.text.setText(titleId);
mViewBinding.img.setImageResource(imgId);
}
}
package com.xingdata.zzdpos.ui.main.fragment;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import com.chad.library.adapter.base.BaseQuickAdapter;
import com.xingdata.zzdpos.C;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseFragment;
import com.xingdata.zzdpos.databinding.FragmentCasherBinding;
import com.xingdata.zzdpos.ui.main.MainPresenter;
import com.xingdata.zzdpos.ui.main.adapter.MenuRecyclerAdapter;
import java.util.ArrayList;
import java.util.List;
public class CasherFragment extends BaseFragment<MainPresenter,FragmentCasherBinding> {
private MenuRecyclerAdapter mMenuRecyclerAdapter;
private List<Integer> integers;
@Override
public int getLayoutId() {
return R.layout.fragment_casher;
}
@Override
public void initView() {
mViewBinding.fragmentCasherRecycler.setLayoutManager(new GridLayoutManager(getActivity(), 2));
integers = new ArrayList<>();
integers.add(101);
integers.add(102);
integers.add(103);
integers.add(104);
integers.add(105);
integers.add(106);
mMenuRecyclerAdapter = new MenuRecyclerAdapter(getActivity(), integers);
mMenuRecyclerAdapter.bindToRecyclerView(mViewBinding.fragmentCasherRecycler);
// mViewBinding.fragmentCasherRecycler.addItemDecoration(new MyItemDecoration(getActivity(), 2, R.color.black_zhangfei));
mMenuRecyclerAdapter.setOnItemClickListener(new BaseQuickAdapter.OnItemClickListener() {
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
switch ((int)adapter.getData().get(position)) {
case C.MENU.MENU_VIP://会员
break;
case C.MENU.MENU_RECHARGE://充值
break;
case C.MENU.MENU_MS://营销
break;
case C.MENU.MENU_TICKET://优惠券
break;
case C.MENU.MENU_STATISTICS://统计
break;
case C.MENU.MENU_MANAGER://管理
break;
}
}
});
}
}
......@@ -7,7 +7,7 @@ import android.view.animation.AlphaAnimation;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.LogUtils;
import com.github.ybq.android.spinkit.style.FadingCircle;
import com.xingdata.zzdpos.MainActivity;
import com.xingdata.zzdpos.ui.main.MainActivity;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseActivity;
import com.xingdata.zzdpos.databinding.ActivitySplashBinding;
......
package com.xingdata.zzdpos.util;
import android.content.Context;
import android.content.res.TypedArray;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.drawable.Drawable;
import android.support.v7.widget.RecyclerView;
import android.view.View;
/**
* Created by Administrator on 2017/12/21.
*/
class MyItemDecoration extends RecyclerView.ItemDecoration {
private Drawable mDividerDarwable;
private int mDividerHight = 1;
private Paint mColorPaint;
private int size=2;
public final int[] ATRRS = new int[]{android.R.attr.listDivider};
public MyItemDecoration(Context context) {
final TypedArray ta = context.obtainStyledAttributes(ATRRS);
this.mDividerDarwable = ta.getDrawable(0);
ta.recycle();
}
/*
int dividerHight 分割线的线宽
int dividerColor 分割线的颜色
*/
public MyItemDecoration(Context context, int dividerHight, int dividerColor) {
this(context);
mDividerHight = dividerHight;
mColorPaint = new Paint();
mColorPaint.setColor(dividerColor);
}
/*
int dividerHight 分割线的线宽
int dividerColor 分割线的颜色
*/
public MyItemDecoration(Context context, int dividerHight, int dividerColor, int size) {
this(context);
mDividerHight = dividerHight;
mColorPaint = new Paint();
mColorPaint.setColor(dividerColor);
this.size=size;
}
/*
int dividerHight 分割线的线宽
Drawable dividerDrawable 图片分割线
*/
public MyItemDecoration(Context context, int dividerHight, Drawable dividerDrawable) {
this(context);
mDividerHight = dividerHight;
mDividerDarwable = dividerDrawable;
}
@Override
public void onDraw(Canvas c, RecyclerView parent, RecyclerView.State state) {
super.onDraw(c, parent, state);
//画水平和垂直分割线
drawHorizontalDivider(c, parent);
drawVerticalDivider(c, parent);
}
public void drawVerticalDivider(Canvas c, RecyclerView parent) {
final int childCount = parent.getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = parent.getChildAt(i);
final RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child.getLayoutParams();
final int top = child.getTop() - params.topMargin+30;
final int bottom = child.getBottom() + params.bottomMargin-30;
int left = 0;
int right = 0;
//左边第一列
if ((i % size) == 0) {
//item左边分割线
// left = child.getLeft();
// right = left + mDividerHight;
// mDividerDarwable.setBounds(left, top, right, bottom);
// mDividerDarwable.draw(c);
//item右边分割线
left = child.getRight() + params.rightMargin - mDividerHight;
right = left + mDividerHight;
}
//画分割线
mDividerDarwable.setBounds(left, top, right, bottom);
mDividerDarwable.draw(c);
if (mColorPaint != null) {
c.drawRect(left, top, right, bottom, mColorPaint);
}
}
}
public void drawHorizontalDivider(Canvas c, RecyclerView parent) {
final int childCount = parent.getChildCount();
for (int i = 0; i < childCount; i++) {
final View child = parent.getChildAt(i);
RecyclerView.LayoutParams params = (RecyclerView.LayoutParams) child.getLayoutParams();
final int left = child.getLeft() - params.leftMargin - mDividerHight;
final int right = child.getRight() + params.rightMargin;
int top = 0;
int bottom = 0;
// // 最上面一行
// if ((i / size) == 0) {
//// //当前item最上面的分割线
//// top = child.getTop();
//// //当前item下面的分割线
//// bottom = top + mDividerHight;
//// mDividerDarwable.setBounds(left, top, right, bottom);
//// mDividerDarwable.draw(c);
// if (mColorPaint != null) {
// c.drawRect(left, top, right, bottom, mColorPaint);
// }
// top = child.getBottom() + params.bottomMargin;
// bottom = top + mDividerHight;
// } else {
// if (i!=)
top = child.getBottom() + params.bottomMargin;
bottom = top + mDividerHight;
// }
//画分割线
mDividerDarwable.setBounds(left, top, right, bottom);
mDividerDarwable.draw(c);
if (mColorPaint != null) {
c.drawRect(left, top, right, bottom, mColorPaint);
}
}
}
}
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.xingdata.zzdpos.MainActivity">
<layout>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.xingdata.zzdpos.ui.main.MainActivity">
</android.support.constraint.ConstraintLayout>
<android.support.design.widget.TabLayout
android:id="@+id/tab_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:background="#fff"
android:gravity="center_vertical|center_horizontal"
android:orientation="horizontal"
app:layout_constraintBottom_toBottomOf="parent"
app:tabIndicatorHeight="0dp"
app:tabTextAppearance="@android:style/TextAppearance.Holo.Small">
</android.support.design.widget.TabLayout>
<android.support.v4.view.ViewPager
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/tab_layout"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
</android.support.v4.view.ViewPager>
</android.support.constraint.ConstraintLayout>
</layout>
\ No newline at end of file
<layout>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.administrator.tangkupos.CasherFragment">
<!-- TODO: Update blank fragment layout -->
<android.support.constraint.Guideline
android:id="@+id/guideline"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
app:layout_constraintGuide_percent="0.38" />
<LinearLayout
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@color/black"
android:gravity="center"
android:paddingTop="30dp"
android:weightSum="2"
app:layout_constraintBottom_toBottomOf="@id/guideline"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:drawableTop="@mipmap/icon_receivables"
android:gravity="center"
android:text="@string/menu_receivables"
android:textColor="#FFF" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:drawableTop="@mipmap/icon_billing"
android:gravity="center"
android:text="@string/menu_billing"
android:textColor="#FFF" />
</LinearLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/fragment_casher_recycler"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="@id/guideline" />
</android.support.constraint.ConstraintLayout>
</layout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<layout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ll"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingTop="25dp"
android:paddingBottom="25dp"
android:gravity="center"
android:elevation="0.5dp"
android:background="#fff"
android:layout_margin="0.8dp"
android:orientation="vertical">
<ImageView
android:id="@+id/img"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="4dp"/>
<TextView
android:id="@+id/text"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
</LinearLayout>
</layout>
......@@ -263,14 +263,7 @@
<string name="order_cashier">收银员:%s</string>
<string name="order_states">%s/%s</string>
<string name="title_activity_splash">SplashActivity</string>
<!--菜单界面-->
<string name="menu_checkstand">收银台</string>
<string name="menu_award">兑奖</string>
<string name="menu_order">订单</string>
<string name="menu_vip">会员</string>
<string name="menu_management">管理</string>
<string name="menu_help">帮助</string>
<string name="title_activity_member_manage">MemberManageActivity</string>
<!--临库查询界面-->
<string name="other_selcet_meun">临库查询</string>
......@@ -463,5 +456,16 @@
<string name="gift_add_confirm">马上换购</string>
<string name="gift_sku_price">原价</string>
<!-- 菜单POS -->
<string name="menu_cashier">收银</string>
<string name="menu_service">服务</string>
<string name="menu_myself">个人</string>
<string name="menu_billing">开单</string>
<string name="menu_receivables">收款</string>
<string name="menu_vip">会员</string>
<string name="menu_recharge">充值</string>
<string name="menu_ms">营销</string>
<string name="menu_ticket">发券</string>
<string name="menu_statistics">统计</string>
<string name="menu_manager">管理</string>
</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