yangys
2025-09-02 2689c8fec95018952784bd8d032afb5a194a6616
blade-service/blade-mdm/src/main/java/org/springblade/mdm/machinefile/service/MachineFileService.java
@@ -11,15 +11,13 @@
import org.springblade.core.mp.support.Condition;
import org.springblade.core.oss.OssTemplate;
import org.springblade.core.oss.model.BladeFile;
import org.springblade.mdm.basesetting.machine.MachineService;
import org.springblade.mdm.basesetting.machine.service.MachineService;
import org.springblade.mdm.basesetting.machine.entity.Machine;
import org.springblade.mdm.machinefile.entity.MachineFile;
import org.springblade.mdm.machinefile.entity.MachineFileChangeHis;
import org.springblade.mdm.machinefile.mapper.MachineFileMapper;
import org.springblade.mdm.machinefile.vo.MachineFileQueryVO;
import org.springblade.mdm.machinefile.vo.MachineAcceptedFileHandleQueryVO;
import org.springblade.mdm.machinefile.vo.MachineBackFileQueryVO;
import org.springblade.mdm.machinefile.vo.MachineAcceptedFileVO;
import org.springblade.mdm.program.vo.CompareDataVO;
import org.springblade.mdm.utils.FileContentUtil;
import org.springframework.stereotype.Service;
@@ -206,4 +204,35 @@
      return vo;
   }
   /**
    * 刷新文件信息,不存在新增,存在则更新
    * @param mf
    */
   public void refreshFileData(MachineFile mf) {
      MachineFile existFileInDb = getExistsFile(mf.getName(),mf.getDirType(),mf.getMachineCode());
      if(existFileInDb == null) {
         save(mf);
      }else{
         log.info("文件在库中已存在:{}",mf.getName());
         existFileInDb.setFileSize(mf.getFileSize());
         existFileInDb.setProgramStatus(mf.getProgramStatus());
         existFileInDb.setFileCreateTime(mf.getFileCreateTime());
         existFileInDb.setFileModifyTime(mf.getFileModifyTime());
         if(!com.alibaba.excel.util.StringUtils.equals(existFileInDb.getMd5(),mf.getMd5())){
            //文件内容发生变化了,设置状态为初始状态
            existFileInDb.setStatus(MachineFile.STATUS_NORMAL);
         }
         existFileInDb.setMd5(mf.getMd5());
         updateById(existFileInDb);
      }
   }
   /**
    * 物理删除文件信息
    * @param id 数据id
    */
   public void deleteById(Long id) {
      baseMapper.deleteById(id);
   }
}