平滑迁移dubbo服务 修改部分配置参数

master
bynt 2 months ago
parent ea2b09c077
commit 349b894466

@ -31,6 +31,12 @@
<dependency>
<groupId>com.alibaba.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
<exclusions>
<exclusion>
<artifactId>jsr311-api</artifactId>
<groupId>javax.ws.rs</groupId>
</exclusion>
</exclusions>
</dependency>
<!-- https://mvnrepository.com/artifact/com.alibaba.nacos/nacos-client -->
@ -55,6 +61,14 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
</exclusion>
<exclusion>
<artifactId>log4j-to-slf4j</artifactId>
<groupId>org.apache.logging.log4j</groupId>
</exclusion>
<exclusion>
<artifactId>logback-classic</artifactId>
<groupId>ch.qos.logback</groupId>
</exclusion>
</exclusions>
</dependency>
@ -85,6 +99,7 @@
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.20</version>
</dependency>
<!-- 整合mybatis -->
@ -282,6 +297,14 @@
<artifactId>hutool-all</artifactId>
<groupId>cn.hutool</groupId>
</exclusion>
<exclusion>
<artifactId>lombok</artifactId>
<groupId>org.projectlombok</groupId>
</exclusion>
<exclusion>
<artifactId>fastjson</artifactId>
<groupId>com.alibaba</groupId>
</exclusion>
</exclusions>
</dependency>
@ -321,6 +344,14 @@
<artifactId>xxl-job-core</artifactId>
<groupId>com.xuxueli</groupId>
</exclusion>
<exclusion>
<artifactId>lombok</artifactId>
<groupId>org.projectlombok</groupId>
</exclusion>
<exclusion>
<artifactId>fastjson</artifactId>
<groupId>com.alibaba</groupId>
</exclusion>
</exclusions>
</dependency>
<!-- 中文转拼音 -->
@ -362,6 +393,55 @@
<artifactId>common</artifactId>
<version>0.0.1</version>
</dependency>
<!-- REST support dependencies -->
<dependency>
<groupId>org.apache.dubbo</groupId>
<artifactId>dubbo-rpc-rest</artifactId>
<version>2.7.3</version>
<exclusions>
<exclusion>
<artifactId>commons-logging</artifactId>
<groupId>commons-logging</groupId>
</exclusion>
<exclusion>
<artifactId>fastjson</artifactId>
<groupId>com.alibaba</groupId>
</exclusion>
<exclusion>
<artifactId>javassist</artifactId>
<groupId>org.javassist</groupId>
</exclusion>
<exclusion>
<artifactId>objenesis</artifactId>
<groupId>org.objenesis</groupId>
</exclusion>
<exclusion>
<artifactId>kryo</artifactId>
<groupId>com.esotericsoftware</groupId>
</exclusion>
<exclusion>
<artifactId>netty-all</artifactId>
<groupId>io.netty</groupId>
</exclusion>
<exclusion>
<artifactId>resteasy-jaxrs</artifactId>
<groupId>org.jboss.resteasy</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.jboss.resteasy</groupId>
<artifactId>resteasy-jaxrs</artifactId>
<version>3.6.3.Final</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
@ -480,7 +560,7 @@
<activatedProperties>local</activatedProperties>
<addr>172.18.0.228:8848</addr>
<namespace>d5123679-020d-46d6-8ac8-f17bdd08e8e2</namespace>
<logfile></logfile>
<logfile>classpath:logback-spring.xml</logfile>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
@ -488,12 +568,12 @@
</profile>
<profile>
<id>inner</id>
<id>dev</id>
<properties>
<activatedProperties>inner</activatedProperties>
<addr>172.18.0.228:8848</addr>
<namespace>d5123679-020d-46d6-8ac8-f17bdd08e8e2</namespace>
<logfile></logfile>
<activatedProperties>dev</activatedProperties>
<addr>127.0.0.1:8848</addr>
<namespace>981765f6-2a67-4031-8aac-2f78b6e6a559</namespace>
<logfile>classpath:logback-spring.xml</logfile>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
@ -506,7 +586,7 @@
<activatedProperties>prod</activatedProperties>
<addr>172.18.0.228:8848</addr>
<namespace>d5123679-020d-46d6-8ac8-f17bdd08e8e2</namespace>
<logfile>classpath:logback-client.xml</logfile>
<logfile>classpath:logback-spring.xml</logfile>
</properties>
</profile>
@ -516,7 +596,7 @@
<activatedProperties>prod_wss</activatedProperties>
<addr>172.18.0.228:8848</addr>
<namespace>d5123679-020d-46d6-8ac8-f17bdd08e8e2</namespace>
<logfile>classpath:logback-client.xml</logfile>
<logfile>classpath:logback-spring.xml</logfile>
</properties>
</profile>

