diff --git a/pom.xml b/pom.xml index dff1967f..09f6b599 100644 --- a/pom.xml +++ b/pom.xml @@ -1,6 +1,6 @@ + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 com.sqx duanju @@ -23,7 +23,7 @@ 4.0 11.2.0.3 1.1.13 - + 2.6 1.2.2 2.5 @@ -35,7 +35,7 @@ 7.2.23 3.4.0 4.4 - + 2.9.2 2.9.9 2.8.5 @@ -90,17 +90,17 @@ guava 19.0 - - - - - - - - - - - + + + + + + + + + + + cn.afterturn easypoi-spring-boot-starter @@ -155,11 +155,11 @@ 5.5.0 - - - - - + + + + + com.auth0 @@ -245,6 +245,16 @@ org.springframework.boot spring-boot-starter-web + + + org.elasticsearch.client + elasticsearch-rest-high-level-client + + + org.elasticsearch + elasticsearch + + org.springframework.boot @@ -264,9 +274,9 @@ true - - - + + + com.baomidou @@ -280,23 +290,23 @@ - - - - - + + + + + mysql mysql-connector-java ${mysql.version} - - - - - - + + + + + + org.apache.shardingsphere @@ -314,33 +324,33 @@ org.springframework.boot spring-boot-starter-actuator - + com.microsoft.sqlserver sqljdbc4 ${mssql.version} - - - - - + + + + + com.alibaba druid-spring-boot-starter ${druid.version} - - - - - - - - - - - + + + + + + + + + + + commons-lang commons-lang @@ -462,11 +472,11 @@ xstream 1.4.18 - - com.github.binarywang - weixin-java-pay - 3.6.0 - + + com.github.binarywang + weixin-java-pay + 3.6.0 + com.github.pagehelper pagehelper-spring-boot-starter @@ -492,16 +502,26 @@ restful-sdk 1.0.0.1 - - junit - junit - test - - - - - - + + junit + junit + test + + + org.elasticsearch.client + elasticsearch-rest-high-level-client + 7.14.0 + + + org.elasticsearch + elasticsearch + 7.14.0 + + + org.dromara.easy-es + easy-es-boot-starter + 2.0.0 + @@ -553,12 +573,12 @@ docker-maven-plugin 0.4.14 - - - - - - + + + + + + sqx/fast @@ -606,4 +626,4 @@ - + \ No newline at end of file diff --git a/src/main/java/com/sqx/config/ShiroConfig.java b/src/main/java/com/sqx/config/ShiroConfig.java index 74a17164..dbf1e3da 100644 --- a/src/main/java/com/sqx/config/ShiroConfig.java +++ b/src/main/java/com/sqx/config/ShiroConfig.java @@ -41,6 +41,7 @@ public class ShiroConfig { shiroFilter.setFilters(filters); Map filterMap = new LinkedHashMap<>(); + filterMap.put("/es/**", "anon"); filterMap.put("/uniCallBack/**", "anon"); filterMap.put("/course/synCourse", "anon"); filterMap.put("/app/**", "anon"); diff --git a/src/main/java/com/sqx/modules/app/entity/UserMoneyDetails.java b/src/main/java/com/sqx/modules/app/entity/UserMoneyDetails.java index 354fbf59..fe341c68 100644 --- a/src/main/java/com/sqx/modules/app/entity/UserMoneyDetails.java +++ b/src/main/java/com/sqx/modules/app/entity/UserMoneyDetails.java @@ -11,6 +11,8 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Data; +import org.dromara.easyes.annotation.IndexId; +import org.dromara.easyes.annotation.IndexName; import java.io.Serializable; import java.math.BigDecimal; @@ -18,6 +20,7 @@ import java.math.BigDecimal; @Data @AllArgsConstructor @TableName("user_money_details") +@IndexName(value = "user_money_details", keepGlobalPrefix = true) @ApiModel("钱包详情") public class UserMoneyDetails implements Serializable { /** @@ -26,6 +29,7 @@ public class UserMoneyDetails implements Serializable { @ApiModelProperty("钱包详情id") @TableId(type = IdType.ID_WORKER) @JsonSerialize(using = ToStringSerializer.class) + @IndexId(type = org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE) private Long id; /** * 用户id diff --git a/src/main/java/com/sqx/modules/course/entity/CourseCollect.java b/src/main/java/com/sqx/modules/course/entity/CourseCollect.java index 81de92f4..59748711 100644 --- a/src/main/java/com/sqx/modules/course/entity/CourseCollect.java +++ b/src/main/java/com/sqx/modules/course/entity/CourseCollect.java @@ -5,6 +5,8 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; import lombok.experimental.Accessors; +import org.dromara.easyes.annotation.IndexId; +import org.dromara.easyes.annotation.IndexName; import java.io.Serializable; @@ -16,6 +18,7 @@ import java.io.Serializable; @Data @Accessors(chain = true) @TableName("course_collect") +@IndexName(value = "course_collect", keepGlobalPrefix = true) public class CourseCollect implements Serializable { private static final long serialVersionUID = 1L; @@ -25,6 +28,7 @@ public class CourseCollect implements Serializable { * 收藏id */ @TableId(type = IdType.ID_WORKER) + @IndexId(type= org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE) @JsonSerialize(using = ToStringSerializer.class) private Long courseCollectId; diff --git a/src/main/java/com/sqx/modules/course/entity/CourseUser.java b/src/main/java/com/sqx/modules/course/entity/CourseUser.java index 8572a5fb..48cd15e2 100644 --- a/src/main/java/com/sqx/modules/course/entity/CourseUser.java +++ b/src/main/java/com/sqx/modules/course/entity/CourseUser.java @@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.*; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; +import org.dromara.easyes.annotation.IndexId; +import org.dromara.easyes.annotation.IndexName; import java.io.Serializable; @@ -14,6 +16,7 @@ import java.io.Serializable; */ @Data @TableName("course_user") +@IndexName(value = "course_user", keepGlobalPrefix = true) public class CourseUser implements Serializable { private static final long serialVersionUID = 1L; @@ -23,6 +26,7 @@ public class CourseUser implements Serializable { * 我的短剧id */ @TableId(type = IdType.ID_WORKER) + @IndexId(type= org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE) @JsonSerialize(using = ToStringSerializer.class) private Long courseUserId; diff --git a/src/main/java/com/sqx/modules/discSpinning/entity/DiscSpinningRecord.java b/src/main/java/com/sqx/modules/discSpinning/entity/DiscSpinningRecord.java index 44e33539..e534a7ce 100644 --- a/src/main/java/com/sqx/modules/discSpinning/entity/DiscSpinningRecord.java +++ b/src/main/java/com/sqx/modules/discSpinning/entity/DiscSpinningRecord.java @@ -5,6 +5,8 @@ import com.baomidou.mybatisplus.extension.activerecord.Model; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; +import org.dromara.easyes.annotation.IndexId; +import org.dromara.easyes.annotation.IndexName; import java.math.BigDecimal; @@ -16,9 +18,11 @@ import java.math.BigDecimal; */ @Data @TableName("disc_spinning_record") +@IndexName(value = "disc_spinning_record", keepGlobalPrefix = true) public class DiscSpinningRecord extends Model { //主键 @TableId(type = IdType.ID_WORKER) + @IndexId(type= org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE) @JsonSerialize(using = ToStringSerializer.class) private Long id; @JsonSerialize(using = ToStringSerializer.class) diff --git a/src/main/java/com/sqx/modules/es/controller/EsCoreController.java b/src/main/java/com/sqx/modules/es/controller/EsCoreController.java new file mode 100644 index 00000000..06a5980f --- /dev/null +++ b/src/main/java/com/sqx/modules/es/controller/EsCoreController.java @@ -0,0 +1,48 @@ +package com.sqx.modules.es.controller; + +import cn.hutool.json.JSONUtil; +import com.sqx.common.utils.Result; +import com.sqx.modules.es.dao.EsPayDetailDao; +import com.sqx.modules.es.service.EsCoreService; +import com.sqx.modules.pay.entity.PayDetails; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; +import springfox.documentation.annotations.ApiIgnore; + +import javax.annotation.Resource; +import java.util.Map; + +/** + * 全量同步相关表数据到es + * + * @author tankaikai + * @since 2025-01-02 20:33 + */ +@Slf4j +@RestController +@RequestMapping(value = "/es/core") +public class EsCoreController { + @Autowired + private EsCoreService esCoreService; + + @Resource + private EsPayDetailDao esPayDetailsDao; + + @ApiOperation("同步") + @PostMapping("/sync") + public Result sync(@ApiIgnore @RequestParam Map params) { + PayDetails payDetails = esPayDetailsDao.selectByOrderId("1000001851456083"); + System.out.println(JSONUtil.toJsonPrettyStr(payDetails)); + PayDetails payDetails1 = esPayDetailsDao.getBaseEsMapper().selectById(3306L); + System.out.println(JSONUtil.toJsonPrettyStr(payDetails1)); + PayDetails payDetails2 = esPayDetailsDao.getOriginalDao().selectById(3306L); + System.out.println(JSONUtil.toJsonPrettyStr(payDetails2)); + //esCoreService.sync(); + return Result.success(); + } +} diff --git a/src/main/java/com/sqx/modules/es/dao/EsPayDetailDao.java b/src/main/java/com/sqx/modules/es/dao/EsPayDetailDao.java new file mode 100644 index 00000000..f1635c8b --- /dev/null +++ b/src/main/java/com/sqx/modules/es/dao/EsPayDetailDao.java @@ -0,0 +1,56 @@ +package com.sqx.modules.es.dao; + +import com.sqx.modules.es.mapper.EsPayDetailsMapper; +import com.sqx.modules.pay.dao.PayDetailsDao; +import com.sqx.modules.pay.entity.PayDetails; +import org.dromara.easyes.core.conditions.select.LambdaEsQueryWrapper; +import org.springframework.stereotype.Component; + +import javax.annotation.Resource; + +/** + * @author tankaikai + * @since 2025-01-15 18:29 + */ +@Component +public class EsPayDetailDao { + + @Resource + private EsPayDetailsMapper baseEsMapper; + + @Resource + private PayDetailsDao originalDao; + + public EsPayDetailsMapper getBaseEsMapper() { + return this.baseEsMapper; + } + + public PayDetailsDao getOriginalDao() { + return this.originalDao; + } + + public PayDetails selectByRemark(String remark) { + return baseEsMapper.selectOne(new LambdaEsQueryWrapper().eq(PayDetails::getRemark, remark)); + } + + + public PayDetails selectByOrderId(String orderId) { + return baseEsMapper.selectOne(new LambdaEsQueryWrapper().eq(PayDetails::getOrderId, orderId)); + } + + + public PayDetails selectOneByLimit(String orderId) { + return baseEsMapper.selectOne(new LambdaEsQueryWrapper().eq(PayDetails::getOrderId, orderId).orderByDesc(PayDetails::getId).limit(1)); + } + + + public PayDetails selectByTradeNo(String tradeNo) { + return baseEsMapper.selectOne(new LambdaEsQueryWrapper().eq(PayDetails::getTradeNo, tradeNo)); + } + + + public int selectPayCount(Long userId) { + Long count = baseEsMapper.selectCount(new LambdaEsQueryWrapper().eq(PayDetails::getState, 1).eq(PayDetails::getUserId, userId)); + return count == null ? 0 : count.intValue(); + } +} diff --git a/src/main/java/com/sqx/modules/es/dao/readme.txt b/src/main/java/com/sqx/modules/es/dao/readme.txt new file mode 100644 index 00000000..962cbd9a --- /dev/null +++ b/src/main/java/com/sqx/modules/es/dao/readme.txt @@ -0,0 +1 @@ +** Dao层实现MyBatis中ES可以实现的查询方法 \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/es/mapper/EsCashOutMapper.java b/src/main/java/com/sqx/modules/es/mapper/EsCashOutMapper.java new file mode 100644 index 00000000..b965a2be --- /dev/null +++ b/src/main/java/com/sqx/modules/es/mapper/EsCashOutMapper.java @@ -0,0 +1,11 @@ +package com.sqx.modules.es.mapper; + +import com.sqx.modules.pay.entity.CashOut; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +/** + * @author tankaikai + * @since 2025-01-06 9:40 + */ +public interface EsCashOutMapper extends BaseEsMapper { +} diff --git a/src/main/java/com/sqx/modules/es/mapper/EsCourseCollectMapper.java b/src/main/java/com/sqx/modules/es/mapper/EsCourseCollectMapper.java new file mode 100644 index 00000000..cb24b575 --- /dev/null +++ b/src/main/java/com/sqx/modules/es/mapper/EsCourseCollectMapper.java @@ -0,0 +1,11 @@ +package com.sqx.modules.es.mapper; + +import com.sqx.modules.course.entity.CourseCollect; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +/** + * @author tankaikai + * @since 2025-01-06 9:40 + */ +public interface EsCourseCollectMapper extends BaseEsMapper { +} diff --git a/src/main/java/com/sqx/modules/es/mapper/EsCourseUserMapper.java b/src/main/java/com/sqx/modules/es/mapper/EsCourseUserMapper.java new file mode 100644 index 00000000..19576b56 --- /dev/null +++ b/src/main/java/com/sqx/modules/es/mapper/EsCourseUserMapper.java @@ -0,0 +1,11 @@ +package com.sqx.modules.es.mapper; + +import com.sqx.modules.course.entity.CourseUser; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +/** + * @author tankaikai + * @since 2025-01-06 9:40 + */ +public interface EsCourseUserMapper extends BaseEsMapper { +} diff --git a/src/main/java/com/sqx/modules/es/mapper/EsDiscSpinningRecordMapper.java b/src/main/java/com/sqx/modules/es/mapper/EsDiscSpinningRecordMapper.java new file mode 100644 index 00000000..ca44b09c --- /dev/null +++ b/src/main/java/com/sqx/modules/es/mapper/EsDiscSpinningRecordMapper.java @@ -0,0 +1,11 @@ +package com.sqx.modules.es.mapper; + +import com.sqx.modules.discSpinning.entity.DiscSpinningRecord; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +/** + * @author tankaikai + * @since 2025-01-06 9:40 + */ +public interface EsDiscSpinningRecordMapper extends BaseEsMapper { +} diff --git a/src/main/java/com/sqx/modules/es/mapper/EsOrdersMapper.java b/src/main/java/com/sqx/modules/es/mapper/EsOrdersMapper.java new file mode 100644 index 00000000..88845b19 --- /dev/null +++ b/src/main/java/com/sqx/modules/es/mapper/EsOrdersMapper.java @@ -0,0 +1,11 @@ +package com.sqx.modules.es.mapper; + +import com.sqx.modules.orders.entity.Orders; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +/** + * @author tankaikai + * @since 2025-01-02 20:24 + */ +public interface EsOrdersMapper extends BaseEsMapper { +} diff --git a/src/main/java/com/sqx/modules/es/mapper/EsPayDetailsMapper.java b/src/main/java/com/sqx/modules/es/mapper/EsPayDetailsMapper.java new file mode 100644 index 00000000..d9b5b9ba --- /dev/null +++ b/src/main/java/com/sqx/modules/es/mapper/EsPayDetailsMapper.java @@ -0,0 +1,11 @@ +package com.sqx.modules.es.mapper; + +import com.sqx.modules.pay.entity.PayDetails; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +/** + * @author tankaikai + * @since 2025-01-06 9:40 + */ +public interface EsPayDetailsMapper extends BaseEsMapper { +} diff --git a/src/main/java/com/sqx/modules/es/mapper/EsTaskCenterRecordMapper.java b/src/main/java/com/sqx/modules/es/mapper/EsTaskCenterRecordMapper.java new file mode 100644 index 00000000..115cd22e --- /dev/null +++ b/src/main/java/com/sqx/modules/es/mapper/EsTaskCenterRecordMapper.java @@ -0,0 +1,11 @@ +package com.sqx.modules.es.mapper; + +import com.sqx.modules.taskCenter.entity.TaskCenterRecord; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +/** + * @author tankaikai + * @since 2025-01-08 16:31 + */ +public interface EsTaskCenterRecordMapper extends BaseEsMapper { +} diff --git a/src/main/java/com/sqx/modules/es/mapper/EsUserMoneyDetailsMapper.java b/src/main/java/com/sqx/modules/es/mapper/EsUserMoneyDetailsMapper.java new file mode 100644 index 00000000..cc594f53 --- /dev/null +++ b/src/main/java/com/sqx/modules/es/mapper/EsUserMoneyDetailsMapper.java @@ -0,0 +1,11 @@ +package com.sqx.modules.es.mapper; + +import com.sqx.modules.app.entity.UserMoneyDetails; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +/** + * @author tankaikai + * @since 2025-01-02 20:24 + */ +public interface EsUserMoneyDetailsMapper extends BaseEsMapper { +} diff --git a/src/main/java/com/sqx/modules/es/readme.txt b/src/main/java/com/sqx/modules/es/readme.txt new file mode 100644 index 00000000..0d8a4804 --- /dev/null +++ b/src/main/java/com/sqx/modules/es/readme.txt @@ -0,0 +1,11 @@ +ES包下分层解释 +** Mapper层:Easy-ES对ElasticSearch的底层实现,类似与MyBatisPlus对Mapper的加持,使其拥有更方便快捷的增删改查实现 +** Dao层:实现MyBatisPlus中自行扩展的查询方法,改用ES库查询,方便替换原始的Dao层方便; + - 如:"Private OrdersDao ordersDao;"替换为"Private EsOrdersDao esOrdersDao;" + - 可通过esOrdersDao.getBaseEsMapper()拥有es mapper层的能力 + - 可通过esOrdersDao.getOriginalDao()拥有原始Dao层(MybatisPlus Mapper/Dao)的能力 +** Service层:实现MyBatisPlus中简单、稍复杂的查询统计逻辑,改用ES库查询,方便替换原始的Service层; + 如:"Private OrdersService ordersService;";替换为"Private EsOrdersService esOrdersService;"; + - 可通过esOrdersService.getBaseEsMapper()拥有es mapper层的能力 + - 可通过esOrdersDao.getOriginalService()拥有原始Service层(MybatisPlus Service)的能力 +** Controller层:目前主要实现的数据初始化同步功能,后期如果有其他ES相关的接口,可以写到这里面; diff --git a/src/main/java/com/sqx/modules/es/service/EsCoreService.java b/src/main/java/com/sqx/modules/es/service/EsCoreService.java new file mode 100644 index 00000000..1610899f --- /dev/null +++ b/src/main/java/com/sqx/modules/es/service/EsCoreService.java @@ -0,0 +1,10 @@ +package com.sqx.modules.es.service; + +/** + * @author tankaikai + * @since 2025-01-02 20:27 + */ +public interface EsCoreService { + + void sync(); +} diff --git a/src/main/java/com/sqx/modules/es/service/EsOrdersService.java b/src/main/java/com/sqx/modules/es/service/EsOrdersService.java new file mode 100644 index 00000000..5bedb692 --- /dev/null +++ b/src/main/java/com/sqx/modules/es/service/EsOrdersService.java @@ -0,0 +1,10 @@ +package com.sqx.modules.es.service; + +import com.sqx.modules.orders.entity.Orders; + +/** + * @author tankaikai + * @since 2025-01-16 9:50 + */ +public interface EsOrdersService extends IEsService { +} diff --git a/src/main/java/com/sqx/modules/es/service/IEsService.java b/src/main/java/com/sqx/modules/es/service/IEsService.java new file mode 100644 index 00000000..054bfd38 --- /dev/null +++ b/src/main/java/com/sqx/modules/es/service/IEsService.java @@ -0,0 +1,8 @@ +package com.sqx.modules.es.service; + +/** + * @author tankaikai + * @since 2025-01-16 9:45 + */ +public interface IEsService { +} diff --git a/src/main/java/com/sqx/modules/es/service/impl/EsCoreServiceImpl.java b/src/main/java/com/sqx/modules/es/service/impl/EsCoreServiceImpl.java new file mode 100644 index 00000000..d005e0ce --- /dev/null +++ b/src/main/java/com/sqx/modules/es/service/impl/EsCoreServiceImpl.java @@ -0,0 +1,207 @@ +package com.sqx.modules.es.service.impl; + +import cn.hutool.core.collection.CollUtil; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.sqx.modules.app.dao.UserMoneyDetailsDao; +import com.sqx.modules.app.entity.UserMoneyDetails; +import com.sqx.modules.course.dao.CourseCollectDao; +import com.sqx.modules.course.dao.CourseUserDao; +import com.sqx.modules.course.entity.CourseCollect; +import com.sqx.modules.course.entity.CourseUser; +import com.sqx.modules.discSpinning.dao.DiscSpinningRecordDao; +import com.sqx.modules.discSpinning.entity.DiscSpinningRecord; +import com.sqx.modules.es.mapper.*; +import com.sqx.modules.es.service.EsCoreService; +import com.sqx.modules.orders.dao.OrdersDao; +import com.sqx.modules.orders.entity.Orders; +import com.sqx.modules.pay.dao.CashOutDao; +import com.sqx.modules.pay.dao.PayDetailsDao; +import com.sqx.modules.pay.entity.CashOut; +import com.sqx.modules.pay.entity.PayDetails; +import com.sqx.modules.taskCenter.dao.TaskCenterRecordDao; +import com.sqx.modules.taskCenter.entity.TaskCenterRecord; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.List; +import java.util.concurrent.CompletableFuture; + +/** + * @author tankaikai + * @since 2025-01-02 20:27 + */ +@Service +@Slf4j +public class EsCoreServiceImpl implements EsCoreService { + + @Resource + private OrdersDao ordersDao; + @Resource + private CashOutDao cashOutDao; + @Resource + private CourseCollectDao courseCollectDao; + @Resource + private CourseUserDao courseUserDao; + @Resource + private DiscSpinningRecordDao discSpinningRecordDao; + @Resource + private PayDetailsDao payDetailsDao; + @Resource + private UserMoneyDetailsDao userMoneyDetailsDao; + @Resource + private TaskCenterRecordDao taskCenterRecordDao; + + @Resource + private EsOrdersMapper esOrdersMapper; + + @Resource + private EsCashOutMapper esCashOutMapper; + + @Resource + private EsCourseCollectMapper esCourseCollectMapper; + + @Resource + private EsCourseUserMapper esCourseUserMapper; + @Resource + private EsDiscSpinningRecordMapper esDiscSpinningRecordMapper; + @Resource + private EsPayDetailsMapper esPayDetailsMapper; + + @Resource + private EsUserMoneyDetailsMapper esUserMoneyDetailsMapper; + @Resource + private EsTaskCenterRecordMapper esTaskCenterRecordMapper; + + @Override + public void sync() { + List list = new ArrayList<>(); + for (int i = 0; i < 10; i++) { + list.add(i + ""); + } + CompletableFuture future1 = CompletableFuture.runAsync(() -> { + // 执行方法1的代码 + System.out.println("方法1正在执行..."); + syncUserMoneyDetails(list); + }); + CompletableFuture future2 = CompletableFuture.runAsync(() -> { + // 执行方法2的代码 + System.out.println("方法2正在执行..."); + syncOrders(list); + }); + CompletableFuture future3 = CompletableFuture.runAsync(() -> { + // 执行方法3的代码 + System.out.println("方法3正在执行..."); + syncPayDetails(list); + }); + CompletableFuture future4 = CompletableFuture.runAsync(() -> { + // 执行方法4的代码 + System.out.println("方法4正在执行..."); + syncDiscSpinningRecord(list); + }); + CompletableFuture future5 = CompletableFuture.runAsync(() -> { + // 执行方法6的代码 + System.out.println("方法5正在执行..."); + syncCashOut(list); + }); + CompletableFuture future6 = CompletableFuture.runAsync(() -> { + // 执行方法6的代码 + System.out.println("方法6正在执行..."); + syncCourseCollect(list); + }); + CompletableFuture future7 = CompletableFuture.runAsync(() -> { + // 执行方法7的代码 + System.out.println("方法7正在执行..."); + syncCourseUser(list); + }); + CompletableFuture future8 = CompletableFuture.runAsync(() -> { + // 执行方法8的代码 + System.out.println("方法8正在执行..."); + syncTaskCenterRecord(list); + }); + // 等待多个任务完成 + CompletableFuture.allOf(future1, future2, future3, future4, future5, future6, future7, future8).join(); + System.out.println("所有方法已并行执行完毕。"); + /* + syncUserMoneyDetails(list); + syncOrders(list); + syncCourseCollect(list); + syncPayDetails(list); + syncDiscSpinningRecord(list); + syncCashOut(list); + syncCourseUser(list); + syncTaskCenterRecord(list); + + System.out.println("所有方法已并行执行完毕。"); + */ + } + + private void syncOrders(List list) { + list.parallelStream().forEach(i -> { + System.out.println("同步订单数据:" + i); + List batchList = ordersDao.selectList(Wrappers.lambdaQuery().likeLeft(Orders::getOrdersId, i)); + esOrdersMapper.insertBatch(batchList); + }); + } + + private void syncCashOut(List list) { + list.parallelStream().forEach(i -> { + System.out.println("同步提现数据:" + i); + List batchList = cashOutDao.selectList(Wrappers.lambdaQuery().likeLeft(CashOut::getId, i)); + if (CollUtil.isNotEmpty(batchList)) { + esCashOutMapper.insertBatch(batchList); + } + }); + } + + + private void syncCourseCollect(List list) { + list.parallelStream().forEach(i -> { + System.out.println("同步短剧收藏数据:" + i); + List batchList = courseCollectDao.selectList(Wrappers.lambdaQuery().likeLeft(CourseCollect::getCourseCollectId, i)); + esCourseCollectMapper.insertBatch(batchList); + }); + } + + private void syncCourseUser(List list) { + list.parallelStream().forEach(i -> { + System.out.println("同步短剧用户数据:" + i); + List batchList = courseUserDao.selectList(Wrappers.lambdaQuery().likeLeft(CourseUser::getCourseUserId, i)); + esCourseUserMapper.insertBatch(batchList); + }); + } + + private void syncTaskCenterRecord(List list) { + list.parallelStream().forEach(i -> { + System.out.println("同步任务中心数据:" + i); + List batchList = taskCenterRecordDao.selectList(Wrappers.lambdaQuery().likeLeft(TaskCenterRecord::getId, i)); + esTaskCenterRecordMapper.insertBatch(batchList); + }); + } + + private void syncDiscSpinningRecord(List list) { + list.parallelStream().forEach(i -> { + System.out.println("同步抽奖记录数据:" + i); + List batchList = discSpinningRecordDao.selectList(Wrappers.lambdaQuery().likeLeft(DiscSpinningRecord::getId, i)); + esDiscSpinningRecordMapper.insertBatch(batchList); + }); + } + + private void syncPayDetails(List list) { + list.parallelStream().forEach(i -> { + System.out.println("同步支付详情数据:" + i); + List batchList = payDetailsDao.selectList(Wrappers.lambdaQuery().likeLeft(PayDetails::getId, i)); + esPayDetailsMapper.insertBatch(batchList); + }); + } + + private void syncUserMoneyDetails(List list) { + list.parallelStream().forEach(i -> { + System.out.println("同步用户资金明细数据:" + i); + List batchList = userMoneyDetailsDao.selectList(Wrappers.lambdaQuery().likeLeft(UserMoneyDetails::getId, i)); + esUserMoneyDetailsMapper.insertBatch(batchList); + }); + } + +} diff --git a/src/main/java/com/sqx/modules/es/service/impl/EsOrdersServiceImpl.java b/src/main/java/com/sqx/modules/es/service/impl/EsOrdersServiceImpl.java new file mode 100644 index 00000000..345d03fc --- /dev/null +++ b/src/main/java/com/sqx/modules/es/service/impl/EsOrdersServiceImpl.java @@ -0,0 +1,23 @@ +package com.sqx.modules.es.service.impl; + +import com.sqx.modules.es.mapper.EsOrdersMapper; +import com.sqx.modules.es.service.EsOrdersService; +import com.sqx.modules.orders.entity.Orders; +import com.sqx.modules.orders.service.OrdersService; + +import javax.annotation.Resource; + +/** + * @author tankaikai + * @since 2025-01-16 9:51 + */ +public class EsOrdersServiceImpl extends EsServiceImpl implements EsOrdersService { + + @Resource + private OrdersService ordersService; + + public OrdersService getOriginalService() { + return ordersService; + } + +} diff --git a/src/main/java/com/sqx/modules/es/service/impl/EsServiceImpl.java b/src/main/java/com/sqx/modules/es/service/impl/EsServiceImpl.java new file mode 100644 index 00000000..63d07fd2 --- /dev/null +++ b/src/main/java/com/sqx/modules/es/service/impl/EsServiceImpl.java @@ -0,0 +1,26 @@ +package com.sqx.modules.es.service.impl; + +import com.sqx.modules.es.service.IEsService; +import org.apache.ibatis.logging.Log; +import org.apache.ibatis.logging.LogFactory; +import org.dromara.easyes.core.kernel.BaseEsMapper; + +import javax.annotation.Resource; + +/** + * @author tankaikai + * @since 2025-01-16 9:45 + */ +public class EsServiceImpl, T> implements IEsService { + protected Log log = LogFactory.getLog(this.getClass()); + @Resource + protected M baseEsMapper; + + public EsServiceImpl() { + } + + public M getBaseEsMapper() { + return this.baseEsMapper; + } + +} \ No newline at end of file diff --git a/src/main/java/com/sqx/modules/orders/entity/Orders.java b/src/main/java/com/sqx/modules/orders/entity/Orders.java index 5405caa0..6056e7ce 100644 --- a/src/main/java/com/sqx/modules/orders/entity/Orders.java +++ b/src/main/java/com/sqx/modules/orders/entity/Orders.java @@ -5,6 +5,8 @@ import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.sqx.modules.course.entity.Course; import lombok.Data; +import org.dromara.easyes.annotation.IndexId; +import org.dromara.easyes.annotation.IndexName; import java.io.Serializable; import java.math.BigDecimal; @@ -16,6 +18,7 @@ import java.math.BigDecimal; */ @Data @TableName("orders") +@IndexName(value = "orders",keepGlobalPrefix = true) public class Orders implements Serializable { private static final long serialVersionUID = 1L; @@ -25,6 +28,7 @@ public class Orders implements Serializable { */ @TableId(type = IdType.ID_WORKER) @JsonSerialize(using = ToStringSerializer.class) + @IndexId(type= org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE) private Long ordersId; /** diff --git a/src/main/java/com/sqx/modules/pay/entity/CashOut.java b/src/main/java/com/sqx/modules/pay/entity/CashOut.java index 28da45a0..db1eb8b7 100644 --- a/src/main/java/com/sqx/modules/pay/entity/CashOut.java +++ b/src/main/java/com/sqx/modules/pay/entity/CashOut.java @@ -8,6 +8,8 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; +import org.dromara.easyes.annotation.IndexId; +import org.dromara.easyes.annotation.IndexName; import java.io.Serializable; import java.math.BigDecimal; @@ -19,6 +21,7 @@ import java.math.BigDecimal; */ @Data @TableName("cash_out") +@IndexName(value = "cash_out", keepGlobalPrefix = true) public class CashOut implements Serializable { private static final long serialVersionUID = 1L; @@ -27,8 +30,9 @@ public class CashOut implements Serializable { * 申请提现id */ @TableId(type = IdType.ID_WORKER) + @IndexId(type = org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE) @JsonSerialize(using = ToStringSerializer.class) - private long id; + private Long id; /** * 申请时间 diff --git a/src/main/java/com/sqx/modules/pay/entity/PayDetails.java b/src/main/java/com/sqx/modules/pay/entity/PayDetails.java index e179af95..ff7e417f 100644 --- a/src/main/java/com/sqx/modules/pay/entity/PayDetails.java +++ b/src/main/java/com/sqx/modules/pay/entity/PayDetails.java @@ -7,6 +7,8 @@ import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.databind.annotation.JsonSerialize; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; +import org.dromara.easyes.annotation.IndexId; +import org.dromara.easyes.annotation.IndexName; import java.io.Serializable; import java.math.BigDecimal; @@ -17,6 +19,7 @@ import java.math.BigDecimal; */ @Data @TableName("pay_details") +@IndexName(value = "pay_details", keepGlobalPrefix = true) public class PayDetails implements Serializable { private static final long serialVersionUID = 1L; @@ -25,6 +28,7 @@ public class PayDetails implements Serializable { * 充值记录id */ @TableId(type = IdType.ID_WORKER) + @IndexId(type = org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE) @JsonSerialize(using = ToStringSerializer.class) private Long id; diff --git a/src/main/java/com/sqx/modules/taskCenter/entity/TaskCenterRecord.java b/src/main/java/com/sqx/modules/taskCenter/entity/TaskCenterRecord.java index a179d469..2442f467 100644 --- a/src/main/java/com/sqx/modules/taskCenter/entity/TaskCenterRecord.java +++ b/src/main/java/com/sqx/modules/taskCenter/entity/TaskCenterRecord.java @@ -9,6 +9,8 @@ import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import org.dromara.easyes.annotation.IndexId; +import org.dromara.easyes.annotation.IndexName; /** * 任务领取记录(TaskCenterRecord)表实体类 @@ -18,9 +20,11 @@ import lombok.Data; */ @Data @TableName("task_center_record") +@IndexName(value = "task_center_record", keepGlobalPrefix = true) @ApiModel(value = "任务领取记录 实体类") public class TaskCenterRecord extends Model { @TableId(type = IdType.ID_WORKER) + @IndexId(type= org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE) @ApiModelProperty(value = "id",hidden = true) @JsonSerialize(using = ToStringSerializer.class) private Long id; diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml index 930d7734..eb5a2825 100644 --- a/src/main/resources/application.yml +++ b/src/main/resources/application.yml @@ -28,12 +28,12 @@ spring: mvc: throw-exception-if-no-handler-found: true -# pathmatch: -# matching-strategy: ant_path_matcher + # pathmatch: + # matching-strategy: ant_path_matcher shardingsphere: #广播表 -# broadcast-tables: -# - course + # broadcast-tables: + # - course # 短剧集表 通过course_id 分 course-details: - course_details @@ -159,3 +159,21 @@ sqx: header: token uni: adSecret: 122e4ff1edc66dcf8761f7f7ffc81e0f8773cbfafb58aed29c72fbd092c77315 + +easy-es: + banner: false + address: 47.122.74.162:9200 + username: elastic #es用户名,若无则删去此行配置 + password: rer8cpBAvEWs #es密码,若无则删去此行配置 + keep-alive-millis: 30000 # 心跳策略时间 单位:ms + connect-timeout: 15000 # 连接超时时间 单位:ms + socket-timeout: 600000 # 通信超时时间 单位:ms + request-timeout: 15000 # 请求超时时间 单位:ms + connection-request-timeout: 15000 # 连接请求超时时间 单位:ms + global-config: + process-index-mode: manual #索引处理模式,smoothly:平滑模式, not_smoothly:非平滑模式, manual:手动模式,,默认开启此模式 + print-dsl: true + async-process-index-blocking: true # 异步处理索引是否阻塞主线程 默认阻塞 数据量过大时调整为非阻塞异步进行 项目启动更快 + db-config: + map-underscore-to-camel-case: true # 是否开启下划线转驼峰 默认为false + index-prefix: ${spring.profiles.active}_ # 索引前缀,可用于区分环境 默认为空 用法和MP的tablePrefix一样的作用和用法 \ No newline at end of file diff --git a/src/main/resources/rebel.xml b/src/main/resources/rebel.xml new file mode 100644 index 00000000..94615c88 --- /dev/null +++ b/src/main/resources/rebel.xml @@ -0,0 +1,16 @@ + + + + + + duanju + + + + + + + diff --git a/src/test/java/com/sqx/es/SyncDataToEsScriptGenTest.java b/src/test/java/com/sqx/es/SyncDataToEsScriptGenTest.java new file mode 100644 index 00000000..e9842f6e --- /dev/null +++ b/src/test/java/com/sqx/es/SyncDataToEsScriptGenTest.java @@ -0,0 +1,57 @@ +package com.sqx.es; + +import cn.hutool.core.convert.Convert; +import cn.hutool.core.io.FileUtil; +import cn.hutool.core.util.StrUtil; +import cn.hutool.json.JSONArray; +import cn.hutool.json.JSONObject; +import cn.hutool.json.JSONUtil; + +import java.io.File; +import java.util.HashMap; +import java.util.Map; +import java.util.Set; +import java.util.stream.Collectors; + +/** + * @author tankaikai + * @since 2025-01-08 13:33 + */ +public class SyncDataToEsScriptGenTest { + + public static void main(String[] args) { + build("dev"); + } + + private static void build(String env) { + String absolutePath = FileUtil.getAbsolutePath("", SyncDataToEsScriptGenTest.class); + String basePath = FileUtil.getParent(absolutePath, 5) + "/src/test/java/com/sqx/es"; + String configPath = basePath + "/" + env + "-config-data.json"; + String config = FileUtil.readUtf8String(configPath); + System.out.println(config); + String outPath = basePath + "/" + "out"; + FileUtil.del(outPath); + FileUtil.mkdir(outPath); + String templatePath = basePath + "/" + "template.yml"; + String template = FileUtil.readUtf8String(templatePath); + JSONObject data = JSONUtil.parseObj(config); + + JSONArray dbList = data.getJSONArray("dbList"); + JSONArray tableList = data.getJSONArray("tableList"); + Set dbSet = dbList.stream().map(obj -> Convert.toStr(obj)).collect(Collectors.toSet()); + for (String dbName : dbSet) { + for (int i = 0; i < tableList.size(); i++) { + Map params = new HashMap(); + params.put("env", data.getStr("env")); + params.put("dbName", dbName); + JSONObject table = tableList.getJSONObject(i); + String tableName = table.getStr("tableName"); + params.put("tableName", tableName); + params.put("mappingSql", table.getStr("mappingSql")); + String content = StrUtil.format(template, params); + String fileName = tableName + "@" + env + "." + dbName + ".yml"; + FileUtil.writeUtf8String(content, new File(outPath + "/" + fileName)); + } + } + } +} diff --git a/src/test/java/com/sqx/es/dev-config-data.json b/src/test/java/com/sqx/es/dev-config-data.json new file mode 100644 index 00000000..cab53733 --- /dev/null +++ b/src/test/java/com/sqx/es/dev-config-data.json @@ -0,0 +1,44 @@ +{ + "env": "dev", + "dbList": [ + "duanju-0", + "duanju-1", + "duanju-2", + "duanju-3", + "duanju-4" + ], + "tableList": [ + { + "tableName": "user_money_details", + "mappingSql": "select a.id as _id, a.user_id, a.sys_user_id, a.by_user_id, a.title, a.classify, a.type, a.state, a.money, a.content, a.money_type, a.create_time, a.source_id from user_money_details a" + }, + { + "tableName": "orders", + "mappingSql": "select a.orders_id as _id, a.orders_no, a.trade_no, a.user_id, a.course_id, a.pay_money, a.pay_way, a.status, a.create_time, a.refund_content, a.orders_type, a.vip_name_type, a.course_details_id, a.course_details_ids, a.qd_money, a.sys_user_id, a.one_money, a.one_user_id, a.two_money, a.two_user_id, a.pay_time, a.pay_diamond, a.diamond from orders a" + }, + { + "tableName": "course_collect", + "mappingSql": "select a.course_collect_id as _id, a.course_id, a.user_id, a.create_time, a.course_details_id, a.classify, a.update_time from course_collect a" + }, + { + "tableName": "pay_details", + "mappingSql": "select a.id as _id, a.classify, a.trade_no, a.money, a.user_id, a.state, a.create_time, a.pay_time, a.type, a.remark, a.order_id, a.product_id, a.pay_diamond, a.diamond, a.third_order_no from pay_details a" + }, + { + "tableName": "disc_spinning_record", + "mappingSql": "select a.id as _id, a.user_id, a.source_id, a.img_url, a.name, a.type, a.number, a.target, a.target_id, a.draw_day, a.create_time, a.source from disc_spinning_record a" + }, + { + "tableName": "cash_out", + "mappingSql": "select a.id as _id, a.create_at, a.is_out, a.money, a.out_at, a.relation_id, a.user_id, a.zhifubao, a.zhifubao_name, a.order_number, a.state, a.refund, a.rate, a.sys_user_id, a.user_type, a.withdraw_type from cash_out a" + }, + { + "tableName": "course_user", + "mappingSql": "select a.course_user_id as _id, a.course_id, a.order_id, a.user_id, a.create_time, a.update_time, a.course_details_id, a.classify from course_user a" + }, + { + "tableName": "task_center_record", + "mappingSql": "select a.id as _id, a.user_id, a.task_id, a.source_id, a.name, a.type, a.target_id, a.number, a.create_time, a.update_time from task_center_record a" + } + ] +} \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/cash_out@dev.duanju-0.yml b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-0.yml new file mode 100644 index 00000000..460382b2 --- /dev/null +++ b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-0.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-0 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_cash_out + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.create_at, a.is_out, a.money, a.out_at, a.relation_id, a.user_id, a.zhifubao, a.zhifubao_name, a.order_number, a.state, a.refund, a.rate, a.sys_user_id, a.user_type, a.withdraw_type from cash_out a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/cash_out@dev.duanju-1.yml b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-1.yml new file mode 100644 index 00000000..1612241a --- /dev/null +++ b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-1.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-1 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_cash_out + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.create_at, a.is_out, a.money, a.out_at, a.relation_id, a.user_id, a.zhifubao, a.zhifubao_name, a.order_number, a.state, a.refund, a.rate, a.sys_user_id, a.user_type, a.withdraw_type from cash_out a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/cash_out@dev.duanju-2.yml b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-2.yml new file mode 100644 index 00000000..7d18d0bb --- /dev/null +++ b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-2.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-2 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_cash_out + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.create_at, a.is_out, a.money, a.out_at, a.relation_id, a.user_id, a.zhifubao, a.zhifubao_name, a.order_number, a.state, a.refund, a.rate, a.sys_user_id, a.user_type, a.withdraw_type from cash_out a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/cash_out@dev.duanju-3.yml b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-3.yml new file mode 100644 index 00000000..8dc4ef47 --- /dev/null +++ b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-3.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-3 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_cash_out + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.create_at, a.is_out, a.money, a.out_at, a.relation_id, a.user_id, a.zhifubao, a.zhifubao_name, a.order_number, a.state, a.refund, a.rate, a.sys_user_id, a.user_type, a.withdraw_type from cash_out a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/cash_out@dev.duanju-4.yml b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-4.yml new file mode 100644 index 00000000..6c36cd6c --- /dev/null +++ b/src/test/java/com/sqx/es/out/cash_out@dev.duanju-4.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-4 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_cash_out + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.create_at, a.is_out, a.money, a.out_at, a.relation_id, a.user_id, a.zhifubao, a.zhifubao_name, a.order_number, a.state, a.refund, a.rate, a.sys_user_id, a.user_type, a.withdraw_type from cash_out a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_collect@dev.duanju-0.yml b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-0.yml new file mode 100644 index 00000000..32a48867 --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-0.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-0 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_collect + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_collect_id as _id, a.course_id, a.user_id, a.create_time, a.course_details_id, a.classify, a.update_time from course_collect a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_collect@dev.duanju-1.yml b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-1.yml new file mode 100644 index 00000000..abb1fe07 --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-1.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-1 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_collect + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_collect_id as _id, a.course_id, a.user_id, a.create_time, a.course_details_id, a.classify, a.update_time from course_collect a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_collect@dev.duanju-2.yml b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-2.yml new file mode 100644 index 00000000..e613cd0c --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-2.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-2 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_collect + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_collect_id as _id, a.course_id, a.user_id, a.create_time, a.course_details_id, a.classify, a.update_time from course_collect a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_collect@dev.duanju-3.yml b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-3.yml new file mode 100644 index 00000000..9809aabe --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-3.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-3 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_collect + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_collect_id as _id, a.course_id, a.user_id, a.create_time, a.course_details_id, a.classify, a.update_time from course_collect a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_collect@dev.duanju-4.yml b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-4.yml new file mode 100644 index 00000000..79cb095e --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_collect@dev.duanju-4.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-4 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_collect + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_collect_id as _id, a.course_id, a.user_id, a.create_time, a.course_details_id, a.classify, a.update_time from course_collect a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_user@dev.duanju-0.yml b/src/test/java/com/sqx/es/out/course_user@dev.duanju-0.yml new file mode 100644 index 00000000..46b74edb --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_user@dev.duanju-0.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-0 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_user + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_user_id as _id, a.course_id, a.order_id, a.user_id, a.create_time, a.update_time, a.course_details_id, a.classify from course_user a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_user@dev.duanju-1.yml b/src/test/java/com/sqx/es/out/course_user@dev.duanju-1.yml new file mode 100644 index 00000000..0222e8b5 --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_user@dev.duanju-1.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-1 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_user + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_user_id as _id, a.course_id, a.order_id, a.user_id, a.create_time, a.update_time, a.course_details_id, a.classify from course_user a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_user@dev.duanju-2.yml b/src/test/java/com/sqx/es/out/course_user@dev.duanju-2.yml new file mode 100644 index 00000000..6485fb00 --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_user@dev.duanju-2.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-2 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_user + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_user_id as _id, a.course_id, a.order_id, a.user_id, a.create_time, a.update_time, a.course_details_id, a.classify from course_user a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_user@dev.duanju-3.yml b/src/test/java/com/sqx/es/out/course_user@dev.duanju-3.yml new file mode 100644 index 00000000..89efc7dd --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_user@dev.duanju-3.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-3 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_user + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_user_id as _id, a.course_id, a.order_id, a.user_id, a.create_time, a.update_time, a.course_details_id, a.classify from course_user a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/course_user@dev.duanju-4.yml b/src/test/java/com/sqx/es/out/course_user@dev.duanju-4.yml new file mode 100644 index 00000000..e2b30d39 --- /dev/null +++ b/src/test/java/com/sqx/es/out/course_user@dev.duanju-4.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-4 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_course_user + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.course_user_id as _id, a.course_id, a.order_id, a.user_id, a.create_time, a.update_time, a.course_details_id, a.classify from course_user a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-0.yml b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-0.yml new file mode 100644 index 00000000..cdf375f0 --- /dev/null +++ b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-0.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-0 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_disc_spinning_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.source_id, a.img_url, a.name, a.type, a.number, a.target, a.target_id, a.draw_day, a.create_time, a.source from disc_spinning_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-1.yml b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-1.yml new file mode 100644 index 00000000..faffb426 --- /dev/null +++ b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-1.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-1 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_disc_spinning_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.source_id, a.img_url, a.name, a.type, a.number, a.target, a.target_id, a.draw_day, a.create_time, a.source from disc_spinning_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-2.yml b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-2.yml new file mode 100644 index 00000000..c7df8f24 --- /dev/null +++ b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-2.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-2 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_disc_spinning_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.source_id, a.img_url, a.name, a.type, a.number, a.target, a.target_id, a.draw_day, a.create_time, a.source from disc_spinning_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-3.yml b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-3.yml new file mode 100644 index 00000000..1ca422c7 --- /dev/null +++ b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-3.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-3 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_disc_spinning_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.source_id, a.img_url, a.name, a.type, a.number, a.target, a.target_id, a.draw_day, a.create_time, a.source from disc_spinning_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-4.yml b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-4.yml new file mode 100644 index 00000000..5a8e327d --- /dev/null +++ b/src/test/java/com/sqx/es/out/disc_spinning_record@dev.duanju-4.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-4 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_disc_spinning_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.source_id, a.img_url, a.name, a.type, a.number, a.target, a.target_id, a.draw_day, a.create_time, a.source from disc_spinning_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/orders@dev.duanju-0.yml b/src/test/java/com/sqx/es/out/orders@dev.duanju-0.yml new file mode 100644 index 00000000..43ba12e7 --- /dev/null +++ b/src/test/java/com/sqx/es/out/orders@dev.duanju-0.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-0 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_orders + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.orders_id as _id, a.orders_no, a.trade_no, a.user_id, a.course_id, a.pay_money, a.pay_way, a.status, a.create_time, a.refund_content, a.orders_type, a.vip_name_type, a.course_details_id, a.course_details_ids, a.qd_money, a.sys_user_id, a.one_money, a.one_user_id, a.two_money, a.two_user_id, a.pay_time, a.pay_diamond, a.diamond from orders a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/orders@dev.duanju-1.yml b/src/test/java/com/sqx/es/out/orders@dev.duanju-1.yml new file mode 100644 index 00000000..9311be67 --- /dev/null +++ b/src/test/java/com/sqx/es/out/orders@dev.duanju-1.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-1 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_orders + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.orders_id as _id, a.orders_no, a.trade_no, a.user_id, a.course_id, a.pay_money, a.pay_way, a.status, a.create_time, a.refund_content, a.orders_type, a.vip_name_type, a.course_details_id, a.course_details_ids, a.qd_money, a.sys_user_id, a.one_money, a.one_user_id, a.two_money, a.two_user_id, a.pay_time, a.pay_diamond, a.diamond from orders a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/orders@dev.duanju-2.yml b/src/test/java/com/sqx/es/out/orders@dev.duanju-2.yml new file mode 100644 index 00000000..7bfc79d1 --- /dev/null +++ b/src/test/java/com/sqx/es/out/orders@dev.duanju-2.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-2 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_orders + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.orders_id as _id, a.orders_no, a.trade_no, a.user_id, a.course_id, a.pay_money, a.pay_way, a.status, a.create_time, a.refund_content, a.orders_type, a.vip_name_type, a.course_details_id, a.course_details_ids, a.qd_money, a.sys_user_id, a.one_money, a.one_user_id, a.two_money, a.two_user_id, a.pay_time, a.pay_diamond, a.diamond from orders a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/orders@dev.duanju-3.yml b/src/test/java/com/sqx/es/out/orders@dev.duanju-3.yml new file mode 100644 index 00000000..6c47aba2 --- /dev/null +++ b/src/test/java/com/sqx/es/out/orders@dev.duanju-3.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-3 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_orders + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.orders_id as _id, a.orders_no, a.trade_no, a.user_id, a.course_id, a.pay_money, a.pay_way, a.status, a.create_time, a.refund_content, a.orders_type, a.vip_name_type, a.course_details_id, a.course_details_ids, a.qd_money, a.sys_user_id, a.one_money, a.one_user_id, a.two_money, a.two_user_id, a.pay_time, a.pay_diamond, a.diamond from orders a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/orders@dev.duanju-4.yml b/src/test/java/com/sqx/es/out/orders@dev.duanju-4.yml new file mode 100644 index 00000000..c8618fd2 --- /dev/null +++ b/src/test/java/com/sqx/es/out/orders@dev.duanju-4.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-4 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_orders + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.orders_id as _id, a.orders_no, a.trade_no, a.user_id, a.course_id, a.pay_money, a.pay_way, a.status, a.create_time, a.refund_content, a.orders_type, a.vip_name_type, a.course_details_id, a.course_details_ids, a.qd_money, a.sys_user_id, a.one_money, a.one_user_id, a.two_money, a.two_user_id, a.pay_time, a.pay_diamond, a.diamond from orders a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/pay_details@dev.duanju-0.yml b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-0.yml new file mode 100644 index 00000000..daf58a63 --- /dev/null +++ b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-0.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-0 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_pay_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.classify, a.trade_no, a.money, a.user_id, a.state, a.create_time, a.pay_time, a.type, a.remark, a.order_id, a.product_id, a.pay_diamond, a.diamond, a.third_order_no from pay_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/pay_details@dev.duanju-1.yml b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-1.yml new file mode 100644 index 00000000..44aeabae --- /dev/null +++ b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-1.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-1 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_pay_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.classify, a.trade_no, a.money, a.user_id, a.state, a.create_time, a.pay_time, a.type, a.remark, a.order_id, a.product_id, a.pay_diamond, a.diamond, a.third_order_no from pay_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/pay_details@dev.duanju-2.yml b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-2.yml new file mode 100644 index 00000000..47463d62 --- /dev/null +++ b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-2.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-2 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_pay_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.classify, a.trade_no, a.money, a.user_id, a.state, a.create_time, a.pay_time, a.type, a.remark, a.order_id, a.product_id, a.pay_diamond, a.diamond, a.third_order_no from pay_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/pay_details@dev.duanju-3.yml b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-3.yml new file mode 100644 index 00000000..147326b7 --- /dev/null +++ b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-3.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-3 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_pay_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.classify, a.trade_no, a.money, a.user_id, a.state, a.create_time, a.pay_time, a.type, a.remark, a.order_id, a.product_id, a.pay_diamond, a.diamond, a.third_order_no from pay_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/pay_details@dev.duanju-4.yml b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-4.yml new file mode 100644 index 00000000..24da9874 --- /dev/null +++ b/src/test/java/com/sqx/es/out/pay_details@dev.duanju-4.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-4 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_pay_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.classify, a.trade_no, a.money, a.user_id, a.state, a.create_time, a.pay_time, a.type, a.remark, a.order_id, a.product_id, a.pay_diamond, a.diamond, a.third_order_no from pay_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-0.yml b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-0.yml new file mode 100644 index 00000000..71199187 --- /dev/null +++ b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-0.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-0 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_task_center_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.task_id, a.source_id, a.name, a.type, a.target_id, a.number, a.create_time, a.update_time from task_center_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-1.yml b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-1.yml new file mode 100644 index 00000000..fc3141d1 --- /dev/null +++ b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-1.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-1 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_task_center_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.task_id, a.source_id, a.name, a.type, a.target_id, a.number, a.create_time, a.update_time from task_center_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-2.yml b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-2.yml new file mode 100644 index 00000000..0e619e3b --- /dev/null +++ b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-2.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-2 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_task_center_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.task_id, a.source_id, a.name, a.type, a.target_id, a.number, a.create_time, a.update_time from task_center_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-3.yml b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-3.yml new file mode 100644 index 00000000..ac1b16ea --- /dev/null +++ b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-3.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-3 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_task_center_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.task_id, a.source_id, a.name, a.type, a.target_id, a.number, a.create_time, a.update_time from task_center_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-4.yml b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-4.yml new file mode 100644 index 00000000..8fde8f96 --- /dev/null +++ b/src/test/java/com/sqx/es/out/task_center_record@dev.duanju-4.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-4 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_task_center_record + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.task_id, a.source_id, a.name, a.type, a.target_id, a.number, a.create_time, a.update_time from task_center_record a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-0.yml b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-0.yml new file mode 100644 index 00000000..3854bfe4 --- /dev/null +++ b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-0.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-0 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_user_money_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.sys_user_id, a.by_user_id, a.title, a.classify, a.type, a.state, a.money, a.content, a.money_type, a.create_time, a.source_id from user_money_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-1.yml b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-1.yml new file mode 100644 index 00000000..53e268e0 --- /dev/null +++ b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-1.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-1 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_user_money_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.sys_user_id, a.by_user_id, a.title, a.classify, a.type, a.state, a.money, a.content, a.money_type, a.create_time, a.source_id from user_money_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-2.yml b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-2.yml new file mode 100644 index 00000000..947eccbe --- /dev/null +++ b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-2.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-2 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_user_money_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.sys_user_id, a.by_user_id, a.title, a.classify, a.type, a.state, a.money, a.content, a.money_type, a.create_time, a.source_id from user_money_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-3.yml b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-3.yml new file mode 100644 index 00000000..96e58264 --- /dev/null +++ b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-3.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-3 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_user_money_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.sys_user_id, a.by_user_id, a.title, a.classify, a.type, a.state, a.money, a.content, a.money_type, a.create_time, a.source_id from user_money_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-4.yml b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-4.yml new file mode 100644 index 00000000..18ec0cbd --- /dev/null +++ b/src/test/java/com/sqx/es/out/user_money_details@dev.duanju-4.yml @@ -0,0 +1,16 @@ +dataSourceKey: dev_duanju-4 +outerAdapterKey: esKey1 +destination: dev_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_user_money_details + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "select a.id as _id, a.user_id, a.sys_user_id, a.by_user_id, a.title, a.classify, a.type, a.state, a.money, a.content, a.money_type, a.create_time, a.source_id from user_money_details a" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file diff --git a/src/test/java/com/sqx/es/prod-config-data.json b/src/test/java/com/sqx/es/prod-config-data.json new file mode 100644 index 00000000..808dde72 --- /dev/null +++ b/src/test/java/com/sqx/es/prod-config-data.json @@ -0,0 +1,44 @@ +{ + "env": "prod", + "dbList": [ + "duanju-0", + "duanju-1", + "duanju-2", + "duanju-3", + "duanju-4" + ], + "tableList": [ + { + "tableName": "user_money_details", + "mappingSql": "select a.id as _id, a.user_id, a.sys_user_id, a.by_user_id, a.title, a.classify, a.type, a.state, a.money, a.content, a.money_type, a.create_time, a.source_id from user_money_details a" + }, + { + "tableName": "orders", + "mappingSql": "select a.orders_id as _id, a.orders_no, a.trade_no, a.user_id, a.course_id, a.pay_money, a.pay_way, a.status, a.create_time, a.refund_content, a.orders_type, a.vip_name_type, a.course_details_id, a.course_details_ids, a.qd_money, a.sys_user_id, a.one_money, a.one_user_id, a.two_money, a.two_user_id, a.pay_time, a.pay_diamond, a.diamond from orders a" + }, + { + "tableName": "course_collect", + "mappingSql": "select a.course_collect_id as _id, a.course_id, a.user_id, a.create_time, a.course_details_id, a.classify, a.update_time from course_collect a" + }, + { + "tableName": "pay_details", + "mappingSql": "select a.id as _id, a.classify, a.trade_no, a.money, a.user_id, a.state, a.create_time, a.pay_time, a.type, a.remark, a.order_id, a.product_id, a.pay_diamond, a.diamond, a.third_order_no from pay_details a" + }, + { + "tableName": "disc_spinning_record", + "mappingSql": "select a.id as _id, a.user_id, a.source_id, a.img_url, a.name, a.type, a.number, a.target, a.target_id, a.draw_day, a.create_time, a.source from disc_spinning_record a" + }, + { + "tableName": "cash_out", + "mappingSql": "select a.id as _id, a.create_at, a.is_out, a.money, a.out_at, a.relation_id, a.user_id, a.zhifubao, a.zhifubao_name, a.order_number, a.state, a.refund, a.rate, a.sys_user_id, a.user_type, a.withdraw_type from cash_out a" + }, + { + "tableName": "course_user", + "mappingSql": "select a.course_user_id as _id, a.course_id, a.order_id, a.user_id, a.create_time, a.update_time, a.course_details_id, a.classify from course_user a" + }, + { + "tableName": "task_center_record", + "mappingSql": "select a.id as _id, a.user_id, a.task_id, a.source_id, a.name, a.type, a.target_id, a.number, a.create_time, a.update_time from task_center_record a" + } + ] +} \ No newline at end of file diff --git a/src/test/java/com/sqx/es/template.yml b/src/test/java/com/sqx/es/template.yml new file mode 100644 index 00000000..210e30b4 --- /dev/null +++ b/src/test/java/com/sqx/es/template.yml @@ -0,0 +1,16 @@ +dataSourceKey: {env}_{dbName} +outerAdapterKey: esKey1 +destination: {env}_sync_data_to_es +groupId: g1 +esMapping: + _index: dev_{tableName} + # _type: doc + _id: _id + upsert: true + # pk: "orders_id" + sql: "{mappingSql}" + # objFields: + # _labels: array:; + # _obj: object + # etlCondition: "where 1=1" + commitBatch: 3000 \ No newline at end of file