ソースを参照

增加判空操作

xueyiming 4 ヶ月 前
コミット
71172fa4c8

+ 28 - 15
common-module/src/main/java/com/tzld/piaoquan/growth/common/service/Impl/MessageAttachmentServiceImpl.java

@@ -67,27 +67,40 @@ public class MessageAttachmentServiceImpl implements MessageAttachmentService {
         List<Long> messageAttachmentIds = new ArrayList<>();
         for (MessageAttachment messageAttachment : messageAttachmentList) {
             MessageAttachmentExample example = new MessageAttachmentExample();
+            MessageAttachmentExample.Criteria criteria = example.createCriteria().andTypeEqualTo(messageAttachment.getType());
             if (messageAttachment.getType().equals(MessageAttachmentTypeEnum.IMAGE.getCode())) {
-                example.createCriteria()
-                        .andTypeEqualTo(messageAttachment.getType())
-                        .andMediaIdEqualTo(messageAttachment.getMediaId())
-                        .andPicUrlEqualTo(messageAttachment.getPicUrl());
+                if (messageAttachment.getMediaId() != null) {
+                    criteria.andMediaIdEqualTo(messageAttachment.getMediaId());
+                }
+                if (messageAttachment.getMediaId() != null) {
+                    criteria.andPicUrlEqualTo(messageAttachment.getPicUrl());
+                }
             }
             if (messageAttachment.getType().equals(MessageAttachmentTypeEnum.MINI_PROGRAM.getCode())) {
-                example.createCriteria()
-                        .andTypeEqualTo(messageAttachment.getType())
-                        .andAppidEqualTo(messageAttachment.getAppid())
-                        .andMiniprogramVideoIdEqualTo(messageAttachment.getMiniprogramVideoId())
-                        .andStaffIdEqualTo(messageAttachment.getStaffId());
+                if (messageAttachment.getAppid() != null) {
+                    criteria.andAppidEqualTo(messageAttachment.getAppid());
+                }
+                if (messageAttachment.getMiniprogramVideoId() != null) {
+                    criteria.andMiniprogramVideoIdEqualTo(messageAttachment.getMiniprogramVideoId());
+                }
+                if (messageAttachment.getStaffId() != null) {
+                    criteria.andStaffIdEqualTo(messageAttachment.getStaffId());
+                }
             }
 
             if (messageAttachment.getType().equals(MessageAttachmentTypeEnum.LINK.getCode())) {
-                example.createCriteria()
-                        .andTypeEqualTo(messageAttachment.getType())
-                        .andTitleEqualTo(messageAttachment.getTitle())
-                        .andPicUrlEqualTo(messageAttachment.getPicUrl())
-                        .andDescEqualTo(messageAttachment.getDesc())
-                        .andUrlEqualTo(messageAttachment.getUrl());
+                if (messageAttachment.getTitle() != null) {
+                    criteria.andTitleEqualTo(messageAttachment.getTitle());
+                }
+                if (messageAttachment.getPicUrl() != null) {
+                    criteria.andPicUrlEqualTo(messageAttachment.getPicUrl());
+                }
+                if (messageAttachment.getDesc() != null) {
+                    criteria.andDescEqualTo(messageAttachment.getDesc());
+                }
+                if (messageAttachment.getUrl() != null) {
+                    criteria.andUrlEqualTo(messageAttachment.getUrl());
+                }
             }
 
             List<MessageAttachment> messageAttachments = messageAttachmentMapper.selectByExample(example);