Pārlūkot izejas kodu

推进器配置相关逻辑

xudm 2 mēneši atpakaļ
vecāks
revīzija
71f4073818
39 mainītis faili ar 1543 papildinājumiem un 7 dzēšanām
  1. 10 0
      continew-appapi/src/main/java/top/continew/admin/controller/InviteRewardsController.java
  2. 16 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/mapper/CoinSpeedUpgradesRulesMapper.java
  3. 16 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/mapper/InviteRewardsFetchRecordMapper.java
  4. 16 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/mapper/InviteRewardsRuleMapper.java
  5. 84 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/model/entity/CoinSpeedUpgradesRules.java
  6. 54 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/model/entity/InviteRewardsFetchRecord.java
  7. 90 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/model/entity/InviteRewardsRule.java
  8. 16 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/service/ICoinSpeedUpgradesRulesService.java
  9. 2 2
      continew-module-coin-core/src/main/java/top/continew/admin/coin/service/IInviteRewardsFetchRecordService.java
  10. 16 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/service/IInviteRewardsRuleService.java
  11. 20 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/service/Impl/CoinSpeedUpgradesRulesServiceImpl.java
  12. 20 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/service/Impl/InviteRewardsFetchRecordServiceImpl.java
  13. 20 0
      continew-module-coin-core/src/main/java/top/continew/admin/coin/service/Impl/InviteRewardsRuleServiceImpl.java
  14. 16 0
      continew-module-coin-core/src/main/java/top/continew/admin/task/mapper/TaskInfoMapper.java
  15. 170 0
      continew-module-coin-core/src/main/java/top/continew/admin/task/model/entity/TaskInfo.java
  16. 16 0
      continew-module-coin-core/src/main/java/top/continew/admin/task/service/ITaskInfoService.java
  17. 20 0
      continew-module-coin-core/src/main/java/top/continew/admin/task/service/Impl/TaskInfoServiceImpl.java
  18. 3 2
      continew-module-coin-core/src/main/java/top/continew/admin/utils/MyGenerator.java
  19. 21 0
      continew-module-coin-core/src/main/resources/mapper/CoinSpeedUpgradesRulesMapper.xml
  20. 18 0
      continew-module-coin-core/src/main/resources/mapper/InviteRewardsFetchRecordMapper.xml
  21. 17 0
      continew-module-coin-core/src/main/resources/mapper/InviteRewardsRuleMapper.xml
  22. 37 0
      continew-module-coin-core/src/main/resources/mapper/TaskInfoMapper.xml
  23. 16 0
      continew-module-system/src/main/java/top/continew/admin/business/mapper/CoinSpeedUpgradesRulesMapper.java
  24. 16 0
      continew-module-system/src/main/java/top/continew/admin/business/mapper/TaskInfoMapper.java
  25. 85 0
      continew-module-system/src/main/java/top/continew/admin/business/model/entity/CoinSpeedUpgradesRules.java
  26. 169 0
      continew-module-system/src/main/java/top/continew/admin/business/model/entity/TaskInfo.java
  27. 17 0
      continew-module-system/src/main/java/top/continew/admin/business/model/query/CoinSpeedUpgradesRulesQuery.java
  28. 23 0
      continew-module-system/src/main/java/top/continew/admin/business/model/query/TaskInfoQuery.java
  29. 43 0
      continew-module-system/src/main/java/top/continew/admin/business/model/req/CoinSpeedUpgradesRulesReq.java
  30. 80 0
      continew-module-system/src/main/java/top/continew/admin/business/model/req/TaskInfoReq.java
  31. 25 0
      continew-module-system/src/main/java/top/continew/admin/business/service/ICoinSpeedUpgradesRulesService.java
  32. 25 0
      continew-module-system/src/main/java/top/continew/admin/business/service/ITaskInfoService.java
  33. 65 0
      continew-module-system/src/main/java/top/continew/admin/business/service/Impl/CoinSpeedUpgradesRulesServiceImpl.java
  34. 3 3
      continew-module-system/src/main/java/top/continew/admin/business/service/Impl/InviteRewardsRuleServiceImpl.java
  35. 71 0
      continew-module-system/src/main/java/top/continew/admin/business/service/Impl/TaskInfoServiceImpl.java
  36. 21 0
      continew-module-system/src/main/resources/mapper/CoinSpeedUpgradesRulesMapper.xml
  37. 37 0
      continew-module-system/src/main/resources/mapper/TaskInfoMapper.xml
  38. 72 0
      continew-webapi/src/main/java/top/continew/admin/controller/business/CoinSpeedUpgradesRulesController.java
  39. 77 0
      continew-webapi/src/main/java/top/continew/admin/controller/business/TaskInfoController.java

+ 10 - 0
continew-appapi/src/main/java/top/continew/admin/controller/InviteRewardsController.java

@@ -0,0 +1,10 @@
+package top.continew.admin.controller;
+
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@Tag(name = "邀请奖励api")
+public class InviteRewardsController {
+
+}

+ 16 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/mapper/CoinSpeedUpgradesRulesMapper.java

@@ -0,0 +1,16 @@
+package top.continew.admin.coin.mapper;
+
+import top.continew.admin.coin.model.entity.CoinSpeedUpgradesRules;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 金币产出速率升级规则 Mapper 接口
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface CoinSpeedUpgradesRulesMapper extends BaseMapper<CoinSpeedUpgradesRules> {
+
+}

+ 16 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/mapper/InviteRewardsFetchRecordMapper.java

@@ -0,0 +1,16 @@
+package top.continew.admin.coin.mapper;
+
+import top.continew.admin.coin.model.entity.InviteRewardsFetchRecord;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 邀请用户金币奖励领取记录 Mapper 接口
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface InviteRewardsFetchRecordMapper extends BaseMapper<InviteRewardsFetchRecord> {
+
+}

+ 16 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/mapper/InviteRewardsRuleMapper.java

@@ -0,0 +1,16 @@
+package top.continew.admin.coin.mapper;
+
+import top.continew.admin.coin.model.entity.InviteRewardsRule;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 邀请用户金币奖励规则 Mapper 接口
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface InviteRewardsRuleMapper extends BaseMapper<InviteRewardsRule> {
+
+}

