diff --git a/linkwe-admin/src/main/java/com/linkwechat/web/controller/wecom/WeMaterialController.java b/linkwe-admin/src/main/java/com/linkwechat/web/controller/wecom/WeMaterialController.java index 85bfdf2e39253fe95c54d7c153d89bf90fd3796e..443666a0b0630f4e8cfb111531e697533ebb1dc1 100644 --- a/linkwe-admin/src/main/java/com/linkwechat/web/controller/wecom/WeMaterialController.java +++ b/linkwe-admin/src/main/java/com/linkwechat/web/controller/wecom/WeMaterialController.java @@ -8,6 +8,7 @@ import com.linkwechat.common.enums.BusinessType; import com.linkwechat.common.enums.MediaType; import com.linkwechat.wecom.domain.WeMaterial; import com.linkwechat.wecom.domain.dto.ResetCategoryDto; +import com.linkwechat.wecom.domain.dto.TemporaryMaterialDto; import com.linkwechat.wecom.domain.dto.WeMediaDto; import com.linkwechat.wecom.domain.vo.WeMaterialFileVO; import com.linkwechat.wecom.service.IWeMaterialService; @@ -135,10 +136,12 @@ public class WeMaterialController extends BaseController { //@PreAuthorize("@ss.hasPermi('wechat:material:temporaryMaterialMediaId')") @Log(title = "获取素材media_id", businessType = BusinessType.OTHER) - @GetMapping("/temporaryMaterialMediaId") + @PostMapping("/temporaryMaterialMediaId") @ApiOperation("获取素材media_id") - public AjaxResult temporaryMaterialMediaId(@RequestParam(value = "url") String url, @RequestParam(value = "type") String type,@RequestParam(value = "name") String name){ - WeMediaDto weMediaDto = materialService.uploadTemporaryMaterial(url, type,name); + public AjaxResult temporaryMaterialMediaId(@RequestBody TemporaryMaterialDto temporaryMaterialDto){ + WeMediaDto weMediaDto = materialService.uploadTemporaryMaterial(temporaryMaterialDto.getUrl(), + temporaryMaterialDto.getType() + ,temporaryMaterialDto.getName()); return AjaxResult.success(weMediaDto); } diff --git a/linkwe-common/src/main/java/com/linkwechat/common/core/domain/ConversationArchiveQuery.java b/linkwe-common/src/main/java/com/linkwechat/common/core/domain/ConversationArchiveQuery.java index af9e1d6c72a338ac7aaa3ae37bd06924b6039b4e..ce93b2219612d92c63a17b6c7d9c4e234f31942d 100644 --- a/linkwe-common/src/main/java/com/linkwechat/common/core/domain/ConversationArchiveQuery.java +++ b/linkwe-common/src/main/java/com/linkwechat/common/core/domain/ConversationArchiveQuery.java @@ -10,26 +10,26 @@ import lombok.Data; @Data public class ConversationArchiveQuery extends BaseEntity { /** 发送人Id */ - private String fromId; + private String fromId=""; /** 成员名称 */ - private String userName; + private String userName=""; /** 接收人Id */ - private String receiveId; + private String receiveId=""; /** 客户姓名 */ - private String customerName; + private String customerName=""; /** 群聊Id */ - private String roomId; + private String roomId=""; /** 类型 */ - private String msgType; + private String msgType=""; /** 关键词 **/ - private String keyWord; + private String keyWord=""; /** 消息动作 */ - private String action; + private String action=""; } diff --git a/linkwe-framework/src/main/java/com/linkwechat/framework/config/SecurityConfig.java b/linkwe-framework/src/main/java/com/linkwechat/framework/config/SecurityConfig.java index 1c646db44ce7e75960a405694a3e20e6463fa0d0..e87c3296687e7e0aa70844d762a15874a96a6a70 100644 --- a/linkwe-framework/src/main/java/com/linkwechat/framework/config/SecurityConfig.java +++ b/linkwe-framework/src/main/java/com/linkwechat/framework/config/SecurityConfig.java @@ -121,8 +121,8 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter { .antMatchers("/wecom/ticket/**").anonymous() .antMatchers("/wecom/user/getUserInfo").anonymous() - // .antMatchers("/common/uploadFile2Cos").anonymous() - .antMatchers("/wecom/material/temporaryMaterialMediaId").anonymous() + // .antMatchers("/common/uploadFile2Cos").anonymous() +// .antMatchers("/wecom/material/temporaryMaterialMediaId").anonymous() .antMatchers("/wecom/portrait/**").anonymous() .antMatchers("/wecom/fission/poster", "/wecom/fission/*/progress/*").anonymous() // 获取实际群活码和社群运营H5页面不需要登录 diff --git a/linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/dto/TemporaryMaterialDto.java b/linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/dto/TemporaryMaterialDto.java new file mode 100644 index 0000000000000000000000000000000000000000..7ad14ab7d7c6b9c4d65e2e98f81b632068ce0f9a --- /dev/null +++ b/linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/dto/TemporaryMaterialDto.java @@ -0,0 +1,15 @@ +package com.linkwechat.wecom.domain.dto; + +import lombok.Data; + +/** + * @description: 群发参数相关 + * @author: HaoN + * @create: 2021-03-31 17:20 + **/ +@Data +public class TemporaryMaterialDto { + private String url; + private String type; + private String name; +} diff --git a/linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/vo/WeMakeCustomerTag.java b/linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/vo/WeMakeCustomerTag.java index 0f91e02c802715525e63330405169e689e8c2697..ec0d010171b31fa9af629040d8a959c944e49ad3 100644 --- a/linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/vo/WeMakeCustomerTag.java +++ b/linkwe-wecom/src/main/java/com/linkwechat/wecom/domain/vo/WeMakeCustomerTag.java @@ -1,7 +1,10 @@ package com.linkwechat.wecom.domain.vo; import com.linkwechat.wecom.domain.WeTag; +import lombok.AllArgsConstructor; +import lombok.Builder; import lombok.Data; +import lombok.NoArgsConstructor; import java.util.List; @@ -11,6 +14,9 @@ import java.util.List; * @create: 2020-10-24 20:09 **/ @Data +@Builder +@AllArgsConstructor +@NoArgsConstructor public class WeMakeCustomerTag { private String externalUserid; private List addTag; diff --git a/linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeCustomerMessagePushServiceImpl.java b/linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeCustomerMessagePushServiceImpl.java index 8d5c31c38e35e31d30e051f07671e0ef55f689ce..6436142b0e3227df1505cbd8f5e11524931b9a66 100644 --- a/linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeCustomerMessagePushServiceImpl.java +++ b/linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeCustomerMessagePushServiceImpl.java @@ -1,6 +1,7 @@ package com.linkwechat.wecom.service.impl; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.collect.Lists; @@ -70,14 +71,20 @@ public class WeCustomerMessagePushServiceImpl implements IWeCustomerMessagePushS private WeCustomerMessageTimeTaskMapper customerMessageTimeTaskMapper; @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public void addWeCustomerMessagePush(CustomerMessagePushDto customerMessagePushDto) throws JsonProcessingException, ParseException { - if ((null != customerMessagePushDto.getSettingTime() && !"".equals(customerMessagePushDto.getSettingTime())) - && DateUtils.diffTime(new Date(), DateUtil.parse(customerMessagePushDto.getSettingTime(), "yyyy-MM-dd HH:mm:ss")) > 0) { - throw new WeComException("发送时间不能小于当前时间"); +// if ((null != customerMessagePushDto.getSettingTime() && !"".equals(customerMessagePushDto.getSettingTime())) +// && DateUtils.diffTime(new Date(), DateUtil.parse(customerMessagePushDto.getSettingTime(), "yyyy-MM-dd HH:mm")) > 0) { +// throw new WeComException("发送时间不能小于当前时间"); +// } + + + if(StrUtil.isBlank(customerMessagePushDto.getSettingTime())){ + throw new WeComException("发送时间不能为空"); } + List customers = Lists.newArrayList(); List groups = new ArrayList<>(); // 0 发给客户 diff --git a/linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeCustomerMessageServiceImpl.java b/linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeCustomerMessageServiceImpl.java index d0f047a4ec6e3a131b643fa1ce63e51e2502b505..81aa74771cd82598777c0e58fcb37fd314cffe70 100644 --- a/linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeCustomerMessageServiceImpl.java +++ b/linkwe-wecom/src/main/java/com/linkwechat/wecom/service/impl/WeCustomerMessageServiceImpl.java @@ -148,7 +148,8 @@ public class WeCustomerMessageServiceImpl extends ServiceImpl tagRels = new ArrayList<>(); List cutomerTagEdits = new ArrayList<>(); + flowerCustomerRels.stream().forEach(customer -> { CutomerTagEdit cutomerTagEdit = CutomerTagEdit.builder() .userid(customer.getUserId()) .external_userid(customer.getExternalUserid()) .build(); + List tags = new ArrayList<>(); addTags.stream().forEach(tag -> { tags.add(tag.getTagId());