diff --git a/app/libs/socket-client.jar b/app/libs/socket-client.jar
new file mode 100644
index 0000000..a9f917d
Binary files /dev/null and b/app/libs/socket-client.jar differ
diff --git a/app/libs/socket-common-interface.jar b/app/libs/socket-common-interface.jar
new file mode 100644
index 0000000..80f1b01
Binary files /dev/null and b/app/libs/socket-common-interface.jar differ
diff --git a/app/libs/socket-core.jar b/app/libs/socket-core.jar
new file mode 100644
index 0000000..48023c5
Binary files /dev/null and b/app/libs/socket-core.jar differ
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 68197b2..b4dfe6f 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -225,6 +225,10 @@
android:name=".ui.lofting.pointlofting.record.RecordsActivity"
android:exported="true"
android:windowSoftInputMode="adjustResize|stateHidden" />
+
diff --git a/app/src/main/java/com/project/survey/constants/Constants.kt b/app/src/main/java/com/project/survey/constants/Constants.kt
index 2f4352f..8c26db4 100644
--- a/app/src/main/java/com/project/survey/constants/Constants.kt
+++ b/app/src/main/java/com/project/survey/constants/Constants.kt
@@ -2,6 +2,9 @@ package com.project.survey.constants
object Constants {
const val PAGE_SIZE = 30
+
+ const val TYPE_BD_CLJH = "BD_CLJH"//测量计划
+ const val TYPE_BD_CLGZ_GCJL = "BD_CLGZ_GCJL"//工程计量
}
diff --git a/app/src/main/java/com/project/survey/logic/viewmodel/ProjectViewModel.kt b/app/src/main/java/com/project/survey/logic/viewmodel/ProjectViewModel.kt
index a523f0a..8e7d38f 100644
--- a/app/src/main/java/com/project/survey/logic/viewmodel/ProjectViewModel.kt
+++ b/app/src/main/java/com/project/survey/logic/viewmodel/ProjectViewModel.kt
@@ -2,9 +2,15 @@ package com.project.survey.logic.viewmodel
import androidx.lifecycle.LiveData
import androidx.lifecycle.MutableLiveData
+import com.project.survey.constants.Constants
import com.project.survey.constants.SPConstants
import com.project.survey.logic.bean.ListResult
import com.project.survey.model.ApprovalBean
+import com.project.survey.model.InspectionReportBean
+import com.project.survey.model.LoftingBean
+import com.project.survey.model.LoftingPointBean
+import com.project.survey.model.LoftingPointListBean
+import com.project.survey.model.LoftingPointRecordEntry
import com.project.survey.model.MeasureBean
import com.project.survey.model.PointEntry
import com.project.survey.model.ProjectBean
@@ -56,23 +62,25 @@ class ProjectViewModel : BaseViewModel() {
private val _measureBeanListResponse = MutableLiveData>()
/**
- * 获取测量工作:测量计划与工程计量
+ * 获取测量工作:测量计划(BD_CLJH)与工程计量(BD_CLGZ_GCJL)
*/
- private fun fetchMeasureDataList(
- tableCode: String,
- funcCode: String,
- j_query: String,
- page: Int = 1,
- start: Int
- ) {
+ fun fetchMeasureDataList(type: String, page: Int, keyword: String? = null) {
launch {
+ val query = if (keyword.isNullOrBlank())
+ ""
+ else {
+ if (type == Constants.TYPE_BD_CLJH)
+ "[{\"code\":\"SY_CURRENTTASK\",\"type\":\"=\",\"value\":\"施工单位APP上开展测量工作\"},{\"type\":\"and\",\"value\":[{\"code\":\"CLJH_LCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"CLJH_BDLSH\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"BD_FBFXPZ_DWGCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"BD_FBFXPZ_FBGCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"BD_FBFXPZ_FXGCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"BD_FBFXPZ_DYGCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"}]}]"
+ else
+ "[{\"code\":\"SY_CURRENTTASK\",\"type\":\"=\",\"value\":\"施工单位APP上开展测量工作\"},{\"type\":\"and\",\"value\":[{\"code\":\"GCJL_LCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"GCJL_BDLSH\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"BD_FBFXPZ_DWGCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"BD_FBFXPZ_FBGCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"BD_FBFXPZ_FXGCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"BD_FBFXPZ_DYGCMC\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"}]}]"
+ }
+
val res = api.fetchMeasureDataList(
SPUtils.getString(SPConstants.PROJECT_ID),
- tableCode,
- funcCode,
- j_query,
- page,
- start = start
+ type,
+ if (type == Constants.TYPE_BD_CLJH) Constants.TYPE_BD_CLJH else "${Constants.TYPE_BD_CLGZ_GCJL}_ZB",
+ query,
+ page
)
if (res.success) {
_measureBeanListResponse.postValue(res.data)
@@ -82,20 +90,6 @@ class ProjectViewModel : BaseViewModel() {
}
}
- /**
- * 获取 测量计划 列表
- */
- fun fetchCLJH(page: Int = 1, start: Int = 0) {
- fetchMeasureDataList("BD_CLJH", "BD_CLJH", "", page, start)
- }
-
- /**
- * 获取 工程计量 列表
- */
- fun fetchGCJL(page: Int = 1, start: Int = 0) {
- fetchMeasureDataList("BD_CLGZ_GCJL", "BD_CLGZ_GCJL", "", page, start)
- }
-
val updateMeasureWorkStatusResponse: LiveData
get() = _updateMeasureWorkStatusResponse
private val _updateMeasureWorkStatusResponse = MutableLiveData()
@@ -119,20 +113,6 @@ class ProjectViewModel : BaseViewModel() {
}
}
- /**
- * 修改 测量计划 工作状态
- */
- fun updateCLJHStatus(workId: String, status: String) {
- updateMeasureWorkStatus(workId, "BD_CLJH", status)
- }
-
- /**
- * 修改 工程计量 工作状态
- */
- fun updateGCJLStatus(workId: String, status: String) {
- updateMeasureWorkStatus(workId, "BD_CLGZ_GCJL", status)
- }
-
val uploadPointEntryResponse: LiveData
get() = _uploadPointEntryResponse
private val _uploadPointEntryResponse = MutableLiveData()
@@ -143,7 +123,10 @@ class ProjectViewModel : BaseViewModel() {
fun uploadPointEntry(pointEntry: PointEntry) {
launch {
val res =
- api.uploadPointEntry(SPUtils.getString(SPConstants.PROJECT_ID), arrayListOf(pointEntry))
+ api.uploadPointEntry(
+ SPUtils.getString(SPConstants.PROJECT_ID),
+ arrayListOf(pointEntry)
+ )
if (res.success) {
_uploadPointEntryResponse.postValue(res.data)
} else {
@@ -151,6 +134,7 @@ class ProjectViewModel : BaseViewModel() {
}
}
}
+
fun uploadPointEntry(pointEntryList: List) {
launch {
val res =
@@ -162,4 +146,81 @@ class ProjectViewModel : BaseViewModel() {
}
}
}
+
+ val createInspectionReportResponse: LiveData
+ get() = _createInspectionReportResponse
+ private val _createInspectionReportResponse = MutableLiveData()
+
+ /**
+ * 生成报验单
+ */
+ fun createInspectionReport(workId: String) {
+ launch {
+ val res = api.createInspectionReport(SPUtils.getString(SPConstants.PROJECT_ID), workId)
+ if (res.success) {
+ _createInspectionReportResponse.postValue(res.data)
+ } else {
+ errorResponse.postValue(res.message)
+ }
+ }
+ }
+
+ val loftingBeanListResponse: LiveData>
+ get() = _loftingBeanListResponse
+ private val _loftingBeanListResponse = MutableLiveData>()
+
+ /**
+ * 获取放样任务列表
+ */
+ fun fetchLoftingList(keyword: String? = null) {
+ launch {
+ val query = if (keyword.isNullOrBlank())
+ ""
+ else
+ "[{\"code\":\"ZYLB_ZYLBZT_NAME\",\"type\":\"=\",\"value\":\"执行中\"},{\"type\":\"and\",\"value\":[{\"code\":\"ZYLB_ZY_NAME\",\"type\":\"like\",\"value\":\"${keyword}\",\"cn\":\"or\"},{\"code\":\"ZYLB_CLY\",\"type\":\"like\",\"value\":\"${keyword}\"}]}]"
+ val res = api.fetchLoftingList(j_qurey = query)
+ if (res.success) {
+ _loftingBeanListResponse.postValue(res.data)
+ } else {
+ errorResponse.postValue(res.message)
+ }
+ }
+ }
+
+ val loftingPointListResponse: LiveData>
+ get() = _loftingPointListResponse
+ private val _loftingPointListResponse = MutableLiveData>()
+
+ /**
+ * 获取放样点
+ */
+ fun fetchLoftingPointList(workId: String) {
+ launch {
+ val res = api.fetchLoftingPointList(workId = workId)
+ if (res.success) {
+ _loftingPointListResponse.postValue(res.data.map { it.values })
+ } else {
+ errorResponse.postValue(res.message)
+ }
+ }
+ }
+
+ val uploadLoftingPointRecordResponse: LiveData
+ get() = _uploadLoftingPointRecordResponse
+ private val _uploadLoftingPointRecordResponse = MutableLiveData()
+
+
+ /**
+ * 上传放样测点记录
+ */
+ fun uploadLoftingPointRecord(record: LoftingPointRecordEntry) {
+ launch {
+ val res = api.uploadLoftingPointRecord(requestBody = arrayListOf(record))
+ if (res.success) {
+ _uploadLoftingPointRecordResponse.postValue(res.data)
+ } else {
+ errorResponse.postValue(res.message)
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/project/survey/model/InspectionReportBean.kt b/app/src/main/java/com/project/survey/model/InspectionReportBean.kt
new file mode 100644
index 0000000..d4eee82
--- /dev/null
+++ b/app/src/main/java/com/project/survey/model/InspectionReportBean.kt
@@ -0,0 +1,14 @@
+package com.project.survey.model
+
+/**
+ * {
+ * "__PK_VALUE": "331753351bc74ab483d928b839c8a783",
+ * "BD_CLJH_ID": "331753351bc74ab483d928b839c8a783",
+ * "CLJH_WORKSTATUS": "报验单已生成"
+ * }
+ */
+data class InspectionReportBean(
+ val __PK_VALUE: String,
+ val BD_CLJH_ID: String,
+ val CLJH_WORKSTATUS: String
+)
diff --git a/app/src/main/java/com/project/survey/model/LoftingBean.kt b/app/src/main/java/com/project/survey/model/LoftingBean.kt
new file mode 100644
index 0000000..d75cd3d
--- /dev/null
+++ b/app/src/main/java/com/project/survey/model/LoftingBean.kt
@@ -0,0 +1,29 @@
+package com.project.survey.model
+
+/**
+ * {
+ * "ZYLB_ZYLBZT_NAME": "执行中",
+ * "BD_ZYLB_ID": "9af7f594dfff4ab2b66a330873a17a19",
+ * "SY_CREATEUSERID": "HeRyydYjKz819ZLq9dw",
+ * "SY_GROUP_COMPANY_ID": "ROOT",
+ * "ZYLB_ZY_NAME": "放样2",
+ * "SY_COMPANY_ID": "V1R0gp2zJ3SvGFNvJdM",
+ * "ZYLB_FYSPJD": "2",
+ * "ZYLB_FYGCJD": "2",
+ * "SY_CREATEUSERNAME": "齐恒(施工1-1)",
+ * "SY_CREATETIME": "2024-11-01 10:45:08",
+ * "SY_ORG_ID": "systemdepartment",
+ * "ZYLB_CLY": "齐恒(施工单位1-2)",
+ * "ZYLB_ZYLBZT_CODE": "01",
+ * "ZYLB_ZYMS": "2",
+ * "BD_XMXX_ID": "xYgALS4VOJ0vDrEVUcQ",
+ * "ZYLB_CLY_ID": "2eab34c5248a4efe80ef12c370f2d5fa"
+ * }
+ */
+data class LoftingBean(
+ val ZYLB_ZY_NAME: String, //作业名称
+ val SY_CREATETIME: String, //创建时间
+ val BD_ZYLB_ID: String, //作业ID
+ val ZYLB_CLY: String, //测量员姓名
+ val ZYLB_ZYMS: String,
+)
diff --git a/app/src/main/java/com/project/survey/model/LoftingListBean.kt b/app/src/main/java/com/project/survey/model/LoftingListBean.kt
deleted file mode 100644
index 167039c..0000000
--- a/app/src/main/java/com/project/survey/model/LoftingListBean.kt
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.project.survey.model
-
-import androidx.annotation.Keep
-
-@Keep
-class LoftingListBean {
-}
\ No newline at end of file
diff --git a/app/src/main/java/com/project/survey/model/LoftingPointBean.kt b/app/src/main/java/com/project/survey/model/LoftingPointBean.kt
new file mode 100644
index 0000000..696cf9b
--- /dev/null
+++ b/app/src/main/java/com/project/survey/model/LoftingPointBean.kt
@@ -0,0 +1,46 @@
+package com.project.survey.model
+
+import androidx.annotation.Keep
+
+@Keep
+data class LoftingPointListBean(
+ val values: LoftingPointBean
+)
+
+/**
+ * {
+ * "ZBSJ_FYZB_X": 111,
+ * "ZBSJ_FYZB_Y": 111,
+ * "ZBSJ_FYZB_Z": 111,
+ * "SY_COMPANY_ID": "V1R0gp2zJ3SvGFNvJdM",
+ * "SY_CREATEUSERNAME": "齐恒(施工1-1)",
+ * "ZBSJ_D_NAME": "p1",
+ * "SY_ORDERINDEX": null,
+ * "BD_ZYLBMX_ID": "98c1f946603c421a834c9f5f2df5e51b",
+ * "SY_GROUP_COMPANY_NAME": "",
+ * "SY_COMPANY_NAME": "某某公司",
+ * "BD_XMXX_ID": "xYgALS4VOJ0vDrEVUcQ",
+ * "SY_CREATEORGID": "oOBheA6LJhZBgr3GKrP",
+ * "BD_ZYLB_ID": "9af7f594dfff4ab2b66a330873a17a19",
+ * "SY_STATUS": "1",
+ * "SY_CREATEUSERID": "HeRyydYjKz819ZLq9dw",
+ * "SY_GROUP_COMPANY_ID": "ROOT",
+ * "BD_ZYFF_ID": "f7f191e1ccb447b8821ed34029b0044e",
+ * "ZBSJ_FBFXMC": "第一排(重点)",
+ * "ZBSJ_FBFXID": "LcFrqZZe4qdmbIJKLlN",
+ * "ZBSJ_D_TYPE": "01",
+ * "ZBSJ_D_TYPE_NAME": "平面与高程",
+ * "BD_ZBSJ_ID": "7fd03e2e1e084d7980946b801184cc1e",
+ * "SY_CREATEORGNAME": "北斗",
+ * "SY_CREATETIME": "2024-11-01 10:45:08",
+ * "SY_ORG_ID": "systemdepartment"
+ * }
+ */
+@Keep
+data class LoftingPointBean(
+ val ZBSJ_D_NAME: String, //点名称
+ val BD_ZYLBMX_ID: String, //放样点ID
+ val ZBSJ_FYZB_X: String,
+ val ZBSJ_FYZB_Y: String,
+ val ZBSJ_FYZB_Z: String
+)
diff --git a/app/src/main/java/com/project/survey/model/LoftingPointRecordEntry.kt b/app/src/main/java/com/project/survey/model/LoftingPointRecordEntry.kt
new file mode 100644
index 0000000..600e020
--- /dev/null
+++ b/app/src/main/java/com/project/survey/model/LoftingPointRecordEntry.kt
@@ -0,0 +1,42 @@
+package com.project.survey.model
+
+import com.bingce.data.surveyor.surveydata.pointstake.PointStakeRecord
+import com.bingce.device.Device
+import com.bingce.device.enums.DeviceTypeEnum
+
+data class LoftingPointRecordEntry(
+ val settingOutPointId: String, //放样点ID,对应 LoftingPointBean 里的 BD_ZYLBMX_ID
+ val antennaHight: String, //天线高 "11"
+ val remark: String, //备注 "点1"
+ val x: String, //"111"
+ val y: String, //"11"
+ val z: String, //"11"
+ val longitude: String, //经度
+ val latitude: String, //纬度
+ val hrms: String,
+ val vrms: String,
+ val pdop: String,
+ val delay: String, //延迟 "xx"
+ val jzt: String, //解状态 "xx"
+ val satellite: String, //结算卫星 "xx"
+) {
+ /**
+ * 将放样记录对象 转为 上传需要的对象
+ */
+ constructor(record: PointStakeRecord) : this(
+ record.jobId,
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) "${record.deviceInfoData.rtkStatusData?.poleHeight}" else "${record.deviceInfoData.tsStatusData?.hr}",
+ record.remarks ?: "",
+ "${record.measuredX}",
+ "${record.measuredY}",
+ "${record.measuredZ}",
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) "${record.deviceInfoData.rtkStatusData?.longitude}" else "",
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) "${record.deviceInfoData.rtkStatusData?.latitude}" else "",
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) "${record.deviceInfoData.rtkStatusData?.hrms}" else "",
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) "${record.deviceInfoData.rtkStatusData?.vrms}" else "",
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) "${record.deviceInfoData.rtkStatusData?.pdop}" else "",
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) "${record.deviceInfoData.rtkStatusData?.diffAge}" else "",
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) record.deviceInfoData.rtkStatusData?.solutionState ?: "" else "",
+ if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_RTK) "${record.deviceInfoData.rtkStatusData?.satSolutionNum}" else ""
+ )
+}
diff --git a/app/src/main/java/com/project/survey/model/MeasureBean.kt b/app/src/main/java/com/project/survey/model/MeasureBean.kt
index 29c3439..7ab8438 100644
--- a/app/src/main/java/com/project/survey/model/MeasureBean.kt
+++ b/app/src/main/java/com/project/survey/model/MeasureBean.kt
@@ -1,7 +1,48 @@
package com.project.survey.model
/**
+ * CLJH_ 测量计划
+ * GCJL_ 工程计量
*
+ *
+ * 工程计量返回
+ * {
+ * "BD_CONTRACT_ID": "",
+ * "GCJL_JLNR": "",
+ * "GCJL_SFWZDBW_CODE": "0",
+ * "BD_FBFXPZ_DWGCMC": "1号楼",
+ * "SY_COMPANY_ID": "V1R0gp2zJ3SvGFNvJdM",
+ * "GCJL_LCMC": "123",
+ * "BD_FBFXPZ_FXGCMC": "就餐区",
+ * "SY_CREATEUSERNAME": "admin123",
+ * "GCJL_SBDW_ID": "",
+ * "GCJL_SFWLHCL_CODE": "1",
+ * "CONTRACT_CODE": "",
+ * "SY_PREAPPROVUSERNAMES": "",
+ * "SY_CURRENTTASK": "",
+ * "BD_XMXX_ID": "xYgALS4VOJ0vDrEVUcQ",
+ * "GCJL_FL": "",
+ * "SY_CREATEUSERID": "b641884e6add456b83264163a8486337",
+ * "SY_GROUP_COMPANY_ID": "ROOT",
+ * "BD_FBFXPZ_DYGCBH": "DWGCBH2024101601",
+ * "GCJL_BDLSH": "CLJH2024103018",
+ * "SY_AUDFLAG": "NOSTATUS",
+ * "BF_FBFXPZ_FBGCBH": "FXGCJCQ2024101601",
+ * "GCJL_SBDW": "",
+ * "CONTRACT_NAME": "",
+ * "GCJL_ZT_CODE": "01",
+ * "GCJL_ZT_NAME": "草稿",
+ * "GCJL_LHCLDW_ID": "bd9a78b1-c307-475f-9442-3a80a80591f0",
+ * "BD_QYXX_ID": "",
+ * "SY_CREATETIME": "2024-10-30 11:16:34",
+ * "SY_ORG_ID": "systemdepartment",
+ * "BD_FBFXPZ_FBGCMC": "B1食堂",
+ * "BD_FBFXPZ_DWGCBH": "FXGCJCQ-ROW3-2024101601",
+ * "BD_CLGZ_GCJL_ID": "0954b1500f644fffa1d36671eb8436bd",
+ * "BD_FBFXPZ_DYGCMC": "3排8人区",
+ * "GCJL_SFWZDBW_NAME": "",
+ * "BD_FBFXPZ_FXGCBH": "FBGCB1202401"
+ * }
*/
data class MeasureBean(
val BD_CONTRACT_ID: String,
@@ -16,9 +57,12 @@ data class MeasureBean(
val BD_CLJH_ID: String, //测量计划ID,即测量工作ID
val CLJH_STARTTIME: String,
val CLJH_CONTENT: String, //测量内容
- val CLJH_LCMC: String, //流程名称
+ val CLJH_LCMC: String?, //流程名称
val BD_FBFXPZ_FBGCMC: String, //分部工程名称
val BD_FBFXPZ_DYGCMC: String, //单元工程名称
- val CLJH_BDLSH: String, //流程编号
+ val CLJH_BDLSH: String?, //流程编号
val CLJH_CLLX_NAME: String, //测量类型
+
+ val GCJL_LCMC: String?, //流程名称(工程计量)
+ val GCJL_BDLSH: String?, //流程编号
)
diff --git a/app/src/main/java/com/project/survey/network/Api.kt b/app/src/main/java/com/project/survey/network/Api.kt
index 65478cf..76f41ac 100644
--- a/app/src/main/java/com/project/survey/network/Api.kt
+++ b/app/src/main/java/com/project/survey/network/Api.kt
@@ -1,15 +1,21 @@
package com.project.survey.network
+import com.project.survey.constants.SPConstants
import com.project.survey.logic.bean.ListResult
import com.project.survey.model.ApprovalResponse
import com.project.survey.model.ControlNetworkBean
import com.project.survey.model.ControlNetCGBean
import com.project.survey.model.ControlNetworkInfoBean
+import com.project.survey.model.InspectionReportBean
+import com.project.survey.model.LoftingBean
+import com.project.survey.model.LoftingPointListBean
+import com.project.survey.model.LoftingPointRecordEntry
import com.project.survey.model.LoginBean
import com.project.survey.model.MeasureBean
import com.project.survey.model.PointEntry
import com.project.survey.model.ProjectBean
import com.project.survey.model.ProjectData
+import com.project.survey.util.SPUtils
import okhttp3.RequestBody
import retrofit2.http.Body
import retrofit2.http.Field
@@ -22,15 +28,6 @@ import retrofit2.http.Query
interface Api {
-// /**
-// * 登录
-// */
-// @GET("je/personInfo/externalEntry")
-// suspend fun login(
-// @Query("account") account: String,
-// @Query("password") password: String
-// ): HttpResult
-
/**
* 内部登录获取验证码
*/
@@ -78,23 +75,6 @@ interface Api {
@Query("personId") personId: String
): HttpResult>
-// /**
-// * 发送验证码
-// */
-// @GET("/Api/Mas/sendSms")
-// suspend fun sendSMS(
-// @Query("mobile") mobile: String
-// ): HttpResult
-//
-// /**
-// * 验证验证码
-// */
-// @GET("/Api/Mas/CheckVerifycode")
-// suspend fun checkVerifyCode(
-// @Query("mobile") mobile: String,
-// @Query("verifycode") verifycode: String
-// ): HttpResult
-
/**
* 获取流程审批列表
*/
@@ -161,8 +141,8 @@ interface Api {
/**
* 获取测量工作:测量计划与工程计量
* @param tableCode 测量计划传BD_CLJH,工程计量传:BD_CLGZ_GCJL
- * @param funcCode 测量计划传BD_CLJH,工程计量传:BD_CLGZ_GCJL
- * @param j_qurey 固定参数 [{"code":"SY_CURRENTTASK","type":"=","value":"施工单位APP上开展测量工作"}]
+ * @param funcCode 测量计划传BD_CLJH,工程计量传:BD_CLGZ_GCJL_ZB(*******)
+ * @param j_qurey 固定参数
*/
@FormUrlEncoded
@POST("je/cloud/beiDou/load")
@@ -178,14 +158,17 @@ interface Api {
/**
* 修改测量工作状态
+ * @param workId 测量工作ID
+ * @param workType 测量计划传BD_CLJH,工程计量传:BD_CLGZ_GCJL
+ * @param status 执行中、已结束(对应按钮:进入测量、结束测量)
*/
@GET("je/measureWork/modifyWorkStatus")
suspend fun updateMeasureWorkStatus(
@Header("projectId") projectId: String,
- @Query("workId") workId: String, //测量工作ID
- @Query("workType") workType: String, //测量计划传BD_CLJH,工程计量传:BD_CLGZ_GCJL
- @Query("status") status: String //执行中、已结束(对应按钮:进入测量、结束测量)
- ) : HttpResult
+ @Query("workId") workId: String,
+ @Query("workType") workType: String,
+ @Query("status") status: String
+ ): HttpResult
/**
* 测点记录录入
@@ -194,5 +177,44 @@ interface Api {
suspend fun uploadPointEntry(
@Header("projectId") projectId: String,
@Body requestBody: List
- ) : HttpResult
+ ): HttpResult
+
+ /**
+ * 生成报验单
+ */
+ @GET("je/measureWork/createInspectionReport")
+ suspend fun createInspectionReport(
+ @Header("projectId") projectId: String,
+ @Query("workId") workId: String
+ ): HttpResult
+
+ /**
+ * 放样任务查询
+ */
+ @FormUrlEncoded
+ @POST("je/cloud/beiDou/load")
+ suspend fun fetchLoftingList(
+ @Header("projectId") projectId: String = SPUtils.getString(SPConstants.PROJECT_ID),
+ @Field("tableCode") tableCode: String = "BD_ZYLB",
+ @Field("funcCode") funcCode: String = "BD_ZYLB",
+ @Field("j_qurey") j_qurey: String = ""
+ ): HttpResult>
+
+ /**
+ * 根据放样作业ID获取放样点
+ */
+ @GET("je/measureWork/qureySettingOutPointsByWorkId")
+ suspend fun fetchLoftingPointList(
+ @Header("projectId") projectId: String = SPUtils.getString(SPConstants.PROJECT_ID),
+ @Query("workId") workId: String
+ ): HttpResult>
+
+ /**
+ * 上传放样测点记录
+ */
+ @POST("je/measureWork/pointsEntryForSettingOutPoint")
+ suspend fun uploadLoftingPointRecord(
+ @Header("projectId") projectId: String = SPUtils.getString(SPConstants.PROJECT_ID),
+ @Body requestBody: List
+ ): HttpResult
}
\ No newline at end of file
diff --git a/app/src/main/java/com/project/survey/ui/base/BaseBindingActivity.kt b/app/src/main/java/com/project/survey/ui/base/BaseBindingActivity.kt
index 2da8e06..e300427 100644
--- a/app/src/main/java/com/project/survey/ui/base/BaseBindingActivity.kt
+++ b/app/src/main/java/com/project/survey/ui/base/BaseBindingActivity.kt
@@ -181,8 +181,8 @@ abstract class BaseBindingActivity : AppCompatActivity() {
// initToolBar()
initView()
- initListener()
initData()
+ initListener()
}
private fun initTheme() {
diff --git a/app/src/main/java/com/project/survey/ui/home/HomeFragment.kt b/app/src/main/java/com/project/survey/ui/home/HomeFragment.kt
index db783da..826e44c 100644
--- a/app/src/main/java/com/project/survey/ui/home/HomeFragment.kt
+++ b/app/src/main/java/com/project/survey/ui/home/HomeFragment.kt
@@ -3,6 +3,7 @@ package com.project.survey.ui.home
import android.view.LayoutInflater
import android.view.ViewGroup
import androidx.fragment.app.viewModels
+import com.project.survey.constants.Constants
import com.project.survey.constants.EventConstants
import com.project.survey.constants.SPConstants
import com.project.survey.databinding.FragmentHomeBinding
@@ -50,11 +51,11 @@ class HomeFragment : BaseBindingFragment() {
override fun initListener() {
// 测量计划
mBinding.itemSurveyPlan.setOnClickNoRepeatListener {
- PointMeasureListActivity.start(PointMeasureListActivity.TYPE_SURVEY_PLAN)
+ PointMeasureListActivity.start(Constants.TYPE_BD_CLJH)
}
// 工程计量
mBinding.itemEngineeringMetrology.setOnClickNoRepeatListener {
- PointMeasureListActivity.start(PointMeasureListActivity.TYPE_PROJECT_MEASURE)
+ PointMeasureListActivity.start(Constants.TYPE_BD_CLGZ_GCJL)
}
// //点测量
// mBinding.itemPointMeasure.setOnClickNoRepeatListener {
diff --git a/app/src/main/java/com/project/survey/ui/instrument/setupstation/StakingNewJobActivity.java b/app/src/main/java/com/project/survey/ui/instrument/setupstation/StakingNewJobActivity.java
index 6df8c85..82cfaf9 100644
--- a/app/src/main/java/com/project/survey/ui/instrument/setupstation/StakingNewJobActivity.java
+++ b/app/src/main/java/com/project/survey/ui/instrument/setupstation/StakingNewJobActivity.java
@@ -27,7 +27,6 @@ import androidx.recyclerview.widget.RecyclerView;
import com.afollestad.materialdialogs.DialogAction;
import com.afollestad.materialdialogs.MaterialDialog;
import com.afollestad.materialdialogs.internal.MDButton;
-import com.bingce.data.cache.CachedCurrentJob;
import com.bingce.data.cache.CachedProject;
import com.bingce.data.database.PointDb;
import com.bingce.data.surveyor.surveydata.pointsurvey.PointConstants;
@@ -36,6 +35,7 @@ import com.bingce.surveyor.agentweb.AgentWebActivity;
import com.bingce.surveyor.util.dialog.CustomDialog;
import com.bingce.ui.BcDialogExt;
import com.bingce.utils.ActivityUtils;
+import com.bingce.utils.IntentUtil;
import com.bingce.utils.PointLibraryUtil;
import com.bingce.utils.SimpleTextWatcher;
import com.bingce.utils.StringUtil;
@@ -45,12 +45,14 @@ import com.bingce.viewmodel.AbstractCoordinatePointsLibraryViewModelKt;
import com.kongzue.dialogx.interfaces.OnBindView;
import com.project.survey.App;
import com.project.survey.R;
+import com.project.survey.constants.SPConstants;
import com.project.survey.databinding.ActivityStakingNewJob2Binding;
import com.project.survey.dialog.BubblePopWindow;
import com.project.survey.ui.base.BaseSurveyNewActivity;
import com.project.survey.ui.instrument.setupstation.adapter.StakingPointLibraryAdapter;
import com.project.survey.ui.instrument.setupstation.util.StakingPointsLibraryActivitySQLiteUtils;
import com.project.survey.util.CommonUtils;
+import com.project.survey.util.SPUtils;
import com.rengwuxian.materialedittext.MaterialEditText;
import java.io.File;
@@ -59,7 +61,6 @@ import java.util.List;
import blankj.utilcode.util.ConvertUtils;
import blankj.utilcode.util.ToastUtils;
-import blankj.utilcode.util.Utils;
import ru.bartwell.exfilepicker.ExFilePicker;
import ru.bartwell.exfilepicker.data.ExFilePickerResult;
@@ -106,8 +107,8 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
@Override
public void fireByKey(String key) {
ThreadPoolUtil.execute(() -> {
- String projectId = CachedProject.currentProjectId();
- jobId = CachedCurrentJob.currentJobId(projectId);
+// String projectId = CachedProject.currentProjectId();
+// jobId = CachedCurrentJob.currentJobId(projectId);
ThreadPoolUtil.executeInMain(() -> {
pagingDataLiveData.removeObservers(StakingNewJobActivity.this);
pagingDataLiveData = PagingLiveData.cachedIn(PagingLiveData.getLiveData(pager), getLifecycle());
@@ -137,7 +138,8 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
private final static String RESULT_X = "x";
private final static String RESULT_Y = "y";
private final static String RESULT_Z = "z";
- private String jobId;
+ // private String jobId;
+ private String workId;
private LiveData> pagingDataLiveData;
public View getContentView() {
@@ -149,6 +151,8 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
protected void initView() {
setTitle(getString(R.string.staking_point_library));
+ workId = IntentUtil.stringExtra(this, KEY_WORK_ID);
+
if (App.instance.isThemeDark()) {
binding.topLayout.setBackgroundColor(getColor(R.color.theme_dark_black));
binding.tvNumber.setTextColor(getColor(R.color.white));
@@ -170,8 +174,8 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
}));
ThreadPoolUtil.execute(() -> {
- String projectId = CachedProject.currentProjectId();
- jobId = CachedCurrentJob.currentJobId(projectId);
+// String projectId = CachedProject.currentProjectId();
+// jobId = CachedCurrentJob.currentJobId(projectId);
ThreadPoolUtil.executeInMain(() -> {
pagingDataLiveData = PagingLiveData.cachedIn(PagingLiveData.getLiveData(pager), getLifecycle());
pagingDataLiveData
@@ -233,8 +237,8 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
filterParameter.setCodeKey(codeKey);
filterParameter.setRemarkKey(remarksKey);
ThreadPoolUtil.execute(() -> {
- String projectId = CachedProject.currentProjectId();
- jobId = CachedCurrentJob.currentJobId(projectId);
+// String projectId = CachedProject.currentProjectId();
+// jobId = CachedCurrentJob.currentJobId(projectId);
ThreadPoolUtil.executeInMain(() -> {
pagingDataLiveData.removeObservers(this);
pagingDataLiveData =
@@ -247,6 +251,7 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
});
});
+ // 新建
binding.pointsLibraryBtnNewCreate.setOnClickListener(v -> {
showPointDialog(null, getString(R.string.new_point));
});
@@ -324,14 +329,14 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
private PagingSource dataSourse() {
return PointDb.getInstance().rawQueryPagingSource(StakingPointsLibraryActivitySQLiteUtils.searchSQLit(
- jobId,
+ workId,
filterParameter, true, binding.etEnterNameCode.getText().toString().trim()
));
}
private List getAllPoint() {
return PointDb.getInstance().rawQueryListData(StakingPointsLibraryActivitySQLiteUtils.searchSQLit(
- jobId,
+ workId,
filterParameter, true, binding.etEnterNameCode.getText().toString().trim()
));
}
@@ -355,8 +360,8 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
record.remarks = met_remarks.getText().toString().trim();
} else {
String projectId = CachedProject.currentProjectId();
- jobId = CachedCurrentJob.currentJobId(projectId);
- record = new PointRecord(projectId, jobId, "",
+// jobId = CachedCurrentJob.currentJobId(projectId);
+ record = new PointRecord(projectId, workId, "",
PointConstants.POINT_TYPE_KNOWN_POINT,
met_name.getText().toString().trim(),
met_code.getText().toString().trim(),
@@ -550,20 +555,20 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
ExFilePickerResult object = ExFilePickerResult.getFromIntent(data);
if (object != null && object.getCount() > 0) {
ThreadPoolUtil.execute(() -> {
- String projectId = CachedProject.currentProjectId();
- jobId = CachedCurrentJob.currentJobId(projectId);
+ String projectId = SPUtils.INSTANCE.getString(SPConstants.PROJECT_ID, "");
+// jobId = CachedCurrentJob.currentJobId(projectId);
try {
String path = object.getPath() + object.getNames().get(0);
String result = null;
switch (requestCode) {
case EX_FILE_PICKER_RESULT_SURVEYOR_EXCEL:
- PointLibraryUtil.importStakingJobPointExcel(new File(path), projectId, jobId, isOverrideImport, (status, msg) -> ToastUtils.showShort(msg));
+ PointLibraryUtil.importStakingJobPointExcel(new File(path), projectId, workId, isOverrideImport, (status, msg) -> ToastUtils.showShort(msg));
break;
case EX_FILE_PICKER_RESULT_SURVEYOR_TXT:
- PointLibraryUtil.importStakingJobPointTxt(new File(path), projectId, jobId, isOverrideImport, (status, msg) -> ToastUtils.showShort(msg));
+ PointLibraryUtil.importStakingJobPointTxt(new File(path), projectId, workId, isOverrideImport, (status, msg) -> ToastUtils.showShort(msg));
break;
case EX_FILE_PICKER_RESULT_CASS_DAT:
- PointLibraryUtil.importStakingJobPointCassDat(new File(path), projectId, jobId, isOverrideImport, cassXY, (status, msg) -> ToastUtils.showShort(msg));
+ PointLibraryUtil.importStakingJobPointCassDat(new File(path), projectId, workId, isOverrideImport, cassXY, (status, msg) -> ToastUtils.showShort(msg));
break;
}
} catch (Exception e) {
@@ -621,11 +626,6 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
}
}
- public static void start(Context context) {
- Intent intent = new Intent(context, StakingNewJobActivity.class);
- intent.putExtra(KEY_IS_SELECT, false);
- context.startActivity(intent);
- }
@Override
public BubblePopWindow newBubblePopWindow(Context context) {
@@ -644,9 +644,27 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
})));
}
- @Override
- public boolean isHideHelpDoc() {
- return true;
+ private static final String KEY_WORK_ID = "keyWorkId";
+
+ public static void start(Context context, String workId) {
+ Intent intent = new Intent(context, StakingNewJobActivity.class);
+ intent.putExtra(KEY_IS_SELECT, false);
+ intent.putExtra(KEY_WORK_ID, workId);
+ context.startActivity(intent);
+ }
+
+ public static void start(FragmentActivity context, String workId, OnSelectedPointListener listener) {
+ Intent intent = new Intent(context, StakingNewJobActivity.class);
+ intent.putExtra(KEY_IS_SELECT, true);
+ intent.putExtra(KEY_WORK_ID, workId);
+ ActivityUtils.startActivityForResults(context, intent, result -> {
+ if (result.getResultCode() == RESULT_OK && result.getData() != null) {
+ String pointId = result.getData().getStringExtra(RESULT_POINT_ID);
+ if (listener != null) {
+ listener.onSelected(pointId);
+ }
+ }
+ });
}
public static void pickPoint(FragmentActivity context, ICallback callback) {
@@ -679,6 +697,10 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
void onPicked(String pointId, int index, String name, double x, double y, double z);
}
+ public interface OnSelectedPointListener {
+ void onSelected(String pointId);
+ }
+
@Override
protected void onDestroy() {
try {
@@ -691,4 +713,9 @@ public class StakingNewJobActivity extends BaseSurveyNewActivity {
}
super.onDestroy();
}
+
+ @Override
+ public boolean isHideHelpDoc() {
+ return true;
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/project/survey/ui/lofting/LoftingListActivity.kt b/app/src/main/java/com/project/survey/ui/lofting/LoftingListActivity.kt
index 80af716..2ee43b6 100644
--- a/app/src/main/java/com/project/survey/ui/lofting/LoftingListActivity.kt
+++ b/app/src/main/java/com/project/survey/ui/lofting/LoftingListActivity.kt
@@ -1,8 +1,10 @@
package com.project.survey.ui.lofting
+import androidx.activity.viewModels
import com.project.survey.R
import com.project.survey.databinding.ActivityLoftingListBinding
-import com.project.survey.model.LoftingListBean
+import com.project.survey.extend.toast
+import com.project.survey.logic.viewmodel.ProjectViewModel
import com.project.survey.ui.base.BaseBindingActivity
import com.project.survey.ui.lofting.adapter.LoftingListAdapter
import com.project.survey.ui.lofting.pointlofting.PointStakingActivity
@@ -10,7 +12,6 @@ import com.project.survey.util.ActivityNavUtil
class LoftingListActivity : BaseBindingActivity() {
- private val adapter by lazy { LoftingListAdapter() }
companion object {
fun start() {
@@ -18,6 +19,11 @@ class LoftingListActivity : BaseBindingActivity() {
}
}
+ private val viewModel: ProjectViewModel by viewModels()
+ private val adapter by lazy { LoftingListAdapter() }
+ private var searchContent = "" // 搜索框里的内容
+
+
override fun getBinding(): ActivityLoftingListBinding =
ActivityLoftingListBinding.inflate(layoutInflater)
@@ -30,23 +36,36 @@ class LoftingListActivity : BaseBindingActivity() {
}
override fun initData() {
- val dataList = mutableListOf()
- for (i in 0 until 3) {
- dataList.add(LoftingListBean())
+ viewModel.errorResponse.observe(this) {
+ toast(it)
+ dismissLoadingDialog()
}
- adapter.submitList(dataList)
+ viewModel.loftingBeanListResponse.observe(this) {
+ dismissLoadingDialog()
+ adapter.submitList(it.rows)
+ }
+
+ fetchData()
}
override fun initListener() {
// 搜索
mBinding.searchWidget.setOnEditorSearchListener {
+ searchContent = it
+ showLoadingDialog()
+ fetchData()
}
// 放样
adapter.addOnItemChildClickListener(R.id.tvLofting) { _, _, position ->
adapter.getItem(position)?.let { bean ->
- PointStakingActivity.start(this)
+ PointStakingActivity.start(this, bean.BD_ZYLB_ID)
+// viewModel.fetchLoftingPointList(bean.BD_ZYLB_ID)
}
}
}
+
+ private fun fetchData() {
+ viewModel.fetchLoftingList(searchContent)
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/project/survey/ui/lofting/adapter/LoftingListAdapter.kt b/app/src/main/java/com/project/survey/ui/lofting/adapter/LoftingListAdapter.kt
index 6923c92..4bb983d 100644
--- a/app/src/main/java/com/project/survey/ui/lofting/adapter/LoftingListAdapter.kt
+++ b/app/src/main/java/com/project/survey/ui/lofting/adapter/LoftingListAdapter.kt
@@ -5,17 +5,18 @@ import android.view.ViewGroup
import com.chad.library.adapter4.BaseQuickAdapter
import com.chad.library.adapter4.viewholder.QuickViewHolder
import com.project.survey.R
+import com.project.survey.model.LoftingBean
-class LoftingListAdapter : BaseQuickAdapter() {
+class LoftingListAdapter : BaseQuickAdapter() {
- override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: Any?) {
- item?.let { bean ->
- holder.setText(R.id.tvWorkName, "作业名称")
- .setText(R.id.tvWorkDesc, "作业内容内容内容")
- .setText(R.id.tvCreateTime, "2022-05-17 10:58:48")
- .setText(R.id.tvProjectName, "单位-分部-分项 3个名称合并显示")
- .setText(R.id.tvSurveyor, "丁汉臻")
- }
+ override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: LoftingBean?) {
+ if (item == null)
+ return
+ holder.setText(R.id.tvWorkName, item.ZYLB_ZY_NAME)
+ .setText(R.id.tvWorkDesc, item.ZYLB_ZYMS)
+ .setText(R.id.tvCreateTime, item.SY_CREATETIME)
+ .setText(R.id.tvProjectName, "")
+ .setText(R.id.tvSurveyor, item.ZYLB_CLY)
}
override fun onCreateViewHolder(
diff --git a/app/src/main/java/com/project/survey/ui/lofting/pointlofting/PointStakingActivity.java b/app/src/main/java/com/project/survey/ui/lofting/pointlofting/PointStakingActivity.java
index 00fd0e1..65ae146 100644
--- a/app/src/main/java/com/project/survey/ui/lofting/pointlofting/PointStakingActivity.java
+++ b/app/src/main/java/com/project/survey/ui/lofting/pointlofting/PointStakingActivity.java
@@ -1,9 +1,6 @@
package com.project.survey.ui.lofting.pointlofting;
-import static com.bingce.surveyor.util.ConstUtils.intentConst.KEY_JOB_ID;
-
import android.annotation.SuppressLint;
-import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
@@ -11,6 +8,8 @@ import android.graphics.DashPathEffect;
import android.text.TextUtils;
import android.view.View;
+import androidx.lifecycle.Observer;
+import androidx.lifecycle.ViewModelProvider;
import androidx.preference.PreferenceManager;
import androidx.sqlite.db.SimpleSQLiteQuery;
@@ -23,7 +22,6 @@ import com.bingce.coordlib.util.CoordUtil;
import com.bingce.data.DeviceInfoData;
import com.bingce.data.cache.CachedCurrentJob;
import com.bingce.data.cache.CachedCurrentRoad;
-import com.bingce.data.cache.CachedCurrentRoadKt;
import com.bingce.data.cache.CachedProject;
import com.bingce.data.database.DBQueryConstant;
import com.bingce.data.database.PointDb;
@@ -59,19 +57,23 @@ import com.bingce.utils.ThreadPoolUtil;
import com.bingce.utils.Util;
import com.project.survey.App;
import com.project.survey.R;
+import com.project.survey.constants.SPConstants;
import com.project.survey.databinding.ActivityPointStakingBinding;
import com.project.survey.dialog.CustomInputListDialog;
import com.project.survey.dialog.CustomLineChartDialog;
+import com.project.survey.logic.viewmodel.ProjectViewModel;
import com.project.survey.model.ControlRecord;
+import com.project.survey.model.LoftingPointBean;
+import com.project.survey.model.LoftingPointListBean;
+import com.project.survey.model.LoftingPointRecordEntry;
import com.project.survey.ui.base.BaseSurveyNewActivity;
-import com.project.survey.ui.instrument.setupstation.ControlPointsNewActivity;
-import com.project.survey.ui.instrument.setupstation.CoordinatePointsLibraryActivity;
import com.project.survey.ui.instrument.setupstation.StakingNewJobActivity;
import com.project.survey.ui.lofting.pointlofting.record.RecordsActivity;
import com.project.survey.ui.lofting.pointlofting.record.util.RecordTypeConstants;
import com.project.survey.ui.pointmeasure.measure.util.SurveyToolBarClickListenerUtils;
import com.project.survey.util.CommonUtils;
import com.project.survey.util.DeviceConnectUtil;
+import com.project.survey.util.SPUtils;
import com.project.survey.util.SurveyUIUtils;
import java.util.ArrayList;
@@ -96,6 +98,7 @@ import lecho.hellocharts.renderer.LineChartRenderer;
*/
public class PointStakingActivity extends BaseSurveyNewActivity {
+ private ProjectViewModel viewModel;
private Context mContext;
private ActivityPointStakingBinding binding;
private final Line currentPointLine = new Line(); //实测点
@@ -105,12 +108,12 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
private final Line effectGuideLine = new Line(); //放样引导线
private final Line effectHorLine = new Line(); //放样提示横向虚线
private final Line effectVerLine = new Line(); //放样提示纵向虚线
- private final List stakingLibraryPointList = new ArrayList<>();
+ private final List stakingLibraryPointList = new ArrayList<>(); //放样点列表
private List recordStakingBasePointList;
private PointRecord targetStakePointRecord;
private Coordinate currentCoordinate;
private Coordinate currentSmoothCoordinate;
-// protected final CachedCurrentRoadKt cachedRoadKt = new CachedCurrentRoadKt(this);
+ // protected final CachedCurrentRoadKt cachedRoadKt = new CachedCurrentRoadKt(this);
private final SurveyRemarksUtils surveyRemarksUtils = new SurveyRemarksUtils();
private IText distance, moveWestEast, moveSouthNorth, moveDigFill, moveLeftRight, moveBeforeAfter;
private MoveValue moveK;
@@ -126,6 +129,8 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
private boolean isFirstUpdateChartView;
private boolean mStakingPointIsInMemory = false;
+ private String workId = ""; //作业ID
+
@Override
public View getContentView() {
binding = ActivityPointStakingBinding.inflate(getLayoutInflater());
@@ -135,7 +140,10 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
@Override
protected void initView() {
mContext = this;
+ workId = IntentUtil.stringExtra(this, KEY_WORK_ID);
+ viewModel = new ViewModelProvider(this).get(ProjectViewModel.class);
preferences = PreferenceManager.getDefaultSharedPreferences(this);
+ // 指南针角度
targetCompassHelper.register(angle -> {
binding.dirCompass.setAngle(angle);
});
@@ -149,13 +157,13 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
baseSurveyActivityUtils.activityBaseSurveyBinding,
binding.baseSurveyStakingSetting, new SurveyToolBarClickListenerUtils.IToolBarClickListener() {
@Override
- public void onSettingClickListener() {
+ public void onSettingClickListener() { //设置
stopSoundPool();
PointStakingSettingActivity.start(mContext);
}
@Override
- public void onPositionCenterClickListener() {
+ public void onPositionCenterClickListener() { //居中
if (currentCoordinate == null) {
ToastUtils.showShort(getString(R.string.please_observe_measure_first));
return;
@@ -165,7 +173,7 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
}
@Override
- public void onFullScreenClickListener() {
+ public void onFullScreenClickListener() { // 全图
ChartViewUtils.centerInScreen(binding.lineChartView);
}
@@ -193,8 +201,10 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
//点库选点
binding.pointLibrary.setOnClickListener(v -> {
if (mStakingPointIsInMemory) return;
- StakingNewJobActivity.pickPoint(this, (pointId, pointsListIndex, name, x, y, z) ->
- onPickedPoint(true, pointId, name, x, y, z));
+ StakingNewJobActivity.start(this, workId, pointId -> {
+ targetStakePointRecord = stakingLibraryPointList.stream().filter(p -> p.id.equals(pointId)).findFirst().get();
+ updateUI();
+ });
});
//移动方法
showTopMoveMethod();
@@ -339,7 +349,7 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
}
String content = getString(R.string.whether_staking_selected_point) + getString(R.string.colon) + stakingLibraryPointList.get(pointIndex).name + "\n"
+ "X" + getString(R.string.colon) + Util.formatDouble2Double(stakingLibraryPointList.get(pointIndex).x, 6) + " "
- + "Y" + getString(R.string.colon) + Util.formatDouble2Double(stakingLibraryPointList.get(pointIndex).y, 6)+ "\n"
+ + "Y" + getString(R.string.colon) + Util.formatDouble2Double(stakingLibraryPointList.get(pointIndex).y, 6) + "\n"
+ "Z" + getString(R.string.colon) + Util.formatDouble2Double(stakingLibraryPointList.get(pointIndex).h, 6);
builder.setContent(content).setButtonConfirm(v -> {
targetStakePointRecord = stakingLibraryPointList.get(pointIndex);
@@ -357,29 +367,58 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
@Override
protected void initData() {
- String targetPointList = IntentUtil.stringExtra(this, KEY_POINT_LIST);
- if (StringUtil.isEmpty(targetPointList)) {
- PointDb.getInstance().rawQueryListLiveData(PointConstants.findKnownPointByJob(jobId())).observe(this, pointRecords -> {
- onPointRecordsUpdate(pointRecords);
- });
- } else {
- mStakingPointIsInMemory = true;
- Gson gson = new Gson();
- List points = gson.fromJson(targetPointList, new TypeToken>() {
- }.getType());
- List pointRecords = new ArrayList<>();
- for (StakingPoint point : points) {
- pointRecords.add(new PointRecord(
- "", "", "",
- point.getCategory(),
- point.getName(),
+ viewModel.getErrorResponse().observe(this, ToastUtils::showShort);
+ // 上传测点记录成功
+ viewModel.getUploadLoftingPointRecordResponse().observe(this, ToastUtils::showShort);
+ // 放样点列表
+ viewModel.getLoftingPointListResponse().observe(this, loftingPointListBeans -> {
+ List pointRecordList = new ArrayList<>();
+ for (LoftingPointBean point : loftingPointListBeans) {
+ PointRecord pointRecord = new PointRecord(
+ SPUtils.INSTANCE.getString(SPConstants.PROJECT_ID, ""), workId, "",
+ 3,
+ point.getZBSJ_D_NAME(),
"",
"",
- point.getX(), point.getY(), point.getZ(),
- 0, 0, 0, PointConstants.POINT_FORMAT_XYZ, new DeviceInfoData()));
+ Double.parseDouble(point.getZBSJ_FYZB_X()), Double.parseDouble(point.getZBSJ_FYZB_Y()), Double.parseDouble(point.getZBSJ_FYZB_Z()),
+ 0, 0, 0, PointConstants.POINT_FORMAT_XYZ, new DeviceInfoData());
+ pointRecord.id = point.getBD_ZYLBMX_ID();
+ pointRecordList.add(pointRecord);
}
- onPointRecordsUpdate(pointRecords);
- }
+ onPointRecordsUpdate(pointRecordList);
+ // 保存到数据库
+ ThreadPoolUtil.execute(() -> {
+ PointDb.getInstance().save(pointRecordList);
+ });
+ });
+
+ // 获取放样点
+ viewModel.fetchLoftingPointList(workId);
+
+// String targetPointList = IntentUtil.stringExtra(this, KEY_POINT_LIST);
+// String targetPointList = "";
+// if (StringUtil.isEmpty(targetPointList)) {
+// PointDb.getInstance().rawQueryListLiveData(PointConstants.findKnownPointByJob(jobId())).observe(this, pointRecords -> {
+// onPointRecordsUpdate(pointRecords);
+// });
+// } else {
+// mStakingPointIsInMemory = true;
+// Gson gson = new Gson();
+// List points = gson.fromJson(targetPointList, new TypeToken>() {
+// }.getType());
+// List pointRecords = new ArrayList<>();
+// for (StakingPoint point : points) {
+// pointRecords.add(new PointRecord(
+// "", "", "",
+// point.getCategory(),
+// point.getName(),
+// "",
+// "",
+// point.getX(), point.getY(), point.getZ(),
+// 0, 0, 0, PointConstants.POINT_FORMAT_XYZ, new DeviceInfoData()));
+// }
+// onPointRecordsUpdate(pointRecords);
+// }
}
private void onPointRecordsUpdate(List pointRecords) {
@@ -391,9 +430,10 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
stakingLibraryPointList.addAll(pointRecords);
for (int i = 0; i < stakingLibraryPointList.size(); i++) {
PointRecord pointRecord = stakingLibraryPointList.get(i);
+ // 待放样点
surveyBasePointLine.getValues().add(new PointValue(pointRecord.y, pointRecord.x).setLabel(pointRecord.name));
}
- if (stakingLibraryPointList.size() > 0) {
+ if (!stakingLibraryPointList.isEmpty()) { //待放样点列表不为空
targetStakePointRecord = stakingLibraryPointList.get(0);
stakingPointLine.getValues().add(new PointValue(targetStakePointRecord.y, targetStakePointRecord.x).setLabel(targetStakePointRecord.name));
updateBottomInfo(targetStakePointRecord.name, targetStakePointRecord.x, targetStakePointRecord.y, targetStakePointRecord.h);
@@ -434,13 +474,16 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
private CustomLineChartDialog customDialog;
private boolean isControlSurvey;
+ /**
+ * 观测并记录
+ */
private void watchSurveyRecord() {
if (DeviceConnectUtil.isDeviceConnectSelectDialog(this, baseSurveyActivityUtils.activityBaseSurveyBinding)) {
if (Device.getInstance().deviceType == DeviceTypeEnum.DEVICE_TYPE_TS) {
isTsWatchRecord = true;
if (currentCoordinate != null) {
if (targetStakePointRecord == null) {
- ToastUtils.showShort(getString(R.string.add_points_staking_point_first));
+ ToastUtils.showShort(R.string.add_points_staking_point_first);
return;
}
SurveyLimitCheckUtils.checkStakingLimit(this, currentCoordinate, new Coordinate(targetStakePointRecord.x, targetStakePointRecord.y), (currentCoordinate, targetCoordinate) -> recordPoint());
@@ -449,15 +492,15 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
}
} else {
if (targetStakePointRecord == null) {
- ToastUtils.showShort(getString(R.string.add_points_staking_point_first));
+ ToastUtils.showShort(R.string.add_points_staking_point_first);
return;
}
+ // 平滑点数
boolean isSmoothStaking = PreferencesUtil.getPreferenceInt(ConstUtils.preferConst.rtkStakingSmoothPointsNumber, 1) != 1;
if (isSmoothStaking) {
lineChartViewBuilder = new CustomLineChartDialog.Builder(this).setTitle(getString(R.string.staking_points_being_collected));
lineChartViewBuilder.setButtonConfirmTextColor(R.color.color_E2E1DD);
lineChartViewBuilder.setButtonConfirm(v -> {
-
SurveyLimitCheckUtils.checkStakingLimit(this, currentSmoothCoordinate, new Coordinate(targetStakePointRecord.x, targetStakePointRecord.y), (currentCoordinate, targetCoordinate) -> recordPoint());
});
// lineChartViewBuilder.setButtonConfirm(v -> checkRtkStringLimit());
@@ -498,11 +541,11 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
private void onRecentlyPoint() {
if (currentCoordinate == null) {
- ToastUtils.showShort(getString(R.string.return_coordinate_empty_check_device));
+ ToastUtils.showShort(R.string.return_coordinate_empty_check_device);
return;
}
if (targetStakePointRecord == null) {
- ToastUtils.showShort(getString(R.string.add_points_staking_point_first));
+ ToastUtils.showShort(R.string.add_points_staking_point_first);
return;
}
if (stakingLibraryPointList.size() > 0) {
@@ -521,7 +564,10 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
}
}
- private void onLastOrNextPoint(boolean nextOrLast) {
+ /**
+ * @param isLast true上一个,false下一个
+ */
+ private void onLastOrNextPoint(boolean isLast) {
if (targetStakePointRecord == null) {
ToastUtils.showShort(getString(R.string.add_points_staking_point_first));
return;
@@ -538,51 +584,42 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
return;
}
currentIndex += stakingLibraryPointList.size();
- int targetIndex = (nextOrLast ? currentIndex + 1 : currentIndex - 1) % stakingLibraryPointList.size();
+ int targetIndex = (isLast ? currentIndex + 1 : currentIndex - 1) % stakingLibraryPointList.size();
targetStakePointRecord = stakingLibraryPointList.get(targetIndex);
updateUI();
return;
}
- ThreadPoolUtil.execute(() -> {
- String projectId = CachedProject.currentProjectId();
- String jobId = CachedCurrentJob.currentJobId(projectId);
- PointRecord pointRecord = PointDb.getInstance().rawQueryData(PointConstants.findLastNextKnownPointByJobAndDate(jobId, targetStakePointRecord.createDate, nextOrLast));
- runOnUiThread(() -> {
- if (pointRecord == null) {
- ToastUtils.showShort(nextOrLast ? getString(R.string.the_first_staking_point_list) : getString(R.string.the_last_staking_point_list));
- return;
- }
- targetStakePointRecord = pointRecord;
-
+ // 当前点所在列表位置
+ int currentPosition = stakingLibraryPointList.indexOf(targetStakePointRecord);
+ if (isLast) { //上一个
+ if (currentPosition > 0) { //有上一个
+ targetStakePointRecord = stakingLibraryPointList.get(currentPosition - 1);
updateUI();
- });
- });
- }
-
- /**
- * 点库返回选择的点
- */
- private void onPickedPoint(boolean isStakingLibPoint, String pointId, String name, double x, double y, double z) {
- if (!isStakingLibPoint) {
- DeviceInfoData deviceInfoData = DeviceUtils.collectDeviceInfo();
- PointRecord tempStakePointRecord = new PointRecord(pointId, "", "",
- PointConstants.POINT_TYPE_SURVEY_CONTROL_POINT, name, "", "",
- x, y, z, 0, 0, 0, PointConstants.POINT_FORMAT_XYZ, deviceInfoData);
- stakingLibraryPointList.add(tempStakePointRecord);
- targetStakePointRecord = tempStakePointRecord;
- surveyBasePointLine.getValues().add(new PointValue(tempStakePointRecord.y, tempStakePointRecord.x).setLabel(tempStakePointRecord.name));
- updateUI();
- } else {
- ThreadPoolUtil.execute(() -> {
- PointRecord knowPointRecord = PointDb.getInstance().rawQueryData(PointConstants.findKnownPointById(pointId));
- runOnUiThread(() -> {
- targetStakePointRecord = knowPointRecord;
- updateUI();
- });
- });
+ } else {
+ ToastUtils.showShort(R.string.the_first_staking_point_list);
+ }
+ } else { //下一个
+ if (currentPosition < stakingLibraryPointList.size() - 1) { //有下一个
+ targetStakePointRecord = stakingLibraryPointList.get(currentPosition + 1);
+ updateUI();
+ } else {
+ ToastUtils.showShort(R.string.the_last_staking_point_list);
+ }
}
}
+// private void navigate2PointLibrary(){
+// StakingNewJobActivity.start(this, workId, (pointId, pointsListIndex, name, x, y, z) ->
+// ThreadPoolUtil.execute(() -> {
+// PointRecord knowPointRecord = PointDb.getInstance().rawQueryData(PointConstants.findKnownPointById(pointId));
+// runOnUiThread(() -> {
+// targetStakePointRecord = knowPointRecord;
+// updateUI();
+// });
+// })
+// );
+// }
+
private void updateUI() {
if (targetStakePointRecord == null) {
return;
@@ -618,6 +655,7 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
/**
* 接收 RTK 返回的数据
+ *
* @param antennaHeight
* @param blh
* @param originalBlh
@@ -777,7 +815,7 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
if (targetStakePointRecord == null) {
if (isTirpsAddSP) {
builder.setContent(getString(R.string.add_points_staking_point_first)).setButtonConfirm(v -> {
- StakingNewJobActivity.start(this);
+ StakingNewJobActivity.start(this, workId);
}).create().show();
isTirpsAddSP = false;
}
@@ -1037,15 +1075,13 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
ThreadPoolUtil.execute(() -> {
String projectId = CachedProject.currentProjectId();
- String jobId = CachedCurrentJob.currentJobId(projectId);
- String roadId = CachedCurrentRoad.currentRoadId(projectId);
DeviceUtils.StationData stationData = DeviceUtils.stationData(
new BasePoint(targetStakePointRecord.x, targetStakePointRecord.y, targetStakePointRecord.h),
((App) Utils.getApp()).angleNotNumber(),
6);
DeviceInfoData deviceInfoData = DeviceUtils.collectDeviceInfo();
- PointStakeRecord pointStakeRecord = new PointStakeRecord(projectId, jobId, roadId,
+ PointStakeRecord pointStakeRecord = new PointStakeRecord(projectId, workId, "",
targetStakePointRecord.id, moveBeforeAfter != null ? moveBeforeAfter.getString() : "", moveLeftRight != null ? moveLeftRight.getString() : "", moveWestEast != null ? moveWestEast.getString() : "", moveSouthNorth != null ? moveSouthNorth.getString() : "",
""
, targetStakePointRecord.name
@@ -1065,6 +1101,9 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
, deviceInfoData);
PointStakeDb.getInstance().save(pointStakeRecord);
+ // 上传测点
+ LoftingPointRecordEntry entry = new LoftingPointRecordEntry(pointStakeRecord);
+ viewModel.uploadLoftingPointRecord(entry);
runOnUiThread(() -> {
recordPointLine.getValues().add(new PointValue(pointStakeRecord.measuredY, pointStakeRecord.measuredX).setLabel(""));
@@ -1108,8 +1147,8 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
// binding.tvTopFour.setText(getString(R.string.d));
// break;
// case 1:
- binding.tvTopThree.setText(getString(R.string.to_north));
- binding.tvTopFour.setText(getString(R.string.to_east));
+ binding.tvTopThree.setText(getString(R.string.to_north));
+ binding.tvTopFour.setText(getString(R.string.to_east));
// break;
// }
binding.topFiveSixLayout.setVisibility(View.GONE);
@@ -1118,40 +1157,11 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
binding.tvTopSix.setText(getString(R.string.station_angle_diff));
}
- @Override
- protected void onHelpClicked() {
- HelpWebActivity.navigation2KnownPointStakingHelp(this);
- }
-
- @Override
- public boolean isShowTopBarHrPoleLayout() {
- return false;
- }
-
- private String jobId() {
- return IntentUtil.stringExtra(getIntent(), KEY_JOB_ID);
- }
-
- public static void start(Activity activity) {
- ThreadPoolUtil.execute(() -> {
- String projectId = CachedProject.currentProjectId();
- String roadId = CachedCurrentRoad.currentRoadId(projectId);
- String jobId = CachedCurrentJob.currentJobId(projectId);
- Intent intent = new Intent(activity, PointStakingActivity.class);
- intent.putExtra(KEY_JOB_ID, jobId);
-// intent.putExtra(KEY_PROJECT_ID, projectId);
-// intent.putExtra(KEY_ROAD_ID, roadId);
- activity.startActivity(intent);
- });
- }
-
-
- private static final String KEY_POINT_LIST = "key_point_list";
+ private static final String KEY_WORK_ID = "keyWorkId";
- public static void start(Context context, List stakingPointList) {
- Gson gson = new Gson();
+ public static void start(Context context, String workId) {
Intent intent = new Intent(context, PointStakingActivity.class);
- intent.putExtra(KEY_POINT_LIST, gson.toJson(stakingPointList));
+ intent.putExtra(KEY_WORK_ID, workId);
context.startActivity(intent);
}
@@ -1177,6 +1187,17 @@ public class PointStakingActivity extends BaseSurveyNewActivity {
}
}
+
+ @Override
+ public boolean isHideHelpDoc() {
+ return true;
+ }
+
+ @Override
+ public boolean isShowTopBarHrPoleLayout() {
+ return false;
+ }
+
// @Override
// public boolean isUseSystemStyleNavigationBar() {
// return true;
diff --git a/app/src/main/java/com/project/survey/ui/lofting/pointlofting/PointStakingActivity1.java b/app/src/main/java/com/project/survey/ui/lofting/pointlofting/PointStakingActivity1.java
index fdb3e9e..d2a4207 100644
--- a/app/src/main/java/com/project/survey/ui/lofting/pointlofting/PointStakingActivity1.java
+++ b/app/src/main/java/com/project/survey/ui/lofting/pointlofting/PointStakingActivity1.java
@@ -810,7 +810,7 @@ public class PointStakingActivity1 extends BaseSurveyNewActivity {
if (targetStakePointRecord == null) {
if (isTirpsAddSP) {
builder.setContent(getString(R.string.add_points_staking_point_first)).setButtonConfirm(v -> {
- StakingNewJobActivity.start(mContext);
+ StakingNewJobActivity.start(mContext, "");
}).create().show();
isTirpsAddSP = false;
}
diff --git a/app/src/main/java/com/project/survey/ui/pointmeasure/PointMeasureListActivity.kt b/app/src/main/java/com/project/survey/ui/pointmeasure/PointMeasureListActivity.kt
index e4d271c..b49daa3 100644
--- a/app/src/main/java/com/project/survey/ui/pointmeasure/PointMeasureListActivity.kt
+++ b/app/src/main/java/com/project/survey/ui/pointmeasure/PointMeasureListActivity.kt
@@ -2,10 +2,10 @@ package com.project.survey.ui.pointmeasure
import androidx.activity.viewModels
import com.project.survey.R
+import com.project.survey.constants.Constants
import com.project.survey.databinding.ActivityPointMeasureListBinding
import com.project.survey.extend.smartDismiss
import com.project.survey.extend.toast
-import com.project.survey.logic.viewmodel.ControlNetViewModel
import com.project.survey.logic.viewmodel.ProjectViewModel
import com.project.survey.ui.base.BaseBindingActivity
import com.project.survey.ui.pointmeasure.adapter.PointMeasureListAdapter
@@ -22,8 +22,6 @@ class PointMeasureListActivity : BaseBindingActivity {
@@ -37,7 +35,9 @@ class PointMeasureListActivity : BaseBindingActivity getString(R.string.survey_plan)
- TYPE_PROJECT_MEASURE -> getString(R.string.engineering_metrology)
+ Constants.TYPE_BD_CLJH -> getString(R.string.survey_plan)
+ Constants.TYPE_BD_CLGZ_GCJL -> getString(R.string.engineering_metrology)
else -> ""
}
)
@@ -56,34 +56,15 @@ class PointMeasureListActivity : BaseBindingActivity
- adapter.getItem(position)?.let { bean ->
-// viewModel.updateMeasureWorkStatus(bean.BD_CLJH_ID, if (type == TYPE_SURVEY_PLAN) "BD_CLJH" else "BD_CLGZ_GCJL", "已结束")
- }
-
- }
- // 进入测量
- adapter.addOnItemChildClickListener(R.id.tvEnterMeasure) { adapter, _, position ->
- adapter.getItem(position)?.let { bean ->
- PointSurveyNewActivity.start(type, bean.BD_CLJH_ID)
-// viewModel.updateMeasureWorkStatus(bean.BD_CLJH_ID, if (type == TYPE_SURVEY_PLAN) "BD_CLJH" else "BD_CLGZ_GCJL", "执行中")
- }
- }
- }
-
-
override fun initData() {
viewModel.errorResponse.observe(this) {
toast(it)
+ dismissLoadingDialog()
mBinding.smartRefreshLayout.smartDismiss()
}
+ // 列表
viewModel.measureBeanListResponse.observe(this) {
+ dismissLoadingDialog()
mBinding.smartRefreshLayout.smartDismiss()
if (currentPage == 1) {
adapter.submitList(it.rows)
@@ -92,7 +73,7 @@ class PointMeasureListActivity : BaseBindingActivity
+ adapter.getItem(position)?.let { bean ->
+ viewModel.createInspectionReport(bean.BD_CLJH_ID)
+ }
+ }
+ // 结束测量
+ adapter.addOnItemChildClickListener(R.id.tvStopMeasure) { adapter, _, position ->
+ adapter.getItem(position)?.let { bean ->
+ viewModel.updateMeasureWorkStatus(bean.BD_CLJH_ID, type, "已结束")
+ }
+
}
+ // 进入测量
+ adapter.addOnItemChildClickListener(R.id.tvEnterMeasure) { adapter, _, position ->
+ adapter.getItem(position)?.let { bean ->
+ PointSurveyNewActivity.start(type, bean.BD_CLJH_ID)
+ viewModel.updateMeasureWorkStatus(bean.BD_CLJH_ID, type, "执行中")
+ }
+ }
+ }
+
+ private fun fetchData() {
+ viewModel.fetchMeasureDataList(type, currentPage, searchContent)
}
override fun onRefresh(refreshLayout: RefreshLayout) {
diff --git a/app/src/main/java/com/project/survey/ui/pointmeasure/adapter/PointMeasureListAdapter.kt b/app/src/main/java/com/project/survey/ui/pointmeasure/adapter/PointMeasureListAdapter.kt
index b48187d..ce18d04 100644
--- a/app/src/main/java/com/project/survey/ui/pointmeasure/adapter/PointMeasureListAdapter.kt
+++ b/app/src/main/java/com/project/survey/ui/pointmeasure/adapter/PointMeasureListAdapter.kt
@@ -5,21 +5,23 @@ import android.view.ViewGroup
import com.chad.library.adapter4.BaseQuickAdapter
import com.chad.library.adapter4.viewholder.QuickViewHolder
import com.project.survey.R
+import com.project.survey.constants.Constants
import com.project.survey.model.MeasureBean
-import com.project.survey.ui.pointmeasure.PointMeasureListActivity
class PointMeasureListAdapter(val type: String) : BaseQuickAdapter() {
override fun onBindViewHolder(holder: QuickViewHolder, position: Int, item: MeasureBean?) {
if (item == null) return
- holder.setText(R.id.tvName, item.CLJH_LCMC)
- .setText(R.id.tvNO, item.CLJH_BDLSH)
+ // true测量计划,false工程计量
+ val isCLJH = type == Constants.TYPE_BD_CLJH
+ holder.setText(R.id.tvName, if (isCLJH) item.CLJH_LCMC else item.GCJL_LCMC)
+ .setText(R.id.tvNO, if (isCLJH) item.CLJH_BDLSH else item.GCJL_BDLSH)
.setText(R.id.tvType, item.CLJH_CLLX_NAME)
.setText(R.id.tvProjectName, item.BD_FBFXPZ_FXGCMC)
.setText(R.id.tvMeasureContent, item.CLJH_CONTENT)
.setText(R.id.tvApplyUser, "")
- .setVisible(R.id.tvGenerateForm, type == PointMeasureListActivity.TYPE_SURVEY_PLAN)
+ .setVisible(R.id.tvGenerateForm, isCLJH)
}
override fun onCreateViewHolder(
diff --git a/app/src/main/res/layout/activity_point_staking.xml b/app/src/main/res/layout/activity_point_staking.xml
index 5729075..5c0dc22 100644
--- a/app/src/main/res/layout/activity_point_staking.xml
+++ b/app/src/main/res/layout/activity_point_staking.xml
@@ -190,6 +190,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="3dp"
android:orientation="horizontal"
+ tools:visibility="visible"
android:visibility="gone">