mirror of
http://git.pig4cloud.com/pig/pigx.git
synced 2026-11-14 14:19:08 +08:00
📝 Writing docs. 增加主子表代码生成的详细
This commit is contained in:
1 parent
44f473ba27
commit
931635d56c
2 files changed
+23
-23
No files matched your search
@@ -132,10 +132,8 @@ CREATE TABLE `gen_group` (
|
|||||||
-- Records of gen_group
|
-- Records of gen_group
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
BEGIN;
|
BEGIN;
|
||||||
INSERT INTO `gen_group` VALUES (1, '国际化 vue3 弹框', '含有国际化的内容', 1, ' ', ' ', NULL, NULL, '0');
|
INSERT INTO `gen_group` VALUES (1, '单表增删改查', '单表增删改查', 1, ' ', ' ', NULL, NULL, '0');
|
||||||
INSERT INTO `gen_group` VALUES (2, '不含国际化vue3版本', '表单为弹窗', 1, ' ', ' ', NULL, NULL, '0');
|
INSERT INTO `gen_group` VALUES (2, '主子表表增删改查', '主子表表增删改查', 1, ' ', ' ', NULL, NULL, '0');
|
||||||
INSERT INTO `gen_group` VALUES (3, '国际化 vue3 抽屉', '抽屉类型', 1, ' ', ' ', NULL, NULL, '0');
|
|
||||||
INSERT INTO `gen_group` VALUES (4, '不含国际化 vue3 抽屉', 'vue3 抽屉', 1, ' ', ' ', NULL, NULL, '0');
|
|
||||||
COMMIT;
|
COMMIT;
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
@@ -154,6 +152,9 @@ CREATE TABLE `gen_table` (
|
|||||||
`version` varchar(200) DEFAULT NULL COMMENT '项目版本号',
|
`version` varchar(200) DEFAULT NULL COMMENT '项目版本号',
|
||||||
`i18n` tinyint(4) DEFAULT '1' COMMENT '是否生成带有i18n 0 不带有 1带有',
|
`i18n` tinyint(4) DEFAULT '1' COMMENT '是否生成带有i18n 0 不带有 1带有',
|
||||||
`style` bigint(20) DEFAULT '0' COMMENT '代码风格',
|
`style` bigint(20) DEFAULT '0' COMMENT '代码风格',
|
||||||
|
`child_table_name` varchar(200) DEFAULT NULL COMMENT '子表名称',
|
||||||
|
`main_field` varchar(200) DEFAULT NULL COMMENT '主表关联键',
|
||||||
|
`child_field` varchar(200) DEFAULT NULL COMMENT '子表关联键',
|
||||||
`generator_type` tinyint(4) DEFAULT NULL COMMENT '生成方式 0:zip压缩包 1:自定义目录',
|
`generator_type` tinyint(4) DEFAULT NULL COMMENT '生成方式 0:zip压缩包 1:自定义目录',
|
||||||
`backend_path` varchar(500) DEFAULT NULL COMMENT '后端生成路径',
|
`backend_path` varchar(500) DEFAULT NULL COMMENT '后端生成路径',
|
||||||
`frontend_path` varchar(500) DEFAULT NULL COMMENT '前端生成路径',
|
`frontend_path` varchar(500) DEFAULT NULL COMMENT '前端生成路径',
|
||||||
@@ -166,7 +167,6 @@ CREATE TABLE `gen_table` (
|
|||||||
PRIMARY KEY (`id`),
|
PRIMARY KEY (`id`),
|
||||||
UNIQUE KEY `table_name` (`table_name`,`ds_name`) USING BTREE
|
UNIQUE KEY `table_name` (`table_name`,`ds_name`) USING BTREE
|
||||||
) ENGINE=InnoDB AUTO_INCREMENT=1642522692257112067 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='代码生成表';
|
) ENGINE=InnoDB AUTO_INCREMENT=1642522692257112067 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='代码生成表';
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Records of gen_table
|
-- Records of gen_table
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
|
|||||||
+18
-18
@@ -81,15 +81,16 @@ public abstract class AbstractSheetWriteHandler implements SheetWriteHandler, Ap
|
|||||||
public void export(Object o, HttpServletResponse response, ResponseExcel responseExcel) {
|
public void export(Object o, HttpServletResponse response, ResponseExcel responseExcel) {
|
||||||
check(responseExcel);
|
check(responseExcel);
|
||||||
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
|
RequestAttributes requestAttributes = RequestContextHolder.getRequestAttributes();
|
||||||
String name = (String) Objects.requireNonNull(requestAttributes).getAttribute(DynamicNameAspect.EXCEL_NAME_KEY,
|
String name = (String) Objects.requireNonNull(requestAttributes)
|
||||||
RequestAttributes.SCOPE_REQUEST);
|
.getAttribute(DynamicNameAspect.EXCEL_NAME_KEY, RequestAttributes.SCOPE_REQUEST);
|
||||||
if (name == null) {
|
if (name == null) {
|
||||||
name = UUID.randomUUID().toString();
|
name = UUID.randomUUID().toString();
|
||||||
}
|
}
|
||||||
String fileName = String.format("%s%s", URLEncoder.encode(name, "UTF-8"), responseExcel.suffix().getValue());
|
String fileName = String.format("%s%s", URLEncoder.encode(name, "UTF-8"), responseExcel.suffix().getValue());
|
||||||
// 根据实际的文件类型找到对应的 contentType
|
// 根据实际的文件类型找到对应的 contentType
|
||||||
String contentType = MediaTypeFactory.getMediaType(fileName).map(MediaType::toString)
|
String contentType = MediaTypeFactory.getMediaType(fileName)
|
||||||
.orElse("application/vnd.ms-excel");
|
.map(MediaType::toString)
|
||||||
|
.orElse("application/vnd.ms-excel");
|
||||||
response.setContentType(contentType);
|
response.setContentType(contentType);
|
||||||
response.setCharacterEncoding("utf-8");
|
response.setCharacterEncoding("utf-8");
|
||||||
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename*=utf-8''" + fileName);
|
response.setHeader(HttpHeaders.CONTENT_DISPOSITION, "attachment;filename*=utf-8''" + fileName);
|
||||||
@@ -105,11 +106,14 @@ public abstract class AbstractSheetWriteHandler implements SheetWriteHandler, Ap
|
|||||||
@SneakyThrows(IOException.class)
|
@SneakyThrows(IOException.class)
|
||||||
public ExcelWriter getExcelWriter(HttpServletResponse response, ResponseExcel responseExcel) {
|
public ExcelWriter getExcelWriter(HttpServletResponse response, ResponseExcel responseExcel) {
|
||||||
ExcelWriterBuilder writerBuilder = EasyExcel.write(response.getOutputStream())
|
ExcelWriterBuilder writerBuilder = EasyExcel.write(response.getOutputStream())
|
||||||
.registerConverter(LocalTimeStringConverter.INSTANCE)
|
.registerConverter(LocalTimeStringConverter.INSTANCE)
|
||||||
.registerConverter(LocalDateStringConverter.INSTANCE)
|
.registerConverter(LocalDateStringConverter.INSTANCE)
|
||||||
.registerConverter(LocalDateTimeStringConverter.INSTANCE)
|
.registerConverter(LocalDateTimeStringConverter.INSTANCE)
|
||||||
.registerConverter(LongStringConverter.INSTANCE).registerConverter(StringArrayConverter.INSTANCE)
|
.registerConverter(LongStringConverter.INSTANCE)
|
||||||
.autoCloseStream(true).excelType(responseExcel.suffix()).inMemory(responseExcel.inMemory());
|
.registerConverter(StringArrayConverter.INSTANCE)
|
||||||
|
.autoCloseStream(true)
|
||||||
|
.excelType(responseExcel.suffix())
|
||||||
|
.inMemory(responseExcel.inMemory());
|
||||||
|
|
||||||
if (StringUtils.hasText(responseExcel.password())) {
|
if (StringUtils.hasText(responseExcel.password())) {
|
||||||
writerBuilder.password(responseExcel.password());
|
writerBuilder.password(responseExcel.password());
|
||||||
@@ -120,13 +124,11 @@ public abstract class AbstractSheetWriteHandler implements SheetWriteHandler, Ap
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (responseExcel.exclude().length != 0) {
|
if (responseExcel.exclude().length != 0) {
|
||||||
writerBuilder.includeColumnFieldNames(Arrays.asList(responseExcel.exclude()));
|
writerBuilder.excludeColumnFieldNames(Arrays.asList(responseExcel.exclude()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (responseExcel.writeHandler().length != 0) {
|
for (Class<? extends WriteHandler> clazz : responseExcel.writeHandler()) {
|
||||||
for (Class<? extends WriteHandler> clazz : responseExcel.writeHandler()) {
|
writerBuilder.registerWriteHandler(BeanUtils.instantiateClass(clazz));
|
||||||
writerBuilder.registerWriteHandler(BeanUtils.instantiateClass(clazz));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 开启国际化头信息处理
|
// 开启国际化头信息处理
|
||||||
@@ -137,10 +139,8 @@ public abstract class AbstractSheetWriteHandler implements SheetWriteHandler, Ap
|
|||||||
// 自定义注入的转换器
|
// 自定义注入的转换器
|
||||||
registerCustomConverter(writerBuilder);
|
registerCustomConverter(writerBuilder);
|
||||||
|
|
||||||
if (responseExcel.converter().length != 0) {
|
for (Class<? extends Converter> clazz : responseExcel.converter()) {
|
||||||
for (Class<? extends Converter> clazz : responseExcel.converter()) {
|
writerBuilder.registerConverter(BeanUtils.instantiateClass(clazz));
|
||||||
writerBuilder.registerConverter(BeanUtils.instantiateClass(clazz));
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
String templatePath = configProperties.getTemplatePath();
|
String templatePath = configProperties.getTemplatePath();
|
||||||
|
|||||||
Reference in new issue
Block a user