|
@@ -694,77 +694,133 @@
|
|
|
resultType="com.yh.saas.plugin.yiliangyiyun.entity.ContractManagementInfo">
|
|
|
SELECT
|
|
|
'采购重量' AS type,
|
|
|
- SUM( wioi.net_weight )+ IFNULL( SUM( wioi4.net_weight ), 0 )+ IFNULL( SUM( wioi2.net_weight ), 0 )- IFNULL( SUM( wioi3.net_weight ), 0 ) AS profit
|
|
|
+ SUM(
|
|
|
+ IFNULL((
|
|
|
+ SELECT
|
|
|
+ sum( IFNULL( wioi.net_weight, 0 ) )
|
|
|
+ FROM
|
|
|
+ warehouse_in_out_info wioi
|
|
|
+ WHERE
|
|
|
+ wioi.base_id = wbi1.id
|
|
|
+ AND wioi.status_flag = '3'
|
|
|
+ AND ( wioi.in_out_type = '采购入库' OR wioi.in_out_type = '收购入库' )
|
|
|
+ AND wioi.delete_flag = '0'
|
|
|
+ AND (DATE_FORMAT(wioi.in_out_date,"%Y%m%d") >=
|
|
|
+ DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
+ AND (DATE_FORMAT(wioi.in_out_date,"%Y%m%d") <=
|
|
|
+ DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
+ ),
|
|
|
+ 0
|
|
|
+ )) + SUM(
|
|
|
+ IFNULL((
|
|
|
+ SELECT
|
|
|
+ sum( IFNULL( wioi4.net_weight, 0 ) )
|
|
|
+ FROM
|
|
|
+ warehouse_in_out_info wioi4
|
|
|
+ WHERE
|
|
|
+ wioi4.base_id = wbi2.id
|
|
|
+ AND wioi4.status_flag = '3'
|
|
|
+ AND wioi4.in_out_type = '移库入库'
|
|
|
+ AND wioi4.delete_flag = '0'
|
|
|
+ AND (DATE_FORMAT(wioi4.in_out_date,"%Y%m%d") >=
|
|
|
+ DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
+ AND (DATE_FORMAT(wioi4.in_out_date,"%Y%m%d") <=
|
|
|
+ DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
+ ),
|
|
|
+ 0
|
|
|
+ )) + SUM(
|
|
|
+ IFNULL((
|
|
|
+ SELECT
|
|
|
+ sum( IFNULL( wioi2.net_weight, 0 ) )
|
|
|
+ FROM
|
|
|
+ warehouse_in_out_info wioi2
|
|
|
+ WHERE
|
|
|
+ wioi2.base_id = wbi2.id
|
|
|
+ AND wioi2.status_flag = '3'
|
|
|
+ AND wioi2.in_out_type = '销售出库'
|
|
|
+ AND wioi2.delete_flag = '0'
|
|
|
+ AND (DATE_FORMAT(wioi2.in_out_date,"%Y%m%d") >=
|
|
|
+ DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
+ AND (DATE_FORMAT(wioi2.in_out_date,"%Y%m%d") <=
|
|
|
+ DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
+ ),
|
|
|
+ 0
|
|
|
+ )) - SUM(
|
|
|
+ IFNULL((
|
|
|
+ SELECT
|
|
|
+ sum( IFNULL( wioi3.net_weight, 0 ) )
|
|
|
+ FROM
|
|
|
+ warehouse_in_out_info wioi3
|
|
|
+ WHERE
|
|
|
+ wioi3.base_id = wbi2.id
|
|
|
+ AND wioi3.status_flag = '3'
|
|
|
+ AND wioi3.in_out_type = '退库'
|
|
|
+ AND wioi3.delete_flag = '0'
|
|
|
+ AND (DATE_FORMAT(wioi3.in_out_date,"%Y%m%d") >=
|
|
|
+ DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
+ AND (DATE_FORMAT(wioi3.in_out_date,"%Y%m%d") <=
|
|
|
+ DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
+ ),
|
|
|
+ 0
|
|
|
+ )) AS profit
|
|
|
FROM
|
|
|
warehouse_base_info wbi
|
|
|
- LEFT JOIN warehouse_in_out_info wioi ON wioi.base_id = wbi.id
|
|
|
- AND wbi.warehouse_type = '1'
|
|
|
- AND (DATE_FORMAT(wioi.in_out_date,"%Y%m%d") >=
|
|
|
- DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
- AND (DATE_FORMAT(wioi.in_out_date,"%Y%m%d") <=
|
|
|
- DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
- AND wioi.status_flag = '3'
|
|
|
- AND ( wioi.in_out_type = '采购入库' OR wioi.in_out_type = '收购入库' )
|
|
|
- AND wioi.delete_flag = '0'
|
|
|
- LEFT JOIN warehouse_in_out_info wioi2 ON wioi2.base_id = wbi.id
|
|
|
- AND wbi.warehouse_type = '2'
|
|
|
- AND wbi.create_type = '1'
|
|
|
- AND (DATE_FORMAT(wioi2.in_out_date,"%Y%m%d") >=
|
|
|
- DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
- AND (DATE_FORMAT(wioi2.in_out_date,"%Y%m%d") <=
|
|
|
- DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
- AND wioi2.status_flag = '3'
|
|
|
- AND wioi2.in_out_type = '销售出库'
|
|
|
- AND wioi2.delete_flag = '0'
|
|
|
- LEFT JOIN warehouse_in_out_info wioi3 ON wioi3.base_id = wbi.id
|
|
|
- AND wbi.warehouse_type = '2'
|
|
|
- AND wbi.create_type = '1'
|
|
|
- AND (DATE_FORMAT(wioi3.in_out_date,"%Y%m%d") >=
|
|
|
- DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
- AND (DATE_FORMAT(wioi3.in_out_date,"%Y%m%d") <=
|
|
|
- DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
- AND wioi3.status_flag = '3'
|
|
|
- AND wioi3.in_out_type = '退库'
|
|
|
- AND wioi3.delete_flag = '0'
|
|
|
- LEFT JOIN warehouse_in_out_info wioi4 ON wioi4.base_id = wbi.id
|
|
|
- AND wbi.warehouse_type = '2'
|
|
|
- AND wbi.create_type = '1'
|
|
|
- AND (DATE_FORMAT(wioi4.in_out_date,"%Y%m%d") >=
|
|
|
- DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
- AND (DATE_FORMAT(wioi4.in_out_date,"%Y%m%d") <=
|
|
|
- DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
- AND wioi4.status_flag = '3'
|
|
|
- AND wioi4.in_out_type = '移库入库'
|
|
|
- AND wioi4.delete_flag = '0'
|
|
|
+ LEFT JOIN warehouse_base_info wbi1 ON wbi1.id = wbi.id
|
|
|
+ AND wbi1.warehouse_type = '1'
|
|
|
+ AND wbi1.delete_flag = '0'
|
|
|
+ LEFT JOIN warehouse_base_info wbi2 ON wbi2.id = wbi.id
|
|
|
+ AND wbi2.warehouse_type = '2'
|
|
|
+ AND wbi2.delete_flag = '0'
|
|
|
+ AND wbi2.create_type = '1'
|
|
|
WHERE
|
|
|
- wbi.comp_id = #{compId}
|
|
|
- AND wbi.delete_flag = '0' UNION ALL
|
|
|
+ wbi.comp_id = #{compId}
|
|
|
+ AND wbi.delete_flag = '0'
|
|
|
+ UNION ALL
|
|
|
SELECT
|
|
|
'销售重量' AS type,
|
|
|
- SUM( wioi1.net_weight )- IFNULL( SUM( wioi2.net_weight ), 0 ) AS profit
|
|
|
+ SUM(
|
|
|
+ IFNULL((
|
|
|
+ SELECT
|
|
|
+ sum( IFNULL( wioi1.net_weight, 0 ) )
|
|
|
+ FROM
|
|
|
+ warehouse_in_out_info wioi1
|
|
|
+ WHERE
|
|
|
+ wioi1.base_id = wbi.id
|
|
|
+ AND wioi1.status_flag = '3'
|
|
|
+ AND wioi1.in_out_type = '销售出库'
|
|
|
+ AND wioi1.delete_flag = '0'
|
|
|
+ AND (DATE_FORMAT(wioi1.in_out_date,"%Y%m%d") >=
|
|
|
+ DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
+ AND (DATE_FORMAT(wioi1.in_out_date,"%Y%m%d") <=
|
|
|
+ DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
+ ),
|
|
|
+ 0
|
|
|
+ ))- SUM(
|
|
|
+ IFNULL((
|
|
|
+ SELECT
|
|
|
+ sum( IFNULL( wioi2.net_weight, 0 ) )
|
|
|
+ FROM
|
|
|
+ warehouse_in_out_info wioi2
|
|
|
+ WHERE
|
|
|
+ wioi2.base_id = wbi.id
|
|
|
+ AND wioi2.status_flag = '3'
|
|
|
+ AND wioi2.in_out_type = '退库'
|
|
|
+ AND wioi2.delete_flag = '0'
|
|
|
+ AND (DATE_FORMAT(wioi2.in_out_date,"%Y%m%d") >=
|
|
|
+ DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
+ AND (DATE_FORMAT(wioi2.in_out_date,"%Y%m%d") <=
|
|
|
+ DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
+ ),
|
|
|
+ 0
|
|
|
+ )) AS profit
|
|
|
FROM
|
|
|
warehouse_base_info wbi
|
|
|
- LEFT JOIN warehouse_in_out_info wioi1 ON wioi1.base_id = wbi.id
|
|
|
- AND wioi1.in_out_type = '销售出库'
|
|
|
- AND wioi1.delete_flag = '0'
|
|
|
- AND (DATE_FORMAT(wioi1.in_out_date,"%Y%m%d") >=
|
|
|
- DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
- AND (DATE_FORMAT(wioi1.in_out_date,"%Y%m%d") <=
|
|
|
- DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
- AND wioi1.status_flag = '3'
|
|
|
- LEFT JOIN warehouse_in_out_info wioi2 ON wioi2.base_id = wbi.id
|
|
|
- AND wbi.warehouse_type = '1'
|
|
|
- AND (DATE_FORMAT(wioi2.in_out_date,"%Y%m%d") >=
|
|
|
- DATE_FORMAT(#{startDate},"%Y%m%d"))
|
|
|
- AND (DATE_FORMAT(wioi2.in_out_date,"%Y%m%d") <=
|
|
|
- DATE_FORMAT(#{endDate},"%Y%m%d"))
|
|
|
- AND wioi2.status_flag = '3'
|
|
|
- AND wioi2.in_out_type = '退库'
|
|
|
- AND wioi2.delete_flag = '0'
|
|
|
WHERE
|
|
|
- wbi.comp_id = #{compId}
|
|
|
- AND wbi.delete_flag = '0' UNION ALL
|
|
|
- SELECT
|
|
|
+ wbi.comp_id = #{compId}
|
|
|
+ AND wbi.delete_flag = '0'
|
|
|
+ AND wbi.warehouse_type = '1'
|
|
|
+ UNION ALL
|
|
|
+ SELECT
|
|
|
'支付粮款' AS type,
|
|
|
IFNULL( sum( ei1.amount_money ), 0 ) - IFNULL( sum( ei2.amount_money ), 0 )+ IFNULL( sum( ei3.amount_money ), 0 ) - IFNULL( sum( ei4.amount_money ), 0 ) AS profit
|
|
|
FROM
|