|
|
@@ -17,9 +17,12 @@ import com.alibaba.excel.write.metadata.style.WriteCellStyle;
|
|
|
import com.alibaba.excel.write.metadata.style.WriteFont;
|
|
|
import com.alibaba.excel.write.style.HorizontalCellStyleStrategy;
|
|
|
import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
+import com.google.common.collect.Lists;
|
|
|
import com.yami.shop.bean.model.Sku;
|
|
|
+import com.yami.shop.bean.model.User;
|
|
|
import com.yami.shop.bean.po.FreightStatisticsPo;
|
|
|
import com.yami.shop.bean.po.SkuStatisticsPo;
|
|
|
import com.yami.shop.bean.vo.FreightStatisticsVo;
|
|
|
@@ -29,6 +32,7 @@ import com.yami.shop.common.exception.GlobalException;
|
|
|
import com.yami.shop.common.util.PageParam;
|
|
|
import com.yami.shop.dao.SkuMapper;
|
|
|
import com.yami.shop.service.SkuService;
|
|
|
+import com.yami.shop.service.UserService;
|
|
|
import lombok.SneakyThrows;
|
|
|
import org.apache.poi.ss.usermodel.HorizontalAlignment;
|
|
|
import org.apache.poi.ss.usermodel.IndexedColors;
|
|
|
@@ -56,6 +60,8 @@ public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements SkuSe
|
|
|
|
|
|
@Autowired
|
|
|
private SkuMapper skuMapper;
|
|
|
+ @Autowired
|
|
|
+ private UserService userService;
|
|
|
|
|
|
@Override
|
|
|
public List<Sku> listByProdId(Long prodId) {
|
|
|
@@ -229,4 +235,59 @@ public class SkuServiceImpl extends ServiceImpl<SkuMapper, Sku> implements SkuSe
|
|
|
return skuMapper.freightStatisticsList(page,po);
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ @SneakyThrows
|
|
|
+ public void test(HttpServletResponse response) {
|
|
|
+ String head = "用户信息表";
|
|
|
+ List<String> heads = Lists.newArrayList();
|
|
|
+ heads.add("手机号");
|
|
|
+ heads.add("积分");
|
|
|
+
|
|
|
+ //deal_num=分销的 deal_money=自己买的 remark=分销的商品 sales_nick_name=自己买的商品 sales_status=总计
|
|
|
+
|
|
|
+ List<List<String>> hs = Lists.newArrayList();
|
|
|
+ heads.forEach(c -> hs.add(Arrays.asList(head, c)));
|
|
|
+ List<List<Object>> data = Lists.newArrayList();
|
|
|
+ List<User> userList = userService.list(new LambdaQueryWrapper<User>().eq(User::getChannelId,1L));
|
|
|
+
|
|
|
+ for (User user : userList) {
|
|
|
+ List<Object> list = Lists.newArrayList();
|
|
|
+ list.add(user.getUserMobile());
|
|
|
+ list.add(userService.test(user.getUserId()));
|
|
|
+ data.add(list);
|
|
|
+ }
|
|
|
+
|
|
|
+ WriteCellStyle headWriteCellStyle = new WriteCellStyle();
|
|
|
+ //设置背景颜色
|
|
|
+ headWriteCellStyle.setFillForegroundColor(IndexedColors.GREY_25_PERCENT.getIndex());
|
|
|
+ //设置头字体
|
|
|
+ WriteFont headWriteFont = new WriteFont();
|
|
|
+ //字体大小
|
|
|
+ headWriteFont.setFontHeightInPoints((short) 15);
|
|
|
+ //使用微软粗体
|
|
|
+ headWriteFont.setBold(true);
|
|
|
+ //塞入条件
|
|
|
+ headWriteCellStyle.setWriteFont(headWriteFont);
|
|
|
+ //设置头居中
|
|
|
+ headWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);
|
|
|
+
|
|
|
+ //内容策略
|
|
|
+ WriteCellStyle contentWriteCellStyle = new WriteCellStyle();
|
|
|
+ //设置 水平居中
|
|
|
+ contentWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);
|
|
|
+
|
|
|
+ HorizontalCellStyleStrategy horizontalCellStyleStrategy = new HorizontalCellStyleStrategy(headWriteCellStyle, contentWriteCellStyle);
|
|
|
+
|
|
|
+ String fileName = URLEncoder.encode("用户信息表", "UTF-8").replaceAll("\\+", "%20");
|
|
|
+ response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
|
|
|
+ EasyExcel.write(response.getOutputStream())
|
|
|
+ .head(hs)
|
|
|
+ .useDefaultStyle(true)
|
|
|
+ .sheet(head)
|
|
|
+ .registerWriteHandler(horizontalCellStyleStrategy)
|
|
|
+ //自适应宽度
|
|
|
+ //.registerWriteHandler(new LongestMatchColumnWidthStyleStrategy())
|
|
|
+ .doWrite(data);
|
|
|
+ }
|
|
|
+
|
|
|
}
|