ProGo 4 éve
szülő
commit
31b7687613
25 módosított fájl, 401 hozzáadás és 193 törlés
  1. 0 2
      RMA/app/src/main/java/cn/muchinfo/rma/business/commodity/CommodityManager.kt
  2. 49 0
      RMA/app/src/main/java/cn/muchinfo/rma/business/future/FutureManager.kt
  3. 1 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/BaseGlobalData.java
  4. 1 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/GlobalDataCollection.java
  5. 14 16
      RMA/app/src/main/java/cn/muchinfo/rma/global/dao/GoodsInfoDao.java
  6. 0 12
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/ExternalExchanges.kt
  7. 0 34
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/GoodsGroups.kt
  8. 0 2
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/GoodsInfo.kt
  9. 0 25
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/LoginAccount.kt
  10. 26 1
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/LoginQueryData.kt
  11. 0 5
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/SystemParams.kt
  12. 0 30
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/UserAccount.kt
  13. 0 55
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/UserInfo.kt
  14. 48 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/ExternalExchanges.kt
  15. 34 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/GoodsGroups.kt
  16. 99 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/GoodsInfo.kt
  17. 24 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/LoginAccount.kt
  18. 5 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/SystemParams.kt
  19. 30 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/UserAccount.kt
  20. 55 0
      RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/UserInfo.kt
  21. 2 2
      RMA/app/src/main/java/cn/muchinfo/rma/global/database/AppDatabase.java
  22. 3 5
      RMA/app/src/main/java/cn/muchinfo/rma/global/database/DataBase.kt
  23. 1 1
      RMA/app/src/main/java/cn/muchinfo/rma/global/room/Builder.java
  24. 2 0
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/app/ServiceFunApi.kt
  25. 7 3
      RMA/app/src/main/java/cn/muchinfo/rma/view/base/login/LoginActivity.kt

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

@@ -1,7 +1,6 @@
 package cn.muchinfo.rma.business.commodity
 
 import cn.muchinfo.rma.business.commodity.adapter.CommodityAdapter
-import cn.muchinfo.rma.business.contract.adapter.ContractAdapter
 import cn.muchinfo.rma.global.data.*
 import cn.muchinfo.rma.netManage.base.ResponseCallback
 import cn.muchinfo.rma.netManage.utils.MyOkHttpUtils
@@ -476,5 +475,4 @@ class CommodityManager {
         )
     }
 
-
 }

+ 49 - 0
RMA/app/src/main/java/cn/muchinfo/rma/business/future/FutureManager.kt

@@ -0,0 +1,49 @@
+package cn.muchinfo.rma.business.future
+
+import cn.muchinfo.rma.global.data.account.loginQeruy.GoodsInfo
+import cn.muchinfo.rma.global.database.AppDatabase
+import cn.muchinfo.rma.global.database.UserDatabase
+import cn.muchinfo.rma.global.room.Builder
+import cn.muchinfo.rma.netManage.base.ResponseCallback
+import cn.muchinfo.rma.netManage.utils.MyOkHttpUtils
+import cn.muchinfo.rma.view.base.app.BaseResult
+import cn.muchinfo.rma.view.base.app.Constant
+import cn.muchinfo.rma.view.base.app.ServiceFunApi
+import com.blankj.utilcode.util.SPUtils
+import okhttp3.Call
+import java.lang.Exception
+
+/**
+ * 期货管理类
+ */
+class FutureManager {
+
+    /**
+     * GET_ER_MCP_GOODS
+     */
+    fun queryGoodsList(callback: (isCompleted: Boolean, err: Error?) -> Unit) {
+        // 查询最大goodsId
+        var goodsId = "0"
+        var params = mutableMapOf<String, String>()
+        params["lastID"] = goodsId
+        // 对接接口
+        MyOkHttpUtils().query(
+            URL = SPUtils.getInstance()
+                .getString(Constant.goCommonSearchUrl) + ServiceFunApi.GET_ER_MCP_GOODS,
+            params = params,
+            type = "1",
+            callback = object : ResponseCallback<BaseResult<Array<GoodsInfo>>>() {
+                override fun onResponse(response: BaseResult<Array<GoodsInfo>>?, id: Int) {
+                    // 存储直接入库,需要的时候,再查询,检查方法的运行时间,10ms可以接受
+//                    Builder.getDatabase<AppDatabase>().goodsInfoDao.insertAll(response?.data)
+                    callback(true, null)
+                }
+
+                override fun onError(call: Call?, e: Exception?, id: Int) {
+                    callback(false, Error(e?.message))
+                }
+
+            }
+        )
+    }
+}

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

@@ -113,5 +113,6 @@ public class BaseGlobalData {
 
     public void setLoginQueryData(LoginQueryData loginQueryData) {
         this.loginQueryData = loginQueryData;
+
     }
 }

+ 1 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/GlobalDataCollection.java

@@ -4,6 +4,7 @@ package cn.muchinfo.rma.global;
 import com.blankj.utilcode.util.SPUtils;
 
 import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.Calendar;
 import java.util.List;
 import java.util.concurrent.locks.Lock;

