Przeglądaj źródła

完成角色字符串基础数据更新

Frankensteinly 7 miesięcy temu
rodzic
commit
acaf160169

+ 36 - 6
app/src/main/java/com/grkj/iscs/model/Constants.kt

@@ -1,6 +1,8 @@
 package com.grkj.iscs.model
 
+import android.content.Context
 import com.grkj.iscs.R
+import com.grkj.iscs.util.SPUtils
 
 object Constants {
     const val DEVICE_TYPE = 1 // 1.机柜 2.物料柜 3.手提柜 4.混合柜
@@ -16,12 +18,40 @@ object Constants {
     const val USER_TYPE_COLOCKER = "1"              // 共锁人
 
     /**************************  角色  **************************/
-    const val USER_ROLE_DRAWER = "jtdrawer"                 // 作业管理员/开票人
-    const val USER_ROLE_LOCKER = "jtlocker"                 // 作业负责人/上锁人
-    const val USER_ROLE_COLOCKER = "jtcolocker"             // 作业参与人/共锁人
-    const val USER_ROLE_GUARD = "jtguard"                   // 作业观察员/安全员
-    const val USER_ROLE_ADMHDWSETTER = "admhdwsetter"       // 硬件配置管理员
-    const val USER_ROLE_ADMHDWTESTER = "admhdwtester"       // 硬件测试管理员
+    var USER_ROLE_DRAWER = "jtdrawer"                 // 作业管理员/开票人  TODO 玛氏暂无
+    var USER_ROLE_LOCKER = "jtlocker"                 // 作业负责人/上锁人
+    var USER_ROLE_COLOCKER = "jtcolocker"             // 作业参与人/共锁人
+    var USER_ROLE_GUARD = "jtguard"                   // 作业观察员/安全员  TODO 玛氏暂无
+    var USER_ROLE_ADMHDWSETTER = "admhdwsetter"       // 硬件配置管理员
+    var USER_ROLE_ADMHDWTESTER = "admhdwtester"       // 硬件测试管理员
+
+    const val ROLE_LOCKER_KEY = "role.jtlocker"
+    const val ROLE_COLOCKER_KEY = "role.jtcolocker"
+    const val ROLE_ADMHDWSETTER_KEY = "role.admhdwsetter"
+    const val ROLE_ADMHDWTESTER_KEY = "role.admhdwtester"
+
+    fun updateRole(context: Context) {
+        SPUtils.getAttributeValue(context, ROLE_LOCKER_KEY)?.let {
+            if (it.isNotEmpty()) {
+                USER_ROLE_DRAWER = it
+            }
+        }
+        SPUtils.getAttributeValue(context, ROLE_COLOCKER_KEY)?.let {
+            if (it.isNotEmpty()) {
+                USER_ROLE_COLOCKER = it
+            }
+        }
+        SPUtils.getAttributeValue(context, ROLE_ADMHDWSETTER_KEY)?.let {
+            if (it.isNotEmpty()) {
+                USER_ROLE_ADMHDWSETTER = it
+            }
+        }
+        SPUtils.getAttributeValue(context, ROLE_ADMHDWTESTER_KEY)?.let {
+            if (it.isNotEmpty()) {
+                USER_ROLE_ADMHDWTESTER = it
+            }
+        }
+    }
 
     /*************************  作业票状态  *************************/
     const val TICKET_STATUS_NOT_STARTED = "0"         // 未开始

+ 1 - 1
app/src/main/java/com/grkj/iscs/util/SPUtils.kt

@@ -187,7 +187,7 @@ object SPUtils {
         val sp = context.getSharedPreferences(SP_ATTRIBUTE, Context.MODE_PRIVATE)
         val edit = sp.edit()
         edit.putString(KEY_SYSTEM_ATTRIBUTE, Gson().toJson(recordList))
-        edit.apply()
+        edit.commit()
     }
 
     fun getSystemAttribute(context: Context): MutableList<SystemAttributePageRespVO.Record> {

+ 2 - 0
app/src/main/java/com/grkj/iscs/view/presenter/LoginPresenter.kt

@@ -7,6 +7,7 @@ import com.grkj.iscs.R
 import com.grkj.iscs.extentions.removeLeadingZeros
 import com.grkj.iscs.extentions.toHexStrings
 import com.grkj.iscs.modbus.ModBusController
+import com.grkj.iscs.model.Constants
 import com.grkj.iscs.model.DeviceConst.DEVICE_TYPE_CARD
 import com.grkj.iscs.model.vo.FileStreamReqParam
 import com.grkj.iscs.model.vo.card.CardInfoRespVO
@@ -61,6 +62,7 @@ class LoginPresenter : BasePresenter<ILoginView>() {
                         itSys?.let { sys ->
                             SPUtils.saveSystemAttribute(mContext!!, sys.records)
                         }
+                        Constants.updateRole(mContext!!)
                         itInfo?.let { info ->
                             SPUtils.setLoginUser(mContext!!, info)
                         }