Explorar o código

推送平天路

huangtf hai 5 meses
pai
achega
0f7921bcd4

+ 312 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/trans/ArchiveAutoVo.java

@@ -0,0 +1,312 @@
+package org.springblade.archive.trans;
+
+import java.util.Date;
+
+public class ArchiveAutoVo {
+    private String id;
+    private String name;
+    private String fileNumber;
+    private String micron;
+    private String unit;
+    private String quantity;
+    private String specification;
+    private Date startDate;
+    private Date endDate;
+    private String storageTime;
+    private String secretLevel;
+    private String carrierType;
+    private String keywords;
+    private String reviewer;
+    private Date reviewDate;
+    private String storageLocation;
+    private Integer isArchive;
+    private String remark;
+    private Date rollDate;
+    private String rollor;
+    private String nodeId;
+    private String creator;
+    private String creatorId;
+    private Date createTime;
+    private Integer deleted;
+    private String outUrl;
+    private String cdId;
+    private Integer orderNum;
+    private String contractId;
+    private Integer fileN;
+    private Integer pageN;
+    private String mileage;
+    private Integer fileType;
+    private Integer size;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getFileNumber() {
+        return fileNumber;
+    }
+
+    public void setFileNumber(String fileNumber) {
+        this.fileNumber = fileNumber;
+    }
+
+    public String getMicron() {
+        return micron;
+    }
+
+    public void setMicron(String micron) {
+        this.micron = micron;
+    }
+
+    public String getUnit() {
+        return unit;
+    }
+
+    public void setUnit(String unit) {
+        this.unit = unit;
+    }
+
+    public String getQuantity() {
+        return quantity;
+    }
+
+    public void setQuantity(String quantity) {
+        this.quantity = quantity;
+    }
+
+    public String getSpecification() {
+        return specification;
+    }
+
+    public void setSpecification(String specification) {
+        this.specification = specification;
+    }
+
+    public Date getStartDate() {
+        return startDate;
+    }
+
+    public void setStartDate(Date startDate) {
+        this.startDate = startDate;
+    }
+
+    public Date getEndDate() {
+        return endDate;
+    }
+
+    public void setEndDate(Date endDate) {
+        this.endDate = endDate;
+    }
+
+    public String getStorageTime() {
+        return storageTime;
+    }
+
+    public void setStorageTime(String storageTime) {
+        this.storageTime = storageTime;
+    }
+
+    public String getSecretLevel() {
+        return secretLevel;
+    }
+
+    public void setSecretLevel(String secretLevel) {
+        this.secretLevel = secretLevel;
+    }
+
+    public String getCarrierType() {
+        return carrierType;
+    }
+
+    public void setCarrierType(String carrierType) {
+        this.carrierType = carrierType;
+    }
+
+    public String getKeywords() {
+        return keywords;
+    }
+
+    public void setKeywords(String keywords) {
+        this.keywords = keywords;
+    }
+
+    public String getReviewer() {
+        return reviewer;
+    }
+
+    public void setReviewer(String reviewer) {
+        this.reviewer = reviewer;
+    }
+
+    public Date getReviewDate() {
+        return reviewDate;
+    }
+
+    public void setReviewDate(Date reviewDate) {
+        this.reviewDate = reviewDate;
+    }
+
+    public String getStorageLocation() {
+        return storageLocation;
+    }
+
+    public void setStorageLocation(String storageLocation) {
+        this.storageLocation = storageLocation;
+    }
+
+    public Integer getIsArchive() {
+        return isArchive;
+    }
+
+    public void setIsArchive(Integer isArchive) {
+        this.isArchive = isArchive;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public Date getRollDate() {
+        return rollDate;
+    }
+
+    public void setRollDate(Date rollDate) {
+        this.rollDate = rollDate;
+    }
+
+    public String getRollor() {
+        return rollor;
+    }
+
+    public void setRollor(String rollor) {
+        this.rollor = rollor;
+    }
+
+    public String getNodeId() {
+        return nodeId;
+    }
+
+    public void setNodeId(String nodeId) {
+        this.nodeId = nodeId;
+    }
+
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    public String getCreatorId() {
+        return creatorId;
+    }
+
+    public void setCreatorId(String creatorId) {
+        this.creatorId = creatorId;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Integer getDeleted() {
+        return deleted;
+    }
+
+    public void setDeleted(Integer deleted) {
+        this.deleted = deleted;
+    }
+
+    public String getOutUrl() {
+        return outUrl;
+    }
+
+    public void setOutUrl(String outUrl) {
+        this.outUrl = outUrl;
+    }
+
+    public String getCdId() {
+        return cdId;
+    }
+
+    public void setCdId(String cdId) {
+        this.cdId = cdId;
+    }
+
+    public Integer getOrderNum() {
+        return orderNum;
+    }
+
+    public void setOrderNum(Integer orderNum) {
+        this.orderNum = orderNum;
+    }
+
+    public String getContractId() {
+        return contractId;
+    }
+
+    public void setContractId(String contractId) {
+        this.contractId = contractId;
+    }
+
+    public Integer getFileN() {
+        return fileN;
+    }
+
+    public void setFileN(Integer fileN) {
+        this.fileN = fileN;
+    }
+
+    public Integer getPageN() {
+        return pageN;
+    }
+
+    public void setPageN(Integer pageN) {
+        this.pageN = pageN;
+    }
+
+    public String getMileage() {
+        return mileage;
+    }
+
+    public void setMileage(String mileage) {
+        this.mileage = mileage;
+    }
+
+    public Integer getFileType() {
+        return fileType;
+    }
+
+    public void setFileType(Integer fileType) {
+        this.fileType = fileType;
+    }
+
+    public Integer getSize() {
+        return size;
+    }
+
+    public void setSize(Integer size) {
+        this.size = size;
+    }
+}

+ 403 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/trans/ArchiveFileVo.java

@@ -0,0 +1,403 @@
+package org.springblade.archive.trans;
+
+import java.util.Date;
+
+public class ArchiveFileVo {
+    // 字段声明(与实体类严格对应)
+    private String id;
+    private String fileName;
+    private Integer fileType;
+    private String fileUrl;
+    private String nodeId;
+    private Date createTime;
+    private String creator;
+    private String type;
+    private Integer asstype;
+    private String status;
+    private String fileCode;
+    private String pdfUrl;
+    private String nodeIdMedia;
+    private String nodeIdSub;
+    private Integer pageCount;
+    private String nodeName;
+    private String archiveId;
+    private String originId;
+    private String approveType;
+    private Integer orderNum;
+    private String sortNum;
+    private String pdfSize;
+    private String uploadId;
+    private String pdfPageUrl;
+    private String fileTime;
+    private String ftime;
+    private String upTime;
+    private String responsibleUserName;
+    private String fileSize;
+    private String picCode;
+    private String referCode;
+    private String filmCode;
+    private String shooter;
+    private String filmingTime;
+    private String description;
+    private Integer nodetype;  // @Transient字段保留但无注解
+    private String picNum;
+    private String changeOrderNum;
+    private String picSize;
+    private String fileSource;
+    private Integer isBuiltDraw;
+    private Integer width;
+    private Integer height;
+    private String isArchive;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getFileName() {
+        return fileName;
+    }
+
+    public void setFileName(String fileName) {
+        this.fileName = fileName;
+    }
+
+    public Integer getFileType() {
+        return fileType;
+    }
+
+    public void setFileType(Integer fileType) {
+        this.fileType = fileType;
+    }
+
+    public String getFileUrl() {
+        return fileUrl;
+    }
+
+    public void setFileUrl(String fileUrl) {
+        this.fileUrl = fileUrl;
+    }
+
+    public String getNodeId() {
+        return nodeId;
+    }
+
+    public void setNodeId(String nodeId) {
+        this.nodeId = nodeId;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    public String getType() {
+        return type;
+    }
+
+    public void setType(String type) {
+        this.type = type;
+    }
+
+    public Integer getAsstype() {
+        return asstype;
+    }
+
+    public void setAsstype(Integer asstype) {
+        this.asstype = asstype;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getFileCode() {
+        return fileCode;
+    }
+
+    public void setFileCode(String fileCode) {
+        this.fileCode = fileCode;
+    }
+
+    public String getPdfUrl() {
+        return pdfUrl;
+    }
+
+    public void setPdfUrl(String pdfUrl) {
+        this.pdfUrl = pdfUrl;
+    }
+
+    public String getNodeIdMedia() {
+        return nodeIdMedia;
+    }
+
+    public void setNodeIdMedia(String nodeIdMedia) {
+        this.nodeIdMedia = nodeIdMedia;
+    }
+
+    public String getNodeIdSub() {
+        return nodeIdSub;
+    }
+
+    public void setNodeIdSub(String nodeIdSub) {
+        this.nodeIdSub = nodeIdSub;
+    }
+
+    public Integer getPageCount() {
+        return pageCount;
+    }
+
+    public void setPageCount(Integer pageCount) {
+        this.pageCount = pageCount;
+    }
+
+    public String getNodeName() {
+        return nodeName;
+    }
+
+    public void setNodeName(String nodeName) {
+        this.nodeName = nodeName;
+    }
+
+    public String getArchiveId() {
+        return archiveId;
+    }
+
+    public void setArchiveId(String archiveId) {
+        this.archiveId = archiveId;
+    }
+
+    public String getOriginId() {
+        return originId;
+    }
+
+    public void setOriginId(String originId) {
+        this.originId = originId;
+    }
+
+    public String getApproveType() {
+        return approveType;
+    }
+
+    public void setApproveType(String approveType) {
+        this.approveType = approveType;
+    }
+
+    public Integer getOrderNum() {
+        return orderNum;
+    }
+
+    public void setOrderNum(Integer orderNum) {
+        this.orderNum = orderNum;
+    }
+
+    public String getSortNum() {
+        return sortNum;
+    }
+
+    public void setSortNum(String sortNum) {
+        this.sortNum = sortNum;
+    }
+
+    public String getPdfSize() {
+        return pdfSize;
+    }
+
+    public void setPdfSize(String pdfSize) {
+        this.pdfSize = pdfSize;
+    }
+
+    public String getUploadId() {
+        return uploadId;
+    }
+
+    public void setUploadId(String uploadId) {
+        this.uploadId = uploadId;
+    }
+
+    public String getPdfPageUrl() {
+        return pdfPageUrl;
+    }
+
+    public void setPdfPageUrl(String pdfPageUrl) {
+        this.pdfPageUrl = pdfPageUrl;
+    }
+
+    public String getFileTime() {
+        return fileTime;
+    }
+
+    public void setFileTime(String fileTime) {
+        this.fileTime = fileTime;
+    }
+
+    public String getFtime() {
+        return ftime;
+    }
+
+    public void setFtime(String ftime) {
+        this.ftime = ftime;
+    }
+
+    public String getUpTime() {
+        return upTime;
+    }
+
+    public void setUpTime(String upTime) {
+        this.upTime = upTime;
+    }
+
+    public String getResponsibleUserName() {
+        return responsibleUserName;
+    }
+
+    public void setResponsibleUserName(String responsibleUserName) {
+        this.responsibleUserName = responsibleUserName;
+    }
+
+    public String getFileSize() {
+        return fileSize;
+    }
+
+    public void setFileSize(String fileSize) {
+        this.fileSize = fileSize;
+    }
+
+    public String getPicCode() {
+        return picCode;
+    }
+
+    public void setPicCode(String picCode) {
+        this.picCode = picCode;
+    }
+
+    public String getReferCode() {
+        return referCode;
+    }
+
+    public void setReferCode(String referCode) {
+        this.referCode = referCode;
+    }
+
+    public String getFilmCode() {
+        return filmCode;
+    }
+
+    public void setFilmCode(String filmCode) {
+        this.filmCode = filmCode;
+    }
+
+    public String getShooter() {
+        return shooter;
+    }
+
+    public void setShooter(String shooter) {
+        this.shooter = shooter;
+    }
+
+    public String getFilmingTime() {
+        return filmingTime;
+    }
+
+    public void setFilmingTime(String filmingTime) {
+        this.filmingTime = filmingTime;
+    }
+
+    public String getDescription() {
+        return description;
+    }
+
+    public void setDescription(String description) {
+        this.description = description;
+    }
+
+    public Integer getNodetype() {
+        return nodetype;
+    }
+
+    public void setNodetype(Integer nodetype) {
+        this.nodetype = nodetype;
+    }
+
+    public String getPicNum() {
+        return picNum;
+    }
+
+    public void setPicNum(String picNum) {
+        this.picNum = picNum;
+    }
+
+    public String getChangeOrderNum() {
+        return changeOrderNum;
+    }
+
+    public void setChangeOrderNum(String changeOrderNum) {
+        this.changeOrderNum = changeOrderNum;
+    }
+
+    public String getPicSize() {
+        return picSize;
+    }
+
+    public void setPicSize(String picSize) {
+        this.picSize = picSize;
+    }
+
+    public String getFileSource() {
+        return fileSource;
+    }
+
+    public void setFileSource(String fileSource) {
+        this.fileSource = fileSource;
+    }
+
+    public Integer getIsBuiltDraw() {
+        return isBuiltDraw;
+    }
+
+    public void setIsBuiltDraw(Integer isBuiltDraw) {
+        this.isBuiltDraw = isBuiltDraw;
+    }
+
+    public Integer getWidth() {
+        return width;
+    }
+
+    public void setWidth(Integer width) {
+        this.width = width;
+    }
+
+    public Integer getHeight() {
+        return height;
+    }
+
+    public void setHeight(Integer height) {
+        this.height = height;
+    }
+
+    public String getIsArchive() {
+        return isArchive;
+    }
+
+    public void setIsArchive(String isArchive) {
+        this.isArchive = isArchive;
+    }
+}

+ 4 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/trans/ArchiveMetaVo.java

@@ -0,0 +1,4 @@
+package org.springblade.archive.trans;
+
+public class ArchiveMetaVo {
+}

+ 93 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/trans/ArchiveReq.java

@@ -0,0 +1,93 @@
+package org.springblade.archive.trans;
+
+import java.util.ArrayList;
+import java.util.List;
+
+public class ArchiveReq {
+    String id;
+
+    /*类型枚举:
+    0 推送归档树;
+    1 推送归档树
+    2 推送案卷
+    3 推送文件
+     */
+    Integer type;
+
+    String nodeId;
+
+    String remoteId;
+
+    //归档树
+    List<ArchiveTreeVo> trees=new ArrayList<>();
+    //案卷
+    List<ArchiveAutoVo> autos=new ArrayList<>();
+    //案卷里的文件
+    List<ArchiveFileVo> files =new ArrayList<>();
+    //元数据
+    List<ArchiveMetaVo> metas=new ArrayList<>();
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public Integer getType() {
+        return type;
+    }
+
+    public void setType(Integer type) {
+        this.type = type;
+    }
+
+    public String getNodeId() {
+        return nodeId;
+    }
+
+    public void setNodeId(String nodeId) {
+        this.nodeId = nodeId;
+    }
+
+    public String getRemoteId() {
+        return remoteId;
+    }
+
+    public void setRemoteId(String remoteId) {
+        this.remoteId = remoteId;
+    }
+
+    public List<ArchiveTreeVo> getTrees() {
+        return trees;
+    }
+
+    public void setTrees(List<ArchiveTreeVo> trees) {
+        this.trees = trees;
+    }
+
+    public List<ArchiveAutoVo> getAutos() {
+        return autos;
+    }
+
+    public void setAutos(List<ArchiveAutoVo> autos) {
+        this.autos = autos;
+    }
+
+    public List<ArchiveFileVo> getFiles() {
+        return files;
+    }
+
+    public void setFiles(List<ArchiveFileVo> files) {
+        this.files = files;
+    }
+
+    public List<ArchiveMetaVo> getMetas() {
+        return metas;
+    }
+
+    public void setMetas(List<ArchiveMetaVo> metas) {
+        this.metas = metas;
+    }
+}

+ 334 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/trans/ArchiveTreeVo.java

@@ -0,0 +1,334 @@
+package org.springblade.archive.trans;
+
+import java.util.Date;
+
+public class ArchiveTreeVo {
+
+    // 基础字段
+    private String id;
+    private String name;
+    private String number;
+    private Integer fileType;
+    private Integer jobType;
+    private String pid;
+    private String remark;
+    private String creator;
+    private Date createTime;
+    private Integer state;
+    private Integer level;
+    private String formDataId;
+    private String contractId;
+    private String ancestorId;
+    private Integer deleted;
+    private Integer sortnum;
+    private String treeCode;
+
+    // 归档模板扩展字段
+    private Integer nodeType;
+    private Integer isStorage;
+    private Integer isAsBuiltDrawing;
+    private Integer isAsBuiltDrawingRelation;
+    private String stage;
+    private Integer isRelation;
+    private Integer relationType;
+    private String relationItems;
+    private Integer synDataType;
+    private Integer isOnSuper;
+    private Integer isRetainDivide;
+    private String processId;
+    private String procsort;
+    private String formulaId;
+    private Integer interfaceType;
+    private Integer contype;
+    private String code;
+    private String storageTime;
+    private String secretLevel;
+
+    public String getId() {
+        return id;
+    }
+
+    public void setId(String id) {
+        this.id = id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public String getNumber() {
+        return number;
+    }
+
+    public void setNumber(String number) {
+        this.number = number;
+    }
+
+    public Integer getFileType() {
+        return fileType;
+    }
+
+    public void setFileType(Integer fileType) {
+        this.fileType = fileType;
+    }
+
+    public Integer getJobType() {
+        return jobType;
+    }
+
+    public void setJobType(Integer jobType) {
+        this.jobType = jobType;
+    }
+
+    public String getPid() {
+        return pid;
+    }
+
+    public void setPid(String pid) {
+        this.pid = pid;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public String getCreator() {
+        return creator;
+    }
+
+    public void setCreator(String creator) {
+        this.creator = creator;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public Integer getState() {
+        return state;
+    }
+
+    public void setState(Integer state) {
+        this.state = state;
+    }
+
+    public Integer getLevel() {
+        return level;
+    }
+
+    public void setLevel(Integer level) {
+        this.level = level;
+    }
+
+    public String getFormDataId() {
+        return formDataId;
+    }
+
+    public void setFormDataId(String formDataId) {
+        this.formDataId = formDataId;
+    }
+
+    public String getContractId() {
+        return contractId;
+    }
+
+    public void setContractId(String contractId) {
+        this.contractId = contractId;
+    }
+
+    public String getAncestorId() {
+        return ancestorId;
+    }
+
+    public void setAncestorId(String ancestorId) {
+        this.ancestorId = ancestorId;
+    }
+
+    public Integer getDeleted() {
+        return deleted;
+    }
+
+    public void setDeleted(Integer deleted) {
+        this.deleted = deleted;
+    }
+
+    public Integer getSortnum() {
+        return sortnum;
+    }
+
+    public void setSortnum(Integer sortnum) {
+        this.sortnum = sortnum;
+    }
+
+    public String getTreeCode() {
+        return treeCode;
+    }
+
+    public void setTreeCode(String treeCode) {
+        this.treeCode = treeCode;
+    }
+
+    public Integer getNodeType() {
+        return nodeType;
+    }
+
+    public void setNodeType(Integer nodeType) {
+        this.nodeType = nodeType;
+    }
+
+    public Integer getIsStorage() {
+        return isStorage;
+    }
+
+    public void setIsStorage(Integer isStorage) {
+        this.isStorage = isStorage;
+    }
+
+    public Integer getIsAsBuiltDrawing() {
+        return isAsBuiltDrawing;
+    }
+
+    public void setIsAsBuiltDrawing(Integer isAsBuiltDrawing) {
+        this.isAsBuiltDrawing = isAsBuiltDrawing;
+    }
+
+    public Integer getIsAsBuiltDrawingRelation() {
+        return isAsBuiltDrawingRelation;
+    }
+
+    public void setIsAsBuiltDrawingRelation(Integer isAsBuiltDrawingRelation) {
+        this.isAsBuiltDrawingRelation = isAsBuiltDrawingRelation;
+    }
+
+    public String getStage() {
+        return stage;
+    }
+
+    public void setStage(String stage) {
+        this.stage = stage;
+    }
+
+    public Integer getIsRelation() {
+        return isRelation;
+    }
+
+    public void setIsRelation(Integer isRelation) {
+        this.isRelation = isRelation;
+    }
+
+    public Integer getRelationType() {
+        return relationType;
+    }
+
+    public void setRelationType(Integer relationType) {
+        this.relationType = relationType;
+    }
+
+    public String getRelationItems() {
+        return relationItems;
+    }
+
+    public void setRelationItems(String relationItems) {
+        this.relationItems = relationItems;
+    }
+
+    public Integer getSynDataType() {
+        return synDataType;
+    }
+
+    public void setSynDataType(Integer synDataType) {
+        this.synDataType = synDataType;
+    }
+
+    public Integer getIsOnSuper() {
+        return isOnSuper;
+    }
+
+    public void setIsOnSuper(Integer isOnSuper) {
+        this.isOnSuper = isOnSuper;
+    }
+
+    public Integer getIsRetainDivide() {
+        return isRetainDivide;
+    }
+
+    public void setIsRetainDivide(Integer isRetainDivide) {
+        this.isRetainDivide = isRetainDivide;
+    }
+
+    public String getProcessId() {
+        return processId;
+    }
+
+    public void setProcessId(String processId) {
+        this.processId = processId;
+    }
+
+    public String getProcsort() {
+        return procsort;
+    }
+
+    public void setProcsort(String procsort) {
+        this.procsort = procsort;
+    }
+
+    public String getFormulaId() {
+        return formulaId;
+    }
+
+    public void setFormulaId(String formulaId) {
+        this.formulaId = formulaId;
+    }
+
+    public Integer getInterfaceType() {
+        return interfaceType;
+    }
+
+    public void setInterfaceType(Integer interfaceType) {
+        this.interfaceType = interfaceType;
+    }
+
+    public Integer getContype() {
+        return contype;
+    }
+
+    public void setContype(Integer contype) {
+        this.contype = contype;
+    }
+
+    public String getCode() {
+        return code;
+    }
+
+    public void setCode(String code) {
+        this.code = code;
+    }
+
+    public String getStorageTime() {
+        return storageTime;
+    }
+
+    public void setStorageTime(String storageTime) {
+        this.storageTime = storageTime;
+    }
+
+    public String getSecretLevel() {
+        return secretLevel;
+    }
+
+    public void setSecretLevel(String secretLevel) {
+        this.secretLevel = secretLevel;
+    }
+}

+ 12 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/controller/ArchiveMeasurementController.java

@@ -12,6 +12,7 @@ import org.apache.http.client.methods.HttpPost;
 import org.apache.http.impl.client.HttpClients;
 import org.apache.http.util.EntityUtils;
 import org.springblade.archive.service.IArchiveAutoPdfService;
+import org.springblade.archive.trans.ArchiveReq;
 import org.springblade.business.entity.ArchiveFile;
 import org.springblade.business.feign.ArchiveFileClient;
 import org.springblade.common.utils.CommonUtil;
@@ -249,4 +250,15 @@ public class ArchiveMeasurementController {
         }
     }
 
+    @RequestMapping(value = "/receiveArchiveReq",
+            method = RequestMethod.POST)
+    @ResponseBody
+    public ResponseEntity<String> handleArchiveRequest(
+            @RequestBody ArchiveReq request) {
+
+        // 业务逻辑保持不变
+        System.out.println();
+        return ResponseEntity.ok("Request processed successfully");
+    }
+
 }

+ 64 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/external/bean/ExternalDataInfo.java

@@ -0,0 +1,64 @@
+package org.springblade.archive.external.bean;
+
+import java.util.Map;
+
+public class ExternalDataInfo {
+
+    // 项目名称
+    private String projectName;
+
+    // 项目ID
+    private Long projectId;
+
+    // 外内归档树节点ID映射
+    private Map<String, String> archiveTreeNodeIdMapping;
+
+    // 外内案卷节点ID映射
+    private Map<String, Long> archiveIdMapping;
+
+    // 外内文件节点ID映射
+    private Map<String, Long> fileIdMapping;
+
+
+    // Getter 和 Setter 方法
+    public String getProjectName() {
+        return projectName;
+    }
+
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
+    }
+
+    public Long getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(Long projectId) {
+        this.projectId = projectId;
+    }
+
+    public Map<String, String> getArchiveTreeNodeIdMapping() {
+        return archiveTreeNodeIdMapping;
+    }
+
+    public void setArchiveTreeNodeIdMapping(Map<String, String> archiveTreeNodeIdMapping) {
+        this.archiveTreeNodeIdMapping = archiveTreeNodeIdMapping;
+    }
+
+    public Map<String, Long> getArchiveIdMappingMapping() {
+        return archiveIdMapping;
+    }
+
+    public void setArchiveIdMapping(Map<String, Long> caseNodeIdMapping) {
+        this.archiveIdMapping = caseNodeIdMapping;
+    }
+
+    public Map<String, Long> getFileIdMapping() {
+        return fileIdMapping;
+    }
+
+    public void setFileNodeIdMapping(Map<String, Long> fileNodeIdMapping) {
+        this.fileIdMapping = fileNodeIdMapping;
+    }
+
+}

+ 129 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/external/impl/ExternalDataArchiveAutoService.java

@@ -0,0 +1,129 @@
+package org.springblade.archive.external.impl;
+
+import org.springblade.archive.entity.ArchivesAuto;
+import org.springblade.archive.external.bean.ExternalDataInfo;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
+import java.util.stream.Collectors;
+
+@Service
+public class ExternalDataArchiveAutoService {
+
+
+    public void syncData(ExternalDataInfo externalDataInfo) {
+        // 新增的案卷列表
+        List<ArchivesAuto> addArchives = new ArrayList<>();
+
+        // 更新的案卷列表
+        List<ArchivesAuto> upArchives = new ArrayList<>();
+
+        // 获取外部系统案卷数据
+        List<ArchivesAuto> externalArchives = getExternalArchives(
+                externalDataInfo.getProjectName(),
+                externalDataInfo
+        );
+
+        // 获取本地存储的案卷数据
+        List<ArchivesAuto> localArchives = getLocalArchives(
+                externalDataInfo.getProjectName()
+        );
+
+        // 比对差异获取需新增/更新的案卷
+        getAddAndUpdateArchives(
+                externalDataInfo,
+                externalArchives,
+                localArchives,
+                addArchives,
+                upArchives
+        );
+
+        // 持久化操作
+        addAndUpdateArchives(addArchives, upArchives);
+    }
+
+    /**
+     * 获取本地案卷数据
+     * @param projectName 项目名称
+     * @return 本地案卷列表
+     */
+    private List<ArchivesAuto> getLocalArchives(String projectName) {
+        List<ArchivesAuto> localArchives = new ArrayList<>();
+        // 模拟实现:根据项目名称查询数据库获取本地案卷
+        // 示例伪代码:localArchives = archivesMapper.selectByProject(projectName);
+        return localArchives;
+    }
+
+    /**
+     * 获取外部系统案卷数据(需实现)
+     * @param projectName 项目名称
+     * @param externalData 外部数据参数
+     * @return 外部系统案卷列表
+     */
+    private List<ArchivesAuto> getExternalArchives(String projectName, ExternalDataInfo externalData) {
+        // 待实现:调用外部系统接口获取案卷数据
+        return new ArrayList<>();
+    }
+
+    /**
+     * 执行新增/更新持久化操作(需实现)
+     * @param addArchives 新增案卷集合
+     * @param upArchives 更新案卷集合
+     */
+    private void addAndUpdateArchives(List<ArchivesAuto> addArchives, List<ArchivesAuto> upArchives) {
+        // 待实现:批量插入新增数据,批量更新现有数据
+    }
+
+
+    private void getAddAndUpdateArchives(
+            ExternalDataInfo externalDataInfo,
+            List<ArchivesAuto> externalArchives,
+            List<ArchivesAuto> localArchives,
+            List<ArchivesAuto> addArchives,
+            List<ArchivesAuto> upArchives) {
+
+        // 将外部案卷转换为 Map,键为 ID,值为 ArchivesAuto
+        Map<Long, ArchivesAuto> externalArchivesMap = externalArchives.stream()
+                .collect(Collectors.toMap(ArchivesAuto::getId, archive -> archive));
+
+        // 遍历本地案卷,找出新增和更新的案卷
+        for (ArchivesAuto localArchive : localArchives) {
+            ArchivesAuto externalArchive = externalArchivesMap.get(localArchive.getId());
+            if (externalArchive == null) {
+                // 外部系统没有此案卷,认为是新增案卷
+                addArchives.add(localArchive);
+            } else {
+                // 外部系统有此案卷,比较更新时间
+                if (!externalArchive.getOutUrl().equals(localArchive.getOutUrl())) {
+                    // 更新时间不同,认为是更新案卷
+
+                    localArchive.setOutUrl(externalArchive.getOutUrl());
+                    upArchives.add(localArchive);
+                }
+            }
+        }
+
+        // 将外部案卷中没有在本地案卷中的,认为是新增案卷
+
+
+        // 处理新增案卷的 NodeId, NodeExtId 和 ArchiveId 映射
+        if (addArchives != null && !addArchives.isEmpty()) {
+            for (ArchivesAuto addArchive : addArchives) {
+                // 处理 NodeId 映射
+                if (addArchive.getNodeId() != null && externalDataInfo.getArchiveTreeNodeIdMapping() != null) {
+                    String nodeId = externalDataInfo.getArchiveTreeNodeIdMapping().get(addArchive.getNodeId());
+                    if (nodeId != null) {
+                        addArchive.setNodeId(Long.parseLong(nodeId));
+                    }
+                }
+
+            }
+        }
+    }
+
+
+}

+ 33 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/external/impl/ExternalDataArchiveBuildService.java

@@ -0,0 +1,33 @@
+package org.springblade.archive.external.impl;
+
+import org.springblade.archive.external.bean.ExternalDataInfo;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class ExternalDataArchiveBuildService {
+
+    @Autowired
+    private  ExternalDataArchiveAutoService externalDataArchiveAutoService;
+    @Autowired
+    private  ExternalDataArchiveFileService externalDataArchiveFileService;
+    @Autowired
+    private  ExternalDataArchiveTreeService externalTreeService;
+
+
+
+
+    public  ExternalDataInfo syncExternalData(String projectName) {
+        // 创建 ExternalDataInfo 对象
+        ExternalDataInfo externalDataInfo = new ExternalDataInfo();
+        externalDataInfo.setProjectName(projectName);
+
+        // 调用同步函数,传入 ExternalDataInfo 对象
+        externalTreeService.syncData(externalDataInfo);
+        externalDataArchiveAutoService.syncData(externalDataInfo);
+        externalDataArchiveFileService.syncData(externalDataInfo);
+
+        // 返回同步后的 ExternalDataInfo 对象
+        return externalDataInfo;
+    }
+}

+ 319 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/external/impl/ExternalDataArchiveFileService.java

@@ -0,0 +1,319 @@
+package org.springblade.archive.external.impl;
+
+import org.springblade.archive.external.bean.ExternalDataInfo;
+import org.springblade.business.entity.ArchiveFile;
+import org.springblade.business.feign.ArchiveFileClient;
+import org.springframework.stereotype.Service;
+
+import java.time.LocalDateTime;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+@Service
+public class ExternalDataArchiveFileService {
+
+    private ArchiveFileClient archiveFileClient;
+
+    public void syncData(ExternalDataInfo externalDataInfo) {
+        // 创建 ExternalDataInfo 对象
+        //新增的文件
+        List<ArchiveFile> addFiles = new ArrayList<>();
+
+        //更新的文件
+        List<ArchiveFile> upFiles = new ArrayList<>();
+
+        //外部文件
+        List<ArchiveFile> externalFiles = getExternalFils(externalDataInfo.getProjectName(),externalDataInfo);
+
+        //本地的文件
+        List<ArchiveFile> localFiles = getLocalFils(externalDataInfo.getProjectName());
+
+        //比较获取
+        getAddAndUpdateFiles(externalDataInfo,externalFiles, localFiles, addFiles, upFiles);
+
+        //保存
+        addAndUpdateFiles(addFiles,upFiles);
+    }
+
+
+
+    private void getAddAndUpdateFiles(ExternalDataInfo externalDataInfo,List<ArchiveFile> externalFiles, List<ArchiveFile> localFiles,
+                                   List<ArchiveFile> addFiles, List<ArchiveFile> upFiles) {
+        // 将外部文件转换为 Map,键为 ID,值为 ArchiveFile
+        Map<Long, ArchiveFile> externalFileMap =
+                externalFiles.stream()
+                .collect(Collectors.toMap(ArchiveFile::getId, file -> file));
+
+        // 遍历本地文件,找出新增和更新的文件
+        for (ArchiveFile localFile : localFiles) {
+            ArchiveFile externalFile = externalFileMap.get(localFile.getId());
+            if (externalFile == null) {
+                // 外部文件中没有此 ID,认为是新增文件
+                addFiles.add(localFile);
+            } else {
+                // 外部文件中有此 ID,比较更新时间
+                if (!externalFile.getFtime().equals(localFile.getFtime())) {
+                    // 更新时间不同,认为是更新文件
+                    localFile.setFileUrl(externalFile.getFileUrl());
+                    localFile.setEVisaFile(externalFile.getEVisaFile());
+                    localFile.setPdfPageUrl(externalFile.getPdfPageUrl());
+                    localFile.setFilePage(externalFile.getFilePage());
+                    localFile.setFileSize(externalFile.getFileSize());
+                    upFiles.add(localFile);
+                }
+            }
+        }
+
+        // 将外部文件中没有在本地文件中的,认为是新增文件
+        for (ArchiveFile externalFile : externalFiles) {
+            boolean isExistInLocal = localFiles.stream().anyMatch(localFile -> localFile.getId().equals(externalFile.getId()));
+            if (!isExistInLocal) {
+                addFiles.add(externalFile);
+            }
+        }
+
+
+        //刷新
+        if (addFiles != null && !addFiles.isEmpty()) {
+            for (ArchiveFile addFile :addFiles) {
+                if (addFile.getNodeId()!= null && externalDataInfo.getArchiveTreeNodeIdMapping()!= null) {
+                    String nodeId = externalDataInfo.getArchiveTreeNodeIdMapping().get(addFile.getNodeId());
+                    if (nodeId!=null) {
+                        addFile.setNodeId(nodeId);
+                    }
+                }
+
+                // Process NodeExtId
+                if (addFile.getNodeExtId() != null && externalDataInfo.getArchiveTreeNodeIdMapping() != null) {
+                    String nodeExtId = externalDataInfo.getArchiveTreeNodeIdMapping().get(addFile.getNodeExtId());
+                    if (nodeExtId != null) {
+                        addFile.setNodeExtId(Long.parseLong(nodeExtId));
+                    }
+                }
+
+                // Process ArchiveId
+                if (addFile.getArchiveId() != null && externalDataInfo.getArchiveIdMappingMapping() != null) {
+                    Long archiveId = externalDataInfo.getArchiveIdMappingMapping().get(addFile.getArchiveId());
+                    if (archiveId != null) {
+                        addFile.setArchiveId(archiveId);
+                    }
+                }
+            }
+        }
+
+
+    }
+
+
+    private List<ArchiveFile> getExternalFils(String projectName, ExternalDataInfo externalDataInfo) {
+        // 这里模拟获取外部文件的逻辑,具体实现根据 externalDataInfo 来获取
+
+        List<ArchiveFile> externalFils = new ArrayList<>();
+
+
+        return externalFils;
+    }
+
+    // 获取本地文件
+    private List<ArchiveFile> getLocalFils(String projectName) {
+
+        List<ArchiveFile> localFils = new ArrayList<>();
+        // 这里模拟获取本地文件的逻辑,具体实现根据项目名称来获取
+        return localFils;
+    }
+
+
+    public void addAndUpdateFiles(List<ArchiveFile> addFiles, List<ArchiveFile> upFiles) {
+        if (addFiles != null && !addFiles.isEmpty()) {
+            archiveFileClient.addArchiveFile(addFiles);
+        }
+
+        if (upFiles != null && !upFiles.isEmpty()) {
+            archiveFileClient.updateArchiveFile(upFiles);
+        }
+    }
+
+    public ArchiveFile createArchiveFileFromMap(Map<String, Object> fileDataMap) {
+        ArchiveFile archiveFile = new ArchiveFile();
+
+        // 项目ID
+        if (fileDataMap.containsKey("projectId")) {
+            archiveFile.setProjectId((String) fileDataMap.get("projectId"));
+        }
+
+        // 合同段ID
+        if (fileDataMap.containsKey("contractId")) {
+            archiveFile.setContractId((String) fileDataMap.get("contractId"));
+        }
+
+        // 文件绑定的节点ID
+        if (fileDataMap.containsKey("nodeId")) {
+            archiveFile.setNodeId((String) fileDataMap.get("nodeId"));
+        }
+
+        // 文件编号
+        if (fileDataMap.containsKey("fileNumber")) {
+            archiveFile.setFileNumber((String) fileDataMap.get("fileNumber"));
+        }
+
+        // 文件名称
+        if (fileDataMap.containsKey("fileName")) {
+            archiveFile.setFileName((String) fileDataMap.get("fileName"));
+        }
+
+        // 文件时间
+        if (fileDataMap.containsKey("fileTime")) {
+            archiveFile.setFileTime((String) fileDataMap.get("fileTime"));
+        }
+
+        // 文件路径
+        if (fileDataMap.containsKey("fileUrl")) {
+            archiveFile.setFileUrl((String) fileDataMap.get("fileUrl"));
+        }
+
+        // PDF文件路径
+        if (fileDataMap.containsKey("pdfFileUrl")) {
+            archiveFile.setPdfFileUrl((String) fileDataMap.get("pdfFileUrl"));
+        }
+
+        // 文件页数
+        if (fileDataMap.containsKey("filePage")) {
+            archiveFile.setFilePage((Integer) fileDataMap.get("filePage"));
+        }
+
+        // 责任者
+        if (fileDataMap.containsKey("dutyUser")) {
+            archiveFile.setDutyUser((String) fileDataMap.get("dutyUser"));
+        }
+
+        // 图表来源
+        if (fileDataMap.containsKey("sheetSource")) {
+            archiveFile.setSheetSource((String) fileDataMap.get("sheetSource"));
+        }
+
+        // 图号
+        if (fileDataMap.containsKey("drawingNo")) {
+            archiveFile.setDrawingNo((String) fileDataMap.get("drawingNo"));
+        }
+
+        // 引用变更令编号
+        if (fileDataMap.containsKey("citeChangeNumber")) {
+            archiveFile.setCiteChangeNumber((String) fileDataMap.get("citeChangeNumber"));
+        }
+
+        // 电签pdf文件
+        if (fileDataMap.containsKey("eVisaFile")) {
+            archiveFile.setEVisaFile((String) fileDataMap.get("eVisaFile"));
+        }
+
+        // 文件归属的扩展节点ID
+        if (fileDataMap.containsKey("nodeExtId")) {
+            archiveFile.setNodeExtId((Long) fileDataMap.get("nodeExtId"));
+        }
+
+        // 文件类型
+        if (fileDataMap.containsKey("fileType")) {
+            archiveFile.setFileType((Long) fileDataMap.get("fileType"));
+        }
+
+        // 归属案卷ID
+        if (fileDataMap.containsKey("archiveId")) {
+            archiveFile.setArchiveId((Long) fileDataMap.get("archiveId"));
+        }
+
+        // 原始归属案卷ID(用于拆卷)
+        if (fileDataMap.containsKey("originId")) {
+            archiveFile.setOriginId((Long) fileDataMap.get("originId"));
+        }
+
+        // 拍摄时间
+        if (fileDataMap.containsKey("filmingTime")) {
+            archiveFile.setFilmingTime((LocalDateTime) fileDataMap.get("filmingTime"));
+        }
+
+        // 实际拍摄时间
+        if (fileDataMap.containsKey("filmingorTime")) {
+            archiveFile.setFilmingorTime((LocalDateTime) fileDataMap.get("filmingorTime"));
+        }
+
+        // 媒体分类
+        if (fileDataMap.containsKey("tagId")) {
+            archiveFile.setTagId((String) fileDataMap.get("tagId"));
+        }
+
+        // 相片号
+        if (fileDataMap.containsKey("picCode")) {
+            archiveFile.setPicCode((String) fileDataMap.get("picCode"));
+        }
+
+        // 参见号
+        if (fileDataMap.containsKey("referCode")) {
+            archiveFile.setReferCode((String) fileDataMap.get("referCode"));
+        }
+
+        // 底片号
+        if (fileDataMap.containsKey("filmCode")) {
+            archiveFile.setFilmCode((String) fileDataMap.get("filmCode"));
+        }
+
+        // 图片宽
+        if (fileDataMap.containsKey("width")) {
+            archiveFile.setWidth((Integer) fileDataMap.get("width"));
+        }
+
+        // 图片高
+        if (fileDataMap.containsKey("height")) {
+            archiveFile.setHeight((Integer) fileDataMap.get("height"));
+        }
+
+        // 同步时间
+        if (fileDataMap.containsKey("ftime")) {
+            archiveFile.setFtime((LocalDateTime) fileDataMap.get("ftime"));
+        }
+
+        // 更新时间
+        if (fileDataMap.containsKey("utime")) {
+            archiveFile.setUtime((LocalDateTime) fileDataMap.get("utime"));
+        }
+
+        // 排序
+        if (fileDataMap.containsKey("sort")) {
+            archiveFile.setSort((Integer) fileDataMap.get("sort"));
+        }
+
+        // 是否已组卷(0未组卷,1已组卷)
+        if (fileDataMap.containsKey("isArchive")) {
+            archiveFile.setIsArchive((Integer) fileDataMap.get("isArchive"));
+        }
+
+        // 页号
+        if (fileDataMap.containsKey("pageNum")) {
+            archiveFile.setPageNum((String) fileDataMap.get("pageNum"));
+        }
+
+        // 文件大小
+        if (fileDataMap.containsKey("fileSize")) {
+            archiveFile.setFileSize((Long) fileDataMap.get("fileSize"));
+        }
+
+        // 数据源类型(1原生,2数字化)
+        if (fileDataMap.containsKey("sourceType")) {
+            archiveFile.setSourceType((Integer) fileDataMap.get("sourceType"));
+        }
+
+        // 打了页码的pdf文件路径
+        if (fileDataMap.containsKey("pdfPageUrl")) {
+            archiveFile.setPdfPageUrl((String) fileDataMap.get("pdfPageUrl"));
+        }
+
+        // 类型(1施工,2监理)
+        if (fileDataMap.containsKey("classify")) {
+            archiveFile.setClassify((Integer) fileDataMap.get("classify"));
+        }
+
+        return archiveFile;
+    }
+
+}

+ 108 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/external/impl/ExternalDataArchiveTreeService.java

@@ -0,0 +1,108 @@
+package org.springblade.archive.external.impl;
+
+import org.springblade.archive.external.bean.ExternalDataInfo;
+import org.springblade.business.entity.ArchiveFile;
+import org.springblade.manager.entity.ArchiveTreeContract;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+@Service
+public class ExternalDataArchiveTreeService {
+
+    public void syncData(ExternalDataInfo externalDataInfo) {
+        // 新增的合同列表
+        List<ArchiveTreeContract> addContracts = new ArrayList<>();
+
+        // 更新的合同列表
+        List<ArchiveTreeContract> upContracts = new ArrayList<>();
+
+        // 获取外部系统合同数据
+        List<ArchiveTreeContract> externalContracts = getExternalContracts(
+                externalDataInfo.getProjectName(),
+                externalDataInfo
+        );
+
+        // 获取本地存储的合同数据
+        List<ArchiveTreeContract> localContracts = getLocalContracts(
+                externalDataInfo.getProjectName()
+        );
+
+        // 比对差异获取需新增/更新的合同
+        getAddAndUpdateContracts(
+                externalDataInfo,
+                externalContracts,
+                localContracts,
+                addContracts,
+                upContracts
+        );
+
+        // 持久化操作
+        addAndUpdateContracts(addContracts, upContracts);
+    }
+
+    /**
+     * 获取本地合同数据
+     * @param projectName 项目名称
+     * @return 本地合同列表
+     */
+    private List<ArchiveTreeContract> getLocalContracts(String projectName) {
+        List<ArchiveTreeContract> localContracts = new ArrayList<>();
+        // 模拟实现:根据项目名称查询数据库获取本地合同
+        // 示例伪代码:localContracts = contractMapper.selectByProject(projectName);
+        return localContracts;
+    }
+
+    /**
+     * 获取外部系统合同数据(需实现)
+     * @param projectName 项目名称
+     * @param externalData 外部数据参数
+     * @return 外部系统合同列表
+     */
+    private List<ArchiveTreeContract> getExternalContracts(String projectName, ExternalDataInfo externalData) {
+        // 待实现:调用外部系统接口获取合同数据
+        return new ArrayList<>();
+    }
+
+    /**
+     * 执行新增/更新持久化操作(需实现)
+     * @param addContracts 新增合同集合
+     * @param upContracts 更新合同集合
+     */
+    private void addAndUpdateContracts(List<ArchiveTreeContract> addContracts, List<ArchiveTreeContract> upContracts) {
+        // 待实现:批量插入新增数据,批量更新现有数据
+    }
+
+    private void getAddAndUpdateContracts(
+            ExternalDataInfo externalDataInfo,
+            List<ArchiveTreeContract> externalContracts,
+            List<ArchiveTreeContract> localContracts,
+            List<ArchiveTreeContract> addContracts,
+            List<ArchiveTreeContract> upContracts) {
+
+        // 将外部合同转换为 Map,键为 ID,值为 ArchiveTreeContract
+        Map<Long, ArchiveTreeContract> externalContractsMap = externalContracts.stream()
+                .collect(Collectors.toMap(ArchiveTreeContract::getId, contract -> contract));
+
+        // 遍历本地合同,找出新增和更新的合同
+        for (ArchiveTreeContract localContract : localContracts) {
+            ArchiveTreeContract externalContract = externalContractsMap.get(localContract.getId());
+            if (externalContract == null) {
+                // 外部系统没有此合同,认为是新增合同
+                addContracts.add(localContract);
+            } else {
+                // 外部系统有此合同,比较更新时间
+//                if (!externalContract.getOutUrl().equals(localContract.getOutUrl())) {
+//                    // 更新时间不同,认为是更新合同
+//                    localContract.setOutUrl(externalContract.getOutUrl());
+//                    upContracts.add(localContract);
+//                }
+            }
+        }
+
+
+    }
+}

+ 21 - 0
blade-service/blade-archive/src/main/java/org/springblade/archive/external/utils/TransUtil.java

@@ -0,0 +1,21 @@
+package org.springblade.archive.external.utils;
+
+import org.springblade.archive.external.bean.ExternalDataInfo;
+
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
+
+public class TransUtil {
+
+    private final ConcurrentMap<Long, ExternalDataInfo> dataMap = new ConcurrentHashMap<>();
+
+    public static final Map<String, Long> fileTypeToTableMap = new LinkedHashMap<>();
+
+    static {
+        fileTypeToTableMap.put("", 6666L);
+    }
+
+
+}