+ 84 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/model/entity/CoinSpeedUpgradesRules.java

@@ -0,0 +1,84 @@
+package top.continew.admin.coin.model.entity;
+
+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 com.baomidou.mybatisplus.extension.activerecord.Model;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 金币产出速率升级规则
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Getter
+@Setter
+@TableName("b_coin_speed_upgrades_rules")
+public class CoinSpeedUpgradesRules extends Model<CoinSpeedUpgradesRules> {
+
+    /**
+     * id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+
+    /**
+     * 消耗金币数量
+     */
+    @TableField("consume_gold_coin")
+    private Integer consumeGoldCoin;
+
+    /**
+     * 消耗真实货币数量
+     */
+    @TableField("real_money")
+    private Integer realMoney;
+
+    /**
+     * 数值 每秒产量
+     */
+    @TableField("numerical_value")
+    private String numericalValue;
+
+    /**
+     * 等级
+     */
+    @TableField("level")
+    private Integer level;
+
+    /**
+     * 创建人
+     */
+    @TableField("created_by")
+    private String createdBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField("created_time")
+    private LocalDateTime createdTime;
+
+    /**
+     * 更新人
+     */
+    @TableField("updated_by")
+    private String updatedBy;
+
+    /**
+     * 更新时间
+     */
+    @TableField("updated_time")
+    private LocalDateTime updatedTime;
+
+    @Override
+    public Serializable pkVal() {
+        return this.id;
+    }
+}

+ 54 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/model/entity/InviteRewardsFetchRecord.java

@@ -0,0 +1,54 @@
+package top.continew.admin.coin.model.entity;
+
+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 com.baomidou.mybatisplus.extension.activerecord.Model;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 邀请用户金币奖励领取记录
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Getter
+@Setter
+@TableName("b_invite_rewards_fetch_record")
+public class InviteRewardsFetchRecord extends Model<InviteRewardsFetchRecord> {
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private String id;
+
+    /**
+     * 规则id
+     */
+    @TableField("rule_id")
+    private String ruleId;
+
+    /**
+     * 领取人id
+     */
+    @TableField("user_id")
+    private String userId;
+
+    /**
+     * 创建时间
+     */
+    @TableField("created_time")
+    private LocalDateTime createdTime;
+
+    @Override
+    public Serializable pkVal() {
+        return this.id;
+    }
+}

+ 90 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/model/entity/InviteRewardsRule.java

@@ -0,0 +1,90 @@
+package top.continew.admin.coin.model.entity;
+
+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 com.baomidou.mybatisplus.extension.activerecord.Model;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 邀请用户金币奖励规则
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Getter
+@Setter
+@TableName("b_invite_rewards_rule")
+public class InviteRewardsRule extends Model<InviteRewardsRule> {
+
+    /**
+     * 主键
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private String id;
+
+    /**
+     * 奖励名称
+     */
+    @TableField("rewards_name")
+    private String rewardsName;
+
+    /**
+     * 奖励说明
+     */
+    @TableField("rewards_describe")
+    private String rewardsDescribe;
+
+    /**
+     * 邀请好友数量
+     */
+    @TableField("invite_num")
+    private Integer inviteNum;
+
+    /**
+     * 金币数量
+     */
+    @TableField("gold_coin_num")
+    private Integer goldCoinNum;
+
+    /**
+     * 奖励层级
+     */
+    @TableField("rewards_level")
+    private String rewardsLevel;
+
+    /**
+     * 创建人
+     */
+    @TableField("created_by")
+    private String createdBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField("created_time")
+    private LocalDateTime createdTime;
+
+    /**
+     * 更新人
+     */
+    @TableField("updated_by")
+    private String updatedBy;
+
+    /**
+     * 更新时间
+     */
+    @TableField("updated_time")
+    private LocalDateTime updatedTime;
+
+    @Override
+    public Serializable pkVal() {
+        return this.id;
+    }
+}

+ 16 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/service/ICoinSpeedUpgradesRulesService.java

@@ -0,0 +1,16 @@
+package top.continew.admin.coin.service;
+
+import top.continew.admin.coin.model.entity.CoinSpeedUpgradesRules;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 金币产出速率升级规则 服务类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface ICoinSpeedUpgradesRulesService extends IService<CoinSpeedUpgradesRules> {
+
+}

+ 2 - 2
continew-module-system/src/main/java/top/continew/admin/business/service/IInviteRewardsFetchRecordService.java → continew-module-coin-core/src/main/java/top/continew/admin/coin/service/IInviteRewardsFetchRecordService.java

@@ -1,7 +1,7 @@
-package top.continew.admin.business.service;
+package top.continew.admin.coin.service;
 
-import com.baomidou.mybatisplus.extension.service.IService;
 import top.continew.admin.coin.model.entity.InviteRewardsFetchRecord;
