Browse Source

12/22

master
wangpengfei 1 year ago
parent
commit
2fb9b1d454
  1. 53
      src/main/java/com/yxt/yyth/api/lpkgiftcard/CardStatisticsExportVo.java
  2. 2
      src/main/java/com/yxt/yyth/biz/empcardgift/EmpCardGiftRest.java
  3. 1
      src/main/java/com/yxt/yyth/biz/lpkgiftbag/LpkGiftBagService.java
  4. 6
      src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardMapper.java
  5. 65
      src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardMapper.xml
  6. 20
      src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardRest.java
  7. 70
      src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java

53
src/main/java/com/yxt/yyth/api/lpkgiftcard/CardStatisticsExportVo.java

@ -0,0 +1,53 @@
package com.yxt.yyth.api.lpkgiftcard;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import lombok.Data;
/**
* @author wangpengfei
* @date 2023/12/22 14:11
*/
@Data
public class CardStatisticsExportVo {
@ColumnWidth(20)
@ExcelProperty(value = "卡号",index = 0)
private String code;
@ColumnWidth(20)
@ExcelProperty(value = "发行时间",index = 1)
private String createTime;
@ColumnWidth(20)
@ExcelProperty(value = "卡片种类",index = 2)
private String cardType;
@ColumnWidth(20)
@ExcelProperty(value = "发行人",index = 3)
private String people;
@ColumnWidth(20)
@ExcelProperty(value = "状态",index = 4)
private String stateValue;
@ColumnWidth(20)
@ExcelProperty(value = "是否过期",index = 5)
private String isExpire;
@ColumnWidth(20)
@ExcelProperty(value = "是否作废",index = 6)
private String isCancel;
@ColumnWidth(20)
@ExcelProperty(value = "绑定id",index = 7)
private String bind;
@ColumnWidth(20)
@ExcelProperty(value = "绑定时间",index = 8)
private String bindDate;
@ColumnWidth(20)
@ExcelProperty(value = "提货卡商品(份)",index = 9)
private String goodsName;
@ColumnWidth(20)
@ExcelProperty(value = "商品数量(份)",index = 10)
private String goodsNumber;
@ColumnWidth(20)
@ExcelProperty(value = "已提数量(份)",index = 11)
private String receiveNumber;
@ColumnWidth(20)
@ExcelProperty(value = "未提数量(份)",index = 12)
private String unclaimedNumber;
}

2
src/main/java/com/yxt/yyth/biz/empcardgift/EmpCardGiftRest.java

@ -28,7 +28,7 @@ public class EmpCardGiftRest {
@PostMapping("/bindCard")
@ApiOperation(value = "客户绑定礼包卡")
@ApiOperation(value = "客户绑定福利卡")
public ResultBean wxBindMobile(@RequestBody BindCardDto bindCardDto) {
return EmpCardGiftService.bindCard(bindCardDto);
}

1
src/main/java/com/yxt/yyth/biz/lpkgiftbag/LpkGiftBagService.java

@ -52,6 +52,7 @@ public class LpkGiftBagService extends MybatisBaseService<LpkGiftBagMapper, LpkG
qw.like("name", query.getName());
}
qw.orderByDesc("createTime");
qw.orderByAsc("name");
IPage<LpkGiftBag> page = PagerUtil.queryToPage(pq);
IPage<LpkGiftBagVo> pagging = baseMapper.giftBagListPage(page, qw);
PagerVo<LpkGiftBagVo> p = PagerUtil.pageToVo(pagging, null);

6
src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardMapper.java

@ -4,9 +4,9 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.yyth.api.lpkgiftbag.LpkGiftBag;
import com.yxt.yyth.api.lpkgiftcard.*;
import com.yxt.yyth.api.lpkstore.LpkStore;
import com.yxt.yyth.api.lpkgiftcard.CardStatisticsExportVo;
import com.yxt.yyth.api.lpkreserveorder.LpkReserveOrderQuery;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
@ -63,4 +63,6 @@ public interface LpkGiftCardMapper extends BaseMapper<LpkGiftCard> {
String selctMaxSerNumForExport();
int saveCards(@Param("cards") List<LpkGiftCard> cards);
IPage<CardStatisticsExportVo> cardStatisticsList(IPage<LpkGiftCardListQuery> page, @Param(Constants.WRAPPER) QueryWrapper<LpkGiftCardListQuery> qw);
List<CardStatisticsExportVo> cardStatisticsListExport(@Param(Constants.WRAPPER) QueryWrapper<LpkGiftCardListQuery> qw);
}

