---初始化项目

This commit is contained in:
2025-10-10 09:20:48 +08:00
parent a8e0f1c377
commit 7f74c186da
203 changed files with 14674 additions and 0 deletions

View File

@ -0,0 +1,39 @@
#FROM --platform=linux/arm64 docker.xuanyuan.run/library/openjdk:8-jre
FROM harbor.kubesphere.com/public/jar8u112:v1
RUN mkdir -p /root/logs/java/ \
&& mkdir -p /scm/logs/ \
&& mkdir -p /opt/app/ \
&& mkdir -p /uploadFile/ \
&& mkdir -p /var/log/app \
&& mkdir -p /opt/app/logs \
&& mkdir -p /opt/agent/config
ENV TZ "Asia/Shanghai"
ADD ./skywalking-agent.jar /opt/agent/skywalking-agent.jar
ADD ./agent.config /opt/agent/config/agent.config
RUN echo "set fileencodings=utf-8,gbk,gb2312,gb18030,cp936,latin1 \n set fenc=utf-8 \n set tenc=utf-8 \n set enc=utf-8 \n" |tee ~/.vimrc
ARG JAR_FILE
ARG PRO_FILE
ARG SOURCE_NAME
ADD ./startApp.sh /opt/app/
RUN chmod u+x /opt/app/*.sh
ADD ./${SOURCE_NAME} /opt/app/app.jar
RUN test -f /opt/app/app.jar || { echo "Error: JAR file not found at ${SOURCE_NAME}"; exit 1; }
#应用名称
ENV APP_NAME=itc-pcitc-demo
#skywalking-oap-server地址
ENV SKYWALKING_SERVER=172.20.0.12:11800
ENV ENV_APP_FILE_PATH=/opt/app/app.jar
ENV ENV_APP_PRO_FILE=test
EXPOSE 8090 5005
ENTRYPOINT ["/opt/app/startApp.sh"]

View File

@ -0,0 +1,4 @@
# 应用名称(在 SkyWalking UI 中显示的服务名)
agent.service_name=your-springboot-app
# SkyWalking OAP 服务地址(默认本地)
collector.backend_service=localhost:11800

View File

@ -0,0 +1,126 @@
#!/bin/bash
# 定义变量
CONTAINER_NAME="itc-ms-system"
IMAGE_NAME="pcitc/itc-ms-system"
IMAGE_VERSION="2025-08-04-0940"
IMAGE_FULL="$IMAGE_NAME:$IMAGE_VERSION"
PORT=8091 # 服务暴露端口
CONTAINER_PORT=8091 # 服务暴露端口
TZ="Asia/Shanghai" # 时区设置
# 环境变量配置
ENV_APP_PRO_FILE="test"
file="$CONTAINER_NAME-version.txt"
# 检查文件是否存在(假设 $file 是目标文件变量,已在别处定义)
if [ ! -f "$file" ]; then
echo "文件 $file 不存在"
touch "$file" # 变量加引号,处理含空格的文件名
echo "$IMAGE_FULL" >> "$file"
echo "记录版本【$IMAGE_FULL】到 $file"
else
# 检查参数数量(建议移到脚本开头统一检查)
if [ $# -eq 2 ]; then
IMAGE_FULL="$IMAGE_NAME:$2"
echo "$IMAGE_FULL" >> "$file"
echo "记录版本【$IMAGE_FULL】到 $file"
else
# 修正赋值语法:等号两侧无空格
last_version=$(tail -n 1 "$file")
IMAGE_FULL="$last_version"
# 建议添加对 $IMAGE_FULL 的后续处理(如使用该变量)
fi
fi
# 显示帮助信息
show_help() {
echo "使用方法: $0 [操作类型]"
echo "操作类型:"
echo " deploy - 部署并启动服务容器"
echo " remove - 停止并删除容器及数据/日志目录"
echo " logs - 查看容器日志"
echo " help - 显示帮助信息"
}
# 部署服务
deploy_service() {
echo "部署镜像【$IMAGE_FULL"
# 检查容器是否已存在,存在则停止并删除
if [ "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
echo "停止并删除现有容器: $CONTAINER_NAME"
docker stop $CONTAINER_NAME >/dev/null
docker rm $CONTAINER_NAME >/dev/null
fi
# 启动服务容器
echo "启动服务容器..."
docker run -d --privileged --restart always \
--name $CONTAINER_NAME \
-p $PORT:$CONTAINER_PORT \
-e ENV_APP_PRO_FILE=$ENV_APP_PRO_FILE \
$IMAGE_FULL
# 检查启动状态
if [ "$(docker ps -aq -f name=$CONTAINER_NAME -f status=running)" ]; then
echo "服务启动成功!"
echo "容器名称: $CONTAINER_NAME"
echo "访问地址: http://localhost:$PORT"
echo "环境变量: ENV_APP_PRO_FILE=$ENV_APP_PRO_FILE"
else
echo "服务启动失败,日志如下:"
docker logs $CONTAINER_NAME
exit 1
fi
}
# 删除服务
remove_service() {
# 检查容器是否存在
if [ "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
echo "停止容器: $CONTAINER_NAME"
docker stop $CONTAINER_NAME >/dev/null
echo "删除容器: $CONTAINER_NAME"
docker rm $CONTAINER_NAME >/dev/null
else
echo "容器 $CONTAINER_NAME 不存在"
fi
}
# 查看日志
show_logs() {
if [ "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
echo "查看 $CONTAINER_NAME 容器日志 (按 Ctrl+C 退出)..."
docker logs -f $CONTAINER_NAME
else
echo "容器 $CONTAINER_NAME 不存在"
fi
}
# 主逻辑
if [ $# -lt 1 ]; then
show_help
exit 1
fi
case "$1" in
deploy)
deploy_service
;;
remove)
remove_service
;;
logs)
show_logs
;;
help)
show_help
;;
*)
echo "无效的操作类型: $1"
show_help
exit 1
;;
esac

View File

@ -0,0 +1,126 @@
#!/bin/bash
# 定义变量
CONTAINER_NAME="itc-ms-user"
IMAGE_NAME="pcitc/itc-ms-user"
IMAGE_VERSION="2025-08-04-0954"
IMAGE_FULL="$IMAGE_NAME:$IMAGE_VERSION"
PORT=8092 # 服务暴露端口
CONTAINER_PORT=8092 # 服务暴露端口
TZ="Asia/Shanghai" # 时区设置
# 环境变量配置
ENV_APP_PRO_FILE="test"
file="$CONTAINER_NAME-version.txt"
# 检查文件是否存在(假设 $file 是目标文件变量,已在别处定义)
if [ ! -f "$file" ]; then
echo "文件 $file 不存在"
touch "$file" # 变量加引号,处理含空格的文件名
echo "$IMAGE_FULL" >> "$file"
echo "记录版本【$IMAGE_FULL】到 $file"
else
# 检查参数数量(建议移到脚本开头统一检查)
if [ $# -eq 2 ]; then
IMAGE_FULL="$IMAGE_NAME:$2"
echo "$IMAGE_FULL" >> "$file"
echo "记录版本【$IMAGE_FULL】到 $file"
else
# 修正赋值语法:等号两侧无空格
last_version=$(tail -n 1 "$file")
IMAGE_FULL="$last_version"
# 建议添加对 $IMAGE_FULL 的后续处理(如使用该变量)
fi
fi
# 显示帮助信息
show_help() {
echo "使用方法: $0 [操作类型]"
echo "操作类型:"
echo " deploy - 部署并启动服务容器"
echo " remove - 停止并删除容器及数据/日志目录"
echo " logs - 查看容器日志"
echo " help - 显示帮助信息"
}
# 部署服务
deploy_service() {
echo "部署镜像【$IMAGE_FULL"
# 检查容器是否已存在,存在则停止并删除
if [ "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
echo "停止并删除现有容器: $CONTAINER_NAME"
docker stop $CONTAINER_NAME >/dev/null
docker rm $CONTAINER_NAME >/dev/null
fi
# 启动服务容器
echo "启动服务容器..."
docker run -d --privileged --restart always \
--name $CONTAINER_NAME \
-p $PORT:$CONTAINER_PORT \
-e ENV_APP_PRO_FILE=$ENV_APP_PRO_FILE \
$IMAGE_FULL
# 检查启动状态
if [ "$(docker ps -aq -f name=$CONTAINER_NAME -f status=running)" ]; then
echo "服务启动成功!"
echo "容器名称: $CONTAINER_NAME"
echo "访问地址: http://localhost:$PORT"
echo "环境变量: ENV_APP_PRO_FILE=$ENV_APP_PRO_FILE"
else
echo "服务启动失败,日志如下:"
docker logs $CONTAINER_NAME
exit 1
fi
}
# 删除服务
remove_service() {
# 检查容器是否存在
if [ "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
echo "停止容器: $CONTAINER_NAME"
docker stop $CONTAINER_NAME >/dev/null
echo "删除容器: $CONTAINER_NAME"
docker rm $CONTAINER_NAME >/dev/null
else
echo "容器 $CONTAINER_NAME 不存在"
fi
}
# 查看日志
show_logs() {
if [ "$(docker ps -aq -f name=$CONTAINER_NAME)" ]; then
echo "查看 $CONTAINER_NAME 容器日志 (按 Ctrl+C 退出)..."
docker logs -f $CONTAINER_NAME
else
echo "容器 $CONTAINER_NAME 不存在"
fi
}
# 主逻辑
if [ $# -lt 1 ]; then
show_help
exit 1
fi
case "$1" in
deploy)
deploy_service
;;
remove)
remove_service
;;
logs)
show_logs
;;
help)
show_help
;;
*)
echo "无效的操作类型: $1"
show_help
exit 1
;;
esac

View File

@ -0,0 +1,50 @@
#!/bin/sh
#cp /etc/hosts /etc/hosts.temp
# 初始化环境变量(设置默认值,避免空变量)
APP_NAME=${APP_NAME:-"default-springboot-app"} # 默认服务名
SKYWALKING_SERVER=${SKYWALKING_SERVER:-"localhost:11800"} # 默认SkyWalking服务地址
ENV_APP_PRO_FILE=${ENV_APP_PRO_FILE:-"test"} # 默认环境为test
# 初始化Java启动参数包含是否使用-server模式
java_base="java -javaagent:/opt/agent/skywalking-agent.jar -Dskywalking.agent.service_name=$APP_NAME"
export java_base="$java_base -Dskywalking.collector.backend_service=$SKYWALKING_SERVER"
java_start="$java_base -jar"
# 根据环境变量区分开发/生产环境配置
if [ "$ENV_APP_PRO_FILE" = "prod" ]; then
# 生产环境JVM参数
export JAVA_OPTS="-Xms1024m -Xmx4096m -Xmn512m -Xss512k -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m"
export JAVA_OPTS="$JAVA_OPTS -XX:+UseG1GC -XX:G1HeapRegionSize=32m -XX:G1ReservePercent=20"
export JAVA_OPTS="$JAVA_OPTS -XX:MaxGCPauseMillis=500 -XX:G1MixedGCCountTarget=10"
export JAVA_OPTS="$JAVA_OPTS -verbose:gc -Xloggc:/var/log/app/gc.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps"
export JAVA_OPTS="$JAVA_OPTS -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=10 -XX:GCLogFileSize=100M"
# 生产环境使用-server模式
java_start="$java_base -jar -server"
else
# 开发环境JVM参数
export JAVA_OPTS="-Xms512m -Xmx1024m -Xmn256m -Xss256k -XX:MetaspaceSize=128m -XX:MaxMetaspaceSize=256m"
export JAVA_OPTS="$JAVA_OPTS -XX:+UseConcMarkSweepGC -XX:+UseParNewGC"
export JAVA_OPTS="$JAVA_OPTS -XX:+CMSParallelRemarkEnabled -XX:+CMSClassUnloadingEnabled -XX:CMSMaxAbortablePrecleanTime=5000"
export JAVA_OPTS="$JAVA_OPTS -XX:CMSInitiatingOccupancyFraction=80 -XX:+UseCMSInitiatingOccupancyOnly"
export JAVA_OPTS="$JAVA_OPTS -verbose:gc -Xloggc:./logs/gc.log -XX:+PrintGCDetails -XX:+PrintGCTimeStamps -XX:+PrintGCDateStamps"
# 开发环境开启远程调试
export JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
fi
# 公共配置(编码、时区等)
export JAVA_OPTS="$JAVA_OPTS -Dfile.encoding=UTF-8 -Dconsole.encoding=UTF-8"
export JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true"
export JAVA_OPTS="$JAVA_OPTS -Duser.language=zh -Duser.country=CN -Duser.timezone=Asia/Shanghai"
# SpringBoot 环境配置
export JAVA_OPTS="$JAVA_OPTS -Dspring.profiles.active=$ENV_APP_PRO_FILE"
# 输出启动参数
echo "启动参数:$java_start $JAVA_OPTS $ENV_APP_FILE_PATH"
# 执行启动命令(用双引号包裹每个变量)
exec $java_start $JAVA_OPTS $ENV_APP_FILE_PATH

View File

@ -0,0 +1,26 @@
package com.xjrsoft;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.EnableAspectJAutoProxy;
import com.pictc.utils.SpringTools;
import com.xjrsoft.common.annotation.UniqueNameGenerator;
/**
* @author Zexy
*/
@SpringBootApplication
@EnableAspectJAutoProxy(exposeProxy = true)
@ComponentScan(nameGenerator = UniqueNameGenerator.class)
@EnableFeignClients
@EnableDiscoveryClient
public class ITCDemoApplication {
public static void main(String[] args) {
SpringTools.logStarter(ITCDemoApplication.class, args);
}
}