+ 14 - 16
RMA/app/src/main/java/cn/muchinfo/rma/global/dao/GoodsInfoDao.java

@@ -10,33 +10,31 @@ import androidx.room.Query;
 
 import java.util.List;
 
-import cn.muchinfo.rma.global.data.database.GoodsInfoData;
-import io.reactivex.Maybe;
-
+import cn.muchinfo.rma.global.data.account.loginQeruy.GoodsInfo;
 
 @Dao
 public interface GoodsInfoDao {
 
-    @Query("SELECT * FROM goods_info")
-    List<GoodsInfoData> getAll();
+    @Query("SELECT * FROM goods_infos")
+    List<GoodsInfo> getAll();
 
-    @Query("SELECT * FROM goods_info order by GoodsCode limit 0, :limit")
-    List<GoodsInfoData> getLimit(int limit);
+    @Query("SELECT * FROM goods_infos order by goods_code limit 0, :limit")
+    List<GoodsInfo> getLimit(int limit);
 
-    @Query("SELECT count(*) as count FROM goods_info")
+    @Query("SELECT count(*) as count FROM goods_infos")
     Cursor getCount();
 
-    @Query("SELECT * FROM goods_info WHERE " +
-            "chinese_initials like :findStr or " +
-            "GoodsId like :findStr or " +
-            "GoodsCode like :findStr or " +
-            "GoodsName like :findStr order by GoodsCode")
-    Maybe<List<GoodsInfoData>> findGoodsInfo(String findStr);
+//    @Query("SELECT * FROM goods_infos WHERE " +
+//            "chinese_initials like :findStr or " +
+//            "GoodsId like :findStr or " +
+//            "GoodsCode like :findStr or " +
+//            "GoodsName like :findStr order by GoodsCode")
+//    Maybe<List<GoodsInfo>> findGoodsInfo(String findStr);
 
-    @Query("delete from goods_info")
+    @Query("delete from goods_infos")
     void clearAllData();
 
     @Insert(onConflict = OnConflictStrategy.REPLACE)
-    void insertAll(List<GoodsInfoData> users);
+    void insertAll(List<GoodsInfo> goodsInfos);
 
 }

+ 0 - 12
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/ExternalExchanges.kt

@@ -1,12 +0,0 @@
-package cn.muchinfo.rma.global.data.account
-
-data class ExternalExchanges(
-    val autoId : Int = 0,
-    val exExchangeCode : String = "",
-    val exExchangeName : String = "",
-    val updateTime : String = "",
-    val quoteGear : Int = 0,
-    val showBrokerFlag : Int = 0,
-    val exchangeFullName : String = "",
-    val isMarketPrice : Int = 0
-)

+ 0 - 34
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/GoodsGroups.kt

@@ -1,34 +0,0 @@
-package cn.muchinfo.rma.global.data.account
-
-data class GoodsGroups(
-    val goodsGroupId : Int = 0,
-    val goodsGroupName : String = "",
-    val goodsGroupStatus : Int = 0,
-    val marketId : Int = 0,
-    val createTime : String = "",
-    val creatorId : Int = 0,
-    val modifyTime : String = "",
-    val modifierId : Int = 0,
-    val quoteSourceGroupid : Int = 0,
-    val outerGroupCode : String = "",
-    val canShort : Int = 0,
-    val exExchangeId : Int = 0,
-    val currencyId : Int = 0,
-    val goodUnitId : Int = 0,
-    val agreeUnit : Int = 0,
-    val decimalPlace : Int = 0,
-    val quoteMinUnit : Int = 0,
-    val innerDealMode : Int = 0,
-    val outerDealMode : Int = 0,
-    val syncGoodsQty : Int = 0,
-    val closePriceMode : Int = 0,
-    val closePriceParam : Int = 0,
-    val qtyDecimalPlace : Int = 0,
-    val exerciseType : Int = 0,
-    val premiumDecimalPlace : Int = 0,
-    val premiumSpreadAlgorithm : Int = 0,
-    val premiumSpreadValue : Int = 0,
-    val isBuyLimited : Int = 0,
-    val quoteGear : Int = 0,
-    val quoterId : Int = 0
-)

+ 0 - 2
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/GoodsInfo.kt

@@ -1,2 +0,0 @@
-package cn.muchinfo.rma.global.data.account
-

+ 0 - 25
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/LoginAccount.kt

@@ -1,25 +0,0 @@
-package cn.muchinfo.rma.global.data.account
-
-data class LoginAccount(
-    val loginId : Long = 0,
-    val userId : Int = 0,
-    val loginFailNum : Int = 0,
-    val password : String = "",
-    val loginUserType : Int = 0,
-    val loginStatus : Int = 0,
-    val lastLoginTime : String = "",
-    val lastLoginMode : Int = 0,
-    val lastLoginIp : String = "",
-    val loginPort : Int = 0,
-    val lastLoginRemark : String = "",
-    val modifyTime : String = "",
-    val modifierId : Int = 0,
-    val pwdWrongCount : Int = 0,
-    val unFreezeTime : String = "",
-    val hasLogined : Int = 0,
-    val hasUpdatedPwd : Int = 0,
-    val loginCode : String = "",
-    val canOutIn : Int = 0,
-    val clientRoleId : Int = 0,
-    val taAccountRightType : Int = 0
-)

