Forráskód Böngészése

Merge branch 'feature-20220923' into release

# Conflicts:
#	src/main/java/com/fdkankan/scene/schedule/ScheduleJob.java
dengsixing 2 éve
szülő
commit
4da5eac0b5

+ 0 - 20
src/main/java/com/fdkankan/scene/bean/SceneBean.java

@@ -1,20 +0,0 @@
-package com.fdkankan.scene.bean;
-
-import lombok.Data;
-
-/**
- * <p>
- * TODO
- * </p>
- *
- * @author dengsixing
- * @since 2022/10/9
- **/
-@Data
-public class SceneBean {
-
-    private String num;
-
-    private String dataSource;
-
-}

+ 0 - 18
src/main/java/com/fdkankan/scene/controller/TestController.java

@@ -1,10 +1,5 @@
 package com.fdkankan.scene.controller;
 
-import com.fdkankan.scene.service.ISceneCleanService;
-import com.fdkankan.web.response.ResultData;
-import com.fdkankan.fyun.face.FYunFileServiceInterface;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
@@ -20,17 +15,4 @@ import org.springframework.web.bind.annotation.RestController;
 @RequestMapping("/test")
 public class TestController {
 
-    @Autowired
-    private FYunFileServiceInterface fYunFileServiceInterface;
-    @Autowired
-    private ISceneCleanService sceneCleanService;
-    @Autowired
-    private FYunFileServiceInterface fYunFileService;
-
-    @GetMapping("/test")
-    public ResultData test(String path){
-        fYunFileService.uploadFile("C:\\Users\\4dage\\Desktop\\新建文件夹\\view360_fS8fY533478_skybox4.jpg","test_20221013/view360_fS8fY533478_skybox4.jpg");
-        return ResultData.ok();
-    }
-
 }

+ 0 - 63
src/main/java/com/fdkankan/scene/entity/SceneClean.java

@@ -1,63 +0,0 @@
-package com.fdkankan.scene.entity;
-
-import com.baomidou.mybatisplus.annotation.IdType;
-import com.baomidou.mybatisplus.annotation.TableField;
-import com.baomidou.mybatisplus.annotation.TableId;
-import com.baomidou.mybatisplus.annotation.TableLogic;
-import com.baomidou.mybatisplus.annotation.TableName;
-import java.io.Serializable;
-import java.util.Date;
-import lombok.Getter;
-import lombok.Setter;
-
-/**
- * <p>
- * 
- * </p>
- *
- * @author 
- * @since 2022-10-09
- */
-@Getter
-@Setter
-@TableName("t_scene_clean")
-public class SceneClean implements Serializable {
-
-    private static final long serialVersionUID = 1L;
-
-    @TableId(value = "id", type = IdType.AUTO)
-    private Long id;
-
-    /**
-     * 场景码
-     */
-    @TableField("num")
-    private String num;
-
-    /**
-     * 是否已清除资源(0-否,1-是)
-     */
-    @TableField("state")
-    private Integer state;
-
-    /**
-     * 创建时间
-     */
-    @TableField("create_time")
-    private Date createTime;
-
-    /**
-     * 更新时间
-     */
-    @TableField("update_time")
-    private Date updateTime;
-
-    /**
-     * A-有效,I-无效
-     */
-    @TableLogic(value = "A", delval = "I")
-    @TableField("rec_status")
-    private String recStatus;
-
-
-}

+ 0 - 26
src/main/java/com/fdkankan/scene/mapper/ISceneCleanMapper.java

@@ -1,26 +0,0 @@
-package com.fdkankan.scene.mapper;
-
-import com.fdkankan.scene.bean.SceneBean;
-import com.fdkankan.scene.entity.SceneClean;
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import java.util.Date;
-import java.util.List;
-import org.apache.ibatis.annotations.Mapper;
-import org.apache.ibatis.annotations.Param;
-import org.apache.ibatis.annotations.Select;
-
-/**
- * <p>
- *  Mapper 接口
- * </p>
- *
- * @author 
- * @since 2022-10-09
- */
-@Mapper
-public interface ISceneCleanMapper extends BaseMapper<SceneClean> {
-
-    List<SceneBean> selectNeadCleanScene(@Param("index") long index, @Param("size") int size, @Param("time") Date time);
-
-    List<SceneClean> findAllByDateSource(@Param("dataSource") String dataSource);
-}

