Merge remote-tracking branch 'origin/main'

This commit is contained in:
Kevin-Laptop 2025-04-19 23:53:12 +08:00
commit 708acfb349
21 changed files with 670 additions and 461 deletions

View File

@ -5,17 +5,58 @@ import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam; import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampClassroomDTO; import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampClassroomDTO;
import org.springframework.stereotype.Service;
/** /**
* 营地教室服务接口 * 营地教室服务实现类
*/ */
public interface CampClassroomService { @Service
public class CampClassroomService {
ApiResult<Void> add(CampClassroomDTO dto); /**
* 新增营地教室
*
* @param dto
* @return
*/
public ApiResult<Void> add(CampClassroomDTO dto) {
return null;
}
ApiResult<Void> edit(CampClassroomDTO dto);
ApiResult<CampClassroomDTO> detail(IdParam param); /**
* 修改营地教室
*
* @param dto
* @return
*/
ApiResult<Page<CampClassroomDTO>> list(PageParam<CampClassroomDTO> param); public ApiResult<Void> edit(CampClassroomDTO dto) {
return null;
}
/**
* 删除营地教室
*
* @param param
* @return
*/
public ApiResult<CampClassroomDTO> detail(IdParam param) {
return null;
}
/**
* 分页查询营地教室
*
* @param param
* @return
*/
public ApiResult<Page<CampClassroomDTO>> list(PageParam<CampClassroomDTO> param) {
return null;
}
} }

View File

@ -5,22 +5,76 @@ import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam; import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampCoachingGroupDTO; import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampCoachingGroupDTO;
import jakarta.validation.Valid; import org.springframework.stereotype.Service;
/** /**
* 营地产品服务接口 * 营地教练组服务实现类
*/ */
public interface CampCoachingGroupService { @Service
public class CampCoachingGroupService {
/**
* 新增营地教练组
*
* @param dto
* @return
*/
ApiResult<Void> add(CampCoachingGroupDTO dto); public ApiResult<Void> add(CampCoachingGroupDTO dto) {
return null;
}
ApiResult<Void> edit(CampCoachingGroupDTO dto); /**
* 修改营地教练组
*
* @param dto
* @return
*/
ApiResult<CampCoachingGroupDTO> detail(IdParam param); public ApiResult<Void> edit(CampCoachingGroupDTO dto) {
return null;
}
ApiResult<Page<CampCoachingGroupDTO>> list(PageParam<CampCoachingGroupDTO> param);
ApiResult<Page<CampCoachingGroupDTO>> memberList(@Valid PageParam<CampCoachingGroupDTO> param); /**
* 获取营地教练组详情
*
* @param param
* @return
*/
ApiResult<Page<CampCoachingGroupDTO>> studentList(@Valid PageParam<CampCoachingGroupDTO> param); public ApiResult<CampCoachingGroupDTO> detail(IdParam param) {
return null;
}
/**
* 分页查询营地教练组
*
* @param param
* @return
*/
public ApiResult<Page<CampCoachingGroupDTO>> list(PageParam<CampCoachingGroupDTO> param) {
return null;
}
/**
* 分页查询营地教练组成员
* @param param
* @return
*/
public ApiResult<Page<CampCoachingGroupDTO>> studentList(PageParam<CampCoachingGroupDTO> param) {
return null;
}
/**
* 分页查询营地教练组学员
* @param param
* @return
*/
public ApiResult<Page<CampCoachingGroupDTO>> memberList(PageParam<CampCoachingGroupDTO> param) {
return null;
}
} }

View File

