From fd6390777f20047a270f6aa60327d536ff7405a2 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Fri, 23 May 2025 17:31:20 +0800
Subject: [PATCH] refactor(mall): 重构幸福团长列表接口
---
src/main/resources/mapper/modules/MallTeamLeaderMapper.xml | 22 +++++++++++
src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java | 40 +++-----------------
src/main/java/cc/mrbird/febs/mall/controller/teamLeader/ApiMallTeamLeaderController.java | 4 +-
src/main/java/cc/mrbird/febs/mall/service/IApiMallTeamLeaderService.java | 2
src/main/java/cc/mrbird/febs/mall/vo/ApiHappyLeaderInfoVo.java | 1
src/main/java/cc/mrbird/febs/mall/dto/ApiHappyLeaderInfoDto.java | 23 +++++++++++
src/main/java/cc/mrbird/febs/mall/mapper/MallTeamLeaderMapper.java | 4 ++
7 files changed, 58 insertions(+), 38 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/teamLeader/ApiMallTeamLeaderController.java b/src/main/java/cc/mrbird/febs/mall/controller/teamLeader/ApiMallTeamLeaderController.java
index cd1c9cd..75daadd 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/teamLeader/ApiMallTeamLeaderController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/teamLeader/ApiMallTeamLeaderController.java
@@ -38,8 +38,8 @@
@ApiResponse(code = 200, message = "success", response = ApiHappyLeaderInfoVo.class)
})
@PostMapping(value = "/happyLeaderList")
- public FebsResponse happyLeaderList() {
- return iApiMallTeamLeaderService.happyLeaderList();
+ public FebsResponse happyLeaderList(@RequestBody @Validated ApiHappyLeaderInfoDto dto) {
+ return iApiMallTeamLeaderService.happyLeaderList(dto);
}
@ApiOperation(value = "自提点核销", notes = "自提点核销")
diff --git a/src/main/java/cc/mrbird/febs/mall/dto/ApiHappyLeaderInfoDto.java b/src/main/java/cc/mrbird/febs/mall/dto/ApiHappyLeaderInfoDto.java
new file mode 100644
index 0000000..63d5f2a
--- /dev/null
+++ b/src/main/java/cc/mrbird/febs/mall/dto/ApiHappyLeaderInfoDto.java
@@ -0,0 +1,23 @@
+package cc.mrbird.febs.mall.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+
+@Data
+@ApiModel(value = "ApiHappyLeaderInfoDto", description = "参数接收类")
+public class ApiHappyLeaderInfoDto {
+
+ @NotNull(message = "页码不能为空")
+ @ApiModelProperty(value = "页码", example = "1")
+ private Integer pageNow;
+
+ @NotNull(message = "每页数量不能为空")
+ @ApiModelProperty(value = "每页数量", example = "10")
+ private Integer pageSize;
+
+ @ApiModelProperty(value = "查询名称", example = "123")
+ private String query;
+}
diff --git a/src/main/java/cc/mrbird/febs/mall/mapper/MallTeamLeaderMapper.java b/src/main/java/cc/mrbird/febs/mall/mapper/MallTeamLeaderMapper.java
index 92902b4..7c5a134 100644
--- a/src/main/java/cc/mrbird/febs/mall/mapper/MallTeamLeaderMapper.java
+++ b/src/main/java/cc/mrbird/febs/mall/mapper/MallTeamLeaderMapper.java
@@ -1,11 +1,13 @@
package cc.mrbird.febs.mall.mapper;
+import cc.mrbird.febs.mall.dto.ApiHappyLeaderInfoDto;
import cc.mrbird.febs.mall.dto.ApiLeaderListDto;
import cc.mrbird.febs.mall.dto.ApiLeaderOrderListDto;
import cc.mrbird.febs.mall.entity.MallLeaderStock;
import cc.mrbird.febs.mall.entity.MallOrderInfo;
import cc.mrbird.febs.mall.entity.MallTeamLeader;
import cc.mrbird.febs.mall.vo.AdminMallTeamLeaderVo;
+import cc.mrbird.febs.mall.vo.ApiHappyLeaderInfoVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
@@ -38,4 +40,6 @@
List<MallTeamLeader> getAllMallTeamLeaderList();
IPage<MallOrderInfo> selectNewApiLeaderOrderListInPage(IPage<MallOrderInfo> page, @Param("record")ApiLeaderOrderListDto apiLeaderOrderListDto);
+
+ Page<ApiHappyLeaderInfoVo> selectApiLeaderInfoInPage(Page<ApiHappyLeaderInfoVo> page, @Param("record")ApiHappyLeaderInfoDto dto);
}
diff --git a/src/main/java/cc/mrbird/febs/mall/service/IApiMallTeamLeaderService.java b/src/main/java/cc/mrbird/febs/mall/service/IApiMallTeamLeaderService.java
index 2a264c7..96f1684 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/IApiMallTeamLeaderService.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/IApiMallTeamLeaderService.java
@@ -40,7 +40,7 @@
FebsResponse noLoginLeaderTitle(ApiLeaderTitleDto apiLeaderTitleDto);
- FebsResponse happyLeaderList();
+ FebsResponse happyLeaderList(ApiHappyLeaderInfoDto dto);
FebsResponse checkOrder(ApiHappyOrderLeaderDto dto);
diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
index 13e72cc..773a97d 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallTeamLeaderServiceImpl.java
@@ -661,41 +661,13 @@
}
@Override
- public FebsResponse happyLeaderList() {
- ArrayList<ApiHappyLeaderInfoVo> apiHappyLeaderInfoVos = new ArrayList<>();
+ public FebsResponse happyLeaderList(ApiHappyLeaderInfoDto dto) {
- List<MallTeamLeader> mallTeamLeaders = this.baseMapper.selectList(
- new LambdaQueryWrapper<MallTeamLeader>()
- .select(
- MallTeamLeader::getId,
- MallTeamLeader::getName,
- MallTeamLeader::getPhone,
- MallTeamLeader::getUniqueCode,
- MallTeamLeader::getAddressPic,
- MallTeamLeader::getAddressArea,
- MallTeamLeader::getDetailAddress,
- MallTeamLeader::getLongitude,
- MallTeamLeader::getLatitude)
- .eq(MallTeamLeader::getState, 1)
- .eq(MallTeamLeader::getOnlineState,1)
- );
- if(CollUtil.isNotEmpty(mallTeamLeaders)){
- for (MallTeamLeader mallTeamLeader : mallTeamLeaders){
- ApiHappyLeaderInfoVo apiHappyLeaderInfoVo = new ApiHappyLeaderInfoVo();
- apiHappyLeaderInfoVo.setId(mallTeamLeader.getId());
- apiHappyLeaderInfoVo.setName(mallTeamLeader.getName());
- apiHappyLeaderInfoVo.setPhone(mallTeamLeader.getPhone());
- apiHappyLeaderInfoVo.setTakeUniqueCode(mallTeamLeader.getUniqueCode());
- apiHappyLeaderInfoVo.setAddressPic(mallTeamLeader.getAddressPic());
- apiHappyLeaderInfoVo.setAddressArea(mallTeamLeader.getAddressArea());
- apiHappyLeaderInfoVo.setDetailAddress(mallTeamLeader.getDetailAddress());
- apiHappyLeaderInfoVo.setLongitude(mallTeamLeader.getLongitude());
- apiHappyLeaderInfoVo.setLatitude(mallTeamLeader.getLatitude());
- apiHappyLeaderInfoVos.add(apiHappyLeaderInfoVo);
- }
- }
-
- return new FebsResponse().success().data(apiHappyLeaderInfoVos);
+ // 创建分页对象,传入当前页和每页大小
+ Page<ApiHappyLeaderInfoVo> page = new Page<>(dto.getPageNow(), dto.getPageSize());
+ // 调用Mapper方法获取活动分页数据
+ Page<ApiHappyLeaderInfoVo> mallTeamLeaderPage = this.baseMapper.selectApiLeaderInfoInPage(page, dto);
+ return new FebsResponse().success().data(mallTeamLeaderPage);
}
@Override
diff --git a/src/main/java/cc/mrbird/febs/mall/vo/ApiHappyLeaderInfoVo.java b/src/main/java/cc/mrbird/febs/mall/vo/ApiHappyLeaderInfoVo.java
index c892708..7b2710c 100644
--- a/src/main/java/cc/mrbird/febs/mall/vo/ApiHappyLeaderInfoVo.java
+++ b/src/main/java/cc/mrbird/febs/mall/vo/ApiHappyLeaderInfoVo.java
@@ -8,7 +8,6 @@
@ApiModel(value = "ApiHappyLeaderInfoVo", description = "信息返回类")
public class ApiHappyLeaderInfoVo {
- private Long id;
@ApiModelProperty(value = "联系人")
private String name;
diff --git a/src/main/resources/mapper/modules/MallTeamLeaderMapper.xml b/src/main/resources/mapper/modules/MallTeamLeaderMapper.xml
index 2ea6875..be4d57f 100644
--- a/src/main/resources/mapper/modules/MallTeamLeaderMapper.xml
+++ b/src/main/resources/mapper/modules/MallTeamLeaderMapper.xml
@@ -278,4 +278,26 @@
where a.state = 1
</select>
+
+
+ <select id="selectApiLeaderInfoInPage" resultType="cc.mrbird.febs.mall.vo.ApiHappyLeaderInfoVo">
+ select
+ a.*
+ from mall_team_leader a
+ <where>
+ and a.state = 1
+ and a.online_state = 1
+ <if test="record != null">
+ <if test="record.query != null and record.query != ''">
+ and (
+ a.name like CONCAT('%', CONCAT(#{record.query}, '%'))
+ or a.address_area like CONCAT('%', CONCAT(#{record.query}, '%'))
+ or a.detail_address like CONCAT('%', CONCAT(#{record.query}, '%'))
+ )
+ </if>
+ </if>
+ </where>
+ order by a.id desc
+ </select>
+
</mapper>
\ No newline at end of file
--
Gitblit v1.9.1