diff --git a/src/main/java/com/peanut/modules/common/controller/OfflineActivityController.java b/src/main/java/com/peanut/modules/common/controller/OfflineActivityController.java new file mode 100644 index 00000000..54680334 --- /dev/null +++ b/src/main/java/com/peanut/modules/common/controller/OfflineActivityController.java @@ -0,0 +1,34 @@ +package com.peanut.modules.common.controller; + +import com.peanut.common.utils.R; +import com.peanut.modules.common.service.OfflineActivityService; +import com.peanut.modules.common.service.OfflineActivityToUserService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + +/** + * 线下活动 + */ +@Slf4j +@RestController("commonOfflineActivity") +@RequestMapping("common/offlineActivity") +public class OfflineActivityController { + + @Autowired + private OfflineActivityService offlineActivityService; + @Autowired + private OfflineActivityToUserService toUserService; + + + @RequestMapping("/getOfflineActivityInfo") + public R getOfflineActivityInfo(@RequestBody Map params) { + return R.ok().put("result", offlineActivityService.getById(params.get("id").toString())); + } + + +} diff --git a/src/main/java/com/peanut/modules/common/dao/OfflineActivityDao.java b/src/main/java/com/peanut/modules/common/dao/OfflineActivityDao.java new file mode 100644 index 00000000..e92d23ce --- /dev/null +++ b/src/main/java/com/peanut/modules/common/dao/OfflineActivityDao.java @@ -0,0 +1,9 @@ +package com.peanut.modules.common.dao; + +import com.github.yulichang.base.MPJBaseMapper; +import com.peanut.modules.common.entity.OfflineActivity; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface OfflineActivityDao extends MPJBaseMapper { +} diff --git a/src/main/java/com/peanut/modules/common/dao/OfflineActivityToUserDao.java b/src/main/java/com/peanut/modules/common/dao/OfflineActivityToUserDao.java new file mode 100644 index 00000000..6988d0bc --- /dev/null +++ b/src/main/java/com/peanut/modules/common/dao/OfflineActivityToUserDao.java @@ -0,0 +1,9 @@ +package com.peanut.modules.common.dao; + +import com.github.yulichang.base.MPJBaseMapper; +import com.peanut.modules.common.entity.OfflineActivityToUser; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface OfflineActivityToUserDao extends MPJBaseMapper { +} diff --git a/src/main/java/com/peanut/modules/common/entity/OfflineActivity.java b/src/main/java/com/peanut/modules/common/entity/OfflineActivity.java new file mode 100644 index 00000000..ef01c7cb --- /dev/null +++ b/src/main/java/com/peanut/modules/common/entity/OfflineActivity.java @@ -0,0 +1,42 @@ +package com.peanut.modules.common.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("offline_activity") +public class OfflineActivity { + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + + private String title; + + private String image; + + private String description; + + private String price; + + //vip价格 + private String vipPrice; + + //简易vip价格 + private String simpleVipPrice; + + //积分抵扣0否 1是 + private String jfDeduction; + + //状态0正常1关闭 + private String status; + + private Date createTime; + + @TableLogic + private Integer delFlag; +} diff --git a/src/main/java/com/peanut/modules/common/entity/OfflineActivityToUser.java b/src/main/java/com/peanut/modules/common/entity/OfflineActivityToUser.java new file mode 100644 index 00000000..de1b1b83 --- /dev/null +++ b/src/main/java/com/peanut/modules/common/entity/OfflineActivityToUser.java @@ -0,0 +1,28 @@ +package com.peanut.modules.common.entity; + +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableLogic; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("offline_activity_to_user") +public class OfflineActivityToUser { + private static final long serialVersionUID = 1L; + + @TableId + private Integer id; + + private Integer activityId; + + private Integer userId; + + private Integer orderId; + + private Date createTime; + + @TableLogic + private Integer delFlag; +} diff --git a/src/main/java/com/peanut/modules/common/service/OfflineActivityService.java b/src/main/java/com/peanut/modules/common/service/OfflineActivityService.java new file mode 100644 index 00000000..86f4041f --- /dev/null +++ b/src/main/java/com/peanut/modules/common/service/OfflineActivityService.java @@ -0,0 +1,7 @@ +package com.peanut.modules.common.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.peanut.modules.common.entity.OfflineActivity; + +public interface OfflineActivityService extends IService { +} diff --git a/src/main/java/com/peanut/modules/common/service/OfflineActivityToUserService.java b/src/main/java/com/peanut/modules/common/service/OfflineActivityToUserService.java new file mode 100644 index 00000000..01317eaa --- /dev/null +++ b/src/main/java/com/peanut/modules/common/service/OfflineActivityToUserService.java @@ -0,0 +1,7 @@ +package com.peanut.modules.common.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.peanut.modules.common.entity.OfflineActivityToUser; + +public interface OfflineActivityToUserService extends IService { +} diff --git a/src/main/java/com/peanut/modules/common/service/impl/OfflineActivityServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/OfflineActivityServiceImpl.java new file mode 100644 index 00000000..a44d8607 --- /dev/null +++ b/src/main/java/com/peanut/modules/common/service/impl/OfflineActivityServiceImpl.java @@ -0,0 +1,13 @@ +package com.peanut.modules.common.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.peanut.modules.common.dao.OfflineActivityDao; +import com.peanut.modules.common.entity.OfflineActivity; +import com.peanut.modules.common.service.OfflineActivityService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Slf4j +@Service("commonOfflineActivityService") +public class OfflineActivityServiceImpl extends ServiceImpl implements OfflineActivityService { +} diff --git a/src/main/java/com/peanut/modules/common/service/impl/OfflineActivityToUserServiceImpl.java b/src/main/java/com/peanut/modules/common/service/impl/OfflineActivityToUserServiceImpl.java new file mode 100644 index 00000000..3be2eb33 --- /dev/null +++ b/src/main/java/com/peanut/modules/common/service/impl/OfflineActivityToUserServiceImpl.java @@ -0,0 +1,13 @@ +package com.peanut.modules.common.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.peanut.modules.common.dao.OfflineActivityToUserDao; +import com.peanut.modules.common.entity.OfflineActivityToUser; +import com.peanut.modules.common.service.OfflineActivityToUserService; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Slf4j +@Service("commonOfflineActivityToUserService") +public class OfflineActivityToUserServiceImpl extends ServiceImpl implements OfflineActivityToUserService { +} diff --git a/src/main/java/com/peanut/modules/master/controller/OfflineActivityController.java b/src/main/java/com/peanut/modules/master/controller/OfflineActivityController.java new file mode 100644 index 00000000..f3253ec4 --- /dev/null +++ b/src/main/java/com/peanut/modules/master/controller/OfflineActivityController.java @@ -0,0 +1,101 @@ +package com.peanut.modules.master.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.peanut.common.utils.R; +import com.peanut.modules.common.entity.MyUserEntity; +import com.peanut.modules.common.entity.OfflineActivity; +import com.peanut.modules.common.entity.OfflineActivityToUser; +import com.peanut.modules.common.service.OfflineActivityService; +import com.peanut.modules.common.service.OfflineActivityToUserService; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.Map; + +/** + * 线下活动 + */ +@Slf4j +@RestController("masterOfflineActivity") +@RequestMapping("master/offlineActivity") +public class OfflineActivityController { + + @Autowired + private OfflineActivityService offlineActivityService; + @Autowired + private OfflineActivityToUserService toUserService; + + @RequestMapping("/getOfflineActivityListByPage") + public R getOfflineActivityListByPage(@RequestBody Map params) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper(); + if (StringUtils.isNotEmpty(params.get("title").toString())) { + wrapper.like(OfflineActivity::getTitle,params.get("title")); + } + wrapper.orderByDesc(OfflineActivity::getCreateTime); + Page page = offlineActivityService.page(new Page<>( + Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())), wrapper); + return R.ok().put("result", page); + } + + @RequestMapping("/getOfflineActivityUser") + public R getOfflineActivityUser(@RequestBody Map params) { + MPJLambdaWrapper wrapper = new MPJLambdaWrapper(); + wrapper.leftJoin(OfflineActivity.class,OfflineActivity::getId,OfflineActivityToUser::getActivityId); + wrapper.leftJoin(MyUserEntity.class,MyUserEntity::getId,OfflineActivityToUser::getUserId); + wrapper.select(OfflineActivity::getTitle); + wrapper.select(MyUserEntity::getName,MyUserEntity::getNickname,MyUserEntity::getTel,MyUserEntity::getEmail); + if (StringUtils.isNotEmpty(params.get("ActivityTitle").toString())) { + wrapper.like(OfflineActivity::getTitle,params.get("ActivityTitle")); + } + if (StringUtils.isNotBlank(params.get("userInfo").toString())){ + wrapper.and(t->t.like(MyUserEntity::getName,params.get("userInfo")).or().like(MyUserEntity::getNickname,params.get("userInfo")) + .or().like(MyUserEntity::getTel,params.get("userInfo")).or().like(MyUserEntity::getEmail,params.get("userInfo"))); + } + wrapper.orderByDesc(OfflineActivity::getCreateTime); + Page> page = toUserService.pageMaps(new Page<>( + Long.parseLong(params.get("current").toString()), Long.parseLong(params.get("limit").toString())), wrapper); + return R.ok().put("result", page); + } + + @RequestMapping("/saveOfflineActivity") + public R saveOfflineActivity(@RequestBody OfflineActivity offlineActivity) { + offlineActivityService.save(offlineActivity); + return R.ok(); + } + + @RequestMapping("/getOfflineActivityInfo") + public R getOfflineActivityInfo(@RequestBody Map params) { + return R.ok().put("result", offlineActivityService.getById(params.get("id").toString())); + } + + @RequestMapping("/updateOfflineActivity") + public R updateOfflineActivity(@RequestBody OfflineActivity offlineActivity) { + int count = toUserService.count(new LambdaQueryWrapper() + .eq(OfflineActivityToUser::getActivityId,offlineActivity.getId())); + if (count > 0) { + return R.error("已有人报名禁止修改"); + } + offlineActivityService.updateById(offlineActivity); + return R.ok(); + } + + @RequestMapping("/delOfflineActivity") + public R delOfflineActivity(@RequestBody Map params) { + int count = toUserService.count(new LambdaQueryWrapper() + .eq(OfflineActivityToUser::getActivityId,params.get("id").toString())); + if (count > 0) { + return R.error("已有人报名禁止删除"); + } + offlineActivityService.removeById(params.get("id").toString()); + return R.ok(); + } + + + +}