diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/db2.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/db2.sql
new file mode 100644
index 00000000..dcb18e50
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/db2.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT NOT NULL,PROGRESS NUMERIC(6) NOT NULL,ERRINFO NVARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME NVARCHAR(36) NOT NULL,CREATETIME TIMESTAMP NOT NULL,UPDATETIME TIMESTAMP NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/dm.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/dm.sql
new file mode 100644
index 00000000..017d5a5f
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/dm.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS NUMBER NOT NULL,PROGRESS NUMBER NOT NULL,ERRINFO VARCHAR2(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR2(36) NOT NULL,CREATETIME DATETIME NOT NULL,UPDATETIME DATETIME NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/informix.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/informix.sql
new file mode 100644
index 00000000..21d244d2
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/informix.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT NOT NULL,PROGRESS INT NOT NULL,ERRINFO VARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR(36) NOT NULL,CREATETIME DATETIME YEAR TO SECOND NOT NULL,UPDATETIME DATETIME YEAR TO SECOND NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/mysql.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/mysql.sql
new file mode 100644
index 00000000..7d817695
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/mysql.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT(1) NOT NULL,PROGRESS INT NOT NULL,ERRINFO VARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR(36) NOT NULL,CREATETIME DATETIME NOT NULL,UPDATETIME DATETIME NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
\ No newline at end of file
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/oracle.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/oracle.sql
new file mode 100644
index 00000000..025641ea
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/oracle.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS NUMBER(1) NOT NULL,PROGRESS NUMBER(10) NOT NULL,ERRINFO VARCHAR2(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR2(36) NOT NULL,CREATETIME TIMESTAMP NOT NULL,UPDATETIME TIMESTAMP NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/oscar.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/oscar.sql
new file mode 100644
index 00000000..135f75e1
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/oscar.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS DECIMAL(1) NOT NULL,PROGRESS DECIMAL(12) NOT NULL,ERRINFO VARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR(36) NOT NULL,CREATETIME DATE NOT NULL,UPDATETIME DATE NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
\ No newline at end of file
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/polardb.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/polardb.sql
new file mode 100644
index 00000000..c605a945
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/polardb.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT(1) NOT NULL,PROGRESS NUMERIC(12) NOT NULL,ERRINFO VARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR(36) NOT NULL,CREATETIME DATETIME NOT NULL,UPDATETIME DATETIME NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
\ No newline at end of file
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/postgresql.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/postgresql.sql
new file mode 100644
index 00000000..fbfd5b8b
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/postgresql.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT NOT NULL,PROGRESS INT NOT NULL,ERRINFO VARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR(36) NOT NULL,CREATETIME TIMESTAMP NOT NULL,UPDATETIME TIMESTAMP NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/sqlserver.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/sqlserver.sql
new file mode 100644
index 00000000..d874d471
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/sqlserver.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT NOT NULL,PROGRESS INT NOT NULL,ERRINFO NVARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME NVARCHAR(36) NOT NULL,CREATETIME DATETIME NOT NULL,UPDATETIME DATETIME NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/sybase.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/sybase.sql
new file mode 100644
index 00000000..254ad2f7
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/sybase.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT NOT NULL,PROGRESS NUMERIC(12) NOT NULL,ERRINFO NVARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME NVARCHAR(36) NOT NULL,CREATETIME DATETIME NOT NULL,UPDATETIME DATETIME NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
\ No newline at end of file
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/tdsql.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/tdsql.sql
new file mode 100644
index 00000000..c605a945
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/tdsql.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT(1) NOT NULL,PROGRESS NUMERIC(12) NOT NULL,ERRINFO VARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR(36) NOT NULL,CREATETIME DATETIME NOT NULL,UPDATETIME DATETIME NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
\ No newline at end of file
diff --git a/com.actionsoft.apps.coe.pal.processlist/db/1.1/tdsql_shard_id.sql b/com.actionsoft.apps.coe.pal.processlist/db/1.1/tdsql_shard_id.sql
new file mode 100644
index 00000000..c605a945
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/db/1.1/tdsql_shard_id.sql
@@ -0,0 +1 @@
+CREATE TABLE APP_ACT_COE_PAL_PRL_EXPORT (ID CHAR(36) NOT NULL,WSID CHAR(36) NOT NULL,STATUS SMALLINT(1) NOT NULL,PROGRESS NUMERIC(12) NOT NULL,ERRINFO VARCHAR(36) DEFAULT NULL,USERID CHAR(36) NOT NULL,FILENAME VARCHAR(36) NOT NULL,CREATETIME DATETIME NOT NULL,UPDATETIME DATETIME NOT NULL,CONSTRAINT APP_ACT_COE_PAL_PRL_EXPORT_PK PRIMARY KEY (ID));
\ No newline at end of file
diff --git a/com.actionsoft.apps.coe.pal.processlist/lib/com.actionsoft.apps.coe.pal.processlist.jar b/com.actionsoft.apps.coe.pal.processlist/lib/com.actionsoft.apps.coe.pal.processlist.jar
index cf365f08..b19e10ab 100644
Binary files a/com.actionsoft.apps.coe.pal.processlist/lib/com.actionsoft.apps.coe.pal.processlist.jar and b/com.actionsoft.apps.coe.pal.processlist/lib/com.actionsoft.apps.coe.pal.processlist.jar differ
diff --git a/com.actionsoft.apps.coe.pal.processlist/manifest.xml b/com.actionsoft.apps.coe.pal.processlist/manifest.xml
index aacc29bf..145d7de7 100644
--- a/com.actionsoft.apps.coe.pal.processlist/manifest.xml
+++ b/com.actionsoft.apps.coe.pal.processlist/manifest.xml
@@ -21,7 +21,7 @@
2016-06-02 16:18:25
com.actionsoft.apps.coe.pal.processlist.plugin.Plugins
-
+ com.actionsoft.apps.coe.pal.processlist.plugin.StartListener
@@ -33,9 +33,9 @@
结构化描述流程模型
-
-
-
-
+
+
+
+
{"f391f672-100b-4d4b-89d1-ba1b4b3d0132":{"wsId":"f391f672-100b-4d4b-89d1-ba1b4b3d0132","createUser":"admin","customColumns":[{"columnType":"default","showOverflow":false,"prop":"no_serialNumber","dataType":"default","name":"序号","width":"78","minWidth":"78","id":"no_serialNumber","label":"序号"},{"columnType":"default","showOverflow":false,"prop":"no_default","dataType":"default","name":"编号","width":"100","minWidth":"100","id":"no_default","label":"编号"},{"columnType":"default","showOverflow":false,"prop":"name","dataType":"name","name":"流程名称","width":"250","minWidth":"250","id":"name","label":"流程名称"},{"columnType":"default","showOverflow":false,"prop":"type","dataType":"selectType","name":"类型","width":"150","minWidth":"150","id":"type","label":"类型","filters":[{"text":"文件夹","value":"default"},{"text":"过程链图","value":"process.epc"},{"text":"流程图","value":"process.flowchart"},{"text":"BPMN图","value":"process.bpmn2"},{"text":"价值链图","value":"process.evc"}]},{"columnType":"default","showOverflow":false,"prop":"status","dataType":"selectStatus","name":"状态","width":"150","minWidth":"150","id":"status","label":"状态","filters":[{"text":"已发布","value":"publish"},{"text":"已停用","value":"stop"},{"text":"设计中","value":"designer"}]},{"columnType":"extendAttr","showOverflow":false,"prop":"bpm_department","dataType":"default","name":"责任部门","width":"150","minWidth":"150","id":"bpm_department","label":"责任部门"},{"columnType":"extendAttr","showOverflow":false,"prop":"bpm_person","dataType":"default","name":"责任人","width":"150","minWidth":"150","id":"bpm_person","label":"责任人"}],"createDate":"2021-07-05 17:03:58"}}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/CoEProcessListController.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/CoEProcessListController.java
index c036eb67..73896f6a 100644
--- a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/CoEProcessListController.java
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/CoEProcessListController.java
@@ -83,4 +83,29 @@ public class CoEProcessListController {
return web.processListExportExcel(wsId, teamId, searchInput, levelValue, tableFilter, customFilter);
}
+ /**
+ * 获取流程清单导出记录
+ * @param uc
+ * @param wsId
+ * @return
+ */
+ @Mapping("com.actionsoft.apps.coe.pal.processlist_export_log_data")
+ public String getProcessListExportLog(UserContext uc, String wsId){
+ PALRepositoryListWeb web = new PALRepositoryListWeb(uc);
+ return web.getProcessListExportLog(wsId);
+ }
+
+ /**
+ * 获取执行中的状态数据
+ * @param uc
+ * @param wsId
+ * @param exportIds
+ * @return
+ */
+ @Mapping("com.actionsoft.apps.coe.pal.processlist_export_executing_status_get")
+ public String handleExportExecutingStatusInfo(UserContext uc, String wsId, String exportIds){
+ PALRepositoryListWeb web = new PALRepositoryListWeb(uc);
+ return web.getExportExecutingStatusList(wsId, exportIds);
+ }
+
}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/cache/ExportLogDataCache.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/cache/ExportLogDataCache.java
new file mode 100644
index 00000000..1591140e
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/cache/ExportLogDataCache.java
@@ -0,0 +1,41 @@
+package com.actionsoft.apps.coe.pal.processlist.cache;
+
+import com.actionsoft.apps.coe.pal.processlist.constant.ProcessListConstant;
+import com.actionsoft.apps.coe.pal.processlist.model.ProcessListExportModel;
+import com.actionsoft.apps.coe.pal.processlist.util.ExportAPIManager;
+import com.actionsoft.apps.resource.plugin.profile.CachePluginProfile;
+import com.actionsoft.bpms.commons.cache.Cache;
+import com.actionsoft.bpms.commons.cache.CacheManager;
+import com.actionsoft.bpms.util.ConsolePrinter;
+import com.actionsoft.sdk.local.SDK;
+
+import java.util.Iterator;
+import java.util.List;
+
+/**
+ * @author oYang
+ * @Description 流程清单导出记录数据缓存
+ * @createTime 2023年11月08日 16:51:00
+ */
+public class ExportLogDataCache extends Cache {
+
+ public ExportLogDataCache(CachePluginProfile configuration) {
+ super(configuration);
+ registeIndex(ExportLogDataCacheIndex1.class, new ExportLogDataCacheIndex1()); // wsId_userId
+ }
+
+ public static ExportLogDataCache getCache(){
+ return CacheManager.getCache(ExportLogDataCache.class);
+ }
+
+ @Override
+ protected void load() {
+ List exportModelList = ExportAPIManager.getInstance().loadAll();
+ exportModelList.forEach(exportModel -> getCache().put(exportModel.getId(), exportModel));
+ ConsolePrinter.info("[" + SDK.getAppAPI().getAppContext(ProcessListConstant.PROCESSLIST).getNameI18N() + "]Cache加载流程清单导出记录对象 [" + getCache().size() + "个]");
+ }
+
+ public static Iterator getByWsIdAndUserId(String wsId, String userId){
+ return getCache().getByIndex(ExportLogDataCacheIndex1.class, wsId + "_" + userId);
+ }
+}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/cache/ExportLogDataCacheIndex1.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/cache/ExportLogDataCacheIndex1.java
new file mode 100644
index 00000000..60c5617d
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/cache/ExportLogDataCacheIndex1.java
@@ -0,0 +1,16 @@
+package com.actionsoft.apps.coe.pal.processlist.cache;
+
+import com.actionsoft.apps.coe.pal.processlist.model.ProcessListExportModel;
+import com.actionsoft.bpms.commons.cache.ListValueIndex;
+
+/**
+ * @author oYang
+ * @Description TODO
+ * @createTime 2023年11月08日 17:18:00
+ */
+public class ExportLogDataCacheIndex1 extends ListValueIndex {
+ @Override
+ public String key(ProcessListExportModel exportModel) {
+ return exportModel.getWsId() + "_" + exportModel.getUserId();
+ }
+}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/constant/ProcessListConstant.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/constant/ProcessListConstant.java
index 8963d6a8..0f49a174 100644
--- a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/constant/ProcessListConstant.java
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/constant/ProcessListConstant.java
@@ -31,4 +31,19 @@ public interface ProcessListConstant {
* 标题
*/
public static final String PROCESSLIST_PAGE_TITLE =AppsAPIManager.getInstance().getAppContext(PROCESSLIST).getName();
+
+ /**
+ * 导出状态--执行中
+ */
+ public static final Integer EXPORT_EXECUTING_STATUS_CODE = 0;
+ /**
+ * 导出状态--已完成
+ */
+ public static final Integer EXPORT_COMPLATE_STATUS_CODE = 1;
+ /**
+ * 导出状态--错误
+ */
+ public static final Integer EXPORT_ERR_STATUS_CODE = 2;
+
+ public static final String EXPORT_DC_REPOSITORY_NAME = "process";
}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/constant/db/ProcessListExportDbConst.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/constant/db/ProcessListExportDbConst.java
new file mode 100644
index 00000000..c22c51c3
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/constant/db/ProcessListExportDbConst.java
@@ -0,0 +1,23 @@
+package com.actionsoft.apps.coe.pal.processlist.constant.db;
+
+/**
+ * @author oYang
+ * @Description TODO
+ * @createTime 2023年11月08日 11:17:00
+ */
+public interface ProcessListExportDbConst {
+
+ String TABLE_NAME = "APP_ACT_COE_PAL_PRL_EXPORT";
+
+ String ID = "ID";
+ String WSID = "WSID";
+ String STATUE = "STATUS";
+ String PROGRESS = "PROGRESS";
+ String ERRINFO = "ERRINFO";
+ String USERID = "USERID";
+ String FILENAME = "FILENAME";
+ String CREATETIME = "CREATETIME";
+ String UPDATETIME = "UPDATETIME";
+
+ String ALL_FIELD_JOIN = "ID,WSID,STATUS,PROGRESS,ERRINFO,USERID,FILENAME,CREATETIME,UPDATETIME";
+}
diff --git a/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/dao/ProcessListExportDao.java b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/dao/ProcessListExportDao.java
new file mode 100644
index 00000000..c96f47ab
--- /dev/null
+++ b/com.actionsoft.apps.coe.pal.processlist/src/com/actionsoft/apps/coe/pal/processlist/dao/ProcessListExportDao.java
@@ -0,0 +1,145 @@
+package com.actionsoft.apps.coe.pal.processlist.dao;
+
+import com.actionsoft.apps.coe.pal.processlist.cache.ExportLogDataCache;
+import com.actionsoft.apps.coe.pal.processlist.constant.ProcessListConstant;
+import com.actionsoft.apps.coe.pal.processlist.constant.db.ProcessListExportDbConst;
+import com.actionsoft.apps.coe.pal.processlist.model.ProcessListExportModel;
+import com.actionsoft.bpms.commons.database.RowMapper;
+import com.actionsoft.bpms.commons.mvc.dao.DaoObject;
+import com.actionsoft.bpms.util.DBSql;
+import com.actionsoft.bpms.util.UUIDGener;
+import com.actionsoft.bpms.util.UtilString;
+import com.actionsoft.exception.AWSDataAccessException;
+import com.actionsoft.exception.AWSException;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import java.sql.SQLException;
+import java.sql.Timestamp;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import static com.actionsoft.apps.coe.pal.processlist.constant.db.ProcessListExportDbConst.*;
+
+/**
+ * @author oYang
+ * @Description 导出记录表
+ * @createTime 2023年11月08日 11:15:00
+ */
+public class ProcessListExportDao extends DaoObject {
+
+ private static final Logger LOGGER = LoggerFactory.getLogger(ProcessListExportDao.class);
+
+ @Override
+ public int insert(ProcessListExportModel exportModel) throws AWSDataAccessException {
+ Map paramsMap = this.getModelParamsMap(exportModel);
+ String sql = DBSql.getInsertStatement(entityName(), paramsMap);
+ int update = DBSql.update(sql, paramsMap);
+ return update;
+ }
+
+ @Override
+ public int update(ProcessListExportModel processListExportModel) throws AWSDataAccessException {
+ if (UtilString.isEmpty(processListExportModel.getId())) {
+ throw new AWSDataAccessException("PmiBoardModel ID字段不允许为空");
+ }
+ return update(processListExportModel.getId(), this.getModelParamsMap(processListExportModel));
+ }
+
+ public void updateExportStatus(String exportId, int status, Timestamp updateTime) {
+ String sql = "UPDATE " + entityName() + " SET " + STATUE + "=:status, " + UPDATETIME + "=:updateTime WHERE " + ID + "=:exportId";
+ Map param = new HashMap<>();
+ param.put("status", status);
+ param.put("updateTime", updateTime);
+ param.put("exportId", exportId);
+ DBSql.update(sql, param);
+ }
+
+ public void updateExportStatusAndProgress(String exportId, int status, int progress, Timestamp updateTime) {
+ String sql = "UPDATE " + entityName() + " SET " + STATUE + "=:status, " + PROGRESS + "=:progress, " + UPDATETIME + "=:updateTime WHERE " + ID + "=:exportId";
+ Map param = new HashMap<>();
+ param.put("status", status);
+ param.put("progress", progress);
+ param.put("updateTime", updateTime);
+ param.put("exportId", exportId);
+ DBSql.update(sql, param);
+ }
+
+ public void updateExportStatusAndErrInfo(String exportId, int status, String errInfo, Timestamp updateTime) {
+ String sql = "UPDATE " + entityName() + " SET " + STATUE + "=:status, "+ ERRINFO + "=:errInfo, " + UPDATETIME + "=:updateTime WHERE " + ID + "=:exportId";
+ Map param = new HashMap<>();
+ param.put("status", status);
+ param.put("errInfo", errInfo);
+ param.put("updateTime", updateTime);
+ param.put("exportId", exportId);
+ DBSql.update(sql, param);
+ }
+
+ public void updateExportProgress(String exportId, int progress, Timestamp updateTime) {
+ String sql = "UPDATE " + entityName() + " SET " + PROGRESS + "=:progress, " + UPDATETIME + "=:updateTime WHERE " + ID + "=:exportId";
+ Map param = new HashMap<>();
+ param.put("progress", progress);
+ param.put("updateTime", updateTime);
+ param.put("exportId", exportId);
+ DBSql.update(sql, param);
+ }
+
+ public void updateExportStatusBatch(List exportModels) throws AWSException {
+ String sql = "UPDATE " + entityName() + " SET " + STATUE + "=:status, " + PROGRESS + "=:progress, " + UPDATETIME + "=:updateTime WHERE " + ID + "=:exportId";
+ List