@ -1,40 +1,44 @@
package com.wjbl.weightlosscamp.service.api.module.camp.service; package com.wjbl.weightlosscamp.service.api.module.camp.service;// package com.wjbl.weightlosscamp.service.api.module.camp.service.impl;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.wjbl.weightlosscamp.api.base.core.ApiResult; import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam; import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampInfoDTO; import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampInfoDTO;
import com.wjbl.weightlosscamp.service.api.module.camp.entity.CampInfo; import org.springframework.stereotype.Service;
/** /**
* 营地信息服务接口 * 营地信息服务实现类
*/ */
public interface CampInfoService extends IService<CampInfo> { @Service
public class CampInfoService {
/**
* 新增营地
*/
ApiResult<Void> add(CampInfoDTO dto);
/** public ApiResult<Void> add(CampInfoDTO dto) {
* 修改营地 return null;
*/ }
ApiResult<Void> edit(CampInfoDTO dto);
/**
* 删除营地
*/
ApiResult<Void> delete(IdParam param);
/** public ApiResult<Void> edit(CampInfoDTO dto) {
* 获取营地详情 return null;
*/
ApiResult<CampInfoDTO> detail(IdParam param);
/** }
* 分页查询营地
*/
ApiResult<Page<CampInfoDTO>> page(PageParam<CampInfoDTO> param); public ApiResult<Void> delete(IdParam param) {
return null;
}
public ApiResult<CampInfoDTO> detail(IdParam param) {
return null;
}
public ApiResult<Page<CampInfoDTO>> page(PageParam<CampInfoDTO> param) {
return null;
}
} }

View File

@ -5,20 +5,66 @@ import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam; import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampProductDTO; import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampProductDTO;
import jakarta.validation.Valid; import org.springframework.stereotype.Service;
/** /**
* 营地产品服务接口 * 营地产品服务实现类
*/ */
public interface CampProductService { @Service
public class CampProductService {
/**
* 新增营地产品
*
* @param dto
* @return
*/
ApiResult<Void> add(CampProductDTO dto); public ApiResult<Void> add(CampProductDTO dto) {
return null;
}
ApiResult<Void> edit(CampProductDTO dto); /**
* 修改营地产品
*
* @param dto
* @return
*/
ApiResult<CampProductDTO> detail(IdParam param); public ApiResult<Void> edit(CampProductDTO dto) {
return null;
}
ApiResult<Page<CampProductDTO>> list(PageParam<CampProductDTO> param); /**
* 获取营地产品详情
*
* @param param
* @return
*/
ApiResult<Void> switchStatus(@Valid IdParam param); public ApiResult<CampProductDTO> detail(IdParam param) {
return null;
}
/**
* 分页查询营地产品
*
* @param param
* @return
*/
public ApiResult<Page<CampProductDTO>> list(PageParam<CampProductDTO> param) {
return null;
}
/**
* 产品切换状态启用禁用
*
* @param param
* @return
*/
public ApiResult<Void> switchStatus(IdParam param) {
return null;
}
} }

View File

@ -5,27 +5,92 @@ import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam; import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampRoomDTO; import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampRoomDTO;
import org.springframework.stereotype.Service;
/** /**
* 营地住宿服务接口 * 营地住宿服务实现类
*/ */
public interface CampRoomService { @Service
public class CampRoomService {
ApiResult<Void> addRoomType(CampRoomDTO dto); /**
* 房型新增
* @param dto
* @return
*/
ApiResult<Void> listRoomType(CampRoomDTO dto); public ApiResult<Void> addRoomType(CampRoomDTO dto) {
return null;
}
ApiResult<Void> add(CampRoomDTO dto); /**
* 房型列表
* @param dto
* @return
*/
ApiResult<Void> edit(CampRoomDTO dto); public ApiResult<Void> listRoomType(CampRoomDTO dto) {
return null;
}
ApiResult<Void> delete(IdParam param); /**
* 新增营地房间
* @param dto
* @return
*/
ApiResult<CampRoomDTO> detail(IdParam param); public ApiResult<Void> add(CampRoomDTO dto) {
return null;
}
ApiResult<Page<CampRoomDTO>> list(PageParam<CampRoomDTO> param); /**
* 修改营地房间
* @param dto
* @return
*/
ApiResult<CampRoomDTO> statistics(CampRoomDTO dto); public ApiResult<Void> edit(CampRoomDTO dto) {
return null;
}
/**
* 删除营地房间
* @param param
* @return
*/
public ApiResult<Void> delete(IdParam param) {
return null;
}
/**
* 获取营地房间详情
* @param param
* @return
*/
public ApiResult<CampRoomDTO> detail(IdParam param) {
return null;
}
/**
* 分页查询营地房间
* @param param
* @return
*/
public ApiResult<Page<CampRoomDTO>> list(PageParam<CampRoomDTO> param) {
return null;
}
/**
* 房间统计
* @param dto
* @return
*/
public ApiResult<CampRoomDTO> statistics(CampRoomDTO dto) {
return null;
}
} }