View File

@ -0,0 +1,25 @@
package com.xjrsoft.common;
import javax.sql.DataSource;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Primary;
import org.springframework.jdbc.datasource.DataSourceTransactionManager;
import org.springframework.transaction.PlatformTransactionManager;
//@Configuration
//public class TransactionConfig {
//
// @Primary // 指定为主要的事务管理器
// @Bean
// public PlatformTransactionManager camundaTransactionManager(DataSource camundaDataSource) {
// return new DataSourceTransactionManager(camundaDataSource);
// }
//
// // 其他数据源的事务管理器
// @Bean
// public PlatformTransactionManager businessTransactionManager(DataSource businessDataSource) {
// return new DataSourceTransactionManager(businessDataSource);
// }
//}

View File

@ -0,0 +1,30 @@
package com.xjrsoft.common.schedule;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
@RequiredArgsConstructor
@Component
@ConditionalOnProperty(name = {"schedule.enabled","schedule.sync-xx.enabled"}, havingValue = "true")
@Slf4j
@EnableScheduling
public class DemoSysncTask {
//
// @Scheduled(cron = "${schedule.sync-xx.cron:0 0/60 * * * *}") //60分钟跑一次
// public void sync(){
// log.info("同步XX数据 => " + LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));
// try{
// //todo 任务具体实现
// } catch (Exception e){
// log.error("同步XX数据失败" + e);
// }
// }
}

