diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/WxCUserDataController.java b/mallinkAdmin/src/main/java/com/iformall/controller/WxCUserDataController.java index e84bcb965..b32303ca1 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/WxCUserDataController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/WxCUserDataController.java @@ -144,7 +144,7 @@ public class WxCUserDataController extends BaseController { wxCUserBasicInfoDto.setTenantId(getTenantId()); wxCUserBasicInfoDto.setStartTime(null); wxCUserBasicInfoDto.setEndTime(null); - long importCount = wxCUserBasicInfoService.findCountByFilter(wxCUserBasicInfoDto); + long importCount = wxCUserBasicInfoService.findCount(wxCUserBasicInfoDto); map.put("importCount", importCount); map.put("allHistoryUserCount", growCount+importCount); diff --git a/mallinkAdmin/src/main/resources/db/migration/V201904222030__ADD_FLOW.sql b/mallinkAdmin/src/main/resources/db/migration/V201904222030__ADD_FLOW.sql deleted file mode 100644 index 5f4780b37..000000000 --- a/mallinkAdmin/src/main/resources/db/migration/V201904222030__ADD_FLOW.sql +++ /dev/null @@ -1,28 +0,0 @@ -DROP TABLE IF EXISTS `wx_topic` ; - -CREATE TABLE `wx_topic` ( - `id` bigint(64) NOT NULL COMMENT 'id', - `tenant_id` varchar(50) DEFAULT NULL COMMENT '租户id', - `name` varchar(300) NOT NULL DEFAULT '' COMMENT '名称', - `title` varchar(500) DEFAULT '0' COMMENT '标题', - `cover` varchar(300) DEFAULT '0' COMMENT '封面', - `advert` varchar(300) DEFAULT '0' COMMENT '广告图', - `begin_time` datetime DEFAULT NULL COMMENT '开始时间', - `end_time` datetime DEFAULT NULL COMMENT '结束时间', - `content` text COMMENT '内容', - `status` tinyint(1) DEFAULT '1' COMMENT '状态1生效2失效3作废', - `bg_color` varchar(300) DEFAULT NULL COMMENT '背景颜色', - `createtime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', - `updatetime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间', - PRIMARY KEY (`id`) -) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='专题表'; - - -INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`) -VALUES - ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1), - ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2), - ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3), - ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4), - ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5), - ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6); diff --git a/mallinkAdmin/src/main/resources/db/migration/V201904241010__ADD_MSG_MODEL.sql b/mallinkAdmin/src/main/resources/db/migration/V201904241010__ADD_MSG_MODEL.sql new file mode 100644 index 000000000..ab46886e2 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201904241010__ADD_MSG_MODEL.sql @@ -0,0 +1,17 @@ +insert into wx_msg_validationcode_model(id,tenant_id,type,name,signature,content,createtime,status,minutes,model_id) +values(79,'456','9','场景投放','富茂','亲爱的,悄悄得送您一张{title},请到{app}微信小程序中使用吧!',now(),1,0,null); +insert into wx_msg_validationcode_model(id,tenant_id,type,name,signature,content,createtime,status,minutes,model_id) +values(109,'1001','9','场景投放','长融世贸广场','亲爱的,悄悄得送您一张{title},请到{app}微信小程序中使用吧!',now(),1,0,null); +insert into wx_msg_validationcode_model(id,tenant_id,type,name,signature,content,createtime,status,minutes,model_id) +values(209,'1002','9','场景投放','同保楼 同福街','亲爱的,悄悄得送您一张{title},请到{app}微信小程序中使用吧!',now(),1,0,null); +insert into wx_msg_validationcode_model(id,tenant_id,type,name,signature,content,createtime,status,minutes,model_id) +values(309,'1003','9','场景投放','杭州东站西子国际','亲爱的,悄悄得送您一张{title},请到{app}微信小程序中使用吧!',now(),1,0,null); +insert into wx_msg_validationcode_model(id,tenant_id,type,name,signature,content,createtime,status,minutes,model_id) +values(409,'1004','9','场景投放','莱迪1086商业中心','亲爱的,悄悄得送您一张{title},请到{app}微信小程序中使用吧!',now(),1,0,null); +insert into wx_msg_validationcode_model(id,tenant_id,type,name,signature,content,createtime,status,minutes,model_id) +values(509,'1005','9','场景投放','永修铜锣湾广场','亲爱的,悄悄得送您一张{title},请到{app}微信小程序中使用吧!',now(),1,0,null); +insert into wx_msg_validationcode_model(id,tenant_id,type,name,signature,content,createtime,status,minutes,model_id) +values(609,'1006','9','场景投放','欧堡利亚海悦城','亲爱的,悄悄得送您一张{title},请到{app}微信小程序中使用吧!',now(),1,0,null); +insert into wx_msg_validationcode_model(id,tenant_id,type,name,signature,content,createtime,status,minutes,model_id) +values(709,'1007','9','场景投放','澳林广场','亲爱的,悄悄得送您一张{title},请到{app}微信小程序中使用吧!',now(),1,0,null); + diff --git a/mallinkAdmin/src/main/resources/db/migration/V201904241037__L_MSG_MODEL_DATA.sql b/mallinkAdmin/src/main/resources/db/migration/V201904241037__L_MSG_MODEL_DATA.sql new file mode 100644 index 000000000..69c4d60d4 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201904241037__L_MSG_MODEL_DATA.sql @@ -0,0 +1,77 @@ +INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5, 'http://202.165.179.86:8081/images/WechatIMG5130.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '789', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6, 'http://202.165.179.86:8081/images/WechatIMG5130.png'); + +INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1001', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1001/logo-new.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1001', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1001/logo-new.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1001', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1001/logo-new.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1001', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1001/logo-new.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1001', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1001/logo-new.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1001', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1001/logo-new.png'); + +INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1002', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1002/tongfulou-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1002', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1002/tongfulou-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1002', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1002/tongfulou-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1002', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1002/tongfulou-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1002', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1002/tongfulou-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1002', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1002/tongfulou-h.png'); + +INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1003', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1003/dongzhanxiziguoji-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1003', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1003/dongzhanxiziguoji-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1003', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1003/dongzhanxiziguoji-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1003', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1003/dongzhanxiziguoji-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1003', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1003/dongzhanxiziguoji-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1003', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1003/dongzhanxiziguoji-h.png'); + +INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1004', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1004/ld1086-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1004', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1004/ld1086-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1004', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1004/ld1086-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1004', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1004/ld1086-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1004', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1004/ld1086-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1004', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1004/ld1086-h.png'); + +INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1005', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1005/yxtlw-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1005', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1005/yxtlw-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1005', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1005/yxtlw-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1005', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1005/yxtlw-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1005', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1005/yxtlw-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1005', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1005/yxtlw-h.png'); + +INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1006', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1006/hyc-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1006', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1006/hyc-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1006', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1006/hyc-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1006', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1006/hyc-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1006', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1006/hyc-h.png'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1006', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1006/hyc-h.png'); + + +INSERT INTO `wx_msg_model` (`id`, `tenant_id`, `name`, `signature`, `content`, `createtime`, `status`, `model_id`, `email_bg_img`) +VALUES + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1007', '审批通过通知', '富茂', '富茂审批邮件
审批通过通知
编号{contract}的{bustype}已经审批通过,请登录{page}跟进后续工作
', '2018-09-29 16:03:11', 1, 1, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1007/njol-h.jpeg'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1007', '待缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待缴账单通知
\n
您当前的待缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 2, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1007/njol-h.jpeg'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1007', '审批通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n
\n
审批通知
\n
{userName}同意编号{contract}的{bustype}审批,已呈送{toUserName},请登录{page}查看审批进度
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 3, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1007/njol-h.jpeg'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1007', '欠缴账单通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
欠缴账单通知
\n
您当前的欠缴账单为{price}元,截止日期为{date}请登录您的商户端小程序查看账单并缴费
\n
\n
\n
\n 租金账单\n
\n
账单类型
\n
账单金额(元)
\n
缴费时间
\n
逾期天数
\n
\n {billList}\n
\n
\n
\n
遇到问题?
\n
\n 请联系商管负责人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 4, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1007/njol-h.jpeg'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1007', '待办通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
待办通知
\n
{name}提交了一个{bustype}待您审批,电脑登录{page}查看您的待办
\n
\n
\n
\n
申请时间:
\n
{applyTime}
\n
\n
\n
申请进度:
\n
\n \n {taskList}\n
\n
\n
\n
\n
遇到问题?
\n
\n 请联系申请人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 5, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1007/njol-h.jpeg'), + ((select unix_timestamp(now()) + CEILING(RAND()*90000+10000)), '1007', '驳回通知', '富茂', '\n\n\n\n \n \n \n \n \n \n 富茂审批邮件\n \n \n\n\n\n
\n
\n \n
\n \n
\n
审批通过通知
\n
编号{contract}的{bustype}审批被驳回,请登录{page}查看审批明细
\n
\n
\n
\n 驳回人:\n {name}\n
\n
\n 驳回原因:\n {remark}\n
\n
\n
\n
遇到问题?
\n
\n 请联系驳回人:\n {linkName}{linkPhone}\n
\n
\n
\n
\n\n\n', '2018-09-29 16:03:11', 1, 6, 'https://s3.cn-northwest-1.amazonaws.com.cn/iformall-net/1007/njol-h.jpeg'); + + + + + diff --git a/mallinkAdmin/src/main/resources/db/migration/V201904241043__L_WX_TOPIC.sql b/mallinkAdmin/src/main/resources/db/migration/V201904241043__L_WX_TOPIC.sql new file mode 100644 index 000000000..d724f4b53 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201904241043__L_WX_TOPIC.sql @@ -0,0 +1,18 @@ +DROP TABLE IF EXISTS `wx_topic` ; + +CREATE TABLE `wx_topic` ( + `id` bigint(64) NOT NULL COMMENT 'id', + `tenant_id` varchar(50) DEFAULT NULL COMMENT '租户id', + `name` varchar(300) NOT NULL DEFAULT '' COMMENT '名称', + `title` varchar(500) DEFAULT '0' COMMENT '标题', + `cover` varchar(300) DEFAULT '0' COMMENT '封面', + `advert` varchar(300) DEFAULT '0' COMMENT '广告图', + `begin_time` datetime DEFAULT NULL COMMENT '开始时间', + `end_time` datetime DEFAULT NULL COMMENT '结束时间', + `content` text COMMENT '内容', + `status` tinyint(1) DEFAULT '1' COMMENT '状态1生效2失效3作废', + `bg_color` varchar(300) DEFAULT NULL COMMENT '背景颜色', + `createtime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', + `updatetime` datetime DEFAULT CURRENT_TIMESTAMP COMMENT '更新时间', + PRIMARY KEY (`id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC COMMENT='专题表'; diff --git a/mallinkAdmin/src/main/resources/db/migration/V201904241243__L_SMS_MODEL.sql b/mallinkAdmin/src/main/resources/db/migration/V201904241243__L_SMS_MODEL.sql new file mode 100644 index 000000000..1f83e28bb --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201904241243__L_SMS_MODEL.sql @@ -0,0 +1,4 @@ +update wx_msg_validationcode_model set content='{userName}提交了一个{bustype}待您审批,电脑登陆{page} 查看您的待办。' where name = '代办通知'; +update wx_msg_validationcode_model set content='{userName}同意编号{contract}的{bustype}审批,已呈送至{toUserName},登录{page}查看审批进度。' where name = '审批通知'; +update wx_msg_validationcode_model set content='编号{contract}的{bustype}已通过审批,请登录{page} 跟进后续工作。' where name = '通过审批通知'; +update wx_msg_validationcode_model set content='编号{contract}的{bustype}审批被驳回,请登录{page} 查看审批明细。' where name = '驳回通知'; \ No newline at end of file diff --git a/mallinkAdmin/src/main/resources/db/migration/V201904241615__UPDATE_CONTRACT.sql b/mallinkAdmin/src/main/resources/db/migration/V201904241615__UPDATE_CONTRACT.sql new file mode 100644 index 000000000..3cfe2bb71 --- /dev/null +++ b/mallinkAdmin/src/main/resources/db/migration/V201904241615__UPDATE_CONTRACT.sql @@ -0,0 +1,96 @@ +DELIMITER $$ +DROP PROCEDURE IF EXISTS `contract_update`$$ +CREATE PROCEDURE `contract_update`() +LANGUAGE SQL +NOT DETERMINISTIC +CONTAINS SQL +SQL SECURITY DEFINER +COMMENT '' +begin + #定义一个循环结束的标记 + declare done int default false; + #定义一个循环总条数 + declare total int; + #定义一个循环开始值 + declare i int; + #定义商铺相关字段 + declare _shop_id varchar(100); + declare _shop_number varchar(100); + declare _build_area varchar(100); + declare _operation_area varchar(100); + declare _floor varchar(100); + declare _img_url varchar(1024); + declare _addr varchar(100); + declare _type smallint(2); + declare _status smallint(2); + declare _manager varchar(100); + declare _manager_phone varchar(100); + declare _building varchar(100); + #租赁合同相关信息 + declare _rent_id bigint(64); + declare _rent_area varchar(100); + declare _adjust_ratio json; + declare _price decimal(10,2); + declare _deposit decimal(10,2); + + declare _adjust_ratio_new json; + declare _adjust_ratio_value decimal(10,2); + + + declare rent_cursor cursor for select id,shop_id from wx_rent_contract where rent_shop_type=1; + declare rent_total_cursor cursor for select count(*) total from wx_rent_contract where rent_shop_type=1; + declare continue handler for not found set done = true; + + set i=1; + open rent_cursor; + open rent_total_cursor; + fetch rent_cursor into _rent_id,_shop_id; + fetch rent_total_cursor into total; + repeat + if not done then + #查询商铺信息 + select s.shop_number,s.build_area,s.img_url,s.operation_area,s.status,b.building_name,f.floor_name, + s.manager,s.manager_phone,type,s.addr + into _shop_number,_build_area,_img_url,_operation_area,_status,_building,_floor,_manager,_manager_phone,_type,_addr + from wx_shop s left join wx_mall_building b on s.building=b.id left join wx_mall_floor f on s.floor=f.id + where s.id=_shop_id; + #查询合同信息 + select rent_area,adjust_ratio,truncate(price/100,2),truncate(deposit/100,2) into _rent_area,_adjust_ratio,_price,_deposit + from wx_rent_contract where id=_rent_id; + #解析年调整比例 + set @j=0; + set _adjust_ratio_new = json_array(); + while (select json_length(_adjust_ratio))>0 and @j<>(select json_length(_adjust_ratio)) do + set @ratio_index=concat("$[",@j,"]"); + select truncate(json_extract(_adjust_ratio,@ratio_index)/100,2) into _adjust_ratio_value; + select json_array_insert(_adjust_ratio_new,@ratio_index,_adjust_ratio_value) into _adjust_ratio_new; + set @j=@j+1; + end while; + #更新租赁合同信息 + update wx_rent_contract set rent_info=json_array(JSON_OBJECT('shopId',_shop_id,'id',_shop_id,'shopNumber',_shop_number, + 'price',_price,'deposit',_deposit,'adjustRatio',_adjust_ratio_new,'addr',_addr,'buildArea',_build_area,'imgUrl',_img_url, + 'operationArea',_operation_area,'building',_building,'floor',_floor,'manager',_manager,'managerPhone',_manager_phone, + 'type',_type,'status',_status,'rentArea',_rent_area)) + where id=_rent_id; + #更新物业信息 + update wx_property_contract set rent_info=json_array(JSON_OBJECT('shopId',_shop_id,'id',_shop_id,'shopNumber',_shop_number, + 'price',_price,'deposit',_deposit,'adjustRatio',_adjust_ratio_new,'addr',_addr,'buildArea',_build_area,'imgUrl',_img_url, + 'operationArea',_operation_area,'building',_building,'floor',_floor,'manager',_manager,'managerPhone',_manager_phone, + 'type',_type,'status',_status,'rentArea',_rent_area)) + where rent_contract_id=_rent_id; + fetch rent_cursor into _rent_id,_shop_id; + end if; + IF i<>total then + set done =false; + set i=i+1; + else + set done = true; + end if; + until done + end repeat; + close rent_cursor; + close rent_total_cursor; + +end $$ +DELIMITER ; +### call contract_update(); diff --git a/mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java b/mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java index 051df941e..4e9484d92 100644 --- a/mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java +++ b/mallinkBApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java @@ -10,6 +10,8 @@ import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.WxMerchantBUser; import com.iformall.domain.vo.WxCreditHistoryVo; import com.iformall.domain.vo.WxMerchantVo; +import com.iformall.enums.EnumMerchantStatus; +import com.iformall.enums.EnumMerchantType; import com.iformall.enums.EnumUserType; import com.iformall.enums.EnumYesOrNo; import com.iformall.exception.MallinkException; @@ -78,7 +80,16 @@ public class WxCreditHistoryController extends BaseController { log.debug("[" + getIpAddr() + "] WxCreditHistoryController::add"); wxCreditHistory.setTenantId(getTenantId()); wxCreditHistory.setOperatorId(getUser().getId()); - wxCreditHistory.setMerchantId(getUser().getMerchantId()); + WxMerchant wxMerchant = new WxMerchant(); + wxMerchant.setId(getUser().getMerchantId()); + wxMerchant.setStatus(EnumMerchantStatus.VALID.getCode()); + WxMerchant merchant = wxMerchantService.findOne(wxMerchant); + //如果为商管商户 则消费商户按前端传入的进行记录 + if (merchant != null && merchant.getIsAdmin() != null && merchant.getIsAdmin() == 1) { + wxCreditHistory.setMerchantId(wxCreditHistory.getMerchantId()); + }else { + wxCreditHistory.setMerchantId(getUser().getMerchantId()); + } //B端操作用户 wxCreditHistory.setOperatorType(EnumUserType.BUSER.getCode()); try { diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java index cc7b63207..2fc49f991 100644 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxCreditHistoryController.java @@ -48,7 +48,8 @@ public class WxCreditHistoryController extends BaseController{ log.debug("[" + getIpAddr() + "] WxCreditHistoryController::list"); if (null == wxCreditHistory) wxCreditHistory = new WxCreditHistory(); wxCreditHistory.setCUserId(getUserId()); - final PageInfo page = wxCreditHistoryService.listAsPageMore(wxCreditHistory, pageNum, pageSize); + wxCreditHistory.setSortColumns(WxCreditHistory.Field.Id_DESC); + final PageInfo page = wxCreditHistoryService.listAsPage(wxCreditHistory, pageNum, pageSize); return new ResultData(page); } } diff --git a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java index 8f8a08cb9..2ef8bb29d 100755 --- a/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java +++ b/mallinkCApi/src/main/java/com/iformall/controller/WxUserGrantController.java @@ -729,6 +729,7 @@ public class WxUserGrantController extends BaseController { wxCreditHistory.setOperatorType(EnumUserType.CUSER.getCode()); wxCreditHistory.setOperatorId(wxCUser.getId()); WxCreditHistory record = wxCreditHistoryService.saveOrUpdate(wxCreditHistory); + wxCUser.setCredit(record.getCreditAmount()); return record; } diff --git a/mallinkCApi/src/main/resources/application-dev.yml b/mallinkCApi/src/main/resources/application-dev.yml index 4f332d6fb..cd3beab85 100644 --- a/mallinkCApi/src/main/resources/application-dev.yml +++ b/mallinkCApi/src/main/resources/application-dev.yml @@ -84,7 +84,7 @@ jasypt: password: oRqdnDbK5pj3eMmB fm: - exception: true + exception: false exception_emails: hupeng@iformall.com,wuguoqiang@iformall.com,gongbiao@iformall.com,luozukai@iformall.com,hanxueda@iformall.com deploy: 1 open: true diff --git a/mallinkService/src/main/java/com/iformall/common/SortColumn.java b/mallinkService/src/main/java/com/iformall/common/SortColumn.java new file mode 100644 index 000000000..fd680ac83 --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/common/SortColumn.java @@ -0,0 +1,16 @@ +package com.iformall.common; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +/** + * @author luozukai + * 排序注解 + */ +@Target(ElementType.FIELD) +@Retention(RetentionPolicy.RUNTIME) +public @interface SortColumn { + String column(); +} \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/domain/po/BaseEntity.java b/mallinkService/src/main/java/com/iformall/domain/po/BaseEntity.java new file mode 100644 index 000000000..b822f979a --- /dev/null +++ b/mallinkService/src/main/java/com/iformall/domain/po/BaseEntity.java @@ -0,0 +1,78 @@ +package com.iformall.domain.po; + +import com.iformall.common.SortColumn; +import org.apache.commons.lang3.StringUtils; +import javax.persistence.Transient; +import java.io.Serializable; +import java.lang.reflect.Field; + +/** + * @author luozukai + * @date 2019/4/24 14:32 + */ +public class BaseEntity implements Serializable { + private static final long serialVersionUID = 1L; + @Transient + private String sortColumn; + @Transient + private String sortOrder; + + public String getSortColumn() { + try { + //扫描子类SortColumn注解的属性,替换sortColumn + if(StringUtils.isNotBlank(sortColumn)) { + Field[] fields = this.getClass().getDeclaredFields(); + + for (Field field : fields) { + SortColumn sortColumnField = field.getAnnotation(SortColumn.class); + if (sortColumnField != null && field.getName().equals(sortColumn)) { + sortColumn = sortColumnField.column(); + return sortColumn; + } + } + + //默认驼峰解析 + this.setSortColumn(underscoreName(sortColumn)); + } + } catch (Exception e) { + e.printStackTrace(); + } + + return sortColumn; + } + + /** + * 转换为下划线 + * + * @param camelCaseName + * @return + */ + public static String underscoreName(String camelCaseName) { + StringBuilder result = new StringBuilder(); + if (camelCaseName != null && camelCaseName.length() > 0) { + result.append(camelCaseName.substring(0, 1).toLowerCase()); + for (int i = 1; i < camelCaseName.length(); i++) { + char ch = camelCaseName.charAt(i); + if (Character.isUpperCase(ch)) { + result.append("_"); + result.append(Character.toLowerCase(ch)); + } else { + result.append(ch); + } + } + } + return result.toString(); + } + + public void setSortColumn(String sortColumn) { + this.sortColumn = sortColumn; + } + + public String getSortOrder() { + return sortOrder; + } + + public void setSortOrder(String sortOrder) { + this.sortOrder = sortOrder; + } +} diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxGame.java b/mallinkService/src/main/java/com/iformall/domain/po/WxGame.java index 2deb77beb..a1a71fce7 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxGame.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxGame.java @@ -262,7 +262,7 @@ public class WxGame implements Serializable { public String getWeappScene() { if(id == null) return ""; - return "t:gm"+id; + return "t:gm:"+id; } public void setGameTemplate(WxGameTemplate gameTemplate) { diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java index c7d1f0a95..2fb1ad1d6 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxMerchant.java @@ -10,9 +10,7 @@ import java.util.List; import java.util.Map; @Table(name = "wx_merchant") -public class WxMerchant implements Serializable { - private static final long serialVersionUID = 1L; - +public class WxMerchant extends BaseEntity { @Id protected Long id; diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxShop.java b/mallinkService/src/main/java/com/iformall/domain/po/WxShop.java index 0ea75c3b8..ed6fe823f 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxShop.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxShop.java @@ -1,6 +1,7 @@ package com.iformall.domain.po; import cn.afterturn.easypoi.excel.annotation.Excel; +import com.iformall.common.SortColumn; import javax.persistence.Id; import javax.persistence.Table; @@ -11,9 +12,7 @@ import java.util.Date; import java.util.List; @Table(name = "wx_shop") -public class WxShop implements Serializable { - private static final long serialVersionUID = 1L; - +public class WxShop extends BaseEntity { @Id protected Long id; @@ -58,6 +57,7 @@ public class WxShop implements Serializable { @io.swagger.annotations.ApiModelProperty(value = "点位类型", name = "pointType") @Excel(name="类型",width = 20,orderNum = "1", replace = {"商铺_null", "固定点位_1", "临时促销点位_2", "宣传点位_3","ATM点位_4","仓库点位_5","其他点位_6"}) + @SortColumn(column="point_type") private Integer pointType; /*商铺编号**/ @io.swagger.annotations.ApiModelProperty(value="商铺编号",name="shopNumber") diff --git a/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java b/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java index 06150bb75..a8c3a7e47 100644 --- a/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java +++ b/mallinkService/src/main/java/com/iformall/enums/EnumTemplateType.java @@ -11,6 +11,7 @@ public enum EnumTemplateType { VERIFY_FAIL(2, "核销失败消息"), // 小程序 AUDIT_MESSAGE(101, "公众号审核结果通知"), // 公众号 VERIFY_RESULT(102, "公众号卡券核销通知"), // 公众号 + GIFT_MESSAGE(103, "公众号购票成功通知"), // 公众号 ; public static EnumTemplateType getEnum(Integer code) { diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxOrderGroupMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxOrderGroupMapper.java index 6768f7cc8..e63aa52ea 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxOrderGroupMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxOrderGroupMapper.java @@ -36,5 +36,9 @@ public interface WxOrderGroupMapper extends CommonMapper { long queryOrderGroupVerifyCount(Map params); List queryOrderGroupCountHistory(WxCoupon wxCoupon); + + long queryOrderGroupSuccessPeopleCount(Map params); + + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java index 0a7fe98d4..91ef3ce18 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/MarkingDataReportServiceImpl.java @@ -309,7 +309,7 @@ public class MarkingDataReportServiceImpl implements MarkingDataReportService { list = wxCouponActionLogMapper.sceneDataList(params); }else { PageHelper.clearPage(); - list = new ArrayList(); + list = new ArrayList<>(); } @@ -432,7 +432,7 @@ public class MarkingDataReportServiceImpl implements MarkingDataReportService { if (StringUtils.isNotBlank(endDate)) params.put("endTime", endDate); - List days = DateUtils.getTjTimeList(startDate,endDate,"0"); + List days = DateUtils.getTjTimeList(startDate.substring(0,10),endDate.substring(0,10),"0"); TreeMap historyMap = new TreeMap<>(); //停车发券 diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java index baf8a41d5..7a779e55d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxChartServiceImpl.java @@ -1965,11 +1965,24 @@ public class WxChartServiceImpl implements WxChartDataService { result.put("pressPaymentHistory",pressPaymentHistoryMap); wxCoupon.setTenantId(tenantId); + + result.put("pressSendHistoryTotal",getTotal(pressSendHistoryMap)); + result.put("pressSuccHistoryCount",getTotal(pressSuccHistoryMap)); + result.put("pressPaymentHistoryCount",getTotal(pressPaymentHistoryMap)); + result.put("pressSuccRate",wxCouponService.pressSuccRate(wxCoupon)); result.put("sumJoin",wxCouponService.sumJoin(wxCoupon)); return new ResultData(result); } + public int getTotal(Map map){ + int tatal = 0; + for (String key:map.keySet()) { + tatal += Integer.parseInt(map.get(key)); + } + return tatal; + } + private Date getMonthFirstDay() { Calendar c = Calendar.getInstance(); c.add(Calendar.MONTH, 0); @@ -2017,6 +2030,8 @@ public class WxChartServiceImpl implements WxChartDataService { long groupCount = wxOrderGroupMapper.queryOrderGroupCount(params); long peopleCount = wxOrderGroupMapper.queryOrderGroupPeopleCount(params); long verifyCount = wxOrderGroupMapper.queryOrderGroupVerifyCount(params); + long successPeopleCount = wxOrderGroupMapper.queryOrderGroupSuccessPeopleCount(params); + double transferRatio = 0; if (groupCount > 0) { @@ -2047,7 +2062,7 @@ public class WxChartServiceImpl implements WxChartDataService { result.put("peopleCount", peopleCount); result.put("transferRatio", transferRatio); result.put("verifyCount", verifyCount); - + result.put("successPeopleCount", successPeopleCount); return new ResultData(result); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java index 4f0dad893..ad340faab 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponOrderServiceImpl.java @@ -546,7 +546,7 @@ public class WxCouponOrderServiceImpl implements WxCouponOrderService { String notes = ""; if (couponOrder.getCouponOrderStatus() == EnumCouponOrderStatus.COUPON_ORDER_USED.getCode()) { if (hadSentCoupon) { - gotopage = "pages/couponorder/index/index"; + gotopage = "pages/index/index?type=mc"; notes = "您有新的券"; } bUsed = true; diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java index fd73e7917..e26439fdb 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxCouponSendServiceImpl.java @@ -1,10 +1,15 @@ package com.iformall.service.impl; +import cn.binarywang.wx.miniapp.bean.WxMaTemplateData; import com.alibaba.fastjson.JSONObject; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.google.common.collect.Lists; +import com.iformall.common.ErrorCode; import com.iformall.common.IdWorker; import com.iformall.domain.po.*; +import com.iformall.domain.po.msg.AppUniformMsg; +import com.iformall.domain.po.msg.MpAppMsg; import com.iformall.domain.po.msg.WxMsgRecord; import com.iformall.domain.vo.WxCouponSendVo; import com.iformall.enums.*; @@ -13,6 +18,8 @@ import com.iformall.mapper.*; import com.iformall.mq.MqBaseProducer; import com.iformall.service.*; import com.iformall.utils.DateUtils; +import me.chanjar.weixin.mp.bean.template.WxMpTemplateData; +import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -20,6 +27,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Propagation; import org.springframework.transaction.annotation.Transactional; +import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util.List; @@ -53,6 +61,8 @@ public class WxCouponSendServiceImpl implements WxCouponSendService { WxCUserMapper wxCUserMapper; @Autowired WxAppinfoService wxAppinfoService; + @Autowired + WxAuthorizerInfoMapper authorizerInfoMapper; @Override public PageInfo listAsPage(WxCouponSend record, Integer pageIndex, Integer pageSize) { @@ -230,39 +240,128 @@ public class WxCouponSendServiceImpl implements WxCouponSendService { } catch (Exception e) { logger.error(e.getMessage()); } - // 发送短信 - if (send.getSendSms().equals(EnumCouponSendSms.YES.getCode())) { - logger.info("》》》》》》》》》》》"); - logger.info("场景投放发送短信开始"); - logger.info("》》》》》》》》》》》"); - //券名 - String title = send.getTitle(); - //找出用户手机号 - WxCUser user = wxCUserMapper.selectByPrimaryKey(cUserId); - String phone = user.getPhone(); - //小程序名称 - WxAppinfo appInfo = wxAppinfoService.getCAppInfo(tenantId); - String appName = appInfo.getName(); - Map msgReplaceMap = new HashMap(); - msgReplaceMap.put("title", title); - msgReplaceMap.put("app", appName); - - WxMsgRecord wxMsgRecord = new WxMsgRecord(); - wxMsgRecord.setMsgType(EnumMsgRecordType.SMS.getCode()); - wxMsgRecord.setModelType(EnumMsgModel.COUPON_SEND.getCode()); - wxMsgRecord.setReceiver(phone); - wxMsgRecord.setTenantId(tenantId); - wxMsgRecord.setDynamicContentMap(msgReplaceMap); - mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); - logger.info("》》》》》》》》》》》"); - logger.info("场景投放发送短信结束"); - logger.info("》》》》》》》》》》》"); + + // 查找cUser + WxCUser user = wxCUserMapper.selectByPrimaryKey(cUserId); + if(user == null) { + continue; + } + + // 发送消息 + if(couponOrder != null) { + sendMsgForSendCoupon(tenantId, send, couponOrder, user); } } return bRet; } + private void sendMsgForSendCoupon(String tenantId, WxCouponSend send, WxCouponOrder couponOrder, WxCUser user) { + // 发送 公众号 模板消息 + SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS"); + String gotopage = "pages/index/index?type=mc"; + // 7. 公众号消息 + if(StringUtils.isNotBlank(user.getMpAppId()) && + StringUtils.isNotBlank(user.getMpOpenId()) && + user.getMpSubscribe().equals(EnumUserIsSubscribe.YES.getCode())) { + // 已关注公众号 + /** + * 购票成功通知 + * {first.DATA}} + * 订单号:{{keyword1.DATA}} + * 兑换券:{{keyword2.DATA}} + * 订单详情:{{keyword3.DATA}} + * 有效期至:{{keyword4.DATA}} + * 购买数量:{{keyword5.DATA}} + * {{remark.DATA}} + */ + MpAppMsg mpAppMsg = new MpAppMsg(); + mpAppMsg.setMsgType(EnumMsgRecordType.PUBLIC.getCode()); + mpAppMsg.setAppId(user.getMpAppId()); + mpAppMsg.setTo(user.getMpOpenId()); + mpAppMsg.setMiniAppId(user.getAppId()); + mpAppMsg.setMiniPagePath(gotopage); + mpAppMsg.setTenantId(couponOrder.getTenantId()); + mpAppMsg.setTemplateType(EnumTemplateType.GIFT_MESSAGE.getCode()); + mpAppMsg.setTemplateDataList(Lists.newArrayList( + new WxMpTemplateData("first", "您有新的惊喜,请点详情查看", "#173177"), + new WxMpTemplateData("keyword1", String.valueOf(couponOrder.getOrderId()), "#173177"), + new WxMpTemplateData("keyword2", couponOrder.getId().toString(), "#173177"), + new WxMpTemplateData("keyword3", send.getTitle(), "#173177"), + new WxMpTemplateData("keyword4", dateFormat.format(couponOrder.getExpiredTime()), "#173177"), + new WxMpTemplateData("keyword5", "1", "#173177"), + new WxMpTemplateData("remark", "更多惊喜等您来!", "#173177") + )); + + try { + mqBaseProducer.sendMessage(mpAppMsg, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(),EnumMsgMqKey.DEFAULT.getCode()); + } catch (Exception e) { + logger.error("购票成功-公众号-模板消息发送失败: " + e.getMessage()); + throw new MallinkException(ErrorCode.MP_TEMPLATE_SEND_FAILED); + } + } else { + // 可能未关注公众号, 用户可能收不到 + // 8. 微信小程序-统一消息 + // 获取小程序关联的服务号 + WxAuthorizerInfo authQ = new WxAuthorizerInfo(); + authQ.setAuthorizerAppid(user.getAppId()); + authQ.setTenantId(user.getTenantId()); + WxAuthorizerInfo weappInfo = authorizerInfoMapper.findMp(authQ); + if(weappInfo != null) { + AppUniformMsg appUniformMsg = new AppUniformMsg(); + appUniformMsg.setMsgType(EnumMsgRecordType.SMART_APP_UNIFORM.getCode()); + appUniformMsg.setAppId(user.getAppId()); + appUniformMsg.setTo(user.getOpenId()); + appUniformMsg.setTemplateType(EnumTemplateType.GIFT_MESSAGE.getCode()); + appUniformMsg.setPagePath(gotopage); + appUniformMsg.setUrl("http://iformall.com"); + appUniformMsg.setMpAppId(weappInfo.getAuthorizerAppid()); + appUniformMsg.setTemplateDataList(Lists.newArrayList( + new WxMaTemplateData("first", "您有新的惊喜,请点详情查看", "#173177"), + new WxMaTemplateData("keyword1", String.valueOf(couponOrder.getOrderId()), "#173177"), + new WxMaTemplateData("keyword2", couponOrder.getId().toString(), "#173177"), + new WxMaTemplateData("keyword3", send.getTitle(), "#173177"), + new WxMaTemplateData("keyword4", dateFormat.format(couponOrder.getExpiredTime()), "#173177"), + new WxMaTemplateData("keyword5", "1", "#173177"), + new WxMaTemplateData("remark", "更多惊喜等您来!", "#173177") + )); + try { + mqBaseProducer.sendMessage(appUniformMsg, EnumMsgMqTopic.DEFAULT.getCode(),EnumMsgMqTag.DEFAULT.getCode(),EnumMsgMqKey.DEFAULT.getCode()); + } catch (Exception e) { + logger.error("核销-公众号-模板消息发送失败: " + e.getMessage()); + throw new MallinkException(ErrorCode.UNIFORM_SEND_FAILED); + } + } + } + // 发送短信 + if (send.getSendSms().equals(EnumCouponSendSms.YES.getCode())) { + logger.info("》》》》》》》》》》》"); + logger.info("场景投放发送短信开始"); + logger.info("》》》》》》》》》》》"); + //券名 + String title = send.getTitle(); + //找出用户手机号 + String phone = user.getPhone(); + //小程序名称 + WxAppinfo appInfo = wxAppinfoService.getCAppInfo(tenantId); + String appName = appInfo.getName(); + Map msgReplaceMap = new HashMap(); + msgReplaceMap.put("title", title); + msgReplaceMap.put("app", appName); + + WxMsgRecord wxMsgRecord = new WxMsgRecord(); + wxMsgRecord.setMsgType(EnumMsgRecordType.SMS.getCode()); + wxMsgRecord.setModelType(EnumMsgModel.COUPON_SEND.getCode()); + wxMsgRecord.setReceiver(phone); + wxMsgRecord.setTenantId(tenantId); + wxMsgRecord.setDynamicContentMap(msgReplaceMap); + mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(), EnumMsgMqTag.DEFAULT.getCode(), EnumMsgMqKey.DEFAULT.getCode()); + logger.info("》》》》》》》》》》》"); + logger.info("场景投放发送短信结束"); + logger.info("》》》》》》》》》》》"); + } + } + @Override public void updateStatusByCouponId(Long couponId, String tenantId, int status) { WxCouponSend wxCouponSend = new WxCouponSend(); diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java index 5bb7076c0..656188983 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java @@ -411,6 +411,12 @@ public class WxFlowServiceImpl implements WxFlowService { wxMsgRecord.setModelType(EnumMsgModel.FLOW_ASSIGNEE_NODIFY.getCode()); wxMsgRecord.setReceiver(phone); wxMsgRecord.setTenantId(tenantId); + if(1 == flowType.intValue() || 3 == flowType.intValue()){ + dynamicContentMap.put("bustype","合同"); + }else if(2 == flowType.intValue()){ + dynamicContentMap.put("bustype","账单"); + dynamicContentMap.put("contract", businessId.toString()); + } wxMsgRecord.setDynamicContentMap(dynamicContentMap); mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(),EnumMsgMqTag.DEFAULT.getCode(),EnumMsgMqKey.DEFAULT.getCode()); @@ -731,6 +737,12 @@ public class WxFlowServiceImpl implements WxFlowService { wxMsgRecord.setModelType(EnumMsgModel.FLOW_APPLY_NODIFY.getCode()); wxMsgRecord.setReceiver(userMap!=null?(String)userMap.get("phone"):""); wxMsgRecord.setTenantId(tenantId); + if(1 == flowType.intValue() || 3 == flowType.intValue()){ + msgReplaceMap.put("bustype","合同"); + }else if(2 == flowType.intValue()){ + msgReplaceMap.put("bustype","账单"); + msgReplaceMap.put("contract", businessId.toString()); + } wxMsgRecord.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(),EnumMsgMqTag.DEFAULT.getCode(),EnumMsgMqKey.DEFAULT.getCode()); @@ -770,6 +782,12 @@ public class WxFlowServiceImpl implements WxFlowService { wxMsgRecord.setModelType(EnumMsgModel.FLOW_PASS_NODIFY.getCode()); wxMsgRecord.setReceiver(userMap!=null?(String)userMap.get("phone"):""); wxMsgRecord.setTenantId(tenantId); + if(1 == flowType.intValue() || 3 == flowType.intValue()){ + msgReplaceMap.put("bustype","合同"); + }else if(2 == flowType.intValue()){ + msgReplaceMap.put("bustype","账单"); + msgReplaceMap.put("contract", businessId.toString()); + } wxMsgRecord.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(),EnumMsgMqTag.DEFAULT.getCode(),EnumMsgMqKey.DEFAULT.getCode()); @@ -876,6 +894,12 @@ public class WxFlowServiceImpl implements WxFlowService { wxMsgRecord.setModelType(EnumMsgModel.FLOW_REJECT_NODIFY.getCode()); wxMsgRecord.setReceiver(userMap!=null?(String)userMap.get("phone"):""); wxMsgRecord.setTenantId(tenantId); + if(1 == flowType.intValue() || 3 == flowType.intValue()){ + msgReplaceMap.put("bustype","合同"); + }else if(2 == flowType.intValue()){ + msgReplaceMap.put("bustype","账单"); + msgReplaceMap.put("contract", businessId.toString()); + } wxMsgRecord.setDynamicContentMap(msgReplaceMap); mqBaseProducer.sendMessage(wxMsgRecord, EnumMsgMqTopic.DEFAULT.getCode(),EnumMsgMqTag.DEFAULT.getCode(),EnumMsgMqKey.DEFAULT.getCode()); diff --git a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendCallBackSmsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendCallBackSmsServiceImpl.java index fa8776c97..6a6dd5bd8 100644 --- a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendCallBackSmsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendCallBackSmsServiceImpl.java @@ -63,7 +63,7 @@ public class SendCallBackSmsServiceImpl implements MsgSendService { if (wxMsgConfig.getRemains() < record.getExpectSendNumber()) { throw new MallinkException(ErrorCode.MSG_SUM_INSUFFICENT); } - if(wxMsgConfig.getTotal() <=0l){ + if(wxMsgConfig.getRemains() <=0l){ throw new MallinkException(ErrorCode.MSG_CONFIG_ACCOUNT); } } diff --git a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendEmailServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendEmailServiceImpl.java index 637565438..fb4b5914a 100644 --- a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendEmailServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendEmailServiceImpl.java @@ -54,11 +54,9 @@ public class SendEmailServiceImpl implements MsgSendService { for (Map.Entry entry : mailMsg.getDynamicContentMap().entrySet()) { msg = msg.replace("{"+entry.getKey()+"}", entry.getValue()); } - logger.info("wxMsgModel.getEmailBgImg():"+wxMsgModel.getEmailBgImg()); if(StringUtils.isNotBlank(wxMsgModel.getEmailBgImg())){ msg = msg.replace("{bg}", wxMsgModel.getEmailBgImg()); } - logger.info("msg:"+msg); mailMsg.setMsg(msg); } diff --git a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java index e0460d9bc..aeedeba93 100644 --- a/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/msg/impl/SendSmsServiceImpl.java @@ -55,7 +55,7 @@ public class SendSmsServiceImpl implements MsgSendService { throw new MallinkException(ErrorCode.MSG_CONFIG_NOT_FOUND); } wxMsgConfig = wxMsgConfigs.get(0); - if(wxMsgConfig.getTotal() <=0l){ + if(wxMsgConfig.getRemains() <=0l){ throw new MallinkException(ErrorCode.MSG_CONFIG_ACCOUNT); } diff --git a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml index df41d5433..0a400ba40 100644 --- a/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCUserBasicInfoMapper.xml @@ -227,6 +227,9 @@ and tenant_id =#{tenantId} + + and create_date like '%00:00:00' + @@ -321,7 +324,7 @@ order by ${sortColumns} - select from wx_c_user_basic_info cu @@ -329,7 +332,7 @@ - select count(*) from wx_c_user_basic_info cu @@ -367,9 +370,6 @@ and cu.phone in (${phones}) - - and create_date like '%00:00:00' - and cu.poins >= #{levelStartScore} diff --git a/mallinkService/src/main/resources/mapper/WxCardSpendMapper.xml b/mallinkService/src/main/resources/mapper/WxCardSpendMapper.xml index b81a472c0..16ee7258a 100644 --- a/mallinkService/src/main/resources/mapper/WxCardSpendMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCardSpendMapper.xml @@ -114,6 +114,12 @@ + + @@ -227,12 +233,6 @@ - - diff --git a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml index eb31155b5..6195bc564 100644 --- a/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxMerchantMapper.xml @@ -128,10 +128,8 @@ select FROM wx_merchant m - left join wx_merchant_shop ms on ms.merchant_id = m.id left join wx_brand b on b.id = m.brand left join wx_business bu on b.id = m.business_id - where ms.is_del = 0 and m.`tenant_id` = #{tenantId} @@ -177,10 +175,9 @@ select FROM wx_merchant m - left join wx_merchant_shop ms on ms.merchant_id = m.id left join wx_brand b on b.id = m.brand left join wx_business bu on b.id = m.business_id - where ms.is_del = 0 + where 1=1 and m.`name` like concat('%', #{merchantName},'%') diff --git a/mallinkService/src/main/resources/mapper/WxOrderGroupMapper.xml b/mallinkService/src/main/resources/mapper/WxOrderGroupMapper.xml index b8eee9103..6f4dadb2b 100644 --- a/mallinkService/src/main/resources/mapper/WxOrderGroupMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxOrderGroupMapper.xml @@ -213,6 +213,16 @@ and coupon_id=#{couponId} + + diff --git a/mallinkService/src/main/resources/mapper/WxShopMapper.xml b/mallinkService/src/main/resources/mapper/WxShopMapper.xml index 55509cb75..d21978d49 100644 --- a/mallinkService/src/main/resources/mapper/WxShopMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxShopMapper.xml @@ -149,7 +149,6 @@