From 06512be896ad2c8a23b95e661f054534d227b8ca Mon Sep 17 00:00:00 2001 From: haotianmingyue <2421912570@qq.com> Date: Fri, 8 Nov 2024 17:01:18 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E6=AD=A5=E5=AE=8C=E6=88=90=E4=BD=9C?= =?UTF-8?q?=E5=93=81=E5=AE=A1=E6=A0=B8=E6=83=85=E5=86=B5,=E5=85=A8?= =?UTF-8?q?=E9=83=A8=E5=AE=8C=E6=88=90=E8=BF=98=E9=9C=80=E8=A6=81=20?= =?UTF-8?q?=E8=B5=84=E6=BA=90=E4=BD=8D=E8=A1=A8,=E8=AE=A2=E5=8D=95?= =?UTF-8?q?=E8=A1=A8=E7=9A=84=E9=85=8D=E5=90=88=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/app/AppSystemController.java | 1 + .../web/controller/app/baidu/GetToken.java | 4 +- .../backstage/BackstageController.java | 65 +++++++++++++++++++ .../com/ruoyi/common/constant/Constants.java | 9 +++ .../com/ruoyi/system/domain/UserWork.java | 4 +- .../system/domain/dto/ReviewWorkDto.java | 27 ++++++++ 6 files changed, 106 insertions(+), 4 deletions(-) create mode 100644 ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ReviewWorkDto.java diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/AppSystemController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/AppSystemController.java index 8686c7b8..666b0386 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/AppSystemController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/AppSystemController.java @@ -633,6 +633,7 @@ public class AppSystemController { userWork.setDetail(workDetail); userWork.setCoordinate("0000"); + String localPath = RuoYiConfig.getProfile(); if (workImage.isEmpty()) { return error("文件为空"); diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/baidu/GetToken.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/baidu/GetToken.java index 7c3917f4..a6ea23d9 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/baidu/GetToken.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/app/baidu/GetToken.java @@ -29,8 +29,8 @@ class GetToken { } public static void main(String []args) throws IOException{ - String accessToekn = getToken(); - System.out.println(accessToekn); + String accessToken = getToken(); + System.out.println(accessToken); // MediaType mediaType = MediaType.parse("application/json"); // RequestBody body = RequestBody.create(mediaType, ""); // Request request = new Request.Builder() diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/backstage/BackstageController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/backstage/BackstageController.java index bc0b9847..0c86414e 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/backstage/BackstageController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/backstage/BackstageController.java @@ -8,14 +8,18 @@ import com.ruoyi.common.core.domain.entity.SysUser; import com.ruoyi.common.core.domain.model.LoginUser; import com.ruoyi.common.core.page.TableDataInfo; import com.ruoyi.common.utils.SecurityUtils; +import com.ruoyi.system.domain.BaiduIdCard; import com.ruoyi.system.domain.DailyUser; import com.ruoyi.system.domain.UserInfo; import com.ruoyi.system.domain.UserWork; +import com.ruoyi.system.domain.dto.ReviewWorkDto; import com.ruoyi.system.domain.dto.SeUserCountDto; import com.ruoyi.system.domain.dto.SeUserWorkCountDto; import com.ruoyi.system.domain.dto.UpdateUserStateDto; import com.ruoyi.system.service.*; +import com.ruoyi.web.controller.app.baidu.GsonUtils; import com.ruoyi.web.controller.backstage.daily.dailySysServer; +//import org.apache.commons.collections.map.HashedMap; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -26,7 +30,9 @@ import static com.ruoyi.common.utils.PageUtils.startPage; import java.time.LocalDate; import java.util.Date; +import java.util.HashMap; import java.util.List; +import java.util.Map; import static com.ruoyi.common.core.domain.AjaxResult.success; @@ -132,6 +138,7 @@ public class BackstageController { } } + // 获取所有用户作品 @GetMapping("/getAllUserWork") public AjaxResult getAllUserWork(){ if(isAtuthority(Constants.USER_TYPE_ADMIN)){ @@ -145,6 +152,7 @@ public class BackstageController { } } + // 获取近7天作品总数 @GetMapping("/getSeUserWorkCount") public AjaxResult getSeUserWorkCount(){ if(isAtuthority(Constants.USER_TYPE_ADMIN)){ @@ -160,12 +168,69 @@ public class BackstageController { } } + //审核作品 + @PostMapping("reviewWork") + public AjaxResult reviewWork(@RequestBody ReviewWorkDto reviewWorkDto){ + + Long userId = SecurityUtils.getUserId(); + SysUser user = sysUserService.selectUserById(userId); + + if(!user.getUserType().equals(Constants.USER_TYPE_ADMIN)){ + return error("无权限访问"); + } + + + Long workId = reviewWorkDto.getWorkId(); + String workStatus = reviewWorkDto.getWorkStatus(); + String auditOpinion = reviewWorkDto.getAuditOpinion(); + + // 这里默认一定能查到, 不然怎么审核这个作品 + UserWork userWork = userWorkService.selectUserWorkByWorkId(workId); + + String workAuditOpinion = userWork.getAuditOpinion(); + + //当前这个作品的审核意见 一个json字符串 + Map allAuditOpinion = GsonUtils.fromJson(workAuditOpinion, HashMap.class); + + Date now = new Date(); + + // key值格式为 time_userId_nickName_workStatus + String key = now.toString() +"_"+userId.toString() + "_" + user.getNickName() + "_" + workStatus; + + allAuditOpinion.put(key, auditOpinion); + + userWork.setWorkStatus(workStatus); + userWork.setAuditOpinion(GsonUtils.toJson(allAuditOpinion)); + + // 先不进行系统更新, 具体看下面的操作. + int back = userWorkService.updateUserWork(userWork); + if(back == 0){ + return error("更新审核情况失败"); + } + + //作品审核通过和不通过的逻辑 + if(workStatus.equals(Constants.WORKFAIL)){ + //作品审核不通过, 根据作品展示时间来进一步选择行为. + //未展示 ------ 判断审核员数 : > 2 直接否决 状态改为5--不在审核 >1 交由第三个审核员审核. 状态改为待审 + //展示中------直接退款 + //根据作品 sourceId 查看资源位的情况. + + //作品审核通过 直接更新就行了. + } + + + + return success("作品审核成功"); + + } + // 不能这样用啊, // @PostMapping("/updateUserOnlineTime") public AjaxResult updateUserOnlineTime(@RequestParam("duration") String duration){ Long userId = SecurityUtils.getUserId(); + Long durationLong = Long.parseLong(duration) / 1000; LocalDate now = LocalDate.now(); diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java b/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java index 155a62e9..76983d8f 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java @@ -9,6 +9,15 @@ import io.jsonwebtoken.Claims; */ public class Constants { + + /* + * 作品审核通过 + * */ + public static final String WORKPASS="3"; + /* + * 作品审核不通过 + * */ + public static final String WORKFAIL="4"; /** * UTF-8 字符集 */ diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/UserWork.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/UserWork.java index f0c4c045..93f7ad56 100644 --- a/ruoyi-system/src/main/java/com/ruoyi/system/domain/UserWork.java +++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/UserWork.java @@ -37,12 +37,12 @@ public class UserWork extends BaseEntity private String coordinate; /** 发布日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") +// @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "发布日期", width = 30, dateFormat = "yyyy-MM-dd") private Date postTime; /** 创建日期 */ - @JsonFormat(pattern = "yyyy-MM-dd") +// @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "发布日期", width = 30, dateFormat = "yyyy-MM-dd") private Date createTime; diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ReviewWorkDto.java b/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ReviewWorkDto.java new file mode 100644 index 00000000..dca2529e --- /dev/null +++ b/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ReviewWorkDto.java @@ -0,0 +1,27 @@ +package com.ruoyi.system.domain.dto; + +public class ReviewWorkDto { + + private Long workId; + private String workStatus; + private String auditOpinion; + + public Long getWorkId() { + return workId; + } + public void setWorkId(Long workId) { + this.workId = workId; + } + public String getWorkStatus() { + return workStatus; + } + public void setWorkStatus(String workStatus) { + this.workStatus = workStatus; + } + public String getAuditOpinion() { + return auditOpinion; + } + public void setAuditOpinion(String auditOpinion) { + this.auditOpinion = auditOpinion; + } +}