UniversalMapper.xml 70 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825
  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.UniversalMapper">
  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. <sql id="companyFilter">
  13. <if test="!roleCodes.contains('admin') and dilCompanyList != null and dilCompanyList.size > 0">
  14. AND ${prop}
  15. in
  16. <foreach collection="dilCompanyList" item="item" open="(" close=")" separator=",">
  17. #{item.companyId}
  18. </foreach>
  19. </if>
  20. </sql>
  21. <!-- 查询所有的汽车衡 -->
  22. <select id="getColumnNoRoutList" resultType="java.lang.String" parameterType="map">
  23. select DTCR.COLUMN_NAME from DIL_TABLE_COLUMN_ROLE DTCR
  24. left join DIL_ROLE_ORGCODE_TABLE DROT
  25. ON DTCR.PRIMARY_ID = DROT.COLUMN_ID
  26. WHERE
  27. DTCR.TABLE_NAME = #{tableName}
  28. <if test="orgCode != null">
  29. and DROT.ORG_CODE = #{orgCode}
  30. </if>
  31. </select>
  32. <select id="getColumnShowData" resultType="java.util.Map" parameterType="map">
  33. SELECT DTCR.COLUMN_NAME "key",
  34. DTCR.COLUMN_NAME "label"
  35. FROM DIL_TABLE_COLUMN_ROLE DTCR
  36. LEFT JOIN DIL_ROLE_ORGCODE_TABLE DROT on DTCR.PRIMARY_ID = DROT.COLUMN_ID
  37. WHERE
  38. DTCR.TABLE_NAME = #{tableName}
  39. <if test="userName != null">
  40. AND nvl(DROT.USER_NAME,'0') != #{userName}
  41. </if>
  42. <if test="schemeName != null">
  43. AND nvl(DROT.PRIMARY_NAME,'0') != #{schemeName}
  44. </if>
  45. </select>
  46. <select id="getColumnHiddenData" resultType="string" parameterType="map">
  47. SELECT DTCR.COLUMN_NAME FROM DIL_ROLE_ORGCODE_TABLE DROT
  48. LEFT JOIN DIL_TABLE_COLUMN_ROLE DTCR on DTCR.PRIMARY_ID = DROT.COLUMN_ID
  49. WHERE
  50. DTCR.TABLE_NAME = #{tableName}
  51. <if test="userName != null">
  52. AND DROT.USER_NAME = #{userName}
  53. </if>
  54. <if test="orgCode != null">
  55. AND DROT.ORG_CODE = #{orgCode}
  56. </if>
  57. <if test="schemeName != null">
  58. AND nvl(DROT.PRIMARY_NAME,'0') = #{schemeName}
  59. </if>
  60. </select>
  61. <select id="getColumnAllData" resultType="java.util.Map" parameterType="map">
  62. SELECT DTCR.COLUMN_NAME "key",
  63. DTCR.COLUMN_NAME "label"
  64. FROM DIL_TABLE_COLUMN_ROLE DTCR
  65. WHERE DTCR.TABLE_NAME = #{tableName}
  66. </select>
  67. <select id="getColumnAllScheme" resultType="java.util.LinkedHashMap" parameterType="map">
  68. SELECT distinct DROT.PRIMARY_NAME "schemeName",
  69. DROT.ENABLE_STATUS "enableStatus",
  70. DROT.USER_NAME "userName",
  71. DROT.ORG_CODE "orgCode",
  72. DTCR.TABLE_NAME "tableName"
  73. FROM DIL_ROLE_ORGCODE_TABLE DROT
  74. LEFT JOIN DIL_TABLE_COLUMN_ROLE DTCR on DROT.COLUMN_ID = DTCR.PRIMARY_ID
  75. WHERE DROT.USER_NAME = #{userName}
  76. AND DROT.ORG_CODE = #{orgCode}
  77. AND DTCR.TABLE_NAME = #{tableName}
  78. AND NVL(DROT.PRIMARY_NAME, '') != '默认方案'
  79. </select>
  80. <select id="getWlUrl" resultType="java.lang.String">
  81. SELECT DL.VERSION_VALUE
  82. FROM DIL_VERSION DL
  83. WHERE DL.VERSION_ID = 11
  84. </select>
  85. <!-- 边输边查公司 -->
  86. <select id="getCompanyMesByLike" resultType="java.util.Map">
  87. select * from (
  88. select * from(
  89. select
  90. RC.SSO_ID "ssoId",
  91. RC.SSO_CODE "ssoCode",
  92. RC.COMPANY_ID "id",
  93. RC.COMPANY_ID "businessCompanyId",
  94. RC.COMPANY_ID "key",
  95. RC.COMPANY_ID "value",
  96. RC.PARENT_COMPANY_ID "parentCompanyId",
  97. <if test="companyType==null">
  98. RC.COMPANY_TYPE || '-' ||
  99. </if>
  100. RC.COMPANY_NAME "label",
  101. RC.COMPANY_NAME "text",
  102. RC.COMPANY_NAME "companyName",
  103. RC.CREDENTIAL_DESC "seqNo",
  104. T2 ."rootCompanyId",
  105. T2 ."rootCompanyName",
  106. 'label' "prop"
  107. from RMS_COMPANY RC
  108. LEFT JOIN (
  109. SELECT "companyId",MAX("level") "rootIndex" FROM
  110. (
  111. SELECT
  112. RC.COMPANY_ID "rootCompanyId",
  113. RC.COMPANY_NAME "rootCompanyName",
  114. LEVEL "level",
  115. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  116. FROM
  117. RMS_COMPANY RC
  118. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  119. )
  120. GROUP BY "companyId"
  121. ) T1 ON T1 ."companyId" = RC .COMPANY_ID
  122. LEFT JOIN
  123. (
  124. SELECT
  125. RC.COMPANY_ID "rootCompanyId",
  126. RC.COMPANY_NAME "rootCompanyName",
  127. LEVEL "level",
  128. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  129. FROM
  130. RMS_COMPANY RC
  131. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  132. ) T2 ON T2 ."companyId" = T1 ."companyId" AND T2 ."level" = T1 ."rootIndex"
  133. <where>
  134. DELETED = 0
  135. <if test="companyType!=null and companyType!=''">
  136. AND REGEXP_LIKE(RC.COMPANY_TYPE, #{companyType})
  137. </if>
  138. <if test="companyId!=null and companyId!=''">
  139. AND RC.COMPANY_ID = #{companyId}
  140. </if>
  141. <if test="businessCompanyId!=null and businessCompanyId!=''">
  142. AND RC.COMPANY_ID = #{businessCompanyId}
  143. </if>
  144. <if test="supplierCompanyId!=null and supplierCompanyId!=''">
  145. AND RC.COMPANY_ID = #{supplierCompanyId}
  146. </if>
  147. <if test="receiveCompanyId!=null and receiveCompanyId!=''">
  148. AND RC.COMPANY_ID = #{receiveCompanyId}
  149. </if>
  150. <if test="carrierId!=null and carrierId!=''">
  151. AND RC.COMPANY_ID = #{carrierId}
  152. </if>
  153. <if test="index!=null and index!=''">
  154. AND REGEXP_LIKE(RC.COMPANY_NAME, #{index})
  155. </if>
  156. <if test="isListed !=null and isListed!=''">
  157. AND RC.is_Listed IS NOT NULL
  158. </if>
  159. </where>
  160. <if test="noRow == null">
  161. order by rc.register_aptitudes,LENGTH(company_name)
  162. </if>
  163. )
  164. <where>
  165. <if test="companyType != null and companyType == '业务单位' and isListed == null">
  166. <include refid="com.steerinfo.dil.mapper.CommonMapper.filterCompanyData"></include>
  167. </if>
  168. </where>
  169. FETCH NEXT 10 ROWS ONLY
  170. )
  171. <if test="id!=null and id.size>0">
  172. UNION
  173. select * from
  174. (select
  175. RC.SSO_ID "ssoId",
  176. RC.SSO_CODE "ssoCode",
  177. RC.COMPANY_ID "id",
  178. RC.COMPANY_ID "businessCompanyId",
  179. RC.COMPANY_ID "key",
  180. RC.COMPANY_ID "value",
  181. RC.PARENT_COMPANY_ID "parentCompanyId",
  182. <if test="companyType==null">
  183. RC.COMPANY_TYPE || '-' ||
  184. </if>
  185. RC.COMPANY_NAME "label",
  186. RC.COMPANY_NAME "text",
  187. RC.COMPANY_NAME "companyName",
  188. RC.CREDENTIAL_DESC "seqNo",
  189. T2 ."rootCompanyId",
  190. T2 ."rootCompanyName",
  191. 'label' "prop"
  192. from RMS_COMPANY RC
  193. LEFT JOIN (
  194. SELECT "companyId",MAX("level") "rootIndex" FROM
  195. (
  196. SELECT
  197. RC.COMPANY_ID "rootCompanyId",
  198. RC.COMPANY_NAME "rootCompanyName",
  199. LEVEL "level",
  200. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  201. FROM
  202. RMS_COMPANY RC
  203. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  204. )
  205. GROUP BY "companyId"
  206. ) T1 ON T1 ."companyId" = RC .COMPANY_ID
  207. LEFT JOIN
  208. (
  209. SELECT
  210. RC.COMPANY_ID "rootCompanyId",
  211. RC.COMPANY_NAME "rootCompanyName",
  212. LEVEL "level",
  213. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  214. FROM
  215. RMS_COMPANY RC
  216. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  217. ) T2 ON T2 ."companyId" = T1 ."companyId" AND T2 ."level" = T1 ."rootIndex"
  218. where RC.COMPANY_ID in
  219. <foreach collection="id" item="item" open="(" close=")" separator="," >
  220. #{item}
  221. </foreach>
  222. order by to_number(RC.CREDENTIAL_DESC),LENGTH(company_name))
  223. </if>
  224. </select>
  225. <select id="getMaterialTypeByLike" resultType="java.util.Map">
  226. select * from(
  227. select * from(
  228. select
  229. t.MATERIAL_TYPE_ID "operationsNameId",
  230. t.MATERIAL_TYPE_NAME "operationsName",
  231. t.MATERIAL_TYPE_ID "id",
  232. t.MATERIAL_TYPE_ID "value",
  233. t.MATERIAL_TYPE_NAME "label",
  234. t.MATERIAL_TYPE_NAME "text",
  235. t.REMARK "remark",
  236. t1.company_id "businessCompanyId",
  237. 'operationsName' "prop"
  238. from RMS_MATERIAL_TYPE t
  239. left join rms_company_b_m_t t1
  240. on t.material_type_id = t1.material_type_id
  241. where t.DELETED = 0
  242. )
  243. <where>
  244. <if test="index!=null and index!=''">
  245. AND REGEXP_LIKE("label", #{index})
  246. </if>
  247. <if test="remark!=null and remark!=''">
  248. AND REGEXP_LIKE("remark", #{remark})
  249. </if>
  250. <if test="lastIndex!=null">
  251. and "operationsNameId" &lt; #{lastIndex}
  252. </if>
  253. <if test="companyType != null and companyType == '业务单位' and isListed == null">
  254. <include refid="com.steerinfo.dil.mapper.CommonMapper.filterCompanyData"></include>
  255. </if>
  256. </where>
  257. order by "operationsNameId" desc
  258. FETCH NEXT 10 ROWS ONLY
  259. )
  260. <if test="id!=null and id.size>0">
  261. UNION
  262. select
  263. MATERIAL_TYPE_ID "operationsNameId",
  264. MATERIAL_TYPE_NAME "operationsName",
  265. MATERIAL_TYPE_ID "id",
  266. MATERIAL_TYPE_ID "value",
  267. MATERIAL_TYPE_NAME "label",
  268. MATERIAL_TYPE_NAME "text",
  269. REMARK "remark",
  270. 'operationsName' "prop"
  271. from RMS_MATERIAL_TYPE
  272. where MATERIAL_TYPE_ID in
  273. <foreach collection="id" item="item" open="(" close=")" separator="," >
  274. #{item}
  275. </foreach>
  276. </if>
  277. </select>
  278. <select id="getEmissionStandardByLike" resultType="java.util.Map">
  279. select * from (
  280. select
  281. EMISSION_STANDARD_ID "emissionStandardId",
  282. EMISSION_STANDARD_NAME "emissionStandardName",
  283. EMISSION_STANDARD_ID "id",
  284. EMISSION_STANDARD_ID "value",
  285. EMISSION_STANDARD_NAME "label",
  286. EMISSION_STANDARD_NAME "text"
  287. from RMS_EMISSION_STANDARD
  288. where DELETED = 0
  289. )
  290. <where>
  291. <if test="index!=null and index!=''">
  292. AND REGEXP_LIKE("label", #{index})
  293. </if>
  294. <if test="id!=null and id.size>0 and !(index!=null and index!='')">
  295. AND "id" in
  296. <foreach collection="id" item="item" open="(" close=")" separator="," >
  297. #{item}
  298. </foreach>
  299. </if>
  300. </where>
  301. FETCH NEXT 10 ROWS ONLY
  302. </select>
  303. <select id="getOperationPointByLike" resultType="java.util.Map">
  304. select * from (
  305. SELECT * FROM (
  306. select
  307. OPERATION_POINT_ID "id",
  308. OPERATION_POINT_ID "value",
  309. OPERATION_POINT_NAME "OPERATION_POINT_NAME",
  310. OPERATION_POINT_CODE || '-' || OPERATION_POINT_NAME "label",
  311. OPERATION_POINT_CODE || '-' || OPERATION_POINT_NAME "text"
  312. from RMS_OPERATION_POINT
  313. <where>
  314. DELETED = 0
  315. <if test="operationPointType!=null and operationPointType!=''">
  316. AND REGEXP_LIKE(OPERATION_POINT_TYPE, #{operationPointType})
  317. </if>
  318. <if test="receivingPointId!=null and receivingPointId!=''">
  319. AND OPERATION_POINT_ID = #{receivingPointId}
  320. </if>
  321. <if test="shippingPointId!=null and shippingPointId!=''">
  322. AND OPERATION_POINT_ID = #{shippingPointId}
  323. </if>
  324. <if test="index!=null and index!=''">
  325. AND REGEXP_LIKE(OPERATION_POINT_CODE || OPERATION_POINT_NAME, #{index})
  326. </if>
  327. <if test="sourceFlag != null and sourceFlag !=''">
  328. AND ALTERNATE_FIELDS1 = #{sourceFlag}
  329. </if>
  330. </where>
  331. order by alternate_fields3,LENGTH(OPERATION_POINT_NAME)
  332. FETCH NEXT 10 ROWS ONLY
  333. )
  334. <if test="id!=null and id.size>0">
  335. UNION select
  336. OPERATION_POINT_ID "id",
  337. OPERATION_POINT_ID "value",
  338. OPERATION_POINT_NAME "OPERATION_POINT_NAME",
  339. OPERATION_POINT_CODE || '-' || OPERATION_POINT_NAME "label",
  340. OPERATION_POINT_CODE || '-' || OPERATION_POINT_NAME "text"
  341. from RMS_OPERATION_POINT
  342. where OPERATION_POINT_ID in
  343. <foreach collection="id" item="item" open="(" close=")" separator="," >
  344. #{item}
  345. </foreach>
  346. </if>
  347. ) order by LENGTH("OPERATION_POINT_NAME") desc
  348. </select>
  349. <select id="getPersonnelByLike" resultType="java.util.Map">
  350. select * from (
  351. select * from (
  352. select * from (
  353. select
  354. distinct
  355. PERSONNEL_ID "personnelId",
  356. PERSONNEL_NAME "personnelName",
  357. PERSONNEL_POST "personnelPost",
  358. PERSONNEL_PHONE "personnelPhone",
  359. INNNER_CODE "innerCode",
  360. to_char(SSO_ID) "ssoId",
  361. PERSONNEL_ID "id",
  362. PERSONNEL_ID "value",
  363. PERSONNEL_NAME "label",
  364. PERSONNEL_NAME "text",
  365. 'personnelName' "prop"
  366. <if test="capacityId!=null and capacityId!=''">
  367. ,NVL(T ."countNumber",0) "countNumber"
  368. </if>
  369. FROM
  370. RMS_PERSONNEL RP
  371. <if test="capacityId!=null and capacityId!=''">
  372. LEFT JOIN (
  373. SELECT DRIVER_ID "driverId",
  374. COUNT(DRIVER_ID) "countNumber"
  375. FROM OMS_TRANS_ORDER
  376. WHERE CAPACITY_ID = #{capacityId}
  377. GROUP BY DRIVER_ID
  378. ) T ON T."driverId" = RP .PERSONNEL_ID
  379. </if>
  380. WHERE DELETED = 0
  381. <if test="isNC!=null">
  382. AND SOURCE_ID IS NOT NULL
  383. </if>
  384. )
  385. <where>
  386. <if test="personnelPost!=null and personnelPost!=''">
  387. AND "personnelPost" = #{personnelPost}
  388. </if>
  389. <if test="personnelId!=null and personnelId!=''">
  390. AND "personnelId" = #{personnelId})
  391. </if>
  392. <if test="driverId!=null and driverId!=''">
  393. AND "personnelId" = #{driverId})
  394. </if>
  395. <if test="driverId2!=null and driverId2!=''">
  396. AND "personnelId" = #{driverId2})
  397. </if>
  398. <if test="index!=null and index!=''">
  399. AND REGEXP_LIKE("label", #{index})
  400. </if>
  401. <if test="personnelName!=null and personnelName!=''">
  402. AND REGEXP_LIKE("label", #{personnelName})
  403. </if>
  404. <if test="lastIndex!=null">
  405. and "personnelId" &lt; #{lastIndex}
  406. </if>
  407. </where>
  408. <if test="capacityId!=null and capacityId!=''">
  409. ORDER BY "countNumber" DESC
  410. </if>
  411. <if test="!(capacityId!=null and capacityId!='')">
  412. order by "personnelId" desc
  413. </if>
  414. FETCH NEXT 10 ROWS ONLY
  415. )
  416. <if test="id!=null and id.size>0">
  417. UNION
  418. select
  419. PERSONNEL_ID "personnelId",
  420. PERSONNEL_NAME "personnelName",
  421. PERSONNEL_POST "personnelPost",
  422. PERSONNEL_PHONE "personnelPhone",
  423. INNNER_CODE "innerCode",
  424. to_char(SSO_ID) "ssoId",
  425. PERSONNEL_ID "id",
  426. PERSONNEL_ID "value",
  427. PERSONNEL_NAME "label",
  428. PERSONNEL_NAME "text",
  429. 'personnelName' "prop"
  430. <if test="capacityId!=null and capacityId!=''">
  431. ,NVL(T ."countNumber",0) "countNumber"
  432. </if>
  433. from RMS_PERSONNEL RP
  434. <if test="capacityId!=null and capacityId!=''">
  435. LEFT JOIN (
  436. SELECT DRIVER_ID "driverId",
  437. COUNT(DRIVER_ID) "countNumber"
  438. FROM OMS_TRANS_ORDER
  439. WHERE CAPACITY_ID = #{capacityId}
  440. GROUP BY DRIVER_ID
  441. ) T ON T."driverId" = RP .PERSONNEL_ID
  442. </if>
  443. WHERE PERSONNEL_ID in
  444. <foreach collection="id" item="item" open="(" close=")" separator="," >
  445. #{item}
  446. </foreach>
  447. </if>
  448. )
  449. <if test="capacityId!=null and capacityId!=''">
  450. ORDER BY "countNumber" DESC
  451. </if>
  452. </select>
  453. <select id="getCapacityByLike" resultType="java.util.Map">
  454. select * from (
  455. select * from (
  456. select * from (
  457. SELECT DISTINCT
  458. RCA .CAPACITY_ID "capacityId",
  459. RCA .CAPACITY_ID "id",
  460. RCA .CAPACITY_ID "value",
  461. RCA .CAPACITY_LICENCE_NUMBER "capacityLicenceNumber",
  462. RCA. CAPACITY_OPERATE_NUMBER "capacityOperateNumber",
  463. RCA. CAPACITY_AXIS_NUMBER "capacityAxisNumber",
  464. RCA.CAPACITY_WEIGHT_MAIN "capacityWeightMain",
  465. RCA.CAPACITY_WEIGHT_TRAILER "capacityWeightTrailer",
  466. RCA.CAPACITY_TYPE_ID "capacityTypeId",
  467. RCA.EMISSION_STANDARD_ID "emissionStandardId",
  468. RCA.CAPACITY_NUMBER "label",
  469. RCA.CAPACITY_NUMBER "text",
  470. RCA.REMARK1 "remark1",
  471. RCA.CAPACITY_NUMBER "capacityNumber",
  472. (case
  473. when RCA.deleted = '3' is not null then '维保'
  474. when oto.capacity_id is null then '空闲'
  475. when oto.deleted != '2' and oto.capacity_id is not null then '已派'
  476. when oto.deleted = '2' and oto.capacity_id is not null then '空闲'
  477. end) "status",
  478. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  479. 'capacityNumber' "prop"
  480. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  481. ,NVL(T ."countNumber",0) "countNumber"
  482. </if>
  483. FROM
  484. RMS_CAPACITY RCA
  485. LEFT JOIN RMS_CAPACITY_TYPE RCT ON RCA.CAPACITY_TYPE_ID = RCT.CAPACITY_TYPE_ID
  486. left join oms_trans_order oto
  487. on RCA.capacity_id = oto.capacity_id
  488. and oto.deleted between 4 and 5
  489. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  490. LEFT JOIN (
  491. SELECT CAPACITY_ID "capacityId",
  492. COUNT( CAPACITY_ID ) "countNumber"
  493. FROM OMS_TRANS_ORDER
  494. <where>
  495. <if test="driverId!=null and driverId!=''">
  496. AND (DRIVER_ID = #{driverId} OR DRIVER_ID2 = #{driverId})
  497. </if>
  498. <if test="driverId2!=null and driverId2!=''">
  499. AND DRIVER_ID = #{driverId2} OR DRIVER_ID2 = #{driverId2}
  500. </if>
  501. </where>
  502. GROUP BY CAPACITY_ID
  503. ) T ON T."capacityId" = RCA .CAPACITY_ID
  504. </if>
  505. WHERE RCA .DELETED = 0
  506. <if test="capacityTypeId !=null">
  507. AND RCT.CAPACITY_TYPE_ID in (
  508. select rct.capacity_type_id from rms_capacity_type rct
  509. START WITH rct.capacity_type_id = #{capacityTypeId}
  510. connect BY PRIOR rct.capacity_type_id = rct.p_capacity_type_id
  511. )
  512. </if>
  513. <if test="capacityType != null and capacityType != '' ">
  514. AND RCT.CAPACITY_TYPE_NAME = #{capacityType}
  515. </if>
  516. <if test="capacityType == null">
  517. AND RCT.CAPACITY_TYPE_NAME != '火车'
  518. </if>
  519. <if test="capacityId!=null and capacityId!=''">
  520. AND RCA .CAPACITY_ID = #{capacityId}
  521. </if>
  522. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  523. ORDER BY "countNumber" DESC
  524. </if>
  525. ) <where>
  526. <if test="index!=null and index!=''">
  527. AND REGEXP_LIKE("capacityNumber", #{index})
  528. </if>
  529. </where>
  530. order by LENGTH("capacityNumber")
  531. FETCH NEXT 10 ROWS ONLY)
  532. <if test="id!=null and id.size>0">
  533. UNION
  534. SELECT DISTINCT
  535. RCA .CAPACITY_ID "capacityId",
  536. RCA .CAPACITY_ID "id",
  537. RCA .CAPACITY_ID "value",
  538. RCA .CAPACITY_LICENCE_NUMBER "capacityLicenceNumber",
  539. RCA. CAPACITY_OPERATE_NUMBER "capacityOperateNumber",
  540. RCA. CAPACITY_AXIS_NUMBER "capacityAxisNumber",
  541. RCA.CAPACITY_WEIGHT_MAIN "capacityWeightMain",
  542. RCA.CAPACITY_WEIGHT_TRAILER "capacityWeightTrailer",
  543. RCA.CAPACITY_TYPE_ID "capacityTypeId",
  544. RCA.EMISSION_STANDARD_ID "emissionStandardId",
  545. RCA.CAPACITY_NUMBER "label",
  546. RCA.CAPACITY_NUMBER "text",
  547. RCA.REMARK1 "remark1",
  548. RCA.CAPACITY_NUMBER "capacityNumber",
  549. (case
  550. when oto.capacity_id is null then '空闲'
  551. when oto.deleted != '2' and oto.capacity_id is not null then '已派'
  552. end) "status",
  553. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  554. 'capacityNumber' "prop"
  555. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  556. ,NVL(T ."countNumber",0) "countNumber"
  557. </if>
  558. FROM RMS_CAPACITY RCA
  559. LEFT JOIN RMS_CAPACITY_TYPE RCT ON RCA.CAPACITY_TYPE_ID = RCT.CAPACITY_TYPE_ID
  560. left join oms_trans_order oto
  561. on RCA.capacity_id = oto.capacity_id
  562. and oto.deleted != 2
  563. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  564. LEFT JOIN (
  565. SELECT CAPACITY_ID "capacityId",
  566. COUNT( CAPACITY_ID ) "countNumber"
  567. FROM OMS_TRANS_ORDER
  568. <where>
  569. <if test="driverId!=null and driverId!=''">
  570. AND (DRIVER_ID = #{driverId} OR DRIVER_ID2 = #{driverId})
  571. </if>
  572. <if test="driverId2!=null and driverId2!=''">
  573. AND DRIVER_ID = #{driverId2} OR DRIVER_ID2 = #{driverId2}
  574. </if>
  575. </where>
  576. GROUP BY CAPACITY_ID
  577. ) T ON T."capacityId" = RCA .CAPACITY_ID
  578. </if>
  579. WHERE RCA .CAPACITY_ID in
  580. <foreach collection="id" item="item" open="(" close=")" separator="," >
  581. #{item}
  582. </foreach>
  583. </if>)
  584. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  585. ORDER BY "countNumber" DESC
  586. </if>
  587. </select>
  588. <select id="getCapacityByLikeSc" resultType="java.util.Map">
  589. select * from (
  590. select * from (
  591. select * from (
  592. select rownum id,t.* from (
  593. SELECT DISTINCT
  594. RCA .CAPACITY_ID "capacityId",
  595. RCA .CAPACITY_ID "id",
  596. RCA .CAPACITY_ID "value",
  597. RCA .CAPACITY_LICENCE_NUMBER "capacityLicenceNumber",
  598. RCA. CAPACITY_OPERATE_NUMBER "capacityOperateNumber",
  599. RCA. CAPACITY_AXIS_NUMBER "capacityAxisNumber",
  600. RCA.CAPACITY_WEIGHT_MAIN "capacityWeightMain",
  601. RCA.CAPACITY_WEIGHT_TRAILER "capacityWeightTrailer",
  602. CASE WHEN RC.COMPANY_TYPE = '业务单位'
  603. THEN RC.COMPANY_ID
  604. else -1
  605. END "businessCompanyId",
  606. CASE WHEN RC.COMPANY_TYPE = '承运商'
  607. THEN RC.COMPANY_ID
  608. else -1
  609. END "carrierId",
  610. CASE WHEN RC.COMPANY_TYPE = '发货单位'
  611. THEN RC.COMPANY_ID
  612. else -1
  613. END "shippingCompanyId",
  614. CASE WHEN RC.COMPANY_TYPE = '收货客户'
  615. THEN RC.COMPANY_ID
  616. else -1
  617. END "receivingCompanyId",
  618. CASE WHEN RCA.REMARK1 is null
  619. then RCA.CAPACITY_NUMBER
  620. else RCA.REMARK1
  621. end "label",
  622. CASE WHEN RCA.REMARK1 is null
  623. then RCA.CAPACITY_NUMBER
  624. else RCA.REMARK1
  625. end "text",
  626. CASE WHEN RCA.REMARK1 is null
  627. then RCA.CAPACITY_NUMBER
  628. else RCA.REMARK1
  629. end "remark1",
  630. CASE WHEN RCA.REMARK1 is null
  631. then RCA.CAPACITY_NUMBER
  632. else RCA.REMARK1
  633. end "capacityNumber",
  634. (case
  635. when oto.capacity_id is null then '空闲'
  636. when oto.deleted != '2' and oto.capacity_id is not null then '已派'
  637. end) "status",
  638. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  639. 'capacityNumber' "prop"
  640. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  641. ,NVL(T ."countNumber",0) "countNumber"
  642. </if>
  643. FROM
  644. RMS_CAPACITY RCA
  645. LEFT JOIN RMS_CAPACITY_CARRIER RCC ON RCA .CAPACITY_ID = RCC .CAPACITY_ID
  646. LEFT JOIN RMS_COMPANY RC ON RC .COMPANY_ID = RCC .COMPANY_ID
  647. LEFT JOIN RMS_CAPACITY_TYPE RCT ON RCA.CAPACITY_TYPE_ID = RCT.CAPACITY_TYPE_ID
  648. left join oms_trans_order oto
  649. on RCA.capacity_id = oto.capacity_id
  650. and oto.deleted between 4 and 5
  651. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  652. LEFT JOIN (
  653. SELECT CAPACITY_ID "capacityId",
  654. COUNT( CAPACITY_ID ) "countNumber"
  655. FROM OMS_TRANS_ORDER
  656. <where>
  657. <if test="driverId!=null and driverId!=''">
  658. AND (DRIVER_ID = #{driverId} OR DRIVER_ID2 = #{driverId})
  659. </if>
  660. <if test="driverId2!=null and driverId2!=''">
  661. AND DRIVER_ID = #{driverId2} OR DRIVER_ID2 = #{driverId2}
  662. </if>
  663. </where>
  664. GROUP BY CAPACITY_ID
  665. ) T ON T."capacityId" = RCA .CAPACITY_ID
  666. </if>
  667. WHERE RCA .DELETED = 0
  668. <if test="capacityTypeId !=null">
  669. AND (RCT.CAPACITY_TYPE_ID in (
  670. select rct.capacity_type_id from rms_capacity_type rct
  671. START WITH rct.capacity_type_id = #{capacityTypeId}
  672. connect BY PRIOR rct.capacity_type_id = rct.p_capacity_type_id
  673. )
  674. or RCA.CAPACITY_TYPE_ID2 in (
  675. select rct.capacity_type_id from rms_capacity_type rct
  676. START WITH rct.capacity_type_id = #{capacityTypeId}
  677. connect BY PRIOR rct.capacity_type_id = rct.p_capacity_type_id
  678. ))
  679. </if>
  680. <if test="capacityType != null and capacityType != '' ">
  681. AND RCT.CAPACITY_TYPE_NAME = #{capacityType}
  682. </if>
  683. <if test="capacityType == null">
  684. AND RCT.CAPACITY_TYPE_NAME != '火车'
  685. </if>
  686. <if test="index!=null and index!=''">
  687. AND REGEXP_LIKE(
  688. CASE WHEN RCA.REMARK1 is null
  689. then RCA.CAPACITY_NUMBER
  690. else RCA.REMARK1
  691. end, #{index}
  692. )
  693. </if>
  694. <if test="capacityId!=null and capacityId!=''">
  695. AND RCA .CAPACITY_ID = #{capacityId}
  696. </if>
  697. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  698. ORDER BY "countNumber" DESC
  699. </if>
  700. <if test="!((driverId!=null and driverId!='') or (driverId2!=null and driverId2!=''))">
  701. order by length("capacityNumber"),"capacityNumber"
  702. </if>
  703. )t)t1
  704. <where>
  705. <if test="lastIndex!=null">
  706. and t1.id > #{lastIndex}
  707. </if>
  708. </where>
  709. FETCH NEXT 10 ROWS ONLY)
  710. <if test="id!=null and id.size>0">
  711. UNION
  712. SELECT DISTINCT
  713. 0 id,
  714. RCA .CAPACITY_ID "capacityId",
  715. RCA .CAPACITY_ID "id",
  716. RCA .CAPACITY_ID "value",
  717. RCA .CAPACITY_LICENCE_NUMBER "capacityLicenceNumber",
  718. RCA. CAPACITY_OPERATE_NUMBER "capacityOperateNumber",
  719. RCA. CAPACITY_AXIS_NUMBER "capacityAxisNumber",
  720. RCA.CAPACITY_WEIGHT_MAIN "capacityWeightMain",
  721. RCA.CAPACITY_WEIGHT_TRAILER "capacityWeightTrailer",
  722. CASE WHEN RC.COMPANY_TYPE = '业务单位'
  723. THEN RC.COMPANY_ID
  724. else -1
  725. END "businessCompanyId",
  726. CASE WHEN RC.COMPANY_TYPE = '承运商'
  727. THEN RC.COMPANY_ID
  728. else -1
  729. END "carrierId",
  730. CASE WHEN RC.COMPANY_TYPE = '发货单位'
  731. THEN RC.COMPANY_ID
  732. else -1
  733. END "shippingCompanyId",
  734. CASE WHEN RC.COMPANY_TYPE = '收货客户'
  735. THEN RC.COMPANY_ID
  736. else -1
  737. END "receivingCompanyId",
  738. CASE WHEN RCA.REMARK1 is null
  739. then RCA.CAPACITY_NUMBER
  740. else RCA.REMARK1
  741. end "label",
  742. CASE WHEN RCA.REMARK1 is null
  743. then RCA.CAPACITY_NUMBER
  744. else RCA.REMARK1
  745. end "text",
  746. CASE WHEN RCA.REMARK1 is null
  747. then RCA.CAPACITY_NUMBER
  748. else RCA.REMARK1
  749. end "remark1",
  750. CASE WHEN RCA.REMARK1 is null
  751. then RCA.CAPACITY_NUMBER
  752. else RCA.REMARK1
  753. end "capacityNumber",
  754. (case
  755. when oto.capacity_id is null then '空闲'
  756. when oto.deleted != '2' and oto.capacity_id is not null then '已派'
  757. end) "status",
  758. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  759. 'capacityNumber' "prop"
  760. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  761. ,NVL(T ."countNumber",0) "countNumber"
  762. </if>
  763. FROM RMS_CAPACITY RCA
  764. LEFT JOIN RMS_CAPACITY_CARRIER RCC ON RCA .CAPACITY_ID = RCC .CAPACITY_ID
  765. LEFT JOIN RMS_COMPANY RC ON RC .COMPANY_ID = RCC .COMPANY_ID
  766. LEFT JOIN RMS_CAPACITY_TYPE RCT ON RCA.CAPACITY_TYPE_ID = RCT.CAPACITY_TYPE_ID
  767. left join oms_trans_order oto
  768. on RCA.capacity_id = oto.capacity_id
  769. and oto.deleted != 2
  770. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  771. LEFT JOIN (
  772. SELECT CAPACITY_ID "capacityId",
  773. COUNT( CAPACITY_ID ) "countNumber"
  774. FROM OMS_TRANS_ORDER
  775. <where>
  776. <if test="driverId!=null and driverId!=''">
  777. AND (DRIVER_ID = #{driverId} OR DRIVER_ID2 = #{driverId})
  778. </if>
  779. <if test="driverId2!=null and driverId2!=''">
  780. AND DRIVER_ID = #{driverId2} OR DRIVER_ID2 = #{driverId2}
  781. </if>
  782. </where>
  783. GROUP BY CAPACITY_ID
  784. ) T ON T."capacityId" = RCA .CAPACITY_ID
  785. </if>
  786. WHERE RCA .CAPACITY_ID in
  787. <foreach collection="id" item="item" open="(" close=")" separator="," >
  788. #{item}
  789. </foreach>
  790. </if>
  791. )
  792. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  793. ORDER BY "countNumber" DESC
  794. </if>
  795. </select>
  796. <select id="getrmsrmsjobinfosBylike" resultType="java.util.Map">
  797. select * from(
  798. select
  799. RC.JOB_ID "jboId",
  800. RC.JOB_NAME "jobName",
  801. RC.JOB_ID "id",
  802. RC.JOB_ID "value",
  803. RC.JOB_NAME "label",
  804. RC.JOB_NAME "text"
  805. from RMS_JOB_INFO RC
  806. where DELETED = 0
  807. )
  808. <where>
  809. <if test="index!=null and index!=''">
  810. AND REGEXP_LIKE("label", #{index})
  811. </if>
  812. <if test="id!=null and id.size>0 and !(index!=null and index!='')">
  813. AND "id" in
  814. <foreach collection="id" item="item" open="(" close=")" separator="," >
  815. #{item}
  816. </foreach>
  817. </if>
  818. </where>
  819. FETCH NEXT 10 ROWS ONLY
  820. </select>
  821. <select id="getTransRangeByLike" resultType="java.util.Map">
  822. select * from(
  823. select
  824. RC.TRANS_RANGE_ID "transrangeId",
  825. RC.TRANS_RANGE_NAME "transrangeName",
  826. RC.TRANS_RANGE_ID "operationRangeId",
  827. RC.TRANS_RANGE_NAME "operationRangeName",
  828. RC.TRANS_RANGE_ID "id",
  829. RC.TRANS_RANGE_ID "value",
  830. RC.TRANS_RANGE_NAME "label",
  831. RC.TRANS_RANGE_NAME "text",
  832. rc.START_POINT_ID "shippingPointId",
  833. rc.END_POINT_ID "receivingPointId",
  834. rc.LINE_ID "lineId",
  835. t1.company_id "businessCompanyId",
  836. 'operationRangeName' "prop"
  837. from RMS_TRANS_RANGE RC
  838. left join rms_operation_point rop_s
  839. on rop_s.operation_point_id = RC.start_point_id
  840. left join rms_operation_point rop_e
  841. on rop_e.operation_point_id = RC.end_point_id
  842. left join rms_company_b_m_t t1
  843. on RC.trans_range_id = t1.trans_range_id
  844. <where>
  845. and RC.DELETED = 0
  846. <if test="isNc!=null and isNc!=''">
  847. and rop_s.alternate_fields1 = 'NC'
  848. and rop_e.alternate_fields1 = 'NC'
  849. </if>
  850. </where>
  851. )
  852. <where>
  853. <if test="companyType != null and companyType == '业务单位' and isListed == null">
  854. <include refid="com.steerinfo.dil.mapper.CommonMapper.filterCompanyData"></include>
  855. </if>
  856. <if test="index!=null and index!=''">
  857. <bind name="indexBind" value="'%' + index + '%'"/>
  858. AND "label" like #{indexBind}
  859. </if>
  860. <if test="transrangeId!=null and transrangeId!=''">
  861. AND "transrangeId" = #{transrangeId}
  862. </if>
  863. <if test="id!=null and id.size>0 and !(index!=null and index!='')">
  864. AND "id" in
  865. <foreach collection="id" item="item" open="(" close=")" separator="," >
  866. #{item}
  867. </foreach>
  868. </if>
  869. <if test="lastIndex!=null">
  870. and "transrangeId" &lt; #{lastIndex}
  871. </if>
  872. </where>
  873. order by "transrangeId" desc
  874. FETCH NEXT 10 ROWS ONLY
  875. </select>
  876. <select id="getCategoryCodeByLike" resultType="java.util.Map">
  877. select * from(
  878. select
  879. RC.RULES_ID "rulesId",
  880. RC.RULES_CODE "rulesCode",
  881. RC.RULES_ID "id",
  882. RC.RULES_ID "value",
  883. RC.RULES_CODE "label",
  884. RC.RULES_CODE "text"
  885. from RMS_DEMAND_RULES RC
  886. where DELETED = 0
  887. )
  888. <where>
  889. <if test="index!=null and index!=''">
  890. AND REGEXP_LIKE("label", #{index})
  891. </if>
  892. <if test="id!=null and id.size>0 and !(index!=null and index!='')">
  893. AND "id" in
  894. <foreach collection="id" item="item" open="(" close=")" separator="," >
  895. #{item}
  896. </foreach>
  897. </if>
  898. </where>
  899. FETCH NEXT 10 ROWS ONLY
  900. </select>
  901. <select id="getCapacityTypeByLike" resultType="java.util.Map">
  902. select * from(
  903. select
  904. RCT.CAPACITY_TYPE_ID "capacityTypeId",
  905. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  906. RCT.CAPACITY_TYPE_ID "id",
  907. RCT.CAPACITY_TYPE_ID "value",
  908. RCT.CAPACITY_TYPE_NAME "label",
  909. RCT.CAPACITY_TYPE_NAME "text",
  910. RCT .CAPACITY_MAX_LOAD "capacityMaxLoad",
  911. '[' || listagg (RCFT .FUEL_TYPE_ID, ',') WITHIN GROUP (ORDER BY RCT .CAPACITY_TYPE_ID) || ']' "fuelTypeIds",
  912. listagg (RFT .FUEL_TYPE_NAME, '/') WITHIN GROUP (ORDER BY RCT .CAPACITY_TYPE_ID) "fuelTypes",
  913. 'capacityTypeName' "prop"
  914. from RMS_CAPACITY_TYPE RCT
  915. LEFT JOIN RMS_CAPACITY_FUEL_TYPE RCFT ON RCFT.CAPACITY_TYPE_ID = RCT .CAPACITY_TYPE_ID
  916. LEFT JOIN RMS_FUEL_TYPE RFT ON RFT .FUEL_TYPE_ID = RCFT.FUEL_TYPE_ID
  917. <where>
  918. RCT.DELETED=0
  919. <if test="index!=null and index!=''">
  920. AND REGEXP_LIKE(RCT.CAPACITY_TYPE_NAME, #{index})
  921. </if>
  922. <if test="capacityTypeId!=null and capacityTypeId!=''">
  923. AND RCT.CAPACITY_TYPE_ID = #{capacityTypeId}
  924. </if>
  925. <if test="insertUserName != null and insertUserName !='' ">
  926. AND RCT.INSERT_USERNAME = #{insertUserName}
  927. </if>
  928. <if test="isPCapacityTypeId!=null and isPCapacityTypeId!=''">
  929. AND RCT.P_CAPACITY_TYPE_ID is null
  930. </if>
  931. <if test="capacityTypeNameList != null and capacityTypeNameList.size > 0">
  932. and
  933. RCT.CAPACITY_TYPE_NAME in
  934. <foreach collection="capacityTypeNameList" index="index" item="item" separator="," close=")" open="(">
  935. #{item}
  936. </foreach>
  937. </if>
  938. <if test="lastIndex!=null">
  939. and RCT.CAPACITY_TYPE_ID &lt; #{lastIndex}
  940. </if>
  941. </where>
  942. GROUP BY RCT.CAPACITY_TYPE_ID,RCT.CAPACITY_TYPE_NAME,RCT .CAPACITY_MAX_LOAD
  943. ORDER BY RCT.CAPACITY_TYPE_ID desc
  944. FETCH NEXT 10 ROWS ONLY
  945. )
  946. <if test="id!=null and id.size>0">
  947. UNION
  948. select
  949. RCT.CAPACITY_TYPE_ID "capacityTypeId",
  950. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  951. RCT.CAPACITY_TYPE_ID "id",
  952. RCT.CAPACITY_TYPE_ID "value",
  953. RCT.CAPACITY_TYPE_NAME "label",
  954. RCT.CAPACITY_TYPE_NAME "text",
  955. RCT .CAPACITY_MAX_LOAD "capacityMaxLoad",
  956. '[' || listagg (RCFT .FUEL_TYPE_ID, ',') WITHIN GROUP (ORDER BY RCT .CAPACITY_TYPE_ID) || ']' "fuelTypeIds",
  957. listagg (RFT .FUEL_TYPE_NAME, '/') WITHIN GROUP (ORDER BY RCT .CAPACITY_TYPE_ID) "fuelTypes",
  958. 'capacityTypeName' "prop"
  959. from RMS_CAPACITY_TYPE RCT
  960. LEFT JOIN RMS_CAPACITY_FUEL_TYPE RCFT ON RCFT.CAPACITY_TYPE_ID = RCT .CAPACITY_TYPE_ID
  961. LEFT JOIN RMS_FUEL_TYPE RFT ON RFT .FUEL_TYPE_ID = RCFT.FUEL_TYPE_ID
  962. WHERE RCT.CAPACITY_TYPE_ID in
  963. <foreach collection="id" item="item" open="(" close=")" separator="," >
  964. #{item}
  965. </foreach>
  966. <if test="capacityTypeNameList != null and capacityTypeNameList.size > 0">
  967. and
  968. RCT.CAPACITY_TYPE_NAME in
  969. <foreach collection="capacityTypeNameList" index="index" item="item" separator="," close=")" open="(">
  970. #{item}
  971. </foreach>
  972. </if>
  973. GROUP BY RCT .CAPACITY_TYPE_ID,RCT.CAPACITY_TYPE_NAME,RCT .CAPACITY_MAX_LOAD
  974. </if>
  975. </select>
  976. <select id="getLineByLike" resultType="java.util.Map">
  977. select * from(
  978. select * from(
  979. select
  980. RL.LINE_ID "lineId",
  981. RL.LINE_NAME "lineName",
  982. RL.LINE_ID "id",
  983. RL.LINE_ID "value",
  984. RL.LINE_NAME "label",
  985. RL.LINE_NAME "text",
  986. RL.REMARK "lineDesk",
  987. NVL(RL_TEMP."points",'无') "points",
  988. RL.LINE_TYPE "lineType",
  989. 'lineName' "prop"
  990. from RMS_LINE RL
  991. LEFT JOIN
  992. (
  993. SELECT
  994. RLS .LINE_ID "lineId",
  995. listagg (DISTINCT ROP .OPERATION_POINT_NAME, ',') WITHIN GROUP (ORDER BY RLS .LINE_ID) "points"
  996. FROM
  997. RMS_LINE_STEP RLS
  998. LEFT JOIN RMS_STEP_POINT RSP
  999. ON RLS .STEP_ID = RSP .STEP_ID
  1000. LEFT JOIN RMS_OPERATION_POINT ROP
  1001. ON RSP .OPERATION_POINT_ID = ROP .OPERATION_POINT_ID
  1002. GROUP BY RLS .LINE_ID
  1003. ) RL_TEMP ON RL_TEMP ."lineId" = RL .LINE_ID
  1004. where DELETED = 0
  1005. )
  1006. <where>
  1007. <if test="index!=null and index!=''">
  1008. AND REGEXP_LIKE("label" || "points", #{index})
  1009. </if>
  1010. <if test="lineId!=null and lineId!=''">
  1011. AND "lineId" = #{lineId}
  1012. </if>
  1013. <if test="lineType!=null and lineType!=''">
  1014. AND REGEXP_LIKE("lineType" , #{lineType})
  1015. </if>
  1016. <if test="lastIndex!=null and lastIndex!=''">
  1017. AND 1!=1
  1018. </if>
  1019. </where>
  1020. FETCH NEXT 10 ROWS ONLY
  1021. )
  1022. <if test="id!=null and id.size>0">
  1023. UNION
  1024. select
  1025. RL.LINE_ID "lineId",
  1026. RL.LINE_NAME "lineName",
  1027. RL.LINE_ID "id",
  1028. RL.LINE_ID "value",
  1029. RL.LINE_NAME "label",
  1030. RL.LINE_NAME "text",
  1031. RL .REMARK "lineDesk",
  1032. NVL(RL_TEMP."points",'无') "points",
  1033. RL.LINE_TYPE "lineType",
  1034. 'lineName' "prop"
  1035. from RMS_LINE RL
  1036. LEFT JOIN
  1037. (
  1038. SELECT
  1039. RLS .LINE_ID "lineId",
  1040. listagg (DISTINCT ROP .OPERATION_POINT_NAME, ',') WITHIN GROUP (ORDER BY RLS .LINE_ID) "points"
  1041. FROM
  1042. RMS_LINE_STEP RLS
  1043. LEFT JOIN RMS_STEP_POINT RSP
  1044. ON RLS .STEP_ID = RSP .STEP_ID
  1045. LEFT JOIN RMS_OPERATION_POINT ROP
  1046. ON RSP .OPERATION_POINT_ID = ROP .OPERATION_POINT_ID
  1047. GROUP BY RLS .LINE_ID
  1048. ) RL_TEMP ON RL_TEMP ."lineId" = RL .LINE_ID
  1049. where RL.LINE_ID in
  1050. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1051. #{item}
  1052. </foreach>
  1053. </if>
  1054. </select>
  1055. <select id="getMaterialByLike" resultType="java.util.Map">
  1056. select * from(
  1057. select
  1058. RC.MATERIAL_ID "materialId",
  1059. RC.MATERIAL_NAME ||
  1060. (CASE
  1061. WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL AND RC.MATERIAL_MODEL IS NOT NULL
  1062. THEN ' ' || RC.MATERIAL_SPECIFICATION || ' ' || RC.MATERIAL_MODEL
  1063. WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL
  1064. THEN ' ' || RC.MATERIAL_SPECIFICATION
  1065. WHEN RC.MATERIAL_MODEL IS NOT NULL
  1066. THEN ' ' || RC.MATERIAL_MODEL
  1067. ELSE ''
  1068. END) "label",
  1069. RC.MATERIAL_ID "id",
  1070. RC.MATERIAL_ID "value",
  1071. RC.MATERIAL_CODE ||
  1072. (CASE WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL
  1073. THEN '-' || RC.MATERIAL_SPECIFICATION
  1074. WHEN RC.MATERIAL_MODEL IS NOT NULL
  1075. THEN '-' || RC.MATERIAL_MODEL
  1076. ELSE ''
  1077. END)|| '-' || RC.MATERIAL_NAME "materialName",
  1078. RC.MATERIAL_NAME "text",
  1079. 'materialName' "prop"
  1080. from RMS_MATERIAL RC
  1081. left join rms_material_map t
  1082. on t.prod_code_l = RC.MATERIAL_CODE
  1083. <where>
  1084. DELETED = 0
  1085. <if test="index!=null and index!=''">
  1086. AND instr(RC.MATERIAL_CODE || (CASE
  1087. WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL THEN
  1088. '-' || RC.MATERIAL_SPECIFICATION
  1089. WHEN RC.MATERIAL_MODEL IS NOT NULL THEN
  1090. '-' || RC.MATERIAL_MODEL
  1091. ELSE
  1092. ''
  1093. END) || '-' || RC.MATERIAL_NAME, #{index})>0
  1094. </if>
  1095. <if test="materialId!=null and materialId!=''">
  1096. AND RC.MATERIAL_ID = #{materialId}
  1097. </if>
  1098. <if test="prodCode!=null and prodCode!=''">
  1099. AND ( REGEXP_LIKE(t.prod_code, #{prodCode})
  1100. OR REGEXP_LIKE(RC.MATERIAL_CODE, #{prodCode}) )
  1101. </if>
  1102. </where>
  1103. FETCH NEXT 10 ROWS ONLY
  1104. )
  1105. <if test="id!=null and id.size>0">
  1106. UNION
  1107. select
  1108. RC.MATERIAL_ID "materialId",
  1109. RC.MATERIAL_NAME "label",
  1110. RC.MATERIAL_ID "id",
  1111. RC.MATERIAL_ID "value",
  1112. RC.MATERIAL_NAME ||
  1113. (CASE WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL
  1114. THEN '-' || RC.MATERIAL_SPECIFICATION
  1115. WHEN RC.MATERIAL_MODEL IS NOT NULL
  1116. THEN '-' || RC.MATERIAL_MODEL
  1117. ELSE ''
  1118. END) || '-' || RC.MATERIAL_CODE "materialName",
  1119. RC.MATERIAL_NAME "text",
  1120. 'materialName' "prop"
  1121. from RMS_MATERIAL RC
  1122. WHERE RC.MATERIAL_ID in
  1123. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1124. #{item}
  1125. </foreach>
  1126. </if>
  1127. </select>
  1128. <select id="countTrainLoad" resultType="java.lang.Integer">
  1129. SELECT COUNT(*)
  1130. FROM TMS_LOAD_RESULT TLR
  1131. LEFT JOIN OMS_TRANS_ORDER OTO ON TLR .TRANS_ORDER_ID =OTO .TRANS_ORDER_ID
  1132. LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1133. LEFT JOIN AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
  1134. LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
  1135. LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
  1136. <where>
  1137. OTO.DELETED != 1
  1138. AND ATR.SERIAL_NUMBER =#{requirementNumber}
  1139. AND TLR.LOAD_START_TIME = to_date(#{loadTime}, 'yyyymmdd')
  1140. AND OTO.CAPACITY_ID IN
  1141. <foreach collection="list" item="item" open="(" close=")" separator="," >
  1142. #{item.车号}
  1143. </foreach>
  1144. </where>
  1145. </select>
  1146. <select id="getBusinessTypeLike" resultType="java.util.Map">
  1147. select * from(
  1148. select * from(
  1149. select
  1150. DBT.BUSINESS_TYPE_ID "businessTypeId",
  1151. DBT.BUSINESS_TYPE_ID "id",
  1152. DBT.BUSINESS_TYPE_ID "value",
  1153. DBT.BUSINESS_TYPE_NAME "text",
  1154. DBT.BUSINESS_TYPE_NAME "businessTypeName",
  1155. DBT.BUSINESS_SCENE "businessScene",
  1156. DBT.BUSINESS_TYPE_NAME "label",
  1157. DBT.ALTERNATE_FIELDS1 "transportType",
  1158. DBT.ALTERNATE_FIELDS2 "materialTypeName"
  1159. from DIL_BUSINESS_TYPE DBT
  1160. )
  1161. <where>
  1162. <if test="index!=null and index!=''">
  1163. AND REGEXP_LIKE("label", #{index})
  1164. </if>
  1165. <if test="businessType!=null and businessType!=''">
  1166. AND "businessTypeId" = #{businessType}
  1167. </if>
  1168. <if test="businessScene!=null and businessScene!=''">
  1169. AND "businessScene" = #{businessScene}
  1170. </if>
  1171. <if test="transportType!=null and transportType!=''">
  1172. AND REGEXP_LIKE("transportType", #{transportType})
  1173. </if>
  1174. <if test="materialTypeName!=null and materialTypeName!=''">
  1175. AND REGEXP_LIKE("materialTypeName", #{materialTypeName})
  1176. </if>
  1177. </where>
  1178. FETCH NEXT 10 ROWS ONLY
  1179. )
  1180. <if test="id!=null and id.size > 0">
  1181. UNION
  1182. select
  1183. DBT.BUSINESS_TYPE_ID "businessTypeId",
  1184. DBT.BUSINESS_TYPE_ID "id",
  1185. DBT.BUSINESS_TYPE_ID "value",
  1186. DBT.BUSINESS_TYPE_NAME "text",
  1187. DBT.BUSINESS_TYPE_NAME "businessTypeName",
  1188. DBT.BUSINESS_SCENE "businessScene",
  1189. DBT.BUSINESS_TYPE_NAME "label",
  1190. DBT.ALTERNATE_FIELDS1 "transportType",
  1191. DBT.ALTERNATE_FIELDS2 "materialTypeName"
  1192. from DIL_BUSINESS_TYPE DBT
  1193. WHERE DBT.BUSINESS_TYPE_ID in
  1194. <foreach collection="id" item="item" open="(" close=")" separator=",">
  1195. #{item}
  1196. </foreach>
  1197. </if>
  1198. </select>
  1199. <select id="findTrainWeight" resultType="java.util.Map">
  1200. <foreach collection="list" item="item" separator=" UNION " >
  1201. SELECT OTO .TRANS_ORDER_ID "transOrderId",
  1202. OOC .ORDER_CHILD_ID "transOrderChildId",
  1203. APC .TRANS_PLAN_ID "transPlanId",
  1204. APC .MATERIAL_ID "materialId",
  1205. TWR .RESULT_ID "resultId",
  1206. TUR .RESULT_ID "unloadResultId",
  1207. #{item.车号} "capacityId",
  1208. #{item.净重} "netWeight",
  1209. #{item.皮重} "tareWeight",
  1210. #{item.毛重} "grossWeight"
  1211. FROM OMS_TRANS_ORDER OTO
  1212. LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1213. LEFT JOIN TMS_WEIGHT_RESULT TWR
  1214. ON TWR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID AND TWR.NET_WEIGHT_TIME = to_date(#{weightTime}, 'yyyymmdd')
  1215. LEFT JOIN TMS_UNLOAD_RESULT TUR ON TUR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1216. LEFT JOIN AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
  1217. LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
  1218. LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
  1219. <where>
  1220. OTO.DELETED != 1
  1221. AND ATR.SERIAL_NUMBER =#{requirementNumber}
  1222. AND OTO.CAPACITY_ID = #{item.车号}
  1223. </where>
  1224. </foreach>
  1225. </select>
  1226. <select id="findTrainUnload" resultType="java.util.Map">
  1227. <foreach collection="list" item="item" separator=" UNION " >
  1228. SELECT OTO .TRANS_ORDER_ID "transOrderId",
  1229. OOC .ORDER_CHILD_ID "transOrderChildId",
  1230. TUR .RESULT_ID "resultId",
  1231. TUR .ACTUAL_TONNAGE "unloadWeightOld",
  1232. ATR .SERIAL_NUMBER "requirementSerialNumber",
  1233. APC .TRANS_PLAN_ID "transPlanId",
  1234. ARC .RECEIVING_POINT_ID "unloadPointId",
  1235. APC .MATERIAL_ID "materialId",
  1236. #{item.车号} "capacityId",
  1237. #{item.净重} "unloadWeight"
  1238. FROM OMS_TRANS_ORDER OTO
  1239. LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1240. LEFT JOIN TMS_UNLOAD_RESULT TUR
  1241. ON TUR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID AND TUR.UNLOAD_START_TIME = to_date(#{unloadTime}, 'yyyymmdd')
  1242. LEFT JOIN AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
  1243. LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
  1244. LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
  1245. <where>
  1246. OTO.DELETED != 1
  1247. AND ATR.SERIAL_NUMBER =#{requirementNumber}
  1248. AND OTO.CAPACITY_ID = #{item.车号}
  1249. </where>
  1250. </foreach>
  1251. </select>
  1252. <select id="getOrderIds" resultType="java.util.Map">
  1253. SELECT oto.TRANS_ORDER_ID FROM OMS_TRANS_ORDER OTO
  1254. left join RMS_PERSONNEL RP
  1255. on rp.PERSONNEL_ID = oto.DRIVER_ID
  1256. left join RMS_PERSONNEL RP2
  1257. on RP2.PERSONNEL_ID = oto.DRIVER_ID2
  1258. where (rp.PERSONNEL_JOB_NUMBER = #{jobNumber}
  1259. or rp2.PERSONNEL_JOB_NUMBER = #{jobNumber})
  1260. and oto.deleted = 5
  1261. </select>
  1262. <select id="getFuelTypeByLike" resultType="java.util.Map">
  1263. select * from(
  1264. SELECT
  1265. FUEL_TYPE_ID "fuelTypeId",
  1266. FUEL_TYPE_NAME "fuelTypeName",
  1267. FUEL_TYPE_ID "id",
  1268. FUEL_TYPE_ID "value",
  1269. FUEL_TYPE_NAME "text",
  1270. FUEL_TYPE_NAME "label"
  1271. FROM RMS_FUEL_TYPE
  1272. <where>
  1273. DELETED = 0
  1274. <if test="index!=null and index!=''">
  1275. AND REGEXP_LIKE(FUEL_TYPE_NAME, #{index})
  1276. </if>
  1277. </where>
  1278. FETCH NEXT 10 ROWS ONLY
  1279. )
  1280. <if test="id!=null and id.size > 0">
  1281. UNION
  1282. SELECT
  1283. FUEL_TYPE_ID "fuelTypeId",
  1284. FUEL_TYPE_NAME "fuelTypeName",
  1285. FUEL_TYPE_ID "id",
  1286. FUEL_TYPE_ID "value",
  1287. FUEL_TYPE_NAME "text",
  1288. FUEL_TYPE_NAME "label"
  1289. FROM RMS_FUEL_TYPE
  1290. WHERE FUEL_TYPE_ID in
  1291. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1292. #{item}
  1293. </foreach>
  1294. </if>
  1295. </select>
  1296. <select id="getDemandRulesCode" resultType="java.util.Map">
  1297. SELECT * FROM (
  1298. SELECT RDB.BILLING_TYPE "billingType",
  1299. RDB.BUSINESS_TYPE "businessType",
  1300. rdb.LINE_ID "lineId",
  1301. RDB.CAPACITY_TYPE_ID "capacityTypeId",
  1302. RDB.MATERIAL_TYPE_ID "operationsNameId",
  1303. RDB.TRANS_RANGE_ID "operationRange",
  1304. rdb.COMPANY_ID "businessCompanyId",
  1305. RDB.RULES_ID "value",
  1306. RDB.RULES_CODE "label",
  1307. ROP.OPERATION_POINT_ID "shippingPointId",
  1308. ROP2.OPERATION_POINT_ID "receivingPointId"
  1309. FROM RMS_DEMAND_RULES RDB
  1310. LEFT JOIN RMS_TRANS_RANGE RTR
  1311. ON RTR.TRANS_RANGE_ID = RDB.TRANS_RANGE_ID
  1312. LEFT JOIN RMS_OPERATION_POINT ROP
  1313. ON ROP.OPERATION_POINT_ID = RTR.START_POINT_ID
  1314. LEFT JOIN RMS_OPERATION_POINT ROP2
  1315. ON ROP2.OPERATION_POINT_ID = RTR.END_POINT_ID
  1316. )
  1317. <where>
  1318. <if test="index!=null and index!=''">
  1319. AND REGEXP_LIKE("label", #{index})
  1320. </if>
  1321. <if test="businessCompanyId!=null and businessCompanyId!=''">
  1322. AND REGEXP_LIKE("businessCompanyId", #{businessCompanyId})
  1323. </if>
  1324. <include refid="com.steerinfo.dil.mapper.CommonMapper.filterCompanyData"></include>
  1325. </where>
  1326. </select>
  1327. <select id="getIdCardCode" resultType="java.lang.String">
  1328. SELECT RC.INNNER_CODE FROM RMS_PERSONNEL RC
  1329. WHERE RC.PERSONNEL_JOB_NUMBER = #{jobNumber}
  1330. FETCH NEXT 1 ROWS ONLY
  1331. </select>
  1332. <select id="getMaterial" parameterType="java.util.Map" resultType="java.util.Map">
  1333. select t.prod_code_pk as "prodCodePk",
  1334. b.material_id as "materialId",
  1335. b.material_code as "prodCode",
  1336. b.material_name as "prodName",
  1337. b.material_model as "steelName",
  1338. t.create_emp as "createEmp",
  1339. t.create_time as "createTime",
  1340. b.material_specification as "specName",
  1341. CASE WHEN
  1342. REGEXP_LIKE(nvl(substr(b.material_specification,
  1343. decode(instr(b.material_specification, '/'),
  1344. 0,
  1345. 100,
  1346. instr(b.material_specification, '/')) + 1),
  1347. 12),'^\d+$') THEN
  1348. nvl(substr(b.material_specification,
  1349. decode(instr(b.material_specification, '/'),
  1350. 0,
  1351. 100,
  1352. instr(b.material_specification, '/')) + 1),
  1353. 12)
  1354. ELSE
  1355. '0'
  1356. END
  1357. * b.material_theoretical_weight / 1000 as "weight"
  1358. from rms_material b
  1359. left join rms_material_map t
  1360. on t.prod_code_l = b.material_code
  1361. <where>
  1362. <if test="prodCode != null and prodCode != ''">
  1363. and REGEXP_LIKE(t.prod_code, #{prodCode})
  1364. </if>
  1365. <if test="prodName != null and prodName != ''">
  1366. and REGEXP_LIKE(b.material_name, #{prodName})
  1367. </if>
  1368. </where>
  1369. union all
  1370. select '' as "prodCodePk",
  1371. b.material_id as "materialId",
  1372. b.material_code as "prodCode",
  1373. b.material_name as "prodName",
  1374. b.material_model as "steelName",
  1375. '' as "createEmp",
  1376. sysdate as "createTime",
  1377. b.material_specification as "specName",
  1378. CASE WHEN
  1379. REGEXP_LIKE(nvl(substr(b.material_specification,
  1380. decode(instr(b.material_specification, '/'),
  1381. 0,
  1382. 100,
  1383. instr(b.material_specification, '/')) + 1),
  1384. 12),'^\d+$') THEN
  1385. nvl(substr(b.material_specification,
  1386. decode(instr(b.material_specification, '/'),
  1387. 0,
  1388. 100,
  1389. instr(b.material_specification, '/')) + 1),
  1390. 12)
  1391. ELSE
  1392. '0'
  1393. END * b.material_theoretical_weight / 1000 as "weight"
  1394. from rms_material b
  1395. <where>
  1396. <if test="prodCode != null and prodCode != ''">
  1397. and REGEXP_LIKE(b.material_code, #{prodCode})
  1398. </if>
  1399. <if test="prodName != null and prodName != ''">
  1400. and REGEXP_LIKE(b.material_name, #{prodName})
  1401. </if>
  1402. <if test="materialId != null and materialId != ''">
  1403. and REGEXP_LIKE(b.material_id, #{materialId})
  1404. </if>
  1405. </where>
  1406. </select>
  1407. <select id="countTransOrder" resultType="java.lang.Integer">
  1408. SELECT COUNT(OTO .TRANS_ORDER_ID)
  1409. FROM OMS_TRANS_ORDER OTO
  1410. LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1411. LEFT JOIN AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
  1412. LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
  1413. LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
  1414. <where>
  1415. OTO.DELETED != 1
  1416. AND APC.TRANS_PLAN_ID =#{transPlanId}
  1417. </where>
  1418. </select>
  1419. <select id="getcountCar" resultType = "java.util.Map">
  1420. SELECT
  1421. RCAOLD.a "oldcar",(RCA.b-RCAOLD.a)"nowcar"
  1422. FROM
  1423. (
  1424. SELECT
  1425. COUNT( RCA.CAPACITY_NUMBER ) a
  1426. FROM
  1427. RMS_CAPACITY RCA
  1428. LEFT JOIN OMS_TRANS_ORDER OTO ON RCA.CAPACITY_ID = OTO.CAPACITY_ID
  1429. WHERE
  1430. OTO.TRANS_ORDER_ID IS NOT NULL
  1431. AND OTO.DELETED = 5
  1432. <if test="capacityTypeId != null and capacityTypeId != ''" >
  1433. AND RCA.CAPACITY_TYPE_ID = #{capacityTypeId}
  1434. </if>
  1435. AND RCA.DELETED != 1
  1436. ) RCAOLD,
  1437. ( SELECT
  1438. COUNT( RCA.CAPACITY_NUMBER) b
  1439. FROM
  1440. RMS_CAPACITY RCA
  1441. WHERE
  1442. <if test="capacityTypeId != null and capacityTypeId != ''" >
  1443. RCA.CAPACITY_TYPE_ID = #{capacityTypeId}
  1444. AND
  1445. </if>
  1446. RCA.DELETED != 1
  1447. ) RCA
  1448. </select>
  1449. <select id="getContainerList" resultType="java.util.Map">
  1450. SELECT RSC.CONTAINER_NO "label",
  1451. RSC.CONTAINER_NO "value",
  1452. RSC.CONTAINER_NO "text"
  1453. FROM RMS_SHIPPING_CONTAINER RSC
  1454. <where>
  1455. <if test="index != null and index != ''">
  1456. REGEXP_LIKE(RSC.CONTAINER_NO,#{index})
  1457. </if>
  1458. </where>
  1459. </select>
  1460. <select id="getCompanyMesByPlanLike" resultType="java.util.Map">
  1461. select * from(
  1462. select
  1463. RC.SSO_ID "ssoId",
  1464. RC.SSO_CODE "ssoCode",
  1465. RC.COMPANY_ID "id",
  1466. RC.COMPANY_ID "key",
  1467. RC.COMPANY_ID "value",
  1468. <if test="companyType==null">
  1469. RC.COMPANY_TYPE || '-' ||
  1470. </if>
  1471. RC.COMPANY_NAME "label",
  1472. RC.COMPANY_NAME "text",
  1473. RC.COMPANY_NAME "companyName",
  1474. T2 ."rootCompanyId",
  1475. T2 ."rootCompanyName",
  1476. 'label' "prop"
  1477. from RMS_COMPANY RC
  1478. LEFT JOIN (
  1479. SELECT "companyId",MAX("level") "rootIndex" FROM
  1480. (
  1481. SELECT
  1482. RC.COMPANY_ID "rootCompanyId",
  1483. RC.COMPANY_NAME "rootCompanyName",
  1484. LEVEL "level",
  1485. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1486. FROM
  1487. RMS_COMPANY RC
  1488. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1489. )
  1490. GROUP BY "companyId"
  1491. ) T1 ON T1 ."companyId" = RC .COMPANY_ID
  1492. LEFT JOIN
  1493. (
  1494. SELECT
  1495. RC.COMPANY_ID "rootCompanyId",
  1496. RC.COMPANY_NAME "rootCompanyName",
  1497. LEVEL "level",
  1498. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1499. FROM
  1500. RMS_COMPANY RC
  1501. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1502. ) T2 ON T2 ."companyId" = T1 ."companyId" AND T2 ."level" = T1 ."rootIndex"
  1503. <where>
  1504. DELETED = 0
  1505. <if test="companyType!=null and companyType!=''">
  1506. AND RC.COMPANY_TYPE = #{companyType}
  1507. </if>
  1508. <if test="companyId!=null and companyId!=''">
  1509. AND RC.COMPANY_ID = #{companyId}
  1510. </if>
  1511. <if test="businessCompanyId!=null and businessCompanyId!=''">
  1512. AND RC.COMPANY_ID = #{businessCompanyId}
  1513. </if>
  1514. <if test="supplierCompanyId!=null and supplierCompanyId!=''">
  1515. AND RC.COMPANY_ID = #{supplierCompanyId}
  1516. </if>
  1517. <if test="receiveCompanyId!=null and receiveCompanyId!=''">
  1518. AND RC.COMPANY_ID = #{receiveCompanyId}
  1519. </if>
  1520. <if test="carrierId!=null and carrierId!=''">
  1521. AND RC.COMPANY_ID = #{carrierId}
  1522. </if>
  1523. <if test="index!=null and index!=''">
  1524. AND REGEXP_LIKE(RC.COMPANY_NAME, #{index})
  1525. </if>
  1526. <if test="isListed !=null and isListed!=''">
  1527. AND RC.is_Listed IS NOT NULL
  1528. </if>
  1529. <if test="lastIndex!=null">
  1530. and RC.COMPANY_ID &lt; #{lastIndex}
  1531. </if>
  1532. </where>
  1533. <if test="noRow == null">
  1534. order by
  1535. RC.COMPANY_ID desc,
  1536. LENGTH(company_name)
  1537. FETCH NEXT 10 ROWS ONLY
  1538. </if>
  1539. )
  1540. <if test="id!=null and id.size>0">
  1541. UNION
  1542. select
  1543. RC.SSO_ID "ssoId",
  1544. RC.SSO_CODE "ssoCode",
  1545. RC.COMPANY_ID "id",
  1546. RC.COMPANY_ID "key",
  1547. RC.COMPANY_ID "value",
  1548. <if test="companyType==null">
  1549. RC.COMPANY_TYPE || '-' ||
  1550. </if>
  1551. RC.COMPANY_NAME "label",
  1552. RC.COMPANY_NAME "text",
  1553. RC.COMPANY_NAME "companyName",
  1554. T2 ."rootCompanyId",
  1555. T2 ."rootCompanyName",
  1556. 'label' "prop"
  1557. from RMS_COMPANY RC
  1558. LEFT JOIN (
  1559. SELECT "companyId",MAX("level") "rootIndex" FROM
  1560. (
  1561. SELECT
  1562. RC.COMPANY_ID "rootCompanyId",
  1563. RC.COMPANY_NAME "rootCompanyName",
  1564. LEVEL "level",
  1565. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1566. FROM
  1567. RMS_COMPANY RC
  1568. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1569. )
  1570. GROUP BY "companyId"
  1571. ) T1 ON T1 ."companyId" = RC .COMPANY_ID
  1572. LEFT JOIN
  1573. (
  1574. SELECT
  1575. RC.COMPANY_ID "rootCompanyId",
  1576. RC.COMPANY_NAME "rootCompanyName",
  1577. LEVEL "level",
  1578. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1579. FROM
  1580. RMS_COMPANY RC
  1581. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1582. ) T2 ON T2 ."companyId" = T1 ."companyId" AND T2 ."level" = T1 ."rootIndex"
  1583. where RC.COMPANY_ID in
  1584. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1585. #{item}
  1586. </foreach>
  1587. </if>
  1588. </select>
  1589. <select id="getDriverByLike" resultType="java.util.Map">
  1590. select * from (
  1591. select * from (
  1592. select * from (
  1593. select
  1594. distinct
  1595. RP.PERSONNEL_ID "personnelId",
  1596. RP.PERSONNEL_NAME "personnelName",
  1597. RP.PERSONNEL_POST "personnelPost",
  1598. RP.PERSONNEL_PHONE "personnelPhone",
  1599. RP.IDENTITY_CARD "personnelCard",
  1600. RP.INNNER_CODE "innerCode",
  1601. (
  1602. select count(*) from oms_trans_order oto where oto.driver_id = rp.personnel_id or oto.driver_id2 = rp.personnel_id
  1603. ) "orders",
  1604. to_char(RP.SSO_ID) "ssoId",
  1605. RP.PERSONNEL_ID "id",
  1606. RP.PERSONNEL_ID "value",
  1607. RP.PERSONNEL_NAME "label",
  1608. RP.PERSONNEL_NAME "text",
  1609. 'personnelName' "prop"
  1610. <if test="capacityId!=null and capacityId!=''">
  1611. ,NVL(T ."countNumber",0) "countNumber"
  1612. </if>
  1613. FROM
  1614. RMS_PERSONNEL RP
  1615. <if test="capacityId!=null and capacityId!=''">
  1616. LEFT JOIN (
  1617. SELECT DRIVER_ID "driverId",
  1618. COUNT(DRIVER_ID) "countNumber"
  1619. FROM OMS_TRANS_ORDER
  1620. WHERE CAPACITY_ID = #{capacityId}
  1621. GROUP BY DRIVER_ID
  1622. ) T ON T."driverId" = RP .PERSONNEL_ID
  1623. </if>
  1624. WHERE RP.DELETED != -1
  1625. <if test="isNC!=null">
  1626. AND RP.SOURCE_ID IS NOT NULL
  1627. </if>
  1628. )
  1629. <where>
  1630. <if test="personnelPost!=null and personnelPost!=''">
  1631. AND "personnelPost" = #{personnelPost}
  1632. </if>
  1633. <if test="personnelId!=null and personnelId!=''">
  1634. AND "personnelId" = #{personnelId}
  1635. </if>
  1636. <if test="driverId!=null and driverId!=''">
  1637. AND "personnelId" = #{driverId}
  1638. </if>
  1639. <if test="driverId2!=null and driverId2!=''">
  1640. AND "personnelId" = #{driverId2}
  1641. </if>
  1642. <if test="index!=null and index!=''">
  1643. AND REGEXP_LIKE("label", #{index})
  1644. </if>
  1645. <if test="lastIndex!=null">
  1646. and "personnelId" &lt; #{lastIndex}
  1647. </if>
  1648. </where>
  1649. <if test="capacityId!=null and capacityId!=''">
  1650. ORDER BY "countNumber" DESC
  1651. </if>
  1652. <if test="!(capacityId!=null and capacityId!='')">
  1653. order by "personnelId" desc
  1654. </if>
  1655. FETCH NEXT 10 ROWS ONLY
  1656. )
  1657. <if test="id!=null and id.size>0">
  1658. UNION
  1659. select
  1660. RP.PERSONNEL_ID "personnelId",
  1661. RP.PERSONNEL_NAME "personnelName",
  1662. RP.PERSONNEL_POST "personnelPost",
  1663. RP.PERSONNEL_PHONE "personnelPhone",
  1664. RP.IDENTITY_CARD "personnelCard",
  1665. RP.INNNER_CODE "innerCode",
  1666. (
  1667. select count(*) from oms_trans_order oto where oto.driver_id = rp.personnel_id or oto.driver_id2 = rp.personnel_id
  1668. ) "orders",
  1669. to_char(RP.SSO_ID) "ssoId",
  1670. RP.PERSONNEL_ID "id",
  1671. RP.PERSONNEL_ID "value",
  1672. RP.PERSONNEL_NAME "label",
  1673. RP.PERSONNEL_NAME "text",
  1674. 'personnelName' "prop"
  1675. <if test="capacityId!=null and capacityId!=''">
  1676. ,NVL(T ."countNumber",0) "countNumber"
  1677. </if>
  1678. from RMS_PERSONNEL RP
  1679. <if test="capacityId!=null and capacityId!=''">
  1680. LEFT JOIN (
  1681. SELECT DRIVER_ID "driverId",
  1682. COUNT(DRIVER_ID) "countNumber"
  1683. FROM OMS_TRANS_ORDER
  1684. WHERE CAPACITY_ID = #{capacityId}
  1685. GROUP BY DRIVER_ID
  1686. ) T ON T."driverId" = RP .PERSONNEL_ID
  1687. </if>
  1688. WHERE RP.PERSONNEL_ID in
  1689. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1690. #{item}
  1691. </foreach>
  1692. </if>
  1693. )
  1694. <if test="capacityId!=null and capacityId!=''">
  1695. ORDER BY "countNumber" DESC
  1696. </if>
  1697. </select>
  1698. <select id="getConfigByName" resultType="java.util.Map">
  1699. SELECT CONFIG_ID "configId",
  1700. CONFIG_NAME "configName",
  1701. CONFIG_VALUE_STRING "valueString",
  1702. CONFIG_VALUE_NUMBER "valueNumber",
  1703. CONFIG_VALUE_DATE "valueDate",
  1704. CONFIG_DESCRIPTION "configDescription",
  1705. DELETED "deleted"
  1706. FROM DIL_CONFIG
  1707. WHERE DELETED!=1
  1708. AND CONFIG_NAME= #{configName}
  1709. FETCH NEXT 1 ROWS ONLY
  1710. </select>
  1711. <select id="getCapacityDriver" resultType="java.util.Map">
  1712. SELECT
  1713. DRIVER_ID "driverId",
  1714. CAPACITY_ID "capacityId"
  1715. FROM
  1716. OMS_TRANS_ORDER
  1717. WHERE ISSUE_TIME IS NOT NULL
  1718. <if test="driverId!=null and driverId!=''">
  1719. AND DRIVER_ID = #{driverId}
  1720. </if>
  1721. <if test="capacityId!=null and capacityId!=''">
  1722. AND CAPACITY_ID = #{capacityId}
  1723. </if>
  1724. ORDER BY ISSUE_TIME DESC
  1725. FETCH NEXT 1 ROWS ONLY
  1726. </select>
  1727. <select id="getCapacityDriverSelect" resultType="java.util.Map">
  1728. SELECT DISTINCT
  1729. OTO.DRIVER_ID "driverId",
  1730. OTO.CAPACITY_ID "capacityId",
  1731. OTO.ISSUE_TIME,
  1732. RP.PERSONNEL_NAME "driverName",
  1733. RCA.CAPACITY_NUMBER "capacityNumber"
  1734. FROM
  1735. OMS_TRANS_ORDER OTO
  1736. LEFT JOIN RMS_PERSONNEL RP ON OTO.DRIVER_ID = RP.PERSONNEL_ID
  1737. LEFT JOIN RMS_CAPACITY RCA ON OTO.CAPACITY_ID = RCA.CAPACITY_ID
  1738. WHERE OTO.ISSUE_TIME IS NOT NULL
  1739. AND RP.PERSONNEL_NAME IS NOT NULL
  1740. AND RCA.CAPACITY_NUMBER IS NOT NULL
  1741. <if test="driverId!=null and driverId!=''">
  1742. AND OTO.DRIVER_ID = #{driverId}
  1743. </if>
  1744. <if test="capacityId!=null and capacityId!=''">
  1745. AND OTO.CAPACITY_ID = #{capacityId}
  1746. </if>
  1747. ORDER BY OTO.ISSUE_TIME DESC
  1748. </select>
  1749. <select id="getCapacityInfo" resultType="java.util.Map">
  1750. SELECT * FROM RMS_CAPACITY
  1751. WHERE CAPACITY_NUMBER = #{capacityNumber}
  1752. FETCH NEXT 1 ROWS ONLY
  1753. </select>
  1754. <select id="getDriverInfo" resultType="java.util.Map">
  1755. SELECT * FROM RMS_PERSONNEL
  1756. WHERE PERSONNEL_JOB_NUMBER = #{jobNumber}
  1757. </select>
  1758. <select id="getRequireByLike" resultType="java.util.Map">
  1759. SELECT * FROM (
  1760. SELECT DISTINCT
  1761. ATR .SERIAL_NUMBER "supplementary",
  1762. ATR .TRANS_REQUIREMENT_ID "id",
  1763. ATR .TRANS_REQUIREMENT_ID "value",
  1764. ATR .SERIAL_NUMBER "label",
  1765. ATR .SERIAL_NUMBER "text"
  1766. FROM
  1767. AMS_TRANS_REQUIREMENT ATR
  1768. LEFT JOIN AMS_REQUIREMENT_CHILD ARC
  1769. ON ARC.TRANS_REQUIREMENT_ID = ATR.TRANS_REQUIREMENT_ID
  1770. LEFT JOIN RMS_MATERIAL RM
  1771. ON RM.MATERIAL_ID = ARC.MATERIAL_ID
  1772. LEFT JOIN RMS_COMPANY RC
  1773. ON RC.COMPANY_ID = ATR.RECEIVING_COMPANY_ID
  1774. <where>
  1775. ATR.DELETED NOT IN (2,5,6)
  1776. <if test="index != null and index != ''">
  1777. AND REGEXP_LIKE(ATR.SERIAL_NUMBER, #{index})
  1778. </if>
  1779. <if test="materialCode != null and materialCode!=''">
  1780. AND REGEXP_LIKE(RM.MATERIAL_CODE, #{materialCode})
  1781. </if>
  1782. <if test="receivingCompanyId != null and receivingCompanyId != ''">
  1783. AND REGEXP_LIKE(ATR.RECEIVING_COMPANY_ID , #{receivingCompanyId})
  1784. </if>
  1785. <if test="materialId !=null and materialId != ''">
  1786. AND REGEXP_LIKE(ARC.MATERIAL_ID, #{materialId})
  1787. </if>
  1788. <if test="receiveCompanyName !=null and receiveCompanyName != ''">
  1789. AND REGEXP_LIKE(RC.COMPANY_NAME, #{receiveCompanyName})
  1790. </if>
  1791. </where>
  1792. FETCH NEXT 10 ROWS ONLY
  1793. )
  1794. <if test="id!=null and id.size>0">
  1795. UNION
  1796. SELECT DISTINCT
  1797. ATR .SERIAL_NUMBER "supplementary",
  1798. ATR .TRANS_REQUIREMENT_ID "id",
  1799. ATR .TRANS_REQUIREMENT_ID "value",
  1800. ATR .SERIAL_NUMBER "label",
  1801. ATR .SERIAL_NUMBER "text"
  1802. FROM
  1803. AMS_TRANS_REQUIREMENT ATR
  1804. WHERE ATR .TRANS_REQUIREMENT_ID in
  1805. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1806. #{item}
  1807. </foreach>
  1808. </if>
  1809. </select>
  1810. </mapper>