+ 26 - 1
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/LoginQueryData.kt

@@ -1,5 +1,7 @@
 package cn.muchinfo.rma.global.data.account
 
+import cn.muchinfo.rma.global.data.account.loginQeruy.*
+
 /**
  * 还有个markets字段,似乎用不着,暂时不缓存
  */
@@ -12,12 +14,28 @@ data class LoginQueryData(
     val externalExchanges: Array<ExternalExchanges>? = null, // 外部交易所
     val systemParams: Array<SystemParams>? = null // 系统参数
 ) {
+
+    /**
+     * 外部交易所和商品的映射关系
+     */
+    fun makeGoods() {
+        var map = mutableMapOf<Int, String>() // 外部交易所autoId和商品组中的exExchangeId对应的,这里的map保存autoId,"goodsid,goodsid,goodsid"
+        var list = goodsGroups?.map {
+            if (map.containsKey(it.exexchangeid)) { // 如果有
+
+            } else { // 如果没有,直接add
+
+            }
+        }
+    }
+
     override fun equals(other: Any?): Boolean {
         if (this === other) return true
         if (javaClass != other?.javaClass) return false
 
         other as LoginQueryData
 
+        if (userName != other.userName) return false
         if (loginAccount != other.loginAccount) return false
         if (userAccount != other.userAccount) return false
         if (userInfo != other.userInfo) return false
@@ -29,16 +47,23 @@ data class LoginQueryData(
             if (other.externalExchanges == null) return false
             if (!externalExchanges.contentEquals(other.externalExchanges)) return false
         } else if (other.externalExchanges != null) return false
+        if (systemParams != null) {
+            if (other.systemParams == null) return false
+            if (!systemParams.contentEquals(other.systemParams)) return false
+        } else if (other.systemParams != null) return false
 
         return true
     }
 
     override fun hashCode(): Int {
-        var result = loginAccount?.hashCode() ?: 0
+        var result = userName.hashCode()
+        result = 31 * result + (loginAccount?.hashCode() ?: 0)
         result = 31 * result + (userAccount?.hashCode() ?: 0)
         result = 31 * result + (userInfo?.hashCode() ?: 0)
         result = 31 * result + (goodsGroups?.contentHashCode() ?: 0)
         result = 31 * result + (externalExchanges?.contentHashCode() ?: 0)
+        result = 31 * result + (systemParams?.contentHashCode() ?: 0)
         return result
     }
+
 }

+ 0 - 5
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/SystemParams.kt

@@ -1,5 +0,0 @@
-package cn.muchinfo.rma.global.data.account
-
-data class SystemParams(
-    val ss: String = ""
-)

+ 0 - 30
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/UserAccount.kt

@@ -1,30 +0,0 @@
-package cn.muchinfo.rma.global.data.account
-
-data class UserAccount(
-    val userId : Int = 0,
-    val userType : Int = 0,
-    val accountName : String = "",
-    val parentUserId : Int = 0,
-    val broker : Int = 0,
-    val subareaLevelPath : String = "",
-    val refereeUserId : Int = 0,
-    val memberUserId : Int = 0,
-    val accountStatus : Int = 0,
-    val reckonAccountId : Int = 0,
-    val modifyStatus : Int = 0,
-    val createTime : String = "",
-    val creatorId : Int = 0,
-    val auditTime : String = "",
-    val auditUserId : Int = 0,
-    val auditRemark : String = "",
-    val cancelTime : String = "",
-    val cancelUserId : Int = 0,
-    val modifyTime : String = "",
-    val modifierId : Int = 0,
-    val modifyRemark : String = "",
-    val maxInvestorNum : Int = 0,
-    val hasAuth : Int = 0,
-    val referCount : Int = 0,
-    val referNum : String = "",
-    val isAnonymous : Int = 0
-)

+ 0 - 55
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/UserInfo.kt

@@ -1,55 +0,0 @@
-package cn.muchinfo.rma.global.data.account
-
-data class UserInfo(
-    val userId : Int = 0,
-    val userInfoType : Int = 0,
-    val customerName : String = "",
-    val userStatus : Int = 0,
-    val userType : Int = 0,
-    val openMode : Int = 0,
-    val cardTypeId : Int = 0,
-    val cardNum : String = "",
-    val halfBodyPhotoUrl : String = "",
-    val cardFrontPhotoUrl : String = "",
-    val cardBackPhotoUrl : String = "",
-    val bizNature : Int = 0,
-    val bizScope : String = "",
-    val legalPersonName : String = "",
-    val contactName : String = "",
-    val sex : Int = 0,
-    val telphone : String = "",
-    val mobile : String = "",
-    val fax : String = "",
-    val email : String = "",
-    val qq : String = "",
-    val weChat : String = "",
-    val countryId : Int = 0,
-    val provinceId : Int = 0,
-    val cityId : Int = 0,
-    val districtId : Int = 0,
-    val company : String =  "",
-    val address : String =  "",
-    val postalCode : String =  "",
-    val createTime : String =  "",
-    val creatorId : Int = 0,
-    val modifierTime : String =  "",
-    val modifierId : Int = 0,
-    val remark : String =  "",
-    val wskhInfo : String =  "",
-    val signPdfUrl : String =  "",
-    val legalCardFrontPhotoUrl : String =  "",
-    val legalCardBackPhotoUrl : String =  "",
-    val otherUrl : String =  "",
-    val hasEncrypt : Int = 0,
-    val bankName : String =  "",
-    val bankAccount : String =  "",
-    val bankCardFrontPhotoUrl : String =  "",
-    val needInvoice : Int = 0,
-    val bankId : String =  "",
-    val attachment1 : String =  "",
-    val attachment2 : String =  "",
-    val bankAccountName : String =  "",
-    val headUrl : String =  "",
-    val nickName : String =  "",
-    val mobile2 : String =  ""
-)

