浏览代码

新增便签留言显示

weizhengliang 1 年之前
父节点
当前提交
26a051eb72
共有 20 个文件被更改,包括 421 次插入9 次删除
  1. 14 3
      android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/activity/NurseHomeActivity.kt
  2. 74 0
      android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/adapter/MessageAdapter.kt
  3. 1 0
      android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/di/NurseHomeComponent.kt
  4. 125 0
      android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/fragment/MessageFragment.kt
  5. 4 0
      android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/util/TimeTransition.kt
  6. 13 0
      android_host/src/main/h10_wke_1h/res/layout-land/activity_nurse_home.xml
  7. 13 0
      android_host/src/main/h10_wke_1h/res/layout/activity_nurse_home.xml
  8. 52 0
      android_host/src/main/h10_wke_1h/res/layout/adapter_message_item.xml
  9. 21 0
      android_host/src/main/h10_wke_1h/res/layout/fragment_message.xml
  10. 3 0
      middleware/src/main/code/com/wdkl/ncs/android/middleware/api/DeviceApi.kt
  11. 2 0
      middleware/src/main/code/com/wdkl/ncs/android/middleware/di/PresenterComponent.kt
  12. 19 0
      middleware/src/main/code/com/wdkl/ncs/android/middleware/logic/contract/nursehome/MessageContract.kt
  13. 66 0
      middleware/src/main/code/com/wdkl/ncs/android/middleware/logic/presenter/nursehome/MessagePresenter.kt
  14. 5 6
      middleware/src/main/code/com/wdkl/ncs/android/middleware/model/dos/RemarkDO.java
  15. 5 0
      resource/src/main/res/drawable/ic_message.xml
  16. 二进制
      resource/src/main/res/mipmap-mdpi/ic_note_message.png
  17. 1 0
      resource/src/main/res/values-es/strings.xml
  18. 1 0
      resource/src/main/res/values-ru/strings.xml
  19. 1 0
      resource/src/main/res/values-zh/strings.xml
  20. 1 0
      resource/src/main/res/values/strings.xml

+ 14 - 3
android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/activity/NurseHomeActivity.kt

@@ -1011,6 +1011,7 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
         system_settings_radio_bt.setOnClickListener(this)
         system_settings_radio_bt.setOnClickListener(this)
         led_settings_radio_bt.setOnClickListener(this)
         led_settings_radio_bt.setOnClickListener(this)
         nb_device_radio_bt.setOnClickListener(this)
         nb_device_radio_bt.setOnClickListener(this)
+        note_message_radio_bt.setOnClickListener(this)
 
 
         //home_view_btn_reload.isEnabled = false
         //home_view_btn_reload.isEnabled = false
         home_view_btn_reload.setOnClickListener {
         home_view_btn_reload.setOnClickListener {
@@ -1226,8 +1227,10 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
             Constants.media_ip = data.mediaLocalIp
             Constants.media_ip = data.mediaLocalIp
         }
         }
 
 
-        currentFragment = FramePartFragment()
-        supportFragmentManager.beginTransaction().replace(R.id.middle_fralyout, currentFragment, "").commitAllowingStateLoss()
+        if (currentFragment == null) {
+            currentFragment = FramePartFragment()
+            supportFragmentManager.beginTransaction().replace(R.id.middle_fralyout, currentFragment, "").commitAllowingStateLoss()
+        }
 
 
         //通过服务端设置语言
         //通过服务端设置语言
         if (SettingConfig.getLanguageMode(activity) == 0) {
         if (SettingConfig.getLanguageMode(activity) == 0) {
@@ -1464,6 +1467,12 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
                    select_id = 11
                    select_id = 11
                }
                }
            }
            }
+           R.id.note_message_radio_bt -> {
+               if (select_id != 12) {
+                   showMiddleFragment(MessageFragment())
+                   select_id = 12
+               }
+           }
        }
        }
     }
     }
 
 
