OmstruckOrderSeparateMapper.xml 22 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501
  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.OmstruckOrderSeparateMapper">
  4. <sql id="orderBy">
  5. <if test="orderField != null and orderField != ''">
  6. order by "${orderField}"
  7. <if test="orderType != null and orderType != ''">
  8. ${orderType}
  9. </if>
  10. </if>
  11. </sql>
  12. <!--通过订单Id 查询关联的线路子表顺序-->
  13. <select id="getLineMesByOrderId" parameterType="int" resultType="java.util.LinkedHashMap">
  14. select RLS.SEGMENT_SQE "segmentSqe",
  15. RLS.SEGMENT_START_NODE_ID "type",
  16. RL.LINK_NAME "linkName",
  17. RLI.LINE_TYPE "lineType"
  18. from RMS_LINE_SEGEMNT RLS
  19. left join RMS_LINK RL
  20. on RL.LINK_ID = RLS.SEGMENT_START_NODE_ID
  21. left join RMS_LINE RLI
  22. ON RLI.LINE_ID = RLS.LINE_ID
  23. where RLS.LINE_ID = #{lineId}
  24. AND RLS.DELETED = 0
  25. order by "segmentSqe"
  26. </select>
  27. <!-- 通过运输订单Id查询运输信息 -->
  28. <select id="getOmstruckOrderResult" parameterType="java.math.BigDecimal" resultType="java.util.Map">
  29. select OO.ORDER_NUMBER "orderNumber",
  30. OO.ORDER_TYPE "orderType",
  31. OO.CAPACITY_ID "capacityId",
  32. OO.ORDER_PLAN_ID "orderPlanId",
  33. OOM.MATERIAL_ID "materialId",
  34. OOM.ORDER_MATERIAL_WEIGHT "orderMaterialWeight",
  35. OOM.ORDER_MATERIAL_NUMBER "orderMaterialNumber"
  36. from OMSTRUCK_ORDER OO
  37. left join OMSTRUCK_ORDER_MATERIAL OOM
  38. on OOM.ORDER_ID = OO.ORDER_ID
  39. where OO.ORDER_ID = #{orderId}
  40. </select>
  41. <!-- 通过运输订单号改变订单状态 -->
  42. <update id="updateOrderStatusByOrderNum" parameterType="map">
  43. update OMSTRUCK_ORDER OO
  44. set OO.ORDER_STATUS = #{orderStatus}
  45. where OO.ORDER_ID = #{orderId}
  46. </update>
  47. <!-- 修改运输订单趟次-->
  48. <update id="updateTimes">
  49. update AMSTRUCK_SPORADIC_ORDER set sporadic_order_times =#{times}
  50. where sporadic_order_id= #{orderPlanId}
  51. </update>
  52. <!-- 得到运单id -->
  53. <select id="getOrderIdByTotalId" parameterType="DECIMAL" resultType="DECIMAL">
  54. SELECT TTR.ORDER_ID AS "orderId"
  55. FROM TMSTRUCK_TOTAL_RESULT TTR
  56. WHERE TTR.RESULT_TOTAL_ID = #{resultTotalId}
  57. </select>
  58. <!-- 通过运单id得到运单信息 -->
  59. <select id="getOrderMessagge" parameterType="DECIMAL" resultType="java.util.Map">
  60. SELECT OO.ORDER_PLAN_ID AS "orderPlanId",
  61. OO.CAPACITY_ID AS "capacityId",
  62. OO.ORDER_TYPE AS "orderType",
  63. OO.ORDER_NUMBER AS "orderNumber",
  64. OO.UNLOAD_POINT_ID AS "unloadPointId",
  65. OO.LINE_ID "lineId",
  66. TTR.RESULT_TOTAL_ID "resultTotalId"
  67. FROM OMSTRUCK_ORDER OO
  68. left join TMSTRUCK_TOTAL_RESULT TTR
  69. on TTR.ORDER_ID = OO.ORDER_ID
  70. WHERE OO.ORDER_ID = #{orderId}
  71. </select>
  72. <!-- 查询路段名称 -->
  73. <select id="getSegmentList" parameterType="DECIMAL" resultType="java.util.LinkedHashMap">
  74. SELECT RL.LINK_NAME AS "linkName",
  75. RLS.SEGMENT_SQE "segmentSqe",
  76. RL.LINK_ID "linkId"
  77. FROM OMSTRUCK_ORDER OO
  78. LEFT JOIN RMS_LINE_SEGEMNT RLS
  79. ON RLS.LINE_ID = OO.LINE_ID
  80. LEFT JOIN RMS_LINK RL
  81. ON RL.LINK_ID = RLS.SEGMENT_START_NODE_ID
  82. WHERE ORDER_ID = #{orderId}
  83. AND RLS.DELETED = 0
  84. AND OO.ORDER_STATUS != 9
  85. ORDER BY RLS.SEGMENT_SQE
  86. </select>
  87. <!-- 查询实绩位置 -->
  88. <select id="getResultPointList" parameterType="DECIMAL" resultType="java.util.Map">
  89. SELECT DISTINCT RGE.GATEPOST_NAME "gatepostNameEnter",
  90. TER.RESULT_ENTRY_GATE_TIME "resultEntryGateTime",
  91. RTCP.TRUCK_CALCULATE_NUMBER "truckCalculateNumberP",
  92. TWRP.RESULT_TARE_WEIGHT_TIME "resultTareWeightTime",
  93. RWL.WAREHOUSE_NAME "warehouseNameLoad",
  94. TLR.RESULT_LOAD_END_TIME "resultLoadEndTime",
  95. RTCM.TRUCK_CALCULATE_NUMBER "truckCalculateNumberM",
  96. TWRM.RESULT_GROSS_WEIGHT_TIME "resultGrossWeightTime",
  97. RWU.WAREHOUSE_NAME "warehouseNameUnLoad",
  98. TUR.RESULT_START_TIME "resultStartTime",
  99. RGL.GATEPOST_NAME "gatepostNameLeave",
  100. TLFR.RESULT_OUT_GATE_TIME "resultOutGateTime",
  101. TTR.INSERT_TIME "returnTime"
  102. FROM TMSTRUCK_TOTAL_RESULT TTR
  103. LEFT JOIN TMSTRUCK_ENFACTORY_RESULT TER
  104. ON TER.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  105. LEFT JOIN RMS_GATEPOST RGE
  106. ON RGE.GATEPOST_ID = TER.GATEPOST_ID
  107. LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWRP
  108. ON TWRP.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  109. LEFT JOIN RMS_TRUCK_CALCULATE RTCP
  110. ON RTCP.TRUCK_CALCULATE_ID = TWRP.RESULT_TARE_PLACE_ID
  111. LEFT JOIN TMSTRUCK_LOAD_RESULT TLR
  112. ON TLR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  113. LEFT JOIN RMS_WAREHOUSE RWL
  114. ON RWL.WAREHOUSE_ID = TLR.LOADING_ID
  115. LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWRM
  116. ON TWRM.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  117. LEFT JOIN RMS_TRUCK_CALCULATE RTCM
  118. ON RTCM.TRUCK_CALCULATE_ID = TWRM.RESULT_GROSS_PLACE_ID
  119. LEFT JOIN TMSTRUCK_UNLOAD_RESULT TUR
  120. ON TUR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  121. LEFT JOIN RMS_WAREHOUSE RWU
  122. ON RWU.WAREHOUSE_ID = TUR.RESULT_UNLOAD_PLACE_ID
  123. LEFT JOIN TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
  124. ON TLFR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  125. LEFT JOIN RMS_GATEPOST RGL
  126. ON RGL.GATEPOST_ID = TLFR.GATEPOST_ID
  127. LEFT JOIN TMSTRUCK_RETURN_RESULT TRR
  128. ON TRR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  129. WHERE TTR.ORDER_ID = #{orderId}
  130. </select>
  131. <select id="getOrderIdByOrderNumber" parameterType="java.lang.String" resultType="DECIMAL">
  132. SELECT OO.ORDER_ID AS "orderId"
  133. FROM OMSTRUCK_ORDER OO
  134. WHERE OO.ORDER_NUMBER = #{orderNumber}
  135. </select>
  136. <!-- 通过总实绩ID查询物资ID -->
  137. <select id="getMaterialIdByTotalId" parameterType="int" resultType="java.lang.Integer">
  138. select OOM.MATERIAL_ID
  139. from TMSTRUCK_TOTAL_RESULT TTR
  140. left join OMSTRUCK_ORDER_MATERIAL OOM
  141. on OOM.ORDER_ID = TTR.ORDER_ID
  142. where TTR.RESULT_TOTAL_ID = #{resultTotalId}
  143. </select>
  144. <!-- 通过订单Id查询总实绩ID-->
  145. <select id="getTotalIdByOrderId" parameterType="java.math.BigDecimal" resultType="java.lang.Integer">
  146. select TTR.RESULT_TOTAL_ID
  147. from TMSTRUCK_TOTAL_RESULT TTR
  148. where TTR.ORDER_ID = #{orderId}
  149. </select>
  150. <!-- 通过总实绩ID和路段顺序号查询进厂实绩数据 -->
  151. <select id="getEnFactoryMes" parameterType="map" resultType="java.util.Map">
  152. select RG.GATEPOST_NAME "pointName",
  153. TER.RESULT_ENTRY_GATE_TIME "pointDate"
  154. from TMSTRUCK_ENFACTORY_RESULT TER
  155. left join RMS_GATEPOST RG
  156. on RG.GATEPOST_ID = TER.GATEPOST_ID
  157. where TER.RESULT_TOTAL_ID = #{resultTotalId} and TER.SEGMEN_SQE = #{segmentSqe}
  158. </select>
  159. <!-- 通过总实绩ID和路段顺序号查询计毛实绩数据 -->
  160. <select id="getMaoWeightMes" parameterType="map" resultType="java.util.Map">
  161. select RTC.TRUCK_CALCULATE_NUMBER "pointName",
  162. TWR.RESULT_GROSS_WEIGHT_TIME "pointDate",
  163. TWR.RESULT_GROSS_WEIGHT "weight"
  164. from TMSTRUCK_WEIGHT_RESULT TWR
  165. left join RMS_TRUCK_CALCULATE RTC
  166. on RTC.TRUCK_CALCULATE_ID = TWR.RESULT_GROSS_PLACE_ID
  167. where TWR.RESULT_TOTAL_ID = #{resultTotalId} and TWR.GROSS_SEGMENT_SQE = #{segmentSqe}
  168. </select>
  169. <!-- 通过总实绩ID和路段顺序号查询卸货实绩数据 -->
  170. <select id="getUnloadMes" parameterType="map" resultType="java.util.Map">
  171. select TUR.RESULT_END_TIME "pointDate",
  172. RW.WAREHOUSE_NAME "pointName"
  173. from TMSTRUCK_UNLOAD_RESULT TUR
  174. left join RMS_WAREHOUSE RW
  175. on RW.WAREHOUSE_ID = TUR.RESULT_UNLOAD_PLACE_ID
  176. where TUR.RESULT_TOTAL_ID = #{resultTotalId} AND TUR.SEGMENT_SQE = #{segmentSqe}
  177. </select>
  178. <!-- 通过总实绩ID和路段顺序号查询装货实绩数据-->
  179. <select id="getLoadMes" parameterType="map" resultType="java.util.Map">
  180. select TLR.RESULT_LOAD_END_TIME "pointDate",
  181. RW.WAREHOUSE_NAME "pointName"
  182. from TMSTRUCK_LOAD_RESULT TLR
  183. left join TMSTRUCK_TOTAL_RESULT TTR
  184. on TTR.RESULT_TOTAL_ID = TLR.RESULT_TOTAL_ID
  185. left join RMS_WAREHOUSE RW
  186. on RW.WAREHOUSE_ID = TLR.LOADING_ID
  187. where TLR.RESULT_TOTAL_ID = #{resultTotalId} and TLR.SEGMENT_SQE = #{segmentSqe}
  188. </select>
  189. <!-- 通过总实绩ID和路段顺序号查询出厂实绩数据 -->
  190. <select id="getOutFactoryMes" parameterType="map" resultType="java.util.Map">
  191. select TLFR.RESULT_OUT_GATE_TIME "pointDate",
  192. RG.GATEPOST_NAME "pointName"
  193. from TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
  194. left join RMS_GATEPOST RG
  195. on RG.GATEPOST_ID = TLFR.GATEPOST_ID
  196. where TLFR.RESULT_TOTAL_ID = #{resultTotalId} and TLFR.SEGMENT_SQE = #{segmentSqe}
  197. </select>
  198. <!-- 查询退货时间 -->
  199. <select id="getReturnMes" parameterType="map" resultType="java.util.Map">
  200. select TRR.INSERT_TIME "pointDate"
  201. from TMSTRUCK_RETURN_RESULT TRR
  202. where TRR.RESULT_TOTAL_ID = #{resultTotalId}
  203. </select>
  204. <!-- 通过总实绩ID和路段顺序号查询计皮实绩数据 -->
  205. <select id="getPiWeightMes" parameterType="map" resultType="java.util.Map">
  206. select RTC.TRUCK_CALCULATE_NUMBER "pointName",
  207. TWR.RESULT_TARE_WEIGHT_TIME "pointDate",
  208. TWR.RESULT_TARE_WEIGHT "weight"
  209. from TMSTRUCK_WEIGHT_RESULT TWR
  210. left join RMS_TRUCK_CALCULATE RTC
  211. on RTC.TRUCK_CALCULATE_ID = TWR.RESULT_TARE_PLACE_ID
  212. where TWR.RESULT_TOTAL_ID = #{resultTotalId} and TWR.TARE_SEGMENT_SQE = #{segmentSqe}
  213. </select>
  214. <!-- 查询承运商所属的采购进口矿运输订单信息 -->
  215. <select id="getInputOrderList" parameterType="java.util.Map" resultType="java.util.Map" >
  216. select
  217. *
  218. from
  219. (
  220. select
  221. OO.ORDER_ID "orderId",
  222. APO.PURCHASE_ORDER_ID "purchaseOrderId",
  223. AP.PLAN_ID "planId",
  224. APO.PURCHASE_ORDER_NO "purchaseOrderNo",
  225. RM.MATERIAL_NAME "materialName",
  226. AP.PLAN_NO "planNo",
  227. RC.CAPACITY_NUMBER "capacityNumber",
  228. RC.CAPACITY_ID "capacityId",
  229. OOM.ORDER_MATERIAL_WEIGHT "orderMaterialWeight",
  230. to_char(AP.PLAN_TRUCK_TIME, 'yyyy-mm-dd')"planTruckTime",
  231. to_char(AP.PLAN_INCOMING_TIME, 'yyyy-mm-dd') "planIncomingTime",
  232. OO.INSERT_USERNAME "insertUsername",
  233. OO.INSERT_TIME "insertTime",
  234. OO.ORDER_NUMBER "orderNumber",
  235. RW.WAREHOUSE_NAME "warehouseName", --卸货点
  236. to_char(OO.ORDER_ENTRY_TIME, 'yyyy-mm-dd') "orderEntryTime", --进厂时间
  237. RS.SUPPLIER_NAME "supplierName", --发货单位
  238. RCSE.CONSIGNEE_COMPANY_NAME "consigneeCompanyName", --收货单位,
  239. OO.ORDER_ISSUE_TIME "orderIssueTime"
  240. from OMSTRUCK_ORDER OO
  241. left join AMS_PURCHASE_ORDER APO
  242. on OO.ORDER_PLAN_ID = APO.PURCHASE_ORDER_ID
  243. left join AMSTRUCK_PURPLAN AP
  244. on AP.BATCH_ID = APO.BATCH_ID and AP.PLAN_STATUS != 3
  245. left join RMS_CAPACITY RC
  246. on RC.CAPACITY_ID = OO.CAPACITY_ID
  247. left join OMSTRUCK_ORDER_MATERIAL OOM
  248. on OOM.ORDER_ID = OO.ORDER_ID
  249. left join RMS_MATERIAL RM
  250. on RM.MATERIAL_ID = OOM.MATERIAL_ID
  251. left join RMS_WAREHOUSE RW
  252. on OO.UNLOAD_POINT_ID = RW.WAREHOUSE_ID
  253. left join RMS_SUPPLIER RS
  254. on RS.SUPPLIER_ID = APO.SUPPLIER_UNIT_ID
  255. left join RMS_CONSIGNEE RCSE
  256. on APO.RECEIVE_UNIT_ID = RCSE.CONSIGNEE_ID
  257. <where>
  258. <choose>
  259. <when test="orderStatus != 8">
  260. and OO.ORDER_STATUS = #{orderStatus}
  261. </when>
  262. <otherwise>
  263. and OO.ORDER_STATUS in (0, 1, 2, 4, 5, 6)
  264. </otherwise>
  265. </choose>
  266. <if test="carrierId != null ">
  267. and AP.CARRIER_ID = #{carrierId}
  268. </if>
  269. <if test="orderType != null">
  270. and OO.ORDER_TYPE = #{orderType}
  271. </if>
  272. <if test="orderType != null">
  273. and OO.ORDER_TYPE in (6, 7)
  274. </if>
  275. </where>
  276. )
  277. <where>
  278. <if test="materialName != null">
  279. <foreach collection="materialName" item="item" open="(" separator="or" close=")">
  280. "materialName" like '%${item}%'
  281. </foreach>
  282. </if>
  283. <if test="orderMaterialWeight != null">
  284. and
  285. <foreach collection="orderMaterialWeight" item="item" open="(" separator="or" close=")">
  286. "orderMaterialWeight" like '%${item}%'
  287. </foreach>
  288. </if>
  289. <if test="planNo != null">
  290. and
  291. <foreach collection="planNo" item="item" open="(" separator="or" close=")">
  292. "planNo" like '%${item}%'
  293. </foreach>
  294. </if>
  295. <if test="capacityNumber != null">
  296. and
  297. <foreach collection="capacityNumber" item="item" open="(" separator="or" close=")">
  298. "capacityNumber" like '%${item}%'
  299. </foreach>
  300. </if>
  301. <if test="planTruckTime != null">
  302. and
  303. <foreach collection="planTruckTime" item="item" open="(" separator="or" close=")">
  304. "planTruckTime" like '%${item}%'
  305. </foreach>
  306. </if>
  307. <if test="planIncomingTime != null">
  308. and
  309. <foreach collection="planIncomingTime" item="item" open="(" separator="or" close=")">
  310. "planIncomingTime" like '%${item}%'
  311. </foreach>
  312. </if>
  313. <if test="insertUsername != null">
  314. and
  315. <foreach collection="insertUsername" item="item" open="(" separator="or" close=")">
  316. "insertUsername" like '%${item}%'
  317. </foreach>
  318. </if>
  319. <if test="insertTime != null">
  320. and
  321. <foreach collection="insertTime" item="item" open="(" separator="or" close=")">
  322. "insertTime" like '%${item}%'
  323. </foreach>
  324. </if>
  325. <if test="warehouseName != null">
  326. and
  327. <foreach collection="warehouseName" item="item" open="(" separator="or" close=")">
  328. "warehouseName" like '%${item}%'
  329. </foreach>
  330. </if>
  331. <if test="orderNumber != null">
  332. and
  333. <foreach collection="orderNumber" item="item" open="(" separator="or" close=")">
  334. "orderNumber" like '%${item}%'
  335. </foreach>
  336. </if>
  337. <if test="orderEntryTime != null">
  338. and
  339. <foreach collection="orderEntryTime" item="item" open="(" separator="or" close=")">
  340. "orderEntryTime" like '%${item}%'
  341. </foreach>
  342. </if>
  343. <if test="supplierName != null">
  344. and
  345. <foreach collection="supplierName" item="item" open="(" separator="or" close=")">
  346. "supplierName" like '%${item}%'
  347. </foreach>
  348. </if>
  349. <if test="consigneeCompanyName != null">
  350. and
  351. <foreach collection="consigneeCompanyName" item="item" open="(" separator="or" close=")">
  352. "consigneeCompanyName" like '%${item}%'
  353. </foreach>
  354. </if>
  355. </where>
  356. <include refid="orderBy">
  357. </include>
  358. <if test="orderField == null ">
  359. order by "insertTime" desc
  360. </if>
  361. </select>
  362. <!-- 获取零星物资订单信息 -->
  363. <select id="getOthersOrderMesToSend" parameterType="map" resultType="java.util.Map">
  364. select
  365. *
  366. from
  367. (
  368. select
  369. OO.ORDER_ID "orderId",
  370. TTR.RESULT_TOTAL_ID "resultTotalId",
  371. ASO.SPORADIC_ORDER_NO "sporadicOrderNo",
  372. OO.ORDER_NUMBER "orderNumber",
  373. RS.SUPPLIER_NAME "sendCompany",
  374. RC2.CONSIGNEE_COMPANY_NAME "receiveCompany",
  375. ASO.INSERT_TIME "insertTime",
  376. RC.CAPACITY_NUMBER "capacityNumber"
  377. from OMSTRUCK_ORDER OO
  378. left join TMSTRUCK_TOTAL_RESULT TTR
  379. on TTR.ORDER_ID = OO.ORDER_ID
  380. left join RMS_CAPACITY RC
  381. on RC.CAPACITY_ID = OO.CAPACITY_ID
  382. left join AMSTRUCK_SPORADIC_ORDER ASO
  383. on ASO.SPORADIC_ORDER_ID = OO.ORDER_PLAN_ID
  384. left join RMS_SUPPLIER RS
  385. on RS.SUPPLIER_ID = ASO.SEND_UNIT_ID
  386. left join RMS_CONSIGNEE RC2
  387. on RC2.CONSIGNEE_ID = ASO.RECEIVE_UNIT_ID
  388. <where>
  389. OO.ORDER_STATUS = #{status}
  390. <if test="type == 1">
  391. and OO.ORDER_TYPE in (12, 13)
  392. </if>
  393. <if test="type == 2">
  394. and OO.ORDER_TYPE = 14
  395. </if>
  396. <if test="carrierId != null">
  397. and ASO.CARRIER_ID = (select rc.carrier_id from rms_carrier rc
  398. where rc.carrier_sso_id= #{carrierId})
  399. </if>
  400. </where>
  401. )
  402. <where>
  403. <if test="sporadicOrderNo != null">
  404. <foreach collection="sporadicOrderNo" item="item" open="(" separator="or" close=")">
  405. "sporadicOrderNo" like '%${item}%'
  406. </foreach>
  407. </if>
  408. <if test="orderNumber != null">
  409. and
  410. <foreach collection="orderNumber" item="item" open="(" separator="or" close=")">
  411. "orderNumber" like '%${item}%'
  412. </foreach>
  413. </if>
  414. <if test="sendCompany != null">
  415. and
  416. <foreach collection="sendCompany" item="item" open="(" separator="or" close=")">
  417. "sendCompany" like '%${item}%'
  418. </foreach>
  419. </if>
  420. <if test="receiveCompany != null">
  421. and
  422. <foreach collection="receiveCompany" item="item" open="(" separator="or" close=")">
  423. "receiveCompany" like '%${item}%'
  424. </foreach>
  425. </if>
  426. <if test="insertTime != null">
  427. and
  428. <foreach collection="insertTime" item="item" open="(" separator="or" close=")">
  429. "insertTime" like '%${item}%'
  430. </foreach>
  431. </if>
  432. <if test="capacityNumber != null">
  433. and
  434. <foreach collection="capacityNumber" item="item" open="(" separator="or" close=")">
  435. "capacityNumber" like '%${item}%'
  436. </foreach>
  437. </if>
  438. </where>
  439. <include refid="orderBy">
  440. </include>
  441. <if test="orderField == null ">
  442. order by "insertTime" desc
  443. </if>
  444. </select>
  445. <!-- 查询销售订单的物资件数或重量 -->
  446. <select id="getWeightOrNumber" parameterType="DECIMAL" resultType="java.util.Map" >
  447. SELECT ASM.MATERIAL_NUMBER AS "materialNumber",
  448. ASM.MATERIAL_WEIGHT AS "materialWeight"
  449. FROM AMS_SALE_ORDER_MATERIAL ASOM
  450. LEFT JOIN AMS_SALE_TRUCKNO_MATERIAL ASTM
  451. ON ASTM.SALE_ORDER_MATERIAL_ID = ASOM.SALE_ORDER_MATERIAL_ID
  452. LEFT JOIN AMS_SALE_MATERIAL ASM
  453. ON ASM.SALE_MATERIAL_ID = ASTM.MATERIAL_ID
  454. WHERE ASOM.SALE_ORDER_MATERIAL_ID = #{saleOrderMaterialId}
  455. </select>
  456. <!-- 查询当前车辆之前所有已完成的订单 -->
  457. <select id="getCapacityAllOrder" parameterType="string" resultType="java.util.Map">
  458. select OO.ORDER_ID "orderId",
  459. OO.ORDER_NUMBER "orderNumber"
  460. from OMSTRUCK_ORDER OO
  461. left join RMS_CAPACITY RC
  462. on RC.CAPACITY_ID = OO.CAPACITY_ID
  463. where CAPACITY_NUMBER = #{capacityNumber}
  464. and OO.ORDER_STATUS = 2
  465. order by OO.ORDER_ID desc
  466. </select>
  467. <!-- 查询订单发货日期 (订单类型为2) -->
  468. <select id="getDeliveryDate" parameterType="object" resultType="int">
  469. select OO.ORDER_ID
  470. from OMSTRUCK_ORDER OO
  471. join AMS_SALE_ORDER_MATERIAL ASOM
  472. on ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
  473. where OO.ORDER_ID = #{orderId}
  474. and TO_CHAR(ASOM.SALE_DATE_OF_RECEIPT, 'YYYY-MM-DD') = TO_CHAR(SYSDATE, 'YYYY-MM-DD')
  475. </select>
  476. </mapper>