+import com.baomidou.mybatisplus.extension.service.IService;
 
 /**
  * <p>

+ 16 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/service/IInviteRewardsRuleService.java

@@ -0,0 +1,16 @@
+package top.continew.admin.coin.service;
+
+import top.continew.admin.coin.model.entity.InviteRewardsRule;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 邀请用户金币奖励规则 服务类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface IInviteRewardsRuleService extends IService<InviteRewardsRule> {
+
+}

+ 20 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/service/Impl/CoinSpeedUpgradesRulesServiceImpl.java

@@ -0,0 +1,20 @@
+package top.continew.admin.coin.service.Impl;
+
+import top.continew.admin.coin.model.entity.CoinSpeedUpgradesRules;
+import top.continew.admin.coin.mapper.CoinSpeedUpgradesRulesMapper;
+import top.continew.admin.coin.service.ICoinSpeedUpgradesRulesService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 金币产出速率升级规则 服务实现类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Service
+public class CoinSpeedUpgradesRulesServiceImpl extends ServiceImpl<CoinSpeedUpgradesRulesMapper, CoinSpeedUpgradesRules> implements ICoinSpeedUpgradesRulesService {
+
+}

+ 20 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/service/Impl/InviteRewardsFetchRecordServiceImpl.java

@@ -0,0 +1,20 @@
+package top.continew.admin.coin.service.Impl;
+
+import top.continew.admin.coin.model.entity.InviteRewardsFetchRecord;
+import top.continew.admin.coin.mapper.InviteRewardsFetchRecordMapper;
+import top.continew.admin.coin.service.IInviteRewardsFetchRecordService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 邀请用户金币奖励领取记录 服务实现类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Service
+public class InviteRewardsFetchRecordServiceImpl extends ServiceImpl<InviteRewardsFetchRecordMapper, InviteRewardsFetchRecord> implements IInviteRewardsFetchRecordService {
+
+}

+ 20 - 0
continew-module-coin-core/src/main/java/top/continew/admin/coin/service/Impl/InviteRewardsRuleServiceImpl.java

@@ -0,0 +1,20 @@
+package top.continew.admin.coin.service.Impl;
+
+import top.continew.admin.coin.model.entity.InviteRewardsRule;
+import top.continew.admin.coin.mapper.InviteRewardsRuleMapper;
+import top.continew.admin.coin.service.IInviteRewardsRuleService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 邀请用户金币奖励规则 服务实现类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Service
+public class InviteRewardsRuleServiceImpl extends ServiceImpl<InviteRewardsRuleMapper, InviteRewardsRule> implements IInviteRewardsRuleService {
+
+}

+ 16 - 0
continew-module-coin-core/src/main/java/top/continew/admin/task/mapper/TaskInfoMapper.java

@@ -0,0 +1,16 @@
+package top.continew.admin.task.mapper;
+
+import top.continew.admin.task.model.entity.TaskInfo;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 任务信息表 Mapper 接口
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface TaskInfoMapper extends BaseMapper<TaskInfo> {
+
+}

+ 170 - 0
continew-module-coin-core/src/main/java/top/continew/admin/task/model/entity/TaskInfo.java

@@ -0,0 +1,170 @@
+package top.continew.admin.task.model.entity;
+
+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 com.baomidou.mybatisplus.extension.activerecord.Model;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 任务信息表
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Getter
+@Setter
+@TableName("b_task_info")
+public class TaskInfo extends Model<TaskInfo> {
+
+    /**
+     * id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+
+    /**
+     * 任务名称
+     */
+    @TableField("name")
+    private String name;
+
+    /**
+     * 名称日文
+     */
+    @TableField("name_ja")
+    private String nameJa;
+
+    /**
+     * 名称韩文
+     */
+    @TableField("name_ko")
+    private String nameKo;
+
+    /**
+     * 名称泰语
+     */
+    @TableField("name_th")
+    private String nameTh;
+
+    /**
+     * 名称越南语
+     */
+    @TableField("name_vi")
+    private String nameVi;
+
+    /**
+     * 名称俄语
+     */
+    @TableField("name_ru")
+    private String nameRu;
+
+    /**
+     * 名称英文
+     */
+    @TableField("name_en")
+    private String nameEn;
+
+    /**
+     * 名称葡萄牙语
+     */
+    @TableField("name_pt")
+    private String namePt;
+
+    /**
+     * 名称波斯语
+     */
+    @TableField("name_fa")
+    private String nameFa;
+
+    /**
+     * 名称西班牙语
+     */
+    @TableField("name_es")
+    private String nameEs;
+
+    /**
+     * 任务说明
+     */
+    @TableField("instruction")
+    private String instruction;
+
+    /**
+     * 任务图标
+     */
+    @TableField("task_icon")
+    private String taskIcon;
+
+    /**
+     * 任务链接
+     */
+    @TableField("task_link")
+    private String taskLink;
+
+    /**
+     * 任务分类编码
+     */
+    @TableField("category_code")
+    private String categoryCode;
+
+    /**
+     * 1开启0关闭
+     */
+    @TableField("status")
+    private Integer status;
+
+    /**
+     * 金币数量
+     */
+    @TableField("gold_coin")
+    private Integer goldCoin;
+
+    /**
+     * 排序
+     */
+    @TableField("sort_num")
+    private Integer sortNum;
+
+    /**
+     * 逻辑删除 0 未删除 1 已删除
+     */
+    @TableField("is_deleted")
+    private Integer isDeleted;
+
+    /**
+     * 创建人
+     */
+    @TableField("create_by")
+    private String createBy;
+
+    /**
+     * 更新人
+     */
+    @TableField("update_by")
+    private String updateBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField("create_time")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新时间
+     */
+    @TableField("updated_time")
+    private LocalDateTime updatedTime;
+
+    @Override
+    public Serializable pkVal() {
+        return this.id;
+    }
+}

+ 16 - 0
continew-module-coin-core/src/main/java/top/continew/admin/task/service/ITaskInfoService.java

@@ -0,0 +1,16 @@
+package top.continew.admin.task.service;
+
+import top.continew.admin.task.model.entity.TaskInfo;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 任务信息表 服务类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface ITaskInfoService extends IService<TaskInfo> {
+
+}

+ 20 - 0
continew-module-coin-core/src/main/java/top/continew/admin/task/service/Impl/TaskInfoServiceImpl.java

@@ -0,0 +1,20 @@
+package top.continew.admin.task.service.Impl;
+
+import top.continew.admin.task.model.entity.TaskInfo;
+import top.continew.admin.task.mapper.TaskInfoMapper;
+import top.continew.admin.task.service.ITaskInfoService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 任务信息表 服务实现类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Service
+public class TaskInfoServiceImpl extends ServiceImpl<TaskInfoMapper, TaskInfo> implements ITaskInfoService {
+
+}

+ 3 - 2
continew-module-coin-core/src/main/java/top/continew/admin/utils/MyGenerator.java

@@ -12,6 +12,7 @@ import com.baomidou.mybatisplus.generator.fill.Column;
 import org.apache.commons.lang3.ClassUtils;
 
 import java.io.File;
+import java.math.BigDecimal;
 import java.sql.Types;
 import java.util.Collections;
 import java.util.HashMap;