View File

@ -0,0 +1,28 @@
package com.xjrsoft.common.util;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ApplicationContextAware;
import org.springframework.stereotype.Component;
@Component
public class SpringContextUtil implements ApplicationContextAware {
private static ApplicationContext context;
@Override
public void setApplicationContext(ApplicationContext applicationContext) {
SpringContextUtil.context = applicationContext;
}
public static ApplicationContext getApplicationContext() {
return context;
}
public static <T> T getBean(Class<T> beanClass) {
return context.getBean(beanClass);
}
public static Object getBean(String beanName) {
return context.getBean(beanName);
}
}

View File

@ -0,0 +1,132 @@
package com.xjrsoft.module.dev.controller;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.xjrsoft.common.constant.GlobalConstant;
import com.baomidou.mybatisplus.core.toolkit.StringPool;
import com.xjrsoft.common.page.ConventPage;
import com.xjrsoft.common.page.PageOutput;
import com.xjrsoft.common.model.result.R;
import com.xjrsoft.common.utils.VoToColumnUtil;
import com.xjrsoft.module.dev.dto.AddTestfrom3Dto;
import com.xjrsoft.module.dev.dto.UpdateTestfrom3Dto;
import cn.dev33.satoken.annotation.SaCheckPermission;
import com.alibaba.excel.EasyExcel;
import com.xjrsoft.common.utils.ExcelUtil;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import com.alibaba.excel.support.ExcelTypeEnum;
import org.springframework.http.ResponseEntity;
import java.io.ByteArrayOutputStream;
import java.util.ArrayList;
import com.xjrsoft.module.dev.dto.Testfrom3PageDto;
import com.xjrsoft.module.dev.entity.Testfrom3;
import com.xjrsoft.module.dev.service.ITestfrom3Service;
import com.xjrsoft.module.dev.vo.Testfrom3PageVo;
import com.xjrsoft.module.datalog.service.DatalogService;
import com.xjrsoft.module.dev.vo.Testfrom3Vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* @title: 测试3
* @Author 管理员
* @Date: 2025-09-25
* @Version 1.0
*/
@RestController
@RequestMapping("/dev" + "/testfrom3")
@Api(value = "/dev" + "/testfrom3",tags = "测试3代码")
@AllArgsConstructor
public class Testfrom3Controller {
private final ITestfrom3Service testfrom3Service;
private final DatalogService dataService;
@GetMapping(value = "/page")
@ApiOperation(value="Testfrom3列表(分页)")
@SaCheckPermission("testfrom3:list")
public R page(@Valid Testfrom3PageDto dto){
LambdaQueryWrapper<Testfrom3> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
.like(StrUtil.isNotBlank(dto.getDanXingWenBen8163()),Testfrom3::getDanXingWenBen8163,dto.getDanXingWenBen8163())
.like(StrUtil.isNotBlank(dto.getDanXingWenBen3634()),Testfrom3::getDanXingWenBen3634,dto.getDanXingWenBen3634())
.like(StrUtil.isNotBlank(dto.getDanXingWenBen5097()),Testfrom3::getDanXingWenBen5097,dto.getDanXingWenBen5097())
.orderByDesc(Testfrom3::getId)
.select(Testfrom3.class,x -> VoToColumnUtil.fieldsToColumns(Testfrom3PageVo.class).contains(x.getProperty()));
IPage<Testfrom3> page = testfrom3Service.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<Testfrom3PageVo> pageOutput = ConventPage.getPageOutput(page, Testfrom3PageVo.class);
return R.ok(pageOutput);
}
@GetMapping(value = "/info")
@ApiOperation(value="根据id查询Testfrom3信息")
@SaCheckPermission("testfrom3:detail")
public R info(@RequestParam Long id){
Testfrom3 testfrom3 = testfrom3Service.getById(id);
if (testfrom3 == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(testfrom3, Testfrom3Vo.class));
}
@PostMapping
@ApiOperation(value = "新增Testfrom3")
@SaCheckPermission("testfrom3:add")
public R add(@Valid @RequestBody UpdateTestfrom3Dto dto){
UpdateTestfrom3Dto res = dataService.insert(dto);
return R.ok(res.getId());
}
@PutMapping
@ApiOperation(value = "修改Testfrom3")
@SaCheckPermission("testfrom3:edit")
public R update(@Valid @RequestBody UpdateTestfrom3Dto dto){
return R.ok(dataService.updateById(dto));
}
@DeleteMapping
@ApiOperation(value = "删除")
@SaCheckPermission("testfrom3:delete")
public R delete(@Valid @RequestBody List<Long> ids){
return R.ok(dataService.deleteByIds(UpdateTestfrom3Dto.class, ids));
}
@PostMapping("/import")
@ApiOperation(value = "导入")
@SaCheckPermission("testfrom3:import")
public R importData(@RequestParam MultipartFile file) throws IOException {
List<Testfrom3PageVo> savedDataList = EasyExcel.read(file.getInputStream()).head(Testfrom3PageVo.class).sheet().doReadSync();
ExcelUtil.transExcelData(savedDataList, true);
dataService.insertBatch(BeanUtil.copyToList(savedDataList,UpdateTestfrom3Dto.class));
return R.ok();
}
@GetMapping("/export")
@ApiOperation(value = "导出")
@SaCheckPermission("testfrom3:export")
public ResponseEntity<byte[]> exportData(@Valid Testfrom3PageDto dto, @RequestParam(defaultValue = "false") Boolean isTemplate) {
List<Testfrom3PageVo> customerList = isTemplate != null && isTemplate ? new ArrayList<>() : ((PageOutput<Testfrom3PageVo>) page(dto).getData()).getList();
ExcelUtil.transExcelData(customerList, false);
ByteArrayOutputStream bot = new ByteArrayOutputStream();
EasyExcel.write(bot, Testfrom3PageVo.class).automaticMergeHead(false).excelType(ExcelTypeEnum.XLSX).sheet().doWrite(customerList);
ByteArrayOutputStream resultBot = ExcelUtil.renderExportRequiredHead(bot);
return R.fileStream(resultBot.toByteArray(), "Testfrom3" + ExcelTypeEnum.XLSX.getValue());
}
}