65
src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardMapper.xml

@ -150,4 +150,69 @@
FROM lpk_giftcard as c
WHERE c.serialNumber >= '70000001'
</select>
<select id="cardStatisticsListExport" resultType="com.yxt.yyth.api.lpkgiftcard.CardStatisticsExportVo">
SELECT
a.CODE AS CODE,
a.createTime AS createTime,
CASE
WHEN a.CODE IS NOT NULL THEN
'提货卡'
END cardType,
CASE
a.state
WHEN 1 THEN
'未绑卡'
WHEN 2 THEN
'未绑卡'
WHEN 3 THEN
'未预约'
WHEN 4 THEN
'已预约'
WHEN 5 THEN
'已完成'
END stateValue,
a.customerSid AS bind,
a.bindDate AS bindDate,
d.NAME AS goodsName,
c.goodsNumber AS goodsNumber
FROM
lpk_giftcard a
LEFT JOIN lpk_giftbag b ON b.sid = a.giftbagSid
LEFT JOIN lpk_giftbag_goods c ON c.giftbagSid = a.giftbagSid
LEFT JOIN lpk_goods d ON d.sid = c.goodsSid
GROUP BY
a.sid,
c.goodsSid UNION ALL
SELECT
a.CODE AS CODE,
a.createTime AS createTime,
CASE
WHEN a.CODE IS NOT NULL THEN
'福利卡'
END cardType,
CASE
a.state
WHEN 1 THEN
'未绑卡'
WHEN 2 THEN
'未绑卡'
WHEN 3 THEN
'未预约'
WHEN 4 THEN
'已预约'
WHEN 5 THEN
'已完成'
END stateValue,
a.customerSid AS bind,
a.bindDate AS bindDate,
d.NAME AS goodsName,
c.goodsNumber AS goodsNumber
FROM
emp_card_gift a
LEFT JOIN emp_card_gift_goods c ON c.empCardGiftSid = a.sid
LEFT JOIN lpk_goods d ON d.sid = c.goodsSid
GROUP BY
a.sid,
c.goodsSid;
</select>
</mapper>

20
src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardRest.java

