package com.mzl.flower.web.member; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.mzl.flower.base.BaseController; import com.mzl.flower.base.R; import com.mzl.flower.base.ReturnDataDTO; import com.mzl.flower.config.security.SecurityUtils; import com.mzl.flower.dto.request.menber.MemberDTO; import com.mzl.flower.dto.request.menber.MemberQueryDTO; import com.mzl.flower.entity.menber.Member; import com.mzl.flower.service.menber.MemberService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.RequiredArgsConstructor; import org.springframework.beans.BeanUtils; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import static com.baomidou.mybatisplus.core.toolkit.ObjectUtils.isNotNull; /** * @author fanghaowei * @version version2.0 * @className MemberController * @date 2024/8/26 * @description 会员管理功能开发 */ @Api(value = "会员管理", tags = "会员管理") @RestController @RequestMapping("/api") @RequiredArgsConstructor public class MemberController extends BaseController { private final MemberService memberService; @PostMapping("/member/list") @ApiOperation(value = "会员列表", httpMethod = "POST") public ResponseEntity getMemberList(Page page, MemberQueryDTO dto) { QueryWrapper queryWrapper = new QueryWrapper(); queryWrapper.lambda().eq(isNotNull(dto.getLevelName()), Member::getLevelName, dto.getLevelName()); page = (Page) memberService.page(page, queryWrapper); return returnData(R.SUCCESS.getCode(), page); } @DeleteMapping(value = "/member/delete/{id}") @ApiOperation(value = "删除会员 ", httpMethod = "DELETE", notes = "ID") public ResponseEntity delete(@PathVariable("id") Long id) { memberService.deleteMember(String.valueOf(id)); return returnData(R.SUCCESS.getCode(), null); } @PostMapping(value = "/member/save") @ApiOperation(value = "保存会员", httpMethod = "POST") public ResponseEntity insert(@RequestBody MemberDTO memberDTO) { Member member = new Member(); BeanUtils.copyProperties(memberDTO, member); member.create(SecurityUtils.getUserId()); memberService.saveMember(member); return returnData(R.SUCCESS.getCode(), null); } @PutMapping(value = "/member/update") @ApiOperation(value = "更新会员", httpMethod = "PUT") public ResponseEntity update(@RequestBody MemberDTO memberDTO) { memberService.updateMember(memberDTO); return returnData(R.SUCCESS.getCode(), null); } }