View File

@ -1,97 +0,0 @@
package com.wjbl.weightlosscamp.service.api.module.camp.service.impl;
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.camp.dto.CampRoomDTO;
import com.wjbl.weightlosscamp.service.api.module.camp.service.CampRoomService;
import org.springframework.stereotype.Service;
/**
* 营地住宿服务实现类
*/
@Service
public class CampClassServiceImpl implements CampRoomService {
/**
* 房型新增
* @param dto
* @return
*/
@Override
public ApiResult<Void> addRoomType(CampRoomDTO dto) {
return null;
}
/**
* 房型列表
* @param dto
* @return
*/
@Override
public ApiResult<Void> listRoomType(CampRoomDTO dto) {
return null;
}
/**
* 新增营地房间
* @param dto
* @return
*/
@Override
public ApiResult<Void> add(CampRoomDTO dto) {
return null;
}
/**
* 修改营地房间
* @param dto
* @return
*/
@Override
public ApiResult<Void> edit(CampRoomDTO dto) {
return null;
}
/**
* 删除营地房间
* @param param
* @return
*/
@Override
public ApiResult<Void> delete(IdParam param) {
return null;
}
/**
* 获取营地房间详情
* @param param
* @return
*/
@Override
public ApiResult<CampRoomDTO> detail(IdParam param) {
return null;
}
/**
* 分页查询营地房间
* @param param
* @return
*/
@Override
public ApiResult<Page<CampRoomDTO>> list(PageParam<CampRoomDTO> param) {
return null;
}
/**
* 房间统计
* @param dto
* @return
*/
@Override
public ApiResult<CampRoomDTO> statistics(CampRoomDTO dto) {
return null;
}
}

View File

@ -1,64 +0,0 @@
package com.wjbl.weightlosscamp.service.api.module.camp.service.impl;
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.camp.dto.CampClassroomDTO;
import com.wjbl.weightlosscamp.service.api.module.camp.service.CampClassroomService;
import org.springframework.stereotype.Service;
/**
* 营地教室服务实现类
*/
@Service
public class CampClassroomServiceImpl implements CampClassroomService {
/**
* 新增营地教室
*
* @param dto
* @return
*/
@Override
public ApiResult<Void> add(CampClassroomDTO dto) {
return null;
}
/**
* 修改营地教室
*
* @param dto
* @return
*/
@Override
public ApiResult<Void> edit(CampClassroomDTO dto) {
return null;
}
/**
* 删除营地教室
*
* @param param
* @return
*/
@Override
public ApiResult<CampClassroomDTO> detail(IdParam param) {
return null;
}
/**
* 分页查询营地教室
*
* @param param
* @return
*/
@Override
public ApiResult<Page<CampClassroomDTO>> list(PageParam<CampClassroomDTO> param) {
return null;
}
}

View File

@ -1,81 +0,0 @@
package com.wjbl.weightlosscamp.service.api.module.camp.service.impl;
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.camp.dto.CampCoachingGroupDTO;
import com.wjbl.weightlosscamp.service.api.module.camp.service.CampCoachingGroupService;
import org.springframework.stereotype.Service;
/**
* 营地教练组服务实现类
*/
@Service
public class CampCoachingGroupServiceImpl implements CampCoachingGroupService {
/**
* 新增营地教练组
*
* @param dto
* @return
*/
@Override
public ApiResult<Void> add(CampCoachingGroupDTO dto) {
return null;
}
/**
* 修改营地教练组
*
* @param dto
* @return
*/
@Override
public ApiResult<Void> edit(CampCoachingGroupDTO dto) {
return null;
}
/**
* 获取营地教练组详情
*
* @param param
* @return
*/
@Override
public ApiResult<CampCoachingGroupDTO> detail(IdParam param) {
return null;
}
/**
* 分页查询营地教练组
*
* @param param
* @return
*/
@Override
public ApiResult<Page<CampCoachingGroupDTO>> list(PageParam<CampCoachingGroupDTO> param) {
return null;
}
/**
* 分页查询营地教练组成员
* @param param
* @return
*/
@Override
public ApiResult<Page<CampCoachingGroupDTO>> studentList(PageParam<CampCoachingGroupDTO> param) {
return null;
}
/**
* 分页查询营地教练组学员
* @param param
* @return
*/
@Override
public ApiResult<Page<CampCoachingGroupDTO>> memberList(PageParam<CampCoachingGroupDTO> param) {
return null;
}
}

