Ver Fonte

风险管理2月24日提交代码-liu.bolan

Liu.bolan há 4 anos atrás
pai
commit
1723eaf308
37 ficheiros alterados com 838 adições e 273 exclusões
  1. 2 2
      RMA/app/src/main/java/cn/muchinfo/rma/business/contract/adapter/ContractAdapter.kt
  2. 1 1
      RMA/app/src/main/java/cn/muchinfo/rma/business/hedge/adapter/HedgeAdapter.kt
  3. 1 1
      RMA/app/src/main/java/cn/muchinfo/rma/business/initialize/InitializeManager.kt
  4. 14 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/BaseGlobalData.java
  5. 33 1
      RMA/app/src/main/java/cn/muchinfo/rma/global/GlobalDataCollention.java
  6. 8 5
      RMA/app/src/main/java/cn/muchinfo/rma/global/utils/SelectIUtils.kt
  7. 123 123
      RMA/app/src/main/java/cn/muchinfo/rma/protobuf/protoclasses/ErmcpMI1.java
  8. 0 3
      RMA/app/src/main/java/cn/muchinfo/rma/view/MainViewModel.kt
  9. 1 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/MyApplication.kt
  10. 73 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/autoWidget/dialog/AccountViewHolder.kt
  11. 67 5
      RMA/app/src/main/java/cn/muchinfo/rma/view/autoWidget/dialog/Dialog.kt
  12. 4 2
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/app/Constant.kt
  13. 11 2
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/HomeFragment.kt
  14. 14 3
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/BusinessManagementActivity.kt
  15. 0 8
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/BusinessManagementData.kt
  16. 9 2
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/BusinessManagementViewModel.kt
  17. 7 3
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/BusinessManagementViewholder.kt
  18. 2 1
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/MidpointsAuditActivity.kt
  19. 17 4
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/SettlementAuditActivity.kt
  20. 15 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/commodity/CommodityInformationActivity.kt
  21. 6 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/commodity/FuturesVarietiesUI.kt
  22. 8 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/commodity/HedgeSpeciesUI.kt
  23. 9 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/commodity/SpotVarietiesUI.kt
  24. 2 2
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/contract/AddContractActivity.kt
  25. 10 1
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/customerdata/AddCustomerDataActivity.kt
  26. 18 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/customerdata/CustomerDataActivity.kt
  27. 12 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/financial/FinancialActivity.kt
  28. 0 2
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/financial/FinancialViewModel.kt
  29. 0 5
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/financial/FinancialViewholder.kt
  30. 0 8
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/hedge/HedgeData.kt
  31. 42 1
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/reportquery/ReportQueryViewModel.kt
  32. 72 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/reportquery/SpotReportDetailsActivity.kt
  33. 148 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/reportquery/SpotReportDetailsViewHolder.kt
  34. 92 88
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/reportquery/SpotReportViewHolder.kt
  35. 16 0
      RMA/app/src/main/res/drawable/main_cercle_red_bg.xml
  36. BIN
      RMA/app/src/main/res/mipmap-xhdpi/rma_account_select.png
  37. 1 0
      RMA/app/src/main/res/values/colors.xml

+ 2 - 2
RMA/app/src/main/java/cn/muchinfo/rma/business/contract/adapter/ContractAdapter.kt