View File

@ -0,0 +1,56 @@
package com.xjrsoft.module.dev.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogTable;
/**
* @title: 测试3
* @Author 管理员
* @Date: 2025-09-25
* @Version 1.0
*/
@Data
@LogTable(source="testfrom_3",name="测试3")
public class AddTestfrom3Dto implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
@LogField(name="单行文本",index=0)
private String danXingWenBen8163;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
@LogField(name="单行文本",index=0)
private String danXingWenBen3634;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
@LogField(name="单行文本",index=0)
private String danXingWenBen5097;
/**
*
*/
@ApiModelProperty("")
@LogField(name="",index=0)
private Long tenantId;
}

View File

@ -0,0 +1,40 @@
package com.xjrsoft.module.dev.dto;
import com.xjrsoft.common.page.PageInput;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
/**
* @title: 分页查询入参
* @Author 管理员
* @Date: 2025-09-25
* @Version 1.0
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class Testfrom3PageDto extends PageInput {
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen8163;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen3634;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen5097;
}

View File

@ -0,0 +1,68 @@
package com.xjrsoft.module.dev.dto;
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 com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
import com.pictc.annotations.datalog.LogTable;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.ValueDirectionType;
/**
* @title: 测试3
* @Author 管理员
* @Date: 2025-09-25
* @Version 1.0
*/
@Data
@LogTable(source="testfrom_3",name="测试3")
public class UpdateTestfrom3Dto implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@LogField(name="",index=0)
@ApiModelProperty("")
private Long id;
/**
* 单行文本
*/
@LogField(name="单行文本",index=1)
@ApiModelProperty("单行文本")
private String danXingWenBen8163;
/**
* 单行文本
*/
@LogField(name="单行文本",index=2)
@ApiModelProperty("单行文本")
private String danXingWenBen3634;
/**
* 单行文本
*/
@LogField(name="单行文本",index=3)
@ApiModelProperty("单行文本")
private String danXingWenBen5097;
/**
*
*/
@LogField(name="",index=4)
@ApiModelProperty("")
private Long tenantId;
}

View File

@ -0,0 +1,97 @@
package com.xjrsoft.module.dev.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.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-09-25
* @Version 1.0
*/
@Data
@TableName("testfrom_3")
@ApiModel(value = "测试3对象", description = "测试3")
public class Testfrom3 implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
@TableId
private Long id;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen8163;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen3634;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen5097;
/**
*
*/
@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.dev.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.github.yulichang.base.MPJBaseMapper;
import com.xjrsoft.module.dev.entity.Testfrom3;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-09-25
* @Version 1.0
*/
@Mapper
public interface Testfrom3Mapper extends BaseMapper<Testfrom3> {
}

View File

@ -0,0 +1,19 @@
package com.xjrsoft.module.dev.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.dev.entity.Testfrom3;
import lombok.Data;
import java.util.List;
/**
* @title: service
* @Author 管理员
* @Date: 2025-09-25
* @Version 1.0
*/
public interface ITestfrom3Service extends IService<Testfrom3> {
}

View File

@ -0,0 +1,25 @@
package com.xjrsoft.module.dev.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.github.yulichang.base.MPJBaseServiceImpl;
import com.xjrsoft.module.dev.entity.Testfrom3;
import com.xjrsoft.module.dev.mapper.Testfrom3Mapper;
import com.xjrsoft.module.dev.service.ITestfrom3Service;
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-09-25
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class Testfrom3ServiceImpl extends ServiceImpl<Testfrom3Mapper, Testfrom3> implements ITestfrom3Service {
}

View File

@ -0,0 +1,53 @@
package com.xjrsoft.module.dev.vo;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.write.style.ContentStyle;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.xjrsoft.common.annotation.Trans;
import com.xjrsoft.common.enums.TransType;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
/**
* @title: 分页列表出参
* @Author 管理员
* @Date: 2025-09-25
* @Version 1.0
*/
@Data
public class Testfrom3PageVo {
/**
*
*/
@ExcelIgnore
@ApiModelProperty("")
private String id;
/**
* 单行文本
*/
@ContentStyle(dataFormat = 49)
@ExcelProperty("单行文本")
@ApiModelProperty("单行文本")
private String danXingWenBen8163;
/**
* 单行文本
*/
@ContentStyle(dataFormat = 49)
@ExcelProperty("单行文本")
@ApiModelProperty("单行文本")
private String danXingWenBen3634;
/**
* 单行文本
*/
@ContentStyle(dataFormat = 49)
@ExcelProperty("单行文本")
@ApiModelProperty("单行文本")
private String danXingWenBen5097;
}

View File

@ -0,0 +1,73 @@
package com.xjrsoft.module.dev.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-09-25
* @Version 1.0
*/
@Data
public class Testfrom3Vo {
/**
*
*/
@ApiModelProperty("")
private Long id;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen8163;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen3634;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen5097;
/**
*
*/
@ApiModelProperty("")
private Long createUserId;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime createDate;
/**
*
*/
@ApiModelProperty("")
private Long modifyUserId;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime modifyDate;
/**
*
*/
@ApiModelProperty("")
private Integer enabledMark;
/**
*
*/
@ApiModelProperty("")
private Long tenantId;
}

View File

