|
|
|
|
@@ -250,7 +250,7 @@ public class MessageService extends MybatisBaseService<MessageMapper, Message> {
|
|
|
|
|
// 使用多线程保存
|
|
|
|
|
List<Future<?>> futures = new ArrayList<Future<?>>();
|
|
|
|
|
ExecutorService executor = Executors.newFixedThreadPool(4);
|
|
|
|
|
for (int i = 0;i<list.size();i++) {
|
|
|
|
|
for (int i = 0; i < list.size(); i++) {
|
|
|
|
|
int finalI = i;
|
|
|
|
|
Future<?> f = executor.submit(new Runnable() {
|
|
|
|
|
@Override
|
|
|
|
|
@@ -262,7 +262,7 @@ public class MessageService extends MybatisBaseService<MessageMapper, Message> {
|
|
|
|
|
messageList.setRDelStatus(0);
|
|
|
|
|
messageList.setSDelStatus(0);
|
|
|
|
|
messageList.setReceiverSid(list.get(finalI));
|
|
|
|
|
if(orgPathList.size()>0){
|
|
|
|
|
if (orgPathList.size() > 0) {
|
|
|
|
|
messageList.setReceiverDeptSid(orgPathList.get(finalI));
|
|
|
|
|
}
|
|
|
|
|
messageListService.saveOrUpdateDto(messageList);
|
|
|
|
|
@@ -427,13 +427,114 @@ public class MessageService extends MybatisBaseService<MessageMapper, Message> {
|
|
|
|
|
futures.add(f);
|
|
|
|
|
}
|
|
|
|
|
executor.shutdown();
|
|
|
|
|
for (int i = 0; i < reveiveIdList.size(); i++) {
|
|
|
|
|
/**
|
|
|
|
|
* msgTitle:排产申请
|
|
|
|
|
* content:xxx的排产申请
|
|
|
|
|
*/
|
|
|
|
|
JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, query.getName(), reveiveIdList.get(i));
|
|
|
|
|
} // 3、推送
|
|
|
|
|
YamlPropertiesFactoryBean factoryBean = new YamlPropertiesFactoryBean();
|
|
|
|
|
factoryBean.setResources(new ClassPathResource("application.yml"));
|
|
|
|
|
Properties properties = factoryBean.getObject();
|
|
|
|
|
if ("pro".equals(properties.get("spring.profiles.active"))) {
|
|
|
|
|
for (int i = 0; i < reveiveIdList.size(); i++) {
|
|
|
|
|
/**
|
|
|
|
|
* msgTitle:排产申请
|
|
|
|
|
* content:xxx的排产申请
|
|
|
|
|
*/
|
|
|
|
|
JPushServer.sendPushAlias(msgTitle, msgContent, msgTypeSid, "供应链", reveiveIdList.get(i));
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
for (int i = 0; i < reveiveIdList.size(); i++) {
|
|
|
|
|
/**
|
|
|
|
|
* msgTitle:排产申请
|
|
|
|
|
* content:xxx的排产申请
|
|
|
|
|
*/
|
|
|
|
|
JPushServer.sendPushAlias(msgTitle, msgContent, msgTypeSid, "供应链", "T" + reveiveIdList.get(i));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// 3、推送
|
|
|
|
|
// JPushServer.sendPushAll(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, messageDto.getMsgType());
|
|
|
|
|
// JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgSid, messageDto.getMsgType(), "23","26","66"); // 别名
|
|
|
|
|
System.out.println("process end");
|
|
|
|
|
return rb.success().setMsg(msgSid);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public ResultBean<String> sendAutoserviceMessage(AppScmMessageFlowableQuery query) {
|
|
|
|
|
ResultBean<String> rb = ResultBean.fireFail();
|
|
|
|
|
String msgTitle = query.getMsgTitle();
|
|
|
|
|
String msgContent = query.getMsgContent();
|
|
|
|
|
String msgSource = query.getMsgSource();
|
|
|
|
|
String msgTargetUri = query.getMsgTargetUri();
|
|
|
|
|
String app_type = query.getApp_type();
|
|
|
|
|
String moduleSid = query.getModuleSid();
|
|
|
|
|
List<String> recipientSidList = query.getRecipientSidList();
|
|
|
|
|
Map<String, Object> appMap = query.getAppMap();
|
|
|
|
|
ResultBean<String> stringList = sysUserFeign.selectIdBySid(recipientSidList);
|
|
|
|
|
List<String> reveiveIdList = Arrays.asList(stringList.getData().split(","));
|
|
|
|
|
// 1、保存消息体
|
|
|
|
|
AppMessageDto messageDto = new AppMessageDto();
|
|
|
|
|
List<MessageTypeVo> typeVoList = messageTypeService.selectMsgTypeList(IDENTIFIER);
|
|
|
|
|
if (typeVoList != null) {
|
|
|
|
|
for (MessageTypeVo message : typeVoList) {
|
|
|
|
|
if (message.getMsgType().equals("业务")) {
|
|
|
|
|
messageDto.setMsgTypeSid(message.getMsgTypeSid());
|
|
|
|
|
messageDto.setMsgType(message.getMsgType());
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
messageDto.setMsgTitle(msgTitle);
|
|
|
|
|
messageDto.setMsgContent(msgContent);
|
|
|
|
|
messageDto.setMsgSource(msgSource);
|
|
|
|
|
messageDto.setMsgTargetUri(msgTargetUri);
|
|
|
|
|
messageDto.setApp_type(app_type);
|
|
|
|
|
messageDto.setModuleSid(moduleSid);
|
|
|
|
|
JSONObject json = new JSONObject(appMap);
|
|
|
|
|
messageDto.setArgs_json(json.toJSONString());
|
|
|
|
|
String msgSid = (String) saveOrUpdateAppMessage(messageDto).getData();
|
|
|
|
|
String msgTypeSid = messageDto.getMsgTypeSid();
|
|
|
|
|
// 2、保存至消息列表
|
|
|
|
|
// 使用多线程保存
|
|
|
|
|
List<Future<?>> futures = new ArrayList<Future<?>>();
|
|
|
|
|
ExecutorService executor = Executors.newFixedThreadPool(4);
|
|
|
|
|
for (String sid : recipientSidList) {
|
|
|
|
|
Future<?> f = executor.submit(new Runnable() {
|
|
|
|
|
@Override
|
|
|
|
|
public void run() {
|
|
|
|
|
try {
|
|
|
|
|
System.out.println("run start-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
|
|
|
|
|
// MessageListDto messageList = new MessageListDto();
|
|
|
|
|
MessageList messageList = new MessageList();
|
|
|
|
|
messageList.setMsgSid(msgSid);
|
|
|
|
|
messageList.setRDelStatus(0);
|
|
|
|
|
messageList.setSDelStatus(0);
|
|
|
|
|
messageList.setReceiverSid(sid);
|
|
|
|
|
messageListService.save(messageList);
|
|
|
|
|
// Thread.sleep(5 * 1000);
|
|
|
|
|
System.out.println("run end-----------------" + System.currentTimeMillis() + ":" + Thread.currentThread().getName());
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
futures.add(f);
|
|
|
|
|
}
|
|
|
|
|
executor.shutdown();
|
|
|
|
|
YamlPropertiesFactoryBean factoryBean = new YamlPropertiesFactoryBean();
|
|
|
|
|
factoryBean.setResources(new ClassPathResource("application.yml"));
|
|
|
|
|
Properties properties = factoryBean.getObject();
|
|
|
|
|
if ("pro".equals(properties.get("spring.profiles.active"))) {
|
|
|
|
|
for (int i = 0; i < reveiveIdList.size(); i++) {
|
|
|
|
|
/**
|
|
|
|
|
* msgTitle:排产申请
|
|
|
|
|
* content:xxx的排产申请
|
|
|
|
|
*/
|
|
|
|
|
JPushServer.sendPushAlias(msgTitle, msgContent, msgTypeSid, "业务", reveiveIdList.get(i));
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
for (int i = 0; i < reveiveIdList.size(); i++) {
|
|
|
|
|
/**
|
|
|
|
|
* msgTitle:排产申请
|
|
|
|
|
* content:xxx的排产申请
|
|
|
|
|
*/
|
|
|
|
|
JPushServer.sendPushAlias(msgTitle, msgContent, msgTypeSid, "业务", "T" + reveiveIdList.get(i));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
// 3、推送
|
|
|
|
|
// JPushServer.sendPushAll(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgTypeSid, messageDto.getMsgType());
|
|
|
|
|
// JPushServer.sendPushAlias(messageDto.getMsgTitle(), messageDto.getMsgContent(), msgSid, messageDto.getMsgType(), "23","26","66"); // 别名
|
|
|
|
|
System.out.println("process end");
|
|
|
|
|
|