Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit bff607c

Browse files
committed
更新分的精度问题
Signed-off-by: Dlg <[email protected]>
1 parent cf816ef commit bff607c

2 files changed

Lines changed: 26 additions & 2 deletions

File tree

app/src/main/java/com/sjk/tpay/ActMain.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ public void clsSubmit(View view) {
154154
*/
155155
public void clsWechatPay(View view) {
156156
String time = System.currentTimeMillis() / 1000 + "";
157+
Toast.makeText(this, "只要能打开收款页面即表示成功,并不会输入和生成二维码", Toast.LENGTH_SHORT).show();
157158
PayUtils.getInstance().creatWechatQr(this, 12, "test" + time);
158159
}
159160

app/src/main/java/com/sjk/tpay/utils/PayUtils.java

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import com.sjk.tpay.po.QrBean;
1717
import com.sjk.tpay.request.StringRequestGet;
1818

19+
import java.text.DecimalFormat;
1920
import java.text.SimpleDateFormat;
2021
import java.util.Date;
2122
import java.util.List;
@@ -59,7 +60,7 @@ public void creatWechatQr(Context context, Integer money, String mark) {
5960
Intent broadCastIntent = new Intent();
6061
broadCastIntent.setAction(HookMain.WECHAT_CREAT_QR);
6162
broadCastIntent.putExtra("mark", mark);
62-
broadCastIntent.putExtra("money", String.valueOf(money / 100.0f));
63+
broadCastIntent.putExtra("money", formatMoneyToCent(money + ""));
6364
context.sendBroadcast(broadCastIntent);
6465
}
6566

@@ -81,9 +82,31 @@ public void creatAlipayQr(Context context, Integer money, String mark) {
8182
Intent broadCastIntent = new Intent();
8283
broadCastIntent.setAction(HookMain.ALIPAY_CREAT_QR);
8384
broadCastIntent.putExtra("mark", mark);
84-
broadCastIntent.putExtra("money", String.valueOf(money / 100.0f));
85+
broadCastIntent.putExtra("money", formatMoneyToYuan(money + ""));
8586
context.sendBroadcast(broadCastIntent);
8687
}
8788

89+
/**
90+
* 格式化金钱,把元变为分的单位
91+
*
92+
* @param money
93+
* @return
94+
*/
95+
public static Integer formatMoneyToCent(String money) {
96+
return Integer.valueOf(new DecimalFormat("#").format(Float.valueOf(money.trim()) * 100));
97+
}
8898

99+
/**
100+
* 格式化金钱,把分变为元的单位
101+
*
102+
* @param money
103+
* @return
104+
*/
105+
public static String formatMoneyToYuan(String money) {
106+
String yuan = new DecimalFormat("#.00").format(Float.valueOf(money.trim()) / 100f);
107+
if (yuan.startsWith(".")) {
108+
yuan = "0" + yuan;
109+
}
110+
return yuan;
111+
}
89112
}

0 commit comments

Comments
 (0)