diff --git a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt index 465a05a..8fd3296 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt @@ -21,13 +21,10 @@ import com.casic.smart.town.sanxi.view.UpdateDataActivity import com.casic.smart.town.sanxi.vm.UserViewModel import com.casic.smart.town.sanxi.vm.VersionViewModel -import com.google.gson.Gson -import com.google.gson.reflect.TypeToken import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.callback.OnDownloadListener import com.pengxh.kt.lite.extensions.* import com.pengxh.kt.lite.utils.PageNavigationManager -import com.pengxh.kt.lite.utils.SaveKeyValues import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import com.qmuiteam.qmui.util.QMUIDisplayHelper @@ -36,7 +33,8 @@ class MorePageFragment : KotlinBaseFragment() { - private lateinit var userData: UserDetailModel.Data + private val kTag = "MorePageFragment" + private lateinit var user: UserDetailModel.DataModel private lateinit var userViewModel: UserViewModel private lateinit var versionViewModel: VersionViewModel private lateinit var progressDialog: ProgressDialog @@ -53,7 +51,44 @@ override fun initData() { userViewModel = ViewModelProvider(this)[UserViewModel::class.java] + userViewModel.userDetail.observe(this) { + if (it.code == 200) { + LoadingDialogHub.dismiss() + user = it.data + updateUserInfo() + } + } + userViewModel.outResult.observe(this) { + if (it.code == 200) { + AuthenticationHelper.removeToken() + requireContext().navigatePageTo() + PageNavigationManager.finishAllActivity() + } + } + versionViewModel = ViewModelProvider(this)[VersionViewModel::class.java] + versionViewModel.versionResultModel.observe(this) { + if (BuildConfig.VERSION_NAME == it.version) { + "已是最新版本,无需更新".show(requireContext()) + } else { + AlertControlDialog.Builder() + .setContext(requireContext()) + .setTitle("提示") + .setMessage("有新版本,是否更新?") + .setNegativeButton("稍后再说") + .setPositiveButton("立即下载") + .setOnDialogButtonClickListener(object : + AlertControlDialog.OnDialogButtonClickListener { + override fun onConfirmClick() { + downloadApk(it.downloadUrl) + } + + override fun onCancelClick() { + + } + }).build().show() + } + } //初始化下载对话框 progressDialog = ProgressDialog(requireContext()) @@ -61,11 +96,6 @@ progressDialog.setProgressDrawable(resources.getDrawable(R.drawable.download_progress)) progressDialog.setCanceledOnTouchOutside(false) progressDialog.setCancelable(false) - - /** - * 数据监听 - * */ - dataObserve() } override fun observeRequestState() { @@ -79,7 +109,7 @@ override fun initEvent() { userImageView.setOnClickListener { - "尽情期待~".show(requireContext()) + "待完善".show(requireContext()) } updateUserButton.setOnClickListener { @@ -137,78 +167,32 @@ } } - private fun dataObserve() { - userViewModel.userDetail.observe(this) { - if (it.code == 200) { - LoadingDialogHub.dismiss() - "同步完成".show(requireContext()) - userData = it.data - updateUserInfo() - } - } - - versionViewModel.versionResultModel.observe(this) { - if (BuildConfig.VERSION_NAME == it.version) { - "已是最新版本,无需更新".show(requireContext()) - } else { - AlertControlDialog.Builder() - .setContext(requireContext()) - .setTitle("提示") - .setMessage("有新版本,是否更新?") - .setNegativeButton("稍后再说") - .setPositiveButton("立即下载") - .setOnDialogButtonClickListener(object : - AlertControlDialog.OnDialogButtonClickListener { - override fun onConfirmClick() { - downloadApk(it.downloadUrl) - } - - override fun onCancelClick() { - - } - }).build().show() - } - } - - userViewModel.outResult.observe(this) { - if (it.code == 200) { - AuthenticationHelper.removeToken() - requireContext().navigatePageTo() - PageNavigationManager.finishAllActivity() - } - } - } - private fun collectApplicationCache(): Long { return File(requireContext().cacheDir.path).calculateSize() } override fun onResume() { - val userDetailJson = SaveKeyValues.getValue(LocaleConstant.USER_DETAIL_MODEL, "") as String - if (userDetailJson.isNotBlank()) { - userData = Gson().fromJson( - userDetailJson, object : TypeToken() {}.type - ) - updateUserInfo() - } + userViewModel.getUserDetail() //缓存 cacheSizeView.text = collectApplicationCache().formatFileSize() super.onResume() } private fun updateUserInfo() { - //设置头像,圆形,暂时是默认的 -// val roundDrawable = -// BitmapFactory.decodeResource(requireContext().resources, R.mipmap.login_casic) -// .createRoundDrawable( -// requireContext(), -// 3f.dp2px(requireContext()), -// R.color.mainThemeColor.convertColor(requireContext()) -// ) -// userImageView.setImageDrawable(roundDrawable) - userNameView.text = userData.name - userPhoneView.text = String.format("电话:${userData.phone}") - userDeptView.text = String.format("部门:${userData.deptName}") +// if (user.avatar.isNullOrBlank()) { +// Glide.with(requireContext()) +// .load(R.mipmap.user_icon) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } else { +// Glide.with(requireContext()) +// .load(user.avatar.combineImagePath()) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } + userNameView.text = user.name + userPhoneView.text = String.format("电话:${user.phone}") + userDeptView.text = String.format("部门:${user.deptName}") } private fun downloadApk(url: String?) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt index 465a05a..8fd3296 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt @@ -21,13 +21,10 @@ import com.casic.smart.town.sanxi.view.UpdateDataActivity import com.casic.smart.town.sanxi.vm.UserViewModel import com.casic.smart.town.sanxi.vm.VersionViewModel -import com.google.gson.Gson -import com.google.gson.reflect.TypeToken import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.callback.OnDownloadListener import com.pengxh.kt.lite.extensions.* import com.pengxh.kt.lite.utils.PageNavigationManager -import com.pengxh.kt.lite.utils.SaveKeyValues import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import com.qmuiteam.qmui.util.QMUIDisplayHelper @@ -36,7 +33,8 @@ class MorePageFragment : KotlinBaseFragment() { - private lateinit var userData: UserDetailModel.Data + private val kTag = "MorePageFragment" + private lateinit var user: UserDetailModel.DataModel private lateinit var userViewModel: UserViewModel private lateinit var versionViewModel: VersionViewModel private lateinit var progressDialog: ProgressDialog @@ -53,7 +51,44 @@ override fun initData() { userViewModel = ViewModelProvider(this)[UserViewModel::class.java] + userViewModel.userDetail.observe(this) { + if (it.code == 200) { + LoadingDialogHub.dismiss() + user = it.data + updateUserInfo() + } + } + userViewModel.outResult.observe(this) { + if (it.code == 200) { + AuthenticationHelper.removeToken() + requireContext().navigatePageTo() + PageNavigationManager.finishAllActivity() + } + } + versionViewModel = ViewModelProvider(this)[VersionViewModel::class.java] + versionViewModel.versionResultModel.observe(this) { + if (BuildConfig.VERSION_NAME == it.version) { + "已是最新版本,无需更新".show(requireContext()) + } else { + AlertControlDialog.Builder() + .setContext(requireContext()) + .setTitle("提示") + .setMessage("有新版本,是否更新?") + .setNegativeButton("稍后再说") + .setPositiveButton("立即下载") + .setOnDialogButtonClickListener(object : + AlertControlDialog.OnDialogButtonClickListener { + override fun onConfirmClick() { + downloadApk(it.downloadUrl) + } + + override fun onCancelClick() { + + } + }).build().show() + } + } //初始化下载对话框 progressDialog = ProgressDialog(requireContext()) @@ -61,11 +96,6 @@ progressDialog.setProgressDrawable(resources.getDrawable(R.drawable.download_progress)) progressDialog.setCanceledOnTouchOutside(false) progressDialog.setCancelable(false) - - /** - * 数据监听 - * */ - dataObserve() } override fun observeRequestState() { @@ -79,7 +109,7 @@ override fun initEvent() { userImageView.setOnClickListener { - "尽情期待~".show(requireContext()) + "待完善".show(requireContext()) } updateUserButton.setOnClickListener { @@ -137,78 +167,32 @@ } } - private fun dataObserve() { - userViewModel.userDetail.observe(this) { - if (it.code == 200) { - LoadingDialogHub.dismiss() - "同步完成".show(requireContext()) - userData = it.data - updateUserInfo() - } - } - - versionViewModel.versionResultModel.observe(this) { - if (BuildConfig.VERSION_NAME == it.version) { - "已是最新版本,无需更新".show(requireContext()) - } else { - AlertControlDialog.Builder() - .setContext(requireContext()) - .setTitle("提示") - .setMessage("有新版本,是否更新?") - .setNegativeButton("稍后再说") - .setPositiveButton("立即下载") - .setOnDialogButtonClickListener(object : - AlertControlDialog.OnDialogButtonClickListener { - override fun onConfirmClick() { - downloadApk(it.downloadUrl) - } - - override fun onCancelClick() { - - } - }).build().show() - } - } - - userViewModel.outResult.observe(this) { - if (it.code == 200) { - AuthenticationHelper.removeToken() - requireContext().navigatePageTo() - PageNavigationManager.finishAllActivity() - } - } - } - private fun collectApplicationCache(): Long { return File(requireContext().cacheDir.path).calculateSize() } override fun onResume() { - val userDetailJson = SaveKeyValues.getValue(LocaleConstant.USER_DETAIL_MODEL, "") as String - if (userDetailJson.isNotBlank()) { - userData = Gson().fromJson( - userDetailJson, object : TypeToken() {}.type - ) - updateUserInfo() - } + userViewModel.getUserDetail() //缓存 cacheSizeView.text = collectApplicationCache().formatFileSize() super.onResume() } private fun updateUserInfo() { - //设置头像,圆形,暂时是默认的 -// val roundDrawable = -// BitmapFactory.decodeResource(requireContext().resources, R.mipmap.login_casic) -// .createRoundDrawable( -// requireContext(), -// 3f.dp2px(requireContext()), -// R.color.mainThemeColor.convertColor(requireContext()) -// ) -// userImageView.setImageDrawable(roundDrawable) - userNameView.text = userData.name - userPhoneView.text = String.format("电话:${userData.phone}") - userDeptView.text = String.format("部门:${userData.deptName}") +// if (user.avatar.isNullOrBlank()) { +// Glide.with(requireContext()) +// .load(R.mipmap.user_icon) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } else { +// Glide.with(requireContext()) +// .load(user.avatar.combineImagePath()) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } + userNameView.text = user.name + userPhoneView.text = String.format("电话:${user.phone}") + userDeptView.text = String.format("部门:${user.deptName}") } private fun downloadApk(url: String?) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java index db577fb..d260c30 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java +++ b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java @@ -4,224 +4,260 @@ import java.util.List; public class UserDetailModel { - private int code; - private Data data; + + private Integer code; + private DataModel data; private String message; - private boolean success; + private Boolean success; - public void setCode(int code) { - this.code = code; - } - - public int getCode() { + public Integer getCode() { return code; } - public void setData(Data data) { - this.data = data; + public void setCode(Integer code) { + this.code = code; } - public Data getData() { + public DataModel getData() { return data; } - public void setMessage(String message) { - this.message = message; + public void setData(DataModel data) { + this.data = data; } public String getMessage() { return message; } - public void setSuccess(boolean success) { - this.success = success; + public void setMessage(String message) { + this.message = message; } - public boolean getSuccess() { + public Boolean getSuccess() { return success; } - public static class Data { + public void setSuccess(Boolean success) { + this.success = success; + } + public static class DataModel { private String account; + private String appId; private String attr1; private String avatar; private String bizData; private List dataScope; private String deptId; private String deptName; - private List devices; + private List devices; private String id; private String ipAddr; + private Boolean isAppLogin; private String name; private String phone; - private List roleList; + private List resourceUrls; + private List roleIds; private List roleNames; private List roleTips; private String scopeType; + private String syncId; + private String syncName; private String sysData; - private String targetId; - private String targetName; private String tenantId; - - public void setAccount(String account) { - this.account = account; - } + private String userUniqueId; public String getAccount() { return account; } - public void setAttr1(String attr1) { - this.attr1 = attr1; + public void setAccount(String account) { + this.account = account; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; } public String getAttr1() { return attr1; } - public void setAvatar(String avatar) { - this.avatar = avatar; + public void setAttr1(String attr1) { + this.attr1 = attr1; } public String getAvatar() { return avatar; } - public void setBizData(String bizData) { - this.bizData = bizData; + public void setAvatar(String avatar) { + this.avatar = avatar; } public String getBizData() { return bizData; } - public void setDataScope(List dataScope) { - this.dataScope = dataScope; + public void setBizData(String bizData) { + this.bizData = bizData; } public List getDataScope() { return dataScope; } - public void setDeptId(String deptId) { - this.deptId = deptId; + public void setDataScope(List dataScope) { + this.dataScope = dataScope; } public String getDeptId() { return deptId; } - public void setDeptName(String deptName) { - this.deptName = deptName; + public void setDeptId(String deptId) { + this.deptId = deptId; } public String getDeptName() { return deptName; } - public void setDevices(List devices) { - this.devices = devices; + public void setDeptName(String deptName) { + this.deptName = deptName; } - public List getDevices() { + public List getDevices() { return devices; } - public void setId(String id) { - this.id = id; + public void setDevices(List devices) { + this.devices = devices; } public String getId() { return id; } - public void setIpAddr(String ipAddr) { - this.ipAddr = ipAddr; + public void setId(String id) { + this.id = id; } public String getIpAddr() { return ipAddr; } - public void setName(String name) { - this.name = name; + public void setIpAddr(String ipAddr) { + this.ipAddr = ipAddr; + } + + public Boolean getIsAppLogin() { + return isAppLogin; + } + + public void setIsAppLogin(Boolean isAppLogin) { + this.isAppLogin = isAppLogin; } public String getName() { return name; } - public void setPhone(String phone) { - this.phone = phone; + public void setName(String name) { + this.name = name; } public String getPhone() { return phone; } - public void setRoleList(List roleList) { - this.roleList = roleList; + public void setPhone(String phone) { + this.phone = phone; } - public List getRoleList() { - return roleList; + public List getResourceUrls() { + return resourceUrls; } - public void setRoleNames(List roleNames) { - this.roleNames = roleNames; + public void setResourceUrls(List resourceUrls) { + this.resourceUrls = resourceUrls; + } + + public List getRoleIds() { + return roleIds; + } + + public void setRoleIds(List roleIds) { + this.roleIds = roleIds; } public List getRoleNames() { return roleNames; } - public void setRoleTips(List roleTips) { - this.roleTips = roleTips; + public void setRoleNames(List roleNames) { + this.roleNames = roleNames; } public List getRoleTips() { return roleTips; } - public void setScopeType(String scopeType) { - this.scopeType = scopeType; + public void setRoleTips(List roleTips) { + this.roleTips = roleTips; } public String getScopeType() { return scopeType; } - public void setSysData(String sysData) { - this.sysData = sysData; + public void setScopeType(String scopeType) { + this.scopeType = scopeType; + } + + public String getSyncId() { + return syncId; + } + + public void setSyncId(String syncId) { + this.syncId = syncId; + } + + public String getSyncName() { + return syncName; + } + + public void setSyncName(String syncName) { + this.syncName = syncName; } public String getSysData() { return sysData; } - public void setTargetId(String targetId) { - this.targetId = targetId; + public void setSysData(String sysData) { + this.sysData = sysData; } - public String getTargetId() { - return targetId; - } - - public void setTargetName(String targetName) { - this.targetName = targetName; - } - - public String getTargetName() { - return targetName; + public String getTenantId() { + return tenantId; } public void setTenantId(String tenantId) { this.tenantId = tenantId; } - public String getTenantId() { - return tenantId; + public String getUserUniqueId() { + return userUniqueId; + } + + public void setUserUniqueId(String userUniqueId) { + this.userUniqueId = userUniqueId; } } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt index 465a05a..8fd3296 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt @@ -21,13 +21,10 @@ import com.casic.smart.town.sanxi.view.UpdateDataActivity import com.casic.smart.town.sanxi.vm.UserViewModel import com.casic.smart.town.sanxi.vm.VersionViewModel -import com.google.gson.Gson -import com.google.gson.reflect.TypeToken import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.callback.OnDownloadListener import com.pengxh.kt.lite.extensions.* import com.pengxh.kt.lite.utils.PageNavigationManager -import com.pengxh.kt.lite.utils.SaveKeyValues import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import com.qmuiteam.qmui.util.QMUIDisplayHelper @@ -36,7 +33,8 @@ class MorePageFragment : KotlinBaseFragment() { - private lateinit var userData: UserDetailModel.Data + private val kTag = "MorePageFragment" + private lateinit var user: UserDetailModel.DataModel private lateinit var userViewModel: UserViewModel private lateinit var versionViewModel: VersionViewModel private lateinit var progressDialog: ProgressDialog @@ -53,7 +51,44 @@ override fun initData() { userViewModel = ViewModelProvider(this)[UserViewModel::class.java] + userViewModel.userDetail.observe(this) { + if (it.code == 200) { + LoadingDialogHub.dismiss() + user = it.data + updateUserInfo() + } + } + userViewModel.outResult.observe(this) { + if (it.code == 200) { + AuthenticationHelper.removeToken() + requireContext().navigatePageTo() + PageNavigationManager.finishAllActivity() + } + } + versionViewModel = ViewModelProvider(this)[VersionViewModel::class.java] + versionViewModel.versionResultModel.observe(this) { + if (BuildConfig.VERSION_NAME == it.version) { + "已是最新版本,无需更新".show(requireContext()) + } else { + AlertControlDialog.Builder() + .setContext(requireContext()) + .setTitle("提示") + .setMessage("有新版本,是否更新?") + .setNegativeButton("稍后再说") + .setPositiveButton("立即下载") + .setOnDialogButtonClickListener(object : + AlertControlDialog.OnDialogButtonClickListener { + override fun onConfirmClick() { + downloadApk(it.downloadUrl) + } + + override fun onCancelClick() { + + } + }).build().show() + } + } //初始化下载对话框 progressDialog = ProgressDialog(requireContext()) @@ -61,11 +96,6 @@ progressDialog.setProgressDrawable(resources.getDrawable(R.drawable.download_progress)) progressDialog.setCanceledOnTouchOutside(false) progressDialog.setCancelable(false) - - /** - * 数据监听 - * */ - dataObserve() } override fun observeRequestState() { @@ -79,7 +109,7 @@ override fun initEvent() { userImageView.setOnClickListener { - "尽情期待~".show(requireContext()) + "待完善".show(requireContext()) } updateUserButton.setOnClickListener { @@ -137,78 +167,32 @@ } } - private fun dataObserve() { - userViewModel.userDetail.observe(this) { - if (it.code == 200) { - LoadingDialogHub.dismiss() - "同步完成".show(requireContext()) - userData = it.data - updateUserInfo() - } - } - - versionViewModel.versionResultModel.observe(this) { - if (BuildConfig.VERSION_NAME == it.version) { - "已是最新版本,无需更新".show(requireContext()) - } else { - AlertControlDialog.Builder() - .setContext(requireContext()) - .setTitle("提示") - .setMessage("有新版本,是否更新?") - .setNegativeButton("稍后再说") - .setPositiveButton("立即下载") - .setOnDialogButtonClickListener(object : - AlertControlDialog.OnDialogButtonClickListener { - override fun onConfirmClick() { - downloadApk(it.downloadUrl) - } - - override fun onCancelClick() { - - } - }).build().show() - } - } - - userViewModel.outResult.observe(this) { - if (it.code == 200) { - AuthenticationHelper.removeToken() - requireContext().navigatePageTo() - PageNavigationManager.finishAllActivity() - } - } - } - private fun collectApplicationCache(): Long { return File(requireContext().cacheDir.path).calculateSize() } override fun onResume() { - val userDetailJson = SaveKeyValues.getValue(LocaleConstant.USER_DETAIL_MODEL, "") as String - if (userDetailJson.isNotBlank()) { - userData = Gson().fromJson( - userDetailJson, object : TypeToken() {}.type - ) - updateUserInfo() - } + userViewModel.getUserDetail() //缓存 cacheSizeView.text = collectApplicationCache().formatFileSize() super.onResume() } private fun updateUserInfo() { - //设置头像,圆形,暂时是默认的 -// val roundDrawable = -// BitmapFactory.decodeResource(requireContext().resources, R.mipmap.login_casic) -// .createRoundDrawable( -// requireContext(), -// 3f.dp2px(requireContext()), -// R.color.mainThemeColor.convertColor(requireContext()) -// ) -// userImageView.setImageDrawable(roundDrawable) - userNameView.text = userData.name - userPhoneView.text = String.format("电话:${userData.phone}") - userDeptView.text = String.format("部门:${userData.deptName}") +// if (user.avatar.isNullOrBlank()) { +// Glide.with(requireContext()) +// .load(R.mipmap.user_icon) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } else { +// Glide.with(requireContext()) +// .load(user.avatar.combineImagePath()) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } + userNameView.text = user.name + userPhoneView.text = String.format("电话:${user.phone}") + userDeptView.text = String.format("部门:${user.deptName}") } private fun downloadApk(url: String?) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java index db577fb..d260c30 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java +++ b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java @@ -4,224 +4,260 @@ import java.util.List; public class UserDetailModel { - private int code; - private Data data; + + private Integer code; + private DataModel data; private String message; - private boolean success; + private Boolean success; - public void setCode(int code) { - this.code = code; - } - - public int getCode() { + public Integer getCode() { return code; } - public void setData(Data data) { - this.data = data; + public void setCode(Integer code) { + this.code = code; } - public Data getData() { + public DataModel getData() { return data; } - public void setMessage(String message) { - this.message = message; + public void setData(DataModel data) { + this.data = data; } public String getMessage() { return message; } - public void setSuccess(boolean success) { - this.success = success; + public void setMessage(String message) { + this.message = message; } - public boolean getSuccess() { + public Boolean getSuccess() { return success; } - public static class Data { + public void setSuccess(Boolean success) { + this.success = success; + } + public static class DataModel { private String account; + private String appId; private String attr1; private String avatar; private String bizData; private List dataScope; private String deptId; private String deptName; - private List devices; + private List devices; private String id; private String ipAddr; + private Boolean isAppLogin; private String name; private String phone; - private List roleList; + private List resourceUrls; + private List roleIds; private List roleNames; private List roleTips; private String scopeType; + private String syncId; + private String syncName; private String sysData; - private String targetId; - private String targetName; private String tenantId; - - public void setAccount(String account) { - this.account = account; - } + private String userUniqueId; public String getAccount() { return account; } - public void setAttr1(String attr1) { - this.attr1 = attr1; + public void setAccount(String account) { + this.account = account; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; } public String getAttr1() { return attr1; } - public void setAvatar(String avatar) { - this.avatar = avatar; + public void setAttr1(String attr1) { + this.attr1 = attr1; } public String getAvatar() { return avatar; } - public void setBizData(String bizData) { - this.bizData = bizData; + public void setAvatar(String avatar) { + this.avatar = avatar; } public String getBizData() { return bizData; } - public void setDataScope(List dataScope) { - this.dataScope = dataScope; + public void setBizData(String bizData) { + this.bizData = bizData; } public List getDataScope() { return dataScope; } - public void setDeptId(String deptId) { - this.deptId = deptId; + public void setDataScope(List dataScope) { + this.dataScope = dataScope; } public String getDeptId() { return deptId; } - public void setDeptName(String deptName) { - this.deptName = deptName; + public void setDeptId(String deptId) { + this.deptId = deptId; } public String getDeptName() { return deptName; } - public void setDevices(List devices) { - this.devices = devices; + public void setDeptName(String deptName) { + this.deptName = deptName; } - public List getDevices() { + public List getDevices() { return devices; } - public void setId(String id) { - this.id = id; + public void setDevices(List devices) { + this.devices = devices; } public String getId() { return id; } - public void setIpAddr(String ipAddr) { - this.ipAddr = ipAddr; + public void setId(String id) { + this.id = id; } public String getIpAddr() { return ipAddr; } - public void setName(String name) { - this.name = name; + public void setIpAddr(String ipAddr) { + this.ipAddr = ipAddr; + } + + public Boolean getIsAppLogin() { + return isAppLogin; + } + + public void setIsAppLogin(Boolean isAppLogin) { + this.isAppLogin = isAppLogin; } public String getName() { return name; } - public void setPhone(String phone) { - this.phone = phone; + public void setName(String name) { + this.name = name; } public String getPhone() { return phone; } - public void setRoleList(List roleList) { - this.roleList = roleList; + public void setPhone(String phone) { + this.phone = phone; } - public List getRoleList() { - return roleList; + public List getResourceUrls() { + return resourceUrls; } - public void setRoleNames(List roleNames) { - this.roleNames = roleNames; + public void setResourceUrls(List resourceUrls) { + this.resourceUrls = resourceUrls; + } + + public List getRoleIds() { + return roleIds; + } + + public void setRoleIds(List roleIds) { + this.roleIds = roleIds; } public List getRoleNames() { return roleNames; } - public void setRoleTips(List roleTips) { - this.roleTips = roleTips; + public void setRoleNames(List roleNames) { + this.roleNames = roleNames; } public List getRoleTips() { return roleTips; } - public void setScopeType(String scopeType) { - this.scopeType = scopeType; + public void setRoleTips(List roleTips) { + this.roleTips = roleTips; } public String getScopeType() { return scopeType; } - public void setSysData(String sysData) { - this.sysData = sysData; + public void setScopeType(String scopeType) { + this.scopeType = scopeType; + } + + public String getSyncId() { + return syncId; + } + + public void setSyncId(String syncId) { + this.syncId = syncId; + } + + public String getSyncName() { + return syncName; + } + + public void setSyncName(String syncName) { + this.syncName = syncName; } public String getSysData() { return sysData; } - public void setTargetId(String targetId) { - this.targetId = targetId; + public void setSysData(String sysData) { + this.sysData = sysData; } - public String getTargetId() { - return targetId; - } - - public void setTargetName(String targetName) { - this.targetName = targetName; - } - - public String getTargetName() { - return targetName; + public String getTenantId() { + return tenantId; } public void setTenantId(String tenantId) { this.tenantId = tenantId; } - public String getTenantId() { - return tenantId; + public String getUserUniqueId() { + return userUniqueId; + } + + public void setUserUniqueId(String userUniqueId) { + this.userUniqueId = userUniqueId; } } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt b/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt index c5443a3..52e3302 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt @@ -18,7 +18,7 @@ class GlideLoadEngine private constructor() : ImageEngine { companion object { - val instance: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { + val get: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { GlideLoadEngine() } } diff --git a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt index 465a05a..8fd3296 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt @@ -21,13 +21,10 @@ import com.casic.smart.town.sanxi.view.UpdateDataActivity import com.casic.smart.town.sanxi.vm.UserViewModel import com.casic.smart.town.sanxi.vm.VersionViewModel -import com.google.gson.Gson -import com.google.gson.reflect.TypeToken import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.callback.OnDownloadListener import com.pengxh.kt.lite.extensions.* import com.pengxh.kt.lite.utils.PageNavigationManager -import com.pengxh.kt.lite.utils.SaveKeyValues import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import com.qmuiteam.qmui.util.QMUIDisplayHelper @@ -36,7 +33,8 @@ class MorePageFragment : KotlinBaseFragment() { - private lateinit var userData: UserDetailModel.Data + private val kTag = "MorePageFragment" + private lateinit var user: UserDetailModel.DataModel private lateinit var userViewModel: UserViewModel private lateinit var versionViewModel: VersionViewModel private lateinit var progressDialog: ProgressDialog @@ -53,7 +51,44 @@ override fun initData() { userViewModel = ViewModelProvider(this)[UserViewModel::class.java] + userViewModel.userDetail.observe(this) { + if (it.code == 200) { + LoadingDialogHub.dismiss() + user = it.data + updateUserInfo() + } + } + userViewModel.outResult.observe(this) { + if (it.code == 200) { + AuthenticationHelper.removeToken() + requireContext().navigatePageTo() + PageNavigationManager.finishAllActivity() + } + } + versionViewModel = ViewModelProvider(this)[VersionViewModel::class.java] + versionViewModel.versionResultModel.observe(this) { + if (BuildConfig.VERSION_NAME == it.version) { + "已是最新版本,无需更新".show(requireContext()) + } else { + AlertControlDialog.Builder() + .setContext(requireContext()) + .setTitle("提示") + .setMessage("有新版本,是否更新?") + .setNegativeButton("稍后再说") + .setPositiveButton("立即下载") + .setOnDialogButtonClickListener(object : + AlertControlDialog.OnDialogButtonClickListener { + override fun onConfirmClick() { + downloadApk(it.downloadUrl) + } + + override fun onCancelClick() { + + } + }).build().show() + } + } //初始化下载对话框 progressDialog = ProgressDialog(requireContext()) @@ -61,11 +96,6 @@ progressDialog.setProgressDrawable(resources.getDrawable(R.drawable.download_progress)) progressDialog.setCanceledOnTouchOutside(false) progressDialog.setCancelable(false) - - /** - * 数据监听 - * */ - dataObserve() } override fun observeRequestState() { @@ -79,7 +109,7 @@ override fun initEvent() { userImageView.setOnClickListener { - "尽情期待~".show(requireContext()) + "待完善".show(requireContext()) } updateUserButton.setOnClickListener { @@ -137,78 +167,32 @@ } } - private fun dataObserve() { - userViewModel.userDetail.observe(this) { - if (it.code == 200) { - LoadingDialogHub.dismiss() - "同步完成".show(requireContext()) - userData = it.data - updateUserInfo() - } - } - - versionViewModel.versionResultModel.observe(this) { - if (BuildConfig.VERSION_NAME == it.version) { - "已是最新版本,无需更新".show(requireContext()) - } else { - AlertControlDialog.Builder() - .setContext(requireContext()) - .setTitle("提示") - .setMessage("有新版本,是否更新?") - .setNegativeButton("稍后再说") - .setPositiveButton("立即下载") - .setOnDialogButtonClickListener(object : - AlertControlDialog.OnDialogButtonClickListener { - override fun onConfirmClick() { - downloadApk(it.downloadUrl) - } - - override fun onCancelClick() { - - } - }).build().show() - } - } - - userViewModel.outResult.observe(this) { - if (it.code == 200) { - AuthenticationHelper.removeToken() - requireContext().navigatePageTo() - PageNavigationManager.finishAllActivity() - } - } - } - private fun collectApplicationCache(): Long { return File(requireContext().cacheDir.path).calculateSize() } override fun onResume() { - val userDetailJson = SaveKeyValues.getValue(LocaleConstant.USER_DETAIL_MODEL, "") as String - if (userDetailJson.isNotBlank()) { - userData = Gson().fromJson( - userDetailJson, object : TypeToken() {}.type - ) - updateUserInfo() - } + userViewModel.getUserDetail() //缓存 cacheSizeView.text = collectApplicationCache().formatFileSize() super.onResume() } private fun updateUserInfo() { - //设置头像,圆形,暂时是默认的 -// val roundDrawable = -// BitmapFactory.decodeResource(requireContext().resources, R.mipmap.login_casic) -// .createRoundDrawable( -// requireContext(), -// 3f.dp2px(requireContext()), -// R.color.mainThemeColor.convertColor(requireContext()) -// ) -// userImageView.setImageDrawable(roundDrawable) - userNameView.text = userData.name - userPhoneView.text = String.format("电话:${userData.phone}") - userDeptView.text = String.format("部门:${userData.deptName}") +// if (user.avatar.isNullOrBlank()) { +// Glide.with(requireContext()) +// .load(R.mipmap.user_icon) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } else { +// Glide.with(requireContext()) +// .load(user.avatar.combineImagePath()) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } + userNameView.text = user.name + userPhoneView.text = String.format("电话:${user.phone}") + userDeptView.text = String.format("部门:${user.deptName}") } private fun downloadApk(url: String?) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java index db577fb..d260c30 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java +++ b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java @@ -4,224 +4,260 @@ import java.util.List; public class UserDetailModel { - private int code; - private Data data; + + private Integer code; + private DataModel data; private String message; - private boolean success; + private Boolean success; - public void setCode(int code) { - this.code = code; - } - - public int getCode() { + public Integer getCode() { return code; } - public void setData(Data data) { - this.data = data; + public void setCode(Integer code) { + this.code = code; } - public Data getData() { + public DataModel getData() { return data; } - public void setMessage(String message) { - this.message = message; + public void setData(DataModel data) { + this.data = data; } public String getMessage() { return message; } - public void setSuccess(boolean success) { - this.success = success; + public void setMessage(String message) { + this.message = message; } - public boolean getSuccess() { + public Boolean getSuccess() { return success; } - public static class Data { + public void setSuccess(Boolean success) { + this.success = success; + } + public static class DataModel { private String account; + private String appId; private String attr1; private String avatar; private String bizData; private List dataScope; private String deptId; private String deptName; - private List devices; + private List devices; private String id; private String ipAddr; + private Boolean isAppLogin; private String name; private String phone; - private List roleList; + private List resourceUrls; + private List roleIds; private List roleNames; private List roleTips; private String scopeType; + private String syncId; + private String syncName; private String sysData; - private String targetId; - private String targetName; private String tenantId; - - public void setAccount(String account) { - this.account = account; - } + private String userUniqueId; public String getAccount() { return account; } - public void setAttr1(String attr1) { - this.attr1 = attr1; + public void setAccount(String account) { + this.account = account; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; } public String getAttr1() { return attr1; } - public void setAvatar(String avatar) { - this.avatar = avatar; + public void setAttr1(String attr1) { + this.attr1 = attr1; } public String getAvatar() { return avatar; } - public void setBizData(String bizData) { - this.bizData = bizData; + public void setAvatar(String avatar) { + this.avatar = avatar; } public String getBizData() { return bizData; } - public void setDataScope(List dataScope) { - this.dataScope = dataScope; + public void setBizData(String bizData) { + this.bizData = bizData; } public List getDataScope() { return dataScope; } - public void setDeptId(String deptId) { - this.deptId = deptId; + public void setDataScope(List dataScope) { + this.dataScope = dataScope; } public String getDeptId() { return deptId; } - public void setDeptName(String deptName) { - this.deptName = deptName; + public void setDeptId(String deptId) { + this.deptId = deptId; } public String getDeptName() { return deptName; } - public void setDevices(List devices) { - this.devices = devices; + public void setDeptName(String deptName) { + this.deptName = deptName; } - public List getDevices() { + public List getDevices() { return devices; } - public void setId(String id) { - this.id = id; + public void setDevices(List devices) { + this.devices = devices; } public String getId() { return id; } - public void setIpAddr(String ipAddr) { - this.ipAddr = ipAddr; + public void setId(String id) { + this.id = id; } public String getIpAddr() { return ipAddr; } - public void setName(String name) { - this.name = name; + public void setIpAddr(String ipAddr) { + this.ipAddr = ipAddr; + } + + public Boolean getIsAppLogin() { + return isAppLogin; + } + + public void setIsAppLogin(Boolean isAppLogin) { + this.isAppLogin = isAppLogin; } public String getName() { return name; } - public void setPhone(String phone) { - this.phone = phone; + public void setName(String name) { + this.name = name; } public String getPhone() { return phone; } - public void setRoleList(List roleList) { - this.roleList = roleList; + public void setPhone(String phone) { + this.phone = phone; } - public List getRoleList() { - return roleList; + public List getResourceUrls() { + return resourceUrls; } - public void setRoleNames(List roleNames) { - this.roleNames = roleNames; + public void setResourceUrls(List resourceUrls) { + this.resourceUrls = resourceUrls; + } + + public List getRoleIds() { + return roleIds; + } + + public void setRoleIds(List roleIds) { + this.roleIds = roleIds; } public List getRoleNames() { return roleNames; } - public void setRoleTips(List roleTips) { - this.roleTips = roleTips; + public void setRoleNames(List roleNames) { + this.roleNames = roleNames; } public List getRoleTips() { return roleTips; } - public void setScopeType(String scopeType) { - this.scopeType = scopeType; + public void setRoleTips(List roleTips) { + this.roleTips = roleTips; } public String getScopeType() { return scopeType; } - public void setSysData(String sysData) { - this.sysData = sysData; + public void setScopeType(String scopeType) { + this.scopeType = scopeType; + } + + public String getSyncId() { + return syncId; + } + + public void setSyncId(String syncId) { + this.syncId = syncId; + } + + public String getSyncName() { + return syncName; + } + + public void setSyncName(String syncName) { + this.syncName = syncName; } public String getSysData() { return sysData; } - public void setTargetId(String targetId) { - this.targetId = targetId; + public void setSysData(String sysData) { + this.sysData = sysData; } - public String getTargetId() { - return targetId; - } - - public void setTargetName(String targetName) { - this.targetName = targetName; - } - - public String getTargetName() { - return targetName; + public String getTenantId() { + return tenantId; } public void setTenantId(String tenantId) { this.tenantId = tenantId; } - public String getTenantId() { - return tenantId; + public String getUserUniqueId() { + return userUniqueId; + } + + public void setUserUniqueId(String userUniqueId) { + this.userUniqueId = userUniqueId; } } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt b/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt index c5443a3..52e3302 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt @@ -18,7 +18,7 @@ class GlideLoadEngine private constructor() : ImageEngine { companion object { - val instance: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { + val get: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { GlideLoadEngine() } } diff --git a/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt b/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt index 38d63a8..06c145b 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt @@ -333,7 +333,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt index 465a05a..8fd3296 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt @@ -21,13 +21,10 @@ import com.casic.smart.town.sanxi.view.UpdateDataActivity import com.casic.smart.town.sanxi.vm.UserViewModel import com.casic.smart.town.sanxi.vm.VersionViewModel -import com.google.gson.Gson -import com.google.gson.reflect.TypeToken import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.callback.OnDownloadListener import com.pengxh.kt.lite.extensions.* import com.pengxh.kt.lite.utils.PageNavigationManager -import com.pengxh.kt.lite.utils.SaveKeyValues import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import com.qmuiteam.qmui.util.QMUIDisplayHelper @@ -36,7 +33,8 @@ class MorePageFragment : KotlinBaseFragment() { - private lateinit var userData: UserDetailModel.Data + private val kTag = "MorePageFragment" + private lateinit var user: UserDetailModel.DataModel private lateinit var userViewModel: UserViewModel private lateinit var versionViewModel: VersionViewModel private lateinit var progressDialog: ProgressDialog @@ -53,7 +51,44 @@ override fun initData() { userViewModel = ViewModelProvider(this)[UserViewModel::class.java] + userViewModel.userDetail.observe(this) { + if (it.code == 200) { + LoadingDialogHub.dismiss() + user = it.data + updateUserInfo() + } + } + userViewModel.outResult.observe(this) { + if (it.code == 200) { + AuthenticationHelper.removeToken() + requireContext().navigatePageTo() + PageNavigationManager.finishAllActivity() + } + } + versionViewModel = ViewModelProvider(this)[VersionViewModel::class.java] + versionViewModel.versionResultModel.observe(this) { + if (BuildConfig.VERSION_NAME == it.version) { + "已是最新版本,无需更新".show(requireContext()) + } else { + AlertControlDialog.Builder() + .setContext(requireContext()) + .setTitle("提示") + .setMessage("有新版本,是否更新?") + .setNegativeButton("稍后再说") + .setPositiveButton("立即下载") + .setOnDialogButtonClickListener(object : + AlertControlDialog.OnDialogButtonClickListener { + override fun onConfirmClick() { + downloadApk(it.downloadUrl) + } + + override fun onCancelClick() { + + } + }).build().show() + } + } //初始化下载对话框 progressDialog = ProgressDialog(requireContext()) @@ -61,11 +96,6 @@ progressDialog.setProgressDrawable(resources.getDrawable(R.drawable.download_progress)) progressDialog.setCanceledOnTouchOutside(false) progressDialog.setCancelable(false) - - /** - * 数据监听 - * */ - dataObserve() } override fun observeRequestState() { @@ -79,7 +109,7 @@ override fun initEvent() { userImageView.setOnClickListener { - "尽情期待~".show(requireContext()) + "待完善".show(requireContext()) } updateUserButton.setOnClickListener { @@ -137,78 +167,32 @@ } } - private fun dataObserve() { - userViewModel.userDetail.observe(this) { - if (it.code == 200) { - LoadingDialogHub.dismiss() - "同步完成".show(requireContext()) - userData = it.data - updateUserInfo() - } - } - - versionViewModel.versionResultModel.observe(this) { - if (BuildConfig.VERSION_NAME == it.version) { - "已是最新版本,无需更新".show(requireContext()) - } else { - AlertControlDialog.Builder() - .setContext(requireContext()) - .setTitle("提示") - .setMessage("有新版本,是否更新?") - .setNegativeButton("稍后再说") - .setPositiveButton("立即下载") - .setOnDialogButtonClickListener(object : - AlertControlDialog.OnDialogButtonClickListener { - override fun onConfirmClick() { - downloadApk(it.downloadUrl) - } - - override fun onCancelClick() { - - } - }).build().show() - } - } - - userViewModel.outResult.observe(this) { - if (it.code == 200) { - AuthenticationHelper.removeToken() - requireContext().navigatePageTo() - PageNavigationManager.finishAllActivity() - } - } - } - private fun collectApplicationCache(): Long { return File(requireContext().cacheDir.path).calculateSize() } override fun onResume() { - val userDetailJson = SaveKeyValues.getValue(LocaleConstant.USER_DETAIL_MODEL, "") as String - if (userDetailJson.isNotBlank()) { - userData = Gson().fromJson( - userDetailJson, object : TypeToken() {}.type - ) - updateUserInfo() - } + userViewModel.getUserDetail() //缓存 cacheSizeView.text = collectApplicationCache().formatFileSize() super.onResume() } private fun updateUserInfo() { - //设置头像,圆形,暂时是默认的 -// val roundDrawable = -// BitmapFactory.decodeResource(requireContext().resources, R.mipmap.login_casic) -// .createRoundDrawable( -// requireContext(), -// 3f.dp2px(requireContext()), -// R.color.mainThemeColor.convertColor(requireContext()) -// ) -// userImageView.setImageDrawable(roundDrawable) - userNameView.text = userData.name - userPhoneView.text = String.format("电话:${userData.phone}") - userDeptView.text = String.format("部门:${userData.deptName}") +// if (user.avatar.isNullOrBlank()) { +// Glide.with(requireContext()) +// .load(R.mipmap.user_icon) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } else { +// Glide.with(requireContext()) +// .load(user.avatar.combineImagePath()) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } + userNameView.text = user.name + userPhoneView.text = String.format("电话:${user.phone}") + userDeptView.text = String.format("部门:${user.deptName}") } private fun downloadApk(url: String?) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java index db577fb..d260c30 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java +++ b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java @@ -4,224 +4,260 @@ import java.util.List; public class UserDetailModel { - private int code; - private Data data; + + private Integer code; + private DataModel data; private String message; - private boolean success; + private Boolean success; - public void setCode(int code) { - this.code = code; - } - - public int getCode() { + public Integer getCode() { return code; } - public void setData(Data data) { - this.data = data; + public void setCode(Integer code) { + this.code = code; } - public Data getData() { + public DataModel getData() { return data; } - public void setMessage(String message) { - this.message = message; + public void setData(DataModel data) { + this.data = data; } public String getMessage() { return message; } - public void setSuccess(boolean success) { - this.success = success; + public void setMessage(String message) { + this.message = message; } - public boolean getSuccess() { + public Boolean getSuccess() { return success; } - public static class Data { + public void setSuccess(Boolean success) { + this.success = success; + } + public static class DataModel { private String account; + private String appId; private String attr1; private String avatar; private String bizData; private List dataScope; private String deptId; private String deptName; - private List devices; + private List devices; private String id; private String ipAddr; + private Boolean isAppLogin; private String name; private String phone; - private List roleList; + private List resourceUrls; + private List roleIds; private List roleNames; private List roleTips; private String scopeType; + private String syncId; + private String syncName; private String sysData; - private String targetId; - private String targetName; private String tenantId; - - public void setAccount(String account) { - this.account = account; - } + private String userUniqueId; public String getAccount() { return account; } - public void setAttr1(String attr1) { - this.attr1 = attr1; + public void setAccount(String account) { + this.account = account; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; } public String getAttr1() { return attr1; } - public void setAvatar(String avatar) { - this.avatar = avatar; + public void setAttr1(String attr1) { + this.attr1 = attr1; } public String getAvatar() { return avatar; } - public void setBizData(String bizData) { - this.bizData = bizData; + public void setAvatar(String avatar) { + this.avatar = avatar; } public String getBizData() { return bizData; } - public void setDataScope(List dataScope) { - this.dataScope = dataScope; + public void setBizData(String bizData) { + this.bizData = bizData; } public List getDataScope() { return dataScope; } - public void setDeptId(String deptId) { - this.deptId = deptId; + public void setDataScope(List dataScope) { + this.dataScope = dataScope; } public String getDeptId() { return deptId; } - public void setDeptName(String deptName) { - this.deptName = deptName; + public void setDeptId(String deptId) { + this.deptId = deptId; } public String getDeptName() { return deptName; } - public void setDevices(List devices) { - this.devices = devices; + public void setDeptName(String deptName) { + this.deptName = deptName; } - public List getDevices() { + public List getDevices() { return devices; } - public void setId(String id) { - this.id = id; + public void setDevices(List devices) { + this.devices = devices; } public String getId() { return id; } - public void setIpAddr(String ipAddr) { - this.ipAddr = ipAddr; + public void setId(String id) { + this.id = id; } public String getIpAddr() { return ipAddr; } - public void setName(String name) { - this.name = name; + public void setIpAddr(String ipAddr) { + this.ipAddr = ipAddr; + } + + public Boolean getIsAppLogin() { + return isAppLogin; + } + + public void setIsAppLogin(Boolean isAppLogin) { + this.isAppLogin = isAppLogin; } public String getName() { return name; } - public void setPhone(String phone) { - this.phone = phone; + public void setName(String name) { + this.name = name; } public String getPhone() { return phone; } - public void setRoleList(List roleList) { - this.roleList = roleList; + public void setPhone(String phone) { + this.phone = phone; } - public List getRoleList() { - return roleList; + public List getResourceUrls() { + return resourceUrls; } - public void setRoleNames(List roleNames) { - this.roleNames = roleNames; + public void setResourceUrls(List resourceUrls) { + this.resourceUrls = resourceUrls; + } + + public List getRoleIds() { + return roleIds; + } + + public void setRoleIds(List roleIds) { + this.roleIds = roleIds; } public List getRoleNames() { return roleNames; } - public void setRoleTips(List roleTips) { - this.roleTips = roleTips; + public void setRoleNames(List roleNames) { + this.roleNames = roleNames; } public List getRoleTips() { return roleTips; } - public void setScopeType(String scopeType) { - this.scopeType = scopeType; + public void setRoleTips(List roleTips) { + this.roleTips = roleTips; } public String getScopeType() { return scopeType; } - public void setSysData(String sysData) { - this.sysData = sysData; + public void setScopeType(String scopeType) { + this.scopeType = scopeType; + } + + public String getSyncId() { + return syncId; + } + + public void setSyncId(String syncId) { + this.syncId = syncId; + } + + public String getSyncName() { + return syncName; + } + + public void setSyncName(String syncName) { + this.syncName = syncName; } public String getSysData() { return sysData; } - public void setTargetId(String targetId) { - this.targetId = targetId; + public void setSysData(String sysData) { + this.sysData = sysData; } - public String getTargetId() { - return targetId; - } - - public void setTargetName(String targetName) { - this.targetName = targetName; - } - - public String getTargetName() { - return targetName; + public String getTenantId() { + return tenantId; } public void setTenantId(String tenantId) { this.tenantId = tenantId; } - public String getTenantId() { - return tenantId; + public String getUserUniqueId() { + return userUniqueId; + } + + public void setUserUniqueId(String userUniqueId) { + this.userUniqueId = userUniqueId; } } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt b/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt index c5443a3..52e3302 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt @@ -18,7 +18,7 @@ class GlideLoadEngine private constructor() : ImageEngine { companion object { - val instance: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { + val get: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { GlideLoadEngine() } } diff --git a/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt b/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt index 38d63a8..06c145b 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt @@ -333,7 +333,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/view/order/NotConfirmedDetailActivity.kt b/app/src/main/java/com/casic/smart/town/sanxi/view/order/NotConfirmedDetailActivity.kt index 174e16d..cbe38c6 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/view/order/NotConfirmedDetailActivity.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/view/order/NotConfirmedDetailActivity.kt @@ -291,7 +291,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt index 465a05a..8fd3296 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/fragment/MorePageFragment.kt @@ -21,13 +21,10 @@ import com.casic.smart.town.sanxi.view.UpdateDataActivity import com.casic.smart.town.sanxi.vm.UserViewModel import com.casic.smart.town.sanxi.vm.VersionViewModel -import com.google.gson.Gson -import com.google.gson.reflect.TypeToken import com.pengxh.kt.lite.base.KotlinBaseFragment import com.pengxh.kt.lite.callback.OnDownloadListener import com.pengxh.kt.lite.extensions.* import com.pengxh.kt.lite.utils.PageNavigationManager -import com.pengxh.kt.lite.utils.SaveKeyValues import com.pengxh.kt.lite.vm.LoadState import com.pengxh.kt.lite.widget.dialog.AlertControlDialog import com.qmuiteam.qmui.util.QMUIDisplayHelper @@ -36,7 +33,8 @@ class MorePageFragment : KotlinBaseFragment() { - private lateinit var userData: UserDetailModel.Data + private val kTag = "MorePageFragment" + private lateinit var user: UserDetailModel.DataModel private lateinit var userViewModel: UserViewModel private lateinit var versionViewModel: VersionViewModel private lateinit var progressDialog: ProgressDialog @@ -53,7 +51,44 @@ override fun initData() { userViewModel = ViewModelProvider(this)[UserViewModel::class.java] + userViewModel.userDetail.observe(this) { + if (it.code == 200) { + LoadingDialogHub.dismiss() + user = it.data + updateUserInfo() + } + } + userViewModel.outResult.observe(this) { + if (it.code == 200) { + AuthenticationHelper.removeToken() + requireContext().navigatePageTo() + PageNavigationManager.finishAllActivity() + } + } + versionViewModel = ViewModelProvider(this)[VersionViewModel::class.java] + versionViewModel.versionResultModel.observe(this) { + if (BuildConfig.VERSION_NAME == it.version) { + "已是最新版本,无需更新".show(requireContext()) + } else { + AlertControlDialog.Builder() + .setContext(requireContext()) + .setTitle("提示") + .setMessage("有新版本,是否更新?") + .setNegativeButton("稍后再说") + .setPositiveButton("立即下载") + .setOnDialogButtonClickListener(object : + AlertControlDialog.OnDialogButtonClickListener { + override fun onConfirmClick() { + downloadApk(it.downloadUrl) + } + + override fun onCancelClick() { + + } + }).build().show() + } + } //初始化下载对话框 progressDialog = ProgressDialog(requireContext()) @@ -61,11 +96,6 @@ progressDialog.setProgressDrawable(resources.getDrawable(R.drawable.download_progress)) progressDialog.setCanceledOnTouchOutside(false) progressDialog.setCancelable(false) - - /** - * 数据监听 - * */ - dataObserve() } override fun observeRequestState() { @@ -79,7 +109,7 @@ override fun initEvent() { userImageView.setOnClickListener { - "尽情期待~".show(requireContext()) + "待完善".show(requireContext()) } updateUserButton.setOnClickListener { @@ -137,78 +167,32 @@ } } - private fun dataObserve() { - userViewModel.userDetail.observe(this) { - if (it.code == 200) { - LoadingDialogHub.dismiss() - "同步完成".show(requireContext()) - userData = it.data - updateUserInfo() - } - } - - versionViewModel.versionResultModel.observe(this) { - if (BuildConfig.VERSION_NAME == it.version) { - "已是最新版本,无需更新".show(requireContext()) - } else { - AlertControlDialog.Builder() - .setContext(requireContext()) - .setTitle("提示") - .setMessage("有新版本,是否更新?") - .setNegativeButton("稍后再说") - .setPositiveButton("立即下载") - .setOnDialogButtonClickListener(object : - AlertControlDialog.OnDialogButtonClickListener { - override fun onConfirmClick() { - downloadApk(it.downloadUrl) - } - - override fun onCancelClick() { - - } - }).build().show() - } - } - - userViewModel.outResult.observe(this) { - if (it.code == 200) { - AuthenticationHelper.removeToken() - requireContext().navigatePageTo() - PageNavigationManager.finishAllActivity() - } - } - } - private fun collectApplicationCache(): Long { return File(requireContext().cacheDir.path).calculateSize() } override fun onResume() { - val userDetailJson = SaveKeyValues.getValue(LocaleConstant.USER_DETAIL_MODEL, "") as String - if (userDetailJson.isNotBlank()) { - userData = Gson().fromJson( - userDetailJson, object : TypeToken() {}.type - ) - updateUserInfo() - } + userViewModel.getUserDetail() //缓存 cacheSizeView.text = collectApplicationCache().formatFileSize() super.onResume() } private fun updateUserInfo() { - //设置头像,圆形,暂时是默认的 -// val roundDrawable = -// BitmapFactory.decodeResource(requireContext().resources, R.mipmap.login_casic) -// .createRoundDrawable( -// requireContext(), -// 3f.dp2px(requireContext()), -// R.color.mainThemeColor.convertColor(requireContext()) -// ) -// userImageView.setImageDrawable(roundDrawable) - userNameView.text = userData.name - userPhoneView.text = String.format("电话:${userData.phone}") - userDeptView.text = String.format("部门:${userData.deptName}") +// if (user.avatar.isNullOrBlank()) { +// Glide.with(requireContext()) +// .load(R.mipmap.user_icon) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } else { +// Glide.with(requireContext()) +// .load(user.avatar.combineImagePath()) +// .apply(RequestOptions.circleCropTransform()) +// .into(userAvatarView) +// } + userNameView.text = user.name + userPhoneView.text = String.format("电话:${user.phone}") + userDeptView.text = String.format("部门:${user.deptName}") } private fun downloadApk(url: String?) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java index db577fb..d260c30 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java +++ b/app/src/main/java/com/casic/smart/town/sanxi/model/UserDetailModel.java @@ -4,224 +4,260 @@ import java.util.List; public class UserDetailModel { - private int code; - private Data data; + + private Integer code; + private DataModel data; private String message; - private boolean success; + private Boolean success; - public void setCode(int code) { - this.code = code; - } - - public int getCode() { + public Integer getCode() { return code; } - public void setData(Data data) { - this.data = data; + public void setCode(Integer code) { + this.code = code; } - public Data getData() { + public DataModel getData() { return data; } - public void setMessage(String message) { - this.message = message; + public void setData(DataModel data) { + this.data = data; } public String getMessage() { return message; } - public void setSuccess(boolean success) { - this.success = success; + public void setMessage(String message) { + this.message = message; } - public boolean getSuccess() { + public Boolean getSuccess() { return success; } - public static class Data { + public void setSuccess(Boolean success) { + this.success = success; + } + public static class DataModel { private String account; + private String appId; private String attr1; private String avatar; private String bizData; private List dataScope; private String deptId; private String deptName; - private List devices; + private List devices; private String id; private String ipAddr; + private Boolean isAppLogin; private String name; private String phone; - private List roleList; + private List resourceUrls; + private List roleIds; private List roleNames; private List roleTips; private String scopeType; + private String syncId; + private String syncName; private String sysData; - private String targetId; - private String targetName; private String tenantId; - - public void setAccount(String account) { - this.account = account; - } + private String userUniqueId; public String getAccount() { return account; } - public void setAttr1(String attr1) { - this.attr1 = attr1; + public void setAccount(String account) { + this.account = account; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; } public String getAttr1() { return attr1; } - public void setAvatar(String avatar) { - this.avatar = avatar; + public void setAttr1(String attr1) { + this.attr1 = attr1; } public String getAvatar() { return avatar; } - public void setBizData(String bizData) { - this.bizData = bizData; + public void setAvatar(String avatar) { + this.avatar = avatar; } public String getBizData() { return bizData; } - public void setDataScope(List dataScope) { - this.dataScope = dataScope; + public void setBizData(String bizData) { + this.bizData = bizData; } public List getDataScope() { return dataScope; } - public void setDeptId(String deptId) { - this.deptId = deptId; + public void setDataScope(List dataScope) { + this.dataScope = dataScope; } public String getDeptId() { return deptId; } - public void setDeptName(String deptName) { - this.deptName = deptName; + public void setDeptId(String deptId) { + this.deptId = deptId; } public String getDeptName() { return deptName; } - public void setDevices(List devices) { - this.devices = devices; + public void setDeptName(String deptName) { + this.deptName = deptName; } - public List getDevices() { + public List getDevices() { return devices; } - public void setId(String id) { - this.id = id; + public void setDevices(List devices) { + this.devices = devices; } public String getId() { return id; } - public void setIpAddr(String ipAddr) { - this.ipAddr = ipAddr; + public void setId(String id) { + this.id = id; } public String getIpAddr() { return ipAddr; } - public void setName(String name) { - this.name = name; + public void setIpAddr(String ipAddr) { + this.ipAddr = ipAddr; + } + + public Boolean getIsAppLogin() { + return isAppLogin; + } + + public void setIsAppLogin(Boolean isAppLogin) { + this.isAppLogin = isAppLogin; } public String getName() { return name; } - public void setPhone(String phone) { - this.phone = phone; + public void setName(String name) { + this.name = name; } public String getPhone() { return phone; } - public void setRoleList(List roleList) { - this.roleList = roleList; + public void setPhone(String phone) { + this.phone = phone; } - public List getRoleList() { - return roleList; + public List getResourceUrls() { + return resourceUrls; } - public void setRoleNames(List roleNames) { - this.roleNames = roleNames; + public void setResourceUrls(List resourceUrls) { + this.resourceUrls = resourceUrls; + } + + public List getRoleIds() { + return roleIds; + } + + public void setRoleIds(List roleIds) { + this.roleIds = roleIds; } public List getRoleNames() { return roleNames; } - public void setRoleTips(List roleTips) { - this.roleTips = roleTips; + public void setRoleNames(List roleNames) { + this.roleNames = roleNames; } public List getRoleTips() { return roleTips; } - public void setScopeType(String scopeType) { - this.scopeType = scopeType; + public void setRoleTips(List roleTips) { + this.roleTips = roleTips; } public String getScopeType() { return scopeType; } - public void setSysData(String sysData) { - this.sysData = sysData; + public void setScopeType(String scopeType) { + this.scopeType = scopeType; + } + + public String getSyncId() { + return syncId; + } + + public void setSyncId(String syncId) { + this.syncId = syncId; + } + + public String getSyncName() { + return syncName; + } + + public void setSyncName(String syncName) { + this.syncName = syncName; } public String getSysData() { return sysData; } - public void setTargetId(String targetId) { - this.targetId = targetId; + public void setSysData(String sysData) { + this.sysData = sysData; } - public String getTargetId() { - return targetId; - } - - public void setTargetName(String targetName) { - this.targetName = targetName; - } - - public String getTargetName() { - return targetName; + public String getTenantId() { + return tenantId; } public void setTenantId(String tenantId) { this.tenantId = tenantId; } - public String getTenantId() { - return tenantId; + public String getUserUniqueId() { + return userUniqueId; + } + + public void setUserUniqueId(String userUniqueId) { + this.userUniqueId = userUniqueId; } } } \ No newline at end of file diff --git a/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt b/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt index c5443a3..52e3302 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/util/GlideLoadEngine.kt @@ -18,7 +18,7 @@ class GlideLoadEngine private constructor() : ImageEngine { companion object { - val instance: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { + val get: GlideLoadEngine by lazy(LazyThreadSafetyMode.SYNCHRONIZED) { GlideLoadEngine() } } diff --git a/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt b/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt index 38d63a8..06c145b 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/view/order/InHandleDetailActivity.kt @@ -333,7 +333,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/java/com/casic/smart/town/sanxi/view/order/NotConfirmedDetailActivity.kt b/app/src/main/java/com/casic/smart/town/sanxi/view/order/NotConfirmedDetailActivity.kt index 174e16d..cbe38c6 100644 --- a/app/src/main/java/com/casic/smart/town/sanxi/view/order/NotConfirmedDetailActivity.kt +++ b/app/src/main/java/com/casic/smart/town/sanxi/view/order/NotConfirmedDetailActivity.kt @@ -291,7 +291,7 @@ .setFilterMinFileSize(100) .setMaxSelectNum(3) .isDisplayCamera(false) - .setImageEngine(GlideLoadEngine.instance) + .setImageEngine(GlideLoadEngine.get) .forResult(object : OnResultCallbackListener { override fun onResult(result: ArrayList?) { if (result == null) { diff --git a/app/src/main/res/layout/fragment_more.xml b/app/src/main/res/layout/fragment_more.xml index b244616..eaa589f 100644 --- a/app/src/main/res/layout/fragment_more.xml +++ b/app/src/main/res/layout/fragment_more.xml @@ -21,7 +21,7 @@ android:layout_height="match_parent" android:layout_centerInParent="true" android:gravity="center" - android:text="我的" + android:text="更多" android:textColor="@color/white" android:textSize="@dimen/sp_18" />