package com.fdkankan.modeling.service.impl; import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.fdkankan.common.constant.ConstantFilePath; import com.fdkankan.common.constant.RecStatus; import com.fdkankan.common.constant.TbStatus; import com.fdkankan.common.util.FileUtils; import com.fdkankan.modeling.entity.ScenePro; import com.fdkankan.modeling.entity.SceneProExt; import com.fdkankan.modeling.mapper.ISceneProMapper; import com.fdkankan.modeling.service.ISceneProExtService; import com.fdkankan.modeling.service.ISceneProService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.HashMap; import java.util.List; import java.util.Map; /** *

* pro场景表 服务实现类 *

* * @author dengsixing * @since 2021-12-23 */ @Service public class SceneProServiceImpl extends ServiceImpl implements ISceneProService { @Autowired private ISceneProExtService sceneProExtService; @Override public ScenePro findBySceneNum(String projectNum) { List list = this.list(new QueryWrapper() .eq("tb_status", TbStatus.VALID.code()) .eq("rec_status", RecStatus.VALID.code()) .eq("scene_code", projectNum)); if(CollUtil.isEmpty(list)){ return null; } return list.get(0); } @Override public void updateTime(String projectNum, Long space, int payStatus, String videos, long computeTime) { ScenePro scenePro = this.findBySceneNum(projectNum); if(scenePro == null){ return; } SceneProExt sceneProExt = sceneProExtService.getBySceneProId(scenePro.getId()); if( sceneProExt == null){ return; } scenePro.setVideos(videos); this.updateById(scenePro); sceneProExt.setSceneStatus(-2); sceneProExt.setPayStatus(payStatus); sceneProExt.setSpace(space); sceneProExt.setComputeTime(computeTime); sceneProExtService.updateById(sceneProExt); } @Override public void tempScenes(List lockedIds) { if (lockedIds == null || lockedIds.size() == 0){ return; } for (Long id : lockedIds){ SceneProExt sceneProExt = sceneProExtService.getBySceneProId(id); sceneProExt.setPayStatus(-2); sceneProExtService.updateById(sceneProExt); ScenePro sceneProEntity = this.getById(id); // sceneProEntity.setPayStatus(-2); // this.updateById(sceneProEntity); try{ Map map = new HashMap<>(); map.put("payStatus", -2); FileUtils.writeJsonFile(ConstantFilePath.SCENE_PATH + "data/data" + sceneProEntity.getSceneCode() + "/scene.json", map); }catch (Exception e){ e.printStackTrace(); } } } }