Ver Fonte

风险管理6月30日提交代码-liu.bolan-千海金

Liu.bolan há 4 anos atrás
pai
commit
7679de5b84
31 ficheiros alterados com 483 adições e 79 exclusões
  1. 1 1
      RMA/app/build.gradle
  2. 2 0
      RMA/app/src/main/AndroidManifest.xml
  3. 0 2
      RMA/app/src/main/java/cn/muchinfo/rma/business/account/AccountManager.kt
  4. 37 0
      RMA/app/src/main/java/cn/muchinfo/rma/business/money/MoneyManager.kt
  5. 13 1
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/chart/ChartTSData.kt
  6. 5 4
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/app/Constant.kt
  7. 19 4
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/chart/ChartActivity.kt
  8. 3 3
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/chart/ChartViewModel.kt
  9. 55 20
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/PayActivity.kt
  10. 125 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/PaySuccessActivity.kt
  11. 1 1
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/PayViewModel.kt
  12. 1 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/SeaKingMainFragment.kt
  13. 19 3
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/pickup/PickUpGoodsActivity.kt
  14. 1 1
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/pickup/PickUpGoodsViewModel.kt
  15. 6 1
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/withdrawmanagement/WithdrawalActivity.kt
  16. 1 1
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/withdrawmanagement/WithdrawalViewModel.kt
  17. 18 3
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/FinancialViewHolder.kt
  18. 30 13
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/FinancingDetailsActivity.kt
  19. 16 6
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/FinancingDetailsViewHolder.kt
  20. 10 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/NoPayDetailsActivity.kt
  21. 31 4
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/NoPayViewHolder.kt
  22. 2 2
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumCancellationsUI.kt
  23. 1 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumDealUI.kt
  24. 2 2
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumPositionUI.kt
  25. 14 5
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumTradeActivity.kt
  26. 47 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumTradeViewModel.kt
  27. 13 2
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PositionViewHolder.kt
  28. 8 0
      RMA/app/src/main/res/drawable/qhj_pay_success_bg.xml
  29. 1 0
      RMA/app/src/main/res/layout/item_fresco.xml
  30. BIN
      RMA/app/src/main/res/mipmap-xhdpi/qhj_pay_success.png
  31. 1 0
      RMA/app/src/main/res/values/colors.xml

+ 1 - 1
RMA/app/build.gradle

