xiexiang 1 tahun lalu
induk
melakukan
80e4265dc1

+ 3 - 3
src/main/java/cn/cslg/pas/common/dto/business/UpdateProductCategoryDTO.java

@@ -1,11 +1,11 @@
 package cn.cslg.pas.common.dto.business;
 
+import cn.hutool.core.date.DateTime;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Data;
 import org.springframework.format.annotation.DateTimeFormat;
 
-import java.util.Date;
 import java.util.List;
 
 /**
@@ -18,13 +18,13 @@ public class UpdateProductCategoryDTO {
     @Schema(description = "id")
     private Integer id;
     @Schema(description = "产品类别名称")
-    private String Name;
+    private String name;
     @Schema(description = "参考许可费率")
     private Double licenseRate;
     @Schema(description = "上市时间")
     @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
-    private Date marketTime;
+    private DateTime marketTime;
     @Schema(description = "可见类型(0所有人可见、1本人可见、2仅选定人可见、3选定人不可见)")
     private Integer showType;
     @Schema(description = "描述")

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

@@ -19,7 +19,7 @@ public class UpdateProductDTO {
     @Schema(description = "id")
     private Integer id;
     @Schema(description = "产品名称")
-    private String Name;
+    private String name;
     @Schema(description = "参考许可费率")
     private Double licenseRate;
     @Schema(description = "上市时间")

+ 1 - 1
src/main/java/cn/cslg/pas/domain/business/ProductCategory.java

@@ -21,7 +21,7 @@ public class ProductCategory extends BaseEntity<ProductCategory> {
      * 产品类别名称
      */
     @TableField(value = "name")
-    private String Name;
+    private String name;
     /**
      * 参考许可费率
      */

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

@@ -147,7 +147,7 @@ public class ProductCategoryService extends ServiceImpl<ProductCategoryMapper, P
         if(showType != 0 && showType != 1){
             List<String> showPersonIds = productCategoryDTO.getShowPersonIds();
             //0所有人可见,1本人可见
-            if(showPersonIds != null && showPersonIds.size() != 0){
+            if(showPersonIds.size() != 0){
                 for (String showPersonId : showPersonIds) {
                     AssoProductCategoryPerson assoProductCategoryPerson = new AssoProductCategoryPerson();
                     assoProductCategoryPerson.setProductCategoryId(productCategory.getId());
@@ -163,11 +163,11 @@ public class ProductCategoryService extends ServiceImpl<ProductCategoryMapper, P
                     }
                     assoProductCategoryPeople.add(assoProductCategoryPerson);
                 }
-                if(assoProductCategoryPeople != null && assoProductCategoryPeople.size() != 0){
-                    assoProductCategoryPersonService.saveBatch(assoProductCategoryPeople);
-                }
             }
         }
+        if(assoProductCategoryPeople != null && assoProductCategoryPeople.size() != 0){
+            assoProductCategoryPersonService.saveBatch(assoProductCategoryPeople);
+        }
         //判断文件是否为空
         if (files != null && files.size() != 0) {
             try {
@@ -205,18 +205,22 @@ public class ProductCategoryService extends ServiceImpl<ProductCategoryMapper, P
         queryWrapper.in(Product::getCategoryId, ids);
         List<Product> products = productService.list(queryWrapper);
         if (products != null && products.size() != 0) {
-            throw new XiaoShiException("该产品类下有产品");
+            throw new XiaoShiException("该产品类下有产品");
         }
         //根据产品类别id删除产品类别和文件关联表
-        LambdaQueryWrapper<AssoProductCategoryFile> wrapper = new LambdaQueryWrapper<>();
-        wrapper.in(AssoProductCategoryFile::getProductCategoryId, ids);
-        List<AssoProductCategoryFile> assoProductCategoryFiles = assoProductCategoryFileService.list(wrapper);
+        LambdaQueryWrapper<AssoProductCategoryFile> fileWrapper = new LambdaQueryWrapper<>();
+        fileWrapper.in(AssoProductCategoryFile::getProductCategoryId, ids);
+        List<AssoProductCategoryFile> assoProductCategoryFiles = assoProductCategoryFileService.list(fileWrapper);
         List<String> guids = assoProductCategoryFiles.stream().map(AssoProductCategoryFile::getFileGuid).collect(Collectors.toList());
         if (guids.size() != 0) {
             fileManagerService.deleteFileFromFMS(guids);
         }
         //删除产品类别和文件关联表中数据
-        assoProductCategoryFiles.remove(queryWrapper);
+        assoProductCategoryFileService.remove(fileWrapper);
+        //根据产品类别id删除产品类别和可见人员关联表
+        LambdaQueryWrapper<AssoProductCategoryPerson> personWrapper = new LambdaQueryWrapper<>();
+        personWrapper.in(AssoProductCategoryPerson::getProductCategoryId, ids);
+        assoProductCategoryPersonService.remove(personWrapper);
         //根据产品类别id删除产品类别
         this.removeBatchByIds(ids);
         return ids;
@@ -301,11 +305,11 @@ public class ProductCategoryService extends ServiceImpl<ProductCategoryMapper, P
                     }
                     assoProductCategoryPeople.add(assoProductCategoryPerson);
                 }