+ 48 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/ExternalExchanges.kt

@@ -0,0 +1,48 @@
+package cn.muchinfo.rma.global.data.account.loginQeruy
+
+data class ExternalExchanges(
+    var autoId : Int = 0,
+    var exExchangeCode : String = "", // 外部交易所代码
+    var exExchangeName : String = "", // 外部交易所全称
+    var updateTime : String = "", // 更新时间
+    var quoteGear : Int = 0, // 行情档位(1-10)
+    var showBrokerFlag : Int = 0, // 是否显示买卖经纪盘 - 0:不显示 1:显示
+    var exchangeFullName : String = "", // 外部交易所名称(简称)
+    var isMarketPrice : Int = 0, // 是否支持市价 - 0:不支持 1:支持
+    var goods: Array<Int> = arrayOf()
+) {
+
+    override fun equals(other: Any?): Boolean {
+        if (this === other) return true
+        if (javaClass != other?.javaClass) return false
+
+        other as ExternalExchanges
+
+        if (autoId != other.autoId) return false
+        if (exExchangeCode != other.exExchangeCode) return false
+        if (exExchangeName != other.exExchangeName) return false
+        if (updateTime != other.updateTime) return false
+        if (quoteGear != other.quoteGear) return false
+        if (showBrokerFlag != other.showBrokerFlag) return false
+        if (exchangeFullName != other.exchangeFullName) return false
+        if (isMarketPrice != other.isMarketPrice) return false
+        if (!goods.contentEquals(other.goods)) return false
+
+        return true
+    }
+
+    override fun hashCode(): Int {
+        var result = autoId
+        result = 31 * result + exExchangeCode.hashCode()
+        result = 31 * result + exExchangeName.hashCode()
+        result = 31 * result + updateTime.hashCode()
+        result = 31 * result + quoteGear
+        result = 31 * result + showBrokerFlag
+        result = 31 * result + exchangeFullName.hashCode()
+        result = 31 * result + isMarketPrice
+        result = 31 * result + goods.contentHashCode()
+        return result
+    }
+
+
+}

+ 34 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/GoodsGroups.kt

@@ -0,0 +1,34 @@
+package cn.muchinfo.rma.global.data.account.loginQeruy
+
+data class GoodsGroups(
+    var agreeunit: Double = 0.0, //     合约单位
+    var canshort: Int = 0, //     是否允许做空[通道交易] - 0:不能做空 1:可以做空
+    var closepricemode: Int = 0, // 强平价格方式 - 1:市价 2:最新价 3:涨跌停(未实现)
+    var closepriceparam: Double = 0.0, // 强平最新价浮动比例 - 方式为2时使用
+    var createtime: String = "", // 创建时间
+    var creatorid: Int = 0, // 创建人
+    var currencyid: Int = 0, // 报价货币ID
+    var decimalplace: Int = 0, // 报价小数位
+    var exercisetype: Int = 0, // 行权类型[场外期权]-1:欧式期权 2:美式期权
+    var exexchangeid: Int = 0, // 外部交易所ID[通道交易]
+    var goodsgroupid: Int = 0, // 商品组ID(自增ID)
+    var goodsgroupname: String = "", // 商品组名称
+    var goodsgroupstatus: Int = 0, // 商品组状态 - 1:正常 2:注销
+    var goodunitid: Int = 0, // 报价单位ID
+    var innerdealmode: Int = 0, // 内部成交方式[通道交易] - 1:净头寸 2:开平 3:平今
+    var isbuylimited: Int = 0, // 是否限制建仓量 - 0:不限制 1:限制
+    var marketid: Int = 0, // 所属市场ID
+    var modifierid: Int = 0, // 修改人
+    var modifytime: String = "", // 修改时间
+    var outerdealmode: Int = 0, // 外部成交方式[通道交易]- 1:净头寸 2:开平 3:平今
+    var outergroupcode: String = "", // 外部商品组代码[通道交易]
+    var premiumdecimalplace: Int = 0, // 权利金小数位[场外期权]
+    var premiumspreadalgorithm: Int = 0, // 权利金点差方式[场外期权] 1:比率 2:固定
+    var premiumspreadvalue: Double = 0.0, // 权利金点差值[场外期权]
+    var qtydecimalplace: Int = 0, // 成交量小数位
+    var quotegear: Int = 0, // 行情档位(1-10)
+    var quoteminunit: Int = 0, // 行情最小变动单位 [整数,报价小数位一起使用]
+    var quoterid: Int = 0, // 报价商ID[场外期权]
+    var quotesourcegroupid: Int = 0, // 所属行情源分组ID[参考行情市场用\通道交易]
+    var syncgoodsqty: Int = 0 // 同步合约数[通道交易-投资管理用] - 0表示不限
+)

