分组相关接口
This commit is contained in:
parent
e07de3d7ad
commit
355673e532
@ -1,17 +1,16 @@
|
|||||||
package cd.casic.ci.api;
|
package cd.casic.ci.api;
|
||||||
|
|
||||||
|
|
||||||
import cd.casic.ci.process.dto.req.group.GroupQueryReq;
|
|
||||||
import cd.casic.ci.process.dto.req.group.GroupReq;
|
import cd.casic.ci.process.dto.req.group.GroupAddReq;
|
||||||
import cd.casic.ci.process.dto.resp.group.GroupResp;
|
import cd.casic.ci.process.dto.req.group.GroupListReq;
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupUpdateReq;
|
||||||
|
import cd.casic.ci.process.dto.resp.group.GroupListResp;
|
||||||
|
import cd.casic.ci.process.process.dataObject.pipgroup.PipGroup;
|
||||||
|
import cd.casic.ci.process.process.service.group.GroupService;
|
||||||
import cd.casic.framework.commons.pojo.CommonResult;
|
import cd.casic.framework.commons.pojo.CommonResult;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import jakarta.annotation.Resource;
|
||||||
import jakarta.validation.Valid;
|
import org.springframework.web.bind.annotation.*;
|
||||||
import org.jetbrains.annotations.NotNull;
|
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -26,61 +25,25 @@ import java.util.List;
|
|||||||
@RestController
|
@RestController
|
||||||
@RequestMapping("/group")
|
@RequestMapping("/group")
|
||||||
public class GroupController {
|
public class GroupController {
|
||||||
|
@Resource
|
||||||
@PostMapping(path="/createGroup")
|
private GroupService groupService;
|
||||||
public CommonResult<String> createGroup(@RequestBody @NotNull @Valid GroupReq groupReq){
|
@PostMapping("/addGroup")
|
||||||
|
public CommonResult<Void> addGroup(@RequestBody GroupAddReq req){
|
||||||
// String pipelineAuthHostId = groupService.createGroup(group);
|
groupService.addGroup(req);
|
||||||
|
|
||||||
String envId = "1";
|
|
||||||
return CommonResult.success(envId);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
@PostMapping(path="/deleteGroup")
|
|
||||||
public CommonResult<Void> deleteGroup(@NotNull String groupId){
|
|
||||||
|
|
||||||
// groupService.deleteGroup(groupId);
|
|
||||||
|
|
||||||
return CommonResult.success();
|
return CommonResult.success();
|
||||||
}
|
}
|
||||||
|
@PostMapping("/editGroup")
|
||||||
@PostMapping(path="/findGroupList")
|
public CommonResult<Void> editGroup(@RequestBody GroupUpdateReq req){
|
||||||
public CommonResult<List<GroupResp>> findGroupList(@NotNull GroupQueryReq query){
|
groupService.editGroup(req);
|
||||||
|
|
||||||
// List<Group> groupList = groupService.findGroupList(groupQuery);
|
|
||||||
List<GroupResp> groupRespList = new ArrayList<>(0);
|
|
||||||
GroupResp groupResp = new GroupResp();
|
|
||||||
groupResp.setId("1");
|
|
||||||
groupResp.setGroupName("test数据交互测试");
|
|
||||||
groupRespList.add(groupResp);
|
|
||||||
|
|
||||||
return CommonResult.success(groupRespList);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@PostMapping(path="/updateGroup")
|
|
||||||
public CommonResult<Void> updateGroup(@RequestBody @NotNull @Valid GroupReq groupReq){
|
|
||||||
|
|
||||||
// this.groupService.updateGroup(group);
|
|
||||||
|
|
||||||
return CommonResult.success();
|
return CommonResult.success();
|
||||||
}
|
}
|
||||||
|
@PostMapping("/listGroup")
|
||||||
|
public CommonResult<List<GroupListResp>> listGroup(@RequestBody GroupListReq req){
|
||||||
@PostMapping(path="/findGroupPage")
|
return CommonResult.success(groupService.listGroup(req));
|
||||||
public CommonResult<Page<GroupResp>> findGroupPage(@RequestBody @NotNull @Valid GroupQueryReq query){
|
}
|
||||||
|
@DeleteMapping("/deleteGroup/{id}")
|
||||||
// Pagination<Group> groupPage = groupService.findGroupPage(groupQuery);
|
public CommonResult<Void> deleteGroup(@PathVariable String id){
|
||||||
Page<GroupResp> groupRespPage = new Page<>();
|
groupService.deleteGroup(id);
|
||||||
List<GroupResp> groupRespList = new ArrayList<>(0);
|
return CommonResult.success();
|
||||||
GroupResp groupResp = new GroupResp();
|
|
||||||
groupResp.setId("1");
|
|
||||||
groupResp.setGroupName("test数据交互测试");
|
|
||||||
groupRespList.add(groupResp);
|
|
||||||
groupRespPage.setRecords(groupRespList);
|
|
||||||
return CommonResult.success(groupRespPage);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
package cd.casic.ci.process.constant;
|
||||||
|
|
||||||
|
public class PipGroupConstant {
|
||||||
|
public static final String GROUP_TYPE_PROJECT="PROJECT";
|
||||||
|
public static final String GROUP_TYPE_PERSON="PERSON";
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
package cd.casic.ci.process.dto.req.group;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GroupAddReq {
|
||||||
|
private String groupName;
|
||||||
|
/**
|
||||||
|
* PERSON-个人可见、PROJECT-项目可见
|
||||||
|
* */
|
||||||
|
private String type;
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
package cd.casic.ci.process.dto.req.group;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GroupListReq {
|
||||||
|
private String groupName;
|
||||||
|
}
|
@ -1,22 +0,0 @@
|
|||||||
package cd.casic.ci.process.dto.req.group;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @ClassName GroupQueryReq
|
|
||||||
* @Author hopeli
|
|
||||||
* @Date 2025/5/10 11:50
|
|
||||||
* @Version 1.0
|
|
||||||
*/
|
|
||||||
@Data
|
|
||||||
public class GroupQueryReq {
|
|
||||||
// 环境名称
|
|
||||||
private String groupName;
|
|
||||||
|
|
||||||
// 用户ID
|
|
||||||
private String userId;
|
|
||||||
|
|
||||||
//@ApiProperty(name ="pageParam",desc = "分页参数")
|
|
||||||
private Page pageParam= new Page();
|
|
||||||
}
|
|
@ -1,28 +0,0 @@
|
|||||||
package cd.casic.ci.process.dto.req.group;
|
|
||||||
|
|
||||||
import cd.casic.framework.commons.dataobject.User;
|
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @ClassName GroupReq
|
|
||||||
* @Author hopeli
|
|
||||||
* @Date 2025/5/10 11:47
|
|
||||||
* @Version 1.0
|
|
||||||
*/
|
|
||||||
@Data
|
|
||||||
public class GroupReq {
|
|
||||||
// id
|
|
||||||
private String id;
|
|
||||||
|
|
||||||
// 环境名称
|
|
||||||
private String groupName;
|
|
||||||
|
|
||||||
// 创建时间
|
|
||||||
private String createTime;
|
|
||||||
|
|
||||||
|
|
||||||
private User user;
|
|
||||||
|
|
||||||
// 说明
|
|
||||||
private String detail;
|
|
||||||
}
|
|
@ -0,0 +1,13 @@
|
|||||||
|
package cd.casic.ci.process.dto.req.group;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GroupUpdateReq {
|
||||||
|
private String id;
|
||||||
|
private String groupName;
|
||||||
|
/**
|
||||||
|
* PERSON-个人可见、PROJECT-项目可见
|
||||||
|
* */
|
||||||
|
private String type;
|
||||||
|
}
|
@ -0,0 +1,14 @@
|
|||||||
|
package cd.casic.ci.process.dto.resp.group;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GroupListResp {
|
||||||
|
private String id;
|
||||||
|
private String groupName;
|
||||||
|
/**
|
||||||
|
* PERSON-个人可见、PROJECT-项目可见
|
||||||
|
* */
|
||||||
|
private String type;
|
||||||
|
private Integer count;
|
||||||
|
}
|
@ -1,28 +0,0 @@
|
|||||||
package cd.casic.ci.process.dto.resp.group;
|
|
||||||
|
|
||||||
import cd.casic.framework.commons.dataobject.User;
|
|
||||||
import lombok.Data;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @ClassName GroupResp
|
|
||||||
* @Author hopeli
|
|
||||||
* @Date 2025/5/10 11:47
|
|
||||||
* @Version 1.0
|
|
||||||
*/
|
|
||||||
@Data
|
|
||||||
public class GroupResp {
|
|
||||||
// id
|
|
||||||
private String id;
|
|
||||||
|
|
||||||
// 环境名称
|
|
||||||
private String groupName;
|
|
||||||
|
|
||||||
// 创建时间
|
|
||||||
private String createTime;
|
|
||||||
|
|
||||||
|
|
||||||
private User user;
|
|
||||||
|
|
||||||
// 说明
|
|
||||||
private String detail;
|
|
||||||
}
|
|
@ -0,0 +1,29 @@
|
|||||||
|
package cd.casic.ci.process.process.converter;
|
||||||
|
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupAddReq;
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupUpdateReq;
|
||||||
|
import cd.casic.ci.process.dto.req.pipeline.PipelineCreateReq;
|
||||||
|
import cd.casic.ci.process.dto.req.pipeline.PipelineUpdateReq;
|
||||||
|
import cd.casic.ci.process.dto.resp.group.GroupListResp;
|
||||||
|
import cd.casic.ci.process.dto.resp.pipeline.PipelineFindResp;
|
||||||
|
import cd.casic.ci.process.process.dataObject.pipeline.PipPipeline;
|
||||||
|
import cd.casic.ci.process.process.dataObject.pipgroup.PipGroup;
|
||||||
|
import org.mapstruct.Mapper;
|
||||||
|
import org.mapstruct.factory.Mappers;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author HopeLi
|
||||||
|
* @version v1.0
|
||||||
|
* @ClassName PipelineConverter
|
||||||
|
* @Date: 2025/5/13 14:39
|
||||||
|
* @Description:
|
||||||
|
*/
|
||||||
|
@Mapper(componentModel = "spring")
|
||||||
|
public interface GroupConverter {
|
||||||
|
GroupConverter INSTANCE = Mappers.getMapper(GroupConverter.class);
|
||||||
|
public PipGroup reqToDto(GroupAddReq req);
|
||||||
|
public PipGroup reqToDto(GroupUpdateReq req);
|
||||||
|
List<GroupListResp> dtoListToResp(List<PipGroup> groupList);
|
||||||
|
}
|
@ -0,0 +1,12 @@
|
|||||||
|
package cd.casic.ci.process.process.dao.pipeline;
|
||||||
|
|
||||||
|
import cd.casic.ci.process.dto.resp.group.GroupListResp;
|
||||||
|
import cd.casic.ci.process.process.dataObject.pipgroup.PipGroup;
|
||||||
|
import cd.casic.framework.mybatis.core.mapper.BaseMapperX;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
public interface PipGroupDao extends BaseMapperX<PipGroup> {
|
||||||
|
List<GroupListResp> getList(@Param("groupName") String groupName, @Param("userId")String userId);
|
||||||
|
}
|
@ -0,0 +1,16 @@
|
|||||||
|
package cd.casic.ci.process.process.dataObject.pipgroup;
|
||||||
|
|
||||||
|
import cd.casic.framework.commons.dataobject.BaseDO;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@Data
|
||||||
|
public class PipGroup extends BaseDO {
|
||||||
|
private String id;
|
||||||
|
private String groupName;
|
||||||
|
/**
|
||||||
|
* PERSON-个人可见、PROJECT-项目可见
|
||||||
|
* */
|
||||||
|
private String type;
|
||||||
|
}
|
@ -0,0 +1,20 @@
|
|||||||
|
package cd.casic.ci.process.process.service.group;
|
||||||
|
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupAddReq;
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupListReq;
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupUpdateReq;
|
||||||
|
import cd.casic.ci.process.dto.resp.group.GroupListResp;
|
||||||
|
import cd.casic.ci.process.process.dataObject.pipgroup.PipGroup;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 流水线分组服务
|
||||||
|
* */
|
||||||
|
public interface GroupService extends IService<PipGroup> {
|
||||||
|
void addGroup(GroupAddReq req);
|
||||||
|
void editGroup(GroupUpdateReq req);
|
||||||
|
List<GroupListResp> listGroup(GroupListReq req);
|
||||||
|
void deleteGroup(String id);
|
||||||
|
}
|
@ -0,0 +1,45 @@
|
|||||||
|
package cd.casic.ci.process.process.service.group.impl;
|
||||||
|
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupAddReq;
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupListReq;
|
||||||
|
import cd.casic.ci.process.dto.req.group.GroupUpdateReq;
|
||||||
|
import cd.casic.ci.process.dto.resp.group.GroupListResp;
|
||||||
|
import cd.casic.ci.process.process.converter.GroupConverter;
|
||||||
|
import cd.casic.ci.process.process.dao.pipeline.PipGroupDao;
|
||||||
|
import cd.casic.ci.process.process.dataObject.pipgroup.PipGroup;
|
||||||
|
import cd.casic.ci.process.process.service.group.GroupService;
|
||||||
|
import cd.casic.ci.process.util.WebFrameworkUtils;
|
||||||
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
|
import jakarta.annotation.Resource;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
@Service
|
||||||
|
public class GroupServiceImpl extends ServiceImpl<PipGroupDao, PipGroup> implements GroupService {
|
||||||
|
@Resource
|
||||||
|
private GroupConverter converter;
|
||||||
|
@Resource
|
||||||
|
private PipGroupDao groupDao;
|
||||||
|
@Override
|
||||||
|
public void addGroup(GroupAddReq req) {
|
||||||
|
PipGroup pipGroup = converter.reqToDto(req);
|
||||||
|
save(pipGroup);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void EditGroup(GroupUpdateReq req) {
|
||||||
|
PipGroup pipGroup = converter.reqToDto(req);
|
||||||
|
updateById(pipGroup);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<GroupListResp> listGroup(GroupListReq req) {
|
||||||
|
// 查询数量
|
||||||
|
return groupDao.getList(req.getGroupName(), WebFrameworkUtils.getLoginUserIdStr());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deleteGroup(String id) {
|
||||||
|
removeById(id);
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,26 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||||||
|
<!DOCTYPE mapper
|
||||||
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||||
|
|
||||||
|
<mapper namespace="cd.casic.ci.process.process.dao.pipeline.PipGroupDao">
|
||||||
|
<!-- 这里暂时没有任何SQL方法 -->
|
||||||
|
|
||||||
|
<select id="getList" resultType="cd.casic.ci.process.dto.resp.group.GroupListResp">
|
||||||
|
SELECT * FROM
|
||||||
|
(SELECT * FROM pip_group
|
||||||
|
UNION ALL
|
||||||
|
(SELECT null AS id,
|
||||||
|
"未分组" AS group_name,
|
||||||
|
"PROJECT" AS type ,
|
||||||
|
"" AS creator,
|
||||||
|
NOW() AS create_time,
|
||||||
|
NOW() AS update_time,
|
||||||
|
"" AS updater)
|
||||||
|
) pg
|
||||||
|
LEFT JOIN
|
||||||
|
(SELECT group_id,COUNT(*) count FROM pip_pipeline GROUP BY group_id) pl
|
||||||
|
ON ((pg.id = pl.group_id ) OR (ISNULL(pl.group_id) AND ISNULL(pl.group_id)))
|
||||||
|
WHERE pg.`name` LIKE #{groupName} AND ((pg.creator = #{userId} AND pg.type = 'PERSON') OR (pg.type = 'PROJECT'))
|
||||||
|
</select>
|
||||||
|
</mapper>
|
Loading…
x
Reference in New Issue
Block a user