Эх сурвалжийг харах

Merge branch 'refs/heads/feature-lihb-20250716-shiyan' into test-merge

# Conflicts:
#	blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java
LHB 3 долоо хоног өмнө
parent
commit
e1cbfef1ef

+ 8 - 0
blade-service-api/blade-archive-api/src/main/java/org/springblade/archive/entity/ArchivesAuto.java

@@ -24,6 +24,7 @@ import java.time.ZoneId;
 
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.annotations.ApiModelProperty;
+import org.apache.commons.lang.StringUtils;
 import org.springblade.archive.trans.ArchiveAutoVo;
 import org.springblade.archive.trans.ArchiveTreeVo;
 import org.springblade.core.mp.base.BaseEntity;
@@ -270,6 +271,13 @@ public class ArchivesAuto extends BaseEntity {
 
         // 4. 设置默认值(根据业务需求)
         this.setIsAutoFile(0);
+        //没生成封面并且文件数量为1的,就是上传的案卷文件
+        if (StringUtils.isEmpty(this.getOutUrl())
+                && (this.getFileN() != null && this.getFileN() == 1)) {
+            this.setIsAutoFile(1);
+        }
+
+
         this.setIsArchive(1);
         this.setIsDeleted(0);
     }

+ 6 - 0
blade-service-api/blade-business-api/src/main/java/org/springblade/business/entity/StandardInfo.java

@@ -104,4 +104,10 @@ public class StandardInfo {
      */
     @TableField(exist = false)
     private String parentName;
+
+    /**
+     * 父级名称
+     */
+    @TableField(exist = false)
+    private String nameEnd;
 }

+ 2 - 1
blade-service/blade-archive/src/main/java/org/springblade/archive/service/impl/ArchivesAutoServiceImpl.java

