SceneColdStorageServiceImpl.java 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. package com.fdkankan.contro.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
  4. import com.fdkankan.common.constant.CommonStatus;
  5. import com.fdkankan.common.constant.CommonSuccessStatus;
  6. import com.fdkankan.contro.entity.SceneColdStorage;
  7. import com.fdkankan.contro.entity.SceneColdStorageLog;
  8. import com.fdkankan.contro.mapper.ISceneColdStorageMapper;
  9. import com.fdkankan.contro.service.ISceneColdStorageLogService;
  10. import com.fdkankan.contro.service.ISceneColdStorageService;
  11. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  12. import com.fdkankan.model.utils.SceneUtil;
  13. import org.springframework.beans.factory.annotation.Autowired;
  14. import org.springframework.stereotype.Service;
  15. import java.util.Objects;
  16. /**
  17. * <p>
  18. * 场景封存状态表 服务实现类
  19. * </p>
  20. *
  21. * @author
  22. * @since 2023-07-25
  23. */
  24. @Service
  25. public class SceneColdStorageServiceImpl extends ServiceImpl<ISceneColdStorageMapper, SceneColdStorage> implements ISceneColdStorageService {
  26. @Autowired
  27. private ISceneColdStorageLogService sceneColdStorageLogService;
  28. @Override
  29. public void unfreeze(String num, String reason, String dataSource) {
  30. //修改封存状态
  31. SceneColdStorage sceneColdStorage = this.getByNum(num);
  32. if(Objects.isNull(sceneColdStorage) || sceneColdStorage.getState() == 2){//如果是解冻状态就无需再记录解冻日志
  33. return;
  34. }
  35. if(Objects.isNull(sceneColdStorage)){
  36. sceneColdStorage = new SceneColdStorage();
  37. }
  38. sceneColdStorage.setState(2);
  39. this.saveOrUpdate(sceneColdStorage);
  40. //插入日志表
  41. SceneColdStorageLog sceneColdStorageLog = new SceneColdStorageLog();
  42. sceneColdStorageLog.setNum(num);
  43. sceneColdStorageLog.setPath(SceneUtil.getHomePath(dataSource));
  44. sceneColdStorageLog.setState(CommonSuccessStatus.SUCCESS.code());
  45. sceneColdStorageLog.setReason(reason);
  46. sceneColdStorageLog.setType(2);
  47. sceneColdStorageLogService.save(sceneColdStorageLog);
  48. }
  49. @Override
  50. public SceneColdStorage getByNum(String num) {
  51. return this.getOne(new LambdaQueryWrapper<SceneColdStorage>().eq(SceneColdStorage::getNum, num));
  52. }
  53. }