From 41ba6457330764f387df594ff3137fac8f3aa319 Mon Sep 17 00:00:00 2001 From: yuanhc <626532990@qq.com> Date: Sat, 19 Apr 2025 18:55:37 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AD=A6=E5=91=98=E7=9B=B8=E5=85=B3api?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/ContractController.java | 72 +++++++++++++++++ .../student/controller/FlowUpController.java | 4 +- .../controller/RealNameAuthController.java | 41 ++++++++++ .../controller/ReservationController.java | 6 +- .../student/controller/StudentController.java | 6 +- .../student/controller/WalletController.java | 6 +- .../api/module/student/dto/ContractDTO.java | 9 +++ .../student/service/AccessPermitService.java | 24 ++++++ .../student/service/ContractService.java | 81 +++++++++++++++++++ .../student/service/RealNameAuthService.java | 30 +++++++ .../student/service/StudentService.java | 61 +++++++++++++- 11 files changed, 326 insertions(+), 14 deletions(-) create mode 100644 weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/ContractController.java create mode 100644 weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/RealNameAuthController.java create mode 100644 weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/dto/ContractDTO.java create mode 100644 weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/ContractService.java create mode 100644 weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/RealNameAuthService.java diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/ContractController.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/ContractController.java new file mode 100644 index 0000000..adc36ef --- /dev/null +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/ContractController.java @@ -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 add(@Valid @RequestBody ContractDTO dto) { + return contractService.add(dto); + } + + @Operation(summary = "合同修改") + @PostMapping("/edit") + public ApiResult edit(@Valid @RequestBody ContractDTO dto) { + return contractService.edit(dto); + } + + @Operation(summary = "合同作废") + @PostMapping("/cancel") + public ApiResult cancel(@Valid @RequestBody IdParam param) { + return contractService.cancel(param); + } + + @Operation(summary = "合同草稿保存") + @PostMapping("/draft-save") + public ApiResult draftSave(@Valid @RequestBody ContractDTO dto) { + return contractService.draftSave(dto); + } + + @Operation(summary = "合同详情") + @PostMapping("/detail") + public ApiResult detail(@Valid @RequestBody IdParam param) { + return contractService.detail(param); + } + + @Operation(summary = "合同列表") + @PostMapping("/list") + public ApiResult> list(@Valid @RequestBody PageParam param) { + return contractService.list(param); + } + + @Operation(summary = "合同付款回调") + @PostMapping("/payment-callback") + public ApiResult paymentCallback(@Valid @RequestBody ContractDTO dto) { + return contractService.paymentCallback(dto); + } +} \ No newline at end of file diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/FlowUpController.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/FlowUpController.java index 9b6dc1b..5c31652 100644 --- a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/FlowUpController.java +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/FlowUpController.java @@ -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 diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/RealNameAuthController.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/RealNameAuthController.java new file mode 100644 index 0000000..0d66d1d --- /dev/null +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/RealNameAuthController.java @@ -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 add(@Valid @RequestBody RealNameAuthDTO dto) { + return realNameAuthService.add(dto); + } + + @Operation(summary = "实名认证列表") + @PostMapping("/list") + public ApiResult> list(@Valid @RequestBody PageParam param) { + return realNameAuthService.list(param); + } +} \ No newline at end of file diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/ReservationController.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/ReservationController.java index a9c06ee..9d31da2 100644 --- a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/ReservationController.java +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/ReservationController.java @@ -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 addFlow(@Valid @RequestBody ReservationDTO dto) { return reservationService.genPayment(dto); } @Operation(summary = "付款回调") - @PostMapping("payment/callback") + @PostMapping("/payment/callback") public ApiResult> payCallback(@Valid @RequestBody PageParam param) { return reservationService.payCallback(param); } diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/StudentController.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/StudentController.java index 9027e77..da7ebfd 100644 --- a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/StudentController.java +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/StudentController.java @@ -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 login(@Valid @RequestBody StudentDTO dto) { + public ApiResult login(@Valid @RequestBody MemberDTO dto) { return studentService.login(dto); } diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/WalletController.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/WalletController.java index bf2d8a1..907f6af 100644 --- a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/WalletController.java +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/controller/WalletController.java @@ -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 addFlow(@Valid @RequestBody WalletDTO dto) { return walletService.addFlow(dto); } @Operation(summary = "分页查询钱包流水") - @PostMapping("flow/list") + @PostMapping("/flow/list") public ApiResult> listFlow(@Valid @RequestBody PageParam param) { return walletService.listFlow(param); } diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/dto/ContractDTO.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/dto/ContractDTO.java new file mode 100644 index 0000000..71e7b32 --- /dev/null +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/dto/ContractDTO.java @@ -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 { +} \ No newline at end of file diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/AccessPermitService.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/AccessPermitService.java index 1697d24..2b9cb5a 100644 --- a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/AccessPermitService.java +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/AccessPermitService.java @@ -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 check(@Valid IdParam param) { return null; } + + public static class RealNameAuthService { + + /** + * 实名认证新增 + * + * @param dto 实名认证信息 + * @return 操作结果 + */ + public ApiResult add(@Valid RealNameAuthDTO dto) { + return null; + } + + /** + * 分页查询实名认证 + * + * @param param 分页和查询参数 + * @return 实名认证列表 + */ + public ApiResult> list(@Valid PageParam param) { + return null; + } + } } diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/ContractService.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/ContractService.java new file mode 100644 index 0000000..2927fc5 --- /dev/null +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/ContractService.java @@ -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 add(@Valid ContractDTO dto) { + return null; + } + + /** + * 合同修改 + * + * @param dto 合同信息 + * @return 操作结果 + */ + public ApiResult edit(@Valid ContractDTO dto) { + return null; + } + + /** + * 合同作废 + * + * @param param 合同ID参数 + * @return 操作结果 + */ + public ApiResult cancel(@Valid IdParam param) { + return null; + } + + /** + * 合同草稿保存 + * + * @param dto 合同草稿信息 + * @return 操作结果 + */ + public ApiResult draftSave(@Valid ContractDTO dto) { + return null; + } + + /** + * 合同详情 + * + * @param param 合同ID参数 + * @return 合同详情 + */ + public ApiResult detail(@Valid IdParam param) { + return null; + } + + /** + * 分页查询合同 + * + * @param param 分页和查询参数 + * @return 合同列表 + */ + public ApiResult> list(@Valid PageParam param) { + return null; + } + + /** + * 合同付款回调 + * + * @param dto 付款回调参数 + * @return 操作结果 + */ + public ApiResult paymentCallback(@Valid ContractDTO dto) { + return null; + } +} \ No newline at end of file diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/RealNameAuthService.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/RealNameAuthService.java new file mode 100644 index 0000000..e5f43b3 --- /dev/null +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/RealNameAuthService.java @@ -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 add(@Valid RealNameAuthDTO dto) { + return null; + } + + /** + * 分页查询实名认证 + * + * @param param 分页和查询参数 + * @return 实名认证列表 + */ + public ApiResult> list(@Valid PageParam param) { + return null; + } +} \ No newline at end of file diff --git a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/StudentService.java b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/StudentService.java index d45071b..d272428 100644 --- a/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/StudentService.java +++ b/weight-loss-camp-service-api/src/main/java/com/wjbl/weightlosscamp/service/api/module/student/service/StudentService.java @@ -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 add(@Valid StudentDTO dto) { return null; } + /** + * 学员编辑 + * + * @param dto 学员信息 + * @return 操作结果 + */ public ApiResult edit(@Valid StudentDTO dto) { return null; } + /** + * 学员详情 + * + * @param param 学员ID参数 + * @return 学员详情 + */ + public ApiResult detail(@Valid IdParam param) { + return null; + } + + /** + * 分页查询学员 + * + * @param param 分页和查询参数 + * @return 学员列表 + */ public ApiResult> list(@Valid PageParam param) { return null; } + /** + * 切换学员状态 + * + * @param param 学员ID参数 + * @return 操作结果 + */ public ApiResult switchStatus(@Valid IdParam param) { return null; } + /** + * 绑定企业微信 + * + * @param param 学员ID参数 + * @return 操作结果 + */ public ApiResult bindCorpWx(@Valid IdParam param) { return null; } - public ApiResult login(@Valid StudentDTO dto) { + /** + * 绑定企业微信ID + * + * @param param 学员ID参数 + * @return 操作结果 + */ + public ApiResult bindCorpWxId(@Valid IdParam param) { return null; } -} + + /** + * 学员登录 + * + * @param dto 登录信息 + * @return 操作结果 + */ + public ApiResult login(@Valid MemberDTO dto) { + return null; + } +} \ No newline at end of file