|
|
@ -1,24 +1,33 @@ |
|
|
|
package com.yxt.supervise.portal.biz.gdwholesale; |
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import cn.hutool.core.date.DateUtil; |
|
|
|
import cn.hutool.core.io.FileUtil; |
|
|
|
import cn.hutool.core.util.StrUtil; |
|
|
|
import cn.hutool.poi.excel.ExcelUtil; |
|
|
|
import cn.hutool.poi.excel.ExcelWriter; |
|
|
|
import cn.hutool.poi.excel.sax.handler.RowHandler; |
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|
|
|
import com.yxt.common.base.config.component.FileUploadComponent; |
|
|
|
import com.yxt.common.core.result.FileUploadResult; |
|
|
|
import com.yxt.common.core.result.ResultBean; |
|
|
|
import com.yxt.supervise.portal.biz.gdinstorage.GdInstorageGd; |
|
|
|
import com.yxt.supervise.portal.biz.gdinventory.GdRescategoryProdService; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.beans.factory.annotation.Value; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.web.multipart.MultipartFile; |
|
|
|
|
|
|
|
import java.io.File; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.List; |
|
|
|
|
|
|
|
@Service |
|
|
|
public class GdWholesaleService extends ServiceImpl<GdWholesaleMapper, GdWholesale> { |
|
|
|
|
|
|
|
@Value("${image.upload.path:static/upload/}") |
|
|
|
private String uploadPath; |
|
|
|
@Value("${image.url.prefix:http://127.0.0.1:8080/upload/}") |
|
|
|
private String urlPrefix; |
|
|
|
@Autowired |
|
|
|
private FileUploadComponent fileUploadComponent; |
|
|
|
@Autowired |
|
|
@ -83,6 +92,8 @@ public class GdWholesaleService extends ServiceImpl<GdWholesaleMapper, GdWholesa |
|
|
|
String prodCode = "" + r.get(3); //商品编码
|
|
|
|
String dataDate = "" + r.get(18); //数据日期
|
|
|
|
if (StrUtil.isNotBlank(prodCode)) { //商品编码不为空才插入,过滤掉统计行
|
|
|
|
if (odate == null) |
|
|
|
odate = dataDate; |
|
|
|
GdWholesaleGd gd = rowToEntity(r); |
|
|
|
toInsertListGd.add(gd); |
|
|
|
if (gdRescategoryProdService.containsCode(prodCode)) { |
|
|
@ -112,6 +123,7 @@ public class GdWholesaleService extends ServiceImpl<GdWholesaleMapper, GdWholesa |
|
|
|
gdlog.setAllNum(x); |
|
|
|
gdlog.setValidNum(y); |
|
|
|
gdlog.setErrRowNum(errnum); |
|
|
|
gdlog.setOrderDate(odate); |
|
|
|
RowHandler.super.doAfterAllAnalysed(); |
|
|
|
} |
|
|
|
}; |
|
|
@ -121,8 +133,51 @@ public class GdWholesaleService extends ServiceImpl<GdWholesaleMapper, GdWholesa |
|
|
|
baseMapper.clearByDataDate(dataDate); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean<GdWholesaleLog> buildExcel() { |
|
|
|
|
|
|
|
return null; |
|
|
|
public ResultBean<GdWholesaleLog> buildExcel(String logId) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
GdWholesaleLog gwl = gdWholesaleLogService.fetchById(logId); |
|
|
|
if (gwl == null) |
|
|
|
return rb.setMsg("上传记录未找到"); |
|
|
|
String orderDate = gwl.getOrderDate(); |
|
|
|
|
|
|
|
String tfile = "kchzb/批发数据" + orderDate + ".xlsx"; |
|
|
|
String url = urlPrefix + tfile; |
|
|
|
String toFileName = uploadPath + tfile; |
|
|
|
|
|
|
|
List<GdWholesale> toList = baseMapper.excelListByOrderDate(orderDate); |
|
|
|
if (toList == null || toList.isEmpty()) |
|
|
|
return rb.setMsg("没有该日期的批发数据"); |
|
|
|
|
|
|
|
// File file = FileUtil.file(toFileName);
|
|
|
|
ExcelWriter writer = ExcelUtil.getWriter(toFileName); |
|
|
|
writer.addHeaderAlias("id", "编号"); |
|
|
|
writer.addHeaderAlias("orgCode", "企业组织机构代码证"); |
|
|
|
writer.addHeaderAlias("orderType", "订单类型"); |
|
|
|
writer.addHeaderAlias("orderNo", "销售订单号"); |
|
|
|
writer.addHeaderAlias("prodCode", "商品编码"); |
|
|
|
writer.addHeaderAlias("prodBarCode", "商品条码"); |
|
|
|
writer.addHeaderAlias("prodName", "商品名称"); |
|
|
|
writer.addHeaderAlias("brandCode", "品牌代码"); |
|
|
|
writer.addHeaderAlias("brandName", "品牌名称"); |
|
|
|
writer.addHeaderAlias("categoryb", "商品大类"); |
|
|
|
writer.addHeaderAlias("categorym", "商品中类"); |
|
|
|
writer.addHeaderAlias("categorys", "商品小类"); |
|
|
|
writer.addHeaderAlias("customerCode", "客户代码"); |
|
|
|
writer.addHeaderAlias("customerName", "客户名称"); |
|
|
|
writer.addHeaderAlias("saleNum", "销售数量"); |
|
|
|
writer.addHeaderAlias("storeCode", "销售渠道"); |
|
|
|
writer.addHeaderAlias("salePrice", "销售价格"); |
|
|
|
writer.addHeaderAlias("saleCost", "销售成本"); |
|
|
|
writer.addHeaderAlias("profit", "利润"); |
|
|
|
writer.addHeaderAlias("dataDate", "数据日期"); |
|
|
|
writer.write(toList); |
|
|
|
writer.flush(); |
|
|
|
writer.close(); |
|
|
|
|
|
|
|
gwl.setFileUrl(url); |
|
|
|
gwl.setOutFilePath(toFileName); |
|
|
|
gdWholesaleLogService.updateById(gwl); |
|
|
|
|
|
|
|
return rb.success().setData(gwl); |
|
|
|
} |
|
|
|
} |
|
|
|