@@ -56,7 +57,7 @@ public class MyGenerator {
 
     public static void main(String[] args) {
         // 项目名 例如app  web
-        generatorByBusinessModule("coin", new String[]{"b_invite_rewards_fetch_record", "b_invite_rewards_rule"});
+        generatorByBusinessModule("team", new String[]{"b_team_invite_config"});
     }
 
     /**
@@ -97,7 +98,7 @@ public class MyGenerator {
                         return DbColumnType.INTEGER;
                     }
                     if (typeCode == Types.BIGINT) {
-                        return DbColumnType.STRING;
+                        return DbColumnType.LONG;
                     }
                     if (typeCode == Types.TINYINT) {
                         return DbColumnType.INTEGER;

+ 21 - 0
continew-module-coin-core/src/main/resources/mapper/CoinSpeedUpgradesRulesMapper.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="top.continew.admin.coin.mapper.CoinSpeedUpgradesRulesMapper">
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="top.continew.admin.coin.model.entity.CoinSpeedUpgradesRules">
+        <id column="id" property="id"/>
+        <result column="consume_gold_coin" property="consumeGoldCoin"/>
+        <result column="real_money" property="realMoney"/>
+        <result column="numerical_value" property="numericalValue"/>
+        <result column="level" property="level"/>
+        <result column="created_by" property="createdBy"/>
+        <result column="created_time" property="createdTime"/>
+        <result column="updated_by" property="updatedBy"/>
+        <result column="updated_time" property="updatedTime"/>
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, consume_gold_coin, real_money, numerical_value, level, created_by, created_time, updated_by, updated_time
+    </sql>
+</mapper>

+ 18 - 0
continew-module-coin-core/src/main/resources/mapper/InviteRewardsFetchRecordMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="top.continew.admin.coin.mapper.InviteRewardsFetchRecordMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="top.continew.admin.coin.model.entity.InviteRewardsFetchRecord">
+        <id column="id" property="id" />
+        <result column="rule_id" property="ruleId" />
+        <result column="user_id" property="userId" />
+        <result column="created_time" property="createdTime" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, rule_id, user_id, created_time
+    </sql>
+
+</mapper>

+ 17 - 0
continew-module-coin-core/src/main/resources/mapper/InviteRewardsRuleMapper.xml

@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="top.continew.admin.coin.mapper.InviteRewardsRuleMapper">
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="top.continew.admin.coin.model.entity.InviteRewardsRule">
+        <id column="id" property="id"/>
+        <result column="rewards_name" property="rewardsName"/>
+        <result column="rewards_describe" property="rewardsDescribe"/>
+        <result column="invite_num" property="inviteNum"/>
+        <result column="gold_coin_num" property="goldCoinNum"/>
+        <result column="rewards_level" property="rewardsLevel"/>
+        <result column="created_by" property="createdBy"/>
+        <result column="created_time" property="createdTime"/>
+        <result column="updated_by" property="updatedBy"/>
+        <result column="updated_time" property="updatedTime"/>
+    </resultMap>
+</mapper>

+ 37 - 0
continew-module-coin-core/src/main/resources/mapper/TaskInfoMapper.xml

@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="top.continew.admin.task.mapper.TaskInfoMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="top.continew.admin.task.model.entity.TaskInfo">
+        <id column="id" property="id" />
+        <result column="name" property="name" />
+        <result column="name_ja" property="nameJa" />
+        <result column="name_ko" property="nameKo" />
+        <result column="name_th" property="nameTh" />
+        <result column="name_vi" property="nameVi" />
+        <result column="name_ru" property="nameRu" />
+        <result column="name_en" property="nameEn" />
+        <result column="name_pt" property="namePt" />
+        <result column="name_fa" property="nameFa" />
+        <result column="name_es" property="nameEs" />
+        <result column="instruction" property="instruction" />
+        <result column="task_icon" property="taskIcon" />
+        <result column="task_link" property="taskLink" />
+        <result column="category_code" property="categoryCode" />
+        <result column="status" property="status" />
+        <result column="gold_coin" property="goldCoin" />
+        <result column="sort_num" property="sortNum" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="create_by" property="createBy" />
+        <result column="update_by" property="updateBy" />
+        <result column="create_time" property="createTime" />
+        <result column="updated_time" property="updatedTime" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, name, name_ja, name_ko, name_th, name_vi, name_ru, name_en, name_pt, name_fa, name_es, instruction, task_icon, task_link, category_code, status, gold_coin, sort_num, is_deleted, create_by, update_by, create_time, updated_time
+    </sql>
+
+</mapper>

+ 16 - 0
continew-module-system/src/main/java/top/continew/admin/business/mapper/CoinSpeedUpgradesRulesMapper.java

@@ -0,0 +1,16 @@
+package top.continew.admin.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import top.continew.admin.business.model.entity.CoinSpeedUpgradesRules;
+
+/**
+ * <p>
+ * 金币产出速率升级规则 Mapper 接口
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface CoinSpeedUpgradesRulesMapper extends BaseMapper<CoinSpeedUpgradesRules> {
+
+}

+ 16 - 0
continew-module-system/src/main/java/top/continew/admin/business/mapper/TaskInfoMapper.java

@@ -0,0 +1,16 @@
+package top.continew.admin.business.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import top.continew.admin.business.model.entity.TaskInfo;
+
+/**
+ * <p>
+ * 任务信息表 Mapper 接口
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface TaskInfoMapper extends BaseMapper<TaskInfo> {
+
+}

+ 85 - 0
continew-module-system/src/main/java/top/continew/admin/business/model/entity/CoinSpeedUpgradesRules.java

@@ -0,0 +1,85 @@
+package top.continew.admin.business.model.entity;
+
+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 com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 金币产出速率升级规则
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Getter
+@Setter
+@TableName("b_coin_speed_upgrades_rules")
+public class CoinSpeedUpgradesRules extends Model<CoinSpeedUpgradesRules> {
+
+    /**
+     * id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+
+    /**
+     * 消耗金币数量
+     */
+    @TableField("consume_gold_coin")
+    private Integer consumeGoldCoin;
+
+    /**
+     * 消耗真实货币数量
+     */
+    @TableField("real_money")
+    private Integer realMoney;
+
+    /**
+     * 数值 每秒产量
+     */
+    @TableField("numerical_value")
+    private String numericalValue;
+
+    /**
+     * 等级
+     */
+    @TableField("level")
+    private Integer level;
+
+    /**
+     * 创建人
+     */
+    @TableField("created_by")
+    private String createdBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField("created_time")
+    private LocalDateTime createdTime;
+
+    /**
+     * 更新人
+     */
+    @TableField("updated_by")
+    private String updatedBy;
+
+    /**
+     * 更新时间
+     */
+    @TableField("updated_time")
+    private LocalDateTime updatedTime;
+
+    @Override
+    public Serializable pkVal() {
+        return this.id;
+    }
+}

