|
@@ -24,6 +24,7 @@ import java.time.LocalDate;
|
|
|
import java.time.LocalDateTime;
|
|
|
import java.time.ZoneOffset;
|
|
|
import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
import java.util.Map;
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
@@ -129,9 +130,10 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements IC
|
|
|
Clue last = lambdaQuery().eq(Clue::getAuthor, wxMessage.getFromUserName()).gt(Clue::getAddTime, addTime.minusHours(24))
|
|
|
.orderByDesc(Clue::getId).last("limit 1").one();
|
|
|
if(null != last && last.getReplyFlag() == 0){ //24h内有消息但未回复
|
|
|
- ClueInfo info = clueInfoService.lambdaQuery().eq(ClueInfo::getRelaId, last.getId()).one();
|
|
|
- if(null == info){
|
|
|
- info = new ClueInfo();
|
|
|
+ List<ClueInfo> infos = clueInfoService.lambdaQuery().eq(ClueInfo::getRelaId, last.getId()).list();
|
|
|
+
|
|
|
+ if(infos.size() == 0){
|
|
|
+ ClueInfo info = new ClueInfo();
|
|
|
info.setAddUser(last.getAuthor());
|
|
|
info.setAddTime(last.getAddTime());
|
|
|
info.setRelaId(last.getId());
|
|
@@ -139,15 +141,15 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements IC
|
|
|
info.setType(0);
|
|
|
clueInfoService.save(info);
|
|
|
}
|
|
|
- info = new ClueInfo();
|
|
|
- info.setAddUser(wxMessage.getFromUserName());
|
|
|
- info.setAddTime(addTime);
|
|
|
- info.setRelaId(last.getId());
|
|
|
- info.setMaterialUrl(wxMessage.getContent());
|
|
|
- info.setType(0);
|
|
|
- clueInfoService.save(info);
|
|
|
-
|
|
|
- }else {
|
|
|
+ ClueInfo info1 = new ClueInfo();
|
|
|
+ info1.setAddUser(wxMessage.getFromUserName());
|
|
|
+ info1.setAddTime(addTime);
|
|
|
+ info1.setRelaId(last.getId());
|
|
|
+ info1.setMaterialUrl(wxMessage.getContent());
|
|
|
+ info1.setType(getMediaType(wxMessage.getMsgType()));
|
|
|
+ clueInfoService.save(info1);
|
|
|
+
|
|
|
+ }else if(wxMessage.getMsgType().equals("text")){
|
|
|
Clue clue = new Clue();
|
|
|
clue.setSource(2);
|
|
|
clue.setSiteId(3L);
|
|
@@ -163,4 +165,16 @@ public class ClueServiceImpl extends ServiceImpl<ClueMapper, Clue> implements IC
|
|
|
|
|
|
}
|
|
|
|
|
|
+ private Integer getMediaType(String type){
|
|
|
+ switch (type){
|
|
|
+ case "text":
|
|
|
+ return 0;
|
|
|
+ case "image":
|
|
|
+ return 1;
|
|
|
+ case "video":
|
|
|
+ return 2;
|
|
|
+ }
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+
|
|
|
}
|