+ 99 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/GoodsInfo.kt

@@ -0,0 +1,99 @@
+package cn.muchinfo.rma.global.data.account.loginQeruy
+
+import androidx.room.ColumnInfo
+import androidx.room.Dao
+import androidx.room.Entity
+import androidx.room.PrimaryKey
+
+@Entity(tableName = "goods_infos")
+data class GoodsInfo(
+    @PrimaryKey
+    @ColumnInfo(name = "goods_id")
+    var goodsid : Int = 0, // 商品ID(自增ID SEQ_GOODS)
+    @ColumnInfo(name = "goods_code")
+    var goodscode : String = "", // 商品代码(内部)
+    @ColumnInfo(name = "goods_name")
+    var goodsname : String = "", // 商品名称
+    @ColumnInfo(name = "market_id")
+    var marketid : Int = 0, // 所属市场ID
+    @ColumnInfo(name = "goods_group_id")
+    var goodsgroupid : Int = 0, // 所属商品组ID
+    @ColumnInfo(name = "goods_status")
+    var goodsstatus : Int = 0, // 商品状态- 1:待审核 2:未上市 3:上市 4:已注销 5:审核拒绝 6:退市 7:待退市
+    @ColumnInfo(name = "currency_id")
+    var currencyid : Int = 0, // 报价货币ID
+    @ColumnInfo(name = "good_unit_id")
+    var goodunitid : Int = 0, // 报价单位ID
+    @ColumnInfo(name = "agree_unit")
+    var agreeunit : Int = 0, // 合约单位
+    @ColumnInfo(name = "decimal_place")
+    var decimalplace : Int = 0, // 报价小数位
+    @ColumnInfo(name = "listing_date")
+    var listingdate : String = "", // 交易开始日期
+    @ColumnInfo(name = "last_trade_date")
+    var lasttradedate : String = "", // 最后交易日期(状态:待退市)
+    @ColumnInfo(name = "delisting_date")
+    var delistingdate : String = "", // 商品退市时间(状态:退市) – 已作废
+    @ColumnInfo(name = "delivery_flag")
+    var deliveryflag : Int = 0, // 交割标志 - 0:不可交割 1:可交割
+    @ColumnInfo(name = "has_quoter")
+    var hasquoter : Int = 0, // 是否有报价商 - 0:无报价商 1:有报价商
+    @ColumnInfo(name = "hq_protect_time")
+    var hqprotecttime : Int = 0, // 行情保护时间(秒)
+    @ColumnInfo(name = "quote_show_type")
+    var quoteshowtype : Int = 0, // 行情报价类型: 1:成交价 2:买卖中间价 3:含买价 4:含卖价做市模式固定为3:含买价
+    @ColumnInfo(name = "quote_show_type_interval")
+    var quoteshowtypeinterval : Int = 0, // 行情报价间隔时间(秒)(成交价时为0)
+    @ColumnInfo(name = "modify_status")
+    var modifystatus : Int = 0, // 变更状态 - 1:未变更 2:变更中 3:待审核 4:已审核
+    @ColumnInfo(name = "goods_trade_type")
+    var goodstradetype : Int = 0, // 商品交易权限类型 - 1:可建可平 3:不可建可平
+    @ColumnInfo(name = "creator_id")
+    var creatorid : Int = 0, // 创建人
+    @ColumnInfo(name = "create_time")
+    var createtime : String = "", // 创建时间
+    @ColumnInfo(name = "audit_account_id")
+    var auditaccountid : Int = 0, // 审核操作员账号
+    @ColumnInfo(name = "audit_time")
+    var audittime : String = "", // 审核时间
+    @ColumnInfo(name = "modify_time")
+    var modifytime : String = "", // 修改时间
+    @ColumnInfo(name = "modifier_id")
+    var modifierid : Int = 0, // 修改人
+    @ColumnInfo(name = "cancel_account_id")
+    var cancelaccountid : Int = 0, // 注销操作员账号
+    @ColumnInfo(name = "remark")
+    var remark : String = "", // 备注
+    @ColumnInfo(name = "cancel_time")
+    var canceltime : String = "", // 注销时间
+    @ColumnInfo(name = "delisting_mode")
+    var delistingmode : Int = 0, // 退市方式 - 1:退市平仓 2:退市交收 3:不处理(仅期权\币币兑换)
+    @ColumnInfo(name = "force_close_mode")
+    var forceclosemode : Int = 0, // 定期强平方式 - 1:无 2:每日 3:每周 4:每月[收益权]
+    @ColumnInfo(name = "force_close_value")
+    var forceclosevalue : Int = 0, // 定期强平参数 [收益权]
+    @ColumnInfo(name = "cut_mode")
+    var cutmode : Int = 0, // 斩仓方式 - 1:不斩仓 2:自动斩仓 3:半自动斩仓
+    @ColumnInfo(name = "quote_min_unit")
+    var quoteminunit : Int = 0, // 行情最小变动单位 [整数,报价小数位一起使用]
+    @ColumnInfo(name = "is_buy_limited")
+    var isbuylimited : Int = 0, // 是否限制建仓量 - 0:不限制 1:限制
+    @ColumnInfo(name = "inner_deal_mode")
+    var innerdealmode : Int = 0, // 内部成交方式[通道交易] - 1:净头寸 2:开平 3:平今
+    @ColumnInfo(name = "outer_deal_mode")
+    var outerdealmode : Int = 0, // 外部成交方式[通道交易]- 1:净头寸 2:开平 3:平今
+    @ColumnInfo(name = "close_price_mode")
+    var closepricemode : Int = 0, // 强平价格方式 - 1:市价 2:最新价 3:涨跌停(未实现)
+    @ColumnInfo(name = "close_price_param")
+    var closepriceparam : Int = 0, // 强平最新价浮动比例 - 方式为2时使用 (<1)买 上浮 (1+x)最新价卖 下浮 (1-x)最新价
+    @ColumnInfo(name = "qty_decimal_place")
+    var qtydecimalplace : Int = 0, // 成交量小数位
+    @ColumnInfo(name = "goods_currency_id")
+    var goodscurrencyid : Int = 0, // 合约货币ID
+    @ColumnInfo(name = "goods_quote_type")
+    var goodsquotetype : Int = 0, // 合约报价类型: 1-直接报价 2-间接报价
+    @ColumnInfo(name = "quote_gear")
+    var quotegear : Int = 0, // 行情档位(1-10)
+    @ColumnInfo(name = "out_goods_code")
+    var outgoodscode : String = "" // 商品代码(外部)
+)