@ -0,0 +1,98 @@
package com.xjrsoft.module.prdManage.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
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.prdManage.dto.AddDemoApplianceDto;
import com.xjrsoft.module.prdManage.dto.DemoAppliancePageDto;
import com.xjrsoft.module.prdManage.dto.UpdateDemoApplianceDto;
import com.xjrsoft.module.prdManage.entity.DemoAppliance;
import com.xjrsoft.module.prdManage.service.IDemoApplianceService;
import com.xjrsoft.module.prdManage.vo.DemoAppliancePageVo;
import com.xjrsoft.module.prdManage.vo.DemoApplianceVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* @title: 示例-家电管理
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@RestController
@RequestMapping("/prdManage" + "/demoAppliance")
@Api(value = "/prdManage" + "/demoAppliance",tags = "示例-家电管理代码")
@AllArgsConstructor
public class DemoApplianceController {
private final IDemoApplianceService demoApplianceService;
@GetMapping(value = "/page")
@ApiOperation(value="DemoAppliance列表(分页)")
@SaCheckPermission("demoAppliance:list")
public R page(@Valid DemoAppliancePageDto dto){
LambdaQueryWrapper<DemoAppliance> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
.like(StrUtil.isNotBlank(dto.getName()),DemoAppliance::getName,dto.getName())
.like(StrUtil.isNotBlank(dto.getSerialNumber()),DemoAppliance::getSerialNumber,dto.getSerialNumber())
.like(StrUtil.isNotBlank(dto.getCategory()),DemoAppliance::getCategory,dto.getCategory())
.orderByDesc(DemoAppliance::getId)
.select(DemoAppliance.class,x -> VoToColumnUtil.fieldsToColumns(DemoAppliancePageVo.class).contains(x.getProperty()));
IPage<DemoAppliance> page = demoApplianceService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<DemoAppliancePageVo> pageOutput = ConventPage.getPageOutput(page, DemoAppliancePageVo.class);
return R.ok(pageOutput);
}
@GetMapping(value = "/info")
@ApiOperation(value="根据id查询DemoAppliance信息")
@SaCheckPermission("demoAppliance:detail")
public R info(@RequestParam Integer id){
DemoAppliance demoAppliance = demoApplianceService.getById(id);
if (demoAppliance == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(demoAppliance, DemoApplianceVo.class));
}
@PostMapping
@ApiOperation(value = "新增DemoAppliance")
@SaCheckPermission("demoAppliance:add")
public R add(@Valid @RequestBody AddDemoApplianceDto dto){
DemoAppliance demoAppliance = BeanUtil.toBean(dto, DemoAppliance.class);
boolean isSuccess = demoApplianceService.save(demoAppliance);
return R.ok(demoAppliance.getId());
}
@PutMapping
@ApiOperation(value = "修改DemoAppliance")
@SaCheckPermission("demoAppliance:edit")
public R update(@Valid @RequestBody UpdateDemoApplianceDto dto){
DemoAppliance demoAppliance = BeanUtil.toBean(dto, DemoAppliance.class);
return R.ok(demoApplianceService.updateById(demoAppliance));
}
@DeleteMapping
@ApiOperation(value = "删除")
@SaCheckPermission("demoAppliance:delete")
public R delete(@Valid @RequestBody List<Integer> ids){
return R.ok(demoApplianceService.removeBatchByIds(ids));
}
}

View File

@ -0,0 +1,113 @@
package com.xjrsoft.module.prdManage.controller;
import java.util.List;
import javax.validation.Valid;
import org.springframework.beans.factory.annotation.Autowired;
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.prdManage.dto.AddTestfrom2Dto;
import com.xjrsoft.module.prdManage.dto.Testfrom2PageDto;
import com.xjrsoft.module.prdManage.dto.UpdateTestfrom2Dto;
import com.xjrsoft.module.prdManage.entity.Testfrom2;
import com.xjrsoft.module.prdManage.service.ITestfrom2Service;
import com.xjrsoft.module.prdManage.vo.Testfrom2PageVo;
import com.xjrsoft.module.prdManage.vo.Testfrom2Vo;
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-08-20
* @Version 1.0
*/
@RestController
@RequestMapping("/dev" + "/testfrom2")
@Api(value = "/dev" + "/testfrom2",tags = "测试代码")
@AllArgsConstructor
public class Testfrom2Controller {
private final ITestfrom2Service testfrom2Service;
private final DatalogService dataService;
@GetMapping(value = "/page")
@ApiOperation(value="Testfrom2列表(分页)")
@SaCheckPermission("testfrom2:list")
public R page(@Valid Testfrom2PageDto dto){
LambdaQueryWrapper<Testfrom2> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
.like(StrUtil.isNotBlank(dto.getDanXingWenBen7818()),Testfrom2::getDanXingWenBen7818,dto.getDanXingWenBen7818())
.like(StrUtil.isNotBlank(dto.getDanXingWenBen9043()),Testfrom2::getDanXingWenBen9043,dto.getDanXingWenBen9043())
.orderByDesc(Testfrom2::getId)
.select(Testfrom2.class,x -> VoToColumnUtil.fieldsToColumns(Testfrom2PageVo.class).contains(x.getProperty()));
IPage<Testfrom2> page = testfrom2Service.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<Testfrom2PageVo> pageOutput = ConventPage.getPageOutput(page, Testfrom2PageVo.class);
return R.ok(pageOutput);
}
@GetMapping(value = "/info")
@ApiOperation(value="根据id查询Testfrom2信息")
@SaCheckPermission("testfrom2:detail")
public R info(@RequestParam Long id){
Testfrom2 testfrom2 = testfrom2Service.getById(id);
if (testfrom2 == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(testfrom2, Testfrom2Vo.class));
}
@PostMapping
@ApiOperation(value = "新增Testfrom2")
@SaCheckPermission("testfrom2:add")
public R add(@Valid @RequestBody AddTestfrom2Dto dto){
// Testfrom2 testfrom2 = BeanUtil.toBean(dto, Testfrom2.class);
//boolean isSuccess = testfrom2Service.save(testfrom2);
AddTestfrom2Dto res = dataService.insert(dto);
return R.ok(res.getId());
}
@PutMapping
@ApiOperation(value = "修改Testfrom2")
@SaCheckPermission("testfrom2:edit")
public R update(@Valid @RequestBody AddTestfrom2Dto dto){
// Testfrom2 testfrom2 = BeanUtil.toBean(dto, Testfrom2.class);
return R.ok(dataService.updateById(dto));
}
@DeleteMapping
@ApiOperation(value = "删除")
@SaCheckPermission("testfrom2:delete")
public R delete(@Valid @RequestBody List<Long> ids){
//return R.ok(testfrom2Service.removeBatchByIds(ids));
return R.ok(dataService.deleteByIds(AddTestfrom2Dto.class, ids));
}
}

View File

@ -0,0 +1,70 @@
package com.xjrsoft.module.prdManage.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
import com.pictc.annotations.datalog.LogTable;
/**
* @title: 示例-家电管理
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@LogTable(name="家电管理",source = "")
@Data
public class AddDemoApplianceDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String serialNumber;
/**
*
*/
@ApiModelProperty("")
private String category;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime purchaseDate;
/**
*
*/
@ApiModelProperty("")
private Integer warrantyPeriod;
/**
*
*/
@ApiModelProperty("")
private Integer powerRating;
/**
*
*/
@ApiModelProperty("")
private String brand;
/**
*
*/
@ApiModelProperty("")
private Double sellingPrice;
/**
*
*/
@ApiModelProperty("")
private String status;
}

View File

