Merge remote-tracking branch 'base-version/main' into dev

# Conflicts:
#	zt-gateway/src/main/resources/application.yaml
This commit is contained in:
chenbowen
2025-09-24 15:36:43 +08:00
22 changed files with 985 additions and 1 deletions

View File

@@ -0,0 +1,55 @@
package com.zt.plat.module.bpm.api.definition;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.module.bpm.api.definition.dto.BpmCategoryPageReqDTO;
import com.zt.plat.module.bpm.api.definition.dto.BpmCategoryRespDTO;
import com.zt.plat.module.bpm.api.definition.dto.BpmCategorySaveReqDTO;
import com.zt.plat.module.bpm.enums.ApiConstants;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@FeignClient(name = ApiConstants.NAME)
@Tag(name = "RPC 服务 - BPM 流程分类")
public interface BpmCategoryApi {
String PREFIX = ApiConstants.PREFIX + "/category";
@PostMapping(PREFIX + "/create")
@Operation(summary = "创建流程分类")
CommonResult<Long> createCategory(@Valid @RequestBody BpmCategorySaveReqDTO createReqDTO);
@PutMapping(PREFIX + "/update")
@Operation(summary = "更新流程分类")
CommonResult<Boolean> updateCategory(@Valid @RequestBody BpmCategorySaveReqDTO updateReqDTO);
@PutMapping(PREFIX + "/update-sort-batch")
@Operation(summary = "批量更新流程分类的排序")
@Parameter(name = "ids", description = "分类编号列表", required = true, example = "1,2,3")
CommonResult<Boolean> updateCategorySortBatch(@RequestParam("ids") List<Long> ids);
@DeleteMapping(PREFIX + "/delete")
@Operation(summary = "删除流程分类")
@Parameter(name = "id", description = "编号", required = true)
CommonResult<Boolean> deleteCategory(@RequestParam("id") Long id);
@GetMapping(PREFIX + "/get")
@Operation(summary = "获得流程分类")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
CommonResult<BpmCategoryRespDTO> getCategory(@RequestParam("id") Long id);
@PostMapping(PREFIX + "/page")
@Operation(summary = "获得流程分类分页")
CommonResult<PageResult<BpmCategoryRespDTO>> getCategoryPage(@Valid @RequestBody BpmCategoryPageReqDTO pageReqDTO);
@GetMapping(PREFIX + "/simple-list")
@Operation(summary = "获取流程分类的精简信息列表", description = "只包含被开启的分类,主要用于前端的下拉选项")
CommonResult<List<BpmCategoryRespDTO>> getCategorySimpleList();
}

View File

@@ -0,0 +1,50 @@
package com.zt.plat.module.bpm.api.definition;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.framework.common.pojo.PageResult;
import com.zt.plat.module.bpm.api.definition.dto.BpmFormPageReqDTO;
import com.zt.plat.module.bpm.api.definition.dto.BpmFormRespDTO;
import com.zt.plat.module.bpm.api.definition.dto.BpmFormSaveReqDTO;
import com.zt.plat.module.bpm.enums.ApiConstants;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@FeignClient(name = ApiConstants.NAME)
@Tag(name = "RPC 服务 - 动态表单")
public interface BpmFormApi {
String PREFIX = ApiConstants.PREFIX + "/form";
@PostMapping(PREFIX + "/create")
@Operation(summary = "创建动态表单")
CommonResult<Long> createForm(@Valid @RequestBody BpmFormSaveReqDTO createReqDTO);
@PutMapping(PREFIX + "/update")
@Operation(summary = "更新动态表单")
CommonResult<Boolean> updateForm(@Valid @RequestBody BpmFormSaveReqDTO updateReqDTO);
@DeleteMapping(PREFIX + "/delete")
@Operation(summary = "删除动态表单")
@Parameter(name = "id", description = "编号", required = true)
CommonResult<Boolean> deleteForm(@RequestParam("id") Long id);
@GetMapping(PREFIX + "/get")
@Operation(summary = "获得动态表单")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
CommonResult<BpmFormRespDTO> getForm(@RequestParam("id") Long id);
@PostMapping(PREFIX + "/page")
@Operation(summary = "获得动态表单分页")
CommonResult<PageResult<BpmFormRespDTO>> getFormPage(@Valid @RequestBody BpmFormPageReqDTO pageReqDTO);
@GetMapping(PREFIX + "/simple-list")
@Operation(summary = "获得动态表单的精简列表", description = "用于表单下拉框")
CommonResult<List<BpmFormRespDTO>> getFormSimpleList();
}

View File

@@ -0,0 +1,29 @@
package com.zt.plat.module.bpm.api.definition;
import com.zt.plat.framework.common.pojo.CommonResult;
import com.zt.plat.module.bpm.api.definition.dto.BpmUserGroupRespDTO;
import com.zt.plat.module.bpm.enums.ApiConstants;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.Parameter;
import io.swagger.v3.oas.annotations.tags.Tag;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@FeignClient(name = ApiConstants.NAME)
@Tag(name = "RPC 服务 - 用户组")
public interface BpmUserGroupApi {
String PREFIX = ApiConstants.PREFIX + "/user-group";
@GetMapping(PREFIX + "/get")
@Operation(summary = "获得用户组")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
CommonResult<BpmUserGroupRespDTO> getUserGroup(@RequestParam("id") Long id);
@GetMapping(PREFIX + "/simple-list")
@Operation(summary = "获取用户组精简信息列表", description = "只包含被开启的用户组,主要用于前端的下拉选项")
CommonResult<List<BpmUserGroupRespDTO>> getUserGroupSimpleList();
}

