Browse Source

优化

master
dimengzhe 1 year ago
parent
commit
748407a00b
  1. 45
      doc/databases/报表中心.sql

45
doc/databases/报表中心.sql

@ -575,26 +575,39 @@ WHERE DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
-- 存销比
update daily_report r inner join (
select sum(ss.scount) as scount, ss.modelSid, ss.modelConfigSid, ss.useOrgSid
from (select count(bv.id) as scount, bv.modelSid, bv.modelConfigSid, bv.useOrgSid
from anrui_base.base_vehicle bv
left join anrui_base.base_vehicle_out bvo on bv.sid = bvo.vinSid
left join anrui_base.base_vehicle_out_apply bvoa on bvoa.sid = bvo.mainSid
where (DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH), '%Y-%m')
OR DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 2 MONTH), '%Y-%m')
OR DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 3 MONTH), '%Y-%m')
)
and (bvoa.saleTypeKey = '001' or bvoa.saleTypeKey = '002')
group by bv.useOrgSid, bv.modelSid, bv.modelConfigSid) ss
group by ss.useOrgSid, ss.modelSid, ss.modelConfigSid) s
select ddr.useOrgSid,
ddr.vehModelSid,
ddr.vehMConfigSid,
(select ifnull(sum(ss.scount), 0) as scount
from (select count(bv.id) as scount, bv.modelSid, bv.modelConfigSid, bv.useOrgSid
from anrui_base.base_vehicle bv
left join anrui_base.base_vehicle_out bvo on bv.sid = bvo.vinSid
left join anrui_base.base_vehicle_out_apply bvoa on bvoa.sid = bvo.mainSid
where (DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE
DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 1 MONTH), '%Y-%m')
OR DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE
DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 2 MONTH), '%Y-%m')
OR DATE_FORMAT(bv.salesDate, '%Y-%m') LIKE
DATE_FORMAT(DATE_SUB(CURDATE(), INTERVAL 3 MONTH), '%Y-%m')
)
and (bvoa.saleTypeKey = '001' or bvoa.saleTypeKey = '002')
group by bv.useOrgSid, bv.modelSid, bv.modelConfigSid) ss
where ss.useOrgSid = ddr.useOrgSid
and ss.modelSid = ddr.vehModelSid
and ss.modelConfigSid = ddr.vehMConfigSid) as subtotal
from daily_report ddr
where DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE()
group by ddr.useOrgSid, ddr.vehModelSid, ddr.vehMConfigSid
) s
on r.useOrgSid = s.useOrgSid
and r.vehModelSid = s.modelSid
and r.vehMConfigSid = s.modelConfigSid
set saleOfStockRatio =if(ROUND(s.scount / 3, 2) = 0,
and r.vehModelSid = s.vehModelSid
and r.vehMConfigSid = s.vehMConfigSid
set saleOfStockRatio =if(ROUND(s.subtotal / 3, 2) = 0,
stock_subtotal + pcOrder_subtotal,
ROUND((stock_subtotal + pcOrder_subtotal) / ROUND(s.scount / 3, 2), 2))
ROUND((stock_subtotal + pcOrder_subtotal) / ROUND(s.subtotal / 3, 2), 2))
where DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
-- 库存小计
update daily_report
set stock_total = (stock_subtotal + pcOrder_subtotal)

Loading…
Cancel
Save