+ 169 - 0
continew-module-system/src/main/java/top/continew/admin/business/model/entity/TaskInfo.java

@@ -0,0 +1,169 @@
+package top.continew.admin.business.model.entity;
+
+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 com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 任务信息表
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Getter
+@Setter
+@TableName("b_task_info")
+public class TaskInfo extends Model<TaskInfo> {
+
+    /**
+     * id
+     */
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private Long id;
+
+    /**
+     * 任务名称
+     */
+    @TableField("name")
+    private String name;
+
+    /**
+     * 名称日文
+     */
+    @TableField("name_ja")
+    private String nameJa;
+
+    /**
+     * 名称韩文
+     */
+    @TableField("name_ko")
+    private String nameKo;
+
+    /**
+     * 名称泰语
+     */
+    @TableField("name_th")
+    private String nameTh;
+
+    /**
+     * 名称越南语
+     */
+    @TableField("name_vi")
+    private String nameVi;
+
+    /**
+     * 名称俄语
+     */
+    @TableField("name_ru")
+    private String nameRu;
+
+    /**
+     * 名称英文
+     */
+    @TableField("name_en")
+    private String nameEn;
+
+    /**
+     * 名称葡萄牙语
+     */
+    @TableField("name_pt")
+    private String namePt;
+
+    /**
+     * 名称波斯语
+     */
+    @TableField("name_fa")
+    private String nameFa;
+
+    /**
+     * 名称西班牙语
+     */
+    @TableField("name_es")
+    private String nameEs;
+
+    /**
+     * 任务说明
+     */
+    @TableField("instruction")
+    private String instruction;
+
+    /**
+     * 任务图标
+     */
+    @TableField("task_icon")
+    private String taskIcon;
+
+    /**
+     * 任务链接
+     */
+    @TableField("task_link")
+    private String taskLink;
+
+    /**
+     * 任务分类编码
+     */
+    @TableField("category_code")
+    private String categoryCode;
+
+    /**
+     * 1开启0关闭
+     */
+    @TableField("status")
+    private Integer status;
+
+    /**
+     * 金币数量
+     */
+    @TableField("gold_coin")
+    private Integer goldCoin;
+
+    /**
+     * 排序
+     */
+    @TableField("sort_num")
+    private Integer sortNum;
+
+    /**
+     * 逻辑删除 0 未删除 1 已删除
+     */
+    @TableField("is_deleted")
+    private Integer isDeleted;
+
+    /**
+     * 创建人
+     */
+    @TableField("create_by")
+    private String createBy;
+
+    /**
+     * 更新人
+     */
+    @TableField("update_by")
+    private String updateBy;
+
+    /**
+     * 创建时间
+     */
+    @TableField("create_time")
+    private LocalDateTime createTime;
+
+    /**
+     * 更新时间
+     */
+    @TableField("updated_time")
+    private LocalDateTime updatedTime;
+
+    @Override
+    public Serializable pkVal() {
+        return this.id;
+    }
+}

+ 17 - 0
continew-module-system/src/main/java/top/continew/admin/business/model/query/CoinSpeedUpgradesRulesQuery.java

@@ -0,0 +1,17 @@
+package top.continew.admin.business.model.query;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+@Schema(description = "推进器查询参数")
+public class CoinSpeedUpgradesRulesQuery implements Serializable {
+
+    @Schema(description = "页码")
+    private int page;
+
+    @Schema(description = "页大小")
+    private int size;
+}

+ 23 - 0
continew-module-system/src/main/java/top/continew/admin/business/model/query/TaskInfoQuery.java

@@ -0,0 +1,23 @@
+package top.continew.admin.business.model.query;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+@Data
+@Schema(description = "任务信息查询参数")
+public class TaskInfoQuery implements Serializable {
+
+    @Schema(description = "任务名称")
+    private String name;
+
+    @Schema(description = "任务分类编码")
+    private String categoryCode;
+
+    @Schema(description = "页码")
+    private int page;
+
+    @Schema(description = "页大小")
+    private int size;
+}

+ 43 - 0
continew-module-system/src/main/java/top/continew/admin/business/model/req/CoinSpeedUpgradesRulesReq.java

@@ -0,0 +1,43 @@
+package top.continew.admin.business.model.req;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+
+import java.io.Serializable;
+
+/**
+ * <p>
+ * 金币产出速率升级规则
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Data
+@Schema(description = "创建或修改推进器参数")
+public class CoinSpeedUpgradesRulesReq implements Serializable {
+
+    /**
+     * 消耗金币数量
+     */
+    @Schema(description = "消耗金币数量")
+    private Integer consumeGoldCoin;
+
+    /**
+     * 消耗真实货币数量
+     */
+    @Schema(description = "消耗真实货币数量")
+    private Integer realMoney;
+
+    /**
+     * 数值 每秒产量
+     */
+    @Schema(description = "数值 每秒产量")
+    private String numericalValue;
+
+    /**
+     * 等级
+     */
+    @Schema(description = "等级")
+    private Integer level;
+}

+ 80 - 0
continew-module-system/src/main/java/top/continew/admin/business/model/req/TaskInfoReq.java

@@ -0,0 +1,80 @@
+package top.continew.admin.business.model.req;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 任务信息表
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Data
+@Schema(description = "任务信息新增或修改参数")
+public class TaskInfoReq implements Serializable {
+
+    @Schema(description = "任务名称")
+    private String name;
+
+    @Schema(description = "名称日文")
+    private String nameJa;
+
+    @Schema(description = "名称韩文")
+    private String nameKo;
+
+    @Schema(description = "名称泰语")
+    private String nameTh;
+
+    @Schema(description = "名称越南语")
+    private String nameVi;
+
+    @Schema(description = "名称俄语")
+    private String nameRu;
+
+    @Schema(description = "名称英文")
+    private String nameEn;
+
+    @Schema(description = "名称葡萄牙语")
+    private String namePt;
+
+    @Schema(description = "名称波斯语")
+    private String nameFa;
+
+    @Schema(description = "名称西班牙语")
+    private String nameEs;
+
+    @Schema(description = "任务说明")
+    private String instruction;
+
+    @Schema(description = "任务图标")
+    private String taskIcon;
+
+
+    @Schema(description = "任务链接")
+    private String taskLink;
+
+
+    @Schema(description = "任务分类编码")
+    private String categoryCode;
+
+
+    @Schema(description = "1开启0关闭")
+    private Integer status;
+
+
+    @Schema(description = "金币数量")
+    private Integer goldCoin;
+
+    @Schema(description = "排序")
+    private Integer sortNum;
+}

