六月打包需求一设计文档

1、体检卡预约时,如果有余额,需要突出提示客户

2、CRM短信模版预览取值优化

3、CRM可编辑体检时间

体检卡预约时,如果有余额,需要突出提示客户


前端新增提示

CRM短信模版预览取值优化—设计

新增数据库表tb_sms_param

该表用来保存不同类型的短信能够配置的参数信息

  1. SET FOREIGN_KEY_CHECKS=0;
  2. DROP TABLE IF EXISTS `tb_sms_param`;
  3. CREATE TABLE `tb_sms_param` (
  4. `id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主键id',
  5. `sms_code` varchar(100) NOT NULL COMMENT '短信模板code',
  6. `param_list` varchar(2048) DEFAULT NULL COMMENT '参数值',
  7. `is_deleted` tinyint(1) DEFAULT '0' COMMENT '是否删除,0:否,1:是',
  8. `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  9. `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
  10. PRIMARY KEY (`id`)
  11. ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

新增javaBean(Do,Model)

新增service以及mapper

Json转数组

  1. String str = smsParamDo.getParamList();
  2. List<smsTemplateParam> smsTemplate = JSON.parseArray(str, smsTemplateParam.class);
  3. smsParam smsParam = new smsParam();
  4. BeanUtils.copyProperties(smsParamDo,smsParam,"paramList");

后端接口

新增参数companyId 单位Id(用来查询是否有单位专属体检地址) ;短信类型templateCode(短信模板类型),用于区分查询特定类型短信模板和查询全部模板; 新增examHospitalId(渠道查询时,选择的体检中心)用于查询渠道预约时的体检中心参数预览值

在原有的/resource/hospitalsms接口的基础上,返回结果新增每一种类型短信可配置的参数以及预览值

在HospitalSmsTemplateVO中新增属性 ———— Map <String,smsTemplateParam codeToParamListMap key为paramCode

预览值设置

体检时段,体检日,体检人姓名,订单金额等参数,在预约页面可以取到值的,前端会做处理,不会使用后端返回的写死的值短信模板配置页面使用后端返回的写死的值,

  1. //获取hospitalsettings
  2. Map<String,smsTemplateParam>
  3. HospitalSettings setting = hospitalService.getHospitalSettingsById(hospitalId);
  4. setting.setCalculatorService(
  5. String.valueOf(CalculatorServiceEnum.getCodeByName(setting.getCalculatorService())));
  6. //获取hospital
  7. Hospital hospital = hospitalService.getHospitalById(hospitalId);
  8. //获取hospital_company
  9. HospitalCompany hospitalCompany = HospitalCompanyService.getHospitalCompanyById(companyId)
分类 动态参数
体检中心相关信息、数据库里面写死的(可以拿到值的)
体检中心 tb_hospital name
客服电话 tb_hospital_settings service_tel
技术支持电话 tb_hospital_settings technical_tel
咨询电话 tb_hospital phone
最早时间 tb_hospital_settings examStartTime
最晚时间 tb_hospital_settings examEndTime
网址链接 tb_hospital_settings promptPageURl
体检中心ID tb_hospital id
体检地址(配置页面取体检中心地址 预约页面如果有专属地址取专属 否则取体检中心地址) tb_hospital_company examination_address或tb_hospital address
体检中心地址 tb_hospital address
短信开头 您的体检报告已经可以线上查看”(固定的)
订单、预约相关信息(拿不到值)
预约人 “张三”
体检人姓名 “李四”
登录名 “王五”
体检日 取操作日期,格式与短信保持一致
体检时段 “07:00-12:00”
时间备注(体检日+体检时段) 操作日期+“07:00-12:00”
订单金额 “¥100”
现场支付金额 “¥100”
套餐名称 “基础套餐”
订单号 “7133743”
订单ID “7133743”
卡相关(拿不到值)
卡所有人 “赵六”
卡过期时间 取操作时间,格式与短信保持一致
自动下单期限 “2020-08-08”
单位相关(拿不到值)
单位名称 “每天健康科技有限公司”
单位专属链接 http://0ot.co/zyx
报告相关(拿不到值)
报告ID “6893990”
报告单号 “6893990”

CRM可编辑体检时间

在crm-site中的HospitalControllrt新增接口 返回设置信息(从ops迁移过来)

  1. /**
  2. * 功能设置详情
  3. *
  4. * @param hospitalId
  5. * @return
  6. */
  7. @RequestMapping(value = "/funSettingsInfo", method = RequestMethod.GET)
  8. @ResponseBody
  9. public Map<String, Object> funSettingsInfo(Integer hospitalId) {
  10. Map<String, Object> funSettingsMap = new HashMap<String, Object>();
  11. funSettingsMap.put("periodSetting", hospitalPeriodSettingService.getHospitalPeriodSetting(hospitalId));
  12. HospitalSettings setting = hospitalService.getHospitalSettingsById(hospitalId);
  13. setting.setCalculatorService(
  14. String.valueOf(CalculatorServiceEnum.getCodeByName(setting.getCalculatorService())));
  15. FunctionSettingsVO funSettings = converterToFunctionSettingsVO(setting);
  16. funSettingsMap.put("funSettings", funSettings);
  17. SystemParam sp = systemParamReadService.getSysParam(ANALYSIS, hospitalId);
  18. if(sp != null && AssertUtil.isNotEmpty(sp.getParamValue())){
  19. funSettingsMap.put("analysis", sp.getParamValue());
  20. } else {
  21. funSettingsMap.put("analysis", "0");
  22. }
  23. funSettingsMap.put("surveyList", surveyIdAndSurveyNameMap(hospitalId,SurveyTypeEnum.SURVEY));
  24. funSettingsMap.put("epidemicSurveyList", surveyIdAndSurveyNameMap(hospitalId,SurveyTypeEnum.EPIDEMIC));
  25. return funSettingsMap;
  26. }
文档更新时间: 2021-07-15 14:01