View File

@ -1,75 +1,75 @@
package com.wjbl.weightlosscamp.service.api.module.camp.service.impl; // package com.wjbl.weightlosscamp.service.api.module.camp.service.impl;
//
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; // import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; // import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; // import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.wjbl.weightlosscamp.api.base.core.ApiResult; // import com.wjbl.weightlosscamp.api.base.core.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam; // import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; // import com.wjbl.weightlosscamp.api.base.core.PageParam;
import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampInfoDTO; // import com.wjbl.weightlosscamp.service.api.module.camp.dto.CampInfoDTO;
import com.wjbl.weightlosscamp.service.api.module.camp.entity.CampInfo; // import com.wjbl.weightlosscamp.service.api.module.camp.entity.CampInfo;
import com.wjbl.weightlosscamp.service.api.module.camp.mapper.CampInfoMapper; // import com.wjbl.weightlosscamp.service.api.module.camp.mapper.CampInfoMapper;
import com.wjbl.weightlosscamp.service.api.module.camp.service.CampInfoService; // import com.wjbl.weightlosscamp.service.api.module.camp.service.CampInfoService;
import org.springframework.beans.BeanUtils; // import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service; // import org.springframework.stereotype.Service;
//
/** // /**
* 营地信息服务实现类 // * 营地信息服务实现类
*/ // */
@Service // @Service
public class CampInfoServiceImpl extends ServiceImpl<CampInfoMapper, CampInfo> implements CampInfoService { // public class CampInfoServiceImpl extends ServiceImpl<CampInfoMapper, CampInfo> implements CampInfoService {
//
@Override // @Override
public ApiResult<Void> add(CampInfoDTO dto) { // public ApiResult<Void> add(CampInfoDTO dto) {
CampInfo entity = new CampInfo(); // CampInfo entity = new CampInfo();
BeanUtils.copyProperties(dto, entity); // BeanUtils.copyProperties(dto, entity);
save(entity); // save(entity);
return ApiResult.success(); // return ApiResult.success();
} // }
//
@Override // @Override
public ApiResult<Void> edit(CampInfoDTO dto) { // public ApiResult<Void> edit(CampInfoDTO dto) {
CampInfo entity = new CampInfo(); // CampInfo entity = new CampInfo();
BeanUtils.copyProperties(dto, entity); // BeanUtils.copyProperties(dto, entity);
updateById(entity); // updateById(entity);
return ApiResult.success(); // return ApiResult.success();
} // }
//
@Override // @Override
public ApiResult<Void> delete(IdParam param) { // public ApiResult<Void> delete(IdParam param) {
removeById(param.getId()); // removeById(param.getId());
return ApiResult.success(); // return ApiResult.success();
} // }
//
@Override // @Override
public ApiResult<CampInfoDTO> detail(IdParam param) { // public ApiResult<CampInfoDTO> detail(IdParam param) {
CampInfo entity = getById(param.getId()); // CampInfo entity = getById(param.getId());
if (entity == null) { // if (entity == null) {
return ApiResult.failed("营地不存在"); // return ApiResult.failed("营地不存在");
} // }
CampInfoDTO dto = new CampInfoDTO(); // CampInfoDTO dto = new CampInfoDTO();
BeanUtils.copyProperties(entity, dto); // BeanUtils.copyProperties(entity, dto);
return ApiResult.success(dto); // return ApiResult.success(dto);
} // }
//
@Override // @Override
public ApiResult<Page<CampInfoDTO>> page(PageParam<CampInfoDTO> param) { // public ApiResult<Page<CampInfoDTO>> page(PageParam<CampInfoDTO> param) {
Page<CampInfo> page = new Page<>(param.getPage(), param.getPageSize()); // Page<CampInfo> page = new Page<>(param.getPage(), param.getPageSize());
LambdaQueryWrapper<CampInfo> wrapper = new LambdaQueryWrapper<>(); // LambdaQueryWrapper<CampInfo> wrapper = new LambdaQueryWrapper<>();
if (param.getData() != null) { // if (param.getData() != null) {
CampInfoDTO dto = param.getData(); // CampInfoDTO dto = param.getData();
wrapper.like(dto.getName() != null, CampInfo::getName, dto.getName()); // wrapper.like(dto.getName() != null, CampInfo::getName, dto.getName());
} // }
Page<CampInfo> entityPage = page(page, wrapper); // Page<CampInfo> entityPage = page(page, wrapper);
//
Page<CampInfoDTO> dtoPage = new Page<>(); // Page<CampInfoDTO> dtoPage = new Page<>();
BeanUtils.copyProperties(entityPage, dtoPage, "records"); // BeanUtils.copyProperties(entityPage, dtoPage, "records");
dtoPage.setRecords(entityPage.getRecords().stream().map(entity -> { // dtoPage.setRecords(entityPage.getRecords().stream().map(entity -> {
CampInfoDTO dto = new CampInfoDTO(); // CampInfoDTO dto = new CampInfoDTO();
BeanUtils.copyProperties(entity, dto); // BeanUtils.copyProperties(entity, dto);
return dto; // return dto;
}).toList()); // }).toList());
//
return ApiResult.success(dtoPage); // return ApiResult.success(dtoPage);
} // }
} // }

