mirror of
https://github.com/Hello-hao/Tbed.git
synced 2024-04-21 12:32:10 +00:00
107 lines
4.1 KiB
Java
107 lines
4.1 KiB
Java
package cn.hellohao.service.impl;
|
|
|
|
import cn.hellohao.pojo.Images;
|
|
import cn.hellohao.pojo.Keys;
|
|
import cn.hellohao.pojo.Msg;
|
|
import cn.hellohao.service.ImgAndAlbumService;
|
|
import cn.hellohao.service.ImgService;
|
|
import cn.hellohao.service.ImgTempService;
|
|
import cn.hellohao.utils.LocUpdateImg;
|
|
import cn.hellohao.utils.progress.MyProgress;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import javax.servlet.http.HttpSession;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
@Service
|
|
public class deleImages {
|
|
|
|
|
|
@Autowired
|
|
private NOSImageupload nosImageupload;
|
|
@Autowired
|
|
private OSSImageupload ossImageupload;
|
|
@Autowired
|
|
private COSImageupload cosImageupload;
|
|
@Autowired
|
|
private KODOImageupload kodoImageupload;
|
|
@Autowired
|
|
private USSImageupload ussImageupload;
|
|
@Autowired
|
|
private UFileImageupload uFileImageupload;
|
|
@Autowired
|
|
private FTPImageupload ftpImageupload;
|
|
@Autowired
|
|
private ImgAndAlbumService imgAndAlbumService;
|
|
@Autowired
|
|
private ImgTempService imgTempService;
|
|
@Autowired
|
|
private ImgService imgService;
|
|
@Autowired
|
|
private KeysServiceImpl keysService;
|
|
|
|
|
|
public Msg dele(HttpSession httpSession,Integer... imgIds) {
|
|
Msg msg = new Msg();
|
|
MyProgress myProgress = new MyProgress();
|
|
myProgress.InitializeDelImg();
|
|
List<Integer> ids = new ArrayList<>();
|
|
int successCount = 0;
|
|
List<String> errorIds = new ArrayList<>();
|
|
for (Integer id : imgIds) {
|
|
//删除图片
|
|
boolean isDele = false;
|
|
try {
|
|
Images image = imgService.selectByPrimaryKey(id);
|
|
Keys key = keysService.selectKeys(image.getSource());
|
|
if (key.getStorageType() == 1) {
|
|
isDele = nosImageupload.delNOS(key.getId(), image);
|
|
} else if (key.getStorageType() == 2) {
|
|
isDele = ossImageupload.delOSS(key.getId(), image);
|
|
} else if (key.getStorageType() == 3) {
|
|
isDele = ussImageupload.delUSS(key.getId(), image);
|
|
} else if (key.getStorageType() == 4) {
|
|
isDele = kodoImageupload.delKODO(key.getId(), image);
|
|
} else if (key.getStorageType() == 5) {
|
|
isDele = LocUpdateImg.deleteLOCImg(image);
|
|
} else if (key.getStorageType() == 6) {
|
|
isDele = cosImageupload.delCOS(key.getId(), image);
|
|
} else if (key.getStorageType() == 7) {
|
|
isDele = ftpImageupload.delFTP(key.getId(), image);
|
|
} else if (key.getStorageType() == 8) {
|
|
isDele = uFileImageupload.delUFile(key.getId(), image);
|
|
} else {
|
|
System.err.println("未获取到对象存储参数,删除失败。");
|
|
}
|
|
if(isDele){
|
|
try {
|
|
imgAndAlbumService.deleteImgAndAlbum(image.getImgurl());
|
|
imgTempService.delImgAndExp(image.getImguid());
|
|
imgService.deleimg(image.getId());
|
|
ids.add(image.getId());
|
|
successCount++;
|
|
System.out.println("删除成功加一个"+image.getId());
|
|
} catch (Exception e) {
|
|
e.printStackTrace();
|
|
System.err.println(image.getImgname()+":图片数据库记录时发生错误");
|
|
errorIds.add(image.getImgurl());
|
|
}
|
|
}
|
|
myProgress.setDelSuccessCount(successCount);
|
|
myProgress.setDelSuccessImgList(ids);
|
|
myProgress.setDelErrorImgListt(errorIds);
|
|
if(null !=httpSession){
|
|
httpSession.setAttribute("myProgressForDel",myProgress);
|
|
}
|
|
} catch (Exception e) {
|
|
System.err.println("删除的时候发生了一些异常");
|
|
e.printStackTrace();
|
|
}
|
|
}
|
|
myProgress.setDelOCT(true);
|
|
msg.setData(ids);
|
|
return msg;
|
|
}
|
|
}
|