最近根据业务需求,做了一次主从表数据管理。一主一从数据管理,并满足业务数据隔离。
想想便将代码更新上。
一、语音配置(tb_voice_config)
1、主表表结构
CREATE TABLE `tb_voice_config` (
`ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '表主键',
`VO_CONF_CODE` varchar(30) DEFAULT NULL COMMENT '语音配置编号:业务绑定主键',
`VOICE_TYPE` int(11) DEFAULT NULL COMMENT '语音配置类型:1-货柜语音配置;2-机器人语音配置;',
`VOICE_SCENE` varchar(100) DEFAULT NULL COMMENT '语音配置场景',
`CUE_WORDS` varchar(500) DEFAULT NULL COMMENT '提示语Name',
`ON_OFF_FLAG` int(11) DEFAULT NULL COMMENT '开关标识:0-ON;1-OFF',
`CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间 yy-MM-dd HH:mm:ss',
`UPDATE_TIME` datetime DEFAULT NULL COMMENT '修改时间 yy-MM-dd HH:mm:ss',
`DEL_FLAG` int(11) NOT NULL COMMENT '删除标识',
`REMARK_STR1` varchar(100) DEFAULT NULL COMMENT '预留字段1',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='语音配置信息表';
2、初始化数据
-- 初始数据
INSERT INTO `tb_voice_config`
(`ID`, `VO_CONF_CODE`, `VOICE_TYPE`, `VOICE_SCENE`, `CUE_WORDS`, `ON_OFF_FLAG`, `CREATE_TIME`, `UPDATE_TIME`, `DEL_FLAG`, `REMARK_STR1`)
VALUES
(1, 'VCC20181206111041c7da1c24', 1, '扫码认证成功', '请开门', 0, NOW(), NOW(), 0, ''),
(2, 'VCC201812061110415fcebde6', 1, '刷脸认证成功', '请开门', 0, NOW(), NOW(), 0, ''),
(3, 'VCC20181206111041923c6375', 1, '用户开门成功', '苏小柜很高兴为您服务,拿完商品关门自动扣款哦', 0, NOW(), NOW(), 0, ''),
(4, 'VCC2018120611104154b48a84', 1, '管理员开门成功', '我都卖空了,你怎么才来,快点补货吧', 0, NOW(), NOW(), 0, ''),
(5, 'VCC20181206111041f96f08bd', 1, '开门超时', '哎呀,你的手速太慢啦', 0, NOW(), NOW(), 0, ''),
(6, 'VCC20181206111041d373e059', 1, '开门失败', '不好意思,苏小柜暂时不能为您服务,请您根据页面提示操作', 0, NOW(), NOW(), 0, ''),
(7, 'VCC20181206111041c535aace', 1, '商品/促销活动', '秋天来啦,喝个冰糖雪梨润润肺吧', 1, NOW(), NOW(), 0, ''),
(8, 'VCC2018120611104135ea67f0', 1, '商品&价格播报', '', 1, NOW(), NOW(), 0, ''),
(9, 'VCC201812061110412fe443bb', 1, '商品放错位置', '哎呀,放错了,请把商品放回正确位置,我都认不出是什么了', 0, NOW(), NOW(), 0, ''),
(10, 'VCC201812061110415de43b13', 1, '放入非货柜商品', '你放进来了什么鬼,吓死我了,快拿走', 0, NOW(), NOW(), 0, ''),
(11, 'VCC201812061110412c2cab36', 1, '支付成功(产生订单)', '已经成功收款,请慢走,欢迎下次光临', 0, NOW(), NOW(), 0, ''),
(12, 'VCC2018120611104145b0bef5', 1, '支付成功(未有订单)', '欢迎下次光临', 0, NOW(), NOW(), 0, ''),
(13, 'VCC20181206111041e0028c8c', 1, '支付失败', '哎呀,支付失败啦,请您务必按照页面提示付款奥', 0, NOW(), NOW(), 0, ''),
(14, 'VCC201812061110417715d74f', 1, '补货成功', '补货完成,开启销售模式', 0, NOW(), NOW(), 0, ''),
(15, 'VCC20181206111041f6dc3e45', 2, '巡游1', '我是售货机器人,零食饮料,有需要吗? ', 0, NOW(), NOW(), 0, ''),
(16, 'VCC20181206111041883d07df', 2, '巡游2', '我是售货机器人,天气凉了,来杯奶茶吧!', 0, NOW(), NOW(), 0, ''),
(17, 'VCC20181206111041030d701d', 2, '巡游迷路', 'Oh no,我好像迷路了!', 0, NOW(), NOW(), 0, ''),
(18, 'VCC201812061110410683cefa', 2, '到达呼叫点', '宝宝已经到啦!快来迎接我吧!', 0, NOW(), NOW(), 0, ''),
(19, 'VCC20181206111041a19990fb', 2, '到达指定地点,超时无操作', '客官再不来,宝宝会伤心的', 0, NOW(), NOW(), 0, ''),
(20, 'VCC20181206111041fe6e5202', 2, '躲避障碍物', '我正在执行任务,麻烦请让一让!', 0, NOW(), NOW(), 0, ''),
(21, 'VCC20181206111041753b780b', 2, '开门成功', '门已打开,开始选购吧!', 0, NOW(), NOW(), 0, ''),
(22, 'VCC20181206111041fa12072c', 2, '开门失败', '开门失败,请重新尝试!', 0, NOW(), NOW(), 0, ''),
(23, 'VCC20181206111041e6116448', 2, '开门超时', '选购商品后,请关门!', 0, NOW(), NOW(), 0, ''),
(24, 'VCC2018120611104180c2b660', 2, '支付成功(产生订单)', '购物完成,欢迎再次光临!', 0, NOW(), NOW(), 0, ''),
(25, 'VCC2018120611104184b4c843', 2, '支付成功(未有订单)', '欢迎再次光临!', 0, NOW(), NOW(), 0, ''),
(26, 'VCC201812061110414eb84708', 2, '商品放错位置', '哎呀,放错了,请将商品放到正确位置!', 0, NOW(), NOW(), 0, ''),
(27, 'VCC20181206111041f5ce4721', 2, '放入非货柜商品', '你放进来了什么鬼,吓死我了,快拿走', 0, NOW(), NOW(), 0, ''),
(28, 'VCC20181206111041fe95d516', 2, '支付失败', '支付失败,请重新扫描屏幕二维码支付!', 0, NOW(), NOW(), 0, ''),
(29, 'VCC20181206111041920e30f7', 2, '补货开门', '门已打开,开始补货吧!', 0, NOW(), NOW(), 0, ''),
(30, 'VCC20181206111041abd3197e', 2, '补货开门2', '补货完成后,请关门!', 0, NOW(), NOW(), 0, ''),
(31, 'VCC2018120611104123dcbbcc', 2, '补货完成', '补货成功!', 0, NOW(), NOW(), 0, '');
二、语音配置(tb_voice_config_subordinate)从表
1、表结构
-- 商户管理员语音配置信息表(从表)
CREATE TABLE `tb_voice_config_subordinate` (
`ID` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`VO_CONF_SUB_CODE` varchar(30) DEFAULT NULL COMMENT '该从表编号',
`VO_CONF_CODE` varchar(30) DEFAULT NULL COMMENT '语音配置编号:业务绑定主键',
`VOICE_TYPE` int(11) DEFAULT NULL COMMENT '语音配置类型:1-货柜语音配置;2-机器人语音配置;',
`VOICE_SCENE` varchar(100) DEFAULT NULL COMMENT '语音配置场景',
`CUE_WORDS` varchar(500) DEFAULT NULL COMMENT '提示语',
`ON_OFF_FLAG` int(11) DEFAULT NULL COMMENT '开关标识:0-ON;1-OFF',
`STORE_CODE` varchar(50) DEFAULT NULL COMMENT '商户编号',
`CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间 yy-MM-dd HH:mm:ss',
`UPDATE_TIME` datetime DEFAULT NULL COMMENT '修改时间 yy-MM-dd HH:mm:ss',
`DEL_FLAG` int(11) DEFAULT NULL COMMENT '删除标识 0-否,1-是',
`REMARK_STR1` varchar(100) DEFAULT NULL COMMENT '预留字段1',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='语音配置表(从表);语音配置信息表(商户管理员)';
2、初始化数据(核心)
a. 根据主表数据进行字段数据copy;
b. 自动生成MD5流水业务编号
-- 商户管理员语音配置信息表(从表) 根据现有数据初始化
INSERT INTO tb_voice_config_subordinate (
VO_CONF_SUB_CODE,
VO_CONF_CODE,
VOICE_TYPE,
VOICE_SCENE,
CUE_WORDS,
ON_OFF_FLAG,
CREATE_TIME,
UPDATE_TIME,
DEL_FLAG,
REMARK_STR1,
STORE_CODE
) SELECT
CONCAT(
'VCSC',
REPLACE (
DATE_FORMAT(now(), '%Y-%m-%d'),
'-',
''
),
REPLACE (
DATE_FORMAT(now(), '%T'),
':',
''
),
LEFT (MD5(RAND() * 10000), 8)
) AS VO_CONF_SUB_CODE,
t.VO_CONF_CODE,
t.VOICE_TYPE,
t.VOICE_SCENE,
t.CUE_WORDS,
t.ON_OFF_FLAG,
NOW(),
NOW(),
t.DEL_FLAG,
t.REMARK_STR1,
s.store_code
FROM
tb_voice_config t
JOIN tb_store s;