diff --git a/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/GroupController.java b/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/GroupController.java index ce257535..8b4a656e 100644 --- a/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/GroupController.java +++ b/modules/module-ci-process-api/src/main/java/cd/casic/ci/api/GroupController.java @@ -1,17 +1,16 @@ 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.resp.group.GroupResp; + +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 cd.casic.ci.process.process.service.group.GroupService; import cd.casic.framework.commons.pojo.CommonResult; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import jakarta.validation.Valid; -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 jakarta.annotation.Resource; +import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.List; @@ -26,61 +25,25 @@ import java.util.List; @RestController @RequestMapping("/group") public class GroupController { - - @PostMapping(path="/createGroup") - public CommonResult createGroup(@RequestBody @NotNull @Valid GroupReq groupReq){ - -// String pipelineAuthHostId = groupService.createGroup(group); - - String envId = "1"; - return CommonResult.success(envId); - } - - - @PostMapping(path="/deleteGroup") - public CommonResult deleteGroup(@NotNull String groupId){ - -// groupService.deleteGroup(groupId); - + @Resource + private GroupService groupService; + @PostMapping("/addGroup") + public CommonResult addGroup(@RequestBody GroupAddReq req){ + groupService.addGroup(req); return CommonResult.success(); } - - @PostMapping(path="/findGroupList") - public CommonResult> findGroupList(@NotNull GroupQueryReq query){ - -// List groupList = groupService.findGroupList(groupQuery); - List 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 updateGroup(@RequestBody @NotNull @Valid GroupReq groupReq){ - -// this.groupService.updateGroup(group); - + @PostMapping("/editGroup") + public CommonResult editGroup(@RequestBody GroupUpdateReq req){ + groupService.editGroup(req); return CommonResult.success(); } - - - @PostMapping(path="/findGroupPage") - public CommonResult> findGroupPage(@RequestBody @NotNull @Valid GroupQueryReq query){ - -// Pagination groupPage = groupService.findGroupPage(groupQuery); - Page groupRespPage = new Page<>(); - List groupRespList = new ArrayList<>(0); - GroupResp groupResp = new GroupResp(); - groupResp.setId("1"); - groupResp.setGroupName("test数据交互测试"); - groupRespList.add(groupResp); - groupRespPage.setRecords(groupRespList); - return CommonResult.success(groupRespPage); + @PostMapping("/listGroup") + public CommonResult> listGroup(@RequestBody GroupListReq req){ + return CommonResult.success(groupService.listGroup(req)); + } + @DeleteMapping("/deleteGroup/{id}") + public CommonResult deleteGroup(@PathVariable String id){ + groupService.deleteGroup(id); + return CommonResult.success(); } - } diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/constant/PipGroupConstant.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/constant/PipGroupConstant.java new file mode 100644 index 00000000..82da5da7 --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/constant/PipGroupConstant.java @@ -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"; +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupAddReq.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupAddReq.java new file mode 100644 index 00000000..4625fc2c --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupAddReq.java @@ -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; +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupListReq.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupListReq.java new file mode 100644 index 00000000..d7077e06 --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupListReq.java @@ -0,0 +1,8 @@ +package cd.casic.ci.process.dto.req.group; + +import lombok.Data; + +@Data +public class GroupListReq { + private String groupName; +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupQueryReq.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupQueryReq.java deleted file mode 100644 index 2c98c5f9..00000000 --- a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupQueryReq.java +++ /dev/null @@ -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(); -} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupReq.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupReq.java deleted file mode 100644 index 7de81e37..00000000 --- a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupReq.java +++ /dev/null @@ -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; -} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupUpdateReq.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupUpdateReq.java new file mode 100644 index 00000000..e7b24ad9 --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/req/group/GroupUpdateReq.java @@ -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; +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/group/GroupListResp.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/group/GroupListResp.java new file mode 100644 index 00000000..19294b38 --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/group/GroupListResp.java @@ -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; +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/group/GroupResp.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/group/GroupResp.java deleted file mode 100644 index bc5aefe2..00000000 --- a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/dto/resp/group/GroupResp.java +++ /dev/null @@ -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; -} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/converter/GroupConverter.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/converter/GroupConverter.java new file mode 100644 index 00000000..0d1ca61b --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/converter/GroupConverter.java @@ -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 dtoListToResp(List groupList); +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dao/pipeline/PipGroupDao.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dao/pipeline/PipGroupDao.java new file mode 100644 index 00000000..604e113c --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dao/pipeline/PipGroupDao.java @@ -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 { + List getList(@Param("groupName") String groupName, @Param("userId")String userId); +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/pipgroup/PipGroup.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/pipgroup/PipGroup.java new file mode 100644 index 00000000..a7ef01db --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/dataObject/pipgroup/PipGroup.java @@ -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; +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/group/GroupService.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/group/GroupService.java new file mode 100644 index 00000000..55ca6854 --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/group/GroupService.java @@ -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 { + void addGroup(GroupAddReq req); + void editGroup(GroupUpdateReq req); + List listGroup(GroupListReq req); + void deleteGroup(String id); +} diff --git a/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/group/impl/GroupServiceImpl.java b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/group/impl/GroupServiceImpl.java new file mode 100644 index 00000000..8d4dcf9f --- /dev/null +++ b/modules/module-ci-process-biz/src/main/java/cd/casic/ci/process/process/service/group/impl/GroupServiceImpl.java @@ -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 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 listGroup(GroupListReq req) { + // 查询数量 + return groupDao.getList(req.getGroupName(), WebFrameworkUtils.getLoginUserIdStr()); + } + + @Override + public void deleteGroup(String id) { + removeById(id); + } +} diff --git a/modules/module-ci-process-biz/src/main/resources/mapper/PipGroupDao.xml b/modules/module-ci-process-biz/src/main/resources/mapper/PipGroupDao.xml new file mode 100644 index 00000000..b6736256 --- /dev/null +++ b/modules/module-ci-process-biz/src/main/resources/mapper/PipGroupDao.xml @@ -0,0 +1,26 @@ + + + + + + + + \ No newline at end of file