@@ -53,7 +53,7 @@ android {
 
     buildTypes {
         release {
-            minifyEnabled true
+            minifyEnabled false
             signingConfig signingConfigs.release
             proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
         }

+ 2 - 0
RMA/app/src/main/AndroidManifest.xml

@@ -346,6 +346,8 @@
         <activity android:name=".view.base.WebActivity"/>
 
         <activity android:name=".view.base.main.withdrawmanagement.WithDrawLogActivity"/>
+
+        <activity android:name=".view.base.main.PaySuccessActivity"/>
     </application>
 
 </manifest>

+ 0 - 2
RMA/app/src/main/java/cn/muchinfo/rma/business/account/AccountManager.kt

@@ -261,7 +261,6 @@ class AccountManager {
                 }
 
                 override fun onResponse(response: BaseResult<LoginQueryData>?, id: Int) {
-                    ToastUtils.showLong(response?.data.toString())
                     GlobalDataCollection.instance?.loginQueryData = response?.data
                     val goodsUpdateTime = GlobalDataCollection.instance?.goodsInfoUpdateTime
                     val localGoodsUpdataTime =
@@ -388,7 +387,6 @@ class AccountManager {
             type = "1",
             callback = object : ResponseCallback<BaseResult<List<ClientMenuData>>>() {
                 override fun onResponse(response: BaseResult<List<ClientMenuData>>?, id: Int) {
-                    ToastUtils.showLong(response?.data.toString())
                     resetHomeTabMenuList(response?.data ?: arrayListOf())
                     GlobalDataCollection.instance?.ermcpRoleFuncMenuDataArrayList =
                         response?.data?.toArrayList()

+ 37 - 0
RMA/app/src/main/java/cn/muchinfo/rma/business/money/MoneyManager.kt

@@ -23,6 +23,43 @@ import java.lang.Exception
 class MoneyManager {
 
     /**
+     * 支付撤销
+     * @param TradeID Long
+     * @param AccountID Long
+     * @param callback Function2<[@kotlin.ParameterName] Boolean, [@kotlin.ParameterName] Error?, Unit>
+     */
+    fun cancelPaymentReq(
+        TradeID : Long,
+        AccountID : Long,
+        callback: (isCompleted: Boolean, err: Error?) -> Unit
+    ){
+        val tradeSocketManager = MyApplication.getInstance()?.tradeSocketManager.guard {
+            callback(false, Error("交易链路未初始化"))
+            return
+        }
+
+        val reqPacket = MoneyAdapter.getCancelPaymentReqInfo(
+            TradeID, AccountID
+        )
+
+        tradeSocketManager.send(
+            reqPacket,
+            FunCode.FID_CancelPaymentRsp,
+            object : Callback<Packet50> {
+                override fun onSuccess(rsp: Packet50?) {
+                    val rst = MoneyAdapter.analysisCancelPaymentRsq(rsp!!)
+                    callback(rst.first, rst.second)
+                }
+
+                override fun onFail(err: Error?) {
+                    // 发送数据失败
+                    callback(false, err)
+                }
+            }
+        )
+    }
+
+    /**
      * 出金请求
      * @param AccountCode String 资金账户
      * @param CusBankID String 托管银行编号

+ 13 - 1
RMA/app/src/main/java/cn/muchinfo/rma/global/data/chart/ChartTSData.kt

@@ -1,7 +1,9 @@
 package cn.muchinfo.rma.global.data.chart
 
 import cn.muchinfo.rma.global.toShowTime
+import cn.muchinfo.rma.global.toShowTime2
 import kotlinx.coroutines.selects.select
+import java.text.SimpleDateFormat
 import java.util.*
 
 data class ChartTSData(
@@ -33,13 +35,23 @@ data class ChartTSData(
     fun getTimeChartPriceTime() : List<String> {
         return if(historyDatas != null && historyDatas.isNotEmpty()){
             historyDatas.map {
-                it.ts!!
+                it.ts?.toShowTime2() ?: ""
             }
         }else{
             arrayListOf();
         }
     }
 
+    fun String.toShowTime2(format : String = "yyyy-MM-dd HH:mm:ss") : String{
+        if (this.isNullOrEmpty()){
+            return "--"
+        }
+        val sdf = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss+08:00", Locale.CHINA)
+        val sdf1 = SimpleDateFormat(format, Locale.CHINA)
+        var timeString = sdf1.format(sdf.parse(this)!!)
+        return timeString
+    }
+
     /**
      * 如果均线数据是补得数据  则计算数值时直接沿用上一口价格
      * 计算分时图 AVG10

+ 5 - 4
RMA/app/src/main/java/cn/muchinfo/rma/view/base/app/Constant.kt

@@ -6,13 +6,14 @@ object Constant {
     /**
      * 获取基础url的接口
      */
+//    const val baseurl = "http://103.40.249.123:8280/cfg?key=mtp_20"//千海金外盘
 //    const val baseurl = "http://103.40.249.127:28280/cfg?key=mtp_20"
 //    const val baseurl = "http://192.168.30.125:8080/cfg?key=test_125"
 //    const val baseurl = "http://192.168.31.114:8080/cfg?key=test_114" // shenzhen01  123123
 //    const val baseurl = "http://192.168.31.220:8080/cfg?key=test_220"//李倩
-        const val baseurl = "http://192.168.30.125:8080/cfg?key=test_125"//李倩千海金 18611112222
+//        const val baseurl = "http://192.168.30.125:8080/cfg?key=test_125"//李倩千海金 18611112222
 //      const val baseurl = "http://192.168.30.211:8080/cfg?key=test_211"// 瑶姐
-//          const val baseurl = "http://192.168.31.107:8080/cfg?key=test_107"// 瑶姐 千海金 13760119855
+          const val baseurl = "http://192.168.31.107:8080/cfg?key=test_107"// 瑶姐 千海金 13760119855
 //    const val baseurl = "http://192.168.31.175:8080/cfg?key=test_175" // 8888  123123
 //    const val baseurl = "http://192.168.31.223:8080/cfg?key=test_223"
 //    const val baseurl = "http://192.168.31.174:8080/cfg?key=test_174"// 邓工
@@ -274,6 +275,6 @@ object Constant {
     //订阅持仓汇总的tag
     const val position_tag = "position_tag"
 
-    //支付宝支付地址
-    const val alipay_path = "http://192.168.31.91:6069/bank_alipay/pay"
+    //支付成功后的操作步骤
+    const val pay_status = "pay_status"
 }

+ 19 - 4
RMA/app/src/main/java/cn/muchinfo/rma/view/base/chart/ChartActivity.kt

@@ -90,23 +90,38 @@ class ChartActivity : BaseActivity<ChartViewModel>() , View.OnClickListener{
             findViewById<TextView>(R.id.buy_price_present).text = it?.bid.toString().isBlankString()//买价
             findViewById<TextView>(R.id.highest_price_value).text = it?.highest.toString().isBlankString()//最高价
             findViewById<TextView>(R.id.lowest_price_value).text = it?.lowest.toString().isBlankString()//最低价
-            findViewById<TextView>(R.id.trading_limit_value).text = it?.limitup.toString().isBlankString()//涨停价
-            findViewById<TextView>(R.id.drop_limit_value).text = it?.limitdown.toString().isBlankString()//跌停价
+            if (it?.limitup == 0.0){
+                findViewById<TextView>(R.id.trading_limit_value).text = "--"
+            }else{
+                findViewById<TextView>(R.id.trading_limit_value).text = it?.limitup.toString().isBlankString()//涨停价
+            }
+            if (it?.limitdown == 0.0){
+                findViewById<TextView>(R.id.drop_limit_value).text = "--"
+            }else{
+                findViewById<TextView>(R.id.drop_limit_value).text = it?.limitdown.toString().isBlankString()//跌停价
+            }
             findViewById<TextView>(R.id.sell_amount_value).text = it?.askvolume.toString().isBlankString()//卖量
             findViewById<TextView>(R.id.buy_amount_present).text = it?.bidvolume.toString().isBlankString()//买量
             findViewById<TextView>(R.id.opening_quotation_value).text = it?.opened.toString().isBlankString()//开盘
             findViewById<TextView>(R.id.average_price_value).text = it?.averageprice.toString().isBlankString()//均价
-            findViewById<TextView>(R.id.settlement_price_value).text = it?.settle.toString().isBlankString()//结算
+            if (it?.settle == 0.0){
+                findViewById<TextView>(R.id.settlement_price_value).text = "--"
+            }else{
+                findViewById<TextView>(R.id.settlement_price_value).text = it?.settle.toString().isBlankString()//结算
+            }
             findViewById<TextView>(R.id.now_price_title).text = it?.last.toString()//最新价
             //和上一口价的差额
             val upDown = it?.pricesDifference()
             if (upDown == 0.0) {
                 findViewById<TextView>(R.id.now_price_title)?.textColor = R.color.rma_black_33
+                findViewById<TextView>(R.id.now_price_value)?.visibility = View.GONE
             } else if (upDown ?: 0.0 > 0) {
+                findViewById<TextView>(R.id.now_price_value)?.visibility = View.VISIBLE
                 findViewById<TextView>(R.id.now_price_value).text = "↑"
                 findViewById<TextView>(R.id.now_price_value)?.textColor = this.getColor(R.color.rma_red_color)
                 findViewById<TextView>(R.id.now_price_title)?.textColor = this.getColor(R.color.rma_red_color)
             } else if (upDown ?: 0.0 < 0) {
+                findViewById<TextView>(R.id.now_price_value)?.visibility = View.VISIBLE
                 findViewById<TextView>(R.id.now_price_value).text = "↓"
                 findViewById<TextView>(R.id.now_price_value)?.textColor = this.getColor(R.color.rma_green_color)
                 findViewById<TextView>(R.id.now_price_title)?.textColor = this.getColor(R.color.rma_green_color)
@@ -193,7 +208,7 @@ class ChartActivity : BaseActivity<ChartViewModel>() , View.OnClickListener{
     fun onQuoteMessageEvent(quoteMessageEvent: QuoteMessageEvent) {
         val goodsids = quoteMessageEvent.goodsid
         //如果推送的goodsid包含当前页面的goodsid,则进行页面刷新
-        if (goodsids.contains(viewModel.goodsId)){
+        if (goodsids.contains(viewModel.goodsId.toInt())){
             // 这里把当前最新价转化为历史
             timeChartView.refreshDate(ChartDataAdapter().getHisTikData(viewModel.outGoodsCode))
             // 这里更新最新价

+ 3 - 3
RMA/app/src/main/java/cn/muchinfo/rma/view/base/chart/ChartViewModel.kt

@@ -28,7 +28,7 @@ class ChartViewModel : BaseViewModel() {
 
     val quoteDayData : MutableLiveData<QuoteDayData> = MutableLiveData()//盘面数据
 
-    var goodsId = 0
+    var goodsId = ""
     var outGoodsCode = ""
     var goodsCode = ""
     var goodsGroupId = 0
@@ -36,12 +36,12 @@ class ChartViewModel : BaseViewModel() {
     var marketId = 0
 
     fun initData(intent: Intent) {
-        goodsId = intent.getIntExtra("goodsId", 0)
+        goodsId = intent.getStringExtra("goodsId").toString()
         outGoodsCode = intent.getStringExtra("outGoodsCode").toString()
         goodsCode = intent.getStringExtra("goodsCode").toString()
         goodsGroupId = intent.getIntExtra("goodsGroupId", 0)
         marketId = intent.getIntExtra("marketId", 0)
-        goodsInfo.postValue(DataBase.getInstance().goodsInfoDao().getGoodsInfo(goodsId))
+        goodsInfo.postValue(DataBase.getInstance().goodsInfoDao().getGoodsInfo(goodsId.toInt()))
         // FIXME: 2021/4/25  这里以后要根据市场id去判断交易模式 现在只有一种交易模式
         // autoId 关联 exchangeId
         if(GlobalDataCollection.instance?.loginQueryData?.market?.size != 0){

+ 55 - 20
RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/PayActivity.kt

@@ -1,5 +1,6 @@
 package cn.muchinfo.rma.view.base.main
 
+import android.content.Intent
 import android.graphics.Typeface
 import android.os.Bundle
 import android.view.Gravity
@@ -19,6 +20,7 @@ import cn.muchinfo.rma.view.autoWidget.utils.NumberUtils
 import cn.muchinfo.rma.view.base.BaseActivity
 import cn.muchinfo.rma.view.base.future.trade.itemView
 import cn.muchinfo.rma.view.base.home.contract.emptyView
+import com.blankj.utilcode.util.ActivityUtils
 import com.blankj.utilcode.util.BarUtils
 import com.blankj.utilcode.util.LogUtils
 
@@ -393,14 +395,26 @@ class PayActivity : BaseActivity<PayViewModel>() {
                                     finish()
                                 }
                             } else if (selectPayType.value?.id == "2") {
-                                viewModel.getPayInfo(
-                                    marketId = marketId ?: "",
-                                    orderNo = orderNo ?: "",
-                                    orderDate = orderDate?.isShowTimeString("yyyy-MM-dd") ?: "",
-                                    totalAmount = totalAmount ?: "0",
-                                    msgType = "9",
-                                    payType = "4"
-                                )
+                                if (paytype == "1"){
+                                    viewModel.getPayInfo(
+                                        marketId = marketId ?: "",
+                                        orderNo = orderNo ?: "",
+                                        orderDate = orderDate?.isShowTimeString("yyyy-MM-dd") ?: "",
+                                        totalAmount = totalAmount ?: "0",
+                                        msgType = "9",
+                                        payType = "1"
+                                    )
+                                }else if (paytype == "2"){
+                                    viewModel.getPayInfo(
+                                        marketId = marketId ?: "",
+                                        orderNo = orderNo ?: "",
+                                        orderDate = orderDate?.isShowTimeString("yyyy-MM-dd") ?: "",
+                                        totalAmount = totalAmount ?: "0",
+                                        msgType = "9",
+                                        payType = "2"
+                                    )
+                                }
+
                             }
                         } else {
                             if (viewModel.lookingforInfo.value?.tradeid.isNullOrEmpty().not()) {
@@ -420,17 +434,32 @@ class PayActivity : BaseActivity<PayViewModel>() {
                                         finish()
                                     }
                                 } else if (selectPayType.value?.id == "2") {
-                                    viewModel.getPayInfo(
-                                        marketId = viewModel.lookingforInfo.value?.marketid ?: "",
-                                        orderNo = viewModel.lookingforInfo.value?.tradeid ?: "",
-                                        orderDate = viewModel.lookingforInfo.value?.tradedate?.isShowTimeString(
-                                            "yyyy-MM-dd"
-                                        ) ?: "",
-                                        totalAmount = viewModel.lookingforInfo.value?.payamount
-                                            ?: "0",
-                                        msgType = "9",
-                                        payType = "4"
-                                    )
+                                    if (paytype == "1"){
+                                        viewModel.getPayInfo(
+                                            marketId = viewModel.lookingforInfo.value?.marketid ?: "",
+                                            orderNo = viewModel.lookingforInfo.value?.tradeid ?: "",
+                                            orderDate = viewModel.lookingforInfo.value?.tradedate?.isShowTimeString(
+                                                "yyyy-MM-dd"
+                                            ) ?: "",
+                                            totalAmount = viewModel.lookingforInfo.value?.payamount
+                                                ?: "0",
+                                            msgType = "9",
+                                            payType = "1"
+                                        )
+                                    }else if (paytype == "2"){
+                                        viewModel.getPayInfo(
+                                            marketId = viewModel.lookingforInfo.value?.marketid ?: "",
+                                            orderNo = viewModel.lookingforInfo.value?.tradeid ?: "",
+                                            orderDate = viewModel.lookingforInfo.value?.tradedate?.isShowTimeString(
+                                                "yyyy-MM-dd"
+                                            ) ?: "",
+                                            totalAmount = viewModel.lookingforInfo.value?.payamount
+                                                ?: "0",
+                                            msgType = "9",
+                                            payType = "2"
+                                        )
+                                    }
+
                                 }
                             }
                         }
@@ -456,7 +485,13 @@ class PayActivity : BaseActivity<PayViewModel>() {
                 RxPay(this@PayActivity)
                     .requestAlipay(it ?: "")
                     .subscribe {
-
+                        if (it){
+                            val intent = Intent()
+                            intent.putExtra("type","1")
+                            intent.setClass(context,PaySuccessActivity::class.java)
+                            ActivityUtils.startActivity(intent)
+                            finish()
+                        }
                     }
 
             }

+ 125 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/PaySuccessActivity.kt

@@ -0,0 +1,125 @@
+package cn.muchinfo.rma.view.base.main
+
+import android.os.Bundle
+import android.view.Gravity
+import android.view.View
+import cn.muchinfo.rma.R
+import cn.muchinfo.rma.view.autoWidget.*
+import cn.muchinfo.rma.view.base.BaseActivity
+import cn.muchinfo.rma.view.base.app.Constant
+import cn.muchinfo.rma.view.base.home.contract.emptyView
+import com.blankj.utilcode.util.SPUtils
+import org.jetbrains.anko.*
+
+/**
+ * 支付成功后的页面
+ */
+class PaySuccessActivity : BaseActivity<PayViewModel>(){
+
+    /**
+     * 1 是支付成功 2 是充值成功
+     */
+    val type by lazy { intent.getStringExtra("type") }
+
+    override fun onCreate(savedInstanceState: Bundle?) {
+        super.onCreate(savedInstanceState)
+        verticalLayout {
+            background = resources.getDrawable(R.color.rma_item_bg)
+            topBar {
+//                commonLeftButton()
+                commonTitle {
+                    text = "收银台"
+                }
+            }
+
+            verticalLayout {
+                background = resources.getDrawable(R.color.white)
+
+                linearLayout {
+                    gravity = Gravity.CENTER_VERTICAL
+                    emptyView()
+
+                    imageView {
+                        imageResource = R.mipmap.qhj_pay_success
+                    }.lparams(autoSize(60), autoSize(60))
+
+                    textView {
+                        text = "支付成功"
+                        textSizeAuto = 44
+                        textColorInt = R.color.qhj_pay_success_color
+                    }.lparams(wrapContent, wrapContent){
+                        marginStart = autoSize(36)
+                    }
+
+                    emptyView()
+
+                }.lparams(matchParent, autoSize(90)){
+                    topMargin = autoSize(80)
+                }
+
+                linearLayout {
+                    if (type == "1"){
+                        visibility = View.VISIBLE
+                    }else{
+                        visibility = View.GONE
+                    }
+                    textView {
+                        backgroundResource = R.drawable.qhj_pay_success_bg
+                        gravity = Gravity.CENTER
+                        onThrottleFirstClick {
+                            SPUtils.getInstance().put(Constant.pay_status,"0")
+                            finish()
+                        }
+                        text = "返回交易"
+                        textSizeAuto = 32
+                        textColorStr = "#2794FF"
+                    }.lparams(autoSize(288), autoSize(84)){
+                        marginStart = autoSize(130)
+                    }
+
+                    textView {
+                        onThrottleFirstClick {
+                            SPUtils.getInstance().put(Constant.pay_status,"4")
+                            finish()
+                        }
+                        backgroundResource = R.drawable.qhj_main_blue_bg
+                        gravity = Gravity.CENTER
+                        text = "查看订单"
+                        textSizeAuto = 32
+                        textColorInt = R.color.white
+                    }.lparams(autoSize(288), autoSize(84)){
+                        marginStart = autoSize(62)
+                    }
+                }.lparams(matchParent, autoSize(100)){
+                    topMargin = autoSize(70)
+                }
+                linearLayout {
+                    if (type == "2"){
+                        visibility = View.VISIBLE
+                    }else{
+                        visibility = View.GONE
+                    }
+                    emptyView()
+
+                    textView {
+                        onThrottleFirstClick {
+                            SPUtils.getInstance().put(Constant.pay_status,"4")
+                            finish()
+                        }
+                        backgroundResource = R.drawable.qhj_main_blue_bg
+                        gravity = Gravity.CENTER
+                        text = "查看订单"
+                        textSizeAuto = 32
+                        textColorInt = R.color.white
+                    }.lparams(autoSize(288), autoSize(84))
+
+                    emptyView()
+                }.lparams(matchParent, autoSize(100)){
+                    topMargin = autoSize(70)
+                }
+            }.lparams(matchParent, autoSize(400))
+
+        }
+    }
+
+}

+ 1 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/PayViewModel.kt

@@ -128,7 +128,7 @@ class PayViewModel : BaseViewModel(){
         json["totalAmount"] = totalAmount
         json["msgType"] = msgType
         OkHttpUtils.postString()
-            .url(Constant.alipay_path)
+            .url(SPUtils.getInstance().getString(Constant.otherPayUrl) + "pay")
             .content(json.toJSONString())
             .mediaType(MediaType.parse("application/json; charset=utf-8"))
             .build()

+ 1 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/SeaKingMainFragment.kt

@@ -338,6 +338,7 @@ class SeaKingMainFragment : BaseFragment<SeaKingMainViewModel>() {
                                 linearLayout {
 
                                     onThrottleFirstClick {
+
                                         if (GlobalDataCollection.instance?.bankAccountSignData?.accountcode.isNullOrEmpty()){
                                             ToastUtils.showLong("请先添加提现账户信息")
                                             return@onThrottleFirstClick

+ 19 - 3
RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/pickup/PickUpGoodsActivity.kt

@@ -13,6 +13,7 @@ import cn.muchinfo.rma.R
 import cn.muchinfo.rma.global.GlobalDataCollection
 import cn.muchinfo.rma.global.MTPEnums
 import cn.muchinfo.rma.global.data.*
+import cn.muchinfo.rma.global.data.account.loginQeruy.GoodsInfo
 import cn.muchinfo.rma.global.database.DataBase
 import cn.muchinfo.rma.lifecycle.bindOptional
 import cn.muchinfo.rma.view.autoWidget.*
@@ -55,6 +56,8 @@ class PickUpGoodsActivity : BaseActivity<PickUpGoodsViewModel>(){
     //取货消耗商品数量
     lateinit var useGoodsAmount : TextView
 
+    lateinit var goodsIdInfo : GoodsInfo
+
     override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
         super.onActivityResult(requestCode, resultCode, data)
         if (requestCode == 1000 && resultCode == 1001){
@@ -79,6 +82,7 @@ class PickUpGoodsActivity : BaseActivity<PickUpGoodsViewModel>(){
                 context,
                 viewModel.loadingDialogStatus
             )
+            goodsIdInfo = DataBase.getInstance().goodsInfoDao().getGoodsInfo(data.goodsid?.toInt() ?: 0)
             selectPickUpType.postValue(SelectData(id = "2",value = "自提"))
             background = resources.getDrawable(R.color.rma_item_bg)
             topBar {
@@ -197,10 +201,22 @@ class PickUpGoodsActivity : BaseActivity<PickUpGoodsViewModel>(){
                                 if (it.toString().isNotEmpty()) {//修改品类
                                      if (it.toString() != "0"){
                                          if (viewModel.pickGoodsData.value?.pickupgoodsid?.isNotEmpty() == true){
-                                             useGoodsAmount.text = "需要" + NumberUtils.roundNum(NumberUtils.doubleDistortion(it?.toString()?.toDouble()?.times(viewModel.pickGoodsData.value?.pickupgoodsagreeunit?.toDouble() ?: 1.0)?.times(viewModel.pickGoodsData.value?.pickupratio?.toDouble() ?: 1.0).toString()),2)  + "克" + data.goodsname
-
+                                             var qtydecimalplac1 = 1
+                                             if (goodsIdInfo.qtydecimalplace != 0){
+                                                 qtydecimalplac1 = goodsIdInfo.qtydecimalplace
+                                             }
+                                             var consumptionQty = 0.0
+                                             val useQty =  NumberUtils.doubleDistortion(it?.toString()?.toDouble()?.times(viewModel.pickGoodsData.value?.pickupgoodsagreeunit?.toDouble() ?: 1.0)?.times(viewModel.pickGoodsData.value?.pickupratio?.toDouble() ?: 1.0).toString())
+                                             val coefficientnumber = 9 * Math.pow(10.0,-qtydecimalplac1.toDouble())
+                                             val aaa = NumberUtils.roundNum(useQty.toDouble().plus(coefficientnumber).toString(),qtydecimalplac1.plus(2)).toDouble()
+                                             if (aaa != 0.0){
+                                                 consumptionQty = aaa.times(Math.pow(10.0,qtydecimalplac1.toDouble())).div(Math.pow(10.0,qtydecimalplac1.toDouble()).toInt()).toInt().toDouble()
+                                             }
+                                             useGoodsAmount.text = "需要" + consumptionQty  + "克" + data.goodsname
                                          }
                                      }
+                                }else{
+                                    useGoodsAmount.text = "需要" + "0"  + "克" + data.goodsname
                                 }
                             }
                         }
@@ -224,7 +240,7 @@ class PickUpGoodsActivity : BaseActivity<PickUpGoodsViewModel>(){
                                 val qry = data.enableqty?.toDouble()?.div(it?.pickupgoodsagreeunit?.toDouble() ?: 1.0)?.div(it?.pickupratio?.toDouble() ?: 1.0)?.times(100.0)?.toInt()?.div(100)
                                 maxPickupGoodAmount.text = "可提<=" + qry
                                 canPickUpMaxNumber.postValue(qry)
-                                text = "需要" + NumberUtils.roundNum(NumberUtils.doubleDistortion(qry?.times(it?.pickupgoodsagreeunit?.toDouble() ?: 1.0)?.times(it?.pickupratio?.toDouble() ?: 1.0).toString()),2)  + "克" + data.goodsname
+//                                text = "需要" + NumberUtils.roundNum(NumberUtils.doubleDistortion(qry?.times(it?.pickupgoodsagreeunit?.toDouble() ?: 1.0)?.times(it?.pickupratio?.toDouble() ?: 1.0).toString()),2)  + "克" + data.goodsname
                             }
                             text = "需要--" + data.goodsname
                             textSizeAuto = 31

+ 1 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/pickup/PickUpGoodsViewModel.kt

@@ -114,7 +114,7 @@ class PickUpGoodsViewModel : BaseViewModel(){
             if (isSuccess) {
                 val newList = respData?.toArrayList()
                 newList?.sortWith(Comparator { t1, t2 ->
-                    (TimeUtils.string2Millis(t1.updatetime) - TimeUtils.string2Millis(t2.updatetime)).toInt()
+                    (TimeUtils.string2Millis(t2.reqtime) - TimeUtils.string2Millis(t1.reqtime)).toInt()
                 })
                 pickUpDataList.postValue(newList)
             }

+ 6 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/withdrawmanagement/WithdrawalActivity.kt

@@ -28,6 +28,7 @@ import cn.muchinfo.rma.view.base.app.Constant
 import cn.muchinfo.rma.view.base.future.trade.itemView
 import cn.muchinfo.rma.view.base.home.contract.emptyView
 import cn.muchinfo.rma.view.base.home.contract.verticalEmptyView
+import cn.muchinfo.rma.view.base.main.PaySuccessActivity
 import cn.muchinfo.rma.view.base.main.withdrawmanagement.adapter.CardViewAdapter
 import cn.muchinfo.rma.view.base.main.withdrawmanagement.adapter.ScaleTransformerCardView
 import com.alibaba.fastjson.JSON
@@ -624,6 +625,10 @@ class MoneyInOnlineUI(private val activity: WithdrawalActivity,private val viewM
                 RxPay(activity)
                     .requestAlipay(it ?: "")
                     .subscribe {
+                        val intent = Intent()
+                        intent.putExtra("type","2")
+                        intent.setClass(context, PaySuccessActivity::class.java)
+                        ActivityUtils.startActivity(intent)
                         amount_input.setText("")
                     }
 
@@ -712,7 +717,7 @@ class MoneyInOutlineUI(private val activity: WithdrawalActivity,private val view
                                     linearLayout.setBackgroundResource(R.mipmap.qhj_withdraw_bg3)
                                     account_name.setText(data?.collectaccountname)
                                     card_number.text = data?.collectaccountno
-                                    card_name.text = data?.collectbankname
+                                    card_name.text = data?.collectbankname + data?.collectbranchbankname
                                 }
                             }
                         adapter = baseVPAdapter

+ 1 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/main/withdrawmanagement/WithdrawalViewModel.kt

@@ -243,7 +243,7 @@ class WithdrawalViewModel : BaseViewModel(){
         json["msgType"] = msgType
         LogUtils.d("dhasfhkajhlka", json.toJSONString())
         OkHttpUtils.postString()
-            .url(Constant.alipay_path)
+            .url(SPUtils.getInstance().getString(Constant.otherPayUrl) + "pay")
             .content(json.toJSONString())
             .mediaType(MediaType.parse("application/json; charset=utf-8"))
             .build()

+ 18 - 3
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/FinancialViewHolder.kt

@@ -42,7 +42,7 @@ class FinancialViewHolder(private val activity : AppCompatActivity,private val v
                 linearLayout {
                     imageView {
                         data.bindOptional(context){
-                            if (it?.currisklevel == "2"){
+                            if (it?.currisklevel == "2" || it?.currisklevel == "3"){
                                 visibility = View.VISIBLE
                             }else{
                                 visibility = View.GONE
@@ -83,8 +83,7 @@ class FinancialViewHolder(private val activity : AppCompatActivity,private val v
                     gravity = Gravity.RIGHT
                     textView {
                         data.bindOptional(context){
-                            val goodsInfo = DataBase.getInstance().goodsInfoDao().getGoodsInfo(it?.goodsid?.toInt() ?: 0)
-                            text = NumberUtils.roundNum(it?.wrqty,goodsInfo.qtydecimalplace) + it?.enumdicname
+                            text = it?.wrqty + it?.enumdicname
                         }
                         textSizeAuto = 31
                         textColorInt = R.color.rma_red_color
@@ -222,6 +221,22 @@ class FinancialViewHolder(private val activity : AppCompatActivity,private val v
                 }.lparams(autoSize(120), autoSize(48)) {
                     marginEnd = autoSize(36)
                 }
+
+                textView {
+                    onThrottleFirstClick {
+                        val intent = Intent()
+                        intent.putExtra("data",data.value)
+                        intent.setClass(context,FinancingDetailsActivity::class.java)
+                        ActivityUtils.startActivity(intent)
+                    }
+                    backgroundResource = R.drawable.rma_item_click_bg
+                    gravity = Gravity.CENTER
+                    text = "详情"
+                    textColorInt = R.color.rma_item_click_color
+                    textSizeAuto = 26
+                }.lparams(autoSize(120), autoSize(48)) {
+                    marginEnd = autoSize(36)
+                }
             }.lparams(matchParent, autoSize(72))
 
         }.lparams(matchParent, wrapContent)

+ 30 - 13
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/FinancingDetailsActivity.kt

@@ -3,7 +3,11 @@ package cn.muchinfo.rma.view.base.platinumtreasure.trade
 import android.os.Bundle
 import android.view.Gravity
 import cn.muchinfo.rma.R
+import cn.muchinfo.rma.global.data.ContractLogData
+import cn.muchinfo.rma.global.data.QhjContractDetailsData
+import cn.muchinfo.rma.lifecycle.bindOptional
 import cn.muchinfo.rma.view.autoWidget.*
+import cn.muchinfo.rma.view.autoWidget.utils.NumberUtils
 import cn.muchinfo.rma.view.base.BaseActivity
 import cn.muchinfo.rma.view.base.future.trade.itemView
 import mtp.polymer.com.autowidget.adapter.BaseAdapter
@@ -14,6 +18,8 @@ import org.jetbrains.anko.*
  */
 class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
 
+    //列表传过来的参数
+    private val data by lazy { intent.getParcelableExtra<QhjContractDetailsData>("data") as QhjContractDetailsData }
 
     // 下拉刷新
     private lateinit var swipeToLayout: SwipeToLoadLayout
@@ -22,7 +28,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
     /**
      * 明细
      */
-    private val financingDetailsAdapter: BaseAdapter<String, FinancingDetailsViewHolder> =
+    private val financingDetailsAdapter: BaseAdapter<ContractLogData, FinancingDetailsViewHolder> =
         BaseAdapter { _, _ ->
             FinancingDetailsViewHolder(
                 this,
@@ -34,6 +40,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
     override fun onCreate(savedInstanceState: Bundle?) {
         super.onCreate(savedInstanceState)
         verticalLayout {
+            viewModel.queryContractLog(scfcontractid = data.scfcontractid ?: "")
             topBar {
                 // 返回
                 commonLeftButton()
@@ -54,7 +61,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "黄金"
+                    text = data.goodsname
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -75,7 +82,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "2021-12-03 12:21:33"
+                    text = data.contractconfirmtime
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -96,7 +103,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "2g"
+                    text = data.wrqty
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -117,7 +124,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "231.09"
+                    text = NumberUtils.roundNum(data.tradeprice,2)
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -138,7 +145,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "231.09"
+                    text = NumberUtils.roundNum(data.lenderamount,2)
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -159,7 +166,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "30%"
+                    text = data.marginratio
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -180,7 +187,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "150"
+                    text = NumberUtils.roundNum(data.payamount,2)
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -201,7 +208,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "150"
+                    text = NumberUtils.roundNum(data.remainamount,2)
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -222,7 +229,7 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 }
 
                 textView {
-                    text = "150"
+                    text = NumberUtils.roundNum(data.totalinterest,2)
                     textSizeAuto = 36
                     textColorInt = R.color.rma_black_33
                 }.lparams(wrapContent, wrapContent)
@@ -268,14 +275,14 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 statusLayout = this
 //                bindTaskStatus(viewModule.status)
                 setRetryAction {
-
+                    viewModel.queryContractLog(scfcontractid = data.scfcontractid ?: "")
                 }
                 swipeToLoadLayout {
                     swipeToLayout = this
                     setEnableRefresh(true)
                     setEnableLoadMore(false)
                     setOnRefreshListener {
-
+                        viewModel.queryContractLog(scfcontractid = data.scfcontractid ?: "")
                     }
                     setEnableScrollContentWhenLoaded(false)
                     setEnableLoadMoreWhenContentNotFull(false)
@@ -290,7 +297,17 @@ class FinancingDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
                 emptyView(hint = resources.getString(R.string.now_no_data))
             }).lparams(matchParent, matchParent)
 
-            financingDetailsAdapter.setNewData(arrayListOf("1", "2", "3", "4"))
+            viewModel.contractLogDataList.bindOptional(context) {
+                if (it?.isEmpty() == true || it?.size == 0) {
+                    statusLayout.showEmpty()
+                } else {
+                    if (swipeToLayout.getIsRefreshing()) {
+                        swipeToLayout.finishRefresh()
+                    }
+                    statusLayout.showSuccess()
+                    financingDetailsAdapter.setNewData(it)
+                }
+            }
 
         }
     }

+ 16 - 6
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/FinancingDetailsViewHolder.kt

@@ -3,12 +3,15 @@ package cn.muchinfo.rma.view.base.platinumtreasure.trade
 import android.view.Gravity
 import androidx.appcompat.app.AppCompatActivity
 import cn.muchinfo.rma.R
+import cn.muchinfo.rma.global.data.ContractLogData
+import cn.muchinfo.rma.lifecycle.bindOptional
 import cn.muchinfo.rma.view.autoWidget.*
+import cn.muchinfo.rma.view.autoWidget.utils.NumberUtils
 import cn.muchinfo.rma.view.base.future.trade.itemView
 import mtp.polymer.com.autowidget.adapter.BaseViewHolder
 import org.jetbrains.anko.*
 
-class FinancingDetailsViewHolder(private val activity : AppCompatActivity,private val viewModel: PlatinumTradeViewModel) : BaseViewHolder<String>(activity){
+class FinancingDetailsViewHolder(private val activity : AppCompatActivity,private val viewModel: PlatinumTradeViewModel) : BaseViewHolder<ContractLogData>(activity){
     override val itemSize: IntArray = intArrayOf(matchParent, wrapContent)
 
     override fun _FrameLayout.createContentView() {
@@ -17,7 +20,9 @@ class FinancingDetailsViewHolder(private val activity : AppCompatActivity,privat
                 verticalLayout {
                     gravity = Gravity.LEFT or Gravity.CENTER_VERTICAL
                     textView {
-                        text = "2021-05-14 09:00:21"
+                        data.bindOptional(context){
+                            text = it?.updatetime
+                        }
                         textSizeAuto = 36
                         textColorInt = R.color.rma_gray_color
                     }.lparams(wrapContent, wrapContent){
@@ -26,18 +31,23 @@ class FinancingDetailsViewHolder(private val activity : AppCompatActivity,privat
                 }.lparams(0, autoSize(143),2f)
 
                 verticalLayout {
-                    gravity = Gravity.RIGHT
+                    gravity = Gravity.RIGHT or Gravity.CENTER_VERTICAL
                     textView {
-                        text = "1000.00"
+                        data.bindOptional(context){
+                            text = NumberUtils.roundNum(it?.amount,2)
+                        }
+
                         textSizeAuto = 36
                         textColorInt = R.color.rma_gray_color
                     }.lparams(wrapContent, wrapContent)
                 }.lparams(0, autoSize(143),1f)
 
                 verticalLayout {
-                    gravity = Gravity.RIGHT
+                    gravity = Gravity.RIGHT or Gravity.CENTER_VERTICAL
                     textView {
-                        text = "3000.00"
+                        data.bindOptional(context){
+                            text = NumberUtils.roundNum(it?.remainamount,2)
+                        }
                         textSizeAuto = 36
                         textColorInt = R.color.rma_gray_color
                     }.lparams(wrapContent, wrapContent){

+ 10 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/NoPayDetailsActivity.kt

@@ -0,0 +1,10 @@
+package cn.muchinfo.rma.view.base.platinumtreasure.trade
+
+import cn.muchinfo.rma.view.base.BaseActivity
+
+/**
+ * 待付款单据详情
+ */
+class NoPayDetailsActivity : BaseActivity<PlatinumTradeViewModel>(){
+
+}

+ 31 - 4
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/NoPayViewHolder.kt

@@ -8,6 +8,7 @@ import android.widget.TextView
 import androidx.annotation.RequiresApi
 import androidx.appcompat.app.AppCompatActivity
 import cn.muchinfo.rma.R
+import cn.muchinfo.rma.global.GlobalDataCollection
 import cn.muchinfo.rma.global.data.PayOrderData
 import cn.muchinfo.rma.global.database.DataBase
 import cn.muchinfo.rma.global.isShowTimeString
@@ -153,6 +154,13 @@ class NoPayViewHolder(private val activity : AppCompatActivity,private val viewM
                 emptyView()
 
                 textView {
+                    data.bindOptional(context){
+                        if (it?.payflag == "1"){
+                            visibility = View.VISIBLE
+                        }else{
+                            visibility = View.GONE
+                        }
+                    }
                     onThrottleFirstClick {
                         val intent = Intent()
                         intent.putExtra("goodsId",data.value?.goodsid)
@@ -164,7 +172,7 @@ class NoPayViewHolder(private val activity : AppCompatActivity,private val viewM
                         intent.putExtra("paylimitedtime",data.value?.paylimitedtime)
                         intent.putExtra("orderId","")
                         intent.setClass(context,PayActivity::class.java)
-                        ActivityUtils.startActivity(intent)
+                        activity.startActivityForResult(intent,2000)
                     }
                     backgroundResource = R.drawable.rma_item_click_bg
                     gravity = Gravity.CENTER
@@ -176,13 +184,32 @@ class NoPayViewHolder(private val activity : AppCompatActivity,private val viewM
                 }
 
                 textView {
-
+                    data.bindOptional(context){
+                        if (it?.payflag == "1"){
+                            visibility = View.VISIBLE
+                        }else{
+                            visibility = View.GONE
+                        }
+                    }
                     onThrottleFirstClick {
-
+                        viewModel.cancelPaymentReq(TradeID = data.value?.tradeid?.toLong() ?: 0,AccountID = GlobalDataCollection.instance?.accountId ?: 0){
+                            viewModel.queryPayOrder()
+                        }
                     }
                     backgroundResource = R.drawable.rma_item_click_bg
                     gravity = Gravity.CENTER
-                    text = "取消"
+                    text = "撤单"
+                    textColorInt = R.color.rma_item_click_color
+                    textSizeAuto = 26
+                }.lparams(autoSize(120), autoSize(48)) {
+                    marginEnd = autoSize(24)
+                }
+
+                textView {
+                    visibility = View.GONE
+                    backgroundResource = R.drawable.rma_item_click_bg
+                    gravity = Gravity.CENTER
+                    text = "详情"
                     textColorInt = R.color.rma_item_click_color
                     textSizeAuto = 26
                 }.lparams(autoSize(120), autoSize(48)) {

+ 2 - 2
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumCancellationsUI.kt

@@ -276,7 +276,7 @@ class CanRemoveUI(
                                     dialog.dismiss()
                                 }
                                 addAction("确定") { dialog, _ ->
-                                    viewModel.tradeOrderDetailDatalist?.value?.forEach {
+                                    viewModel.tradeOrderDetailDatalist.value?.forEach {
                                         val goodsInfo = DataBase.getInstance().goodsInfoDao().getGoodsInfo(it.goodsid?.toInt() ?: 0)
                                         viewModel.cancelOrder(marketid = goodsInfo.marketid,goodsid = goodsInfo.goodsid,accountid = GlobalDataCollection.instance?.accountId ?: 0,oldOrderId = it?.orderid?.toLong() ?: 0){
                                             viewModel.queryContractTradeOrderDetail()
@@ -286,7 +286,7 @@ class CanRemoveUI(
                                     dialog.dismiss()
                                 }
                             }.show()
-                            viewModel.tradeOrderDetailDatalist?.value?.forEach {
+                            viewModel.tradeOrderDetailDatalist.value?.forEach {
 
                             }
                         }

+ 1 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumDealUI.kt

@@ -9,6 +9,7 @@ import androidx.viewpager.widget.ViewPager
 import cn.muchinfo.rma.R
 import cn.muchinfo.rma.global.data.ContractTradeDetailData
 import cn.muchinfo.rma.global.data.PayOrderData
+import cn.muchinfo.rma.global.toShowTime
 import cn.muchinfo.rma.lifecycle.bindOptional
 import cn.muchinfo.rma.view.autoWidget.*
 import com.blankj.utilcode.util.ConvertUtils

+ 2 - 2
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumPositionUI.kt

@@ -356,14 +356,14 @@ class FinancingUI(private val activity: PlatinumTradeActivity,private val viewMo
                 statusLayout = this
 //                bindTaskStatus(viewModule.status)
                 setRetryAction {
-
+                    viewModel.queryContract()
                 }
                 swipeToLoadLayout {
                     swipeToLayout = this
                     setEnableRefresh(true)
                     setEnableLoadMore(false)
                     setOnRefreshListener {
-
+                        viewModel.queryContract()
                     }
                     setEnableScrollContentWhenLoaded(false)
                     setEnableLoadMoreWhenContentNotFull(false)

+ 14 - 5
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumTradeActivity.kt

@@ -1,5 +1,6 @@
 package cn.muchinfo.rma.view.base.platinumtreasure.trade
 
+import android.content.Intent
 import android.os.Bundle
 import android.view.Gravity
 import android.view.View
@@ -16,12 +17,14 @@ import cn.muchinfo.rma.global.room.Builder
 import cn.muchinfo.rma.lifecycle.bindOptional
 import cn.muchinfo.rma.view.autoWidget.*
 import cn.muchinfo.rma.view.base.BaseActivity
+import cn.muchinfo.rma.view.base.app.Constant
 import cn.muchinfo.rma.view.eventbus.EventConstent
 import cn.muchinfo.rma.view.eventbus.MessageEvent
 import cn.muchinfo.rma.view.eventbus.QuoteMessageEvent
 import cn.muchinfo.rma.view.eventbus.TradeMessageEvent
 import com.blankj.utilcode.util.ConvertUtils
 import com.blankj.utilcode.util.LogUtils
+import com.blankj.utilcode.util.SPUtils
 import com.qmuiteam.qmui.util.QMUIDisplayHelper
 import com.qmuiteam.qmui.util.QMUIStatusBarHelper
 import com.qmuiteam.qmui.widget.tab.QMUITabIndicator
@@ -60,11 +63,6 @@ class PlatinumTradeActivity : BaseActivity<PlatinumTradeViewModel>(){
     var selectedTabIndex: Int = 0
     private lateinit var viewPager: ViewPager
 
-    override fun onResume() {
-        super.onResume()
-
-    }
-
     /**
      * 用livedata监测当前页面
      */
@@ -200,6 +198,17 @@ class PlatinumTradeActivity : BaseActivity<PlatinumTradeViewModel>(){
         viewModel.buyOrSellTradePositionDataList.postValue(GlobalDataCollection.instance?.contractTradePositionDataArrayList)//在数据请求前对持仓汇总单进行赋值
     }
 
+    override fun onResume() {
+        super.onResume()
+        if (SPUtils.getInstance().getString(Constant.pay_status) == "0"){
+            selectIndex1.postValue(0)
+            SPUtils.getInstance().put(Constant.pay_status,"-1")
+        }else if (SPUtils.getInstance().getString(Constant.pay_status) == "4"){
+            selectIndex1.postValue(4)
+            SPUtils.getInstance().put(Constant.pay_status,"-1")
+        }
+    }
+
     override fun onDestroy() {
         super.onDestroy()
         viewModel.removeSubscriptQuote(thisTag)

+ 47 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PlatinumTradeViewModel.kt

@@ -97,6 +97,23 @@ class PlatinumTradeViewModel : BaseViewModel() {
      */
     val costList : MutableLiveData<List<AmountLogData>> = MutableLiveData()
 
+    /**
+     * 融资明细流水记录
+     */
+    val contractLogDataList : MutableLiveData<List<ContractLogData>> = MutableLiveData()
+
+
+    fun queryContractLog(scfcontractid : String){
+        val params = mutableMapOf<String,String>().apply {
+            put("scfcontractid",scfcontractid)
+        }
+        MyApplication.getInstance()?.futureManager?.queryContractLog(params = params){isSuccess, respData, error ->
+            if (isSuccess){
+                contractLogDataList.postValue(respData)
+            }
+        }
+    }
+
     //查询资金账号信息
     fun getTaAccounts(){
         val params = mutableMapOf<String, String>().apply {
@@ -631,6 +648,36 @@ class PlatinumTradeViewModel : BaseViewModel() {
 
 
     /**
+     * 撤销支付请求
+     */
+    fun cancelPaymentReq(
+        TradeID : Long,
+        AccountID : Long,
+        isSuccess: (isCompleted: Boolean) -> Unit
+    ){
+        loadingDialogStatus.value = TaskUiModel.inFlight()
+        GlobalScope.launch {
+            MyApplication.getInstance()?.moneyManager?.cancelPaymentReq(
+                TradeID = TradeID,
+                AccountID = AccountID
+            ) { isCompleted, err ->
+                if (isCompleted) {
+                    loadingDialogStatus.postValue(TaskUiModel.success(msg = "请求成功"))
+                    isSuccess(true)
+                } else {
+                    loadingDialogStatus.postValue(
+                        TaskUiModel.failed(
+                            InteractiveException(
+                                errorMessage = err?.message!!
+                            )
+                        )
+                    )
+                }
+            }
+        }
+    }
+
+    /**
      *  type : 1 买 2 卖 3 融资买
      *  selectPayType 1 按数量 2 按金额
      * 千海金下单

+ 13 - 2
RMA/app/src/main/java/cn/muchinfo/rma/view/base/platinumtreasure/trade/PositionViewHolder.kt

@@ -18,6 +18,7 @@ import cn.muchinfo.rma.view.autoWidget.onThrottleFirstClick
 import cn.muchinfo.rma.view.autoWidget.textColorInt
 import cn.muchinfo.rma.view.autoWidget.textSizeAuto
 import cn.muchinfo.rma.view.autoWidget.utils.NumberUtils
+import cn.muchinfo.rma.view.base.chart.ChartActivity
 import cn.muchinfo.rma.view.base.future.trade.itemView
 import cn.muchinfo.rma.view.base.home.contract.emptyView
 import cn.muchinfo.rma.view.base.main.pickup.PickUpGoodsActivity
@@ -229,9 +230,13 @@ class PositionViewHolder(
                 textView {
 
                     data.bindOptional(context){
+                        val goodsInfo = DataBase.getInstance().goodsInfoDao().getGoodsInfo(it?.goodsid?.toInt() ?: 0)
                         if (it?.enableqty.isNullOrEmpty() || it?.enableqty == "0"){
                             visibility = View.GONE
                         }
+                        if (goodsInfo.goodsstatus == 7){
+                            visibility = View.GONE
+                        }
                     }
                     onThrottleFirstClick {
                         EventBus.getDefault().post(
@@ -253,9 +258,15 @@ class PositionViewHolder(
                 }
 
                 textView {
-
                     onThrottleFirstClick {
-
+                        val goodsInfo = DataBase.getInstance().goodsInfoDao().getGoodsInfo(data.value?.goodsid?.toInt() ?: 0)
+                        val intent = Intent()
+                        intent.putExtra("outGoodsCode", goodsInfo.outgoodscode)
+                        intent.putExtra("goodsCode", goodsInfo.goodscode)
+                        intent.putExtra("goodsId", goodsInfo.goodsid.toString())
+                        intent.putExtra("marketId", goodsInfo.marketid.toString())
+                        intent.setClass(context, ChartActivity::class.java)
+                        ActivityUtils.startActivity(intent)
                     }
                     backgroundResource = R.drawable.rma_item_click_bg
                     gravity = Gravity.CENTER

+ 8 - 0
RMA/app/src/main/res/drawable/qhj_pay_success_bg.xml

@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">
+    <stroke
+        android:color="#2794FF"
+        android:width="1dp" />
+    <solid android:color="#E8F3F6"/>
+    <corners android:radius="25dp"/>
+</shape>

+ 1 - 0
RMA/app/src/main/res/layout/item_fresco.xml

@@ -11,4 +11,5 @@
         android:layout_width="match_parent"
         android:layout_height="match_parent"
         app:placeholderImage="@mipmap/banner"/>
+
 </androidx.cardview.widget.CardView>

BIN
RMA/app/src/main/res/mipmap-xhdpi/qhj_pay_success.png


+ 1 - 0
RMA/app/src/main/res/values/colors.xml

@@ -97,4 +97,5 @@
     <color name="qhj_yellow_hint_color">#30FF6600</color>
     <color name="qhj_pick_color">#BD7859</color>
     <color name="qhj_update_image_bg">#F5F7F7</color>
+    <color name="qhj_pay_success_color">#3CC56D</color>
 </resources>