diff --git a/src/main/java/com/gxwebsoft/booking/controller/CardController.java b/src/main/java/com/gxwebsoft/booking/controller/CardController.java new file mode 100644 index 0000000..a51a3aa --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/controller/CardController.java @@ -0,0 +1,115 @@ +package com.gxwebsoft.booking.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.booking.service.CardService; +import com.gxwebsoft.booking.entity.Card; +import com.gxwebsoft.booking.param.CardParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 会员卡控制器 + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +@Api(tags = "会员卡管理") +@RestController +@RequestMapping("/api/booking/card") +public class CardController extends BaseController { + @Resource + private CardService cardService; + + @ApiOperation("分页查询会员卡") + @GetMapping("/page") + public ApiResult> page(CardParam param) { + // 使用关联查询 + return success(cardService.pageRel(param)); + } + + @ApiOperation("查询全部会员卡") + @GetMapping() + public ApiResult> list(CardParam param) { + // 使用关联查询 + return success(cardService.listRel(param)); + } + + @PreAuthorize("hasAuthority('booking:card:list')") + @ApiOperation("根据id查询会员卡") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(cardService.getByIdRel(id)); + } + + @ApiOperation("添加会员卡") + @PostMapping() + public ApiResult save(@RequestBody Card card) { + // 记录当前登录用户id + // User loginUser = getLoginUser(); + // if (loginUser != null) { + // card.setUserId(loginUser.getUserId()); + // } + if (cardService.save(card)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改会员卡") + @PutMapping() + public ApiResult update(@RequestBody Card card) { + if (cardService.updateById(card)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除会员卡") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (cardService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加会员卡") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (cardService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改会员卡") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(cardService, "card_id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除会员卡") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (cardService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/booking/controller/CardPlanController.java b/src/main/java/com/gxwebsoft/booking/controller/CardPlanController.java new file mode 100644 index 0000000..c4d807b --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/controller/CardPlanController.java @@ -0,0 +1,115 @@ +package com.gxwebsoft.booking.controller; + +import com.gxwebsoft.common.core.web.BaseController; +import com.gxwebsoft.booking.service.CardPlanService; +import com.gxwebsoft.booking.entity.CardPlan; +import com.gxwebsoft.booking.param.CardPlanParam; +import com.gxwebsoft.common.core.web.ApiResult; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.BatchParam; +import com.gxwebsoft.common.core.annotation.OperationLog; +import com.gxwebsoft.common.system.entity.User; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; + +/** + * 会员卡类型控制器 + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +@Api(tags = "会员卡类型管理") +@RestController +@RequestMapping("/api/booking/card-plan") +public class CardPlanController extends BaseController { + @Resource + private CardPlanService cardPlanService; + + @ApiOperation("分页查询会员卡类型") + @GetMapping("/page") + public ApiResult> page(CardPlanParam param) { + // 使用关联查询 + return success(cardPlanService.pageRel(param)); + } + + @ApiOperation("查询全部会员卡类型") + @GetMapping() + public ApiResult> list(CardPlanParam param) { + // 使用关联查询 + return success(cardPlanService.listRel(param)); + } + + @PreAuthorize("hasAuthority('booking:cardPlan:list')") + @ApiOperation("根据id查询会员卡类型") + @GetMapping("/{id}") + public ApiResult get(@PathVariable("id") Integer id) { + // 使用关联查询 + return success(cardPlanService.getByIdRel(id)); + } + + @ApiOperation("添加会员卡类型") + @PostMapping() + public ApiResult save(@RequestBody CardPlan cardPlan) { + // 记录当前登录用户id + // User loginUser = getLoginUser(); + // if (loginUser != null) { + // cardPlan.setUserId(loginUser.getUserId()); + // } + if (cardPlanService.save(cardPlan)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("修改会员卡类型") + @PutMapping() + public ApiResult update(@RequestBody CardPlan cardPlan) { + if (cardPlanService.updateById(cardPlan)) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("删除会员卡类型") + @DeleteMapping("/{id}") + public ApiResult remove(@PathVariable("id") Integer id) { + if (cardPlanService.removeById(id)) { + return success("删除成功"); + } + return fail("删除失败"); + } + + @ApiOperation("批量添加会员卡类型") + @PostMapping("/batch") + public ApiResult saveBatch(@RequestBody List list) { + if (cardPlanService.saveBatch(list)) { + return success("添加成功"); + } + return fail("添加失败"); + } + + @ApiOperation("批量修改会员卡类型") + @PutMapping("/batch") + public ApiResult removeBatch(@RequestBody BatchParam batchParam) { + if (batchParam.update(cardPlanService, "card_plan_id")) { + return success("修改成功"); + } + return fail("修改失败"); + } + + @ApiOperation("批量删除会员卡类型") + @DeleteMapping("/batch") + public ApiResult removeBatch(@RequestBody List ids) { + if (cardPlanService.removeByIds(ids)) { + return success("删除成功"); + } + return fail("删除失败"); + } + +} diff --git a/src/main/java/com/gxwebsoft/booking/entity/Card.java b/src/main/java/com/gxwebsoft/booking/entity/Card.java new file mode 100644 index 0000000..da4353e --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/entity/Card.java @@ -0,0 +1,87 @@ +package com.gxwebsoft.booking.entity; + +import java.math.BigDecimal; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import java.io.Serializable; +import java.util.Date; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 会员卡 + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "Card对象", description = "会员卡") +@TableName("booking_card") +public class Card implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "ID") + @TableId(value = "card_id", type = IdType.AUTO) + private Integer cardId; + + @ApiModelProperty(value = "会员卡名称") + private String cardName; + + @ApiModelProperty(value = "会员卡标识") + private String cardCode; + + @ApiModelProperty(value = "会员卡图片") + private String image; + + @ApiModelProperty(value = "价格") + private BigDecimal price; + + @ApiModelProperty(value = "次数") + private Integer number; + + @ApiModelProperty(value = "月份") + private Integer month; + + @ApiModelProperty(value = "折扣") + private BigDecimal discount; + + @ApiModelProperty(value = "老师介绍") + private String content; + + @ApiModelProperty(value = "关联用户") + private Integer userId; + + @ApiModelProperty(value = "商户ID") + private Integer merchantId; + + @ApiModelProperty(value = "商户类型") + private String merchantType; + + @ApiModelProperty(value = "备注") + private String comments; + + @ApiModelProperty(value = "状态") + private Integer status; + + @ApiModelProperty(value = "排序号") + private Integer sortNumber; + + @ApiModelProperty(value = "租户id") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private Date createTime; + + @ApiModelProperty(value = "商户ID") + @TableField(exist = false) + private String merchantName; + +} diff --git a/src/main/java/com/gxwebsoft/booking/entity/CardPlan.java b/src/main/java/com/gxwebsoft/booking/entity/CardPlan.java new file mode 100644 index 0000000..0dc3144 --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/entity/CardPlan.java @@ -0,0 +1,54 @@ +package com.gxwebsoft.booking.entity; + +import com.baomidou.mybatisplus.annotation.TableName; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import java.time.LocalDateTime; +import java.io.Serializable; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 会员卡类型 + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@ApiModel(value = "CardPlan对象", description = "会员卡类型") +@TableName("booking_card_plan") +public class CardPlan implements Serializable { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "ID") + @TableId(value = "card_plan_id", type = IdType.AUTO) + private Integer cardPlanId; + + @ApiModelProperty(value = "会员卡名称") + private String name; + + @ApiModelProperty(value = "标识") + private String code; + + @ApiModelProperty(value = "备注") + private String comments; + + @ApiModelProperty(value = "状态") + private Integer status; + + @ApiModelProperty(value = "排序号") + private Integer sortNumber; + + @ApiModelProperty(value = "租户id") + private Integer tenantId; + + @ApiModelProperty(value = "创建时间") + private LocalDateTime createTime; + + @ApiModelProperty(value = "修改时间") + private LocalDateTime updateTime; + +} diff --git a/src/main/java/com/gxwebsoft/booking/mapper/CardMapper.java b/src/main/java/com/gxwebsoft/booking/mapper/CardMapper.java new file mode 100644 index 0000000..369bb51 --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/mapper/CardMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.booking.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.booking.entity.Card; +import com.gxwebsoft.booking.param.CardParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 会员卡Mapper + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +public interface CardMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") CardParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") CardParam param); + +} diff --git a/src/main/java/com/gxwebsoft/booking/mapper/CardPlanMapper.java b/src/main/java/com/gxwebsoft/booking/mapper/CardPlanMapper.java new file mode 100644 index 0000000..ba79b68 --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/mapper/CardPlanMapper.java @@ -0,0 +1,37 @@ +package com.gxwebsoft.booking.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.gxwebsoft.booking.entity.CardPlan; +import com.gxwebsoft.booking.param.CardPlanParam; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * 会员卡类型Mapper + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +public interface CardPlanMapper extends BaseMapper { + + /** + * 分页查询 + * + * @param page 分页对象 + * @param param 查询参数 + * @return List + */ + List selectPageRel(@Param("page") IPage page, + @Param("param") CardPlanParam param); + + /** + * 查询全部 + * + * @param param 查询参数 + * @return List + */ + List selectListRel(@Param("param") CardPlanParam param); + +} diff --git a/src/main/java/com/gxwebsoft/booking/mapper/xml/CardMapper.xml b/src/main/java/com/gxwebsoft/booking/mapper/xml/CardMapper.xml new file mode 100644 index 0000000..7567287 --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/mapper/xml/CardMapper.xml @@ -0,0 +1,79 @@ + + + + + + + SELECT a.*,b.merchant_name + FROM booking_card a + LEFT JOIN shop_merchant b ON a.merchant_id = b.merchant_id + + + AND a.card_id = #{param.cardId} + + + AND a.card_name LIKE CONCAT('%', #{param.cardName}, '%') + + + AND a.card_code = #{param.cardCode} + + + AND a.merchant_type = #{param.merchantType} + + + AND a.image LIKE CONCAT('%', #{param.image}, '%') + + + AND a.price = #{param.price} + + + AND a.number = #{param.number} + + + AND a.month = #{param.month} + + + AND a.discount = #{param.discount} + + + AND a.content LIKE CONCAT('%', #{param.content}, '%') + + + AND a.user_id = #{param.userId} + + + AND a.merchant_id = #{param.merchantId} + + + AND a.comments LIKE CONCAT('%', #{param.comments}, '%') + + + AND a.status = #{param.status} + + + AND a.sort_number = #{param.sortNumber} + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/booking/mapper/xml/CardPlanMapper.xml b/src/main/java/com/gxwebsoft/booking/mapper/xml/CardPlanMapper.xml new file mode 100644 index 0000000..4cf927b --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/mapper/xml/CardPlanMapper.xml @@ -0,0 +1,51 @@ + + + + + + + SELECT a.* + FROM booking_card_plan a + + + AND a.card_plan_id = #{param.cardPlanId} + + + AND a.name LIKE CONCAT('%', #{param.name}, '%') + + + AND a.code LIKE CONCAT('%', #{param.code}, '%') + + + AND a.comments LIKE CONCAT('%', #{param.comments}, '%') + + + AND a.status = #{param.status} + + + AND a.sort_number = #{param.sortNumber} + + + AND a.create_time >= #{param.createTimeStart} + + + AND a.create_time <= #{param.createTimeEnd} + + + AND (a.comments LIKE CONCAT('%', #{param.keywords}, '%') + ) + + + + + + + + + + + diff --git a/src/main/java/com/gxwebsoft/booking/param/CardParam.java b/src/main/java/com/gxwebsoft/booking/param/CardParam.java new file mode 100644 index 0000000..7fdde4a --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/param/CardParam.java @@ -0,0 +1,82 @@ +package com.gxwebsoft.booking.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 会员卡查询参数 + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "CardParam对象", description = "会员卡查询参数") +public class CardParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "ID") + @QueryField(type = QueryType.EQ) + private Integer cardId; + + @ApiModelProperty(value = "会员卡名称") + private String cardName; + + @ApiModelProperty(value = "会员卡标识") + @QueryField(type = QueryType.EQ) + private String cardCode; + + @ApiModelProperty(value = "会员卡图片") + private String image; + + @ApiModelProperty(value = "价格") + @QueryField(type = QueryType.EQ) + private BigDecimal price; + + @ApiModelProperty(value = "次数") + @QueryField(type = QueryType.EQ) + private Integer number; + + @ApiModelProperty(value = "月份") + @QueryField(type = QueryType.EQ) + private Integer month; + + @ApiModelProperty(value = "折扣") + @QueryField(type = QueryType.EQ) + private BigDecimal discount; + + @ApiModelProperty(value = "老师介绍") + private String content; + + @ApiModelProperty(value = "关联用户") + @QueryField(type = QueryType.EQ) + private Integer userId; + + @ApiModelProperty(value = "商户ID") + @QueryField(type = QueryType.EQ) + private Integer merchantId; + + @ApiModelProperty(value = "商户类型") + @QueryField(type = QueryType.EQ) + private String merchantType; + + @ApiModelProperty(value = "备注") + private String comments; + + @ApiModelProperty(value = "状态") + @QueryField(type = QueryType.EQ) + private Integer status; + + @ApiModelProperty(value = "排序号") + @QueryField(type = QueryType.EQ) + private Integer sortNumber; + +} diff --git a/src/main/java/com/gxwebsoft/booking/param/CardPlanParam.java b/src/main/java/com/gxwebsoft/booking/param/CardPlanParam.java new file mode 100644 index 0000000..630e5bb --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/param/CardPlanParam.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.booking.param; + +import java.math.BigDecimal; +import com.gxwebsoft.common.core.annotation.QueryField; +import com.gxwebsoft.common.core.annotation.QueryType; +import com.gxwebsoft.common.core.web.BaseParam; +import com.fasterxml.jackson.annotation.JsonInclude; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + * 会员卡类型查询参数 + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@JsonInclude(JsonInclude.Include.NON_NULL) +@ApiModel(value = "CardPlanParam对象", description = "会员卡类型查询参数") +public class CardPlanParam extends BaseParam { + private static final long serialVersionUID = 1L; + + @ApiModelProperty(value = "ID") + @QueryField(type = QueryType.EQ) + private Integer cardPlanId; + + @ApiModelProperty(value = "会员卡名称") + private String name; + + @ApiModelProperty(value = "标识") + private String code; + + @ApiModelProperty(value = "备注") + private String comments; + + @ApiModelProperty(value = "状态") + @QueryField(type = QueryType.EQ) + private Integer status; + + @ApiModelProperty(value = "排序号") + @QueryField(type = QueryType.EQ) + private Integer sortNumber; + +} diff --git a/src/main/java/com/gxwebsoft/booking/service/CardPlanService.java b/src/main/java/com/gxwebsoft/booking/service/CardPlanService.java new file mode 100644 index 0000000..331985b --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/service/CardPlanService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.booking.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.booking.entity.CardPlan; +import com.gxwebsoft.booking.param.CardPlanParam; + +import java.util.List; + +/** + * 会员卡类型Service + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +public interface CardPlanService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(CardPlanParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(CardPlanParam param); + + /** + * 根据id查询 + * + * @param cardPlanId ID + * @return CardPlan + */ + CardPlan getByIdRel(Integer cardPlanId); + +} diff --git a/src/main/java/com/gxwebsoft/booking/service/CardService.java b/src/main/java/com/gxwebsoft/booking/service/CardService.java new file mode 100644 index 0000000..753b5ea --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/service/CardService.java @@ -0,0 +1,42 @@ +package com.gxwebsoft.booking.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.gxwebsoft.common.core.web.PageResult; +import com.gxwebsoft.booking.entity.Card; +import com.gxwebsoft.booking.param.CardParam; + +import java.util.List; + +/** + * 会员卡Service + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +public interface CardService extends IService { + + /** + * 分页关联查询 + * + * @param param 查询参数 + * @return PageResult + */ + PageResult pageRel(CardParam param); + + /** + * 关联查询全部 + * + * @param param 查询参数 + * @return List + */ + List listRel(CardParam param); + + /** + * 根据id查询 + * + * @param cardId ID + * @return Card + */ + Card getByIdRel(Integer cardId); + +} diff --git a/src/main/java/com/gxwebsoft/booking/service/impl/CardPlanServiceImpl.java b/src/main/java/com/gxwebsoft/booking/service/impl/CardPlanServiceImpl.java new file mode 100644 index 0000000..dfecf43 --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/service/impl/CardPlanServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.booking.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.booking.mapper.CardPlanMapper; +import com.gxwebsoft.booking.service.CardPlanService; +import com.gxwebsoft.booking.entity.CardPlan; +import com.gxwebsoft.booking.param.CardPlanParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 会员卡类型Service实现 + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +@Service +public class CardPlanServiceImpl extends ServiceImpl implements CardPlanService { + + @Override + public PageResult pageRel(CardPlanParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("sort_number asc, create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(CardPlanParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("sort_number asc, create_time desc"); + return page.sortRecords(list); + } + + @Override + public CardPlan getByIdRel(Integer cardPlanId) { + CardPlanParam param = new CardPlanParam(); + param.setCardPlanId(cardPlanId); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/main/java/com/gxwebsoft/booking/service/impl/CardServiceImpl.java b/src/main/java/com/gxwebsoft/booking/service/impl/CardServiceImpl.java new file mode 100644 index 0000000..d6451e1 --- /dev/null +++ b/src/main/java/com/gxwebsoft/booking/service/impl/CardServiceImpl.java @@ -0,0 +1,47 @@ +package com.gxwebsoft.booking.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.gxwebsoft.booking.mapper.CardMapper; +import com.gxwebsoft.booking.service.CardService; +import com.gxwebsoft.booking.entity.Card; +import com.gxwebsoft.booking.param.CardParam; +import com.gxwebsoft.common.core.web.PageParam; +import com.gxwebsoft.common.core.web.PageResult; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 会员卡Service实现 + * + * @author 科技小王子 + * @since 2024-04-24 18:39:18 + */ +@Service +public class CardServiceImpl extends ServiceImpl implements CardService { + + @Override + public PageResult pageRel(CardParam param) { + PageParam page = new PageParam<>(param); + page.setDefaultOrder("sort_number asc, create_time desc"); + List list = baseMapper.selectPageRel(page, param); + return new PageResult<>(list, page.getTotal()); + } + + @Override + public List listRel(CardParam param) { + List list = baseMapper.selectListRel(param); + // 排序 + PageParam page = new PageParam<>(); + page.setDefaultOrder("sort_number asc, create_time desc"); + return page.sortRecords(list); + } + + @Override + public Card getByIdRel(Integer cardId) { + CardParam param = new CardParam(); + param.setCardId(cardId); + return param.getOne(baseMapper.selectListRel(param)); + } + +} diff --git a/src/test/java/com/gxwebsoft/generator/BookingGenerator.java b/src/test/java/com/gxwebsoft/generator/BookingGenerator.java index eb4230a..9b9e752 100644 --- a/src/test/java/com/gxwebsoft/generator/BookingGenerator.java +++ b/src/test/java/com/gxwebsoft/generator/BookingGenerator.java @@ -45,9 +45,11 @@ public class BookingGenerator { private static final String MODULE_NAME = "booking"; // 需要生成的表 private static final String[] TABLE_NAMES = new String[]{ - "booking_lesson", - "booking_teacher", - "booking_category" +// "booking_lesson", +// "booking_teacher", +// "booking_category", +// "booking_card", +// "booking_card_plan" }; // 需要去除的表前缀 private static final String[] TABLE_PREFIX = new String[]{