+ 24 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/LoginAccount.kt

@@ -0,0 +1,24 @@
+package cn.muchinfo.rma.global.data.account.loginQeruy
+
+data class LoginAccount(
+    var canoutin: Int = 0, //     是否可出入金 - 0:不可 1:可
+    var clientroleid: Int = 0, // 终端角色ID
+    var haslogined: Int = 0, // 是否已登录 - 0:未登录 1:已登录
+    var hasupdatedpwd: Int = 0, // 是否已更改密码 - 0:未修改 1:已修改
+    var lastloginip: String = "", // 最新登录地址
+    var lastloginmode: Int = 0, // 最新登录方式(客户端类型) - 0:保留为未填终端类型 1:PC管理端 2:PC交易端 3:手机客户端安卓 4:网页客户端 5:微信客户端 6:手机客户端苹果 7:网上开户客户端 8:无效终端编号 9:报价终端(中江)
+    var lastloginremark: String = "", // 最新登录描述
+    var lastlogintime: String = "", // 最新登录时间
+    var logincode: String = "", // 登录代码
+    var loginfailnum: Int = 0, // 连续登录失败次数(登录成功时清零)
+    var loginid: Long = 0, // 登陆账号
+    var loginport: Int = 0, // 最新登录端口
+    var loginstatus: Int = 0, // 登录账号状态 1:正常 2:冻结 3:无效
+    var loginusertype: Int = 0, // 登录账号类型 - 1:投资者 2:机构交易员
+    var modifierid: Int = 0, // 修改人
+    var modifytime: String = "", // 修改时间
+    var pwdwrongcount: Int = 0, // 密码错误次数
+    var taaccountrighttype: Int = 0, // 资金账号权限类型 - 1:不选默认为所有权限 2:不选默认为无权限
+    var unfreezetime: String = "", // 账户解冻时间
+    var userid: Int = 0 // 用户ID
+)

+ 5 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/SystemParams.kt

@@ -0,0 +1,5 @@
+package cn.muchinfo.rma.global.data.account.loginQeruy
+
+data class SystemParams(
+    val ss: String = ""
+)

+ 30 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/UserAccount.kt

