From d9361b75e7072b29535c571a76e0b9e7860d6805 Mon Sep 17 00:00:00 2001
From: KKSU <15274802129@163.com>
Date: Mon, 06 Jan 2025 14:38:53 +0800
Subject: [PATCH] feat(mall): 后台活动列表添加分页和搜索功能 - 在 ActivityServiceImpl 中实现 getAdminListInPage 方法,支持分页和搜索 - 在 AdminActivityController 中添加 list 接口,返回分页数据 - 在 IActivityService 中定义 getAdminListInPage 接口 - 更新前端模板,根据活动状态控制按钮显示
---
src/main/java/cc/mrbird/febs/mall/service/impl/ActivityServiceImpl.java | 21 +++++++++++++++++++++
src/main/resources/templates/febs/views/modules/activity/list.html | 8 ++++----
src/main/java/cc/mrbird/febs/mall/controller/AdminActivityController.java | 12 ++++++++++++
src/main/java/cc/mrbird/febs/mall/service/IActivityService.java | 5 +++++
4 files changed, 42 insertions(+), 4 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/AdminActivityController.java b/src/main/java/cc/mrbird/febs/mall/controller/AdminActivityController.java
index e6a5cc0..e6adbd2 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/AdminActivityController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/AdminActivityController.java
@@ -1,12 +1,18 @@
package cc.mrbird.febs.mall.controller;
import cc.mrbird.febs.common.controller.BaseController;
+import cc.mrbird.febs.common.entity.FebsResponse;
+import cc.mrbird.febs.common.entity.QueryRequest;
+import cc.mrbird.febs.mall.entity.MallActivity;
import cc.mrbird.febs.mall.service.IActivityService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+
+import java.util.Map;
@Slf4j
@Validated
@@ -17,4 +23,10 @@
private final IActivityService iActivityService;
+
+ @GetMapping("list")
+ public FebsResponse getAdminListInPage(MallActivity mallActivity, QueryRequest request) {
+ Map<String, Object> data = getDataTable(iActivityService.getAdminListInPage(mallActivity, request));
+ return new FebsResponse().success().data(data);
+ }
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IActivityService.java b/src/main/java/cc/mrbird/febs/mall/service/IActivityService.java
index a5eb2af..64cc497 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IActivityService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IActivityService.java
@@ -1,7 +1,12 @@
package cc.mrbird.febs.mall.service;
+import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.entity.MallActivity;
+import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
public interface IActivityService extends IService<MallActivity> {
+
+ IPage<MallActivity> getAdminListInPage(MallActivity mallActivity, QueryRequest request);
+
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ActivityServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ActivityServiceImpl.java
index ec7ad14..5e5db7e 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ActivityServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ActivityServiceImpl.java
@@ -1,8 +1,14 @@
package cc.mrbird.febs.mall.service.impl;
+import cc.mrbird.febs.common.entity.QueryRequest;
import cc.mrbird.febs.mall.entity.MallActivity;
import cc.mrbird.febs.mall.mapper.MallActivityMapper;
import cc.mrbird.febs.mall.service.IActivityService;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
@@ -14,4 +20,19 @@
@RequiredArgsConstructor
@Transactional
public class ActivityServiceImpl extends ServiceImpl<MallActivityMapper, MallActivity> implements IActivityService {
+ @Override
+ public IPage<MallActivity> getAdminListInPage(MallActivity mallActivity, QueryRequest request) {
+ Page<MallActivity> page = new Page<>(request.getPageNum(), request.getPageSize());
+ LambdaQueryWrapper<MallActivity> mallActivityLambdaQueryWrapper = new LambdaQueryWrapper<>();
+ String name = mallActivity.getName();
+ if(StrUtil.isNotEmpty(name)){
+ mallActivityLambdaQueryWrapper.like(MallActivity::getName,name);
+ }
+ Integer state = mallActivity.getState();
+ if(ObjectUtil.isNotEmpty(state)){
+ mallActivityLambdaQueryWrapper.eq(MallActivity::getState,state);
+ }
+ Page<MallActivity> mallActivityPage = this.baseMapper.selectPage(page, mallActivityLambdaQueryWrapper);
+ return mallActivityPage;
+ }
}
diff --git a/src/main/resources/templates/febs/views/modules/activity/list.html b/src/main/resources/templates/febs/views/modules/activity/list.html
index 5e42bc8..5cff36a 100644
--- a/src/main/resources/templates/febs/views/modules/activity/list.html
+++ b/src/main/resources/templates/febs/views/modules/activity/list.html
@@ -1,4 +1,4 @@
-<div class="layui-fluid layui-anim febs-anim" id="febs-activity" lay-title="首页活动">
+<div class="layui-fluid layui-anim febs-anim" id="febs-activity" lay-title="活动列表">
<div class="layui-row febs-container">
<div class="layui-col-md12">
<div class="layui-card">
@@ -211,12 +211,12 @@
// 遍历每一行数据
res.data.forEach(function(item, index) {
// 根据状态值控制按钮显示
- if (item.state === 2) {
+ if (item.state === 0) {
// 如果状态为1,显示
- $('#commissionOption' + index).show();
+ $('#activityOption' + index).show();
} else {
// 否则,隐藏
- $('#commissionOption' + index).hide();
+ $('#activityOption' + index).hide();
}
});
}
--
Gitblit v1.9.1