Browse Source

优化

master
dimengzhe 1 year ago
parent
commit
7711ac4d28
  1. 69
      doc/databases/报表中心.sql

69
doc/databases/报表中心.sql

@ -3,19 +3,15 @@ UPDATE daily_report r
INNER JOIN (
select sum(v.scount) as scount, v.useOrgSid, v.modelSid, v.modelConfigSid
from (
select bo.platformNo as scount, si.useOrgSid, si.modelSid, si.configSid modelConfigSid
select ifnull(sum(si.num), 0) as scount, si.useOrgSid, si.modelSid, si.configSid modelConfigSid
from anrui_base.bus_vehicle_order bo
left join anrui_scm.scm_apply_inbound si on bo.purchaseRequisitionSid = si.vehicleOrderSid
where si.nodeState != '已办结'
where (si.nodeState != '已办结' and si.nodeState != '终止')
and bo.isDelete <> 1
and LENGTH(offlineDate) > 0
and bo.sid not in (select bbbbo.linkSid from anrui_buscenter.bus_sales_vehicle_order bbbbo)
union all
select bo.platformNo as scount, bo.useOrgSid, bd.vehicleSid modelSid, bd.configSid modelConfigSid
from anrui_base.bus_vehicle_order bo
left join anrui_base.bus_vehicle_apply_detail bd on bd.sid = bo.purchaseApplyMediumModelSid
where LENGTH(offlineDate) < 1
and bo.sid not in (select bbbbo.linkSid from anrui_buscenter.bus_sales_vehicle_order bbbbo)) as v
group by bo.createOrgSid
) as v
GROUP BY v.`useOrgSid`,
v.`modelSid`,
v.`modelConfigSid`
@ -31,19 +27,15 @@ UPDATE daily_report r
INNER JOIN (
select sum(v.scount) as scount, v.useOrgSid, v.modelSid, v.modelConfigSid
from (
select bo.platformNo as scount, si.useOrgSid, si.modelSid, si.configSid modelConfigSid
select ifnull(sum(si.num), 0) as scount, si.useOrgSid, si.modelSid, si.configSid modelConfigSid
from anrui_base.bus_vehicle_order bo
left join anrui_scm.scm_apply_inbound si on bo.purchaseRequisitionSid = si.vehicleOrderSid
where si.nodeState != '已办结'
where (si.nodeState != '已办结' and si.nodeState != '终止')
and bo.isDelete <> 1
and LENGTH(offlineDate) > 0
and bo.sid in (select bbbbo.linkSid from anrui_buscenter.bus_sales_vehicle_order bbbbo)
union all
select bo.platformNo as scount, bo.useOrgSid, bd.vehicleSid modelSid, bd.configSid modelConfigSid
from anrui_base.bus_vehicle_order bo
left join anrui_base.bus_vehicle_apply_detail bd on bd.sid = bo.purchaseApplyMediumModelSid
where LENGTH(offlineDate) < 1
and bo.sid in (select bbbbo.linkSid from anrui_buscenter.bus_sales_vehicle_order bbbbo)) as v
group by bo.createOrgSid
) as v
GROUP BY v.`useOrgSid`,
v.`modelSid`,
v.`modelConfigSid`
@ -321,13 +313,14 @@ WHERE DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
-- 本年销售全款
UPDATE daily_report r
INNER JOIN (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 bv.salesDate like concat('%', DATE_FORMAT(CURDATE(), '%Y'), '%')
and bvoa.saleTypeKey = '001'
group by useOrgSid, modelSid, modelConfigSid
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 bv.salesDate like concat('%', DATE_FORMAT(CURDATE(), '%Y'), '%')
and bvoa.saleTypeKey = '001'
group by bv.useOrgSid, bv.modelSid, bv.modelConfigSid) ss group by ss.useOrgSid, ss.modelSid, ss.modelConfigSid
) AS s ON r.useOrgSid = s.useOrgSid
AND r.vehModelSid = s.modelSid
AND r.vehMConfigSid = s.modelConfigSid
@ -335,13 +328,14 @@ SET r.`sale_full_year` = s.scount
WHERE DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
-- 本年销售贷款
UPDATE daily_report r
INNER JOIN (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 bv.salesDate like concat('%', DATE_FORMAT(CURDATE(), '%Y'), '%')
and bvoa.saleTypeKey = '002'
group by useOrgSid, modelSid, modelConfigSid
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 bv.salesDate like concat('%', DATE_FORMAT(CURDATE(), '%Y'), '%')
and bvoa.saleTypeKey = '002'
group by bv.useOrgSid, bv.modelSid, bv.modelConfigSid) ss group by ss.useOrgSid, ss.modelSid, ss.modelConfigSid
) AS s ON r.useOrgSid = s.useOrgSid
AND r.vehModelSid = s.modelSid
AND r.vehMConfigSid = s.modelConfigSid
@ -575,9 +569,14 @@ update daily_report r inner join (
on r.useOrgSid = s.useOrgSid
and r.vehModelSid = s.vehModelSid
and r.vehMConfigSid = s.vehMConfigSid
set saleOfStockRatio =if(s.subtotal = 0, stock_subtotal + pcOrder_subtotal,
ROUND((stock_subtotal + pcOrder_subtotal) / ROUND(s.subtotal / 3, 2), 2)),
stock_total = (stock_subtotal + pcOrder_subtotal)
set saleOfStockRatio =if(ROUND((stock_subtotal + pcOrder_subtotal) / ROUND(s.subtotal / 3, 2), 2) = 0,
stock_subtotal + pcOrder_subtotal,
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)
where DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
-- ==============================================
@ -625,7 +624,7 @@ update daily_report r inner join (
on r.useOrgSid = s.useOrgSid
and r.vehModelSid = s.vehModelSid
and r.vehMConfigSid = s.vehMConfigSid
set arrears_carry_veh_amount = s.scount
set arrears_carry_veh_amount = ROUND(s.scount / 10000, 2)
where DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();
@ -663,7 +662,7 @@ update daily_report r inner join (
group by bv.sid, bo.useOrgSid, bm.modelSid, bm.modelConfigSid
having fd.reveivableMoney > ifnull(sum(fs.subscriptionMoney), 0)) as s on
r.useOrgSid = s.useOrgSid AND r.vehModelSid = s.modelSid AND r.vehMConfigSid = s.modelConfigSid
SET r.`loan_not_amount`=s.scount
SET r.`loan_not_amount`=ROUND(s.scount / 10000, 2)
WHERE DATE_FORMAT(createTime, '%Y-%m-%d') = CURDATE();

Loading…
Cancel
Save