-                if(assoProductCategoryPeople != null && assoProductCategoryPeople.size() != 0){
-                    assoProductCategoryPersonService.saveBatch(assoProductCategoryPeople);
-                }
             }
         }
+        if(assoProductCategoryPeople != null && assoProductCategoryPeople.size() != 0){
+            assoProductCategoryPersonService.saveBatch(assoProductCategoryPeople);
+        }
         /**
          * 与产品类别有关的文件的处理
          */
@@ -420,6 +424,8 @@ public class ProductCategoryService extends ServiceImpl<ProductCategoryMapper, P
             Personnel personnel = personnels.stream().filter(item -> item.getGuid().equals(productCategoryVO.getCreateId())).findFirst().orElse(null);
             if(personnel != null){
                 productCategoryVO.setCreateName(personnel.getPersonnelName());
+            } else {
+                throw new XiaoShiException("未获取到当前登陆人信息");
             }
             //装载文件信息
             List<AssoProductCategoryFile> assoProductCategoryFilesTemp = assoProductCategoryFiles.stream().filter(item -> item.getProductCategoryId().equals(productCategoryVO.getId())).collect(Collectors.toList());

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

@@ -190,15 +190,20 @@ public class ProductService extends ServiceImpl<ProductMapper, Product> implemen
     @Transactional(rollbackFor = Exception.class)
     public Object deleteMessage(List<Integer> ids) throws IOException {
         //根据产品id删除产品和文件关联
-        LambdaQueryWrapper<AssoProductFile> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.in(AssoProductFile::getProductId, ids);
-        List<AssoProductFile> assoProductFiles = assoProductFileService.list(queryWrapper);
+        LambdaQueryWrapper<AssoProductFile> fileWrapper = new LambdaQueryWrapper<>();
+        fileWrapper.in(AssoProductFile::getProductId, ids);
+        List<AssoProductFile> assoProductFiles = assoProductFileService.list(fileWrapper);
         List<String> guids = assoProductFiles.stream().map(AssoProductFile::getFileGuid).collect(Collectors.toList());
         if (guids.size() != 0) {
             fileManagerService.deleteFileFromFMS(guids);
         }
+        //TODO 需要考虑专题库与报告
         //删除产品和文件关联表
-        assoProductFiles.remove(queryWrapper);
+        assoProductFileService.remove(fileWrapper);
+        //根据产品id删除产品和可见人员关联表
+        LambdaQueryWrapper<AssoProductPerson> personWrapper = new LambdaQueryWrapper<>();
+        personWrapper.in(AssoProductPerson::getProductId, ids);
+        assoProductPersonService.remove(personWrapper);
         //根据产品id删除产品
         this.removeBatchByIds(ids);
         return ids;
@@ -282,11 +287,11 @@ public class ProductService extends ServiceImpl<ProductMapper, Product> implemen
                     }
                     assoProductPeople.add(assoProductPerson);
                 }
-                if(assoProductPeople != null && assoProductPeople.size() != 0){
-                    assoProductPersonService.saveBatch(assoProductPeople);
-                }
             }
         }
+        if(assoProductPeople != null && assoProductPeople.size() != 0){
+            assoProductPersonService.saveBatch(assoProductPeople);
+        }
         /**
          * 与产品有关的文件的处理
          */