OmstruckOrderSeparateMapper.xml 27 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634
  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. <!-- 修改运输订单已运输趟次-->
  53. <update id="updateTranTimes">
  54. update AMSTRUCK_SPORADIC_ORDER set SPORADIC_TRANS_TIMES =#{times}
  55. where sporadic_order_id= #{orderPlanId}
  56. </update>
  57. <!-- 得到运单id -->
  58. <select id="getOrderIdByTotalId" parameterType="DECIMAL" resultType="DECIMAL">
  59. SELECT TTR.ORDER_ID AS "orderId"
  60. FROM TMSTRUCK_TOTAL_RESULT TTR
  61. WHERE TTR.RESULT_TOTAL_ID = #{resultTotalId}
  62. </select>
  63. <!-- 通过运单id得到运单信息 -->
  64. <select id="getOrderMessagge" parameterType="DECIMAL" resultType="java.util.Map">
  65. SELECT OO.ORDER_PLAN_ID AS "orderPlanId",
  66. OO.CAPACITY_ID AS "capacityId",
  67. OO.ORDER_TYPE AS "orderType",
  68. OO.ORDER_NUMBER AS "orderNumber",
  69. OO.UNLOAD_POINT_ID AS "unloadPointId",
  70. OO.LINE_ID "lineId",
  71. TTR.RESULT_TOTAL_ID "resultTotalId"
  72. FROM OMSTRUCK_ORDER OO
  73. left join TMSTRUCK_TOTAL_RESULT TTR
  74. on TTR.ORDER_ID = OO.ORDER_ID
  75. WHERE OO.ORDER_ID = #{orderId}
  76. </select>
  77. <!-- 查询路段名称 -->
  78. <select id="getSegmentList" parameterType="DECIMAL" resultType="java.util.LinkedHashMap">
  79. SELECT RL.LINK_NAME AS "linkName",
  80. RLS.SEGMENT_SQE "segmentSqe",
  81. RL.LINK_ID "linkId"
  82. FROM OMSTRUCK_ORDER OO
  83. LEFT JOIN RMS_LINE_SEGEMNT RLS
  84. ON RLS.LINE_ID = OO.LINE_ID
  85. LEFT JOIN RMS_LINK RL
  86. ON RL.LINK_ID = RLS.SEGMENT_START_NODE_ID
  87. WHERE ORDER_ID = #{orderId}
  88. AND RLS.DELETED = 0
  89. AND OO.ORDER_STATUS != 9
  90. ORDER BY RLS.SEGMENT_SQE
  91. </select>
  92. <!-- 查询实绩位置 -->
  93. <select id="getResultPointList" parameterType="DECIMAL" resultType="java.util.Map">
  94. SELECT DISTINCT RGE.GATEPOST_NAME "gatepostNameEnter",
  95. TER.RESULT_ENTRY_GATE_TIME "resultEntryGateTime",
  96. RTCP.TRUCK_CALCULATE_NUMBER "truckCalculateNumberP",
  97. TWRP.RESULT_TARE_WEIGHT_TIME "resultTareWeightTime",
  98. RWL.WAREHOUSE_NAME "warehouseNameLoad",
  99. TLR.RESULT_LOAD_END_TIME "resultLoadEndTime",
  100. RTCM.TRUCK_CALCULATE_NUMBER "truckCalculateNumberM",
  101. TWRM.RESULT_GROSS_WEIGHT_TIME "resultGrossWeightTime",
  102. RWU.WAREHOUSE_NAME "warehouseNameUnLoad",
  103. TUR.RESULT_START_TIME "resultStartTime",
  104. RGL.GATEPOST_NAME "gatepostNameLeave",
  105. TLFR.RESULT_OUT_GATE_TIME "resultOutGateTime",
  106. TTR.INSERT_TIME "returnTime"
  107. FROM TMSTRUCK_TOTAL_RESULT TTR
  108. LEFT JOIN TMSTRUCK_ENFACTORY_RESULT TER
  109. ON TER.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  110. LEFT JOIN RMS_GATEPOST RGE
  111. ON RGE.GATEPOST_ID = TER.GATEPOST_ID
  112. LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWRP
  113. ON TWRP.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  114. LEFT JOIN RMS_TRUCK_CALCULATE RTCP
  115. ON RTCP.TRUCK_CALCULATE_ID = TWRP.RESULT_TARE_PLACE_ID
  116. LEFT JOIN TMSTRUCK_LOAD_RESULT TLR
  117. ON TLR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  118. LEFT JOIN RMS_WAREHOUSE RWL
  119. ON RWL.WAREHOUSE_ID = TLR.LOADING_ID
  120. LEFT JOIN TMSTRUCK_WEIGHT_RESULT TWRM
  121. ON TWRM.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  122. LEFT JOIN RMS_TRUCK_CALCULATE RTCM
  123. ON RTCM.TRUCK_CALCULATE_ID = TWRM.RESULT_GROSS_PLACE_ID
  124. LEFT JOIN TMSTRUCK_UNLOAD_RESULT TUR
  125. ON TUR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  126. LEFT JOIN RMS_WAREHOUSE RWU
  127. ON RWU.WAREHOUSE_ID = TUR.RESULT_UNLOAD_PLACE_ID
  128. LEFT JOIN TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
  129. ON TLFR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  130. LEFT JOIN RMS_GATEPOST RGL
  131. ON RGL.GATEPOST_ID = TLFR.GATEPOST_ID
  132. LEFT JOIN TMSTRUCK_RETURN_RESULT TRR
  133. ON TRR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  134. WHERE TTR.ORDER_ID = #{orderId}
  135. </select>
  136. <select id="getOrderIdByOrderNumber" parameterType="java.lang.String" resultType="DECIMAL">
  137. SELECT OO.ORDER_ID AS "orderId"
  138. FROM OMSTRUCK_ORDER OO
  139. WHERE OO.ORDER_NUMBER = #{orderNumber}
  140. </select>
  141. <!-- 通过总实绩ID查询物资ID -->
  142. <select id="getMaterialIdByTotalId" parameterType="int" resultType="java.lang.Integer">
  143. select OOM.MATERIAL_ID
  144. from TMSTRUCK_TOTAL_RESULT TTR
  145. left join OMSTRUCK_ORDER_MATERIAL OOM
  146. on OOM.ORDER_ID = TTR.ORDER_ID
  147. where TTR.RESULT_TOTAL_ID = #{resultTotalId}
  148. </select>
  149. <!-- 通过订单Id查询总实绩ID-->
  150. <select id="getTotalIdByOrderId" parameterType="java.math.BigDecimal" resultType="java.lang.Integer">
  151. select TTR.RESULT_TOTAL_ID
  152. from TMSTRUCK_TOTAL_RESULT TTR
  153. where TTR.ORDER_ID = #{orderId}
  154. </select>
  155. <!-- 通过总实绩ID和路段顺序号查询进厂实绩数据 -->
  156. <select id="getEnFactoryMes" parameterType="map" resultType="java.util.Map">
  157. select RG.GATEPOST_NAME "pointName",
  158. TER.RESULT_ENTRY_GATE_TIME "pointDate"
  159. from TMSTRUCK_ENFACTORY_RESULT TER
  160. left join RMS_GATEPOST RG
  161. on RG.GATEPOST_ID = TER.GATEPOST_ID
  162. where TER.RESULT_TOTAL_ID = #{resultTotalId} and TER.SEGMEN_SQE = #{segmentSqe}
  163. </select>
  164. <!-- 通过总实绩ID和路段顺序号查询计毛实绩数据 -->
  165. <select id="getMaoWeightMes" parameterType="map" resultType="java.util.Map">
  166. select RTC.TRUCK_CALCULATE_NUMBER "pointName",
  167. TWR.RESULT_GROSS_WEIGHT_TIME "pointDate",
  168. TWR.RESULT_GROSS_WEIGHT "weight"
  169. from TMSTRUCK_WEIGHT_RESULT TWR
  170. left join RMS_TRUCK_CALCULATE RTC
  171. on RTC.TRUCK_CALCULATE_ID = TWR.RESULT_GROSS_PLACE_ID
  172. where TWR.RESULT_TOTAL_ID = #{resultTotalId} and TWR.GROSS_SEGMENT_SQE = #{segmentSqe}
  173. </select>
  174. <!-- 通过总实绩ID和路段顺序号查询卸货实绩数据 -->
  175. <select id="getUnloadMes" parameterType="map" resultType="java.util.Map">
  176. select TUR.RESULT_END_TIME "pointDate",
  177. RW.WAREHOUSE_NAME "pointName"
  178. from TMSTRUCK_UNLOAD_RESULT TUR
  179. left join RMS_WAREHOUSE RW
  180. on RW.WAREHOUSE_ID = TUR.RESULT_UNLOAD_PLACE_ID
  181. where TUR.RESULT_TOTAL_ID = #{resultTotalId} AND TUR.SEGMENT_SQE = #{segmentSqe}
  182. </select>
  183. <!-- 通过总实绩ID和路段顺序号查询装货实绩数据-->
  184. <select id="getLoadMes" parameterType="map" resultType="java.util.Map">
  185. select TLR.RESULT_LOAD_END_TIME "pointDate",
  186. RW.WAREHOUSE_NAME "pointName"
  187. from TMSTRUCK_LOAD_RESULT TLR
  188. left join TMSTRUCK_TOTAL_RESULT TTR
  189. on TTR.RESULT_TOTAL_ID = TLR.RESULT_TOTAL_ID
  190. left join RMS_WAREHOUSE RW
  191. on RW.WAREHOUSE_ID = TLR.LOADING_ID
  192. where TLR.RESULT_TOTAL_ID = #{resultTotalId} and TLR.SEGMENT_SQE = #{segmentSqe}
  193. </select>
  194. <!-- 通过总实绩ID和路段顺序号查询出厂实绩数据 -->
  195. <select id="getOutFactoryMes" parameterType="map" resultType="java.util.Map">
  196. select TLFR.RESULT_OUT_GATE_TIME "pointDate",
  197. RG.GATEPOST_NAME "pointName"
  198. from TMSTRUCK_LEAVE_FACTORY_RESULT TLFR
  199. left join RMS_GATEPOST RG
  200. on RG.GATEPOST_ID = TLFR.GATEPOST_ID
  201. where TLFR.RESULT_TOTAL_ID = #{resultTotalId} and TLFR.SEGMENT_SQE = #{segmentSqe}
  202. </select>
  203. <!-- 查询退货时间 -->
  204. <select id="getReturnMes" parameterType="map" resultType="java.util.Map">
  205. select TRR.INSERT_TIME "pointDate"
  206. from TMSTRUCK_RETURN_RESULT TRR
  207. where TRR.RESULT_TOTAL_ID = #{resultTotalId}
  208. </select>
  209. <!-- 通过总实绩ID和路段顺序号查询计皮实绩数据 -->
  210. <select id="getPiWeightMes" parameterType="map" resultType="java.util.Map">
  211. select RTC.TRUCK_CALCULATE_NUMBER "pointName",
  212. TWR.RESULT_TARE_WEIGHT_TIME "pointDate",
  213. TWR.RESULT_TARE_WEIGHT "weight"
  214. from TMSTRUCK_WEIGHT_RESULT TWR
  215. left join RMS_TRUCK_CALCULATE RTC
  216. on RTC.TRUCK_CALCULATE_ID = TWR.RESULT_TARE_PLACE_ID
  217. where TWR.RESULT_TOTAL_ID = #{resultTotalId} and TWR.TARE_SEGMENT_SQE = #{segmentSqe}
  218. </select>
  219. <!-- 查询承运商所属的采购进口矿运输订单信息 -->
  220. <select id="getInputOrderList" parameterType="java.util.Map" resultType="java.util.Map" >
  221. select
  222. *
  223. from
  224. (
  225. select
  226. OO.ORDER_ID "orderId",
  227. APO.PURCHASE_ORDER_ID "purchaseOrderId",
  228. AP.PLAN_ID "planId",
  229. APO.PURCHASE_ORDER_NO "purchaseOrderNo",
  230. RM.MATERIAL_NAME "materialName",
  231. AP.PLAN_NO "planNo",
  232. RC.CAPACITY_NUMBER "capacityNumber",
  233. RC.CAPACITY_ID "capacityId",
  234. OOM.ORDER_MATERIAL_WEIGHT "orderMaterialWeight",
  235. to_char(AP.PLAN_TRUCK_TIME, 'yyyy-mm-dd')"planTruckTime",
  236. to_char(AP.PLAN_INCOMING_TIME, 'yyyy-mm-dd') "planIncomingTime",
  237. OO.INSERT_USERNAME "insertUsername",
  238. OO.INSERT_TIME "insertTime",
  239. OO.ORDER_NUMBER "orderNumber",
  240. RW.WAREHOUSE_NAME "warehouseName", --卸货点
  241. to_char(OO.ORDER_ENTRY_TIME, 'yyyy-mm-dd') "orderEntryTime", --进厂时间
  242. RS.SUPPLIER_NAME "supplierName", --发货单位
  243. RCSE.CONSIGNEE_COMPANY_NAME "consigneeCompanyName", --收货单位,
  244. OO.ORDER_ISSUE_TIME "orderIssueTime"
  245. from OMSTRUCK_ORDER OO
  246. left join AMS_PURCHASE_ORDER APO
  247. on OO.ORDER_PLAN_ID = APO.PURCHASE_ORDER_ID
  248. left join AMSTRUCK_PURPLAN AP
  249. on AP.BATCH_ID = APO.BATCH_ID and AP.PLAN_STATUS != 3
  250. left join RMS_CAPACITY RC
  251. on RC.CAPACITY_ID = OO.CAPACITY_ID
  252. left join OMSTRUCK_ORDER_MATERIAL OOM
  253. on OOM.ORDER_ID = OO.ORDER_ID
  254. left join RMS_MATERIAL RM
  255. on RM.MATERIAL_ID = OOM.MATERIAL_ID
  256. left join RMS_WAREHOUSE RW
  257. on OO.UNLOAD_POINT_ID = RW.WAREHOUSE_ID
  258. left join RMS_SUPPLIER RS
  259. on RS.SUPPLIER_ID = APO.SUPPLIER_UNIT_ID
  260. left join RMS_CONSIGNEE RCSE
  261. on APO.RECEIVE_UNIT_ID = RCSE.CONSIGNEE_ID
  262. <where>
  263. <choose>
  264. <when test="orderStatus != 8">
  265. and OO.ORDER_STATUS = #{orderStatus}
  266. </when>
  267. <otherwise>
  268. and OO.ORDER_STATUS in (0, 1, 2, 4, 5, 6)
  269. </otherwise>
  270. </choose>
  271. <if test="carrierId != null ">
  272. and AP.CARRIER_ID = #{carrierId}
  273. </if>
  274. <if test="orderType != null">
  275. and OO.ORDER_TYPE = #{orderType}
  276. </if>
  277. <if test="orderType != null">
  278. and OO.ORDER_TYPE in (6, 7)
  279. </if>
  280. </where>
  281. )
  282. <where>
  283. <if test="materialName != null">
  284. <foreach collection="materialName" item="item" open="(" separator="or" close=")">
  285. "materialName" like '%${item}%'
  286. </foreach>
  287. </if>
  288. <if test="orderMaterialWeight != null">
  289. and
  290. <foreach collection="orderMaterialWeight" item="item" open="(" separator="or" close=")">
  291. "orderMaterialWeight" like '%${item}%'
  292. </foreach>
  293. </if>
  294. <if test="planNo != null">
  295. and
  296. <foreach collection="planNo" item="item" open="(" separator="or" close=")">
  297. "planNo" like '%${item}%'
  298. </foreach>
  299. </if>
  300. <if test="capacityNumber != null">
  301. and
  302. <foreach collection="capacityNumber" item="item" open="(" separator="or" close=")">
  303. "capacityNumber" like '%${item}%'
  304. </foreach>
  305. </if>
  306. <if test="planTruckTime != null">
  307. and
  308. <foreach collection="planTruckTime" item="item" open="(" separator="or" close=")">
  309. "planTruckTime" like '%${item}%'
  310. </foreach>
  311. </if>
  312. <if test="planIncomingTime != null">
  313. and
  314. <foreach collection="planIncomingTime" item="item" open="(" separator="or" close=")">
  315. "planIncomingTime" like '%${item}%'
  316. </foreach>
  317. </if>
  318. <if test="insertUsername != null">
  319. and
  320. <foreach collection="insertUsername" item="item" open="(" separator="or" close=")">
  321. "insertUsername" like '%${item}%'
  322. </foreach>
  323. </if>
  324. <if test="insertTime != null">
  325. and
  326. <foreach collection="insertTime" item="item" open="(" separator="or" close=")">
  327. "insertTime" like '%${item}%'
  328. </foreach>
  329. </if>
  330. <if test="warehouseName != null">
  331. and
  332. <foreach collection="warehouseName" item="item" open="(" separator="or" close=")">
  333. "warehouseName" like '%${item}%'
  334. </foreach>
  335. </if>
  336. <if test="orderNumber != null">
  337. and
  338. <foreach collection="orderNumber" item="item" open="(" separator="or" close=")">
  339. "orderNumber" like '%${item}%'
  340. </foreach>
  341. </if>
  342. <if test="orderEntryTime != null">
  343. and
  344. <foreach collection="orderEntryTime" item="item" open="(" separator="or" close=")">
  345. "orderEntryTime" like '%${item}%'
  346. </foreach>
  347. </if>
  348. <if test="supplierName != null">
  349. and
  350. <foreach collection="supplierName" item="item" open="(" separator="or" close=")">
  351. "supplierName" like '%${item}%'
  352. </foreach>
  353. </if>
  354. <if test="consigneeCompanyName != null">
  355. and
  356. <foreach collection="consigneeCompanyName" item="item" open="(" separator="or" close=")">
  357. "consigneeCompanyName" like '%${item}%'
  358. </foreach>
  359. </if>
  360. </where>
  361. <include refid="orderBy">
  362. </include>
  363. <if test="orderField == null ">
  364. order by "insertTime" desc
  365. </if>
  366. </select>
  367. <!-- 获取零星物资订单信息 -->
  368. <select id="getOthersOrderMesToSend" parameterType="map" resultType="java.util.Map">
  369. select
  370. *
  371. from
  372. (
  373. select OO.ORDER_ID "orderId",
  374. TTR.RESULT_TOTAL_ID "resultTotalId",
  375. ASO.SPORADIC_ORDER_NO "sporadicOrderNo",
  376. OO.ORDER_NUMBER "orderNumber",
  377. RS.SUPPLIER_NAME "sendCompany",
  378. RC2.CONSIGNEE_COMPANY_NAME "receiveCompany",
  379. ASO.INSERT_TIME "insertTime",
  380. RC.CAPACITY_NUMBER "capacityNumber",
  381. RM.MATERIAL_NAME "materialName",
  382. rce.carrier_name "carrierName"
  383. from OMSTRUCK_ORDER OO
  384. left join TMSTRUCK_TOTAL_RESULT TTR
  385. on TTR.ORDER_ID = OO.ORDER_ID
  386. left join RMS_CAPACITY RC
  387. on RC.CAPACITY_ID = OO.CAPACITY_ID
  388. left join AMSTRUCK_SPORADIC_ORDER ASO
  389. on ASO.SPORADIC_ORDER_ID = OO.ORDER_PLAN_ID
  390. left join RMS_SUPPLIER RS
  391. on RS.SUPPLIER_ID = ASO.SEND_UNIT_ID
  392. left join RMS_CONSIGNEE RC2
  393. on RC2.CONSIGNEE_ID = ASO.RECEIVE_UNIT_ID
  394. left join OMSTRUCK_ORDER_MATERIAL OOM
  395. on oom.order_id = oo.order_id
  396. left join rms_material rm
  397. on rm.material_id = oom.material_id
  398. left join rms_carrier rce
  399. on rce.carrier_id = aso.carrier_id
  400. <where>
  401. <if test="status != null">
  402. and OO.ORDER_STATUS = #{status}
  403. </if>
  404. <if test="type == 1">
  405. and OO.ORDER_TYPE in (12, 13)
  406. </if>
  407. <if test="type == 2">
  408. and OO.ORDER_TYPE = 14
  409. </if>
  410. <if test="type == 3">
  411. and OO.ORDER_TYPE in (15,16)
  412. </if>
  413. <if test="type1!=null">
  414. and OO.ORDER_STATUS IN (2,5)
  415. </if>
  416. <if test="carrierId != null">
  417. and ASO.CARRIER_ID = (select rc.carrier_id from rms_carrier rc
  418. where rc.carrier_sso_id= #{carrierId})
  419. </if>
  420. <if test="userId != null">
  421. and ASO.INSERT_USERNAME= #{userId}
  422. </if>
  423. <if test="usersId != null">
  424. and ASO.UPDATE_USERNAME= #{usersId}
  425. </if>
  426. </where>
  427. )
  428. <where>
  429. <if test="sporadicOrderNo != null">
  430. <foreach collection="sporadicOrderNo" item="item" open="(" separator="or" close=")">
  431. "sporadicOrderNo" like '%${item}%'
  432. </foreach>
  433. </if>
  434. <if test="orderNumber != null">
  435. and
  436. <foreach collection="orderNumber" item="item" open="(" separator="or" close=")">
  437. "orderNumber" like '%${item}%'
  438. </foreach>
  439. </if>
  440. <if test="sendCompany != null">
  441. and
  442. <foreach collection="sendCompany" item="item" open="(" separator="or" close=")">
  443. "sendCompany" like '%${item}%'
  444. </foreach>
  445. </if>
  446. <if test="receiveCompany != null">
  447. and
  448. <foreach collection="receiveCompany" item="item" open="(" separator="or" close=")">
  449. "receiveCompany" like '%${item}%'
  450. </foreach>
  451. </if>
  452. <if test="insertTime != null">
  453. and
  454. <foreach collection="insertTime" item="item" open="(" separator="or" close=")">
  455. "insertTime" like '%${item}%'
  456. </foreach>
  457. </if>
  458. <if test="capacityNumber != null">
  459. and
  460. <foreach collection="capacityNumber" item="item" open="(" separator="or" close=")">
  461. "capacityNumber" like '%${item}%'
  462. </foreach>
  463. </if>
  464. </where>
  465. <include refid="orderBy">
  466. </include>
  467. <if test="orderField == null ">
  468. order by "insertTime" desc
  469. </if>
  470. </select>
  471. <!-- 查询销售订单的物资件数或重量 -->
  472. <select id="getWeightOrNumber" parameterType="DECIMAL" resultType="java.util.Map" >
  473. SELECT ASM.MATERIAL_NUMBER AS "materialNumber",
  474. ASM.MATERIAL_WEIGHT AS "materialWeight"
  475. FROM AMS_SALE_ORDER_MATERIAL ASOM
  476. LEFT JOIN AMS_SALE_TRUCKNO_MATERIAL ASTM
  477. ON ASTM.SALE_ORDER_MATERIAL_ID = ASOM.SALE_ORDER_MATERIAL_ID
  478. LEFT JOIN AMS_SALE_MATERIAL ASM
  479. ON ASM.SALE_MATERIAL_ID = ASTM.MATERIAL_ID
  480. WHERE ASOM.SALE_ORDER_MATERIAL_ID = #{saleOrderMaterialId}
  481. </select>
  482. <!-- 查询当前车辆之前所有已完成的订单 -->
  483. <select id="getCapacityAllOrder" parameterType="string" resultType="java.util.Map">
  484. select OO.ORDER_ID "orderId",
  485. OO.ORDER_NUMBER "orderNumber"
  486. from OMSTRUCK_ORDER OO
  487. left join RMS_CAPACITY RC
  488. on RC.CAPACITY_ID = OO.CAPACITY_ID
  489. where CAPACITY_NUMBER = #{capacityNumber}
  490. and OO.ORDER_STATUS = 2
  491. order by OO.ORDER_ID desc
  492. </select>
  493. <!-- 查询订单发货日期 (订单类型为2) -->
  494. <select id="getDeliveryDate" parameterType="object" resultType="int">
  495. select OO.ORDER_ID
  496. from OMSTRUCK_ORDER OO
  497. join AMS_SALE_ORDER_MATERIAL ASOM
  498. on ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
  499. where OO.ORDER_ID = #{orderId}
  500. and TO_CHAR(ASOM.SALE_DATE_OF_RECEIPT, 'YYYY-MM-DD') >= TO_CHAR(SYSDATE, 'YYYY-MM-DD')
  501. </select>
  502. <!-- 修改运输订单趟次-->
  503. <!-- <update id="updateTimes">-->
  504. <!-- update AMSTRUCK_SPORADIC_ORDER set sporadic_order_times =#{times}-->
  505. <!-- where sporadic_order_id= #{orderPlanId}-->
  506. <!-- </update>-->
  507. <select id="getSaleAllMessages" parameterType="DECIMAL" resultType="java.util.Map">
  508. SELECT ASOM.SALE_ORDER_ID AS "saleOrderId",
  509. ASO.CLOSE_STATUS AS "closeStatus"
  510. FROM OMSTRUCK_ORDER OO
  511. LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM
  512. ON ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
  513. LEFT JOIN AMS_SALE_ORDER ASO
  514. ON ASO.SALE_ORDER_ID = ASOM.SALE_ORDER_ID
  515. WHERE OO.ORDER_ID = #{orderId}
  516. </select>
  517. <select id="getMaxTruckNo" parameterType="DECIMAL" resultType="java.util.Map">
  518. SELECT ASOM.SALE_ORDER_MATERIAL_TRUCK_NO AS "truckNo"
  519. FROM OMSTRUCK_ORDER OO
  520. LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM
  521. ON ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
  522. WHERE ASOM.SALE_ORDER_ID = #{saleOrderId}
  523. ORDER BY ASOM.SALE_ORDER_MATERIAL_TRUCK_NO DESC
  524. </select>
  525. <select id="getMapList" parameterType="DECIMAL" resultType="java.util.Map">
  526. SELECT ASOM.SALE_SHIPPING_ADDRESS_ID AS "saleShippingAddressId",
  527. ASOM.SALE_ORDER_CONSIGNEE AS "saleOrderConsignee",
  528. ASOM.SALE_ORDER_CONSIGNEE_TEL AS "saleOrderConsigneeTel",
  529. ASM.SALE_MATERIAL_ID AS "saleMaterialId",
  530. ADSO.CARRIER_ID AS "carrierId",
  531. OO.LINE_ID AS "lineId",
  532. OOM.MATERIAL_ID AS "materialId",
  533. OOM.ORDER_MATERIAL_WEIGHT AS "orderPlanWeight",
  534. RC.CAPACITY_NUMBER AS "capacityNumber"
  535. FROM OMSTRUCK_ORDER OO
  536. LEFT JOIN AMS_SALE_ORDER_MATERIAL ASOM
  537. ON ASOM.SALE_ORDER_MATERIAL_ID = OO.ORDER_PLAN_ID
  538. LEFT JOIN AMS_DISPATCH_SALE_ORDER ADSO
  539. ON ADSO.SALE_ORDER_MATERIAL_ID = ASOM.SALE_ORDER_MATERIAL_ID
  540. LEFT JOIN AMS_SALE_MATERIAL ASM
  541. ON ASM.SALE_ORDER_ID = ASOM.SALE_ORDER_ID
  542. LEFT JOIN OMSTRUCK_ORDER_MATERIAL OOM
  543. ON OOM.ORDER_ID = OO.ORDER_ID
  544. LEFT JOIN RMS_CAPACITY RC
  545. ON RC.CAPACITY_ID = OO.CAPACITY_ID
  546. WHERE OO.ORDER_ID = #{orderId}
  547. </select>
  548. <!-- 修改采购订单是否为一车多趟 -->
  549. <update id="updateAPOisMoreTrips" parameterType="java.math.BigDecimal">
  550. update AMS_PURCHASE_ORDER APO
  551. set APO.IS_MORE_TRIPS = 1
  552. where APO.PURCHASE_ORDER_ID = #{purchaseOrderId}
  553. </update>
  554. <!-- 通过装卸工SSOID查询装过的订单信息 -->
  555. <select id="getAllLoaderLoadingOrder" parameterType="map" resultType="java.util.Map">
  556. select OO.ORDER_ID "orderId",
  557. OO.ORDER_NUMBER "orderNumber",
  558. RC.CAPACITY_NUMBER "capacityNumber"
  559. from OMSTRUCK_ORDER OO
  560. left join TMSTRUCK_TOTAL_RESULT TTR
  561. on TTR.ORDER_ID = OO.ORDER_ID
  562. left join RMS_CAPACITY RC
  563. on RC.CAPACITY_ID = OO.CAPACITY_ID
  564. <if test="loaderSsoId != null">
  565. left join TMSTRUCK_LOAD_RESULT TLR
  566. on TLR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  567. left join RMS_PERSONNEL RP
  568. on RP.PERSONNEL_ID = TLR.LOADER_ID
  569. </if>
  570. <if test="unLoaderSsoId != null">
  571. left join TMSTRUCK_UNLOAD_RESULT TUR
  572. on TUR.RESULT_TOTAL_ID = TTR.RESULT_TOTAL_ID
  573. left join RMS_PERSONNEL RP
  574. on RP.PERSONNEL_ID = TUR.UNLOADER_ID
  575. </if>
  576. <where>
  577. <if test="loaderSsoId != null">
  578. RP.PERSONNEL_SSO_ID = #{loaderSsoId}
  579. and TLR.RESULT_LOAD_END_TIME >= to_date(#{limitTime}, 'yyyy-mm-dd')
  580. order by TLR.RESULT_LOAD_END_TIME desc
  581. </if>
  582. <if test="unLoaderSsoId != null">
  583. RP.PERSONNEL_SSO_ID = #{unLoaderSsoId}
  584. and TUR.RESULT_END_TIME >= to_date(#{limitTime}, 'yyyy-mm-dd')
  585. order by TUR.RESULT_END_TIME desc
  586. </if>
  587. <if test="loaderSsoId == null and unLoaderSsoId == null">
  588. rownum &lt; 100
  589. </if>
  590. </where>
  591. </select>
  592. <select id="getOrderPlanEnable" resultType="java.lang.Integer">
  593. SELECT AIP.PLAN_EABLE_STATUS
  594. FROM
  595. OMSTRUCK_ORDER oo
  596. LEFT JOIN AMSTRUCK_INWARD_PLAN AIP
  597. ON AIP.PLAN_ID = OO.ORDER_PLAN_ID
  598. WHERE OO.ORDER_ID = #{orderId}
  599. </select>
  600. </mapper>