Commit 72855ff1 by qyw

1、同一个付款码5秒内不能提交支付

    2、修改提示语音
    3、本机消费记录和消费记录采用服务器时间
parent 9559e65e
......@@ -32,6 +32,7 @@ import com.ifavine.pay.utils.BaseUtil;
import com.ifavine.pay.utils.DialogMainSetUtils;
import com.ifavine.pay.utils.DialogUtil;
import com.ifavine.pay.utils.SPUtil;
import com.ifavine.pay.utils.SoundPlayUtils;
import com.ifavine.pay.utils.TLog;
import com.ifavine.pay.view.PopWindowMainReport;
import com.ifavine.pay.view.PopWindowMainSet;
......@@ -113,10 +114,6 @@ public class MainActivity extends BaseActivity {
@BindView(R.id.btn_pay)
Button btn_pay;
private int soundSucess;
private int soundFail;
private SoundPool soundPool;
private String payCode = "";
private PopWindowMainSet popWindowMainSet;
......@@ -130,6 +127,7 @@ public class MainActivity extends BaseActivity {
private static boolean isStart = false;
public static int width = 1350;
public static int height = 720;
SoundPlayUtils playUtils;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
......@@ -141,9 +139,7 @@ public class MainActivity extends BaseActivity {
WindowManager.LayoutParams.FLAG_FULLSCREEN);
//支付提示
soundPool = new SoundPool(3, AudioManager.STREAM_MUSIC, 100);
soundSucess = soundPool.load(mContext, R.raw.success, 1);//加载资源,得到soundId
soundFail = soundPool.load(mContext, R.raw.fail, 1);//加载资源,得到soundId
playUtils = SoundPlayUtils.init(mContext);
dateTime = 0;
//获取窗口信息
GetCanteenWindows();
......@@ -248,6 +244,9 @@ public class MainActivity extends BaseActivity {
isStart = false;
handler.removeCallbacks(netRun);
handler.removeCallbacks(etRunnable);
if (playUtils != null) {
playUtils.release();
}
}
private boolean pingNet(String address) {
......@@ -333,10 +332,10 @@ public class MainActivity extends BaseActivity {
public void selectIndex(final int index) {
if (index == 0) {
Current_Count_DialogWindow = 0;
dialogWindow = DialogMainSetUtils.showReportLocalDialog(mContext, "本机消费记录查询", null, true);
dialogWindow = DialogMainSetUtils.showReportLocalDialog(mContext, "本机消费记录查询", null, true, dateTime);
} else if (index == 1) {
Current_Count_DialogWindow = 0;
dialogWindow = DialogMainSetUtils.showReportRecordDialog(mContext, "消费记录查询", null, true);
dialogWindow = DialogMainSetUtils.showReportRecordDialog(mContext, "消费记录查询", null, true, dateTime);
} else if (index == 2) {
Current_Count_DialogInput = 0;
dialogInput = DialogUtil.showInputDialog(mContext, null, "请输入管理员密码", "请输入管理员密码", "确定", "取消", new View.OnClickListener() {
......@@ -583,6 +582,9 @@ public class MainActivity extends BaseActivity {
});
}
private String Last_PayCode = "";
private long Last_Second = 0;
/**
* PayCode:用户微信支付码
* Mac:终端的mac地址,格式是使用 “:” 分隔
......@@ -592,6 +594,17 @@ public class MainActivity extends BaseActivity {
*/
//线路处理
private void doPay(String payCode) {
//支付码一样五秒内不重复提交
if (!TextUtils.isEmpty(Last_PayCode) && payCode.equals(Last_PayCode)) {
if (System.currentTimeMillis() - Last_Second < 5000) {
Current_Count = 0;
et_payCode.setText(null);
et_payCode.requestFocus();
return;
}
}
Last_PayCode = payCode;
Last_Second = System.currentTimeMillis();
Current_Count = 0;
et_payCode.setText(null);
et_payCode.requestFocus();
......@@ -630,22 +643,24 @@ public class MainActivity extends BaseActivity {
tv_IsConsumed.setText(response.body().IsConsumed);
tv_TradeNo.setText(response.body().TradeNo);
}
if (response.body().Status == 200) {
soundPool.play(soundSucess, 1, 1, 0, 0, 1);
int status = response.body().Status;
if (status == 200) {
tv_pay_status.setText("支付成功");
tv_pay_status.setTextColor(getResources().getColor(R.color.green));
} else {
soundPool.play(soundFail, 1, 1, 0, 0, 1);
tv_pay_status.setText(response.body().Message);
tv_pay_status.setTextColor(getResources().getColor(R.color.red));
}
if (playUtils != null) {
playUtils.play(status);
}
}
}
@Override
public void onFailure(Call<CommonResponse<String>> call, Throwable t) {
soundPool.play(soundFail, 1, 1, 0, 0, 1);
tv_pay_status.setText("支付失败");
playUtils.play(1);
tv_pay_status.setText("请求超时,请重试");
tv_pay_status.setTextColor(getResources().getColor(R.color.red));
}
});
......@@ -766,7 +781,7 @@ public class MainActivity extends BaseActivity {
return false;
}
private final static int MAX_Mi = 60;
private final static int MAX_Mi = 120;
private int Current_Count = 0;
/**
......
......@@ -971,7 +971,7 @@ public class DialogMainSetUtils {
* @return
*/
public static Dialog showReportLocalDialog(final Context mContext, final String title, final View.OnClickListener okListener,
boolean cancelable) {
boolean cancelable, long dateTime) {
View view = View.inflate(mContext, R.layout.dialog_report_local, null);
final Dialog dialog = new Dialog(mContext, R.style.dialog_common);// 创建自定义样式dialog
......@@ -1009,8 +1009,8 @@ public class DialogMainSetUtils {
final Spinner spinner1 = (Spinner) view.findViewById(R.id.spinner1);
final Spinner spinner2 = (Spinner) view.findViewById(R.id.spinner2);
tv_date1.setText(DateUtil.formatDate(new Date().getTime(), "yyyy-MM-dd"));
tv_date2.setText(DateUtil.formatDate(new Date().getTime(), "yyyy-MM-dd"));
tv_date1.setText(DateUtil.formatDate(dateTime, "yyyy-MM-dd"));
tv_date2.setText(DateUtil.formatDate(dateTime, "yyyy-MM-dd"));
final LRecyclerView mLRecyclerView = (LRecyclerView) view.findViewById(R.id.mLRecyclerView);
......@@ -1292,7 +1292,7 @@ public class DialogMainSetUtils {
* @return
*/
public static Dialog showReportRecordDialog(final Context mContext, final String title, final View.OnClickListener okListener,
boolean cancelable) {
boolean cancelable, long dateTime) {
View view = View.inflate(mContext, R.layout.dialog_report_record, null);
final Dialog dialog = new Dialog(mContext, R.style.dialog_common);// 创建自定义样式dialog
......@@ -1341,8 +1341,8 @@ public class DialogMainSetUtils {
final Spinner spinner2 = (Spinner) view.findViewById(R.id.spinner2);
final Spinner spinner3 = (Spinner) view.findViewById(R.id.spinner3);
tv_date1.setText(DateUtil.formatDate(new Date().getTime(), "yyyy-MM-dd"));
tv_date2.setText(DateUtil.formatDate(new Date().getTime(), "yyyy-MM-dd"));
tv_date1.setText(DateUtil.formatDate(dateTime, "yyyy-MM-dd"));
tv_date2.setText(DateUtil.formatDate(dateTime, "yyyy-MM-dd"));
final LRecyclerView mLRecyclerView = (LRecyclerView) view.findViewById(R.id.mLRecyclerView);
......
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