diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
new file mode 100644
index 0000000..91ad645
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
@@ -0,0 +1,100 @@
+package com.casic.app.smartwell.model
+
+class WorkOrderDetailModel {
+ /**
+ * code : 200
+ * message : success
+ * data : {"id":1,"wellId":1,"wellCode":"N51F131","wellName":"闸井名称","deep":32,"devcode":"41201802100","position":"宋郎路","coordinateX":"39.899999999","coordinateY":"116.70000000","latBaidu":"39.901694","lngBaidu":"116.709315","latGaode":"","lngGaode":"","alarmId":"1","alarmType":"1","alarmTypeName":"数据异常","alarmContent":"1","alarmContentName":"液位超限","deptid":"1","deptName":"一分公司","jobCode":"201902340484","jobStatus":"0","jobStatusName":"待处理","createTime":"2018-12-27 00:00:00","getJobPerson":"1321321","getJobTime":"2018-12-27 00:00:00","firstState":"现场情况描述","firstStatePhotos":"现场情况图片","confirmJobPerson":"1321321","confirmJobTime":"2018-12-27 00:00:00","handleJobPerson":"1321321","handleJobTime":"2018-12-27 00:00:00","handleMessage":"维护情况描述","handlePhotos":"维护图片","flow":[{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}],"editable":"1"}
+ */
+ var code = 0
+ var message: String? = null
+ var data: DataBean? = null
+
+ class DataBean {
+ /**
+ * id : 1
+ * wellId : 1
+ * wellCode : N51F131
+ * wellName : 闸井名称
+ * deep : 32
+ * devcode : 41201802100
+ * position : 宋郎路
+ * coordinateX : 39.899999999
+ * coordinateY : 116.70000000
+ * latBaidu : 39.901694
+ * lngBaidu : 116.709315
+ * latGaode :
+ * lngGaode :
+ * alarmId : 1
+ * alarmType : 1
+ * alarmTypeName : 数据异常
+ * alarmContent : 1
+ * alarmContentName : 液位超限
+ * deptid : 1
+ * deptName : 一分公司
+ * jobCode : 201902340484
+ * jobStatus : 0
+ * jobStatusName : 待处理
+ * createTime : 2018-12-27 00:00:00
+ * getJobPerson : 1321321
+ * getJobTime : 2018-12-27 00:00:00
+ * firstState : 现场情况描述
+ * firstStatePhotos : 现场情况图片
+ * confirmJobPerson : 1321321
+ * confirmJobTime : 2018-12-27 00:00:00
+ * handleJobPerson : 1321321
+ * handleJobTime : 2018-12-27 00:00:00
+ * handleMessage : 维护情况描述
+ * handlePhotos : 维护图片
+ * flow : [{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}]
+ * editable : 1
+ */
+ var id = 0
+ var wellId = 0
+ var wellCode: String? = null
+ var wellName: String? = null
+ var deep = 0
+ var devcode: String? = null
+ var position: String? = null
+ var coordinateX: String? = null
+ var coordinateY: String? = null
+ var latBaidu: String? = null
+ var lngBaidu: String? = null
+ var latGaode: String? = null
+ var lngGaode: String? = null
+ var alarmId: String? = null
+ var alarmType: String? = null
+ var alarmTypeName: String? = null
+ var alarmContent: String? = null
+ var alarmContentName: String? = null
+ var deptid: String? = null
+ var deptName: String? = null
+ var jobCode: String? = null
+ var jobStatus: String? = null
+ var jobStatusName: String? = null
+ var createTime: String? = null
+ var getJobPerson: String? = null
+ var getJobTime: String? = null
+ var firstState: String? = null
+ var firstStatePhotos: String? = null
+ var confirmJobPerson: String? = null
+ var confirmJobTime: String? = null
+ var handleJobPerson: String? = null
+ var handleJobTime: String? = null
+ var handleMessage: String? = null
+ var handlePhotos: String? = null
+ var editable: String? = null
+ var flow: List? = null
+
+ class FlowBean {
+ /**
+ * from : 张三
+ * to : 李四
+ * time : 2019-02-22-12:00:00
+ */
+ var from: String? = null
+ var to: String? = null
+ var time: String? = null
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
new file mode 100644
index 0000000..91ad645
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
@@ -0,0 +1,100 @@
+package com.casic.app.smartwell.model
+
+class WorkOrderDetailModel {
+ /**
+ * code : 200
+ * message : success
+ * data : {"id":1,"wellId":1,"wellCode":"N51F131","wellName":"闸井名称","deep":32,"devcode":"41201802100","position":"宋郎路","coordinateX":"39.899999999","coordinateY":"116.70000000","latBaidu":"39.901694","lngBaidu":"116.709315","latGaode":"","lngGaode":"","alarmId":"1","alarmType":"1","alarmTypeName":"数据异常","alarmContent":"1","alarmContentName":"液位超限","deptid":"1","deptName":"一分公司","jobCode":"201902340484","jobStatus":"0","jobStatusName":"待处理","createTime":"2018-12-27 00:00:00","getJobPerson":"1321321","getJobTime":"2018-12-27 00:00:00","firstState":"现场情况描述","firstStatePhotos":"现场情况图片","confirmJobPerson":"1321321","confirmJobTime":"2018-12-27 00:00:00","handleJobPerson":"1321321","handleJobTime":"2018-12-27 00:00:00","handleMessage":"维护情况描述","handlePhotos":"维护图片","flow":[{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}],"editable":"1"}
+ */
+ var code = 0
+ var message: String? = null
+ var data: DataBean? = null
+
+ class DataBean {
+ /**
+ * id : 1
+ * wellId : 1
+ * wellCode : N51F131
+ * wellName : 闸井名称
+ * deep : 32
+ * devcode : 41201802100
+ * position : 宋郎路
+ * coordinateX : 39.899999999
+ * coordinateY : 116.70000000
+ * latBaidu : 39.901694
+ * lngBaidu : 116.709315
+ * latGaode :
+ * lngGaode :
+ * alarmId : 1
+ * alarmType : 1
+ * alarmTypeName : 数据异常
+ * alarmContent : 1
+ * alarmContentName : 液位超限
+ * deptid : 1
+ * deptName : 一分公司
+ * jobCode : 201902340484
+ * jobStatus : 0
+ * jobStatusName : 待处理
+ * createTime : 2018-12-27 00:00:00
+ * getJobPerson : 1321321
+ * getJobTime : 2018-12-27 00:00:00
+ * firstState : 现场情况描述
+ * firstStatePhotos : 现场情况图片
+ * confirmJobPerson : 1321321
+ * confirmJobTime : 2018-12-27 00:00:00
+ * handleJobPerson : 1321321
+ * handleJobTime : 2018-12-27 00:00:00
+ * handleMessage : 维护情况描述
+ * handlePhotos : 维护图片
+ * flow : [{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}]
+ * editable : 1
+ */
+ var id = 0
+ var wellId = 0
+ var wellCode: String? = null
+ var wellName: String? = null
+ var deep = 0
+ var devcode: String? = null
+ var position: String? = null
+ var coordinateX: String? = null
+ var coordinateY: String? = null
+ var latBaidu: String? = null
+ var lngBaidu: String? = null
+ var latGaode: String? = null
+ var lngGaode: String? = null
+ var alarmId: String? = null
+ var alarmType: String? = null
+ var alarmTypeName: String? = null
+ var alarmContent: String? = null
+ var alarmContentName: String? = null
+ var deptid: String? = null
+ var deptName: String? = null
+ var jobCode: String? = null
+ var jobStatus: String? = null
+ var jobStatusName: String? = null
+ var createTime: String? = null
+ var getJobPerson: String? = null
+ var getJobTime: String? = null
+ var firstState: String? = null
+ var firstStatePhotos: String? = null
+ var confirmJobPerson: String? = null
+ var confirmJobTime: String? = null
+ var handleJobPerson: String? = null
+ var handleJobTime: String? = null
+ var handleMessage: String? = null
+ var handlePhotos: String? = null
+ var editable: String? = null
+ var flow: List? = null
+
+ class FlowBean {
+ /**
+ * from : 张三
+ * to : 李四
+ * time : 2019-02-22-12:00:00
+ */
+ var from: String? = null
+ var to: String? = null
+ var time: String? = null
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
index 75a6bd4..7cf9d3e 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
@@ -98,6 +98,15 @@
): WorkOrderListModel
/**
+ * 获取工单详情
+ */
+ @GET("/job/info")
+ suspend fun obtainWorkOrderDetail(
+ @Header("token") token: String,
+ @Query("id") id: Long
+ ): WorkOrderDetailModel
+
+ /**
* 获取用户信息
*/
@GET("/user/info")
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
new file mode 100644
index 0000000..91ad645
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
@@ -0,0 +1,100 @@
+package com.casic.app.smartwell.model
+
+class WorkOrderDetailModel {
+ /**
+ * code : 200
+ * message : success
+ * data : {"id":1,"wellId":1,"wellCode":"N51F131","wellName":"闸井名称","deep":32,"devcode":"41201802100","position":"宋郎路","coordinateX":"39.899999999","coordinateY":"116.70000000","latBaidu":"39.901694","lngBaidu":"116.709315","latGaode":"","lngGaode":"","alarmId":"1","alarmType":"1","alarmTypeName":"数据异常","alarmContent":"1","alarmContentName":"液位超限","deptid":"1","deptName":"一分公司","jobCode":"201902340484","jobStatus":"0","jobStatusName":"待处理","createTime":"2018-12-27 00:00:00","getJobPerson":"1321321","getJobTime":"2018-12-27 00:00:00","firstState":"现场情况描述","firstStatePhotos":"现场情况图片","confirmJobPerson":"1321321","confirmJobTime":"2018-12-27 00:00:00","handleJobPerson":"1321321","handleJobTime":"2018-12-27 00:00:00","handleMessage":"维护情况描述","handlePhotos":"维护图片","flow":[{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}],"editable":"1"}
+ */
+ var code = 0
+ var message: String? = null
+ var data: DataBean? = null
+
+ class DataBean {
+ /**
+ * id : 1
+ * wellId : 1
+ * wellCode : N51F131
+ * wellName : 闸井名称
+ * deep : 32
+ * devcode : 41201802100
+ * position : 宋郎路
+ * coordinateX : 39.899999999
+ * coordinateY : 116.70000000
+ * latBaidu : 39.901694
+ * lngBaidu : 116.709315
+ * latGaode :
+ * lngGaode :
+ * alarmId : 1
+ * alarmType : 1
+ * alarmTypeName : 数据异常
+ * alarmContent : 1
+ * alarmContentName : 液位超限
+ * deptid : 1
+ * deptName : 一分公司
+ * jobCode : 201902340484
+ * jobStatus : 0
+ * jobStatusName : 待处理
+ * createTime : 2018-12-27 00:00:00
+ * getJobPerson : 1321321
+ * getJobTime : 2018-12-27 00:00:00
+ * firstState : 现场情况描述
+ * firstStatePhotos : 现场情况图片
+ * confirmJobPerson : 1321321
+ * confirmJobTime : 2018-12-27 00:00:00
+ * handleJobPerson : 1321321
+ * handleJobTime : 2018-12-27 00:00:00
+ * handleMessage : 维护情况描述
+ * handlePhotos : 维护图片
+ * flow : [{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}]
+ * editable : 1
+ */
+ var id = 0
+ var wellId = 0
+ var wellCode: String? = null
+ var wellName: String? = null
+ var deep = 0
+ var devcode: String? = null
+ var position: String? = null
+ var coordinateX: String? = null
+ var coordinateY: String? = null
+ var latBaidu: String? = null
+ var lngBaidu: String? = null
+ var latGaode: String? = null
+ var lngGaode: String? = null
+ var alarmId: String? = null
+ var alarmType: String? = null
+ var alarmTypeName: String? = null
+ var alarmContent: String? = null
+ var alarmContentName: String? = null
+ var deptid: String? = null
+ var deptName: String? = null
+ var jobCode: String? = null
+ var jobStatus: String? = null
+ var jobStatusName: String? = null
+ var createTime: String? = null
+ var getJobPerson: String? = null
+ var getJobTime: String? = null
+ var firstState: String? = null
+ var firstStatePhotos: String? = null
+ var confirmJobPerson: String? = null
+ var confirmJobTime: String? = null
+ var handleJobPerson: String? = null
+ var handleJobTime: String? = null
+ var handleMessage: String? = null
+ var handlePhotos: String? = null
+ var editable: String? = null
+ var flow: List? = null
+
+ class FlowBean {
+ /**
+ * from : 张三
+ * to : 李四
+ * time : 2019-02-22-12:00:00
+ */
+ var from: String? = null
+ var to: String? = null
+ var time: String? = null
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
index 75a6bd4..7cf9d3e 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
@@ -98,6 +98,15 @@
): WorkOrderListModel
/**
+ * 获取工单详情
+ */
+ @GET("/job/info")
+ suspend fun obtainWorkOrderDetail(
+ @Header("token") token: String,
+ @Query("id") id: Long
+ ): WorkOrderDetailModel
+
+ /**
* 获取用户信息
*/
@GET("/user/info")
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
index 790fb72..5199e89 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
@@ -96,6 +96,13 @@
}
/**
+ * 获取工单详情
+ */
+ suspend fun obtainWorkOrderDetail(id: Long): WorkOrderDetailModel {
+ return api.obtainWorkOrderDetail(AuthenticationHelper.token!!, id)
+ }
+
+ /**
* 获取用户信息
*/
suspend fun obtainUserDetail(): UserDetailModel {
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
new file mode 100644
index 0000000..91ad645
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
@@ -0,0 +1,100 @@
+package com.casic.app.smartwell.model
+
+class WorkOrderDetailModel {
+ /**
+ * code : 200
+ * message : success
+ * data : {"id":1,"wellId":1,"wellCode":"N51F131","wellName":"闸井名称","deep":32,"devcode":"41201802100","position":"宋郎路","coordinateX":"39.899999999","coordinateY":"116.70000000","latBaidu":"39.901694","lngBaidu":"116.709315","latGaode":"","lngGaode":"","alarmId":"1","alarmType":"1","alarmTypeName":"数据异常","alarmContent":"1","alarmContentName":"液位超限","deptid":"1","deptName":"一分公司","jobCode":"201902340484","jobStatus":"0","jobStatusName":"待处理","createTime":"2018-12-27 00:00:00","getJobPerson":"1321321","getJobTime":"2018-12-27 00:00:00","firstState":"现场情况描述","firstStatePhotos":"现场情况图片","confirmJobPerson":"1321321","confirmJobTime":"2018-12-27 00:00:00","handleJobPerson":"1321321","handleJobTime":"2018-12-27 00:00:00","handleMessage":"维护情况描述","handlePhotos":"维护图片","flow":[{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}],"editable":"1"}
+ */
+ var code = 0
+ var message: String? = null
+ var data: DataBean? = null
+
+ class DataBean {
+ /**
+ * id : 1
+ * wellId : 1
+ * wellCode : N51F131
+ * wellName : 闸井名称
+ * deep : 32
+ * devcode : 41201802100
+ * position : 宋郎路
+ * coordinateX : 39.899999999
+ * coordinateY : 116.70000000
+ * latBaidu : 39.901694
+ * lngBaidu : 116.709315
+ * latGaode :
+ * lngGaode :
+ * alarmId : 1
+ * alarmType : 1
+ * alarmTypeName : 数据异常
+ * alarmContent : 1
+ * alarmContentName : 液位超限
+ * deptid : 1
+ * deptName : 一分公司
+ * jobCode : 201902340484
+ * jobStatus : 0
+ * jobStatusName : 待处理
+ * createTime : 2018-12-27 00:00:00
+ * getJobPerson : 1321321
+ * getJobTime : 2018-12-27 00:00:00
+ * firstState : 现场情况描述
+ * firstStatePhotos : 现场情况图片
+ * confirmJobPerson : 1321321
+ * confirmJobTime : 2018-12-27 00:00:00
+ * handleJobPerson : 1321321
+ * handleJobTime : 2018-12-27 00:00:00
+ * handleMessage : 维护情况描述
+ * handlePhotos : 维护图片
+ * flow : [{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}]
+ * editable : 1
+ */
+ var id = 0
+ var wellId = 0
+ var wellCode: String? = null
+ var wellName: String? = null
+ var deep = 0
+ var devcode: String? = null
+ var position: String? = null
+ var coordinateX: String? = null
+ var coordinateY: String? = null
+ var latBaidu: String? = null
+ var lngBaidu: String? = null
+ var latGaode: String? = null
+ var lngGaode: String? = null
+ var alarmId: String? = null
+ var alarmType: String? = null
+ var alarmTypeName: String? = null
+ var alarmContent: String? = null
+ var alarmContentName: String? = null
+ var deptid: String? = null
+ var deptName: String? = null
+ var jobCode: String? = null
+ var jobStatus: String? = null
+ var jobStatusName: String? = null
+ var createTime: String? = null
+ var getJobPerson: String? = null
+ var getJobTime: String? = null
+ var firstState: String? = null
+ var firstStatePhotos: String? = null
+ var confirmJobPerson: String? = null
+ var confirmJobTime: String? = null
+ var handleJobPerson: String? = null
+ var handleJobTime: String? = null
+ var handleMessage: String? = null
+ var handlePhotos: String? = null
+ var editable: String? = null
+ var flow: List? = null
+
+ class FlowBean {
+ /**
+ * from : 张三
+ * to : 李四
+ * time : 2019-02-22-12:00:00
+ */
+ var from: String? = null
+ var to: String? = null
+ var time: String? = null
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
index 75a6bd4..7cf9d3e 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
@@ -98,6 +98,15 @@
): WorkOrderListModel
/**
+ * 获取工单详情
+ */
+ @GET("/job/info")
+ suspend fun obtainWorkOrderDetail(
+ @Header("token") token: String,
+ @Query("id") id: Long
+ ): WorkOrderDetailModel
+
+ /**
* 获取用户信息
*/
@GET("/user/info")
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
index 790fb72..5199e89 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
@@ -96,6 +96,13 @@
}
/**
+ * 获取工单详情
+ */
+ suspend fun obtainWorkOrderDetail(id: Long): WorkOrderDetailModel {
+ return api.obtainWorkOrderDetail(AuthenticationHelper.token!!, id)
+ }
+
+ /**
* 获取用户信息
*/
suspend fun obtainUserDetail(): UserDetailModel {
diff --git a/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
new file mode 100644
index 0000000..65c6b8e
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
@@ -0,0 +1,87 @@
+package com.casic.app.smartwell.view
+
+import androidx.lifecycle.ViewModelProvider
+import com.amap.api.maps.model.LatLng
+import com.amap.api.maps.model.Poi
+import com.casic.app.smartwell.R
+import com.casic.app.smartwell.base.BaseActivity
+import com.casic.app.smartwell.extensions.show
+import com.casic.app.smartwell.extensions.showRouteOnMap
+import com.casic.app.smartwell.extensions.valueToType
+import com.casic.app.smartwell.utils.Constant
+import com.casic.app.smartwell.utils.DialogHelper
+import com.casic.app.smartwell.utils.LoadState
+import com.casic.app.smartwell.vm.WorkOrderDetailViewModel
+import kotlinx.android.synthetic.main.activity_order_detail.*
+
+class WorkOrderDetailActivity : BaseActivity() {
+
+ private lateinit var workOrderDetailViewModel: WorkOrderDetailViewModel
+
+ override fun initLayoutView(): Int = R.layout.activity_order_detail
+
+ override fun setupTopBarLayout() {
+
+ }
+
+ override fun initData() {
+ val jobId = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ workOrderDetailViewModel = ViewModelProvider(this).get(WorkOrderDetailViewModel::class.java)
+ workOrderDetailViewModel.obtainWorkOrderDetail(id = jobId.toLong())
+ workOrderDetailViewModel.detailModel.observe(this, {
+ if (it.code == 200) {
+ val wellDetail = it.data!!
+ alarmTypeView.text = wellDetail.alarmContentName
+ wellCodeView.text = wellDetail.wellCode
+ wellNameView.text = wellDetail.wellName
+ wellTypeView.text = wellDetail.wellId.valueToType()
+// wellStateView.text = wellDetail.bfztName
+ installDateView.text = wellDetail.createTime
+ val depth = wellDetail.deep.toString()
+ if (depth == "") {
+ wellDepthView.text = resources.getString(R.string.unknown)
+ } else {
+ wellDepthView.text = depth
+ }
+ //绑定窨井位置
+ val wellPosition = wellDetail.position.toString()
+ wellLocationView.text = wellPosition
+
+ //转单
+ operationButton.setChangeAlphaWhenPress(true)
+ operationButton.setOnClickListener {
+
+ }
+
+ //导航
+ navigationButton.setChangeAlphaWhenPress(true)
+ navigationButton.setOnClickListener {
+ val lat = wellDetail.latGaode.toString()
+ val lng = wellDetail.lngGaode.toString()
+ if (lat == "" || lng == "") {
+ "窨井经纬度异常,无法开启导航".show(this)
+ return@setOnClickListener
+ }
+ Poi(
+ wellDetail.position,
+ LatLng(lat.toDouble(), lng.toDouble()),
+ ""
+ ).showRouteOnMap(this)
+ }
+ }
+ })
+ }
+
+ override fun initEvent() {
+ workOrderDetailViewModel.loadState.observe(this, {
+ when (it) {
+ is LoadState.Loading -> {
+ DialogHelper.showLoadingDialog(this, "数据加载中,请稍后")
+ }
+ else -> {
+ DialogHelper.dismissLoadingDialog()
+ }
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
new file mode 100644
index 0000000..91ad645
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
@@ -0,0 +1,100 @@
+package com.casic.app.smartwell.model
+
+class WorkOrderDetailModel {
+ /**
+ * code : 200
+ * message : success
+ * data : {"id":1,"wellId":1,"wellCode":"N51F131","wellName":"闸井名称","deep":32,"devcode":"41201802100","position":"宋郎路","coordinateX":"39.899999999","coordinateY":"116.70000000","latBaidu":"39.901694","lngBaidu":"116.709315","latGaode":"","lngGaode":"","alarmId":"1","alarmType":"1","alarmTypeName":"数据异常","alarmContent":"1","alarmContentName":"液位超限","deptid":"1","deptName":"一分公司","jobCode":"201902340484","jobStatus":"0","jobStatusName":"待处理","createTime":"2018-12-27 00:00:00","getJobPerson":"1321321","getJobTime":"2018-12-27 00:00:00","firstState":"现场情况描述","firstStatePhotos":"现场情况图片","confirmJobPerson":"1321321","confirmJobTime":"2018-12-27 00:00:00","handleJobPerson":"1321321","handleJobTime":"2018-12-27 00:00:00","handleMessage":"维护情况描述","handlePhotos":"维护图片","flow":[{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}],"editable":"1"}
+ */
+ var code = 0
+ var message: String? = null
+ var data: DataBean? = null
+
+ class DataBean {
+ /**
+ * id : 1
+ * wellId : 1
+ * wellCode : N51F131
+ * wellName : 闸井名称
+ * deep : 32
+ * devcode : 41201802100
+ * position : 宋郎路
+ * coordinateX : 39.899999999
+ * coordinateY : 116.70000000
+ * latBaidu : 39.901694
+ * lngBaidu : 116.709315
+ * latGaode :
+ * lngGaode :
+ * alarmId : 1
+ * alarmType : 1
+ * alarmTypeName : 数据异常
+ * alarmContent : 1
+ * alarmContentName : 液位超限
+ * deptid : 1
+ * deptName : 一分公司
+ * jobCode : 201902340484
+ * jobStatus : 0
+ * jobStatusName : 待处理
+ * createTime : 2018-12-27 00:00:00
+ * getJobPerson : 1321321
+ * getJobTime : 2018-12-27 00:00:00
+ * firstState : 现场情况描述
+ * firstStatePhotos : 现场情况图片
+ * confirmJobPerson : 1321321
+ * confirmJobTime : 2018-12-27 00:00:00
+ * handleJobPerson : 1321321
+ * handleJobTime : 2018-12-27 00:00:00
+ * handleMessage : 维护情况描述
+ * handlePhotos : 维护图片
+ * flow : [{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}]
+ * editable : 1
+ */
+ var id = 0
+ var wellId = 0
+ var wellCode: String? = null
+ var wellName: String? = null
+ var deep = 0
+ var devcode: String? = null
+ var position: String? = null
+ var coordinateX: String? = null
+ var coordinateY: String? = null
+ var latBaidu: String? = null
+ var lngBaidu: String? = null
+ var latGaode: String? = null
+ var lngGaode: String? = null
+ var alarmId: String? = null
+ var alarmType: String? = null
+ var alarmTypeName: String? = null
+ var alarmContent: String? = null
+ var alarmContentName: String? = null
+ var deptid: String? = null
+ var deptName: String? = null
+ var jobCode: String? = null
+ var jobStatus: String? = null
+ var jobStatusName: String? = null
+ var createTime: String? = null
+ var getJobPerson: String? = null
+ var getJobTime: String? = null
+ var firstState: String? = null
+ var firstStatePhotos: String? = null
+ var confirmJobPerson: String? = null
+ var confirmJobTime: String? = null
+ var handleJobPerson: String? = null
+ var handleJobTime: String? = null
+ var handleMessage: String? = null
+ var handlePhotos: String? = null
+ var editable: String? = null
+ var flow: List? = null
+
+ class FlowBean {
+ /**
+ * from : 张三
+ * to : 李四
+ * time : 2019-02-22-12:00:00
+ */
+ var from: String? = null
+ var to: String? = null
+ var time: String? = null
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
index 75a6bd4..7cf9d3e 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
@@ -98,6 +98,15 @@
): WorkOrderListModel
/**
+ * 获取工单详情
+ */
+ @GET("/job/info")
+ suspend fun obtainWorkOrderDetail(
+ @Header("token") token: String,
+ @Query("id") id: Long
+ ): WorkOrderDetailModel
+
+ /**
* 获取用户信息
*/
@GET("/user/info")
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
index 790fb72..5199e89 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
@@ -96,6 +96,13 @@
}
/**
+ * 获取工单详情
+ */
+ suspend fun obtainWorkOrderDetail(id: Long): WorkOrderDetailModel {
+ return api.obtainWorkOrderDetail(AuthenticationHelper.token!!, id)
+ }
+
+ /**
* 获取用户信息
*/
suspend fun obtainUserDetail(): UserDetailModel {
diff --git a/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
new file mode 100644
index 0000000..65c6b8e
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
@@ -0,0 +1,87 @@
+package com.casic.app.smartwell.view
+
+import androidx.lifecycle.ViewModelProvider
+import com.amap.api.maps.model.LatLng
+import com.amap.api.maps.model.Poi
+import com.casic.app.smartwell.R
+import com.casic.app.smartwell.base.BaseActivity
+import com.casic.app.smartwell.extensions.show
+import com.casic.app.smartwell.extensions.showRouteOnMap
+import com.casic.app.smartwell.extensions.valueToType
+import com.casic.app.smartwell.utils.Constant
+import com.casic.app.smartwell.utils.DialogHelper
+import com.casic.app.smartwell.utils.LoadState
+import com.casic.app.smartwell.vm.WorkOrderDetailViewModel
+import kotlinx.android.synthetic.main.activity_order_detail.*
+
+class WorkOrderDetailActivity : BaseActivity() {
+
+ private lateinit var workOrderDetailViewModel: WorkOrderDetailViewModel
+
+ override fun initLayoutView(): Int = R.layout.activity_order_detail
+
+ override fun setupTopBarLayout() {
+
+ }
+
+ override fun initData() {
+ val jobId = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ workOrderDetailViewModel = ViewModelProvider(this).get(WorkOrderDetailViewModel::class.java)
+ workOrderDetailViewModel.obtainWorkOrderDetail(id = jobId.toLong())
+ workOrderDetailViewModel.detailModel.observe(this, {
+ if (it.code == 200) {
+ val wellDetail = it.data!!
+ alarmTypeView.text = wellDetail.alarmContentName
+ wellCodeView.text = wellDetail.wellCode
+ wellNameView.text = wellDetail.wellName
+ wellTypeView.text = wellDetail.wellId.valueToType()
+// wellStateView.text = wellDetail.bfztName
+ installDateView.text = wellDetail.createTime
+ val depth = wellDetail.deep.toString()
+ if (depth == "") {
+ wellDepthView.text = resources.getString(R.string.unknown)
+ } else {
+ wellDepthView.text = depth
+ }
+ //绑定窨井位置
+ val wellPosition = wellDetail.position.toString()
+ wellLocationView.text = wellPosition
+
+ //转单
+ operationButton.setChangeAlphaWhenPress(true)
+ operationButton.setOnClickListener {
+
+ }
+
+ //导航
+ navigationButton.setChangeAlphaWhenPress(true)
+ navigationButton.setOnClickListener {
+ val lat = wellDetail.latGaode.toString()
+ val lng = wellDetail.lngGaode.toString()
+ if (lat == "" || lng == "") {
+ "窨井经纬度异常,无法开启导航".show(this)
+ return@setOnClickListener
+ }
+ Poi(
+ wellDetail.position,
+ LatLng(lat.toDouble(), lng.toDouble()),
+ ""
+ ).showRouteOnMap(this)
+ }
+ }
+ })
+ }
+
+ override fun initEvent() {
+ workOrderDetailViewModel.loadState.observe(this, {
+ when (it) {
+ is LoadState.Loading -> {
+ DialogHelper.showLoadingDialog(this, "数据加载中,请稍后")
+ }
+ else -> {
+ DialogHelper.dismissLoadingDialog()
+ }
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt b/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
index 9faf71d..60e552a 100644
--- a/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
+++ b/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
@@ -8,8 +8,10 @@
import androidx.recyclerview.widget.LinearLayoutManager
import com.casic.app.smartwell.R
import com.casic.app.smartwell.adapter.TodoWorkOrderListAdapter
+import com.casic.app.smartwell.extensions.navigatePageTo
import com.casic.app.smartwell.extensions.show
import com.casic.app.smartwell.model.WorkOrderListModel
+import com.casic.app.smartwell.view.WorkOrderDetailActivity
import com.casic.app.smartwell.vm.WorkOrderListViewModel
import com.pengxh.app.multilib.base.BaseFragment
import kotlinx.android.synthetic.main.fragment_order_todo.*
@@ -100,7 +102,13 @@
fragment.workOrderListAdapter.setOnItemClickListener(object :
TodoWorkOrderListAdapter.OnItemClickListener {
override fun onClicked(position: Int) {
-
+ val jobId = fragment.dataBeans[position].jobId.toString()
+ if (jobId == "") {
+ "工单编号异常,无法查看详情".show(fragment.requireContext())
+ return
+ }
+ fragment.requireContext()
+ .navigatePageTo(WorkOrderDetailActivity::class.java, jobId)
}
override fun onOperationClicked(position: Int) {
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
new file mode 100644
index 0000000..91ad645
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
@@ -0,0 +1,100 @@
+package com.casic.app.smartwell.model
+
+class WorkOrderDetailModel {
+ /**
+ * code : 200
+ * message : success
+ * data : {"id":1,"wellId":1,"wellCode":"N51F131","wellName":"闸井名称","deep":32,"devcode":"41201802100","position":"宋郎路","coordinateX":"39.899999999","coordinateY":"116.70000000","latBaidu":"39.901694","lngBaidu":"116.709315","latGaode":"","lngGaode":"","alarmId":"1","alarmType":"1","alarmTypeName":"数据异常","alarmContent":"1","alarmContentName":"液位超限","deptid":"1","deptName":"一分公司","jobCode":"201902340484","jobStatus":"0","jobStatusName":"待处理","createTime":"2018-12-27 00:00:00","getJobPerson":"1321321","getJobTime":"2018-12-27 00:00:00","firstState":"现场情况描述","firstStatePhotos":"现场情况图片","confirmJobPerson":"1321321","confirmJobTime":"2018-12-27 00:00:00","handleJobPerson":"1321321","handleJobTime":"2018-12-27 00:00:00","handleMessage":"维护情况描述","handlePhotos":"维护图片","flow":[{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}],"editable":"1"}
+ */
+ var code = 0
+ var message: String? = null
+ var data: DataBean? = null
+
+ class DataBean {
+ /**
+ * id : 1
+ * wellId : 1
+ * wellCode : N51F131
+ * wellName : 闸井名称
+ * deep : 32
+ * devcode : 41201802100
+ * position : 宋郎路
+ * coordinateX : 39.899999999
+ * coordinateY : 116.70000000
+ * latBaidu : 39.901694
+ * lngBaidu : 116.709315
+ * latGaode :
+ * lngGaode :
+ * alarmId : 1
+ * alarmType : 1
+ * alarmTypeName : 数据异常
+ * alarmContent : 1
+ * alarmContentName : 液位超限
+ * deptid : 1
+ * deptName : 一分公司
+ * jobCode : 201902340484
+ * jobStatus : 0
+ * jobStatusName : 待处理
+ * createTime : 2018-12-27 00:00:00
+ * getJobPerson : 1321321
+ * getJobTime : 2018-12-27 00:00:00
+ * firstState : 现场情况描述
+ * firstStatePhotos : 现场情况图片
+ * confirmJobPerson : 1321321
+ * confirmJobTime : 2018-12-27 00:00:00
+ * handleJobPerson : 1321321
+ * handleJobTime : 2018-12-27 00:00:00
+ * handleMessage : 维护情况描述
+ * handlePhotos : 维护图片
+ * flow : [{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}]
+ * editable : 1
+ */
+ var id = 0
+ var wellId = 0
+ var wellCode: String? = null
+ var wellName: String? = null
+ var deep = 0
+ var devcode: String? = null
+ var position: String? = null
+ var coordinateX: String? = null
+ var coordinateY: String? = null
+ var latBaidu: String? = null
+ var lngBaidu: String? = null
+ var latGaode: String? = null
+ var lngGaode: String? = null
+ var alarmId: String? = null
+ var alarmType: String? = null
+ var alarmTypeName: String? = null
+ var alarmContent: String? = null
+ var alarmContentName: String? = null
+ var deptid: String? = null
+ var deptName: String? = null
+ var jobCode: String? = null
+ var jobStatus: String? = null
+ var jobStatusName: String? = null
+ var createTime: String? = null
+ var getJobPerson: String? = null
+ var getJobTime: String? = null
+ var firstState: String? = null
+ var firstStatePhotos: String? = null
+ var confirmJobPerson: String? = null
+ var confirmJobTime: String? = null
+ var handleJobPerson: String? = null
+ var handleJobTime: String? = null
+ var handleMessage: String? = null
+ var handlePhotos: String? = null
+ var editable: String? = null
+ var flow: List? = null
+
+ class FlowBean {
+ /**
+ * from : 张三
+ * to : 李四
+ * time : 2019-02-22-12:00:00
+ */
+ var from: String? = null
+ var to: String? = null
+ var time: String? = null
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
index 75a6bd4..7cf9d3e 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
@@ -98,6 +98,15 @@
): WorkOrderListModel
/**
+ * 获取工单详情
+ */
+ @GET("/job/info")
+ suspend fun obtainWorkOrderDetail(
+ @Header("token") token: String,
+ @Query("id") id: Long
+ ): WorkOrderDetailModel
+
+ /**
* 获取用户信息
*/
@GET("/user/info")
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
index 790fb72..5199e89 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
@@ -96,6 +96,13 @@
}
/**
+ * 获取工单详情
+ */
+ suspend fun obtainWorkOrderDetail(id: Long): WorkOrderDetailModel {
+ return api.obtainWorkOrderDetail(AuthenticationHelper.token!!, id)
+ }
+
+ /**
* 获取用户信息
*/
suspend fun obtainUserDetail(): UserDetailModel {
diff --git a/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
new file mode 100644
index 0000000..65c6b8e
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
@@ -0,0 +1,87 @@
+package com.casic.app.smartwell.view
+
+import androidx.lifecycle.ViewModelProvider
+import com.amap.api.maps.model.LatLng
+import com.amap.api.maps.model.Poi
+import com.casic.app.smartwell.R
+import com.casic.app.smartwell.base.BaseActivity
+import com.casic.app.smartwell.extensions.show
+import com.casic.app.smartwell.extensions.showRouteOnMap
+import com.casic.app.smartwell.extensions.valueToType
+import com.casic.app.smartwell.utils.Constant
+import com.casic.app.smartwell.utils.DialogHelper
+import com.casic.app.smartwell.utils.LoadState
+import com.casic.app.smartwell.vm.WorkOrderDetailViewModel
+import kotlinx.android.synthetic.main.activity_order_detail.*
+
+class WorkOrderDetailActivity : BaseActivity() {
+
+ private lateinit var workOrderDetailViewModel: WorkOrderDetailViewModel
+
+ override fun initLayoutView(): Int = R.layout.activity_order_detail
+
+ override fun setupTopBarLayout() {
+
+ }
+
+ override fun initData() {
+ val jobId = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ workOrderDetailViewModel = ViewModelProvider(this).get(WorkOrderDetailViewModel::class.java)
+ workOrderDetailViewModel.obtainWorkOrderDetail(id = jobId.toLong())
+ workOrderDetailViewModel.detailModel.observe(this, {
+ if (it.code == 200) {
+ val wellDetail = it.data!!
+ alarmTypeView.text = wellDetail.alarmContentName
+ wellCodeView.text = wellDetail.wellCode
+ wellNameView.text = wellDetail.wellName
+ wellTypeView.text = wellDetail.wellId.valueToType()
+// wellStateView.text = wellDetail.bfztName
+ installDateView.text = wellDetail.createTime
+ val depth = wellDetail.deep.toString()
+ if (depth == "") {
+ wellDepthView.text = resources.getString(R.string.unknown)
+ } else {
+ wellDepthView.text = depth
+ }
+ //绑定窨井位置
+ val wellPosition = wellDetail.position.toString()
+ wellLocationView.text = wellPosition
+
+ //转单
+ operationButton.setChangeAlphaWhenPress(true)
+ operationButton.setOnClickListener {
+
+ }
+
+ //导航
+ navigationButton.setChangeAlphaWhenPress(true)
+ navigationButton.setOnClickListener {
+ val lat = wellDetail.latGaode.toString()
+ val lng = wellDetail.lngGaode.toString()
+ if (lat == "" || lng == "") {
+ "窨井经纬度异常,无法开启导航".show(this)
+ return@setOnClickListener
+ }
+ Poi(
+ wellDetail.position,
+ LatLng(lat.toDouble(), lng.toDouble()),
+ ""
+ ).showRouteOnMap(this)
+ }
+ }
+ })
+ }
+
+ override fun initEvent() {
+ workOrderDetailViewModel.loadState.observe(this, {
+ when (it) {
+ is LoadState.Loading -> {
+ DialogHelper.showLoadingDialog(this, "数据加载中,请稍后")
+ }
+ else -> {
+ DialogHelper.dismissLoadingDialog()
+ }
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt b/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
index 9faf71d..60e552a 100644
--- a/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
+++ b/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
@@ -8,8 +8,10 @@
import androidx.recyclerview.widget.LinearLayoutManager
import com.casic.app.smartwell.R
import com.casic.app.smartwell.adapter.TodoWorkOrderListAdapter
+import com.casic.app.smartwell.extensions.navigatePageTo
import com.casic.app.smartwell.extensions.show
import com.casic.app.smartwell.model.WorkOrderListModel
+import com.casic.app.smartwell.view.WorkOrderDetailActivity
import com.casic.app.smartwell.vm.WorkOrderListViewModel
import com.pengxh.app.multilib.base.BaseFragment
import kotlinx.android.synthetic.main.fragment_order_todo.*
@@ -100,7 +102,13 @@
fragment.workOrderListAdapter.setOnItemClickListener(object :
TodoWorkOrderListAdapter.OnItemClickListener {
override fun onClicked(position: Int) {
-
+ val jobId = fragment.dataBeans[position].jobId.toString()
+ if (jobId == "") {
+ "工单编号异常,无法查看详情".show(fragment.requireContext())
+ return
+ }
+ fragment.requireContext()
+ .navigatePageTo(WorkOrderDetailActivity::class.java, jobId)
}
override fun onOperationClicked(position: Int) {
diff --git a/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt b/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt
new file mode 100644
index 0000000..74f8188
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt
@@ -0,0 +1,21 @@
+package com.casic.app.smartwell.vm
+
+import androidx.lifecycle.MutableLiveData
+import com.casic.app.smartwell.base.BaseViewModel
+import com.casic.app.smartwell.extensions.launch
+import com.casic.app.smartwell.model.WorkOrderDetailModel
+import com.casic.app.smartwell.utils.LoadState
+import com.casic.app.smartwell.utils.retrofit.RetrofitServiceManager
+
+class WorkOrderDetailViewModel : BaseViewModel() {
+
+ val detailModel = MutableLiveData()
+
+ fun obtainWorkOrderDetail(id: Long) = launch({
+ loadState.value = LoadState.Loading
+ detailModel.value = RetrofitServiceManager.obtainWorkOrderDetail(id)
+ loadState.value = LoadState.Success
+ }, {
+ loadState.value = LoadState.Fail
+ })
+}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
new file mode 100644
index 0000000..91ad645
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
@@ -0,0 +1,100 @@
+package com.casic.app.smartwell.model
+
+class WorkOrderDetailModel {
+ /**
+ * code : 200
+ * message : success
+ * data : {"id":1,"wellId":1,"wellCode":"N51F131","wellName":"闸井名称","deep":32,"devcode":"41201802100","position":"宋郎路","coordinateX":"39.899999999","coordinateY":"116.70000000","latBaidu":"39.901694","lngBaidu":"116.709315","latGaode":"","lngGaode":"","alarmId":"1","alarmType":"1","alarmTypeName":"数据异常","alarmContent":"1","alarmContentName":"液位超限","deptid":"1","deptName":"一分公司","jobCode":"201902340484","jobStatus":"0","jobStatusName":"待处理","createTime":"2018-12-27 00:00:00","getJobPerson":"1321321","getJobTime":"2018-12-27 00:00:00","firstState":"现场情况描述","firstStatePhotos":"现场情况图片","confirmJobPerson":"1321321","confirmJobTime":"2018-12-27 00:00:00","handleJobPerson":"1321321","handleJobTime":"2018-12-27 00:00:00","handleMessage":"维护情况描述","handlePhotos":"维护图片","flow":[{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}],"editable":"1"}
+ */
+ var code = 0
+ var message: String? = null
+ var data: DataBean? = null
+
+ class DataBean {
+ /**
+ * id : 1
+ * wellId : 1
+ * wellCode : N51F131
+ * wellName : 闸井名称
+ * deep : 32
+ * devcode : 41201802100
+ * position : 宋郎路
+ * coordinateX : 39.899999999
+ * coordinateY : 116.70000000
+ * latBaidu : 39.901694
+ * lngBaidu : 116.709315
+ * latGaode :
+ * lngGaode :
+ * alarmId : 1
+ * alarmType : 1
+ * alarmTypeName : 数据异常
+ * alarmContent : 1
+ * alarmContentName : 液位超限
+ * deptid : 1
+ * deptName : 一分公司
+ * jobCode : 201902340484
+ * jobStatus : 0
+ * jobStatusName : 待处理
+ * createTime : 2018-12-27 00:00:00
+ * getJobPerson : 1321321
+ * getJobTime : 2018-12-27 00:00:00
+ * firstState : 现场情况描述
+ * firstStatePhotos : 现场情况图片
+ * confirmJobPerson : 1321321
+ * confirmJobTime : 2018-12-27 00:00:00
+ * handleJobPerson : 1321321
+ * handleJobTime : 2018-12-27 00:00:00
+ * handleMessage : 维护情况描述
+ * handlePhotos : 维护图片
+ * flow : [{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}]
+ * editable : 1
+ */
+ var id = 0
+ var wellId = 0
+ var wellCode: String? = null
+ var wellName: String? = null
+ var deep = 0
+ var devcode: String? = null
+ var position: String? = null
+ var coordinateX: String? = null
+ var coordinateY: String? = null
+ var latBaidu: String? = null
+ var lngBaidu: String? = null
+ var latGaode: String? = null
+ var lngGaode: String? = null
+ var alarmId: String? = null
+ var alarmType: String? = null
+ var alarmTypeName: String? = null
+ var alarmContent: String? = null
+ var alarmContentName: String? = null
+ var deptid: String? = null
+ var deptName: String? = null
+ var jobCode: String? = null
+ var jobStatus: String? = null
+ var jobStatusName: String? = null
+ var createTime: String? = null
+ var getJobPerson: String? = null
+ var getJobTime: String? = null
+ var firstState: String? = null
+ var firstStatePhotos: String? = null
+ var confirmJobPerson: String? = null
+ var confirmJobTime: String? = null
+ var handleJobPerson: String? = null
+ var handleJobTime: String? = null
+ var handleMessage: String? = null
+ var handlePhotos: String? = null
+ var editable: String? = null
+ var flow: List? = null
+
+ class FlowBean {
+ /**
+ * from : 张三
+ * to : 李四
+ * time : 2019-02-22-12:00:00
+ */
+ var from: String? = null
+ var to: String? = null
+ var time: String? = null
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
index 75a6bd4..7cf9d3e 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
@@ -98,6 +98,15 @@
): WorkOrderListModel
/**
+ * 获取工单详情
+ */
+ @GET("/job/info")
+ suspend fun obtainWorkOrderDetail(
+ @Header("token") token: String,
+ @Query("id") id: Long
+ ): WorkOrderDetailModel
+
+ /**
* 获取用户信息
*/
@GET("/user/info")
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
index 790fb72..5199e89 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
@@ -96,6 +96,13 @@
}
/**
+ * 获取工单详情
+ */
+ suspend fun obtainWorkOrderDetail(id: Long): WorkOrderDetailModel {
+ return api.obtainWorkOrderDetail(AuthenticationHelper.token!!, id)
+ }
+
+ /**
* 获取用户信息
*/
suspend fun obtainUserDetail(): UserDetailModel {
diff --git a/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
new file mode 100644
index 0000000..65c6b8e
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
@@ -0,0 +1,87 @@
+package com.casic.app.smartwell.view
+
+import androidx.lifecycle.ViewModelProvider
+import com.amap.api.maps.model.LatLng
+import com.amap.api.maps.model.Poi
+import com.casic.app.smartwell.R
+import com.casic.app.smartwell.base.BaseActivity
+import com.casic.app.smartwell.extensions.show
+import com.casic.app.smartwell.extensions.showRouteOnMap
+import com.casic.app.smartwell.extensions.valueToType
+import com.casic.app.smartwell.utils.Constant
+import com.casic.app.smartwell.utils.DialogHelper
+import com.casic.app.smartwell.utils.LoadState
+import com.casic.app.smartwell.vm.WorkOrderDetailViewModel
+import kotlinx.android.synthetic.main.activity_order_detail.*
+
+class WorkOrderDetailActivity : BaseActivity() {
+
+ private lateinit var workOrderDetailViewModel: WorkOrderDetailViewModel
+
+ override fun initLayoutView(): Int = R.layout.activity_order_detail
+
+ override fun setupTopBarLayout() {
+
+ }
+
+ override fun initData() {
+ val jobId = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ workOrderDetailViewModel = ViewModelProvider(this).get(WorkOrderDetailViewModel::class.java)
+ workOrderDetailViewModel.obtainWorkOrderDetail(id = jobId.toLong())
+ workOrderDetailViewModel.detailModel.observe(this, {
+ if (it.code == 200) {
+ val wellDetail = it.data!!
+ alarmTypeView.text = wellDetail.alarmContentName
+ wellCodeView.text = wellDetail.wellCode
+ wellNameView.text = wellDetail.wellName
+ wellTypeView.text = wellDetail.wellId.valueToType()
+// wellStateView.text = wellDetail.bfztName
+ installDateView.text = wellDetail.createTime
+ val depth = wellDetail.deep.toString()
+ if (depth == "") {
+ wellDepthView.text = resources.getString(R.string.unknown)
+ } else {
+ wellDepthView.text = depth
+ }
+ //绑定窨井位置
+ val wellPosition = wellDetail.position.toString()
+ wellLocationView.text = wellPosition
+
+ //转单
+ operationButton.setChangeAlphaWhenPress(true)
+ operationButton.setOnClickListener {
+
+ }
+
+ //导航
+ navigationButton.setChangeAlphaWhenPress(true)
+ navigationButton.setOnClickListener {
+ val lat = wellDetail.latGaode.toString()
+ val lng = wellDetail.lngGaode.toString()
+ if (lat == "" || lng == "") {
+ "窨井经纬度异常,无法开启导航".show(this)
+ return@setOnClickListener
+ }
+ Poi(
+ wellDetail.position,
+ LatLng(lat.toDouble(), lng.toDouble()),
+ ""
+ ).showRouteOnMap(this)
+ }
+ }
+ })
+ }
+
+ override fun initEvent() {
+ workOrderDetailViewModel.loadState.observe(this, {
+ when (it) {
+ is LoadState.Loading -> {
+ DialogHelper.showLoadingDialog(this, "数据加载中,请稍后")
+ }
+ else -> {
+ DialogHelper.dismissLoadingDialog()
+ }
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt b/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
index 9faf71d..60e552a 100644
--- a/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
+++ b/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
@@ -8,8 +8,10 @@
import androidx.recyclerview.widget.LinearLayoutManager
import com.casic.app.smartwell.R
import com.casic.app.smartwell.adapter.TodoWorkOrderListAdapter
+import com.casic.app.smartwell.extensions.navigatePageTo
import com.casic.app.smartwell.extensions.show
import com.casic.app.smartwell.model.WorkOrderListModel
+import com.casic.app.smartwell.view.WorkOrderDetailActivity
import com.casic.app.smartwell.vm.WorkOrderListViewModel
import com.pengxh.app.multilib.base.BaseFragment
import kotlinx.android.synthetic.main.fragment_order_todo.*
@@ -100,7 +102,13 @@
fragment.workOrderListAdapter.setOnItemClickListener(object :
TodoWorkOrderListAdapter.OnItemClickListener {
override fun onClicked(position: Int) {
-
+ val jobId = fragment.dataBeans[position].jobId.toString()
+ if (jobId == "") {
+ "工单编号异常,无法查看详情".show(fragment.requireContext())
+ return
+ }
+ fragment.requireContext()
+ .navigatePageTo(WorkOrderDetailActivity::class.java, jobId)
}
override fun onOperationClicked(position: Int) {
diff --git a/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt b/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt
new file mode 100644
index 0000000..74f8188
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt
@@ -0,0 +1,21 @@
+package com.casic.app.smartwell.vm
+
+import androidx.lifecycle.MutableLiveData
+import com.casic.app.smartwell.base.BaseViewModel
+import com.casic.app.smartwell.extensions.launch
+import com.casic.app.smartwell.model.WorkOrderDetailModel
+import com.casic.app.smartwell.utils.LoadState
+import com.casic.app.smartwell.utils.retrofit.RetrofitServiceManager
+
+class WorkOrderDetailViewModel : BaseViewModel() {
+
+ val detailModel = MutableLiveData()
+
+ fun obtainWorkOrderDetail(id: Long) = launch({
+ loadState.value = LoadState.Loading
+ detailModel.value = RetrofitServiceManager.obtainWorkOrderDetail(id)
+ loadState.value = LoadState.Success
+ }, {
+ loadState.value = LoadState.Fail
+ })
+}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_order_detail.xml b/app/src/main/res/layout/activity_order_detail.xml
new file mode 100644
index 0000000..ba0b02b
--- /dev/null
+++ b/app/src/main/res/layout/activity_order_detail.xml
@@ -0,0 +1,189 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index e72465c..a7e6f01 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -43,6 +43,7 @@
+
diff --git a/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
new file mode 100644
index 0000000..91ad645
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/model/WorkOrderDetailModel.kt
@@ -0,0 +1,100 @@
+package com.casic.app.smartwell.model
+
+class WorkOrderDetailModel {
+ /**
+ * code : 200
+ * message : success
+ * data : {"id":1,"wellId":1,"wellCode":"N51F131","wellName":"闸井名称","deep":32,"devcode":"41201802100","position":"宋郎路","coordinateX":"39.899999999","coordinateY":"116.70000000","latBaidu":"39.901694","lngBaidu":"116.709315","latGaode":"","lngGaode":"","alarmId":"1","alarmType":"1","alarmTypeName":"数据异常","alarmContent":"1","alarmContentName":"液位超限","deptid":"1","deptName":"一分公司","jobCode":"201902340484","jobStatus":"0","jobStatusName":"待处理","createTime":"2018-12-27 00:00:00","getJobPerson":"1321321","getJobTime":"2018-12-27 00:00:00","firstState":"现场情况描述","firstStatePhotos":"现场情况图片","confirmJobPerson":"1321321","confirmJobTime":"2018-12-27 00:00:00","handleJobPerson":"1321321","handleJobTime":"2018-12-27 00:00:00","handleMessage":"维护情况描述","handlePhotos":"维护图片","flow":[{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}],"editable":"1"}
+ */
+ var code = 0
+ var message: String? = null
+ var data: DataBean? = null
+
+ class DataBean {
+ /**
+ * id : 1
+ * wellId : 1
+ * wellCode : N51F131
+ * wellName : 闸井名称
+ * deep : 32
+ * devcode : 41201802100
+ * position : 宋郎路
+ * coordinateX : 39.899999999
+ * coordinateY : 116.70000000
+ * latBaidu : 39.901694
+ * lngBaidu : 116.709315
+ * latGaode :
+ * lngGaode :
+ * alarmId : 1
+ * alarmType : 1
+ * alarmTypeName : 数据异常
+ * alarmContent : 1
+ * alarmContentName : 液位超限
+ * deptid : 1
+ * deptName : 一分公司
+ * jobCode : 201902340484
+ * jobStatus : 0
+ * jobStatusName : 待处理
+ * createTime : 2018-12-27 00:00:00
+ * getJobPerson : 1321321
+ * getJobTime : 2018-12-27 00:00:00
+ * firstState : 现场情况描述
+ * firstStatePhotos : 现场情况图片
+ * confirmJobPerson : 1321321
+ * confirmJobTime : 2018-12-27 00:00:00
+ * handleJobPerson : 1321321
+ * handleJobTime : 2018-12-27 00:00:00
+ * handleMessage : 维护情况描述
+ * handlePhotos : 维护图片
+ * flow : [{"from":"张三","to":"李四","time":"2019-02-22-12:00:00"}]
+ * editable : 1
+ */
+ var id = 0
+ var wellId = 0
+ var wellCode: String? = null
+ var wellName: String? = null
+ var deep = 0
+ var devcode: String? = null
+ var position: String? = null
+ var coordinateX: String? = null
+ var coordinateY: String? = null
+ var latBaidu: String? = null
+ var lngBaidu: String? = null
+ var latGaode: String? = null
+ var lngGaode: String? = null
+ var alarmId: String? = null
+ var alarmType: String? = null
+ var alarmTypeName: String? = null
+ var alarmContent: String? = null
+ var alarmContentName: String? = null
+ var deptid: String? = null
+ var deptName: String? = null
+ var jobCode: String? = null
+ var jobStatus: String? = null
+ var jobStatusName: String? = null
+ var createTime: String? = null
+ var getJobPerson: String? = null
+ var getJobTime: String? = null
+ var firstState: String? = null
+ var firstStatePhotos: String? = null
+ var confirmJobPerson: String? = null
+ var confirmJobTime: String? = null
+ var handleJobPerson: String? = null
+ var handleJobTime: String? = null
+ var handleMessage: String? = null
+ var handlePhotos: String? = null
+ var editable: String? = null
+ var flow: List? = null
+
+ class FlowBean {
+ /**
+ * from : 张三
+ * to : 李四
+ * time : 2019-02-22-12:00:00
+ */
+ var from: String? = null
+ var to: String? = null
+ var time: String? = null
+ }
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
index 75a6bd4..7cf9d3e 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitService.kt
@@ -98,6 +98,15 @@
): WorkOrderListModel
/**
+ * 获取工单详情
+ */
+ @GET("/job/info")
+ suspend fun obtainWorkOrderDetail(
+ @Header("token") token: String,
+ @Query("id") id: Long
+ ): WorkOrderDetailModel
+
+ /**
* 获取用户信息
*/
@GET("/user/info")
diff --git a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
index 790fb72..5199e89 100644
--- a/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/app/smartwell/utils/retrofit/RetrofitServiceManager.kt
@@ -96,6 +96,13 @@
}
/**
+ * 获取工单详情
+ */
+ suspend fun obtainWorkOrderDetail(id: Long): WorkOrderDetailModel {
+ return api.obtainWorkOrderDetail(AuthenticationHelper.token!!, id)
+ }
+
+ /**
* 获取用户信息
*/
suspend fun obtainUserDetail(): UserDetailModel {
diff --git a/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
new file mode 100644
index 0000000..65c6b8e
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/view/WorkOrderDetailActivity.kt
@@ -0,0 +1,87 @@
+package com.casic.app.smartwell.view
+
+import androidx.lifecycle.ViewModelProvider
+import com.amap.api.maps.model.LatLng
+import com.amap.api.maps.model.Poi
+import com.casic.app.smartwell.R
+import com.casic.app.smartwell.base.BaseActivity
+import com.casic.app.smartwell.extensions.show
+import com.casic.app.smartwell.extensions.showRouteOnMap
+import com.casic.app.smartwell.extensions.valueToType
+import com.casic.app.smartwell.utils.Constant
+import com.casic.app.smartwell.utils.DialogHelper
+import com.casic.app.smartwell.utils.LoadState
+import com.casic.app.smartwell.vm.WorkOrderDetailViewModel
+import kotlinx.android.synthetic.main.activity_order_detail.*
+
+class WorkOrderDetailActivity : BaseActivity() {
+
+ private lateinit var workOrderDetailViewModel: WorkOrderDetailViewModel
+
+ override fun initLayoutView(): Int = R.layout.activity_order_detail
+
+ override fun setupTopBarLayout() {
+
+ }
+
+ override fun initData() {
+ val jobId = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ workOrderDetailViewModel = ViewModelProvider(this).get(WorkOrderDetailViewModel::class.java)
+ workOrderDetailViewModel.obtainWorkOrderDetail(id = jobId.toLong())
+ workOrderDetailViewModel.detailModel.observe(this, {
+ if (it.code == 200) {
+ val wellDetail = it.data!!
+ alarmTypeView.text = wellDetail.alarmContentName
+ wellCodeView.text = wellDetail.wellCode
+ wellNameView.text = wellDetail.wellName
+ wellTypeView.text = wellDetail.wellId.valueToType()
+// wellStateView.text = wellDetail.bfztName
+ installDateView.text = wellDetail.createTime
+ val depth = wellDetail.deep.toString()
+ if (depth == "") {
+ wellDepthView.text = resources.getString(R.string.unknown)
+ } else {
+ wellDepthView.text = depth
+ }
+ //绑定窨井位置
+ val wellPosition = wellDetail.position.toString()
+ wellLocationView.text = wellPosition
+
+ //转单
+ operationButton.setChangeAlphaWhenPress(true)
+ operationButton.setOnClickListener {
+
+ }
+
+ //导航
+ navigationButton.setChangeAlphaWhenPress(true)
+ navigationButton.setOnClickListener {
+ val lat = wellDetail.latGaode.toString()
+ val lng = wellDetail.lngGaode.toString()
+ if (lat == "" || lng == "") {
+ "窨井经纬度异常,无法开启导航".show(this)
+ return@setOnClickListener
+ }
+ Poi(
+ wellDetail.position,
+ LatLng(lat.toDouble(), lng.toDouble()),
+ ""
+ ).showRouteOnMap(this)
+ }
+ }
+ })
+ }
+
+ override fun initEvent() {
+ workOrderDetailViewModel.loadState.observe(this, {
+ when (it) {
+ is LoadState.Loading -> {
+ DialogHelper.showLoadingDialog(this, "数据加载中,请稍后")
+ }
+ else -> {
+ DialogHelper.dismissLoadingDialog()
+ }
+ }
+ })
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt b/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
index 9faf71d..60e552a 100644
--- a/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
+++ b/app/src/main/java/com/casic/app/smartwell/view/fragment/TodoOrderFragment.kt
@@ -8,8 +8,10 @@
import androidx.recyclerview.widget.LinearLayoutManager
import com.casic.app.smartwell.R
import com.casic.app.smartwell.adapter.TodoWorkOrderListAdapter
+import com.casic.app.smartwell.extensions.navigatePageTo
import com.casic.app.smartwell.extensions.show
import com.casic.app.smartwell.model.WorkOrderListModel
+import com.casic.app.smartwell.view.WorkOrderDetailActivity
import com.casic.app.smartwell.vm.WorkOrderListViewModel
import com.pengxh.app.multilib.base.BaseFragment
import kotlinx.android.synthetic.main.fragment_order_todo.*
@@ -100,7 +102,13 @@
fragment.workOrderListAdapter.setOnItemClickListener(object :
TodoWorkOrderListAdapter.OnItemClickListener {
override fun onClicked(position: Int) {
-
+ val jobId = fragment.dataBeans[position].jobId.toString()
+ if (jobId == "") {
+ "工单编号异常,无法查看详情".show(fragment.requireContext())
+ return
+ }
+ fragment.requireContext()
+ .navigatePageTo(WorkOrderDetailActivity::class.java, jobId)
}
override fun onOperationClicked(position: Int) {
diff --git a/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt b/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt
new file mode 100644
index 0000000..74f8188
--- /dev/null
+++ b/app/src/main/java/com/casic/app/smartwell/vm/WorkOrderDetailViewModel.kt
@@ -0,0 +1,21 @@
+package com.casic.app.smartwell.vm
+
+import androidx.lifecycle.MutableLiveData
+import com.casic.app.smartwell.base.BaseViewModel
+import com.casic.app.smartwell.extensions.launch
+import com.casic.app.smartwell.model.WorkOrderDetailModel
+import com.casic.app.smartwell.utils.LoadState
+import com.casic.app.smartwell.utils.retrofit.RetrofitServiceManager
+
+class WorkOrderDetailViewModel : BaseViewModel() {
+
+ val detailModel = MutableLiveData()
+
+ fun obtainWorkOrderDetail(id: Long) = launch({
+ loadState.value = LoadState.Loading
+ detailModel.value = RetrofitServiceManager.obtainWorkOrderDetail(id)
+ loadState.value = LoadState.Success
+ }, {
+ loadState.value = LoadState.Fail
+ })
+}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_order_detail.xml b/app/src/main/res/layout/activity_order_detail.xml
new file mode 100644
index 0000000..ba0b02b
--- /dev/null
+++ b/app/src/main/res/layout/activity_order_detail.xml
@@ -0,0 +1,189 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_well_detail.xml b/app/src/main/res/layout/activity_well_detail.xml
index 8dcc7c3..2090bfe 100644
--- a/app/src/main/res/layout/activity_well_detail.xml
+++ b/app/src/main/res/layout/activity_well_detail.xml
@@ -37,7 +37,7 @@
style="@style/textViewStyle"
android:layout_alignParentEnd="true"
android:text="@string/unknown"
- android:textColor="#2255C6"
+ android:textColor="@color/mainThemeColor"
android:textSize="@dimen/menuFontSize" />