Skip to content

定制标签模板

数据库

mysql新增三张表

1.标签模板配置表

CREATE TABLE `tbl_print_tag_config` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '打印标签配置的名称',
  `creator` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '创建模版的用户的 username',
  `station_id` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL,
  `group_id` int(11) NOT NULL,
  `is_default` tinyint(1) NOT NULL COMMENT '一个站点只有一个默认模版',
  `is_set_by_mes` tinyint(1) NOT NULL COMMENT '一个站点同时只有小于等于一个mes设置的打印模板',
  `content` json NOT NULL COMMENT '前端传的一个大字典,后端并不关心它的内容',
  `delete_time` datetime NOT NULL COMMENT 'delete_time 为 datetime.min 代表没有被删除',
  `modify_time` datetime NOT NULL,
  `create_time` datetime NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `name` (`name`,`station_id`,`group_id`,`delete_time`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

2.模板-商户绑定表

CREATE TABLE `tbl_print_tag_address` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `config_id` int(11) NOT NULL COMMENT '标签配置的id',
  `address_id` int(11) NOT NULL,
  `address_name` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
  `station_id` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL,
  `group_id` int(11) NOT NULL,
  `delete_time` datetime NOT NULL COMMENT 'delete_time 为 datetime.min 代表没有被删除',
  `modify_time` datetime NOT NULL,
  `create_time` datetime NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `config_id_address_id` (`config_id`,`address_id`,`station_id`,`group_id`,`delete_time`),
  KEY `idx_address` (`station_id`,`group_id`,`delete_time`,`address_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

3.模板-商品绑定表

CREATE TABLE `tbl_print_tag_spu` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `config_id` int(11) NOT NULL COMMENT '标签配置的id',
  `spu_id` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL,
  `spu_name` varchar(32) COLLATE utf8mb4_unicode_ci NOT NULL,
  `category_id_1` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL,
  `category_id_2` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL,
  `station_id` varchar(11) COLLATE utf8mb4_unicode_ci NOT NULL,
  `group_id` int COLLATE utf8mb4_unicode_ci NOT NULL,
  `delete_time` datetime NOT NULL COMMENT 'delete_time 为 datetime.min 代表没有被删除',
  `modify_time` datetime NOT NULL,
  `create_time` datetime NOT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `config_id_spu_id` (`config_id`,`spu_id`, `group_id`, `station_id`, `delete_time`),
  KEY `idx_spu` (`station_id`,`group_id`, `delete_time`,`spu_id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

接口

新增接口

1. /station/print_tag/list 获取模板信息

method
    GET
request
   无
response
    code    M   int     返回码,0表示成功,其他表示错误
    msg     M   string  错误信息
    {
        code: 0,
        msg: "ok",
        data: {
                result_list:[
                    {
                        id: 1234567890,                     // 这个 station 内部模版的唯一标示,由后端创建
                        creator: 'user alpha',              // 创建者的名字,由后端创建
                        create_time: '1999-12-31 23:59:59',  // 创建时间,由后端创建
                        is_default: true,                    // 是否是默认模版,由后端创建(但是前端可以改)
                        is_set_by_mes: false,               // 标记是否被mes选中为当前打印的模板
                        address_ids: [1074, 1884],
                        spu_ids: ['C369758','C369771'],
                        content{
                                ...                             // 模版内容
                            }
                    },
                        ...
                ]
                count:10      //模板总数
    }
    在设置时,默认的模板与商户,商品对应关系不添加数据库表记录.
"""

2. /station/print_tag/tag_content 获取单个模板内容

    method
        GET
    request
       id  int  M  当前模板id
    response
        code    M   int     返回码,0表示成功,其他表示错误
        msg     M   string  错误信息
        {
            code: 0,
            msg: "ok",
            data: {
                create_time: '2019-04-19T18:28:14',     //创建时间
                creator: 'snow',                        //创建人
                content{
                   ...                                 // 模板内容
                }
            }
        }

3. /station/print_tag/tag_bind 获取当前模板的商户与商品信息

    method
        GET
    request
       id  int  M  当前模板id
    response
        code    M   int     返回码,0表示成功,其他表示错误
        msg     M   string  错误信息
        {
            code: 0,
            msg: "ok",
            data: {
                address: [{address_id: 1074, address_name:"沙县小吃"}, {address_id: 1884, address_name: "蟹堡王"}]         // 配置此模板的商户id
                spu: [{spu_id:'C1376605', spu_name: '西芹(切段)', category_name_1:'蔬果类', category_name_2:'加工蔬果类'},
                      {spu_id:'C1375837', spu_name: '千年记墨鱼丸', category_name_1:'冻品类', category_name_2:'冰冻品'}]     // 配置此模板的商品id
                create_time: '2019-04-19T18:28:14'     //创建时间
                creator: 'snow'                        //创建人
                spu_count: 2                           //商品数
                address_count: 2                       //商户数
            }
        }

4. /station/print_tag/create 创建模板

    method
        POST
    request
        content  dict  M  模版配置内容
    response
        code  M  int  返回码,0表示成功,其他表示错误
        msg   M  str  错误信息
        data:

5. /station/print_tag/edit 编辑或设置默认模板

    method
        POST
    request
        id          int   M  模板id
        content     dict  O  模版配置内容
        default     int   O  是否设置为默认模板,1是,0否
        set_by_mes  int   O  mes是否设置打印模板,1是,0否
    response
        code  M  int  返回码,0表示成功,其他表示错误
        msg   M  str  错误信息
        data:

6. /station/print_tag/update 商户&商品设置模板

    method
        POST
    request
        id           int          M  模板id
        address_ids  list of int  M  商户id 如:[1074, 1884]
        spu_ids      list of str  M  商品id 如:['C369758','C369771']
    response
        code  M  int  返回码 0表示成功,其他表示错误
        msg   M  str  错误信息
        data:

7. /station/print_tag/delete 删除模板

    method
        POST
    request
        id  int  M  模板id
    response
        code  M  int  返回码 0表示成功,其他表示错误
        msg   M  str  错误信息
        data:

8. /station/print_tag/spu_search 搜索商品spu

    method
        GET
    request
        search_text  M  搜索的内容(输入ID或商品名)
    response
        code  M  int  返回码 0表示成功,其他表示错误
        msg   M  str  错误信息
        data: [
            {
                p_type: 0,
                id:"C874500",
                name:"雪斗白菜",
                category_name_1: "蔬菜",
                category_name_2: "蔬菜",

            },
            ...
        ]

9. /station/print_tag/mes_set mes设置打印模板

    method
        POST
    request
        id          M  打印模板的id
        set_by_mes  M  1表示设置打印模板,0表示取消当前设置的打印模板
    response
        code  M  int  返回码 0表示成功,其他表示错误
        msg   M  str  错误信息
        data: