aiVip配置

This commit is contained in:
wuchunlei
2025-05-27 11:55:53 +08:00
parent 32e14f5895
commit 07ec28aaca
10 changed files with 202 additions and 0 deletions

View File

@@ -0,0 +1,9 @@
package com.peanut.modules.common.dao;
import com.github.yulichang.base.MPJBaseMapper;
import com.peanut.modules.common.entity.AiBuyConfig;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface AiBuyConfigDao extends MPJBaseMapper<AiBuyConfig> {
}

View File

@@ -0,0 +1,9 @@
package com.peanut.modules.common.dao;
import com.github.yulichang.base.MPJBaseMapper;
import com.peanut.modules.common.entity.AiVipLog;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface AiVipLogDao extends MPJBaseMapper<AiVipLog> {
}

View File

@@ -0,0 +1,44 @@
package com.peanut.modules.common.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
@Data
@TableName("ai_buy_config")
public class AiBuyConfig implements Serializable {
private static final long serialVersionUID = 1L;
@TableId
private Integer id;
//标题
private String title;
//介绍
private String content;
//金额
private BigDecimal fee;
//时间限制1月度2季度
private int type;
//次数
private int count;
//可用助手0全部(预留)
private String availableAssistant;
private Date createTime;
@TableLogic
private Integer delFlag;
}

View File

@@ -0,0 +1,42 @@
package com.peanut.modules.common.entity;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
@TableName("ai_vip_log")
public class AiVipLog implements Serializable {
private static final long serialVersionUID = 1L;
@TableId
private Integer id;
private Integer userId;
//时间限制1月度2季度
private Integer type;
//可用助手0全部(预留)
private String available_assistant;
//次数
private int count;
//剩余次数
private int surplusCount;
//开始时间
private Date startTime;
//结束时间
private Date endTime;
@TableLogic
private Integer delFlag;
}

View File

@@ -0,0 +1,7 @@
package com.peanut.modules.common.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.peanut.modules.common.entity.AiBuyConfig;
public interface AiBuyConfigService extends IService<AiBuyConfig> {
}

View File

@@ -0,0 +1,7 @@
package com.peanut.modules.common.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.peanut.modules.common.entity.AiVipLog;
public interface AiVipLogService extends IService<AiVipLog> {
}

View File

@@ -0,0 +1,13 @@
package com.peanut.modules.common.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.peanut.modules.common.dao.AiBuyConfigDao;
import com.peanut.modules.common.entity.AiBuyConfig;
import com.peanut.modules.common.service.AiBuyConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Slf4j
@Service("commonAiBuyConfigService")
public class AiBuyConfigServiceImpl extends ServiceImpl<AiBuyConfigDao, AiBuyConfig> implements AiBuyConfigService {
}

View File

@@ -0,0 +1,13 @@
package com.peanut.modules.common.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.peanut.modules.common.dao.AiVipLogDao;
import com.peanut.modules.common.entity.AiVipLog;
import com.peanut.modules.common.service.AiVipLogService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
@Slf4j
@Service("commonAiVipLogService")
public class AiVipLogServiceImpl extends ServiceImpl<AiVipLogDao, AiVipLog> implements AiVipLogService {
}

View File

@@ -4,9 +4,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.peanut.common.utils.R;
import com.peanut.modules.book.service.BuyOrderService;
import com.peanut.modules.common.entity.AiBuyConfig;
import com.peanut.modules.common.entity.BookBuyConfigEntity;
import com.peanut.modules.common.entity.BuyOrder;
import com.peanut.modules.common.entity.VipBuyConfigEntity;
import com.peanut.modules.common.service.AiBuyConfigService;
import com.peanut.modules.master.service.BookBuyConfigService;
import com.peanut.modules.master.service.VipBuyConfigService;
import lombok.extern.slf4j.Slf4j;
@@ -31,6 +33,8 @@ public class BuyConfigController {
private VipBuyConfigService vipBuyConfigService;
@Autowired
private BuyOrderService buyOrderService;
@Autowired
private AiBuyConfigService aiBuyConfigService;
@RequestMapping("/getBookBuyConfigList")
public R getBookBuyConfigList(@RequestBody Map<String, Object> params) {
@@ -94,6 +98,31 @@ public class BuyConfigController {
return R.ok();
}
@RequestMapping("/getAiBuyConfigList")
public R getAiBuyConfigList(@RequestBody Map<String, Object> params) {
LambdaQueryWrapper<AiBuyConfig> wrapper = new LambdaQueryWrapper();
Page<AiBuyConfig> page = aiBuyConfigService.page(new Page<>(
Long.parseLong(params.get("page").toString()), Long.parseLong(params.get("limit").toString())), wrapper);
return R.ok().put("result", page);
}
@RequestMapping("/saveAiBuyConfig")
public R saveAiBuyConfig(@RequestBody AiBuyConfig config){
aiBuyConfigService.save(config);
return R.ok();
}
@RequestMapping("/updateAiBuyConfig")
public R updateAiBuyConfig(@RequestBody AiBuyConfig config){
aiBuyConfigService.updateById(config);
return R.ok();
}
@RequestMapping("/delAiBuyConfig")
public R delAiBuyConfig(@RequestBody Map<String, Object> params) {
aiBuyConfigService.removeById(params.get("id").toString());
return R.ok();
}

View File

@@ -0,0 +1,29 @@
package com.peanut.modules.taihumed.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.peanut.common.utils.R;
import com.peanut.modules.common.entity.AiBuyConfig;
import com.peanut.modules.common.service.AiBuyConfigService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@Slf4j
@RestController("taihumedAiBuyConfig")
@RequestMapping("taihumed/aiBuyConfig")
public class AiBuyConfigController {
@Autowired
private AiBuyConfigService aiBuyConfigService;
//ai会员配置列表
@RequestMapping("/getAiBuyConfigList")
public R getAiBuyConfigList(){
List<AiBuyConfig> list = aiBuyConfigService.list(new LambdaQueryWrapper<AiBuyConfig>()
.orderByAsc(AiBuyConfig::getFee));
return R.ok().put("list",list);
}
}