diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsInformation/entity/SarLawsInformation.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsInformation/entity/SarLawsInformation.java index bb17782b..c65142bd 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsInformation/entity/SarLawsInformation.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsInformation/entity/SarLawsInformation.java @@ -3,6 +3,7 @@ package com.adc.da.slrs.sarLawsInformation.entity; import cn.afterturn.easypoi.excel.annotation.Excel; import com.adc.da.att.entity.AttFileEO; import com.adc.da.base.page.BasePage; +import com.adc.da.utils.annotation.CompareField; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; @@ -37,6 +38,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 一级资料类别 */ + @CompareField(fieldName = "1级资料分类") @ApiModelProperty("1级资料分类") @TableField(value = "FIRST_TYPE") private String firstType; @@ -44,7 +46,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 一级资料类别名称 */ - @ApiModelProperty(value = "一级资料类别名称") + @ApiModelProperty(value = "1级资料分类名称") // @TableField(exist = false) @Excel(name = "*1级资料分类", orderNum = "0") private String firstTypeName; @@ -52,14 +54,15 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 二级资料类别 */ - @ApiModelProperty(value = "二级资料类别") + @CompareField(fieldName = "2级资料分类") + @ApiModelProperty(value = "2级资料分类") @TableField(value = "SECOND_TYPE") private String secondType; /** * 二级资料类别名称 */ - @ApiModelProperty(value = "二级资料类别名称") + @ApiModelProperty(value = "2级资料分类名称") // @TableField(exist = false) @Excel(name = "*2级资料分类", orderNum = "1") private String secondTypeName; @@ -67,14 +70,15 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 三级资料类别 */ - @ApiModelProperty(value = "三级资料类别") + @CompareField(fieldName = "3级资料分类") + @ApiModelProperty(value = "3级资料分类") @TableField(value = "THIRD_TYPE") private String thirdType; /** * 三级资料类别名称 */ - @ApiModelProperty(value = "三级资料类别名称") + @ApiModelProperty(value = "3级资料分类名称") // @TableField(exist = false) @Excel(name = "*3级资料分类", orderNum = "2") private String thirdTypeName; @@ -82,14 +86,15 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 四级资料类别 */ - @ApiModelProperty(value = "四级资料类别") + @CompareField(fieldName = "4级资料分类") + @ApiModelProperty(value = "4级资料分类") @TableField(value = "FOURTH_TYPE") private String fourthType; /** * 四级资料类别名称 */ - @ApiModelProperty(value = "四级资料类别名称") + @ApiModelProperty(value = "四级资料分类名称") // @TableField(exist = false) @Excel(name = "*4级资料分类", orderNum = "3") private String fourthTypeName; @@ -97,6 +102,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 资料名称 */ + @CompareField(fieldName = "资料名称") @ApiModelProperty(value = "资料名称") @TableField(value = "NAME") @Excel(name = "*资料名称", orderNum = "4") @@ -105,6 +111,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 资料归属部门 */ + @CompareField(fieldName = "资料归属部门") @ApiModelProperty(value = "资料归属部门") @TableField(value = "DEPARTMENT") @Excel(name = "*资料归属部门", orderNum = "5") @@ -113,6 +120,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 作者 */ + @CompareField(fieldName = "作者") @ApiModelProperty(value = "作者") @TableField(value = "AUTHOR") @Excel(name = "作者", orderNum = "6") @@ -121,6 +129,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 上传时间 */ + @CompareField(fieldName = "上传时间") @ApiModelProperty(value = "上传时间") @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd") @DateTimeFormat(pattern = "yyyy-MM-dd") @@ -131,6 +140,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 资料说明 */ + @CompareField(fieldName = "资料说明") @ApiModelProperty(value = "资料说明") @TableField(value = "DESCRIPTION") @Excel(name = "资料说明", orderNum = "8") @@ -139,6 +149,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 资料文件 */ + @CompareField(fieldName = "资料文件") @ApiModelProperty(value = "资料文件") @TableField(value = "INFORMATION_FILE") @Excel(name = "资料文件", orderNum = "9") @@ -154,6 +165,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 可查看者,若设置为空则所有用户均可查看,若设置人员后,仅有可查看者可以查看文件信息。 */ + @CompareField(fieldName = "可查看者") @ApiModelProperty(value = "可查看者") @TableField(exist = false) private String viewableBy; @@ -161,6 +173,7 @@ public class SarLawsInformation extends BasePage implements Serializable { /** * 可下载者,若设置为空则仅有上传人和审批人可以查看,若设置人员后,仅有可下载者可下载文件信息。 */ + @CompareField(fieldName = "可下载者") @ApiModelProperty(value = "可下载者") @TableField(exist = false) private String downloadableBy; diff --git a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsInformation/service/impl/SarLawsInformationServiceImpl.java b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsInformation/service/impl/SarLawsInformationServiceImpl.java index 664a2532..1f0604d8 100644 --- a/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsInformation/service/impl/SarLawsInformationServiceImpl.java +++ b/adc-da-slrs/src/main/java/com/adc/da/slrs/sarLawsInformation/service/impl/SarLawsInformationServiceImpl.java @@ -21,6 +21,7 @@ import com.adc.da.slrs.tsDictionaryType.entity.TsDicType; import com.adc.da.slrs.tsDictionaryType.service.ITsDicTypeService; import com.adc.da.util.LoginUserUtil; import com.adc.da.util.UUIDUtils; +import com.adc.da.utils.annotation.CompareField; import com.adc.da.utils.util.FieldConvertUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; @@ -28,7 +29,6 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.adc.da.slrs.sarLawsInformation.entity.SarLawsInformation; import com.adc.da.slrs.sarLawsInformation.service.SarLawsInformationService; import com.adc.da.slrs.sarLawsInformation.dao.SarLawsInformationDao; -import io.swagger.annotations.ApiModelProperty; import lombok.SneakyThrows; import org.apache.commons.io.FileUtils; import org.apache.commons.lang3.StringUtils; @@ -161,7 +161,8 @@ public class SarLawsInformationServiceImpl extends ServiceImpl wrapper = new LambdaQueryWrapper<>(); wrapper.eq(SarLawsInformationAuth::getUserId, userId); wrapper.and(each -> each.eq(SarLawsInformationAuth::getAuthType, "viewableBy") - .or().eq(SarLawsInformationAuth::getAuthType, "createAndApproveBy")); + .or().eq(SarLawsInformationAuth::getAuthType, "createAndApproveBy") + .or().eq(SarLawsInformationAuth::getAuthType, "downloadableBy")); wrapper.select(SarLawsInformationAuth::getLawsInformationId); List informationAuthList = authService.list(wrapper); if (informationAuthList.size() > 0) { @@ -625,15 +626,13 @@ public class SarLawsInformationServiceImpl extends ServiceImpl compareSarLawsInformation(SarLawsInformation oldInfo, SarLawsInformation newInfo) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); List changes = new ArrayList<>(); - // 需要比较的字段 - String[] fieldArr = {"firstType","secondType","thirdType","fourthType","name", - "department","author","description","informationFile","treeNodeId","viewableBy","downloadableBy"}; - List fieldList = Arrays.asList(fieldArr); // 获取SarLawsInformation类的所有字段 Field[] fields = SarLawsInformation.class.getDeclaredFields(); for (Field field : fields) { - if (fieldList.contains(field.getName())) { + boolean annotationPresent = field.isAnnotationPresent(CompareField.class); + if (annotationPresent) { try { field.setAccessible(true); String oldValue = String.valueOf(field.get(oldInfo)); @@ -681,13 +680,13 @@ public class SarLawsInformationServiceImpl extends ServiceImpl