yxt_njy 2 years ago
parent
commit
d5c9d31254
  1. 85
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsales/GdSalesReportday.java
  2. 14
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsales/GdSalesReportdayMapper.java
  3. 124
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsales/GdSalesReportdayService.java
  4. 77
      yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsales/GdSalesService.java

85
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsales/GdSalesReportday.java

@ -0,0 +1,85 @@
package com.yxt.supervise.portal.biz.gdsales;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yxt.common.core.domain.EntityWithId;
import lombok.Data;
import java.util.Date;
@Data
@TableName("gd_sales_reportday")
public class GdSalesReportday extends EntityWithId {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime = new Date(); // 记录创建时间/
private String remarks; // 备注说明
private String orderDate; // 单据日期
private String serialNumber; // 编号
private String reportTime; // 上报时间
private String kmdatea; // 科目/日,大前天
private String kmdateb; // 科目/日,前天
private String kmdatec; // 科目/日,昨天
private String xjlla; // 现金流量-经营活动产生的现金流量(元),大前天
private String xjllb; // 现金流量-经营活动产生的现金流量(元),前天
private String xjllc; // 现金流量-经营活动产生的现金流量(元),昨天
private String xsxja; // 销售商品收到的现金(元),大前天
private String xsxjb; // 销售商品收到的现金(元),前天
private String xsxjc; // 销售商品收到的现金(元),昨天
private String qtxja; // 收到其他与经营活动有关的现金(元),大前天
private String qtxjb; // 收到其他与经营活动有关的现金(元),前天
private String qtxjc; // 收到其他与经营活动有关的现金(元),昨天
private String cwfxhja; // 财务分析本项合计,大前天
private String cwfxhjb; // 财务分析本项合计,前天
private String cwfxhjc; // 财务分析本项合计,昨天
private String zcfza; // 资产负债-流动资产(元),大前天
private String zcfzb; // 资产负债-流动资产(元),前天
private String zcfzc; // 资产负债-流动资产(元),昨天
private String yszka; // 应收账款(元),大前天
private String yszkb; // 应收账款(元),前天
private String yszkc; // 应收账款(元),昨天
private String ldfza; // 流动负债(元),大前天
private String ldfzb; // 流动负债(元),前天
private String ldfzc; // 流动负债(元),昨天
private String yskxa; // 预收款项(元),大前天
private String yskxb; // 预收款项(元),前天
private String yskxc; // 预收款项(元),昨天
private String qczhz; // 期初总货值
private String ycqchz; // 烟草期初货值
private String xmdatea; // 项目/日,前天
private String xmdateb; // 项目/日,昨天
private String xmdatec; // 项目/日,今天
private String zthza; // 在途货值(元),前天
private String zthzb; // 在途货值(元),昨天
private String zthzc; // 在途货值(元),今天
private String kchza; // 库存货值(元),前天
private String kchzb; // 库存货值(元),昨天
private String kchzc; // 库存货值(元),今天
private String zhyea; // 帐户余额(元)账户余额为前一天余额,前天
private String zhyeb; // 帐户余额(元)账户余额为前一天余额,昨天
private String zhyec; // 帐户余额(元)账户余额为前一天余额,今天
private String yjyszka; // 预警应收帐款(元),前天
private String yjyszkb; // 预警应收帐款(元),昨天
private String yjyszkc; // 预警应收帐款(元),今天
private String yjhja; // 主要预警指标本项合计,前天
private String yjhjb; // 主要预警指标本项合计,昨天
private String yjhjc; // 主要预警指标本项合计,今天
private String lwlsdze; // 连网连锁店,总额(元)
private String lwlsdyszk; // 连网连锁店,应收帐款(元)
private String lwlsdkcje; // 连网连锁店,扣除应收金额(元)
private String lsnjmze; // 连锁内加盟,总额(元)
private String lsnjmyszk; // 连锁内加盟,应收帐款(元)
private String lsnjmkcje; // 连锁内加盟,扣除应收金额(元)
private String pszxze; // 配送中心,总额(元)
private String pszxyszk; // 配送中心,应收帐款(元)
private String pszxkcje; // 配送中心,扣除应收金额(元)
private String lswjmze; // 连锁外加盟(销配结算),总额(元)
private String lswjmyszk; // 连锁外加盟(销配结算),应收帐款(元)
private String lswjmkcje; // 连锁外加盟(销配结算),扣除应收金额(元)
private String ycmdze; // 36524集团报烟门店仓,总额(元)
private String ycmdyszk; // 36524集团报烟门店仓,应收帐款(元)
private String ycmdkcje; // 36524集团报烟门店仓,扣除应收金额(元)
private String ycjmdze; // 烟草连锁外加盟(销配结算),总额(元)
private String ycjmdyszk; // 烟草连锁外加盟(销配结算),应收帐款(元)
private String ycjmdkcje; // 烟草连锁外加盟(销配结算),扣除应收金额(元)
}

