学员相关api问题修复

This commit is contained in:
袁红川 2025-04-19 18:55:37 +08:00
parent 91a6780e25
commit 41ba645733
11 changed files with 326 additions and 14 deletions

View File

@ -0,0 +1,72 @@
package com.wjbl.weightlosscamp.service.api.module.student.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.student.dto.ContractDTO;
import com.wjbl.weightlosscamp.service.api.module.student.service.ContractService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 合同控制器
*/
@Tag(name = "合同管理")
@RestController
@RequestMapping("/student/contract")
@RequiredArgsConstructor
@Slf4j
public class ContractController {
private final ContractService contractService;
@Operation(summary = "合同新增")
@PostMapping("/add")
public ApiResult<Void> add(@Valid @RequestBody ContractDTO dto) {
return contractService.add(dto);
}
@Operation(summary = "合同修改")
@PostMapping("/edit")
public ApiResult<Void> edit(@Valid @RequestBody ContractDTO dto) {
return contractService.edit(dto);
}
@Operation(summary = "合同作废")
@PostMapping("/cancel")
public ApiResult<Void> cancel(@Valid @RequestBody IdParam param) {
return contractService.cancel(param);
}
@Operation(summary = "合同草稿保存")
@PostMapping("/draft-save")
public ApiResult<Void> draftSave(@Valid @RequestBody ContractDTO dto) {
return contractService.draftSave(dto);
}
@Operation(summary = "合同详情")
@PostMapping("/detail")
public ApiResult<ContractDTO> detail(@Valid @RequestBody IdParam param) {
return contractService.detail(param);
}
@Operation(summary = "合同列表")
@PostMapping("/list")
public ApiResult<Page<ContractDTO>> list(@Valid @RequestBody PageParam<ContractDTO> param) {
return contractService.list(param);
}
@Operation(summary = "合同付款回调")
@PostMapping("/payment-callback")
public ApiResult<Void> paymentCallback(@Valid @RequestBody ContractDTO dto) {
return contractService.paymentCallback(dto);
}
}

View File

@ -17,9 +17,9 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 跟进记录控制器
* 跟进控制器
*/
@Tag(name = "跟进记录")
@Tag(name = "跟进")
@RestController
@RequestMapping("/student/flow-up")
@RequiredArgsConstructor

View File

@ -0,0 +1,41 @@
package com.wjbl.weightlosscamp.service.api.module.student.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.student.dto.RealNameAuthDTO;
import com.wjbl.weightlosscamp.service.api.module.student.service.AccessPermitService;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 实名认证控制器
*/
@Tag(name = "实名认证")
@RestController
@RequestMapping("/student/real-name-auth")
@RequiredArgsConstructor
@Slf4j
public class RealNameAuthController {
private final AccessPermitService.RealNameAuthService realNameAuthService;
@Operation(summary = "实名认证新增")
@PostMapping("/add")
public ApiResult<Void> add(@Valid @RequestBody RealNameAuthDTO dto) {
return realNameAuthService.add(dto);
}
@Operation(summary = "实名认证列表")
@PostMapping("/list")
public ApiResult<Page<RealNameAuthDTO>> list(@Valid @RequestBody PageParam<RealNameAuthDTO> param) {
return realNameAuthService.list(param);
}
}

View File