View File

@ -1,71 +0,0 @@
package com.wjbl.weightlosscamp.service.api.module.camp.service.impl;
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.camp.dto.CampProductDTO;
import com.wjbl.weightlosscamp.service.api.module.camp.service.CampProductService;
import org.springframework.stereotype.Service;
/**
* 营地产品服务实现类
*/
@Service
public class CampProductServiceImpl implements CampProductService {
/**
* 新增营地产品
*
* @param dto
* @return
*/
@Override
public ApiResult<Void> add(CampProductDTO dto) {
return null;
}
/**
* 修改营地产品
*
* @param dto
* @return
*/
@Override
public ApiResult<Void> edit(CampProductDTO dto) {
return null;
}
/**
* 获取营地产品详情
*
* @param param
* @return
*/
@Override
public ApiResult<CampProductDTO> detail(IdParam param) {
return null;
}
/**
* 分页查询营地产品
*
* @param param
* @return
*/
@Override
public ApiResult<Page<CampProductDTO>> list(PageParam<CampProductDTO> param) {
return null;
}
/**
* 产品切换状态启用禁用
*
* @param param
* @return
*/
@Override
public ApiResult<Void> switchStatus(IdParam param) {
return null;
}
}

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("/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; import org.springframework.web.bind.annotation.RestController;
/** /**
* 跟进记录控制器 * 跟进控制器
*/ */
@Tag(name = "跟进记录") @Tag(name = "跟进")
@RestController @RestController
@RequestMapping("/student/flow-up") @RequestMapping("/student/flow-up")
@RequiredArgsConstructor @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 = "预定信息") @Tag(name = "预定信息")
@RestController @RestController
@RequestMapping("student") @RequestMapping("/reservation")
@Slf4j @Slf4j
@Setter @Setter
public class ReservationController { public class ReservationController {
@ -56,14 +56,14 @@ public class ReservationController {
@Operation(summary = "生成付款") @Operation(summary = "生成付款")
@PostMapping("payment/gen") @PostMapping("/payment/gen")
public ApiResult<Void> addFlow(@Valid @RequestBody ReservationDTO dto) { public ApiResult<Void> addFlow(@Valid @RequestBody ReservationDTO dto) {
return reservationService.genPayment(dto); return reservationService.genPayment(dto);
} }
@Operation(summary = "付款回调") @Operation(summary = "付款回调")
@PostMapping("payment/callback") @PostMapping("/payment/callback")
public ApiResult<Page<ReservationDTO>> payCallback(@Valid @RequestBody PageParam<ReservationDTO> param) { public ApiResult<Page<ReservationDTO>> payCallback(@Valid @RequestBody PageParam<ReservationDTO> param) {
return reservationService.payCallback(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.ApiResult;
import com.wjbl.weightlosscamp.api.base.core.IdParam; import com.wjbl.weightlosscamp.api.base.core.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; 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.dto.StudentDTO;
import com.wjbl.weightlosscamp.service.api.module.student.service.StudentService; import com.wjbl.weightlosscamp.service.api.module.student.service.StudentService;
import com.wjbl.weightlosscamp.service.api.module.sys.dto.MemberDTO; import com.wjbl.weightlosscamp.service.api.module.sys.dto.MemberDTO;
import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.Operation;
import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.tags.Tag;
import jakarta.validation.Valid; import jakarta.validation.Valid;
import lombok.RequiredArgsConstructor;
import lombok.Setter; import lombok.Setter;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
@ -22,7 +20,7 @@ import org.springframework.web.bind.annotation.RestController;
/** /**
* 学员信息控制器 * 学员信息控制器
*/ */
@Tag(name = "学员信息") @Tag(name = "学员")
@RestController @RestController
@RequestMapping("student") @RequestMapping("student")
@Slf4j @Slf4j
@ -33,7 +31,7 @@ public class StudentController {
@Operation(summary = "成员登录") @Operation(summary = "成员登录")
@PostMapping("login") @PostMapping("login")
public ApiResult<Void> login(@Valid @RequestBody StudentDTO dto) { public ApiResult<Void> login(@Valid @RequestBody MemberDTO dto) {
return studentService.login(dto); return studentService.login(dto);
} }

View File

@ -20,7 +20,7 @@ import org.springframework.web.bind.annotation.RestController;
*/ */
@Tag(name = "钱包信息") @Tag(name = "钱包信息")
@RestController @RestController
@RequestMapping("student") @RequestMapping("/student-wallet")
@Slf4j @Slf4j
@Setter @Setter
public class WalletController { public class WalletController {
@ -43,14 +43,14 @@ public class WalletController {
@Operation(summary = "新增钱包流水") @Operation(summary = "新增钱包流水")
@PostMapping("flow/add") @PostMapping("/flow/add")
public ApiResult<Void> addFlow(@Valid @RequestBody WalletDTO dto) { public ApiResult<Void> addFlow(@Valid @RequestBody WalletDTO dto) {
return walletService.addFlow(dto); return walletService.addFlow(dto);
} }
@Operation(summary = "分页查询钱包流水") @Operation(summary = "分页查询钱包流水")
@PostMapping("flow/list") @PostMapping("/flow/list")
public ApiResult<Page<WalletDTO>> listFlow(@Valid @RequestBody PageParam<WalletDTO> param) { public ApiResult<Page<WalletDTO>> listFlow(@Valid @RequestBody PageParam<WalletDTO> param) {
return walletService.listFlow(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.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; 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.AccessPermitDTO;
import com.wjbl.weightlosscamp.service.api.module.student.dto.RealNameAuthDTO;
import jakarta.validation.Valid; import jakarta.validation.Valid;
public class AccessPermitService { public class AccessPermitService {
@ -45,4 +46,27 @@ public class AccessPermitService {
public ApiResult<Void> check(@Valid IdParam param) { public ApiResult<Void> check(@Valid IdParam param) {
return null; 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.IdParam;
import com.wjbl.weightlosscamp.api.base.core.PageParam; 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.student.dto.StudentDTO;
import com.wjbl.weightlosscamp.service.api.module.sys.dto.MemberDTO;
import jakarta.validation.Valid; import jakarta.validation.Valid;
public class StudentService { public class StudentService {
/**
* 学员新增
*
* @param dto 学员信息
* @return 操作结果
*/
public ApiResult<Void> add(@Valid StudentDTO dto) { public ApiResult<Void> add(@Valid StudentDTO dto) {
return null; return null;
} }
/**
* 学员编辑
*
* @param dto 学员信息
* @return 操作结果
*/
public ApiResult<Void> edit(@Valid StudentDTO dto) { public ApiResult<Void> edit(@Valid StudentDTO dto) {
return null; 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) { public ApiResult<Page<StudentDTO>> list(@Valid PageParam<StudentDTO> param) {
return null; return null;
} }
/**
* 切换学员状态
*
* @param param 学员ID参数
* @return 操作结果
*/
public ApiResult<Void> switchStatus(@Valid IdParam param) { public ApiResult<Void> switchStatus(@Valid IdParam param) {
return null; return null;
} }
/**
* 绑定企业微信
*
* @param param 学员ID参数
* @return 操作结果
*/
public ApiResult<Void> bindCorpWx(@Valid IdParam param) { public ApiResult<Void> bindCorpWx(@Valid IdParam param) {
return null; 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; return null;
} }
} }