14
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsales/GdSalesReportdayMapper.java

@ -0,0 +1,14 @@
package com.yxt.supervise.portal.biz.gdsales;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@Mapper
public interface GdSalesReportdayMapper extends BaseMapper<GdSalesReportday> {
@Delete("delete from gd_sales_reportday where orderDate=#{orderDate} ")
void clearByOrderDate(@Param("orderDate") String orderDate);
}

124
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsales/GdSalesReportdayService.java

@ -0,0 +1,124 @@
package com.yxt.supervise.portal.biz.gdsales;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
@Service
public class GdSalesReportdayService extends ServiceImpl<GdSalesReportdayMapper, GdSalesReportday> {
public GdSalesReportday clearAndInitByOrderDate(String orderDate) {
this.clearByOrderDate(orderDate); // 清除数据日的数据
String dfmt2 = DateUtil.format(new Date(), "yyyy-MM-dd HH:mm");
String preOrderDate = dayAgo(orderDate, -1); // 前一天
String befOrderDate = dayAgo(orderDate, -2); // 前两天
String thrOrderDate = dayAgo(orderDate, -3); // 前三天
GdSalesReportday preReport = fetchByOrderDate(preOrderDate);
if (preReport == null)
preReport = new GdSalesReportday();
GdSalesReportday rp = new GdSalesReportday();
rp.setOrderDate(orderDate); // 单据日期
rp.setSerialNumber("xsjyrbb" + orderDate); // 编号
rp.setReportTime(dfmt2); // 上报时间
rp.setKmdatea(thrOrderDate); // 科目/日,大前天
rp.setKmdateb(befOrderDate); // 科目/日,前天
rp.setKmdatec(preOrderDate); // 科目/日,昨天
rp.setXjlla(""); // 现金流量-经营活动产生的现金流量(元),大前天
rp.setXjllb(""); // 现金流量-经营活动产生的现金流量(元),前天
rp.setXjllc(""); // 现金流量-经营活动产生的现金流量(元),昨天
rp.setXsxja(""); // 销售商品收到的现金(元),大前天
rp.setXsxjb(""); // 销售商品收到的现金(元),前天
rp.setXsxjc(""); // 销售商品收到的现金(元),昨天
rp.setQtxja(""); // 收到其他与经营活动有关的现金(元),大前天
rp.setQtxjb(""); // 收到其他与经营活动有关的现金(元),前天
rp.setQtxjc(""); // 收到其他与经营活动有关的现金(元),昨天
rp.setCwfxhja(""); // 财务分析本项合计,大前天
rp.setCwfxhjb(""); // 财务分析本项合计,前天
rp.setCwfxhjc(""); // 财务分析本项合计,昨天
rp.setZcfza(""); // 资产负债-流动资产(元),大前天
rp.setZcfzb(""); // 资产负债-流动资产(元),前天
rp.setZcfzc(""); // 资产负债-流动资产(元),昨天
rp.setYszka(""); // 应收账款(元),大前天
rp.setYszkb(""); // 应收账款(元),前天
rp.setYszkc(""); // 应收账款(元),昨天
rp.setLdfza(""); // 流动负债(元),大前天
rp.setLdfzb(""); // 流动负债(元),前天
rp.setLdfzc(""); // 流动负债(元),昨天
rp.setYskxa(""); // 预收款项(元),大前天
rp.setYskxb(""); // 预收款项(元),前天
rp.setYskxc(""); // 预收款项(元),昨天
rp.setQczhz(""); // 期初总货值
rp.setYcqchz(""); // 烟草期初货值
rp.setXmdatea(""); // 项目/日,前天
rp.setXmdateb(""); // 项目/日,昨天
rp.setXmdatec(""); // 项目/日,今天
rp.setZthza(""); // 在途货值(元),前天
rp.setZthzb(""); // 在途货值(元),昨天
rp.setZthzc(""); // 在途货值(元),今天
rp.setKchza(""); // 库存货值(元),前天
rp.setKchzb(""); // 库存货值(元),昨天
rp.setKchzc(""); // 库存货值(元),今天
rp.setZhyea(""); // 帐户余额(元)账户余额为前一天余额,前天
rp.setZhyeb(""); // 帐户余额(元)账户余额为前一天余额,昨天
rp.setZhyec(""); // 帐户余额(元)账户余额为前一天余额,今天
rp.setYjyszka(""); // 预警应收帐款(元),前天
rp.setYjyszkb(""); // 预警应收帐款(元),昨天
rp.setYjyszkc(""); // 预警应收帐款(元),今天
rp.setYjhja(""); // 主要预警指标本项合计,前天
rp.setYjhjb(""); // 主要预警指标本项合计,昨天
rp.setYjhjc(""); // 主要预警指标本项合计,今天
rp.setLwlsdze(""); // 连网连锁店,总额(元)
rp.setLwlsdyszk(""); // 连网连锁店,应收帐款(元)
rp.setLwlsdkcje(""); // 连网连锁店,扣除应收金额(元)
rp.setLsnjmze(""); // 连锁内加盟,总额(元)
rp.setLsnjmyszk(""); // 连锁内加盟,应收帐款(元)
rp.setLsnjmkcje(""); // 连锁内加盟,扣除应收金额(元)
rp.setPszxze(""); // 配送中心,总额(元)
rp.setPszxyszk(""); // 配送中心,应收帐款(元)
rp.setPszxkcje(""); // 配送中心,扣除应收金额(元)
rp.setLswjmze(""); // 连锁外加盟(销配结算),总额(元)
rp.setLswjmyszk(""); // 连锁外加盟(销配结算),应收帐款(元)
rp.setLswjmkcje(""); // 连锁外加盟(销配结算),扣除应收金额(元)
rp.setYcmdze(""); // 36524集团报烟门店仓,总额(元)
rp.setYcmdyszk(""); // 36524集团报烟门店仓,应收帐款(元)
rp.setYcmdkcje(""); // 36524集团报烟门店仓,扣除应收金额(元)
rp.setYcjmdze(""); // 烟草连锁外加盟(销配结算),总额(元)
rp.setYcjmdyszk(""); // 烟草连锁外加盟(销配结算),应收帐款(元)
rp.setYcjmdkcje(""); // 烟草连锁外加盟(销配结算),扣除应收金额(元)
baseMapper.insert(rp);
return rp;
}
public GdSalesReportday fetchByOrderDate(String orderDate) {
QueryWrapper<GdSalesReportday> qw = new QueryWrapper<>();
qw.eq("orderDate", orderDate);
List<GdSalesReportday> list = list(qw);
if (list == null || list.isEmpty())
return null;
return list.get(0);
}
private String dayAgo(String orderDate, int offset) {
DateTime nowDate = DateUtil.parse(orderDate, "yyyy-MM-dd");
DateTime preDate = DateUtil.offsetDay(nowDate, offset);
return DateUtil.format(preDate, "yyyy-MM-dd");
}
/**
* 清理数据日期的数据
*
* @param orderDate
*/
public void clearByOrderDate(String orderDate) {
baseMapper.clearByOrderDate(orderDate);
}
}

