diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9bc098c..968c535 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -76,6 +76,7 @@
+
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9bc098c..968c535 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -76,6 +76,7 @@
+
diff --git a/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
new file mode 100644
index 0000000..f17d146
--- /dev/null
+++ b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
@@ -0,0 +1,463 @@
+package com.casic.xz.meterage.model;
+
+import java.util.List;
+
+public class RemindDeviceListModel {
+
+ private int code;
+ private DataModel data;
+ private String message;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public DataModel getData() {
+ return data;
+ }
+
+ public void setData(DataModel data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public static class DataModel {
+ private List rows;
+ private int total;
+
+ public List getRows() {
+ return rows;
+ }
+
+ public void setRows(List rows) {
+ this.rows = rows;
+ }
+
+ public int getTotal() {
+ return total;
+ }
+
+ public void setTotal(int total) {
+ this.total = total;
+ }
+
+ public static class RowsModel {
+ private String assessDate;
+ private String assessmentUnit;
+ private String category;
+ private String categoryName;
+ private String constructionStandardProject;
+ private String constructionStandardUnitName;
+ private String contactInfo;
+ private String createTime;
+ private String createUser;
+ private String equipmentList;
+ private String fileList;
+ private String id;
+ private String isDel;
+ private String laboratoryOwner;
+ private String laboratoryOwnerContact;
+ private String laboratoryOwnerName;
+ private String managerState;
+ private String managerStateName;
+ private String measureMajor;
+ private String measureMajorName;
+ private String mesureRange;
+ private String organizeNo;
+ private String preparationDate;
+ private String projectNo;
+ private String remark;
+ private String remindTime;
+ private String standardHumidity;
+ private String standardLaboratory;
+ private String standardLaboratoryName;
+ private String standardLevel;
+ private String standardLevelName;
+ private String standardName;
+ private String standardNo;
+ private String standardOwner;
+ private String standardOwnerName;
+ private String standardTemperature;
+ private String totalInvestment;
+ private String transmitRange;
+ private String transmitRangeName;
+ private String uncertainty;
+ private String updateTime;
+ private String userList;
+ private String validTime;
+ private String verifyRegulationList;
+ private String version;
+
+ public String getAssessDate() {
+ return assessDate;
+ }
+
+ public void setAssessDate(String assessDate) {
+ this.assessDate = assessDate;
+ }
+
+ public String getAssessmentUnit() {
+ return assessmentUnit;
+ }
+
+ public void setAssessmentUnit(String assessmentUnit) {
+ this.assessmentUnit = assessmentUnit;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getCategoryName() {
+ return categoryName;
+ }
+
+ public void setCategoryName(String categoryName) {
+ this.categoryName = categoryName;
+ }
+
+ public String getConstructionStandardProject() {
+ return constructionStandardProject;
+ }
+
+ public void setConstructionStandardProject(String constructionStandardProject) {
+ this.constructionStandardProject = constructionStandardProject;
+ }
+
+ public String getConstructionStandardUnitName() {
+ return constructionStandardUnitName;
+ }
+
+ public void setConstructionStandardUnitName(String constructionStandardUnitName) {
+ this.constructionStandardUnitName = constructionStandardUnitName;
+ }
+
+ public String getContactInfo() {
+ return contactInfo;
+ }
+
+ public void setContactInfo(String contactInfo) {
+ this.contactInfo = contactInfo;
+ }
+
+ public String getCreateTime() {
+ return createTime;
+ }
+
+ public void setCreateTime(String createTime) {
+ this.createTime = createTime;
+ }
+
+ public String getCreateUser() {
+ return createUser;
+ }
+
+ public void setCreateUser(String createUser) {
+ this.createUser = createUser;
+ }
+
+ public String getEquipmentList() {
+ return equipmentList;
+ }
+
+ public void setEquipmentList(String equipmentList) {
+ this.equipmentList = equipmentList;
+ }
+
+ public String getFileList() {
+ return fileList;
+ }
+
+ public void setFileList(String fileList) {
+ this.fileList = fileList;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getIsDel() {
+ return isDel;
+ }
+
+ public void setIsDel(String isDel) {
+ this.isDel = isDel;
+ }
+
+ public String getLaboratoryOwner() {
+ return laboratoryOwner;
+ }
+
+ public void setLaboratoryOwner(String laboratoryOwner) {
+ this.laboratoryOwner = laboratoryOwner;
+ }
+
+ public String getLaboratoryOwnerContact() {
+ return laboratoryOwnerContact;
+ }
+
+ public void setLaboratoryOwnerContact(String laboratoryOwnerContact) {
+ this.laboratoryOwnerContact = laboratoryOwnerContact;
+ }
+
+ public String getLaboratoryOwnerName() {
+ return laboratoryOwnerName;
+ }
+
+ public void setLaboratoryOwnerName(String laboratoryOwnerName) {
+ this.laboratoryOwnerName = laboratoryOwnerName;
+ }
+
+ public String getManagerState() {
+ return managerState;
+ }
+
+ public void setManagerState(String managerState) {
+ this.managerState = managerState;
+ }
+
+ public String getManagerStateName() {
+ return managerStateName;
+ }
+
+ public void setManagerStateName(String managerStateName) {
+ this.managerStateName = managerStateName;
+ }
+
+ public String getMeasureMajor() {
+ return measureMajor;
+ }
+
+ public void setMeasureMajor(String measureMajor) {
+ this.measureMajor = measureMajor;
+ }
+
+ public String getMeasureMajorName() {
+ return measureMajorName;
+ }
+
+ public void setMeasureMajorName(String measureMajorName) {
+ this.measureMajorName = measureMajorName;
+ }
+
+ public String getMesureRange() {
+ return mesureRange;
+ }
+
+ public void setMesureRange(String mesureRange) {
+ this.mesureRange = mesureRange;
+ }
+
+ public String getOrganizeNo() {
+ return organizeNo;
+ }
+
+ public void setOrganizeNo(String organizeNo) {
+ this.organizeNo = organizeNo;
+ }
+
+ public String getPreparationDate() {
+ return preparationDate;
+ }
+
+ public void setPreparationDate(String preparationDate) {
+ this.preparationDate = preparationDate;
+ }
+
+ public String getProjectNo() {
+ return projectNo;
+ }
+
+ public void setProjectNo(String projectNo) {
+ this.projectNo = projectNo;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getRemindTime() {
+ return remindTime;
+ }
+
+ public void setRemindTime(String remindTime) {
+ this.remindTime = remindTime;
+ }
+
+ public String getStandardHumidity() {
+ return standardHumidity;
+ }
+
+ public void setStandardHumidity(String standardHumidity) {
+ this.standardHumidity = standardHumidity;
+ }
+
+ public String getStandardLaboratory() {
+ return standardLaboratory;
+ }
+
+ public void setStandardLaboratory(String standardLaboratory) {
+ this.standardLaboratory = standardLaboratory;
+ }
+
+ public String getStandardLaboratoryName() {
+ return standardLaboratoryName;
+ }
+
+ public void setStandardLaboratoryName(String standardLaboratoryName) {
+ this.standardLaboratoryName = standardLaboratoryName;
+ }
+
+ public String getStandardLevel() {
+ return standardLevel;
+ }
+
+ public void setStandardLevel(String standardLevel) {
+ this.standardLevel = standardLevel;
+ }
+
+ public String getStandardLevelName() {
+ return standardLevelName;
+ }
+
+ public void setStandardLevelName(String standardLevelName) {
+ this.standardLevelName = standardLevelName;
+ }
+
+ public String getStandardName() {
+ return standardName;
+ }
+
+ public void setStandardName(String standardName) {
+ this.standardName = standardName;
+ }
+
+ public String getStandardNo() {
+ return standardNo;
+ }
+
+ public void setStandardNo(String standardNo) {
+ this.standardNo = standardNo;
+ }
+
+ public String getStandardOwner() {
+ return standardOwner;
+ }
+
+ public void setStandardOwner(String standardOwner) {
+ this.standardOwner = standardOwner;
+ }
+
+ public String getStandardOwnerName() {
+ return standardOwnerName;
+ }
+
+ public void setStandardOwnerName(String standardOwnerName) {
+ this.standardOwnerName = standardOwnerName;
+ }
+
+ public String getStandardTemperature() {
+ return standardTemperature;
+ }
+
+ public void setStandardTemperature(String standardTemperature) {
+ this.standardTemperature = standardTemperature;
+ }
+
+ public String getTotalInvestment() {
+ return totalInvestment;
+ }
+
+ public void setTotalInvestment(String totalInvestment) {
+ this.totalInvestment = totalInvestment;
+ }
+
+ public String getTransmitRange() {
+ return transmitRange;
+ }
+
+ public void setTransmitRange(String transmitRange) {
+ this.transmitRange = transmitRange;
+ }
+
+ public String getTransmitRangeName() {
+ return transmitRangeName;
+ }
+
+ public void setTransmitRangeName(String transmitRangeName) {
+ this.transmitRangeName = transmitRangeName;
+ }
+
+ public String getUncertainty() {
+ return uncertainty;
+ }
+
+ public void setUncertainty(String uncertainty) {
+ this.uncertainty = uncertainty;
+ }
+
+ public String getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(String updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public String getUserList() {
+ return userList;
+ }
+
+ public void setUserList(String userList) {
+ this.userList = userList;
+ }
+
+ public String getValidTime() {
+ return validTime;
+ }
+
+ public void setValidTime(String validTime) {
+ this.validTime = validTime;
+ }
+
+ public String getVerifyRegulationList() {
+ return verifyRegulationList;
+ }
+
+ public void setVerifyRegulationList(String verifyRegulationList) {
+ this.verifyRegulationList = verifyRegulationList;
+ }
+
+ public String getVersion() {
+ return version;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+ }
+ }
+}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9bc098c..968c535 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -76,6 +76,7 @@
+
diff --git a/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
new file mode 100644
index 0000000..f17d146
--- /dev/null
+++ b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
@@ -0,0 +1,463 @@
+package com.casic.xz.meterage.model;
+
+import java.util.List;
+
+public class RemindDeviceListModel {
+
+ private int code;
+ private DataModel data;
+ private String message;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public DataModel getData() {
+ return data;
+ }
+
+ public void setData(DataModel data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public static class DataModel {
+ private List rows;
+ private int total;
+
+ public List getRows() {
+ return rows;
+ }
+
+ public void setRows(List rows) {
+ this.rows = rows;
+ }
+
+ public int getTotal() {
+ return total;
+ }
+
+ public void setTotal(int total) {
+ this.total = total;
+ }
+
+ public static class RowsModel {
+ private String assessDate;
+ private String assessmentUnit;
+ private String category;
+ private String categoryName;
+ private String constructionStandardProject;
+ private String constructionStandardUnitName;
+ private String contactInfo;
+ private String createTime;
+ private String createUser;
+ private String equipmentList;
+ private String fileList;
+ private String id;
+ private String isDel;
+ private String laboratoryOwner;
+ private String laboratoryOwnerContact;
+ private String laboratoryOwnerName;
+ private String managerState;
+ private String managerStateName;
+ private String measureMajor;
+ private String measureMajorName;
+ private String mesureRange;
+ private String organizeNo;
+ private String preparationDate;
+ private String projectNo;
+ private String remark;
+ private String remindTime;
+ private String standardHumidity;
+ private String standardLaboratory;
+ private String standardLaboratoryName;
+ private String standardLevel;
+ private String standardLevelName;
+ private String standardName;
+ private String standardNo;
+ private String standardOwner;
+ private String standardOwnerName;
+ private String standardTemperature;
+ private String totalInvestment;
+ private String transmitRange;
+ private String transmitRangeName;
+ private String uncertainty;
+ private String updateTime;
+ private String userList;
+ private String validTime;
+ private String verifyRegulationList;
+ private String version;
+
+ public String getAssessDate() {
+ return assessDate;
+ }
+
+ public void setAssessDate(String assessDate) {
+ this.assessDate = assessDate;
+ }
+
+ public String getAssessmentUnit() {
+ return assessmentUnit;
+ }
+
+ public void setAssessmentUnit(String assessmentUnit) {
+ this.assessmentUnit = assessmentUnit;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getCategoryName() {
+ return categoryName;
+ }
+
+ public void setCategoryName(String categoryName) {
+ this.categoryName = categoryName;
+ }
+
+ public String getConstructionStandardProject() {
+ return constructionStandardProject;
+ }
+
+ public void setConstructionStandardProject(String constructionStandardProject) {
+ this.constructionStandardProject = constructionStandardProject;
+ }
+
+ public String getConstructionStandardUnitName() {
+ return constructionStandardUnitName;
+ }
+
+ public void setConstructionStandardUnitName(String constructionStandardUnitName) {
+ this.constructionStandardUnitName = constructionStandardUnitName;
+ }
+
+ public String getContactInfo() {
+ return contactInfo;
+ }
+
+ public void setContactInfo(String contactInfo) {
+ this.contactInfo = contactInfo;
+ }
+
+ public String getCreateTime() {
+ return createTime;
+ }
+
+ public void setCreateTime(String createTime) {
+ this.createTime = createTime;
+ }
+
+ public String getCreateUser() {
+ return createUser;
+ }
+
+ public void setCreateUser(String createUser) {
+ this.createUser = createUser;
+ }
+
+ public String getEquipmentList() {
+ return equipmentList;
+ }
+
+ public void setEquipmentList(String equipmentList) {
+ this.equipmentList = equipmentList;
+ }
+
+ public String getFileList() {
+ return fileList;
+ }
+
+ public void setFileList(String fileList) {
+ this.fileList = fileList;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getIsDel() {
+ return isDel;
+ }
+
+ public void setIsDel(String isDel) {
+ this.isDel = isDel;
+ }
+
+ public String getLaboratoryOwner() {
+ return laboratoryOwner;
+ }
+
+ public void setLaboratoryOwner(String laboratoryOwner) {
+ this.laboratoryOwner = laboratoryOwner;
+ }
+
+ public String getLaboratoryOwnerContact() {
+ return laboratoryOwnerContact;
+ }
+
+ public void setLaboratoryOwnerContact(String laboratoryOwnerContact) {
+ this.laboratoryOwnerContact = laboratoryOwnerContact;
+ }
+
+ public String getLaboratoryOwnerName() {
+ return laboratoryOwnerName;
+ }
+
+ public void setLaboratoryOwnerName(String laboratoryOwnerName) {
+ this.laboratoryOwnerName = laboratoryOwnerName;
+ }
+
+ public String getManagerState() {
+ return managerState;
+ }
+
+ public void setManagerState(String managerState) {
+ this.managerState = managerState;
+ }
+
+ public String getManagerStateName() {
+ return managerStateName;
+ }
+
+ public void setManagerStateName(String managerStateName) {
+ this.managerStateName = managerStateName;
+ }
+
+ public String getMeasureMajor() {
+ return measureMajor;
+ }
+
+ public void setMeasureMajor(String measureMajor) {
+ this.measureMajor = measureMajor;
+ }
+
+ public String getMeasureMajorName() {
+ return measureMajorName;
+ }
+
+ public void setMeasureMajorName(String measureMajorName) {
+ this.measureMajorName = measureMajorName;
+ }
+
+ public String getMesureRange() {
+ return mesureRange;
+ }
+
+ public void setMesureRange(String mesureRange) {
+ this.mesureRange = mesureRange;
+ }
+
+ public String getOrganizeNo() {
+ return organizeNo;
+ }
+
+ public void setOrganizeNo(String organizeNo) {
+ this.organizeNo = organizeNo;
+ }
+
+ public String getPreparationDate() {
+ return preparationDate;
+ }
+
+ public void setPreparationDate(String preparationDate) {
+ this.preparationDate = preparationDate;
+ }
+
+ public String getProjectNo() {
+ return projectNo;
+ }
+
+ public void setProjectNo(String projectNo) {
+ this.projectNo = projectNo;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getRemindTime() {
+ return remindTime;
+ }
+
+ public void setRemindTime(String remindTime) {
+ this.remindTime = remindTime;
+ }
+
+ public String getStandardHumidity() {
+ return standardHumidity;
+ }
+
+ public void setStandardHumidity(String standardHumidity) {
+ this.standardHumidity = standardHumidity;
+ }
+
+ public String getStandardLaboratory() {
+ return standardLaboratory;
+ }
+
+ public void setStandardLaboratory(String standardLaboratory) {
+ this.standardLaboratory = standardLaboratory;
+ }
+
+ public String getStandardLaboratoryName() {
+ return standardLaboratoryName;
+ }
+
+ public void setStandardLaboratoryName(String standardLaboratoryName) {
+ this.standardLaboratoryName = standardLaboratoryName;
+ }
+
+ public String getStandardLevel() {
+ return standardLevel;
+ }
+
+ public void setStandardLevel(String standardLevel) {
+ this.standardLevel = standardLevel;
+ }
+
+ public String getStandardLevelName() {
+ return standardLevelName;
+ }
+
+ public void setStandardLevelName(String standardLevelName) {
+ this.standardLevelName = standardLevelName;
+ }
+
+ public String getStandardName() {
+ return standardName;
+ }
+
+ public void setStandardName(String standardName) {
+ this.standardName = standardName;
+ }
+
+ public String getStandardNo() {
+ return standardNo;
+ }
+
+ public void setStandardNo(String standardNo) {
+ this.standardNo = standardNo;
+ }
+
+ public String getStandardOwner() {
+ return standardOwner;
+ }
+
+ public void setStandardOwner(String standardOwner) {
+ this.standardOwner = standardOwner;
+ }
+
+ public String getStandardOwnerName() {
+ return standardOwnerName;
+ }
+
+ public void setStandardOwnerName(String standardOwnerName) {
+ this.standardOwnerName = standardOwnerName;
+ }
+
+ public String getStandardTemperature() {
+ return standardTemperature;
+ }
+
+ public void setStandardTemperature(String standardTemperature) {
+ this.standardTemperature = standardTemperature;
+ }
+
+ public String getTotalInvestment() {
+ return totalInvestment;
+ }
+
+ public void setTotalInvestment(String totalInvestment) {
+ this.totalInvestment = totalInvestment;
+ }
+
+ public String getTransmitRange() {
+ return transmitRange;
+ }
+
+ public void setTransmitRange(String transmitRange) {
+ this.transmitRange = transmitRange;
+ }
+
+ public String getTransmitRangeName() {
+ return transmitRangeName;
+ }
+
+ public void setTransmitRangeName(String transmitRangeName) {
+ this.transmitRangeName = transmitRangeName;
+ }
+
+ public String getUncertainty() {
+ return uncertainty;
+ }
+
+ public void setUncertainty(String uncertainty) {
+ this.uncertainty = uncertainty;
+ }
+
+ public String getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(String updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public String getUserList() {
+ return userList;
+ }
+
+ public void setUserList(String userList) {
+ this.userList = userList;
+ }
+
+ public String getValidTime() {
+ return validTime;
+ }
+
+ public void setValidTime(String validTime) {
+ this.validTime = validTime;
+ }
+
+ public String getVerifyRegulationList() {
+ return verifyRegulationList;
+ }
+
+ public void setVerifyRegulationList(String verifyRegulationList) {
+ this.verifyRegulationList = verifyRegulationList;
+ }
+
+ public String getVersion() {
+ return version;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
index cb371ab..01627ed 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
@@ -308,6 +308,26 @@
suspend fun getRemindDeviceCount(@Header("token") token: String): String
/**
+ * 获取到期装置列表
+ */
+ @POST("/meter/standard/remindListPage")
+ suspend fun getRemindDeviceList(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody,
+ @QueryMap limit: Map,
+ @QueryMap offset: Map
+ ): String
+
+ /**
+ * 催办装置
+ */
+ @POST("/meter/standard/remind")
+ suspend fun remindDevice(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody
+ ): String
+
+ /**
* 获取检定规程列表
*/
@POST("/meter/standard/regulation/listPage")
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9bc098c..968c535 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -76,6 +76,7 @@
+
diff --git a/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
new file mode 100644
index 0000000..f17d146
--- /dev/null
+++ b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
@@ -0,0 +1,463 @@
+package com.casic.xz.meterage.model;
+
+import java.util.List;
+
+public class RemindDeviceListModel {
+
+ private int code;
+ private DataModel data;
+ private String message;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public DataModel getData() {
+ return data;
+ }
+
+ public void setData(DataModel data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public static class DataModel {
+ private List rows;
+ private int total;
+
+ public List getRows() {
+ return rows;
+ }
+
+ public void setRows(List rows) {
+ this.rows = rows;
+ }
+
+ public int getTotal() {
+ return total;
+ }
+
+ public void setTotal(int total) {
+ this.total = total;
+ }
+
+ public static class RowsModel {
+ private String assessDate;
+ private String assessmentUnit;
+ private String category;
+ private String categoryName;
+ private String constructionStandardProject;
+ private String constructionStandardUnitName;
+ private String contactInfo;
+ private String createTime;
+ private String createUser;
+ private String equipmentList;
+ private String fileList;
+ private String id;
+ private String isDel;
+ private String laboratoryOwner;
+ private String laboratoryOwnerContact;
+ private String laboratoryOwnerName;
+ private String managerState;
+ private String managerStateName;
+ private String measureMajor;
+ private String measureMajorName;
+ private String mesureRange;
+ private String organizeNo;
+ private String preparationDate;
+ private String projectNo;
+ private String remark;
+ private String remindTime;
+ private String standardHumidity;
+ private String standardLaboratory;
+ private String standardLaboratoryName;
+ private String standardLevel;
+ private String standardLevelName;
+ private String standardName;
+ private String standardNo;
+ private String standardOwner;
+ private String standardOwnerName;
+ private String standardTemperature;
+ private String totalInvestment;
+ private String transmitRange;
+ private String transmitRangeName;
+ private String uncertainty;
+ private String updateTime;
+ private String userList;
+ private String validTime;
+ private String verifyRegulationList;
+ private String version;
+
+ public String getAssessDate() {
+ return assessDate;
+ }
+
+ public void setAssessDate(String assessDate) {
+ this.assessDate = assessDate;
+ }
+
+ public String getAssessmentUnit() {
+ return assessmentUnit;
+ }
+
+ public void setAssessmentUnit(String assessmentUnit) {
+ this.assessmentUnit = assessmentUnit;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getCategoryName() {
+ return categoryName;
+ }
+
+ public void setCategoryName(String categoryName) {
+ this.categoryName = categoryName;
+ }
+
+ public String getConstructionStandardProject() {
+ return constructionStandardProject;
+ }
+
+ public void setConstructionStandardProject(String constructionStandardProject) {
+ this.constructionStandardProject = constructionStandardProject;
+ }
+
+ public String getConstructionStandardUnitName() {
+ return constructionStandardUnitName;
+ }
+
+ public void setConstructionStandardUnitName(String constructionStandardUnitName) {
+ this.constructionStandardUnitName = constructionStandardUnitName;
+ }
+
+ public String getContactInfo() {
+ return contactInfo;
+ }
+
+ public void setContactInfo(String contactInfo) {
+ this.contactInfo = contactInfo;
+ }
+
+ public String getCreateTime() {
+ return createTime;
+ }
+
+ public void setCreateTime(String createTime) {
+ this.createTime = createTime;
+ }
+
+ public String getCreateUser() {
+ return createUser;
+ }
+
+ public void setCreateUser(String createUser) {
+ this.createUser = createUser;
+ }
+
+ public String getEquipmentList() {
+ return equipmentList;
+ }
+
+ public void setEquipmentList(String equipmentList) {
+ this.equipmentList = equipmentList;
+ }
+
+ public String getFileList() {
+ return fileList;
+ }
+
+ public void setFileList(String fileList) {
+ this.fileList = fileList;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getIsDel() {
+ return isDel;
+ }
+
+ public void setIsDel(String isDel) {
+ this.isDel = isDel;
+ }
+
+ public String getLaboratoryOwner() {
+ return laboratoryOwner;
+ }
+
+ public void setLaboratoryOwner(String laboratoryOwner) {
+ this.laboratoryOwner = laboratoryOwner;
+ }
+
+ public String getLaboratoryOwnerContact() {
+ return laboratoryOwnerContact;
+ }
+
+ public void setLaboratoryOwnerContact(String laboratoryOwnerContact) {
+ this.laboratoryOwnerContact = laboratoryOwnerContact;
+ }
+
+ public String getLaboratoryOwnerName() {
+ return laboratoryOwnerName;
+ }
+
+ public void setLaboratoryOwnerName(String laboratoryOwnerName) {
+ this.laboratoryOwnerName = laboratoryOwnerName;
+ }
+
+ public String getManagerState() {
+ return managerState;
+ }
+
+ public void setManagerState(String managerState) {
+ this.managerState = managerState;
+ }
+
+ public String getManagerStateName() {
+ return managerStateName;
+ }
+
+ public void setManagerStateName(String managerStateName) {
+ this.managerStateName = managerStateName;
+ }
+
+ public String getMeasureMajor() {
+ return measureMajor;
+ }
+
+ public void setMeasureMajor(String measureMajor) {
+ this.measureMajor = measureMajor;
+ }
+
+ public String getMeasureMajorName() {
+ return measureMajorName;
+ }
+
+ public void setMeasureMajorName(String measureMajorName) {
+ this.measureMajorName = measureMajorName;
+ }
+
+ public String getMesureRange() {
+ return mesureRange;
+ }
+
+ public void setMesureRange(String mesureRange) {
+ this.mesureRange = mesureRange;
+ }
+
+ public String getOrganizeNo() {
+ return organizeNo;
+ }
+
+ public void setOrganizeNo(String organizeNo) {
+ this.organizeNo = organizeNo;
+ }
+
+ public String getPreparationDate() {
+ return preparationDate;
+ }
+
+ public void setPreparationDate(String preparationDate) {
+ this.preparationDate = preparationDate;
+ }
+
+ public String getProjectNo() {
+ return projectNo;
+ }
+
+ public void setProjectNo(String projectNo) {
+ this.projectNo = projectNo;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getRemindTime() {
+ return remindTime;
+ }
+
+ public void setRemindTime(String remindTime) {
+ this.remindTime = remindTime;
+ }
+
+ public String getStandardHumidity() {
+ return standardHumidity;
+ }
+
+ public void setStandardHumidity(String standardHumidity) {
+ this.standardHumidity = standardHumidity;
+ }
+
+ public String getStandardLaboratory() {
+ return standardLaboratory;
+ }
+
+ public void setStandardLaboratory(String standardLaboratory) {
+ this.standardLaboratory = standardLaboratory;
+ }
+
+ public String getStandardLaboratoryName() {
+ return standardLaboratoryName;
+ }
+
+ public void setStandardLaboratoryName(String standardLaboratoryName) {
+ this.standardLaboratoryName = standardLaboratoryName;
+ }
+
+ public String getStandardLevel() {
+ return standardLevel;
+ }
+
+ public void setStandardLevel(String standardLevel) {
+ this.standardLevel = standardLevel;
+ }
+
+ public String getStandardLevelName() {
+ return standardLevelName;
+ }
+
+ public void setStandardLevelName(String standardLevelName) {
+ this.standardLevelName = standardLevelName;
+ }
+
+ public String getStandardName() {
+ return standardName;
+ }
+
+ public void setStandardName(String standardName) {
+ this.standardName = standardName;
+ }
+
+ public String getStandardNo() {
+ return standardNo;
+ }
+
+ public void setStandardNo(String standardNo) {
+ this.standardNo = standardNo;
+ }
+
+ public String getStandardOwner() {
+ return standardOwner;
+ }
+
+ public void setStandardOwner(String standardOwner) {
+ this.standardOwner = standardOwner;
+ }
+
+ public String getStandardOwnerName() {
+ return standardOwnerName;
+ }
+
+ public void setStandardOwnerName(String standardOwnerName) {
+ this.standardOwnerName = standardOwnerName;
+ }
+
+ public String getStandardTemperature() {
+ return standardTemperature;
+ }
+
+ public void setStandardTemperature(String standardTemperature) {
+ this.standardTemperature = standardTemperature;
+ }
+
+ public String getTotalInvestment() {
+ return totalInvestment;
+ }
+
+ public void setTotalInvestment(String totalInvestment) {
+ this.totalInvestment = totalInvestment;
+ }
+
+ public String getTransmitRange() {
+ return transmitRange;
+ }
+
+ public void setTransmitRange(String transmitRange) {
+ this.transmitRange = transmitRange;
+ }
+
+ public String getTransmitRangeName() {
+ return transmitRangeName;
+ }
+
+ public void setTransmitRangeName(String transmitRangeName) {
+ this.transmitRangeName = transmitRangeName;
+ }
+
+ public String getUncertainty() {
+ return uncertainty;
+ }
+
+ public void setUncertainty(String uncertainty) {
+ this.uncertainty = uncertainty;
+ }
+
+ public String getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(String updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public String getUserList() {
+ return userList;
+ }
+
+ public void setUserList(String userList) {
+ this.userList = userList;
+ }
+
+ public String getValidTime() {
+ return validTime;
+ }
+
+ public void setValidTime(String validTime) {
+ this.validTime = validTime;
+ }
+
+ public String getVerifyRegulationList() {
+ return verifyRegulationList;
+ }
+
+ public void setVerifyRegulationList(String verifyRegulationList) {
+ this.verifyRegulationList = verifyRegulationList;
+ }
+
+ public String getVersion() {
+ return version;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
index cb371ab..01627ed 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
@@ -308,6 +308,26 @@
suspend fun getRemindDeviceCount(@Header("token") token: String): String
/**
+ * 获取到期装置列表
+ */
+ @POST("/meter/standard/remindListPage")
+ suspend fun getRemindDeviceList(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody,
+ @QueryMap limit: Map,
+ @QueryMap offset: Map
+ ): String
+
+ /**
+ * 催办装置
+ */
+ @POST("/meter/standard/remind")
+ suspend fun remindDevice(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody
+ ): String
+
+ /**
* 获取检定规程列表
*/
@POST("/meter/standard/regulation/listPage")
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
index 613e881..aabd4fe 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
@@ -690,6 +690,62 @@
}
/**
+ * 获取到期装置列表
+ */
+ suspend fun getRemindDeviceList(
+ managerState: String,
+ standardName: String,
+ validEndTime: String,
+ validStartTime: String,
+ preparationEndDate: String,
+ ids: Array,
+ id: String,
+ category: String,
+ preparationStartDate: String,
+ standardNo: String,
+ standardLaboratory: String,
+ offset: Int
+ ): String {
+ val param = JsonObject()
+ param.addProperty("managerState", managerState)
+ param.addProperty("standardName", standardName)
+ param.addProperty("validEndTime", validEndTime)
+ param.addProperty("validStartTime", validStartTime)
+ param.addProperty("preparationEndDate", preparationEndDate)
+ param.add("ids", gson.toJsonTree(ids, typeToken).asJsonArray)
+ param.addProperty("id", id)
+ param.addProperty("category", category)
+ param.addProperty("preparationStartDate", preparationStartDate)
+ param.addProperty("standardNo", standardNo)
+ param.addProperty("standardLaboratory", standardLaboratory)
+
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+
+ val limitMap = HashMap()
+ limitMap["limit"] = LocaleConstant.PAGE_LIMIT
+
+ val offsetMap = HashMap()
+ offsetMap["offset"] = offset
+ return api.getRemindDeviceList(
+ AuthenticationHelper.token!!, requestBody, limitMap, offsetMap
+ )
+ }
+
+ /**
+ * 催办装置
+ */
+ suspend fun remindDevice(id: String): String {
+ val param = JsonObject()
+ param.addProperty("id", id)
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+ return api.remindDevice(AuthenticationHelper.token!!, requestBody)
+ }
+
+ /**
* 获取检定规程列表
*/
suspend fun getVerifyProcedureList(id: String): String {
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9bc098c..968c535 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -76,6 +76,7 @@
+
diff --git a/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
new file mode 100644
index 0000000..f17d146
--- /dev/null
+++ b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
@@ -0,0 +1,463 @@
+package com.casic.xz.meterage.model;
+
+import java.util.List;
+
+public class RemindDeviceListModel {
+
+ private int code;
+ private DataModel data;
+ private String message;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public DataModel getData() {
+ return data;
+ }
+
+ public void setData(DataModel data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public static class DataModel {
+ private List rows;
+ private int total;
+
+ public List getRows() {
+ return rows;
+ }
+
+ public void setRows(List rows) {
+ this.rows = rows;
+ }
+
+ public int getTotal() {
+ return total;
+ }
+
+ public void setTotal(int total) {
+ this.total = total;
+ }
+
+ public static class RowsModel {
+ private String assessDate;
+ private String assessmentUnit;
+ private String category;
+ private String categoryName;
+ private String constructionStandardProject;
+ private String constructionStandardUnitName;
+ private String contactInfo;
+ private String createTime;
+ private String createUser;
+ private String equipmentList;
+ private String fileList;
+ private String id;
+ private String isDel;
+ private String laboratoryOwner;
+ private String laboratoryOwnerContact;
+ private String laboratoryOwnerName;
+ private String managerState;
+ private String managerStateName;
+ private String measureMajor;
+ private String measureMajorName;
+ private String mesureRange;
+ private String organizeNo;
+ private String preparationDate;
+ private String projectNo;
+ private String remark;
+ private String remindTime;
+ private String standardHumidity;
+ private String standardLaboratory;
+ private String standardLaboratoryName;
+ private String standardLevel;
+ private String standardLevelName;
+ private String standardName;
+ private String standardNo;
+ private String standardOwner;
+ private String standardOwnerName;
+ private String standardTemperature;
+ private String totalInvestment;
+ private String transmitRange;
+ private String transmitRangeName;
+ private String uncertainty;
+ private String updateTime;
+ private String userList;
+ private String validTime;
+ private String verifyRegulationList;
+ private String version;
+
+ public String getAssessDate() {
+ return assessDate;
+ }
+
+ public void setAssessDate(String assessDate) {
+ this.assessDate = assessDate;
+ }
+
+ public String getAssessmentUnit() {
+ return assessmentUnit;
+ }
+
+ public void setAssessmentUnit(String assessmentUnit) {
+ this.assessmentUnit = assessmentUnit;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getCategoryName() {
+ return categoryName;
+ }
+
+ public void setCategoryName(String categoryName) {
+ this.categoryName = categoryName;
+ }
+
+ public String getConstructionStandardProject() {
+ return constructionStandardProject;
+ }
+
+ public void setConstructionStandardProject(String constructionStandardProject) {
+ this.constructionStandardProject = constructionStandardProject;
+ }
+
+ public String getConstructionStandardUnitName() {
+ return constructionStandardUnitName;
+ }
+
+ public void setConstructionStandardUnitName(String constructionStandardUnitName) {
+ this.constructionStandardUnitName = constructionStandardUnitName;
+ }
+
+ public String getContactInfo() {
+ return contactInfo;
+ }
+
+ public void setContactInfo(String contactInfo) {
+ this.contactInfo = contactInfo;
+ }
+
+ public String getCreateTime() {
+ return createTime;
+ }
+
+ public void setCreateTime(String createTime) {
+ this.createTime = createTime;
+ }
+
+ public String getCreateUser() {
+ return createUser;
+ }
+
+ public void setCreateUser(String createUser) {
+ this.createUser = createUser;
+ }
+
+ public String getEquipmentList() {
+ return equipmentList;
+ }
+
+ public void setEquipmentList(String equipmentList) {
+ this.equipmentList = equipmentList;
+ }
+
+ public String getFileList() {
+ return fileList;
+ }
+
+ public void setFileList(String fileList) {
+ this.fileList = fileList;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getIsDel() {
+ return isDel;
+ }
+
+ public void setIsDel(String isDel) {
+ this.isDel = isDel;
+ }
+
+ public String getLaboratoryOwner() {
+ return laboratoryOwner;
+ }
+
+ public void setLaboratoryOwner(String laboratoryOwner) {
+ this.laboratoryOwner = laboratoryOwner;
+ }
+
+ public String getLaboratoryOwnerContact() {
+ return laboratoryOwnerContact;
+ }
+
+ public void setLaboratoryOwnerContact(String laboratoryOwnerContact) {
+ this.laboratoryOwnerContact = laboratoryOwnerContact;
+ }
+
+ public String getLaboratoryOwnerName() {
+ return laboratoryOwnerName;
+ }
+
+ public void setLaboratoryOwnerName(String laboratoryOwnerName) {
+ this.laboratoryOwnerName = laboratoryOwnerName;
+ }
+
+ public String getManagerState() {
+ return managerState;
+ }
+
+ public void setManagerState(String managerState) {
+ this.managerState = managerState;
+ }
+
+ public String getManagerStateName() {
+ return managerStateName;
+ }
+
+ public void setManagerStateName(String managerStateName) {
+ this.managerStateName = managerStateName;
+ }
+
+ public String getMeasureMajor() {
+ return measureMajor;
+ }
+
+ public void setMeasureMajor(String measureMajor) {
+ this.measureMajor = measureMajor;
+ }
+
+ public String getMeasureMajorName() {
+ return measureMajorName;
+ }
+
+ public void setMeasureMajorName(String measureMajorName) {
+ this.measureMajorName = measureMajorName;
+ }
+
+ public String getMesureRange() {
+ return mesureRange;
+ }
+
+ public void setMesureRange(String mesureRange) {
+ this.mesureRange = mesureRange;
+ }
+
+ public String getOrganizeNo() {
+ return organizeNo;
+ }
+
+ public void setOrganizeNo(String organizeNo) {
+ this.organizeNo = organizeNo;
+ }
+
+ public String getPreparationDate() {
+ return preparationDate;
+ }
+
+ public void setPreparationDate(String preparationDate) {
+ this.preparationDate = preparationDate;
+ }
+
+ public String getProjectNo() {
+ return projectNo;
+ }
+
+ public void setProjectNo(String projectNo) {
+ this.projectNo = projectNo;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getRemindTime() {
+ return remindTime;
+ }
+
+ public void setRemindTime(String remindTime) {
+ this.remindTime = remindTime;
+ }
+
+ public String getStandardHumidity() {
+ return standardHumidity;
+ }
+
+ public void setStandardHumidity(String standardHumidity) {
+ this.standardHumidity = standardHumidity;
+ }
+
+ public String getStandardLaboratory() {
+ return standardLaboratory;
+ }
+
+ public void setStandardLaboratory(String standardLaboratory) {
+ this.standardLaboratory = standardLaboratory;
+ }
+
+ public String getStandardLaboratoryName() {
+ return standardLaboratoryName;
+ }
+
+ public void setStandardLaboratoryName(String standardLaboratoryName) {
+ this.standardLaboratoryName = standardLaboratoryName;
+ }
+
+ public String getStandardLevel() {
+ return standardLevel;
+ }
+
+ public void setStandardLevel(String standardLevel) {
+ this.standardLevel = standardLevel;
+ }
+
+ public String getStandardLevelName() {
+ return standardLevelName;
+ }
+
+ public void setStandardLevelName(String standardLevelName) {
+ this.standardLevelName = standardLevelName;
+ }
+
+ public String getStandardName() {
+ return standardName;
+ }
+
+ public void setStandardName(String standardName) {
+ this.standardName = standardName;
+ }
+
+ public String getStandardNo() {
+ return standardNo;
+ }
+
+ public void setStandardNo(String standardNo) {
+ this.standardNo = standardNo;
+ }
+
+ public String getStandardOwner() {
+ return standardOwner;
+ }
+
+ public void setStandardOwner(String standardOwner) {
+ this.standardOwner = standardOwner;
+ }
+
+ public String getStandardOwnerName() {
+ return standardOwnerName;
+ }
+
+ public void setStandardOwnerName(String standardOwnerName) {
+ this.standardOwnerName = standardOwnerName;
+ }
+
+ public String getStandardTemperature() {
+ return standardTemperature;
+ }
+
+ public void setStandardTemperature(String standardTemperature) {
+ this.standardTemperature = standardTemperature;
+ }
+
+ public String getTotalInvestment() {
+ return totalInvestment;
+ }
+
+ public void setTotalInvestment(String totalInvestment) {
+ this.totalInvestment = totalInvestment;
+ }
+
+ public String getTransmitRange() {
+ return transmitRange;
+ }
+
+ public void setTransmitRange(String transmitRange) {
+ this.transmitRange = transmitRange;
+ }
+
+ public String getTransmitRangeName() {
+ return transmitRangeName;
+ }
+
+ public void setTransmitRangeName(String transmitRangeName) {
+ this.transmitRangeName = transmitRangeName;
+ }
+
+ public String getUncertainty() {
+ return uncertainty;
+ }
+
+ public void setUncertainty(String uncertainty) {
+ this.uncertainty = uncertainty;
+ }
+
+ public String getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(String updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public String getUserList() {
+ return userList;
+ }
+
+ public void setUserList(String userList) {
+ this.userList = userList;
+ }
+
+ public String getValidTime() {
+ return validTime;
+ }
+
+ public void setValidTime(String validTime) {
+ this.validTime = validTime;
+ }
+
+ public String getVerifyRegulationList() {
+ return verifyRegulationList;
+ }
+
+ public void setVerifyRegulationList(String verifyRegulationList) {
+ this.verifyRegulationList = verifyRegulationList;
+ }
+
+ public String getVersion() {
+ return version;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
index cb371ab..01627ed 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
@@ -308,6 +308,26 @@
suspend fun getRemindDeviceCount(@Header("token") token: String): String
/**
+ * 获取到期装置列表
+ */
+ @POST("/meter/standard/remindListPage")
+ suspend fun getRemindDeviceList(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody,
+ @QueryMap limit: Map,
+ @QueryMap offset: Map
+ ): String
+
+ /**
+ * 催办装置
+ */
+ @POST("/meter/standard/remind")
+ suspend fun remindDevice(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody
+ ): String
+
+ /**
* 获取检定规程列表
*/
@POST("/meter/standard/regulation/listPage")
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
index 613e881..aabd4fe 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
@@ -690,6 +690,62 @@
}
/**
+ * 获取到期装置列表
+ */
+ suspend fun getRemindDeviceList(
+ managerState: String,
+ standardName: String,
+ validEndTime: String,
+ validStartTime: String,
+ preparationEndDate: String,
+ ids: Array,
+ id: String,
+ category: String,
+ preparationStartDate: String,
+ standardNo: String,
+ standardLaboratory: String,
+ offset: Int
+ ): String {
+ val param = JsonObject()
+ param.addProperty("managerState", managerState)
+ param.addProperty("standardName", standardName)
+ param.addProperty("validEndTime", validEndTime)
+ param.addProperty("validStartTime", validStartTime)
+ param.addProperty("preparationEndDate", preparationEndDate)
+ param.add("ids", gson.toJsonTree(ids, typeToken).asJsonArray)
+ param.addProperty("id", id)
+ param.addProperty("category", category)
+ param.addProperty("preparationStartDate", preparationStartDate)
+ param.addProperty("standardNo", standardNo)
+ param.addProperty("standardLaboratory", standardLaboratory)
+
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+
+ val limitMap = HashMap()
+ limitMap["limit"] = LocaleConstant.PAGE_LIMIT
+
+ val offsetMap = HashMap()
+ offsetMap["offset"] = offset
+ return api.getRemindDeviceList(
+ AuthenticationHelper.token!!, requestBody, limitMap, offsetMap
+ )
+ }
+
+ /**
+ * 催办装置
+ */
+ suspend fun remindDevice(id: String): String {
+ val param = JsonObject()
+ param.addProperty("id", id)
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+ return api.remindDevice(AuthenticationHelper.token!!, requestBody)
+ }
+
+ /**
* 获取检定规程列表
*/
suspend fun getVerifyProcedureList(id: String): String {
diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
index 35a5837..1ccb314 100644
--- a/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
+++ b/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
@@ -1,4 +1,242 @@
package com.casic.xz.meterage.view.home
-class OvertimeDeviceActivity {
+import android.content.Context
+import android.os.Handler
+import androidx.lifecycle.ViewModelProvider
+import androidx.recyclerview.widget.DividerItemDecoration
+import com.casic.xz.meterage.R
+import com.casic.xz.meterage.base.ApplicationBaseActivity
+import com.casic.xz.meterage.extensions.formatToYearMonthDay
+import com.casic.xz.meterage.extensions.initLayoutImmersionBar
+import com.casic.xz.meterage.extensions.isEarlierThenCurrent
+import com.casic.xz.meterage.extensions.showEmptyPage
+import com.casic.xz.meterage.model.RemindDeviceListModel
+import com.casic.xz.meterage.utils.LoadingDialogHub
+import com.casic.xz.meterage.vm.EquipmentViewModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
+import com.pengxh.kt.lite.adapter.ViewHolder
+import com.pengxh.kt.lite.extensions.convertColor
+import com.pengxh.kt.lite.extensions.navigatePageTo
+import com.pengxh.kt.lite.extensions.show
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.vm.LoadState
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
+import kotlinx.android.synthetic.main.activity_overtime_device.*
+import kotlinx.android.synthetic.main.include_empty_view.*
+import kotlinx.android.synthetic.main.include_search_title.*
+
+class OvertimeDeviceActivity : ApplicationBaseActivity() {
+
+ private var context: Context = this@OvertimeDeviceActivity
+ private lateinit var weakReferenceHandler: WeakReferenceHandler
+ private lateinit var equipmentViewModel: EquipmentViewModel
+ private lateinit var equipmentAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
+ private var pageIndex = 1
+ private var isRefresh = false
+ private var isLoadMore = false
+ private var clickedPosition = 0
+
+ override fun initLayoutView(): Int = R.layout.activity_overtime_device
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ titleView.text = "装置到期列表"
+ }
+
+ override fun initData() {
+ weakReferenceHandler = WeakReferenceHandler(callback)
+ equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java]
+ equipmentViewModel.remindDeviceList.observe(this) {
+ if (it.code == 200) {
+ val dataRows = it.data?.rows!!
+ when {
+ isRefresh -> {
+ dataBeans.clear()
+ dataBeans = dataRows
+ deviceLayout.finishRefresh()
+ isRefresh = false
+ }
+ isLoadMore -> {
+ if (dataRows.size == 0) {
+ "到底了,别拉了".show(this)
+ }
+ dataBeans.addAll(dataRows)
+ deviceLayout.finishLoadMore()
+ isLoadMore = false
+ }
+ else -> {
+ dataBeans = dataRows
+ }
+ }
+ weakReferenceHandler.sendEmptyMessage(2023041802)
+ }
+ }
+
+ equipmentViewModel.remindDeviceResult.observe(this) {
+ if (it.code == 200) {
+ //催办之后列表虽然刷新,但是列表依旧存在,只有在对方处理了过期设备,列表还是刷新
+ "操作成功".show(this)
+ }
+ }
+ }
+
+ override fun observeRequestState() {
+ equipmentViewModel.loadState.observe(this) {
+ when (it) {
+ LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...")
+ else -> LoadingDialogHub.dismiss()
+ }
+ }
+ }
+
+ override fun initEvent() {
+ leftBackView.setOnClickListener { finish() }
+
+ deviceLayout.setOnRefreshListener {
+ isRefresh = true
+ //刷新之后页码重置
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+
+ deviceLayout.setOnLoadMoreListener {
+ isLoadMore = true
+ pageIndex++
+ getRemindDeviceListByPage()
+ }
+ }
+
+ override fun onResume() {
+ super.onResume()
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+
+ private fun getRemindDeviceListByPage() {
+ equipmentViewModel.getRemindDeviceList(
+ "",
+ "",
+ "",
+ "",
+ "",
+ arrayOf(),
+ "",
+ "",
+ "",
+ "",
+ "",
+ pageIndex
+ )
+ }
+
+ private val callback = Handler.Callback {
+ when (it.what) {
+ 2023041802 -> {
+ if (isRefresh || isLoadMore) {
+ equipmentAdapter.notifyDataSetChanged()
+ } else {
+ if (dataBeans.size == 0) {
+ emptyView!!.showEmptyPage("无过期装置") {
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+ } else {
+ emptyView!!.hide()
+ equipmentAdapter = object :
+ NormalRecyclerAdapter(
+ R.layout.item_remind_device_rv_l, dataBeans
+ ) {
+ override fun convertView(
+ viewHolder: ViewHolder,
+ position: Int,
+ item: RemindDeviceListModel.DataModel.RowsModel
+ ) {
+ val transmitRange = if (item.transmitRangeName.isNullOrBlank()) {
+ "未知"
+ } else {
+ item.transmitRangeName
+ }
+
+ val remark = if (item.remark.isNullOrBlank()) {
+ "无"
+ } else {
+ item.remark
+ }
+
+ val lab = if (item.standardLaboratoryName.isNullOrBlank()) {
+ "未知"
+ } else {
+ item.standardLaboratoryName
+ }
+
+ if (item.validTime.isEarlierThenCurrent()) {
+ viewHolder.setTextColor(
+ R.id.deviceDateView, R.color.red.convertColor(context)
+ )
+ } else {
+ viewHolder.setTextColor(
+ R.id.deviceDateView, R.color.gray.convertColor(context)
+ )
+ }
+
+ viewHolder.setText(R.id.deviceNameView, item.standardName)
+ .setText(R.id.deviceStateView, item.managerStateName)
+ .setText(R.id.transmitRangeView, transmitRange)
+ .setText(R.id.measureMajorView, item.measureMajorName)
+ .setText(R.id.deviceCodeView, "装置编号:${item.standardNo}")
+ .setText(R.id.remarkView, "备注:$remark")
+ .setText(R.id.deviceLibView, lab)
+ .setText(
+ R.id.deviceDateView,
+ "有效期至:${item.validTime.formatToYearMonthDay()}"
+ )
+ .setText(R.id.labOwnerView, "管理员:${item.laboratoryOwnerName}")
+
+ viewHolder.setOnClickListener(R.id.remindButton) {
+ //标记被点击的item位置
+ clickedPosition = position
+ AlertControlDialog.Builder()
+ .setContext(context)
+ .setTitle("提示")
+ .setMessage("确定催办该装置?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ if (item.id.isBlank()) {
+ "装置ID异常,无法催办".show(context)
+ return
+ }
+ equipmentViewModel.remindDevice(item.id)
+ }
+ }).build().show()
+ }
+ }
+ }
+ deviceRecyclerView.addItemDecoration(
+ DividerItemDecoration(this, DividerItemDecoration.VERTICAL)
+ )
+ deviceRecyclerView.adapter = equipmentAdapter
+ equipmentAdapter.setOnItemClickedListener(object :
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(
+ position: Int, t: RemindDeviceListModel.DataModel.RowsModel
+ ) {
+ navigatePageTo(t.id)
+ }
+ })
+ }
+ }
+ }
+ }
+ true
+ }
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9bc098c..968c535 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -76,6 +76,7 @@
+
diff --git a/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
new file mode 100644
index 0000000..f17d146
--- /dev/null
+++ b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
@@ -0,0 +1,463 @@
+package com.casic.xz.meterage.model;
+
+import java.util.List;
+
+public class RemindDeviceListModel {
+
+ private int code;
+ private DataModel data;
+ private String message;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public DataModel getData() {
+ return data;
+ }
+
+ public void setData(DataModel data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public static class DataModel {
+ private List rows;
+ private int total;
+
+ public List getRows() {
+ return rows;
+ }
+
+ public void setRows(List rows) {
+ this.rows = rows;
+ }
+
+ public int getTotal() {
+ return total;
+ }
+
+ public void setTotal(int total) {
+ this.total = total;
+ }
+
+ public static class RowsModel {
+ private String assessDate;
+ private String assessmentUnit;
+ private String category;
+ private String categoryName;
+ private String constructionStandardProject;
+ private String constructionStandardUnitName;
+ private String contactInfo;
+ private String createTime;
+ private String createUser;
+ private String equipmentList;
+ private String fileList;
+ private String id;
+ private String isDel;
+ private String laboratoryOwner;
+ private String laboratoryOwnerContact;
+ private String laboratoryOwnerName;
+ private String managerState;
+ private String managerStateName;
+ private String measureMajor;
+ private String measureMajorName;
+ private String mesureRange;
+ private String organizeNo;
+ private String preparationDate;
+ private String projectNo;
+ private String remark;
+ private String remindTime;
+ private String standardHumidity;
+ private String standardLaboratory;
+ private String standardLaboratoryName;
+ private String standardLevel;
+ private String standardLevelName;
+ private String standardName;
+ private String standardNo;
+ private String standardOwner;
+ private String standardOwnerName;
+ private String standardTemperature;
+ private String totalInvestment;
+ private String transmitRange;
+ private String transmitRangeName;
+ private String uncertainty;
+ private String updateTime;
+ private String userList;
+ private String validTime;
+ private String verifyRegulationList;
+ private String version;
+
+ public String getAssessDate() {
+ return assessDate;
+ }
+
+ public void setAssessDate(String assessDate) {
+ this.assessDate = assessDate;
+ }
+
+ public String getAssessmentUnit() {
+ return assessmentUnit;
+ }
+
+ public void setAssessmentUnit(String assessmentUnit) {
+ this.assessmentUnit = assessmentUnit;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getCategoryName() {
+ return categoryName;
+ }
+
+ public void setCategoryName(String categoryName) {
+ this.categoryName = categoryName;
+ }
+
+ public String getConstructionStandardProject() {
+ return constructionStandardProject;
+ }
+
+ public void setConstructionStandardProject(String constructionStandardProject) {
+ this.constructionStandardProject = constructionStandardProject;
+ }
+
+ public String getConstructionStandardUnitName() {
+ return constructionStandardUnitName;
+ }
+
+ public void setConstructionStandardUnitName(String constructionStandardUnitName) {
+ this.constructionStandardUnitName = constructionStandardUnitName;
+ }
+
+ public String getContactInfo() {
+ return contactInfo;
+ }
+
+ public void setContactInfo(String contactInfo) {
+ this.contactInfo = contactInfo;
+ }
+
+ public String getCreateTime() {
+ return createTime;
+ }
+
+ public void setCreateTime(String createTime) {
+ this.createTime = createTime;
+ }
+
+ public String getCreateUser() {
+ return createUser;
+ }
+
+ public void setCreateUser(String createUser) {
+ this.createUser = createUser;
+ }
+
+ public String getEquipmentList() {
+ return equipmentList;
+ }
+
+ public void setEquipmentList(String equipmentList) {
+ this.equipmentList = equipmentList;
+ }
+
+ public String getFileList() {
+ return fileList;
+ }
+
+ public void setFileList(String fileList) {
+ this.fileList = fileList;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getIsDel() {
+ return isDel;
+ }
+
+ public void setIsDel(String isDel) {
+ this.isDel = isDel;
+ }
+
+ public String getLaboratoryOwner() {
+ return laboratoryOwner;
+ }
+
+ public void setLaboratoryOwner(String laboratoryOwner) {
+ this.laboratoryOwner = laboratoryOwner;
+ }
+
+ public String getLaboratoryOwnerContact() {
+ return laboratoryOwnerContact;
+ }
+
+ public void setLaboratoryOwnerContact(String laboratoryOwnerContact) {
+ this.laboratoryOwnerContact = laboratoryOwnerContact;
+ }
+
+ public String getLaboratoryOwnerName() {
+ return laboratoryOwnerName;
+ }
+
+ public void setLaboratoryOwnerName(String laboratoryOwnerName) {
+ this.laboratoryOwnerName = laboratoryOwnerName;
+ }
+
+ public String getManagerState() {
+ return managerState;
+ }
+
+ public void setManagerState(String managerState) {
+ this.managerState = managerState;
+ }
+
+ public String getManagerStateName() {
+ return managerStateName;
+ }
+
+ public void setManagerStateName(String managerStateName) {
+ this.managerStateName = managerStateName;
+ }
+
+ public String getMeasureMajor() {
+ return measureMajor;
+ }
+
+ public void setMeasureMajor(String measureMajor) {
+ this.measureMajor = measureMajor;
+ }
+
+ public String getMeasureMajorName() {
+ return measureMajorName;
+ }
+
+ public void setMeasureMajorName(String measureMajorName) {
+ this.measureMajorName = measureMajorName;
+ }
+
+ public String getMesureRange() {
+ return mesureRange;
+ }
+
+ public void setMesureRange(String mesureRange) {
+ this.mesureRange = mesureRange;
+ }
+
+ public String getOrganizeNo() {
+ return organizeNo;
+ }
+
+ public void setOrganizeNo(String organizeNo) {
+ this.organizeNo = organizeNo;
+ }
+
+ public String getPreparationDate() {
+ return preparationDate;
+ }
+
+ public void setPreparationDate(String preparationDate) {
+ this.preparationDate = preparationDate;
+ }
+
+ public String getProjectNo() {
+ return projectNo;
+ }
+
+ public void setProjectNo(String projectNo) {
+ this.projectNo = projectNo;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getRemindTime() {
+ return remindTime;
+ }
+
+ public void setRemindTime(String remindTime) {
+ this.remindTime = remindTime;
+ }
+
+ public String getStandardHumidity() {
+ return standardHumidity;
+ }
+
+ public void setStandardHumidity(String standardHumidity) {
+ this.standardHumidity = standardHumidity;
+ }
+
+ public String getStandardLaboratory() {
+ return standardLaboratory;
+ }
+
+ public void setStandardLaboratory(String standardLaboratory) {
+ this.standardLaboratory = standardLaboratory;
+ }
+
+ public String getStandardLaboratoryName() {
+ return standardLaboratoryName;
+ }
+
+ public void setStandardLaboratoryName(String standardLaboratoryName) {
+ this.standardLaboratoryName = standardLaboratoryName;
+ }
+
+ public String getStandardLevel() {
+ return standardLevel;
+ }
+
+ public void setStandardLevel(String standardLevel) {
+ this.standardLevel = standardLevel;
+ }
+
+ public String getStandardLevelName() {
+ return standardLevelName;
+ }
+
+ public void setStandardLevelName(String standardLevelName) {
+ this.standardLevelName = standardLevelName;
+ }
+
+ public String getStandardName() {
+ return standardName;
+ }
+
+ public void setStandardName(String standardName) {
+ this.standardName = standardName;
+ }
+
+ public String getStandardNo() {
+ return standardNo;
+ }
+
+ public void setStandardNo(String standardNo) {
+ this.standardNo = standardNo;
+ }
+
+ public String getStandardOwner() {
+ return standardOwner;
+ }
+
+ public void setStandardOwner(String standardOwner) {
+ this.standardOwner = standardOwner;
+ }
+
+ public String getStandardOwnerName() {
+ return standardOwnerName;
+ }
+
+ public void setStandardOwnerName(String standardOwnerName) {
+ this.standardOwnerName = standardOwnerName;
+ }
+
+ public String getStandardTemperature() {
+ return standardTemperature;
+ }
+
+ public void setStandardTemperature(String standardTemperature) {
+ this.standardTemperature = standardTemperature;
+ }
+
+ public String getTotalInvestment() {
+ return totalInvestment;
+ }
+
+ public void setTotalInvestment(String totalInvestment) {
+ this.totalInvestment = totalInvestment;
+ }
+
+ public String getTransmitRange() {
+ return transmitRange;
+ }
+
+ public void setTransmitRange(String transmitRange) {
+ this.transmitRange = transmitRange;
+ }
+
+ public String getTransmitRangeName() {
+ return transmitRangeName;
+ }
+
+ public void setTransmitRangeName(String transmitRangeName) {
+ this.transmitRangeName = transmitRangeName;
+ }
+
+ public String getUncertainty() {
+ return uncertainty;
+ }
+
+ public void setUncertainty(String uncertainty) {
+ this.uncertainty = uncertainty;
+ }
+
+ public String getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(String updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public String getUserList() {
+ return userList;
+ }
+
+ public void setUserList(String userList) {
+ this.userList = userList;
+ }
+
+ public String getValidTime() {
+ return validTime;
+ }
+
+ public void setValidTime(String validTime) {
+ this.validTime = validTime;
+ }
+
+ public String getVerifyRegulationList() {
+ return verifyRegulationList;
+ }
+
+ public void setVerifyRegulationList(String verifyRegulationList) {
+ this.verifyRegulationList = verifyRegulationList;
+ }
+
+ public String getVersion() {
+ return version;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
index cb371ab..01627ed 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
@@ -308,6 +308,26 @@
suspend fun getRemindDeviceCount(@Header("token") token: String): String
/**
+ * 获取到期装置列表
+ */
+ @POST("/meter/standard/remindListPage")
+ suspend fun getRemindDeviceList(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody,
+ @QueryMap limit: Map,
+ @QueryMap offset: Map
+ ): String
+
+ /**
+ * 催办装置
+ */
+ @POST("/meter/standard/remind")
+ suspend fun remindDevice(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody
+ ): String
+
+ /**
* 获取检定规程列表
*/
@POST("/meter/standard/regulation/listPage")
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
index 613e881..aabd4fe 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
@@ -690,6 +690,62 @@
}
/**
+ * 获取到期装置列表
+ */
+ suspend fun getRemindDeviceList(
+ managerState: String,
+ standardName: String,
+ validEndTime: String,
+ validStartTime: String,
+ preparationEndDate: String,
+ ids: Array,
+ id: String,
+ category: String,
+ preparationStartDate: String,
+ standardNo: String,
+ standardLaboratory: String,
+ offset: Int
+ ): String {
+ val param = JsonObject()
+ param.addProperty("managerState", managerState)
+ param.addProperty("standardName", standardName)
+ param.addProperty("validEndTime", validEndTime)
+ param.addProperty("validStartTime", validStartTime)
+ param.addProperty("preparationEndDate", preparationEndDate)
+ param.add("ids", gson.toJsonTree(ids, typeToken).asJsonArray)
+ param.addProperty("id", id)
+ param.addProperty("category", category)
+ param.addProperty("preparationStartDate", preparationStartDate)
+ param.addProperty("standardNo", standardNo)
+ param.addProperty("standardLaboratory", standardLaboratory)
+
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+
+ val limitMap = HashMap()
+ limitMap["limit"] = LocaleConstant.PAGE_LIMIT
+
+ val offsetMap = HashMap()
+ offsetMap["offset"] = offset
+ return api.getRemindDeviceList(
+ AuthenticationHelper.token!!, requestBody, limitMap, offsetMap
+ )
+ }
+
+ /**
+ * 催办装置
+ */
+ suspend fun remindDevice(id: String): String {
+ val param = JsonObject()
+ param.addProperty("id", id)
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+ return api.remindDevice(AuthenticationHelper.token!!, requestBody)
+ }
+
+ /**
* 获取检定规程列表
*/
suspend fun getVerifyProcedureList(id: String): String {
diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
index 35a5837..1ccb314 100644
--- a/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
+++ b/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
@@ -1,4 +1,242 @@
package com.casic.xz.meterage.view.home
-class OvertimeDeviceActivity {
+import android.content.Context
+import android.os.Handler
+import androidx.lifecycle.ViewModelProvider
+import androidx.recyclerview.widget.DividerItemDecoration
+import com.casic.xz.meterage.R
+import com.casic.xz.meterage.base.ApplicationBaseActivity
+import com.casic.xz.meterage.extensions.formatToYearMonthDay
+import com.casic.xz.meterage.extensions.initLayoutImmersionBar
+import com.casic.xz.meterage.extensions.isEarlierThenCurrent
+import com.casic.xz.meterage.extensions.showEmptyPage
+import com.casic.xz.meterage.model.RemindDeviceListModel
+import com.casic.xz.meterage.utils.LoadingDialogHub
+import com.casic.xz.meterage.vm.EquipmentViewModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
+import com.pengxh.kt.lite.adapter.ViewHolder
+import com.pengxh.kt.lite.extensions.convertColor
+import com.pengxh.kt.lite.extensions.navigatePageTo
+import com.pengxh.kt.lite.extensions.show
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.vm.LoadState
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
+import kotlinx.android.synthetic.main.activity_overtime_device.*
+import kotlinx.android.synthetic.main.include_empty_view.*
+import kotlinx.android.synthetic.main.include_search_title.*
+
+class OvertimeDeviceActivity : ApplicationBaseActivity() {
+
+ private var context: Context = this@OvertimeDeviceActivity
+ private lateinit var weakReferenceHandler: WeakReferenceHandler
+ private lateinit var equipmentViewModel: EquipmentViewModel
+ private lateinit var equipmentAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
+ private var pageIndex = 1
+ private var isRefresh = false
+ private var isLoadMore = false
+ private var clickedPosition = 0
+
+ override fun initLayoutView(): Int = R.layout.activity_overtime_device
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ titleView.text = "装置到期列表"
+ }
+
+ override fun initData() {
+ weakReferenceHandler = WeakReferenceHandler(callback)
+ equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java]
+ equipmentViewModel.remindDeviceList.observe(this) {
+ if (it.code == 200) {
+ val dataRows = it.data?.rows!!
+ when {
+ isRefresh -> {
+ dataBeans.clear()
+ dataBeans = dataRows
+ deviceLayout.finishRefresh()
+ isRefresh = false
+ }
+ isLoadMore -> {
+ if (dataRows.size == 0) {
+ "到底了,别拉了".show(this)
+ }
+ dataBeans.addAll(dataRows)
+ deviceLayout.finishLoadMore()
+ isLoadMore = false
+ }
+ else -> {
+ dataBeans = dataRows
+ }
+ }
+ weakReferenceHandler.sendEmptyMessage(2023041802)
+ }
+ }
+
+ equipmentViewModel.remindDeviceResult.observe(this) {
+ if (it.code == 200) {
+ //催办之后列表虽然刷新,但是列表依旧存在,只有在对方处理了过期设备,列表还是刷新
+ "操作成功".show(this)
+ }
+ }
+ }
+
+ override fun observeRequestState() {
+ equipmentViewModel.loadState.observe(this) {
+ when (it) {
+ LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...")
+ else -> LoadingDialogHub.dismiss()
+ }
+ }
+ }
+
+ override fun initEvent() {
+ leftBackView.setOnClickListener { finish() }
+
+ deviceLayout.setOnRefreshListener {
+ isRefresh = true
+ //刷新之后页码重置
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+
+ deviceLayout.setOnLoadMoreListener {
+ isLoadMore = true
+ pageIndex++
+ getRemindDeviceListByPage()
+ }
+ }
+
+ override fun onResume() {
+ super.onResume()
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+
+ private fun getRemindDeviceListByPage() {
+ equipmentViewModel.getRemindDeviceList(
+ "",
+ "",
+ "",
+ "",
+ "",
+ arrayOf(),
+ "",
+ "",
+ "",
+ "",
+ "",
+ pageIndex
+ )
+ }
+
+ private val callback = Handler.Callback {
+ when (it.what) {
+ 2023041802 -> {
+ if (isRefresh || isLoadMore) {
+ equipmentAdapter.notifyDataSetChanged()
+ } else {
+ if (dataBeans.size == 0) {
+ emptyView!!.showEmptyPage("无过期装置") {
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+ } else {
+ emptyView!!.hide()
+ equipmentAdapter = object :
+ NormalRecyclerAdapter(
+ R.layout.item_remind_device_rv_l, dataBeans
+ ) {
+ override fun convertView(
+ viewHolder: ViewHolder,
+ position: Int,
+ item: RemindDeviceListModel.DataModel.RowsModel
+ ) {
+ val transmitRange = if (item.transmitRangeName.isNullOrBlank()) {
+ "未知"
+ } else {
+ item.transmitRangeName
+ }
+
+ val remark = if (item.remark.isNullOrBlank()) {
+ "无"
+ } else {
+ item.remark
+ }
+
+ val lab = if (item.standardLaboratoryName.isNullOrBlank()) {
+ "未知"
+ } else {
+ item.standardLaboratoryName
+ }
+
+ if (item.validTime.isEarlierThenCurrent()) {
+ viewHolder.setTextColor(
+ R.id.deviceDateView, R.color.red.convertColor(context)
+ )
+ } else {
+ viewHolder.setTextColor(
+ R.id.deviceDateView, R.color.gray.convertColor(context)
+ )
+ }
+
+ viewHolder.setText(R.id.deviceNameView, item.standardName)
+ .setText(R.id.deviceStateView, item.managerStateName)
+ .setText(R.id.transmitRangeView, transmitRange)
+ .setText(R.id.measureMajorView, item.measureMajorName)
+ .setText(R.id.deviceCodeView, "装置编号:${item.standardNo}")
+ .setText(R.id.remarkView, "备注:$remark")
+ .setText(R.id.deviceLibView, lab)
+ .setText(
+ R.id.deviceDateView,
+ "有效期至:${item.validTime.formatToYearMonthDay()}"
+ )
+ .setText(R.id.labOwnerView, "管理员:${item.laboratoryOwnerName}")
+
+ viewHolder.setOnClickListener(R.id.remindButton) {
+ //标记被点击的item位置
+ clickedPosition = position
+ AlertControlDialog.Builder()
+ .setContext(context)
+ .setTitle("提示")
+ .setMessage("确定催办该装置?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ if (item.id.isBlank()) {
+ "装置ID异常,无法催办".show(context)
+ return
+ }
+ equipmentViewModel.remindDevice(item.id)
+ }
+ }).build().show()
+ }
+ }
+ }
+ deviceRecyclerView.addItemDecoration(
+ DividerItemDecoration(this, DividerItemDecoration.VERTICAL)
+ )
+ deviceRecyclerView.adapter = equipmentAdapter
+ equipmentAdapter.setOnItemClickedListener(object :
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(
+ position: Int, t: RemindDeviceListModel.DataModel.RowsModel
+ ) {
+ navigatePageTo(t.id)
+ }
+ })
+ }
+ }
+ }
+ }
+ true
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
index b1817bc..6291b19 100644
--- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
+++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
@@ -31,6 +31,8 @@
val remindEquipmentList = MutableLiveData()
val remindEquipmentResult = MutableLiveData()
val remindDeviceCount = MutableLiveData()
+ val remindDeviceList = MutableLiveData()
+ val remindDeviceResult = MutableLiveData()
fun getEquipmentList(
equipmentNo: String,
@@ -328,4 +330,64 @@
it.cause.toString().show(BaseApplication.get())
it.printStackTrace()
})
+
+ fun getRemindDeviceList(
+ managerState: String,
+ standardName: String,
+ validEndTime: String,
+ validStartTime: String,
+ preparationEndDate: String,
+ ids: Array,
+ id: String,
+ category: String,
+ preparationStartDate: String,
+ standardNo: String,
+ standardLaboratory: String,
+ offset: Int
+ ) = launch({
+ loadState.value = LoadState.Loading
+ val response = RetrofitServiceManager.getRemindDeviceList(
+ managerState,
+ standardName,
+ validEndTime,
+ validStartTime,
+ preparationEndDate,
+ ids,
+ id,
+ category,
+ preparationStartDate,
+ standardNo,
+ standardLaboratory,
+ offset
+ )
+ val responseCode = response.separateResponseCode()
+ if (responseCode == 200) {
+ loadState.value = LoadState.Success
+ remindDeviceList.value = gson.fromJson(
+ response, object : TypeToken() {}.type
+ )
+ } else {
+ loadState.value = LoadState.Fail
+ response.toErrorMessage().show(BaseApplication.get())
+ }
+ }, {
+ loadState.value = LoadState.Fail
+ it.cause.toString().show(BaseApplication.get())
+ it.printStackTrace()
+ })
+
+ fun remindDevice(id: String) = launch({
+ val response = RetrofitServiceManager.remindDevice(id)
+ val responseCode = response.separateResponseCode()
+ if (responseCode == 200) {
+ remindDeviceResult.value = gson.fromJson(
+ response, object : TypeToken() {}.type
+ )
+ } else {
+ response.toErrorMessage().show(BaseApplication.get())
+ }
+ }, {
+ it.cause.toString().show(BaseApplication.get())
+ it.printStackTrace()
+ })
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9bc098c..968c535 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -76,6 +76,7 @@
+
diff --git a/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
new file mode 100644
index 0000000..f17d146
--- /dev/null
+++ b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
@@ -0,0 +1,463 @@
+package com.casic.xz.meterage.model;
+
+import java.util.List;
+
+public class RemindDeviceListModel {
+
+ private int code;
+ private DataModel data;
+ private String message;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public DataModel getData() {
+ return data;
+ }
+
+ public void setData(DataModel data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public static class DataModel {
+ private List rows;
+ private int total;
+
+ public List getRows() {
+ return rows;
+ }
+
+ public void setRows(List rows) {
+ this.rows = rows;
+ }
+
+ public int getTotal() {
+ return total;
+ }
+
+ public void setTotal(int total) {
+ this.total = total;
+ }
+
+ public static class RowsModel {
+ private String assessDate;
+ private String assessmentUnit;
+ private String category;
+ private String categoryName;
+ private String constructionStandardProject;
+ private String constructionStandardUnitName;
+ private String contactInfo;
+ private String createTime;
+ private String createUser;
+ private String equipmentList;
+ private String fileList;
+ private String id;
+ private String isDel;
+ private String laboratoryOwner;
+ private String laboratoryOwnerContact;
+ private String laboratoryOwnerName;
+ private String managerState;
+ private String managerStateName;
+ private String measureMajor;
+ private String measureMajorName;
+ private String mesureRange;
+ private String organizeNo;
+ private String preparationDate;
+ private String projectNo;
+ private String remark;
+ private String remindTime;
+ private String standardHumidity;
+ private String standardLaboratory;
+ private String standardLaboratoryName;
+ private String standardLevel;
+ private String standardLevelName;
+ private String standardName;
+ private String standardNo;
+ private String standardOwner;
+ private String standardOwnerName;
+ private String standardTemperature;
+ private String totalInvestment;
+ private String transmitRange;
+ private String transmitRangeName;
+ private String uncertainty;
+ private String updateTime;
+ private String userList;
+ private String validTime;
+ private String verifyRegulationList;
+ private String version;
+
+ public String getAssessDate() {
+ return assessDate;
+ }
+
+ public void setAssessDate(String assessDate) {
+ this.assessDate = assessDate;
+ }
+
+ public String getAssessmentUnit() {
+ return assessmentUnit;
+ }
+
+ public void setAssessmentUnit(String assessmentUnit) {
+ this.assessmentUnit = assessmentUnit;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getCategoryName() {
+ return categoryName;
+ }
+
+ public void setCategoryName(String categoryName) {
+ this.categoryName = categoryName;
+ }
+
+ public String getConstructionStandardProject() {
+ return constructionStandardProject;
+ }
+
+ public void setConstructionStandardProject(String constructionStandardProject) {
+ this.constructionStandardProject = constructionStandardProject;
+ }
+
+ public String getConstructionStandardUnitName() {
+ return constructionStandardUnitName;
+ }
+
+ public void setConstructionStandardUnitName(String constructionStandardUnitName) {
+ this.constructionStandardUnitName = constructionStandardUnitName;
+ }
+
+ public String getContactInfo() {
+ return contactInfo;
+ }
+
+ public void setContactInfo(String contactInfo) {
+ this.contactInfo = contactInfo;
+ }
+
+ public String getCreateTime() {
+ return createTime;
+ }
+
+ public void setCreateTime(String createTime) {
+ this.createTime = createTime;
+ }
+
+ public String getCreateUser() {
+ return createUser;
+ }
+
+ public void setCreateUser(String createUser) {
+ this.createUser = createUser;
+ }
+
+ public String getEquipmentList() {
+ return equipmentList;
+ }
+
+ public void setEquipmentList(String equipmentList) {
+ this.equipmentList = equipmentList;
+ }
+
+ public String getFileList() {
+ return fileList;
+ }
+
+ public void setFileList(String fileList) {
+ this.fileList = fileList;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getIsDel() {
+ return isDel;
+ }
+
+ public void setIsDel(String isDel) {
+ this.isDel = isDel;
+ }
+
+ public String getLaboratoryOwner() {
+ return laboratoryOwner;
+ }
+
+ public void setLaboratoryOwner(String laboratoryOwner) {
+ this.laboratoryOwner = laboratoryOwner;
+ }
+
+ public String getLaboratoryOwnerContact() {
+ return laboratoryOwnerContact;
+ }
+
+ public void setLaboratoryOwnerContact(String laboratoryOwnerContact) {
+ this.laboratoryOwnerContact = laboratoryOwnerContact;
+ }
+
+ public String getLaboratoryOwnerName() {
+ return laboratoryOwnerName;
+ }
+
+ public void setLaboratoryOwnerName(String laboratoryOwnerName) {
+ this.laboratoryOwnerName = laboratoryOwnerName;
+ }
+
+ public String getManagerState() {
+ return managerState;
+ }
+
+ public void setManagerState(String managerState) {
+ this.managerState = managerState;
+ }
+
+ public String getManagerStateName() {
+ return managerStateName;
+ }
+
+ public void setManagerStateName(String managerStateName) {
+ this.managerStateName = managerStateName;
+ }
+
+ public String getMeasureMajor() {
+ return measureMajor;
+ }
+
+ public void setMeasureMajor(String measureMajor) {
+ this.measureMajor = measureMajor;
+ }
+
+ public String getMeasureMajorName() {
+ return measureMajorName;
+ }
+
+ public void setMeasureMajorName(String measureMajorName) {
+ this.measureMajorName = measureMajorName;
+ }
+
+ public String getMesureRange() {
+ return mesureRange;
+ }
+
+ public void setMesureRange(String mesureRange) {
+ this.mesureRange = mesureRange;
+ }
+
+ public String getOrganizeNo() {
+ return organizeNo;
+ }
+
+ public void setOrganizeNo(String organizeNo) {
+ this.organizeNo = organizeNo;
+ }
+
+ public String getPreparationDate() {
+ return preparationDate;
+ }
+
+ public void setPreparationDate(String preparationDate) {
+ this.preparationDate = preparationDate;
+ }
+
+ public String getProjectNo() {
+ return projectNo;
+ }
+
+ public void setProjectNo(String projectNo) {
+ this.projectNo = projectNo;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getRemindTime() {
+ return remindTime;
+ }
+
+ public void setRemindTime(String remindTime) {
+ this.remindTime = remindTime;
+ }
+
+ public String getStandardHumidity() {
+ return standardHumidity;
+ }
+
+ public void setStandardHumidity(String standardHumidity) {
+ this.standardHumidity = standardHumidity;
+ }
+
+ public String getStandardLaboratory() {
+ return standardLaboratory;
+ }
+
+ public void setStandardLaboratory(String standardLaboratory) {
+ this.standardLaboratory = standardLaboratory;
+ }
+
+ public String getStandardLaboratoryName() {
+ return standardLaboratoryName;
+ }
+
+ public void setStandardLaboratoryName(String standardLaboratoryName) {
+ this.standardLaboratoryName = standardLaboratoryName;
+ }
+
+ public String getStandardLevel() {
+ return standardLevel;
+ }
+
+ public void setStandardLevel(String standardLevel) {
+ this.standardLevel = standardLevel;
+ }
+
+ public String getStandardLevelName() {
+ return standardLevelName;
+ }
+
+ public void setStandardLevelName(String standardLevelName) {
+ this.standardLevelName = standardLevelName;
+ }
+
+ public String getStandardName() {
+ return standardName;
+ }
+
+ public void setStandardName(String standardName) {
+ this.standardName = standardName;
+ }
+
+ public String getStandardNo() {
+ return standardNo;
+ }
+
+ public void setStandardNo(String standardNo) {
+ this.standardNo = standardNo;
+ }
+
+ public String getStandardOwner() {
+ return standardOwner;
+ }
+
+ public void setStandardOwner(String standardOwner) {
+ this.standardOwner = standardOwner;
+ }
+
+ public String getStandardOwnerName() {
+ return standardOwnerName;
+ }
+
+ public void setStandardOwnerName(String standardOwnerName) {
+ this.standardOwnerName = standardOwnerName;
+ }
+
+ public String getStandardTemperature() {
+ return standardTemperature;
+ }
+
+ public void setStandardTemperature(String standardTemperature) {
+ this.standardTemperature = standardTemperature;
+ }
+
+ public String getTotalInvestment() {
+ return totalInvestment;
+ }
+
+ public void setTotalInvestment(String totalInvestment) {
+ this.totalInvestment = totalInvestment;
+ }
+
+ public String getTransmitRange() {
+ return transmitRange;
+ }
+
+ public void setTransmitRange(String transmitRange) {
+ this.transmitRange = transmitRange;
+ }
+
+ public String getTransmitRangeName() {
+ return transmitRangeName;
+ }
+
+ public void setTransmitRangeName(String transmitRangeName) {
+ this.transmitRangeName = transmitRangeName;
+ }
+
+ public String getUncertainty() {
+ return uncertainty;
+ }
+
+ public void setUncertainty(String uncertainty) {
+ this.uncertainty = uncertainty;
+ }
+
+ public String getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(String updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public String getUserList() {
+ return userList;
+ }
+
+ public void setUserList(String userList) {
+ this.userList = userList;
+ }
+
+ public String getValidTime() {
+ return validTime;
+ }
+
+ public void setValidTime(String validTime) {
+ this.validTime = validTime;
+ }
+
+ public String getVerifyRegulationList() {
+ return verifyRegulationList;
+ }
+
+ public void setVerifyRegulationList(String verifyRegulationList) {
+ this.verifyRegulationList = verifyRegulationList;
+ }
+
+ public String getVersion() {
+ return version;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
index cb371ab..01627ed 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
@@ -308,6 +308,26 @@
suspend fun getRemindDeviceCount(@Header("token") token: String): String
/**
+ * 获取到期装置列表
+ */
+ @POST("/meter/standard/remindListPage")
+ suspend fun getRemindDeviceList(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody,
+ @QueryMap limit: Map,
+ @QueryMap offset: Map
+ ): String
+
+ /**
+ * 催办装置
+ */
+ @POST("/meter/standard/remind")
+ suspend fun remindDevice(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody
+ ): String
+
+ /**
* 获取检定规程列表
*/
@POST("/meter/standard/regulation/listPage")
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
index 613e881..aabd4fe 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
@@ -690,6 +690,62 @@
}
/**
+ * 获取到期装置列表
+ */
+ suspend fun getRemindDeviceList(
+ managerState: String,
+ standardName: String,
+ validEndTime: String,
+ validStartTime: String,
+ preparationEndDate: String,
+ ids: Array,
+ id: String,
+ category: String,
+ preparationStartDate: String,
+ standardNo: String,
+ standardLaboratory: String,
+ offset: Int
+ ): String {
+ val param = JsonObject()
+ param.addProperty("managerState", managerState)
+ param.addProperty("standardName", standardName)
+ param.addProperty("validEndTime", validEndTime)
+ param.addProperty("validStartTime", validStartTime)
+ param.addProperty("preparationEndDate", preparationEndDate)
+ param.add("ids", gson.toJsonTree(ids, typeToken).asJsonArray)
+ param.addProperty("id", id)
+ param.addProperty("category", category)
+ param.addProperty("preparationStartDate", preparationStartDate)
+ param.addProperty("standardNo", standardNo)
+ param.addProperty("standardLaboratory", standardLaboratory)
+
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+
+ val limitMap = HashMap()
+ limitMap["limit"] = LocaleConstant.PAGE_LIMIT
+
+ val offsetMap = HashMap()
+ offsetMap["offset"] = offset
+ return api.getRemindDeviceList(
+ AuthenticationHelper.token!!, requestBody, limitMap, offsetMap
+ )
+ }
+
+ /**
+ * 催办装置
+ */
+ suspend fun remindDevice(id: String): String {
+ val param = JsonObject()
+ param.addProperty("id", id)
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+ return api.remindDevice(AuthenticationHelper.token!!, requestBody)
+ }
+
+ /**
* 获取检定规程列表
*/
suspend fun getVerifyProcedureList(id: String): String {
diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
index 35a5837..1ccb314 100644
--- a/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
+++ b/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
@@ -1,4 +1,242 @@
package com.casic.xz.meterage.view.home
-class OvertimeDeviceActivity {
+import android.content.Context
+import android.os.Handler
+import androidx.lifecycle.ViewModelProvider
+import androidx.recyclerview.widget.DividerItemDecoration
+import com.casic.xz.meterage.R
+import com.casic.xz.meterage.base.ApplicationBaseActivity
+import com.casic.xz.meterage.extensions.formatToYearMonthDay
+import com.casic.xz.meterage.extensions.initLayoutImmersionBar
+import com.casic.xz.meterage.extensions.isEarlierThenCurrent
+import com.casic.xz.meterage.extensions.showEmptyPage
+import com.casic.xz.meterage.model.RemindDeviceListModel
+import com.casic.xz.meterage.utils.LoadingDialogHub
+import com.casic.xz.meterage.vm.EquipmentViewModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
+import com.pengxh.kt.lite.adapter.ViewHolder
+import com.pengxh.kt.lite.extensions.convertColor
+import com.pengxh.kt.lite.extensions.navigatePageTo
+import com.pengxh.kt.lite.extensions.show
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.vm.LoadState
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
+import kotlinx.android.synthetic.main.activity_overtime_device.*
+import kotlinx.android.synthetic.main.include_empty_view.*
+import kotlinx.android.synthetic.main.include_search_title.*
+
+class OvertimeDeviceActivity : ApplicationBaseActivity() {
+
+ private var context: Context = this@OvertimeDeviceActivity
+ private lateinit var weakReferenceHandler: WeakReferenceHandler
+ private lateinit var equipmentViewModel: EquipmentViewModel
+ private lateinit var equipmentAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
+ private var pageIndex = 1
+ private var isRefresh = false
+ private var isLoadMore = false
+ private var clickedPosition = 0
+
+ override fun initLayoutView(): Int = R.layout.activity_overtime_device
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ titleView.text = "装置到期列表"
+ }
+
+ override fun initData() {
+ weakReferenceHandler = WeakReferenceHandler(callback)
+ equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java]
+ equipmentViewModel.remindDeviceList.observe(this) {
+ if (it.code == 200) {
+ val dataRows = it.data?.rows!!
+ when {
+ isRefresh -> {
+ dataBeans.clear()
+ dataBeans = dataRows
+ deviceLayout.finishRefresh()
+ isRefresh = false
+ }
+ isLoadMore -> {
+ if (dataRows.size == 0) {
+ "到底了,别拉了".show(this)
+ }
+ dataBeans.addAll(dataRows)
+ deviceLayout.finishLoadMore()
+ isLoadMore = false
+ }
+ else -> {
+ dataBeans = dataRows
+ }
+ }
+ weakReferenceHandler.sendEmptyMessage(2023041802)
+ }
+ }
+
+ equipmentViewModel.remindDeviceResult.observe(this) {
+ if (it.code == 200) {
+ //催办之后列表虽然刷新,但是列表依旧存在,只有在对方处理了过期设备,列表还是刷新
+ "操作成功".show(this)
+ }
+ }
+ }
+
+ override fun observeRequestState() {
+ equipmentViewModel.loadState.observe(this) {
+ when (it) {
+ LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...")
+ else -> LoadingDialogHub.dismiss()
+ }
+ }
+ }
+
+ override fun initEvent() {
+ leftBackView.setOnClickListener { finish() }
+
+ deviceLayout.setOnRefreshListener {
+ isRefresh = true
+ //刷新之后页码重置
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+
+ deviceLayout.setOnLoadMoreListener {
+ isLoadMore = true
+ pageIndex++
+ getRemindDeviceListByPage()
+ }
+ }
+
+ override fun onResume() {
+ super.onResume()
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+
+ private fun getRemindDeviceListByPage() {
+ equipmentViewModel.getRemindDeviceList(
+ "",
+ "",
+ "",
+ "",
+ "",
+ arrayOf(),
+ "",
+ "",
+ "",
+ "",
+ "",
+ pageIndex
+ )
+ }
+
+ private val callback = Handler.Callback {
+ when (it.what) {
+ 2023041802 -> {
+ if (isRefresh || isLoadMore) {
+ equipmentAdapter.notifyDataSetChanged()
+ } else {
+ if (dataBeans.size == 0) {
+ emptyView!!.showEmptyPage("无过期装置") {
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+ } else {
+ emptyView!!.hide()
+ equipmentAdapter = object :
+ NormalRecyclerAdapter(
+ R.layout.item_remind_device_rv_l, dataBeans
+ ) {
+ override fun convertView(
+ viewHolder: ViewHolder,
+ position: Int,
+ item: RemindDeviceListModel.DataModel.RowsModel
+ ) {
+ val transmitRange = if (item.transmitRangeName.isNullOrBlank()) {
+ "未知"
+ } else {
+ item.transmitRangeName
+ }
+
+ val remark = if (item.remark.isNullOrBlank()) {
+ "无"
+ } else {
+ item.remark
+ }
+
+ val lab = if (item.standardLaboratoryName.isNullOrBlank()) {
+ "未知"
+ } else {
+ item.standardLaboratoryName
+ }
+
+ if (item.validTime.isEarlierThenCurrent()) {
+ viewHolder.setTextColor(
+ R.id.deviceDateView, R.color.red.convertColor(context)
+ )
+ } else {
+ viewHolder.setTextColor(
+ R.id.deviceDateView, R.color.gray.convertColor(context)
+ )
+ }
+
+ viewHolder.setText(R.id.deviceNameView, item.standardName)
+ .setText(R.id.deviceStateView, item.managerStateName)
+ .setText(R.id.transmitRangeView, transmitRange)
+ .setText(R.id.measureMajorView, item.measureMajorName)
+ .setText(R.id.deviceCodeView, "装置编号:${item.standardNo}")
+ .setText(R.id.remarkView, "备注:$remark")
+ .setText(R.id.deviceLibView, lab)
+ .setText(
+ R.id.deviceDateView,
+ "有效期至:${item.validTime.formatToYearMonthDay()}"
+ )
+ .setText(R.id.labOwnerView, "管理员:${item.laboratoryOwnerName}")
+
+ viewHolder.setOnClickListener(R.id.remindButton) {
+ //标记被点击的item位置
+ clickedPosition = position
+ AlertControlDialog.Builder()
+ .setContext(context)
+ .setTitle("提示")
+ .setMessage("确定催办该装置?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ if (item.id.isBlank()) {
+ "装置ID异常,无法催办".show(context)
+ return
+ }
+ equipmentViewModel.remindDevice(item.id)
+ }
+ }).build().show()
+ }
+ }
+ }
+ deviceRecyclerView.addItemDecoration(
+ DividerItemDecoration(this, DividerItemDecoration.VERTICAL)
+ )
+ deviceRecyclerView.adapter = equipmentAdapter
+ equipmentAdapter.setOnItemClickedListener(object :
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(
+ position: Int, t: RemindDeviceListModel.DataModel.RowsModel
+ ) {
+ navigatePageTo(t.id)
+ }
+ })
+ }
+ }
+ }
+ }
+ true
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
index b1817bc..6291b19 100644
--- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
+++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
@@ -31,6 +31,8 @@
val remindEquipmentList = MutableLiveData()
val remindEquipmentResult = MutableLiveData()
val remindDeviceCount = MutableLiveData()
+ val remindDeviceList = MutableLiveData()
+ val remindDeviceResult = MutableLiveData()
fun getEquipmentList(
equipmentNo: String,
@@ -328,4 +330,64 @@
it.cause.toString().show(BaseApplication.get())
it.printStackTrace()
})
+
+ fun getRemindDeviceList(
+ managerState: String,
+ standardName: String,
+ validEndTime: String,
+ validStartTime: String,
+ preparationEndDate: String,
+ ids: Array,
+ id: String,
+ category: String,
+ preparationStartDate: String,
+ standardNo: String,
+ standardLaboratory: String,
+ offset: Int
+ ) = launch({
+ loadState.value = LoadState.Loading
+ val response = RetrofitServiceManager.getRemindDeviceList(
+ managerState,
+ standardName,
+ validEndTime,
+ validStartTime,
+ preparationEndDate,
+ ids,
+ id,
+ category,
+ preparationStartDate,
+ standardNo,
+ standardLaboratory,
+ offset
+ )
+ val responseCode = response.separateResponseCode()
+ if (responseCode == 200) {
+ loadState.value = LoadState.Success
+ remindDeviceList.value = gson.fromJson(
+ response, object : TypeToken() {}.type
+ )
+ } else {
+ loadState.value = LoadState.Fail
+ response.toErrorMessage().show(BaseApplication.get())
+ }
+ }, {
+ loadState.value = LoadState.Fail
+ it.cause.toString().show(BaseApplication.get())
+ it.printStackTrace()
+ })
+
+ fun remindDevice(id: String) = launch({
+ val response = RetrofitServiceManager.remindDevice(id)
+ val responseCode = response.separateResponseCode()
+ if (responseCode == 200) {
+ remindDeviceResult.value = gson.fromJson(
+ response, object : TypeToken() {}.type
+ )
+ } else {
+ response.toErrorMessage().show(BaseApplication.get())
+ }
+ }, {
+ it.cause.toString().show(BaseApplication.get())
+ it.printStackTrace()
+ })
}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_overtime_device.xml b/app/src/main/res/layout/activity_overtime_device.xml
new file mode 100644
index 0000000..d1ce21a
--- /dev/null
+++ b/app/src/main/res/layout/activity_overtime_device.xml
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 9bc098c..968c535 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -76,6 +76,7 @@
+
diff --git a/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
new file mode 100644
index 0000000..f17d146
--- /dev/null
+++ b/app/src/main/java/com/casic/xz/meterage/model/RemindDeviceListModel.java
@@ -0,0 +1,463 @@
+package com.casic.xz.meterage.model;
+
+import java.util.List;
+
+public class RemindDeviceListModel {
+
+ private int code;
+ private DataModel data;
+ private String message;
+
+ public int getCode() {
+ return code;
+ }
+
+ public void setCode(int code) {
+ this.code = code;
+ }
+
+ public DataModel getData() {
+ return data;
+ }
+
+ public void setData(DataModel data) {
+ this.data = data;
+ }
+
+ public String getMessage() {
+ return message;
+ }
+
+ public void setMessage(String message) {
+ this.message = message;
+ }
+
+ public static class DataModel {
+ private List rows;
+ private int total;
+
+ public List getRows() {
+ return rows;
+ }
+
+ public void setRows(List rows) {
+ this.rows = rows;
+ }
+
+ public int getTotal() {
+ return total;
+ }
+
+ public void setTotal(int total) {
+ this.total = total;
+ }
+
+ public static class RowsModel {
+ private String assessDate;
+ private String assessmentUnit;
+ private String category;
+ private String categoryName;
+ private String constructionStandardProject;
+ private String constructionStandardUnitName;
+ private String contactInfo;
+ private String createTime;
+ private String createUser;
+ private String equipmentList;
+ private String fileList;
+ private String id;
+ private String isDel;
+ private String laboratoryOwner;
+ private String laboratoryOwnerContact;
+ private String laboratoryOwnerName;
+ private String managerState;
+ private String managerStateName;
+ private String measureMajor;
+ private String measureMajorName;
+ private String mesureRange;
+ private String organizeNo;
+ private String preparationDate;
+ private String projectNo;
+ private String remark;
+ private String remindTime;
+ private String standardHumidity;
+ private String standardLaboratory;
+ private String standardLaboratoryName;
+ private String standardLevel;
+ private String standardLevelName;
+ private String standardName;
+ private String standardNo;
+ private String standardOwner;
+ private String standardOwnerName;
+ private String standardTemperature;
+ private String totalInvestment;
+ private String transmitRange;
+ private String transmitRangeName;
+ private String uncertainty;
+ private String updateTime;
+ private String userList;
+ private String validTime;
+ private String verifyRegulationList;
+ private String version;
+
+ public String getAssessDate() {
+ return assessDate;
+ }
+
+ public void setAssessDate(String assessDate) {
+ this.assessDate = assessDate;
+ }
+
+ public String getAssessmentUnit() {
+ return assessmentUnit;
+ }
+
+ public void setAssessmentUnit(String assessmentUnit) {
+ this.assessmentUnit = assessmentUnit;
+ }
+
+ public String getCategory() {
+ return category;
+ }
+
+ public void setCategory(String category) {
+ this.category = category;
+ }
+
+ public String getCategoryName() {
+ return categoryName;
+ }
+
+ public void setCategoryName(String categoryName) {
+ this.categoryName = categoryName;
+ }
+
+ public String getConstructionStandardProject() {
+ return constructionStandardProject;
+ }
+
+ public void setConstructionStandardProject(String constructionStandardProject) {
+ this.constructionStandardProject = constructionStandardProject;
+ }
+
+ public String getConstructionStandardUnitName() {
+ return constructionStandardUnitName;
+ }
+
+ public void setConstructionStandardUnitName(String constructionStandardUnitName) {
+ this.constructionStandardUnitName = constructionStandardUnitName;
+ }
+
+ public String getContactInfo() {
+ return contactInfo;
+ }
+
+ public void setContactInfo(String contactInfo) {
+ this.contactInfo = contactInfo;
+ }
+
+ public String getCreateTime() {
+ return createTime;
+ }
+
+ public void setCreateTime(String createTime) {
+ this.createTime = createTime;
+ }
+
+ public String getCreateUser() {
+ return createUser;
+ }
+
+ public void setCreateUser(String createUser) {
+ this.createUser = createUser;
+ }
+
+ public String getEquipmentList() {
+ return equipmentList;
+ }
+
+ public void setEquipmentList(String equipmentList) {
+ this.equipmentList = equipmentList;
+ }
+
+ public String getFileList() {
+ return fileList;
+ }
+
+ public void setFileList(String fileList) {
+ this.fileList = fileList;
+ }
+
+ public String getId() {
+ return id;
+ }
+
+ public void setId(String id) {
+ this.id = id;
+ }
+
+ public String getIsDel() {
+ return isDel;
+ }
+
+ public void setIsDel(String isDel) {
+ this.isDel = isDel;
+ }
+
+ public String getLaboratoryOwner() {
+ return laboratoryOwner;
+ }
+
+ public void setLaboratoryOwner(String laboratoryOwner) {
+ this.laboratoryOwner = laboratoryOwner;
+ }
+
+ public String getLaboratoryOwnerContact() {
+ return laboratoryOwnerContact;
+ }
+
+ public void setLaboratoryOwnerContact(String laboratoryOwnerContact) {
+ this.laboratoryOwnerContact = laboratoryOwnerContact;
+ }
+
+ public String getLaboratoryOwnerName() {
+ return laboratoryOwnerName;
+ }
+
+ public void setLaboratoryOwnerName(String laboratoryOwnerName) {
+ this.laboratoryOwnerName = laboratoryOwnerName;
+ }
+
+ public String getManagerState() {
+ return managerState;
+ }
+
+ public void setManagerState(String managerState) {
+ this.managerState = managerState;
+ }
+
+ public String getManagerStateName() {
+ return managerStateName;
+ }
+
+ public void setManagerStateName(String managerStateName) {
+ this.managerStateName = managerStateName;
+ }
+
+ public String getMeasureMajor() {
+ return measureMajor;
+ }
+
+ public void setMeasureMajor(String measureMajor) {
+ this.measureMajor = measureMajor;
+ }
+
+ public String getMeasureMajorName() {
+ return measureMajorName;
+ }
+
+ public void setMeasureMajorName(String measureMajorName) {
+ this.measureMajorName = measureMajorName;
+ }
+
+ public String getMesureRange() {
+ return mesureRange;
+ }
+
+ public void setMesureRange(String mesureRange) {
+ this.mesureRange = mesureRange;
+ }
+
+ public String getOrganizeNo() {
+ return organizeNo;
+ }
+
+ public void setOrganizeNo(String organizeNo) {
+ this.organizeNo = organizeNo;
+ }
+
+ public String getPreparationDate() {
+ return preparationDate;
+ }
+
+ public void setPreparationDate(String preparationDate) {
+ this.preparationDate = preparationDate;
+ }
+
+ public String getProjectNo() {
+ return projectNo;
+ }
+
+ public void setProjectNo(String projectNo) {
+ this.projectNo = projectNo;
+ }
+
+ public String getRemark() {
+ return remark;
+ }
+
+ public void setRemark(String remark) {
+ this.remark = remark;
+ }
+
+ public String getRemindTime() {
+ return remindTime;
+ }
+
+ public void setRemindTime(String remindTime) {
+ this.remindTime = remindTime;
+ }
+
+ public String getStandardHumidity() {
+ return standardHumidity;
+ }
+
+ public void setStandardHumidity(String standardHumidity) {
+ this.standardHumidity = standardHumidity;
+ }
+
+ public String getStandardLaboratory() {
+ return standardLaboratory;
+ }
+
+ public void setStandardLaboratory(String standardLaboratory) {
+ this.standardLaboratory = standardLaboratory;
+ }
+
+ public String getStandardLaboratoryName() {
+ return standardLaboratoryName;
+ }
+
+ public void setStandardLaboratoryName(String standardLaboratoryName) {
+ this.standardLaboratoryName = standardLaboratoryName;
+ }
+
+ public String getStandardLevel() {
+ return standardLevel;
+ }
+
+ public void setStandardLevel(String standardLevel) {
+ this.standardLevel = standardLevel;
+ }
+
+ public String getStandardLevelName() {
+ return standardLevelName;
+ }
+
+ public void setStandardLevelName(String standardLevelName) {
+ this.standardLevelName = standardLevelName;
+ }
+
+ public String getStandardName() {
+ return standardName;
+ }
+
+ public void setStandardName(String standardName) {
+ this.standardName = standardName;
+ }
+
+ public String getStandardNo() {
+ return standardNo;
+ }
+
+ public void setStandardNo(String standardNo) {
+ this.standardNo = standardNo;
+ }
+
+ public String getStandardOwner() {
+ return standardOwner;
+ }
+
+ public void setStandardOwner(String standardOwner) {
+ this.standardOwner = standardOwner;
+ }
+
+ public String getStandardOwnerName() {
+ return standardOwnerName;
+ }
+
+ public void setStandardOwnerName(String standardOwnerName) {
+ this.standardOwnerName = standardOwnerName;
+ }
+
+ public String getStandardTemperature() {
+ return standardTemperature;
+ }
+
+ public void setStandardTemperature(String standardTemperature) {
+ this.standardTemperature = standardTemperature;
+ }
+
+ public String getTotalInvestment() {
+ return totalInvestment;
+ }
+
+ public void setTotalInvestment(String totalInvestment) {
+ this.totalInvestment = totalInvestment;
+ }
+
+ public String getTransmitRange() {
+ return transmitRange;
+ }
+
+ public void setTransmitRange(String transmitRange) {
+ this.transmitRange = transmitRange;
+ }
+
+ public String getTransmitRangeName() {
+ return transmitRangeName;
+ }
+
+ public void setTransmitRangeName(String transmitRangeName) {
+ this.transmitRangeName = transmitRangeName;
+ }
+
+ public String getUncertainty() {
+ return uncertainty;
+ }
+
+ public void setUncertainty(String uncertainty) {
+ this.uncertainty = uncertainty;
+ }
+
+ public String getUpdateTime() {
+ return updateTime;
+ }
+
+ public void setUpdateTime(String updateTime) {
+ this.updateTime = updateTime;
+ }
+
+ public String getUserList() {
+ return userList;
+ }
+
+ public void setUserList(String userList) {
+ this.userList = userList;
+ }
+
+ public String getValidTime() {
+ return validTime;
+ }
+
+ public void setValidTime(String validTime) {
+ this.validTime = validTime;
+ }
+
+ public String getVerifyRegulationList() {
+ return verifyRegulationList;
+ }
+
+ public void setVerifyRegulationList(String verifyRegulationList) {
+ this.verifyRegulationList = verifyRegulationList;
+ }
+
+ public String getVersion() {
+ return version;
+ }
+
+ public void setVersion(String version) {
+ this.version = version;
+ }
+ }
+ }
+}
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
index cb371ab..01627ed 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitService.kt
@@ -308,6 +308,26 @@
suspend fun getRemindDeviceCount(@Header("token") token: String): String
/**
+ * 获取到期装置列表
+ */
+ @POST("/meter/standard/remindListPage")
+ suspend fun getRemindDeviceList(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody,
+ @QueryMap limit: Map,
+ @QueryMap offset: Map
+ ): String
+
+ /**
+ * 催办装置
+ */
+ @POST("/meter/standard/remind")
+ suspend fun remindDevice(
+ @Header("token") token: String,
+ @Body requestBody: RequestBody
+ ): String
+
+ /**
* 获取检定规程列表
*/
@POST("/meter/standard/regulation/listPage")
diff --git a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
index 613e881..aabd4fe 100644
--- a/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
+++ b/app/src/main/java/com/casic/xz/meterage/utils/retrofit/RetrofitServiceManager.kt
@@ -690,6 +690,62 @@
}
/**
+ * 获取到期装置列表
+ */
+ suspend fun getRemindDeviceList(
+ managerState: String,
+ standardName: String,
+ validEndTime: String,
+ validStartTime: String,
+ preparationEndDate: String,
+ ids: Array,
+ id: String,
+ category: String,
+ preparationStartDate: String,
+ standardNo: String,
+ standardLaboratory: String,
+ offset: Int
+ ): String {
+ val param = JsonObject()
+ param.addProperty("managerState", managerState)
+ param.addProperty("standardName", standardName)
+ param.addProperty("validEndTime", validEndTime)
+ param.addProperty("validStartTime", validStartTime)
+ param.addProperty("preparationEndDate", preparationEndDate)
+ param.add("ids", gson.toJsonTree(ids, typeToken).asJsonArray)
+ param.addProperty("id", id)
+ param.addProperty("category", category)
+ param.addProperty("preparationStartDate", preparationStartDate)
+ param.addProperty("standardNo", standardNo)
+ param.addProperty("standardLaboratory", standardLaboratory)
+
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+
+ val limitMap = HashMap()
+ limitMap["limit"] = LocaleConstant.PAGE_LIMIT
+
+ val offsetMap = HashMap()
+ offsetMap["offset"] = offset
+ return api.getRemindDeviceList(
+ AuthenticationHelper.token!!, requestBody, limitMap, offsetMap
+ )
+ }
+
+ /**
+ * 催办装置
+ */
+ suspend fun remindDevice(id: String): String {
+ val param = JsonObject()
+ param.addProperty("id", id)
+ val requestBody = param.toString().toRequestBody(
+ "application/json;charset=UTF-8".toMediaType()
+ )
+ return api.remindDevice(AuthenticationHelper.token!!, requestBody)
+ }
+
+ /**
* 获取检定规程列表
*/
suspend fun getVerifyProcedureList(id: String): String {
diff --git a/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt b/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
index 35a5837..1ccb314 100644
--- a/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
+++ b/app/src/main/java/com/casic/xz/meterage/view/home/OvertimeDeviceActivity.kt
@@ -1,4 +1,242 @@
package com.casic.xz.meterage.view.home
-class OvertimeDeviceActivity {
+import android.content.Context
+import android.os.Handler
+import androidx.lifecycle.ViewModelProvider
+import androidx.recyclerview.widget.DividerItemDecoration
+import com.casic.xz.meterage.R
+import com.casic.xz.meterage.base.ApplicationBaseActivity
+import com.casic.xz.meterage.extensions.formatToYearMonthDay
+import com.casic.xz.meterage.extensions.initLayoutImmersionBar
+import com.casic.xz.meterage.extensions.isEarlierThenCurrent
+import com.casic.xz.meterage.extensions.showEmptyPage
+import com.casic.xz.meterage.model.RemindDeviceListModel
+import com.casic.xz.meterage.utils.LoadingDialogHub
+import com.casic.xz.meterage.vm.EquipmentViewModel
+import com.gyf.immersionbar.ImmersionBar
+import com.pengxh.kt.lite.adapter.NormalRecyclerAdapter
+import com.pengxh.kt.lite.adapter.ViewHolder
+import com.pengxh.kt.lite.extensions.convertColor
+import com.pengxh.kt.lite.extensions.navigatePageTo
+import com.pengxh.kt.lite.extensions.show
+import com.pengxh.kt.lite.utils.WeakReferenceHandler
+import com.pengxh.kt.lite.vm.LoadState
+import com.pengxh.kt.lite.widget.dialog.AlertControlDialog
+import kotlinx.android.synthetic.main.activity_overtime_device.*
+import kotlinx.android.synthetic.main.include_empty_view.*
+import kotlinx.android.synthetic.main.include_search_title.*
+
+class OvertimeDeviceActivity : ApplicationBaseActivity() {
+
+ private var context: Context = this@OvertimeDeviceActivity
+ private lateinit var weakReferenceHandler: WeakReferenceHandler
+ private lateinit var equipmentViewModel: EquipmentViewModel
+ private lateinit var equipmentAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
+ private var pageIndex = 1
+ private var isRefresh = false
+ private var isLoadMore = false
+ private var clickedPosition = 0
+
+ override fun initLayoutView(): Int = R.layout.activity_overtime_device
+
+ override fun setupTopBarLayout() {
+ ImmersionBar.with(this).statusBarDarkFont(true).init()
+ initLayoutImmersionBar(rootView)
+ titleView.text = "装置到期列表"
+ }
+
+ override fun initData() {
+ weakReferenceHandler = WeakReferenceHandler(callback)
+ equipmentViewModel = ViewModelProvider(this)[EquipmentViewModel::class.java]
+ equipmentViewModel.remindDeviceList.observe(this) {
+ if (it.code == 200) {
+ val dataRows = it.data?.rows!!
+ when {
+ isRefresh -> {
+ dataBeans.clear()
+ dataBeans = dataRows
+ deviceLayout.finishRefresh()
+ isRefresh = false
+ }
+ isLoadMore -> {
+ if (dataRows.size == 0) {
+ "到底了,别拉了".show(this)
+ }
+ dataBeans.addAll(dataRows)
+ deviceLayout.finishLoadMore()
+ isLoadMore = false
+ }
+ else -> {
+ dataBeans = dataRows
+ }
+ }
+ weakReferenceHandler.sendEmptyMessage(2023041802)
+ }
+ }
+
+ equipmentViewModel.remindDeviceResult.observe(this) {
+ if (it.code == 200) {
+ //催办之后列表虽然刷新,但是列表依旧存在,只有在对方处理了过期设备,列表还是刷新
+ "操作成功".show(this)
+ }
+ }
+ }
+
+ override fun observeRequestState() {
+ equipmentViewModel.loadState.observe(this) {
+ when (it) {
+ LoadState.Loading -> LoadingDialogHub.show(this, "数据加载中...")
+ else -> LoadingDialogHub.dismiss()
+ }
+ }
+ }
+
+ override fun initEvent() {
+ leftBackView.setOnClickListener { finish() }
+
+ deviceLayout.setOnRefreshListener {
+ isRefresh = true
+ //刷新之后页码重置
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+
+ deviceLayout.setOnLoadMoreListener {
+ isLoadMore = true
+ pageIndex++
+ getRemindDeviceListByPage()
+ }
+ }
+
+ override fun onResume() {
+ super.onResume()
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+
+ private fun getRemindDeviceListByPage() {
+ equipmentViewModel.getRemindDeviceList(
+ "",
+ "",
+ "",
+ "",
+ "",
+ arrayOf(),
+ "",
+ "",
+ "",
+ "",
+ "",
+ pageIndex
+ )
+ }
+
+ private val callback = Handler.Callback {
+ when (it.what) {
+ 2023041802 -> {
+ if (isRefresh || isLoadMore) {
+ equipmentAdapter.notifyDataSetChanged()
+ } else {
+ if (dataBeans.size == 0) {
+ emptyView!!.showEmptyPage("无过期装置") {
+ pageIndex = 1
+ getRemindDeviceListByPage()
+ }
+ } else {
+ emptyView!!.hide()
+ equipmentAdapter = object :
+ NormalRecyclerAdapter(
+ R.layout.item_remind_device_rv_l, dataBeans
+ ) {
+ override fun convertView(
+ viewHolder: ViewHolder,
+ position: Int,
+ item: RemindDeviceListModel.DataModel.RowsModel
+ ) {
+ val transmitRange = if (item.transmitRangeName.isNullOrBlank()) {
+ "未知"
+ } else {
+ item.transmitRangeName
+ }
+
+ val remark = if (item.remark.isNullOrBlank()) {
+ "无"
+ } else {
+ item.remark
+ }
+
+ val lab = if (item.standardLaboratoryName.isNullOrBlank()) {
+ "未知"
+ } else {
+ item.standardLaboratoryName
+ }
+
+ if (item.validTime.isEarlierThenCurrent()) {
+ viewHolder.setTextColor(
+ R.id.deviceDateView, R.color.red.convertColor(context)
+ )
+ } else {
+ viewHolder.setTextColor(
+ R.id.deviceDateView, R.color.gray.convertColor(context)
+ )
+ }
+
+ viewHolder.setText(R.id.deviceNameView, item.standardName)
+ .setText(R.id.deviceStateView, item.managerStateName)
+ .setText(R.id.transmitRangeView, transmitRange)
+ .setText(R.id.measureMajorView, item.measureMajorName)
+ .setText(R.id.deviceCodeView, "装置编号:${item.standardNo}")
+ .setText(R.id.remarkView, "备注:$remark")
+ .setText(R.id.deviceLibView, lab)
+ .setText(
+ R.id.deviceDateView,
+ "有效期至:${item.validTime.formatToYearMonthDay()}"
+ )
+ .setText(R.id.labOwnerView, "管理员:${item.laboratoryOwnerName}")
+
+ viewHolder.setOnClickListener(R.id.remindButton) {
+ //标记被点击的item位置
+ clickedPosition = position
+ AlertControlDialog.Builder()
+ .setContext(context)
+ .setTitle("提示")
+ .setMessage("确定催办该装置?")
+ .setNegativeButton("取消")
+ .setPositiveButton("确定")
+ .setOnDialogButtonClickListener(object :
+ AlertControlDialog.OnDialogButtonClickListener {
+ override fun onCancelClick() {
+
+ }
+
+ override fun onConfirmClick() {
+ if (item.id.isBlank()) {
+ "装置ID异常,无法催办".show(context)
+ return
+ }
+ equipmentViewModel.remindDevice(item.id)
+ }
+ }).build().show()
+ }
+ }
+ }
+ deviceRecyclerView.addItemDecoration(
+ DividerItemDecoration(this, DividerItemDecoration.VERTICAL)
+ )
+ deviceRecyclerView.adapter = equipmentAdapter
+ equipmentAdapter.setOnItemClickedListener(object :
+ NormalRecyclerAdapter.OnItemClickedListener {
+ override fun onItemClicked(
+ position: Int, t: RemindDeviceListModel.DataModel.RowsModel
+ ) {
+ navigatePageTo(t.id)
+ }
+ })
+ }
+ }
+ }
+ }
+ true
+ }
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
index b1817bc..6291b19 100644
--- a/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
+++ b/app/src/main/java/com/casic/xz/meterage/vm/EquipmentViewModel.kt
@@ -31,6 +31,8 @@
val remindEquipmentList = MutableLiveData()
val remindEquipmentResult = MutableLiveData()
val remindDeviceCount = MutableLiveData()
+ val remindDeviceList = MutableLiveData()
+ val remindDeviceResult = MutableLiveData()
fun getEquipmentList(
equipmentNo: String,
@@ -328,4 +330,64 @@
it.cause.toString().show(BaseApplication.get())
it.printStackTrace()
})
+
+ fun getRemindDeviceList(
+ managerState: String,
+ standardName: String,
+ validEndTime: String,
+ validStartTime: String,
+ preparationEndDate: String,
+ ids: Array,
+ id: String,
+ category: String,
+ preparationStartDate: String,
+ standardNo: String,
+ standardLaboratory: String,
+ offset: Int
+ ) = launch({
+ loadState.value = LoadState.Loading
+ val response = RetrofitServiceManager.getRemindDeviceList(
+ managerState,
+ standardName,
+ validEndTime,
+ validStartTime,
+ preparationEndDate,
+ ids,
+ id,
+ category,
+ preparationStartDate,
+ standardNo,
+ standardLaboratory,
+ offset
+ )
+ val responseCode = response.separateResponseCode()
+ if (responseCode == 200) {
+ loadState.value = LoadState.Success
+ remindDeviceList.value = gson.fromJson(
+ response, object : TypeToken() {}.type
+ )
+ } else {
+ loadState.value = LoadState.Fail
+ response.toErrorMessage().show(BaseApplication.get())
+ }
+ }, {
+ loadState.value = LoadState.Fail
+ it.cause.toString().show(BaseApplication.get())
+ it.printStackTrace()
+ })
+
+ fun remindDevice(id: String) = launch({
+ val response = RetrofitServiceManager.remindDevice(id)
+ val responseCode = response.separateResponseCode()
+ if (responseCode == 200) {
+ remindDeviceResult.value = gson.fromJson(
+ response, object : TypeToken() {}.type
+ )
+ } else {
+ response.toErrorMessage().show(BaseApplication.get())
+ }
+ }, {
+ it.cause.toString().show(BaseApplication.get())
+ it.printStackTrace()
+ })
}
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_overtime_device.xml b/app/src/main/res/layout/activity_overtime_device.xml
new file mode 100644
index 0000000..d1ce21a
--- /dev/null
+++ b/app/src/main/res/layout/activity_overtime_device.xml
@@ -0,0 +1,51 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/item_remind_device_rv_l.xml b/app/src/main/res/layout/item_remind_device_rv_l.xml
new file mode 100644
index 0000000..dd60971
--- /dev/null
+++ b/app/src/main/res/layout/item_remind_device_rv_l.xml
@@ -0,0 +1,119 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file