配置表导出工具

chenbin 2bd48e5eaa fix:合法性检测增加主键重复检测 1 week ago
Configs 2bd48e5eaa fix:合法性检测增加主键重复检测 1 week ago
ReadmeImg 9b684321c4 feat:初始化 2 months ago
etoy 2bd48e5eaa fix:合法性检测增加主键重复检测 1 week ago
.gitignore 9b684321c4 feat:初始化 2 months ago
README.md 9b684321c4 feat:初始化 2 months ago

README.md

etoy-xgame

介绍

本工具用于将excel表格转成csv和其他数据格式的文件并生成配套代码。

客户端语言:C#,数据结构:字节流

服务端:TODO

表格规范

  1. Excel
    1. 表格文件支持多标签页,标签页名字以驼峰方式命名,首字母大写。

    2. 表格名字以"#"开头的表示忽略该表,不会对该表执行任何操作。

    3. 每个表格起始4行固定为字段名、数据类型、字段标签、字段说明,正式数据从第五行开始。第一列默认为表格主键(int、long)。

    4. 表格某一列字段名为“#”,则导出数据时忽略该列。字段识别到空字符串为止,即字段名为空所在的列及其后所有列都不会导出。

    5. 标签说明:默认为空,双端都导出。 's':导出服务端,’c‘:导出客户端。Default:value 字段默认值,若字段值为空,则使用该值。

    6. 基础数据类型: int、long、float、double、bool、string。除了字符串,其他类型都不允许为空。布尔值推荐使用0或1。

    7. 数组类型从excel读取是按照json格式读取,因此字符串数组(string[])每个字符串都需要带上"",否则会识别错误。

    1. 自定义数据类型:struct、enum,这两种数据类型通过 Metadata表自定义,使用struct时以“{}”起始,内部只需要按顺序填值。

    2. 如图所示:字段Id导出时作为该表主键

    3. image-20240508125559907

  2. Metadata
    1. __Metadata.xlsx用于生成自定义数据结构和枚举,该表格定义的数据结构和枚举,可在除了KeyValue表以外的所有地方使用。

    2. 表格固定三列:类型、值、备注

    3. 第一行固定不能修改,正式配置从第二行开始

    4. 支持两种类型:struct(数据结构)、enum(枚举)

    5. 数据结构定义格式:数据结构名字 {字段名1:数据类型1;字段名2:数据类型2;},支持数据结构嵌套

    image-20240508115556752

    1. 枚举定义格式:枚举类型名字 {枚举1,枚举2,枚举3=value3} 枚举值默认从零开始,可以不赋值只定义名字

    2. image-20240508123733422

  3. KeyValue
    1. __KeyValue.xlsx用于生成固定的Key、Value键值对,主要用于一些不方便建表的可配置字段。
    2. 表格固定五列:key、value、数据类型、字段描述、标签
    3. 第一行固定不能修改,正式配置从第二行开始
    4. 只支持基础数据类型:int、long、float、double、bool、string
    5. 标签说明: 's':导出服务端,’c‘:导出客户端
    6. image-20240508130627348
  4. 未完待续

配置文件

  1. Option.json 使用json格式保存该工具的配置信息

  2. ExcelInput:Excel文件所在的根目录

  3. CsvOutput:Csv文件生成根目录

  4. PipelineType:打包命令类型(0: 全部生成; 1: 只生成客户端; 2: 只生成服务端)

  5. ClientDatabaseOutput:客户端数据库导出根目录

  6. ClientCodeOutput:客户端代码导出根目录

  7. ServerDatabaseOutput:服务端数据库导出根目录

  8. ServerCodeOutput:服务端代码导出根目录

  9. ConfigVersionOutput:配置版本文件的导出路径

  10. image-20240722150310549

使用

  1. Option.json配置好相关参数
  2. Excel表格
  3. 点击执行etoy.exe