|
|
@ -2,8 +2,15 @@ package com.yxt.supervise.portal.biz.gdsales; |
|
|
|
|
|
|
|
import cn.hutool.core.date.DateTime; |
|
|
|
import cn.hutool.core.date.DateUtil; |
|
|
|
import cn.hutool.core.util.StrUtil; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
|
|
|
import com.yxt.supervise.portal.biz.gdinstorage.GdInstorageCountService; |
|
|
|
import com.yxt.supervise.portal.biz.gdinstorage.GdInstorageJmdService; |
|
|
|
import com.yxt.supervise.portal.biz.gdinstorage.GdInstorageYcService; |
|
|
|
import com.yxt.supervise.portal.biz.gdinventory.GdInventoryOkService; |
|
|
|
import com.yxt.supervise.portal.biz.gdwholesale.GdWholesaleService; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import java.util.Date; |
|
|
@ -12,87 +19,128 @@ import java.util.List; |
|
|
|
@Service |
|
|
|
public class GdSalesReportdayService extends ServiceImpl<GdSalesReportdayMapper, GdSalesReportday> { |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private GdSalesService gdSalesService; |
|
|
|
@Autowired |
|
|
|
private GdSalesYcService gdSalesYcService; |
|
|
|
@Autowired |
|
|
|
private GdWholesaleService gdWholesaleService; |
|
|
|
@Autowired |
|
|
|
private GdInstorageJmdService gdInstorageJmdService; |
|
|
|
@Autowired |
|
|
|
private GdInstorageYcService gdInstorageYcService; |
|
|
|
@Autowired |
|
|
|
private GdInventoryOkService gdInventoryOkService; |
|
|
|
@Autowired |
|
|
|
private GdInstorageCountService gdInstorageCountService; |
|
|
|
|
|
|
|
public GdSalesReportday clearAndInitByOrderDate(String orderDate) { |
|
|
|
this.clearByOrderDate(orderDate); // 清除数据日的数据
|
|
|
|
|
|
|
|
String dfmt2 = DateUtil.format(new Date(), "yyyy-MM-dd HH:mm"); |
|
|
|
Date curDate = new Date(); |
|
|
|
String dfmt = DateUtil.format(curDate, "yyyy-MM-dd"); |
|
|
|
String dfmt2 = DateUtil.format(curDate, "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 preRp = fetchByOrderDate(preOrderDate); |
|
|
|
if (preRp == null) |
|
|
|
preRp = new GdSalesReportday(); |
|
|
|
|
|
|
|
GdSalesReportday rp = new GdSalesReportday(); |
|
|
|
rp.setOrderDate(orderDate); // 单据日期
|
|
|
|
rp.setSerialNumber("xsjyrbb" + orderDate); // 编号
|
|
|
|
rp.setSerialNumber("xsjyrbb" + orderDate.replace("-", "")); // 编号
|
|
|
|
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.setKmdatea(befOrderDate); // 科目/日,大前天
|
|
|
|
rp.setKmdateb(preOrderDate); // 科目/日,前天
|
|
|
|
rp.setKmdatec(orderDate); // 科目/日,昨天
|
|
|
|
// rp.setXjlla(""); // 现金流量-经营活动产生的现金流量(元),大前天
|
|
|
|
// rp.setXjllb(""); // 现金流量-经营活动产生的现金流量(元),前天
|
|
|
|
// rp.setXjllc(""); // 现金流量-经营活动产生的现金流量(元),昨天
|
|
|
|
rp.setXsxja(preRp.getXsxjb()); // 销售商品收到的现金(元),大前天
|
|
|
|
rp.setXsxjb(preRp.getXsxjc()); // 销售商品收到的现金(元),前天
|
|
|
|
rp.setXsxjc(0); // 销售商品收到的现金(元),昨天 //后面计算
|
|
|
|
// rp.setQtxja(""); // 收到其他与经营活动有关的现金(元),大前天
|
|
|
|
// rp.setQtxjb(""); // 收到其他与经营活动有关的现金(元),前天
|
|
|
|
// rp.setQtxjc(""); // 收到其他与经营活动有关的现金(元),昨天
|
|
|
|
rp.setCwfxhja(preRp.getCwfxhjb()); // 财务分析本项合计,大前天
|
|
|
|
rp.setCwfxhjb(preRp.getCwfxhjc()); // 财务分析本项合计,前天
|
|
|
|
rp.setCwfxhjc(0); // 财务分析本项合计,昨天 //后面计算
|
|
|
|
// 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(""); // 烟草连锁外加盟(销配结算),扣除应收金额(元)
|
|
|
|
rp.setXmdatea(StrUtil.isBlank(preRp.getXmdateb()) ? preOrderDate : preRp.getXmdateb()); // 项目/日,前天
|
|
|
|
rp.setXmdateb(StrUtil.isBlank(preRp.getXmdatec()) ? orderDate : preRp.getXmdatec()); // 项目/日,昨天
|
|
|
|
rp.setXmdatec(dfmt); // 项目/日,今天
|
|
|
|
rp.setZthza(preRp.getZthzb()); // 在途货值(元),前天
|
|
|
|
rp.setZthzb(preRp.getZthzc()); // 在途货值(元),昨天
|
|
|
|
rp.setZthzc(0); // 在途货值(元),今天 // 计算
|
|
|
|
rp.setKchza(preRp.getKchzb()); // 库存货值(元),前天
|
|
|
|
rp.setKchzb(preRp.getKchzc()); // 库存货值(元),昨天
|
|
|
|
rp.setKchzc(0); // 库存货值(元),今天 // 计算
|
|
|
|
// rp.setZhyea(""); // 帐户余额(元)账户余额为前一天余额,前天
|
|
|
|
// rp.setZhyeb(""); // 帐户余额(元)账户余额为前一天余额,昨天
|
|
|
|
// rp.setZhyec(""); // 帐户余额(元)账户余额为前一天余额,今天
|
|
|
|
// rp.setYjyszka(""); // 预警应收帐款(元),前天
|
|
|
|
// rp.setYjyszkb(""); // 预警应收帐款(元),昨天
|
|
|
|
// rp.setYjyszkc(""); // 预警应收帐款(元),今天
|
|
|
|
// rp.setYjhja(""); // 主要预警指标本项合计,前天
|
|
|
|
// rp.setYjhjb(""); // 主要预警指标本项合计,昨天
|
|
|
|
// rp.setYjhjc(""); // 主要预警指标本项合计,今天
|
|
|
|
double xsLwlsd = gdSalesService.amountOfLwlsdDay(orderDate); |
|
|
|
rp.setLwlsdze(xsLwlsd); // 连网连锁店,总额(元)
|
|
|
|
// rp.setLwlsdyszk(""); // 连网连锁店,应收帐款(元)
|
|
|
|
rp.setLwlsdkcje(xsLwlsd); // 连网连锁店,扣除应收金额(元)
|
|
|
|
|
|
|
|
double xsLsnjm = gdSalesService.amountOfLsnjmDay(orderDate); |
|
|
|
rp.setLsnjmze(xsLsnjm); // 连锁内加盟,总额(元)
|
|
|
|
// rp.setLsnjmyszk(""); // 连锁内加盟,应收帐款(元)
|
|
|
|
rp.setLsnjmkcje(xsLsnjm); // 连锁内加盟,扣除应收金额(元)
|
|
|
|
|
|
|
|
double xsPszx = gdWholesaleService.amountOfDay(orderDate); |
|
|
|
rp.setPszxze(xsPszx); // 配送中心,总额(元)
|
|
|
|
// rp.setPszxyszk(""); // 配送中心,应收帐款(元)
|
|
|
|
rp.setPszxkcje(xsPszx); // 配送中心,扣除应收金额(元)
|
|
|
|
|
|
|
|
double xsLswjm = gdInstorageJmdService.amountOfDay(orderDate); |
|
|
|
rp.setLswjmze(xsLswjm); // 连锁外加盟(销配结算),总额(元)
|
|
|
|
// rp.setLswjmyszk(""); // 连锁外加盟(销配结算),应收帐款(元)
|
|
|
|
rp.setLswjmkcje(xsLswjm); // 连锁外加盟(销配结算),扣除应收金额(元)
|
|
|
|
|
|
|
|
double xsYc = gdSalesYcService.amountOfDay(orderDate); |
|
|
|
rp.setYcmdze(xsYc); // 36524集团报烟门店仓,总额(元)
|
|
|
|
// rp.setYcmdyszk(""); // 36524集团报烟门店仓,应收帐款(元)
|
|
|
|
rp.setYcmdkcje(xsYc); // 36524集团报烟门店仓,扣除应收金额(元)
|
|
|
|
|
|
|
|
double xsYcJmd = gdInstorageYcService.amountOfDayJmd(orderDate); |
|
|
|
rp.setYcjmdze(xsYcJmd); // 烟草连锁外加盟(销配结算),总额(元)
|
|
|
|
// rp.setYcjmdyszk(""); // 烟草连锁外加盟(销配结算),应收帐款(元)
|
|
|
|
rp.setYcjmdkcje(xsYcJmd); // 烟草连锁外加盟(销配结算),扣除应收金额(元)
|
|
|
|
|
|
|
|
double xshz1 = Math.round((xsLwlsd + xsLsnjm + xsPszx + xsLswjm + xsYc + xsYcJmd) * 100) / 100; |
|
|
|
rp.setXsxjc(xshz1); // 销售商品收到的现金(元),昨天 //后面计算
|
|
|
|
rp.setCwfxhjc(xshz1); // 财务分析本项合计,昨天 //后面计算
|
|
|
|
|
|
|
|
//在途货值
|
|
|
|
double zthz = gdInstorageCountService.amountZaitu(); |
|
|
|
rp.setZthzc(0); // 在途货值(元),今天 // 计算
|
|
|
|
|
|
|
|
//库存货值
|
|
|
|
double kzhz = gdInventoryOkService.amountCurrent(); |
|
|
|
rp.setKchzc(0); // 库存货值(元),今天 // 计算
|
|
|
|
|
|
|
|
baseMapper.insert(rp); |
|
|
|
return rp; |
|
|
|