From f379de6364a7f3b4ddc397d4bf6f70ab13bf6618 Mon Sep 17 00:00:00 2001 From: 935090232@qq.com <ak473600000> Date: Thu, 28 Oct 2021 14:03:54 +0800 Subject: [PATCH] 实现简单短信提醒 --- zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java | 13 ++++ zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java | 2 zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html | 8 ++ zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java | 8 ++ zq-erp/src/main/java/com/matrix/system/hive/service/TaiYanAliyunSmsService.java | 111 ++++++++++++++++++++++++++++-------- zq-erp/src/test/java/com/matrix/TaiYanAliyunSmsServiceTest.java | 2 6 files changed, 119 insertions(+), 25 deletions(-) diff --git a/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java b/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java index 5fecc8b..82a26fc 100644 --- a/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java +++ b/zq-erp/src/main/java/com/matrix/system/common/constance/AppConstance.java @@ -582,6 +582,14 @@ * 门店是否只能取消待付款订单,服务单 */ public static final String SHOP_MANAGE_ABLE_CANCEL_DFK_ORDER = "shopManageAbleCancelDfkOrder"; + /** + * 服务记录跟进模板 + */ + public static final String SERVICE_FLOW_TEMPLATE = "SERVICE_FLOW_TEMPLATE"; + /** + * 开启短信提醒 + */ + public static final String OPEN_SMS_NOTICE = "OPEN_SMS_NOTICE"; /** * 赠送金额购买产品算赠送购买 diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/TaiYanAliyunSmsService.java b/zq-erp/src/main/java/com/matrix/system/hive/service/TaiYanAliyunSmsService.java index 828f1ad..382487a 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/service/TaiYanAliyunSmsService.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/service/TaiYanAliyunSmsService.java @@ -8,20 +8,24 @@ package com.matrix.system.hive.service; import com.google.common.collect.Maps; +import com.matrix.core.tools.DateUtil; import com.matrix.core.tools.LogUtil; import com.matrix.core.tools.SmsUtils; import com.matrix.core.tools.StringUtils; +import com.matrix.system.common.bean.BusParameterSettings; +import com.matrix.system.common.constance.AppConstance; +import com.matrix.system.common.dao.BusParameterSettingsDao; import com.matrix.system.hive.bean.SysBeauticianState; import com.matrix.system.hive.bean.SysProjServices; +import com.matrix.system.hive.bean.SysShopInfo; import com.matrix.system.hive.bean.SysVipInfo; import com.matrix.system.hive.dao.SysVipInfoDao; import lombok.AllArgsConstructor; -import org.springframework.scheduling.annotation.Async; import org.springframework.stereotype.Service; +import java.util.Date; import java.util.HashMap; import java.util.List; -import java.util.stream.Collectors; /** * @version: V1.0 @@ -39,40 +43,97 @@ SmsUtils smsUtils; + SysShopInfoService shopInfoService; + SysBeauticianStateService sysBeauticianStateService; + + BusParameterSettingsDao busParameterSettingsDao; /** * 预约成功短信提醒 + * * @param services */ - @Async +// @Async public void sendYycgNotice(SysProjServices services) { - //短信接口为肽妍公司定制,暂时写死 - if(services.getCompanyId()!=17L){ + if (services.getCompanyId() != 17L) { return; } - + if (isCloseSmsNotice(services)){ + return; + } SysVipInfo sysVipInfo = vipInfoDao.selectById(services.getVipId()); - - HashMap<String, String> param = Maps.newHashMap(); - - List<SysBeauticianState> sysBeauticianStates = sysBeauticianStateService.findBySerId(services.getId()); - - String projNames = sysBeauticianStates.stream().map(item -> { - if(item.getProjInfo()!=null){ - return item.getProjInfo().getName(); - }else{ - return ""; - } - } ).collect(Collectors.joining(",")); - - LogUtil.debug("发送阿里云短信手机号{},项目{}",sysVipInfo.getPhone(), projNames); - if(StringUtils.isNotBlank(projNames) - && StringUtils.isNotBlank(sysVipInfo.getPhone())){ - param.put("projName",projNames); - smsUtils.sendSms(sysVipInfo.getPhone(),"SMS_227005614",param); + SysShopInfo shopInfo = shopInfoService.findById(services.getShopId()); + String date = DateUtil.dateFormatStr(new Date(), "yyyy年MM月dd日"); + LogUtil.debug("发送阿里云预约成功短信,手机号={}", sysVipInfo.getPhone()); + if (StringUtils.isNotBlank(sysVipInfo.getPhone())) { + HashMap<String, String> param = Maps.newHashMap(); + param.put("date", date); + param.put("tel", shopInfo.getShopTel()); + param.put("shopName", shopInfo.getShopName()); + smsUtils.sendSms(sysVipInfo.getPhone(), "SMS_226995798", param); } + } -} \ No newline at end of file + + + /** + * 判断是否开启了短信提醒 + * @param services + * @return + */ + private boolean isCloseSmsNotice(SysProjServices services) { + BusParameterSettings openSmsNoticeSetting = busParameterSettingsDao.selectCompanyParamByCode(AppConstance.OPEN_SMS_NOTICE, services.getCompanyId()); + if (StringUtils.isBlank(openSmsNoticeSetting.getParamValue()) + || AppConstance.IS_N.equals(openSmsNoticeSetting.getParamValue())) { + LogUtil.debug("未开启短信提醒"); + return true; + } + return false; + } + + + /** + * 项目划扣短信提醒 + * + * @param services + */ +// @Async + public void sendHkNotice(SysProjServices services) { + //短信接口为肽妍公司定制,暂时写死 + if (services.getCompanyId() != 17L) { + return; + } + if (isCloseSmsNotice(services)){ + return; + } + SysVipInfo sysVipInfo = vipInfoDao.selectById(services.getVipId()); + SysShopInfo shopInfo = shopInfoService.findById(services.getShopId()); + String date = DateUtil.dateFormatStr(new Date(), "yyyy年MM月dd日"); + + List<SysBeauticianState> items = sysBeauticianStateService.findBySerId(services.getId()); + for (SysBeauticianState item : items) { + if (item.getProjInfo() != null) { + String projName = item.getProjInfo().getName(); + LogUtil.debug("发送阿里云项目划扣短信,手机号={}", sysVipInfo.getPhone()); + if (StringUtils.isNotBlank(sysVipInfo.getPhone())) { + HashMap<String, String> param = Maps.newHashMap(); + param.put("date", date); + param.put("projName", projName); + param.put("count", item.getCount() + ""); + param.put("balanceCount", item.getProjUse().getSurplusCount() + ""); + param.put("tel", shopInfo.getShopTel()); + param.put("shopName", shopInfo.getShopName()); + smsUtils.sendSms(sysVipInfo.getPhone(), "SMS_226995796", param); + } + + } + } + + + } + + +} diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java index 83bdf21..efb59fb 100644 --- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java +++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java @@ -661,6 +661,8 @@ UniformMsgParam uniformMsgParam = new UniformMsgParam(projServices.getCompanyId(), UniformMsgParam.GZH_FWWC); uniformMsgParam.put("serviceId", projServices.getId()); asyncMessageManager.sendMsg(AsyncMessageRouting.SEND_UNIFORM_TEMPLATE_MSG ,uniformMsgParam); + //发送划扣短信提醒 + taiYanAliyunSmsService.sendHkNotice(projServices); return result; } diff --git a/zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html b/zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html index 751099b..0fbaf6f 100644 --- a/zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html +++ b/zq-erp/src/main/resources/templates/views/admin/shop/parameterSetting-form.html @@ -71,6 +71,14 @@ </el-checkbox-group> </div> </div> + + <div class="form-group" v-if="paramSetting.type==5"> + <label class="col-md-2 control-label">{{paramSetting.name}}</label> + <div class="col-md-8"> + <el-input type="textarea" :rows="2" v-model="paramSetting.userValue"></el-input> + </div> + </div> + </template> diff --git a/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java b/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java index a3fab25..99c0860 100644 --- a/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java +++ b/zq-erp/src/test/java/com/matrix/ParameterSettingsTool.java @@ -105,6 +105,19 @@ newSetting8.setCategory("店务配置"); newSettings.add(newSetting8); + ParameterSettings newSetting9=new ParameterSettings(); + newSetting9.setCode(AppConstance.SERVICE_FLOW_TEMPLATE); + newSetting9.setName("跟进记录模板"); + newSetting9.setType(5); + newSetting9.setCategory("店务配置"); + newSettings.add(newSetting9); + + ParameterSettings newSetting10=new ParameterSettings(); + newSetting10.setCode(AppConstance.OPEN_SMS_NOTICE); + newSetting10.setName("是否开启短信提醒"); + newSetting10.setType(1); + newSetting10.setCategory("店务配置"); + newSettings.add(newSetting10); for (ParameterSettings newSetting : newSettings) { List<ParameterSettings> parameterSettings = parameterSettingsDao.selectByModel(newSetting); diff --git a/zq-erp/src/test/java/com/matrix/TaiYanAliyunSmsServiceTest.java b/zq-erp/src/test/java/com/matrix/TaiYanAliyunSmsServiceTest.java index 5f2690e..58b7772 100644 --- a/zq-erp/src/test/java/com/matrix/TaiYanAliyunSmsServiceTest.java +++ b/zq-erp/src/test/java/com/matrix/TaiYanAliyunSmsServiceTest.java @@ -31,6 +31,8 @@ SysProjServices byId = projServicesService.findById(215550L); byId.setVipId(5949L); taiYanAliyunSmsService.sendYycgNotice(byId); + taiYanAliyunSmsService.sendHkNotice(byId); + } -- Gitblit v1.9.1