lyhzzz 2 gadi atpakaļ
vecāks
revīzija
cd2d2fc75c

+ 8 - 4
src/main/java/com/fdkankan/site/controller/ProjectController.java

@@ -13,6 +13,7 @@ import com.fdkankan.site.request.AppGetSceneInfoParam;
 import com.fdkankan.site.request.ProjectAddSceneParam;
 import com.fdkankan.site.request.ProjectDelSceneParam;
 import com.fdkankan.site.request.ProjectListParam;
+import com.fdkankan.site.service.IProjectBimService;
 import com.fdkankan.site.service.IProjectNumService;
 import com.fdkankan.site.service.IProjectService;
 import com.fdkankan.site.service.IProjectTeamService;
@@ -37,6 +38,8 @@ public class ProjectController extends BaseController {
     IProjectNumService projectNumService;
     @Autowired
     IProjectTeamService projectTeamService;
+    @Autowired
+    IProjectBimService projectBimService;
 
     @GetMapping("/userData")
     public ResultData userData(){
@@ -63,6 +66,7 @@ public class ProjectController extends BaseController {
         projectService.removeById(param.getProjectId());
         projectNumService.delByProjectId(param.getProjectId());
         projectTeamService.delByProjectId(param.getProjectId());
+        projectBimService.delByProjectId(param.getProjectId());
         return ResultData.ok();
     }
 
@@ -91,15 +95,15 @@ public class ProjectController extends BaseController {
     }
 
     @PostMapping("/deleteBim")
-    public ResultData deleteBim(@RequestParam(required = false)ProjectBim projectBim){
+    public ResultData deleteBim(@RequestBody ProjectBim projectBim){
         VUtils.isTure(projectBim.getBimId() == null).throwMessage(ResultCode.PARAM_MISS);
-        projectService.deleteBim(projectBim.getBimId());
+        projectService.deleteBim(projectBim.getBimId(),getToken());
         return ResultData.ok();
     }
 
     @PostMapping("/updateBimName")
-    public ResultData updateBimName(@RequestParam(required = false)ProjectBim projectBim){
-        projectService.updateBimName(projectBim);
+    public ResultData updateBimName(@RequestBody ProjectBim projectBim){
+        projectService.updateBimName(projectBim,getToken());
         return ResultData.ok();
     }
     @PostMapping("/updatePanos")

+ 10 - 1
src/main/java/com/fdkankan/site/controller/UploadController.java

@@ -17,6 +17,7 @@ import com.fdkankan.site.httpClient.bim.BimUploadParam;
 import com.fdkankan.site.httpClient.bim.BusinessStatus;
 import com.fdkankan.site.httpClient.client.BimClient;
 import com.fdkankan.site.service.IProjectBimService;
+import com.fdkankan.site.service.IProjectLogService;
 import com.fdkankan.site.service.impl.UploadService;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
@@ -44,6 +45,8 @@ public class UploadController extends BaseController {
     private String queryPath;
     @Autowired
     private IProjectBimService projectBimService;
+    @Autowired
+    private IProjectLogService projectLogService;
     @Resource
     BimClient bimClient;
 
@@ -76,7 +79,14 @@ public class UploadController extends BaseController {
         ProjectBim projectBim = new ProjectBim();
         projectBim.setProjectId(projectId);
         projectBim.setUserName(JwtUtil.getUserName(getToken()));
+        String bimName = StringUtils.isBlank(projectName) ? file.getOriginalFilename(): projectName;
+        if(bimName.contains(".")){
+            bimName = bimName.split("\\.")[0];
+        }
+        projectBim.setBimName(bimName);
         projectBimService.save(projectBim);
+        projectLogService.addLog(projectBim.getProjectId(),"新增BIM:"+projectBim.getBimName(),getToken(),null);
+
         File localFile = null;
         try {
             localFile = uploadService.uploadFile(file);
@@ -88,7 +98,6 @@ public class UploadController extends BaseController {
                 throw new BusinessException(ResultCode.UPLOAD_BIM_ERROR);
             }
 
-            projectBim.setBimName(Objects.requireNonNull(file.getOriginalFilename()).split("\\.")[0]);
             projectBim.setBimLocalFilePath(queryPath + ossKey);
             projectBim.setFileName(file.getOriginalFilename());
             projectBimService.updateById(projectBim);

+ 5 - 0
src/main/java/com/fdkankan/site/mapper/IProjectMapper.java

@@ -3,6 +3,10 @@ package com.fdkankan.site.mapper;
 import com.fdkankan.site.entity.Project;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+import java.util.Set;
 
 /**
  * <p>
@@ -15,4 +19,5 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface IProjectMapper extends BaseMapper<Project> {
 
+    List<Project> getAndDelByIds(@Param("projectIds") Set<Integer> projectIds);
 }

+ 2 - 0
src/main/java/com/fdkankan/site/service/IProjectBimService.java

@@ -18,4 +18,6 @@ public interface IProjectBimService extends IService<ProjectBim> {
     List<ProjectBim> getByProjectId(Integer projectId);
 
     void updateBimName(ProjectBim projectBim);
+
+    void delByProjectId(Integer projectId);
 }

+ 4 - 2
src/main/java/com/fdkankan/site/service/IProjectService.java

@@ -40,13 +40,15 @@ public interface IProjectService extends IService<Project> {
 
     void over(Project param);
 
-    void deleteBim(Integer bimId);
+    void deleteBim(Integer bimId,String token);
 
     HashMap<Integer, Project> getByIds(Set<Integer> projectIds);
 
     void updateName(Project param);
 
-    void updateBimName(ProjectBim projectBim);
+    void updateBimName(ProjectBim projectBim,String token);
 
     void updatePanos(Project project);
+
+    HashMap<Integer, Project> getAndDelByIds(Set<Integer> projectIds);
 }

+ 7 - 0
src/main/java/com/fdkankan/site/service/impl/ProjectBimServiceImpl.java

@@ -44,4 +44,11 @@ public class ProjectBimServiceImpl extends ServiceImpl<IProjectBimMapper, Projec
         }
         this.update(wrapper);
     }
+
+    @Override
+    public void delByProjectId(Integer projectId) {
+        LambdaQueryWrapper<ProjectBim> wrapper = new LambdaQueryWrapper<>();
+        wrapper.eq(ProjectBim::getProjectId,projectId);
+        this.remove(wrapper);
+    }
 }

+ 5 - 2
src/main/java/com/fdkankan/site/service/impl/ProjectLogServiceImpl.java

@@ -54,11 +54,12 @@ public class ProjectLogServiceImpl extends ServiceImpl<IProjectLogMapper, Projec
         }
         LambdaQueryWrapper<ProjectLog> wrapper = new LambdaQueryWrapper<>();
         wrapper.in(ProjectLog::getProjectId,projectIdSet);
+        wrapper.orderByDesc(ProjectLog::getCreateTime);
 
         Page<ProjectLog> page = this.page(new Page<>(param.getPageNum(), param.getPageSize()),wrapper);
         List<ProjectLogVo> voList = new ArrayList<>();
         Set<Integer> projectIds = page.getRecords().stream().map(ProjectLog::getProjectId).collect(Collectors.toSet());
-        HashMap<Integer,Project> projectHashMap = projectService.getByIds(projectIds);
+        HashMap<Integer,Project> projectHashMap = projectService.getAndDelByIds(projectIds);
 
         Set<String> numSet = new HashSet<>();
         Set<String> numListSet = page.getRecords().stream().map(ProjectLog::getNum).collect(Collectors.toSet());
@@ -114,7 +115,9 @@ public class ProjectLogServiceImpl extends ServiceImpl<IProjectLogMapper, Projec
             log.setProjectId(projectId);
             log.setUserName(JwtUtil.getUserName(token));
             log.setLogMsg(logMsg);
-            log.setNum(JSONObject.toJSONString(numList));
+            if(numList != null && numList.size() >0){
+                log.setNum(JSONObject.toJSONString(numList));
+            }
             this.save(log);
         }catch (Exception e){
             e.printStackTrace();

+ 19 - 3
src/main/java/com/fdkankan/site/service/impl/ProjectServiceImpl.java

@@ -248,8 +248,12 @@ public class ProjectServiceImpl extends ServiceImpl<IProjectMapper, Project> imp
     }
 
     @Override
-    public void deleteBim(Integer bimId) {
-        projectBimService.removeById(bimId);
+    public void deleteBim(Integer bimId,String token) {
+        ProjectBim bim = projectBimService.getById(bimId);
+        if(bim != null){
+            projectLogService.addLog(bim.getProjectId(),"删除BIM:"+bim.getBimName(),token,null);
+            projectBimService.removeById(bimId);
+        }
     }
 
     @Override
@@ -265,6 +269,16 @@ public class ProjectServiceImpl extends ServiceImpl<IProjectMapper, Project> imp
     }
 
     @Override
+    public HashMap<Integer, Project> getAndDelByIds(Set<Integer> projectIds) {
+        HashMap<Integer, Project> map = new HashMap<>();
+        if(projectIds.size() >0){
+            List<Project> list = this.getBaseMapper().getAndDelByIds(projectIds);
+            list.forEach(entity -> map.put(entity.getProjectId(),entity));
+        }
+        return map;
+    }
+
+    @Override
     public void updateName(Project param) {
         VUtils.isTure(param.getProjectId() == null).throwMessage(ResultCode.PARAM_MISS);
 
@@ -283,8 +297,10 @@ public class ProjectServiceImpl extends ServiceImpl<IProjectMapper, Project> imp
     }
 
     @Override
-    public void updateBimName(ProjectBim projectBim) {
+    public void updateBimName(ProjectBim projectBim,String token) {
         projectBimService.updateBimName(projectBim);
+        projectLogService.addLog(projectBim.getProjectId(),"修改BIM名称:"+projectBim.getBimName(),token,null);
+
     }
 
     @Override

+ 6 - 0
src/main/resources/mapper/site/ProjectMapper.xml

@@ -2,4 +2,10 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fdkankan.site.mapper.IProjectMapper">
 
+    <select id="getAndDelByIds" resultType="com.fdkankan.site.entity.Project">
+        select * from t_project where project_id in
+        <foreach item="projectId" collection="projectIds" open="(" separator="," close=")">
+            #{projectId}
+        </foreach>
+    </select>
 </mapper>