KwtLogisticsOrderMapper.xml 26 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584
  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.sckw.transport.dao.KwtLogisticsOrderMapper">
  4. <resultMap id="BaseResultMap" type="com.sckw.transport.model.KwtLogisticsOrder">
  5. <id column="id" jdbcType="BIGINT" property="id"/>
  6. <result column="ent_id" jdbcType="BIGINT" property="entId"/>
  7. <result column="type" jdbcType="BIGINT" property="type"/>
  8. <result column="t_order_id" jdbcType="BIGINT" property="tOrderId"/>
  9. <result column="t_order_no" jdbcType="VARCHAR" property="tOrderNo"/>
  10. <result column="l_order_no" jdbcType="VARCHAR" property="lOrderNo"/>
  11. <result column="pid" jdbcType="BIGINT" property="pid"/>
  12. <result column="pids" jdbcType="VARCHAR" property="pids"/>
  13. <result column="level" jdbcType="VARCHAR" property="level"/>
  14. <result column="total_load_amount" jdbcType="VARCHAR" property="totalLoadAmount"/>
  15. <result column="total_unload_amount" jdbcType="VARCHAR" property="totalUnloadAmount"/>
  16. <result column="settlement_cycle" jdbcType="BIGINT" property="settlementCycle"/>
  17. <result column="billing_mode" jdbcType="BIGINT" property="billingMode"/>
  18. <result column="price" jdbcType="DECIMAL" property="price"/>
  19. <result column="price_type" jdbcType="BIGINT" property="priceType"/>
  20. <result column="amount" jdbcType="DECIMAL" property="amount"/>
  21. <result column="unit" jdbcType="VARCHAR" property="unit"/>
  22. <result column="loss" jdbcType="DECIMAL" property="loss"/>
  23. <result column="loss_unit" jdbcType="VARCHAR" property="lossUnit"/>
  24. <result column="goods_price" jdbcType="DECIMAL" property="goodsPrice"/>
  25. <result column="goods_price_unit" jdbcType="VARCHAR" property="goodsPriceUnit"/>
  26. <result column="start_time" jdbcType="TIMESTAMP" property="startTime"/>
  27. <result column="end_time" jdbcType="TIMESTAMP" property="endTime"/>
  28. <result column="subcontract_amount" jdbcType="DECIMAL" property="subcontractAmount"/>
  29. <result column="entrust_amount" jdbcType="DECIMAL" property="entrustAmount"/>
  30. <result column="unload_amount" jdbcType="DECIMAL" property="unloadAmount"/>
  31. <result column="load_amount" jdbcType="DECIMAL" property="loadAmount"/>
  32. <result column="ignore_amount" jdbcType="DECIMAL" property="ignoreAmount"/>
  33. <result column="deficit_amount" jdbcType="DECIMAL" property="deficitAmount"/>
  34. <result column="deficit_price" jdbcType="DECIMAL" property="deficitPrice"/>
  35. <result column="payment" jdbcType="BIGINT" property="payment"/>
  36. <result column="tax_rate" jdbcType="DECIMAL" property="taxRate"/>
  37. <result column="remark" jdbcType="VARCHAR" property="remark"/>
  38. <result column="status" jdbcType="INTEGER" property="status"/>
  39. <result column="create_by" jdbcType="BIGINT" property="createBy"/>
  40. <result column="create_time" jdbcType="TIMESTAMP" property="createTime"/>
  41. <result column="update_by" jdbcType="BIGINT" property="updateBy"/>
  42. <result column="update_time" jdbcType="TIMESTAMP" property="updateTime"/>
  43. <result column="del_flag" jdbcType="INTEGER" property="delFlag"/>
  44. </resultMap>
  45. <sql id="Base_Column_List">
  46. id
  47. , ent_id, t_order_id,type,level,total_load_amount,total_unload_amount, t_order_no, l_order_no, pid,pids, settlement_cycle, price, price_type,billing_mode,
  48. amount, unit, loss, loss_unit, goods_price, goods_price_unit, start_time, end_time,
  49. subcontract_amount, entrust_amount, unload_amount, load_amount, ignore_amount, deficit_amount,
  50. deficit_price, payment, tax_rate, remark, `status`, create_by, create_time, update_by,
  51. update_time, del_flag
  52. </sql>
  53. <select id="selectOrderList" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
  54. SELECT a.id as lOrderId,
  55. a.l_order_no as lOrderNo,
  56. b.`status` as `status`,
  57. a.t_order_id as tOrderId,
  58. a.t_order_no as tOrderNo,
  59. a.payment as payment,
  60. a.amount,
  61. a.price,
  62. a.loss,
  63. a.goods_price as goodsPrice,
  64. c.firm_name as comanyName,
  65. c.contacts,
  66. c.phone,
  67. a.create_by as createBy,
  68. a.create_time as createTime
  69. FROM kwt_logistics_order a
  70. LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status`=b.`status`
  71. LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
  72. WHERE a.del_flag = '0'
  73. AND b.del_flag = '0'
  74. AND a.t_order_id = #{id,jdbcType=VARCHAR} limit #{page}
  75. , #{pageSize}
  76. </select>
  77. <select id="selectOrderListNotPage" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
  78. SELECT a.id as lOrderId,
  79. a.l_order_no as lOrderNo,
  80. b.`status` as `status`,
  81. a.t_order_id as tOrderId,
  82. a.t_order_no as tOrderNo,
  83. a.payment as payment,
  84. a.amount,
  85. a.price,
  86. a.loss,
  87. a.goods_price as goodsPrice,
  88. c.firm_name as comanyName,
  89. c.contacts,
  90. c.phone,
  91. a.create_by as createBy,
  92. a.create_time as createTime
  93. FROM kwt_logistics_order a
  94. LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status` = b.`status`
  95. LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
  96. WHERE a.del_flag = '0'
  97. AND b.del_flag = '0'
  98. AND a.t_order_id = #{id,jdbcType=VARCHAR}
  99. order by createTime desc
  100. </select>
  101. <select id="selectOrderCount" resultType="java.lang.Long">
  102. SELECT count(a.id)
  103. FROM kwt_logistics_order a
  104. LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status` = b.`status`
  105. LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
  106. WHERE a.del_flag = '0'
  107. AND b.del_flag = '0'
  108. AND a.t_order_id = #{id,jdbcType=VARCHAR}
  109. </select>
  110. <select id="selectLogisticOrderData" resultType="com.sckw.transport.api.model.vo.LogisticsOrderVO">
  111. SELECT
  112. a.id AS lOrderId,
  113. a.l_order_no AS lOrderNO,
  114. a.t_order_id AS tOrderId,
  115. a.t_order_no AS tOrderNO,
  116. a.payment AS payment,
  117. a.billing_mode AS billingMode,
  118. c.contract_id AS contractId,
  119. b.goods_name AS goodsName,
  120. a.amount,
  121. a.unit ,
  122. a.ignore_amount AS ignoreAmount,
  123. a.price,
  124. a.price_type as priceType,
  125. a.goods_price AS goodsPrice,
  126. a.loss,
  127. a.loss_unit AS lossUnit,
  128. a.tax_rate as taxRate,
  129. a.load_amount AS loadAmount,
  130. a.unload_amount AS unloadAmount,
  131. a.settlement_cycle as settlementCycle,
  132. a.start_time AS startTime,
  133. a.end_time AS endTime,
  134. a.create_time AS createTime,
  135. a.create_by AS createBy,
  136. a.update_by AS updateBy,
  137. a.update_time AS updateTime
  138. FROM
  139. kwt_logistics_order a
  140. LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id
  141. LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
  142. LEFT JOIN kwt_logistics_order_contract c ON a.id = c.l_order_id
  143. LEFT JOIN ( SELECT l_order_id FROM kwt_logistics_order_unit WHERE unit_type = 2 AND ent_id = #{entId} ) g ON a.id = g.l_order_id
  144. <where>
  145. a.del_flag = 0 and d.unit_type = 1
  146. <if test="dictValue != null and dictValue != ''">
  147. AND a.payment = #{dictValue}
  148. </if>
  149. <if test="logisticsOrderParam.companyId !=null and logisticsOrderParam.companyId != ''">
  150. AND d.ent_id = #{logisticsOrderParam.companyId}
  151. </if>
  152. <if test="logisticsOrderParam.taxRate != null and logisticsOrderParam.taxRate != ''">
  153. AND a.tax_rate = #{logisticsOrderParam.taxRate}
  154. </if>
  155. <if test="logisticsOrderParam.goodsName != null and logisticsOrderParam.goodsName != ''">
  156. AND b.goods_name LIKE concat('%',#{logisticsOrderParam.goodsName},'%')
  157. </if>
  158. <if test="logisticsOrderParam.startTime != null and logisticsOrderParam.startTime !=''">
  159. AND a.start_time &gt;= #{logisticsOrderParam.startTime}
  160. </if>
  161. <if test="logisticsOrderParam.endTime != null and logisticsOrderParam.endTime !=''">
  162. AND a.end_time &lt;= #{logisticsOrderParam.endTime}
  163. </if>
  164. </where>
  165. ORDER BY a.create_time DESC
  166. <if test="logisticsOrderParam.page != null and logisticsOrderParam.pageSize != null ">
  167. limit #{logisticsOrderParam.page,jdbcType=INTEGER},#{logisticsOrderParam.pageSize,jdbcType=INTEGER}
  168. </if>
  169. </select>
  170. <select id="selectLogisticOrderCount" resultType="java.lang.Long">
  171. SELECT
  172. count(a.id)
  173. FROM
  174. kwt_logistics_order a
  175. LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id
  176. LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
  177. LEFT JOIN kwt_logistics_order_contract c ON a.id=c.l_order_id
  178. <where>
  179. a.del_flag = 0 and d.unit_type = 1
  180. <if test="dictValue != null and dictValue != ''">
  181. AND a.payment = #{dictValue}
  182. </if>
  183. <if test="logisticsOrderParam.companyId !=null and logisticsOrderParam.companyId != ''">
  184. AND d.ent_id = #{logisticsOrderParam.companyId}
  185. </if>
  186. <if test="logisticsOrderParam.taxRate != null and logisticsOrderParam.taxRate != ''">
  187. AND a.tax_rate = #{logisticsOrderParam.taxRate}
  188. </if>
  189. <if test="logisticsOrderParam.goodsName != null and logisticsOrderParam.goodsName != ''">
  190. AND b.goods_name LIKE concat('%',#{logisticsOrderParam.goodsName},'%')
  191. </if>
  192. <if test="logisticsOrderParam.startTime != null and logisticsOrderParam.startTime !=''">
  193. AND a.start_time &gt;= #{logisticsOrderParam.startTime}
  194. </if>
  195. <if test="logisticsOrderParam.endTime != null and logisticsOrderParam.endTime !=''">
  196. AND a.end_time &lt;= #{logisticsOrderParam.endTime}
  197. </if>
  198. </where>
  199. ORDER BY a.create_time DESC
  200. </select>
  201. <select id="getRejectReason" resultType="java.util.Map">
  202. SELECT a.id AS lOrderId,
  203. b.remark remark
  204. FROM kwt_logistics_order a
  205. LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id
  206. WHERE a.del_flag = '0'
  207. AND b.del_flag = '0'
  208. and b.status = #{status}
  209. and a.id = #{id}
  210. </select>
  211. <select id="getSubcontractConsignment" resultType="com.sckw.transport.model.vo.SubcontractConsignmentVO">
  212. SELECT a.id,
  213. a.pid,
  214. a.`status` as status,
  215. a.l_order_no as consignOrderNo,
  216. c.firm_name as carrierContacts,
  217. d.goods_name as goodsName,
  218. a.amount as amount,
  219. a.price,
  220. a.price_type as priceType,
  221. e.detail_address as loadAddress,
  222. f.detail_address as unloadAddress,
  223. a.billing_mode as billingMode,
  224. a.loss,
  225. a.loss_unit as lossUnit,
  226. a.goods_price as goodsPrice,
  227. a.goods_price_unit as goodsPriceUnit,
  228. a.settlement_cycle as settlementCycle,
  229. c.contacts as carrierContacts,
  230. c.phone as carrierPhone,
  231. b.firm_name as consignCompany,
  232. b.contacts as consignContacts,
  233. b.phone as consignPhone,
  234. e.contacts as loadContacts,
  235. e.phone as loadContacts,
  236. f.contacts as unloadContacts,
  237. f.phone as unloadPhone,
  238. a.start_time as shipmentsDate,
  239. a.end_time as receiveGoodsDate,
  240. a.remark,
  241. a.create_by as createBy,
  242. a.create_time as createTime,
  243. g.contract_id as contractId
  244. FROM kwt_logistics_order a
  245. LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
  246. AND b.unit_type = 1
  247. LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
  248. AND c.unit_type = 2
  249. LEFT JOIN kwt_logistics_order_goods d ON a.id = d.l_order_id
  250. LEFT JOIN kwt_logistics_order_address e ON a.id = e.l_order_id
  251. AND e.address_type = 1
  252. LEFT JOIN kwt_logistics_order_address f ON a.id = f.l_order_id
  253. AND f.address_type = 2
  254. LEFT JOIN kwt_logistics_order_contract g ON a.id = g.l_order_id
  255. WHERE a.del_flag = 0
  256. AND b.del_flag = 0
  257. AND c.del_flag = 0
  258. AND e.del_flag = 0
  259. AND f.del_flag = 0
  260. and a.pid = #{lOrderId}
  261. ORDER BY a.create_time
  262. limit #{page}, #{pageSize}
  263. </select>
  264. <select id="getSubcontractConsignmentNotPage" resultType="com.sckw.transport.model.vo.SubcontractConsignmentVO">
  265. SELECT a.id,
  266. a.pid,
  267. a.`status` as status,
  268. a.l_order_no as consignOrderNo,
  269. c.firm_name as carrierContacts,
  270. d.goods_name as goodsName,
  271. a.amount as amount,
  272. a.price,
  273. a.price_type as priceType,
  274. e.detail_address as loadAddress,
  275. f.detail_address as unloadAddress,
  276. a.billing_mode as billingMode,
  277. a.loss,
  278. a.loss_unit as lossUnit,
  279. a.goods_price as goodsPrice,
  280. a.goods_price_unit as goodsPriceUnit,
  281. a.settlement_cycle as settlementCycle,
  282. c.contacts as carrierContacts,
  283. c.phone as carrierPhone,
  284. b.firm_name as consignCompany,
  285. b.contacts as consignContacts,
  286. b.phone as consignPhone,
  287. e.contacts as loadContacts,
  288. e.phone as loadContacts,
  289. f.contacts as unloadContacts,
  290. f.phone as unloadPhone,
  291. a.start_time as shipmentsDate,
  292. a.end_time as receiveGoodsDate,
  293. a.remark,
  294. a.create_by as createBy,
  295. a.create_time as createTime,
  296. g.contract_id as contractId
  297. FROM kwt_logistics_order a
  298. LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
  299. AND b.unit_type = 1
  300. LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
  301. AND c.unit_type = 2
  302. LEFT JOIN kwt_logistics_order_goods d ON a.id = d.l_order_id
  303. LEFT JOIN kwt_logistics_order_address e ON a.id = e.l_order_id
  304. AND e.address_type = 1
  305. LEFT JOIN kwt_logistics_order_address f ON a.id = f.l_order_id
  306. AND f.address_type = 2
  307. LEFT JOIN kwt_logistics_order_contract g ON a.id = g.l_order_id
  308. WHERE a.del_flag = 0
  309. AND b.del_flag = 0
  310. AND c.del_flag = 0
  311. AND e.del_flag = 0
  312. AND f.del_flag = 0
  313. and a.pid = #{lOrderId}
  314. ORDER BY a.create_time desc
  315. </select>
  316. <select id="countSubcontractConsignmentById" resultType="java.util.Map">
  317. SELECT COUNT(0) as total,
  318. a.id,
  319. a.pid,
  320. a.`status` as status,
  321. a.l_order_no as consignOrderNo,
  322. c.firm_name as carrierContacts,
  323. d.goods_name as goodsName,
  324. a.amount as amount,
  325. a.price,
  326. a.price_type as priceType,
  327. e.detail_address as loadAddress,
  328. f.detail_address as unloadAddress,
  329. a.billing_mode as billingMode,
  330. a.loss,
  331. a.loss_unit as lossUnit,
  332. a.goods_price as goodsPrice,
  333. a.goods_price_unit as goodsPriceUnit,
  334. a.settlement_cycle as settlementCycle,
  335. c.contacts as carrierContacts,
  336. c.phone as carrierPhone,
  337. b.firm_name as consignCompany,
  338. b.contacts as consignContacts,
  339. b.phone as consignPhone,
  340. e.contacts as loadContacts,
  341. e.phone as loadContacts,
  342. f.contacts as unloadContacts,
  343. f.phone as unloadPhone,
  344. a.start_time as shipmentsDate,
  345. a.end_time as receiveGoodsDate,
  346. a.remark,
  347. a.create_by as createBy,
  348. a.create_time as createTime,
  349. g.contract_id as contractId
  350. FROM kwt_logistics_order a
  351. LEFT JOIN kwt_logistics_order_unit b ON a.id = b.l_order_id
  352. AND b.unit_type = 1
  353. LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id
  354. AND c.unit_type = 2
  355. LEFT JOIN kwt_logistics_order_goods d ON a.id = d.l_order_id
  356. LEFT JOIN kwt_logistics_order_address e ON a.id = e.l_order_id
  357. AND e.address_type = 1
  358. LEFT JOIN kwt_logistics_order_address f ON a.id = f.l_order_id
  359. AND f.address_type = 2
  360. LEFT JOIN kwt_logistics_order_contract g ON a.id = g.l_order_id
  361. WHERE a.del_flag = 0
  362. AND b.del_flag = 0
  363. AND c.del_flag = 0
  364. AND e.del_flag = 0
  365. AND f.del_flag = 0
  366. and a.pid = #{lOrderId}
  367. ORDER BY a.create_time
  368. </select>
  369. <select id="selectDriverListById" resultType="com.sckw.transport.model.vo.DriverListVo">
  370. SELECT a.id AS lOrderId,
  371. b.driver_id AS driverId,
  372. b.id AS wOrderId,
  373. b.w_order_no AS wOrderNo,
  374. b.driver_name AS driverName,
  375. b.driver_phone AS driverPhone,
  376. b.driver_idcard AS driverIdCard,
  377. b.truck_no AS truckNo,
  378. COUNT( b.id ) AS count,
  379. b.`status` as transportStatus
  380. FROM
  381. kwt_waybill_order b,
  382. kwt_logistics_order_circulate c,
  383. kwt_logistics_order a
  384. WHERE
  385. a.id = c.l_order_id
  386. AND a.id = b.l_order_id
  387. AND a.del_flag = 0
  388. AND b.del_flag = 0
  389. AND b.type = '2'
  390. AND c.`status` = '0'
  391. <if test="driverParam.lOrderId != null and driverParam.lOrderId != ''">
  392. AND a.id =#{driverParam.lOrderId}
  393. </if>
  394. <if test="driverParam.driverName != null and driverParam.driverName != ''">
  395. and b.driver_name like concat('%',#{driverParam.driverName},'%')
  396. </if>
  397. <if test="driverParam.driverPhone != null and driverParam.driverPhone != ''">
  398. <!-- AND b.driver_phone =#{driverParam.driverPhone}-->
  399. AND b.driver_phone like concat('%',#{driverParam.driverPhone},'%')
  400. </if>
  401. <if test="driverParam.truckNo != null and driverParam.truckNo != ''">
  402. <!-- AND b.truck_no = #{driverParam.truckNo}-->
  403. AND b.truck_no like concat('%',#{driverParam.truckNo},'%')
  404. </if>
  405. GROUP BY b.truck_no
  406. </select>
  407. <select id="selectLogisticOrderList" resultType="com.sckw.transport.api.model.dto.LogisticsOrderDTO">
  408. SELECT
  409. a.id AS lOrderId,
  410. a.l_order_no AS lOrderNO,
  411. a.t_order_id AS tOrderId,
  412. a.t_order_no AS tOrderNO,
  413. a.payment AS payment,
  414. a.billing_mode AS billingMode,
  415. c.contract_id AS contractId,
  416. b.goods_name AS goodsName,
  417. a.amount,
  418. a.unit ,
  419. a.ignore_amount AS ignoreAmount,
  420. a.price,
  421. a.price_type as priceType,
  422. a.goods_price AS goodsPrice,
  423. a.loss,
  424. a.loss_unit AS lossUnit,
  425. a.tax_rate as taxRate,
  426. a.load_amount AS loadAmount,
  427. a.unload_amount AS unloadAmount,
  428. a.settlement_cycle as settlementCycle,
  429. a.start_time AS startTime,
  430. a.end_time AS endTime,
  431. a.create_time AS createTime,
  432. a.create_by AS createBy,
  433. a.update_by AS updateBy,
  434. a.update_time AS updateTime
  435. FROM
  436. kwt_logistics_order a
  437. LEFT JOIN kwt_logistics_order_goods b ON a.id = b.l_order_id
  438. LEFT JOIN kwt_logistics_order_unit d ON a.id = d.l_order_id
  439. LEFT JOIN kwt_logistics_order_contract c ON a.id = c.l_order_id
  440. <where>
  441. <if test="ids != null and ids.size() > 0">
  442. and a.id in
  443. <foreach collection="ids" item="item" open="(" close=")" separator=",">
  444. #{item}
  445. </foreach>
  446. </if>
  447. </where>
  448. ORDER BY a.create_time DESC
  449. </select>
  450. <select id="selectOrderFinishData" resultType="com.sckw.transport.model.vo.OrderFinishVO">
  451. SELECT b.amount as amount,COUNT(a.id) AS number,
  452. SUM(IFNULL(a.load_amount, 0)) as loadAmount,
  453. SUM(IFNULL(a.unload_amount, 0)) AS unloadAmount
  454. FROM kwt_waybill_order a
  455. LEFT JOIN kwt_logistics_order b ON b.id = a.l_order_id
  456. AND a.del_flag = 0
  457. AND b.del_flag = 0
  458. <where>
  459. <if test="orderId != null and orderId != ''">
  460. and b.id=#{orderId}
  461. </if>
  462. </where>
  463. </select>
  464. <select id="findLogisticsOrder" resultType="com.sckw.transport.model.KwtLogisticsOrder" parameterType="java.util.Map">
  465. select
  466. id, ent_id entId, t_order_id tOrderId, t_order_no tOrderNo, l_order_no lOrderNo, pid, pids,
  467. settlement_cycle settlementCycle, price, price_type priceType, billing_mode billingMode,
  468. amount, unit, loss, loss_unit lossUnit, goods_price goodsPrice, goods_price_unit goodsPriceUnit,
  469. start_time startTime, end_time endTime, subcontract_amount subcontractAmount, entrust_amount entrustAmount,
  470. unload_amount unloadAmount, load_amount loadAmount, ignore_amount ignoreAmount, deficit_amount deficitAmount,
  471. deficit_price deficitPrice, payment, tax_rate taxRate, remark, `status`, create_by createBy,
  472. create_time createTime, update_by updateBy, update_time updateTime
  473. from kwt_logistics_order
  474. where del_flag = 0
  475. <if test="id != null and id != ''">
  476. and id = #{id, jdbcType=BIGINT}
  477. </if>
  478. <if test="upperlOrderId != null and upperlOrderId != ''">
  479. and FIND_IN_SET(#{upperlOrderId, jdbcType=BIGINT}, pids)
  480. and id != #{ownOrderId, jdbcType=BIGINT}
  481. </if>
  482. <if test="belowlOrderId != null and belowlOrderId != ''">
  483. and FIND_IN_SET(id, #{belowlOrderId, jdbcType=VARCHAR})
  484. and id != #{ownOrderId, jdbcType=BIGINT}
  485. </if>
  486. </select>
  487. <select id="selectOrderCountByTorderId" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
  488. SELECT a.id as lOrderId,
  489. a.l_order_no as lOrderNo,
  490. b.`status` as `status`,
  491. a.t_order_id as tOrderId,
  492. a.t_order_no as tOrderNo,
  493. a.payment as payment,
  494. a.amount,
  495. a.price,
  496. a.loss,
  497. a.goods_price as goodsPrice,
  498. c.firm_name as comanyName,
  499. c.contacts,
  500. c.phone,
  501. a.create_by as createBy,
  502. a.create_time as createTime
  503. FROM kwt_logistics_order a
  504. LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id
  505. LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
  506. WHERE a.del_flag = '0'
  507. AND b.del_flag = '0'
  508. AND a.t_order_id = #{id,jdbcType=VARCHAR}
  509. </select>
  510. <select id="getAddressList" resultType="java.lang.Integer">
  511. SELECT a.city_code
  512. FROM kwt_logistics_order_address a
  513. LEFT JOIN kwt_logistics_order b ON a.l_order_id = b.id
  514. where a.city_code is not null AND b.ent_id =#{entId}
  515. GROUP BY a.city_code
  516. </select>
  517. <select id="getAddressDetailListByEntId" resultType="com.sckw.transport.api.model.dto.AddressResDTO">
  518. </select>
  519. <select id="selectMaxLevel" resultType="java.lang.Integer">
  520. SELECT MAX(LEVEL)
  521. FROM kwt_logistics_order
  522. WHERE del_flag = 0
  523. AND FIND_IN_SET(#{id}, pids)
  524. </select>
  525. <select id="countAmountByTradeOrderId" resultType="java.util.Map">
  526. SELECT
  527. SUM(
  528. IFNULL( unload_amount, 0 )) as unloadAmount,
  529. SUM(
  530. IFNULL( load_amount, 0 )) as loadAmount,
  531. SUM(
  532. IFNULL( total_load_amount, 0 )) AS totalLoadAmount,
  533. SUM(
  534. IFNULL( total_unload_amount, 0 )) AS totalUnloadAmount
  535. FROM
  536. kwt_logistics_order
  537. WHERE
  538. del_flag = 0
  539. AND t_order_id = #{tOrderId}
  540. AND `status` IN (
  541. 8
  542. )
  543. </select>
  544. <select id="selectOrderListByIdsAndUnitType" resultType="com.sckw.transport.model.dto.LogisticsOrderDTO">
  545. SELECT a.id as lOrderId,
  546. a.l_order_no as lOrderNo,
  547. b.`status` as `status`,
  548. a.t_order_id as tOrderId,
  549. a.t_order_no as tOrderNo,
  550. a.payment as payment,
  551. a.amount,
  552. a.price,
  553. a.loss,
  554. a.goods_price as goodsPrice,
  555. c.firm_name as companyName,
  556. c.contacts,
  557. c.phone,
  558. a.create_by as createBy,
  559. a.create_time as createTime
  560. FROM kwt_logistics_order a
  561. LEFT JOIN kwt_logistics_order_track b ON a.id = b.l_order_id and a.`status` = b.`status`
  562. LEFT JOIN kwt_logistics_order_unit c ON a.id = c.l_order_id AND c.unit_type = #{type}
  563. WHERE a.del_flag = '0'
  564. AND b.del_flag = '0'
  565. AND a.t_order_id IN
  566. <foreach collection="ids" item="item" open="(" close=")" separator=",">
  567. #{item}
  568. </foreach>
  569. order by createTime desc
  570. </select>
  571. </mapper>