+ 25 - 0
continew-module-system/src/main/java/top/continew/admin/business/service/ICoinSpeedUpgradesRulesService.java

@@ -0,0 +1,25 @@
+package top.continew.admin.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import top.continew.admin.business.model.entity.CoinSpeedUpgradesRules;
+import top.continew.admin.business.model.query.CoinSpeedUpgradesRulesQuery;
+import top.continew.admin.business.model.req.CoinSpeedUpgradesRulesReq;
+import top.continew.starter.extension.crud.model.resp.BasePageResp;
+
+/**
+ * <p>
+ * 金币产出速率升级规则 服务类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface ICoinSpeedUpgradesRulesService extends IService<CoinSpeedUpgradesRules> {
+
+    Long addCoinSpeedUpgradesRules(CoinSpeedUpgradesRulesReq req);
+
+    void updateCoinSpeedUpgradesRules(Long id, CoinSpeedUpgradesRulesReq req);
+
+    BasePageResp<CoinSpeedUpgradesRules> getCoinSpeedUpgradesRulesPage(CoinSpeedUpgradesRulesQuery query);
+
+}

+ 25 - 0
continew-module-system/src/main/java/top/continew/admin/business/service/ITaskInfoService.java

@@ -0,0 +1,25 @@
+package top.continew.admin.business.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import top.continew.admin.business.model.entity.InviteRewardsRule;
+import top.continew.admin.business.model.entity.TaskInfo;
+import top.continew.admin.business.model.query.TaskInfoQuery;
+import top.continew.admin.business.model.req.TaskInfoReq;
+import top.continew.starter.extension.crud.model.resp.BasePageResp;
+
+/**
+ * <p>
+ * 任务信息表 服务类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+public interface ITaskInfoService extends IService<TaskInfo> {
+
+    BasePageResp<TaskInfo> getTaskInfoPage(TaskInfoQuery query);
+
+    void updatetaskInfo(Long id, TaskInfoReq req);
+
+    Long addTaskInfo(TaskInfoReq req);
+}

+ 65 - 0
continew-module-system/src/main/java/top/continew/admin/business/service/Impl/CoinSpeedUpgradesRulesServiceImpl.java

@@ -0,0 +1,65 @@
+package top.continew.admin.business.service.Impl;
+
+import cn.dev33.satoken.stp.StpUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import top.continew.admin.business.mapper.CoinSpeedUpgradesRulesMapper;
+import top.continew.admin.business.model.entity.CoinSpeedUpgradesRules;
+import top.continew.admin.business.model.entity.TaskInfo;
+import top.continew.admin.business.model.query.CoinSpeedUpgradesRulesQuery;
+import top.continew.admin.business.model.req.CoinSpeedUpgradesRulesReq;
+import top.continew.admin.business.service.ICoinSpeedUpgradesRulesService;
+import top.continew.starter.core.validation.CheckUtils;
+import top.continew.starter.extension.crud.model.resp.BasePageResp;
+import top.continew.starter.extension.crud.model.resp.PageResp;
+
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 金币产出速率升级规则 服务实现类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Service
+public class CoinSpeedUpgradesRulesServiceImpl extends ServiceImpl<CoinSpeedUpgradesRulesMapper, CoinSpeedUpgradesRules> implements ICoinSpeedUpgradesRulesService {
+    @Override
+    public Long addCoinSpeedUpgradesRules(CoinSpeedUpgradesRulesReq req) {
+        Object loginId = StpUtil.getLoginId();
+        CoinSpeedUpgradesRules rules = new CoinSpeedUpgradesRules();
+        BeanUtils.copyProperties(req, rules);
+        rules.setCreatedBy((String) loginId);
+        rules.setCreatedTime(LocalDateTime.now());
+        rules.setUpdatedTime(LocalDateTime.now());
+        rules.setUpdatedBy((String) loginId);
+        save(rules);
+        return rules.getId();
+    }
+
+    @Override
+    public void updateCoinSpeedUpgradesRules(Long id, CoinSpeedUpgradesRulesReq req) {
+        Object loginId = StpUtil.getLoginId();
+        CoinSpeedUpgradesRules rules = getById(id);
+        CheckUtils.throwIfNull(rules, "推进器数据为空");
+        BeanUtils.copyProperties(req, rules);
+        rules.setUpdatedBy(String.valueOf(loginId));
+        rules.setUpdatedTime(LocalDateTime.now());
+        updateById(rules);
+    }
+
+    @Override
+    public BasePageResp<CoinSpeedUpgradesRules> getCoinSpeedUpgradesRulesPage(CoinSpeedUpgradesRulesQuery query) {
+        Page<CoinSpeedUpgradesRules> page = new Page<>();
+        page.setCurrent(query.getPage() != 0 ? query.getPage() : 1);
+        page.setSize(query.getSize() != 0 ? query.getSize() : 10);
+        LambdaQueryWrapper<CoinSpeedUpgradesRules> queryWrapper = new LambdaQueryWrapper<>();
+        queryWrapper.orderByAsc(CoinSpeedUpgradesRules::getLevel);
+        page = page(page, queryWrapper);
+        return PageResp.build(page, CoinSpeedUpgradesRules.class);
+    }
+}

+ 3 - 3
continew-module-system/src/main/java/top/continew/admin/business/service/Impl/InviteRewardsRuleServiceImpl.java

@@ -39,8 +39,8 @@ public class InviteRewardsRuleServiceImpl extends ServiceImpl<InviteRewardsRuleM
         InviteRewardsRule rule = new InviteRewardsRule();
         BeanUtils.copyProperties(query, rule);
         LambdaQueryWrapper<InviteRewardsRule> queryWrapper = new LambdaQueryWrapper<>();
-        if (rule.getRewardsLevel() != 0) {
-            queryWrapper.eq(InviteRewardsRule::getRewardsLevel, rule.getRewardsLevel());
+        if (rule.getInviteNum() != 0) {
+            queryWrapper.eq(InviteRewardsRule::getInviteNum, rule.getInviteNum());
         }
         if (rule.getGoldCoinNum() != 0) {
             queryWrapper.eq(InviteRewardsRule::getGoldCoinNum, rule.getGoldCoinNum());
@@ -51,7 +51,7 @@ public class InviteRewardsRuleServiceImpl extends ServiceImpl<InviteRewardsRuleM
         if (StrUtil.isNotBlank(rule.getRewardsName())) {
             queryWrapper.like(InviteRewardsRule::getRewardsName, rule.getRewardsName());
         }
-        queryWrapper.orderByDesc(InviteRewardsRule::getCreatedTime);
+        queryWrapper.orderByAsc(InviteRewardsRule::getRewardsLevel);
         page = page(page, queryWrapper);
         return PageResp.build(page, InviteRewardsRule.class);
     }

+ 71 - 0
continew-module-system/src/main/java/top/continew/admin/business/service/Impl/TaskInfoServiceImpl.java

@@ -0,0 +1,71 @@
+package top.continew.admin.business.service.Impl;
+
+import cn.dev33.satoken.stp.StpUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.beans.BeanUtils;
+import org.springframework.stereotype.Service;
+import top.continew.admin.business.mapper.TaskInfoMapper;
+import top.continew.admin.business.model.entity.InviteRewardsRule;
+import top.continew.admin.business.model.entity.TaskInfo;
+import top.continew.admin.business.model.query.TaskInfoQuery;
+import top.continew.admin.business.model.req.TaskInfoReq;
+import top.continew.admin.business.service.ITaskInfoService;
+import top.continew.starter.extension.crud.model.resp.BasePageResp;
+import top.continew.starter.extension.crud.model.resp.PageResp;
+
+import java.time.LocalDateTime;
+
+/**
+ * <p>
+ * 任务信息表 服务实现类
+ * </p>
+ *
+ * @author xudm
+ * @since 2024-12-15
+ */
+@Service
+public class TaskInfoServiceImpl extends ServiceImpl<TaskInfoMapper, TaskInfo> implements ITaskInfoService {
+    @Override
+    public BasePageResp<TaskInfo> getTaskInfoPage(TaskInfoQuery query) {
+        Page<TaskInfo> page = new Page<>();
+        page.setCurrent(query.getPage() != 0 ? query.getPage() : 1);
+        page.setSize(query.getSize() != 0 ? query.getSize() : 10);
+
+        LambdaQueryWrapper<TaskInfo> queryWrapper = new LambdaQueryWrapper<>();
+        if (StrUtil.isNotBlank(query.getCategoryCode())) {
+            queryWrapper.eq(TaskInfo::getCategoryCode, query.getCategoryCode());
+        }
+        if (StrUtil.isNotBlank(query.getName())) {
+            queryWrapper.like(TaskInfo::getName, query.getName());
+        }
+        queryWrapper.orderByDesc(TaskInfo::getSortNum);
+        page = page(page, queryWrapper);
+        return PageResp.build(page, TaskInfo.class);
+    }
+
+    @Override
+    public void updatetaskInfo(Long id, TaskInfoReq req) {
+        Object loginId = StpUtil.getLoginId();
+        TaskInfo byId = getById(id);
+        BeanUtils.copyProperties(req, byId);
+        byId.setUpdateBy(String.valueOf(loginId));
+        byId.setUpdatedTime(LocalDateTime.now());
+        updateById(byId);
+    }
+
+    @Override
+    public Long addTaskInfo(TaskInfoReq req) {
+        Object loginId = StpUtil.getLoginId();
+        TaskInfo taskInfo = new TaskInfo();
+        BeanUtils.copyProperties(req, taskInfo);
+        taskInfo.setCreateBy((String) loginId);
+        taskInfo.setCreateTime(LocalDateTime.now());
+        taskInfo.setUpdatedTime(LocalDateTime.now());
+        taskInfo.setUpdateBy((String) loginId);
+        save(taskInfo);
+        return taskInfo.getId();
+    }
+}