@ -21,7 +21,7 @@ import org.springframework.web.bind.annotation.RestController;
*/
@Tag(name = "预定信息")
@RestController
@RequestMapping("student")
@RequestMapping("/student/reservation")
@Slf4j
@Setter
public class ReservationController {
@ -56,14 +56,14 @@ public class ReservationController {
@Operation(summary = "生成付款")
@PostMapping("payment/gen")
@PostMapping("/payment/gen")
public ApiResult<Void> addFlow(@Valid @RequestBody ReservationDTO dto) {
return reservationService.genPayment(dto);
}
@Operation(summary = "付款回调")
@PostMapping("payment/callback")
@PostMapping("/payment/callback")
public ApiResult<Page<ReservationDTO>> payCallback(@Valid @RequestBody PageParam<ReservationDTO> param) {
return reservationService.payCallback(param);
}

View File

@ -4,14 +4,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.student.dto.BalanceRefundDTO;
import com.wjbl.weightlosscamp.service.api.module.student.dto.StudentDTO;
import com.wjbl.weightlosscamp.service.api.module.student.service.StudentService;
import com.wjbl.weightlosscamp.service.api.module.sys.dto.MemberDTO;
import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping;
@ -22,7 +20,7 @@ import org.springframework.web.bind.annotation.RestController;
/**
* 学员信息控制器
*/
@Tag(name = "学员信息")
@Tag(name = "学员")
@RestController
@RequestMapping("student")
@Slf4j
@ -33,7 +31,7 @@ public class StudentController {
@Operation(summary = "成员登录")
@PostMapping("login")
public ApiResult<Void> login(@Valid @RequestBody StudentDTO dto) {
public ApiResult<Void> login(@Valid @RequestBody MemberDTO dto) {
return studentService.login(dto);
}

View File

@ -20,7 +20,7 @@ import org.springframework.web.bind.annotation.RestController;
*/
@Tag(name = "钱包信息")
@RestController
@RequestMapping("student")
@RequestMapping("/student/wallet")
@Slf4j
@Setter
public class WalletController {
@ -43,14 +43,14 @@ public class WalletController {
@Operation(summary = "新增钱包流水")
@PostMapping("flow/add")
@PostMapping("/flow/add")
public ApiResult<Void> addFlow(@Valid @RequestBody WalletDTO dto) {
return walletService.addFlow(dto);
}
@Operation(summary = "分页查询钱包流水")
@PostMapping("flow/list")
@PostMapping("/flow/list")
public ApiResult<Page<WalletDTO>> listFlow(@Valid @RequestBody PageParam<WalletDTO> param) {
return walletService.listFlow(param);
}

View File

@ -0,0 +1,9 @@
package com.wjbl.weightlosscamp.service.api.module.student.dto;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@Data
@Schema(description = "合同DTO")
public class ContractDTO {
}

View File

@ -6,6 +6,7 @@ import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.student.dto.AccessPermitDTO;
import com.wjbl.weightlosscamp.service.api.module.student.dto.RealNameAuthDTO;
import jakarta.validation.Valid;
public class AccessPermitService {
@ -45,4 +46,27 @@ public class AccessPermitService {
public ApiResult<Void> check(@Valid IdParam param) {
return null;
}
public static class RealNameAuthService {
/**
* 实名认证新增
*
* @param dto 实名认证信息
* @return 操作结果
*/
public ApiResult<Void> add(@Valid RealNameAuthDTO dto) {
return null;
}
/**
* 分页查询实名认证
*
* @param param 分页和查询参数
* @return 实名认证列表
*/
public ApiResult<Page<RealNameAuthDTO>> list(@Valid PageParam<RealNameAuthDTO> param) {
return null;
}
}
}

View File

@ -0,0 +1,81 @@
package com.wjbl.weightlosscamp.service.api.module.student.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.student.dto.ContractDTO;
import jakarta.validation.Valid;
public class ContractService {
/**
* 合同新增
*
* @param dto 合同信息
* @return 操作结果
*/
public ApiResult<Void> add(@Valid ContractDTO dto) {
return null;
}
/**
* 合同修改
*
* @param dto 合同信息
* @return 操作结果
*/
public ApiResult<Void> edit(@Valid ContractDTO dto) {
return null;
}
/**
* 合同作废
*
* @param param 合同ID参数
* @return 操作结果
*/
public ApiResult<Void> cancel(@Valid IdParam param) {
return null;
}
/**
* 合同草稿保存
*
* @param dto 合同草稿信息
* @return 操作结果
*/
public ApiResult<Void> draftSave(@Valid ContractDTO dto) {
return null;
}
/**
* 合同详情
*
* @param param 合同ID参数
* @return 合同详情
*/
public ApiResult<ContractDTO> detail(@Valid IdParam param) {
return null;
}
/**
* 分页查询合同
*
* @param param 分页和查询参数
* @return 合同列表
*/
public ApiResult<Page<ContractDTO>> list(@Valid PageParam<ContractDTO> param) {
return null;
}
/**
* 合同付款回调
*
* @param dto 付款回调参数
* @return 操作结果
*/
public ApiResult<Void> paymentCallback(@Valid ContractDTO dto) {
return null;
}
}

View File

@ -0,0 +1,30 @@
package com.wjbl.weightlosscamp.service.api.module.student.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.student.dto.RealNameAuthDTO;
import jakarta.validation.Valid;
public class RealNameAuthService {
/**
* 实名认证新增
*
* @param dto 实名认证信息
* @return 操作结果
*/
public ApiResult<Void> add(@Valid RealNameAuthDTO dto) {
return null;
}
/**
* 分页查询实名认证
*
* @param param 分页和查询参数
* @return 实名认证列表
*/
public ApiResult<Page<RealNameAuthDTO>> list(@Valid PageParam<RealNameAuthDTO> param) {
return null;
}
}

View File

@ -5,30 +5,87 @@ import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.student.dto.StudentDTO;
import com.wjbl.weightlosscamp.service.api.module.sys.dto.MemberDTO;
import jakarta.validation.Valid;
public class StudentService {
/**
* 学员新增
*
* @param dto 学员信息
* @return 操作结果
*/
public ApiResult<Void> add(@Valid StudentDTO dto) {
return null;
}
/**
* 学员编辑
*
* @param dto 学员信息
* @return 操作结果
*/
public ApiResult<Void> edit(@Valid StudentDTO dto) {
return null;
}
/**
* 学员详情
*
* @param param 学员ID参数
* @return 学员详情
*/
public ApiResult<StudentDTO> detail(@Valid IdParam param) {
return null;
}
/**
* 分页查询学员
*
* @param param 分页和查询参数
* @return 学员列表
*/
public ApiResult<Page<StudentDTO>> list(@Valid PageParam<StudentDTO> param) {
return null;
}
/**
* 切换学员状态
*
* @param param 学员ID参数
* @return 操作结果
*/
public ApiResult<Void> switchStatus(@Valid IdParam param) {
return null;
}
/**
* 绑定企业微信
*
* @param param 学员ID参数
* @return 操作结果
*/
public ApiResult<Void> bindCorpWx(@Valid IdParam param) {
return null;
}
public ApiResult<Void> login(@Valid StudentDTO dto) {
/**
* 绑定企业微信ID
*
* @param param 学员ID参数
* @return 操作结果
*/
public ApiResult<Void> bindCorpWxId(@Valid IdParam param) {
return null;
}
/**
* 学员登录
*
* @param dto 登录信息
* @return 操作结果
*/
public ApiResult<Void> login(@Valid MemberDTO dto) {
return null;
}
}