From 71f1c01674cdc094663b6a2a61e7d21e56f5a101 Mon Sep 17 00:00:00 2001 From: Diyu0904 <1819728964@qq.com> Date: Tue, 21 Jan 2025 17:01:59 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=B7=A5=E4=BD=9C?= =?UTF-8?q?=E6=B5=81=E5=AE=A1=E6=A0=B8bug=20=E6=96=B0=E5=A2=9E=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E5=AE=A1=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resource/ModelVersionController.java | 18 +-- .../com/mcwl/resource/domain/ModelImage.java | 6 + .../mcwl/resource/domain/ModelVersion.java | 4 +- .../resource/domain/dto/ModelImageRes.java | 1 - .../service/impl/ModelImageServiceImpl.java | 106 ++++++++++++++++-- .../service/impl/WorkFlowServiceImpl.java | 1 - 6 files changed, 108 insertions(+), 28 deletions(-) diff --git a/mcwl-admin/src/main/java/com/mcwl/web/controller/resource/ModelVersionController.java b/mcwl-admin/src/main/java/com/mcwl/web/controller/resource/ModelVersionController.java index 5232b12..dacef45 100644 --- a/mcwl-admin/src/main/java/com/mcwl/web/controller/resource/ModelVersionController.java +++ b/mcwl-admin/src/main/java/com/mcwl/web/controller/resource/ModelVersionController.java @@ -1,12 +1,10 @@ package com.mcwl.web.controller.resource; -import com.mcwl.common.constant.DictConstants; import com.mcwl.common.core.controller.BaseController; import com.mcwl.common.core.domain.AjaxResult; import com.mcwl.common.core.page.TableDataInfo; import com.mcwl.resource.domain.ModelVersion; import com.mcwl.resource.service.ModelVersionService; -import com.mcwl.system.init.DictInit; import com.mcwl.web.controller.common.OssUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -14,7 +12,6 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import java.util.ArrayList; import java.util.List; /** 模型版本 @@ -104,21 +101,12 @@ public class ModelVersionController extends BaseController { @ApiOperation(value = "模型版本详情") - @PostMapping("finbyid") - public AjaxResult finbyid(@RequestBody ModelVersion modelVersion) + @GetMapping("finbyid") + public AjaxResult finbyid(@RequestParam Long id) { - ModelVersion modelVersion1 = modelVersionService.getById(modelVersion.getId()); - - ArrayList arrayList = new ArrayList<>(); - - //获取 - String[] split = modelVersion1.getHigh().split(","); - - for (String s : split) { - arrayList.add(DictInit.getDictValue(DictConstants.DICT_TYPE_MODEL_VERSION_HIGH,s)); - } + ModelVersion modelVersion1 = modelVersionService.getById(id); return AjaxResult.success(modelVersion1); } diff --git a/mcwl-resource/src/main/java/com/mcwl/resource/domain/ModelImage.java b/mcwl-resource/src/main/java/com/mcwl/resource/domain/ModelImage.java index f7bbcca..570d3c2 100644 --- a/mcwl-resource/src/main/java/com/mcwl/resource/domain/ModelImage.java +++ b/mcwl-resource/src/main/java/com/mcwl/resource/domain/ModelImage.java @@ -109,4 +109,10 @@ public class ModelImage extends BaseEntity { */ @ApiModelProperty(value = "是否置顶") private Integer isTop; + + /** + * 审核失败原因 + */ + @ApiModelProperty(value = "审核失败原因") + private String auditText; } diff --git a/mcwl-resource/src/main/java/com/mcwl/resource/domain/ModelVersion.java b/mcwl-resource/src/main/java/com/mcwl/resource/domain/ModelVersion.java index 648ff16..4dfc188 100644 --- a/mcwl-resource/src/main/java/com/mcwl/resource/domain/ModelVersion.java +++ b/mcwl-resource/src/main/java/com/mcwl/resource/domain/ModelVersion.java @@ -95,10 +95,10 @@ public class ModelVersion extends BaseEntity { @ApiModelProperty(value = "是否公开") private Integer isPublic; /** - * 是否加密 + * 是否加密(0不加密 1加密) */ @ApiModelProperty(value = "是否加密") - private String isEncrypt; + private Integer isEncrypt; /** * 是否在线使用 */ diff --git a/mcwl-resource/src/main/java/com/mcwl/resource/domain/dto/ModelImageRes.java b/mcwl-resource/src/main/java/com/mcwl/resource/domain/dto/ModelImageRes.java index c690221..bd6c2d2 100644 --- a/mcwl-resource/src/main/java/com/mcwl/resource/domain/dto/ModelImageRes.java +++ b/mcwl-resource/src/main/java/com/mcwl/resource/domain/dto/ModelImageRes.java @@ -2,7 +2,6 @@ package com.mcwl.resource.domain.dto; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; -import lombok.Builder; import lombok.Data; import javax.validation.constraints.NotBlank; diff --git a/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelImageServiceImpl.java b/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelImageServiceImpl.java index 08caf58..be341cd 100644 --- a/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelImageServiceImpl.java +++ b/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelImageServiceImpl.java @@ -1,24 +1,22 @@ package com.mcwl.resource.service.impl; import cn.hutool.core.bean.BeanUtil; +import com.alibaba.fastjson2.JSONArray; +import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.OrderItem; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.mcwl.common.constant.DictConstants; import com.mcwl.common.constant.HttpStatus; -import com.mcwl.common.core.domain.entity.SysDictData; import com.mcwl.common.core.domain.entity.SysUser; -import com.mcwl.common.core.page.PageDomain; import com.mcwl.common.core.page.TableDataInfo; import com.mcwl.common.utils.SecurityUtils; import com.mcwl.common.utils.StringUtils; +import com.mcwl.common.utils.baidu.BaiduCensor; import com.mcwl.resource.domain.ModelImage; -import com.mcwl.resource.domain.ModelImageComment; -import com.mcwl.resource.domain.dto.ModelImageCommentRes; import com.mcwl.resource.domain.dto.ModelImagePageRes; import com.mcwl.resource.domain.dto.ModelImageRes; -import com.mcwl.resource.domain.vo.ModelImageCommentVo; import com.mcwl.resource.domain.vo.ModelImageVo; import com.mcwl.resource.mapper.ModelImageCommentMapper; import com.mcwl.resource.mapper.ModelImageMapper; @@ -27,14 +25,16 @@ import com.mcwl.system.init.DictInit; import com.mcwl.system.service.ISysDictDataService; import com.mcwl.system.service.ISysUserService; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.stereotype.Service; -import javax.validation.constraints.NotNull; import java.util.ArrayList; -import java.util.Date; import java.util.List; import java.util.Objects; +@Slf4j @Service @RequiredArgsConstructor public class ModelImageServiceImpl extends ServiceImpl implements ModelImageService { @@ -47,6 +47,8 @@ public class ModelImageServiceImpl extends ServiceImpl { + if (modelImage != null) { + if (modelImage.getTitle() != null) { + + //审核名称 + String s = BaiduCensor.TextCensor(modelImage.getTitle() + "," + modelImage.getTags() + "," + + modelImage.getDescription()); + // 解析 JSON 字符串 + JSONObject jsonObject = JSONObject.parseObject(s); + // 获取 'conclusion' 字段的值 + String conclusion = jsonObject.getString("conclusion"); + + if (conclusion.equals("不合规")) { + + //更改状态,添加原因 -> 结束任务 + // 获取 'data' 数组 + JSONArray dataArray = jsonObject.getJSONArray("data"); + + // 存储所有的失败原因 + List failureReasons = new ArrayList<>(); + // 遍历 'data' 数组中的每个元素 + for (Object itemObj : dataArray) { + JSONObject item = (JSONObject) itemObj; + String msg = item.getString("msg"); + failureReasons.add(msg); + } + // 使用逗号拼接所有的失败原因 + String concatenatedReasons = String.join(", ", failureReasons); + modelImage.setAuditText(concatenatedReasons); + + //修改状态以及失败原因 + modelImage.setStatus(4); + log.info("执行111"); + modelImageMapper.updateById(modelImage); + log.info("图片审核未通过"); + //结束任务 + return; + } + + //修改为合格 + modelImage.setAuditText(""); + modelImage.setStatus(1); + baseMapper.updateById(modelImage); + } + } + + if (modelImage.getImagePaths() == null) { + return; + } + //审核图片 + String[] split = modelImage.getImagePaths().split(","); + for (String path : split) { + String s2 = BaiduCensor.ImageCnesor(path); + JSONObject jsonObject2 = JSONObject.parseObject(s2); + if (jsonObject2.getString("conclusion").equals("不合规")) { + + //修改状态->跳出循环 判断下一个版本 + // 获取 'data' 数组 + JSONArray dataArray2 = jsonObject2.getJSONArray("data"); + // 存储所有的失败原因 + List failureReasons = new ArrayList<>(); + // 遍历 'data' 数组中的每个元素 + for (Object itemObj : dataArray2) { + JSONObject item = (JSONObject) itemObj; + String msg = item.getString("msg"); + failureReasons.add(msg); + } + // 使用逗号拼接所有的失败原因 + String concatenatedReasons = String.join(", ", failureReasons); + modelImage.setAuditText(concatenatedReasons); + modelImage.setStatus(4); + baseMapper.updateById(modelImage); + log.info("图片审核未通过"); + return; + } + } + + //修改版本成功审核状态 + modelImage.setAuditText(""); + modelImage.setStatus(1); + baseMapper.updateById(modelImage); + log.info("全部通过审核"); + }); + + } /** @@ -155,5 +244,4 @@ public class ModelImageServiceImpl extends ServiceImpl i }else { workFlowVersionMapper.updateByName(workFlowVersion); } - workFlowVersionMapper.updateByName(workFlowVersion); log.info("图片审核未通过"); break; } From 2b791a875a10e8314ba77ff07673ce60dfeaf1bc Mon Sep 17 00:00:00 2001 From: Diyu0904 <1819728964@qq.com> Date: Tue, 21 Jan 2025 17:15:45 +0800 Subject: [PATCH 2/2] =?UTF-8?q?=E5=90=88=E5=B9=B6=E5=88=86=E6=94=AF=20?= =?UTF-8?q?=E5=9B=BE=E7=89=87=E5=AE=A1=E6=A0=B8+=E6=A8=A1=E5=9E=8B?= =?UTF-8?q?=E5=AE=A1=E6=A0=B8=E5=BE=85=E5=90=88=E5=B9=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/ModelImageServiceImpl.java | 49 ---- .../service/impl/ModelServiceImpl.java | 272 ------------------ 2 files changed, 321 deletions(-) delete mode 100644 mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelServiceImpl.java diff --git a/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelImageServiceImpl.java b/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelImageServiceImpl.java index f9b66fb..efda0b2 100644 --- a/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelImageServiceImpl.java +++ b/mcwl-resource/src/main/java/com/mcwl/resource/service/impl/ModelImageServiceImpl.java @@ -1,8 +1,6 @@ package com.mcwl.resource.service.impl; import cn.hutool.core.bean.BeanUtil; -import com.alibaba.fastjson2.JSONArray; -import com.alibaba.fastjson2.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.OrderItem; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -13,11 +11,7 @@ import com.mcwl.common.core.domain.entity.SysUser; import com.mcwl.common.core.page.TableDataInfo; import com.mcwl.common.utils.SecurityUtils; import com.mcwl.common.utils.StringUtils; -import com.mcwl.common.utils.baidu.BaiduCensor; import com.mcwl.resource.domain.ModelImage; -import com.mcwl.resource.domain.ModelImageComment; -import com.mcwl.resource.domain.ModelProduct; -import com.mcwl.resource.domain.dto.ModelImageCommentRes; import com.mcwl.resource.domain.dto.ModelImagePageRes; import com.mcwl.resource.domain.dto.ModelImageRes; import com.mcwl.resource.domain.vo.ModelImageVo; @@ -28,16 +22,12 @@ import com.mcwl.system.init.DictInit; import com.mcwl.system.service.ISysDictDataService; import com.mcwl.system.service.ISysUserService; import lombok.RequiredArgsConstructor; -import lombok.extern.slf4j.Slf4j; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import org.springframework.stereotype.Service; import java.util.ArrayList; import java.util.List; import java.util.Objects; -@Slf4j @Service @RequiredArgsConstructor public class ModelImageServiceImpl extends ServiceImpl implements ModelImageService { @@ -50,8 +40,6 @@ public class ModelImageServiceImpl extends ServiceImpl { - if (modelImage != null) { - - if (modelImage.getTitle() != null) { - - //审核名称 - String s = BaiduCensor.TextCensor(modelImage.getTitle() + "," + modelImage.getTags() + "," - + modelImage.getDescription()); - // 解析 JSON 字符串 - JSONObject jsonObject = JSONObject.parseObject(s); - // 获取 'conclusion' 字段的值 - String conclusion = jsonObject.getString("conclusion"); - - if (conclusion.equals("不合规")) { - - //更改状态,添加原因 -> 结束任务 - // 获取 'data' 数组 - JSONArray dataArray = jsonObject.getJSONArray("data"); - - // 存储所有的失败原因 - List failureReasons = new ArrayList<>(); - // 遍历 'data' 数组中的每个元素 - for (Object itemObj : dataArray) { - JSONObject item = (JSONObject) itemObj; - String msg = item.getString("msg"); - failureReasons.add(msg); - } - // 使用逗号拼接所有的失败原因 - String concatenatedReasons = String.join(", ", failureReasons); - modelImage.setAuditText(concatenatedReasons); } @@ -196,5 +148,4 @@ public class ModelImageServiceImpl extends ServiceImpl implements ModelService { - @Autowired - private RedisCache redisCache; - - @Autowired - private ToActivityService toActivityService; - @Autowired - private ModelVersionMapper modelVersionMapper; - @Autowired - private ModelMapper postMapper; - @Autowired - private ISysUserService sysUserService; - - @Autowired - private ThreadPoolTaskExecutor threadPoolTaskExecutor; - - /** - * 设置模型置顶状态 - * - * @param modelId 模型ID - * @param isTop 是否置顶 - */ - @Override - public void setModelTop(Long id, boolean isTop) { - postMapper.updateTopStatus(id, isTop ? 1 : 0); - } - /** - * 获取模型列表 - * - * @param - * @return 模型列表 - */ - - @Override - public List fetchModelsSortedByTopStatus() { - return postMapper.selectAllModelsSortedByTopStatus(); - } - @Override - public Page selectByUserId(MallProductVo mallProductVo) { - - // 创建分页对象 - Page mallProductPage = new Page<>(mallProductVo.getPageNumber(), mallProductVo.getPageSize()); - - //获取当前登录人ID - Long userId = SecurityUtils.getUserId(); - LambdaQueryWrapper mallProductLambdaQueryWrapper = new LambdaQueryWrapper<>(); - - mallProductLambdaQueryWrapper.eq(ModelProduct::getUserId,userId); - mallProductLambdaQueryWrapper.eq(ModelProduct::getDelFlag,0); - - // 开始时间和结束时间过滤 - if (mallProductVo.getStartTime() != null && mallProductVo.getEndTime() != null) { - // 查询开始时间和结束时间之间的商品 - mallProductLambdaQueryWrapper.between(ModelProduct::getCreateTime, mallProductVo.getStartTime(), mallProductVo.getEndTime()); - } else if (mallProductVo.getStartTime() != null) { - // 只有开始时间,查询大于等于开始时间的商品 - mallProductLambdaQueryWrapper.ge(ModelProduct::getCreateTime, mallProductVo.getStartTime()); - } else if (mallProductVo.getEndTime() != null) { - // 只有结束时间,查询小于等于结束时间的商品 - mallProductLambdaQueryWrapper.le(ModelProduct::getCreateTime, mallProductVo.getEndTime()); - } - - return postMapper.selectPage(mallProductPage, mallProductLambdaQueryWrapper); - } - - @Override - public Page pageLike(MallProductVo mallProductVo, List list) { - return null; - } - - - /** - * 分页查询 - * - * @param imagePageRes 分页参数 - * @return 分页数据 - */ - @Override - public TableDataInfo listByPage(ModelImagePageRes imagePageRes) { - - Page page = new Page<>(imagePageRes.getPageNum(), imagePageRes.getPageSize()); - if (StringUtils.isEmpty(imagePageRes.getOrderByColumn())) { - imagePageRes.setOrderByColumn("create_time"); - } - // 设置排序 - boolean isAsc = Objects.equals(imagePageRes.getIsAsc(), "asc"); - OrderItem orderItem = new OrderItem(imagePageRes.getOrderByColumn(), isAsc); - page.addOrder(orderItem); - - LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(); - lqw.eq(imagePageRes.getStatus() != null, ModelProduct::getAuditStatus, imagePageRes.getStatus()) - .eq(imagePageRes.getUserId() != null, ModelProduct::getUserId, imagePageRes.getUserId()) - .ge(imagePageRes.getStartTime() != null, ModelProduct::getCreateTime, imagePageRes.getStartTime()) - .le(imagePageRes.getEndTime() != null, ModelProduct::getCreateTime, imagePageRes.getEndTime()); - - postMapper.selectPage(page, lqw); - // 获取分页数据 - List modelImageList = page.getRecords(); - - // Model数据转为ModelPageVo - List modelVoList = new ArrayList<>(); - for (ModelProduct modelImage : modelImageList) { - ModelVo modelVo = new ModelVo(); - BeanUtil.copyProperties(modelImage, modelVo); - // 获取用户信息 - SysUser sysUser = sysUserService.selectUserById(modelImage.getUserId()); - modelVo.setUserId(sysUser.getUserId()); - modelVo.setUserName(sysUser.getUserName()); - modelVo.setUserAvatar(sysUser.getAvatar()); - modelVoList.add(modelVo); - } - - // 封装分页数据 - TableDataInfo rspData = new TableDataInfo(); - rspData.setCode(HttpStatus.SUCCESS); - rspData.setMsg("查询成功"); - rspData.setRows(modelVoList); - rspData.setTotal(page.getTotal()); - - return rspData; - } - - @Override - public AjaxResult addModel(RequestModel requestModel) { - //获取封面图 - String filePath = requestModel.getModelVersionList().get(0).getFilePath(); - String[] split = filePath.split(","); - ModelProduct modelProduct = requestModel.getModelProduct(); - modelProduct.setSurfaceUrl(split[0]); - modelProduct.setCreateTime(new Date()); - - - //添加模型表数据 - postMapper.insert(requestModel.getModelProduct()); - - log.info("获取到的入参:{}",requestModel.getModelProduct()); - - //批量添加版本 - modelVersionMapper.addModelVersion(requestModel.getModelProduct(),requestModel.getModelVersionList()); - - //执行审核方法 - audit(requestModel); - - return AjaxResult.success("添加成功,等待审核"); - } - - @Override - public void updaModel(RequestModel requestModel) { - //修改模版的信息 - ModelProduct modelProduct = requestModel.getModelProduct(); - if (ObjectUtils.isNotEmpty(modelProduct)){ - - if (StringUtils.isNotNull(modelProduct.getId())){ - modelProduct.setAuditStatus(3); - modelProduct.setUpdateTime(new Date()); - postMapper.updateById(requestModel.getModelProduct()); - } - } - - //修改工作流版本的信息 - if (requestModel.getModelVersionList().size() != 0){ - - //批量修改 - for (ModelVersion modelVersion : requestModel.getModelVersionList()) { - modelVersion.setAuditStatus(3); - modelVersionMapper.updateById(modelVersion); - } - - ModelProduct model = ModelProduct.builder(). - id(requestModel.getModelVersionList().get(0). - getModelId()).build(); - model.setUpdateTime(new Date()); - postMapper.updateById(model); - } - - //审核 - audit(requestModel); - - } - - @Override - public AjaxResult selectModelById(Long id) { - //查询详情 - ModelProduct modelProduct = postMapper.selectById(id); - - //翻译属性 垂类 - if (StringUtils.isNotEmpty(modelProduct.getCategory())){ - modelProduct.setCategory(DictInit.getDictValue(DictConstants.MODEL_CHILD_CATEGORY,modelProduct.getCategory())); - } - - - //标签 - if (StringUtils.isNotEmpty(modelProduct.getTags())){ - ArrayList strings = new ArrayList<>(); - String[] split = modelProduct.getTags().split(","); - for (String s : split) { - if (s != ""){ - strings.add(s); - } - } - modelProduct.setStyleList(strings); - } - - //功能 - if (StringUtils.isNotEmpty(modelProduct.getFunctions())){ - modelProduct.setCategory(DictInit.getDictValue(DictConstants.WORK_FLOW_FUNCTIONS,modelProduct.getFunctions())); - } - - //活动 - if (StringUtils.isNotEmpty(modelProduct.getActivityId())){ - modelProduct.setActivityId(toActivityService.getById(modelProduct.getActivityId()).getActivityName()); - } - - return AjaxResult.success(modelProduct); - } - - - - -}