+ 21 - 0
continew-module-system/src/main/resources/mapper/CoinSpeedUpgradesRulesMapper.xml

@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="top.continew.admin.business.mapper.CoinSpeedUpgradesRulesMapper">
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="top.continew.admin.business.model.entity.CoinSpeedUpgradesRules">
+        <id column="id" property="id"/>
+        <result column="consume_gold_coin" property="consumeGoldCoin"/>
+        <result column="real_money" property="realMoney"/>
+        <result column="numerical_value" property="numericalValue"/>
+        <result column="level" property="level"/>
+        <result column="created_by" property="createdBy"/>
+        <result column="created_time" property="createdTime"/>
+        <result column="updated_by" property="updatedBy"/>
+        <result column="updated_time" property="updatedTime"/>
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, consume_gold_coin, real_money, numerical_value, level, created_by, created_time, updated_by, updated_time
+    </sql>
+</mapper>

+ 37 - 0
continew-module-system/src/main/resources/mapper/TaskInfoMapper.xml

@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="top.continew.admin.business.mapper.TaskInfoMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="top.continew.admin.business.model.entity.TaskInfo">
+        <id column="id" property="id" />
+        <result column="name" property="name" />
+        <result column="name_ja" property="nameJa" />
+        <result column="name_ko" property="nameKo" />
+        <result column="name_th" property="nameTh" />
+        <result column="name_vi" property="nameVi" />
+        <result column="name_ru" property="nameRu" />
+        <result column="name_en" property="nameEn" />
+        <result column="name_pt" property="namePt" />
+        <result column="name_fa" property="nameFa" />
+        <result column="name_es" property="nameEs" />
+        <result column="instruction" property="instruction" />
+        <result column="task_icon" property="taskIcon" />
+        <result column="task_link" property="taskLink" />
+        <result column="category_code" property="categoryCode" />
+        <result column="status" property="status" />
+        <result column="gold_coin" property="goldCoin" />
+        <result column="sort_num" property="sortNum" />
+        <result column="is_deleted" property="isDeleted" />
+        <result column="create_by" property="createBy" />
+        <result column="update_by" property="updateBy" />
+        <result column="create_time" property="createTime" />
+        <result column="updated_time" property="updatedTime" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, name, name_ja, name_ko, name_th, name_vi, name_ru, name_en, name_pt, name_fa, name_es, instruction, frequency, task_type, random, loop_day, task_icon, key, task_link, category_code, status, gold_coin, sort_num, del_flag, create_by, create_time, updated_time
+    </sql>
+
+</mapper>

