|
@@ -3,91 +3,25 @@
|
|
|
<mapper namespace="com.steerinfo.dil.mapper.ShipDynamicsMapper">
|
|
|
<!-- 获取船舶动态表数据 -->
|
|
|
<select id="selectAll" resultType="java.util.Map" parameterType="java.util.Map">
|
|
|
- SELECT * FROM (
|
|
|
- select DISTINCT
|
|
|
- db.BATCH_ID "batchId",
|
|
|
- DBI2.BATCH_INFACOTRY_ID "batchInfacoryId",
|
|
|
- db.result_foreign_ship_name "shipName",
|
|
|
- rm.material_name "materialName",
|
|
|
- adn.NOTICE_DELIVERY_TIME "dateOfLoans",
|
|
|
- adn.RESULT_NUMBER_OF_LOANS "numberOfLoans",
|
|
|
- rp.port_name "portName",
|
|
|
- wgm.gm_tonnage "tonnage",
|
|
|
- rc.capacity_number "capacity",
|
|
|
- tlsr.RESULT_ACTUAL_INSTALLATIONS "capacityNumber",
|
|
|
- tlsr.RESULT_OUT_PORT_TIME "outPortTime",
|
|
|
- tlsr.RESULT_ARRIVAL_PORT_TIME "dgsj",
|
|
|
- tsl.LOCATION_STATUS "locationStatus",
|
|
|
- tsl.LOCATION_VALUE "locationValue",
|
|
|
- NVL(ADN.RESULT_MEMO,'块矿') "materialTypeName",
|
|
|
- RMT.MATERIAL_TYPE_ID "materialTypeId",
|
|
|
- OSI.INSTRUCTIONS_STATUS "instructionStatus"
|
|
|
- from AMSSHIP_DELIVERY_NOTICE adn
|
|
|
- LEFT JOIN DIL_BATCH_INFACOTRY DBI2 on adn.batch_id=DBI2.BATCH_INFACOTRY_ID
|
|
|
- LEFT JOIN AMSSHIP_DELIVERY_ATTORNEY ADA ON ADA.BATCH_ID = adn.batch_id
|
|
|
- JOIN DIL_BATCH DB ON DBI2.BATCH_ID=DB.BATCH_ID
|
|
|
- join rms_material rm on db.material_id=rm.material_id
|
|
|
- left join rms_port rp on rp.port_id=ADA.DOWN_SWIM_PORT_ID
|
|
|
- left join WMSH_GRID_MATERIAL wgm on wgm.batch_id = DB.BATCH_ID AND ADA.DOWN_SWIM_PORT_ID=WGM.PORT_ID
|
|
|
- left join TMSSHIP_LOAD_SHIP_RESULT tlsr on DBI2.BATCH_INFACOTRY_ID=tlsr.batch_id
|
|
|
- left join tmsship_total_result ttr on ttr.result_id=tlsr.TOTAL_RESULT_ID
|
|
|
- left join omsship_instructions_capacity oic on ttr.order_id=oic.instructions_capacity_id
|
|
|
- left join OMSSHIP_SHIPMENT_INSTRUCTIONS OSI ON OSI.SHIPMENT_INSTRUCTIONS_ID=oic.INSTRUCTIONS_ID
|
|
|
- left join rms_capacity rc on oic.capacity_id=rc.capacity_id
|
|
|
- left join RMS_MATERIAL_TYPE RMT on adn.MATERIAL_TYPE_ID = RMT.MATERIAL_TYPE_ID
|
|
|
- left join (select * from tmsship_ship_location t where t.location_id in
|
|
|
- (SELECT
|
|
|
- t.location_id
|
|
|
- FROM
|
|
|
- (
|
|
|
- SELECT
|
|
|
- t.location_id,
|
|
|
- t.total_result_id,
|
|
|
- t.location_route_time,
|
|
|
- ROW_NUMBER () OVER (
|
|
|
- PARTITION BY t.total_result_id
|
|
|
- ORDER BY t.location_route_time DESC
|
|
|
- ) AS rn
|
|
|
- FROM
|
|
|
- tmsship_ship_location t
|
|
|
- ) t
|
|
|
- WHERE
|
|
|
- rn = 1)) tsl on tsl.total_result_id=ttr.result_id
|
|
|
- where ttr.ship_status = 0 and tsl.LOCATION_STATUS is not null and tlsr.DELETED=0
|
|
|
- and adn.DELETED=0 and oic.DELETED=0
|
|
|
- union all
|
|
|
- select DISTINCT
|
|
|
- db.BATCH_ID "batchId",
|
|
|
- DBI2.BATCH_INFACOTRY_ID "batchInfacoryId",
|
|
|
- db.result_foreign_ship_name "shipName",
|
|
|
- rm.material_name "materialName",
|
|
|
-
|
|
|
- adn.NOTICE_DELIVERY_TIME "dateOfLoans",
|
|
|
- adn.RESULT_NUMBER_OF_LOANS "numberOfLoans",
|
|
|
- rp.port_name "portName",
|
|
|
- wgm.gm_tonnage "tonnage",
|
|
|
- ' ' "capacity",
|
|
|
- 0 "capacityNumber",
|
|
|
- null "outPortTime",
|
|
|
- null "dgsj",
|
|
|
- ' ' "locationStatus",
|
|
|
- ' ' "locationValue",
|
|
|
- NVL(ADN.RESULT_MEMO,'块矿') "materialTypeName",
|
|
|
- null "materialTypeId",
|
|
|
- null "instructionStatus"
|
|
|
-
|
|
|
- from AMSSHIP_DELIVERY_NOTICE adn
|
|
|
- LEFT JOIN DIL_BATCH_INFACOTRY DBI2 on adn.batch_id=DBI2.BATCH_INFACOTRY_ID
|
|
|
- LEFT JOIN AMSSHIP_DELIVERY_ATTORNEY ADA ON ADA.BATCH_ID = adn.batch_id
|
|
|
- JOIN DIL_BATCH DB ON DBI2.BATCH_ID=DB.BATCH_ID
|
|
|
- join rms_material rm on db.material_id=rm.material_id
|
|
|
- left join rms_port rp on rp.port_id=ADA.DOWN_SWIM_PORT_ID
|
|
|
- left join WMSH_GRID_MATERIAL wgm on wgm.batch_id = DB.BATCH_ID AND ADA.DOWN_SWIM_PORT_ID=WGM.PORT_ID
|
|
|
- left join RMS_MATERIAL_TYPE RMT on adn.MATERIAL_TYPE_ID = RMT.MATERIAL_TYPE_ID
|
|
|
- where adn.DELETED=0 and wgm.DELETED=0 and wgm.gm_tonnage>0
|
|
|
- and DBI2.BATCH_INFACOTRY_ID not in(
|
|
|
+ SELECT * FROM (
|
|
|
select DISTINCT
|
|
|
- DBI2.BATCH_INFACOTRY_ID "batchInfacoryId"
|
|
|
+ db.BATCH_ID "batchId",
|
|
|
+ DBI2.BATCH_INFACOTRY_ID "batchInfacoryId",
|
|
|
+ db.result_foreign_ship_name "shipName",
|
|
|
+ rm.material_name "materialName",
|
|
|
+ adn.NOTICE_DELIVERY_TIME "dateOfLoans",
|
|
|
+ adn.RESULT_NUMBER_OF_LOANS "numberOfLoans",
|
|
|
+ rp.port_name "portName",
|
|
|
+ wgm.gm_tonnage-NVL(TIN."afterIn",0)+NVL(TOUT."afterOut",0) "tonnage",
|
|
|
+ rc.capacity_number "capacity",
|
|
|
+ tlsr.RESULT_ACTUAL_INSTALLATIONS "capacityNumber",
|
|
|
+ tlsr.RESULT_OUT_PORT_TIME "outPortTime",
|
|
|
+ tlsr.RESULT_ARRIVAL_PORT_TIME "dgsj",
|
|
|
+ tsl.LOCATION_STATUS "locationStatus",
|
|
|
+ tsl.LOCATION_VALUE "locationValue",
|
|
|
+ NVL(ADN.RESULT_MEMO,'进口块矿') "materialTypeName",
|
|
|
+ RMT.MATERIAL_TYPE_ID "materialTypeId",
|
|
|
+ OSI.INSTRUCTIONS_STATUS "instructionStatus"
|
|
|
from AMSSHIP_DELIVERY_NOTICE adn
|
|
|
LEFT JOIN DIL_BATCH_INFACOTRY DBI2 on adn.batch_id=DBI2.BATCH_INFACOTRY_ID
|
|
|
LEFT JOIN AMSSHIP_DELIVERY_ATTORNEY ADA ON ADA.BATCH_ID = adn.batch_id
|
|
@@ -95,8 +29,27 @@
|
|
|
join rms_material rm on db.material_id=rm.material_id
|
|
|
left join rms_port rp on rp.port_id=ADA.DOWN_SWIM_PORT_ID
|
|
|
left join WMSH_GRID_MATERIAL wgm on wgm.batch_id = DB.BATCH_ID AND ADA.DOWN_SWIM_PORT_ID=WGM.PORT_ID
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ BATCH_ID "batchId",
|
|
|
+ PORT_ID "portId",
|
|
|
+ SUM(RESULT_MATERIAL_NUMBER) "afterIn"
|
|
|
+ FROM WMSH_INBOUND_RESULT
|
|
|
+ where DELETED=0 AND WORK_TIME > to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss')
|
|
|
+ GROUP BY BATCH_ID,PORT_ID
|
|
|
+ ) TIN ON wgm.batch_id = TIN ."batchId" AND WGM.PORT_ID=TIN."portId"
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ BATCH_ID "batchId",
|
|
|
+ HARBOR_ID "portId",
|
|
|
+ SUM(RESULT_TONNAGE) "afterOut"
|
|
|
+ FROM WMSH_OUTBOUND_RESULT
|
|
|
+ where WORK_TIME > to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss')
|
|
|
+ GROUP BY BATCH_ID,HARBOR_ID
|
|
|
+ ) TOUT ON wgm.batch_id = TOUT ."batchId" AND WGM.PORT_ID=TOUT."portId"
|
|
|
left join TMSSHIP_LOAD_SHIP_RESULT tlsr on DBI2.BATCH_INFACOTRY_ID=tlsr.batch_id
|
|
|
left join tmsship_total_result ttr on ttr.result_id=tlsr.TOTAL_RESULT_ID
|
|
|
+ left join TMSSHIP_UNLOAD_SHIP_RESULT tusr on tusr.TOTAL_RESULT_ID = ttr.result_id
|
|
|
left join omsship_instructions_capacity oic on ttr.order_id=oic.instructions_capacity_id
|
|
|
left join OMSSHIP_SHIPMENT_INSTRUCTIONS OSI ON OSI.SHIPMENT_INSTRUCTIONS_ID=oic.INSTRUCTIONS_ID
|
|
|
left join rms_capacity rc on oic.capacity_id=rc.capacity_id
|
|
@@ -119,11 +72,100 @@
|
|
|
) t
|
|
|
WHERE
|
|
|
rn = 1)) tsl on tsl.total_result_id=ttr.result_id
|
|
|
- where ttr.ship_status = 0 and tsl.LOCATION_STATUS is not null and tlsr.DELETED=0
|
|
|
- and adn.DELETED=0 and oic.DELETED=0
|
|
|
+ where tsl.LOCATION_STATUS is not null and tlsr.DELETED=0 and
|
|
|
+ to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') > TLSR.RESULT_LOAD_SHIP_DATE
|
|
|
+ and (tusr.RESULT_ID is null or tusr.RESULT_START_TIME > to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss'))
|
|
|
+ and adn.DELETED=0 and ADA.DELETED=0
|
|
|
+ union all
|
|
|
+ select DISTINCT
|
|
|
+ db.BATCH_ID "batchId",
|
|
|
+ DBI2.BATCH_INFACOTRY_ID "batchInfacoryId",
|
|
|
+ db.result_foreign_ship_name "shipName",
|
|
|
+ rm.material_name "materialName",
|
|
|
+ adn.NOTICE_DELIVERY_TIME "dateOfLoans",
|
|
|
+ adn.RESULT_NUMBER_OF_LOANS "numberOfLoans",
|
|
|
+ rp.port_name "portName",
|
|
|
+ wgm.gm_tonnage-NVL(TIN."afterIn",0)+NVL(TOUT."afterOut",0) "tonnage",
|
|
|
+ ' ' "capacity",
|
|
|
+ 0 "capacityNumber",
|
|
|
+ null "outPortTime",
|
|
|
+ null "dgsj",
|
|
|
+ ' ' "locationStatus",
|
|
|
+ ' ' "locationValue",
|
|
|
+ NVL(ADN.RESULT_MEMO,'进口块矿') "materialTypeName",
|
|
|
+ null "materialTypeId",
|
|
|
+ null "instructionStatus"
|
|
|
+ from AMSSHIP_DELIVERY_NOTICE adn
|
|
|
+ LEFT JOIN DIL_BATCH_INFACOTRY DBI2 on adn.batch_id=DBI2.BATCH_INFACOTRY_ID
|
|
|
+ LEFT JOIN AMSSHIP_DELIVERY_ATTORNEY ADA ON ADA.BATCH_ID = adn.batch_id
|
|
|
+ JOIN DIL_BATCH DB ON DBI2.BATCH_ID=DB.BATCH_ID
|
|
|
+ join rms_material rm on db.material_id=rm.material_id
|
|
|
+ left join rms_port rp on rp.port_id=ADA.DOWN_SWIM_PORT_ID
|
|
|
+ left join WMSH_GRID_MATERIAL wgm on wgm.batch_id = DB.BATCH_ID AND ADA.DOWN_SWIM_PORT_ID=WGM.PORT_ID
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ BATCH_ID "batchId",
|
|
|
+ PORT_ID "portId",
|
|
|
+ SUM(RESULT_MATERIAL_NUMBER) "afterIn"
|
|
|
+ FROM WMSH_INBOUND_RESULT
|
|
|
+ where DELETED=0 AND WORK_TIME > to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss')
|
|
|
+ GROUP BY BATCH_ID,PORT_ID
|
|
|
+ ) TIN ON wgm.batch_id = TIN ."batchId" AND WGM.PORT_ID=TIN."portId"
|
|
|
+ LEFT JOIN (
|
|
|
+ SELECT
|
|
|
+ BATCH_ID "batchId",
|
|
|
+ HARBOR_ID "portId",
|
|
|
+ SUM(RESULT_TONNAGE) "afterOut"
|
|
|
+ FROM WMSH_OUTBOUND_RESULT
|
|
|
+ where WORK_TIME > to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss')
|
|
|
+ GROUP BY BATCH_ID,HARBOR_ID
|
|
|
+ ) TOUT ON wgm.batch_id = TOUT ."batchId" AND WGM.PORT_ID=TOUT."portId"
|
|
|
+ left join RMS_MATERIAL_TYPE RMT on adn.MATERIAL_TYPE_ID = RMT.MATERIAL_TYPE_ID
|
|
|
+ where adn.DELETED=0 and wgm.DELETED=0 and ADA.DELETED=0
|
|
|
+ and wgm.gm_tonnage-NVL(TIN."afterIn",0)+NVL(TOUT."afterOut",0)>0
|
|
|
+ and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') > ADA.ATTORNEY_TIME
|
|
|
+ and DBI2.BATCH_INFACOTRY_ID not in(
|
|
|
+ select DISTINCT
|
|
|
+ DBI2.BATCH_INFACOTRY_ID "batchInfacoryId"
|
|
|
+ from AMSSHIP_DELIVERY_NOTICE adn
|
|
|
+ LEFT JOIN DIL_BATCH_INFACOTRY DBI2 on adn.batch_id=DBI2.BATCH_INFACOTRY_ID
|
|
|
+ LEFT JOIN AMSSHIP_DELIVERY_ATTORNEY ADA ON ADA.BATCH_ID = adn.batch_id
|
|
|
+ JOIN DIL_BATCH DB ON DBI2.BATCH_ID=DB.BATCH_ID
|
|
|
+ join rms_material rm on db.material_id=rm.material_id
|
|
|
+ left join rms_port rp on rp.port_id=ADA.DOWN_SWIM_PORT_ID
|
|
|
+ left join WMSH_GRID_MATERIAL wgm on wgm.batch_id = DB.BATCH_ID AND ADA.DOWN_SWIM_PORT_ID=WGM.PORT_ID
|
|
|
+ left join TMSSHIP_LOAD_SHIP_RESULT tlsr on DBI2.BATCH_INFACOTRY_ID=tlsr.batch_id
|
|
|
+ left join tmsship_total_result ttr on ttr.result_id=tlsr.TOTAL_RESULT_ID
|
|
|
+ left join TMSSHIP_UNLOAD_SHIP_RESULT tusr on tusr.TOTAL_RESULT_ID=ttr.result_id
|
|
|
+ left join omsship_instructions_capacity oic on ttr.order_id=oic.instructions_capacity_id
|
|
|
+ left join OMSSHIP_SHIPMENT_INSTRUCTIONS OSI ON OSI.SHIPMENT_INSTRUCTIONS_ID=oic.INSTRUCTIONS_ID
|
|
|
+ left join rms_capacity rc on oic.capacity_id=rc.capacity_id
|
|
|
+ left join RMS_MATERIAL_TYPE RMT on adn.MATERIAL_TYPE_ID = RMT.MATERIAL_TYPE_ID
|
|
|
+ left join (select * from tmsship_ship_location t where t.location_id in
|
|
|
+ (SELECT
|
|
|
+ t.location_id
|
|
|
+ FROM
|
|
|
+ (
|
|
|
+ SELECT
|
|
|
+ t.location_id,
|
|
|
+ t.total_result_id,
|
|
|
+ t.location_route_time,
|
|
|
+ ROW_NUMBER () OVER (
|
|
|
+ PARTITION BY t.total_result_id
|
|
|
+ ORDER BY t.location_route_time DESC
|
|
|
+ ) AS rn
|
|
|
+ FROM
|
|
|
+ tmsship_ship_location t
|
|
|
+ ) t
|
|
|
+ WHERE
|
|
|
+ rn = 1)) tsl
|
|
|
+ on tsl.total_result_id=ttr.result_id
|
|
|
+ where tsl.LOCATION_STATUS is not null and tlsr.DELETED=0 and adn.DELETED=0
|
|
|
+ AND to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') > TLSR.RESULT_LOAD_SHIP_DATE
|
|
|
+ and (tusr.RESULT_ID is null or tusr.RESULT_START_TIME > to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss'))
|
|
|
+ )
|
|
|
)
|
|
|
- )
|
|
|
- Order By "materialTypeName","batchId","batchInfacoryId" DESC
|
|
|
+ ORDER BY DECODE("materialTypeName",'低富粉',1,'中富粉',2,'高富粉',3,'机精粉',4 ,'进口块矿',5,6),"batchId","batchInfacoryId" DESC
|
|
|
</select>
|
|
|
<select id="selectByshipName" resultType="java.util.Map" parameterType="java.util.Map">
|
|
|
select sd.GM_TONNAGE as "tonnage",
|