WmshGridMaterialMapper.xml 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3. <mapper namespace="com.steerinfo.dil.mapper.WmshGridMaterialMapper">
  4. <resultMap id="BaseResultMap" type="com.steerinfo.dil.model.WmshGridMaterial">
  5. <id column="GM_ID" jdbcType="DECIMAL" property="gmId"/>
  6. <result column="PORT_ID" jdbcType="DECIMAL" property="portId"/>
  7. <result column="BATCH_ID" jdbcType="DECIMAL" property="batchId"/>
  8. <result column="GM_TONNAGE" jdbcType="DECIMAL" property="gmTonnage"/>
  9. <result column="INSERT_USERNAME" jdbcType="VARCHAR" property="insertUsername"/>
  10. <result column="INSERT_TIME" jdbcType="TIMESTAMP" property="insertTime"/>
  11. <result column="UPDATE_USERNAME" jdbcType="VARCHAR" property="updateUsername"/>
  12. <result column="UPDATE_TIME" jdbcType="TIMESTAMP" property="updateTime"/>
  13. <result column="INSERT_UPDATE_REMARK" jdbcType="VARCHAR" property="insertUpdateRemark"/>
  14. <result column="DELETED" jdbcType="DECIMAL" property="deleted"/>
  15. </resultMap>
  16. <sql id="columns">
  17. GM_ID, PORT_ID, BATCH_ID, GM_TONNAGE, INSERT_USERNAME, INSERT_TIME, UPDATE_USERNAME,
  18. UPDATE_TIME, INSERT_UPDATE_REMARK, DELETED
  19. </sql>
  20. <sql id="columns_alias">
  21. t.GM_ID, t.PORT_ID, t.BATCH_ID, t.GM_TONNAGE, t.INSERT_USERNAME, t.INSERT_TIME, t.UPDATE_USERNAME,
  22. t.UPDATE_TIME, t.INSERT_UPDATE_REMARK, t.DELETED
  23. </sql>
  24. <sql id="select">
  25. SELECT
  26. <include refid="columns"/>
  27. FROM WMSH_GRID_MATERIAL
  28. </sql>
  29. <sql id="select_alias">
  30. SELECT
  31. <include refid="columns_alias"/>
  32. FROM WMSH_GRID_MATERIAL t
  33. </sql>
  34. <sql id="where">
  35. <where>
  36. <if test="gmId != null">
  37. and GM_ID = #{gmId}
  38. </if>
  39. <if test="portId != null">
  40. and PORT_ID = #{portId}
  41. </if>
  42. <if test="batchId != null">
  43. and BATCH_ID = #{batchId}
  44. </if>
  45. <if test="gmTonnage != null">
  46. and GM_TONNAGE = #{gmTonnage}
  47. </if>
  48. <if test="insertUsername != null and insertUsername != ''">
  49. and INSERT_USERNAME = #{insertUsername}
  50. </if>
  51. <if test="insertTime != null">
  52. and TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = #{insertTime}
  53. </if>
  54. <if test="updateUsername != null and updateUsername != ''">
  55. and UPDATE_USERNAME = #{updateUsername}
  56. </if>
  57. <if test="updateTime != null">
  58. and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
  59. </if>
  60. <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
  61. and INSERT_UPDATE_REMARK = #{insertUpdateRemark}
  62. </if>
  63. <if test="deleted != null">
  64. and DELETED = #{deleted}
  65. </if>
  66. </where>
  67. </sql>
  68. <sql id="whereLike">
  69. <where>
  70. <if test="gmId != null">
  71. and GM_ID = #{gmId}
  72. </if>
  73. <if test="portId != null">
  74. and PORT_ID = #{portId}
  75. </if>
  76. <if test="batchId != null">
  77. and BATCH_ID = #{batchId}
  78. </if>
  79. <if test="gmTonnage != null">
  80. and GM_TONNAGE = #{gmTonnage}
  81. </if>
  82. <if test="insertUsername != null and insertUsername != ''">
  83. and INSERT_USERNAME LIKE '%${insertUsername}%'
  84. </if>
  85. <if test="insertTime != null">
  86. and TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = #{insertTime}
  87. </if>
  88. <if test="updateUsername != null and updateUsername != ''">
  89. and UPDATE_USERNAME LIKE '%${updateUsername}%'
  90. </if>
  91. <if test="updateTime != null">
  92. and TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = #{updateTime}
  93. </if>
  94. <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
  95. and INSERT_UPDATE_REMARK LIKE '%${insertUpdateRemark}%'
  96. </if>
  97. <if test="deleted != null">
  98. and DELETED = #{deleted}
  99. </if>
  100. </where>
  101. </sql>
  102. <delete id="deleteByPrimaryKey" parameterType="java.math.BigDecimal">
  103. delete
  104. from WMSH_GRID_MATERIAL
  105. where GM_ID = #{gmId,jdbcType=DECIMAL}
  106. </delete>
  107. <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
  108. delete from WMSH_GRID_MATERIAL
  109. where 1!=1
  110. <if test="portId != null">
  111. or PORT_ID = #{portId}
  112. </if>
  113. <if test="batchId != null">
  114. or BATCH_ID = #{batchId}
  115. </if>
  116. <if test="gmTonnage != null">
  117. or GM_TONNAGE = #{gmTonnage}
  118. </if>
  119. <if test="insertUsername != null and insertUsername != ''">
  120. or INSERT_USERNAME = #{insertUsername}
  121. </if>
  122. <if test="insertTime != null">
  123. or TO_CHAR(INSERT_TIME,'yyyy-MM-dd') = '#{insertTime}'
  124. </if>
  125. <if test="updateUsername != null and updateUsername != ''">
  126. or UPDATE_USERNAME = #{updateUsername}
  127. </if>
  128. <if test="updateTime != null">
  129. or TO_CHAR(UPDATE_TIME,'yyyy-MM-dd') = '#{updateTime}'
  130. </if>
  131. <if test="insertUpdateRemark != null and insertUpdateRemark != ''">
  132. or INSERT_UPDATE_REMARK = #{insertUpdateRemark}
  133. </if>
  134. <if test="deleted != null">
  135. or DELETED = #{deleted}
  136. </if>
  137. </delete>
  138. <insert id="insert" parameterType="com.steerinfo.dil.model.WmshGridMaterial">
  139. insert into WMSH_GRID_MATERIAL (GM_ID, PORT_ID, BATCH_ID,
  140. GM_TONNAGE, INSERT_USERNAME, INSERT_TIME,
  141. UPDATE_USERNAME, UPDATE_TIME, INSERT_UPDATE_REMARK,
  142. DELETED)
  143. values (#{gmId,jdbcType=DECIMAL}, #{portId,jdbcType=DECIMAL}, #{batchId,jdbcType=DECIMAL},
  144. #{gmTonnage,jdbcType=DECIMAL}, #{insertUsername,jdbcType=VARCHAR}, #{insertTime,jdbcType=TIMESTAMP},
  145. #{updateUsername,jdbcType=VARCHAR}, #{updateTime,jdbcType=TIMESTAMP},
  146. #{insertUpdateRemark,jdbcType=VARCHAR},
  147. #{deleted,jdbcType=DECIMAL})
  148. </insert>
  149. <insert id="insertSelective" parameterType="com.steerinfo.dil.model.WmshGridMaterial">
  150. insert into WMSH_GRID_MATERIAL
  151. <trim prefix="(" suffix=")" suffixOverrides=",">
  152. <if test="gmId != null">
  153. GM_ID,
  154. </if>
  155. <if test="portId != null">
  156. PORT_ID,
  157. </if>
  158. <if test="batchId != null">
  159. BATCH_ID,
  160. </if>
  161. <if test="gmTonnage != null">
  162. GM_TONNAGE,
  163. </if>
  164. <if test="insertUsername != null">
  165. INSERT_USERNAME,
  166. </if>
  167. <if test="insertTime != null">
  168. INSERT_TIME,
  169. </if>
  170. <if test="updateUsername != null">
  171. UPDATE_USERNAME,
  172. </if>
  173. <if test="updateTime != null">
  174. UPDATE_TIME,
  175. </if>
  176. <if test="insertUpdateRemark != null">
  177. INSERT_UPDATE_REMARK,
  178. </if>
  179. <if test="deleted != null">
  180. DELETED,
  181. </if>
  182. </trim>
  183. <trim prefix="values (" suffix=")" suffixOverrides=",">
  184. <if test="gmId != null">
  185. #{gmId,jdbcType=DECIMAL},
  186. </if>
  187. <if test="portId != null">
  188. #{portId,jdbcType=DECIMAL},
  189. </if>
  190. <if test="batchId != null">
  191. #{batchId,jdbcType=DECIMAL},
  192. </if>
  193. <if test="gmTonnage != null">
  194. #{gmTonnage,jdbcType=DECIMAL},
  195. </if>
  196. <if test="insertUsername != null">
  197. #{insertUsername,jdbcType=VARCHAR},
  198. </if>
  199. <if test="insertTime != null">
  200. #{insertTime,jdbcType=TIMESTAMP},
  201. </if>
  202. <if test="updateUsername != null">
  203. #{updateUsername,jdbcType=VARCHAR},
  204. </if>
  205. <if test="updateTime != null">
  206. #{updateTime,jdbcType=TIMESTAMP},
  207. </if>
  208. <if test="insertUpdateRemark != null">
  209. #{insertUpdateRemark,jdbcType=VARCHAR},
  210. </if>
  211. <if test="deleted != null">
  212. #{deleted,jdbcType=DECIMAL},
  213. </if>
  214. </trim>
  215. </insert>
  216. <update id="updateByPrimaryKey" parameterType="com.steerinfo.dil.model.WmshGridMaterial">
  217. update WMSH_GRID_MATERIAL
  218. set PORT_ID = #{portId,jdbcType=DECIMAL},
  219. BATCH_ID = #{batchId,jdbcType=DECIMAL},
  220. GM_TONNAGE = #{gmTonnage,jdbcType=DECIMAL},
  221. INSERT_USERNAME = #{insertUsername,jdbcType=VARCHAR},
  222. INSERT_TIME = #{insertTime,jdbcType=TIMESTAMP},
  223. UPDATE_USERNAME = #{updateUsername,jdbcType=VARCHAR},
  224. UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP},
  225. INSERT_UPDATE_REMARK = #{insertUpdateRemark,jdbcType=VARCHAR},
  226. DELETED = #{deleted,jdbcType=DECIMAL}
  227. where GM_ID = #{gmId,jdbcType=DECIMAL}
  228. </update>
  229. <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.dil.model.WmshGridMaterial">
  230. update WMSH_GRID_MATERIAL
  231. <set>
  232. <if test="portId != null">
  233. PORT_ID = #{portId,jdbcType=DECIMAL},
  234. </if>
  235. <if test="batchId != null">
  236. BATCH_ID = #{batchId,jdbcType=DECIMAL},
  237. </if>
  238. <if test="gmTonnage != null">
  239. GM_TONNAGE = #{gmTonnage,jdbcType=DECIMAL},
  240. </if>
  241. <if test="insertUsername != null">
  242. INSERT_USERNAME = #{insertUsername,jdbcType=VARCHAR},
  243. </if>
  244. <if test="insertTime != null">
  245. INSERT_TIME = #{insertTime,jdbcType=TIMESTAMP},
  246. </if>
  247. <if test="updateUsername != null">
  248. UPDATE_USERNAME = #{updateUsername,jdbcType=VARCHAR},
  249. </if>
  250. <if test="updateTime != null">
  251. UPDATE_TIME = #{updateTime,jdbcType=TIMESTAMP},
  252. </if>
  253. <if test="insertUpdateRemark != null">
  254. INSERT_UPDATE_REMARK = #{insertUpdateRemark,jdbcType=VARCHAR},
  255. </if>
  256. <if test="deleted != null">
  257. DELETED = #{deleted,jdbcType=DECIMAL},
  258. </if>
  259. </set>
  260. where GM_ID = #{gmId,jdbcType=DECIMAL}
  261. </update>
  262. <select id="selectByPrimaryKey" parameterType="java.math.BigDecimal" resultMap="BaseResultMap">
  263. <include refid="select"/>
  264. where GM_ID = #{gmId,jdbcType=DECIMAL}
  265. </select>
  266. <select id="selectByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
  267. <include refid="select"/>
  268. <include refid="where"/>
  269. </select>
  270. <select id="selectLikeByParameters" parameterType="java.util.HashMap" resultMap="BaseResultMap">
  271. <include refid="select"/>
  272. <include refid="whereLike"/>
  273. </select>
  274. <insert id="batchInsert" parameterType="java.util.List">
  275. insert into WMSH_GRID_MATERIAL
  276. (GM_ID,
  277. PORT_ID, BATCH_ID, GM_TONNAGE,
  278. INSERT_USERNAME, INSERT_TIME,
  279. UPDATE_USERNAME, UPDATE_TIME,
  280. INSERT_UPDATE_REMARK, DELETED)
  281. ( <foreach collection="list" item="item" separator="union all">
  282. select
  283. #{item.gmId,jdbcType=DECIMAL},
  284. #{item.portId,jdbcType=DECIMAL}, #{item.batchId,jdbcType=DECIMAL}, #{item.gmTonnage,jdbcType=DECIMAL},
  285. #{item.insertUsername,jdbcType=VARCHAR}, #{item.insertTime,jdbcType=TIMESTAMP},
  286. #{item.updateUsername,jdbcType=VARCHAR}, #{item.updateTime,jdbcType=TIMESTAMP},
  287. #{item.insertUpdateRemark,jdbcType=VARCHAR}, #{item.deleted,jdbcType=DECIMAL} from dual
  288. </foreach> )
  289. </insert>
  290. <update id="batchUpdate" parameterType="java.util.List">
  291. update WMSH_GRID_MATERIAL
  292. set
  293. GM_ID=
  294. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  295. when #{item.gmId,jdbcType=DECIMAL} then #{item.gmId,jdbcType=DECIMAL}
  296. </foreach>
  297. ,PORT_ID=
  298. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  299. when #{item.gmId,jdbcType=DECIMAL} then #{item.portId,jdbcType=DECIMAL}
  300. </foreach>
  301. ,BATCH_ID=
  302. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  303. when #{item.gmId,jdbcType=DECIMAL} then #{item.batchId,jdbcType=DECIMAL}
  304. </foreach>
  305. ,GM_TONNAGE=
  306. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  307. when #{item.gmId,jdbcType=DECIMAL} then #{item.gmTonnage,jdbcType=DECIMAL}
  308. </foreach>
  309. ,INSERT_USERNAME=
  310. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  311. when #{item.gmId,jdbcType=DECIMAL} then #{item.insertUsername,jdbcType=VARCHAR}
  312. </foreach>
  313. ,INSERT_TIME=
  314. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  315. when #{item.gmId,jdbcType=DECIMAL} then #{item.insertTime,jdbcType=TIMESTAMP}
  316. </foreach>
  317. ,UPDATE_USERNAME=
  318. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  319. when #{item.gmId,jdbcType=DECIMAL} then #{item.updateUsername,jdbcType=VARCHAR}
  320. </foreach>
  321. ,UPDATE_TIME=
  322. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  323. when #{item.gmId,jdbcType=DECIMAL} then #{item.updateTime,jdbcType=TIMESTAMP}
  324. </foreach>
  325. ,INSERT_UPDATE_REMARK=
  326. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  327. when #{item.gmId,jdbcType=DECIMAL} then #{item.insertUpdateRemark,jdbcType=VARCHAR}
  328. </foreach>
  329. ,DELETED=
  330. <foreach collection="list" item="item" index="index" separator=" " open="case GM_ID" close="end">
  331. when #{item.gmId,jdbcType=DECIMAL} then #{item.deleted,jdbcType=DECIMAL}
  332. </foreach>
  333. where GM_ID in
  334. <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
  335. #{item.gmId,jdbcType=DECIMAL}
  336. </foreach>
  337. </update>
  338. <delete id="batchDelete" parameterType="java.util.List">
  339. delete from WMSH_GRID_MATERIAL
  340. where GM_ID in
  341. <foreach collection="list" item="id" open="(" close=")" separator=",">
  342. #{id}
  343. </foreach>
  344. </delete>
  345. <!-- 友情提示!!!-->
  346. <!-- 请将自己写的代码放在此标签之下,方便以后粘贴复制。-->
  347. <!-- 展示下游港口库存 -->
  348. <select id="getUnloadPortStockList" parameterType="java.util.Map" resultType="java.util.Map">
  349. SELECT *
  350. FROM (
  351. SELECT rp.PORT_NAME as "portName",
  352. rm.MATERIAL_NAME as "materialName",
  353. db.RESULT_FOREIGN_SHIP_NAME as "resultForeignShipName",
  354. wgm.BATCH_ID as "batchId",
  355. wgm.GM_ID "gmId",
  356. wgm.PORT_ID "portId",
  357. wgm.GM_TONNAGE as "gmTonnage"
  358. FROM WMSH_GRID_MATERIAL wgm
  359. LEFT JOIN DIL_BATCH db
  360. ON db.BATCH_ID = wgm.BATCH_ID
  361. LEFT JOIN RMS_MATERIAL rm
  362. ON rm.MATERIAL_ID = db.MATERIAL_ID
  363. LEFT JOIN RMS_PORT rp
  364. ON rp.PORT_ID = wgm.PORT_ID
  365. WHERE wgm.DELETED = 0
  366. AND rp.PORT_NAME ! = '万州港'
  367. AND wgm.GM_TONNAGE > 0
  368. order by rp.PORT_NAME,rm.MATERIAL_NAME
  369. )
  370. <where>
  371. <if test="portName != null">
  372. and
  373. <foreach collection="portName" item="item" open="(" separator="," close=")">
  374. "portName" in #{item}
  375. </foreach>
  376. </if>
  377. <if test="materialName != null">
  378. and
  379. <foreach collection="materialName" item="item" open="(" separator="," close=")">
  380. "materialName" in #{item}
  381. </foreach>
  382. </if>
  383. <if test="resultForeignShipName != null">
  384. and
  385. <foreach collection="resultForeignShipName" item="item" open="(" separator="," close=")">
  386. "resultForeignShipName" in #{item}
  387. </foreach>
  388. </if>
  389. <if test="gmTonnage != null">
  390. and
  391. <foreach collection="gmTonnage" item="item" open="(" separator="," close=")">
  392. "gmTonnage" in #{item}
  393. </foreach>
  394. </if>
  395. </where>
  396. </select>
  397. <!-- 展示万州港库存 -->
  398. <select id="getLoadPortStockList" parameterType="java.util.Map" resultType="java.util.Map">
  399. SELECT *
  400. FROM (
  401. SELECT rp.PORT_NAME AS "portName",
  402. rm.MATERIAL_NAME AS "materialName",
  403. db.RESULT_FOREIGN_SHIP_NAME AS "resultForeignShipName",
  404. BR ."remark" "type",
  405. wgm.BATCH_ID as "batchId",
  406. wgm.GM_ID "gmId",
  407. wgm.PORT_ID "portId",
  408. notice."totalTonnage" - NVL( noticeIn."sumIn", 0 ) + NVL( noticeOut."sumOut", 0 ) "typeTotalTonnage",
  409. notice."totalTonnage" "afterTypeTotalTonnage",
  410. wgm.GM_TONNAGE AS "afterTonnage",
  411. wgm.GM_TONNAGE - NVL( AfterIn."sumIn", 0 ) + NVL( AfterOut."sumOut", 0 ) AS "gmTonnage",
  412. NVL( INBOUNDS."sumIn", 0 ) "sumIn",
  413. NVL( OUTBOUNDS."sumOut", 0 ) "sumOut",
  414. NVL( AfterIn."sumIn", 0 ) "afterIn",
  415. NVL( AfterOut."sumOut", 0 ) "afterOut",
  416. temp."gmTonnage" - NVL( temp1."gmTonnage", 0 ) + NVL( temp2."gmTonnage", 0 ) AS "totalTonnage"
  417. FROM WMSH_GRID_MATERIAL wgm
  418. LEFT JOIN DIL_BATCH db ON db.BATCH_ID = wgm.BATCH_ID
  419. LEFT JOIN RMS_MATERIAL rm ON rm.MATERIAL_ID = db.MATERIAL_ID
  420. LEFT JOIN RMS_PORT rp ON rp.PORT_ID = wgm.PORT_ID
  421. LEFT JOIN (
  422. SELECT DB .BATCH_ID "batchId",
  423. NVL(MAX(ADN .RESULT_MEMO),'块矿') "remark"
  424. FROM AMSSHIP_DELIVERY_NOTICE ADN
  425. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON ADN.BATCH_ID = DBI.BATCH_INFACOTRY_ID
  426. LEFT JOIN DIL_BATCH DB ON DB.BATCH_ID = DBI.BATCH_ID
  427. GROUP BY DB .BATCH_ID
  428. ) BR ON BR ."batchId"=WGM .BATCH_ID
  429. LEFT JOIN (
  430. SELECT
  431. sum( wgm.GM_TONNAGE ) AS "gmTonnage",
  432. rm.material_name "materialName"
  433. FROM
  434. WMSH_GRID_MATERIAL wgm
  435. LEFT JOIN DIL_BATCH db ON db.BATCH_ID = wgm.BATCH_ID
  436. LEFT JOIN RMS_MATERIAL rm ON rm.MATERIAL_ID = db.MATERIAL_ID
  437. LEFT JOIN RMS_PORT rp ON rp.PORT_ID = wgm.PORT_ID
  438. WHERE
  439. wgm.DELETED = 0
  440. AND rp.PORT_NAME = '万州港'
  441. GROUP BY
  442. rm.MATERIAL_NAME
  443. ) temp ON temp."materialName" = rm.MATERIAL_NAME
  444. LEFT JOIN (
  445. SELECT
  446. sum( WIR.RESULT_MATERIAL_NUMBER ) AS "gmTonnage",
  447. rm.material_name "materialName"
  448. FROM
  449. WMSH_INBOUND_RESULT WIR
  450. LEFT JOIN DIL_BATCH db ON db.BATCH_ID = WIR.BATCH_ID
  451. LEFT JOIN RMS_MATERIAL rm ON rm.MATERIAL_ID = db.MATERIAL_ID
  452. LEFT JOIN RMS_PORT rp ON rp.PORT_ID = WIR.PORT_ID
  453. WHERE
  454. WIR.DELETED = 0
  455. AND rp.PORT_NAME = '万州港'
  456. AND WIR.INSERT_TIME > #{time}
  457. AND WIR.INSERT_TIME > #{time}
  458. GROUP BY
  459. rm.MATERIAL_NAME
  460. ) temp1 ON temp1."materialName" = rm.MATERIAL_NAME
  461. LEFT JOIN (
  462. SELECT
  463. sum( WOR.RESULT_TONNAGE ) AS "gmTonnage",
  464. rm.material_name "materialName"
  465. FROM
  466. WMSH_OUTBOUND_RESULT WOR
  467. LEFT JOIN DIL_BATCH db ON db.BATCH_ID = WOR.BATCH_ID
  468. LEFT JOIN RMS_MATERIAL rm ON rm.MATERIAL_ID = db.MATERIAL_ID
  469. LEFT JOIN RMS_PORT rp ON rp.PORT_ID = WOR.HARBOR_ID
  470. WHERE
  471. rp.PORT_NAME = '万州港'
  472. AND WOR.INSERT_TIME > #{time}
  473. GROUP BY
  474. rm.MATERIAL_NAME
  475. ) temp2 ON temp2."materialName" = rm.MATERIAL_NAME
  476. LEFT JOIN (
  477. SELECT
  478. SUM( WIR.RESULT_MATERIAL_NUMBER ) "sumIn",
  479. WIR.BATCH_ID "batchId"
  480. FROM
  481. WMSH_INBOUND_RESULT WIR
  482. LEFT JOIN DIL_BATCH DB ON WIR.BATCH_ID = DB.BATCH_ID
  483. LEFT JOIN RMS_MATERIAL RM ON RM.MATERIAL_ID = DB.MATERIAL_ID
  484. LEFT JOIN RMS_PORT RP ON RP.PORT_ID = WIR.PORT_ID
  485. WHERE
  486. WIR.DELETED = 0
  487. AND RP.PORT_NAME = '万州港'
  488. GROUP BY
  489. WIR.BATCH_ID
  490. ) INBOUNDS ON INBOUNDS."batchId" = WGM.BATCH_ID
  491. LEFT JOIN (
  492. SELECT
  493. sum( WOR.RESULT_TONNAGE ) "sumOut",
  494. WOR.BATCH_ID "batchId"
  495. FROM
  496. WMSH_OUTBOUND_RESULT WOR
  497. LEFT JOIN DIL_BATCH DB ON WOR.BATCH_ID = DB.BATCH_ID
  498. LEFT JOIN RMS_MATERIAL RM ON RM.MATERIAL_ID = DB.MATERIAL_ID
  499. LEFT JOIN RMS_PORT RP ON RP.PORT_ID = WOR.HARBOR_ID
  500. WHERE
  501. RP.PORT_NAME = '万州港'
  502. GROUP BY
  503. WOR.BATCH_ID
  504. ) OUTBOUNDS ON OUTBOUNDS."batchId" = WGM.BATCH_ID
  505. LEFT JOIN (
  506. SELECT
  507. SUM( WIR.RESULT_MATERIAL_NUMBER ) "sumIn",
  508. WIR.BATCH_ID "batchId"
  509. FROM
  510. WMSH_INBOUND_RESULT WIR
  511. LEFT JOIN DIL_BATCH DB ON WIR.BATCH_ID = DB.BATCH_ID
  512. LEFT JOIN RMS_MATERIAL RM ON RM.MATERIAL_ID = DB.MATERIAL_ID
  513. LEFT JOIN RMS_PORT RP ON RP.PORT_ID = WIR.PORT_ID
  514. WHERE
  515. WIR.DELETED = 0
  516. AND RP.PORT_NAME = '万州港'
  517. AND WIR.INSERT_TIME > #{time}
  518. GROUP BY
  519. WIR.BATCH_ID
  520. ) AfterIn ON AfterIn."batchId" = WGM.BATCH_ID
  521. LEFT JOIN (
  522. SELECT
  523. sum( WOR.RESULT_TONNAGE ) "sumOut",
  524. WOR.BATCH_ID "batchId"
  525. FROM
  526. WMSH_OUTBOUND_RESULT WOR
  527. LEFT JOIN DIL_BATCH DB ON WOR.BATCH_ID = DB.BATCH_ID
  528. LEFT JOIN RMS_MATERIAL RM ON RM.MATERIAL_ID = DB.MATERIAL_ID
  529. LEFT JOIN RMS_PORT RP ON RP.PORT_ID = WOR.HARBOR_ID
  530. WHERE
  531. RP.PORT_NAME = '万州港'
  532. AND WOR.INSERT_TIME > #{time}
  533. GROUP BY
  534. WOR.BATCH_ID
  535. ) AfterOut ON AfterOut."batchId" = WGM.BATCH_ID
  536. LEFT JOIN (
  537. SELECT
  538. "remark",
  539. SUM( "gmTonnage" ) "totalTonnage"
  540. FROM
  541. (
  542. SELECT DISTINCT
  543. RM.MATERIAL_NAME "materialName",
  544. WGM.GM_TONNAGE "gmTonnage",
  545. WGM.GM_ID,
  546. DB.RESULT_FOREIGN_SHIP_NAME,
  547. DB.BATCH_ID "batchId",
  548. BRT."remark" "remark"
  549. FROM
  550. WMSH_GRID_MATERIAL WGM
  551. LEFT JOIN DIL_BATCH DB ON WGM.BATCH_ID = DB.BATCH_ID
  552. LEFT JOIN RMS_PORT RP ON RP.PORT_ID = WGM.PORT_ID
  553. LEFT JOIN RMS_MATERIAL RM ON DB.MATERIAL_ID = RM.MATERIAL_ID
  554. LEFT JOIN (
  555. SELECT DB .BATCH_ID "batchId",
  556. NVL(MAX(ADN .RESULT_MEMO),'块矿') "remark"
  557. FROM AMSSHIP_DELIVERY_NOTICE ADN
  558. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON ADN.BATCH_ID = DBI.BATCH_INFACOTRY_ID
  559. LEFT JOIN DIL_BATCH DB ON DB.BATCH_ID = DBI.BATCH_ID
  560. GROUP BY DB .BATCH_ID
  561. ) BRT ON BRT ."batchId"=WGM .BATCH_ID
  562. WHERE
  563. WGM.DELETED = 0
  564. AND WGM.GM_TONNAGE > 0
  565. AND RP.PORT_NAME = '万州港'
  566. )
  567. GROUP BY
  568. "remark"
  569. ) notice ON notice."remark" = BR ."remark"
  570. LEFT JOIN (
  571. SELECT
  572. sum( WOR.RESULT_TONNAGE ) "sumOut",
  573. BRT."remark" "remark"
  574. FROM
  575. WMSH_OUTBOUND_RESULT WOR
  576. LEFT JOIN DIL_BATCH DB ON WOR.BATCH_ID = DB.BATCH_ID
  577. LEFT JOIN RMS_PORT RP ON RP.PORT_ID = WOR.HARBOR_ID
  578. LEFT JOIN (
  579. SELECT DB .BATCH_ID "batchId",
  580. NVL(MAX(ADN .RESULT_MEMO),'块矿') "remark"
  581. FROM AMSSHIP_DELIVERY_NOTICE ADN
  582. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON ADN.BATCH_ID = DBI.BATCH_INFACOTRY_ID
  583. LEFT JOIN DIL_BATCH DB ON DB.BATCH_ID = DBI.BATCH_ID
  584. GROUP BY DB .BATCH_ID
  585. ) BRT ON BRT ."batchId"=DB .BATCH_ID
  586. WHERE
  587. RP.PORT_NAME = '万州港'
  588. AND WOR.INSERT_TIME > #{time}
  589. GROUP BY
  590. "remark"
  591. ) noticeOut ON noticeOut."remark" = notice."remark"
  592. LEFT JOIN (
  593. SELECT
  594. SUM( WIR.RESULT_MATERIAL_NUMBER ) "sumIn",
  595. BRT."remark" "remark"
  596. FROM
  597. WMSH_INBOUND_RESULT WIR
  598. LEFT JOIN DIL_BATCH DB ON WIR.BATCH_ID = DB.BATCH_ID
  599. LEFT JOIN RMS_PORT RP ON RP.PORT_ID = WIR.PORT_ID
  600. LEFT JOIN (
  601. SELECT DB .BATCH_ID "batchId",
  602. NVL(MAX(ADN .RESULT_MEMO),'块矿') "remark"
  603. FROM AMSSHIP_DELIVERY_NOTICE ADN
  604. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON ADN.BATCH_ID = DBI.BATCH_INFACOTRY_ID
  605. LEFT JOIN DIL_BATCH DB ON DB.BATCH_ID = DBI.BATCH_ID
  606. GROUP BY DB .BATCH_ID
  607. ) BRT ON BRT ."batchId"=DB .BATCH_ID
  608. WHERE
  609. RP.PORT_NAME = '万州港'
  610. AND WIR.INSERT_TIME > #{time}
  611. GROUP BY
  612. "remark"
  613. ) noticeIn ON noticeIn."remark" = notice."remark"
  614. WHERE
  615. wgm.DELETED = 0
  616. AND RP.PORT_NAME = '万州港'
  617. AND wgm.GM_TONNAGE > 0
  618. <if test="con!=null and con!=''.toString()">
  619. and rm.MATERIAL_NAME || rp.PORT_NAME || db.RESULT_FOREIGN_SHIP_NAME like CONCAT(CONCAT('%',#{con}),'%')
  620. </if>
  621. ORDER BY BR."remark",rm.MATERIAL_NAME
  622. )
  623. <where>
  624. "gmTonnage" > 0 or "afterTonnage" > 0
  625. <if test="portName != null">
  626. and
  627. <foreach collection="portName" item="item" open="(" separator="," close=")">
  628. "portName" in #{item}
  629. </foreach>
  630. </if>
  631. <if test="materialName != null">
  632. and
  633. <foreach collection="materialName" item="item" open="(" separator="," close=")">
  634. "materialName" in #{item}
  635. </foreach>
  636. </if>
  637. <if test="resultForeignShipName != null">
  638. and
  639. <foreach collection="resultForeignShipName" item="item" open="(" separator="," close=")">
  640. "resultForeignShipName" in #{item}
  641. </foreach>
  642. </if>
  643. <if test="gmTonnage != null">
  644. and
  645. <foreach collection="gmTonnage" item="item" open="(" separator="," close=")">
  646. "gmTonnage" in #{item}
  647. </foreach>
  648. </if>
  649. </where>
  650. </select>
  651. <select id="getGridId" resultType="java.util.Map" parameterType="java.util.Map">
  652. select WGM.GM_ID "gmId",
  653. WGM.GM_TONNAGE "gmTonnage"
  654. from WMSH_GRID_MATERIAL WGM
  655. LEFT JOIN RMS_PORT RP
  656. ON RP.PORT_ID=WGM.PORT_ID
  657. WHERE RP.PORT_ID=#{portId} and WGM.BATCH_ID=#{batchId}
  658. </select>
  659. <select id="getLoadPortStockByMaterialName" resultType="java.util.Map" parameterType="java.util.Map">
  660. SELECT
  661. sum( wgm.GM_TONNAGE ) AS "gmTonnage",
  662. rm.material_name "materialName"
  663. FROM
  664. WMSH_GRID_MATERIAL wgm
  665. LEFT JOIN DIL_BATCH db ON db.BATCH_ID = wgm.BATCH_ID
  666. LEFT JOIN RMS_MATERIAL rm ON rm.MATERIAL_ID = db.MATERIAL_ID
  667. LEFT JOIN RMS_PORT rp ON rp.PORT_ID = wgm.PORT_ID
  668. WHERE
  669. wgm.DELETED = 0
  670. <if test="con!=null">
  671. and (instr(rm.MATERIAL_NAME,#{con}) > 0 OR instr(RP.PORT_NAME,#{con}) > 0)
  672. </if>
  673. GROUP BY
  674. rm.MATERIAL_NAME
  675. </select>
  676. <select id="getUnLockPortStock" resultType="java.util.Map" parameterType="java.util.Map">
  677. select
  678. TLT.RESULT_WAGON_NO "wagon",
  679. TLT.PURCHASE_ORDER_NO "purchaseOrderNo",
  680. WOR.RESULT_NUMBER "resultNumber",
  681. RP.PORT_NAME "portName",
  682. RM.MATERIAL_NAME "materialName",
  683. DB.RESULT_FOREIGN_SHIP_NAME "resultForeignShipName",
  684. WOR.RESULT_TONNAGE "resultTonnage",
  685. TLT.RESULT_BILLABLE_TONNAGE "weight",
  686. WOR.RESULT_CLEARING "resultClearing",
  687. WOR.INSERT_TIME "insertTime",
  688. TLT.RESULT_ID "resultId",
  689. WOR.RESULT_ID "outBoundId",
  690. (CASE WHEN TWR.RESULT_POUND_NO IS NULL THEN 1 ELSE 0 END) "isEdit"
  691. from TMSTRAIN_LOADING_TEMP TLT
  692. left join AMS_PURCHASE_ORDER APO
  693. on TLT.PURCHASE_ORDER_NO = APO.PURCHASE_ORDER_NO
  694. LEFT JOIN TMSTRAIN_LOADING_RESULT TLR
  695. ON TLT.RESULT_ID =TLR.TEMP_RESULT_ID
  696. LEFT JOIN TMSTRAIN_TOTAL_RESULT TTR
  697. ON TTR.LOADING_ID = TLR.RESULT_ID
  698. LEFT JOIN TMSTRAIN_WEIGHT_RESULT TWR
  699. ON TWR.RESULT_TOTAL_ID =TTR.TOTAL_RESULT_ID
  700. left join WMSH_OUTBOUND_RESULT WOR
  701. on TLT.OUTBOUNT_ID = WOR.RESULT_ID
  702. left join DIL_BATCH DB
  703. on DB.BATCH_ID = WOR.BATCH_ID
  704. left join RMS_MATERIAL RM
  705. on RM.MATERIAL_ID = DB.MATERIAL_ID
  706. left join RMS_PORT RP
  707. on RP.PORT_ID = WOR.HARBOR_ID
  708. where RP.PORT_NAME='万州港' AND TLT.DELETED=0
  709. <if test="con!=null">
  710. and (instr(RM.MATERIAL_NAME , #{con}) > 0 or instr( TLT.RESULT_WAGON_NO, #{con}) > 0 or
  711. instr(DB.RESULT_FOREIGN_SHIP_NAME,#{con}) > 0 or instr( RP.PORT_NAME,#{con}) > 0)
  712. </if>
  713. <if test="activeName!=null and activeName=='second'">
  714. and TWR.RESULT_POUND_NO is null
  715. </if>
  716. <if test="oneDate != null">
  717. and to_date(#{oneDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= WOR.INSERT_TIME
  718. </if>
  719. <if test="startDate != null">
  720. and to_date(#{startDate}, 'yyyy-mm-dd hh24:mi:ss') &lt;= WOR.INSERT_TIME
  721. and to_date(#{endDate}, 'yyyy-mm-dd hh24:mi:ss') >= WOR.INSERT_TIME
  722. </if>
  723. Order By WOR.RESULT_NUMBER desc
  724. </select>
  725. <select id="getAllGridOfBatch" resultType="java.util.Map">
  726. select distinct
  727. WGM.GM_ID "gmId",
  728. WGM.GM_TONNAGE "gmTonnage",
  729. RP.PORT_ID "portId",
  730. WGM.BATCH_ID "batchId",
  731. RP.PORT_NAME "portName"
  732. from WMSH_GRID_MATERIAL WGM
  733. LEFT JOIN RMS_PORT RP
  734. ON RP.PORT_ID=WGM.PORT_ID
  735. WHERE WGM.BATCH_ID=#{batchId}
  736. </select>
  737. <select id="getDownPortStockList" resultType="java.util.Map">
  738. SELECT * FROM(
  739. SELECT DISTINCT
  740. WGM.GM_ID "gmId",
  741. WGM.GM_TONNAGE "gmTonnage",
  742. RP.PORT_NAME "portName",
  743. RM.MATERIAL_NAME "materialName",
  744. DB.RESULT_FOREIGN_SHIP_NAME "resultForeignShipName",
  745. temp."totalTonnage" "totalTonnage",
  746. BR ."remark" "type",
  747. temp2."totalTonnage" "typeTotalTonnage"
  748. FROM WMSH_GRID_MATERIAL WGM
  749. LEFT JOIN DIL_BATCH DB ON WGM.BATCH_ID=DB.BATCH_ID
  750. LEFT JOIN RMS_PORT RP ON RP.PORT_ID=WGM.PORT_ID
  751. LEFT JOIN RMS_MATERIAL RM ON DB.MATERIAL_ID=RM.MATERIAL_ID
  752. LEFT JOIN (
  753. SELECT DB .BATCH_ID "batchId",
  754. NVL(MAX(ADN .RESULT_MEMO),'块矿') "remark"
  755. FROM AMSSHIP_DELIVERY_NOTICE ADN
  756. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON ADN.BATCH_ID = DBI.BATCH_INFACOTRY_ID
  757. LEFT JOIN DIL_BATCH DB ON DB.BATCH_ID = DBI.BATCH_ID
  758. GROUP BY DB .BATCH_ID
  759. ) BR ON BR ."batchId"=DB .BATCH_ID
  760. LEFT JOIN (
  761. --按物资统计数量
  762. SELECT "materialName",
  763. SUM("gmTonnage") "totalTonnage"
  764. FROM (
  765. SELECT DISTINCT
  766. RM.MATERIAL_NAME "materialName",
  767. WGM.GM_TONNAGE "gmTonnage",
  768. WGM.GM_ID ,
  769. DB.RESULT_FOREIGN_SHIP_NAME,
  770. DBI.BATCH_INFACOTRY_ID
  771. FROM WMSH_GRID_MATERIAL WGM
  772. LEFT JOIN DIL_BATCH DB ON WGM.BATCH_ID=DB.BATCH_ID
  773. LEFT JOIN RMS_PORT RP ON RP.PORT_ID=WGM.PORT_ID
  774. LEFT JOIN RMS_MATERIAL RM ON DB.MATERIAL_ID=RM.MATERIAL_ID
  775. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON DBI.BATCH_ID=DB.BATCH_ID
  776. LEFT JOIN AMSSHIP_DELIVERY_NOTICE ADN ON ADN.BATCH_ID=DBI.BATCH_INFACOTRY_ID
  777. LEFT JOIN AMSSHIP_DELIVERY_ATTORNEY ADA ON ADA.BATCH_ID = ADN.BATCH_ID AND ADA.DOWN_SWIM_PORT_ID=WGM.PORT_ID
  778. WHERE WGM.DELETED=0 AND WGM.GM_TONNAGE>0 AND RP.PORT_NAME!='万州港' AND ADN.DELETED=0 AND ADA.DELETED=0
  779. )
  780. GROUP BY "materialName"
  781. ) temp ON temp."materialName" = RM.MATERIAL_NAME
  782. LEFT JOIN (
  783. --按发货通知备注统计数量
  784. SELECT "remark",
  785. SUM("gmTonnage") "totalTonnage"
  786. FROM (
  787. SELECT DISTINCT
  788. RM.MATERIAL_NAME "materialName",
  789. WGM.GM_TONNAGE "gmTonnage",
  790. WGM.GM_ID ,
  791. DB.RESULT_FOREIGN_SHIP_NAME,
  792. BRT ."remark" "remark"
  793. FROM WMSH_GRID_MATERIAL WGM
  794. LEFT JOIN DIL_BATCH DB ON WGM.BATCH_ID=DB.BATCH_ID
  795. LEFT JOIN RMS_PORT RP ON RP.PORT_ID=WGM.PORT_ID
  796. LEFT JOIN RMS_MATERIAL RM ON DB.MATERIAL_ID=RM.MATERIAL_ID
  797. LEFT JOIN (
  798. SELECT DB .BATCH_ID "batchId",
  799. NVL(MAX(ADN .RESULT_MEMO),'块矿') "remark"
  800. FROM AMSSHIP_DELIVERY_NOTICE ADN
  801. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON ADN.BATCH_ID = DBI.BATCH_INFACOTRY_ID
  802. LEFT JOIN DIL_BATCH DB ON DB.BATCH_ID = DBI.BATCH_ID
  803. GROUP BY DB .BATCH_ID
  804. ) BRT ON BRT ."batchId"=DB .BATCH_ID
  805. WHERE WGM.DELETED=0 AND WGM.GM_TONNAGE>0 AND RP.PORT_NAME!='万州港'
  806. )
  807. GROUP BY "remark"
  808. ) temp2 ON temp2."remark"=BR ."remark"
  809. WHERE WGM.DELETED=0 AND WGM.GM_TONNAGE>0 AND RP.PORT_NAME!='万州港'
  810. )
  811. ORDER BY "type","materialName"
  812. </select>
  813. <select id="getRunStockList" resultType="java.util.Map">
  814. SELECT * FROM (
  815. SELECT DISTINCT
  816. RM.MATERIAL_NAME "materialName",
  817. DB.RESULT_FOREIGN_SHIP_NAME "resultForeignShipName",
  818. LT."gmTonnage" "gmTonnage",
  819. MT."totalTonnage" "totalTonnage",
  820. NVL(ADN.RESULT_MEMO,'块矿') "type",
  821. temp2."totalTonnage" "typeTotalTonnage"
  822. FROM AMSSHIP_DELIVERY_NOTICE ADN
  823. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON ADN.BATCH_ID=DBI.BATCH_INFACOTRY_ID
  824. LEFT JOIN AMSSHIP_DELIVERY_ATTORNEY ADA ON ADA.BATCH_ID = ADN.BATCH_ID
  825. LEFT JOIN DIL_BATCH DB ON DBI.BATCH_ID=DB.BATCH_ID
  826. LEFT JOIN RMS_MATERIAL RM ON DB.MATERIAL_ID=RM.MATERIAL_ID
  827. LEFT JOIN (
  828. SELECT TLSR.BATCH_ID "batchId",
  829. SUM(TLSR.RESULT_ACTUAL_INSTALLATIONS) "gmTonnage"
  830. FROM TMSSHIP_LOAD_SHIP_RESULT TLSR
  831. LEFT JOIN TMSSHIP_TOTAL_RESULT TLR ON TLR.RESULT_ID=TLSR.TOTAL_RESULT_ID
  832. LEFT JOIN OMSSHIP_INSTRUCTIONS_CAPACITY OIC ON OIC.INSTRUCTIONS_CAPACITY_ID=TLR.ORDER_ID
  833. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON TLSR.BATCH_ID=DBI.BATCH_INFACOTRY_ID
  834. LEFT JOIN DIL_BATCH DB ON DBI.BATCH_ID=DB.BATCH_ID
  835. LEFT JOIN AMSSHIP_DELIVERY_NOTICE ADN ON ADN.BATCH_ID=DBI.BATCH_INFACOTRY_ID
  836. WHERE OIC.DELETED=0 AND ADN.DELETED=0 AND TLSR.DELETED=0
  837. GROUP BY TLSR.BATCH_ID
  838. ) LT ON LT ."batchId"= ADN.BATCH_ID
  839. LEFT JOIN (
  840. SELECT RM.MATERIAL_NAME "materialName",
  841. SUM(TLSR.RESULT_ACTUAL_INSTALLATIONS) "totalTonnage"
  842. FROM TMSSHIP_LOAD_SHIP_RESULT TLSR
  843. LEFT JOIN TMSSHIP_TOTAL_RESULT TLR ON TLR.RESULT_ID=TLSR.TOTAL_RESULT_ID
  844. LEFT JOIN OMSSHIP_INSTRUCTIONS_CAPACITY OIC ON OIC.INSTRUCTIONS_CAPACITY_ID=TLR.ORDER_ID
  845. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON TLSR.BATCH_ID=DBI.BATCH_INFACOTRY_ID
  846. LEFT JOIN DIL_BATCH DB ON DBI.BATCH_ID=DB.BATCH_ID
  847. LEFT JOIN RMS_MATERIAL RM ON DB.MATERIAL_ID=RM.MATERIAL_ID
  848. LEFT JOIN AMSSHIP_DELIVERY_NOTICE ADN ON ADN.BATCH_ID=DBI.BATCH_INFACOTRY_ID
  849. WHERE OIC.DELETED=0 AND ADN.DELETED=0 AND TLSR.DELETED=0
  850. GROUP BY RM.MATERIAL_NAME
  851. ) MT ON MT."materialName"=RM.MATERIAL_NAME
  852. LEFT JOIN (
  853. --按发货通知备注统计数量
  854. SELECT "remark",
  855. SUM("gmTonnage") "totalTonnage"
  856. FROM (
  857. SELECT NVL(ADN.RESULT_MEMO,'块矿') "remark",
  858. SUM(TLSR.RESULT_ACTUAL_INSTALLATIONS) "gmTonnage"
  859. FROM TMSSHIP_LOAD_SHIP_RESULT TLSR
  860. LEFT JOIN TMSSHIP_TOTAL_RESULT TLR ON TLR.RESULT_ID=TLSR.TOTAL_RESULT_ID
  861. LEFT JOIN OMSSHIP_INSTRUCTIONS_CAPACITY OIC ON OIC.INSTRUCTIONS_CAPACITY_ID=TLR.ORDER_ID
  862. LEFT JOIN DIL_BATCH_INFACOTRY DBI ON TLSR.BATCH_ID=DBI.BATCH_INFACOTRY_ID
  863. LEFT JOIN DIL_BATCH DB ON DBI.BATCH_ID=DB.BATCH_ID
  864. LEFT JOIN AMSSHIP_DELIVERY_NOTICE ADN ON ADN.BATCH_ID=DBI.BATCH_INFACOTRY_ID
  865. WHERE OIC.DELETED=0 AND ADN.DELETED=0 AND TLSR.DELETED=0
  866. GROUP BY ADN.RESULT_MEMO
  867. )
  868. GROUP BY "remark"
  869. ) temp2 ON temp2."remark"=NVL(ADN.RESULT_MEMO,'块矿')
  870. WHERE LT."gmTonnage" > 0 AND ADN.DELETED=0 AND ADA.DELETED=0
  871. )
  872. ORDER BY "type","materialName"
  873. </select>
  874. </mapper>