This commit is contained in:
谭凯凯
2025-01-06 09:57:10 +08:00
committed by Tankaikai
parent 5828199ba0
commit c74d319fba
28 changed files with 470 additions and 229 deletions

30
pom.xml
View File

@@ -240,6 +240,16 @@
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
</exclusion>
<exclusion>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
@@ -492,11 +502,21 @@
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<!--<dependency>-->
<!--<groupId>com.baidu.aip</groupId>-->
<!--            <artifactId>java-sdk</artifactId>-->
<!--            <version>4.11.3</version>-->
<!--</dependency>-->
<dependency>
<groupId>org.elasticsearch.client</groupId>
<artifactId>elasticsearch-rest-high-level-client</artifactId>
<version>7.14.0</version>
</dependency>
<dependency>
<groupId>org.elasticsearch</groupId>
<artifactId>elasticsearch</artifactId>
<version>7.14.0</version>
</dependency>
<dependency>
<groupId>org.dromara.easy-es</groupId>
<artifactId>easy-es-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
</dependencies>
<build>

View File

@@ -1,18 +1,17 @@
package com.sqx;
import org.dromara.easyes.starter.register.EsMapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.scheduling.annotation.EnableScheduling;
import java.util.Map;
/**
* @author GYJ
*/
@EnableCaching
@EnableScheduling
@EsMapperScan("com.sqx.modules.es.mapper")
@SpringBootApplication
public class SqxApplication {

View File

@@ -4,16 +4,15 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import java.io.Serializable;
import java.util.Date;
/**
*
* @TableName invite_achievement
@@ -26,7 +25,7 @@ public class InviteAchievement implements Serializable {
/**
*
*/
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;

View File

@@ -30,7 +30,7 @@ public class UserEntity implements Serializable {
*/
@Excel(name = "用户id", orderNum = "1")
@ApiModelProperty("用户id")
@TableId(value = "user_id")
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long userId;
/**

View File

@@ -1,10 +1,10 @@
package com.sqx.modules.app.entity;
import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
*
@@ -16,7 +16,7 @@ public class UserInfo implements Serializable {
/**
*
*/
@TableId
@TableId(type = IdType.ID_WORKER)
private Long id;
/**

View File

@@ -25,7 +25,7 @@ public class UserMoney implements Serializable {
* 主键id
*/
@ApiModelProperty("主键id")
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;

View File

@@ -1,8 +1,7 @@
package com.sqx.modules.app.entity;
import cn.hutool.core.date.DateUtil;
//import com.amazonaws.services.dynamodbv2.xspec.L;
//import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
@@ -12,7 +11,8 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
//import lombok.NoArgsConstructor;
import org.dromara.easyes.annotation.IndexId;
import org.dromara.easyes.annotation.IndexName;
import java.io.Serializable;
import java.math.BigDecimal;
@@ -20,14 +20,16 @@ import java.math.BigDecimal;
@Data
@AllArgsConstructor
@TableName("user_money_details")
@IndexName("user_money_details")
@ApiModel("钱包详情")
public class UserMoneyDetails implements Serializable {
/**
* 钱包详情id
*/
@ApiModelProperty("钱包详情id")
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
@IndexId(type = org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE)
private Long id;
/**
* 用户id

View File

@@ -14,8 +14,8 @@ import java.math.BigDecimal;
import java.util.List;
/**
* @description course 短剧
* @author fang
* @description course 短剧
* @date 2021-03-27
*/
@Data
@@ -27,7 +27,7 @@ public class Course implements Serializable {
/**
* 短剧id
*/
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long courseId;
@@ -154,7 +154,6 @@ public class Course implements Serializable {
private List<CourseDetails> listsDetail;
/**
* 短剧分类 1短剧 2链接 3文档
*/
@@ -339,5 +338,6 @@ public class Course implements Serializable {
private Integer weekView;
private Integer weekPay;
public Course() {}
public Course() {
}
}

View File

@@ -5,8 +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.apache.ibatis.annotations.Update;
import org.apache.ibatis.annotations.UpdateProvider;
import org.dromara.easyes.annotation.IndexId;
import org.dromara.easyes.annotation.IndexName;
import java.io.Serializable;
@@ -18,6 +18,7 @@ import java.io.Serializable;
@Data
@Accessors(chain = true)
@TableName("course_collect")
@IndexName("course_collect")
public class CourseCollect implements Serializable {
private static final long serialVersionUID = 1L;
@@ -26,8 +27,9 @@ public class CourseCollect implements Serializable {
/**
* 收藏id
*/
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
@IndexId(type= org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE)
private Long courseCollectId;
/**

View File

@@ -23,7 +23,7 @@ public class CourseDetails implements Serializable {
/**
* 短剧目录id
*/
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long courseDetailsId;

View File

@@ -22,7 +22,7 @@ public class CourseUser implements Serializable {
/**
* 我的短剧id
*/
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long courseUserId;

View File

@@ -1,8 +1,6 @@
package com.sqx.modules.discSpinning.entity;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
@@ -20,6 +18,7 @@ import java.math.BigDecimal;
@TableName("disc_spinning_record")
public class DiscSpinningRecord extends Model<DiscSpinningRecord> {
//主键
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;
@JsonSerialize(using = ToStringSerializer.class)

View File

@@ -0,0 +1,52 @@
package com.sqx.modules.es.controller;
import com.sqx.common.utils.Result;
import com.sqx.modules.es.service.EsOrdersService;
import com.sqx.modules.orders.entity.Orders;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import java.util.List;
import java.util.Map;
/**
* @author tankaikai
* @since 2025-01-02 20:33
*/
@Slf4j
@RestController
@RequestMapping(value = "/es/orders")
public class EsOrdersController {
@Autowired
private EsOrdersService esOrdersService;
@ApiOperation("分页")
@GetMapping("/page")
public Result page(@ApiIgnore @RequestParam Map<String, Object> params) {
return Result.success().put("page", null);
}
@ApiOperation("列表")
@GetMapping("/list")
public Result list(@ApiIgnore @RequestParam Map<String, Object> params) {
List<Orders> data = esOrdersService.list(params);
return Result.success().put("data", data);
}
@ApiOperation("列表")
@GetMapping("/{id}")
public Result info(@PathVariable Long id) {
Orders data = esOrdersService.info(id);
return Result.success().put("data", data);
}
@ApiOperation("保存")
@PostMapping("/save")
public Result save() {
esOrdersService.save();
return Result.success();
}
}

View File

@@ -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<CourseCollect> {
}

View File

@@ -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<Orders> {
}

View File

@@ -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<UserMoneyDetails> {
}

View File

@@ -0,0 +1,21 @@
package com.sqx.modules.es.service;
import com.sqx.modules.orders.entity.Orders;
import java.util.List;
import java.util.Map;
/**
* @author tankaikai
* @since 2025-01-02 20:27
*/
public interface EsOrdersService {
List<Orders> page(Map<String, Object> params);
List<Orders> list(Map<String, Object> params);
Orders info(Long id);
void save();
}

View File

@@ -0,0 +1,81 @@
package com.sqx.modules.es.service.impl;
import cn.hutool.core.lang.Dict;
import cn.hutool.core.util.PageUtil;
import com.sqx.modules.app.dao.UserMoneyDetailsDao;
import com.sqx.modules.app.entity.UserMoneyDetails;
import com.sqx.modules.es.mapper.EsOrdersMapper;
import com.sqx.modules.es.mapper.EsUserMoneyDetailsMapper;
import com.sqx.modules.es.service.EsOrdersService;
import com.sqx.modules.orders.dao.OrdersDao;
import com.sqx.modules.orders.entity.Orders;
import org.dromara.easyes.core.conditions.select.LambdaEsQueryWrapper;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* @author tankaikai
* @since 2025-01-02 20:27
*/
@Service
public class EsOrderServiceImpl implements EsOrdersService {
@Resource
private OrdersDao ordersDao;
@Resource
private UserMoneyDetailsDao userMoneyDetailsDao;
@Resource
private EsOrdersMapper esOrdersMapper;
@Resource
private EsUserMoneyDetailsMapper esUserMoneyDetailsMapper;
@Override
public List<Orders> page(Map<String, Object> params) {
return null;
}
@Override
public List<Orders> list(Map<String, Object> params) {
LambdaEsQueryWrapper<Orders> wrapper = new LambdaEsQueryWrapper<>();
wrapper.in(Orders::getCourseId, 1206L, 1208L)
.and(i -> i.eq(Orders::getOrdersId, 2307).eq(Orders::getOrdersNo, "1000001141962852"))
.or()
.and(i -> i.eq(Orders::getOrdersId, 2355).eq(Orders::getOrdersNo, "1000001702936915"));
return esOrdersMapper.selectList(wrapper);
}
@Override
public Orders info(Long id) {
Orders orders = esOrdersMapper.selectById(id);
return orders;
}
@Override
public void save() {
UserMoneyDetails details = userMoneyDetailsDao.selectById(2554L);
esUserMoneyDetailsMapper.insert(details);
Integer total = ordersDao.esCount();
//int size = 300;
int size = 1;
int totalPage = PageUtil.totalPage(total, size);
List<Dict> pageList = new ArrayList<>();
for (int page = 1; page <= totalPage; page++) {
Dict dict = new Dict();
dict.set("page", (page-1)*size);
dict.set("size", size);
pageList.add(dict);
break;
}
pageList.parallelStream().forEach(param -> {
Integer p = param.getInt("page");
Integer s = param.getInt("size");
List<Orders> list = ordersDao.esPage(p, s);
esOrdersMapper.insertBatch(list);
});
}
}

View File

@@ -1,5 +1,7 @@
package com.sqx.modules.invite.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
@@ -18,6 +20,7 @@ public class InviteMoney implements Serializable {
/**
* 邀请收益钱包id
*/
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;

View File

@@ -44,5 +44,10 @@ public interface OrdersDao extends BaseMapper<Orders> {
Integer countOrderNum(Long userId, String time);
Integer esCount();
List<Orders> esPage(@Param("page") Integer page, @Param("size") Integer size);
BigDecimal sumPayByCourseId(Long courseId);
}

View File

@@ -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("orders")
public class Orders implements Serializable {
private static final long serialVersionUID = 1L;
@@ -23,8 +26,9 @@ public class Orders implements Serializable {
/**
* 订单id
*/
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
@IndexId(type= org.dromara.easyes.annotation.rely.IdType.CUSTOMIZE)
private Long ordersId;
/**

View File

@@ -25,7 +25,7 @@ public class CashOut implements Serializable {
/**
* 申请提现id
*/
@TableId(type = IdType.INPUT)
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private long id;

View File

@@ -24,7 +24,7 @@ public class PayDetails implements Serializable {
/**
* 充值记录id
*/
@TableId(type = IdType.INPUT)
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long id;

View File

@@ -1,9 +1,6 @@
package com.sqx.modules.sys.entity;
import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.sqx.common.validator.group.AddGroup;
@@ -29,7 +26,7 @@ public class SysUserEntity implements Serializable {
/**
* 用户ID
*/
@TableId
@TableId(type = IdType.ID_WORKER)
@JsonSerialize(using = ToStringSerializer.class)
private Long userId;

View File

@@ -1,5 +1,7 @@
package com.sqx.modules.taskCenter.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
@@ -16,6 +18,8 @@ import lombok.Data;
@TableName("task_center_record")
@ApiModel(value = "任务领取记录 实体类")
public class TaskCenterRecord extends Model<TaskCenterRecord> {
@TableId(type = IdType.ID_WORKER)
@ApiModelProperty(value = "id",hidden = true)
private Long id;
@ApiModelProperty(value = "用户id",hidden = true)

View File

@@ -1,15 +1,15 @@
package com.sqx.modules.userSign.entity;
import java.util.Date;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* 用户签到表(UserSignRecord)表实体类
*
@@ -20,6 +20,8 @@ import lombok.Data;
@TableName("user_sign_record")
@ApiModel(value = "用户签到表 实体类")
public class UserSignRecord extends Model<UserSignRecord> {
@TableId(type = IdType.ID_WORKER)
@ApiModelProperty("id")
private Long id;
@ApiModelProperty("用户id")

View File

@@ -194,3 +194,13 @@ spring:
slaveDataSourceNames:
# - duanju-4
- duanju-slave-4
easy-es:
address: 47.122.74.162:9200
username: elastic #es用户名,若无则删去此行配置
password: rer8cpBAvEWs #es密码,若无则删去此行配置
global-config:
process-index-mode: smoothly
print-dsl: true
db-config:
map-underscore-to-camel-case: true # 是否开启下划线转驼峰 默认为false
#index-prefix: ${spring.profiles.active}_ # 索引前缀,可用于区分环境 默认为空 用法和MP的tablePrefix一样的作用和用法

View File

@@ -332,4 +332,12 @@
group by course_id
</select>
<select id="esCount" resultType="int">
select count(1) from orders
</select>
<select id="esPage" resultType="com.sqx.modules.orders.entity.Orders">
select * from orders order by orders_id asc limit ${page},${size}
</select>
</mapper>