Commit fbdd9024 authored by 王海's avatar 王海

修改逻辑

parent c4fa9ba3
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
android:configChanges="keyboard|orientation|screenSize|keyboardHidden" android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:label="@string/main_title" android:label="@string/main_title"
android:launchMode="singleTask" android:launchMode="singleTask"
android:windowSoftInputMode="adjustUnspecified|stateHidden" > android:windowSoftInputMode="adjustUnspecified|stateHidden">
</activity> </activity>
<activity <activity
...@@ -36,20 +36,30 @@ ...@@ -36,20 +36,30 @@
<activity <activity
android:name=".ui.login.LoginActivity" android:name=".ui.login.LoginActivity"
android:configChanges="keyboard|orientation|screenSize|keyboardHidden" android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:windowSoftInputMode="adjustUnspecified|stateHidden" /> android:windowSoftInputMode="adjustUnspecified|stateHidden"/>
<activity <activity
android:name=".ui.exception.ErrorDialogActivity" android:name=".ui.exception.ErrorDialogActivity"
android:configChanges="keyboard|orientation|screenSize|keyboardHidden" android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:theme="@style/Theme.AppCompat.Light.Dialog" /> android:theme="@style/Theme.AppCompat.Light.Dialog"/>
<activity <activity
android:name=".ui.exception.ServerErrActivity" android:name=".ui.exception.ServerErrActivity"
android:configChanges="keyboard|orientation|screenSize|keyboardHidden" android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:theme="@style/Theme.AppCompat.Light.Dialog" /> android:theme="@style/Theme.AppCompat.Light.Dialog"/>
<activity <activity
android:name=".ui.payment.PaymentActivity" android:name=".ui.payment.PaymentActivity"
android:configChanges="keyboard|orientation|screenSize|keyboardHidden" android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:windowSoftInputMode="adjustUnspecified|stateHidden" /> android:windowSoftInputMode="adjustUnspecified|stateHidden"/>
<activity
android:name=".ui.marketing.integral.IntegralActivity"
android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:theme="@style/AppTheme"
android:windowSoftInputMode="adjustUnspecified|stateHidden"/>
<activity
android:name=".ui.marketing.ticket.ReturnTicketActivity"
android:configChanges="keyboard|orientation|screenSize|keyboardHidden"
android:label="@string/title_activity_ticket"
android:theme="@style/AppTheme" />
</application> </application>
</manifest> </manifest>
\ No newline at end of file
...@@ -22,6 +22,7 @@ import com.xingdata.zzdpos.ui.login.fragment.SignInFragment; ...@@ -22,6 +22,7 @@ import com.xingdata.zzdpos.ui.login.fragment.SignInFragment;
import com.xingdata.zzdpos.ui.login.fragment.bean.LoginReturnBean; 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.marketing.integral.IntegralActivity;
import com.xingdata.zzdpos.ui.splash.SplashActivity; import com.xingdata.zzdpos.ui.splash.SplashActivity;
import com.xingdata.zzdpos.view.PopupWindowDownList; import com.xingdata.zzdpos.view.PopupWindowDownList;
...@@ -136,7 +137,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter, ActivityLoginBin ...@@ -136,7 +137,7 @@ public class LoginActivity extends BaseActivity<LoginPresenter, ActivityLoginBin
promptDialog.dismiss(); promptDialog.dismiss();
//如果sn已经绑定款台,则直接跳转主页 //如果sn已经绑定款台,则直接跳转主页
if (loginReturnBean.getBindSN()) { if (loginReturnBean.getBindSN()) {
startActivity(new Intent(LoginActivity.this, MainActivity.class)); startActivity(new Intent(LoginActivity.this, IntegralActivity.class));
LoginActivity.this.finish(); LoginActivity.this.finish();
return; return;
} }
......
package com.xingdata.zzdpos.ui.marketing.integral;
import android.support.annotation.Nullable;
import com.xingdata.zzdpos.base.BasePresenter;
import com.xingdata.zzdpos.base.BaseView;
import com.xingdata.zzdpos.model.Category;
import com.xingdata.zzdpos.model.Gbound;
import com.xingdata.zzdpos.model.Pager;
import com.xingdata.zzdpos.model.Ubound;
import com.xingdata.zzdpos.ui.dialog.LoadingDialog;
import java.util.List;
/**
* Created by Administrator on 2017/11/23.
*/
public interface IntegralContract {
interface View extends BaseView {
void initComplete(List<Category> list, int nowCategory);
void error(String errMsg, LoadingDialog loadingDialog);
void querySucc(Pager<Gbound> pager, Boolean isLoadMore, int queryType, LoadingDialog
loadingDialog);
void addSucc(LoadingDialog loadingDialog);
void updateSucc(LoadingDialog loadingDialog);
void exchangeQuerySucc(Pager<Ubound> uboundPager, LoadingDialog loadingDialog);
void exchangeUpdateSucc(Ubound ubound, LoadingDialog loadingDialog);
}
abstract class Presenter extends BasePresenter<View> {
abstract void initData(Category category, int nowCategory);
abstract void query(int pageNumber, int queryType, LoadingDialog loadingDialog);
abstract void add(@Nullable Gbound gbound, LoadingDialog loadingDialog);
abstract void update(@Nullable Gbound gbound, LoadingDialog loadingDialog);
abstract void exchangeQuery(LoadingDialog loadingDialog);
abstract void exchangeUpdate(@Nullable Ubound ubound, LoadingDialog loadingDialog);
}
}
package com.xingdata.zzdpos.ui.marketing.integral;
import android.support.annotation.Nullable;
import com.xingdata.zzdpos.C;
import com.xingdata.zzdpos.api.ApiFactory;
import com.xingdata.zzdpos.model.Category;
import com.xingdata.zzdpos.model.Gbound;
import com.xingdata.zzdpos.model.Ubound;
import com.xingdata.zzdpos.ui.dialog.LoadingDialog;
import java.util.List;
import io.reactivex.functions.Function;
/**
* Created by Administrator on 2017/11/23.
*/
public class IntegralPresenter extends IntegralContract.Presenter {
private int number = 1;
@Override
public void onAttached() {
}
@Override
public void initData(Category category, int nowCategory) {
ApiFactory.Shop.queryAll(category)
.map(new Function<List<Category>, List<Category>>() {
@Override
public List<Category> apply(List<Category> categoryOnes) throws
Exception {
for (Category categoryOne : categoryOnes) {
categoryOne.setNowCategory(nowCategory);
}
return categoryOnes;
}
}).subscribe(s -> {
mView.initComplete(s, nowCategory);
}, throwable -> {
mView.error(throwable.getMessage(), null);
});
}
/**
* @param pageNumber 页码 >0则使用,<0则使用默认页码number
* @param queryType 请求类型,0:正常请求;1:加载更多请求;2刷新请求
*/
@Override
public void query(int pageNumber, int queryType, LoadingDialog loadingDialog) {
if (pageNumber > 0) {
this.number = pageNumber;
}
ApiFactory.Gbounds.query(C.PRODUCT.PAGE_SIZE, number).subscribe(querySucc -> {
Boolean isLoadMore = false;
if (!querySucc.isLastPage()) {
this.number++;
isLoadMore = true;
} else {
isLoadMore = false;
}
mView.querySucc(querySucc, isLoadMore, queryType, loadingDialog);
}, throwable -> {
mView.error(throwable.getMessage(), loadingDialog);
});
}
@Override
public void add(Gbound gbound, LoadingDialog loadingDialog) {
ApiFactory.Gbounds.add(gbound).subscribe(addSucc -> {
mView.addSucc(loadingDialog);
}, throwable -> {
mView.error(throwable.getMessage(), loadingDialog);
});
}
@Override
public void update(Gbound gbound, LoadingDialog loadingDialog) {
ApiFactory.Gbounds.update(gbound).subscribe(addSucc -> {
mView.updateSucc(loadingDialog);
}, throwable -> {
mView.error(throwable.getMessage(), loadingDialog);
});
}
@Override
public void exchangeQuery(LoadingDialog loadingDialog) {
ApiFactory.Ubounds.query().subscribe(query -> {
mView.exchangeQuerySucc(query, loadingDialog);
}, throwable -> {
mView.error(throwable.getMessage(), loadingDialog);
});
}
@Override
public void exchangeUpdate(@Nullable Ubound ubound, LoadingDialog loadingDialog) {
ApiFactory.Ubounds.update(ubound).subscribe(exchangeUpdateSucc -> {
mView.exchangeUpdateSucc(exchangeUpdateSucc, loadingDialog);
}, throwable -> {
mView.error(throwable.getMessage(), loadingDialog);
});
}
}
package com.xingdata.zzdpos.ui.marketing.integral.adapter;
import android.support.annotation.Nullable;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseAdapter;
import com.xingdata.zzdpos.databinding.ItemIntegralBinding;
import com.xingdata.zzdpos.model.Gbound;
import java.util.List;
/**
* Created by Administrator on 2017/11/24.
*/
public class IntegralAdapter extends BaseAdapter<Gbound, ItemIntegralBinding> {
public IntegralAdapter(int layoutResId, @Nullable List<Gbound> data) {
super(layoutResId, data);
}
@Override
protected void convert(ItemIntegralBinding mViewBinding, Gbound item) {
mViewBinding.tvVip.setText(item.getVipLevelName());
if (item.getSpuCateId() == 0) {
mViewBinding.tvSource.setText("全品类");
} else {
//来源品类
if (item.getSpuCateName() != null) {
mViewBinding.tvSource.setText(item.getSpuCateName());
}
}
//获取规则
mViewBinding.tvGet.setText(item.getTruleName());
//开通启用状态 0:正常 1 暂停 默认 0
if (item.getBoundGetStatus() == 0) {
mViewBinding.tvStatus.setImageResource(R.mipmap.integral_open);
} else {
mViewBinding.tvStatus.setImageResource(R.mipmap.integral_close);
}
}
}
package com.xingdata.zzdpos.ui.marketing.integral.adapter;
import android.support.annotation.Nullable;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseAdapter;
import com.xingdata.zzdpos.databinding.ItemIntegralBinding;
import com.xingdata.zzdpos.model.Ubound;
import com.xingdata.zzdpos.util.ConvertUtil;
import java.util.List;
/**
* Created by Administrator on 2017/11/24.
*/
public class IntegralExchangeAdapter extends BaseAdapter<Ubound, ItemIntegralBinding> {
public IntegralExchangeAdapter(int layoutResId, @Nullable List<Ubound> data) {
super(layoutResId, data);
}
@Override
protected void convert(ItemIntegralBinding mViewBinding, Ubound item) {
mViewBinding.tvVip.setText(item.getBoundValAmt() + "个积分=1元");
//兑换规则
if (item.getBoundOrderAmt() != null && item.getBoundUseNum() != null) {
mViewBinding.tvSource.setText("订单实收金额满" + ConvertUtil.fenToYuan(item.getBoundOrderAmt
()) + "元\n最多使用" + item.getBoundUseNum() + "积分");
}
//备注
mViewBinding.tvGet.setText("无");
if (item.getBoundUseStatus() != null) {
//开通启用状态 0:正常 1 暂停 默认 0
if (item.getBoundUseStatus() == 0) {
mViewBinding.tvStatus.setImageResource(R.mipmap.integral_open);
} else {
mViewBinding.tvStatus.setImageResource(R.mipmap.integral_close);
}
}
}
}
package com.xingdata.zzdpos.ui.marketing.integral.dialog;
import android.annotation.SuppressLint;
import android.content.Context;
import android.text.TextUtils;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.TextView;
import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseActivity;
import com.xingdata.zzdpos.base.BaseDialog;
import com.xingdata.zzdpos.databinding.DialogIntegralExchangeSettingBinding;
import com.xingdata.zzdpos.model.Ubound;
import com.xingdata.zzdpos.ui.dialog.LoadingDialog;
import com.xingdata.zzdpos.ui.marketing.integral.IntegralPresenter;
import com.xingdata.zzdpos.util.ConvertUtil;
/**
* 积分兑换设置界面
*/
public class IntegralExchangeDialog extends BaseDialog<IntegralPresenter,
DialogIntegralExchangeSettingBinding> {
Ubound ubound;
@Override
public int getLayoutId() {
return R.layout.dialog_integral_exchange_setting;
}
@Override
protected boolean isShowTitle() {
return true;
}
@Override
public int getTitle() {
return R.string.integral_exchange_title;
}
@SuppressLint("SetTextI18n")
@Override
public void initView() {
setCancelable(false);
mViewBinding.setOnClickListener(view -> {
hintKbTwo();
switch (view.getId()) {
case R.id.rd_suspendeds: {
//暂停
ubound.setBoundUseStatus((byte) 1);
}
break;
case R.id.rd_starts: {
//启用
ubound.setBoundUseStatus((byte) 0);
}
break;
}
});
initUiData();
}
private void initUiData() {
if (ubound != null) {
if (ubound.getBoundUseStatus() != null && ubound.getBoundUseStatus() == 0) {
mViewBinding.rdStarts.setChecked(true);
} else if (ubound.getBoundUseStatus() != null && ubound.getBoundUseStatus() == 1) {
mViewBinding.rdSuspendeds.setChecked(true);
}
if (ubound.getBoundValAmt() != null) {
mViewBinding.etIntegralExchangeRuleCountMoney.setText(ubound.getBoundValAmt() + "");
}
if (ubound.getBoundOrderAmt() != null) {
mViewBinding.etIntegralExchangeMoney.setText(ConvertUtil.fenToYuanNoPoint(ubound
.getBoundOrderAmt()));
}
if (ubound.getBoundUseNum() != null) {
mViewBinding.etIntegralExchangeCount.setText(ubound.getBoundUseNum() + "");
}
}
}
public void setData(Ubound ubound) {
this.ubound = ubound;
}
@Override
public void onConfirmClick(View view) {
super.onConfirmClick(view);
if (isNullAndSet()) {
LoadingDialog loadingDialog = new LoadingDialog();
loadingDialog.show((BaseActivity) getActivity());
ubound.setUpdateTime(null);
ubound.setCreateTime(null);
mPresenter.exchangeUpdate(ubound, loadingDialog);
this.dismiss();
} else {
ToastUtils.showLong("输入数据不能null");
}
}
/**
* 判断用户输入数据是否为null
*
* @return 输入为null返回false 反之返回true
*/
private boolean isNullAndSet() {
if (ubound == null || ubound.getBoundUseStatus() == null) {
return false;
}
if (TextUtils.isEmpty(mViewBinding.etIntegralExchangeRuleCountMoney.getText().toString())
|| TextUtils.isEmpty(mViewBinding.etIntegralExchangeMoney.getText().toString())
|| TextUtils.isEmpty(mViewBinding.etIntegralExchangeCount.getText().toString
())) {
return false;
}
ubound.setBoundValAmt(Long.parseLong(mViewBinding.etIntegralExchangeRuleCountMoney
.getText().toString()));
ubound.setBoundOrderAmt(ConvertUtil.yuanToFen(mViewBinding.etIntegralExchangeMoney
.getText().toString()));
ubound.setBoundUseNum(Long.parseLong(mViewBinding.etIntegralExchangeCount.getText()
.toString()));
return true;
}
/**
* 显示软键盘,Dialog使用
*/
public void hintKbTwo() {
View view = getDialog().getCurrentFocus();
if (view == null) {
return;
}
if (view instanceof TextView) {
InputMethodManager mInputMethodManager = (InputMethodManager) getContext()
.getSystemService(Context.INPUT_METHOD_SERVICE);
mInputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager
.RESULT_UNCHANGED_SHOWN);
}
}
@Override
public void dismiss() {
hintKbTwo();
super.dismiss();
}
}
package com.xingdata.zzdpos.ui.marketing.ticket;
import android.support.v7.widget.GridLayoutManager;
import android.text.Html;
import android.view.View;
import com.blankj.utilcode.util.ActivityUtils;
import com.blankj.utilcode.util.LogUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseActivity;
import com.xingdata.zzdpos.databinding.ActivityReturnTicketBinding;
import com.xingdata.zzdpos.model.Pager;
import com.xingdata.zzdpos.model.Trule;
import com.xingdata.zzdpos.ui.dialog.LoadingDialog;
import com.xingdata.zzdpos.ui.marketing.ticket.adapter.ReturnTicketAdapter;
import com.xingdata.zzdpos.ui.marketing.ticket.dialog.TicketAddDialog;
import com.xingdata.zzdpos.util.OnClickListener;
import com.xingdata.zzdpos.util.RecyclerViewUtil;
import java.util.ArrayList;
public class ReturnTicketActivity extends BaseActivity<ReturnTicketPresenter,
ActivityReturnTicketBinding>
implements ReturnTicketContract.View {
ReturnTicketAdapter returnTicketAdapter;
LoadingDialog loadingDialog = new LoadingDialog();
@Override
public int getLayoutId() {
return R.layout.activity_return_ticket;
}
@Override
public void initView() {
mViewBinding.icTitle.tvTitle.setText("优惠券规则");
mViewBinding.icTitle.setOnClickListener(new OnClickListener() {
@Override
protected void myOnClickListener(View v) {
ActivityUtils.finishActivity(ReturnTicketActivity.class);
}
});
mViewBinding.btnGroup.setText(Html.fromHtml(
getResources().
getString(R.string
.tv_ticket_count, "<font color='#1f7bdb'><big> " + "0" + " " +
"</big></font>")));
final int SPACING = mContext.getResources().getDimensionPixelOffset(R.dimen
.vip_message_item_spacing);
returnTicketAdapter = new
ReturnTicketAdapter(new ArrayList<>(), mPresenter);
mViewBinding.rcTicket.setAdapter(returnTicketAdapter);
mViewBinding.rcTicket.setLayoutManager(new
GridLayoutManager(ReturnTicketActivity.this,
4));
mViewBinding.rcTicket.addItemDecoration(new RecyclerViewUtil.GridSpacingItemDecoration(4,
SPACING, true));
mViewBinding.setOnClickListener(view ->
{
switch (view.getId()) {
case R.id.btn_add: {
mPresenter.ticketAddDialog = new TicketAddDialog();
mPresenter.ticketAddDialog.show(this);
}
break;
default: {
}
break;
}
});
}
@Override
public void error(String errorMsg, LoadingDialog loadingDialog) {
closeLoading(loadingDialog);
LogUtils.e(errorMsg);
ToastUtils.showLong(errorMsg);
}
@Override
public void addSucc(LoadingDialog loadingDialog) {
if (mPresenter.ticketAddDialog != null && mPresenter.ticketAddDialog.isShowing) {
mPresenter.ticketAddDialog.dismiss();
}
mPresenter.truleQuery(loadingDialog);
}
@Override
public void truleQuerySucc(Pager<Trule> trulePager, LoadingDialog loadingDialog) {
closeLoading(loadingDialog);
if (trulePager == null || trulePager.getList() == null || trulePager.getList().size() <=
0) {
mViewBinding.tvEmpty.setVisibility(View.VISIBLE);
}
if (trulePager != null && trulePager.getList() != null) {
mViewBinding.tvEmpty.setVisibility(View.GONE);
returnTicketAdapter.setNewData(trulePager.getList());
mViewBinding.btnGroup.setText(Html.fromHtml(getResources().getString(R.string
.tv_ticket_count,
"<font color='#1f7bdb'><big> " + trulePager.getList().size() + " " +
"</big></font>")));
}
}
@Override
public void truleUpdateSucc(LoadingDialog loadingDialog) {
if (mPresenter.ticketAddDialog != null && mPresenter.ticketAddDialog.isShowing) {
mPresenter.ticketAddDialog.dismiss();
}
mPresenter.truleQuery(loadingDialog);
}
private void closeLoading(LoadingDialog loadingDialog) {
if (loadingDialog != null) {
loadingDialog.dismiss();
}
}
@Override
protected void onResume() {
super.onResume();
loadingDialog.show(this);
mPresenter.truleQuery(loadingDialog);
}
}
package com.xingdata.zzdpos.ui.marketing.ticket;
import android.support.annotation.Nullable;
import com.xingdata.zzdpos.base.BasePresenter;
import com.xingdata.zzdpos.base.BaseView;
import com.xingdata.zzdpos.model.Pager;
import com.xingdata.zzdpos.model.Trule;
import com.xingdata.zzdpos.ui.dialog.LoadingDialog;
/**
* Created by Administrator on 2017/11/24.
*/
public interface ReturnTicketContract {
interface View extends BaseView {
void error(String errorMsg, LoadingDialog loadingDialog);
void addSucc(LoadingDialog loadingDialog);
void truleQuerySucc(Pager<Trule> trulePager, LoadingDialog loadingDialog);
void truleUpdateSucc(LoadingDialog loadingDialog);
}
abstract class Presenter extends BasePresenter<View> {
abstract void add(@Nullable Trule trule, LoadingDialog loadingDialog);
abstract void truleQuery(LoadingDialog loadingDialog);
abstract void truleUpdate(@Nullable Trule trule, LoadingDialog loadingDialog);
}
}
package com.xingdata.zzdpos.ui.marketing.ticket;
import android.support.annotation.Nullable;
import com.xingdata.zzdpos.api.ApiFactory;
import com.xingdata.zzdpos.model.Trule;
import com.xingdata.zzdpos.ui.dialog.LoadingDialog;
import com.xingdata.zzdpos.ui.marketing.ticket.dialog.TicketAddDialog;
/**
* Created by Administrator on 2017/11/24.
*/
public class ReturnTicketPresenter extends ReturnTicketContract.Presenter {
public TicketAddDialog ticketAddDialog;
@Override
public void onAttached() {
}
@Override
public void add(@Nullable Trule trule, LoadingDialog loadingDialog) {
ApiFactory.TRULE.truleAdd(trule).subscribe(s -> {
mView.addSucc(loadingDialog);
}, throwable -> {
mView.error(throwable.getMessage(), loadingDialog);
});
}
@Override
public void truleQuery(LoadingDialog loadingDialog) {
ApiFactory.TRULE.truleQuery().subscribe(pager -> {
mView.truleQuerySucc(pager, loadingDialog);
}, throwable -> {
mView.error(throwable.getMessage(), loadingDialog);
});
}
@Override
public void truleUpdate(@Nullable Trule trule, LoadingDialog loadingDialog) {
ApiFactory.TRULE.truleUpdate(trule).subscribe(pager -> {
mView.truleUpdateSucc(loadingDialog);
}, throwable -> {
mView.error(throwable.getMessage(), loadingDialog);
});
}
}
package com.xingdata.zzdpos.ui.marketing.ticket.adapter;
import android.support.annotation.Nullable;
import android.view.View;
import com.blankj.utilcode.util.TimeUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseActivity;
import com.xingdata.zzdpos.base.BaseAdapter;
import com.xingdata.zzdpos.databinding.ItemReturnTicketBinding;
import com.xingdata.zzdpos.model.Trule;
import com.xingdata.zzdpos.ui.marketing.ticket.ReturnTicketPresenter;
import com.xingdata.zzdpos.ui.marketing.ticket.dialog.TicketAddDialog;
import com.xingdata.zzdpos.util.ConvertUtil;
import java.text.SimpleDateFormat;
import java.util.List;
public class ReturnTicketAdapter extends BaseAdapter<Trule, ItemReturnTicketBinding> {
ReturnTicketPresenter mPersenter;
public ReturnTicketAdapter(@Nullable List<Trule> data, ReturnTicketPresenter mPersenter) {
super(R.layout.item_return_ticket, data);
this.mPersenter = mPersenter;
}
@Override
protected void convert(ItemReturnTicketBinding mViewBinding, Trule item) {
mViewBinding.tvTicket.setText("优\n惠\n券");
// mViewBinding.tvSend.setText("发\n券");
mViewBinding.tvSend.setText("\n");
mViewBinding.tvTicketMoney.setText(ConvertUtil.fenToYuanNoPoint(item.getTruleValAmt()));
mViewBinding.tvRule.setText(mContext.getResources().getString(R.string.tv_rule,
ConvertUtil.fenToYuanNoPoint(item.getTruleOrderAmt())));
mViewBinding.tvDate.setText(mContext.getResources().getString(R.string.tv_date,
TimeUtils.millis2String(item.getTruleExp(), new SimpleDateFormat("yyy-mm-dd"))));
mViewBinding.clSend.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
ToastUtils.showLong("发券");
}
});
mViewBinding.clItem.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
mPersenter.ticketAddDialog = new TicketAddDialog();
mPersenter.ticketAddDialog.setNowType(2);
mPersenter.ticketAddDialog.editTicketData(item);
mPersenter.ticketAddDialog.show((BaseActivity) mContext);
}
});
}
}
package com.xingdata.zzdpos.ui.marketing.ticket.dialog;
import android.annotation.SuppressLint;
import android.app.DatePickerDialog;
import android.content.Context;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;
import android.view.View;
import android.view.inputmethod.InputMethodManager;
import android.widget.DatePicker;
import android.widget.TextView;
import com.blankj.utilcode.util.TimeUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.xingdata.zzdpos.R;
import com.xingdata.zzdpos.base.BaseActivity;
import com.xingdata.zzdpos.base.BaseDialog;
import com.xingdata.zzdpos.databinding.DialogTicketAddSettingBinding;
import com.xingdata.zzdpos.model.Trule;
import com.xingdata.zzdpos.ui.dialog.LoadingDialog;
import com.xingdata.zzdpos.ui.marketing.ticket.ReturnTicketPresenter;
import com.xingdata.zzdpos.util.ConvertUtil;
import java.text.SimpleDateFormat;
import java.util.Calendar;
/**
* 积分获取设置界面
*/
public class TicketAddDialog extends BaseDialog<ReturnTicketPresenter,
DialogTicketAddSettingBinding> {
LoadingDialog loadingDialog = new LoadingDialog();
//0:正常 1暂停
private byte nowStatus = 1;
//当前编辑的对象
private Trule trule = new Trule();
//1为新增,2为更新
private int nowType = 1;
@Override
public int getLayoutId() {
return R.layout.dialog_ticket_add_setting;
}
@Override
protected boolean isShowTitle() {
return true;
}
@Override
public int getTitle() {
return R.string.return_ticket_title;
}
@SuppressLint("SetTextI18n")
@Override
public void initView() {
hintKbTwo();
mViewBinding.etTicketMoney.addTextChangedListener(mTextWatcher);
mViewBinding.etRuleMoney.addTextChangedListener(mTextWatcher);
mViewBinding.etTicketCount.addTextChangedListener(mTextWatcher);
if (nowType == 2) {
setTitle("编辑优惠券");
mViewBinding.tvIntegralRuleName.setText(trule.getTruleName());
if (trule.getTruleStatus() == 1) {
mViewBinding.rbSuspended.setChecked(true);
} else if (trule.getTruleStatus() == 0) {
mViewBinding.rbStart.setChecked(true);
}
mViewBinding.etTicketMoney.setText(ConvertUtil.fenToYuanNoPoint(trule.getTruleValAmt
()));
mViewBinding.tvDate.setText(TimeUtils.millis2String(trule.getTruleExp(), new
SimpleDateFormat("yyyy-mm-dd")));
mViewBinding.etRuleMoney.setText(ConvertUtil.fenToYuanNoPoint(trule.getTruleOrderAmt
()));
mViewBinding.etTicketCount.setText(trule.getTruleUseNum() + "");
}
mViewBinding.setOnClickListener(view -> {
hintKbTwo();
switch (view.getId()) {
case R.id.tv_date: {
showDialogPick(mViewBinding.tvDate);
}
break;
case R.id.rb_suspended: {
//暂停
nowStatus = 1;
}
break;
case R.id.rb_start: {
//启用
nowStatus = 0;
}
break;
default: {
}
break;
}
});
}
public void editTicketData(Trule trule) {
this.trule = trule;
}
@Override
public void onConfirmClick(View view) {
if (isNull()) {
if (Integer.parseInt(mViewBinding.etRuleMoney.getText().toString()) <= Integer
.parseInt(mViewBinding.etTicketMoney.getText().toString())) {
ToastUtils.showLong("可用金额需大于优惠券面值 ");
return;
}
loadingDialog.show((BaseActivity) mContext);
if (nowType == 1) {
mPresenter.add(getUiData(), loadingDialog);
} else if (nowType == 2) {
mPresenter.truleUpdate(getUiData(), loadingDialog);
}
} else {
ToastUtils.showLong("输入数据不能null");
}
super.onConfirmClick(view);
}
private Trule getUiData() {
mViewBinding.tvIntegralRuleName.setText(mViewBinding.etTicketMoney.getText().toString() +
"元优惠券");
trule.setTruleName(mViewBinding.tvIntegralRuleName.getText().toString());
//0:正常 1暂停 默认0
trule.setTruleStatus(nowStatus);
trule.setTruleValAmt(ConvertUtil.yuanToFen(mViewBinding.etTicketMoney.getText().toString
()));
trule.setTruleExp(TimeUtils.string2Millis(mViewBinding.tvDate.getText().toString(), new
SimpleDateFormat("yyyy-mm-dd")));
trule.setTruleOrderAmt(ConvertUtil.yuanToFen(mViewBinding.etRuleMoney.getText().toString
()));
if (!mViewBinding.etTicketCount.getText().toString().equals("")) {
trule.setTruleUseNum(Byte.parseByte(mViewBinding.etTicketCount.getText().toString()));
} else {
trule.setTruleUseNum((byte) 1);
}
return trule;
}
/**
* 判断用户输入数据是否为null
*
* @return 输入为null返回false 反之返回true
*/
private boolean isNull() {
return !(TextUtils.isEmpty(mViewBinding.etTicketMoney.getText().toString())
|| TextUtils.isEmpty(mViewBinding.tvDate.getText().toString())
|| TextUtils.isEmpty(mViewBinding.etRuleMoney.getText().toString())
|| TextUtils.isEmpty(mViewBinding.etTicketCount.getText().toString()));
}
//将两个选择时间的dialog放在该函数中
private void showDialogPick(final View btn) {
//获取Calendar对象,用于获取当前时间
final Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
int month = calendar.get(Calendar.MONTH);
int day = calendar.get(Calendar.DAY_OF_MONTH);
//实例化DatePickerDialog对象
DatePickerDialog datePickerDialog = new DatePickerDialog(mContext, new
DatePickerDialog.OnDateSetListener() {
//选择完日期后会调用该回调函数
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int
dayOfMonth) {
//因为monthOfYear会比实际月份少一月所以这边要加1
((TextView) btn).setText(year + "-" + (monthOfYear + 1) + "-" + dayOfMonth);
}
}, year, month, day);
//弹出选择日期对话框
datePickerDialog.show();
}
/**
* 显示软键盘,Dialog使用
*/
public void hintKbTwo() {
View view = getDialog().getCurrentFocus();
if (view == null) {
return;
}
if (view instanceof TextView) {
InputMethodManager mInputMethodManager = (InputMethodManager) getContext()
.getSystemService(Context.INPUT_METHOD_SERVICE);
mInputMethodManager.hideSoftInputFromWindow(view.getWindowToken(), InputMethodManager
.RESULT_UNCHANGED_SHOWN);
}
}
private TextWatcher mTextWatcher = new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void afterTextChanged(Editable s) {
String text = s.toString();
int len = s.toString().length();
if (len == 1 && text.equals("0")) {
s.clear();
}
}
};
public void setNowType(int type) {
trule = new Trule();
this.nowType = type;
}
@Override
public void dismiss() {
hintKbTwo();
super.dismiss();
}
}
...@@ -55,7 +55,7 @@ public final class SystemUtil { ...@@ -55,7 +55,7 @@ public final class SystemUtil {
} }
} }
// return deviceSN; // return deviceSN;
return "92209325"; return "92209329";
} }
......
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!--被按压时-->
<item android:color="@color/blue" android:drawable="@drawable/radio_shape_item" android:state_checked="true"/>
<!--普通状态,这里在stroke中通过dashWidth和dashGap设置边线为虚线-->
<item android:color="@color/black" android:state_checked="false">
<shape>
<!-- 边框颜色 -->
<stroke
android:width="0.5dp"
android:color="@color/transparent"/>
</shape>
</item>
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:left="-2dp"
android:right="-2dp"
android:top="-2dp">
<shape>
<solid android:color="@android:color/transparent"/>
<stroke
android:width="2dp"
android:color="@color/blue"/>
</shape>
</item>
</layer-list>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@mipmap/radio_select_bg" android:state_checked="true"/>
<item android:drawable="@mipmap/radio_normal_bg" android:state_checked="false"/>
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/shape_navy_blue_pressed" android:state_pressed="true"/>
<item android:drawable="@drawable/shape_navy_blue"/>
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/all_transparent" android:state_enabled="false" />
<item android:drawable="@drawable/shape_gray_round_rectangle_stroke" android:state_pressed="true" />
<item android:drawable="@drawable/shape_white_round_rectangle_blue" android:state_focused="true" />
<item android:drawable="@drawable/shape_white_round_rectangle_dark" />
</selector>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/all_shape_radius" />
<solid android:color="@color/navy_blue" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/all_shape_radius" />
<solid android:color="@color/deep_blue" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/all_shape_radius" />
<stroke
android:width="@dimen/edit_border"
android:color="@color/blue" />
<solid android:color="@color/white" />
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/all_shape_radius" />
<stroke
android:width="@dimen/edit_border"
android:color="@color/edittext_border" />
<solid android:color="@color/white" />
</shape>
\ No newline at end of file
This diff is collapsed.
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<variable
name="OnClickListener"
type="android.view.View.OnClickListener"></variable>
</data>
<android.support.constraint.ConstraintLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/appBack"
tools:context="com.xingdata.zzdhd.ui.manager.ticket.ReturnTicketActivity">
<include
android:id="@+id/ic_title"
layout="@layout/title"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toTopOf="@id/ll_menu"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_weight="@integer/all_top_weight"/>
<LinearLayout
android:id="@+id/ll_menu"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@color/white"
android:gravity="center"
android:orientation="horizontal"
android:paddingLeft="@dimen/all_margin"
android:paddingRight="@dimen/all_margin"
app:layout_constraintBottom_toBottomOf="@id/rc_ticket"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/ic_title"
app:layout_constraintVertical_weight="2.5">
<TextView
android:id="@+id/btn_group"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginStart="@dimen/all_spacing"
android:layout_weight="1.2"
android:background="@color/transparent"
android:drawablePadding="@dimen/all_spacing"
android:drawableStart="@mipmap/login_phone"
android:foreground="?android:attr/selectableItemBackground"
android:padding="@dimen/fragment_store_item_spacing"
android:text="共 2 种优惠券"
android:textColor="@color/menu_back"
android:textSize="@dimen/all_text_size"/>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="7.5"/>
<Button
android:id="@+id/btn_add"
android:layout_width="0dp"
android:layout_height="@dimen/fragment_store_et_height"
android:layout_weight="1"
android:background="@drawable/selector_navy_blue"
android:drawableLeft="@mipmap/bindingcounter_addcounter_befor"
android:onClick="@{OnClickListener}"
android:paddingLeft="5dp"
android:text="添加优惠券"
android:textColor="@color/white"
android:textSize="@dimen/et_textsize"/>
</LinearLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/rc_ticket"
android:layout_width="0dp"
android:layout_height="0dp"
android:padding="@dimen/all_margin_big"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/ll_menu"
app:layout_constraintVertical_weight="22">
</android.support.v7.widget.RecyclerView>
<TextView
android:id="@+id/tv_empty"
android:layout_width="0dp"
android:layout_height="0dp"
android:background="@color/appBack"
android:drawableTop="@mipmap/icon_things_null"
android:gravity="center"
android:padding="100dp"
android:text="@string/empty_other_select"
android:textColor="@color/white_half"
android:textSize="@dimen/all_text_size_big"
android:visibility="gone"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/ll_menu"
app:layout_constraintVertical_weight="22"/>
</android.support.constraint.ConstraintLayout>
</layout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="OnClickListener"
type="android.view.View.OnClickListener"></variable>
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/store_back"
android:focusable="true"
android:orientation="vertical">
<View
android:layout_width="match_parent"
android:layout_height="@dimen/all_line_width"
android:background="@color/gary1"
android:paddingLeft="@dimen/all_margin"
android:paddingRight="@dimen/all_margin"></View>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:gravity="center"
android:padding="@dimen/all_padding">
<TextView
android:id="@+id/tv_status"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:paddingStart="@dimen/all_margin"
android:text="启用状态:"
android:textColor="@color/black"
android:textSize="@dimen/text_secondary_title"/>
<RadioGroup
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal">
<RadioButton
android:id="@+id/rd_suspendeds"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/all_margin"
android:layout_marginRight="@dimen/all_margin"
android:layout_weight="1"
android:background="@drawable/selector_checkbox_bg"
android:button="@null"
android:onClick="@{OnClickListener}"
android:text="暂停 "
android:textSize="@dimen/et_textsize"/>
<RadioButton
android:id="@+id/rd_starts"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/all_margin"
android:layout_marginRight="@dimen/all_margin"
android:layout_weight="1"
android:background="@drawable/selector_checkbox_bg"
android:button="@null"
android:onClick="@{OnClickListener}"
android:text="启用 "
android:textSize="@dimen/et_textsize"/>
</RadioGroup>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="@dimen/all_line_width"
android:background="@color/gary1"
android:paddingLeft="@dimen/all_margin"
android:paddingRight="@dimen/all_margin"></View>
<LinearLayout
android:id="@+id/ll_all"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:gravity="center"
android:orientation="vertical"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="@dimen/all_padding">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:paddingStart="@dimen/all_margin"
android:text="积分面值:"
android:textColor="@color/black"
android:textSize="@dimen/text_secondary_title"/>
<EditText
android:id="@+id/et_integral_exchange_rule_count_money"
style="@style/dialog_edit"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_weight="2"
android:digits="1234567890"
android:ems="5"
android:gravity="center_vertical"
android:inputType="phone|number"
android:maxLength="5"
android:saveEnabled="false"/>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
android:text=" 个积分等于1元"
android:textColor="@color/black"
android:textSize="@dimen/et_textsize"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="@dimen/all_padding">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:paddingStart="@dimen/all_margin"
android:text="兑换条件:"
android:textColor="@color/black"
android:textSize="@dimen/text_secondary_title"/>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:gravity="right"
android:text="订单实收满 "
android:textColor="@color/black"
android:textSize="@dimen/et_textsize"/>
<EditText
android:id="@+id/et_integral_exchange_money"
style="@style/dialog_edit"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_weight="2"
android:digits="1234567890"
android:ems="5"
android:gravity="center_vertical"
android:inputType="phone|number"
android:maxLength="5"
android:saveEnabled="false"/>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
android:text="元"
android:textColor="@color/black"
android:textSize="@dimen/et_textsize"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:padding="@dimen/all_padding"
android:paddingBottom="@dimen/all_margin"
android:paddingTop="@dimen/all_margin">
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:paddingStart="@dimen/all_margin"
android:text=""
android:textColor="@color/black"
android:textSize="@dimen/text_secondary_title"/>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="2"
android:gravity="right"
android:text="可以使用 "
android:textColor="@color/black"
android:textSize="@dimen/et_textsize"/>
<EditText
android:id="@+id/et_integral_exchange_count"
style="@style/dialog_edit"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_centerHorizontal="true"
android:layout_weight="2"
android:digits="1234567890"
android:ems="5"
android:gravity="center_vertical"
android:inputType="phone|number"
android:maxLength="5"
android:saveEnabled="false"/>
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
android:text="个积分"
android:textColor="@color/black"
android:textSize="@dimen/et_textsize"/>
</LinearLayout>
</LinearLayout>
</LinearLayout>
</layout>
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
...@@ -68,8 +68,7 @@ ...@@ -68,8 +68,7 @@
android:ems="10" android:ems="10"
android:hint="@string/login_et_password_hint" android:hint="@string/login_et_password_hint"
android:inputType="textPassword" android:inputType="textPassword"
android:maxLength="16" android:maxLength="16"/>
/>
<Button <Button
...@@ -80,6 +79,7 @@ ...@@ -80,6 +79,7 @@
android:layout_marginRight="@dimen/all_margin_left" android:layout_marginRight="@dimen/all_margin_left"
android:layout_marginTop="@dimen/et_margin_logo" android:layout_marginTop="@dimen/et_margin_logo"
android:background="@drawable/red_border" android:background="@drawable/red_border"
android:imeOptions="actionDone"
android:onClick="@{onClickListener}" android:onClick="@{onClickListener}"
android:text="@string/login_signinfragmentfragment_btn_login" android:text="@string/login_signinfragmentfragment_btn_login"
android:textColor="@color/white" android:textColor="@color/white"
...@@ -87,9 +87,9 @@ ...@@ -87,9 +87,9 @@
<RelativeLayout <RelativeLayout
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/all_margin_left" android:layout_marginLeft="@dimen/all_margin_left"
android:layout_marginRight="@dimen/all_margin_left" android:layout_marginRight="@dimen/all_margin_left"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/et_margin_logo"> android:layout_marginTop="@dimen/et_margin_logo">
<TextView <TextView
......
<?xml version="1.0" encoding="utf-8"?>
<layout>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/cv_item"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:paddingTop="@dimen/all_padding"
android:paddingBottom="@dimen/all_padding"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_vip"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
android:text="适用会员"
android:textSize="@dimen/et_textsize"/>
<TextView
android:id="@+id/tv_source"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="5"
android:text="来源品类"
android:textSize="@dimen/et_textsize"/>
<TextView
android:id="@+id/tv_get"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="3"
android:text="获取规则"
android:textSize="@dimen/et_textsize"/>
<ImageView
android:id="@+id/tv_status"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:src="@mipmap/integral_open"
android:textSize="@dimen/et_textsize"/>
</LinearLayout>
</layout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:app="http://schemas.android.com/apk/res-auto">
<data>
<variable
name="ticket"
type="com.xingdata.zzdpos.model.Ticket"/>
</data>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal">
<android.support.constraint.ConstraintLayout
android:id="@+id/cl_item"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/return_ticket_one"/>
<LinearLayout
android:id="@+id/ll_top"
android:layout_width="0dp"
android:layout_height="0dp"
android:gravity="center"
android:orientation="horizontal"
android:padding="@dimen/all_padding"
app:layout_constraintBottom_toTopOf="@id/ll_bottom"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_weight="2.5">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:text="¥"
android:textColor="@color/white"
android:textSize="@dimen/et_textsize"/>
<TextView
android:id="@+id/tv_ticket_money"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="@dimen/all_padding"
android:gravity="center"
android:text="20"
android:textColor="@color/white"
android:textSize="45sp"
android:textStyle="bold"/>
<TextView
android:id="@+id/tv_ticket"
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:layout_marginLeft="@dimen/all_padding"
android:text="优惠券"
android:textColor="@color/white"
android:textSize="@dimen/et_textsize"/>
</LinearLayout>
<LinearLayout
android:id="@+id/ll_bottom"
android:layout_width="0dp"
android:layout_height="0dp"
android:gravity="center"
android:orientation="vertical"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/ll_top"
app:layout_constraintVertical_weight="2">
<TextView
android:id="@+id/tv_rule"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_weight="1"
android:text="@string/tv_rule"
android:textColor="@color/white"
android:textSize="@dimen/et_textsize"/>
<TextView
android:id="@+id/tv_date"
android:layout_width="wrap_content"
android:layout_height="0dp"
android:layout_marginTop="@dimen/all_padding"
android:layout_weight="1"
android:text="@string/tv_date"
android:textColor="@color/white"
android:textSize="@dimen/et_text_mini"/>
</LinearLayout>
</android.support.constraint.ConstraintLayout>
<android.support.constraint.ConstraintLayout
android:id="@+id/cl_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/return_ticket_two"/>
<TextView
android:id="@+id/tv_send"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="发券"
android:textColor="@color/white"
android:textSize="@dimen/et_textsize"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"/>
</android.support.constraint.ConstraintLayout>
</LinearLayout>
</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:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="#EEEEEE">
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="#aaa"/>
<ImageView
android:id="@+id/iv_cancel"
android:layout_width="35dp"
android:layout_height="35dp"
android:layout_centerVertical="true"
android:layout_marginLeft="17dp"
android:padding="8dp"
android:src="@mipmap/to_down"/>
<TextView
android:id="@+id/tv_finish"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="17dp"
android:padding="8dp"
android:text="完成"
android:textColor="#24AD9D"
android:textSize="18sp"/>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="#aaa"/>
</RelativeLayout>
<!--此部分需要完整复制过去,删减或者更改ID会导致初始化找不到内容而报空-->
<LinearLayout
android:id="@+id/optionspicker"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"
android:orientation="horizontal">
<com.bigkoo.pickerview.lib.WheelView
android:id="@+id/options1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<com.bigkoo.pickerview.lib.WheelView
android:id="@+id/options2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
<com.bigkoo.pickerview.lib.WheelView
android:id="@+id/options3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"/>
</LinearLayout>
<View
android:layout_width="match_parent"
android:layout_height="0.5dp"
android:background="#24ad9d"/>
</LinearLayout>
</layout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<TextView
android:id="@+id/tv_empty"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:drawablePadding="@dimen/all_margin"
android:drawableTop="@mipmap/icon_things_null"
android:gravity="center"
android:lineSpacingExtra="@dimen/all_padding"
android:text="@string/empty_other_select"
android:textColor="@color/white_half"
android:textSize="@dimen/all_text_size_big" />
</LinearLayout>
\ No newline at end of file
...@@ -246,13 +246,16 @@ ...@@ -246,13 +246,16 @@
<item name="android:focusable">false</item> <item name="android:focusable">false</item>
<item name="android:focusableInTouchMode">false</item> <item name="android:focusableInTouchMode">false</item>
</style> </style>
<style name="button_positive_noradius" parent="android:ButtonBar"> <style name="button_positive_noradius" parent="android:ButtonBar">
<item name="android:background">@drawable/selector_gradient_red_button_background_noradius</item> <item name="android:background">@drawable/selector_gradient_red_button_background_noradius
</item>
<item name="android:textColor">@color/white</item> <item name="android:textColor">@color/white</item>
<item name="android:gravity">center</item> <item name="android:gravity">center</item>
<item name="android:focusable">false</item> <item name="android:focusable">false</item>
<item name="android:focusableInTouchMode">false</item> <item name="android:focusableInTouchMode">false</item>
</style> </style>
<style name="button_positive_allradius" parent="android:ButtonBar"> <style name="button_positive_allradius" parent="android:ButtonBar">
<item name="android:background">@drawable/red_border_allradius</item> <item name="android:background">@drawable/red_border_allradius</item>
<item name="android:textColor">@color/white</item> <item name="android:textColor">@color/white</item>
...@@ -260,6 +263,7 @@ ...@@ -260,6 +263,7 @@
<item name="android:focusable">false</item> <item name="android:focusable">false</item>
<item name="android:focusableInTouchMode">false</item> <item name="android:focusableInTouchMode">false</item>
</style> </style>
<style name="button_positive_bg_gray" parent="android:ButtonBar"> <style name="button_positive_bg_gray" parent="android:ButtonBar">
<item name="android:background">@drawable/selector_gradient_gray_button_background</item> <item name="android:background">@drawable/selector_gradient_gray_button_background</item>
<item name="android:textColor">@color/blue</item> <item name="android:textColor">@color/blue</item>
...@@ -267,13 +271,17 @@ ...@@ -267,13 +271,17 @@
<item name="android:focusable">false</item> <item name="android:focusable">false</item>
<item name="android:focusableInTouchMode">false</item> <item name="android:focusableInTouchMode">false</item>
</style> </style>
<style name="button_positive_bg_gray_noradius" parent="android:ButtonBar"> <style name="button_positive_bg_gray_noradius" parent="android:ButtonBar">
<item name="android:background">@drawable/selector_gradient_gray_button_background_noradius</item> <item name="android:background">
@drawable/selector_gradient_gray_button_background_noradius
</item>
<item name="android:textColor">@color/blue</item> <item name="android:textColor">@color/blue</item>
<item name="android:gravity">center</item> <item name="android:gravity">center</item>
<item name="android:focusable">false</item> <item name="android:focusable">false</item>
<item name="android:focusableInTouchMode">false</item> <item name="android:focusableInTouchMode">false</item>
</style> </style>
<style name="xuline_margin"> <style name="xuline_margin">
<item name="android:layout_width">match_parent</item> <item name="android:layout_width">match_parent</item>
<item name="android:layout_height">1dp</item> <item name="android:layout_height">1dp</item>
...@@ -323,4 +331,12 @@ ...@@ -323,4 +331,12 @@
<item name=" android:textColor">@color/gary</item> <item name=" android:textColor">@color/gary</item>
<item name="android:gravity">center|left</item> <item name="android:gravity">center|left</item>
</style> </style>
<style name="dialog_edit">
<item name="android:padding">@dimen/dialog_padding</item>
<item name="android:saveEnabled">false</item>
<item name="android:background">@drawable/selector_white_background_stroke</item>
<item name="android:layout_width">0dp</item>
<item name="android:textSize">@dimen/small_text_size</item>
</style>
</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