@@ -1471,7 +1480,9 @@ class NurseHomeActivity  : BaseActivity<NurseHomeActivityPresenter, ActivityNurs
     //显示中间主界面
     //显示中间主界面
     fun showMiddleFragment(fragment: Fragment) {
     fun showMiddleFragment(fragment: Fragment) {
         supportFragmentManager.inTransaction {
         supportFragmentManager.inTransaction {
-            remove(currentFragment)
+            if (currentFragment != null) {
+                remove(currentFragment)
+            }
             currentFragment = fragment
             currentFragment = fragment
             if(currentFragmentTwo != null){
             if(currentFragmentTwo != null){
                 remove(currentFragmentTwo)
                 remove(currentFragmentTwo)

+ 74 - 0
android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/adapter/MessageAdapter.kt

@@ -0,0 +1,74 @@
+package com.wdkl.ncs.android.component.nursehome.adapter
+
+import android.util.Log
+import android.view.ViewGroup
+import com.alibaba.android.vlayout.LayoutHelper
+import com.alibaba.android.vlayout.layout.GridLayoutHelper
+import com.wdkl.ncs.android.component.nursehome.R
+import com.wdkl.ncs.android.component.nursehome.databinding.AdapterMessageItemBinding
+import com.wdkl.ncs.android.component.nursehome.util.TimeTransition
+import com.wdkl.ncs.android.lib.adapter.BaseDelegateAdapter
+import com.wdkl.ncs.android.lib.utils.BaseRecyclerViewHolder
+import com.wdkl.ncs.android.lib.utils.then
+import com.wdkl.ncs.android.middleware.model.dos.RemarkDO
+
+class MessageAdapter (val data:ArrayList<RemarkDO>) : BaseDelegateAdapter<BaseRecyclerViewHolder<AdapterMessageItemBinding>, RemarkDO>(){
+    /**
+     * 数据提供者
+     */
+    override fun dataProvider(): Any {
+        return data
+    }
+    /**
+     * Item坐标
+     */
+    override fun itemFilter(position: Int): Boolean {
+        return true
+    }
+    /**
+     * 获取Item总数
+     */
+    override fun getItemCount(): Int {
+        return data.size
+    }
+
+    /**
+     * 创建LayoutHelper
+     */
+    override fun onCreateLayoutHelper(): LayoutHelper {
+        return GridLayoutHelper(1).then {
+            self ->
+            /**取消自动填充*/
+            self.setAutoExpand(false)
+
+            /**设置左右间距*/
+            self.hGap = 10
+
+            /**设置上下间距*/
+            self.vGap = 10
+
+            /**设置Margin*/
+            self.setMargin(0,0,0,0)
+        }
+
+    }
+
+    /**
+     * 创建ViewHolder
+     */
+    override fun onCreateViewHolder(parent: ViewGroup, viewType: Int): BaseRecyclerViewHolder<AdapterMessageItemBinding> {
+        return BaseRecyclerViewHolder.build(parent, R.layout.adapter_message_item)
+    }
+
+    /**
+     * 绑定数据
+     */
+    override fun onBindViewHolder(holder: BaseRecyclerViewHolder<AdapterMessageItemBinding>?, position: Int) {
+        holder?.bind { binding ->
+            val itemData = getItem(position)
+            binding.tvMessageContent.text = itemData.content
+            binding.tvMessageTime.text = TimeTransition.stampToYearDateTime(itemData.createTime * 1000)
+        }
+    }
+
+}

+ 1 - 0
android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/di/NurseHomeComponent.kt

@@ -29,4 +29,5 @@ interface NurseHomeComponent{
     fun inject(fragment: SystemSettingsFragment)
     fun inject(fragment: SystemSettingsFragment)
     fun inject(fragment: CallRecordsFragment)
     fun inject(fragment: CallRecordsFragment)
     fun inject(fragment: TestFragment)
     fun inject(fragment: TestFragment)
+    fun inject(fragment: MessageFragment)
 }
 }

+ 125 - 0
android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/fragment/MessageFragment.kt

@@ -0,0 +1,125 @@
+package com.wdkl.ncs.android.component.nursehome.fragment
+
+import android.util.Log
+import com.alibaba.android.vlayout.DelegateAdapter
+import com.alibaba.android.vlayout.VirtualLayoutManager
+import com.enation.javashop.net.engine.model.NetState
+import com.scwang.smartrefresh.layout.footer.ClassicsFooter
+import com.wdkl.ncs.android.component.nursehome.R
+import com.wdkl.ncs.android.component.nursehome.adapter.MessageAdapter
+import com.wdkl.ncs.android.component.nursehome.databinding.FragmentMessageBinding
+import com.wdkl.ncs.android.component.nursehome.launch.NurseHomeLaunch
+import com.wdkl.ncs.android.lib.base.BaseFragment
+import com.wdkl.ncs.android.lib.utils.showMessage
+import com.wdkl.ncs.android.middleware.common.Constants
+import com.wdkl.ncs.android.middleware.logic.contract.nursehome.MessageContract
+import com.wdkl.ncs.android.middleware.logic.presenter.nursehome.MessagePresenter
+import com.wdkl.ncs.android.middleware.model.dos.RemarkDO
+import com.wdkl.ncs.android.middleware.utils.MessageEvent
+import kotlinx.android.synthetic.main.fragment_message.*
+import org.greenrobot.eventbus.Subscribe
+import org.greenrobot.eventbus.ThreadMode
+
+class MessageFragment : BaseFragment<MessagePresenter, FragmentMessageBinding>(), MessageContract.View {
+    var TAG = MessageFragment::class.java.getSimpleName()
+
+    private lateinit var virtualLayoutManager: VirtualLayoutManager
+    private lateinit var delegateAdapter: DelegateAdapter
+
+    private var messageAdapter: MessageAdapter? = null
+
+    /**
+     * 提供layoutID
+     */
+    override fun getLayId(): Int {
+        return R.layout.fragment_message
+    }
+
+    /**
+     *初始化依赖注入
+     */
+    override fun bindDagger() {
+        NurseHomeLaunch.component.inject(this)
+    }
+
+    /**
+     *初始化操作
+     */
+    override fun init() {
+        /**初始化LayoutMannager*/
+        virtualLayoutManager = VirtualLayoutManager(this.activity)
+        /**初始化适配器*/
+        delegateAdapter = DelegateAdapter(virtualLayoutManager)
+
+        messageAdapter = MessageAdapter(ArrayList())
+        delegateAdapter.addAdapter(messageAdapter)
+        message_refresh.setRefreshFooter(ClassicsFooter(activity))
+
+        /**配置到RecycleView*/
+        rv_messages.layoutManager = virtualLayoutManager
+        rv_messages.adapter = delegateAdapter
+
+        if (Constants.part_id != -1) {
+            presenter.loadMessage(Constants.part_id)
+        }
+    }
+
+    /**
+     *绑定事件
+     */
+    override fun bindEvent() {
+        message_refresh.setOnRefreshListener {
+            if (Constants.part_id != -1) {
+                presenter.loadMessage(Constants.part_id)
+            }
+        }
+    }
+
+    /**
+     *页面销毁回调
+     */
+    override fun destory() {
+    }
+
+    override fun showMessages(data: ArrayList<RemarkDO>) {
+        message_refresh.finishRefresh()
+
+        messageAdapter!!.data.clear()
+        if (data.size > 0) {
+            messageAdapter!!.data.addAll(data)
+        }
+        messageAdapter!!.notifyDataSetChanged()
+    }
+
+    /**
+     *处理错误信息
+     */
+    override fun onError(message: String, type: Int) {
+        message_refresh.finishRefresh()
+
+        //messageAdapter!!.data.clear()
+        //messageAdapter!!.notifyDataSetChanged()
+    }
+
+    /**
+     *耗时加载完成
+     */
+    override fun complete(message: String, type: Int) {
+    }
+
+    /**
+     *耗时加载开始
+     */
+    override fun start() {
+    }
+
+    /**
+     *处理网络状态
+     */
+    override fun networkMonitor(state: NetState) {
+    }
+
+    @Subscribe(threadMode = ThreadMode.MAIN)
+    fun onMoonEvent(messageEvent: MessageEvent) {
+    }
+}

+ 4 - 0
android_host/src/main/h10_wke_1h/java/com/wdkl/ncs/android/component/nursehome/util/TimeTransition.kt

@@ -23,6 +23,10 @@ object TimeTransition {
         return TimeStampToTime(s,"MM-dd HH:mm:ss")
         return TimeStampToTime(s,"MM-dd HH:mm:ss")
     }
     }
 
 
+    fun stampToYearDateTime(s:Long):String{
+        return TimeStampToTime(s,"yyyy-MM-dd HH:mm:ss")
+    }
+
     /**
     /**
      * 时间戳转时间 不带时区
      * 时间戳转时间 不带时区
      */
      */

+ 13 - 0
android_host/src/main/h10_wke_1h/res/layout-land/activity_nurse_home.xml

@@ -321,6 +321,19 @@
                             android:textSize="24sp" />
                             android:textSize="24sp" />
 
 
                         <com.wdkl.ncs.android.lib.widget.CustomRadioButton
                         <com.wdkl.ncs.android.lib.widget.CustomRadioButton
+                            android:id="@+id/note_message_radio_bt"
+                            android:layout_width="wrap_content"
+                            android:layout_height="match_parent"
+                            android:layout_weight="1"
+                            android:button="@null"
+                            android:drawableLeft="@drawable/ic_message"
+                            android:drawablePadding="10dp"
+                            android:gravity="center"
+                            android:textColor="@drawable/selector_bottom_btn_text_color"
+                            android:text="@string/str_note_message"
+                            android:textSize="24sp" />
+
+                        <com.wdkl.ncs.android.lib.widget.CustomRadioButton
                             android:id="@+id/system_settings_radio_bt"
                             android:id="@+id/system_settings_radio_bt"
                             android:layout_width="wrap_content"
                             android:layout_width="wrap_content"
                             android:layout_height="match_parent"
                             android:layout_height="match_parent"

+ 13 - 0
android_host/src/main/h10_wke_1h/res/layout/activity_nurse_home.xml

@@ -320,6 +320,19 @@
                             android:textSize="24sp" />
                             android:textSize="24sp" />
 
 
                         <com.wdkl.ncs.android.lib.widget.CustomRadioButton
                         <com.wdkl.ncs.android.lib.widget.CustomRadioButton
+                            android:id="@+id/note_message_radio_bt"
+                            android:layout_width="wrap_content"
+                            android:layout_height="match_parent"
+                            android:layout_weight="1"
+                            android:button="@null"
+                            android:drawableLeft="@drawable/ic_message"
+                            android:drawablePadding="10dp"
+                            android:gravity="center"
+                            android:textColor="@drawable/selector_bottom_btn_text_color"
+                            android:text="@string/str_note_message"
+                            android:textSize="24sp" />
+
+                        <com.wdkl.ncs.android.lib.widget.CustomRadioButton
                             android:id="@+id/system_settings_radio_bt"
                             android:id="@+id/system_settings_radio_bt"
                             android:layout_width="wrap_content"
                             android:layout_width="wrap_content"
                             android:layout_height="match_parent"
                             android:layout_height="match_parent"

+ 52 - 0
android_host/src/main/h10_wke_1h/res/layout/adapter_message_item.xml

@@ -0,0 +1,52 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layout>
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:layout_marginTop="10dp"
+    android:orientation="vertical">
+
+    <LinearLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:padding="10dp">
+
+        <ImageView
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:layout_marginLeft="20dp"
+            android:layout_marginRight="20dp"
+            android:gravity="center"
+            android:src="@mipmap/ic_note_message" />
+
+        <TextView
+            android:id="@+id/tv_message_content"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_weight="4"
+            android:layout_marginLeft="20dp"
+            android:layout_marginRight="20dp"
+            android:gravity="center_vertical"
+            android:text="----"
+            android:textColor="@color/black"
+            android:textSize="24sp" />
+
+        <TextView
+            android:id="@+id/tv_message_time"
+            android:layout_width="0dp"
+            android:layout_height="wrap_content"
+            android:layout_weight="2"
+            android:layout_marginLeft="10dp"
+            android:layout_marginRight="10dp"
+            android:gravity="center"
+            android:text="--"
+            android:textSize="20sp" />
+
+    </LinearLayout>
+
+    <View
+        android:layout_width="match_parent"
+        android:layout_height="1dp"
+        android:background="#2F9DF1"/>
+</LinearLayout>
+</layout>

+ 21 - 0
android_host/src/main/h10_wke_1h/res/layout/fragment_message.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="utf-8"?>
+<layout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:bind="http://schemas.android.com/apk/res-auto">
+
+    <com.scwang.smartrefresh.layout.SmartRefreshLayout
+        android:id="@+id/message_refresh"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        bind:srlEnableLoadMore="false"
+        bind:srlEnableRefresh="true">
+
+        <android.support.v7.widget.RecyclerView
+            android:id="@+id/rv_messages"
+            android:layout_width="match_parent"
+            android:layout_height="match_parent"
+            android:background="#EAF2F9"
+            android:padding="10dp"/>
+
+    </com.scwang.smartrefresh.layout.SmartRefreshLayout>
+
+</layout>

+ 3 - 0
middleware/src/main/code/com/wdkl/ncs/android/middleware/api/DeviceApi.kt

@@ -40,4 +40,7 @@ interface DeviceApi {
     //查询低电NB Iot设备
     //查询低电NB Iot设备
     @GET("/nbdevcie/getlowbattery/{partId}")
     @GET("/nbdevcie/getlowbattery/{partId}")
     fun getNBLowBatteryDevice(@Path("partId") partId: Int): Observable<ResponseBody>
     fun getNBLowBatteryDevice(@Path("partId") partId: Int): Observable<ResponseBody>
+
+    @GET("/deviceNurse/getRemarkByPartId/{partId}")
+    fun getMessages(@Path("partId") partId: Int): Observable<ResponseBody>
 }
 }

+ 2 - 0
middleware/src/main/code/com/wdkl/ncs/android/middleware/di/PresenterComponent.kt

@@ -86,4 +86,6 @@ interface PresenterComponent {
     fun inject(presenter: IotDevicePresenter)
     fun inject(presenter: IotDevicePresenter)
 
 
     fun inject(presenter: DeviceVosPresenter)
     fun inject(presenter: DeviceVosPresenter)
+
+    fun inject(presenter: MessagePresenter)
 }
 }

+ 19 - 0
middleware/src/main/code/com/wdkl/ncs/android/middleware/logic/contract/nursehome/MessageContract.kt

@@ -0,0 +1,19 @@
+package com.wdkl.ncs.android.middleware.logic.contract.nursehome
+
+import com.wdkl.ncs.android.lib.base.BaseContract
+import com.wdkl.ncs.android.middleware.model.dos.RemarkDO
+
+
+interface MessageContract {
+
+    interface View:BaseContract.BaseView{
+        fun showMessages(data: ArrayList<RemarkDO>)
+
+    }
+
+    interface Presenter:BaseContract.BasePresenter{
+        fun loadMessage(partId: Int)
+
+    }
+
+}

+ 66 - 0
middleware/src/main/code/com/wdkl/ncs/android/middleware/logic/presenter/nursehome/MessagePresenter.kt

@@ -0,0 +1,66 @@
+package com.wdkl.ncs.android.middleware.logic.presenter.nursehome
+
+import com.enation.javashop.net.engine.plugin.connection.ConnectionQuality
+import com.enation.javashop.net.engine.plugin.exception.ExceptionHandle
+import com.enation.javashop.net.engine.utils.ThreadFromUtils
+import com.google.gson.FieldNamingPolicy
+import com.google.gson.GsonBuilder
+import com.google.gson.reflect.TypeToken
+import com.wdkl.ncs.android.lib.base.RxPresenter
+import com.wdkl.ncs.android.lib.utils.ConnectionObserver
+import com.wdkl.ncs.android.lib.utils.getJsonString
+import com.wdkl.ncs.android.middleware.api.DeviceApi
+import com.wdkl.ncs.android.middleware.di.MiddlewareDaggerComponent
+import com.wdkl.ncs.android.middleware.logic.contract.nursehome.MessageContract
+import com.wdkl.ncs.android.middleware.model.dos.RemarkDO
+import io.reactivex.disposables.Disposable
+import javax.inject.Inject
+
+class MessagePresenter@Inject constructor():RxPresenter<MessageContract.View>(), MessageContract.Presenter {
+
+    @Inject
+    protected lateinit var deviceApi: DeviceApi
+
+    override fun bindDagger() {
+        MiddlewareDaggerComponent.component.inject(this)
+    }
+
+    private val observable = object : ConnectionObserver<Any>() {
+        override fun onStartWithConnection() {
+            providerView()
+        }
+
+        override fun onNextWithConnection(result: Any, connectionQuality: ConnectionQuality) {
+            providerView().complete()
+            providerView().showMessages(result as ArrayList<RemarkDO>)
+        }
+
+        override fun onErrorWithConnection(
+            error: ExceptionHandle.ResponeThrowable,
+            connectionQuality: ConnectionQuality
+        ) {
+            providerView().onError(error.customMessage)
+        }
+
+        override fun attachSubscribe(var1: Disposable) {
+            addDisposable(var1)
+        }
+
+    }
+
+
+    override fun loadMessage(partId: Int) {
+        deviceApi.getMessages(partId)
+            .map {
+                val data = it.getJsonString()
+                val gson = GsonBuilder().setFieldNamingPolicy(FieldNamingPolicy.LOWER_CASE_WITH_UNDERSCORES).create()
+                val itemType = object : TypeToken<ArrayList<RemarkDO>>(){}.type
+                val remarkList = gson.fromJson<ArrayList<RemarkDO>>(data, itemType)
+
+                return@map remarkList
+            }
+            .compose(ThreadFromUtils.defaultSchedulers())
+            .subscribe(observable)
+    }
+
+}

+ 5 - 6
middleware/src/main/code/com/wdkl/ncs/android/middleware/model/dos/RemarkDO.java

@@ -7,11 +7,11 @@ import com.wdkl.ncs.android.middleware.model.annotation.Id;
 import com.wdkl.ncs.android.middleware.model.annotation.PrimaryKeyField;
 import com.wdkl.ncs.android.middleware.model.annotation.PrimaryKeyField;
 import com.wdkl.ncs.android.middleware.model.annotation.Table;
 import com.wdkl.ncs.android.middleware.model.annotation.Table;
 
 
-import java.io.Serializable;
-
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import io.swagger.annotations.ApiModelProperty;
 
 
+import java.io.Serializable;
+
 @Table(name = "ncs_remark")
 @Table(name = "ncs_remark")
 @ApiModel
 @ApiModel
 @JsonNaming(value = PropertyNamingStrategy.SnakeCaseStrategy.class)
 @JsonNaming(value = PropertyNamingStrategy.SnakeCaseStrategy.class)
@@ -47,7 +47,7 @@ public class RemarkDO implements Serializable {
      */
      */
     @Column(name = "type")
     @Column(name = "type")
     @ApiModelProperty(value = "备注类型。1,用户备注;2,便签", required = false)
     @ApiModelProperty(value = "备注类型。1,用户备注;2,便签", required = false)
-    private Boolean type;
+    private Integer type;
     /**
     /**
      * 用户id。用户备注时不能为空
      * 用户id。用户备注时不能为空
      */
      */
@@ -117,15 +117,14 @@ public class RemarkDO implements Serializable {
     }
     }
 
 
 
 
-    public Boolean getType() {
+    public Integer getType() {
         return type;
         return type;
     }
     }
 
 
-    public void setType(Boolean type) {
+    public void setType(Integer type) {
         this.type = type;
         this.type = type;
     }
     }
 
 
-
     public Integer getMemberId() {
     public Integer getMemberId() {
         return memberId;
         return memberId;
     }
     }

+ 5 - 0
resource/src/main/res/drawable/ic_message.xml

@@ -0,0 +1,5 @@
+<vector android:height="24dp" android:tint="#FFFFFF"
+    android:viewportHeight="24" android:viewportWidth="24"
+    android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
+    <path android:fillColor="@android:color/white" android:pathData="M20,2L4,2c-1.1,0 -1.99,0.9 -1.99,2L2,22l4,-4h14c1.1,0 2,-0.9 2,-2L22,4c0,-1.1 -0.9,-2 -2,-2zM18,14L6,14v-2h12v2zM18,11L6,11L6,9h12v2zM18,8L6,8L6,6h12v2z"/>
+</vector>

二进制
resource/src/main/res/mipmap-mdpi/ic_note_message.png


+ 1 - 0
resource/src/main/res/values-es/strings.xml

@@ -163,6 +163,7 @@
     <string name="str_manage_host">Administrar servidor</string>
     <string name="str_manage_host">Administrar servidor</string>
     <string name="str_trusteeship">Tutela</string>
     <string name="str_trusteeship">Tutela</string>
     <string name="str_led">LED</string>
     <string name="str_led">LED</string>
+    <string name="str_note_message">Message</string>
     <string name="str_nb_iot">Dispositivo IoT</string>
     <string name="str_nb_iot">Dispositivo IoT</string>
     <string name="str_offline_device">Dispositivo fuera de línea</string>
     <string name="str_offline_device">Dispositivo fuera de línea</string>
     <string name="str_low_battery_device">Bateria baja en dispositivo</string>
     <string name="str_low_battery_device">Bateria baja en dispositivo</string>

+ 1 - 0
resource/src/main/res/values-ru/strings.xml

@@ -164,6 +164,7 @@
     <string name="str_manage_host">Пульт медсестры</string>
     <string name="str_manage_host">Пульт медсестры</string>
     <string name="str_trusteeship">Доверительное управление</string>
     <string name="str_trusteeship">Доверительное управление</string>
     <string name="str_led">светодиод</string>
     <string name="str_led">светодиод</string>
+    <string name="str_note_message">Message</string>
     <string name="str_nb_iot">IoT device</string>
     <string name="str_nb_iot">IoT device</string>
     <string name="str_offline_device">Offline device</string>
     <string name="str_offline_device">Offline device</string>
     <string name="str_low_battery_device">Low battery device</string>
     <string name="str_low_battery_device">Low battery device</string>

+ 1 - 0
resource/src/main/res/values-zh/strings.xml

@@ -165,6 +165,7 @@
     <string name="str_manage_host">总控主机</string>
     <string name="str_manage_host">总控主机</string>
     <string name="str_trusteeship">托管</string>
     <string name="str_trusteeship">托管</string>
     <string name="str_led">点阵屏</string>
     <string name="str_led">点阵屏</string>
+    <string name="str_note_message">留言</string>
     <string name="str_nb_iot">IoT设备</string>
     <string name="str_nb_iot">IoT设备</string>
     <string name="str_offline_device">离线设备</string>
     <string name="str_offline_device">离线设备</string>
     <string name="str_low_battery_device">低电设备</string>
     <string name="str_low_battery_device">低电设备</string>

+ 1 - 0
resource/src/main/res/values/strings.xml

@@ -165,6 +165,7 @@
     <string name="str_manage_host">Manager Host</string>
     <string name="str_manage_host">Manager Host</string>
     <string name="str_trusteeship">Trusteeship</string>
     <string name="str_trusteeship">Trusteeship</string>
     <string name="str_led">LED</string>
     <string name="str_led">LED</string>
+    <string name="str_note_message">Message</string>
     <string name="str_nb_iot">IoT device</string>
     <string name="str_nb_iot">IoT device</string>
     <string name="str_offline_device">Offline device</string>
     <string name="str_offline_device">Offline device</string>
     <string name="str_low_battery_device">Low battery device</string>
     <string name="str_low_battery_device">Low battery device</string>