diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
index f02e6d9..0391b30 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
@@ -77,12 +77,39 @@
@TableField("change_content")
private String changeContent;
+ @DictCodeField(message = "文件类型描述不合法", cacheName = MeterDictCode.FILE_TYPE)
+ @ApiModelProperty(value = "文件类型", dataType = "String", required = true)
+ @TableField("file_category")
+ private Integer fileCategory;
+
+
+ @NotEmpty(message = "文件类型名不能为空")
+ @ApiModelProperty(value = "文件类型名", dataType = "String")
+ @TableField(exist = false)
+ private String fileCategoryName;
+
+ @ApiModelProperty(value = "文件列表来源,1:体系文件,0:其他(现行测试校准检定方法】、【合同执行变更登记表】、【溯源链变更管理】、【要求、委托书及合同评审表】)", dataType = "String",required = true)
+ @TableField("origin")
+ private String origin;
+
+ @ApiModelProperty(value = "文件发放号,审批通过后生成", dataType = "String")
+ @TableField("file_distribute_no")
+ private String fileDistributeNo;
+
@DictCodeField(message = "实验室代码描述不合法", cacheName = MeterDictCode.LAB_CODE)
@ApiModelProperty(value = "实验室代码(字典code)", dataType = "String")
@TableField("lab_code")
private String labCode;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
@ApiModelProperty(value = "实验室代码(字典value)", dataType = "String")
@TableField(exist = false)
private String labCodeName;
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
index f02e6d9..0391b30 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
@@ -77,12 +77,39 @@
@TableField("change_content")
private String changeContent;
+ @DictCodeField(message = "文件类型描述不合法", cacheName = MeterDictCode.FILE_TYPE)
+ @ApiModelProperty(value = "文件类型", dataType = "String", required = true)
+ @TableField("file_category")
+ private Integer fileCategory;
+
+
+ @NotEmpty(message = "文件类型名不能为空")
+ @ApiModelProperty(value = "文件类型名", dataType = "String")
+ @TableField(exist = false)
+ private String fileCategoryName;
+
+ @ApiModelProperty(value = "文件列表来源,1:体系文件,0:其他(现行测试校准检定方法】、【合同执行变更登记表】、【溯源链变更管理】、【要求、委托书及合同评审表】)", dataType = "String",required = true)
+ @TableField("origin")
+ private String origin;
+
+ @ApiModelProperty(value = "文件发放号,审批通过后生成", dataType = "String")
+ @TableField("file_distribute_no")
+ private String fileDistributeNo;
+
@DictCodeField(message = "实验室代码描述不合法", cacheName = MeterDictCode.LAB_CODE)
@ApiModelProperty(value = "实验室代码(字典code)", dataType = "String")
@TableField("lab_code")
private String labCode;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
@ApiModelProperty(value = "实验室代码(字典value)", dataType = "String")
@TableField(exist = false)
private String labCodeName;
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
index 7c1e805..9c7ab72 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
@@ -74,6 +74,10 @@
@TableField("process_id")
private String processId;
+ @ApiModelProperty(value = "收回存档原因", dataType = "String")
+ @TableField("archive_reason")
+ private String archiveReason;
+
/**
* 创建人id
*/
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
index f02e6d9..0391b30 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
@@ -77,12 +77,39 @@
@TableField("change_content")
private String changeContent;
+ @DictCodeField(message = "文件类型描述不合法", cacheName = MeterDictCode.FILE_TYPE)
+ @ApiModelProperty(value = "文件类型", dataType = "String", required = true)
+ @TableField("file_category")
+ private Integer fileCategory;
+
+
+ @NotEmpty(message = "文件类型名不能为空")
+ @ApiModelProperty(value = "文件类型名", dataType = "String")
+ @TableField(exist = false)
+ private String fileCategoryName;
+
+ @ApiModelProperty(value = "文件列表来源,1:体系文件,0:其他(现行测试校准检定方法】、【合同执行变更登记表】、【溯源链变更管理】、【要求、委托书及合同评审表】)", dataType = "String",required = true)
+ @TableField("origin")
+ private String origin;
+
+ @ApiModelProperty(value = "文件发放号,审批通过后生成", dataType = "String")
+ @TableField("file_distribute_no")
+ private String fileDistributeNo;
+
@DictCodeField(message = "实验室代码描述不合法", cacheName = MeterDictCode.LAB_CODE)
@ApiModelProperty(value = "实验室代码(字典code)", dataType = "String")
@TableField("lab_code")
private String labCode;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
@ApiModelProperty(value = "实验室代码(字典value)", dataType = "String")
@TableField(exist = false)
private String labCodeName;
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
index 7c1e805..9c7ab72 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
@@ -74,6 +74,10 @@
@TableField("process_id")
private String processId;
+ @ApiModelProperty(value = "收回存档原因", dataType = "String")
+ @TableField("archive_reason")
+ private String archiveReason;
+
/**
* 创建人id
*/
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
index 83656e4..2b516f0 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
@@ -140,6 +140,14 @@
@TableField("file")
private String file;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
/**
* 历史文件(1历史文件0体系文件)
*/
@@ -159,4 +167,35 @@
@ApiModelProperty(value = "标准装置体系文件关联表id", dataType = "Long")
@TableField(exist = false)
private Long standardSystemFileRelationId;
+
+
+ public BizResourceSystemFile() {
+ }
+
+ public BizResourceSystemFile(
+ Long id,
+ String fileNo,
+ String labCode,
+ String groupCode,
+ String fileDistributeNo,
+ String fileName,
+ String versionNo,
+ String fileType,
+ String promulgateTime,
+ String executeTime,
+ Integer history,
+ String createTime) {
+ this.id = id;
+ this.fileNo = fileNo;
+ this.labCode = labCode;
+ this.groupCode = groupCode;
+ this.fileDistributeNo = fileDistributeNo;
+ this.fileName = fileName;
+ this.versionNo = versionNo;
+ this.fileType = fileType;
+ this.promulgateTime = promulgateTime;
+ this.executeTime = executeTime;
+ this.history = history;
+ this.createTime = createTime;
+ }
}
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
index f02e6d9..0391b30 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
@@ -77,12 +77,39 @@
@TableField("change_content")
private String changeContent;
+ @DictCodeField(message = "文件类型描述不合法", cacheName = MeterDictCode.FILE_TYPE)
+ @ApiModelProperty(value = "文件类型", dataType = "String", required = true)
+ @TableField("file_category")
+ private Integer fileCategory;
+
+
+ @NotEmpty(message = "文件类型名不能为空")
+ @ApiModelProperty(value = "文件类型名", dataType = "String")
+ @TableField(exist = false)
+ private String fileCategoryName;
+
+ @ApiModelProperty(value = "文件列表来源,1:体系文件,0:其他(现行测试校准检定方法】、【合同执行变更登记表】、【溯源链变更管理】、【要求、委托书及合同评审表】)", dataType = "String",required = true)
+ @TableField("origin")
+ private String origin;
+
+ @ApiModelProperty(value = "文件发放号,审批通过后生成", dataType = "String")
+ @TableField("file_distribute_no")
+ private String fileDistributeNo;
+
@DictCodeField(message = "实验室代码描述不合法", cacheName = MeterDictCode.LAB_CODE)
@ApiModelProperty(value = "实验室代码(字典code)", dataType = "String")
@TableField("lab_code")
private String labCode;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
@ApiModelProperty(value = "实验室代码(字典value)", dataType = "String")
@TableField(exist = false)
private String labCodeName;
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
index 7c1e805..9c7ab72 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
@@ -74,6 +74,10 @@
@TableField("process_id")
private String processId;
+ @ApiModelProperty(value = "收回存档原因", dataType = "String")
+ @TableField("archive_reason")
+ private String archiveReason;
+
/**
* 创建人id
*/
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
index 83656e4..2b516f0 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
@@ -140,6 +140,14 @@
@TableField("file")
private String file;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
/**
* 历史文件(1历史文件0体系文件)
*/
@@ -159,4 +167,35 @@
@ApiModelProperty(value = "标准装置体系文件关联表id", dataType = "Long")
@TableField(exist = false)
private Long standardSystemFileRelationId;
+
+
+ public BizResourceSystemFile() {
+ }
+
+ public BizResourceSystemFile(
+ Long id,
+ String fileNo,
+ String labCode,
+ String groupCode,
+ String fileDistributeNo,
+ String fileName,
+ String versionNo,
+ String fileType,
+ String promulgateTime,
+ String executeTime,
+ Integer history,
+ String createTime) {
+ this.id = id;
+ this.fileNo = fileNo;
+ this.labCode = labCode;
+ this.groupCode = groupCode;
+ this.fileDistributeNo = fileDistributeNo;
+ this.fileName = fileName;
+ this.versionNo = versionNo;
+ this.fileType = fileType;
+ this.promulgateTime = promulgateTime;
+ this.executeTime = executeTime;
+ this.history = history;
+ this.createTime = createTime;
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
index fa9d7db..67023c1 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
@@ -1,11 +1,14 @@
package com.casic.missiles.service.Impl.resource;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.mapper.resource.BizResourceFileGrantNoticeFileMapper;
import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
*
* 资源管理-文件管理-文件发放通知单-发放的文件 服务实现类
@@ -17,4 +20,11 @@
@Service
public class BizResourceFileGrantNoticeFileServiceImpl extends ServiceImpl implements IBizResourceFileGrantNoticeFileService {
+ @Override
+ public List getListByNoteId(Long noteId) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("notice_id",noteId);
+ queryWrapper.eq("origin","1");
+ return this.baseMapper.selectList(queryWrapper);
+ }
}
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
index f02e6d9..0391b30 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
@@ -77,12 +77,39 @@
@TableField("change_content")
private String changeContent;
+ @DictCodeField(message = "文件类型描述不合法", cacheName = MeterDictCode.FILE_TYPE)
+ @ApiModelProperty(value = "文件类型", dataType = "String", required = true)
+ @TableField("file_category")
+ private Integer fileCategory;
+
+
+ @NotEmpty(message = "文件类型名不能为空")
+ @ApiModelProperty(value = "文件类型名", dataType = "String")
+ @TableField(exist = false)
+ private String fileCategoryName;
+
+ @ApiModelProperty(value = "文件列表来源,1:体系文件,0:其他(现行测试校准检定方法】、【合同执行变更登记表】、【溯源链变更管理】、【要求、委托书及合同评审表】)", dataType = "String",required = true)
+ @TableField("origin")
+ private String origin;
+
+ @ApiModelProperty(value = "文件发放号,审批通过后生成", dataType = "String")
+ @TableField("file_distribute_no")
+ private String fileDistributeNo;
+
@DictCodeField(message = "实验室代码描述不合法", cacheName = MeterDictCode.LAB_CODE)
@ApiModelProperty(value = "实验室代码(字典code)", dataType = "String")
@TableField("lab_code")
private String labCode;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
@ApiModelProperty(value = "实验室代码(字典value)", dataType = "String")
@TableField(exist = false)
private String labCodeName;
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
index 7c1e805..9c7ab72 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
@@ -74,6 +74,10 @@
@TableField("process_id")
private String processId;
+ @ApiModelProperty(value = "收回存档原因", dataType = "String")
+ @TableField("archive_reason")
+ private String archiveReason;
+
/**
* 创建人id
*/
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
index 83656e4..2b516f0 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
@@ -140,6 +140,14 @@
@TableField("file")
private String file;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
/**
* 历史文件(1历史文件0体系文件)
*/
@@ -159,4 +167,35 @@
@ApiModelProperty(value = "标准装置体系文件关联表id", dataType = "Long")
@TableField(exist = false)
private Long standardSystemFileRelationId;
+
+
+ public BizResourceSystemFile() {
+ }
+
+ public BizResourceSystemFile(
+ Long id,
+ String fileNo,
+ String labCode,
+ String groupCode,
+ String fileDistributeNo,
+ String fileName,
+ String versionNo,
+ String fileType,
+ String promulgateTime,
+ String executeTime,
+ Integer history,
+ String createTime) {
+ this.id = id;
+ this.fileNo = fileNo;
+ this.labCode = labCode;
+ this.groupCode = groupCode;
+ this.fileDistributeNo = fileDistributeNo;
+ this.fileName = fileName;
+ this.versionNo = versionNo;
+ this.fileType = fileType;
+ this.promulgateTime = promulgateTime;
+ this.executeTime = executeTime;
+ this.history = history;
+ this.createTime = createTime;
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
index fa9d7db..67023c1 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
@@ -1,11 +1,14 @@
package com.casic.missiles.service.Impl.resource;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.mapper.resource.BizResourceFileGrantNoticeFileMapper;
import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
*
* 资源管理-文件管理-文件发放通知单-发放的文件 服务实现类
@@ -17,4 +20,11 @@
@Service
public class BizResourceFileGrantNoticeFileServiceImpl extends ServiceImpl implements IBizResourceFileGrantNoticeFileService {
+ @Override
+ public List getListByNoteId(Long noteId) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("notice_id",noteId);
+ queryWrapper.eq("origin","1");
+ return this.baseMapper.selectList(queryWrapper);
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
index 3d59434..09509ae 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
@@ -1,5 +1,6 @@
package com.casic.missiles.service.Impl.resource;
+import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -8,15 +9,25 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.resource.file.SystemFileListRequest;
import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.enums.NoGenerateFileCodeEnum;
+import com.casic.missiles.enums.NoGenerateRecordTypeCodeEnum;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.mapper.resource.BizResourceSystemFileMapper;
+import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.model.resource.BizResourceSystemFile;
+import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
+import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeService;
import com.casic.missiles.service.resource.IBizResourceSystemFileService;
import com.casic.missiles.utils.DictCodeUtils;
+import com.casic.missiles.utils.NoGeneratorUtil;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
/**
*
* 资源管理-体系文件 服务实现类
@@ -29,14 +40,16 @@
public class BizResourceSystemFileServiceImpl extends ServiceImpl implements IBizResourceSystemFileService {
@Autowired
private BizResourceSystemFileMapper systemFileMapper;
+ @Autowired
+ private IBizResourceFileGrantNoticeFileService fileService;
@Override
public Page listPage(Page page, SystemFileListRequest request) throws Exception {
QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.like(StringUtils.isNotBlank(request.getFileNo()),"file_no", request.getFileNo());
- wrapper.like(StringUtils.isNotBlank(request.getFileDistributeNo()),"file_distribute_no", request.getFileDistributeNo());
- wrapper.like(StringUtils.isNotBlank(request.getFileName()),"file_name", request.getFileName());
- wrapper.eq(StringUtils.isNotBlank(request.getFileType()),"file_type", request.getFileType());
+ wrapper.like(StringUtils.isNotBlank(request.getFileNo()), "file_no", request.getFileNo());
+ wrapper.like(StringUtils.isNotBlank(request.getFileDistributeNo()), "file_distribute_no", request.getFileDistributeNo());
+ wrapper.like(StringUtils.isNotBlank(request.getFileName()), "file_name", request.getFileName());
+ wrapper.eq(StringUtils.isNotBlank(request.getFileType()), "file_type", request.getFileType());
wrapper.eq("history", request.getHistory());
wrapper.orderByDesc("create_time");
Page systemFilePage = systemFileMapper.selectPage(page, wrapper);
@@ -79,4 +92,50 @@
}
throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED);
}
+
+ @Override
+ public void addFileByGrantNotice(Long grantNoticeId) {
+ List fileList = fileService.getListByNoteId(grantNoticeId);
+ if (null != fileList && fileList.size() > 0) {
+ List systemFileList = new ArrayList<>();
+ for (BizResourceFileGrantNoticeFile bizResourceFileGrantNoticeFile : fileList) {
+ //生成发放号
+ String labCode = bizResourceFileGrantNoticeFile.getLabCode();
+ Integer fileType = bizResourceFileGrantNoticeFile.getFileCategory();
+ String classificationCode = "D";
+ switch (fileType) {
+ case 1:
+ classificationCode = "A";
+ break;
+ case 2:
+ classificationCode = "B";
+ break;
+ case 3:
+ classificationCode = "C";
+ break;
+ }
+ Long maxNo = this.baseMapper.selectMaxNo(labCode + "-" + classificationCode + DateUtil.thisYear());
+ String fileDistributeNo = NoGeneratorUtil.generateFileDistributeNo(labCode, classificationCode, maxNo);
+ bizResourceFileGrantNoticeFile.setFileDistributeNo(fileDistributeNo);
+ systemFileList.add(new BizResourceSystemFile(bizResourceFileGrantNoticeFile.getId(),
+ bizResourceFileGrantNoticeFile.getFileNo(),
+ bizResourceFileGrantNoticeFile.getLabCode(),
+ bizResourceFileGrantNoticeFile.getGroupCode(),
+ bizResourceFileGrantNoticeFile.getFileDistributeNo(),
+ bizResourceFileGrantNoticeFile.getFileName(),
+ bizResourceFileGrantNoticeFile.getFileVersion(),
+ bizResourceFileGrantNoticeFile.getFileCategory() + "",
+ bizResourceFileGrantNoticeFile.getPromulgateTime(),
+ bizResourceFileGrantNoticeFile.getExecuteTime(),
+ 0,
+ DateUtil.formatDateTime(new Date())));
+ }
+ //更新发放号至文件列表
+ fileService.updateBatchById(fileList);
+
+ //生成体系文件
+ this.saveBatch(systemFileList);
+ }
+
+ }
}
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
index f02e6d9..0391b30 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
@@ -77,12 +77,39 @@
@TableField("change_content")
private String changeContent;
+ @DictCodeField(message = "文件类型描述不合法", cacheName = MeterDictCode.FILE_TYPE)
+ @ApiModelProperty(value = "文件类型", dataType = "String", required = true)
+ @TableField("file_category")
+ private Integer fileCategory;
+
+
+ @NotEmpty(message = "文件类型名不能为空")
+ @ApiModelProperty(value = "文件类型名", dataType = "String")
+ @TableField(exist = false)
+ private String fileCategoryName;
+
+ @ApiModelProperty(value = "文件列表来源,1:体系文件,0:其他(现行测试校准检定方法】、【合同执行变更登记表】、【溯源链变更管理】、【要求、委托书及合同评审表】)", dataType = "String",required = true)
+ @TableField("origin")
+ private String origin;
+
+ @ApiModelProperty(value = "文件发放号,审批通过后生成", dataType = "String")
+ @TableField("file_distribute_no")
+ private String fileDistributeNo;
+
@DictCodeField(message = "实验室代码描述不合法", cacheName = MeterDictCode.LAB_CODE)
@ApiModelProperty(value = "实验室代码(字典code)", dataType = "String")
@TableField("lab_code")
private String labCode;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
@ApiModelProperty(value = "实验室代码(字典value)", dataType = "String")
@TableField(exist = false)
private String labCodeName;
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
index 7c1e805..9c7ab72 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
@@ -74,6 +74,10 @@
@TableField("process_id")
private String processId;
+ @ApiModelProperty(value = "收回存档原因", dataType = "String")
+ @TableField("archive_reason")
+ private String archiveReason;
+
/**
* 创建人id
*/
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
index 83656e4..2b516f0 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
@@ -140,6 +140,14 @@
@TableField("file")
private String file;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
/**
* 历史文件(1历史文件0体系文件)
*/
@@ -159,4 +167,35 @@
@ApiModelProperty(value = "标准装置体系文件关联表id", dataType = "Long")
@TableField(exist = false)
private Long standardSystemFileRelationId;
+
+
+ public BizResourceSystemFile() {
+ }
+
+ public BizResourceSystemFile(
+ Long id,
+ String fileNo,
+ String labCode,
+ String groupCode,
+ String fileDistributeNo,
+ String fileName,
+ String versionNo,
+ String fileType,
+ String promulgateTime,
+ String executeTime,
+ Integer history,
+ String createTime) {
+ this.id = id;
+ this.fileNo = fileNo;
+ this.labCode = labCode;
+ this.groupCode = groupCode;
+ this.fileDistributeNo = fileDistributeNo;
+ this.fileName = fileName;
+ this.versionNo = versionNo;
+ this.fileType = fileType;
+ this.promulgateTime = promulgateTime;
+ this.executeTime = executeTime;
+ this.history = history;
+ this.createTime = createTime;
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
index fa9d7db..67023c1 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
@@ -1,11 +1,14 @@
package com.casic.missiles.service.Impl.resource;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.mapper.resource.BizResourceFileGrantNoticeFileMapper;
import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
*
* 资源管理-文件管理-文件发放通知单-发放的文件 服务实现类
@@ -17,4 +20,11 @@
@Service
public class BizResourceFileGrantNoticeFileServiceImpl extends ServiceImpl implements IBizResourceFileGrantNoticeFileService {
+ @Override
+ public List getListByNoteId(Long noteId) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("notice_id",noteId);
+ queryWrapper.eq("origin","1");
+ return this.baseMapper.selectList(queryWrapper);
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
index 3d59434..09509ae 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
@@ -1,5 +1,6 @@
package com.casic.missiles.service.Impl.resource;
+import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -8,15 +9,25 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.resource.file.SystemFileListRequest;
import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.enums.NoGenerateFileCodeEnum;
+import com.casic.missiles.enums.NoGenerateRecordTypeCodeEnum;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.mapper.resource.BizResourceSystemFileMapper;
+import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.model.resource.BizResourceSystemFile;
+import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
+import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeService;
import com.casic.missiles.service.resource.IBizResourceSystemFileService;
import com.casic.missiles.utils.DictCodeUtils;
+import com.casic.missiles.utils.NoGeneratorUtil;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
/**
*
* 资源管理-体系文件 服务实现类
@@ -29,14 +40,16 @@
public class BizResourceSystemFileServiceImpl extends ServiceImpl implements IBizResourceSystemFileService {
@Autowired
private BizResourceSystemFileMapper systemFileMapper;
+ @Autowired
+ private IBizResourceFileGrantNoticeFileService fileService;
@Override
public Page listPage(Page page, SystemFileListRequest request) throws Exception {
QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.like(StringUtils.isNotBlank(request.getFileNo()),"file_no", request.getFileNo());
- wrapper.like(StringUtils.isNotBlank(request.getFileDistributeNo()),"file_distribute_no", request.getFileDistributeNo());
- wrapper.like(StringUtils.isNotBlank(request.getFileName()),"file_name", request.getFileName());
- wrapper.eq(StringUtils.isNotBlank(request.getFileType()),"file_type", request.getFileType());
+ wrapper.like(StringUtils.isNotBlank(request.getFileNo()), "file_no", request.getFileNo());
+ wrapper.like(StringUtils.isNotBlank(request.getFileDistributeNo()), "file_distribute_no", request.getFileDistributeNo());
+ wrapper.like(StringUtils.isNotBlank(request.getFileName()), "file_name", request.getFileName());
+ wrapper.eq(StringUtils.isNotBlank(request.getFileType()), "file_type", request.getFileType());
wrapper.eq("history", request.getHistory());
wrapper.orderByDesc("create_time");
Page systemFilePage = systemFileMapper.selectPage(page, wrapper);
@@ -79,4 +92,50 @@
}
throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED);
}
+
+ @Override
+ public void addFileByGrantNotice(Long grantNoticeId) {
+ List fileList = fileService.getListByNoteId(grantNoticeId);
+ if (null != fileList && fileList.size() > 0) {
+ List systemFileList = new ArrayList<>();
+ for (BizResourceFileGrantNoticeFile bizResourceFileGrantNoticeFile : fileList) {
+ //生成发放号
+ String labCode = bizResourceFileGrantNoticeFile.getLabCode();
+ Integer fileType = bizResourceFileGrantNoticeFile.getFileCategory();
+ String classificationCode = "D";
+ switch (fileType) {
+ case 1:
+ classificationCode = "A";
+ break;
+ case 2:
+ classificationCode = "B";
+ break;
+ case 3:
+ classificationCode = "C";
+ break;
+ }
+ Long maxNo = this.baseMapper.selectMaxNo(labCode + "-" + classificationCode + DateUtil.thisYear());
+ String fileDistributeNo = NoGeneratorUtil.generateFileDistributeNo(labCode, classificationCode, maxNo);
+ bizResourceFileGrantNoticeFile.setFileDistributeNo(fileDistributeNo);
+ systemFileList.add(new BizResourceSystemFile(bizResourceFileGrantNoticeFile.getId(),
+ bizResourceFileGrantNoticeFile.getFileNo(),
+ bizResourceFileGrantNoticeFile.getLabCode(),
+ bizResourceFileGrantNoticeFile.getGroupCode(),
+ bizResourceFileGrantNoticeFile.getFileDistributeNo(),
+ bizResourceFileGrantNoticeFile.getFileName(),
+ bizResourceFileGrantNoticeFile.getFileVersion(),
+ bizResourceFileGrantNoticeFile.getFileCategory() + "",
+ bizResourceFileGrantNoticeFile.getPromulgateTime(),
+ bizResourceFileGrantNoticeFile.getExecuteTime(),
+ 0,
+ DateUtil.formatDateTime(new Date())));
+ }
+ //更新发放号至文件列表
+ fileService.updateBatchById(fileList);
+
+ //生成体系文件
+ this.saveBatch(systemFileList);
+ }
+
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
index 403519a..54c960d 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
@@ -9,6 +9,7 @@
import com.casic.missiles.mapper.resource.BizResourceFileGrantNoticeMapper;
import com.casic.missiles.model.resource.BizResourceFileGrantNotice;
import com.casic.missiles.service.listeners.NotifyEventPostProcessor;
+import com.casic.missiles.service.resource.IBizResourceSystemFileService;
import com.casic.missiles.utils.SpringContextUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -33,16 +34,20 @@
});
BizResourceFileGrantNoticeMapper grantNoticeMapper = SpringContextUtil.getBean(BizResourceFileGrantNoticeMapper.class);
+ IBizResourceSystemFileService systemFileService = SpringContextUtil.getBean(IBizResourceSystemFileService.class);
+
BizResourceFileGrantNotice grantNotice = new BizResourceFileGrantNotice();
grantNotice.setId(id);
grantNotice.setApprovalStatus(ApprovalStatusEnum.PASSED);
int updateFlag = grantNoticeMapper.updateById(grantNotice);
- //toDo:生成文件发放号
+
if (updateFlag <= 0) {
log.error("文件发放通知单审批通过后处理失败");
throw new BusinessException(BusinessExceptionEnum.APPROVAL_PROCESSOR_HANDLE_FAILED);
}
+ //toDo:生成文件发放号,生成体系文件
+ systemFileService.addFileByGrantNotice(id);
}
}
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
index f02e6d9..0391b30 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
@@ -77,12 +77,39 @@
@TableField("change_content")
private String changeContent;
+ @DictCodeField(message = "文件类型描述不合法", cacheName = MeterDictCode.FILE_TYPE)
+ @ApiModelProperty(value = "文件类型", dataType = "String", required = true)
+ @TableField("file_category")
+ private Integer fileCategory;
+
+
+ @NotEmpty(message = "文件类型名不能为空")
+ @ApiModelProperty(value = "文件类型名", dataType = "String")
+ @TableField(exist = false)
+ private String fileCategoryName;
+
+ @ApiModelProperty(value = "文件列表来源,1:体系文件,0:其他(现行测试校准检定方法】、【合同执行变更登记表】、【溯源链变更管理】、【要求、委托书及合同评审表】)", dataType = "String",required = true)
+ @TableField("origin")
+ private String origin;
+
+ @ApiModelProperty(value = "文件发放号,审批通过后生成", dataType = "String")
+ @TableField("file_distribute_no")
+ private String fileDistributeNo;
+
@DictCodeField(message = "实验室代码描述不合法", cacheName = MeterDictCode.LAB_CODE)
@ApiModelProperty(value = "实验室代码(字典code)", dataType = "String")
@TableField("lab_code")
private String labCode;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
@ApiModelProperty(value = "实验室代码(字典value)", dataType = "String")
@TableField(exist = false)
private String labCodeName;
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
index 7c1e805..9c7ab72 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
@@ -74,6 +74,10 @@
@TableField("process_id")
private String processId;
+ @ApiModelProperty(value = "收回存档原因", dataType = "String")
+ @TableField("archive_reason")
+ private String archiveReason;
+
/**
* 创建人id
*/
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
index 83656e4..2b516f0 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
@@ -140,6 +140,14 @@
@TableField("file")
private String file;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
/**
* 历史文件(1历史文件0体系文件)
*/
@@ -159,4 +167,35 @@
@ApiModelProperty(value = "标准装置体系文件关联表id", dataType = "Long")
@TableField(exist = false)
private Long standardSystemFileRelationId;
+
+
+ public BizResourceSystemFile() {
+ }
+
+ public BizResourceSystemFile(
+ Long id,
+ String fileNo,
+ String labCode,
+ String groupCode,
+ String fileDistributeNo,
+ String fileName,
+ String versionNo,
+ String fileType,
+ String promulgateTime,
+ String executeTime,
+ Integer history,
+ String createTime) {
+ this.id = id;
+ this.fileNo = fileNo;
+ this.labCode = labCode;
+ this.groupCode = groupCode;
+ this.fileDistributeNo = fileDistributeNo;
+ this.fileName = fileName;
+ this.versionNo = versionNo;
+ this.fileType = fileType;
+ this.promulgateTime = promulgateTime;
+ this.executeTime = executeTime;
+ this.history = history;
+ this.createTime = createTime;
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
index fa9d7db..67023c1 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
@@ -1,11 +1,14 @@
package com.casic.missiles.service.Impl.resource;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.mapper.resource.BizResourceFileGrantNoticeFileMapper;
import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
*
* 资源管理-文件管理-文件发放通知单-发放的文件 服务实现类
@@ -17,4 +20,11 @@
@Service
public class BizResourceFileGrantNoticeFileServiceImpl extends ServiceImpl implements IBizResourceFileGrantNoticeFileService {
+ @Override
+ public List getListByNoteId(Long noteId) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("notice_id",noteId);
+ queryWrapper.eq("origin","1");
+ return this.baseMapper.selectList(queryWrapper);
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
index 3d59434..09509ae 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
@@ -1,5 +1,6 @@
package com.casic.missiles.service.Impl.resource;
+import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -8,15 +9,25 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.resource.file.SystemFileListRequest;
import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.enums.NoGenerateFileCodeEnum;
+import com.casic.missiles.enums.NoGenerateRecordTypeCodeEnum;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.mapper.resource.BizResourceSystemFileMapper;
+import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.model.resource.BizResourceSystemFile;
+import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
+import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeService;
import com.casic.missiles.service.resource.IBizResourceSystemFileService;
import com.casic.missiles.utils.DictCodeUtils;
+import com.casic.missiles.utils.NoGeneratorUtil;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
/**
*
* 资源管理-体系文件 服务实现类
@@ -29,14 +40,16 @@
public class BizResourceSystemFileServiceImpl extends ServiceImpl implements IBizResourceSystemFileService {
@Autowired
private BizResourceSystemFileMapper systemFileMapper;
+ @Autowired
+ private IBizResourceFileGrantNoticeFileService fileService;
@Override
public Page listPage(Page page, SystemFileListRequest request) throws Exception {
QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.like(StringUtils.isNotBlank(request.getFileNo()),"file_no", request.getFileNo());
- wrapper.like(StringUtils.isNotBlank(request.getFileDistributeNo()),"file_distribute_no", request.getFileDistributeNo());
- wrapper.like(StringUtils.isNotBlank(request.getFileName()),"file_name", request.getFileName());
- wrapper.eq(StringUtils.isNotBlank(request.getFileType()),"file_type", request.getFileType());
+ wrapper.like(StringUtils.isNotBlank(request.getFileNo()), "file_no", request.getFileNo());
+ wrapper.like(StringUtils.isNotBlank(request.getFileDistributeNo()), "file_distribute_no", request.getFileDistributeNo());
+ wrapper.like(StringUtils.isNotBlank(request.getFileName()), "file_name", request.getFileName());
+ wrapper.eq(StringUtils.isNotBlank(request.getFileType()), "file_type", request.getFileType());
wrapper.eq("history", request.getHistory());
wrapper.orderByDesc("create_time");
Page systemFilePage = systemFileMapper.selectPage(page, wrapper);
@@ -79,4 +92,50 @@
}
throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED);
}
+
+ @Override
+ public void addFileByGrantNotice(Long grantNoticeId) {
+ List fileList = fileService.getListByNoteId(grantNoticeId);
+ if (null != fileList && fileList.size() > 0) {
+ List systemFileList = new ArrayList<>();
+ for (BizResourceFileGrantNoticeFile bizResourceFileGrantNoticeFile : fileList) {
+ //生成发放号
+ String labCode = bizResourceFileGrantNoticeFile.getLabCode();
+ Integer fileType = bizResourceFileGrantNoticeFile.getFileCategory();
+ String classificationCode = "D";
+ switch (fileType) {
+ case 1:
+ classificationCode = "A";
+ break;
+ case 2:
+ classificationCode = "B";
+ break;
+ case 3:
+ classificationCode = "C";
+ break;
+ }
+ Long maxNo = this.baseMapper.selectMaxNo(labCode + "-" + classificationCode + DateUtil.thisYear());
+ String fileDistributeNo = NoGeneratorUtil.generateFileDistributeNo(labCode, classificationCode, maxNo);
+ bizResourceFileGrantNoticeFile.setFileDistributeNo(fileDistributeNo);
+ systemFileList.add(new BizResourceSystemFile(bizResourceFileGrantNoticeFile.getId(),
+ bizResourceFileGrantNoticeFile.getFileNo(),
+ bizResourceFileGrantNoticeFile.getLabCode(),
+ bizResourceFileGrantNoticeFile.getGroupCode(),
+ bizResourceFileGrantNoticeFile.getFileDistributeNo(),
+ bizResourceFileGrantNoticeFile.getFileName(),
+ bizResourceFileGrantNoticeFile.getFileVersion(),
+ bizResourceFileGrantNoticeFile.getFileCategory() + "",
+ bizResourceFileGrantNoticeFile.getPromulgateTime(),
+ bizResourceFileGrantNoticeFile.getExecuteTime(),
+ 0,
+ DateUtil.formatDateTime(new Date())));
+ }
+ //更新发放号至文件列表
+ fileService.updateBatchById(fileList);
+
+ //生成体系文件
+ this.saveBatch(systemFileList);
+ }
+
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
index 403519a..54c960d 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
@@ -9,6 +9,7 @@
import com.casic.missiles.mapper.resource.BizResourceFileGrantNoticeMapper;
import com.casic.missiles.model.resource.BizResourceFileGrantNotice;
import com.casic.missiles.service.listeners.NotifyEventPostProcessor;
+import com.casic.missiles.service.resource.IBizResourceSystemFileService;
import com.casic.missiles.utils.SpringContextUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -33,16 +34,20 @@
});
BizResourceFileGrantNoticeMapper grantNoticeMapper = SpringContextUtil.getBean(BizResourceFileGrantNoticeMapper.class);
+ IBizResourceSystemFileService systemFileService = SpringContextUtil.getBean(IBizResourceSystemFileService.class);
+
BizResourceFileGrantNotice grantNotice = new BizResourceFileGrantNotice();
grantNotice.setId(id);
grantNotice.setApprovalStatus(ApprovalStatusEnum.PASSED);
int updateFlag = grantNoticeMapper.updateById(grantNotice);
- //toDo:生成文件发放号
+
if (updateFlag <= 0) {
log.error("文件发放通知单审批通过后处理失败");
throw new BusinessException(BusinessExceptionEnum.APPROVAL_PROCESSOR_HANDLE_FAILED);
}
+ //toDo:生成文件发放号,生成体系文件
+ systemFileService.addFileByGrantNotice(id);
}
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceFileGrantNoticeFileService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceFileGrantNoticeFileService.java
index c1e6376..7d2ebd4 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceFileGrantNoticeFileService.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceFileGrantNoticeFileService.java
@@ -3,6 +3,8 @@
import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
/**
*
* 资源管理-文件管理-文件发放通知单-发放的文件 服务类
@@ -13,4 +15,6 @@
*/
public interface IBizResourceFileGrantNoticeFileService extends IService {
+ List getListByNoteId(Long noteId);
+
}
diff --git a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
index 287e594..62b183e 100644
--- a/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
+++ b/casic-metering-common/src/main/java/com/casic/missiles/utils/NoGeneratorUtil.java
@@ -62,4 +62,27 @@
return String.valueOf(builder);
}
+ /**
+ * 文件发放号生成
+ */
+ public static synchronized String generateFileDistributeNo(String labNo, String classificationCode, long nowNum) {
+ //年号
+ int yearNo = DateUtil.thisYear();
+ StringBuilder builder = new StringBuilder();
+ builder.append(labNo);
+ builder.append("-");
+ builder.append(classificationCode);
+ builder.append(yearNo);
+
+ AtomicLong count = new AtomicLong(nowNum);
+ if(nowNum == 0){
+ count = new AtomicLong(0);
+ builder.append("00").append(count.incrementAndGet());
+ }else{
+ String format = String.format("%03d", count.incrementAndGet());
+ builder.append(format);
+ }
+ return String.valueOf(builder);
+ }
+
}
diff --git a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
index 39ea7cc..aab0b1c 100644
--- a/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
+++ b/casic-metering-dao/src/main/java/com/casic/missiles/mapper/resource/BizResourceSystemFileMapper.java
@@ -1,7 +1,9 @@
package com.casic.missiles.mapper.resource;
-import com.casic.missiles.model.resource.BizResourceSystemFile;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.casic.missiles.model.resource.BizResourceSystemFile;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
/**
*
@@ -13,4 +15,9 @@
*/
public interface BizResourceSystemFileMapper extends BaseMapper {
+
+ @Select("SELECT IFNULL(max(RIGHT(file_distribute_no, 3)), 0) from biz_resource_file_grant_notice_file where file_distribute_no LIKE CONCAT('%', #{prefix}, '%') ")
+ Long selectMaxNo(@Param("prefix") String prefix);
+
+
}
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
index f02e6d9..0391b30 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileGrantNoticeFile.java
@@ -77,12 +77,39 @@
@TableField("change_content")
private String changeContent;
+ @DictCodeField(message = "文件类型描述不合法", cacheName = MeterDictCode.FILE_TYPE)
+ @ApiModelProperty(value = "文件类型", dataType = "String", required = true)
+ @TableField("file_category")
+ private Integer fileCategory;
+
+
+ @NotEmpty(message = "文件类型名不能为空")
+ @ApiModelProperty(value = "文件类型名", dataType = "String")
+ @TableField(exist = false)
+ private String fileCategoryName;
+
+ @ApiModelProperty(value = "文件列表来源,1:体系文件,0:其他(现行测试校准检定方法】、【合同执行变更登记表】、【溯源链变更管理】、【要求、委托书及合同评审表】)", dataType = "String",required = true)
+ @TableField("origin")
+ private String origin;
+
+ @ApiModelProperty(value = "文件发放号,审批通过后生成", dataType = "String")
+ @TableField("file_distribute_no")
+ private String fileDistributeNo;
+
@DictCodeField(message = "实验室代码描述不合法", cacheName = MeterDictCode.LAB_CODE)
@ApiModelProperty(value = "实验室代码(字典code)", dataType = "String")
@TableField("lab_code")
private String labCode;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
@ApiModelProperty(value = "实验室代码(字典value)", dataType = "String")
@TableField(exist = false)
private String labCodeName;
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
index 7c1e805..9c7ab72 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceFileRecallArchive.java
@@ -74,6 +74,10 @@
@TableField("process_id")
private String processId;
+ @ApiModelProperty(value = "收回存档原因", dataType = "String")
+ @TableField("archive_reason")
+ private String archiveReason;
+
/**
* 创建人id
*/
diff --git a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
index 83656e4..2b516f0 100644
--- a/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
+++ b/casic-metering-model/src/main/java/com/casic/missiles/model/resource/BizResourceSystemFile.java
@@ -140,6 +140,14 @@
@TableField("file")
private String file;
+ @ApiModelProperty(value = "颁布时间", dataType = "String", required = true)
+ @TableField("promulgate_time")
+ private String promulgateTime;
+
+ @ApiModelProperty(value = "实施时间", dataType = "String", required = true)
+ @TableField("execute_time")
+ private String executeTime;
+
/**
* 历史文件(1历史文件0体系文件)
*/
@@ -159,4 +167,35 @@
@ApiModelProperty(value = "标准装置体系文件关联表id", dataType = "Long")
@TableField(exist = false)
private Long standardSystemFileRelationId;
+
+
+ public BizResourceSystemFile() {
+ }
+
+ public BizResourceSystemFile(
+ Long id,
+ String fileNo,
+ String labCode,
+ String groupCode,
+ String fileDistributeNo,
+ String fileName,
+ String versionNo,
+ String fileType,
+ String promulgateTime,
+ String executeTime,
+ Integer history,
+ String createTime) {
+ this.id = id;
+ this.fileNo = fileNo;
+ this.labCode = labCode;
+ this.groupCode = groupCode;
+ this.fileDistributeNo = fileDistributeNo;
+ this.fileName = fileName;
+ this.versionNo = versionNo;
+ this.fileType = fileType;
+ this.promulgateTime = promulgateTime;
+ this.executeTime = executeTime;
+ this.history = history;
+ this.createTime = createTime;
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
index fa9d7db..67023c1 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceFileGrantNoticeFileServiceImpl.java
@@ -1,11 +1,14 @@
package com.casic.missiles.service.Impl.resource;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.mapper.resource.BizResourceFileGrantNoticeFileMapper;
import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
+import java.util.List;
+
/**
*
* 资源管理-文件管理-文件发放通知单-发放的文件 服务实现类
@@ -17,4 +20,11 @@
@Service
public class BizResourceFileGrantNoticeFileServiceImpl extends ServiceImpl implements IBizResourceFileGrantNoticeFileService {
+ @Override
+ public List getListByNoteId(Long noteId) {
+ QueryWrapper queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("notice_id",noteId);
+ queryWrapper.eq("origin","1");
+ return this.baseMapper.selectList(queryWrapper);
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
index 3d59434..09509ae 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/Impl/resource/BizResourceSystemFileServiceImpl.java
@@ -1,5 +1,6 @@
package com.casic.missiles.service.Impl.resource;
+import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -8,15 +9,25 @@
import com.casic.missiles.dto.ReturnUtil;
import com.casic.missiles.dto.resource.file.SystemFileListRequest;
import com.casic.missiles.enums.BusinessExceptionEnum;
+import com.casic.missiles.enums.NoGenerateFileCodeEnum;
+import com.casic.missiles.enums.NoGenerateRecordTypeCodeEnum;
import com.casic.missiles.exception.BusinessException;
import com.casic.missiles.mapper.resource.BizResourceSystemFileMapper;
+import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.casic.missiles.model.resource.BizResourceSystemFile;
+import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeFileService;
+import com.casic.missiles.service.resource.IBizResourceFileGrantNoticeService;
import com.casic.missiles.service.resource.IBizResourceSystemFileService;
import com.casic.missiles.utils.DictCodeUtils;
+import com.casic.missiles.utils.NoGeneratorUtil;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
/**
*
* 资源管理-体系文件 服务实现类
@@ -29,14 +40,16 @@
public class BizResourceSystemFileServiceImpl extends ServiceImpl implements IBizResourceSystemFileService {
@Autowired
private BizResourceSystemFileMapper systemFileMapper;
+ @Autowired
+ private IBizResourceFileGrantNoticeFileService fileService;
@Override
public Page listPage(Page page, SystemFileListRequest request) throws Exception {
QueryWrapper wrapper = new QueryWrapper<>();
- wrapper.like(StringUtils.isNotBlank(request.getFileNo()),"file_no", request.getFileNo());
- wrapper.like(StringUtils.isNotBlank(request.getFileDistributeNo()),"file_distribute_no", request.getFileDistributeNo());
- wrapper.like(StringUtils.isNotBlank(request.getFileName()),"file_name", request.getFileName());
- wrapper.eq(StringUtils.isNotBlank(request.getFileType()),"file_type", request.getFileType());
+ wrapper.like(StringUtils.isNotBlank(request.getFileNo()), "file_no", request.getFileNo());
+ wrapper.like(StringUtils.isNotBlank(request.getFileDistributeNo()), "file_distribute_no", request.getFileDistributeNo());
+ wrapper.like(StringUtils.isNotBlank(request.getFileName()), "file_name", request.getFileName());
+ wrapper.eq(StringUtils.isNotBlank(request.getFileType()), "file_type", request.getFileType());
wrapper.eq("history", request.getHistory());
wrapper.orderByDesc("create_time");
Page systemFilePage = systemFileMapper.selectPage(page, wrapper);
@@ -79,4 +92,50 @@
}
throw new BusinessException(BusinessExceptionEnum.HANDLE_FAILED);
}
+
+ @Override
+ public void addFileByGrantNotice(Long grantNoticeId) {
+ List fileList = fileService.getListByNoteId(grantNoticeId);
+ if (null != fileList && fileList.size() > 0) {
+ List systemFileList = new ArrayList<>();
+ for (BizResourceFileGrantNoticeFile bizResourceFileGrantNoticeFile : fileList) {
+ //生成发放号
+ String labCode = bizResourceFileGrantNoticeFile.getLabCode();
+ Integer fileType = bizResourceFileGrantNoticeFile.getFileCategory();
+ String classificationCode = "D";
+ switch (fileType) {
+ case 1:
+ classificationCode = "A";
+ break;
+ case 2:
+ classificationCode = "B";
+ break;
+ case 3:
+ classificationCode = "C";
+ break;
+ }
+ Long maxNo = this.baseMapper.selectMaxNo(labCode + "-" + classificationCode + DateUtil.thisYear());
+ String fileDistributeNo = NoGeneratorUtil.generateFileDistributeNo(labCode, classificationCode, maxNo);
+ bizResourceFileGrantNoticeFile.setFileDistributeNo(fileDistributeNo);
+ systemFileList.add(new BizResourceSystemFile(bizResourceFileGrantNoticeFile.getId(),
+ bizResourceFileGrantNoticeFile.getFileNo(),
+ bizResourceFileGrantNoticeFile.getLabCode(),
+ bizResourceFileGrantNoticeFile.getGroupCode(),
+ bizResourceFileGrantNoticeFile.getFileDistributeNo(),
+ bizResourceFileGrantNoticeFile.getFileName(),
+ bizResourceFileGrantNoticeFile.getFileVersion(),
+ bizResourceFileGrantNoticeFile.getFileCategory() + "",
+ bizResourceFileGrantNoticeFile.getPromulgateTime(),
+ bizResourceFileGrantNoticeFile.getExecuteTime(),
+ 0,
+ DateUtil.formatDateTime(new Date())));
+ }
+ //更新发放号至文件列表
+ fileService.updateBatchById(fileList);
+
+ //生成体系文件
+ this.saveBatch(systemFileList);
+ }
+
+ }
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
index 403519a..54c960d 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/listeners/processor/FileGrantNoticeEventPostProcessor.java
@@ -9,6 +9,7 @@
import com.casic.missiles.mapper.resource.BizResourceFileGrantNoticeMapper;
import com.casic.missiles.model.resource.BizResourceFileGrantNotice;
import com.casic.missiles.service.listeners.NotifyEventPostProcessor;
+import com.casic.missiles.service.resource.IBizResourceSystemFileService;
import com.casic.missiles.utils.SpringContextUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@@ -33,16 +34,20 @@
});
BizResourceFileGrantNoticeMapper grantNoticeMapper = SpringContextUtil.getBean(BizResourceFileGrantNoticeMapper.class);
+ IBizResourceSystemFileService systemFileService = SpringContextUtil.getBean(IBizResourceSystemFileService.class);
+
BizResourceFileGrantNotice grantNotice = new BizResourceFileGrantNotice();
grantNotice.setId(id);
grantNotice.setApprovalStatus(ApprovalStatusEnum.PASSED);
int updateFlag = grantNoticeMapper.updateById(grantNotice);
- //toDo:生成文件发放号
+
if (updateFlag <= 0) {
log.error("文件发放通知单审批通过后处理失败");
throw new BusinessException(BusinessExceptionEnum.APPROVAL_PROCESSOR_HANDLE_FAILED);
}
+ //toDo:生成文件发放号,生成体系文件
+ systemFileService.addFileByGrantNotice(id);
}
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceFileGrantNoticeFileService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceFileGrantNoticeFileService.java
index c1e6376..7d2ebd4 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceFileGrantNoticeFileService.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceFileGrantNoticeFileService.java
@@ -3,6 +3,8 @@
import com.casic.missiles.model.resource.BizResourceFileGrantNoticeFile;
import com.baomidou.mybatisplus.extension.service.IService;
+import java.util.List;
+
/**
*
* 资源管理-文件管理-文件发放通知单-发放的文件 服务类
@@ -13,4 +15,6 @@
*/
public interface IBizResourceFileGrantNoticeFileService extends IService {
+ List getListByNoteId(Long noteId);
+
}
diff --git a/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceSystemFileService.java b/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceSystemFileService.java
index 7a8c217..53cd806 100644
--- a/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceSystemFileService.java
+++ b/casic-metering-service/src/main/java/com/casic/missiles/service/resource/IBizResourceSystemFileService.java
@@ -24,4 +24,10 @@
ReturnDTO fileUpdate(BizResourceSystemFile systemFile);
ReturnDTO deleteFile(IdDTO idDto);
+
+ /**
+ * 发放通知单审批通过后根据id生成体系文件
+ * @param grantNoticeId
+ */
+ void addFileByGrantNotice(Long grantNoticeId);
}