77
yxt_supervise/supervise-portal/supervise-portal-biz/src/main/java/com/yxt/supervise/portal/biz/gdsales/GdSalesService.java

@ -90,6 +90,8 @@ public class GdSalesService extends ServiceImpl<GdSalesMapper, GdSales> {
private StoreInfoService storeInfoService; private StoreInfoService storeInfoService;
@Autowired @Autowired
private StoreIndexService storeIndexService; private StoreIndexService storeIndexService;
@Autowired
private GdSalesReportdayService gdSalesReportdayService;
public ResultBean<GdSalesLog> uploadAndInsert(MultipartFile file) { public ResultBean<GdSalesLog> uploadAndInsert(MultipartFile file) {
ResultBean rb = ResultBean.fireFail(); ResultBean rb = ResultBean.fireFail();
@ -218,6 +220,8 @@ public class GdSalesService extends ServiceImpl<GdSalesMapper, GdSales> {
if (gdLog == null) if (gdLog == null)
return rb.setMsg("上传记录未找到"); return rb.setMsg("上传记录未找到");
String orderDate = gdLog.getOrderDate(); String orderDate = gdLog.getOrderDate();
GdSalesReportday reportday = gdSalesReportdayService.clearAndInitByOrderDate(orderDate);
Date curDate = new Date(); Date curDate = new Date();
String timestr = DateUtil.format(curDate, "yyyyMMddHHmmssSSS"); String timestr = DateUtil.format(curDate, "yyyyMMddHHmmssSSS");
@ -236,8 +240,7 @@ public class GdSalesService extends ServiceImpl<GdSalesMapper, GdSales> {
// 销售汇总日报表 // 销售汇总日报表
writer.setSheet(0); writer.setSheet(0);
writer.writeCellValue(0, 1, "编号:xshzrbb" + dfmt1); xshzrbb(writer,reportday);
writer.writeCellValue(2, 1, "上报时间:" + dfmt2);
// 门店销售明细表 // 门店销售明细表
// writer.setSheet(1); // writer.setSheet(1);
@ -260,4 +263,74 @@ public class GdSalesService extends ServiceImpl<GdSalesMapper, GdSales> {
return rb.success().setData(gdLog); return rb.success().setData(gdLog);
} }
private void xshzrbb(ExcelWriter writer, GdSalesReportday reportday) {
writer.writeCellValue(0, 1, "编号:" + reportday.getSerialNumber());
writer.writeCellValue(2, 1, "上报时间:" + reportday.getReportTime());
writer.writeCellValue(1, 3,reportday.getKmdatea()); // 科目/日,大前天
writer.writeCellValue(2, 3,reportday.getKmdateb()); // 科目/日,前天
writer.writeCellValue(3, 3,reportday.getKmdatec()); // 科目/日,昨天
writer.writeCellValue(1, 4,reportday.getXjlla()); // 现金流量-经营活动产生的现金流量(元),大前天
writer.writeCellValue(2, 4,reportday.getXjllb()); // 现金流量-经营活动产生的现金流量(元),前天
writer.writeCellValue(3, 4,reportday.getXjllc()); // 现金流量-经营活动产生的现金流量(元),昨天
writer.writeCellValue(1, 5,reportday.getXsxja()); // 销售商品收到的现金(元),大前天
writer.writeCellValue(2, 5,reportday.getXsxjb()); // 销售商品收到的现金(元),前天
writer.writeCellValue(3, 5,reportday.getXsxjc()); // 销售商品收到的现金(元),昨天
writer.writeCellValue(1, 6,reportday.getQtxja()); // 收到其他与经营活动有关的现金(元),大前天
writer.writeCellValue(2, 6,reportday.getQtxjb()); // 收到其他与经营活动有关的现金(元),前天
writer.writeCellValue(3, 6,reportday.getQtxjc()); // 收到其他与经营活动有关的现金(元),昨天
writer.writeCellValue(1, 7,reportday.getCwfxhja()); // 财务分析本项合计,大前天
writer.writeCellValue(2, 7,reportday.getCwfxhjb()); // 财务分析本项合计,前天
writer.writeCellValue(3, 7,reportday.getCwfxhjc()); // 财务分析本项合计,昨天
writer.writeCellValue(1, 8,reportday.getZcfza()); // 资产负债-流动资产(元),大前天
writer.writeCellValue(2, 8,reportday.getZcfzb()); // 资产负债-流动资产(元),前天
writer.writeCellValue(3, 8,reportday.getZcfzc()); // 资产负债-流动资产(元),昨天
writer.writeCellValue(1, 9,reportday.getYszka()); // 应收账款(元),大前天
writer.writeCellValue(2, 9,reportday.getYszkb()); // 应收账款(元),前天
writer.writeCellValue(3, 9,reportday.getYszkc()); // 应收账款(元),昨天
writer.writeCellValue(1, 10,reportday.getLdfza()); // 流动负债(元),大前天
writer.writeCellValue(2, 10,reportday.getLdfzb()); // 流动负债(元),前天
writer.writeCellValue(3, 10,reportday.getLdfzc()); // 流动负债(元),昨天
writer.writeCellValue(1, 11,reportday.getYskxa()); // 预收款项(元),大前天
writer.writeCellValue(2, 11,reportday.getYskxb()); // 预收款项(元),前天
writer.writeCellValue(3, 11,reportday.getYskxc()); // 预收款项(元),昨天
writer.writeCellValue(1, 12,"期初总货值:"+reportday.getQczhz()); // 期初总货值
writer.writeCellValue(3, 12,"烟草期初货值:"+reportday.getYcqchz()); // 烟草期初货值
writer.writeCellValue(1, 13,reportday.getXmdatea()); // 项目/日,前天
writer.writeCellValue(2, 13,reportday.getXmdateb()); // 项目/日,昨天
writer.writeCellValue(3, 13,reportday.getXmdatec()); // 项目/日,今天
writer.writeCellValue(1, 14,reportday.getZthza()); // 在途货值(元),前天
writer.writeCellValue(2, 14,reportday.getZthzb()); // 在途货值(元),昨天
writer.writeCellValue(3, 14,reportday.getZthzc()); // 在途货值(元),今天
writer.writeCellValue(1, 15,reportday.getKchza()); // 库存货值(元),前天
writer.writeCellValue(2, 15,reportday.getKchzb()); // 库存货值(元),昨天
writer.writeCellValue(3, 15,reportday.getKchzc()); // 库存货值(元),今天
writer.writeCellValue(1, 16,reportday.getZhyea()); // 帐户余额(元)账户余额为前一天余额,前天
writer.writeCellValue(2, 16,reportday.getZhyeb()); // 帐户余额(元)账户余额为前一天余额,昨天
writer.writeCellValue(3, 16,reportday.getZhyec()); // 帐户余额(元)账户余额为前一天余额,今天
writer.writeCellValue(1, 17,reportday.getYjyszka()); // 预警应收帐款(元),前天
writer.writeCellValue(2, 17,reportday.getYjyszkb()); // 预警应收帐款(元),昨天
writer.writeCellValue(3, 17,reportday.getYjyszkc()); // 预警应收帐款(元),今天
writer.writeCellValue(1, 18,reportday.getYjhja()); // 主要预警指标本项合计,前天
writer.writeCellValue(2, 18,reportday.getYjhjb()); // 主要预警指标本项合计,昨天
writer.writeCellValue(3, 18,reportday.getYjhjc()); // 主要预警指标本项合计,今天
writer.writeCellValue(1, 21,reportday.getLwlsdze()); // 连网连锁店,总额(元)
writer.writeCellValue(2, 21,reportday.getLwlsdyszk()); // 连网连锁店,应收帐款(元)
writer.writeCellValue(3, 21,reportday.getLwlsdkcje()); // 连网连锁店,扣除应收金额(元)
writer.writeCellValue(1, 22,reportday.getLsnjmze()); // 连锁内加盟,总额(元)
writer.writeCellValue(2, 22,reportday.getLsnjmyszk()); // 连锁内加盟,应收帐款(元)
writer.writeCellValue(3, 22,reportday.getLsnjmkcje()); // 连锁内加盟,扣除应收金额(元)
writer.writeCellValue(1, 23,reportday.getPszxze()); // 配送中心,总额(元)
writer.writeCellValue(2, 23,reportday.getPszxyszk()); // 配送中心,应收帐款(元)
writer.writeCellValue(3, 23,reportday.getPszxkcje()); // 配送中心,扣除应收金额(元)
writer.writeCellValue(1, 24,reportday.getLswjmze()); // 连锁外加盟(销配结算),总额(元)
writer.writeCellValue(2, 24,reportday.getLswjmyszk()); // 连锁外加盟(销配结算),应收帐款(元)
writer.writeCellValue(3, 24,reportday.getLswjmkcje()); // 连锁外加盟(销配结算),扣除应收金额(元)
writer.writeCellValue(1, 25,reportday.getYcmdze()); // 36524集团报烟门店仓,总额(元)
writer.writeCellValue(2, 25,reportday.getYcmdyszk()); // 36524集团报烟门店仓,应收帐款(元)
writer.writeCellValue(3, 25,reportday.getYcmdkcje()); // 36524集团报烟门店仓,扣除应收金额(元)
writer.writeCellValue(1, 26,reportday.getYcjmdze()); // 烟草连锁外加盟(销配结算),总额(元)
writer.writeCellValue(2, 26,reportday.getYcjmdyszk()); // 烟草连锁外加盟(销配结算),应收帐款(元)
writer.writeCellValue(3, 26,reportday.getYcjmdkcje()); // 烟草连锁外加盟(销配结算),扣除应收金额(元)
}
} }

Loading…
Cancel
Save