feat(user): 新增用户反馈提交功能
This commit is contained in:
@@ -6,6 +6,7 @@ import com.yolo.keyborad.common.BaseResponse;
|
||||
import com.yolo.keyborad.common.ResultUtils;
|
||||
import com.yolo.keyborad.model.dto.AppleLoginReq;
|
||||
import com.yolo.keyborad.model.dto.user.*;
|
||||
import com.yolo.keyborad.model.entity.KeyboardFeedback;
|
||||
import com.yolo.keyborad.model.entity.KeyboardUser;
|
||||
import com.yolo.keyborad.model.vo.user.KeyboardUserInfoRespVO;
|
||||
import com.yolo.keyborad.model.vo.user.KeyboardUserRespVO;
|
||||
@@ -42,6 +43,9 @@ public class UserController {
|
||||
@Resource
|
||||
private UserService userService;
|
||||
|
||||
@Resource
|
||||
private com.yolo.keyborad.service.KeyboardFeedbackService feedbackService;
|
||||
|
||||
/**
|
||||
* 苹果登录
|
||||
*
|
||||
@@ -117,4 +121,14 @@ public class UserController {
|
||||
return ResultUtils.success(userService.resetPassWord(resetPassWordDTO));
|
||||
}
|
||||
|
||||
@PostMapping("/feedback")
|
||||
@Operation(summary = "提交反馈", description = "用户提交反馈接口")
|
||||
public BaseResponse<Boolean> submitFeedback(@RequestBody FeedbackSubmitReq req) {
|
||||
KeyboardFeedback feedback = new KeyboardFeedback();
|
||||
feedback.setContent(req.getContent());
|
||||
feedback.setCreatedAt(new java.util.Date());
|
||||
return ResultUtils.success(feedbackService.save(feedback));
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
package com.yolo.keyborad.mapper;
|
||||
|
||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||
import com.yolo.keyborad.model.entity.KeyboardFeedback;
|
||||
|
||||
/*
|
||||
* @author: ziin
|
||||
* @date: 2025/12/17 17:06
|
||||
*/
|
||||
|
||||
public interface KeyboardFeedbackMapper extends BaseMapper<KeyboardFeedback> {
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.yolo.keyborad.model.dto.user;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* 用户反馈提交请求
|
||||
*/
|
||||
@Data
|
||||
@Schema(description = "用户反馈提交请求")
|
||||
public class FeedbackSubmitReq {
|
||||
|
||||
/**
|
||||
* 反馈内容
|
||||
*/
|
||||
@Schema(description = "反馈内容", required = true)
|
||||
private String content;
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
package com.yolo.keyborad.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 io.swagger.v3.oas.annotations.media.Schema;
|
||||
import java.util.Date;
|
||||
import lombok.Data;
|
||||
|
||||
/*
|
||||
* @author: ziin
|
||||
* @date: 2025/12/17 17:06
|
||||
*/
|
||||
|
||||
/**
|
||||
* 用户反馈表
|
||||
*/
|
||||
@Schema(description="用户反馈表")
|
||||
@Data
|
||||
@TableName(value = "keyboard_feedback")
|
||||
public class KeyboardFeedback {
|
||||
/**
|
||||
* 主键ID
|
||||
*/
|
||||
@TableId(value = "id", type = IdType.AUTO)
|
||||
@Schema(description="主键ID")
|
||||
private Long id;
|
||||
|
||||
/**
|
||||
* 用户反馈内容
|
||||
*/
|
||||
@TableField(value = "content")
|
||||
@Schema(description="用户反馈内容")
|
||||
private String content;
|
||||
|
||||
/**
|
||||
* 反馈创建时间
|
||||
*/
|
||||
@TableField(value = "created_at")
|
||||
@Schema(description="反馈创建时间")
|
||||
private Date createdAt;
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
package com.yolo.keyborad.service;
|
||||
|
||||
import com.yolo.keyborad.model.entity.KeyboardFeedback;
|
||||
import com.baomidou.mybatisplus.extension.service.IService;
|
||||
/*
|
||||
* @author: ziin
|
||||
* @date: 2025/12/17 17:06
|
||||
*/
|
||||
|
||||
public interface KeyboardFeedbackService extends IService<KeyboardFeedback>{
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.yolo.keyborad.service.impl;
|
||||
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import java.util.List;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.yolo.keyborad.mapper.KeyboardFeedbackMapper;
|
||||
import com.yolo.keyborad.model.entity.KeyboardFeedback;
|
||||
import com.yolo.keyborad.service.KeyboardFeedbackService;
|
||||
/*
|
||||
* @author: ziin
|
||||
* @date: 2025/12/17 17:06
|
||||
*/
|
||||
|
||||
@Service
|
||||
public class KeyboardFeedbackServiceImpl extends ServiceImpl<KeyboardFeedbackMapper, KeyboardFeedback> implements KeyboardFeedbackService{
|
||||
|
||||
}
|
||||
15
src/main/resources/mapper/KeyboardFeedbackMapper.xml
Normal file
15
src/main/resources/mapper/KeyboardFeedbackMapper.xml
Normal file
@@ -0,0 +1,15 @@
|
||||
<?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="com.yolo.keyborad.mapper.KeyboardFeedbackMapper">
|
||||
<resultMap id="BaseResultMap" type="com.yolo.keyborad.model.entity.KeyboardFeedback">
|
||||
<!--@mbg.generated-->
|
||||
<!--@Table keyboard_feedback-->
|
||||
<id column="id" jdbcType="BIGINT" property="id" />
|
||||
<result column="content" jdbcType="VARCHAR" property="content" />
|
||||
<result column="created_at" jdbcType="TIMESTAMP" property="createdAt" />
|
||||
</resultMap>
|
||||
<sql id="Base_Column_List">
|
||||
<!--@mbg.generated-->
|
||||
id, content, created_at
|
||||
</sql>
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user