File tree Expand file tree Collapse file tree 2 files changed +15
-10
lines changed
weixin-java-cp/src/main/java/me/chanjar/weixin/cp/message
weixin-java-mp/src/main/java/me/chanjar/weixin/mp/api Expand file tree Collapse file tree 2 files changed +15
-10
lines changed Original file line number Diff line number Diff line change 11
11
import me .chanjar .weixin .cp .api .WxCpService ;
12
12
import me .chanjar .weixin .cp .bean .WxCpXmlMessage ;
13
13
import me .chanjar .weixin .cp .bean .WxCpXmlOutMessage ;
14
+ import org .apache .commons .lang3 .StringUtils ;
14
15
import org .slf4j .Logger ;
15
16
import org .slf4j .LoggerFactory ;
16
17
@@ -215,17 +216,19 @@ public WxCpXmlOutMessage route(final WxCpXmlMessage wxMessage) {
215
216
}
216
217
217
218
protected boolean isDuplicateMessage (WxCpXmlMessage wxMessage ) {
218
-
219
- String messageId = "" ;
219
+ String messageId ;
220
220
if (wxMessage .getMsgId () == null ) {
221
221
messageId = String .valueOf (wxMessage .getCreateTime ())
222
- + "-" + String .valueOf (wxMessage .getAgentId () == null ? "" : wxMessage . getAgentId ( ))
222
+ + "-" + StringUtils . trimToEmpty ( String .valueOf (wxMessage .getAgentId ()))
223
223
+ "-" + wxMessage .getFromUserName ()
224
- + "-" + String . valueOf ( wxMessage . getEventKey () == null ? "" : wxMessage .getEventKey ())
225
- + "-" + String . valueOf ( wxMessage . getEvent () == null ? "" : wxMessage .getEvent ())
224
+ + "-" + StringUtils . trimToEmpty ( wxMessage .getEventKey ())
225
+ + "-" + StringUtils . trimToEmpty ( wxMessage .getEvent ())
226
226
;
227
227
} else {
228
- messageId = String .valueOf (wxMessage .getMsgId ());
228
+ messageId = new StringBuilder ().append (wxMessage .getMsgId ())
229
+ .append ("-" ).append (wxMessage .getCreateTime ())
230
+ .append ("-" ).append (wxMessage .getFromUserName ())
231
+ .toString ();
229
232
}
230
233
231
234
return this .messageDuplicateChecker .isDuplicate (messageId );
Original file line number Diff line number Diff line change 10
10
import me .chanjar .weixin .common .util .LogExceptionHandler ;
11
11
import me .chanjar .weixin .mp .bean .message .WxMpXmlMessage ;
12
12
import me .chanjar .weixin .mp .bean .message .WxMpXmlOutMessage ;
13
+ import org .apache .commons .lang3 .StringUtils ;
13
14
import org .slf4j .Logger ;
14
15
import org .slf4j .LoggerFactory ;
15
16
@@ -195,16 +196,17 @@ public WxMpXmlOutMessage route(final WxMpXmlMessage wxMessage) {
195
196
}
196
197
197
198
protected boolean isMsgDuplicated (WxMpXmlMessage wxMessage ) {
198
-
199
199
StringBuilder messageId = new StringBuilder ();
200
200
if (wxMessage .getMsgId () == null ) {
201
201
messageId .append (wxMessage .getCreateTime ())
202
202
.append ("-" ).append (wxMessage .getFromUser ())
203
- .append ("-" ).append (wxMessage . getEventKey () == null ? "" : wxMessage .getEventKey ())
204
- .append ("-" ).append (wxMessage . getEvent () == null ? "" : wxMessage .getEvent ())
203
+ .append ("-" ).append (StringUtils . trimToEmpty ( wxMessage .getEventKey () ))
204
+ .append ("-" ).append (StringUtils . trimToEmpty ( wxMessage .getEvent () ))
205
205
;
206
206
} else {
207
- messageId .append (wxMessage .getMsgId ());
207
+ messageId .append (wxMessage .getMsgId ())
208
+ .append ("-" ).append (wxMessage .getCreateTime ())
209
+ .append ("-" ).append (wxMessage .getFromUser ());
208
210
}
209
211
210
212
return this .messageDuplicateChecker .isDuplicate (messageId .toString ());
You can’t perform that action at this time.
0 commit comments