lwhhszx 1 год назад
Родитель
Сommit
8c4d32b3f9

+ 1 - 0
src/main/java/cn/cslg/pas/common/dto/business/QueryTreeNodeDTO.java

@@ -25,5 +25,6 @@ public class QueryTreeNodeDTO {
      * 节点名称
      */
     private String name;
+    private Integer projectId;
 
 }

+ 3 - 1
src/main/java/cn/cslg/pas/common/vo/ProductOrCategoryVO.java

@@ -3,6 +3,8 @@ package cn.cslg.pas.common.vo;
 import lombok.Data;
 import lombok.experimental.Accessors;
 
+import java.util.List;
+
 /**
  * @author 李仁杰
  * @date 2023-11-12
@@ -29,6 +31,6 @@ public class ProductOrCategoryVO {
      * Back:数据权限描述
      */
     private Integer type;
-
+    private List<Integer> valueIds;
 
 }

+ 11 - 3
src/main/java/cn/cslg/pas/service/business/PatentProjectService.java

@@ -37,6 +37,7 @@ import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -377,6 +378,9 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
             //遍历传入的树
             for (ProjectTreesDTO projectTreesDTO : trees) {
                 List<Integer> valueIds = projectTreesDTO.getValueIds();
+                if(valueIds==null||valueIds.size()==0){
+                    valueIds = Arrays.asList(0);
+                }
                 //遍历值id集合
                 for (Integer valueId : valueIds) {
                     AssoProjectTreeNode assoProjectTreeNode = new AssoProjectTreeNode();
@@ -547,6 +551,9 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
             //遍历传入的树
             for (ProjectTreesDTO projectTreesDTO : trees) {
                 List<Integer> valueIds = projectTreesDTO.getValueIds();
+                if(valueIds==null||valueIds.size()==0){
+                    valueIds = Arrays.asList(0);
+                }
                 //遍历值id集合
                 for (Integer valueId : valueIds) {
                     AssoProjectTreeNode assoProjectTreeNode = new AssoProjectTreeNode();
@@ -845,10 +852,12 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
                 AssoProjectTreeNode assoProjectTreeNode = assoProjectTreeNodes.stream().filter(item -> item.getProjectId().equals(patentProjectVO.getId()) && (item.getTreeType().equals(2) || item.getTreeType().equals(3))).
                         findFirst().orElse(null);
                 if (assoProjectTreeNode != null) {
+                    ProductOrCategoryVO productOrCategoryVO = new ProductOrCategoryVO();
+                    productOrCategoryVO.setValueIds(Arrays.asList(assoProjectTreeNode.getValueId()));
                     if (assoProjectTreeNode.getTreeType().equals(2)) {
                         Product product = products.stream().filter(item -> item.getId().equals(assoProjectTreeNode.getFieldId())).findFirst().orElse(null);
                         if (product != null) {
-                            ProductOrCategoryVO productOrCategoryVO = new ProductOrCategoryVO();
+
                             productOrCategoryVO.setName(product.getName());
                             productOrCategoryVO.setId(product.getId());
                             productOrCategoryVO.setType(2);
@@ -857,7 +866,6 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
                     } else if (assoProjectTreeNode.getTreeType().equals(3)) {
                         ProductCategory productCategory = productCategories.stream().filter(item -> item.getId().equals(assoProjectTreeNode.getFieldId())).findFirst().orElse(null);
                         if (productCategory != null) {
-                            ProductOrCategoryVO productOrCategoryVO = new ProductOrCategoryVO();
                             productOrCategoryVO.setName(productCategory.getName());
                             productOrCategoryVO.setId(productCategory.getId());
                             productOrCategoryVO.setType(3);
@@ -876,7 +884,7 @@ public class PatentProjectService extends ServiceImpl<PatentProjectMapper, Paten
         String rootSql ="(p.create_id ="+id+" or p.head_id="+id+" or p.id in (select project_id from asso_project_person where person_id ="+id+"))";
         if(sqls.get(0)!=null&&!sqls.get(0).equals(""))
         {
-            sqls.set(0,rootSql+" and"+"("+sqls.get(0)+")");
+            sqls.set(0,"("+rootSql+") and"+"("+sqls.get(0)+")");
 
         }
         else {

+ 1 - 1
src/main/java/cn/cslg/pas/service/business/ProductCategoryService.java

@@ -515,7 +515,7 @@ public class ProductCategoryService extends ServiceImpl<ProductCategoryMapper, P
                 " person_id="+id+" and role=2))";
         if(sqls.get(0)!=null&&!sqls.get(0).equals(""))
         {
-            sqls.set(0,rootSql+" and"+"("+sqls.get(0)+")");
+            sqls.set(0,"("+rootSql+") and"+"("+sqls.get(0)+")");
 
         }
         else {

+ 1 - 1
src/main/java/cn/cslg/pas/service/business/ProductService.java

@@ -507,7 +507,7 @@ public class ProductService extends ServiceImpl<ProductMapper, Product> implemen
                 " person_id="+id+" and role=2))";
         if(sqls.get(0)!=null&&!sqls.get(0).equals(""))
         {
-            sqls.set(0,rootSql+" and"+"("+sqls.get(0)+")");
+            sqls.set(0,"("+rootSql+") and"+"("+sqls.get(0)+")");
 
         }
         else {

+ 15 - 4
src/main/java/cn/cslg/pas/service/business/TreeNodeService.java

@@ -14,6 +14,7 @@ import cn.cslg.pas.common.vo.ReTreeNodeVO;
 import cn.cslg.pas.common.vo.business.ProductVO;
 import cn.cslg.pas.common.vo.business.TreeNodeVO;
 import cn.cslg.pas.common.vo.business.TreePathVO;
+import cn.cslg.pas.domain.business.AssoProjectTreeNode;
 import cn.cslg.pas.domain.business.AssoTreeNodeFile;
 import cn.cslg.pas.domain.business.TreeNode;
 import cn.cslg.pas.exception.UnLoginException;
@@ -71,6 +72,9 @@ public class TreeNodeService extends ServiceImpl<TreeNodeMapper, TreeNode> imple
     @Autowired
     private PermissionService permissionService;
 
+    @Autowired
+    private AssoProjectTreeNodeService assoProjectTreeNodeService;
+
     @Override
     public Object queryMessage(QueryRequest queryRequest) throws Exception {
         List<String> sqls = formatQueryService.reSqls(queryRequest, "treeNode");
@@ -102,17 +106,24 @@ public class TreeNodeService extends ServiceImpl<TreeNodeMapper, TreeNode> imple
     public Records queryMessage(QueryTreeNodeDTO queryTreeNodeDTO) throws Exception {
         //返回数据
         Records records = new Records();
-
         List<ReTreeNodeVO> reTreeNodeVOS = new ArrayList<>();
         Integer type = queryTreeNodeDTO.getType();
         Integer typeId = queryTreeNodeDTO.getTypeId();
-
+        Integer projectId = queryTreeNodeDTO.getProjectId();
         //校验格式
         if (type == null || typeId == null) {
             throw new XiaoShiException("参数错误");
         }
-
-        //
+        if (projectId != null) {
+            LambdaQueryWrapper<AssoProjectTreeNode> queryWrapper = new LambdaQueryWrapper<>();
+            queryWrapper.eq(AssoProjectTreeNode::getProjectId, projectId);
+            AssoProjectTreeNode assoProjectTreeNode = assoProjectTreeNodeService.getOne(queryWrapper, false);
+            if (assoProjectTreeNode != null) {
+                if (!assoProjectTreeNode.getValueId().equals(0)) {
+                    queryTreeNodeDTO.setId(assoProjectTreeNode.getValueId());
+                }
+            }
+        }
         List<TreeNodeVO> treeNodes = treeNodeMapper.getTreeNode(queryTreeNodeDTO);
 
         //如果根据名称查询

+ 1 - 0
src/main/java/cn/cslg/pas/service/business/es/EsCustomFieldService.java

@@ -786,6 +786,7 @@ public class EsCustomFieldService {
             case 0:
             case 1:
             case 2:
+            case 10:
                 value.forEach(item -> {
                     FieldValueVO fieldValueVO = new FieldValueVO();
                     fieldValueVO.setValue(item);

+ 14 - 1
src/main/java/cn/cslg/pas/service/business/es/EsPatentService.java

@@ -27,6 +27,7 @@ import co.elastic.clients.elasticsearch.ElasticsearchClient;
 import co.elastic.clients.elasticsearch._types.SortOrder;
 import co.elastic.clients.elasticsearch._types.query_dsl.Query;
 import co.elastic.clients.elasticsearch._types.query_dsl.QueryBuilders;
+import co.elastic.clients.elasticsearch.core.DeleteResponse;
 import co.elastic.clients.elasticsearch.core.SearchRequest;
 import co.elastic.clients.elasticsearch.core.SearchResponse;
 import co.elastic.clients.elasticsearch.core.search.Hit;
@@ -524,7 +525,12 @@ public class EsPatentService {
     }
 
 
-
+    /**
+     * 根据id查询
+     * @param ids
+     * @return
+     * @throws Exception
+     */
     public List<Hit<Patent>>  getById(List<String> ids) throws Exception {
         List<Hit<Patent>> patents =new ArrayList<>();
         SearchRequest.Builder builder = new SearchRequest.Builder();
@@ -539,4 +545,11 @@ public class EsPatentService {
         return patents;
         }
 
+    public void removeById(String id) throws IOException {
+        DeleteResponse deleteResponse = client.delete(deleteRequest ->
+                deleteRequest.index("patent").id(id)
+        );
+
+
+    }
 }

+ 2 - 0
src/main/java/cn/cslg/pas/service/business/es/EsScratchWordsService.java

@@ -30,6 +30,7 @@ import co.elastic.clients.elasticsearch._types.query_dsl.QueryBuilders;
 import co.elastic.clients.elasticsearch.core.*;
 import co.elastic.clients.elasticsearch.core.search.Hit;
 import co.elastic.clients.elasticsearch.nodes.Stats;
+import co.elastic.clients.elasticsearch.sql.QueryResponse;
 import co.elastic.clients.json.JsonData;
 import com.alibaba.fastjson.JSON;
 import com.alibaba.fastjson.JSONObject;
@@ -215,6 +216,7 @@ public class EsScratchWordsService {
                 deleteRequest.index("patent_marking").id(id)
         );
 
+
     }
 
 

+ 14 - 1
src/main/java/cn/cslg/pas/service/business/es/EsService.java

@@ -429,7 +429,7 @@ public class EsService {
 
     //更新patent
     public Integer updatePatent(Patent patent, String id) {
-        UpdateRequest<Patent, Patent> req;
+        UpdateRequest<Patent,Patent> req;
         req = UpdateRequest.of(
                 b -> b.index("patent").id(id)
                         .doc(patent)
@@ -442,6 +442,19 @@ public class EsService {
         }
     }
 
+    //更新patent
+    public Integer updatePatentById(Patent patent, String id) {
+        UpdateRequest<Patent,Patent> req;
+        req = UpdateRequest.of(
+                b -> b.index("patent").id(id)
+                        .doc(patent));
+        try {
+            client.update(req, Patent.class);
+            return 1;
+        } catch (IOException e) {
+            return -1;
+        }
+    }
     /*POST /patent/_update_by_query
     {
         "script": {