package com.zhujizheng.IHome.privatespace.service; import com.zhujizheng.IHome.generator.dao.PYPrivacySpace; import com.zhujizheng.IHome.generator.mapper.PYPrivacySpaceMapper; import com.zhujizheng.IHome.privatespace.dto.PYPrivacySpaceDTO; import com.zhujizheng.IHome.privatespace.dto.PYPrivacySpaceUpdateDTO; import com.zhujizheng.IHome.privatespace.vo.PYPrivacySpaceVO; import com.zhujizheng.IHome.util.CodeUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; @Slf4j @Service @Transactional(rollbackFor = RuntimeException.class) public class PYPrivacySpaceServiceImpl implements PYPrivacySpaceService { @Autowired private CodeUtil codeUtil; @Autowired private PYPrivacySpaceMapper privacySpaceMapper; @Override public PYPrivacySpaceVO addFile(PYPrivacySpaceDTO dto) { PYPrivacySpace privacySpace = PYPrivacySpace.createWithDTO(dto); int result = privacySpaceMapper.insertPrivacySpace(privacySpace); if (result == 0) { return null; } PYPrivacySpace target = privacySpaceMapper.selectFileWithNameAndTime(dto.getName(), dto.getTime()); return PYPrivacySpaceVO.createVO(target); } @Override public PYPrivacySpaceVO updateFile(PYPrivacySpaceUpdateDTO dto) { if (dto.getPsId() != null && dto.getName() != null) { int result = privacySpaceMapper.updateFileName(dto.getPsId(), dto.getName(), dto.getTime()); if (result == 0) { return null; } PYPrivacySpace target = privacySpaceMapper.selectFileWithId(dto.getPsId()); return PYPrivacySpaceVO.createVO(target); } else if (dto.getPsId() != null && dto.getFolderId() != null) { int result = privacySpaceMapper.updateFileFolder(dto.getPsId(), dto.getFolderId(), dto.getTime()); if (result == 0) { return null; } PYPrivacySpace target = privacySpaceMapper.selectFileWithId(dto.getPsId()); return PYPrivacySpaceVO.createVO(target); } return null; } @Override public List getFiles(int userId, int folderId, int psId) { int cId = codeUtil.dealInt(psId); List list = privacySpaceMapper.selectAllFile(userId, folderId, cId); if (list != null) { List voList = new ArrayList<>(); for (PYPrivacySpace privacySpace : list) { PYPrivacySpaceVO vo = PYPrivacySpaceVO.createVO(privacySpace); voList.add(vo); } return voList; } return null; } @Override public List getFilesWithType(int userId, int folderId, int psId, int type) { int cId = codeUtil.dealInt(psId); List list = privacySpaceMapper.selectAllFileWithType(userId, folderId, cId, type); if (list != null) { List voList = new ArrayList<>(); for (PYPrivacySpace privacySpace : list) { PYPrivacySpaceVO vo = PYPrivacySpaceVO.createVO(privacySpace); voList.add(vo); } return voList; } return null; } @Override public int deleteFile(int psId) { return privacySpaceMapper.deleteFile(psId); } }