935090232@qq.com
2021-10-28 62a5dc2c028032147c2e19c166c25c60a21dc2b7
实现简单短信提醒
2 files added
3 files modified
145 ■■■■■ changed files
zq-erp/pom.xml 5 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/core/tools/SmsUtils.java 6 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/TaiYanAliyunSmsService.java 78 ●●●●● patch | view | raw | blame | history
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java 19 ●●●●● patch | view | raw | blame | history
zq-erp/src/test/java/com/matrix/TaiYanAliyunSmsServiceTest.java 37 ●●●●● patch | view | raw | blame | history
zq-erp/pom.xml
@@ -393,6 +393,11 @@
            <artifactId>hutool-all</artifactId>
            <version>5.3.1</version>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>26.0-jre</version>
        </dependency>
    </dependencies>
    <build>
        <resources>
zq-erp/src/main/java/com/matrix/core/tools/SmsUtils.java
@@ -1,5 +1,6 @@
package com.matrix.core.tools;
import cn.hutool.json.JSONUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.aliyuncs.CommonRequest;
@@ -7,7 +8,6 @@
import com.aliyuncs.IAcsClient;
import com.aliyuncs.exceptions.ClientException;
import com.aliyuncs.http.MethodType;
import com.google.gson.JsonObject;
import com.matrix.config.properties.AliSmsProperties;
import com.matrix.core.exception.GlobleException;
import com.matrix.system.hive.bean.SysSmsTemplate;
@@ -15,7 +15,6 @@
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.Map;
/**
@@ -57,8 +56,7 @@
        CommonRequest request = commonRequest(SysSmsTemplate.SMS_ACTION_SEND);
        request.putQueryParameter("PhoneNumbers", phoneNum);
        request.putQueryParameter("TemplateCode", templateCode);
        String jsonStr = JSONObject.toJSONString(values);
        request.putQueryParameter("TemplateParam", jsonStr);
        request.putQueryParameter("TemplateParam", JSONUtil.parse(values).toString());
        CommonResponse response = null;
        try {
zq-erp/src/main/java/com/matrix/system/hive/service/TaiYanAliyunSmsService.java
New file
@@ -0,0 +1,78 @@
/**
 * projectName: zq-erp
 * fileName: TaiYanAliyunSmsService.java
 * packageName: com.matrix.system.hive.service
 * date: 2021-10-28 11:18
 * copyright(c) 2021 http://www.hydee.cn/ Inc. All rights reserved.
 */
package com.matrix.system.hive.service;
import com.google.common.collect.Maps;
import com.matrix.core.tools.LogUtil;
import com.matrix.core.tools.SmsUtils;
import com.matrix.core.tools.StringUtils;
import com.matrix.system.hive.bean.SysBeauticianState;
import com.matrix.system.hive.bean.SysProjServices;
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.HashMap;
import java.util.List;
import java.util.stream.Collectors;
/**
 * @version: V1.0
 * @author: JiangYouYao
 * @className: TaiYanAliyunSmsService
 * @packageName: com.matrix.system.hive.service
 * @description: 肽妍短信提醒服务
 * @data: 2021-10-28 11:18
 **/
@Service
@AllArgsConstructor
public class TaiYanAliyunSmsService {
    SysVipInfoDao vipInfoDao;
    SmsUtils smsUtils;
    SysBeauticianStateService sysBeauticianStateService;
    /**
     * 预约成功短信提醒
     * @param services
     */
    @Async
    public void sendYycgNotice(SysProjServices services) {
        //短信接口为肽妍公司定制,暂时写死
        if(services.getCompanyId()!=17L){
            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);
        }
    }
}
zq-erp/src/main/java/com/matrix/system/hive/service/imp/SysProjServicesServiceImpl.java
@@ -4,13 +4,9 @@
import com.matrix.component.asyncmessage.AsyncMessageManager;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.exception.GlobleException;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.PaginationVO;
import com.matrix.core.pojo.VerifyResult;
import com.matrix.core.tools.DateUtil;
import com.matrix.core.tools.LogUtil;
import com.matrix.core.tools.StringUtils;
import com.matrix.core.tools.WebUtil;
import com.matrix.core.tools.*;
import com.matrix.system.app.dto.ServiceOrderListDto;
import com.matrix.system.app.vo.ServiceOrderListVo;
import com.matrix.system.common.bean.BusParameterSettings;
@@ -68,7 +64,8 @@
    private SysOutStoreItemDao sysOutStoreItemDao;
    @Autowired
    private SysBedInfoDao sysBedInfoDao;
    @Autowired
    TaiYanAliyunSmsService taiYanAliyunSmsService;
    @Autowired
    private SysStoreInfoDao storeInfoDao;
@@ -1054,6 +1051,7 @@
        return flag;
    }
    @Override
    public int confirmServiceOrder(Long id) {
        SysProjServices services = new SysProjServices();
@@ -1067,7 +1065,16 @@
            uniformMsgParam.put("serviceId",services.getId());
            asyncMessageManager.sendMsg(AsyncMessageRouting.SEND_UNIFORM_TEMPLATE_MSG ,uniformMsgParam);
            taiYanAliyunSmsService.sendYycgNotice(services);
        }
        return i;
    }
}
zq-erp/src/test/java/com/matrix/TaiYanAliyunSmsServiceTest.java
New file
@@ -0,0 +1,37 @@
package com.matrix;
import com.matrix.system.hive.bean.SysProjServices;
import com.matrix.system.hive.service.SysProjServicesService;
import com.matrix.system.hive.service.TaiYanAliyunSmsService;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
/**
 * @author jiangyouyao
 * @email 512061637@qq.com
 * @date 2019年2月25日
 */
@RunWith(SpringRunner.class)
@SpringBootTest(classes = {ZqErpApplication.class},webEnvironment =SpringBootTest.WebEnvironment.RANDOM_PORT)
public class TaiYanAliyunSmsServiceTest {
    @Autowired
    private TaiYanAliyunSmsService taiYanAliyunSmsService;
    @Autowired
    SysProjServicesService projServicesService;
    @Test
    public void addSendYycgNotice(){
        SysProjServices byId = projServicesService.findById(215550L);
        byId.setVipId(5949L);
        taiYanAliyunSmsService.sendYycgNotice(byId);
    }
}