diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
index ce4a348..949492a 100644
--- a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
+++ b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
@@ -55,5 +55,5 @@
const val ACCOUNT = "account"
const val PASSWORD = "password"
const val DEFAULT_SERVER_CONFIG = "defaultServerConfig"
- const val SERVER_BASE_URL = "http://111.198.10.15:8896"
+ const val SERVER_BASE_URL = "http://192.168.153.213:8080"
}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
index ce4a348..949492a 100644
--- a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
+++ b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
@@ -55,5 +55,5 @@
const val ACCOUNT = "account"
const val PASSWORD = "password"
const val DEFAULT_SERVER_CONFIG = "defaultServerConfig"
- const val SERVER_BASE_URL = "http://111.198.10.15:8896"
+ const val SERVER_BASE_URL = "http://192.168.153.213:8080"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
new file mode 100644
index 0000000..8dbc4ea
--- /dev/null
+++ b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
@@ -0,0 +1,55 @@
+package com.casic.br.app.view
+
+import android.os.Bundle
+import com.casic.br.app.databinding.ActivityPreviewPdfBinding
+import com.casic.br.app.extensions.combineFilePath
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.createDownloadFileDir
+import com.pengxh.kt.lite.utils.Constant
+import com.pengxh.kt.lite.utils.FileDownloadManager
+import com.pengxh.kt.lite.utils.LoadingDialogHub
+import java.io.File
+import java.io.FileInputStream
+
+class PreviewPdfActivity : KotlinBaseActivity() {
+ override fun initEvent() {
+
+ }
+
+ override fun initOnCreate(savedInstanceState: Bundle?) {
+ val minioFileName = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ val url = minioFileName.combineFilePath()
+ LoadingDialogHub.show(this, "文档加载中,请稍后...")
+ FileDownloadManager.Builder()
+ .setDownloadFileSource(url)
+ .setFileSuffix(".pdf")
+ .setFileSaveDirectory(createDownloadFileDir())
+ .setOnFileDownloadListener(object : FileDownloadManager.OnFileDownloadListener {
+ override fun onProgressChanged(progress: Int) {
+
+ }
+
+ override fun onDownloadEnd(file: File) {
+ LoadingDialogHub.dismiss()
+ val inputStream = FileInputStream(file)
+ binding.pdfView.fromStream(inputStream).load()
+ }
+
+ override fun onFailure(throwable: Throwable) {
+
+ }
+ }).build().start()
+ }
+
+ override fun initViewBinding(): ActivityPreviewPdfBinding {
+ return ActivityPreviewPdfBinding.inflate(layoutInflater)
+ }
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
index ce4a348..949492a 100644
--- a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
+++ b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
@@ -55,5 +55,5 @@
const val ACCOUNT = "account"
const val PASSWORD = "password"
const val DEFAULT_SERVER_CONFIG = "defaultServerConfig"
- const val SERVER_BASE_URL = "http://111.198.10.15:8896"
+ const val SERVER_BASE_URL = "http://192.168.153.213:8080"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
new file mode 100644
index 0000000..8dbc4ea
--- /dev/null
+++ b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
@@ -0,0 +1,55 @@
+package com.casic.br.app.view
+
+import android.os.Bundle
+import com.casic.br.app.databinding.ActivityPreviewPdfBinding
+import com.casic.br.app.extensions.combineFilePath
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.createDownloadFileDir
+import com.pengxh.kt.lite.utils.Constant
+import com.pengxh.kt.lite.utils.FileDownloadManager
+import com.pengxh.kt.lite.utils.LoadingDialogHub
+import java.io.File
+import java.io.FileInputStream
+
+class PreviewPdfActivity : KotlinBaseActivity() {
+ override fun initEvent() {
+
+ }
+
+ override fun initOnCreate(savedInstanceState: Bundle?) {
+ val minioFileName = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ val url = minioFileName.combineFilePath()
+ LoadingDialogHub.show(this, "文档加载中,请稍后...")
+ FileDownloadManager.Builder()
+ .setDownloadFileSource(url)
+ .setFileSuffix(".pdf")
+ .setFileSaveDirectory(createDownloadFileDir())
+ .setOnFileDownloadListener(object : FileDownloadManager.OnFileDownloadListener {
+ override fun onProgressChanged(progress: Int) {
+
+ }
+
+ override fun onDownloadEnd(file: File) {
+ LoadingDialogHub.dismiss()
+ val inputStream = FileInputStream(file)
+ binding.pdfView.fromStream(inputStream).load()
+ }
+
+ override fun onFailure(throwable: Throwable) {
+
+ }
+ }).build().start()
+ }
+
+ override fun initViewBinding(): ActivityPreviewPdfBinding {
+ return ActivityPreviewPdfBinding.inflate(layoutInflater)
+ }
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
index f139d15..0471059 100644
--- a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
+++ b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
@@ -14,7 +14,7 @@
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.divider.RecyclerViewItemDivider
-import com.pengxh.kt.lite.extensions.formatToYearMonthDay
+import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
import com.pengxh.kt.lite.utils.LoadingDialogHub
@@ -24,8 +24,8 @@
private lateinit var weakReferenceHandler: WeakReferenceHandler
private lateinit var standardFileViewModel: StandardFileViewModel
- private lateinit var standardFileAdapter: NormalRecyclerAdapter
- private var dataBeans: MutableList = ArrayList()
+ private lateinit var standardFileAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
private var keywords = ""
private var page = 1
private var isRefresh = false
@@ -54,9 +54,10 @@
override fun initOnCreate(savedInstanceState: Bundle?) {
weakReferenceHandler = WeakReferenceHandler(this)
standardFileViewModel = ViewModelProvider(this)[StandardFileViewModel::class.java]
+ getStandardFileByPage()
standardFileViewModel.fileListResult.observe(this) {
if (it.code == 200) {
- val dataRows = it.data?.rows!!
+ val dataRows = it.data!!
when {
isRefresh -> {
standardFileAdapter.setRefreshData(dataRows)
@@ -90,25 +91,25 @@
when (msg.what) {
2024030401 -> {
standardFileAdapter = object :
- NormalRecyclerAdapter(
+ NormalRecyclerAdapter(
R.layout.item_standard_file, dataBeans
) {
override fun convertView(
viewHolder: ViewHolder, position: Int,
- item: StandardFileModel.DataModel.RowsModel
+ item: StandardFileModel.DataModel
) {
- viewHolder.setText(R.id.fileTitleView, item.fileName)
- .setText(R.id.dateView, item.effectiveTime.formatToYearMonthDay())
+ viewHolder.setText(R.id.fileTitleView, item.fileTitle)
+ .setText(R.id.dateView, item.effectiveDate)
}
}
binding.recyclerView.adapter = standardFileAdapter
binding.recyclerView.addItemDecoration(RecyclerViewItemDivider(1, Color.WHITE))
standardFileAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
+ NormalRecyclerAdapter.OnItemClickedListener {
override fun onItemClicked(
- position: Int, t: StandardFileModel.DataModel.RowsModel
+ position: Int, t: StandardFileModel.DataModel
) {
- //TODO 查看标准规范PDF文档
+ navigatePageTo(t.fileTitle)
}
})
}
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
index ce4a348..949492a 100644
--- a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
+++ b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
@@ -55,5 +55,5 @@
const val ACCOUNT = "account"
const val PASSWORD = "password"
const val DEFAULT_SERVER_CONFIG = "defaultServerConfig"
- const val SERVER_BASE_URL = "http://111.198.10.15:8896"
+ const val SERVER_BASE_URL = "http://192.168.153.213:8080"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
new file mode 100644
index 0000000..8dbc4ea
--- /dev/null
+++ b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
@@ -0,0 +1,55 @@
+package com.casic.br.app.view
+
+import android.os.Bundle
+import com.casic.br.app.databinding.ActivityPreviewPdfBinding
+import com.casic.br.app.extensions.combineFilePath
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.createDownloadFileDir
+import com.pengxh.kt.lite.utils.Constant
+import com.pengxh.kt.lite.utils.FileDownloadManager
+import com.pengxh.kt.lite.utils.LoadingDialogHub
+import java.io.File
+import java.io.FileInputStream
+
+class PreviewPdfActivity : KotlinBaseActivity() {
+ override fun initEvent() {
+
+ }
+
+ override fun initOnCreate(savedInstanceState: Bundle?) {
+ val minioFileName = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ val url = minioFileName.combineFilePath()
+ LoadingDialogHub.show(this, "文档加载中,请稍后...")
+ FileDownloadManager.Builder()
+ .setDownloadFileSource(url)
+ .setFileSuffix(".pdf")
+ .setFileSaveDirectory(createDownloadFileDir())
+ .setOnFileDownloadListener(object : FileDownloadManager.OnFileDownloadListener {
+ override fun onProgressChanged(progress: Int) {
+
+ }
+
+ override fun onDownloadEnd(file: File) {
+ LoadingDialogHub.dismiss()
+ val inputStream = FileInputStream(file)
+ binding.pdfView.fromStream(inputStream).load()
+ }
+
+ override fun onFailure(throwable: Throwable) {
+
+ }
+ }).build().start()
+ }
+
+ override fun initViewBinding(): ActivityPreviewPdfBinding {
+ return ActivityPreviewPdfBinding.inflate(layoutInflater)
+ }
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
index f139d15..0471059 100644
--- a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
+++ b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
@@ -14,7 +14,7 @@
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.divider.RecyclerViewItemDivider
-import com.pengxh.kt.lite.extensions.formatToYearMonthDay
+import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
import com.pengxh.kt.lite.utils.LoadingDialogHub
@@ -24,8 +24,8 @@
private lateinit var weakReferenceHandler: WeakReferenceHandler
private lateinit var standardFileViewModel: StandardFileViewModel
- private lateinit var standardFileAdapter: NormalRecyclerAdapter
- private var dataBeans: MutableList = ArrayList()
+ private lateinit var standardFileAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
private var keywords = ""
private var page = 1
private var isRefresh = false
@@ -54,9 +54,10 @@
override fun initOnCreate(savedInstanceState: Bundle?) {
weakReferenceHandler = WeakReferenceHandler(this)
standardFileViewModel = ViewModelProvider(this)[StandardFileViewModel::class.java]
+ getStandardFileByPage()
standardFileViewModel.fileListResult.observe(this) {
if (it.code == 200) {
- val dataRows = it.data?.rows!!
+ val dataRows = it.data!!
when {
isRefresh -> {
standardFileAdapter.setRefreshData(dataRows)
@@ -90,25 +91,25 @@
when (msg.what) {
2024030401 -> {
standardFileAdapter = object :
- NormalRecyclerAdapter(
+ NormalRecyclerAdapter(
R.layout.item_standard_file, dataBeans
) {
override fun convertView(
viewHolder: ViewHolder, position: Int,
- item: StandardFileModel.DataModel.RowsModel
+ item: StandardFileModel.DataModel
) {
- viewHolder.setText(R.id.fileTitleView, item.fileName)
- .setText(R.id.dateView, item.effectiveTime.formatToYearMonthDay())
+ viewHolder.setText(R.id.fileTitleView, item.fileTitle)
+ .setText(R.id.dateView, item.effectiveDate)
}
}
binding.recyclerView.adapter = standardFileAdapter
binding.recyclerView.addItemDecoration(RecyclerViewItemDivider(1, Color.WHITE))
standardFileAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
+ NormalRecyclerAdapter.OnItemClickedListener {
override fun onItemClicked(
- position: Int, t: StandardFileModel.DataModel.RowsModel
+ position: Int, t: StandardFileModel.DataModel
) {
- //TODO 查看标准规范PDF文档
+ navigatePageTo(t.fileTitle)
}
})
}
diff --git a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
index 501872e..d0eab46 100644
--- a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
+++ b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
@@ -15,6 +15,7 @@
class StandardFileViewModel : BaseViewModel() {
+ private val kTag = "StandardFileViewModel"
private val gson by lazy { Gson() }
val fileListResult = MutableLiveData()
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
index ce4a348..949492a 100644
--- a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
+++ b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
@@ -55,5 +55,5 @@
const val ACCOUNT = "account"
const val PASSWORD = "password"
const val DEFAULT_SERVER_CONFIG = "defaultServerConfig"
- const val SERVER_BASE_URL = "http://111.198.10.15:8896"
+ const val SERVER_BASE_URL = "http://192.168.153.213:8080"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
new file mode 100644
index 0000000..8dbc4ea
--- /dev/null
+++ b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
@@ -0,0 +1,55 @@
+package com.casic.br.app.view
+
+import android.os.Bundle
+import com.casic.br.app.databinding.ActivityPreviewPdfBinding
+import com.casic.br.app.extensions.combineFilePath
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.createDownloadFileDir
+import com.pengxh.kt.lite.utils.Constant
+import com.pengxh.kt.lite.utils.FileDownloadManager
+import com.pengxh.kt.lite.utils.LoadingDialogHub
+import java.io.File
+import java.io.FileInputStream
+
+class PreviewPdfActivity : KotlinBaseActivity() {
+ override fun initEvent() {
+
+ }
+
+ override fun initOnCreate(savedInstanceState: Bundle?) {
+ val minioFileName = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ val url = minioFileName.combineFilePath()
+ LoadingDialogHub.show(this, "文档加载中,请稍后...")
+ FileDownloadManager.Builder()
+ .setDownloadFileSource(url)
+ .setFileSuffix(".pdf")
+ .setFileSaveDirectory(createDownloadFileDir())
+ .setOnFileDownloadListener(object : FileDownloadManager.OnFileDownloadListener {
+ override fun onProgressChanged(progress: Int) {
+
+ }
+
+ override fun onDownloadEnd(file: File) {
+ LoadingDialogHub.dismiss()
+ val inputStream = FileInputStream(file)
+ binding.pdfView.fromStream(inputStream).load()
+ }
+
+ override fun onFailure(throwable: Throwable) {
+
+ }
+ }).build().start()
+ }
+
+ override fun initViewBinding(): ActivityPreviewPdfBinding {
+ return ActivityPreviewPdfBinding.inflate(layoutInflater)
+ }
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
index f139d15..0471059 100644
--- a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
+++ b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
@@ -14,7 +14,7 @@
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.divider.RecyclerViewItemDivider
-import com.pengxh.kt.lite.extensions.formatToYearMonthDay
+import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
import com.pengxh.kt.lite.utils.LoadingDialogHub
@@ -24,8 +24,8 @@
private lateinit var weakReferenceHandler: WeakReferenceHandler
private lateinit var standardFileViewModel: StandardFileViewModel
- private lateinit var standardFileAdapter: NormalRecyclerAdapter
- private var dataBeans: MutableList = ArrayList()
+ private lateinit var standardFileAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
private var keywords = ""
private var page = 1
private var isRefresh = false
@@ -54,9 +54,10 @@
override fun initOnCreate(savedInstanceState: Bundle?) {
weakReferenceHandler = WeakReferenceHandler(this)
standardFileViewModel = ViewModelProvider(this)[StandardFileViewModel::class.java]
+ getStandardFileByPage()
standardFileViewModel.fileListResult.observe(this) {
if (it.code == 200) {
- val dataRows = it.data?.rows!!
+ val dataRows = it.data!!
when {
isRefresh -> {
standardFileAdapter.setRefreshData(dataRows)
@@ -90,25 +91,25 @@
when (msg.what) {
2024030401 -> {
standardFileAdapter = object :
- NormalRecyclerAdapter(
+ NormalRecyclerAdapter(
R.layout.item_standard_file, dataBeans
) {
override fun convertView(
viewHolder: ViewHolder, position: Int,
- item: StandardFileModel.DataModel.RowsModel
+ item: StandardFileModel.DataModel
) {
- viewHolder.setText(R.id.fileTitleView, item.fileName)
- .setText(R.id.dateView, item.effectiveTime.formatToYearMonthDay())
+ viewHolder.setText(R.id.fileTitleView, item.fileTitle)
+ .setText(R.id.dateView, item.effectiveDate)
}
}
binding.recyclerView.adapter = standardFileAdapter
binding.recyclerView.addItemDecoration(RecyclerViewItemDivider(1, Color.WHITE))
standardFileAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
+ NormalRecyclerAdapter.OnItemClickedListener {
override fun onItemClicked(
- position: Int, t: StandardFileModel.DataModel.RowsModel
+ position: Int, t: StandardFileModel.DataModel
) {
- //TODO 查看标准规范PDF文档
+ navigatePageTo(t.fileTitle)
}
})
}
diff --git a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
index 501872e..d0eab46 100644
--- a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
+++ b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
@@ -15,6 +15,7 @@
class StandardFileViewModel : BaseViewModel() {
+ private val kTag = "StandardFileViewModel"
private val gson by lazy { Gson() }
val fileListResult = MutableLiveData()
diff --git a/app/src/main/res/layout/activity_preview_pdf.xml b/app/src/main/res/layout/activity_preview_pdf.xml
new file mode 100644
index 0000000..0bcf06c
--- /dev/null
+++ b/app/src/main/res/layout/activity_preview_pdf.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
index ce4a348..949492a 100644
--- a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
+++ b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
@@ -55,5 +55,5 @@
const val ACCOUNT = "account"
const val PASSWORD = "password"
const val DEFAULT_SERVER_CONFIG = "defaultServerConfig"
- const val SERVER_BASE_URL = "http://111.198.10.15:8896"
+ const val SERVER_BASE_URL = "http://192.168.153.213:8080"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
new file mode 100644
index 0000000..8dbc4ea
--- /dev/null
+++ b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
@@ -0,0 +1,55 @@
+package com.casic.br.app.view
+
+import android.os.Bundle
+import com.casic.br.app.databinding.ActivityPreviewPdfBinding
+import com.casic.br.app.extensions.combineFilePath
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.createDownloadFileDir
+import com.pengxh.kt.lite.utils.Constant
+import com.pengxh.kt.lite.utils.FileDownloadManager
+import com.pengxh.kt.lite.utils.LoadingDialogHub
+import java.io.File
+import java.io.FileInputStream
+
+class PreviewPdfActivity : KotlinBaseActivity() {
+ override fun initEvent() {
+
+ }
+
+ override fun initOnCreate(savedInstanceState: Bundle?) {
+ val minioFileName = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ val url = minioFileName.combineFilePath()
+ LoadingDialogHub.show(this, "文档加载中,请稍后...")
+ FileDownloadManager.Builder()
+ .setDownloadFileSource(url)
+ .setFileSuffix(".pdf")
+ .setFileSaveDirectory(createDownloadFileDir())
+ .setOnFileDownloadListener(object : FileDownloadManager.OnFileDownloadListener {
+ override fun onProgressChanged(progress: Int) {
+
+ }
+
+ override fun onDownloadEnd(file: File) {
+ LoadingDialogHub.dismiss()
+ val inputStream = FileInputStream(file)
+ binding.pdfView.fromStream(inputStream).load()
+ }
+
+ override fun onFailure(throwable: Throwable) {
+
+ }
+ }).build().start()
+ }
+
+ override fun initViewBinding(): ActivityPreviewPdfBinding {
+ return ActivityPreviewPdfBinding.inflate(layoutInflater)
+ }
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
index f139d15..0471059 100644
--- a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
+++ b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
@@ -14,7 +14,7 @@
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.divider.RecyclerViewItemDivider
-import com.pengxh.kt.lite.extensions.formatToYearMonthDay
+import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
import com.pengxh.kt.lite.utils.LoadingDialogHub
@@ -24,8 +24,8 @@
private lateinit var weakReferenceHandler: WeakReferenceHandler
private lateinit var standardFileViewModel: StandardFileViewModel
- private lateinit var standardFileAdapter: NormalRecyclerAdapter
- private var dataBeans: MutableList = ArrayList()
+ private lateinit var standardFileAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
private var keywords = ""
private var page = 1
private var isRefresh = false
@@ -54,9 +54,10 @@
override fun initOnCreate(savedInstanceState: Bundle?) {
weakReferenceHandler = WeakReferenceHandler(this)
standardFileViewModel = ViewModelProvider(this)[StandardFileViewModel::class.java]
+ getStandardFileByPage()
standardFileViewModel.fileListResult.observe(this) {
if (it.code == 200) {
- val dataRows = it.data?.rows!!
+ val dataRows = it.data!!
when {
isRefresh -> {
standardFileAdapter.setRefreshData(dataRows)
@@ -90,25 +91,25 @@
when (msg.what) {
2024030401 -> {
standardFileAdapter = object :
- NormalRecyclerAdapter(
+ NormalRecyclerAdapter(
R.layout.item_standard_file, dataBeans
) {
override fun convertView(
viewHolder: ViewHolder, position: Int,
- item: StandardFileModel.DataModel.RowsModel
+ item: StandardFileModel.DataModel
) {
- viewHolder.setText(R.id.fileTitleView, item.fileName)
- .setText(R.id.dateView, item.effectiveTime.formatToYearMonthDay())
+ viewHolder.setText(R.id.fileTitleView, item.fileTitle)
+ .setText(R.id.dateView, item.effectiveDate)
}
}
binding.recyclerView.adapter = standardFileAdapter
binding.recyclerView.addItemDecoration(RecyclerViewItemDivider(1, Color.WHITE))
standardFileAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
+ NormalRecyclerAdapter.OnItemClickedListener {
override fun onItemClicked(
- position: Int, t: StandardFileModel.DataModel.RowsModel
+ position: Int, t: StandardFileModel.DataModel
) {
- //TODO 查看标准规范PDF文档
+ navigatePageTo(t.fileTitle)
}
})
}
diff --git a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
index 501872e..d0eab46 100644
--- a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
+++ b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
@@ -15,6 +15,7 @@
class StandardFileViewModel : BaseViewModel() {
+ private val kTag = "StandardFileViewModel"
private val gson by lazy { Gson() }
val fileListResult = MutableLiveData()
diff --git a/app/src/main/res/layout/activity_preview_pdf.xml b/app/src/main/res/layout/activity_preview_pdf.xml
new file mode 100644
index 0000000..0bcf06c
--- /dev/null
+++ b/app/src/main/res/layout/activity_preview_pdf.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_standard_file.xml b/app/src/main/res/layout/activity_standard_file.xml
index fb82b28..a6906c0 100644
--- a/app/src/main/res/layout/activity_standard_file.xml
+++ b/app/src/main/res/layout/activity_standard_file.xml
@@ -42,10 +42,11 @@
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/bg_stroke_white_1"
- android:hint="关键字"
+ android:hint="文件名称"
android:paddingHorizontal="@dimen/dp_5"
android:singleLine="true"
- android:textColorHint="@color/white" />
+ android:textColorHint="@color/white"
+ android:textSize="@dimen/sp_14" />
diff --git a/app/build.gradle b/app/build.gradle
index ce9214f..2e37bd4 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -96,4 +96,6 @@
implementation "androidx.camera:camera-lifecycle:$camerax_version"
// CameraX View class
implementation "androidx.camera:camera-view:$camerax_version"
+ //PDF预览
+ implementation 'com.github.barteksc:android-pdf-viewer:2.8.2'
}
\ No newline at end of file
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d0a6c05..4015c8c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,6 +59,7 @@
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
index ce4a348..949492a 100644
--- a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
+++ b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
@@ -55,5 +55,5 @@
const val ACCOUNT = "account"
const val PASSWORD = "password"
const val DEFAULT_SERVER_CONFIG = "defaultServerConfig"
- const val SERVER_BASE_URL = "http://111.198.10.15:8896"
+ const val SERVER_BASE_URL = "http://192.168.153.213:8080"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
new file mode 100644
index 0000000..8dbc4ea
--- /dev/null
+++ b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
@@ -0,0 +1,55 @@
+package com.casic.br.app.view
+
+import android.os.Bundle
+import com.casic.br.app.databinding.ActivityPreviewPdfBinding
+import com.casic.br.app.extensions.combineFilePath
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.createDownloadFileDir
+import com.pengxh.kt.lite.utils.Constant
+import com.pengxh.kt.lite.utils.FileDownloadManager
+import com.pengxh.kt.lite.utils.LoadingDialogHub
+import java.io.File
+import java.io.FileInputStream
+
+class PreviewPdfActivity : KotlinBaseActivity() {
+ override fun initEvent() {
+
+ }
+
+ override fun initOnCreate(savedInstanceState: Bundle?) {
+ val minioFileName = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ val url = minioFileName.combineFilePath()
+ LoadingDialogHub.show(this, "文档加载中,请稍后...")
+ FileDownloadManager.Builder()
+ .setDownloadFileSource(url)
+ .setFileSuffix(".pdf")
+ .setFileSaveDirectory(createDownloadFileDir())
+ .setOnFileDownloadListener(object : FileDownloadManager.OnFileDownloadListener {
+ override fun onProgressChanged(progress: Int) {
+
+ }
+
+ override fun onDownloadEnd(file: File) {
+ LoadingDialogHub.dismiss()
+ val inputStream = FileInputStream(file)
+ binding.pdfView.fromStream(inputStream).load()
+ }
+
+ override fun onFailure(throwable: Throwable) {
+
+ }
+ }).build().start()
+ }
+
+ override fun initViewBinding(): ActivityPreviewPdfBinding {
+ return ActivityPreviewPdfBinding.inflate(layoutInflater)
+ }
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
index f139d15..0471059 100644
--- a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
+++ b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
@@ -14,7 +14,7 @@
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.divider.RecyclerViewItemDivider
-import com.pengxh.kt.lite.extensions.formatToYearMonthDay
+import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
import com.pengxh.kt.lite.utils.LoadingDialogHub
@@ -24,8 +24,8 @@
private lateinit var weakReferenceHandler: WeakReferenceHandler
private lateinit var standardFileViewModel: StandardFileViewModel
- private lateinit var standardFileAdapter: NormalRecyclerAdapter
- private var dataBeans: MutableList = ArrayList()
+ private lateinit var standardFileAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
private var keywords = ""
private var page = 1
private var isRefresh = false
@@ -54,9 +54,10 @@
override fun initOnCreate(savedInstanceState: Bundle?) {
weakReferenceHandler = WeakReferenceHandler(this)
standardFileViewModel = ViewModelProvider(this)[StandardFileViewModel::class.java]
+ getStandardFileByPage()
standardFileViewModel.fileListResult.observe(this) {
if (it.code == 200) {
- val dataRows = it.data?.rows!!
+ val dataRows = it.data!!
when {
isRefresh -> {
standardFileAdapter.setRefreshData(dataRows)
@@ -90,25 +91,25 @@
when (msg.what) {
2024030401 -> {
standardFileAdapter = object :
- NormalRecyclerAdapter(
+ NormalRecyclerAdapter(
R.layout.item_standard_file, dataBeans
) {
override fun convertView(
viewHolder: ViewHolder, position: Int,
- item: StandardFileModel.DataModel.RowsModel
+ item: StandardFileModel.DataModel
) {
- viewHolder.setText(R.id.fileTitleView, item.fileName)
- .setText(R.id.dateView, item.effectiveTime.formatToYearMonthDay())
+ viewHolder.setText(R.id.fileTitleView, item.fileTitle)
+ .setText(R.id.dateView, item.effectiveDate)
}
}
binding.recyclerView.adapter = standardFileAdapter
binding.recyclerView.addItemDecoration(RecyclerViewItemDivider(1, Color.WHITE))
standardFileAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
+ NormalRecyclerAdapter.OnItemClickedListener {
override fun onItemClicked(
- position: Int, t: StandardFileModel.DataModel.RowsModel
+ position: Int, t: StandardFileModel.DataModel
) {
- //TODO 查看标准规范PDF文档
+ navigatePageTo(t.fileTitle)
}
})
}
diff --git a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
index 501872e..d0eab46 100644
--- a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
+++ b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
@@ -15,6 +15,7 @@
class StandardFileViewModel : BaseViewModel() {
+ private val kTag = "StandardFileViewModel"
private val gson by lazy { Gson() }
val fileListResult = MutableLiveData()
diff --git a/app/src/main/res/layout/activity_preview_pdf.xml b/app/src/main/res/layout/activity_preview_pdf.xml
new file mode 100644
index 0000000..0bcf06c
--- /dev/null
+++ b/app/src/main/res/layout/activity_preview_pdf.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_standard_file.xml b/app/src/main/res/layout/activity_standard_file.xml
index fb82b28..a6906c0 100644
--- a/app/src/main/res/layout/activity_standard_file.xml
+++ b/app/src/main/res/layout/activity_standard_file.xml
@@ -42,10 +42,11 @@
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/bg_stroke_white_1"
- android:hint="关键字"
+ android:hint="文件名称"
android:paddingHorizontal="@dimen/dp_5"
android:singleLine="true"
- android:textColorHint="@color/white" />
+ android:textColorHint="@color/white"
+ android:textSize="@dimen/sp_14" />
diff --git a/app/src/main/res/layout/item_standard_file.xml b/app/src/main/res/layout/item_standard_file.xml
index a7beb6c..f6b4f11 100644
--- a/app/src/main/res/layout/item_standard_file.xml
+++ b/app/src/main/res/layout/item_standard_file.xml
@@ -1,10 +1,9 @@
+ android:paddingVertical="@dimen/dp_10">
+
diff --git a/app/src/main/java/com/casic/br/app/extensions/String.kt b/app/src/main/java/com/casic/br/app/extensions/String.kt
index 610a77d..e2a8e13 100644
--- a/app/src/main/java/com/casic/br/app/extensions/String.kt
+++ b/app/src/main/java/com/casic/br/app/extensions/String.kt
@@ -1,6 +1,8 @@
package com.casic.br.app.extensions
+import com.casic.br.app.utils.LocaleConstant
import com.google.gson.JsonParser
+import com.pengxh.kt.lite.utils.SaveKeyValues
/**
* String扩展方法
@@ -21,4 +23,13 @@
val element = JsonParser.parseString(this)
val jsonObject = element.asJsonObject
return jsonObject.get("message").asString
+}
+
+//拼接附件地址
+fun String.combineFilePath(): String {
+ if (this.isEmpty()) return this
+ val defaultValue = SaveKeyValues.getValue(
+ LocaleConstant.DEFAULT_SERVER_CONFIG, LocaleConstant.SERVER_BASE_URL
+ ) as String
+ return "$defaultValue/static/${this.replace("\\", "/")}"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
index c5d47c3..999b8ad 100644
--- a/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
+++ b/app/src/main/java/com/casic/br/app/model/StandardFileModel.java
@@ -3,26 +3,28 @@
import java.util.List;
public class StandardFileModel {
- private int code;
- private DataModel data;
- private String message;
- public int getCode() {
+ private Boolean success;
+ private Integer code;
+ private String message;
+ private List data;
+
+ public Boolean getSuccess() {
+ return success;
+ }
+
+ public void setSuccess(Boolean success) {
+ this.success = success;
+ }
+
+ public Integer getCode() {
return code;
}
- public void setCode(int code) {
+ public void setCode(Integer code) {
this.code = code;
}
- public DataModel getData() {
- return data;
- }
-
- public void setData(DataModel data) {
- this.data = data;
- }
-
public String getMessage() {
return message;
}
@@ -31,162 +33,50 @@
this.message = message;
}
+ public List getData() {
+ return data;
+ }
+
+ public void setData(List data) {
+ this.data = data;
+ }
+
public static class DataModel {
- private List rows;
- private int total;
+ private Integer id;
+ private Object fileCover;
+ private String fileTitle;
+ private String effectiveDate;
- public List getRows() {
- return rows;
+ public Integer getId() {
+ return id;
}
- public void setRows(List rows) {
- this.rows = rows;
+ public void setId(Integer id) {
+ this.id = id;
}
- public int getTotal() {
- return total;
+ public Object getFileCover() {
+ return fileCover;
}
- public void setTotal(int total) {
- this.total = total;
+ public void setFileCover(Object fileCover) {
+ this.fileCover = fileCover;
}
- public static class RowsModel {
- private String createUser;
- private String effectiveStatus;
- private String effectiveStatusName;
- private String effectiveTime;
- private String fileCode;
- private String fileName;
- private String fileNo;
- private String fileType;
- private String fileTypeName;
- private String id;
- private String minioFileName;
- private String processId;
- private String publishTime;
- private String publisher;
- private String remark;
+ public String getFileTitle() {
+ return fileTitle;
+ }
- public String getCreateUser() {
- return createUser;
- }
+ public void setFileTitle(String fileTitle) {
+ this.fileTitle = fileTitle;
+ }
- public void setCreateUser(String createUser) {
- this.createUser = createUser;
- }
+ public String getEffectiveDate() {
+ return effectiveDate;
+ }
- public String getEffectiveStatus() {
- return effectiveStatus;
- }
-
- public void setEffectiveStatus(String effectiveStatus) {
- this.effectiveStatus = effectiveStatus;
- }
-
- public String getEffectiveStatusName() {
- return effectiveStatusName;
- }
-
- public void setEffectiveStatusName(String effectiveStatusName) {
- this.effectiveStatusName = effectiveStatusName;
- }
-
- public String getEffectiveTime() {
- return effectiveTime;
- }
-
- public void setEffectiveTime(String effectiveTime) {
- this.effectiveTime = effectiveTime;
- }
-
- public String getFileCode() {
- return fileCode;
- }
-
- public void setFileCode(String fileCode) {
- this.fileCode = fileCode;
- }
-
- public String getFileName() {
- return fileName;
- }
-
- public void setFileName(String fileName) {
- this.fileName = fileName;
- }
-
- public String getFileNo() {
- return fileNo;
- }
-
- public void setFileNo(String fileNo) {
- this.fileNo = fileNo;
- }
-
- public String getFileType() {
- return fileType;
- }
-
- public void setFileType(String fileType) {
- this.fileType = fileType;
- }
-
- public String getFileTypeName() {
- return fileTypeName;
- }
-
- public void setFileTypeName(String fileTypeName) {
- this.fileTypeName = fileTypeName;
- }
-
- public String getId() {
- return id;
- }
-
- public void setId(String id) {
- this.id = id;
- }
-
- public String getMinioFileName() {
- return minioFileName;
- }
-
- public void setMinioFileName(String minioFileName) {
- this.minioFileName = minioFileName;
- }
-
- public String getProcessId() {
- return processId;
- }
-
- public void setProcessId(String processId) {
- this.processId = processId;
- }
-
- public String getPublishTime() {
- return publishTime;
- }
-
- public void setPublishTime(String publishTime) {
- this.publishTime = publishTime;
- }
-
- public String getPublisher() {
- return publisher;
- }
-
- public void setPublisher(String publisher) {
- this.publisher = publisher;
- }
-
- public String getRemark() {
- return remark;
- }
-
- public void setRemark(String remark) {
- this.remark = remark;
- }
+ public void setEffectiveDate(String effectiveDate) {
+ this.effectiveDate = effectiveDate;
}
}
}
diff --git a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
index 075ca63..36056fe 100644
--- a/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
+++ b/app/src/main/java/com/casic/br/app/retrofit/RetrofitService.kt
@@ -22,7 +22,7 @@
/**
* 获取标准规范文件列表
*/
- @POST("/meter/file/listPage")
+ @POST("/standardFile/listPage")
suspend fun getStandardFileByPage(
@Header("token") token: String,
@Body requestBody: RequestBody,
diff --git a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
index ce4a348..949492a 100644
--- a/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
+++ b/app/src/main/java/com/casic/br/app/utils/LocaleConstant.kt
@@ -55,5 +55,5 @@
const val ACCOUNT = "account"
const val PASSWORD = "password"
const val DEFAULT_SERVER_CONFIG = "defaultServerConfig"
- const val SERVER_BASE_URL = "http://111.198.10.15:8896"
+ const val SERVER_BASE_URL = "http://192.168.153.213:8080"
}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
new file mode 100644
index 0000000..8dbc4ea
--- /dev/null
+++ b/app/src/main/java/com/casic/br/app/view/PreviewPdfActivity.kt
@@ -0,0 +1,55 @@
+package com.casic.br.app.view
+
+import android.os.Bundle
+import com.casic.br.app.databinding.ActivityPreviewPdfBinding
+import com.casic.br.app.extensions.combineFilePath
+import com.pengxh.kt.lite.base.KotlinBaseActivity
+import com.pengxh.kt.lite.extensions.createDownloadFileDir
+import com.pengxh.kt.lite.utils.Constant
+import com.pengxh.kt.lite.utils.FileDownloadManager
+import com.pengxh.kt.lite.utils.LoadingDialogHub
+import java.io.File
+import java.io.FileInputStream
+
+class PreviewPdfActivity : KotlinBaseActivity() {
+ override fun initEvent() {
+
+ }
+
+ override fun initOnCreate(savedInstanceState: Bundle?) {
+ val minioFileName = intent.getStringExtra(Constant.INTENT_PARAM)!!
+ val url = minioFileName.combineFilePath()
+ LoadingDialogHub.show(this, "文档加载中,请稍后...")
+ FileDownloadManager.Builder()
+ .setDownloadFileSource(url)
+ .setFileSuffix(".pdf")
+ .setFileSaveDirectory(createDownloadFileDir())
+ .setOnFileDownloadListener(object : FileDownloadManager.OnFileDownloadListener {
+ override fun onProgressChanged(progress: Int) {
+
+ }
+
+ override fun onDownloadEnd(file: File) {
+ LoadingDialogHub.dismiss()
+ val inputStream = FileInputStream(file)
+ binding.pdfView.fromStream(inputStream).load()
+ }
+
+ override fun onFailure(throwable: Throwable) {
+
+ }
+ }).build().start()
+ }
+
+ override fun initViewBinding(): ActivityPreviewPdfBinding {
+ return ActivityPreviewPdfBinding.inflate(layoutInflater)
+ }
+
+ override fun observeRequestState() {
+
+ }
+
+ override fun setupTopBarLayout() {
+
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
index f139d15..0471059 100644
--- a/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
+++ b/app/src/main/java/com/casic/br/app/view/StandardFileActivity.kt
@@ -14,7 +14,7 @@
import com.pengxh.kt.lite.adapter.ViewHolder
import com.pengxh.kt.lite.base.KotlinBaseActivity
import com.pengxh.kt.lite.divider.RecyclerViewItemDivider
-import com.pengxh.kt.lite.extensions.formatToYearMonthDay
+import com.pengxh.kt.lite.extensions.navigatePageTo
import com.pengxh.kt.lite.extensions.show
import com.pengxh.kt.lite.utils.LoadState
import com.pengxh.kt.lite.utils.LoadingDialogHub
@@ -24,8 +24,8 @@
private lateinit var weakReferenceHandler: WeakReferenceHandler
private lateinit var standardFileViewModel: StandardFileViewModel
- private lateinit var standardFileAdapter: NormalRecyclerAdapter
- private var dataBeans: MutableList = ArrayList()
+ private lateinit var standardFileAdapter: NormalRecyclerAdapter
+ private var dataBeans: MutableList = ArrayList()
private var keywords = ""
private var page = 1
private var isRefresh = false
@@ -54,9 +54,10 @@
override fun initOnCreate(savedInstanceState: Bundle?) {
weakReferenceHandler = WeakReferenceHandler(this)
standardFileViewModel = ViewModelProvider(this)[StandardFileViewModel::class.java]
+ getStandardFileByPage()
standardFileViewModel.fileListResult.observe(this) {
if (it.code == 200) {
- val dataRows = it.data?.rows!!
+ val dataRows = it.data!!
when {
isRefresh -> {
standardFileAdapter.setRefreshData(dataRows)
@@ -90,25 +91,25 @@
when (msg.what) {
2024030401 -> {
standardFileAdapter = object :
- NormalRecyclerAdapter(
+ NormalRecyclerAdapter(
R.layout.item_standard_file, dataBeans
) {
override fun convertView(
viewHolder: ViewHolder, position: Int,
- item: StandardFileModel.DataModel.RowsModel
+ item: StandardFileModel.DataModel
) {
- viewHolder.setText(R.id.fileTitleView, item.fileName)
- .setText(R.id.dateView, item.effectiveTime.formatToYearMonthDay())
+ viewHolder.setText(R.id.fileTitleView, item.fileTitle)
+ .setText(R.id.dateView, item.effectiveDate)
}
}
binding.recyclerView.adapter = standardFileAdapter
binding.recyclerView.addItemDecoration(RecyclerViewItemDivider(1, Color.WHITE))
standardFileAdapter.setOnItemClickedListener(object :
- NormalRecyclerAdapter.OnItemClickedListener {
+ NormalRecyclerAdapter.OnItemClickedListener {
override fun onItemClicked(
- position: Int, t: StandardFileModel.DataModel.RowsModel
+ position: Int, t: StandardFileModel.DataModel
) {
- //TODO 查看标准规范PDF文档
+ navigatePageTo(t.fileTitle)
}
})
}
diff --git a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
index 501872e..d0eab46 100644
--- a/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
+++ b/app/src/main/java/com/casic/br/app/vm/StandardFileViewModel.kt
@@ -15,6 +15,7 @@
class StandardFileViewModel : BaseViewModel() {
+ private val kTag = "StandardFileViewModel"
private val gson by lazy { Gson() }
val fileListResult = MutableLiveData()
diff --git a/app/src/main/res/layout/activity_preview_pdf.xml b/app/src/main/res/layout/activity_preview_pdf.xml
new file mode 100644
index 0000000..0bcf06c
--- /dev/null
+++ b/app/src/main/res/layout/activity_preview_pdf.xml
@@ -0,0 +1,34 @@
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_standard_file.xml b/app/src/main/res/layout/activity_standard_file.xml
index fb82b28..a6906c0 100644
--- a/app/src/main/res/layout/activity_standard_file.xml
+++ b/app/src/main/res/layout/activity_standard_file.xml
@@ -42,10 +42,11 @@
android:layout_height="match_parent"
android:layout_weight="1"
android:background="@drawable/bg_stroke_white_1"
- android:hint="关键字"
+ android:hint="文件名称"
android:paddingHorizontal="@dimen/dp_5"
android:singleLine="true"
- android:textColorHint="@color/white" />
+ android:textColorHint="@color/white"
+ android:textSize="@dimen/sp_14" />
diff --git a/app/src/main/res/layout/item_standard_file.xml b/app/src/main/res/layout/item_standard_file.xml
index a7beb6c..f6b4f11 100644
--- a/app/src/main/res/layout/item_standard_file.xml
+++ b/app/src/main/res/layout/item_standard_file.xml
@@ -1,10 +1,9 @@
+ android:paddingVertical="@dimen/dp_10">
70dp
75dp
80dp
+ 85dp
100dp
125dp
150dp