@ -1,13 +1,12 @@
package com.yxt.yyth.biz.lpkgiftcard;
import cn.hutool.core.img.ImgUtil;
import cn.hutool.extra.qrcode.QrCodeUtil;
import com.alibaba.fastjson.JSONObject;
import com.yxt.common.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
import com.yxt.yyth.api.lpkgiftcard.*;
import com.yxt.yyth.api.lpkgoods.LpkGoodsVo;
import com.yxt.yyth.api.lpkgiftcard.CardStatisticsExportVo;
import com.yxt.yyth.api.lpkreserveorder.LpkReserveOrderQuery;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@ -16,11 +15,9 @@ import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.ParseException;
import java.util.List;
/**
* @author wangpengfei
@ -141,5 +138,14 @@ public class LpkGiftCardRest {
HttpServletResponse response) throws IOException {
return lpkGiftCardService.getExcelInfo3(startDate,endDate,file,request,response);
}
@ApiOperation("订单门店汇总列表")
@PostMapping("/cardStatisticsListExport")
public void cardStatisticsListExport(@RequestBody LpkGiftCardListQuery pq) {
lpkGiftCardService.cardStatisticsListExport(pq);
}
@ApiOperation("订单门店汇总列表")
@PostMapping("/cardStatisticsList")
public void cardStatisticsList(@RequestBody PagerQuery<LpkReserveOrderQuery> pq) {
lpkGiftCardService.cardStatisticsList(pq);
}
}

70
src/main/java/com/yxt/yyth/biz/lpkgiftcard/LpkGiftCardService.java

@ -6,11 +6,14 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.img.ImgUtil;
import java.io.InputStream;
import java.io.*;
import java.text.ParseException;
import java.time.DayOfWeek;
import java.time.Period;
import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.write.metadata.style.WriteCellStyle;
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import cn.hutool.extra.qrcode.QrCodeUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@ -34,9 +37,8 @@ import com.yxt.yyth.api.lpkgiftbaggoods.LpkGiftBagGoods;
import com.yxt.yyth.api.lpkgiftbaggoods.LpkGiftBagGoodsVo;
import com.yxt.yyth.api.lpkgiftcard.*;
import com.yxt.yyth.api.lpkgoods.LpkGoods;
import com.yxt.yyth.api.lpkgoods.LpkGoodsDto;
import com.yxt.yyth.api.lpkreserveorder.LpkReserveOrderCardVo;
import com.yxt.yyth.api.lpkreserveorder.LpkReserveOrderVo;
import com.yxt.yyth.api.lpkgiftcard.CardStatisticsExportVo;
import com.yxt.yyth.api.lpkreserveorder.*;
import com.yxt.yyth.api.lpkreserveordergoods.LpkReserveOrderGoods;
import com.yxt.yyth.api.lpkstore.LpkStoreDetailsVo;
import com.yxt.yyth.api.lpkstore.StoreSelect;
@ -50,28 +52,20 @@ import com.yxt.yyth.biz.lpkgoods.LpkGoodsService;
import com.yxt.yyth.biz.lpkreserveorder.LpkReserveOrderService;
import com.yxt.yyth.biz.lpkreserveordergoods.LpkReserveOrderGoodsService;
import com.yxt.yyth.biz.lpkstore.LpkStoreService;
import io.swagger.annotations.ApiOperation;
import com.yxt.yyth.utils.StyleUtils;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
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.ss.usermodel.Workbook;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.time.LocalDate;
import java.util.*;
@ -1390,4 +1384,50 @@ public class LpkGiftCardService extends MybatisBaseService<LpkGiftCardMapper, Lp
// System.out.println(date);
// }
// }
public void cardStatisticsListExport(LpkGiftCardListQuery query) {
ResultBean rb=new ResultBean();
QueryWrapper<LpkGiftCardListQuery> qw = new QueryWrapper<>();
qw.eq("1", "1");
List<CardStatisticsExportVo> statisticsExportVos=baseMapper.cardStatisticsListExport(qw);
String excelName = "支行汇总信息.xlsx";
String fileNameURL = "1";
response.setContentType( "application/vnd.ms-excel");
response.setCharacterEncoding("utf8");
response.setHeader("Content-disposition","attachment;filename="+ excelName );
ServletOutputStream outputStream = null;
try {
WriteCellStyle headWriteCellStyle = new WriteCellStyle();
//设置头居中
headWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);
//内容策略
WriteCellStyle contentWriteCellStyle = new WriteCellStyle();
//设置 水平居中
contentWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);
// HorizontalCellStyleStrategy horizontalCellStyleStrategy = new HorizontalCellStyleStrategy(headWriteCellStyle,contentWriteCellStyle);
HorizontalCellStyleStrategy horizontalCellStyleStrategy = new HorizontalCellStyleStrategy(StyleUtils.getHeadStyle(), StyleUtils.getContentStyle());
EasyExcel//将数据映射到DownloadDTO实体类并响应到浏览器
.write(new BufferedOutputStream(response.getOutputStream()), CardStatisticsExportVo.class)
//是否自动关闭输入流
.autoCloseStream(Boolean.TRUE)
// .registerWriteHandler(new MergeStrategy(exportList.size(),1,5))
.registerWriteHandler(horizontalCellStyleStrategy)
.sheet().doWrite(statisticsExportVos);
} catch (IOException e) {
throw new RuntimeException(e);
}
}
public ResultBean cardStatisticsList(PagerQuery<LpkReserveOrderQuery> pq) {
ResultBean rb=new ResultBean();
LpkReserveOrderQuery query = pq.getParams();
QueryWrapper<LpkGiftCardListQuery> qw = new QueryWrapper<>();
// QueryWrapper<LpkReserveOrder> qw = new QueryWrapper<>();
qw.eq("1", "1");
IPage<LpkGiftCardListQuery> page = PagerUtil.queryToPage(pq);
IPage<CardStatisticsExportVo> pagging = baseMapper.cardStatisticsList(page, qw);
return rb.success().setData(pagging);
}
}

Loading…
Cancel
Save