diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UpgradePatchServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UpgradePatchServiceImpl.java index e6e57b3..160d861 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UpgradePatchServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UpgradePatchServiceImpl.java @@ -105,4 +105,28 @@ public class UpgradePatchServiceImpl implements UpgradePatchService { patchMapper.deleteByPrimaryKey(id); new File(patchpath + record.getPath()).delete(); } + + @Override + public void delete(String app, String version) throws Exception { + MntnUpgradesPatchExample example = new MntnUpgradesPatchExample(); + MntnUpgradesPatchExample.Criteria criteria = example.createCriteria(); + criteria.andAppEqualTo(app); + criteria.andOldVerEqualTo(version); + List list = patchMapper.selectByExample(example); + if (!CollectionUtils.isEmpty(list)) { + for (MntnUpgradesPatch item : list) { + this.delete(item.getId()); + } + } + + criteria = example.createCriteria(); + criteria.andAppEqualTo(app); + criteria.andNewVerEqualTo(version); + list = patchMapper.selectByExample(example); + if (!CollectionUtils.isEmpty(list)) { + for (MntnUpgradesPatch item : list) { + this.delete(item.getId()); + } + } + } } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UpgradeServiceImpl.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UpgradeServiceImpl.java index ed8edb1..cd5619e 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UpgradeServiceImpl.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/impl/UpgradeServiceImpl.java @@ -13,6 +13,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import org.springframework.util.StringUtils; import org.springframework.web.multipart.MultipartFile; @@ -55,6 +56,16 @@ public class UpgradeServiceImpl implements UpgradeService { @Override public boolean upload(MntnUpgrades item, MultipartFile file) throws Exception { + if (StringUtils.hasLength(item.getApp()) && StringUtils.hasLength(item.getVersion())) { + MntnUpgradesExample example = new MntnUpgradesExample(); + MntnUpgradesExample.Criteria criteria = example.createCriteria(); + criteria.andAppEqualTo(item.getApp()); + criteria.andVersionEqualTo(item.getVersion()); + List list = mapper.selectByExample(example); + if (!CollectionUtils.isEmpty(list)) { + throw new ApiException("该版本已存在"); + } + } String fileName = file.getOriginalFilename(); String ext = StringUtils.getFilenameExtension(fileName); String path = DateUtil.format(new Date(), "yyyyMMdd") + "_upd_" @@ -93,5 +104,8 @@ public class UpgradeServiceImpl implements UpgradeService { MntnUpgrades record = mapper.selectByPrimaryKey(id); mapper.deleteByPrimaryKey(id); new File(apkpath + record.getPath()).delete(); + if (StringUtils.hasLength(record.getApp()) && StringUtils.hasLength(record.getVersion())) { + patchService.delete(record.getApp(), record.getVersion()); + } } } diff --git a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/UpgradePatchService.java b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/UpgradePatchService.java index da5beaf..13a2c45 100644 --- a/xymanager_service/src/main/java/com/shxy/xymanager_service/service/UpgradePatchService.java +++ b/xymanager_service/src/main/java/com/shxy/xymanager_service/service/UpgradePatchService.java @@ -13,4 +13,6 @@ public interface UpgradePatchService { void delete(Integer id) throws Exception; + void delete(String app, String version) throws Exception; + }