@@ -83,6 +83,7 @@ import org.springframework.scheduling.annotation.Async;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springframework.transaction.annotation.Transactional;
+
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
@@ -1601,7 +1602,7 @@ public class ArchivesAutoServiceImpl extends BaseServiceImpl<ArchivesAutoMapper,
 
 	@Override
 	public List<ArchivesAutoVO5> selectArchivesAutoFileFormDownload(Long projectId, Long contractId, List<String> ids) {
-		List<ArchivesAutoVO5> list = this.baseMapper.selectArchivesAutoFileFormDownload(projectId, ids);
+		List<ArchivesAutoVO5> list = this.baseMapper.selectArchivesAutoFileFormDownload(projectId, contractId, ids);
 		List<DictBiz> sheetSourceList1 = this.iDictBizClient.getList("storage_period", "notRoot").getData();
 		list.forEach(vos -> {
 			if (StringUtils.isNotEmpty(vos.getStorageTime())) {

+ 40 - 4
blade-service/blade-business/src/main/java/org/springblade/business/mapper/StandardInfoMapper.xml

@@ -72,7 +72,15 @@
     </select>
     <select id="findByParentId" resultType="org.springblade.business.entity.StandardInfo">
         select
-            <include refid="Base_Column_List"/>,concat(symbol,name) symbolName
+            <include refid="Base_Column_List"/>,
+            case
+                when
+                    symbolName = '~'
+                then
+                    a.name
+                else
+                    concat(a.symbol,a.name)
+            end symbolName
         FROM
             u_standard_info
         WHERE
@@ -111,7 +119,17 @@
 
     <select id="getConditionSet" resultMap="BaseResultConditionSet">
         select
-            <include refid="Base_Column_Join_List"/>, concat(a.symbol,a.name) symbolName,b.group_id
+            <include refid="Base_Column_Join_List"/>,
+            case
+                when
+                    symbolName = '~'
+                then
+                    a.name
+                else
+                    concat(a.symbol,a.name)
+            end symbolName,
+
+            b.group_id
         from
             u_standard_info a
             INNER join u_standard_info p on a.parent_id = p.id and a.is_deleted = p.is_deleted
@@ -212,7 +230,16 @@
     </sql>
     <select id="getElementJoin" resultMap="BaseResultElementJoin">
         select
-            <include refid="Base_Column_Join_List"/>, concat(a.symbol,a.name) symbolName,b.group_id
+            <include refid="Base_Column_Join_List"/>,
+            case
+                when
+                    symbolName = '~'
+                then
+                    a.name
+                else
+                    concat(a.symbol,a.name)
+            end symbolName,
+            b.group_id
         from
             u_standard_info a
             INNER JOIN u_standard_info c on a.parent_id = c.id and a.is_deleted = c.is_deleted
@@ -286,7 +313,16 @@
 
     <select id="effectPreview" resultMap="BaseResultElementJoin">
         SELECT
-            a.*, concat(a.symbol,a.name) symbolName,null group_id
+            a.*,
+            case
+                when
+                    symbolName = '~'
+                then
+                    a.name
+                else
+                concat(a.symbol,a.name)
+            end symbolName,
+            null group_id
         FROM
             u_standard_info a
                 INNER JOIN u_standard_info_join b ON a.id = b.standard_info_left_id

+ 18 - 3
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/UStandardInfoServiceImpl.java

@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.apache.commons.lang.math.NumberUtils;
 import org.springblade.business.dto.StandardInfoJoinDTO;
 import org.springblade.business.dto.StandardInfoPrivateJoinDTO;
 import org.springblade.business.dto.StandardInfoDTO;
@@ -81,6 +82,20 @@ public class UStandardInfoServiceImpl extends ServiceImpl<StandardInfoMapper, St
                 item.setParentId(uStandardInfo.getId());
                 item.setStandardId(uStandardInfo.getStandardId());
                 item.setCreateUser(user.getUserId());
+
+                //判断符号之后的数据是否为数字
+                if (StringUtils.isNotEmpty(item.getSymbol())) {
+                    if (!NumberUtils.isNumber(item.getName())) {
+                        throw new ServiceException("数据错误,未知字符");
+                    }
+                    //如果是范围符号 则单独处理数据
+                    if(StringUtils.equals(item.getSymbol(),"~")){
+                        if (!NumberUtils.isNumber(item.getNameEnd())) {
+                            throw new ServiceException("数据错误,未知字符");
+                        }
+                        item.setName(item.getName() + "~" + item.getNameEnd());
+                    }
+                }
             });
 
             //把父级对象转出来单独保存
@@ -92,7 +107,7 @@ public class UStandardInfoServiceImpl extends ServiceImpl<StandardInfoMapper, St
             return true;
         } catch (BeansException e) {
             e.printStackTrace();
-            throw new ServiceException("添加失败");
+            throw new ServiceException(e.getMessage());
         }
     }
 
@@ -206,7 +221,7 @@ public class UStandardInfoServiceImpl extends ServiceImpl<StandardInfoMapper, St
                 Collections.sort(newRightIds);
 
                 String newRightIdsStr = String.join(",", newRightIds.stream().map(String::valueOf).collect(Collectors.toList()));
-                if(CollectionUtil.isNotEmpty(newRightIds)){
+                if (CollectionUtil.isNotEmpty(newRightIds)) {
                     //把左Id加进来 确保只有在左id相同的情况下才进行判断
                     newRightIdsStr = newRightIdsStr + "," + leftId;
                 }
@@ -356,7 +371,7 @@ public class UStandardInfoServiceImpl extends ServiceImpl<StandardInfoMapper, St
     @Override
     public List<StandardInfoPrivateJoinVO> effectPreview(String ids) {
         List<Long> collect = Arrays.stream(ids.split(",")).map(Long::parseLong).collect(Collectors.toList());
-        return baseMapper.effectPreview(collect,collect.size());
+        return baseMapper.effectPreview(collect, collect.size());
     }
 }