SendMessageServiceImpl.java 2.61 KB
package com.zteits.wxcp.service.impl;


import com.zteits.wxcp.service.impl.inner.InnerMessageSendService;

import com.zteits.wxcp.utils.constants.InnerMessageSendRoutes;
import com.zteits.clouds.api.apibase.bean.BizResult;
import com.zteits.clouds.api.dto.wxcp.dto.SendMegDTO;
import com.zteits.clouds.api.dto.wxcp.param.SendMegReq;
import com.zteits.clouds.api.service.wxcp.SendMessageService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Map;

/**
 * Copyright: Copyright (c) 2017  zteits
 *
 * @ClassName: SendMessageServiceImpl.java
 * @Description:
 * @version: v1.0.0
 * @author: wangfs
 * @date: 2019-03-11 12:49
 * Modification History:
 * Date             Author          Version            Description
 * ---------------------------------------------------------*
 * 2019-03-11     wangfs              v1.0.0               创建
 */
@Service("com.zteits.wxcp.service.impl.SendMessageServiceImpl")
public class SendMessageServiceImpl implements SendMessageService {

    @Autowired
    private Map<String, InnerMessageSendService> innerMessageSendService;

    @Override
    public BizResult<SendMegDTO> sendMesg(SendMegReq sendMegReq) {
        InnerMessageSendService innerMessageSendService = null;
            switch (sendMegReq.getMsgType()){
                case TEXT_MSG_TYPE:
                    innerMessageSendService = this.innerMessageSendService.get(InnerMessageSendRoutes.TextSendMessageServiceImpl);// InnerMessageSendRoutes
                    break;
                case IMAGE_MSG_TYPE:
                    break;
                case VOICE_MSG_TYPE:
                    break;
                case VIDEO_MSG_TYPE:
                    break;
                case FILE_MSG_TYPE:
                    break;
                case TEXTCARD_MSG_TYPE:
                    innerMessageSendService = this.innerMessageSendService.get(InnerMessageSendRoutes.TextCardMsgSendServiceImpl);// InnerMessageSendRoutes
                    break;
                case MPNEWS_MSG_TYPE:
                    innerMessageSendService = this.innerMessageSendService.get(InnerMessageSendRoutes.PnewsMSendMessageServiceImpl);// InnerMessageSendRoutes
                    break;
                case NEWS_MSG_TYPE:
                    innerMessageSendService = this.innerMessageSendService.get(InnerMessageSendRoutes.NewsMSendMessageServiceImpl);// InnerMessageSendRoutes
                    break;

              }
        /**发送消息.*/
        BizResult<SendMegDTO> sendMegDTOBizResult = innerMessageSendService.sendMsg(sendMegReq);
        return sendMegDTOBizResult;
    }


}