View File

@@ -0,0 +1,32 @@
package com.zt.plat.module.bpm.api.definition.dto;
import com.zt.plat.framework.common.enums.CommonStatusEnum;
import com.zt.plat.framework.common.pojo.PageParam;
import com.zt.plat.framework.common.validation.InEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "RPC 服务 - BPM 流程分类分页 Request DTO")
@Data
public class BpmCategoryPageReqDTO extends PageParam {
@Schema(description = "分类名", example = "王五")
private String name;
@Schema(description = "分类标志", example = "OA")
private String code;
@Schema(description = "分类状态", example = "1")
@InEnum(CommonStatusEnum.class)
private Integer status;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
}

View File

@@ -0,0 +1,33 @@
package com.zt.plat.module.bpm.api.definition.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "RPC 服务 - BPM 流程分类 Response DTO")
@Data
public class BpmCategoryRespDTO {
@Schema(description = "分类编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "3167")
private Long id;
@Schema(description = "分类名", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
private String name;
@Schema(description = "分类标志", requiredMode = Schema.RequiredMode.REQUIRED, example = "OA")
private String code;
@Schema(description = "分类描述", requiredMode = Schema.RequiredMode.REQUIRED, example = "你猜")
private String description;
@Schema(description = "分类状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
private Integer status;
@Schema(description = "分类排序", requiredMode = Schema.RequiredMode.REQUIRED)
private Integer sort;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
private LocalDateTime createTime;
}

View File

@@ -0,0 +1,37 @@
package com.zt.plat.module.bpm.api.definition.dto;
import com.zt.plat.framework.common.enums.CommonStatusEnum;
import com.zt.plat.framework.common.validation.InEnum;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import jakarta.validation.constraints.NotNull;
import lombok.Data;
@Schema(description = "RPC 服务 - BPM 流程分类新增/修改 Request DTO")
@Data
public class BpmCategorySaveReqDTO {
@Schema(description = "分类编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "3167")
private Long id;
@Schema(description = "分类名", requiredMode = Schema.RequiredMode.REQUIRED, example = "王五")
@NotEmpty(message = "分类名不能为空")
private String name;
@Schema(description = "分类描述", example = "你猜")
private String description;
@Schema(description = "分类标志", requiredMode = Schema.RequiredMode.REQUIRED, example = "OA")
@NotEmpty(message = "分类标志不能为空")
private String code;
@Schema(description = "分类状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotNull(message = "分类状态不能为空")
@InEnum(CommonStatusEnum.class)
private Integer status;
@Schema(description = "分类排序", requiredMode = Schema.RequiredMode.REQUIRED)
@NotNull(message = "分类排序不能为空")
private Integer sort;
}

View File

@@ -0,0 +1,18 @@
package com.zt.plat.module.bpm.api.definition.dto;
import com.zt.plat.framework.common.pojo.PageParam;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
@Schema(description = "动态表单分页 Request DTO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class BpmFormPageReqDTO extends PageParam {
@Schema(description = "表单名称", example = "芋道")
private String name;
}

View File

@@ -0,0 +1,33 @@
package com.zt.plat.module.bpm.api.definition.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
@Schema(description = "RPC 服务 - 动态表单 Response DTO")
@Data
public class BpmFormRespDTO {
@Schema(description = "表单编号", example = "1024")
private Long id;
@Schema(description = "表单名", example = "芋艿")
private String name;
@Schema(description = "表单状态", example = "1")
private Integer status;
@Schema(description = "表单的配置")
private String conf;
@Schema(description = "表单项的数组")
private String fields;
@Schema(description = "备注", example = "我是备注")
private String remark;
@Schema(description = "创建时间")
private LocalDateTime createTime;
}

View File

@@ -0,0 +1,32 @@
package com.zt.plat.module.bpm.api.definition.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.NotEmpty;
import lombok.Data;
@Schema(description = "RPC 服务 - 动态表单新增/修改 Request DTO")
@Data
public class BpmFormSaveReqDTO {
@Schema(description = "表单编号", example = "1024")
private Long id;
@Schema(description = "表单名", requiredMode = Schema.RequiredMode.REQUIRED, example = "芋艿")
@NotEmpty(message = "表单名不能为空")
private String name;
@Schema(description = "表单状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
private Integer status;
@Schema(description = "表单的配置", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "表单的配置不能为空")
private String conf;
@Schema(description = "表单项的数组", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "表单项的数组不能为空")
private String fields;
@Schema(description = "备注", example = "我是备注")
private String remark;
}

View File

@@ -0,0 +1,31 @@
package com.zt.plat.module.bpm.api.definition.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.Set;
@Schema(description = "RPC 服务 - 用户组 Response DTO")
@Data
public class BpmUserGroupRespDTO {
@Schema(description = "编号", example = "1024")
private Long id;
@Schema(description = "组名", example = "芋艿")
private String name;
@Schema(description = "描述", example = "芋艿")
private String description;
@Schema(description = "成员用户编号数组", example = "1,2,3")
private Set<Long> memberUserIds;
@Schema(description = "状态", example = "1")
private Integer status;
@Schema(description = "创建时间")
private LocalDateTime createTime;
}

Some files were not shown because too many files have changed in this diff Show More