@@ -26,7 +26,7 @@ public class WxMiniMessageTemplateListRequest extends AbstractAtsRequest<WxMiniM | |||
public WxMiniMessageTemplateListRequest() { | |||
super(WeiXinServiceCmd.MINIMESSAGELIST); | |||
} | |||
private String clientId; | |||
private String clientId = "bfc4040bda90473d8ceab246555361a3"; | |||
public WxMiniMessageTemplateListRequest valid() throws ServiceHandleException { | |||
@@ -27,7 +27,7 @@ public class WxMiniSendMessageRequest extends AbstractAtsRequest<WxMiniSendMessa | |||
public WxMiniSendMessageRequest() { | |||
super(WeiXinServiceCmd.MINISENDMESSAGE); | |||
} | |||
private String clientId; | |||
private String clientId = "bfc4040bda90473d8ceab246555361a3"; | |||
//所需下发的订阅模板id | |||
private String templateId; | |||
@@ -58,8 +58,8 @@ public class WxMiniSendMessageRequest extends AbstractAtsRequest<WxMiniSendMessa | |||
final ArrayList<String> failParamInfo = Lists.newArrayList(); | |||
if (clientId == null || clientId.trim().isEmpty()) | |||
failParamInfo.add("消息客户端id"); | |||
// if (clientId == null || clientId.trim().isEmpty()) | |||
// failParamInfo.add("消息客户端id"); | |||
if (templateId == null || templateId.trim().isEmpty()) | |||
failParamInfo.add("消息模板id"); | |||
@@ -70,7 +70,7 @@ public class WxMiniSendMessageRequest extends AbstractAtsRequest<WxMiniSendMessa | |||
// if (openid == null || openid.trim().isEmpty()) | |||
// failParamInfo.add("用户openid"); | |||
if (StringUtils.hasText(wxOpenId)) | |||
if (!StringUtils.hasText(wxOpenId)) | |||
failParamInfo.add("微信用户openid列表"); | |||
@@ -1,6 +1,7 @@ | |||
package cn.com.taiji.msgw.manager.importSend; | |||
import static cn.com.taiji.msgw.api.TokenHelper.logger; | |||
import static org.aspectj.util.LangUtil.split; | |||
import java.io.File; | |||
import java.io.IOException; | |||
@@ -62,11 +63,17 @@ public class WxMiniImportSendHandler{ | |||
// 循环发送人id创建子表信息 | |||
List<SendDetailModel> receiverIdList = new ArrayList<>(); | |||
if (!apply.getReceiverIdList().isEmpty()) { | |||
try { | |||
receiverIdList = JsonTools.json2List(apply.getReceiverIdList(), SendDetailModel.class); | |||
} catch (IOException e) { | |||
throw new RuntimeException(e); | |||
// try { | |||
// receiverIdList = JsonTools.json2List(apply.getReceiverIdList(), SendDetailModel.class); | |||
List<String> result = List.of(apply.getReceiverIdList().replace("[", "").replace("]", "").split(",")); | |||
SendDetailModel model = new SendDetailModel(); | |||
for (String mobile : result){ | |||
model.setReceiverId(mobile); | |||
receiverIdList.add(model); | |||
} | |||
// } catch (IOException e) { | |||
// throw new RuntimeException(e); | |||
// } | |||
} else { | |||
File file = minioUtil.getFileByUrl(request.getExcelUrl()); | |||
receiverIdList = EasyExcelUtil.readExcelColToModelList(file, SendDetailModel.class, 2); |
@@ -143,7 +143,13 @@ public class MessageWaitSendManagerImpl extends AbstractCommManager implements M | |||
//三、《小程序》 端消息推送 | |||
else if (MessageType.MINI_PROGRAM.equals(messageType)) { | |||
//微信小程序 | |||
WxMiniSendMessageRequest messageRequest = JsonTools.json2Object(sendDetails.getRequestDataJson(), WxMiniSendMessageRequest.class); | |||
WxMiniSendMessageRequest messageRequest = new WxMiniSendMessageRequest(); | |||
// JsonTools.json2Object(sendDetails.getRequestDataJson(), WxMiniSendMessageRequest.class); | |||
messageRequest.setTemplateId(sendDetails.getModelId()); | |||
messageRequest.setWxOpenId(sendDetails.getReceiverId()); | |||
messageRequest.setDataObject(sendDetails.getRequestDataJson()); | |||
// messageRequest.setSendTime(LocalDateTime.now()); | |||
messageRequest.setTitle(sendDetails.getTitle()); | |||
jsonPostRepeat(messageRequest); | |||
} | |||
//四、《短信》 端消息推送 |
@@ -82,11 +82,11 @@ public class WxManagerImpl implements WxManager { | |||
//3、发送微信小程序消息 | |||
try { | |||
wxSendRequestUtil.sendRequest(HttpMethod.POST, url, wxMiniSendMessageDto); | |||
wxSendRequestUtil.sendRequest(HttpMethod.POST, url, wxMiniSendMessageDto, accessToken); | |||
} catch (Exception e) { | |||
logger.error(e.toString()); | |||
failTouserList.add(request.getWxOpenId()); | |||
throw GlyServiceError.RESPONSE_ERROR.toHandleException("微信小程序订阅消息推送失败!"); | |||
throw GlyServiceError.RESPONSE_ERROR.toHandleException("微信小程序订阅消息推送失败!" + e); | |||
} | |||
logger.info("********** 微信小程序订阅消息发送 END **********"); | |||
@@ -132,7 +132,7 @@ public class WxManagerImpl implements WxManager { | |||
//3、发送微信公众号消息 | |||
try { | |||
wxSendRequestUtil.sendRequest(HttpMethod.POST, url, wxMpSendMessageDto); | |||
wxSendRequestUtil.sendRequest(HttpMethod.POST, url, wxMpSendMessageDto, accessToken); | |||
} catch (Exception e) { | |||
logger.error(e.toString()); | |||
failTouserList.add(mpOpenid); |
@@ -100,7 +100,7 @@ public class WxMessageManagerImpl implements WxMessageManager { | |||
logger.info("返回的response:{}", response.toJson()); | |||
} catch (Exception e) { | |||
logger.error("", e); | |||
throw GlyServiceError.RESPONSE_ERROR.toHandleException("微信小程序订阅消息推送失败!"); | |||
throw GlyServiceError.RESPONSE_ERROR.toHandleException("微信小程序订阅消息推送失败!" + e); | |||
// throw new ManagerException("微信小程序订阅消息推送失败!"); | |||
} finally { | |||
logger.info("------- 微信小程序-订阅消息推送 END -------"); |
@@ -34,13 +34,12 @@ public class WxSendRequestUtil extends AbstractCommManager { | |||
@Value("${wx.mp.secret}") | |||
private String mpSecret; | |||
public Map<String, Object> sendRequest(HttpMethod requestMethod, String url, Object postParamBody) throws ManagerException, IOException { | |||
logger.info("******* http调用入参信息: 方法:{}, 调用地址:{}, 参数:{}", requestMethod.name(), url, JsonTools.toJsonStr((String) postParamBody)); | |||
String accessToken = wxRequestAccessTokenUtil.getStableAccessToken(mpAppid, mpSecret, false, MP_ACCESS_STABLE_TOKEN_PREFIX); | |||
public Map<String, Object> sendRequest(HttpMethod requestMethod, String url, Object postParamBody, String accessToken) throws ManagerException, IOException { | |||
logger.info("******* http调用入参信息: 方法:{}, 调用地址:{}, 参数:{}", requestMethod.name(), url, postParamBody); | |||
//方法二、走中台的http调用接口 | |||
// Map<String, Object> responseBody = ifztServiceManager.httpApi(requestMethod, url, postParamBody); | |||
// 访问微信服务 | |||
String resJson = HttpClientUtil.sendPost(url,JsonTools.toJsonStr((String) postParamBody),accessToken); | |||
String resJson = HttpClientUtil.sendPost(url,JsonTools.asJsonStr(postParamBody),accessToken); | |||
ObjectMapper objectMapper = new ObjectMapper(); | |||
Map<String, Object> responseBody = objectMapper.readValue(resJson, new TypeReference<Map<String, Object>>() {}); | |||
System.out.println(responseBody); | |||
@@ -55,7 +54,6 @@ public class WxSendRequestUtil extends AbstractCommManager { | |||
throw new ManagerException("调用微信接口失败!错误码:" + responseBody.get("errcode") + ", 原因:" + responseBody.get("errmsg")); | |||
} | |||
} | |||
return responseBody; | |||
} | |||
} |
@@ -18,7 +18,7 @@ import cn.hutool.core.collection.CollectionUtil; | |||
*/ | |||
public class WxMpSendMessageUpdateRequest extends BaseEntity { | |||
private String id; | |||
private String clientId; | |||
private String clientId = "bfc4040bda90473d8ceab246555361a3"; | |||
private LocalDateTime sendTime; | |||
private String title; |