From e2e723eb52cc164e6230952bfd2049d911af592a Mon Sep 17 00:00:00 2001 From: hello-hao <923453645@qq.com> Date: Fri, 29 Dec 2023 17:28:08 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=B7=BB=E5=8A=A0=E5=BC=BA=E5=88=B6?= =?UTF-8?q?=E5=88=A0=E9=99=A4=EF=BC=8C=E4=BC=98=E5=8C=96=E4=B8=83=E7=89=9B?= =?UTF-8?q?=E4=BA=91=E5=AF=B9=E6=8E=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 2 +- .../java/cn/hellohao/auth/token/JWTUtil.java | 3 +- .../hellohao/controller/AdminController.java | 3 +- .../hellohao/controller/IndexController.java | 7 ++- .../service/impl/KODOImageupload.java | 49 +++++-------------- .../cn/hellohao/service/impl/deleImages.java | 43 ++++++++++------ 6 files changed, 49 insertions(+), 58 deletions(-) diff --git a/pom.xml b/pom.xml index ad5d0f0..31ecdc5 100644 --- a/pom.xml +++ b/pom.xml @@ -196,7 +196,7 @@ com.qiniu qiniu-java-sdk - 7.2.22 + 7.14.0 com.qcloud diff --git a/src/main/java/cn/hellohao/auth/token/JWTUtil.java b/src/main/java/cn/hellohao/auth/token/JWTUtil.java index 7c6b254..9596873 100644 --- a/src/main/java/cn/hellohao/auth/token/JWTUtil.java +++ b/src/main/java/cn/hellohao/auth/token/JWTUtil.java @@ -8,7 +8,6 @@ import com.auth0.jwt.algorithms.Algorithm; import com.auth0.jwt.exceptions.TokenExpiredException; import com.auth0.jwt.interfaces.DecodedJWT; -import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; @@ -24,7 +23,7 @@ public class JWTUtil { public static String createToken(User user){ Calendar calendar = Calendar.getInstance(); - calendar.add(Calendar.SECOND,604800 );//单位秒,604800 为7天 + calendar.add(Calendar.SECOND,2592000 );//单位秒 Algorithm algorithm = Algorithm.HMAC256(SECRET); String token = JWT.create() .withClaim("email", user.getEmail()) diff --git a/src/main/java/cn/hellohao/controller/AdminController.java b/src/main/java/cn/hellohao/controller/AdminController.java index 63317f3..a29f5a4 100644 --- a/src/main/java/cn/hellohao/controller/AdminController.java +++ b/src/main/java/cn/hellohao/controller/AdminController.java @@ -467,6 +467,7 @@ public class AdminController { JSONObject jsonObj = JSONObject.parseObject(data); String images = jsonObj.getString("images"); String uuid = jsonObj.getString("uuid"); + Boolean forceDel = jsonObj.getBoolean("forceDel")==null?false:jsonObj.getBoolean("forceDel"); if (images == null) { msg.setCode("404"); msg.setInfo("为获取到图像信息"); @@ -499,7 +500,7 @@ public class AdminController { if (imgIds.size() == 0) { msg.setCode("110404"); } else { - deleimages.dele(uuid, imgIds.stream().toArray(Long[]::new)); + deleimages.dele(forceDel,uuid, imgIds.stream().toArray(Long[]::new)); msg.setCode("200"); } return msg; diff --git a/src/main/java/cn/hellohao/controller/IndexController.java b/src/main/java/cn/hellohao/controller/IndexController.java index 2d404d8..9923d4d 100644 --- a/src/main/java/cn/hellohao/controller/IndexController.java +++ b/src/main/java/cn/hellohao/controller/IndexController.java @@ -44,10 +44,11 @@ public class IndexController { @Autowired private IRedisService iRedisService; @Autowired private AppClientService appClientService; + public static String version = "20230925"; @RequestMapping(value = "/") public String Welcome(Model model, HttpServletRequest httpServletRequest) { model.addAttribute("name", "服务端程序(开源版)"); - model.addAttribute("version", "20230925"); + model.addAttribute("version", version); model.addAttribute("ip", GetIPS.getIpAddr(httpServletRequest)); model.addAttribute("links", "https://github.com/Hello-hao/tbed"); return "welcome"; @@ -64,6 +65,7 @@ public class IndexController { JSONObject jsonObject = new JSONObject(); AppClient appClient = appClientService.getAppClientData("app"); jsonObject.put("webname", cd.getString("webname")); + jsonObject.put("version",version); jsonObject.put("websubtitle", cd.getString("websubtitle")); jsonObject.put("keywords", cd.getString("keywords")); jsonObject.put("webms", cd.getString("webms")); @@ -79,6 +81,7 @@ public class IndexController { jsonObject.put("clientname", appClient.getAppname()); jsonObject.put("clientlogo", appClient.getApplogo()); jsonObject.put("appupdate", appClient.getAppupdate()); + jsonObject.put("serverVersion",version); msg.setData(jsonObject); return msg; } @@ -380,7 +383,7 @@ public class IndexController { return msg; } } - msg = deleimages.dele(null, image.getId()); + msg = deleimages.dele(false,null, image.getId()); List Delids = (List) msg.getData(); if (!Delids.contains(image.getId())) { msg.setCode("500"); diff --git a/src/main/java/cn/hellohao/service/impl/KODOImageupload.java b/src/main/java/cn/hellohao/service/impl/KODOImageupload.java index 3663314..ff30687 100644 --- a/src/main/java/cn/hellohao/service/impl/KODOImageupload.java +++ b/src/main/java/cn/hellohao/service/impl/KODOImageupload.java @@ -5,10 +5,10 @@ import cn.hellohao.pojo.Keys; import cn.hellohao.pojo.ReturnImage; import com.google.gson.Gson; import com.qiniu.common.QiniuException; -import com.qiniu.common.Zone; import com.qiniu.http.Response; import com.qiniu.storage.BucketManager; import com.qiniu.storage.Configuration; +import com.qiniu.storage.Region; import com.qiniu.storage.UploadManager; import com.qiniu.storage.model.DefaultPutRet; import com.qiniu.storage.model.FileInfo; @@ -28,18 +28,7 @@ public class KODOImageupload { public ReturnImage ImageuploadKODO( Map, File> fileMap, String username, Integer keyID) { ReturnImage returnImage = new ReturnImage(); - Configuration cfg; - if (key.getEndpoint().equals("1")) { - cfg = new Configuration(Zone.zone0()); - } else if (key.getEndpoint().equals("2")) { - cfg = new Configuration(Zone.zone1()); - } else if (key.getEndpoint().equals("3")) { - cfg = new Configuration(Zone.zone2()); - } else if (key.getEndpoint().equals("4")) { - cfg = new Configuration(Zone.zoneNa0()); - } else { - cfg = new Configuration(Zone.zoneAs0()); - } + Configuration cfg = new Configuration(Region.autoRegion()); UploadManager uploadManager = new UploadManager(cfg); Auth auth = Auth.create(key.getAccessKey(), key.getAccessSecret()); String upToken = auth.uploadToken(key.getBucketname(), null, 7200, null); @@ -76,41 +65,25 @@ public class KODOImageupload { public static Integer Initialize(Keys k) { int ret = -1; - if (org.apache.commons.lang3.StringUtils.isBlank(k.getAccessKey()) - || org.apache.commons.lang3.StringUtils.isBlank(k.getAccessSecret()) - || org.apache.commons.lang3.StringUtils.isBlank(k.getEndpoint()) - || org.apache.commons.lang3.StringUtils.isBlank(k.getBucketname()) + if (StringUtils.isBlank(k.getAccessKey()) + || StringUtils.isBlank(k.getAccessSecret()) + || StringUtils.isBlank(k.getEndpoint()) + || StringUtils.isBlank(k.getBucketname()) || StringUtils.isBlank(k.getRequestAddress())) { return -1; } - Configuration cfg; - if (k.getEndpoint().equals("1")) { - cfg = new Configuration(Zone.zone0()); - } else if (k.getEndpoint().equals("2")) { - cfg = new Configuration(Zone.zone1()); - } else if (k.getEndpoint().equals("3")) { - cfg = new Configuration(Zone.zone2()); - } else if (k.getEndpoint().equals("4")) { - cfg = new Configuration(Zone.zoneNa0()); - } else { - cfg = new Configuration(Zone.zoneAs0()); - } + Configuration cfg = new Configuration(Region.autoRegion()); UploadManager uploadManager = new UploadManager(cfg); Auth auth = Auth.create(k.getAccessKey(), k.getAccessSecret()); - String upToken = - auth.uploadToken( - k.getBucketname(), - null, - 7200, - null); // auth.uploadToken(k.getBucketname()); - BucketManager bmObj = new BucketManager(auth, cfg); + String upToken = auth.uploadToken(k.getBucketname(), null, 7200, null); + BucketManager BM = new BucketManager(auth, cfg); BucketManager.FileListIterator fileListIterator = null; try { - fileListIterator = bmObj.createFileListIterator(k.getBucketname(), "", 1, "/"); + fileListIterator = BM.createFileListIterator(k.getBucketname(), "", 1, "/"); FileInfo[] items = fileListIterator.next(); if (items != null) { ret = 1; - bucketManager = bmObj; + bucketManager = BM; key = k; } } catch (Exception e) { diff --git a/src/main/java/cn/hellohao/service/impl/deleImages.java b/src/main/java/cn/hellohao/service/impl/deleImages.java index d4b8da7..598aa63 100644 --- a/src/main/java/cn/hellohao/service/impl/deleImages.java +++ b/src/main/java/cn/hellohao/service/impl/deleImages.java @@ -32,7 +32,7 @@ public class deleImages { @Autowired private KeysServiceImpl keysService; @Autowired private IRedisService iRedisService; - public Msg dele(String uuid, Long... imgIds) { + public Msg dele(boolean forceDel,String uuid, Long... imgIds) { Msg msg = new Msg(); MyProgress myProgress = new MyProgress(); myProgress.InitializeDelImg(); @@ -44,6 +44,20 @@ public class deleImages { boolean isDele = false; try { Images image = imgService.selectByPrimaryKey(imgIds[i]); + if (!forceDel) { + 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()); + } + } Keys key = keysService.selectKeys(image.getSource()); if (key.getStorageType() == 1) { isDele = nosImageupload.delNOS(key.getId(), image); @@ -64,20 +78,21 @@ public class deleImages { } 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()); + if (!forceDel) { + 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()); + } } -// } + if(uuid!=null){ myProgress.setDelSuccessCount(successCount); myProgress.setDelSuccessImgList(ids);