+ 0 - 23
src/main/java/com/fdkankan/scene/service/ISceneCleanService.java

@@ -1,23 +0,0 @@
-package com.fdkankan.scene.service;
-
-import com.fdkankan.scene.bean.SceneBean;
-import com.fdkankan.scene.entity.SceneClean;
-import com.baomidou.mybatisplus.extension.service.IService;
-import java.util.Date;
-import java.util.List;
-
-/**
- * <p>
- *  服务类
- * </p>
- *
- * @author 
- * @since 2022-10-09
- */
-public interface ISceneCleanService extends IService<SceneClean> {
-
-    void sceneCleanResource();
-
-    List<SceneBean> selectNeadCleanScene(long index, int size, Date time);
-
-}

+ 0 - 118
src/main/java/com/fdkankan/scene/service/impl/SceneCleanServiceImpl.java

@@ -1,118 +0,0 @@
-package com.fdkankan.scene.service.impl;
-
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.fdkankan.common.constant.CommonStatus;
-import com.fdkankan.common.util.DateUtil;
-import com.fdkankan.model.constants.ConstantFilePath;
-import com.fdkankan.model.utils.CreateObjUtil;
-import com.fdkankan.redis.constant.RedisKey;
-import com.fdkankan.redis.constant.RedisLockKey;
-import com.fdkankan.redis.util.RedisLockUtil;
-import com.fdkankan.scene.bean.SceneBean;
-import com.fdkankan.scene.entity.SceneClean;
-import com.fdkankan.scene.mapper.ISceneCleanMapper;
-import com.fdkankan.scene.service.ISceneCleanService;
-import lombok.extern.slf4j.Slf4j;
-import org.apache.commons.lang3.StringUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.cloud.context.config.annotation.RefreshScope;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-import org.springframework.util.CollectionUtils;
-
-import java.util.*;
-import java.util.stream.Collectors;
-
-/**
- * <p>
- *  服务实现类
- * </p>
- *
- * @author 
- * @since 2022-10-09
- */
-@RefreshScope
-@Service
-@Slf4j
-public class SceneCleanServiceImpl extends ServiceImpl<ISceneCleanMapper, SceneClean> implements ISceneCleanService {
-
-    @Autowired
-    private RedisLockUtil redisLockUtil;
-
-    @Value("${scene.clean.size:10}")
-    private Integer sceneCleanSize;
-
-    @Transactional
-    @Override
-    public void sceneCleanResource(){
-        // 获取redis 锁
-        boolean lock = redisLockUtil.lock(RedisLockKey.LOCK_SCENE_CLEAN, RedisKey.EXPIRE_TIME_2_HOUR);
-        if(!lock){
-            log.warn("未获取到清除资源锁,退出任务!");
-            return;
-        }
-
-        Date time = DateUtil.delay(Calendar.getInstance().getTime(), -7, Calendar.MONTH);
-        time.setHours(0);
-        time.setMinutes(0);
-        time.setSeconds(0);
-
-        //查询需要清理资源的场景
-        List<SceneBean> sceneProEntityList = selectNeadCleanScene(0,sceneCleanSize, time);
-        //如果查出来的场景集合是空,证明已经没有场景资源需要删除,则需要把查询下表删除,等待下一次定时任务执行
-        if (CollectionUtils.isEmpty(sceneProEntityList)) {
-            return;
-        }
-        List<String> numList = sceneProEntityList.parallelStream().map(SceneBean::getNum).collect(Collectors.toList());
-        List<SceneClean> insertList = new ArrayList<>();
-        List<SceneClean> updateList = this.list(new LambdaQueryWrapper<SceneClean>().in(SceneClean::getNum, numList));
-        Set<String> updateSet = updateList.stream().map(SceneClean::getNum).collect(Collectors.toSet());
-        sceneProEntityList.stream().forEach(scene -> {
-            if (StringUtils.isNotBlank(scene.getDataSource())) {
-                // 查询该资源的最新计算时间
-                List<SceneClean> scenes = findAllByDateSource(scene.getDataSource());
-                if (scenes.get(0).getCreateTime().before(time)) {
-                    try {
-                        CreateObjUtil.deleteFile(scene.getDataSource().replace(ConstantFilePath.BUILD_MODEL_PATH, "/").replace(ConstantFilePath.BUILD_MODEL_LASER_PATH, "/"));
-                    } catch (Exception e) {
-                        e.printStackTrace();
-                        updateSet.remove(scene.getNum());
-                        return;
-                    }
-                }
-            }
-            if (!updateSet.contains(scene.getNum())) {
-                SceneClean sceneCleanEntity = new SceneClean();
-                sceneCleanEntity.setState(1);
-                sceneCleanEntity.setNum(scene.getNum());
-                sceneCleanEntity.setCreateTime(new Date());
-                sceneCleanEntity.setUpdateTime(new Date());
-                sceneCleanEntity.setRecStatus("A");
-                insertList.add(sceneCleanEntity);
-            }
-        });
-
-        //写库
-        if(!CollectionUtils.isEmpty(insertList)){
-            this.saveBatch(insertList);
-        }
-        if(!CollectionUtils.isEmpty(updateSet)){
-            this.update(new LambdaUpdateWrapper<SceneClean>().set(SceneClean::getState,
-                    CommonStatus.YES.code()).in(SceneClean::getNum, updateSet));
-        }
-
-        redisLockUtil.unlock(RedisLockKey.LOCK_SCENE_CLEAN);
-    }
-
-    private List<SceneClean> findAllByDateSource(String dataSource) {
-        return this.baseMapper.findAllByDateSource(dataSource);
-    }
-
-    @Override
-    public List<SceneBean> selectNeadCleanScene(long index, int size, Date time) {
-        return this.baseMapper.selectNeadCleanScene(index, size, time);
-    }
-}

