----添加流程测试demo

This commit is contained in:
2025-12-02 10:21:46 +08:00
parent db1dd23743
commit a5b65b4f38
46 changed files with 2611 additions and 11 deletions

View File

@ -0,0 +1,119 @@
package com.xjrsoft.module.mdm.controller;
import java.util.List;
import javax.validation.Valid;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.mdm.dto.Testflow001PageDto;
import com.xjrsoft.module.mdm.dto.UpdateTestflow001Dto;
import com.xjrsoft.module.mdm.entity.Testflow001;
import com.xjrsoft.module.mdm.service.ITestflow001Service;
import com.xjrsoft.module.mdm.vo.Testflow001PageVo;
import com.xjrsoft.module.mdm.vo.Testflow001Vo;
import com.xjrsoft.module.system.client.ICodeRuleClient;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
/**
* @title: 测试流程
* @Author 管理员
* @Date: 2025-11-25
* @Version 1.0
*/
@RestController
@RequestMapping("/mdm" + "/testflow001")
@Api(value = "/mdm" + "/testflow001",tags = "测试流程代码")
@AllArgsConstructor
public class Testflow001Controller {
private final ITestflow001Service testflow001Service;
private final ICodeRuleClient codeRuleClient;
private final DatalogService dataService;
@GetMapping(value = "/page")
@ApiOperation(value="Testflow001列表(分页)")
@SaCheckPermission("testflow001:list")
public R page(@Valid Testflow001PageDto dto){
LambdaQueryWrapper<Testflow001> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
.like(StrUtil.isNotBlank(dto.getCustomer()),Testflow001::getCustomer,dto.getCustomer())
.like(StrUtil.isNotBlank(dto.getCustomerCode()),Testflow001::getCustomerCode,dto.getCustomerCode())
.like(StrUtil.isNotBlank(dto.getName()),Testflow001::getName,dto.getName())
.like(StrUtil.isNotBlank(dto.getNote()),Testflow001::getNote,dto.getNote())
.orderByDesc(Testflow001::getId)
.select(Testflow001.class,x -> VoToColumnUtil.fieldsToColumns(Testflow001PageVo.class).contains(x.getProperty()));
IPage<Testflow001> page = testflow001Service.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<Testflow001PageVo> pageOutput = ConventPage.getPageOutput(page, Testflow001PageVo.class);
return R.ok(pageOutput);
}
@GetMapping(value = "/info")
@ApiOperation(value="根据id查询Testflow001信息")
@SaCheckPermission("testflow001:detail")
public R info(@RequestParam Long id){
Testflow001 testflow001 = testflow001Service.getById(id);
if (testflow001 == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(testflow001, Testflow001Vo.class));
}
@GetMapping(value = "/datalog")
@ApiOperation(value="根据id查询Testflow001数据详细日志")
@SaCheckPermission("testflow001:datalog")
public R datalog(@RequestParam Long id){
List<DataChangeLogVo> logs = dataService.findLogsByEntityId(UpdateTestflow001Dto.class,id);
return R.ok(logs);
}
@PostMapping
@ApiOperation(value = "新增Testflow001")
@SaCheckPermission("testflow001:add")
public R add(@Valid @RequestBody UpdateTestflow001Dto dto){
codeRuleClient.useEncode("TestCode");
UpdateTestflow001Dto res = dataService.insert(dto);
return R.ok(res.getId());
}
@PutMapping
@ApiOperation(value = "修改Testflow001")
@SaCheckPermission("testflow001:edit")
public R update(@Valid @RequestBody UpdateTestflow001Dto dto){
return R.ok(dataService.updateById(dto));
}
@DeleteMapping
@ApiOperation(value = "删除")
@SaCheckPermission("testflow001:delete")
public R delete(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.deleteByIds(UpdateTestflow001Dto.class, ids));
}
}

View File

