Merge branch 'develop' of http://139.196.179.195:3000/chenxudong/electromagnetic-data-new into develop
This commit is contained in:
commit
dc7d061be2
|
|
@ -6,6 +6,7 @@ import com.electromagnetic.industry.software.common.resp.ElectromagneticResult;
|
||||||
import com.electromagnetic.industry.software.common.util.ElectromagneticResultUtil;
|
import com.electromagnetic.industry.software.common.util.ElectromagneticResultUtil;
|
||||||
import com.electromagnetic.industry.software.common.util.UserThreadLocal;
|
import com.electromagnetic.industry.software.common.util.UserThreadLocal;
|
||||||
import com.electromagnetic.industry.software.manage.service.EdTagLibraryService;
|
import com.electromagnetic.industry.software.manage.service.EdTagLibraryService;
|
||||||
|
import com.electromagnetic.industry.software.manage.service.FileTagRelationService;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -17,6 +18,9 @@ public class EdTagLibraryController {
|
||||||
@Resource
|
@Resource
|
||||||
private EdTagLibraryService edTagLibraryService;
|
private EdTagLibraryService edTagLibraryService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private FileTagRelationService fileTagRelationService;
|
||||||
|
|
||||||
// 新建标签组
|
// 新建标签组
|
||||||
@PostMapping("/createGroup")
|
@PostMapping("/createGroup")
|
||||||
@UserOperation(value="创建了标签组", modelName = UserOperationModuleEnum.TAG)
|
@UserOperation(value="创建了标签组", modelName = UserOperationModuleEnum.TAG)
|
||||||
|
|
@ -83,5 +87,12 @@ public class EdTagLibraryController {
|
||||||
public ElectromagneticResult<?> listAllTags() {
|
public ElectromagneticResult<?> listAllTags() {
|
||||||
return ElectromagneticResultUtil.success(edTagLibraryService.listAllTags());
|
return ElectromagneticResultUtil.success(edTagLibraryService.listAllTags());
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
|
// 批量添加标签到文件
|
||||||
|
@PostMapping("/addTagsToFile")
|
||||||
|
@UserOperation(value="批量添加了标签到文件", modelName = UserOperationModuleEnum.TAG)
|
||||||
|
public ElectromagneticResult<?> addTagsToFile(@RequestParam String fileId, @RequestParam List<String> tagIds) {
|
||||||
|
String createdBy = UserThreadLocal.getUserId();
|
||||||
|
return ElectromagneticResultUtil.success(fileTagRelationService.addTagsToFile(fileId, tagIds, createdBy));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,9 @@
|
||||||
|
package com.electromagnetic.industry.software.manage.mapper;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
|
import com.electromagnetic.industry.software.manage.pojo.models.FileTagRelation;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
|
||||||
|
@Mapper
|
||||||
|
public interface FileTagRelationMapper extends BaseMapper<FileTagRelation> {
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,18 @@
|
||||||
|
package com.electromagnetic.industry.software.manage.pojo.models;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.*;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@TableName("file_tag_relations")
|
||||||
|
public class FileTagRelation {
|
||||||
|
@TableId(type = IdType.ASSIGN_UUID)
|
||||||
|
private String id;
|
||||||
|
private String fileId;
|
||||||
|
private String tagId;
|
||||||
|
@TableField(fill = FieldFill.INSERT)
|
||||||
|
private Date createdTime;
|
||||||
|
private String createdBy;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
package com.electromagnetic.industry.software.manage.service;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
import com.electromagnetic.industry.software.manage.pojo.models.FileTagRelation;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public interface FileTagRelationService extends IService<FileTagRelation> {
|
||||||
|
boolean addTagToFile(String fileId, String tagId, String createdBy);
|
||||||
|
|
||||||
|
boolean addTagsToFile(String fileId, List<String> tagIds, String createdBy);
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,55 @@
|
||||||
|
package com.electromagnetic.industry.software.manage.service.serviceimpl;
|
||||||
|
import cn.hutool.core.lang.Assert;
|
||||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import com.electromagnetic.industry.software.common.enums.PublishEnum;
|
||||||
|
import com.electromagnetic.industry.software.common.util.IdWorker;
|
||||||
|
import com.electromagnetic.industry.software.common.util.UserThreadLocal;
|
||||||
|
import com.electromagnetic.industry.software.manage.mapper.EdTagLibraryMapper;
|
||||||
|
import com.electromagnetic.industry.software.manage.mapper.FileTagRelationMapper;
|
||||||
|
import com.electromagnetic.industry.software.manage.pojo.models.EdTagLibrary;
|
||||||
|
import com.electromagnetic.industry.software.manage.pojo.models.FileTagRelation;
|
||||||
|
import com.electromagnetic.industry.software.manage.service.FileTagRelationService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class FileTagRelationServiceImpl extends ServiceImpl<FileTagRelationMapper, FileTagRelation> implements FileTagRelationService {
|
||||||
|
@Autowired
|
||||||
|
private EdTagLibraryMapper edTagLibraryMapper;
|
||||||
|
@Override
|
||||||
|
@Transactional
|
||||||
|
public boolean addTagToFile(String fileId, String tagId, String createdBy) {
|
||||||
|
// 检查标签是否存在并且已发布
|
||||||
|
EdTagLibrary tag = edTagLibraryMapper.selectOne(new LambdaQueryWrapper<EdTagLibrary>()
|
||||||
|
.eq(EdTagLibrary::getTagId, tagId)
|
||||||
|
.eq(EdTagLibrary::getIsPublished, PublishEnum.PUBLISHED.getCode()));
|
||||||
|
Assert.notNull(tag, "标签不存在或未发布");
|
||||||
|
|
||||||
|
// 创建文件与标签关系
|
||||||
|
FileTagRelation relation = new FileTagRelation();
|
||||||
|
relation.setId(IdWorker.getSnowFlakeIdString());
|
||||||
|
relation.setFileId(fileId);
|
||||||
|
relation.setTagId(tagId);
|
||||||
|
relation.setCreatedBy(createdBy);
|
||||||
|
|
||||||
|
boolean isSuccess = this.save(relation);
|
||||||
|
if (isSuccess) {
|
||||||
|
UserThreadLocal.setSuccessInfo("", relation.getId(), "添加了标签到文件");
|
||||||
|
}
|
||||||
|
return isSuccess;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
@Transactional
|
||||||
|
public boolean addTagsToFile(String fileId, List<String> tagIds, String createdBy) {
|
||||||
|
boolean isSuccess = true;
|
||||||
|
for (String tagId : tagIds) {
|
||||||
|
isSuccess &= addTagToFile(fileId, tagId, createdBy);
|
||||||
|
}
|
||||||
|
return isSuccess;
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue