定制标签模板
数据库
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:
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: