线下活动

This commit is contained in:
wuchunlei
2024-11-26 15:13:57 +08:00
parent a0c42ecea0
commit 941659b28f
10 changed files with 263 additions and 0 deletions

View File

@@ -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<String,Object> params) {
LambdaQueryWrapper<OfflineActivity> wrapper = new LambdaQueryWrapper();
if (StringUtils.isNotEmpty(params.get("title").toString())) {
wrapper.like(OfflineActivity::getTitle,params.get("title"));
}
wrapper.orderByDesc(OfflineActivity::getCreateTime);
Page<OfflineActivity> 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<String,Object> params) {
MPJLambdaWrapper<OfflineActivityToUser> 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<Map<String,Object>> 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<String,Object> 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<OfflineActivityToUser>()
.eq(OfflineActivityToUser::getActivityId,offlineActivity.getId()));
if (count > 0) {
return R.error("已有人报名禁止修改");
}
offlineActivityService.updateById(offlineActivity);
return R.ok();
}
@RequestMapping("/delOfflineActivity")
public R delOfflineActivity(@RequestBody Map<String,Object> params) {
int count = toUserService.count(new LambdaQueryWrapper<OfflineActivityToUser>()
.eq(OfflineActivityToUser::getActivityId,params.get("id").toString()));
if (count > 0) {
return R.error("已有人报名禁止删除");
}
offlineActivityService.removeById(params.get("id").toString());
return R.ok();
}
}