From 803a61d1d89e75f0b5d72785069b3dceb579f3ca Mon Sep 17 00:00:00 2001
From: peng <peng.com>
Date: 星期三, 27 八月 2025 10:25:58 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/dev' into dev
---
manager-api/src/main/java/cn/lili/controller/lmk/PrizeGrantRecordController.java | 39 ++++
framework/src/main/java/cn/lili/modules/order/order/entity/dto/PrizeGrantRecordExportDetailDtO.java | 33 ++++
framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeRecordServiceImpl.java | 97 ++++++++++++
framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeGrantRecordMapper.java | 1
framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeGrantRecordQuery.java | 7
framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeGrantRecordServiceImpl.java | 74 +++++++++
framework/src/main/resources/mapper/lmk/PrizeGrantRecordMapper.xml | 37 ++++
framework/src/main/java/cn/lili/modules/lmk/domain/vo/PrizeRecordVO.java | 4
framework/src/main/java/cn/lili/modules/lmk/service/PrizeGrantRecordService.java | 4
framework/src/main/java/cn/lili/modules/order/order/entity/dto/PrizeRecordExportDetailDTO.java | 40 +++++
manager-api/src/main/java/cn/lili/controller/lmk/PrizeRecordController.java | 40 +++++
framework/src/main/java/cn/lili/modules/lmk/service/PrizeRecordService.java | 5
framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml | 46 +++++
framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeRecordQuery.java | 8 +
framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeRecordMapper.java | 3
15 files changed, 436 insertions(+), 2 deletions(-)
diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeGrantRecordQuery.java b/framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeGrantRecordQuery.java
index 4c4b3d3..9f33d16 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeGrantRecordQuery.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeGrantRecordQuery.java
@@ -18,5 +18,12 @@
@Data
@ApiModel(value = "PrizeGrantRecord鏌ヨ鍙傛暟", description = "濂栧搧鍙戞斁璁板綍鏌ヨ鍙傛暟")
public class PrizeGrantRecordQuery extends AbsQuery {
+ //鐢ㄦ埛鏄电О
+ private String nickName;
+ //娲诲姩鍚�
+ private String activityName;
+ //涓鐘舵��
+ private String grantStatus;
+
}
diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeRecordQuery.java b/framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeRecordQuery.java
index e05030d..7d73c10 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeRecordQuery.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/domain/query/PrizeRecordQuery.java
@@ -18,5 +18,13 @@
@Data
@ApiModel(value = "PrizeRecord鏌ヨ鍙傛暟", description = "鐢ㄦ埛鎶藉璁板綍琛ㄦ煡璇㈠弬鏁�")
public class PrizeRecordQuery extends AbsQuery {
+ //鐢ㄦ埛鏄电О
+ private String nickName;
+ //娲诲姩鍚�
+ private String activityName;
+ //涓鐘舵��
+ private String prizeStatus;
+
+ private String distributeStatus;
}
diff --git a/framework/src/main/java/cn/lili/modules/lmk/domain/vo/PrizeRecordVO.java b/framework/src/main/java/cn/lili/modules/lmk/domain/vo/PrizeRecordVO.java
index f7cb1af..7f6c04a 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/domain/vo/PrizeRecordVO.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/domain/vo/PrizeRecordVO.java
@@ -64,6 +64,10 @@
@ApiModelProperty("娲诲姩濂栧搧鍏宠仈琛╥d")
private Long activityPrizeRefId;
+ private String prizeActivityCoverUrl;
+
+ private String prizeImgUrl;
+
/** 濂栧搧鍙戞斁鐘舵�� */
private String distributeStatus;
diff --git a/framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeGrantRecordMapper.java b/framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeGrantRecordMapper.java
index 5c491e2..d16de98 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeGrantRecordMapper.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeGrantRecordMapper.java
@@ -31,4 +31,5 @@
*/
IPage getPage(IPage page, @Param("query") PrizeGrantRecordQuery query);
+ List<PrizeGrantRecordVO> getExportData(@Param("query") PrizeGrantRecordQuery query);
}
diff --git a/framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeRecordMapper.java b/framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeRecordMapper.java
index 4a894f2..43cea81 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeRecordMapper.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/mapper/PrizeRecordMapper.java
@@ -1,6 +1,7 @@
package cn.lili.modules.lmk.mapper;
import cn.lili.modules.lmk.domain.entity.PrizeRecord;
+import cn.lili.modules.lmk.domain.query.PrizeGrantRecordQuery;
import cn.lili.modules.lmk.domain.query.PrizeRecordTimeQuery;
import cn.lili.modules.lmk.domain.vo.PrizeRecordTimeVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -34,4 +35,6 @@
IPage getPage(IPage page, @Param("query") PrizeRecordQuery query);
List<PrizeRecordTimeVO> getPrizeRecordListByTime(@Param("query") PrizeRecordTimeQuery query);
+
+ List<PrizeRecordVO> getExportData(@Param("query")PrizeRecordQuery query);
}
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/PrizeGrantRecordService.java b/framework/src/main/java/cn/lili/modules/lmk/service/PrizeGrantRecordService.java
index a1760c6..7ed9071 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/PrizeGrantRecordService.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/PrizeGrantRecordService.java
@@ -5,6 +5,8 @@
import cn.lili.base.Result;
import cn.lili.modules.lmk.domain.form.PrizeGrantRecordForm;
import cn.lili.modules.lmk.domain.query.PrizeGrantRecordQuery;
+
+import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
@@ -15,6 +17,8 @@
*/
public interface PrizeGrantRecordService extends IService<PrizeGrantRecord> {
+ void queryExportStock(HttpServletResponse response, PrizeGrantRecordQuery query);
+
/**
* 娣诲姞
* @param form
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/PrizeRecordService.java b/framework/src/main/java/cn/lili/modules/lmk/service/PrizeRecordService.java
index 34c9027..de3cdb6 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/PrizeRecordService.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/PrizeRecordService.java
@@ -1,12 +1,15 @@
package cn.lili.modules.lmk.service;
import cn.lili.modules.lmk.domain.entity.PrizeRecord;
+import cn.lili.modules.lmk.domain.query.PrizeGrantRecordQuery;
import cn.lili.modules.lmk.domain.query.PrizeRecordTimeQuery;
import cn.lili.modules.lmk.domain.vo.PrizeRecordTimeVO;
import com.baomidou.mybatisplus.extension.service.IService;
import cn.lili.base.Result;
import cn.lili.modules.lmk.domain.form.PrizeRecordForm;
import cn.lili.modules.lmk.domain.query.PrizeRecordQuery;
+
+import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
@@ -17,6 +20,8 @@
*/
public interface PrizeRecordService extends IService<PrizeRecord> {
+ void queryExportStock(HttpServletResponse response, PrizeRecordQuery query);
+
/**
* 娣诲姞
* @param form
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeGrantRecordServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeGrantRecordServiceImpl.java
index 78f34d3..8868c61 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeGrantRecordServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeGrantRecordServiceImpl.java
@@ -1,5 +1,7 @@
package cn.lili.modules.lmk.service.impl;
+import cn.lili.modules.lmk.enums.general.PrizeGrantStatusEnums;
+import cn.lili.modules.order.order.entity.dto.PrizeGrantRecordExportDetailDtO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import cn.lili.modules.lmk.domain.entity.PrizeGrantRecord;
import cn.lili.modules.lmk.mapper.PrizeGrantRecordMapper;
@@ -9,12 +11,20 @@
import cn.lili.modules.lmk.domain.form.PrizeGrantRecordForm;
import cn.lili.modules.lmk.domain.vo.PrizeGrantRecordVO;
import cn.lili.modules.lmk.domain.query.PrizeGrantRecordQuery;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.stereotype.Service;
import lombok.RequiredArgsConstructor;
import cn.lili.utils.PageUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.util.Assert;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletResponse;
+import java.net.URLEncoder;
+import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
@@ -30,6 +40,70 @@
private final PrizeGrantRecordMapper prizeGrantRecordMapper;
+ @Override
+ public void queryExportStock(HttpServletResponse response, PrizeGrantRecordQuery query){
+ List<PrizeGrantRecordVO> list = baseMapper.getExportData(query);
+ XSSFWorkbook workbook = initExportData(list);
+ try {
+ // 璁剧疆鍝嶅簲澶�
+ String fileName = URLEncoder.encode("濂栧搧鍙戞斁璁板綍", "UTF-8");
+ response.setContentType("application/vnd.ms-excel;charset=UTF-8");
+ response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
+
+ ServletOutputStream out = response.getOutputStream();
+ workbook.write(out);
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ try {
+ workbook.close();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ private XSSFWorkbook initExportData(List<PrizeGrantRecordVO> list){
+ List<PrizeGrantRecordExportDetailDtO> exportDetailDtOS = new ArrayList<>();
+ for (PrizeGrantRecordVO vo : list){
+ PrizeGrantRecordExportDetailDtO detailDtO = new PrizeGrantRecordExportDetailDtO();
+ BeanUtils.copyProperties(vo,detailDtO);
+ exportDetailDtOS.add(detailDtO);
+ }
+
+ XSSFWorkbook workbook = new XSSFWorkbook();
+
+ Sheet sheet = workbook.createSheet("濂栧搧鍙戞斁璁板綍");
+ // 鍒涘缓琛ㄥご
+ Row header = sheet.createRow(0);
+ String[] headers = {
+ "鐢ㄦ埛鏄电О", "娲诲姩鍚�","鍟嗗搧鍚�",
+ "鍟嗗搧鍐呭","鍙戞斁鐘舵��"
+ ,"鎻忚堪"
+ };
+ for(int i= 0 ;i< headers.length;i++){
+ Cell cell = header.createCell(i);
+ cell.setCellValue(headers[i]);
+ }
+ for (int i=0;i< exportDetailDtOS.size();i++){
+ PrizeGrantRecordExportDetailDtO dto = exportDetailDtOS.get(i);
+ Row row = sheet.createRow(i+1);
+ row.createCell(0).setCellValue(dto.getNickName());
+ row.createCell(1).setCellValue(dto.getActivityName());
+ row.createCell(2).setCellValue(dto.getPrizeName());
+ row.createCell(3).setCellValue(dto.getPrizeContent());
+ if (PrizeGrantStatusEnums.SUCCESS.name().equals(dto.getGrantStatus())){
+ row.createCell(4).setCellValue(PrizeGrantStatusEnums.SUCCESS.getDescription());
+ }else {
+ row.createCell(4).setCellValue(PrizeGrantStatusEnums.FAILED.getDescription());
+
+ }
+
+ row.createCell(5).setCellValue(dto.getDes());
+ }
+
+ return workbook;
+ }
+
/**
* 娣诲姞
* @param form
diff --git a/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeRecordServiceImpl.java b/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeRecordServiceImpl.java
index dedeb91..b8cdd6e 100644
--- a/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeRecordServiceImpl.java
+++ b/framework/src/main/java/cn/lili/modules/lmk/service/impl/PrizeRecordServiceImpl.java
@@ -1,7 +1,14 @@
package cn.lili.modules.lmk.service.impl;
+import cn.lili.common.utils.StringUtils;
+import cn.lili.modules.lmk.domain.query.PrizeGrantRecordQuery;
import cn.lili.modules.lmk.domain.query.PrizeRecordTimeQuery;
import cn.lili.modules.lmk.domain.vo.PrizeRecordTimeVO;
+import cn.lili.modules.lmk.enums.general.PrizeDistributeStatusEnum;
+import cn.lili.modules.lmk.enums.general.PrizeGrantStatusEnums;
+import cn.lili.modules.lmk.enums.general.PrizeStatusEnum;
+import cn.lili.modules.order.order.entity.dto.PrizeRecordExportDetailDTO;
+import cn.lili.utils.COSUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import cn.lili.modules.lmk.domain.entity.PrizeRecord;
import cn.lili.modules.lmk.mapper.PrizeRecordMapper;
@@ -11,17 +18,25 @@
import cn.lili.modules.lmk.domain.form.PrizeRecordForm;
import cn.lili.modules.lmk.domain.vo.PrizeRecordVO;
import cn.lili.modules.lmk.domain.query.PrizeRecordQuery;
+import org.apache.poi.ss.usermodel.Cell;
+import org.apache.poi.ss.usermodel.Row;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.stereotype.Service;
import lombok.RequiredArgsConstructor;
import cn.lili.utils.PageUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.util.Assert;
+import javax.servlet.ServletOutputStream;
+import javax.servlet.http.HttpServletResponse;
+import java.net.URLEncoder;
+import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
/**
- * 鐢ㄦ埛鎶藉璁板綍琛� 鏈嶅姟瀹炵幇绫�
+ * 鐢ㄦ埛鎶藉璁板綍 鏈嶅姟瀹炵幇绫�
*
* @author peng
* @since 2025-08-14
@@ -32,6 +47,78 @@
private final PrizeRecordMapper prizeRecordMapper;
+ private final COSUtil cosUtil;
+
+ @Override
+ public void queryExportStock(HttpServletResponse response, PrizeRecordQuery query){
+ List<PrizeRecordVO> list = baseMapper.getExportData(query);
+ XSSFWorkbook workbook = initExportData(list);
+ try {
+ // 璁剧疆鍝嶅簲澶�
+ String fileName = URLEncoder.encode("鐢ㄦ埛鎶藉璁板綍", "UTF-8");
+ response.setContentType("application/vnd.ms-excel;charset=UTF-8");
+ response.setHeader("Content-Disposition", "attachment;filename=" + fileName + ".xlsx");
+
+ ServletOutputStream out = response.getOutputStream();
+ workbook.write(out);
+ } catch (Exception e) {
+ e.printStackTrace();
+ } finally {
+ try {
+ workbook.close();
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ public XSSFWorkbook initExportData(List<PrizeRecordVO> list){
+ List<PrizeRecordExportDetailDTO> exportDetailDTOS = new ArrayList<>();
+ for (PrizeRecordVO vo : list){
+ PrizeRecordExportDetailDTO detailDtO = new PrizeRecordExportDetailDTO();
+ BeanUtils.copyProperties(vo,detailDtO);
+ exportDetailDTOS.add(detailDtO);
+ }
+ XSSFWorkbook workbook = new XSSFWorkbook();
+
+ Sheet sheet = workbook.createSheet("鐢ㄦ埛鎶藉璁板綍");
+ // 鍒涘缓琛ㄥご
+ Row header = sheet.createRow(0);
+ String[] headers = {
+ "鐢ㄦ埛鏄电О", "娲诲姩鍚�","涓鐘舵��",
+ "涓鍐呭","濂栧搧鍙戞斁鐘舵��"
+ };
+ for(int i= 0 ;i< headers.length;i++){
+ Cell cell = header.createCell(i);
+ cell.setCellValue(headers[i]);
+ }
+ for (int i=0;i< exportDetailDTOS.size();i++){
+ PrizeRecordExportDetailDTO dto = exportDetailDTOS.get(i);
+ Row row = sheet.createRow(i+1);
+ row.createCell(0).setCellValue(dto.getNickName());
+ row.createCell(1).setCellValue(dto.getPrizeActivityName());
+ if (PrizeStatusEnum.WIN.name().equals(dto.getPrizeStatus())){
+ row.createCell(2).setCellValue(PrizeStatusEnum.WIN.getDescription());
+ }else{
+ row.createCell(2).setCellValue(PrizeStatusEnum.NOT_WIN.getDescription());
+ }
+
+ row.createCell(3).setCellValue(dto.getPrizeContent());
+ if (PrizeDistributeStatusEnum.SUCCESS.name().equals(dto.getDistributeStatus())){
+ row.createCell(4).setCellValue(PrizeGrantStatusEnums.SUCCESS.getDescription());
+ }else if(PrizeDistributeStatusEnum.FAILED.name().equals(dto.getDistributeStatus())){
+ row.createCell(4).setCellValue(PrizeDistributeStatusEnum.FAILED.getDescription());
+ }else if(PrizeDistributeStatusEnum.NOT_WAIT.name().equals(dto.getDistributeStatus())){
+ row.createCell(4).setCellValue(PrizeDistributeStatusEnum.NOT_WAIT.getDescription());
+
+ }else {
+ row.createCell(4).setCellValue(PrizeDistributeStatusEnum.WAIT.getDescription());
+ }
+
+ }
+
+ return workbook;
+
+ }
/**
* 娣诲姞
* @param form
@@ -91,6 +178,14 @@
public Result page(PrizeRecordQuery query) {
IPage<PrizeRecordVO> page = PageUtil.getPage(query, PrizeRecordVO.class);
baseMapper.getPage(page, query);
+ for (PrizeRecordVO vo :page.getRecords()){
+ if (StringUtils.isNotBlank(vo.getPrizeActivityCover())){
+ vo.setPrizeActivityCoverUrl(cosUtil.getPreviewUrl(vo.getPrizeActivityCover()));
+ }
+ if (StringUtils.isNotBlank(vo.getPrizeImg())){
+ vo.setPrizeImgUrl(cosUtil.getPreviewUrl(vo.getPrizeImg()));
+ }
+ }
return Result.ok().data(page.getRecords()).total(page.getTotal());
}
diff --git a/framework/src/main/java/cn/lili/modules/order/order/entity/dto/PrizeGrantRecordExportDetailDtO.java b/framework/src/main/java/cn/lili/modules/order/order/entity/dto/PrizeGrantRecordExportDetailDtO.java
new file mode 100644
index 0000000..14360bc
--- /dev/null
+++ b/framework/src/main/java/cn/lili/modules/order/order/entity/dto/PrizeGrantRecordExportDetailDtO.java
@@ -0,0 +1,33 @@
+package cn.lili.modules.order.order.entity.dto;
+
+
+import lombok.Data;
+
+/**
+ * lmk-shop-java
+ *
+ * @author : zxl
+ * @date : 2025-08-26 18:07
+ **/
+@Data
+public class PrizeGrantRecordExportDetailDtO {
+
+ //鐢ㄦ埛鏄电О
+ private String nickName;
+
+ //娲诲姩鍚�
+ private String activityName;
+
+ //鍟嗗搧鍚�
+ private String prizeName;
+
+ //鍟嗗搧鍐呭
+ private String prizeContent;
+
+ //鍙戞斁鐘舵��
+ private String grantStatus;
+
+ //鎻忚堪
+ private String des;
+
+}
diff --git a/framework/src/main/java/cn/lili/modules/order/order/entity/dto/PrizeRecordExportDetailDTO.java b/framework/src/main/java/cn/lili/modules/order/order/entity/dto/PrizeRecordExportDetailDTO.java
new file mode 100644
index 0000000..7fe71dd
--- /dev/null
+++ b/framework/src/main/java/cn/lili/modules/order/order/entity/dto/PrizeRecordExportDetailDTO.java
@@ -0,0 +1,40 @@
+package cn.lili.modules.order.order.entity.dto;
+
+
+import cn.lili.modules.lmk.enums.general.PrizeDistributeStatusEnum;
+import cn.lili.modules.lmk.enums.general.PrizeStatusEnum;
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * lmk-shop-java
+ *
+ * @author : zxl
+ * @date : 2025-08-26 18:11
+ **/
+@Data
+public class PrizeRecordExportDetailDTO {
+
+ /** 鐢ㄦ埛鏄电О */
+ private String nickName;
+
+ /** 娲诲姩鍚嶇О */
+ private String prizeActivityName;
+
+ /** 涓鐘舵��
+ * @see PrizeStatusEnum
+ * */
+ private String prizeStatus;
+
+ /** 涓鍐呭 */
+ private String prizeContent;
+
+ /** 濂栧搧鍚嶇О */
+ public String prizeName;
+
+ /** 濂栧搧鍙戞斁鐘舵��
+ * @see PrizeDistributeStatusEnum
+ * */
+ private String distributeStatus;
+}
diff --git a/framework/src/main/resources/mapper/lmk/PrizeGrantRecordMapper.xml b/framework/src/main/resources/mapper/lmk/PrizeGrantRecordMapper.xml
index b1a97a7..e9e8ace 100644
--- a/framework/src/main/resources/mapper/lmk/PrizeGrantRecordMapper.xml
+++ b/framework/src/main/resources/mapper/lmk/PrizeGrantRecordMapper.xml
@@ -60,6 +60,41 @@
lmk_prize_grant_record LPGR
WHERE
LPGR.delete_flag = 0
+ <if test="query.nickName != null and query.nickName !=''">
+ AND LPGR.nick_name like CONCAT('%',#{query.nickName},'%')
+ </if>
+ <if test="query.activityName != null and query.activityName !=''">
+ AND LPGR.activity_name like CONCAT('%',#{query.activityName},'%')
+ </if>
+ <if test="query.grantStatus != null and query.grantStatus !=''">
+ AND LPGR.grant_status = #{query.grantStatus}
+ </if>
</select>
-
+ <select id="getExportData" resultMap="BaseResultMap">
+ SELECT
+ LPGR.user_id,
+ LPGR.nick_name,
+ LPGR.activity_id,
+ LPGR.activity_name,
+ LPGR.prize_id,
+ LPGR.prize_name,
+ LPGR.prize_content,
+ LPGR.grant_status,
+ LPGR.prize_num_id,
+ LPGR.des,
+ LPGR.id
+ FROM
+ lmk_prize_grant_record LPGR
+ WHERE
+ LPGR.delete_flag = 0
+ <if test="query.nickName != null and query.nickName !=''">
+ AND LPGR.nick_name like CONCAT('%',#{query.nickName},'%')
+ </if>
+ <if test="query.activityName != null and query.activityName !=''">
+ AND LPGR.activity_name like CONCAT('%',#{query.activityName},'%')
+ </if>
+ <if test="query.grantStatus != null and query.grantStatus !=''">
+ AND LPGR.grant_status = #{query.grantStatus}
+ </if>
+ </select>
</mapper>
diff --git a/framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml b/framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml
index bfc4500..9dda94e 100644
--- a/framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml
+++ b/framework/src/main/resources/mapper/lmk/PrizeRecordMapper.xml
@@ -17,6 +17,7 @@
<result column="prize_num_id" property="prizeNumId" />
<result column="activity_prize_ref_id" property="activityPrizeRefId" />
<result column="distribute_status" property="distributeStatus" />
+ <result column="distribute_status" property="distributeStatus"/>
</resultMap>
@@ -60,11 +61,56 @@
LPR.prize_img,
LPR.prize_num_id,
LPR.activity_prize_ref_id,
+ LPR.distribute_status,
LPR.id
FROM
lmk_prize_record LPR
WHERE
LPR.delete_flag = 0
+ <if test="query.nickName != null and query.nickName !=''">
+ AND LPR.nick_name like CONCAT('%',#{query.nickName},'%')
+ </if>
+ <if test="query.activityName != null and query.activityName !=''">
+ AND LPR.prize_activity_name like CONCAT('%',#{query.activityName},'%')
+ </if>
+ <if test="query.prizeStatus != null and query.prizeStatus !=''">
+ AND LPR.prize_status = #{query.prizeStatus}
+ </if>
+ <if test="query.distributeStatus != null and query.distributeStatus !=''">
+ AND LPR.distribute_status = #{query.distributeStatus}
+ </if>
+ </select>
+ <select id="getExportData" resultMap="BaseResultMap">
+ SELECT
+ LPR.user_id,
+ LPR.nick_name,
+ LPR.prize_activity_id,
+ LPR.prize_activity_name,
+ LPR.prize_activity_cover,
+ LPR.prize_status,
+ LPR.prize_content,
+ LPR.prize_id,
+ LPR.prize_img,
+ LPR.prize_num_id,
+ LPR.activity_prize_ref_id,
+ LPR.distribute_status,
+ LPR.id
+ FROM
+ lmk_prize_record LPR
+ WHERE
+ LPR.delete_flag = 0
+ <if test="query.nickName != null and query.nickName !=''">
+ AND LPR.nick_name like CONCAT('%',#{query.nickName},'%')
+ </if>
+ <if test="query.activityName != null and query.activityName !=''">
+ AND LPR.prize_activity_name like CONCAT('%',#{query.activityName},'%')
+ </if>
+ <if test="query.prizeStatus != null and query.prizeStatus !=''">
+ AND LPR.prize_status = #{query.prizeStatus}
+ </if>
+ <if test="query.distributeStatus != null and query.distributeStatus !=''">
+ AND LPR.distribute_status = #{query.distributeStatus}
+ </if>
</select>
<resultMap id="getPrizeRecordListByTimeMap" type="cn.lili.modules.lmk.domain.vo.PrizeRecordTimeVO">
<result property="activityPrizeRefId" column="activity_prize_ref_id"/>
diff --git a/manager-api/src/main/java/cn/lili/controller/lmk/PrizeGrantRecordController.java b/manager-api/src/main/java/cn/lili/controller/lmk/PrizeGrantRecordController.java
new file mode 100644
index 0000000..c128c12
--- /dev/null
+++ b/manager-api/src/main/java/cn/lili/controller/lmk/PrizeGrantRecordController.java
@@ -0,0 +1,39 @@
+package cn.lili.controller.lmk;
+
+
+import cn.lili.base.Result;
+import cn.lili.common.context.ThreadContextHolder;
+import cn.lili.modules.lmk.domain.query.PrizeGrantRecordQuery;
+import cn.lili.modules.lmk.domain.query.PrizeRecordQuery;
+import cn.lili.modules.lmk.service.PrizeGrantRecordService;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * lmk-shop-java
+ * 濂栧搧鍙戞斁璁板綍
+ *
+ * @author : zxl
+ * @date : 2025-08-25 16:45
+ **/
+@RestController
+@AllArgsConstructor
+@RequestMapping("/manager/lmk/prizeGrantRecord")
+public class PrizeGrantRecordController {
+ private final PrizeGrantRecordService prizeGrantRecordService;
+
+ @GetMapping
+ public Result getPage(PrizeGrantRecordQuery query){
+ return prizeGrantRecordService.page(query);
+ }
+ @ApiOperation(value = "瀵煎嚭")
+ @GetMapping("/queryExport")
+ public void queryExport(PrizeGrantRecordQuery searchParams) {
+ HttpServletResponse response = ThreadContextHolder.getHttpResponse();
+ prizeGrantRecordService.queryExportStock(response,searchParams);}
+}
diff --git a/manager-api/src/main/java/cn/lili/controller/lmk/PrizeRecordController.java b/manager-api/src/main/java/cn/lili/controller/lmk/PrizeRecordController.java
new file mode 100644
index 0000000..59d3457
--- /dev/null
+++ b/manager-api/src/main/java/cn/lili/controller/lmk/PrizeRecordController.java
@@ -0,0 +1,40 @@
+package cn.lili.controller.lmk;
+
+
+import cn.lili.base.Result;
+import cn.lili.common.context.ThreadContextHolder;
+import cn.lili.modules.goods.entity.dto.GoodsSearchParams;
+import cn.lili.modules.lmk.domain.query.PrizeRecordQuery;
+import cn.lili.modules.lmk.service.PrizeRecordService;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletResponse;
+
+/**
+ * lmk-shop-java
+ * 鐢ㄦ埛鎶藉璁板綍
+ * @author : zxl
+ * @date : 2025-08-25 16:52
+ **/
+
+@AllArgsConstructor
+@RestController
+@RequestMapping("/manager/lmk/prizeRecord")
+public class PrizeRecordController {
+ private final PrizeRecordService prizeRecordService;
+
+ @GetMapping
+ public Result getPage(PrizeRecordQuery query){
+ return prizeRecordService.page(query);
+ }
+
+ @ApiOperation(value = "瀵煎嚭")
+ @GetMapping("/queryExport")
+ public void queryExport(PrizeRecordQuery searchParams) {
+ HttpServletResponse response = ThreadContextHolder.getHttpResponse();
+ prizeRecordService.queryExportStock(response,searchParams);}
+}
--
Gitblit v1.8.0