@@ -137,7 +137,7 @@ object ContractAdapter {
         if (OperateType == "1" || OperateType == "2") {
             builder.info = contractInfobuilder.build()
         }
-        builder.userID = loginInfo.userID
+        builder.userID = loginInfo.loginID
         builder.remark = Remark
         builder.operateSrc = 2
         if (SpotContractID.isNotEmpty()) {
@@ -195,7 +195,7 @@ object ContractAdapter {
                 18
             )
         )
-        builder.userID = loginInfo.userID
+        builder.userID = loginInfo.loginID
         builder.remark = remark
         builder.operateType = operateType
         builder.setClientTicket(UUID.randomUUID().toString().replace("-", ""))

+ 1 - 1
RMA/app/src/main/java/cn/muchinfo/rma/business/hedge/adapter/HedgeAdapter.kt

@@ -61,7 +61,7 @@ object HedgeAdapter {
         if (operateType == 1 || operateType == 2){
             builder.info = hedgePlanInfoOrBuilder.build()
         }
-        builder.userID = loginInfo.userID
+        builder.userID = loginInfo.loginID
         builder.remark = remark
         builder.operateType = operateType
         builder.operateSrc = 2

+ 1 - 1
RMA/app/src/main/java/cn/muchinfo/rma/business/initialize/InitializeManager.kt

@@ -22,7 +22,7 @@ class InitializeManager {
      * @param params Map<String, String> 参数 loginID   taAccountType(可不填) 账号类型 - 1:外部账号 2:内部账号 3:内部做市自营账号 4:内部做市接单账号
      * @param responseBack Function3<[@kotlin.ParameterName] Boolean, [@kotlin.ParameterName] List<AccountData>?, [@kotlin.ParameterName] Error?, Unit>
      */
-    suspend fun getTaAccounts(
+    fun getTaAccounts(
         params: Map<String, String>,
         responseBack: (isSuccess: Boolean, respData: List<AccountData>?, error: Error?) -> Unit
     ) {

+ 14 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/BaseGlobalData.java

@@ -6,6 +6,7 @@ import java.util.List;
 
 import cn.muchinfo.rma.global.data.AccountData;
 import cn.muchinfo.rma.global.data.UserAccountData;
+import cn.muchinfo.rma.global.data.database.EnumDicEntity;
 import cn.muchinfo.rma.global.data.database.ErrorCodeEntity;
 import cn.muchinfo.rma.protobuf.protoclasses.SystemMI1;
 
@@ -40,6 +41,11 @@ public class BaseGlobalData {
      */
     private List<ErrorCodeEntity> errorCodeEntityList;
 
+    /***
+     * 暂存的枚举信息
+     */
+    private List<EnumDicEntity> enumDicEntityList;
+
     /**
      * 用户信息
      */
@@ -83,4 +89,12 @@ public class BaseGlobalData {
     public void setErrorCodeEntityList(List<ErrorCodeEntity> errorCodeEntityList) {
         this.errorCodeEntityList = errorCodeEntityList;
     }
+
+    public List<EnumDicEntity> getEnumDicEntityList() {
+        return enumDicEntityList;
+    }
+
+    public void setEnumDicEntityList(List<EnumDicEntity> enumDicEntityList) {
+        this.enumDicEntityList = enumDicEntityList;
+    }
 }

+ 33 - 1
RMA/app/src/main/java/cn/muchinfo/rma/global/GlobalDataCollention.java

@@ -1,12 +1,17 @@
 package cn.muchinfo.rma.global;
 
 
+import com.blankj.utilcode.util.SPUtils;
+
 import java.text.SimpleDateFormat;
 import java.util.Calendar;
 import java.util.List;
 import java.util.concurrent.locks.Lock;
 import java.util.concurrent.locks.ReentrantLock;
+
+import cn.muchinfo.rma.global.data.AccountData;
 import cn.muchinfo.rma.global.data.database.ErrorCodeEntity;
+import cn.muchinfo.rma.view.base.app.Constant;
 
 public class GlobalDataCollention extends BaseGlobalData {
 
@@ -47,12 +52,38 @@ public class GlobalDataCollention extends BaseGlobalData {
         if (GlobalDataCollention.getInstance().getAccountDataList() == null || GlobalDataCollention.getInstance().getAccountDataList().isEmpty()){
             accountId = 0L;
         }else {
-            accountId = GlobalDataCollention.getInstance().getAccountDataList().get(0).getAccountid();
+            if (SPUtils.getInstance().getLong(Constant.SELECT_ACCOUNT_ID,0) == 0){
+                accountId = GlobalDataCollention.getInstance().getAccountDataList().get(0).getAccountid();
+            }else {
+                accountId = Long.parseLong(SPUtils.getInstance().getString(Constant.SELECT_ACCOUNT_ID));
+            }
         }
         return accountId;
     }
 
     /**
+     * 获取当前选择的资金账户信息
+     * @return
+     */
+    public AccountData getAccountData(){
+        AccountData accountData = null;
+        if (GlobalDataCollention.getInstance().getAccountDataList() == null || GlobalDataCollention.getInstance().getAccountDataList().isEmpty()){
+            accountData = new AccountData();
+        }else {
+            if (SPUtils.getInstance().getLong(Constant.SELECT_ACCOUNT_ID,0) == 0){
+                accountData = GlobalDataCollention.getInstance().getAccountDataList().get(0);
+            }else {
+                for (int i = 0;i < GlobalDataCollention.getInstance().getAccountDataList().size();i++){
+                    if (GlobalDataCollention.getInstance().getAccountDataList().get(i).getAccountid() == Long.parseLong(SPUtils.getInstance().getString(Constant.SELECT_ACCOUNT_ID))){
+                        accountData = GlobalDataCollention.getInstance().getAccountDataList().get(i);
+                    }
+                }
+            }
+        }
+        return accountData;
+    }
+
+    /**
      * 一个月时间差
      *
      * @return
@@ -75,4 +106,5 @@ public class GlobalDataCollention extends BaseGlobalData {
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
         return format.format(calendar.getTime());
     }
+
 }

+ 8 - 5
RMA/app/src/main/java/cn/muchinfo/rma/global/utils/SelectIUtils.kt

@@ -1,5 +1,6 @@
 package cn.muchinfo.rma.global.utils
 
+import cn.muchinfo.rma.global.GlobalDataCollention
 import cn.muchinfo.rma.global.MTPEnums
 import mtp.polymer.com.autowidget.dialog.SelectData
 
@@ -7,15 +8,17 @@ object SelectIUtils {
 
 
     /**
-     * 新增客户资料的证件类型
+     * 新增客户资料的证件类型 过滤 certificatetype
      * @return List<SelectData>
      */
     fun getDocumentType() : List<SelectData>{
         val selectList = arrayListOf<SelectData>()
-        val selectData1 = SelectData(id = MTPEnums.CARDTYPE_IDCARD.toString(),value = "身份证")
-        val selectData2 = SelectData(id = MTPEnums.CARDTYPE_BUSINESSLICENSE.toString(),value = "营业执照")
-        selectList.add(selectData1)
-        selectList.add(selectData2)
+        val enumDicEntityList = GlobalDataCollention.getInstance().enumDicEntityList
+        enumDicEntityList.forEach {
+            if (it.enumdiccode == "certificatetype"){
+                selectList.add(SelectData(id = it.enumitemname,value = it.enumdicname))
+            }
+        }
         return selectList
     }
 

Diff do ficheiro suprimidas por serem muito extensas
+ 123 - 123
RMA/app/src/main/java/cn/muchinfo/rma/protobuf/protoclasses/ErmcpMI1.java


+ 0 - 3
RMA/app/src/main/java/cn/muchinfo/rma/view/MainViewModel.kt

@@ -22,9 +22,7 @@ class MainViewModel : BaseViewModel() {
      */
     // FIXME 这里后期需要加上错误信息和枚举的增量查询
     fun initiaData() {
-
         loadingDialogStatus.postValue(TaskUiModel.inFlight(msg = "数据初始化中..."))
-
         var canContinue = false
         // 获取资金账户
         runBlocking {
@@ -35,7 +33,6 @@ class MainViewModel : BaseViewModel() {
                 isInitiaDataSuccess.postValue(isSuccess)
                 if (isSuccess) {
                     getUserAccount()
-                    loadingDialogStatus.postValue(TaskUiModel.success(msg = "数据初始化成功"))
                     GlobalDataCollention.getInstance().accountDataList = respData
                 } else {
                     loadingDialogStatus.postValue(TaskUiModel.idel())

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

@@ -166,6 +166,7 @@ class MyApplication : BaseApplication() {
             SPUtils.getInstance().put(Constant.FISTOPENAPP,false)
         }
         GlobalDataCollention.getInstance().errorCodeEntityList = DataBase.getInstance().errorCodeDao().getList()
+        GlobalDataCollention.getInstance().enumDicEntityList = DataBase.getInstance().enumsDicDao().getList()
     }
 
     private fun initManager() {

+ 73 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/autoWidget/dialog/AccountViewHolder.kt

@@ -0,0 +1,73 @@
+package cn.muchinfo.rma.view.autoWidget.dialog
+
+import android.view.Gravity
+import android.view.View
+import androidx.appcompat.app.AppCompatActivity
+import cn.muchinfo.rma.R
+import cn.muchinfo.rma.global.data.AccountData
+import cn.muchinfo.rma.lifecycle.bindOptional
+import cn.muchinfo.rma.view.autoWidget.autoSize
+import cn.muchinfo.rma.view.autoWidget.textColorInt
+import cn.muchinfo.rma.view.autoWidget.textSizeAuto
+import cn.muchinfo.rma.view.base.app.Constant
+import cn.muchinfo.rma.view.base.home.contract.emptyView
+import com.blankj.utilcode.util.SPUtils
+import mtp.polymer.com.autowidget.adapter.BaseViewHolder
+import org.jetbrains.anko.*
+
+class AccountViewHolder(private val activity: AppCompatActivity) : BaseViewHolder<AccountData>(activity){
+    override val itemSize: IntArray = intArrayOf(matchParent, wrapContent)
+
+    override fun _FrameLayout.createContentView() {
+        linearLayout {
+            gravity = Gravity.CENTER_VERTICAL
+
+            linearLayout {
+                gravity = Gravity.CENTER
+                backgroundResource = R.drawable.main_cercle_red_bg
+                textView {
+                    text = "李"
+                    textColorInt = R.color.white
+                    textSizeAuto = 31
+                }
+            }.lparams(autoSize(72), autoSize(72)){
+                marginStart = autoSize(52)
+            }
+
+            verticalLayout {
+                textView {
+                    text = "李四"
+                    textSizeAuto = 34
+                    textColorInt = R.color.rma_black_33
+                }.lparams(wrapContent, wrapContent){
+                    topMargin = autoSize(30)
+                }
+
+                textView {
+                    text = "213124214"
+                    textSizeAuto = 29
+                    textColorInt = R.color.rma_gray_color
+                }.lparams(wrapContent, wrapContent)
+            }.lparams(wrapContent, autoSize(140)){
+                marginStart = autoSize(35)
+            }
+
+            emptyView()
+
+            imageView {
+                data.bindOptional(context){
+                    if (it?.accountid == SPUtils.getInstance().getLong(Constant.SELECT_ACCOUNT_ID)){
+                        visibility = View.VISIBLE
+                    }else{
+                        visibility = View.GONE
+                    }
+                }
+                imageResource = R.mipmap.rma_account_select
+            }.lparams(autoSize(36), autoSize(36)){
+                marginEnd = autoSize(50)
+            }
+
+        }.lparams(matchParent, autoSize(140))
+    }
+
+}

+ 67 - 5
RMA/app/src/main/java/cn/muchinfo/rma/view/autoWidget/dialog/Dialog.kt

@@ -15,15 +15,19 @@ import android.widget.DatePicker
 import androidx.annotation.RequiresApi
 import androidx.appcompat.app.AppCompatActivity
 import cn.muchinfo.rma.R
+import cn.muchinfo.rma.global.GlobalDataCollention
+import cn.muchinfo.rma.global.data.AccountData
 import cn.muchinfo.rma.global.data.AvaildGoodsGroupData
 import cn.muchinfo.rma.global.data.GGConvertConfigData
 import cn.muchinfo.rma.global.data.MiddleGoodsData
 
 import cn.muchinfo.rma.lifecycle.addObserver
 import cn.muchinfo.rma.lifecycle.getAppCompatActivity
-import cn.muchinfo.rma.view.autoWidget.applySchedulers
-import cn.muchinfo.rma.view.autoWidget.bindLifeCycle
+import cn.muchinfo.rma.view.autoWidget.*
+import cn.muchinfo.rma.view.autoWidget.dialog.AccountViewHolder
+import cn.muchinfo.rma.view.base.app.Constant
 import cn.muchinfo.rma.view.base.home.commodity.viewholder.SpotInfoData
+import com.blankj.utilcode.util.SPUtils
 import com.blankj.utilcode.util.SnackbarUtils.dismiss
 import com.blankj.utilcode.util.ToastUtils
 import com.qmuiteam.qmui.widget.dialog.QMUIBottomSheet
@@ -32,6 +36,7 @@ import com.qmuiteam.qmui.widget.dialog.QMUIDialog
 import com.qmuiteam.qmui.widget.dialog.QMUITipDialog
 
 import io.reactivex.Observable
+import mtp.polymer.com.autowidget.adapter.BaseAdapter
 
 
 import org.jetbrains.anko.*
@@ -206,11 +211,12 @@ fun AppCompatActivity.showDataSelectDialog(
     selectTime: (String.() -> Unit)? = null
 ) {
     val calendar = Calendar.getInstance(Locale.CHINA)
-    DatePickerDialog(this,
+    DatePickerDialog(
+        this,
         DatePickerDialog.OnDateSetListener { view, year, monthOfYear, dayOfMonth ->
-            if (type == "1"){
+            if (type == "1") {
                 selectTime?.invoke("$year-$monthOfYear-$dayOfMonth")
-            }else{
+            } else {
                 selectTime?.invoke("$year-$monthOfYear")
             }
         },
@@ -272,6 +278,62 @@ fun AppCompatActivity.createInputDialog(
         }
 }
 
+/**
+ * 选择资金账户的弹窗
+ * @receiver AppCompatActivity
+ * @param selectAccount [@kotlin.ExtensionFunctionType] Function1<AccountData, Unit>?
+ * @return CustomDialogFragment
+ */
+fun AppCompatActivity.creatSelectAccountDialog(
+    selectAccount: (AccountData.() -> Unit)? = null
+): CustomDialogFragment {
+    return createCustomDialog(cancelable = false) { dialog ->
+        backgroundColor = Color.parseColor("#5f000000")
+        val accountAdapter: BaseAdapter<AccountData, AccountViewHolder> =
+            BaseAdapter { _, _ -> AccountViewHolder(this@creatSelectAccountDialog) }
+        verticalLayout {
+            gravity = Gravity.TOP
+
+            view { }.lparams(matchParent, autoSize(120))
+
+            verticalLayout {
+                recyclerView {
+                    background = resources.getDrawable(R.color.white)
+                    adapter = accountAdapter
+                }.lparams(matchParent, matchParent)
+            }.lparams(matchParent, wrapContent)
+
+            accountAdapter.setNewData(GlobalDataCollention.getInstance().accountDataList)
+            accountAdapter.setOnItemClickListener { adapter, view, position ->
+                selectAccount?.invoke(
+                    GlobalDataCollention.getInstance().accountDataList.get(
+                        position
+                    )
+                )
+                SPUtils.getInstance().put(
+                    Constant.SELECT_ACCOUNT_ID,
+                    GlobalDataCollention.getInstance().accountDataList.get(position).accountid
+                )
+                dialog.dismiss()
+            }
+
+            linearLayout {
+                background = resources.getDrawable(R.color.white)
+                onThrottleFirstClick {
+                    dialog.dismiss()
+                }
+                gravity = Gravity.CENTER
+                textView {
+                    text = "取消"
+                    textSizeAuto = 36
+                    textColorInt = R.color.rma_gray_color
+                }.lparams(wrapContent, wrapContent)
+            }.lparams(matchParent, autoSize(100))
+
+
+        }.lparams(matchParent, matchParent)
+    }
+}
 
 //fun AppCompatActivity.createStateDialog(textOne: String = "", textTwo: String = "", textThree: String = ""): CustomDialogFragment {
 //    return createCustomDialog(cancelable = false) { dialog ->

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

@@ -9,9 +9,9 @@ object Constant {
     /**
      * 获取基础url的接口
      */
-    const val baseurl = "http://103.40.249.127:28280/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"
+    const val baseurl = "http://192.168.31.114:8080/cfg?key=test_114"
 
     /**
      * 用sp存储基础url的key
@@ -74,4 +74,6 @@ object Constant {
 
     const val FISTOPENAPP = "first_open_app"
 
+    /** 当前选择的资金账号id **/
+    const val SELECT_ACCOUNT_ID = "SELECT_ACCOUNT_ID"
 }

+ 11 - 2
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/HomeFragment.kt

@@ -1,5 +1,6 @@
 package cn.muchinfo.rma.view.base.home
 
+import android.annotation.SuppressLint
 import android.content.Intent
 import android.graphics.Color
 import android.graphics.Rect
@@ -10,6 +11,7 @@ import android.view.LayoutInflater
 import android.view.View
 import android.view.ViewGroup
 import android.widget.ImageView
+import androidx.appcompat.app.AppCompatActivity
 import androidx.cardview.widget.CardView
 import androidx.core.widget.NestedScrollView
 import androidx.fragment.app.Fragment
@@ -47,6 +49,7 @@ import com.qmuiteam.qmui.widget.tab.QMUITabIndicator
 import com.qmuiteam.qmui.widget.tab.QMUITabSegment
 
 import mtp.polymer.com.autowidget.adapter.BaseAdapter
+import mtp.polymer.com.autowidget.dialog.creatSelectAccountDialog
 import mtp.polymer.com.autowidget.utils.bindTaskStatus
 import org.greenrobot.eventbus.EventBus
 import org.greenrobot.eventbus.Subscribe
@@ -124,6 +127,7 @@ class HomeFragment : BaseFragment<HomeViewModel>() {
     }
 
 
+    @SuppressLint("SetTextI18n")
     override fun onCreateView(
         inflater: LayoutInflater,
         container: ViewGroup?,
@@ -138,8 +142,13 @@ class HomeFragment : BaseFragment<HomeViewModel>() {
                 linearLayout {
                     background = resources.getDrawable(R.color.main_title_bg_color)
                     verticalLayout {
+                        /** 资金账户选择 **/
+                        onThrottleFirstClick {
+                            (context as AppCompatActivity).creatSelectAccountDialog{
+                                EventBus.getDefault().post(MessageEvent(EventConstent.USERACCOUNTCHANGE))
+                            }.show()
+                        }
                         textView {
-                            // TODO 资料需要填写
                             viewModel.usedAccountData.bindOptional(context){
                                 text = it?.accountname
                             }
@@ -169,7 +178,7 @@ class HomeFragment : BaseFragment<HomeViewModel>() {
                         topMargin = autoSize(20)
                     }
 
-                }.lparams(matchParent, autoSize(100))
+                }.lparams(matchParent, autoSize(120))
 
 //                inflateLayout<NestedScrollView>(R.layout.view_home_scrollview) {
                 relativeLayout {

+ 14 - 3
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/BusinessManagementActivity.kt

@@ -14,9 +14,6 @@ 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.home.customerdata.AddCustomerDataActivity
-import cn.muchinfo.rma.view.base.home.hedge.HedgeData
-import cn.muchinfo.rma.view.base.home.hedge.HedgePlanViewHolder
-import cn.muchinfo.rma.view.base.home.hedge.creatHedgeHeadUI
 import com.blankj.utilcode.util.ActivityUtils
 import com.blankj.utilcode.util.ConvertUtils
 import com.qmuiteam.qmui.util.QMUIDisplayHelper
@@ -131,6 +128,18 @@ class BusinessManagementActivity : BaseActivity<BusinessManagementViewModel>(){
         }
     }
 
+    override fun onResume() {
+        super.onResume()
+        when (selectedTabIndex) {
+            0 -> {
+                viewModel.queryBusinessDJ()
+            }
+            1 -> {
+                viewModel.queryBusinessJS()
+            }
+        }
+    }
+
 }
 
 /**
@@ -183,6 +192,7 @@ class SomePriceUI(
                     if (swipeToLayout.getIsRefreshing()){
                         swipeToLayout.finishRefresh()
                     }
+                    statusLayout.showSuccess()
                     unSubmitAdapter.setNewData(it)
                 }
             }
@@ -247,6 +257,7 @@ class SettlementUI(
                     if (swipeToLayout.getIsRefreshing()){
                         swipeToLayout.finishRefresh()
                     }
+                    statusLayout.showSuccess()
                     unSubmitAdapter.setNewData(it)
                 }
             }

+ 0 - 8
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/BusinessManagementData.kt

@@ -1,8 +0,0 @@
-package cn.muchinfo.rma.view.base.home.business
-
-import com.google.gson.annotations.SerializedName
-
-data class BusinessManagementData(
-    @SerializedName("ll") var indexSelect : Int = 0,
-    @SerializedName("id") var id : String = ""
-)

+ 9 - 2
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/BusinessManagementViewModel.kt

@@ -4,12 +4,13 @@ import androidx.lifecycle.MutableLiveData
 import cn.muchinfo.rma.global.GlobalDataCollention
 import cn.muchinfo.rma.global.data.BusinessData
 import cn.muchinfo.rma.netManage.base.InteractiveException
-import cn.muchinfo.rma.protobuf.protoclasses.ErmcpMI1
 import cn.muchinfo.rma.view.MyApplication
+import cn.muchinfo.rma.view.autoWidget.toArrayList
 import cn.muchinfo.rma.view.base.BaseViewModel
-import cn.muchinfo.rma.view.base.home.hedge.HedgeData
+import com.blankj.utilcode.util.TimeUtils
 import com.blankj.utilcode.util.ToastUtils
 import mtp.polymer.com.autowidget.utils.TaskUiModel
+import java.text.SimpleDateFormat
 
 class BusinessManagementViewModel : BaseViewModel() {
 
@@ -88,6 +89,9 @@ class BusinessManagementViewModel : BaseViewModel() {
         }
         MyApplication.getInstance()?.businessManager?.queryBusinessDJ(params) { isSuccess, respData, _ ->
             if (isSuccess){
+                respData?.toArrayList()?.sortWith(Comparator { t1, t2 ->
+                    (TimeUtils.string2Millis(t2.applytime) - TimeUtils.string2Millis(t1.applytime)).toInt()
+                })
                 somePriceList.postValue(respData)
             }
         }
@@ -104,6 +108,9 @@ class BusinessManagementViewModel : BaseViewModel() {
 
         MyApplication.getInstance()?.businessManager?.queryBusinessJSEx(params) { isSuccess, respData, _ ->
             if (isSuccess){
+                respData?.toArrayList()?.sortWith(Comparator { t1, t2 ->
+                    (TimeUtils.string2Millis(t2.applytime) - TimeUtils.string2Millis(t1.applytime)).toInt()
+                })
                 settlementList.postValue(respData)
             }
         }

+ 7 - 3
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/BusinessManagementViewholder.kt

@@ -14,9 +14,6 @@ import cn.muchinfo.rma.global.isShowTimeString
 import cn.muchinfo.rma.lifecycle.bindOptional
 import cn.muchinfo.rma.view.autoWidget.*
 import cn.muchinfo.rma.view.base.home.contract.emptyView
-import cn.muchinfo.rma.view.base.home.hedge.HedgeData
-import cn.muchinfo.rma.view.base.home.hedge.HedgeDetailsActivity
-import cn.muchinfo.rma.view.base.home.hedge.HedgePlanViewModel
 import com.blankj.utilcode.util.ActivityUtils
 import mtp.polymer.com.autowidget.adapter.BaseViewHolder
 import org.jetbrains.anko.*
@@ -186,6 +183,13 @@ class BusinessManagementViewholder(private val activity: AppCompatActivity, priv
                     }
                     backgroundResource = R.drawable.rma_item_click_bg
                     gravity = Gravity.CENTER
+                    data.bindOptional(context){
+                        if (it?.applystatus == "1"){
+                            visibility = View.VISIBLE
+                        }else{
+                            visibility = View.GONE
+                        }
+                    }
                     text = if (type == "1"){
                         "点价审核"
                     }else{

+ 2 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/MidpointsAuditActivity.kt

@@ -9,6 +9,7 @@ import android.widget.EditText
 import cn.muchinfo.rma.R
 import cn.muchinfo.rma.global.ViewEnumUtils
 import cn.muchinfo.rma.global.data.BusinessData
+import cn.muchinfo.rma.global.isBlankString
 import cn.muchinfo.rma.protobuf.protoclasses.ErmcpMI1
 import cn.muchinfo.rma.view.autoWidget.*
 import cn.muchinfo.rma.view.base.BaseActivity
@@ -321,7 +322,7 @@ class MidpointsAuditActivity : BaseActivity<BusinessManagementViewModel>(){
                                     linearLayout {
                                         emptyView()
                                         textView {
-                                            text = data.auditname
+                                            text = data.applyname?.isBlankString()
                                             textSizeAuto = 29
                                             textColorInt = R.color.rma_black_33
                                         }.lparams(wrapContent, wrapContent) {

+ 17 - 4
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/business/SettlementAuditActivity.kt

@@ -1,6 +1,7 @@
 package cn.muchinfo.rma.view.base.home.business
 
 import android.os.Bundle
+import android.text.TextUtils
 import android.view.Gravity
 import android.view.View
 import android.view.inputmethod.EditorInfo
@@ -9,6 +10,7 @@ import cn.muchinfo.rma.R
 import cn.muchinfo.rma.global.ViewEnumUtils
 import cn.muchinfo.rma.global.data.BusinessData
 import cn.muchinfo.rma.global.isBlankString
+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.home.contract.emptyView
@@ -113,6 +115,9 @@ class SettlementAuditActivity : BaseActivity<BusinessManagementViewModel>() {
                                                 }
                                                 textSizeAuto = 29
                                                 textColorInt = R.color.rma_black_33
+                                                maxLines = 1
+                                                maxEms = 9
+                                                ellipsize = TextUtils.TruncateAt.END
                                             }.lparams(wrapContent, wrapContent) {
                                                 marginEnd = margingPadding
                                             }
@@ -200,7 +205,9 @@ class SettlementAuditActivity : BaseActivity<BusinessManagementViewModel>() {
                                         linearLayout {
                                             emptyView()
                                             textView {
-                                                text = data.reckonrealqty?.isBlankString()
+                                                viewModel.settlementDetails.bindOptional(context){
+                                                    text = it?.reckonrealqty?.isBlankString()
+                                                }
                                                 textSizeAuto = 29
                                                 textColorInt = R.color.rma_black_33
                                             }.lparams(wrapContent, wrapContent)
@@ -224,7 +231,9 @@ class SettlementAuditActivity : BaseActivity<BusinessManagementViewModel>() {
                                         linearLayout {
                                             emptyView()
                                             textView {
-                                                text = data.reckonadjustamount?.isBlankString()
+                                                viewModel.settlementDetails.bindOptional(context){
+                                                    text = it?.reckonadjustamount?.isBlankString()
+                                                }
                                                 textSizeAuto = 29
                                                 textColorInt = R.color.rma_black_33
                                             }.lparams(wrapContent, wrapContent)
@@ -256,7 +265,9 @@ class SettlementAuditActivity : BaseActivity<BusinessManagementViewModel>() {
                                         linearLayout {
                                             emptyView()
                                             textView {
-                                                text = data.reckonotheramount?.isBlankString()
+                                                viewModel.settlementDetails.bindOptional(context){
+                                                    text = it?.reckonotheramount?.isBlankString()
+                                                }
                                                 textSizeAuto = 29
                                                 textColorInt = R.color.rma_black_33
                                             }.lparams(wrapContent, wrapContent)
@@ -311,7 +322,9 @@ class SettlementAuditActivity : BaseActivity<BusinessManagementViewModel>() {
                                         linearLayout {
                                             emptyView()
                                             textView {
-                                                text = data.decmargin?.isBlankString()
+                                                viewModel.settlementDetails.bindOptional(context){
+                                                    text = it?.decmargin?.isBlankString()
+                                                }
                                                 textSizeAuto = 29
                                                 textColorInt = R.color.rma_black_33
                                             }.lparams(wrapContent, wrapContent)

+ 15 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/commodity/CommodityInformationActivity.kt

@@ -98,6 +98,21 @@ class CommodityInformationActivity : BaseActivity<CommodityInformationViewModel>
         }
     }
 
+    override fun onResume() {
+        super.onResume()
+        when (selectedTabIndex) {
+            0 -> {
+                spotVarietiesUI.refrashData()
+            }
+            1 -> {
+                hedgeSpeciesUI.refrashData()
+            }
+            3 -> {
+                futuresVarietiesUI.refrashData()
+            }
+        }
+    }
+
 
     override fun onCreate(savedInstanceState: Bundle?) {
         super.onCreate(savedInstanceState)

+ 6 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/commodity/FuturesVarietiesUI.kt

@@ -77,6 +77,12 @@ class FuturesVarietiesUI(private val activity : AppCompatActivity, private val v
         }
     }
 
+    /**
+     * 每次回到页面就刷新下
+     */
+    fun refrashData(){
+
+    }
 
     val root = _FrameLayout(activity).apply {
         tabSegment {

+ 8 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/commodity/HedgeSpeciesUI.kt

@@ -84,6 +84,14 @@ class HedgeSpeciesUI(
         }
     }
 
+    //每次重回页面刷新数据
+    fun refrashData(){
+        if (selectedTabIndex == 0){
+            viewModel.queryMiddleGoodsList(status = "1")
+        }else{
+            viewModel.queryMiddleGoodsList(status = "0")
+        }
+    }
 
     val root = _FrameLayout(activity).apply {
         verticalLayout {

+ 9 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/commodity/SpotVarietiesUI.kt

@@ -79,6 +79,15 @@ class SpotVarietiesUI(
     }
 
 
+    fun refrashData(){
+        if (selectedTabIndex == 0){//刷新正常liebiao
+            viewModel.queryWrStandard(status = "1")
+        }else{//刷新停用列表
+            viewModel.queryWrStandard(status = "0")
+        }
+    }
+
+
     val root = _FrameLayout(activity).apply {
         verticalLayout {
             tabSegment {

+ 2 - 2
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/contract/AddContractActivity.kt

@@ -302,7 +302,7 @@ class AddContractActivity : BaseActivity<ContractViewModel>() {
                                 // FIXME 后期查询用户资料后需要填写用户名
                                 contractType.bindOptional(context) {
                                     text = if (it?.id == "1") {
-                                        GlobalDataCollention.getInstance().accountDataList.get(0).accountname
+                                        GlobalDataCollention.getInstance().userAccountData.accountname
                                     } else {
                                         "请选择客户"
                                     }
@@ -376,7 +376,7 @@ class AddContractActivity : BaseActivity<ContractViewModel>() {
                                 // FIXME 后期查询用户资料后需要填写用户名
                                 contractType.bindOptional(context) {
                                     text = if (it?.id == "-1") {
-                                        GlobalDataCollention.getInstance().accountDataList.get(0).accountname
+                                        GlobalDataCollention.getInstance().userAccountData.accountname
                                     } else {
                                         "请选择客户"
                                     }

+ 10 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/customerdata/AddCustomerDataActivity.kt

@@ -682,7 +682,11 @@ class AddCustomerDataActivity : BaseActivity<CustomerDataViewModel>() {
                         }else if (status == "3"){
                             text = "审核拒绝"
                         }
-
+                        visibility = if (status == "5" || status == "7"|| status == "4") {
+                            View.GONE
+                        } else {
+                            View.VISIBLE
+                        }
                         textSizeAuto = 38
                         textColorInt = R.color.rma_star_color
                     }.lparams(autoSize(419), autoSize(119)) {
@@ -706,6 +710,11 @@ class AddCustomerDataActivity : BaseActivity<CustomerDataViewModel>() {
                         }else if (status == "3"){
                             text = "审核通过"
                         }
+                        visibility = if (status == "5" || status == "7"|| status == "4") {
+                            View.GONE
+                        } else {
+                            View.VISIBLE
+                        }
                         gravity = Gravity.CENTER
                         backgroundResource = R.mipmap.rma_submit_bg
                         textColorInt = R.color.white

+ 18 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/customerdata/CustomerDataActivity.kt

@@ -169,6 +169,24 @@ class CustomerDataActivity : BaseActivity<CustomerDataViewModel>() {
         }
     }
 
+    override fun onResume() {
+        super.onResume()
+        when (selectedTabIndex) {
+            0 -> {
+                viewModel.queryUserInfo(type = "1")
+            }
+            1 -> {
+                viewModel.queryUserInfo(type = "2")
+            }
+            3 -> {
+                viewModel.queryUserInfo(type = "3")
+            }
+            4 -> {
+                viewModel.queryUserInfo(type = "4")
+            }
+        }
+    }
+
 }
 
 

+ 12 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/financial/FinancialActivity.kt

@@ -83,6 +83,18 @@ class FinancialActivity : BaseActivity<FinancialViewModel>(){
         }
     }
 
+    override fun onResume() {
+        super.onResume()
+        when (selectedTabIndex) {
+            0 -> {
+                viewModel.queryBusinessKx()
+            }
+            1 -> {
+                viewModel.queryBusinessFp()
+            }
+        }
+    }
+
 
     override fun onCreate(savedInstanceState: Bundle?) {
         super.onCreate(savedInstanceState)

+ 0 - 2
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/financial/FinancialViewModel.kt

@@ -2,12 +2,10 @@ package cn.muchinfo.rma.view.base.home.financial
 
 import androidx.lifecycle.MutableLiveData
 import cn.muchinfo.rma.global.GlobalDataCollention
-import cn.muchinfo.rma.global.data.BusinessData
 import cn.muchinfo.rma.global.data.FinancialManageData
 import cn.muchinfo.rma.netManage.base.InteractiveException
 import cn.muchinfo.rma.view.MyApplication
 import cn.muchinfo.rma.view.base.BaseViewModel
-import cn.muchinfo.rma.view.base.home.business.BusinessManagementData
 import com.blankj.utilcode.util.ToastUtils
 import mtp.polymer.com.autowidget.utils.TaskUiModel
 

+ 0 - 5
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/financial/FinancialViewholder.kt

@@ -12,11 +12,6 @@ import cn.muchinfo.rma.global.data.FinancialManageData
 import cn.muchinfo.rma.global.isShowTimeString
 import cn.muchinfo.rma.lifecycle.bindOptional
 import cn.muchinfo.rma.view.autoWidget.*
-import cn.muchinfo.rma.view.base.home.business.MidpointsAuditActivity
-import cn.muchinfo.rma.view.base.home.business.SettlementAuditActivity
-import cn.muchinfo.rma.view.base.home.hedge.HedgeData
-import cn.muchinfo.rma.view.base.home.hedge.HedgeDetailsActivity
-import cn.muchinfo.rma.view.base.home.hedge.HedgePlanViewModel
 import com.blankj.utilcode.util.ActivityUtils
 import mtp.polymer.com.autowidget.adapter.BaseViewHolder
 import org.jetbrains.anko.*

+ 0 - 8
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/hedge/HedgeData.kt

@@ -1,8 +0,0 @@
-package cn.muchinfo.rma.view.base.home.hedge
-
-import com.google.gson.annotations.SerializedName
-
-data class HedgeData(
-    @SerializedName("ll") var indexSelect : Int = 0,
-    @SerializedName("id") var id : String = ""
-)

+ 42 - 1
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/reportquery/ReportQueryViewModel.kt

@@ -58,7 +58,10 @@ class ReportQueryViewModel : BaseViewModel(){
      */
     val spotReportDataList : MutableLiveData<List<SpotReportData>> = MutableLiveData()
 
-
+    /**
+     * 现货报表详情列表
+     */
+    val spotReportDetailsDataList : MutableLiveData<List<SpotReportData>> = MutableLiveData()
 
     /**
      * 查询财务日报表(菜单:报表查询/财务报表/日报表)
@@ -212,4 +215,42 @@ class ReportQueryViewModel : BaseViewModel(){
         }
         spotReportDataList.postValue(datanewlist)
     }
+
+    /**
+     * 查询现货日报表详情(菜单:报表查询/现货报表/现货日报表详情)
+     * @param wrstandardid String
+     * @param tradedate String
+     */
+    fun qryReportDaySpotDetail(wrstandardid : String,tradedate : String){
+        val params = mutableMapOf<String, String>().apply {
+            put("userid", GlobalDataCollention.getInstance().loginRsp.userID.toString())
+            put("wrstandardid", wrstandardid)
+            put("tradedate", tradedate)
+        }
+
+        MyApplication.getInstance()?.reportManager?.qryReportDaySpotDetail(params = params){isSuccess, respData, error ->
+            if (isSuccess){
+                spotReportDetailsDataList.postValue(respData)
+            }
+        }
+    }
+
+    /**
+     * 查询现货月报表详情(菜单:报表查询/现货月报表/现货月报表详情)
+     * @param wrstandardid String
+     * @param cycletime String 周期时间:月(格式:yyyyMM)
+     */
+    fun qryReportMonthSpotDetail(wrstandardid : String,cycletime : String){
+        val params = mutableMapOf<String, String>().apply {
+            put("userid", GlobalDataCollention.getInstance().loginRsp.userID.toString())
+            put("wrstandardid", wrstandardid)
+            put("cycletime", cycletime)
+        }
+
+        MyApplication.getInstance()?.reportManager?.qryReportMonthSpotDetail(params = params){isSuccess, respData, error ->
+            if (isSuccess){
+                spotReportDetailsDataList.postValue(respData)
+            }
+        }
+    }
 }

+ 72 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/reportquery/SpotReportDetailsActivity.kt

@@ -4,10 +4,15 @@ import android.content.Intent
 import android.os.Bundle
 import android.view.Gravity
 import cn.muchinfo.rma.R
+import cn.muchinfo.rma.global.data.HedgePlanData
+import cn.muchinfo.rma.global.data.SpotReportData
+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.home.financial.InvoiceRegisterActivity
+import cn.muchinfo.rma.view.base.home.hedge.HedgePlanViewHolder
 import com.blankj.utilcode.util.ActivityUtils
+import mtp.polymer.com.autowidget.adapter.BaseAdapter
 import org.jetbrains.anko.*
 
 /**
@@ -16,6 +21,13 @@ import org.jetbrains.anko.*
  */
 class SpotReportDetailsActivity : BaseActivity<ReportQueryViewModel>(){
 
+    private lateinit var swipeToLayout: SwipeToLoadLayout
+    private lateinit var statusLayout: StatusLayout
+
+    val wrstandardid by lazy {
+        intent.getStringExtra("wrstandardid")
+    }
+
     /**
      * 页面类型 1 日报表 2 月报表
      */
@@ -23,6 +35,23 @@ class SpotReportDetailsActivity : BaseActivity<ReportQueryViewModel>(){
         intent.getStringExtra("type")
     }
 
+    /**
+     * 日报表详情时的请求参数
+     */
+    val tradedate by lazy {
+        intent.getStringExtra("tradedate")
+    }
+
+    /**
+     * 月报表详情时的请求参数
+     */
+    val cycletime by lazy {
+        intent.getStringExtra("cycletime")
+    }
+
+    private val unSubmitAdapter: BaseAdapter<SpotReportData, SpotReportDetailsViewHolder> =
+        BaseAdapter { _, _ -> SpotReportDetailsViewHolder(this, viewModel, type ?: "1") }
+
     override fun onCreate(savedInstanceState: Bundle?) {
         super.onCreate(savedInstanceState)
         verticalLayout {
@@ -37,6 +66,49 @@ class SpotReportDetailsActivity : BaseActivity<ReportQueryViewModel>(){
                 }
             }
 
+            if (type == "1"){
+                SpotReportDayDetailsTitle()
+                viewModel.qryReportDaySpotDetail(wrstandardid = wrstandardid ?: "",tradedate = tradedate ?: "")
+            }else{
+                SpotReportMonthDetailsTitle()
+                viewModel.qryReportMonthSpotDetail(wrstandardid = wrstandardid ?: "",cycletime = cycletime ?: "")
+            }
+
+            statusLayout(contentBlock = {
+                statusLayout = this
+//                bindTaskStatus(viewModule.status)
+                swipeToLoadLayout {
+                    swipeToLayout = this
+                    setEnableRefresh(true)
+                    setEnableLoadMore(false)
+                    setOnRefreshListener {
+                        if (type == "1"){
+                            viewModel.qryReportDaySpotDetail(wrstandardid = wrstandardid ?: "",tradedate = tradedate ?: "")
+                        }else{
+                            viewModel.qryReportMonthSpotDetail(wrstandardid = wrstandardid ?: "",cycletime = cycletime ?: "")
+                        }
+                    }
+                    setEnableScrollContentWhenLoaded(false)
+                    setEnableLoadMoreWhenContentNotFull(false)
+                    recyclerView {
+                        background = resources.getDrawable(R.color.white)
+                        adapter = unSubmitAdapter
+                    }.lparams(matchParent, matchParent)
+                }
+            }, emptyBlock = {
+                emptyView(hint = resources.getString(R.string.now_no_data))
+            }).lparams(matchParent, matchParent)
+
+            viewModel.spotReportDetailsDataList.bindOptional(context) {
+                if (it?.isEmpty() == true || it?.size == 0) {
+                    statusLayout.showEmpty()
+                } else {
+                    if (swipeToLayout.getIsRefreshing()) {
+                        swipeToLayout.finishRefresh()
+                    }
+                    unSubmitAdapter.setNewData(it)
+                }
+            }
 
         }
     }

+ 148 - 0
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/reportquery/SpotReportDetailsViewHolder.kt

@@ -0,0 +1,148 @@
+package cn.muchinfo.rma.view.base.home.reportquery
+
+import android.view.Gravity
+import android.view.View
+import androidx.appcompat.app.AppCompatActivity
+import cn.muchinfo.rma.R
+import cn.muchinfo.rma.global.ViewEnumUtils
+import cn.muchinfo.rma.global.data.SpotReportData
+import cn.muchinfo.rma.lifecycle.bindOptional
+import cn.muchinfo.rma.view.autoWidget.autoSize
+import cn.muchinfo.rma.view.autoWidget.textColorInt
+import cn.muchinfo.rma.view.autoWidget.textSizeAuto
+import mtp.polymer.com.autowidget.adapter.BaseViewHolder
+import org.jetbrains.anko.*
+
+class SpotReportDetailsViewHolder(
+    private val activity: AppCompatActivity, private val viewModel: ReportQueryViewModel,private val type : String
+) : BaseViewHolder<SpotReportData>(activity){
+    override val itemSize: IntArray = intArrayOf(matchParent, wrapContent)
+
+    override fun _FrameLayout.createContentView() {
+        linearLayout {
+            verticalLayout {
+                gravity = Gravity.START
+                textView {
+                    data.bindOptional(context){
+                        if (type == "1"){
+                            text = it?.logdatetime
+                        }else{
+                            text = it?.reckondate
+                        }
+                    }
+                    textSizeAuto = 24
+                    textColorInt = R.color.hint_text_color
+                }.lparams(wrapContent, wrapContent){
+                    marginStart = autoSize(36)
+                    topMargin = autoSize(15)
+                }
+
+                textView {
+                    visibility = if (type == "2"){
+                        View.GONE
+                    }else{
+                        View.VISIBLE
+                    }
+                    data.bindOptional(context){
+                        text = it?.totalsellpricedqty + it?.enumdicname
+                    }
+                    textSizeAuto = 24
+                    textColorInt = R.color.hint_text_color
+                }.lparams(wrapContent, wrapContent)
+            }.lparams(autoSize(225), autoSize(100))
+
+            verticalLayout {
+                gravity = Gravity.CENTER
+                textView {
+                    data.bindOptional(context){
+                        if (type == "1"){
+                            text = ViewEnumUtils.getContractType(it?.logtypename ?: "")
+                        }else{
+                            text = it?.totalbuypricedqty + it?.enumdicname
+                        }
+                    }
+                    textSizeAuto = 24
+                    textColorInt = R.color.hint_text_color
+                }.lparams(wrapContent, wrapContent)
+
+                textView {
+                    data.bindOptional(context){
+                        if (type == "1"){
+                            text = it?.relatedno
+                        }else{
+                            text = it?.totalsellpricedqty + it?.enumdicname
+                        }
+                    }
+                    textSizeAuto = 24
+                    textColorInt = R.color.hint_text_color
+                }.lparams(wrapContent, wrapContent)
+            }.lparams(autoSize(225), autoSize(100))
+
+            verticalLayout {
+                gravity = Gravity.CENTER
+                textView {
+                    data.bindOptional(context){
+                        if (type == "1"){
+                            text = it?.logtypename
+                        }else{
+                            text = it?.todaybuyreckonqty + it?.enumdicname
+                        }
+                    }
+                    textSizeAuto = 24
+                    textColorInt = R.color.hint_text_color
+                }.lparams(wrapContent, wrapContent)
+
+                textView {
+                    data.bindOptional(context){
+                        if (type == "1"){
+                            text = it?.logvalue
+                        }else{
+                            text = it?.todaysellreckonqty + it?.enumdicname
+                        }
+                    }
+                    textSizeAuto = 24
+                    textColorInt = R.color.hint_text_color
+                }.lparams(wrapContent, wrapContent)
+            }.lparams(autoSize(225), autoSize(97))
+
+            verticalLayout {
+                gravity = Gravity.END
+                textView {
+                    data.bindOptional(context){
+                        if (type == "1"){
+                            text = it?.applyname
+                        }else{
+                            text = "--"
+                        }
+                    }
+                    textSizeAuto = 24
+                    textColorInt = R.color.hint_text_color
+                }.lparams(wrapContent, wrapContent){
+                    marginEnd = autoSize(36)
+                    topMargin = autoSize(15)
+                }
+
+                textView {
+                    data.bindOptional(context){
+                        if (type == "1"){
+                            text = it?.applyname
+                        }else{
+                            text = "--"
+                        }
+                    }
+                    visibility = if (type == "1"){
+                        View.GONE
+                    }else{
+                        View.VISIBLE
+                    }
+
+                    textSizeAuto = 24
+                    textColorInt = R.color.hint_text_color
+                }.lparams(wrapContent, wrapContent){
+                    marginEnd = autoSize(36)
+                }
+            }.lparams(autoSize(225), autoSize(97))
+        }.lparams(matchParent, autoSize(100))
+    }
+
+}

+ 92 - 88
RMA/app/src/main/java/cn/muchinfo/rma/view/base/home/reportquery/SpotReportViewHolder.kt

@@ -21,112 +21,116 @@ import org.jetbrains.anko.*
  * @property itemSize IntArray
  * @constructor
  */
-class SpotReportViewHolder(private val activity: AppCompatActivity,private val viewModel: ReportQueryViewModel):BaseViewHolder<SpotReportData>(activity){
+class SpotReportViewHolder(
+    private val activity: AppCompatActivity,
+    private val viewModel: ReportQueryViewModel
+) : BaseViewHolder<SpotReportData>(activity) {
     override val itemSize: IntArray = intArrayOf(matchParent, wrapContent)
 
     @SuppressLint("SetTextI18n")
     override fun _FrameLayout.createContentView() {
-        onThrottleFirstClick {
-            viewModel.resetDataList(index = dataIndex)
-        }
-        data.bindOptional(context) {
+
+        verticalLayout {
+            onThrottleFirstClick {
+                viewModel.resetDataList(index = dataIndex)
+            }
+            data.bindOptional(context) {
                 if (it?.indexSelect == 0) {
                     backgroundResource = R.color.white
                 } else if (it?.indexSelect == 1) {
                     backgroundResource = R.color.rma_list_select_color
                 }
             }
-         verticalLayout {
-             linearLayout {
-                 verticalLayout {
-                     gravity = Gravity.START
-                     textView {
-                         data.bindOptional(context){
-                             text = it?.wrstandardname
-                         }
-                         textSizeAuto = 24
-                         textColorInt = R.color.hint_text_color
-                     }.lparams(wrapContent, wrapContent){
-                         marginStart = autoSize(36)
-                         topMargin = autoSize(15)
-                     }
-                 }.lparams(autoSize(225), autoSize(100))
+            linearLayout {
+                verticalLayout {
+                    gravity = Gravity.START
+                    textView {
+                        data.bindOptional(context) {
+                            text = it?.wrstandardname
+                        }
+                        textSizeAuto = 24
+                        textColorInt = R.color.hint_text_color
+                    }.lparams(wrapContent, wrapContent) {
+                        marginStart = autoSize(36)
+                        topMargin = autoSize(15)
+                    }
+                }.lparams(autoSize(225), autoSize(100))
 
-                 verticalLayout {
-                     gravity = Gravity.CENTER
-                     textView {
-                         data.bindOptional(context){
-                             text = it?.totalbuypricedqty + it?.enumdicname
-                         }
-                         textSizeAuto = 24
-                         textColorInt = R.color.hint_text_color
-                     }.lparams(wrapContent, wrapContent)
+                verticalLayout {
+                    gravity = Gravity.CENTER
+                    textView {
+                        data.bindOptional(context) {
+                            text = it?.totalbuypricedqty + it?.enumdicname
+                        }
+                        textSizeAuto = 24
+                        textColorInt = R.color.hint_text_color
+                    }.lparams(wrapContent, wrapContent)
 
-                     textView {
-                         data.bindOptional(context){
-                             text = it?.totalsellpricedqty + it?.enumdicname
-                         }
-                         textSizeAuto = 24
-                         textColorInt = R.color.hint_text_color
-                     }.lparams(wrapContent, wrapContent)
-                 }.lparams(autoSize(225), autoSize(100))
+                    textView {
+                        data.bindOptional(context) {
+                            text = it?.totalsellpricedqty + it?.enumdicname
+                        }
+                        textSizeAuto = 24
+                        textColorInt = R.color.hint_text_color
+                    }.lparams(wrapContent, wrapContent)
+                }.lparams(autoSize(225), autoSize(100))
 
-                 verticalLayout {
-                     gravity = Gravity.CENTER
-                     textView {
-                         data.bindOptional(context){
-                             text = it?.todaybuyreckonqty + it?.enumdicname
-                         }
-                         textSizeAuto = 24
-                         textColorInt = R.color.hint_text_color
-                     }.lparams(wrapContent, wrapContent)
+                verticalLayout {
+                    gravity = Gravity.CENTER
+                    textView {
+                        data.bindOptional(context) {
+                            text = it?.todaybuyreckonqty + it?.enumdicname
+                        }
+                        textSizeAuto = 24
+                        textColorInt = R.color.hint_text_color
+                    }.lparams(wrapContent, wrapContent)
 
-                     textView {
-                         data.bindOptional(context){
-                             text = it?.todaysellreckonqty + it?.enumdicname
-                         }
-                         textSizeAuto = 24
-                         textColorInt = R.color.hint_text_color
-                     }.lparams(wrapContent, wrapContent)
-                 }.lparams(autoSize(225), autoSize(97))
+                    textView {
+                        data.bindOptional(context) {
+                            text = it?.todaysellreckonqty + it?.enumdicname
+                        }
+                        textSizeAuto = 24
+                        textColorInt = R.color.hint_text_color
+                    }.lparams(wrapContent, wrapContent)
+                }.lparams(autoSize(225), autoSize(97))
 
-                 verticalLayout {
-                     gravity = Gravity.END
-                     textView {
-                         text = "--"
-                         textSizeAuto = 24
-                         textColorInt = R.color.hint_text_color
-                     }.lparams(wrapContent, wrapContent){
-                         marginEnd = autoSize(36)
-                         topMargin = autoSize(15)
-                     }
+                verticalLayout {
+                    gravity = Gravity.END
+                    textView {
+                        text = "--"
+                        textSizeAuto = 24
+                        textColorInt = R.color.hint_text_color
+                    }.lparams(wrapContent, wrapContent) {
+                        marginEnd = autoSize(36)
+                        topMargin = autoSize(15)
+                    }
 
-                     textView {
-                         text = "--"
-                         textSizeAuto = 24
-                         textColorInt = R.color.hint_text_color
-                     }.lparams(wrapContent, wrapContent){
-                         marginEnd = autoSize(36)
-                     }
-                 }.lparams(autoSize(225), autoSize(97))
-             }.lparams(matchParent, autoSize(100))
-             linearLayout {
-                 emptyView()
+                    textView {
+                        text = "--"
+                        textSizeAuto = 24
+                        textColorInt = R.color.hint_text_color
+                    }.lparams(wrapContent, wrapContent) {
+                        marginEnd = autoSize(36)
+                    }
+                }.lparams(autoSize(225), autoSize(97))
+            }.lparams(matchParent, autoSize(100))
+            linearLayout {
+                emptyView()
 
-                 textView {
-                     onThrottleFirstClick {
+                textView {
+                    onThrottleFirstClick {
 
-                     }
-                     backgroundResource = R.drawable.rma_item_click_bg
-                     gravity = Gravity.CENTER
-                     textResource = R.string.details
-                     textColorInt = R.color.rma_item_click_color
-                     textSizeAuto = 26
-                 }.lparams(autoSize(120), autoSize(48)) {
-                     marginEnd = autoSize(36)
-                 }
-             }.lparams(matchParent, autoSize(72))
-         }.lparams(matchParent, wrapContent)
+                    }
+                    backgroundResource = R.drawable.rma_item_click_bg
+                    gravity = Gravity.CENTER
+                    textResource = R.string.details
+                    textColorInt = R.color.rma_item_click_color
+                    textSizeAuto = 26
+                }.lparams(autoSize(120), autoSize(48)) {
+                    marginEnd = autoSize(36)
+                }
+            }.lparams(matchParent, autoSize(72))
+        }.lparams(matchParent, wrapContent)
     }
 
 }

+ 16 - 0
RMA/app/src/main/res/drawable/main_cercle_red_bg.xml

@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="oval"
+    android:useLevel="false">
+  <solid android:color="@color/rma_account_name_bgcolor"></solid>
+  <size
+      android:width="15dp"
+      android:height="15dp"></size>
+  <padding
+      android:bottom="1dp"
+      android:left="2dp"
+      android:right="2dp"
+      android:top="1dp"></padding>
+
+</shape>
+

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


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

@@ -37,6 +37,7 @@
     <color name="rma_gray_color">#999999</color>
     <color name="rma_dialog_activity_bg_color">#00ffffff</color>
     <color name="rma_report_title_color">#2F8C97</color>
+    <color name="rma_account_name_bgcolor">#F38989</color>
 
 
     <color name="pickerview_timebtn_nor">#057dff</color>

Alguns ficheiros não foram mostrados porque muitos ficheiros mudaram neste diff