From 20952db304d0f71e1ce25f3b82114bbadff1ad4a Mon Sep 17 00:00:00 2001
From: zuoxiao <470321431@qq.com>
Date: 星期五, 20 六月 2025 16:51:54 +0800
Subject: [PATCH] feat(generallibrary): 补充补卡功能

---
 generallibrary/src/main/java/com/dayu/general/activity/CardLossActivity.kt |   60 ++++++++++++++++++++++++++++++++++++++----------------------
 1 files changed, 38 insertions(+), 22 deletions(-)

diff --git a/generallibrary/src/main/java/com/dayu/general/activity/LossCardActivity.kt b/generallibrary/src/main/java/com/dayu/general/activity/CardLossActivity.kt
similarity index 86%
rename from generallibrary/src/main/java/com/dayu/general/activity/LossCardActivity.kt
rename to generallibrary/src/main/java/com/dayu/general/activity/CardLossActivity.kt
index a2696e3..eb69ea2 100644
--- a/generallibrary/src/main/java/com/dayu/general/activity/LossCardActivity.kt
+++ b/generallibrary/src/main/java/com/dayu/general/activity/CardLossActivity.kt
@@ -22,7 +22,7 @@
  * Author: zuo
  * Date: 2025/6/11
  */
-class LossCardActivity : BaseActivity() {
+class CardLossActivity : BaseActivity() {
 
     var binding: ActivityCardListBinding? = null
     private var cardAdapter: CardListAdapter? = null
@@ -82,7 +82,7 @@
     private fun setupRecyclerView() {
         cardAdapter = CardListAdapter(this)
         binding?.recyclerView?.apply {
-            layoutManager = LinearLayoutManager(this@LossCardActivity)
+            layoutManager = LinearLayoutManager(this@CardLossActivity)
             adapter = cardAdapter
         }
 
@@ -96,13 +96,11 @@
                 card.cardNum.toString(),
                 card.money.toString()
             )
-            refundDialog.setOnConfirmListener {  refundAmount, remark ->
-                // TODO: 澶勭悊閫�娆鹃�昏緫
-                lossPost(card.idCard.toString())
+            refundDialog.setOnConfirmListener { _username, cardNumber, balance, refundAmount, remark ->
+                // 璋冪敤鎸傚け鎺ュ彛
+                lossPost(cardNumber, balance, refundAmount, remark)
             }
         }
-
-
     }
 
     private fun setupRefreshLayout() {
@@ -247,38 +245,56 @@
         )
     }
 
-
-    private fun lossPost(cardNumber: String) {
+    /**
+     * 鎵ц鎸傚け鎿嶄綔
+     * @param cardNumber 鍗″彿
+     * @param balance 浣欓
+     * @param refundAmount 閫�娆鹃噾棰�
+     * @param remark 澶囨敞
+     */
+    private fun lossPost(cardNumber: String, balance: String, refundAmount: String, remark: String) {
         val map = mutableMapOf<String, Any>()
 
         map["cardNum"] = cardNumber
+        
+        // 澶勭悊浣欓鏍煎紡锛屽幓闄ゅ崈浣嶅垎闅旂閫楀彿鍜�"鍏�"瀛楃
+        val balanceValue = balance.replace("鍏�", "").replace(",", "").toFloatOrNull() ?: 0f
+        map["money"] = balanceValue
+        
+        map["refund"] = refundAmount.toFloatOrNull() ?: 0f
+        map["remarks"] = remark.ifEmpty { "鎸傚け" }
         map["operator"] = BaseApplication.userId
-        ApiManager.getInstance().requestGetLoading(
+        
+        ApiManager.getInstance().requestPostLoading(
             this,
-            "/sell/card/loss",
-            SearchCardResult::class.java,
+            "terminal/card/termReportLoss",
+            ReportLossResult::class.java,
             map,
-            object : SubscriberListener<BaseResponse<SearchCardResult>>() {
-                override fun onNext(t: BaseResponse<SearchCardResult>) {
-
-
-                    if (t.success) {
-
+            object : SubscriberListener<BaseResponse<ReportLossResult>>() {
+                override fun onNext(t: BaseResponse<ReportLossResult>) {
+                    if (t.success && t.code == "0001") {
+                        ToastUtil.show("鎸傚け鎴愬姛")
+                        // 鍒锋柊鍒楄〃鏁版嵁
+                        searchCards(currentFarmerId, currentFarmerName, currentCardNumber, true)
                     } else {
-                        // 澶勭悊鎼滅储澶辫触鐨勬儏鍐�
-                        ToastUtil.show(t.msg)
+                        ToastUtil.show(t.msg ?: "鎸傚け澶辫触")
                     }
                 }
 
                 override fun onError(e: Throwable?) {
                     super.onError(e)
-                    // 瀹屾垚鍒锋柊鎴栧姞杞藉姩浣�
-                    ToastUtil.show("鎼滅储澶辫触: ${e?.message ?: "鏈煡閿欒"}")
+                    ToastUtil.show("鎸傚け澶辫触: ${e?.message ?: "缃戠粶閿欒"}")
                 }
             }
         )
     }
 
+    /**
+     * 鎸傚け鎺ュ彛杩斿洖缁撴灉
+     */
+    data class ReportLossResult(
+        val content: Boolean? = null
+    )
 
     /**
      * 瀹屾垚鍒锋柊鎴栧姞杞芥搷浣�

--
Gitblit v1.8.0