baselibrary/src/main/java/com/dayu/baselibrary/utils/MornyUtil.java
@@ -20,6 +20,18 @@ return bigDecimal.multiply(new BigDecimal(100)).intValue(); } /** * 元转厘,确保price保留两位有效数字 * * @return */ public static int changeY2L(String amount) { BigDecimal bigDecimal = new BigDecimal(amount).setScale(3); return bigDecimal.multiply(new BigDecimal(1000)).intValue(); } /** * 分转元,转换为bigDecimal在toString * baselibrary/src/main/java/com/dayu/baselibrary/view/ConfirmDialog.java
@@ -5,6 +5,8 @@ import android.text.TextUtils; import android.view.Gravity; import android.view.View; import android.view.ViewGroup; import android.view.WindowManager; import android.widget.TextView; import androidx.annotation.NonNull; @@ -67,4 +69,19 @@ ok.setOnClickListener(mListner); } } @Override public void show() { super.show(); /** * 设置宽度全屏,要设置在show的后面 */ WindowManager.LayoutParams layoutParams = getWindow().getAttributes(); layoutParams.gravity = Gravity.CENTER; layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT; layoutParams.height = ViewGroup.LayoutParams.MATCH_PARENT; getWindow().getDecorView().setPadding(0, 0, 0, 0); getWindow().setAttributes(layoutParams); } } henanlibrary/src/main/java/com/dayu/henanlibrary/activity/NFCWreatActivity.java
@@ -375,7 +375,7 @@ StringBuffer data = new StringBuffer(); if (rechargeBean != null) { data.append("*****************************" + "\n"); data.append(getResources().getString(com.dayu.baselibrary.R.string.login_title)).append("\n"); data.append("设备序列号:").append(rechargeBean.getSerial()).append("\n"); data.append("用户名:").append(rechargeBean.getUserName()).append("\n"); // data.append("户 号:" + rechargeBean.getUserNum() + "\n"); qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/AdminSetupActivity.java
@@ -11,6 +11,7 @@ import com.dayu.baselibrary.utils.TipUtil; import com.dayu.qihealonelibrary.databinding.ActivityAdminSetupQhaBinding; import com.dayu.qihealonelibrary.dbBean.AdminDataBean; import com.dayu.qihealonelibrary.dbBean.ElectricPriceBean; import com.tencent.bugly.crashreport.CrashReport; /** @@ -25,6 +26,7 @@ public static AdminSetupActivity adminSetupActivity; AdminDataBean adminData = new AdminDataBean(); ElectricPriceBean electricPriceBean; @Override protected void onCreate(Bundle savedInstanceState) { @@ -45,16 +47,18 @@ adminBinding.setupOk.setOnClickListener(v -> { String strSerial = adminBinding.adminAddressCode.getText().toString(); String strAddressCode = adminBinding.adminAddressCode.getText().toString(); String strWaterPrice = adminBinding.adminWaterPrice.getText().toString(); String strElectricPrice = adminBinding.electricNewNum.getText().toString(); if (!TextUtils.isEmpty(strAddressCode) && !TextUtils.isEmpty(strSerial) && !TextUtils.isEmpty(strWaterPrice)) { int wtaterPrice = MornyUtil.changeY2F(strWaterPrice); if (Integer.valueOf(wtaterPrice) > 0) { && !TextUtils.isEmpty(strSerial) && !TextUtils.isEmpty(strElectricPrice)) { int electricPrice = MornyUtil.changeY2L(strElectricPrice); if (Integer.valueOf(electricPrice) > 0) { if (Integer.valueOf(strAddressCode) <= 65535) { adminData.setAddressCode(strAddressCode); adminData.setSerial(strSerial); adminData.setWaterPrice(wtaterPrice); // adminData.setWaterPrice(wtaterPrice); baseDao.adminDao().insert(adminData); electricPriceBean.setPrice(Float.parseFloat(strElectricPrice)); baseDao.electricPriceDao().insert(electricPriceBean); TipUtil.show(AdminSetupActivity.this, "设置成功", new TipUtil.TipListener() { @Override public void onCancle() { @@ -73,8 +77,32 @@ } }); setPricePoint(adminBinding.adminWaterPrice); // setPricePoint(adminBinding.adminWaterPrice); //保留三位小数 adminBinding.electricNewNum.addTextChangedListener(new TextWatcher() { @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { } @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } @Override public void afterTextChanged(Editable s) { // 删除额外的小数位 String text = s.toString(); if (text.contains(".")) { int decimalIndex = text.indexOf("."); int decimalCount = text.length() - decimalIndex - 1; if (decimalCount > 3) { s.delete(decimalIndex + 4, s.length()); } } } }); } @@ -87,6 +115,14 @@ adminBinding.adminAddressCode.setText(adminData.getAddressCode()); adminBinding.adminWaterPrice.setText(MornyUtil.changeF2Y(adminData.getWaterPrice())); } ElectricPriceBean priceBean = baseDao.electricPriceDao().findFirst(); if (priceBean != null) { electricPriceBean = priceBean; adminBinding.electricNewNum.setText(priceBean.getPrice()+"" ); } else { electricPriceBean = new ElectricPriceBean(); adminBinding.electricNewNum.setText("1.000"); } } catch (Exception e) { CrashReport.postCatchedException(e); qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/HomeActivity.java
@@ -8,6 +8,7 @@ import android.widget.Toast; import com.dayu.baselibrary.utils.TipUtil; import com.dayu.baselibrary.view.PassWordDialog; import com.dayu.qihealonelibrary.databinding.ActivityHomeQhaBinding; import com.dayu.qihealonelibrary.dbBean.AdminDataBean; @@ -52,11 +53,11 @@ public void onClick(View v) { AdminDataBean adminData = baseDao.adminDao().findFirst(); if (adminData != null) { if (adminData.getWaterPrice() != 0) { // if (adminData.getWaterPrice() != 0) { startActivity(new Intent(HomeActivity.this, RechargeActivity.class)); } else { TipUtil.show(HomeActivity.this, "请先在个人中心内设置水价"); } // } else { // TipUtil.show(HomeActivity.this, "请先在个人中心内设置水价"); // } } else { TipUtil.show("请先在个人中心内设置区域号"); } @@ -73,15 +74,16 @@ homeBinding.homeAdmin.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startActivity(new Intent(HomeActivity.this, SysActivity.class)); PassWordDialog passWordDialog = new PassWordDialog(HomeActivity.this, new Intent(HomeActivity.this, SysActivity.class)); passWordDialog.show(); } }); //参数设置 homeBinding.homeParameter.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { startActivity(new Intent(HomeActivity.this, ParameterActivity.class)); PassWordDialog passWordDialog = new PassWordDialog(HomeActivity.this, new Intent(HomeActivity.this, ParameterActivity.class)); passWordDialog.show(); } }); homeBinding.homeMy.setOnClickListener(new View.OnClickListener() { qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/MyActivity.java
@@ -21,6 +21,7 @@ import com.dayu.baselibrary.view.datepicker.DateFormatUtils; import com.dayu.qihealonelibrary.databinding.ActivityMyQhaBinding; import com.dayu.qihealonelibrary.dbBean.AdminDataBean; import com.dayu.qihealonelibrary.dbBean.ElectricPriceBean; import com.dayu.qihealonelibrary.utils.DeviceNumberUtils; import com.dayu.qihealonelibrary.utils.ExcelUtil; @@ -210,11 +211,11 @@ if (adminData != null) { myBinding.myAdminName.setText(adminData.getAddressCode()); myBinding.myVillageNum.setText(adminData.getSerial()); myBinding.myWaterPrice.setText(MornyUtil.changeF2Y(adminData.getWaterPrice())); // myBinding.myWaterPrice.setText(MornyUtil.changeF2Y(adminData.getWaterPrice())); } else { myBinding.myAdminName.setText("请点击区域号进行设置"); myBinding.myVillageNum.setText("请点击区域号进行设置"); myBinding.myWaterPrice.setText("请点击区域号进行设置"); // myBinding.myWaterPrice.setText("请点击区域号进行设置"); } StringBuilder msgData = new StringBuilder(); @@ -225,6 +226,12 @@ msgData.append("设备注册号:" + initCode); } myBinding.myTestConnect.setText(msgData); ElectricPriceBean priceBean = baseDao.electricPriceDao().findFirst(); if (priceBean != null) { myBinding.myWaterPrice.setText(priceBean.getPrice() + "元"); } else { myBinding.myWaterPrice.setText("1.000元"); } } catch (Exception e) { e.printStackTrace(); } qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/NFCWreatActivity.java
@@ -197,8 +197,8 @@ userName = this.getIntent().getStringExtra("userName"); cardNumber = this.getIntent().getStringExtra("cardNumber"); userCardBean = (UserCardBean) this.getIntent().getSerializableExtra("userCardBean"); rechageWater = this.getIntent().getStringExtra("rechageWater"); binding.cardData.setText("充值金额:" + morny + " 元\n充值水量:" + rechageWater + " 立方米(吨)"); // rechageWater = this.getIntent().getStringExtra("rechageWater"); binding.cardData.setText("充值金额:" + morny + " 元"); } try { @@ -368,7 +368,6 @@ StringBuffer data = new StringBuffer(); if (rechargeBean != null) { data.append("*****************************" + "\n"); data.append(" 大禹节水\n 智能充值管理系统" + "\n"); data.append("设备序列号:" + rechargeBean.getSerial() + "\n"); data.append("用户名:" + rechargeBean.getUserName() + "\n"); data.append("卡 号:" + rechargeBean.getCardNumber() + "\n"); @@ -417,8 +416,8 @@ int balance = userCard.getBalance() + MornyUtil.changeY2F(morny); userCard.setBalance(balance); //剩余水量 int surplusWater = userCard.getSurplusWater() + MornyUtil.changeY2F(rechageWater); userCard.setSurplusWater(surplusWater); // int surplusWater = userCard.getSurplusWater() + MornyUtil.changeY2F(rechageWater); // userCard.setSurplusWater(surplusWater); int rechageTims = userCard.getRechargeTimes() + 1; if (rechageTims == 256) { @@ -436,7 +435,7 @@ rechargeBean.setMorny(morny); rechargeBean.setBalance(MornyUtil.changeF2Y(balance)); rechargeBean.setCardNumber(cardNumber); rechargeBean.setSurplusWater(MornyUtil.changeF2Y(surplusWater)); rechargeBean.setSurplusWater(MornyUtil.changeF2Y(0)); rechargeBean.setRechargeWater(rechageWater); try { baseDao.rechargeDao().insert(rechargeBean); qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/ReadCardAcitivy.java
@@ -63,11 +63,11 @@ redCardBinding.redRechargeDate.setText("本卡最后购水日期:无"); } redCardBinding.redInitCode.setText(cardNumber); // redCardBinding.redRechargeNumber.setText("本卡充值次数:" + userCard.getRechargeTimes() + " 次"); redCardBinding.redRechargeNumber.setText("本卡充值次数:" + userCard.getRechargeTimes() + " 次"); // redCardBinding.redTotalWater.setText("总用水量:" + MornyUtil.changeF2Y(userCard.getTotalWater()) + " 吨"); // redCardBinding.redTotalPower.setText("总用电量:" + MornyUtil.changeF2Y(userCard.getTotalElectric()) + " 度"); // redCardBinding.redRemainderBlance.setText("剩余金额:" + MornyUtil.changeF2Y(userCard.getBalance()) + " 元"); redCardBinding.redRemainderWater.setText("剩余水量:" + MornyUtil.changeF2Y(userCard.getSurplusWater()) + " 吨"); redCardBinding.redRemainderBlance.setText("剩余金额:" + MornyUtil.changeF2Y(userCard.getBalance()) + " 元"); // redCardBinding.redRemainderWater.setText("剩余水量:" + MornyUtil.changeF2Y(userCard.getSurplusWater()) + " 吨"); } } qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeActivity.java
@@ -17,6 +17,7 @@ import com.dayu.qihealonelibrary.card.UserCard; import com.dayu.qihealonelibrary.databinding.ActivityRechargeQhaBinding; import com.dayu.qihealonelibrary.dbBean.AdminDataBean; import com.dayu.qihealonelibrary.dbBean.ElectricPriceBean; import com.dayu.qihealonelibrary.dbBean.UserCardBean; import com.dayu.qihealonelibrary.tools.NfcReadHelper; import com.dayu.qihealonelibrary.utils.CardCommon; @@ -47,6 +48,7 @@ UserCardBean userCardBean; int waterPrice; String rechageWater;//充值的水量 ElectricPriceBean priceBean; @Override protected void onCreate(Bundle savedInstanceState) { @@ -91,6 +93,9 @@ if (!data.isEmpty()) { if (!TextUtils.isEmpty(cardNumber)) { setUserData(cardType, cardNumber, data); if(priceBean!=null){ binding.redRechargeElectric.setText("电量单价:"+priceBean.getPrice()+"元/度"); } } else { TipUtil.show(this, "读取卡片失败,请重新贴卡"); } @@ -161,13 +166,13 @@ // binding.redRechargeNumber.setText("本卡充值次数:" + userCard.getRechargeTimes() + " 次"); // binding.redTotalWater.setText("总用水量:" + MornyUtil.changeF2Y(userCard.getTotalWater()) + " 吨"); // binding.redTotalPower.setText("总用电量:" + MornyUtil.changeF2Y(userCard.getTotalElectric()) + " 度"); // binding.redRemainderBlance.setText(MornyUtil.changeF2Y(userCard.getBalance()) + " 元"); binding.redRemainderBlance.setText(MornyUtil.changeF2Y(userCard.getBalance()) + " 元"); binding.redRemainderWater.setText("剩余水量:" + MornyUtil.changeF2Y(userCard.getSurplusWater()) + " 吨"); binding.redWaterPrice.setText("每立方米水价格:" + MornyUtil.changeF2Y(adminData.getWaterPrice()) + " 元"); // binding.redWaterPrice.setText("每立方米水价格:" + MornyUtil.changeF2Y(adminData.getWaterPrice()) + " 元"); } } else { TipUtil.show(this, "不是本区域卡"); TipUtil.show(this, "非本区域卡\n不能充值!!!"); } @@ -177,6 +182,7 @@ private void initView() { try { adminData = baseDao.adminDao().findFirst(); priceBean = baseDao.electricPriceDao().findFirst(); } catch (Exception e) { e.printStackTrace(); CrashReport.postCatchedException(e); @@ -191,7 +197,7 @@ intent.putExtra("cardNumber", cardNumber); intent.putExtra("userCard", userCard); intent.putExtra("userCardBean", userCardBean); intent.putExtra("rechageWater", rechageWater); // intent.putExtra("rechageWater", rechageWater); startActivity(intent); } else { TipUtil.show(RechargeActivity.this, "请输入充值金额(元)"); @@ -230,7 +236,7 @@ String morny = editText.getText().toString(); if (!TextUtils.isEmpty(morny)) { rechageWater = MornyUtil.intDiv(MornyUtil.changeY2F(editText.getText().toString()), waterPrice); binding.redRechargeWater.setText("充值水量:" + rechageWater + " 立方米(吨)"); // binding.redRechargeWater.setText("充值水量:" + rechageWater + " 立方米(吨)"); } qihealonelibrary/src/main/java/com/dayu/qihealonelibrary/activity/RechargeDetailActivity.java
@@ -59,7 +59,7 @@ binding.tip.setText("充值成功!"); balance = userCard.getBalance(); binding.redRemainderMorny.setText("充值金额:" + morny + " 元"); binding.redRechargeWater.setText("充值水量:" + rechageWater + " 吨"); binding.redRechargeWater.setText("剩余金额:" + MornyUtil.changeF2Y(balance) + " 元"); } else { binding.tip.setText("开卡成功!"); balance = userCard.getBalance(); qihealonelibrary/src/main/res/layout/activity_admin_setup_qha.xml
@@ -84,7 +84,7 @@ style="@style/newCardLL" android:layout_width="match_parent" android:layout_height="wrap_content" android:visibility="visible"> android:visibility="gone"> <TextView android:layout_width="0dp" @@ -106,7 +106,32 @@ </LinearLayout> <LinearLayout style="@style/newCardLL" android:layout_width="match_parent" android:layout_height="wrap_content" android:visibility="visible"> <TextView android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1.5" android:text="电单价(元/度)" android:textSize="@dimen/new_card_size" /> <EditText android:id="@+id/electric_newNum" android:layout_width="0dp" android:layout_height="@dimen/edt_height" android:layout_weight="2" android:background="@drawable/editbg" android:inputType="numberDecimal" android:lines="1" android:paddingLeft="10dp" android:textSize="@dimen/new_card_size" /> </LinearLayout> <LinearLayout android:id="@+id/chose_address" style="@style/newCardLL" qihealonelibrary/src/main/res/layout/activity_my_qha.xml
@@ -80,7 +80,7 @@ <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="水单价(元/吨):" android:text="电单价(元/度):" android:textColor="@color/text_selecter" android:textSize="@dimen/text_size" /> qihealonelibrary/src/main/res/layout/activity_recharge_detail_qha.xml
@@ -64,6 +64,7 @@ android:layout_height="wrap_content" android:layout_marginTop="15dp" android:text="剩余水量:" android:visibility="gone" android:textSize="@dimen/text_size" /> <TextView android:id="@+id/red_rechargeDate" qihealonelibrary/src/main/res/layout/activity_recharge_qha.xml
@@ -72,6 +72,7 @@ <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="15dp" android:orientation="horizontal"> <TextView @@ -114,7 +115,7 @@ android:layout_height="wrap_content" android:layout_marginTop="15dp" android:orientation="horizontal" android:visibility="gone"> android:visibility="visible"> <TextView @@ -137,6 +138,7 @@ android:layout_height="wrap_content" android:layout_marginTop="15dp" android:text="剩余水量:" android:visibility="gone" android:textSize="@dimen/text_size" /> <TextView @@ -147,7 +149,14 @@ android:text="最后购水日期:" android:textSize="@dimen/text_size" android:visibility="visible" /> <TextView android:id="@+id/red_rechargeElectric" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="15dp" android:text="电量单价:" android:textSize="@dimen/text_size" android:visibility="visible" /> <TextView android:id="@+id/red_rechargeNumber" android:layout_width="match_parent" @@ -183,7 +192,7 @@ android:layout_marginTop="15dp" android:text="每立方米水价格:" android:textSize="@dimen/text_size" android:visibility="visible" /> android:visibility="gone" /> <LinearLayout android:id="@+id/recharge_LL" @@ -199,7 +208,7 @@ android:layout_marginTop="15dp" android:text="充值水量:" android:textSize="@dimen/text_size" android:visibility="visible" /> android:visibility="gone" /> <LinearLayout android:layout_width="wrap_content" qihealonelibrary/src/main/res/layout/activity_red_card_qha.xml
@@ -60,16 +60,18 @@ android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="15dp" android:visibility="gone" android:text="剩余金额:" android:textSize="@dimen/text_size" /> android:textSize="@dimen/text_size" android:visibility="visible" /> <TextView android:id="@+id/red_remainder_water" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="15dp" android:text="剩余水量:" android:textSize="@dimen/text_size" /> android:textSize="@dimen/text_size" android:visibility="gone"/> <TextView android:id="@+id/red_rechargeDate"