diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_nearby.xml b/app/src/main/res/layout/fragment_add_device_nearby.xml
deleted file mode 100644
index 6731e69..0000000
--- a/app/src/main/res/layout/fragment_add_device_nearby.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_nearby.xml b/app/src/main/res/layout/fragment_add_device_nearby.xml
deleted file mode 100644
index 6731e69..0000000
--- a/app/src/main/res/layout/fragment_add_device_nearby.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_scan.xml b/app/src/main/res/layout/fragment_add_device_scan.xml
deleted file mode 100644
index ba1566f..0000000
--- a/app/src/main/res/layout/fragment_add_device_scan.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_nearby.xml b/app/src/main/res/layout/fragment_add_device_nearby.xml
deleted file mode 100644
index 6731e69..0000000
--- a/app/src/main/res/layout/fragment_add_device_nearby.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_scan.xml b/app/src/main/res/layout/fragment_add_device_scan.xml
deleted file mode 100644
index ba1566f..0000000
--- a/app/src/main/res/layout/fragment_add_device_scan.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_type.xml b/app/src/main/res/layout/fragment_add_device_type.xml
deleted file mode 100644
index b9762d4..0000000
--- a/app/src/main/res/layout/fragment_add_device_type.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_nearby.xml b/app/src/main/res/layout/fragment_add_device_nearby.xml
deleted file mode 100644
index 6731e69..0000000
--- a/app/src/main/res/layout/fragment_add_device_nearby.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_scan.xml b/app/src/main/res/layout/fragment_add_device_scan.xml
deleted file mode 100644
index ba1566f..0000000
--- a/app/src/main/res/layout/fragment_add_device_scan.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_type.xml b/app/src/main/res/layout/fragment_add_device_type.xml
deleted file mode 100644
index b9762d4..0000000
--- a/app/src/main/res/layout/fragment_add_device_type.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_device_fireplace_control.xml b/app/src/main/res/layout/fragment_device_fireplace_control.xml
index c337fa7..2b7fdc0 100644
--- a/app/src/main/res/layout/fragment_device_fireplace_control.xml
+++ b/app/src/main/res/layout/fragment_device_fireplace_control.xml
@@ -23,7 +23,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textColor="@color/black"
android:textSize="@dimen/sp_14" />
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_nearby.xml b/app/src/main/res/layout/fragment_add_device_nearby.xml
deleted file mode 100644
index 6731e69..0000000
--- a/app/src/main/res/layout/fragment_add_device_nearby.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_scan.xml b/app/src/main/res/layout/fragment_add_device_scan.xml
deleted file mode 100644
index ba1566f..0000000
--- a/app/src/main/res/layout/fragment_add_device_scan.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_type.xml b/app/src/main/res/layout/fragment_add_device_type.xml
deleted file mode 100644
index b9762d4..0000000
--- a/app/src/main/res/layout/fragment_add_device_type.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_device_fireplace_control.xml b/app/src/main/res/layout/fragment_device_fireplace_control.xml
index c337fa7..2b7fdc0 100644
--- a/app/src/main/res/layout/fragment_device_fireplace_control.xml
+++ b/app/src/main/res/layout/fragment_device_fireplace_control.xml
@@ -23,7 +23,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textColor="@color/black"
android:textSize="@dimen/sp_14" />
diff --git a/app/src/main/res/layout/fragment_device_rangehood_control.xml b/app/src/main/res/layout/fragment_device_rangehood_control.xml
index c621a26..def7bfe 100644
--- a/app/src/main/res/layout/fragment_device_rangehood_control.xml
+++ b/app/src/main/res/layout/fragment_device_rangehood_control.xml
@@ -25,7 +25,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textSize="@dimen/sp_16" />
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_nearby.xml b/app/src/main/res/layout/fragment_add_device_nearby.xml
deleted file mode 100644
index 6731e69..0000000
--- a/app/src/main/res/layout/fragment_add_device_nearby.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_scan.xml b/app/src/main/res/layout/fragment_add_device_scan.xml
deleted file mode 100644
index ba1566f..0000000
--- a/app/src/main/res/layout/fragment_add_device_scan.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_type.xml b/app/src/main/res/layout/fragment_add_device_type.xml
deleted file mode 100644
index b9762d4..0000000
--- a/app/src/main/res/layout/fragment_add_device_type.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_device_fireplace_control.xml b/app/src/main/res/layout/fragment_device_fireplace_control.xml
index c337fa7..2b7fdc0 100644
--- a/app/src/main/res/layout/fragment_device_fireplace_control.xml
+++ b/app/src/main/res/layout/fragment_device_fireplace_control.xml
@@ -23,7 +23,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textColor="@color/black"
android:textSize="@dimen/sp_14" />
diff --git a/app/src/main/res/layout/fragment_device_rangehood_control.xml b/app/src/main/res/layout/fragment_device_rangehood_control.xml
index c621a26..def7bfe 100644
--- a/app/src/main/res/layout/fragment_device_rangehood_control.xml
+++ b/app/src/main/res/layout/fragment_device_rangehood_control.xml
@@ -25,7 +25,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textSize="@dimen/sp_16" />
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_nearby.xml b/app/src/main/res/layout/fragment_add_device_nearby.xml
deleted file mode 100644
index 6731e69..0000000
--- a/app/src/main/res/layout/fragment_add_device_nearby.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_scan.xml b/app/src/main/res/layout/fragment_add_device_scan.xml
deleted file mode 100644
index ba1566f..0000000
--- a/app/src/main/res/layout/fragment_add_device_scan.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_type.xml b/app/src/main/res/layout/fragment_add_device_type.xml
deleted file mode 100644
index b9762d4..0000000
--- a/app/src/main/res/layout/fragment_add_device_type.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_device_fireplace_control.xml b/app/src/main/res/layout/fragment_device_fireplace_control.xml
index c337fa7..2b7fdc0 100644
--- a/app/src/main/res/layout/fragment_device_fireplace_control.xml
+++ b/app/src/main/res/layout/fragment_device_fireplace_control.xml
@@ -23,7 +23,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textColor="@color/black"
android:textSize="@dimen/sp_14" />
diff --git a/app/src/main/res/layout/fragment_device_rangehood_control.xml b/app/src/main/res/layout/fragment_device_rangehood_control.xml
index c621a26..def7bfe 100644
--- a/app/src/main/res/layout/fragment_device_rangehood_control.xml
+++ b/app/src/main/res/layout/fragment_device_rangehood_control.xml
@@ -25,7 +25,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textSize="@dimen/sp_16" />
diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml
index a90f2df..cf0fccb 100644
--- a/app/src/main/res/layout/fragment_home.xml
+++ b/app/src/main/res/layout/fragment_home.xml
@@ -47,8 +47,7 @@
diff --git a/app/build.gradle b/app/build.gradle
index 9f1b98d..3c8537f 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,3 +1,5 @@
+import java.text.SimpleDateFormat
+
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
@@ -42,7 +44,7 @@
applicationVariants.all { variant ->
variant.outputs.all {
- outputFileName = defaultConfig.versionName + ".apk"
+ outputFileName = getBuildDate() + ".apk"
}
}
@@ -51,6 +53,11 @@
}
}
+static def getBuildDate() {
+ SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMddHHMM", Locale.CHINA)
+ return dateFormat.format(System.currentTimeMillis())
+}
+
dependencies {
//基础依赖库
implementation files('libs/lite-release.aar')
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1cc04ea..d117c43 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -61,7 +61,7 @@
-
+
diff --git a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
index f568db4..82b1a87 100644
--- a/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
+++ b/app/src/main/java/com/casic/br/fragment/HomePageFragment.kt
@@ -6,6 +6,7 @@
import com.casic.br.R
import com.casic.br.adapter.ConnectGridAdapter
import com.casic.br.adapter.HomeGridAdapter
+import com.casic.br.extensions.combineImagePath
import com.casic.br.extensions.initLayoutImmersionBar
import com.casic.br.model.BannerImageModel
import com.casic.br.utils.DeserializeModel
@@ -117,7 +118,7 @@
}
private fun initBanner() {
- bannerViewModel.obtainBanner("")
+ bannerViewModel.obtainBanner("", "1")
bannerViewModel.listModel.observe(this, {
if (it.code == 200) {
val banner = homeBannerView as Banner {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -63,10 +70,18 @@
IconTextGridAdapter.OnGridItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
- 3 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 3 -> {
+ "此功能待后续完善".show(requireContext())
+ }
}
}
})
@@ -85,9 +100,15 @@
IconTextListAdapter.OnListItemClickListener {
override fun onItemClick(position: Int) {
when (position) {
- 0 -> {}
- 1 -> {}
- 2 -> {}
+ 0 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 1 -> {
+ "此功能待后续完善".show(requireContext())
+ }
+ 2 -> {
+ "此功能待后续完善".show(requireContext())
+ }
//地址管理
3 -> {
if (DeserializeModel.isLogin()) {
diff --git a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt b/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
deleted file mode 100644
index 2c6d74a..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/DeviceTypeFragment.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.adapter.DeviceTypeAdapter
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_type.*
-
-class DeviceTypeFragment : KotlinBaseFragment() {
-
- private val kTag = "DeviceTypeFragment"
- private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_type
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- val deviceTypeAdapter =
- DeviceTypeAdapter(requireContext(), deviceTypes)
- deviceTypeRecyclerView.adapter = deviceTypeAdapter
- deviceTypeAdapter.setOnTypeItemClickListener(object :
- DeviceTypeAdapter.OnTypeItemClickListener {
- override fun onItemClick(position: Int) {
- Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
deleted file mode 100644
index e2b403b..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/NearbyDeviceFragment.kt
+++ /dev/null
@@ -1,70 +0,0 @@
-package com.casic.br.fragment.add
-
-import android.util.Log
-import com.casic.br.R
-import com.casic.br.widgets.WaterRippleView
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-import kotlinx.android.synthetic.main.fragment_add_device_nearby.*
-import java.util.concurrent.ExecutorService
-import java.util.concurrent.Executors
-
-class NearbyDeviceFragment : KotlinBaseFragment() {
-
- private val kTag = "NearbyDeviceFragment"
- private var isRunning = true
- private lateinit var singleThreadExecutor: ExecutorService
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_nearby
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
- //只有一个核心线程,当被占用时,其他的任务需要进入队列等待
- singleThreadExecutor = Executors.newSingleThreadExecutor()
- }
-
- override fun initEvent() {
- waterRippleView.setOnAnimationStartListener(object :
- WaterRippleView.OnAnimationStartListener {
- override fun onStart(view: WaterRippleView?) {
- view?.start()
- //开启线程搜索设备
- Log.d(kTag, "onStart: 开始线程")
- singleThreadExecutor.execute(searchRunnable)
- isRunning = true
- }
- })
- }
-
- private val searchRunnable = Runnable {
- while (true) {
- try {
- if (!isRunning) {
- Log.d(kTag, "run: 设备搜索线程休眠中...")
- Thread.sleep(Long.MAX_VALUE)
- }
- } catch (e: Exception) {
- e.printStackTrace()
- }
- Log.d(kTag, "run: 设备搜索线程运行中...")
- try {
- //搜索设备
- Thread.sleep(1000)
- } catch (e: InterruptedException) {
- e.printStackTrace()
- }
- }
- }
-
- override fun onPause() {
- super.onPause()
- isRunning = false
- waterRippleView.stop()
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt b/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
deleted file mode 100644
index 14c7411..0000000
--- a/app/src/main/java/com/casic/br/fragment/add/ScanDeviceFragment.kt
+++ /dev/null
@@ -1,25 +0,0 @@
-package com.casic.br.fragment.add
-
-import com.casic.br.R
-import com.pengxh.kt.lite.base.KotlinBaseFragment
-
-class ScanDeviceFragment : KotlinBaseFragment() {
-
- override fun initLayoutView(): Int = R.layout.fragment_add_device_scan
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
-
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
-
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/model/UserDetailModel.java b/app/src/main/java/com/casic/br/model/UserDetailModel.java
index cca5690..ea50d54 100644
--- a/app/src/main/java/com/casic/br/model/UserDetailModel.java
+++ b/app/src/main/java/com/casic/br/model/UserDetailModel.java
@@ -64,7 +64,7 @@
private String positionLng;
private String roleId;
private String salt;
- private Integer sex;
+ private String sex;
private String status;
private String syncDeptid;
private String syncId;
@@ -266,11 +266,11 @@
this.salt = salt;
}
- public Integer getSex() {
+ public String getSex() {
return sex;
}
- public void setSex(Integer sex) {
+ public void setSex(String sex) {
this.sex = sex;
}
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
index 40b71c3..1dc6fb1 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitService.kt
@@ -104,7 +104,10 @@
*/
@Multipart
@POST("/file/uploadFile")
- suspend fun uploadImage(@Part file: MultipartBody.Part): String
+ suspend fun uploadImage(
+ @Header("token") token: String,
+ @Part file: MultipartBody.Part
+ ): String
/**
* 添加设备
diff --git a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
index 4baebdb..9a0d747 100644
--- a/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/br/utils/retrofit/RetrofitServiceManager.kt
@@ -196,9 +196,10 @@
/**
* Banner
*/
- suspend fun obtainBanner(bannerName: String): String {
+ suspend fun obtainBanner(bannerName: String, bannerModule: String): String {
val paramObject = JSONObject()
paramObject.put("bannerName", bannerName)
+ paramObject.put("bannerModule", bannerModule)
val requestBody = paramObject.toString().toRequestBody(
"application/json;charset=UTF-8".toMediaType()
)
@@ -217,7 +218,7 @@
suspend fun uploadImage(image: File): String {
val requestBody = image.asRequestBody("image/jpeg".toMediaTypeOrNull())
val imagePart = MultipartBody.Part.createFormData("file", image.name, requestBody)
- return api.uploadImage(imagePart)
+ return api.uploadImage(AuthenticationHelper.token!!,imagePart)
}
/**
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
index 210a258..8f652b2 100644
--- a/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
+++ b/app/src/main/java/com/casic/br/view/AddDeviceActivity.kt
@@ -35,7 +35,7 @@
}
notIotDevice.setOnClickListener {
- navigatePageTo()
+ navigatePageTo()
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt b/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
deleted file mode 100644
index 2239c9d..0000000
--- a/app/src/main/java/com/casic/br/view/AddDeviceTabActivity.kt
+++ /dev/null
@@ -1,92 +0,0 @@
-package com.casic.br.view
-
-import android.view.MenuItem
-import androidx.fragment.app.Fragment
-import androidx.viewpager.widget.ViewPager
-import com.casic.br.R
-import com.casic.br.adapter.ViewPagerAdapter
-import com.casic.br.extensions.initLayoutImmersionBar
-import com.casic.br.fragment.add.DeviceTypeFragment
-import com.casic.br.fragment.add.NearbyDeviceFragment
-import com.casic.br.fragment.add.ScanDeviceFragment
-import com.gyf.immersionbar.ImmersionBar
-import com.pengxh.kt.lite.base.KotlinBaseActivity
-import kotlinx.android.synthetic.main.activity_add_device_tab.*
-import kotlinx.android.synthetic.main.include_left_back_title.*
-
-/**
- * 添加非IoT设备
- * */
-class AddDeviceTabActivity : KotlinBaseActivity() {
-
- private var menuItem: MenuItem? = null
- private var fragmentPages: ArrayList = ArrayList()
-
- init {
- fragmentPages.add(ScanDeviceFragment())
- fragmentPages.add(DeviceTypeFragment())
- fragmentPages.add(NearbyDeviceFragment())
- }
-
- override fun initLayoutView(): Int = R.layout.activity_add_device_tab
-
- override fun observeRequestState() {
-
- }
-
- override fun setupTopBarLayout() {
- ImmersionBar.with(this).statusBarDarkFont(true).init()
- initLayoutImmersionBar(rootView)
- leftBackView.setOnClickListener { finish() }
- titleView.text = "扫码添加设备"
- }
-
- override fun initData() {
-
- }
-
- override fun initEvent() {
- bottomNavigation.setOnItemSelectedListener { menuItem ->
- when (menuItem.itemId) {
- R.id.nav_scan -> {
- addDeviceViewPager.currentItem = 0
- titleView.text = "扫码添加设备"
- }
- R.id.nav_type -> {
- addDeviceViewPager.currentItem = 1
- titleView.text = "按型号添加设备"
- }
- R.id.nav_nearby -> {
- addDeviceViewPager.currentItem = 2
- titleView.text = "附近设备"
- }
- }
- false
- }
- addDeviceViewPager.adapter = ViewPagerAdapter(fragmentPages, supportFragmentManager)
- addDeviceViewPager.offscreenPageLimit = fragmentPages.size //缓存页数
- addDeviceViewPager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
- override fun onPageScrollStateChanged(state: Int) {
-
- }
-
- override fun onPageScrolled(
- position: Int,
- positionOffset: Float,
- positionOffsetPixels: Int
- ) {
-
- }
-
- override fun onPageSelected(position: Int) {
- if (menuItem != null) {
- menuItem!!.isChecked = false
- } else {
- bottomNavigation.menu.getItem(0).isChecked = false
- }
- menuItem = bottomNavigation.menu.getItem(position)
- menuItem!!.isChecked = true
- }
- })
- }
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
new file mode 100644
index 0000000..f89d526
--- /dev/null
+++ b/app/src/main/java/com/casic/br/view/AddNoIotDeviceActivity.kt
@@ -0,0 +1,47 @@
+package com.casic.br.view
+
+import android.util.Log
+import com.casic.br.R
+import com.casic.br.adapter.DeviceTypeAdapter
+import com.casic.br.extensions.initLayoutImmersionBar
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import kotlinx.android.synthetic.main.activity_add_no_iot_device.*
+import kotlinx.android.synthetic.main.include_left_back_title.*
+
+/**
+ * 添加非IoT设备
+ * */
+class AddNoIotDeviceActivity : KotlinBaseActivity() {
+
+ private val kTag = "DeviceTypeFragment"
+ private val deviceTypes = arrayOf("热水器", "油烟机", "厨灶具", "其他产品")
+
+ override fun initLayoutView(): Int = R.layout.activity_add_no_iot_device
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ leftBackView.setOnClickListener { finish() }
+ titleView.text = String.format("添加非Iot设备")
+ }
+
+ override fun initData() {
+
+ }
+
+ override fun initEvent() {
+ val deviceTypeAdapter = DeviceTypeAdapter(this, deviceTypes)
+ deviceTypeRecyclerView.adapter = deviceTypeAdapter
+ deviceTypeAdapter.setOnTypeItemClickListener(object :
+ DeviceTypeAdapter.OnTypeItemClickListener {
+ override fun onItemClick(position: Int) {
+ Log.d(kTag, "onItemClick: ${deviceTypes[position]}")
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/view/EditUserActivity.kt b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
index a64fdde..8beba94 100644
--- a/app/src/main/java/com/casic/br/view/EditUserActivity.kt
+++ b/app/src/main/java/com/casic/br/view/EditUserActivity.kt
@@ -73,7 +73,11 @@
}
userNameView.text = currentUser.name
userPhoneView.text = currentUser.phone
- genderView.text = LocaleConstant.GENDER_ARRAY[currentUser.sex - 1]
+ if (currentUser.sex.isBlank()) {
+ genderView.text = resources.getString(R.string.unknown)
+ } else {
+ genderView.text = LocaleConstant.GENDER_ARRAY[(currentUser.sex).toInt() - 1]
+ }
birthdayView.text = currentUser.birthday
calculateCompleteValue()
}
@@ -209,7 +213,7 @@
.setOnActionSheetListener(object : BottomActionSheet.OnActionSheetListener {
override fun onActionItemClick(position: Int) {
//更新性别
- currentUser.sex = position + 1
+ currentUser.sex = (position + 1).toString()
userViewModel.updateUserInfo(currentUser)
genderView.text = LocaleConstant.GENDER_ARRAY[position]
calculateCompleteValue()
diff --git a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
index 1d3f0ca..bf6f887 100644
--- a/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
+++ b/app/src/main/java/com/casic/br/vm/BannerViewModel.kt
@@ -17,8 +17,8 @@
private val gson by lazy { Gson() }
val listModel = MutableLiveData()
- fun obtainBanner(bannerName: String) = launch({
- val response = RetrofitServiceManager.obtainBanner(bannerName)
+ fun obtainBanner(bannerName: String, bannerModule: String) = launch({
+ val response = RetrofitServiceManager.obtainBanner(bannerName, bannerModule)
val responseCode = response.separateResponseCode()
if (responseCode == 200) {
listModel.value = gson.fromJson(
diff --git a/app/src/main/res/drawable/ic_scan.xml b/app/src/main/res/drawable/ic_scan.xml
index 53f6af9..bf25454 100644
--- a/app/src/main/res/drawable/ic_scan.xml
+++ b/app/src/main/res/drawable/ic_scan.xml
@@ -1,21 +1,21 @@
diff --git a/app/src/main/res/layout/activity_add_device_tab.xml b/app/src/main/res/layout/activity_add_device_tab.xml
deleted file mode 100644
index 44c2c9c..0000000
--- a/app/src/main/res/layout/activity_add_device_tab.xml
+++ /dev/null
@@ -1,34 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_add_no_iot_device.xml b/app/src/main/res/layout/activity_add_no_iot_device.xml
new file mode 100644
index 0000000..d78c4b2
--- /dev/null
+++ b/app/src/main/res/layout/activity_add_no_iot_device.xml
@@ -0,0 +1,83 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_gas_consume.xml b/app/src/main/res/layout/activity_gas_consume.xml
index 2b2473a..47824ce 100644
--- a/app/src/main/res/layout/activity_gas_consume.xml
+++ b/app/src/main/res/layout/activity_gas_consume.xml
@@ -84,7 +84,8 @@
+ android:layout_weight="1"
+ android:orientation="vertical">
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_nearby.xml b/app/src/main/res/layout/fragment_add_device_nearby.xml
deleted file mode 100644
index 6731e69..0000000
--- a/app/src/main/res/layout/fragment_add_device_nearby.xml
+++ /dev/null
@@ -1,39 +0,0 @@
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_scan.xml b/app/src/main/res/layout/fragment_add_device_scan.xml
deleted file mode 100644
index ba1566f..0000000
--- a/app/src/main/res/layout/fragment_add_device_scan.xml
+++ /dev/null
@@ -1,49 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_add_device_type.xml b/app/src/main/res/layout/fragment_add_device_type.xml
deleted file mode 100644
index b9762d4..0000000
--- a/app/src/main/res/layout/fragment_add_device_type.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_device_fireplace_control.xml b/app/src/main/res/layout/fragment_device_fireplace_control.xml
index c337fa7..2b7fdc0 100644
--- a/app/src/main/res/layout/fragment_device_fireplace_control.xml
+++ b/app/src/main/res/layout/fragment_device_fireplace_control.xml
@@ -23,7 +23,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textColor="@color/black"
android:textSize="@dimen/sp_14" />
diff --git a/app/src/main/res/layout/fragment_device_rangehood_control.xml b/app/src/main/res/layout/fragment_device_rangehood_control.xml
index c621a26..def7bfe 100644
--- a/app/src/main/res/layout/fragment_device_rangehood_control.xml
+++ b/app/src/main/res/layout/fragment_device_rangehood_control.xml
@@ -25,7 +25,7 @@
android:layout_height="wrap_content"
android:layout_weight="1"
android:fontFamily="sans-serif-medium"
- android:text="开机"
+ android:text="开关"
android:textSize="@dimen/sp_16" />
diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml
index a90f2df..cf0fccb 100644
--- a/app/src/main/res/layout/fragment_home.xml
+++ b/app/src/main/res/layout/fragment_home.xml
@@ -47,8 +47,7 @@
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 419262f..f02cd4e 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -28,6 +28,7 @@
115dp
125dp
200dp
+ 220dp
300dp