+ 0 - 41
src/main/resources/mapper/scene/SceneCleanMapper.xml

@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
-<mapper namespace="com.fdkankan.scene.mapper.ISceneCleanMapper">
-
-  <select id="selectNeadCleanScene" resultType="com.fdkankan.scene.bean.SceneBean">
-    select t.num, t.data_source from (
-      SELECT p.num, p.data_source
-      FROM t_scene_pro p
-      WHERE p.status != 0 and p.is_upgrade != 1 and p.create_time <![CDATA[ <= ]]> #{time}
-      and p.num NOT IN (
-          SELECT c.num FROM t_scene_clean c WHERE c.state = 1
-      )
-
-      union
-
-      SELECT p.num, e.data_source
-      FROM t_scene_plus p
-      left join t_scene_plus_ext e on p.id = e.plus_id
-      WHERE p.scene_status != 0 and e.algorithm_time <![CDATA[ <= ]]> #{time}
-      and p.num NOT IN (
-          SELECT c.num FROM t_scene_clean c WHERE c.state = 1
-      )
-    ) t
-    LIMIT #{index},#{size}
-  </select>
-
-  <select id="findAllByDateSource" resultType="com.fdkankan.scene.entity.SceneClean">
-    select t.create_time from (
-    SELECT p.create_time
-    FROM t_scene_pro p
-    WHERE p.data_source = #{dataSource}
-
-    union
-
-    SELECT p.algorithm_time
-    FROM t_scene_plus_ext p
-    WHERE p.data_source = #{dataSource}
-    ) t order by create_time desc
-  </select>
-
-</mapper>