Skip to content

Commit e2e723e

Browse files
committed
feat:添加强制删除,优化七牛云对接
1 parent 60db603 commit e2e723e

File tree

6 files changed

+49
-58
lines changed

6 files changed

+49
-58
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@
196196
<dependency>
197197
<groupId>com.qiniu</groupId>
198198
<artifactId>qiniu-java-sdk</artifactId>
199-
<version>7.2.22</version>
199+
<version>7.14.0</version>
200200
</dependency>
201201
<dependency>
202202
<groupId>com.qcloud</groupId>

src/main/java/cn/hellohao/auth/token/JWTUtil.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import com.auth0.jwt.exceptions.TokenExpiredException;
99
import com.auth0.jwt.interfaces.DecodedJWT;
1010

11-
import java.text.SimpleDateFormat;
1211
import java.util.Calendar;
1312
import java.util.Date;
1413

@@ -24,7 +23,7 @@ public class JWTUtil {
2423

2524
public static String createToken(User user){
2625
Calendar calendar = Calendar.getInstance();
27-
calendar.add(Calendar.SECOND,604800 );//单位秒,604800 为7天
26+
calendar.add(Calendar.SECOND,2592000 );//单位秒
2827
Algorithm algorithm = Algorithm.HMAC256(SECRET);
2928
String token = JWT.create()
3029
.withClaim("email", user.getEmail())

src/main/java/cn/hellohao/controller/AdminController.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -467,6 +467,7 @@ public Msg deleImages(@RequestParam(value = "data", defaultValue = "") String da
467467
JSONObject jsonObj = JSONObject.parseObject(data);
468468
String images = jsonObj.getString("images");
469469
String uuid = jsonObj.getString("uuid");
470+
Boolean forceDel = jsonObj.getBoolean("forceDel")==null?false:jsonObj.getBoolean("forceDel");
470471
if (images == null) {
471472
msg.setCode("404");
472473
msg.setInfo("为获取到图像信息");
@@ -499,7 +500,7 @@ public Msg deleImages(@RequestParam(value = "data", defaultValue = "") String da
499500
if (imgIds.size() == 0) {
500501
msg.setCode("110404");
501502
} else {
502-
deleimages.dele(uuid, imgIds.stream().toArray(Long[]::new));
503+
deleimages.dele(forceDel,uuid, imgIds.stream().toArray(Long[]::new));
503504
msg.setCode("200");
504505
}
505506
return msg;

src/main/java/cn/hellohao/controller/IndexController.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -44,10 +44,11 @@ public class IndexController {
4444
@Autowired private IRedisService iRedisService;
4545
@Autowired private AppClientService appClientService;
4646

47+
public static String version = "20230925";
4748
@RequestMapping(value = "/")
4849
public String Welcome(Model model, HttpServletRequest httpServletRequest) {
4950
model.addAttribute("name", "服务端程序(开源版)");
50-
model.addAttribute("version", "20230925");
51+
model.addAttribute("version", version);
5152
model.addAttribute("ip", GetIPS.getIpAddr(httpServletRequest));
5253
model.addAttribute("links", "https://github.com/Hello-hao/tbed");
5354
return "welcome";
@@ -64,6 +65,7 @@ public Msg webInfo() {
6465
JSONObject jsonObject = new JSONObject();
6566
AppClient appClient = appClientService.getAppClientData("app");
6667
jsonObject.put("webname", cd.getString("webname"));
68+
jsonObject.put("version",version);
6769
jsonObject.put("websubtitle", cd.getString("websubtitle"));
6870
jsonObject.put("keywords", cd.getString("keywords"));
6971
jsonObject.put("webms", cd.getString("webms"));
@@ -79,6 +81,7 @@ public Msg webInfo() {
7981
jsonObject.put("clientname", appClient.getAppname());
8082
jsonObject.put("clientlogo", appClient.getApplogo());
8183
jsonObject.put("appupdate", appClient.getAppupdate());
84+
jsonObject.put("serverVersion",version);
8285
msg.setData(jsonObject);
8386
return msg;
8487
}
@@ -380,7 +383,7 @@ public Msg deleImagesByUid(@RequestParam(value = "data", defaultValue = "") Stri
380383
return msg;
381384
}
382385
}
383-
msg = deleimages.dele(null, image.getId());
386+
msg = deleimages.dele(false,null, image.getId());
384387
List<Long> Delids = (List<Long>) msg.getData();
385388
if (!Delids.contains(image.getId())) {
386389
msg.setCode("500");

src/main/java/cn/hellohao/service/impl/KODOImageupload.java

Lines changed: 11 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,10 @@
55
import cn.hellohao.pojo.ReturnImage;
66
import com.google.gson.Gson;
77
import com.qiniu.common.QiniuException;
8-
import com.qiniu.common.Zone;
98
import com.qiniu.http.Response;
109
import com.qiniu.storage.BucketManager;
1110
import com.qiniu.storage.Configuration;
11+
import com.qiniu.storage.Region;
1212
import com.qiniu.storage.UploadManager;
1313
import com.qiniu.storage.model.DefaultPutRet;
1414
import com.qiniu.storage.model.FileInfo;
@@ -28,18 +28,7 @@ public class KODOImageupload {
2828
public ReturnImage ImageuploadKODO(
2929
Map<Map<String, String>, File> fileMap, String username, Integer keyID) {
3030
ReturnImage returnImage = new ReturnImage();
31-
Configuration cfg;
32-
if (key.getEndpoint().equals("1")) {
33-
cfg = new Configuration(Zone.zone0());
34-
} else if (key.getEndpoint().equals("2")) {
35-
cfg = new Configuration(Zone.zone1());
36-
} else if (key.getEndpoint().equals("3")) {
37-
cfg = new Configuration(Zone.zone2());
38-
} else if (key.getEndpoint().equals("4")) {
39-
cfg = new Configuration(Zone.zoneNa0());
40-
} else {
41-
cfg = new Configuration(Zone.zoneAs0());
42-
}
31+
Configuration cfg = new Configuration(Region.autoRegion());
4332
UploadManager uploadManager = new UploadManager(cfg);
4433
Auth auth = Auth.create(key.getAccessKey(), key.getAccessSecret());
4534
String upToken = auth.uploadToken(key.getBucketname(), null, 7200, null);
@@ -76,41 +65,25 @@ public ReturnImage ImageuploadKODO(
7665

7766
public static Integer Initialize(Keys k) {
7867
int ret = -1;
79-
if (org.apache.commons.lang3.StringUtils.isBlank(k.getAccessKey())
80-
|| org.apache.commons.lang3.StringUtils.isBlank(k.getAccessSecret())
81-
|| org.apache.commons.lang3.StringUtils.isBlank(k.getEndpoint())
82-
|| org.apache.commons.lang3.StringUtils.isBlank(k.getBucketname())
68+
if (StringUtils.isBlank(k.getAccessKey())
69+
|| StringUtils.isBlank(k.getAccessSecret())
70+
|| StringUtils.isBlank(k.getEndpoint())
71+
|| StringUtils.isBlank(k.getBucketname())
8372
|| StringUtils.isBlank(k.getRequestAddress())) {
8473
return -1;
8574
}
86-
Configuration cfg;
87-
if (k.getEndpoint().equals("1")) {
88-
cfg = new Configuration(Zone.zone0());
89-
} else if (k.getEndpoint().equals("2")) {
90-
cfg = new Configuration(Zone.zone1());
91-
} else if (k.getEndpoint().equals("3")) {
92-
cfg = new Configuration(Zone.zone2());
93-
} else if (k.getEndpoint().equals("4")) {
94-
cfg = new Configuration(Zone.zoneNa0());
95-
} else {
96-
cfg = new Configuration(Zone.zoneAs0());
97-
}
75+
Configuration cfg = new Configuration(Region.autoRegion());
9876
UploadManager uploadManager = new UploadManager(cfg);
9977
Auth auth = Auth.create(k.getAccessKey(), k.getAccessSecret());
100-
String upToken =
101-
auth.uploadToken(
102-
k.getBucketname(),
103-
null,
104-
7200,
105-
null); // auth.uploadToken(k.getBucketname());
106-
BucketManager bmObj = new BucketManager(auth, cfg);
78+
String upToken = auth.uploadToken(k.getBucketname(), null, 7200, null);
79+
BucketManager BM = new BucketManager(auth, cfg);
10780
BucketManager.FileListIterator fileListIterator = null;
10881
try {
109-
fileListIterator = bmObj.createFileListIterator(k.getBucketname(), "", 1, "/");
82+
fileListIterator = BM.createFileListIterator(k.getBucketname(), "", 1, "/");
11083
FileInfo[] items = fileListIterator.next();
11184
if (items != null) {
11285
ret = 1;
113-
bucketManager = bmObj;
86+
bucketManager = BM;
11487
key = k;
11588
}
11689
} catch (Exception e) {

src/main/java/cn/hellohao/service/impl/deleImages.java

Lines changed: 29 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public class deleImages {
3232
@Autowired private KeysServiceImpl keysService;
3333
@Autowired private IRedisService iRedisService;
3434

35-
public Msg dele(String uuid, Long... imgIds) {
35+
public Msg dele(boolean forceDel,String uuid, Long... imgIds) {
3636
Msg msg = new Msg();
3737
MyProgress myProgress = new MyProgress();
3838
myProgress.InitializeDelImg();
@@ -44,6 +44,20 @@ public Msg dele(String uuid, Long... imgIds) {
4444
boolean isDele = false;
4545
try {
4646
Images image = imgService.selectByPrimaryKey(imgIds[i]);
47+
if (!forceDel) {
48+
try {
49+
imgAndAlbumService.deleteImgAndAlbum(image.getImgurl());
50+
imgTempService.delImgAndExp(image.getImguid());
51+
imgService.deleimg(image.getId());
52+
ids.add(image.getId());
53+
successCount++;
54+
System.out.println("删除成功加一个" + image.getId());
55+
} catch (Exception e) {
56+
e.printStackTrace();
57+
System.err.println(image.getImgname() + ":图片数据库记录时发生错误");
58+
errorIds.add(image.getImgurl());
59+
}
60+
}
4761
Keys key = keysService.selectKeys(image.getSource());
4862
if (key.getStorageType() == 1) {
4963
isDele = nosImageupload.delNOS(key.getId(), image);
@@ -64,20 +78,21 @@ public Msg dele(String uuid, Long... imgIds) {
6478
} else {
6579
System.err.println("未获取到对象存储参数,删除失败。");
6680
}
67-
// if (isDele) {
68-
try {
69-
imgAndAlbumService.deleteImgAndAlbum(image.getImgurl());
70-
imgTempService.delImgAndExp(image.getImguid());
71-
imgService.deleimg(image.getId());
72-
ids.add(image.getId());
73-
successCount++;
74-
System.out.println("删除成功加一个" + image.getId());
75-
} catch (Exception e) {
76-
e.printStackTrace();
77-
System.err.println(image.getImgname() + ":图片数据库记录时发生错误");
78-
errorIds.add(image.getImgurl());
81+
if (!forceDel) {
82+
try {
83+
imgAndAlbumService.deleteImgAndAlbum(image.getImgurl());
84+
imgTempService.delImgAndExp(image.getImguid());
85+
imgService.deleimg(image.getId());
86+
ids.add(image.getId());
87+
successCount++;
88+
System.out.println("删除成功加一个" + image.getId());
89+
} catch (Exception e) {
90+
e.printStackTrace();
91+
System.err.println(image.getImgname() + ":图片数据库记录时发生错误");
92+
errorIds.add(image.getImgurl());
93+
}
7994
}
80-
// }
95+
8196
if(uuid!=null){
8297
myProgress.setDelSuccessCount(successCount);
8398
myProgress.setDelSuccessImgList(ids);

0 commit comments

Comments
 (0)