@ -0,0 +1,56 @@
package com.xjrsoft.module.prdManage.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
import com.pictc.annotations.datalog.LogField;
import com.pictc.annotations.datalog.LogTable;
/**
* @title: 测试
* @Author 管理员
* @Date: 2025-09-15
* @Version 1.0
*/
@Data
@LogTable(source="testfrom_2",name="测试")
public class AddTestfrom2Dto implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
private Long id;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
@LogField(name="单行文本",index=0)
private String danXingWenBen7818;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
@LogField(name="单行文本",index=0)
private String danXingWenBen9043;
/**
*
*/
@ApiModelProperty("")
@LogField(name="",index=0)
private Long tenantId;
}

View File

@ -0,0 +1,35 @@
package com.xjrsoft.module.prdManage.dto;
import com.xjrsoft.common.page.PageInput;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @title: 分页查询入参
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class DemoAppliancePageDto extends PageInput {
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String serialNumber;
/**
*
*/
@ApiModelProperty("")
private String category;
}

View File

@ -0,0 +1,35 @@
package com.xjrsoft.module.prdManage.dto;
import com.xjrsoft.common.page.PageInput;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
/**
* @title: 分页查询入参
* @Author 管理员
* @Date: 2025-09-15
* @Version 1.0
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class Testfrom2PageDto extends PageInput {
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen7818;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen9043;
}

View File

@ -0,0 +1,72 @@
package com.xjrsoft.module.prdManage.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* @title: 示例-家电管理
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@Data
public class UpdateDemoApplianceDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
private Integer id;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String serialNumber;
/**
*
*/
@ApiModelProperty("")
private String category;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime purchaseDate;
/**
*
*/
@ApiModelProperty("")
private Integer warrantyPeriod;
/**
*
*/
@ApiModelProperty("")
private Integer powerRating;
/**
*
*/
@ApiModelProperty("")
private String brand;
/**
*
*/
@ApiModelProperty("")
private Double sellingPrice;
/**
*
*/
@ApiModelProperty("")
private String status;
}

View File

@ -0,0 +1,47 @@
package com.xjrsoft.module.prdManage.dto;
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 com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
/**
* @title: 测试
* @Author 管理员
* @Date: 2025-09-15
* @Version 1.0
*/
@Data
public class UpdateTestfrom2Dto implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
private Long id;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen7818;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen9043;
/**
*
*/
@ApiModelProperty("")
private Long tenantId;
}

View File

@ -0,0 +1,80 @@
package com.xjrsoft.module.prdManage.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* @title: 示例-家电管理
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@Data
@TableName("demo_appliance")
@ApiModel(value = "示例-家电管理对象", description = "示例-家电管理")
public class DemoAppliance implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
@TableId(type = IdType.ASSIGN_ID)
private Integer id;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String serialNumber;
/**
*
*/
@ApiModelProperty("")
private String category;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime purchaseDate;
/**
*
*/
@ApiModelProperty("")
private Integer warrantyPeriod;
/**
*
*/
@ApiModelProperty("")
private Integer powerRating;
/**
*
*/
@ApiModelProperty("")
private String brand;
/**
*
*/
@ApiModelProperty("")
private Double sellingPrice;
/**
*
*/
@ApiModelProperty("")
private String status;
}

View File

@ -0,0 +1,47 @@
package com.xjrsoft.module.prdManage.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.github.yulichang.autoconfigure.conditional.JoinSqlInjectorCondition;
import com.pictc.annotations.datalog.JoinCaseType;
import com.pictc.annotations.datalog.JoinType;
import com.pictc.annotations.datalog.LogJoin;
import com.pictc.annotations.datalog.LogJoinColumn;
import com.pictc.annotations.datalog.ValueDirectionType;
import com.pictc.orm.BaseMasterEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 测试
* @Author 管理员
* @Date: 2025-09-15
* @Version 1.0
*/
@Data
@TableName("testfrom_2")
@ApiModel(value = "测试对象", description = "测试")
public class Testfrom2 extends BaseMasterEntity {
private static final long serialVersionUID = 1L;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen7818;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen9043;
@LogJoin(name = "",
columns = {
@LogJoinColumn(field = "",relatedField = "", valueDirection = ValueDirectionType.RIGHT)
}, caseType = JoinCaseType.FULL, target = DemoAppliance.class, type = JoinType.MANY)
private DemoAppliance appliance;
}

View File

@ -0,0 +1,16 @@
package com.xjrsoft.module.prdManage.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xjrsoft.module.prdManage.entity.DemoAppliance;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@Mapper
public interface DemoApplianceMapper extends BaseMapper<DemoAppliance> {
}

View File

@ -0,0 +1,17 @@
package com.xjrsoft.module.prdManage.mapper;
import org.apache.ibatis.annotations.Mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xjrsoft.module.prdManage.entity.Testfrom2;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-08-20
* @Version 1.0
*/
@Mapper
public interface Testfrom2Mapper extends BaseMapper<Testfrom2> {
}

View File

@ -0,0 +1,14 @@
package com.xjrsoft.module.prdManage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xjrsoft.module.prdManage.entity.DemoAppliance;
/**
* @title: service
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
public interface IDemoApplianceService extends IService<DemoAppliance> {
}

View File

@ -0,0 +1,14 @@
package com.xjrsoft.module.prdManage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xjrsoft.module.prdManage.entity.Testfrom2;
/**
* @title: service
* @Author 管理员
* @Date: 2025-08-20
* @Version 1.0
*/
public interface ITestfrom2Service extends IService<Testfrom2> {
}

View File

@ -0,0 +1,19 @@
package com.xjrsoft.module.prdManage.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xjrsoft.module.prdManage.entity.DemoAppliance;
import com.xjrsoft.module.prdManage.mapper.DemoApplianceMapper;
import com.xjrsoft.module.prdManage.service.IDemoApplianceService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
/**
* @title: service
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class DemoApplianceServiceImpl extends ServiceImpl<DemoApplianceMapper, DemoAppliance> implements IDemoApplianceService {
}

View File

@ -0,0 +1,21 @@
package com.xjrsoft.module.prdManage.service.impl;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xjrsoft.module.prdManage.entity.Testfrom2;
import com.xjrsoft.module.prdManage.mapper.Testfrom2Mapper;
import com.xjrsoft.module.prdManage.service.ITestfrom2Service;
import lombok.AllArgsConstructor;
/**
* @title: service
* @Author 管理员
* @Date: 2025-08-20
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class Testfrom2ServiceImpl extends ServiceImpl<Testfrom2Mapper, Testfrom2> implements ITestfrom2Service {
}

View File

@ -0,0 +1,68 @@
package com.xjrsoft.module.prdManage.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* @title: 分页列表出参
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@Data
public class DemoAppliancePageVo {
/**
*
*/
@ApiModelProperty("")
private String id;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String serialNumber;
/**
*
*/
@ApiModelProperty("")
private String category;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime purchaseDate;
/**
*
*/
@ApiModelProperty("")
private Integer warrantyPeriod;
/**
*
*/
@ApiModelProperty("")
private Integer powerRating;
/**
*
*/
@ApiModelProperty("")
private String brand;
/**
*
*/
@ApiModelProperty("")
private Double sellingPrice;
/**
*
*/
@ApiModelProperty("")
private String status;
}