+ 72 - 0
continew-webapi/src/main/java/top/continew/admin/controller/business/CoinSpeedUpgradesRulesController.java

@@ -0,0 +1,72 @@
+package top.continew.admin.controller.business;
+
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import org.apache.poi.ss.formula.functions.Na;
+import org.springframework.web.bind.annotation.*;
+import top.continew.admin.business.model.entity.CoinSpeedUpgradesRules;
+import top.continew.admin.business.model.query.CoinSpeedUpgradesRulesQuery;
+import top.continew.admin.business.model.query.TaskInfoQuery;
+import top.continew.admin.business.model.req.CoinSpeedUpgradesRulesReq;
+import top.continew.admin.business.service.ICoinSpeedUpgradesRulesService;
+import top.continew.starter.extension.crud.model.resp.BaseIdResp;
+import top.continew.starter.extension.crud.model.resp.BasePageResp;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/coin/speed/upgrades")
+@AllArgsConstructor
+@Tag(name = "推进器API")
+public class CoinSpeedUpgradesRulesController {
+    private final ICoinSpeedUpgradesRulesService rulesService;
+
+    @Operation(summary = "分页查询", description = "分页查询")
+    @GetMapping("/page")
+    BasePageResp<CoinSpeedUpgradesRules> page(CoinSpeedUpgradesRulesQuery query) {
+        return rulesService.getCoinSpeedUpgradesRulesPage(query);
+    }
+
+
+    @Operation(summary = "查询详情", description = "查询详情")
+    @GetMapping("/{ids}")
+    @Parameter(
+            name = "ids",
+            description = "ids",
+            example = "1,2,3,4",
+            in = ParameterIn.PATH
+    )
+    List<CoinSpeedUpgradesRules> getCoinSpeedUpgradesRulesByIds(@PathVariable("ids") List<Long> ids) {
+        return rulesService.listByIds(ids);
+    }
+
+
+    @Operation(summary = "修改数据", description = "修改数据")
+    @Parameter(
+            name = "id",
+            description = "ID",
+            example = "1",
+            in = ParameterIn.PATH
+    )
+    @PutMapping({"/{id}"})
+    //@Validated({CrudValidationGroup.Update.class})
+    public void update(@RequestBody CoinSpeedUpgradesRulesReq req, @PathVariable("id") Long id) {
+        this.rulesService.updateCoinSpeedUpgradesRules(id, req);
+    }
+
+    @Operation(summary = "删除数据", description = "删除数据")
+    @DeleteMapping({"/{ids}"})
+    public void delete(@PathVariable("ids") List<Long> ids) {
+        this.rulesService.removeByIds(ids);
+    }
+
+
+    @Operation(summary = "新增数据", description = "新增数据")
+    @PostMapping
+    public BaseIdResp<Long> add(@RequestBody CoinSpeedUpgradesRulesReq req) {
+        return new BaseIdResp<>(rulesService.addCoinSpeedUpgradesRules(req));
+    }
+}

+ 77 - 0
continew-webapi/src/main/java/top/continew/admin/controller/business/TaskInfoController.java

@@ -0,0 +1,77 @@
+package top.continew.admin.controller.business;
+
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.Parameter;
+import io.swagger.v3.oas.annotations.enums.ParameterIn;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+import top.continew.admin.business.model.entity.TaskInfo;
+import top.continew.admin.business.model.query.TaskInfoQuery;
+import top.continew.admin.business.model.req.TaskInfoReq;
+import top.continew.admin.business.service.ITaskInfoService;
+import top.continew.starter.extension.crud.model.resp.BaseIdResp;
+import top.continew.starter.extension.crud.model.resp.BasePageResp;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/coin/task/info")
+@Tag(name = "任务信息管理api")
+@AllArgsConstructor
+public class TaskInfoController {
+
+    private final ITaskInfoService taskInfoService;
+
+    @Operation(summary = "分页查询", description = "分页查询")
+    @GetMapping("/page")
+    BasePageResp<TaskInfo> page(TaskInfoQuery query) {
+        return taskInfoService.getTaskInfoPage(query);
+    }
+
+
+    @Operation(summary = "查询详情", description = "查询详情")
+    @GetMapping("/{ids}")
+    @Parameter(
+            name = "ids",
+            description = "ids",
+            example = "1,2,3,4",
+            in = ParameterIn.PATH
+    )
+    List<TaskInfo> getInviteRewardsRuleByIds(@PathVariable("ids") List<Long> ids) {
+        return taskInfoService.listByIds(ids);
+    }
+
+
+    @Operation(summary = "修改数据", description = "修改数据")
+    @Parameter(
+            name = "id",
+            description = "ID",
+            example = "1",
+            in = ParameterIn.PATH
+    )
+    @PutMapping({"/{id}"})
+    //@Validated({CrudValidationGroup.Update.class})
+    public void update(@RequestBody TaskInfoReq req, @PathVariable("id") Long id) {
+        this.taskInfoService.updatetaskInfo(id, req);
+    }
+
+    @Operation(
+            summary = "删除数据",
+            description = "删除数据"
+    )
+    @DeleteMapping({"/{ids}"})
+    public void delete(@PathVariable("ids") List<Long> ids) {
+        this.taskInfoService.removeByIds(ids);
+    }
+
+
+    @Operation(
+            summary = "新增数据",
+            description = "新增数据"
+    )
+    @PostMapping
+    public BaseIdResp<Long> add(@RequestBody TaskInfoReq req) {
+        return new BaseIdResp<>(taskInfoService.addTaskInfo(req));
+    }
+}