@ -32,7 +32,7 @@ public class CallbackController {
@Resource
private PcWxCallbackHelper pcWxCallbackHelper;
@PostMapping(value = {"/wxCallback/wx", "/api/wxCallback"})
@PostMapping(value = {"/wxCallback/wx", "/api/wechat/callback"})
public ServerResponse<?> handlerWxCallback(@RequestBody String body) {
CallbackInfo callbackInfo = JSONObject.parseObject(body, CallbackInfo.class);
wxCallbackHelper.dispatchCallBack(callbackInfo);

@ -1,16 +1,15 @@
package com.eco.sc.customer.business.controller.pc;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.sc.customer.business.pojo.bo.CustomerResourceBo;
import com.eco.sc.customer.business.service.impl.*;
import com.eco.sc.customer.common.ResultInfo;
import com.eco.common.base.enums.WxContentTypeEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
@ -38,7 +37,7 @@ public class CommunityResourceController {
/**
*
*/
@RequestMapping(value = "/listByType", method = RequestMethod.POST)
@PostMapping(value = "/listByType")
public ResultInfo resource(@RequestBody PageParam<CustomerResourceBo> pageParam) {
CustomerResourceBo entity = pageParam.getEntity();
@ -47,19 +46,7 @@ public class CommunityResourceController {
if (communityCustomerInfo == null) {
return ResultInfo.fail("客服不存在!");
}
if (entity.getContentTypeEnum().getNumber() == WxContentTypeEnum.Text.getNumber()) {
return ResultInfo.success(communityTextResourceService.search(pageParam, communityCustomerInfo));
} else if (entity.getContentTypeEnum().getNumber() == WxContentTypeEnum.Picture.getNumber()
|| entity.getContentTypeEnum().getNumber() == WxContentTypeEnum.Video.getNumber()
|| entity.getContentTypeEnum().getNumber() == WxContentTypeEnum.Voice.getNumber()) {
return ResultInfo.success(communityStaticResourceService.search(pageParam, entity.getContentTypeEnum(), communityCustomerInfo));
} else if (entity.getContentTypeEnum().getNumber() == WxContentTypeEnum.Link.getNumber()) {
return ResultInfo.success(communityCardResourceService.search(pageParam, communityCustomerInfo));
} else if (entity.getContentTypeEnum().getNumber() == WxContentTypeEnum.WeApp.getNumber()) {
return ResultInfo.success(communityXcxResourceService.search(pageParam, communityCustomerInfo));
}
return ResultInfo.fail("未知素材类型");
return ResultInfo.success(communityTextResourceService.search(pageParam, communityCustomerInfo));
}
}

@ -1,14 +1,9 @@
package com.eco.sc.customer.business.controller.pc;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotInfo;
import com.eco.sc.customer.business.service.impl.CommunityRobotInfoServiceImpl;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**

@ -5,16 +5,19 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.eco.common.base.dto.SupportCustomerDto;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.base.vo.ConversationVo;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.common.commonbase.utils.CollectionUtil;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.fission.common.pojo.vo.CustomerGroupVo;
import com.eco.fission.common.pojo.vo.CustomerSysWordsRepVo;
import com.eco.sc.customer.business.helper.WebHelper;
import com.eco.sc.customer.business.pojo.bo.AddGroupBo;
import com.eco.sc.customer.business.pojo.bo.AddToWhitelistBo;
import com.eco.sc.customer.business.pojo.dto.*;
import com.eco.sc.customer.business.pojo.dto.AddFriendDto;
import com.eco.sc.customer.business.pojo.dto.AddTalkDto;
import com.eco.sc.customer.business.pojo.dto.DeleteTalkDto;
import com.eco.sc.customer.business.pojo.dto.PrivateMsgDto;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotCustomer;
import com.eco.sc.customer.business.pojo.entity.TblWxAddFriendLog;
import com.eco.sc.customer.business.pojo.entity.TblWxAddFriendRequestContentLog;

@ -2,18 +2,13 @@ package com.eco.sc.customer.business.controller.pc;
import cn.hutool.core.lang.Validator;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSON;
import com.eco.common.commonbase.entity.dto.ServerResponse;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.fission.common.param.enums.WxAddTypeEnum;
import com.eco.fission.common.pojo.bo.CustomerAddFriendTaskBo;
import com.eco.fission.common.rpc.RpcCustomerAddFriendService;
import com.eco.sc.customer.business.pojo.bo.AddFriendInfoDto;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxInfo;
import com.eco.sc.customer.business.service.impl.CommunityRobotWxInfoServiceImpl;
import com.eco.sc.customer.common.ResultInfo;
import com.eco.sc.customer.framework.exception.ServiceException;
import org.apache.dubbo.config.annotation.Reference;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

@ -2,13 +2,14 @@ package com.eco.sc.customer.business.helper;
import cn.hutool.core.util.IdUtil;
import com.alibaba.fastjson.JSONObject;
import com.eco.common.commonbase.utils.CollectionUtil;
import com.eco.common.base.dto.SupportCustomerDto;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.commonbase.utils.CollectionUtil;
import com.eco.common.rpc.NettyConnectionService;
import com.eco.fission.common.pojo.dto.task.CustomerDto;
import com.eco.fission.common.pojo.dto.task.DeviceDto;
import com.eco.sc.customer.business.pojo.dto.PrivateMsgDto;
import com.eco.common.base.dto.SupportCustomerDto;
import com.eco.sc.customer.business.pojo.entity.TblCustomerConfig;
import com.eco.sc.customer.business.pojo.entity.TblWxConversation;
import com.eco.sc.customer.business.pojo.entity.TblWxMessage;
@ -25,7 +26,6 @@ import com.eco.sc.customer.business.service.impl.CommunityUpdateLogServiceImpl;
import com.eco.sc.customer.common.ResultInfo;
import com.eco.sc.customer.common.cache.CaffeineCacheHelper;
import com.eco.sc.customer.common.constant.enums.PushTypeEnum;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.sc.customer.common.constant.enums.WxEnumMsgType;
import com.eco.sc.customer.common.utils.Base64Util;
import com.eco.sc.customer.common.utils.ObjConvertUtils;

@ -43,11 +43,11 @@ public class TokenInterceptor implements HandlerInterceptor {
private static final List<String> URL_WHITE = Arrays.asList(
"/fileUpload2020",
"/wxCallback/wx",
"/api/wxCallback",
"/wxCallback/pcwx",
"/wxCallback/qw",
"/wxCallback/phone",
"/wxCallback/phoneQw",
"/api/wechat/callback",
"/wxCallback/requestFriend",
"/wxCallback/tgRequestFriend",
"/community-docking-config/bindUrl",
@ -68,6 +68,7 @@ public class TokenInterceptor implements HandlerInterceptor {
if (URL_WHITE.contains(string)) {
return true;
}
if (StringUtils.isEmpty(token)) {
fillTokenUnauthorizedResponse(response);
return false;

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityCustomerDataStatistics;
import org.springframework.stereotype.Repository;
/**
*

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityCustomerGroupInviteLog;
import org.springframework.stereotype.Repository;
/**
*

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityCustomerGroup;
import org.springframework.stereotype.Repository;
/**
*

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityCustomerWords;
import org.springframework.stereotype.Repository;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityProjectVersion;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityProjectVersion;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotBlacklist;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotBlacklist;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotCustomer;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotCustomer;
/**
* Mapper

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotDataStatistics;
import org.springframework.stereotype.Repository;
/**
*

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotInfo;
import org.springframework.stereotype.Repository;
/**
*

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotNoticeLog;
import org.springframework.stereotype.Repository;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotSupportConfig;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotSupportConfig;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxGroup;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxGroup;
/**
* Mapper

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxGroupMember;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxGroupMember;
/**
* Mapper

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxInfo;
/**
*

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxLabelList;
import org.springframework.stereotype.Repository;
/**
*

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxLabel;
import org.springframework.stereotype.Repository;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityStaticResource;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityStaticResource;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityTextResource;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.StaticResource;
/**
*
@ -13,6 +12,6 @@ import org.springframework.stereotype.Repository;
* @since 2023-02-20
*/
public interface CommunityTextResourceMapper extends BaseMapper<CommunityTextResource> {
public interface CommunityTextResourceMapper extends BaseMapper<StaticResource> {
}

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityUpdateLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.CommunityUpdateLog;
/**
*

@ -2,7 +2,6 @@ package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityXcxAccount;
import org.springframework.stereotype.Repository;
/**
*

@ -1,7 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.CommunityXcxResource;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityXcxResource;
import org.springframework.stereotype.Repository;
/**

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.TblCustomerConfig;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.TblCustomerConfig;
/**
* Mapper

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.TblCustomerSupport;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.TblCustomerSupport;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.TblShieldUser;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.TblShieldUser;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.TblWxAddFriendLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.TblWxAddFriendLog;
/**
* Mapper

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.TblWxAddFriendRequestContentLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.TblWxAddFriendRequestContentLog;
/**
* Mapper

@ -1,9 +1,8 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.TblWxConversation;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.entity.TblWxConversation;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.Collection;
import java.util.List;

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.TblWxFriendCircleCommentUserList;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.TblWxFriendCircleCommentUserList;
/**
*

@ -1,8 +1,7 @@
package com.eco.sc.customer.business.mapper;
import com.eco.sc.customer.business.pojo.entity.TblWxFriendCircle;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;
import com.eco.sc.customer.business.pojo.entity.TblWxFriendCircle;
/**
*

@ -1,10 +1,9 @@
package com.eco.sc.customer.business.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.eco.sc.customer.business.pojo.dto.RobotCustomerChatCountDto;
import com.eco.sc.customer.business.pojo.entity.TblWxMessage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.Date;
import java.util.List;

@ -12,6 +12,8 @@ public class CustomerResourceBo {
private String kfAccount;
private Integer type;
/**
* {@link WxContentTypeEnum}
*/

@ -15,7 +15,7 @@ import lombok.Setter;
*/
@Setter
@Getter
@TableName(value = "community_customer_group",autoResultMap = true)
@TableName(value = "tb_customer_group",autoResultMap = true)
public class CommunityCustomerGroup extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -16,7 +16,7 @@ import lombok.Setter;
*/
@Setter
@Getter
@TableName(value = "community_customer_group_invite_log",autoResultMap = true)
@TableName(value = "tb_customer_group_invite_log",autoResultMap = true)
public class CommunityCustomerGroupInviteLog extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -1,11 +1,10 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Setter;
import lombok.Getter;
import lombok.EqualsAndHashCode;
import lombok.Setter;
/**
*
@ -17,7 +16,7 @@ import lombok.EqualsAndHashCode;
*/
@Setter
@Getter
@TableName(value = "community_customer_join_robot",autoResultMap = true)
@TableName(value = "tb_customer_join_robot",autoResultMap = true)
public class CommunityCustomerJoinRobot extends BaseEntity {
private static final long serialVersionUID = 1L;
@ -38,7 +37,7 @@ public class CommunityCustomerJoinRobot extends BaseEntity {
* ID
*/
@TableField("robot_id")
private Integer robotId;
private Long robotId;
/**
* ID

@ -1,11 +1,10 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Setter;
import lombok.Getter;
import lombok.EqualsAndHashCode;
import lombok.Setter;
/**
*
@ -17,7 +16,7 @@ import lombok.EqualsAndHashCode;
*/
@Setter
@Getter
@TableName(value = "community_customer_msg_count_log",autoResultMap = true)
@TableName(value = "tb_customer_msg_count_log",autoResultMap = true)
public class CommunityCustomerMsgCountLog extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -15,7 +15,7 @@ import lombok.Setter;
*/
@Setter
@Getter
@TableName(value = "community_customer_visible_range", autoResultMap = true)
@TableName(value = "tb_customer_visible_range", autoResultMap = true)
public class CommunityCustomerVisibleRange extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -16,7 +16,7 @@ import lombok.Setter;
*/
@Setter
@Getter
@TableName(value = "community_customer_words",autoResultMap = true)
@TableName(value = "tb_customer_words",autoResultMap = true)
public class CommunityCustomerWords extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -3,11 +3,7 @@ package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.*;
import java.util.Date;
@ -23,7 +19,7 @@ import java.util.Date;
@Builder
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "community_project_version", autoResultMap = true)
@TableName(value = "tb_project_version", autoResultMap = true)
public class CommunityProjectVersion extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -1,16 +1,11 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.Getter;
import lombok.EqualsAndHashCode;
import lombok.*;
import java.time.LocalDateTime;
/**
*

@ -17,7 +17,7 @@ import java.util.Date;
*/
@Setter
@Getter
@TableName(value = "community_robot_customer", autoResultMap = true)
@TableName(value = "tb_robot_customer", autoResultMap = true)
public class CommunityRobotCustomer extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -20,7 +20,7 @@ import java.util.List;
*/
@Setter
@Getter
@TableName(value = "community_robot_support_config",autoResultMap = true)
@TableName(value = "tb_robot_support_config",autoResultMap = true)
public class CommunityRobotSupportConfig extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -2,7 +2,7 @@ package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.sc.customer.business.pojo.model.BaseEntity;
import lombok.Getter;
import lombok.Setter;
@ -18,7 +18,7 @@ import java.util.Date;
*/
@Setter
@Getter
@TableName(value = "community_robot_wx_group", autoResultMap = true)
@TableName(value = "tb_wechat_group", autoResultMap = true)
public class CommunityRobotWxGroup extends BaseEntity {
private static final long serialVersionUID = 1L;
@ -119,11 +119,7 @@ public class CommunityRobotWxGroup extends BaseEntity {
@TableField("chat_room_type")
private Integer chatRoomType;
/**
* ID
*/
@TableField("corp_id")
private String corpId;
/**
*

@ -17,7 +17,7 @@ import java.time.LocalDateTime;
*/
@Setter
@Getter
@TableName(value = "community_robot_wx_group_member", autoResultMap = true)
@TableName(value = "tb_wechat_group_member", autoResultMap = true)
public class CommunityRobotWxGroupMember extends BaseEntity {
private static final long serialVersionUID = 1L;
@ -190,5 +190,8 @@ public class CommunityRobotWxGroupMember extends BaseEntity {
@TableField("wx_identity")
private String wxIdentity;
@TableField("group_id")
private Long groupId;
}

@ -2,15 +2,14 @@ package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.sc.customer.business.pojo.model.BaseEntity;
import lombok.*;
import java.time.LocalDateTime;
import java.util.List;
/**
*
*
* </p>
*
@ -22,7 +21,7 @@ import java.util.List;
@Builder
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "community_robot_wx_info",autoResultMap = true)
@TableName(value = "tb_wechat_account", autoResultMap = true)
public class CommunityRobotWxInfo extends BaseEntity {
private static final long serialVersionUID = 1L;
@ -48,8 +47,8 @@ public class CommunityRobotWxInfo extends BaseEntity {
/**
*
*/
@TableField("first_login_time")
private LocalDateTime firstLoginTime;
@TableField("login_date")
private LocalDateTime loginDate;
/**
* id
@ -60,86 +59,27 @@ public class CommunityRobotWxInfo extends BaseEntity {
/**
*
*/
@TableField("wx_name")
private String wxName;
@TableField("we_chat_no")
private String weChatNo;
/**
*
*/
@TableField("wx_nick")
private String wxNick;
@TableField("nickname")
private String nickname;
/**
*
*/
@TableField("wx_img")
private String wxImg;
@TableField("header_url")
private String headerUrl;
/**
*
*/
@TableField("wx_sign")
@TableField("signature")
private String wxSign;
/**
* url
*/
@TableField("moments_img")
private String momentsImg;
/**
*
*/
@TableField("moments_auth")
private String momentsAuth;
/**
*
*/
@TableField("is_add_verify")
private Boolean isAddVerify;
/**
*
*/
@TableField("is_read_ten_moments")
private Boolean isReadTenMoments;
/**
*
*/
@TableField("add_types")
private String addTypes;
/**
*
*/
@TableField("login_data")
private String loginData;
/**
* url
*/
@TableField("auth_url")
private String authUrl;
/**
* sessionId
*/
@TableField("login_session_id")
private String loginSessionId;
/**
*
*/
@TableField("wx_version")
private String wxVersion;
/**
*
*/
@TableField("robot_friend_num")
private Integer robotFriendNum;
/**
* ID
@ -147,19 +87,12 @@ public class CommunityRobotWxInfo extends BaseEntity {
@TableField("customer_id")
private Integer customerId;
/**
* IP
*/
@TableField("login_host")
private String loginHost;
/**
*
* 线
*/
@Deprecated
@TableField("wx_login_phone_tag")
Boolean wxLoginPhoneTag;
@TableField("status")
private Integer status;
/**
* 线
*/
@ -185,6 +118,7 @@ public class CommunityRobotWxInfo extends BaseEntity {
@TableField(exist = false)
private List<String> subCustomerAccount;
/**
*
*

@ -17,7 +17,7 @@ import lombok.Setter;
*/
@Setter
@Getter
@TableName(value = "community_robot_wx_label",autoResultMap = true)
@TableName(value = "tb_robot_wx_label",autoResultMap = true)
public class CommunityRobotWxLabel extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -1,11 +1,10 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Setter;
import lombok.Getter;
import lombok.EqualsAndHashCode;
import lombok.Setter;
/**
*
@ -17,7 +16,7 @@ import lombok.EqualsAndHashCode;
*/
@Setter
@Getter
@TableName(value = "community_robot_wx_label_list",autoResultMap = true)
@TableName(value = "tb_robot_wx_label_list",autoResultMap = true)
public class CommunityRobotWxLabelList extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -1,15 +1,9 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.Getter;
import lombok.EqualsAndHashCode;
import lombok.*;
/**
*

@ -1,57 +0,0 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.Setter;
import lombok.Getter;
import lombok.EqualsAndHashCode;
/**
*
*
* </p>
*
* @author hans
* @since 2023-02-20
*/
@AllArgsConstructor
@NoArgsConstructor
@Builder
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "community_text_resource",autoResultMap = true)
public class CommunityTextResource extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableField("user_id")
private Integer userId;
/**
*
*/
@TableField("title")
private String title;
/**
*
*/
@TableField("content")
private String content;
/**
*
*/
@TableField("service_label")
private String serviceLabel;
}

@ -1,14 +1,12 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import java.time.LocalDateTime;
import java.util.Date;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Setter;
import lombok.Getter;
import lombok.EqualsAndHashCode;
import lombok.Setter;
import java.util.Date;
/**
*
@ -20,7 +18,7 @@ import lombok.EqualsAndHashCode;
*/
@Setter
@Getter
@TableName(value = "community_update_log",autoResultMap = true)
@TableName(value = "tb_update_log",autoResultMap = true)
public class CommunityUpdateLog extends BaseEntity {
private static final long serialVersionUID = 1L;

@ -1,14 +1,11 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.eco.fission.common.param.enums.ResourceLabelEnum;
import lombok.Setter;
import lombok.Getter;
import lombok.EqualsAndHashCode;
import lombok.Setter;
/**
*

@ -0,0 +1,87 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.sc.customer.common.converter.JsonStringArrayTypeHandler;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import java.util.List;
/**
*
*
* </p>
*
* @author hans
* @since 2023-02-20
*/
@AllArgsConstructor
@NoArgsConstructor
@Data
@EqualsAndHashCode(callSuper = false)
@TableName(value = "tb_static_resource",autoResultMap = true)
public class StaticResource extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* id
*/
@TableField("user_id")
private Long userId;
/**
*
*/
@TableField("title")
private String title;
/**
*
*/
@TableField("type")
private Integer type;
/**
*
*/
@TableField("url")
private String url;
/**
*
*/
@TableField("file_url")
private String fileUrl;
/**
*
*/
@TableField("status")
private Integer status;
/**
*
*/
@TableField("remark")
private String remark;
/**
*
*/
@TableField("content")
private String content;
/**
*
*/
@TableField(value = "service_label", typeHandler = JsonStringArrayTypeHandler.class)
private List<String> serviceLabel;
}

@ -1,10 +1,10 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Setter;
import lombok.Getter;
import lombok.Setter;
/**
*

@ -1,11 +1,11 @@
package com.eco.sc.customer.business.pojo.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.base.dto.SupportCustomerDto;
import lombok.Setter;
import com.eco.common.commonbase.mybatis.BaseEntity;
import lombok.Getter;
import lombok.Setter;
/**
*

@ -5,8 +5,8 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.commonbase.mybatis.BaseEntity;
import lombok.Getter;
import lombok.Setter;

@ -0,0 +1,47 @@
package com.eco.sc.customer.business.pojo.model;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.eco.common.commonbase.utils.serializer.DateToLongSerializer;
import com.eco.common.commonbase.valid.All;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import lombok.Getter;
import lombok.Setter;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
/**
* @author Enzo
* @date : 2024/7/15
*/
@Getter
@Setter
public abstract class BaseEntity implements Serializable {
/**
* id
*/
@NotNull(message = "用户唯一标识不能为空", groups = {All.Update.class})
@TableId(type = IdType.AUTO)
Long id;
/**
*
*/
@TableField(fill = FieldFill.INSERT_UPDATE, update = "now()")
@JsonSerialize(using = DateToLongSerializer.class)
Date updateTime;
/**
*
*/
@TableField(fill = FieldFill.INSERT)
@JsonSerialize(using = DateToLongSerializer.class)
Date createTime;
}

@ -0,0 +1,334 @@
package com.eco.sc.customer.business.pojo.model;
import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.metadata.TableFieldInfo;
import com.baomidou.mybatisplus.core.metadata.TableInfo;
import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.eco.common.commonbase.mybatis.*;
import com.eco.common.commonbase.mybatis.join.JoinLambdaQueryWrapper;
import com.eco.common.commonbase.utils.CollectionUtil;
import com.eco.common.commonbase.utils.ReflectUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Param;
import org.springframework.util.StringUtils;
import java.io.Serializable;
import java.lang.reflect.Field;
import java.lang.reflect.Type;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.List;
/**
* @author Enzo
* @date : 2024/7/15
*/
@Slf4j
public class BaseServiceImpl<M extends BaseMapper<T>, T extends BaseEntity> extends ServiceImpl<M, T> {
@Override
protected Class<T> currentModelClass() {
Type[] genericParamClassArray = ReflectUtil.getGenericParamClassArray(getClass());
if (genericParamClassArray == null || genericParamClassArray.length < 2) {
log.warn("Warn: {} not set the actual class on superclass generic parameter", getClass().getSimpleName());
return null;
}
return (Class<T>) genericParamClassArray[1];
}
@Override
protected Class<T> currentMapperClass() {
Type[] genericParamClassArray = ReflectUtil.getGenericParamClassArray(getClass());
if (genericParamClassArray == null || genericParamClassArray.length < 2) {
log.warn("Warn: {} not set the actual class on superMapperClass generic parameter", getClass().getSimpleName());
return null;
}
return (Class<T>) genericParamClassArray[0];
}
/**
* eq
*/
public List<T> listByTargetField(SFunction<T, ?> fieldFunc, Object value) {
LambdaQueryWrapper<T> lambdaQuery = getLambdaQuery();
lambdaQuery.eq(fieldFunc, value);
return baseMapper.selectList(lambdaQuery);
}
/**
* eq
*/
public List<T> listByTargetFieldIn(SFunction<T, ?> fieldFunc, Collection<?> valueArray) {
LambdaQueryWrapper<T> lambdaQuery = getLambdaQuery();
lambdaQuery.in(fieldFunc, valueArray);
return baseMapper.selectList(lambdaQuery);
}
public LambdaQueryWrapper<T> getLambdaQuery() {
return (LambdaQueryWrapper<T>) Wrappers.lambdaQuery(super.entityClass);
}
public LambdaUpdateWrapper<T> getLambdaUpdate() {
LambdaUpdateWrapper<T> lambdaUpdate = (LambdaUpdateWrapper<T>) Wrappers.lambdaUpdate(entityClass);
lambdaUpdate.set(T::getUpdateTime, new Date());
return lambdaUpdate;
}
@Override
public LambdaUpdateChainWrapper<T> lambdaUpdate() {
LambdaUpdateChainWrapper<T> lambdaUpdate = super.lambdaUpdate();
lambdaUpdate.set(T::getUpdateTime, new Date());
return lambdaUpdate;
}
public MyLambdaUpdateWrapper<T> getMyLambdaUpdate() {
MyLambdaUpdateWrapper<T> myLambdaUpdateWrapper = new MyLambdaUpdateWrapper(entityClass);
myLambdaUpdateWrapper.set(T::getUpdateTime, new Date());
return myLambdaUpdateWrapper;
}
public MyLambdaQueryWrapper<T> getMyLambdaQuery() {
return new MyLambdaQueryWrapper(entityClass);
}
public JoinLambdaQueryWrapper<T> joinQueryWrapperForOther(Class<?> queryType) {
return new JoinLambdaQueryWrapper(entityClass, queryType);
}
public JoinLambdaQueryWrapper<T> joinQueryWrapperForTable() {
return new JoinLambdaQueryWrapper(entityClass, null);
}
public <K extends BaseEntity> JoinLambdaQueryWrapper<K> joinQueryWrapperForTable(Class<K> kClass) {
return new JoinLambdaQueryWrapper(kClass, null);
}
/**
*
*
* @param page
* @param queryWrapper
* @param <E>
* @return
*/
protected <E extends IPage<T>> E selectPage(E page, @Param(Constants.WRAPPER) Wrapper<T> queryWrapper) {
if (queryWrapper instanceof AbstractWrapper) {
boolean hasOrder = !StringUtils.isEmpty(queryWrapper.getSqlSegment()) && queryWrapper.getSqlSegment().toUpperCase().contains("ORDER");
if (!hasOrder) {
AbstractWrapper wrapper = (AbstractWrapper) queryWrapper;
if (wrapper instanceof QueryWrapper) {
QueryWrapper<T> lambdaQueryWrapper = (QueryWrapper<T>) wrapper;
lambdaQueryWrapper.orderBy(true, false, "create_time");
}
}
}
return baseMapper.selectPage(page, queryWrapper);
}
@Override
public boolean update(Wrapper<T> updateWrapper) {
// 如果 update_time 没有手动赋值
if (StringUtils.isEmpty(updateWrapper.getSqlSet())) {
return false;
}
if (!updateWrapper.getSqlSet().contains("update_time")) {
if (updateWrapper instanceof LambdaUpdateWrapper) {
LambdaUpdateWrapper<T> lambdaUpdateWrapper = (LambdaUpdateWrapper<T>) updateWrapper;
lambdaUpdateWrapper.set(T::getUpdateTime, new Date());
} else if (updateWrapper instanceof MyLambdaUpdateWrapper) {
MyLambdaUpdateWrapper<T> lambdaUpdateWrapper = (MyLambdaUpdateWrapper<T>) updateWrapper;
lambdaUpdateWrapper.set(T::getUpdateTime, new Date());
}
}
return super.update(null, updateWrapper);
}
@Override
public boolean saveBatch(Collection<T> collection) {
if (CollectionUtil.isEmpty(collection)) {
return false;
}
if (baseMapper instanceof HBaseMapper) {
return ((HBaseMapper<T>) baseMapper).insertBatchSomeColumn(collection) == collection.size();
} else {
return super.saveBatch(collection);
}
}
@Override
public boolean updateBatchById(Collection<T> collection) {
if (CollectionUtil.isEmpty(collection)) {
return false;
}
if (baseMapper instanceof HBaseMapper) {
ArrayList<T> ts = new ArrayList<>(collection);
CollectionUtil.splitList(ts, 100);
return ((HBaseMapper<T>) baseMapper).updateBatchSomeColumn(collection) == collection.size();
} else {
return super.updateBatchById(collection);
}
// return super.updateBatchById(collection);
}
public boolean saveBatchWithInput(Collection<T> collection) {
if (CollectionUtil.isEmpty(collection)) {
return false;
}
if (baseMapper instanceof HBaseMapper) {
return ((HBaseMapper<T>) baseMapper).insertBatchSomeColumnWithInput(collection) == collection.size();
} else {
return false;
}
}
/**
*
*/
public boolean updateNotNull(T entity) {
return update(entity, getLambdaUpdate().eq(BaseEntity::getId, entity.getId()));
}
public T getByEq(SFunction<T, ?> columns, Object value) {
LambdaQueryWrapper<T> lambdaQuery = getLambdaQuery();
return baseMapper.selectOne(lambdaQuery.eq(columns, value).last(" LIMIT 1"));
}
public boolean delByEq(SFunction<T, ?> columns, Object value) {
LambdaQueryWrapper<T> lambdaQuery = getLambdaQuery();
return retBool(baseMapper.delete(lambdaQuery.eq(columns, value)));
}
public boolean delByEqIn(SFunction<T, ?> columns, Collection<?> value) {
LambdaQueryWrapper<T> lambdaQuery = getLambdaQuery();
return retBool(baseMapper.delete(lambdaQuery.in(columns, value)));
}
public List<T> listByEq(SFunction<T, ?> columns, Object value) {
LambdaQueryWrapper<T> lambdaQuery = getLambdaQuery();
return baseMapper.selectList(lambdaQuery.eq(columns, value));
}
public List<T> listByNotEq(SFunction<T, ?> columns, Object value) {
LambdaQueryWrapper<T> lambdaQuery = getLambdaQuery();
return baseMapper.selectList(lambdaQuery.ne(columns, value));
}
/**
*
*/
public boolean existsQuery(LambdaQueryWrapper<T> queryWrapper) {
queryWrapper.last(" limit 1");
return retBool(baseMapper.selectCount(queryWrapper));
}
public boolean existsByEq(SFunction<T, ?> columns, Object value) {
return existsQuery(getLambdaQuery().eq(columns, value));
}
public Integer countByTargetFieldEq(SFunction<T, ?> columns, Object value) {
LambdaQueryWrapper<T> lambdaQuery = getLambdaQuery();
lambdaQuery.eq(columns, value);
return count(lambdaQuery);
}
public boolean updateByFieldEq(T t, SFunction<T, ?> columns, Object value) {
LambdaUpdateWrapper<T> lambdaUpdate = getLambdaUpdate();
lambdaUpdate.eq(columns, value);
return update(t, lambdaUpdate);
}
public boolean updateTargetFieldById(Integer id, SFunction<T, ?> columns, Object value) {
LambdaUpdateWrapper<T> lambdaUpdate = getLambdaUpdate();
lambdaUpdate.set(columns, value);
lambdaUpdate.eq(T::getId, id);
return update(lambdaUpdate);
}
public boolean updateTargetFieldByIds(List<Integer> ids, SFunction<T, ?> columns, Object value) {
LambdaUpdateWrapper<T> lambdaUpdate = getLambdaUpdate();
lambdaUpdate.set(columns, value);
lambdaUpdate.in(T::getId, ids);
return update(lambdaUpdate);
}
public boolean saveOrUpdateNotNull(T entity) {
if (entity.getId() == null) {
return save(entity);
}
return updateNotNull(entity);
}
/**
* {@link com.eco.common.commonbase.mybatis.PageParam#getEntity()}
*/
public PageParam<T> autoSelectPage(PageParam<T> page) {
T entity = page.getEntity();
QueryWrapper<T> query = Wrappers.query(entity);
if (entity != null) {
TableInfo tableInfo = TableInfoHelper.getTableInfo(entity.getClass());
if (tableInfo == null) {
throw new RuntimeException("tableInfo not found");
}
try {
for (TableFieldInfo fieldInfo : tableInfo.getFieldList()) {
String column = fieldInfo.getColumn();
Field field = fieldInfo.getField();
Object value = field.get(entity);
if (value == null) {
continue;
}
query.eq(column, value);
}
} catch (IllegalAccessException e) {
e.printStackTrace();
}
}
return selectPage(page, query);
}
public boolean delById(Serializable id) {
return retBool(baseMapper.deleteById(id));
}
public boolean delByQuery(LambdaQueryWrapper<T> wrapper) {
return retBool(baseMapper.delete(wrapper));
}
public OriginSqlBo.OriginSqlBoBuilder<T> getOriginSqlBuilder() {
return OriginSqlBo.builder();
}
}

@ -1,6 +1,5 @@
package com.eco.sc.customer.business.pojo.vo;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotCustomer;
import com.eco.sc.customer.business.pojo.entity.TblWxAddFriendRequestContentLog;
import lombok.Data;

@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.base.dto.WeChatMessageDto;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.redis.RedisCacheHelper;
import com.eco.sc.customer.business.pojo.bo.HandlerMsgNodeResultBo;
import com.eco.sc.customer.business.pojo.dto.WeChatChatRoomMemberDto;
@ -14,7 +15,6 @@ import com.eco.sc.customer.business.service.msg.HandlerQwMsgNodeService;
import com.eco.sc.customer.business.service.msg.impl.QwMsgNodeService;
import com.eco.sc.customer.common.ToolsHelper;
import com.eco.sc.customer.common.constant.ConstParam;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.sc.customer.common.utils.FileHelper;
import com.eco.sc.customer.helper.callback.core.CacheDataHelper;
import lombok.extern.slf4j.Slf4j;

@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.base.dto.WeChatMessageDto;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.redis.RedisCacheHelper;
import com.eco.fission.common.param.constants.Consts;
import com.eco.fission.common.pojo.dto.task.DeviceDto;
@ -26,7 +27,6 @@ import com.eco.sc.customer.common.cache.CaffeineCacheHelper;
import com.eco.sc.customer.common.cache.MapValueCacheHelper;
import com.eco.sc.customer.common.constant.ConstParam;
import com.eco.sc.customer.common.constant.enums.CacheKeyEnum;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.sc.customer.common.constant.enums.WxEnumMsgType;
import com.eco.sc.customer.common.utils.Base64Util;
import com.eco.sc.customer.common.utils.CollectionUtil;
@ -621,14 +621,14 @@ public class QwTransferService {
objectWeChatOnlineNotice.put("WeChatId", weChatId);
String nickname = loginResponse.getNickname();
String smallHeadImgUrl = loginResponse.getSmallHeadImgUrl();
if (StrUtil.isEmpty(nickname) || StrUtil.isEmpty(smallHeadImgUrl)) {
/*if (StrUtil.isEmpty(nickname) || StrUtil.isEmpty(smallHeadImgUrl)) {
// 查询单个设备信息
CommunityRobotWxInfo communityRobotWxInfo = communityRobotWxInfoService.getByEq(CommunityRobotWxInfo::getRobotAccount, pit);
if (communityRobotWxInfo != null) {
nickname = communityRobotWxInfo.getWxNick();
nickname = communityRobotWxInfo.getNickname();
smallHeadImgUrl = communityRobotWxInfo.getWxImg();
}
}
}*/
objectWeChatOnlineNotice.put("WeChatNick", nickname);
objectWeChatOnlineNotice.put("IMEI", weChatId);
objectWeChatOnlineNotice.put("Phone", "");

@ -4,14 +4,14 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.base.dto.SupportCustomerDto;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.redis.RedisCacheHelper;
import com.eco.sc.customer.business.helper.WebHelper;
import com.eco.sc.customer.business.mapper.TblCustomerSupportMapper;
import com.eco.sc.customer.business.pojo.bo.TblCustomerSupportBo;
import com.eco.common.base.dto.SupportCustomerDto;
import com.eco.sc.customer.business.pojo.entity.*;
import com.eco.sc.customer.business.service.impl.CommunityCustomerInfoServiceImpl;
import com.eco.sc.customer.business.service.impl.CommunityRobotSupportConfigServiceImpl;

@ -3,8 +3,8 @@ package com.eco.sc.customer.business.service;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.sc.customer.business.pojo.entity.TblShieldUser;
import com.eco.sc.customer.business.mapper.TblShieldUserMapper;
import com.eco.sc.customer.business.pojo.entity.TblShieldUser;
import org.springframework.stereotype.Service;
import java.util.List;

@ -7,9 +7,10 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.sc.customer.business.mapper.TblWxMessageMapper;
import com.eco.sc.customer.business.pojo.SlidePage;
import com.eco.sc.customer.business.pojo.dto.ChatRecordsQueryDto;
@ -24,7 +25,6 @@ import com.eco.sc.customer.business.service.impl.CommunityCustomerGroupInviteLog
import com.eco.sc.customer.business.service.mongo.WxMessageServiceImpl;
import com.eco.sc.customer.common.ResultInfo;
import com.eco.sc.customer.common.constant.ConstParam;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.sc.customer.common.constant.enums.WxEnumMsgType;
import com.eco.sc.customer.common.utils.Base64Util;
import com.eco.sc.customer.common.utils.CollectionUtil;

@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.base.dto.WeChatMessageDto;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.redis.RedisCacheHelper;
import com.eco.sc.customer.business.pojo.bo.HandlerMsgNodeResultBo;
import com.eco.sc.customer.business.pojo.dto.WeChatChatRoomMemberDto;
@ -17,7 +18,6 @@ import com.eco.sc.customer.business.service.msg.HandlerMsgNodeService;
import com.eco.sc.customer.business.service.msg.impl.WxMsgNodeService;
import com.eco.sc.customer.common.ToolsHelper;
import com.eco.sc.customer.common.constant.ConstParam;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.sc.customer.helper.callback.core.CacheDataHelper;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;

@ -9,6 +9,7 @@ import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.base.dto.WeChatMessageDto;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.redis.RedisCacheHelper;
import com.eco.fission.common.param.constants.Consts;
import com.eco.fission.common.pojo.dto.phone.MsgCallBackVo;
@ -27,7 +28,6 @@ import com.eco.sc.customer.common.cache.CaffeineCacheHelper;
import com.eco.sc.customer.common.cache.MapValueCacheHelper;
import com.eco.sc.customer.common.constant.ConstParam;
import com.eco.sc.customer.common.constant.enums.CacheKeyEnum;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.sc.customer.common.constant.enums.WxEnumMsgType;
import com.eco.sc.customer.common.redis.queue.NoticeMajorDelayQueue;
import com.eco.sc.customer.common.redis.queue.NoticeSpecialDelayQueue;
@ -979,8 +979,8 @@ public class WxTransferService {
// 查询单个设备信息
CommunityRobotWxInfo communityRobotWxInfo = communityRobotWxInfoService.getByEq(CommunityRobotWxInfo::getRobotAccount, pit);
if (communityRobotWxInfo != null) {
nickname = communityRobotWxInfo.getWxNick();
smallHeadImgUrl = communityRobotWxInfo.getWxImg();
nickname = communityRobotWxInfo.getNickname();
smallHeadImgUrl = communityRobotWxInfo.getHeaderUrl();
}
}
objectWeChatOnlineNotice.put("WeChatNick", nickname);

@ -3,9 +3,9 @@ package com.eco.sc.customer.business.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.fission.common.param.enums.ResourceLabelEnum;
import com.eco.sc.customer.business.mapper.CommunityCardResourceMapper;
import com.eco.sc.customer.business.pojo.bo.CustomerResourceBo;

@ -1,5 +1,6 @@
package com.eco.sc.customer.business.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
@ -14,9 +15,7 @@ import com.eco.fission.common.param.constants.Consts;
import com.eco.fission.common.pojo.dto.task.DeviceDto;
import com.eco.sc.customer.business.mapper.CommunityCustomerInfoMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityCustomerJoinRobot;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotInfo;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxInfo;
import com.eco.sc.customer.common.constant.enums.RobotStatusEnum;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
@ -25,13 +24,10 @@ import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
import java.util.concurrent.CompletableFuture;
import java.util.Set;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
import static org.apache.dubbo.common.constants.CommonConstants.DUBBO_PROTOCOL;
/**
*
* </p>
@ -41,7 +37,7 @@ import static org.apache.dubbo.common.constants.CommonConstants.DUBBO_PROTOCOL;
*/
@Service
@DS("scrm")
@org.apache.dubbo.config.annotation.Service(protocol = DUBBO_PROTOCOL, timeout = 10000)
@org.apache.dubbo.config.annotation.Service(protocol = {"rest", "dubbo"}, timeout = 10000)
public class CommunityCustomerInfoServiceImpl extends BaseServiceImpl<CommunityCustomerInfoMapper, CommunityCustomerInfo> implements CommunityCustomerInfoService {
@Resource
@ -140,38 +136,29 @@ public class CommunityCustomerInfoServiceImpl extends BaseServiceImpl<CommunityC
}
// 客服ID
Integer customerId = customerInfo.getId();
List<CommunityRobotInfo> robotInfos = CompletableFuture.supplyAsync(() -> {
List<CommunityCustomerJoinRobot> customerJoinRobots = communityCustomerJoinRobotService.listByCustomerAccount(account);
return customerJoinRobots.stream()
.map(CommunityCustomerJoinRobot::getRobotId)
.collect(Collectors.toSet());
}).thenApplyAsync((integers) -> {
List<CommunityRobotInfo> communityRobotInfos = communityRobotInfoService.listByTargetField(CommunityRobotInfo::getCustomerId, customerId);
if (CollectionUtil.isNotEmpty(integers)) {
List<CommunityRobotInfo> robotInfoList = communityRobotInfoService.listByIds(integers);
communityRobotInfos.addAll(robotInfoList);
}
return communityRobotInfos;
}).join();
if (CollectionUtil.isNotEmpty(robotInfos)) {
Map<Integer, CommunityRobotInfo> integerRobotInfoMap = CollectionUtil.convertToMapByFunc(robotInfos, CommunityRobotInfo::getId);
List<Integer> robotIds = robotInfos.stream().map(CommunityRobotInfo::getId).distinct().collect(Collectors.toList());
if (CollectionUtil.isEmpty(robotIds)) {
return deviceDtos;
}
List<CommunityRobotWxInfo> robotWxInfos = communityRobotWxInfoService.listByRobotIds(robotIds);
for (CommunityRobotWxInfo robotWxInfo : robotWxInfos) {
List<CommunityRobotWxInfo> wxInfoList = communityRobotWxInfoService.listByTargetField(CommunityRobotWxInfo::getCustomerId, customerId);
List<CommunityCustomerJoinRobot> customerJoinRobots = communityCustomerJoinRobotService.listByTargetField(CommunityCustomerJoinRobot::getCustomerId, customerId);
Set<Long> collected = customerJoinRobots.stream().map(CommunityCustomerJoinRobot::getRobotId)
.collect(Collectors.toSet());
if (CollUtil.isNotEmpty(collected)) {
wxInfoList.addAll(communityRobotWxInfoService.listByIds(collected));
}
if (CollectionUtil.isNotEmpty(wxInfoList)) {
for (CommunityRobotWxInfo robotWxInfo : wxInfoList) {
DeviceDto deviceDto = new DeviceDto();
BeanUtils.copyProperties(robotWxInfo, deviceDto);
CommunityRobotInfo robotInfo = integerRobotInfoMap.get(robotWxInfo.getRobotId());
// CommunityRobotInfo robotInfo = integerRobotInfoMap.get(robotWxInfo.getRobotId());
deviceDto.setOnLine(0);
if (robotInfo != null) {
boolean equals = robotInfo.getStatus().equals(RobotStatusEnum.ONLINE);
deviceDto.setOnLine(equals ? 0 : 1);
deviceDto.setRobotType(robotInfo.getRobotType());
if (robotInfo.getCustomerId() != null
&& robotInfo.getCustomerId().intValue() == customerId) {
if (robotWxInfo != null) {
deviceDto.setWxNick(robotWxInfo.getNickname());
deviceDto.setWxId(robotWxInfo.getWxId());
deviceDto.setWxImg(robotWxInfo.getHeaderUrl());
deviceDto.setOnLine(robotWxInfo.getStatus());
deviceDto.setRobotType(1);
if (robotWxInfo.getCustomerId() != null
&& robotWxInfo.getCustomerId().intValue() == customerId) {
deviceDto.setDeviceType(1);
} else {
deviceDto.setDeviceType(2);
@ -204,18 +191,16 @@ public class CommunityCustomerInfoServiceImpl extends BaseServiceImpl<CommunityC
}
if (wxInfo != null) {
CommunityRobotInfo robotInfo = communityRobotInfoService.getById(wxInfo.getRobotId());
if (robotInfo != null) {
CommunityCustomerInfo customerInfo = communityCustomerInfoService.getById(robotInfo.getCustomerId());
if (customerInfo != null) {
wxInfo.setCustomerId(customerInfo.getId());
wxInfo.setCustomerAccount(customerInfo.getAccount());
wxInfo.setCustomerNick(customerInfo.getNick());
}
List<CommunityCustomerJoinRobot> customerJoinRobots = communityCustomerJoinRobotService.listByEq(CommunityCustomerJoinRobot::getRobotId, robotInfo.getId());
List<String> strings = CollectionUtil.mapFieldsToList(customerJoinRobots, CommunityCustomerJoinRobot::getCustomerAccount);
wxInfo.setSubCustomerAccount(strings);
// CommunityRobotInfo robotInfo = communityRobotInfoService.getById(wxInfo.getRobotId());
CommunityCustomerInfo customerInfo = communityCustomerInfoService.getById(wxInfo.getCustomerId());
if (customerInfo != null) {
wxInfo.setCustomerId(customerInfo.getId());
wxInfo.setCustomerAccount(customerInfo.getAccount());
wxInfo.setCustomerNick(customerInfo.getNick());
}
List<CommunityCustomerJoinRobot> customerJoinRobots = communityCustomerJoinRobotService.listByEq(CommunityCustomerJoinRobot::getRobotId, wxInfo.getId());
List<String> strings = CollectionUtil.mapFieldsToList(customerJoinRobots, CommunityCustomerJoinRobot::getCustomerAccount);
wxInfo.setSubCustomerAccount(strings);
BeanUtils.copyProperties(wxInfo, deviceDto);
}
return deviceDto;

@ -2,8 +2,8 @@ package com.eco.sc.customer.business.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.eco.sc.customer.business.mapper.CommunityCustomerJoinRobotMapper;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.sc.customer.business.mapper.CommunityCustomerJoinRobotMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityCustomerJoinRobot;
import org.springframework.stereotype.Service;

@ -3,9 +3,9 @@ package com.eco.sc.customer.business.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.sc.customer.business.mapper.CommunityCustomerMsgCountLogMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityCustomerMsgCountLog;
import org.springframework.stereotype.Service;

@ -7,13 +7,13 @@ import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.base.entity.CommunityDockingConfig;
import com.eco.common.base.vo.DockingConfigVo;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.rpc.CommunityDockingConfigService;
import com.eco.sc.customer.business.mapper.CommunityDockingConfigMapper;
import com.eco.sc.customer.business.pojo.dto.bind.BindInfoDto;
import com.eco.common.base.entity.CommunityDockingConfig;
import com.eco.sc.customer.business.pojo.vo.bind.QueryPageVo;
import com.eco.common.base.vo.DockingConfigVo;
import com.eco.sc.customer.common.ResultInfo;
import com.eco.sc.customer.common.constant.enums.PushTypeEnum;
import com.eco.sc.customer.common.utils.SignUtil;

@ -2,10 +2,10 @@ package com.eco.sc.customer.business.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.commonbase.exception.ServiceException;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.commonbase.utils.CollectionUtil;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.redis.RedisCacheHelper;
import com.eco.fission.common.param.constants.Consts;
import com.eco.sc.customer.business.mapper.CommunityRobotBlacklistMapper;

@ -28,7 +28,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**

@ -1,8 +1,8 @@
package com.eco.sc.customer.business.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.eco.sc.customer.business.mapper.CommunityRobotInfoMapper;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.sc.customer.business.mapper.CommunityRobotInfoMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotInfo;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxInfo;
import org.springframework.beans.factory.annotation.Autowired;

@ -6,10 +6,10 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.commonbase.utils.CollectionUtil;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.sc.customer.business.mapper.CommunityRobotWxGroupMemberMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotBlacklist;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotCustomer;
@ -45,6 +45,18 @@ public class CommunityRobotWxGroupMemberServiceImpl extends BaseServiceImpl<Comm
return list(lambdaQuery);
}
@SafeVarargs
public final List<CommunityRobotWxGroupMember> listByWeChatIdAndGroupId(String weChatId, Long groupId,
SFunction<CommunityRobotWxGroupMember, ?>... selects) {
LambdaQueryWrapper<CommunityRobotWxGroupMember> lambdaQuery = getLambdaQuery();
if (ArrayUtil.isNotEmpty(selects)) {
lambdaQuery.select(selects);
}
lambdaQuery.eq(CommunityRobotWxGroupMember::getWechatId, weChatId);
lambdaQuery.eq(CommunityRobotWxGroupMember::getGroupId, groupId);
return list(lambdaQuery);
}
/**
*
*

@ -10,10 +10,8 @@ import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.common.exception.ServiceException;
import com.eco.fission.common.param.enums.RobotWxLoginTypeEnum;
import com.eco.sc.customer.business.mapper.CommunityRobotWxGroupMapper;
@ -21,6 +19,8 @@ import com.eco.sc.customer.business.pojo.dto.WeChatChatRoomMemberDto;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotInfo;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxGroup;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxInfo;
import com.eco.sc.customer.business.pojo.model.BaseEntity;
import com.eco.sc.customer.business.pojo.model.BaseServiceImpl;
import com.eco.sc.customer.common.utils.CollectionUtil;
import com.eco.sc.customer.helper.callback.core.CacheDataHelper;
import com.eco.sc.customer.helper.callback.core.QwRequestCoreHelper;

@ -2,10 +2,10 @@ package com.eco.sc.customer.business.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.sc.customer.business.mapper.CommunityRobotWxInfoMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityRobotWxInfo;
import com.eco.sc.customer.business.pojo.model.BaseEntity;
import com.eco.sc.customer.business.pojo.model.BaseServiceImpl;
import org.springframework.stereotype.Service;
import java.util.List;

@ -81,9 +81,7 @@ public class CommunityRobotWxLabelServiceImpl extends BaseServiceImpl<CommunityR
if (communityRobotWxLabel.getLabelType() == CommunityRobotWxLabel.LabelTypeEnum.SCRM_Label.getCode()) {
communityRobotWxLabel.setLabelId(communityRobotWxLabel.getId());
}
}
return list;
}

@ -3,14 +3,14 @@ package com.eco.sc.customer.business.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.fission.common.param.enums.ResourceLabelEnum;
import com.eco.sc.customer.business.mapper.CommunityStaticResourceMapper;
import com.eco.sc.customer.business.pojo.bo.CustomerResourceBo;
import com.eco.sc.customer.business.pojo.entity.CommunityStaticResource;
import com.eco.common.base.enums.WxContentTypeEnum;
import org.springframework.stereotype.Service;
/**

@ -1,15 +1,15 @@
package com.eco.sc.customer.business.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.fission.common.param.enums.ResourceLabelEnum;
import com.eco.sc.customer.business.mapper.CommunityTextResourceMapper;
import com.eco.sc.customer.business.pojo.bo.CustomerResourceBo;
import com.eco.sc.customer.business.pojo.entity.CommunityTextResource;
import com.eco.sc.customer.business.pojo.entity.StaticResource;
import org.springframework.stereotype.Service;
/**
@ -21,18 +21,17 @@ import org.springframework.stereotype.Service;
*/
@Service
@DS("scrm")
public class CommunityTextResourceServiceImpl extends BaseServiceImpl<CommunityTextResourceMapper, CommunityTextResource> {
public IPage<CommunityTextResource> search(PageParam<CustomerResourceBo> pageParam, CommunityCustomerInfo communityCustomerInfo) {
LambdaQueryWrapper<CommunityTextResource> lambdaQuery = getLambdaQuery();
public class CommunityTextResourceServiceImpl extends BaseServiceImpl<CommunityTextResourceMapper, StaticResource> {
lambdaQuery.eq(CommunityTextResource::getUserId, communityCustomerInfo.getUserId());
lambdaQuery.eq(CommunityTextResource::getServiceLabel, ResourceLabelEnum.MATERIAL);
PageParam<CommunityTextResource> page = getBaseMapper().selectPage(PageParam.convertPageParam(pageParam), lambdaQuery);
public IPage<StaticResource> search(PageParam<CustomerResourceBo> pageParam, CommunityCustomerInfo communityCustomerInfo) {
CustomerResourceBo entity = pageParam.getEntity();
LambdaQueryWrapper<StaticResource> lambdaQuery = getLambdaQuery();
return page;
lambdaQuery.eq(StaticResource::getUserId, communityCustomerInfo.getUserId());
if (ObjectUtil.isNotNull(entity.getType())) {
lambdaQuery.eq(StaticResource::getType, entity.getType());
}
return getBaseMapper().selectPage(PageParam.convertPageParam(pageParam), lambdaQuery);
}
}

@ -3,8 +3,8 @@ package com.eco.sc.customer.business.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.sc.customer.business.pojo.entity.CommunityUpdateLog;
import com.eco.sc.customer.business.mapper.CommunityUpdateLogMapper;
import com.eco.sc.customer.business.pojo.entity.CommunityUpdateLog;
import org.springframework.stereotype.Service;
/**

@ -7,9 +7,9 @@ import com.eco.common.base.entity.CommunityCustomerInfo;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.fission.common.param.enums.ResourceLabelEnum;
import com.eco.sc.customer.business.pojo.entity.CommunityXcxResource;
import com.eco.sc.customer.business.mapper.CommunityXcxResourceMapper;
import com.eco.sc.customer.business.pojo.bo.CustomerResourceBo;
import com.eco.sc.customer.business.pojo.entity.CommunityXcxResource;
import org.springframework.stereotype.Service;
/**

@ -6,11 +6,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.commonbase.mybatis.BaseEntity;
import com.eco.common.commonbase.mybatis.BaseServiceImpl;
import com.eco.common.commonbase.mybatis.PageParam;
import com.eco.sc.customer.business.mapper.TblWxAddFriendLogMapper;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.sc.customer.business.pojo.entity.TblWxAddFriendLog;
import com.eco.sc.customer.framework.exception.ServiceException;
import com.eco.sc.customer.framework.exception.ServiceExceptionEnum;

@ -8,6 +8,7 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.eco.common.base.dto.WeChatChatRoomDto;
import com.eco.common.base.dto.WeChatMessageDto;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.common.redis.RedisCacheHelper;
import com.eco.fission.common.param.enums.FileType;
import com.eco.sc.customer.business.pojo.bo.HandlerMsgNodeResultBo;
@ -23,7 +24,6 @@ import com.eco.sc.customer.common.ToolsHelper;
import com.eco.sc.customer.common.constant.CallBackCode;
import com.eco.sc.customer.common.constant.ConstParam;
import com.eco.sc.customer.common.constant.enums.PushTypeEnum;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.sc.customer.common.constant.enums.WxEnumMsgType;
import com.eco.sc.customer.common.utils.*;
import com.eco.sc.customer.framework.config.BaseSpringContext;

@ -8,7 +8,6 @@ import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
/**
* @author xiaoxx

@ -1,8 +1,8 @@
package com.eco.sc.customer.common.constant.enums.phone;
import com.alibaba.fastjson.JSONObject;
import com.eco.fission.common.pojo.dto.phone.MsgCallBackVo;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.fission.common.pojo.dto.phone.MsgCallBackVo;
import lombok.AllArgsConstructor;
import lombok.Getter;

@ -1,8 +1,8 @@
package com.eco.sc.customer.common.constant.enums.phone;
import com.alibaba.fastjson.JSONObject;
import com.eco.fission.common.pojo.dto.phone.MsgCallBackVo;
import com.eco.common.base.enums.WxContentTypeEnum;
import com.eco.fission.common.pojo.dto.phone.MsgCallBackVo;
import lombok.AllArgsConstructor;
import lombok.Getter;

@ -0,0 +1,62 @@
package com.eco.sc.customer.common.converter;
import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.ibatis.type.BaseTypeHandler;
import org.apache.ibatis.type.JdbcType;
import org.apache.ibatis.type.MappedJdbcTypes;
import java.sql.CallableStatement;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
/**
* @author Enzo
* @date : 2023/11/2
*/
@MappedJdbcTypes({JdbcType.VARCHAR})
public class JsonStringArrayTypeHandler extends BaseTypeHandler<List<String>> {
private static final ObjectMapper MAPPER = new ObjectMapper();
@Override
public void setNonNullParameter(PreparedStatement ps, int i, List<String> parameter, JdbcType jdbcType) throws SQLException {
ps.setString(i, toJson(parameter));
}
@Override
public List<String> getNullableResult(ResultSet rs, String columnName) throws SQLException {
return this.toObject(rs.getString(columnName));
}
@Override
public List<String> getNullableResult(ResultSet rs, int columnIndex) throws SQLException {
return this.toObject(rs.getString(columnIndex));
}
@Override
public List<String> getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {
return this.toObject(cs.getString(columnIndex));
}
private String toJson(List<String> params) {
try {
return MAPPER.writeValueAsString(params);
} catch (Exception e) {
e.printStackTrace();
}
return "[]";
}
private List<String> toObject(String content) {
if (content != null && !content.isEmpty()) {
try {
return MAPPER.readValue(content, List.class);
} catch (Exception e) {
throw new RuntimeException(e);
}
} else {
return null;
}
}
}

@ -16,10 +16,14 @@ import org.springframework.stereotype.Component;
public class MinioConfig {
private String nginxUrl;
private String endpoint = "http://127.0.0.1:9009";
private String accessKey = "leslie";
private String secretKey = "J2V6hKlBceEsZHscADN5DBLZZYioPzBm";
private String bucketName = "image";
private String endpoint;
private String accessKey;
private String secretKey;
private String bucketName;
@Bean
public MinioClient minioClient() {

@ -3,9 +3,7 @@ package com.eco.sc.customer.common.minio;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.io.FileUtil;
import cn.hutool.core.util.StrUtil;
import com.eco.common.commonbase.utils.DateUtils;
import io.minio.*;
import io.minio.http.Method;
import io.minio.messages.Bucket;
import lombok.RequiredArgsConstructor;
import lombok.SneakyThrows;
@ -24,10 +22,7 @@ import java.net.URLEncoder;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
/**
* minio
@ -146,29 +141,7 @@ public class MinioUtil {
}
}
public Map<String, Object> getUploadUrl(String fileName, String bucketName) {
Map<String, Object> stringStringMap = new HashMap<>();
//获取对应存储平台
try {
String presignedObjectUrl = minioClient.getPresignedObjectUrl(
GetPresignedObjectUrlArgs.builder()
.method(Method.PUT)
.bucket(bucketName)
.object(fileName)
.expiry(10, TimeUnit.MINUTES)
.build());
stringStringMap.put("preUrl", presignedObjectUrl);
stringStringMap.put("host", minioConfig.getNginxUrl());
stringStringMap.put("cuHost", minioConfig.getNginxUrl());
stringStringMap.put("fileName", fileName);
stringStringMap.put("expire", DateUtils.addMinutes(new Date(), 10).getTime());
return stringStringMap;
}
catch (Exception e) {
throw new RuntimeException(e);
}
}
/**

@ -7,11 +7,7 @@ import org.apache.commons.lang.StringEscapeUtils;
import org.springframework.web.multipart.MultipartFile;
import sun.misc.BASE64Decoder;
import java.io.ByteArrayInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.*;
/**
* base64multipartFile

@ -1,13 +1,13 @@
package com.eco.sc.customer.common.utils;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class DateUtil {
@ -88,7 +88,7 @@ public class DateUtil {
cal.add(calendarField, offset);
return cal.getTime();
}
/**
*
* @param date
@ -98,8 +98,8 @@ public class DateUtil {
public static Date offsetMinute(Date date, int offsite) {
return offsetDate(date, Calendar.MINUTE, offsite);
}
/**
*
* @param date
@ -109,7 +109,7 @@ public class DateUtil {
public static Date offsetHour(Date date, int offsite) {
return offsetDate(date, Calendar.HOUR, offsite);
}
/**
*
* @param date

@ -10,18 +10,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.boot.system.ApplicationHome;
import java.io.BufferedInputStream;
import java.io.BufferedOutputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.UnsupportedEncodingException;
import java.io.*;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Arrays;

@ -1,9 +1,6 @@
package com.eco.sc.customer.common.utils;
import lombok.extern.slf4j.Slf4j;
//import org.bytedeco.javacv.FFmpegFrameGrabber;
//import org.bytedeco.javacv.Java2DFrameConverter;
//import org.bytedeco.javacv.OpenCVFrameConverter;
import javax.imageio.ImageIO;
import java.awt.*;

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save