@@ -0,0 +1,30 @@
+package cn.muchinfo.rma.global.data.account.loginQeruy
+
+data class UserAccount(
+    var accountname: String = "", //     账户名称(机构名称)
+    var accountstatus: Int = 0, // 账户状态 - 1:待激活 2:待审核 3:待复审 4:正常 5:审核拒绝 6:注销
+    var auditremark: String = "", // 审核备注
+    var audittime: String = "", // 审核时间
+    var audituserid: Int = 0, // 审核人
+    var broker: Int = 0, // 所属经纪人ID
+    var canceltime: String = "", // 销户时间
+    var canceluserid: Int = 0, // 销户人
+    var createtime: String = "", // 创建时间
+    var creatorid: Int = 0, // 创建人
+    var hasauth: Int = 0, // 是否已实名认证 - 0:未认证 1:已认证 2:已提交(待审核) 3:已拒绝
+    var isanonymous: Int = 0, // 是否匿名下单 - 0:否 1:是
+    var maxinvestornum: Int = 0, // 最大用户数(经纪会员下投资者个数)
+    var memberuserid: Int = 0, // 所属会员ID
+    var modifierid: Int = 0, // 修改人
+    var modifyremark: String = "", // 变更备注
+    var modifystatus: Int = 0, // 变更状态 1 未变更 2 变更中 3 变更待审核 4 变更待复核(投资者)
+    var modifytime: String = "", // 修改时间
+    var parentuserid: Int = 0, // 所属机构ID
+    var reckonaccountid: Int = 0, // 默认结算资金账号ID(机构分润使用) 作废
+    var refercount: Int = 0, // 推荐总人数
+    var refereeuserid: Int = 0, // 推荐人ID
+    var refernum: String = "", // 推荐码
+    var subarealevelpath: String = "", // 子机构层级路径(逗号分隔,首尾加逗号)
+    var userid: Int = 0, // 用户ID
+    var usertype: Int = 0 // 账户类型 - 1:交易所 2:机构 3:会员子机构 4:经纪人 5:投资者 6:客户
+)

+ 55 - 0
RMA/app/src/main/java/cn/muchinfo/rma/global/data/account/loginQeruy/UserInfo.kt

@@ -0,0 +1,55 @@
+package cn.muchinfo.rma.global.data.account.loginQeruy
+
+data class UserInfo(
+    var address: String = "", //     地址
+    var attachment1: String = "", //     附件1
+    var attachment2: String = "", //     附件2
+    var bankaccount: String = "", //     银行帐号 (加密存储)
+    var bankaccountname: String = "", // 收款人名称
+    var bankcardfrontphotourl: String = "", // 银行卡正面照地址
+    var bankid: String = "", // 银行编码
+    var bankname: String = "", // 银行名称
+    var biznature: Int = 0, // 企业性质( 企业) - 1:国有控股企业 2:集体控股企业 3:私人控股企业 4:港澳台商控股企业 5:外商控股企业 6:其它
+    var bizscope: String = "", // 企业经营范围(企业)
+    var cardbackphotourl: String = "", // 证件背面图片地址
+    var cardfrontphotourl: String = "", // 证件正面图片地址
+    var cardnum: String = "", // 证件号码(加密存储)
+    var cardtypeid: Int = 0, // 证件类型ID
+    var cityid: Int = 0, // 市
+    var company: String = "", // 公司(个人)
+    var contactname: String = "", // 联系人
+    var countryid: Int = 0, // 国家
+    var createtime: String = "", // 创建时间
+    var creatorid: Int = 0, // 创建人
+    var customername: String = "", // 客户名称(企业名称)
+    var districtid: Int = 0, // 地区
+    var email: String = "", // 邮件(加密存储)
+    var fax: String = "", // 传真(加密存储)
+    var halfbodyphotourl: String = "", // 半身照地址
+    var hasencrypt: Int = 0, // 数据是否已加密 - 0:未加密 1:已加密
+    var headurl: String = "", // 头像地址
+    var legalcardbackphotourl: String = "", // 法人身份证背面照地址
+    var legalcardfrontphotourl: String = "", // 法人身份证正面照地址
+    var legalpersonname: String = "", // 法人姓名(企业)
+    var mobile: String = "", // 手机号码(加密存储)
+    var mobile2: String = "", // 手机号码[明文-尚志]
+    var modifierid: Int = 0, // 修改人
+    var modifiertime: String = "", // 修改时间
+    var needinvoice: Int = 0, // 是否需要发票 - 0:不需要 1:需要
+    var nickname: String = "", // 昵称:默认为名称脱敏(张) 或 手机号脱敏(1399999)
+    var openmode: Int = 0, // 开户方式 - 1:管理端开户 2:网上开户注册(会员官网) 3:微信开户 4:网页交易端注册 5:安卓手机端注册 6:苹果手机端注册 7:PC交易端注册 8:微信快速开户 9:支付宝快速开户 10:手机号快速开户
+    var otherurl: String = "", // 其它图片地址[使用分号分隔]
+    var postalcode: String = "", // 邮政编码
+    var provinceid: Int = 0, // 省
+    var qq: String = "", // QQ(加密存储
+    var remark: String = "", // 备注
+    var sex: Int = 0, // 用户性别 0: 女 1: 男
+    var signpdfurl: String = "", // 签约pdf文件
+    var telphone: String = "", // 联系电话(加密存储)
+    var userid: Int = 0, // 用户ID
+    var userinfotype: Int = 0, // 用户信息类型 - 1:个人 2:企业
+    var userstatus: Int = 0, // 用户状态 - 1:正常 2:注销
+    var usertype: Int = 0, // 账户类型 - 1:交易所 2:机构 3:会员子机构 4:经纪人 5:投资者 6:客户
+    var wechat: String = "", // 微信(加密存储)
+    var wskhinfo: String = "" // 开户申请信息(JSON)
+)