View File

@ -0,0 +1,70 @@
package com.xjrsoft.module.prdManage.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-03-12
* @Version 1.0
*/
@Data
public class DemoApplianceVo {
/**
*
*/
@ApiModelProperty("")
private Integer id;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String serialNumber;
/**
*
*/
@ApiModelProperty("")
private String category;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime purchaseDate;
/**
*
*/
@ApiModelProperty("")
private Integer warrantyPeriod;
/**
*
*/
@ApiModelProperty("")
private Integer powerRating;
/**
*
*/
@ApiModelProperty("")
private String brand;
/**
*
*/
@ApiModelProperty("")
private Double sellingPrice;
/**
*
*/
@ApiModelProperty("")
private String status;
}

View File

@ -0,0 +1,38 @@
package com.xjrsoft.module.prdManage.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import com.xjrsoft.common.annotation.Trans;
import com.xjrsoft.common.enums.TransType;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
/**
* @title: 分页列表出参
* @Author 管理员
* @Date: 2025-08-20
* @Version 1.0
*/
@Data
public class Testfrom2PageVo {
/**
*
*/
@ApiModelProperty("")
private String id;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen1620;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen1247;
}

View File

@ -0,0 +1,68 @@
package com.xjrsoft.module.prdManage.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.util.List;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-08-20
* @Version 1.0
*/
@Data
public class Testfrom2Vo {
/**
*
*/
@ApiModelProperty("")
private Long id;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen1620;
/**
* 单行文本
*/
@ApiModelProperty("单行文本")
private String danXingWenBen1247;
/**
*
*/
@ApiModelProperty("")
private Long createUserId;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime createDate;
/**
*
*/
@ApiModelProperty("")
private Long modifyUserId;
/**
*
*/
@ApiModelProperty("")
private LocalDateTime modifyDate;
/**
*
*/
@ApiModelProperty("")
private Integer enabledMark;
/**
*
*/
@ApiModelProperty("")
private Long tenantId;
}

View File

@ -0,0 +1,99 @@
package com.xjrsoft.module.relationManage.controller;
import cn.dev33.satoken.annotation.SaCheckPermission;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.StrUtil;
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.relationManage.dto.AddDemoCustomerDto;
import com.xjrsoft.module.relationManage.dto.DemoCustomerPageDto;
import com.xjrsoft.module.relationManage.dto.UpdateDemoCustomerDto;
import com.xjrsoft.module.relationManage.entity.DemoCustomer;
import com.xjrsoft.module.relationManage.service.IDemoCustomerManageService;
import com.xjrsoft.module.relationManage.vo.DemoCustomerPageVo;
import com.xjrsoft.module.relationManage.vo.DemoCustomerVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* @title: demo_客户管理
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@RestController
@RequestMapping("/relationManage" + "/demoCustomerManage")
@Api(value = "/relationManage" + "/demoCustomerManage",tags = "demo_客户管理代码")
@AllArgsConstructor
public class DemoCustomerManageController {
private final IDemoCustomerManageService demoCustomerManageService;
@GetMapping(value = "/page")
@ApiOperation(value="DemoCustomer列表(分页)")
@SaCheckPermission("demoCustomerManage:list")
public R page(@Valid DemoCustomerPageDto dto){
LambdaQueryWrapper<DemoCustomer> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper
.like(StrUtil.isNotBlank(dto.getName()),DemoCustomer::getName,dto.getName())
.like(StrUtil.isNotBlank(dto.getGender()),DemoCustomer::getGender,dto.getGender())
.like(StrUtil.isNotBlank(dto.getPhone()),DemoCustomer::getPhone,dto.getPhone())
.like(StrUtil.isNotBlank(dto.getEmail()),DemoCustomer::getEmail,dto.getEmail())
.orderByDesc(DemoCustomer::getId)
.select(DemoCustomer.class,x -> VoToColumnUtil.fieldsToColumns(DemoCustomerPageVo.class).contains(x.getProperty()));
IPage<DemoCustomer> page = demoCustomerManageService.page(ConventPage.getPage(dto), queryWrapper);
PageOutput<DemoCustomerPageVo> pageOutput = ConventPage.getPageOutput(page, DemoCustomerPageVo.class);
return R.ok(pageOutput);
}
@GetMapping(value = "/info")
@ApiOperation(value="根据id查询DemoCustomer信息")
@SaCheckPermission("demoCustomerManage:detail")
public R info(@RequestParam Long id){
DemoCustomer demoCustomer = demoCustomerManageService.getById(id);
if (demoCustomer == null) {
return R.error("找不到此数据!");
}
return R.ok(BeanUtil.toBean(demoCustomer, DemoCustomerVo.class));
}
@PostMapping
@ApiOperation(value = "新增DemoCustomer")
@SaCheckPermission("demoCustomerManage:add")
public R add(@Valid @RequestBody AddDemoCustomerDto dto){
DemoCustomer demoCustomer = BeanUtil.toBean(dto, DemoCustomer.class);
boolean isSuccess = demoCustomerManageService.save(demoCustomer);
return R.ok(demoCustomer.getId());
}
@PutMapping
@ApiOperation(value = "修改DemoCustomer")
@SaCheckPermission("demoCustomerManage:edit")
public R update(@Valid @RequestBody UpdateDemoCustomerDto dto){
DemoCustomer demoCustomer = BeanUtil.toBean(dto, DemoCustomer.class);
return R.ok(demoCustomerManageService.updateById(demoCustomer));
}
@DeleteMapping
@ApiOperation(value = "删除")
@SaCheckPermission("demoCustomerManage:delete")
public R delete(@Valid @RequestBody List<Long> ids){
return R.ok(demoCustomerManageService.removeBatchByIds(ids));
}
}

View File

@ -0,0 +1,57 @@
package com.xjrsoft.module.relationManage.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* @title: demo_客户管理
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@Data
public class AddDemoCustomerDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String gender;
/**
*
*/
@ApiModelProperty("")
private String phone;
/**
*
*/
@ApiModelProperty("")
private String email;
/**
*
*/
@ApiModelProperty("")
private String address;
/**
*
*/
@ApiModelProperty("")
private String company;
/**
*
*/
@ApiModelProperty("")
private String position;
}

View File