@ -0,0 +1,118 @@
package com.xjrsoft.module.mdm.controller;
import java.util.List;
import javax.validation.Valid;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.datalog.vo.DataChangeLogVo;
import com.xjrsoft.module.mdm.dto.Testflow003PageDto;
import com.xjrsoft.module.mdm.dto.UpdateTestflow003Dto;
import com.xjrsoft.module.mdm.entity.Testflow003;
import com.xjrsoft.module.mdm.service.ITestflow003Service;
import com.xjrsoft.module.mdm.vo.Testflow003PageVo;
import com.xjrsoft.module.mdm.vo.Testflow003Vo;
import com.xjrsoft.module.system.client.ICodeRuleClient;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
/**
* @title: 测试流程3
* @Author 管理员
* @Date: 2025-11-26
* @Version 1.0
*/
@RestController
@RequestMapping("/mdm" + "/testflow003")
@Api(value = "/mdm" + "/testflow003",tags = "测试流程3代码")
@AllArgsConstructor
public class Testflow003Controller {
private final ITestflow003Service testflow003Service;
private final ICodeRuleClient codeRuleService;
private final DatalogService dataService;
@GetMapping(value = "/page")
@ApiOperation(value="Testflow003列表(分页)")
@SaCheckPermission("testflow003:list")
public R page(@Valid Testflow003PageDto dto){
LambdaQueryWrapper<Testflow003> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
.like(StrUtil.isNotBlank(dto.getName()),Testflow003::getName,dto.getName())
.like(StrUtil.isNotBlank(dto.getCode()),Testflow003::getCode,dto.getCode())
.like(StrUtil.isNotBlank(dto.getNote()),Testflow003::getNote,dto.getNote())
.orderByDesc(Testflow003::getId)
.select(Testflow003.class,x -> VoToColumnUtil.fieldsToColumns(Testflow003PageVo.class).contains(x.getProperty()));
IPage<Testflow003> page = testflow003Service.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<Testflow003PageVo> pageOutput = ConventPage.getPageOutput(page, Testflow003PageVo.class);
return R.ok(pageOutput);
}
@GetMapping(value = "/info")
@ApiOperation(value="根据id查询Testflow003信息")
@SaCheckPermission("testflow003:detail")
public R info(@RequestParam Long id){
Testflow003 testflow003 = testflow003Service.getById(id);
if (testflow003 == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(testflow003, Testflow003Vo.class));
}
@GetMapping(value = "/datalog")
@ApiOperation(value="根据id查询Testflow003数据详细日志")
@SaCheckPermission("testflow003:datalog")
public R datalog(@RequestParam Long id){
List<DataChangeLogVo> logs = dataService.findLogsByEntityId(UpdateTestflow003Dto.class,id);
return R.ok(logs);
}
@PostMapping
@ApiOperation(value = "新增Testflow003")
@SaCheckPermission("testflow003:add")
public R add(@Valid @RequestBody UpdateTestflow003Dto dto){
codeRuleService.useEncode("TestCode");
UpdateTestflow003Dto res = dataService.insert(dto,null);
return R.ok(res.getId());
}
@PutMapping
@ApiOperation(value = "修改Testflow003")
@SaCheckPermission("testflow003:edit")
public R update(@Valid @RequestBody UpdateTestflow003Dto dto){
return R.ok(dataService.updateById(dto));
}
@DeleteMapping
@ApiOperation(value = "删除")
@SaCheckPermission("testflow003:delete")
public R delete(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.deleteByIds(UpdateTestflow003Dto.class, ids));
}
}

View File