+ 2 - 2
RMA/app/src/main/java/cn/muchinfo/rma/global/database/AppDatabase.java

@@ -4,11 +4,11 @@ package cn.muchinfo.rma.global.database;
 import androidx.room.Database;
 import androidx.room.RoomDatabase;
 
+import cn.muchinfo.rma.global.data.account.loginQeruy.GoodsInfo;
 import cn.muchinfo.rma.global.data.database.BannerEntity;
 import cn.muchinfo.rma.global.data.database.EnumDicEntity;
 import cn.muchinfo.rma.global.data.database.ErrorCodeEntity;
-import cn.muchinfo.rma.global.data.database.GoodsInfoData;
 
-@Database(entities = {GoodsInfoData.class, BannerEntity.class, EnumDicEntity.class, ErrorCodeEntity.class}, version = 2, exportSchema = false)
+@Database(entities = {GoodsInfo.class, BannerEntity.class, EnumDicEntity.class, ErrorCodeEntity.class}, version = 1, exportSchema = false)
 public abstract class AppDatabase extends RoomDatabase implements UserDatabase {
 }

+ 3 - 5
RMA/app/src/main/java/cn/muchinfo/rma/global/database/DataBase.kt

@@ -3,21 +3,19 @@ package cn.muchinfo.rma.global.database
 import androidx.room.Database
 import androidx.room.Room
 import androidx.room.RoomDatabase
-import androidx.room.migration.Migration
-import androidx.sqlite.db.SupportSQLiteDatabase
 import cn.muchinfo.rma.global.dao.BannerDao
 import cn.muchinfo.rma.global.dao.EnumDao
 import cn.muchinfo.rma.global.dao.ErrorCodeDao
 import cn.muchinfo.rma.global.dao.GoodsInfoDao
+import cn.muchinfo.rma.global.data.account.loginQeruy.GoodsInfo
 import cn.muchinfo.rma.global.data.database.BannerEntity
 import cn.muchinfo.rma.global.data.database.EnumDicEntity
 import cn.muchinfo.rma.global.data.database.ErrorCodeEntity
-import cn.muchinfo.rma.global.data.database.GoodsInfoData
 import com.blankj.utilcode.util.Utils
 
 @Database(
-    entities = [GoodsInfoData::class, BannerEntity::class, ErrorCodeEntity::class, EnumDicEntity::class],
-    version = 2,
+    entities = [GoodsInfo::class, BannerEntity::class, ErrorCodeEntity::class, EnumDicEntity::class],
+    version = 1,
     exportSchema = false
 )
 abstract class DataBase : RoomDatabase() {

+ 1 - 1
RMA/app/src/main/java/cn/muchinfo/rma/global/room/Builder.java

@@ -28,7 +28,7 @@ public class Builder {
             public void migrate(SupportSQLiteDatabase database) {
                 //此处对于数据库中的所有更新都需要写下面的代码
                 if (database.isOpen()) {
-                    database.execSQL("ALTER TABLE goods_info "
+                    database.execSQL("ALTER TABLE goods_infos "
                             + " ADD COLUMN currencyId INTEGER NOT NULL DEFAULT 0");
                 }
             }

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

@@ -3,4 +3,6 @@ package cn.muchinfo.rma.view.base.app
 object ServiceFunApi {
     // 统一登录
     const val LOGIN_QUERY = "/User/LoginQuery"
+    // 查询企业风管期货商品信息-增量
+    const val GET_ER_MCP_GOODS = "/Ermcp/GetErmcpGoods"
 }

+ 7 - 3
RMA/app/src/main/java/cn/muchinfo/rma/view/base/login/LoginActivity.kt

@@ -6,6 +6,8 @@ import android.text.InputType.*
 import android.view.Gravity
 import android.widget.EditText
 import cn.muchinfo.rma.R
+import cn.muchinfo.rma.business.commodity.CommodityManager
+import cn.muchinfo.rma.business.future.FutureManager
 import cn.muchinfo.rma.global.GlobalDataCollection
 import cn.muchinfo.rma.netManage.base.InteractiveException
 import cn.muchinfo.rma.view.MainActivity
@@ -188,7 +190,6 @@ class LoginActivity : BaseActivity<LoginViewModel>() {
                 if (!isCompleted) {
                     viewModel.loadingDialogStatus.value =
                         TaskUiModel.failed(InteractiveException(GlobalDataCollection.getInstance().getErrorString(err?.message ?: "")))
-//                    ToastUtils.showLong(err?.message)
                     return@launch
                 }
                 viewModel.loginQuery { isCompleted, err ->
@@ -203,8 +204,11 @@ class LoginActivity : BaseActivity<LoginViewModel>() {
                                 )
                             return@loginQuery
                         }
-                        viewModel.loadingDialogStatus.value = TaskUiModel.success(msg = "登录成功")
-                        goHomePage()
+                        FutureManager().queryGoodsList { isCompleted, err ->
+
+                            viewModel.loadingDialogStatus.value = TaskUiModel.success(msg = "登录成功")
+                            goHomePage()
+                        }
                     }
                 }
             }