@ -0,0 +1,40 @@
package com.xjrsoft.module.relationManage.dto;
import com.xjrsoft.common.page.PageInput;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
/**
* @title: 分页查询入参
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@Data
@EqualsAndHashCode(callSuper = false)
public class DemoCustomerPageDto extends PageInput {
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String gender;
/**
*
*/
@ApiModelProperty("")
private String phone;
/**
*
*/
@ApiModelProperty("")
private String email;
}

View File

@ -0,0 +1,61 @@
package com.xjrsoft.module.relationManage.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* @title: demo_客户管理
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@Data
public class UpdateDemoCustomerDto implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
private Long id;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String gender;
/**
*
*/
@ApiModelProperty("")
private String phone;
/**
*
*/
@ApiModelProperty("")
private String email;
/**
*
*/
@ApiModelProperty("")
private String address;
/**
*
*/
@ApiModelProperty("")
private String company;
/**
*
*/
@ApiModelProperty("")
private String position;
}

View File

@ -0,0 +1,90 @@
package com.xjrsoft.module.relationManage.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* @title: demo_客户管理
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@Data
@TableName("demo_customer")
@ApiModel(value = "demo_客户管理对象", description = "demo_客户管理")
public class DemoCustomer implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
@ApiModelProperty("")
@TableId
private Long id;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String gender;
/**
*
*/
@ApiModelProperty("")
private String phone;
/**
*
*/
@ApiModelProperty("")
private String email;
/**
*
*/
@ApiModelProperty("")
private String address;
/**
*
*/
@ApiModelProperty("")
private String company;
/**
*
*/
@ApiModelProperty("")
private String position;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private LocalDateTime createDate;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private Long createUserId;
/**
*
*/
@ApiModelProperty("")
@TableField(fill = FieldFill.INSERT)
private Long deptId;
}

View File

@ -0,0 +1,16 @@
package com.xjrsoft.module.relationManage.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.xjrsoft.module.relationManage.entity.DemoCustomer;
import org.apache.ibatis.annotations.Mapper;
/**
* @title: mapper
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@Mapper
public interface DemoCustomerMapper extends BaseMapper<DemoCustomer> {
}

View File

@ -0,0 +1,14 @@
package com.xjrsoft.module.relationManage.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.xjrsoft.module.relationManage.entity.DemoCustomer;
/**
* @title: service
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
public interface IDemoCustomerManageService extends IService<DemoCustomer> {
}

View File

@ -0,0 +1,19 @@
package com.xjrsoft.module.relationManage.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xjrsoft.module.relationManage.entity.DemoCustomer;
import com.xjrsoft.module.relationManage.mapper.DemoCustomerMapper;
import com.xjrsoft.module.relationManage.service.IDemoCustomerManageService;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
/**
* @title: service
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@Service
@AllArgsConstructor
public class DemoCustomerManageServiceImpl extends ServiceImpl<DemoCustomerMapper, DemoCustomer> implements IDemoCustomerManageService {
}

View File

@ -0,0 +1,56 @@
package com.xjrsoft.module.relationManage.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @title: 分页列表出参
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@Data
public class DemoCustomerPageVo {
/**
*
*/
@ApiModelProperty("")
private String id;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String gender;
/**
*
*/
@ApiModelProperty("")
private String phone;
/**
*
*/
@ApiModelProperty("")
private String email;
/**
*
*/
@ApiModelProperty("")
private String address;
/**
*
*/
@ApiModelProperty("")
private String company;
/**
*
*/
@ApiModelProperty("")
private String position;
}

View File

@ -0,0 +1,74 @@
package com.xjrsoft.module.relationManage.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* @title: 表单出参
* @Author 管理员
* @Date: 2025-03-11
* @Version 1.0
*/
@Data
public class DemoCustomerVo {
/**
*
*/
@ApiModelProperty("")
private Long id;
/**
*
*/
@ApiModelProperty("")
private String name;
/**
*
*/
@ApiModelProperty("")
private String gender;
/**
*
*/
@ApiModelProperty("")
private String phone;
/**
*
*/
@ApiModelProperty("")
private String email;
/**
*
*/
@ApiModelProperty("")
private String address;
/**
*
*/
@ApiModelProperty("")
private String company;
/**
*
*/
@ApiModelProperty("")
private String position;
@ApiModelProperty("")
private LocalDateTime createDate;
/**
*
*/
@ApiModelProperty("")
private Long createUserId;
/**
*
*/
@ApiModelProperty("")
private Long deptId;
}

View File

@ -0,0 +1,6 @@
██████╗ ███████╗ ██████╗ ██╗████████╗ ██████╗
██╔════╝ ██╔════╝██╔════╝ ██║╚══██╔══╝██╔════╝
██║ ███╗█████╗ ██║ ███╗█████╗██║ ██║ ██║
██║ ██║██╔══╝ ██║ ██║╚════╝██║ ██║ ██║
╚██████╔╝███████╗╚██████╔╝ ██║ ██║ ╚██████╗
╚═════╝ ╚══════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═════╝

View File

@ -0,0 +1,49 @@
spring:
cloud:
nacos: #nacos监控
config:
server-addr: 127.0.0.1:8848 # nacos 配置中心地址
namespace: ITC-MS
group: DNE
username: nacos
password: nacos
extension-configs:
- data-id: global-local.yml
refresh: true
group: DNE
- data-id: discovery-local.yml
refresh: true
group: DNE
- data-id: datasource-local.yml
refresh: true
group: DNE
- data-id: seata-local.yml
refresh: true
group: DNE
- data-id: redis-local.yml
refresh: true
group: DNE
- data-id: magic-api.yml
refresh: true
group: DNE
- data-id: sa-token.yml
refresh: true
group: DNE
- data-id: camunda.yml
refresh: true
group: DNE
- data-id: sentinel-local.yml
refresh: true
group: DNE
datalog:
db:
url: jdbc:kingbase8://127.0.0.1:54321/itc?currentSchema=dne_log_sit

View File

@ -0,0 +1,56 @@
server:
port: 8099
spring:
application:
name: demo-service
main:
allow-bean-definition-overriding: true
profiles:
active: local
cloud:
nacos: #nacos监控
config:
server-addr: 10.0.252.1:8848 # nacos 配置中心地址
namespace: ITC-MS
group: DNE
username: nacos
password: Yudean@2025
file-extension: yml # 默认配置 ${spring.application.name}-${spring.profiles.active}.${file-extension}
refresh-enabled: true
extension-configs:
- data-id: global.yml
refresh: true
group: DNE
- data-id: discovery.yml
refresh: true
group: DNE
- data-id: datasource.yml
refresh: true
group: DNE
- data-id: seata.yml
refresh: true
group: DNE
- data-id: redis.yml
refresh: true
group: DNE
- data-id: magic-api.yml
refresh: true
group: DNE
- data-id: sa-token.yml
refresh: true
group: DNE
- data-id: camunda.yml
refresh: true
group: DNE
- data-id: sentinel.yml
refresh: true
group: DNE