diff --git a/doc/databases/报表中心.sql b/doc/databases/报表中心.sql index cb0b1b37c7..c2ec6c3ad6 100644 --- a/doc/databases/报表中心.sql +++ b/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();