@ -0,0 +1,115 @@
package com.xjrsoft.module.mdm.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.Version;
import com.github.yulichang.annotation.EntityMapping;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 测试流程
* @Author 管理员
* @Date: 2025-11-25
* @Version 1.0
*/
@Data
@TableName("testflow_001")
@ApiModel(value = "测试流程对象", description = "测试流程")
public class Testflow001 implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
@TableId
private Long id;
/**
* 客户
*/
@ApiModelProperty("客户")
private String customer;
/**
* 客户编码
*/
@ApiModelProperty("客户编码")
private String customerCode;
/**
* 名称
*/
@ApiModelProperty("名称")
private String name;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private Long createUserId;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createDate;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.UPDATE)
private Long modifyUserId;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.UPDATE)
private LocalDateTime modifyDate;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
@TableLogic
private Integer deleteMark;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private Integer enabledMark;
/**
*
*/
@ApiModelProperty("")
private Long tenantId;
}

View File

@ -0,0 +1,109 @@
package com.xjrsoft.module.mdm.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.Version;
import com.github.yulichang.annotation.EntityMapping;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 测试流程3
* @Author 管理员
* @Date: 2025-11-26
* @Version 1.0
*/
@Data
@TableName("testflow_003")
@ApiModel(value = "测试流程3对象", description = "测试流程3")
public class Testflow003 implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
@TableId
private Long id;
/**
* 名称
*/
@ApiModelProperty("名称")
private String name;
/**
* 编码
*/
@ApiModelProperty("编码")
private String code;
/**
* 备注
*/
@ApiModelProperty("备注")
private String note;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private Long createUserId;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createDate;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.UPDATE)
private Long modifyUserId;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.UPDATE)
private LocalDateTime modifyDate;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
@TableLogic
private Integer deleteMark;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private Integer enabledMark;
/**
*
*/
@ApiModelProperty("")
private Long tenantId;
}

View File

@ -0,0 +1,17 @@
package com.xjrsoft.module.mdm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.mdm.entity.Testflow001;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-11-25
* @Version 1.0
*/
@Mapper
public interface Testflow001Mapper extends BaseMapper<Testflow001> {
}

View File

@ -0,0 +1,17 @@
package com.xjrsoft.module.mdm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.mdm.entity.Testflow003;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-11-26
* @Version 1.0
*/
@Mapper
public interface Testflow003Mapper extends BaseMapper<Testflow003> {
}

View File

@ -0,0 +1,19 @@
package com.xjrsoft.module.mdm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.yulichang.base.MPJBaseService;
import com.github.yulichang.extension.mapping.base.MPJDeepService;
import com.github.yulichang.extension.mapping.base.MPJRelationService;
import com.xjrsoft.module.mdm.entity.Testflow001;
import lombok.Data;
import java.util.List;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-25
* @Version 1.0
*/
public interface ITestflow001Service extends IService<Testflow001> {
}

View File

@ -0,0 +1,19 @@
package com.xjrsoft.module.mdm.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.github.yulichang.base.MPJBaseService;
import com.github.yulichang.extension.mapping.base.MPJDeepService;
import com.github.yulichang.extension.mapping.base.MPJRelationService;
import com.xjrsoft.module.mdm.entity.Testflow003;
import lombok.Data;
import java.util.List;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-26
* @Version 1.0
*/
public interface ITestflow003Service extends IService<Testflow003> {
}

View File

@ -0,0 +1,25 @@
package com.xjrsoft.module.mdm.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.mdm.entity.Testflow001;
import com.xjrsoft.module.mdm.mapper.Testflow001Mapper;
import com.xjrsoft.module.mdm.service.ITestflow001Service;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-25
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class Testflow001ServiceImpl extends ServiceImpl<Testflow001Mapper, Testflow001> implements ITestflow001Service {
}

View File

@ -0,0 +1,25 @@
package com.xjrsoft.module.mdm.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.mdm.entity.Testflow003;
import com.xjrsoft.module.mdm.mapper.Testflow003Mapper;
import com.xjrsoft.module.mdm.service.ITestflow003Service;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
/**
* @title: service
* @Author 管理员
* @Date: 2025-11-26
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class Testflow003ServiceImpl extends ServiceImpl<Testflow003Mapper, Testflow003> implements ITestflow003Service {
}