UniversalMapper.xml 80 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080
  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. OPERATION_POINT_CODE "code",
  313. REMARK "remark",
  314. alternate_fields3 "f3"
  315. from RMS_OPERATION_POINT
  316. <where>
  317. DELETED = 0
  318. <if test="operationPointType!=null and operationPointType!=''">
  319. AND REGEXP_LIKE(OPERATION_POINT_TYPE, #{operationPointType})
  320. </if>
  321. <if test="receivingPointId!=null and receivingPointId!=''">
  322. AND OPERATION_POINT_ID = #{receivingPointId}
  323. </if>
  324. <if test="shippingPointId!=null and shippingPointId!=''">
  325. AND OPERATION_POINT_ID = #{shippingPointId}
  326. </if>
  327. <if test="index!=null and index!=''">
  328. AND REGEXP_LIKE(OPERATION_POINT_CODE || OPERATION_POINT_NAME, #{index})
  329. </if>
  330. <if test="sourceFlag != null and sourceFlag !=''">
  331. AND ALTERNATE_FIELDS1 = #{sourceFlag}
  332. </if>
  333. <if test="gatepostCodeList != null and gatepostCodeList !='' and gatepostCodeList.size > 0">
  334. AND OPERATION_POINT_CODE IN
  335. <foreach collection="gatepostCodeList" open="(" close=")" separator="," item="item" index="index">
  336. #{item}
  337. </foreach>
  338. </if>
  339. </where>
  340. order by alternate_fields3,LENGTH(OPERATION_POINT_NAME)
  341. FETCH NEXT 50 ROWS ONLY
  342. )
  343. <if test="id!=null and id.size>0">
  344. UNION select
  345. OPERATION_POINT_ID "id",
  346. OPERATION_POINT_ID "value",
  347. OPERATION_POINT_NAME "OPERATION_POINT_NAME",
  348. OPERATION_POINT_CODE || '-' || OPERATION_POINT_NAME "label",
  349. OPERATION_POINT_CODE || '-' || OPERATION_POINT_NAME "text",
  350. OPERATION_POINT_CODE "code",
  351. REMARK "remark",
  352. alternate_fields3 "f3"
  353. from RMS_OPERATION_POINT
  354. where OPERATION_POINT_ID in
  355. <foreach collection="id" item="item" open="(" close=")" separator="," >
  356. #{item}
  357. </foreach>
  358. </if>
  359. ) order by "f3", LENGTH("OPERATION_POINT_NAME") desc
  360. </select>
  361. <select id="getOperationPointByLikeNoCode" resultType="java.util.Map">
  362. select * from (
  363. SELECT * FROM (
  364. select
  365. OPERATION_POINT_ID "id",
  366. OPERATION_POINT_ID "value",
  367. OPERATION_POINT_NAME "OPERATION_POINT_NAME",
  368. OPERATION_POINT_NAME "label",
  369. OPERATION_POINT_NAME "text",
  370. OPERATION_POINT_CODE "code",
  371. REMARK "remark",
  372. alternate_fields3 "f3"
  373. from RMS_OPERATION_POINT
  374. <where>
  375. DELETED = 0
  376. <if test="operationPointType!=null and operationPointType!=''">
  377. AND REGEXP_LIKE(OPERATION_POINT_TYPE, #{operationPointType})
  378. </if>
  379. <if test="receivingPointId!=null and receivingPointId!=''">
  380. AND OPERATION_POINT_ID = #{receivingPointId}
  381. </if>
  382. <if test="shippingPointId!=null and shippingPointId!=''">
  383. AND OPERATION_POINT_ID = #{shippingPointId}
  384. </if>
  385. <if test="index!=null and index!=''">
  386. AND REGEXP_LIKE(OPERATION_POINT_CODE || OPERATION_POINT_NAME, #{index})
  387. </if>
  388. <if test="sourceFlag != null and sourceFlag !=''">
  389. AND ALTERNATE_FIELDS1 = #{sourceFlag}
  390. </if>
  391. </where>
  392. order by alternate_fields3,LENGTH(OPERATION_POINT_NAME)
  393. FETCH NEXT 50 ROWS ONLY
  394. )
  395. <if test="id!=null and id.size>0">
  396. UNION select
  397. OPERATION_POINT_ID "id",
  398. OPERATION_POINT_ID "value",
  399. OPERATION_POINT_NAME "OPERATION_POINT_NAME",
  400. OPERATION_POINT_NAME "label",
  401. OPERATION_POINT_NAME "text",
  402. OPERATION_POINT_CODE "code",
  403. REMARK "remark",
  404. alternate_fields3 "f3"
  405. from RMS_OPERATION_POINT
  406. where
  407. <foreach collection="id" item="item" open="(" close=")" separator="," >
  408. REGEXP_LIKE(OPERATION_POINT_NAME, #{item})
  409. </foreach>
  410. </if>
  411. ) order by "f3", LENGTH("OPERATION_POINT_NAME") desc
  412. </select>
  413. <select id="getPersonnelByLike" resultType="java.util.Map">
  414. select * from (
  415. select * from (
  416. select * from (
  417. select
  418. distinct
  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
  434. RMS_PERSONNEL RP
  435. <if test="capacityId!=null and capacityId!=''">
  436. LEFT JOIN (
  437. SELECT DRIVER_ID "driverId",
  438. COUNT(DRIVER_ID) "countNumber"
  439. FROM OMS_TRANS_ORDER
  440. WHERE CAPACITY_ID = #{capacityId}
  441. GROUP BY DRIVER_ID
  442. ) T ON T."driverId" = RP .PERSONNEL_ID
  443. </if>
  444. WHERE DELETED = 0
  445. <if test="isNC!=null">
  446. AND SOURCE_ID IS NOT NULL
  447. </if>
  448. )
  449. <where>
  450. <if test="personnelPost!=null and personnelPost!=''">
  451. AND "personnelPost" = #{personnelPost}
  452. </if>
  453. <if test="personnelId!=null and personnelId!=''">
  454. AND "personnelId" = #{personnelId})
  455. </if>
  456. <if test="driverId!=null and driverId!=''">
  457. AND "personnelId" = #{driverId})
  458. </if>
  459. <if test="driverId2!=null and driverId2!=''">
  460. AND "personnelId" = #{driverId2})
  461. </if>
  462. <if test="index!=null and index!=''">
  463. AND REGEXP_LIKE("label", #{index})
  464. </if>
  465. <if test="personnelName!=null and personnelName!=''">
  466. AND REGEXP_LIKE("label", #{personnelName})
  467. </if>
  468. <if test="lastIndex!=null">
  469. and "personnelId" &lt; #{lastIndex}
  470. </if>
  471. </where>
  472. <if test="capacityId!=null and capacityId!=''">
  473. ORDER BY "countNumber" DESC
  474. </if>
  475. <if test="!(capacityId!=null and capacityId!='')">
  476. order by "personnelId" desc
  477. </if>
  478. FETCH NEXT 10 ROWS ONLY
  479. )
  480. <if test="id!=null and id.size>0">
  481. UNION
  482. select
  483. PERSONNEL_ID "personnelId",
  484. PERSONNEL_NAME "personnelName",
  485. PERSONNEL_POST "personnelPost",
  486. PERSONNEL_PHONE "personnelPhone",
  487. INNNER_CODE "innerCode",
  488. to_char(SSO_ID) "ssoId",
  489. PERSONNEL_ID "id",
  490. PERSONNEL_ID "value",
  491. PERSONNEL_NAME "label",
  492. PERSONNEL_NAME "text",
  493. 'personnelName' "prop"
  494. <if test="capacityId!=null and capacityId!=''">
  495. ,NVL(T ."countNumber",0) "countNumber"
  496. </if>
  497. from RMS_PERSONNEL RP
  498. <if test="capacityId!=null and capacityId!=''">
  499. LEFT JOIN (
  500. SELECT DRIVER_ID "driverId",
  501. COUNT(DRIVER_ID) "countNumber"
  502. FROM OMS_TRANS_ORDER
  503. WHERE CAPACITY_ID = #{capacityId}
  504. GROUP BY DRIVER_ID
  505. ) T ON T."driverId" = RP .PERSONNEL_ID
  506. </if>
  507. WHERE PERSONNEL_ID in
  508. <foreach collection="id" item="item" open="(" close=")" separator="," >
  509. #{item}
  510. </foreach>
  511. </if>
  512. )
  513. <if test="capacityId!=null and capacityId!=''">
  514. ORDER BY "countNumber" DESC
  515. </if>
  516. </select>
  517. <select id="getCapacityByLike" resultType="java.util.Map">
  518. select * from (
  519. select * from (
  520. select * from (
  521. SELECT DISTINCT
  522. RCA .CAPACITY_ID "capacityId",
  523. RCA .CAPACITY_ID "id",
  524. RCA .CAPACITY_ID "value",
  525. RCA .CAPACITY_LICENCE_NUMBER "capacityLicenceNumber",
  526. RCA. CAPACITY_OPERATE_NUMBER "capacityOperateNumber",
  527. RCA. CAPACITY_AXIS_NUMBER "capacityAxisNumber",
  528. RCA.CAPACITY_WEIGHT_MAIN "capacityWeightMain",
  529. RCA.CAPACITY_WEIGHT_TRAILER "capacityWeightTrailer",
  530. RCA.CAPACITY_TYPE_ID "capacityTypeId",
  531. RCA.EMISSION_STANDARD_ID "emissionStandardId",
  532. RCA.CAPACITY_NUMBER "label",
  533. RCA.CAPACITY_NUMBER "text",
  534. RCA.REMARK1 "remark1",
  535. RCA.CAPACITY_NUMBER "capacityNumber",
  536. (case
  537. when oto.capacity_id is null then '空闲'
  538. when oto.deleted != '2' and oto.capacity_id is not null then '已派'
  539. end) "status",
  540. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  541. 'capacityNumber' "prop"
  542. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  543. ,NVL(T ."countNumber",0) "countNumber"
  544. </if>
  545. FROM
  546. RMS_CAPACITY RCA
  547. LEFT JOIN RMS_CAPACITY_TYPE RCT ON RCA.CAPACITY_TYPE_ID = RCT.CAPACITY_TYPE_ID
  548. left join oms_trans_order oto
  549. on RCA.capacity_id = oto.capacity_id
  550. and oto.deleted between 4 and 5
  551. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  552. LEFT JOIN (
  553. SELECT CAPACITY_ID "capacityId",
  554. COUNT( CAPACITY_ID ) "countNumber"
  555. FROM OMS_TRANS_ORDER
  556. <where>
  557. <if test="driverId!=null and driverId!=''">
  558. AND (DRIVER_ID = #{driverId} OR DRIVER_ID2 = #{driverId})
  559. </if>
  560. <if test="driverId2!=null and driverId2!=''">
  561. AND DRIVER_ID = #{driverId2} OR DRIVER_ID2 = #{driverId2}
  562. </if>
  563. </where>
  564. GROUP BY CAPACITY_ID
  565. ) T ON T."capacityId" = RCA .CAPACITY_ID
  566. </if>
  567. WHERE RCA .DELETED = 0
  568. <if test="capacityTypeId !=null">
  569. AND RCT.CAPACITY_TYPE_ID in (
  570. select rct.capacity_type_id from rms_capacity_type rct
  571. START WITH rct.capacity_type_id = #{capacityTypeId}
  572. connect BY PRIOR rct.capacity_type_id = rct.p_capacity_type_id
  573. )
  574. </if>
  575. <if test="capacityType != null and capacityType != '' ">
  576. AND RCT.CAPACITY_TYPE_NAME = #{capacityType}
  577. </if>
  578. <if test="capacityType == null">
  579. AND RCT.CAPACITY_TYPE_NAME != '火车'
  580. </if>
  581. <if test="capacityId!=null and capacityId!=''">
  582. AND RCA .CAPACITY_ID = #{capacityId}
  583. </if>
  584. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  585. ORDER BY "countNumber" DESC
  586. </if>
  587. ) <where>
  588. <if test="index!=null and index!=''">
  589. AND REGEXP_LIKE("capacityNumber", #{index})
  590. </if>
  591. </where>
  592. order by LENGTH("capacityNumber")
  593. FETCH NEXT 10 ROWS ONLY)
  594. <if test="id!=null and id.size>0">
  595. UNION
  596. SELECT DISTINCT
  597. RCA .CAPACITY_ID "capacityId",
  598. RCA .CAPACITY_ID "id",
  599. RCA .CAPACITY_ID "value",
  600. RCA .CAPACITY_LICENCE_NUMBER "capacityLicenceNumber",
  601. RCA. CAPACITY_OPERATE_NUMBER "capacityOperateNumber",
  602. RCA. CAPACITY_AXIS_NUMBER "capacityAxisNumber",
  603. RCA.CAPACITY_WEIGHT_MAIN "capacityWeightMain",
  604. RCA.CAPACITY_WEIGHT_TRAILER "capacityWeightTrailer",
  605. RCA.CAPACITY_TYPE_ID "capacityTypeId",
  606. RCA.EMISSION_STANDARD_ID "emissionStandardId",
  607. RCA.CAPACITY_NUMBER "label",
  608. RCA.CAPACITY_NUMBER "text",
  609. RCA.REMARK1 "remark1",
  610. RCA.CAPACITY_NUMBER "capacityNumber",
  611. (case
  612. when oto.capacity_id is null then '空闲'
  613. when oto.deleted != '2' and oto.capacity_id is not null then '已派'
  614. end) "status",
  615. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  616. 'capacityNumber' "prop"
  617. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  618. ,NVL(T ."countNumber",0) "countNumber"
  619. </if>
  620. FROM RMS_CAPACITY RCA
  621. LEFT JOIN RMS_CAPACITY_TYPE RCT ON RCA.CAPACITY_TYPE_ID = RCT.CAPACITY_TYPE_ID
  622. left join oms_trans_order oto
  623. on RCA.capacity_id = oto.capacity_id
  624. and oto.deleted != 2
  625. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  626. LEFT JOIN (
  627. SELECT CAPACITY_ID "capacityId",
  628. COUNT( CAPACITY_ID ) "countNumber"
  629. FROM OMS_TRANS_ORDER
  630. <where>
  631. <if test="driverId!=null and driverId!=''">
  632. AND (DRIVER_ID = #{driverId} OR DRIVER_ID2 = #{driverId})
  633. </if>
  634. <if test="driverId2!=null and driverId2!=''">
  635. AND DRIVER_ID = #{driverId2} OR DRIVER_ID2 = #{driverId2}
  636. </if>
  637. </where>
  638. GROUP BY CAPACITY_ID
  639. ) T ON T."capacityId" = RCA .CAPACITY_ID
  640. </if>
  641. WHERE RCA .CAPACITY_ID in
  642. <foreach collection="id" item="item" open="(" close=")" separator="," >
  643. #{item}
  644. </foreach>
  645. </if>)
  646. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  647. ORDER BY "countNumber" DESC
  648. </if>
  649. </select>
  650. <select id="getCapacityByLikeSc" resultType="java.util.Map">
  651. select * from (
  652. select * from (
  653. select * from (
  654. select rownum rowno,t.* from (
  655. SELECT DISTINCT
  656. RCA .CAPACITY_ID "capacityId",
  657. RCA .CAPACITY_ID "id",
  658. RCA .CAPACITY_ID "value",
  659. RCA .CAPACITY_LICENCE_NUMBER "capacityLicenceNumber",
  660. RCA. CAPACITY_OPERATE_NUMBER "capacityOperateNumber",
  661. RCA. CAPACITY_AXIS_NUMBER "capacityAxisNumber",
  662. RCA.CAPACITY_WEIGHT_MAIN "capacityWeightMain",
  663. RCA.CAPACITY_WEIGHT_TRAILER "capacityWeightTrailer",
  664. CASE WHEN RC.COMPANY_TYPE = '业务单位'
  665. THEN RC.COMPANY_ID
  666. else -1
  667. END "businessCompanyId",
  668. CASE WHEN RC.COMPANY_TYPE = '承运商'
  669. THEN RC.COMPANY_ID
  670. else -1
  671. END "carrierId",
  672. CASE WHEN RC.COMPANY_TYPE = '发货单位'
  673. THEN RC.COMPANY_ID
  674. else -1
  675. END "shippingCompanyId",
  676. CASE WHEN RC.COMPANY_TYPE = '收货客户'
  677. THEN RC.COMPANY_ID
  678. else -1
  679. END "receivingCompanyId",
  680. CASE WHEN RCA.REMARK1 is null
  681. then RCA.CAPACITY_NUMBER
  682. else RCA.REMARK1
  683. end "label",
  684. CASE WHEN RCA.REMARK1 is null
  685. then RCA.CAPACITY_NUMBER
  686. else RCA.REMARK1
  687. end "text",
  688. CASE WHEN RCA.REMARK1 is null
  689. then RCA.CAPACITY_NUMBER
  690. else RCA.REMARK1
  691. end "remark1",
  692. CASE WHEN RCA.REMARK1 is null
  693. then RCA.CAPACITY_NUMBER
  694. else RCA.REMARK1
  695. end "capacityNumber",
  696. (case
  697. when RCA.deleted = '3' then '维保'
  698. when oto.capacity_id is null then '空闲'
  699. when oto.deleted != '2' and oto.capacity_id is not null then '已派'
  700. when oto.deleted = '2' and oto.capacity_id is not null then '空闲'
  701. end) "status",
  702. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  703. 'capacityNumber' "prop"
  704. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  705. ,NVL(T ."countNumber",0) "countNumber"
  706. </if>
  707. FROM
  708. RMS_CAPACITY RCA
  709. LEFT JOIN RMS_CAPACITY_CARRIER RCC ON RCA .CAPACITY_ID = RCC .CAPACITY_ID
  710. LEFT JOIN RMS_COMPANY RC ON RC .COMPANY_ID = RCC .COMPANY_ID
  711. LEFT JOIN RMS_CAPACITY_TYPE RCT ON RCA.CAPACITY_TYPE_ID = RCT.CAPACITY_TYPE_ID
  712. left join oms_trans_order oto
  713. on RCA.capacity_id = oto.capacity_id
  714. and oto.deleted between 4 and 5
  715. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  716. LEFT JOIN (
  717. SELECT CAPACITY_ID "capacityId",
  718. COUNT( CAPACITY_ID ) "countNumber"
  719. FROM OMS_TRANS_ORDER
  720. <where>
  721. <if test="driverId!=null and driverId!=''">
  722. AND (DRIVER_ID = #{driverId} OR DRIVER_ID2 = #{driverId})
  723. </if>
  724. <if test="driverId2!=null and driverId2!=''">
  725. AND DRIVER_ID = #{driverId2} OR DRIVER_ID2 = #{driverId2}
  726. </if>
  727. </where>
  728. GROUP BY CAPACITY_ID
  729. ) T ON T."capacityId" = RCA .CAPACITY_ID
  730. </if>
  731. WHERE RCA .DELETED = 0
  732. <if test="capacityType != null and capacityType != '' ">
  733. AND RCT.CAPACITY_TYPE_NAME = #{capacityType}
  734. </if>
  735. <if test="capacityType == null">
  736. AND RCT.CAPACITY_TYPE_NAME != '火车'
  737. </if>
  738. <if test="index!=null and index!=''">
  739. AND REGEXP_LIKE(
  740. CASE WHEN RCA.REMARK1 is null
  741. then RCA.CAPACITY_NUMBER
  742. else RCA.REMARK1
  743. end, #{index}
  744. )
  745. </if>
  746. <if test="capacityId!=null and capacityId!=''">
  747. AND RCA .CAPACITY_ID = #{capacityId}
  748. </if>
  749. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  750. ORDER BY "countNumber" DESC
  751. </if>
  752. <if test="!((driverId!=null and driverId!='') or (driverId2!=null and driverId2!=''))">
  753. order by length("capacityNumber"),"capacityNumber"
  754. </if>
  755. )t)t1
  756. <where>
  757. <if test="lastIndex!=null">
  758. and t1.id > #{lastIndex}
  759. </if>
  760. </where>
  761. FETCH NEXT 10 ROWS ONLY)
  762. <if test="id!=null and id.size>0">
  763. UNION
  764. SELECT DISTINCT
  765. 0 rowno,
  766. RCA .CAPACITY_ID "capacityId",
  767. RCA .CAPACITY_ID "id",
  768. RCA .CAPACITY_ID "value",
  769. RCA .CAPACITY_LICENCE_NUMBER "capacityLicenceNumber",
  770. RCA. CAPACITY_OPERATE_NUMBER "capacityOperateNumber",
  771. RCA. CAPACITY_AXIS_NUMBER "capacityAxisNumber",
  772. RCA.CAPACITY_WEIGHT_MAIN "capacityWeightMain",
  773. RCA.CAPACITY_WEIGHT_TRAILER "capacityWeightTrailer",
  774. CASE WHEN RC.COMPANY_TYPE = '业务单位'
  775. THEN RC.COMPANY_ID
  776. else -1
  777. END "businessCompanyId",
  778. CASE WHEN RC.COMPANY_TYPE = '承运商'
  779. THEN RC.COMPANY_ID
  780. else -1
  781. END "carrierId",
  782. CASE WHEN RC.COMPANY_TYPE = '发货单位'
  783. THEN RC.COMPANY_ID
  784. else -1
  785. END "shippingCompanyId",
  786. CASE WHEN RC.COMPANY_TYPE = '收货客户'
  787. THEN RC.COMPANY_ID
  788. else -1
  789. END "receivingCompanyId",
  790. CASE WHEN RCA.REMARK1 is null
  791. then RCA.CAPACITY_NUMBER
  792. else RCA.REMARK1
  793. end "label",
  794. CASE WHEN RCA.REMARK1 is null
  795. then RCA.CAPACITY_NUMBER
  796. else RCA.REMARK1
  797. end "text",
  798. CASE WHEN RCA.REMARK1 is null
  799. then RCA.CAPACITY_NUMBER
  800. else RCA.REMARK1
  801. end "remark1",
  802. CASE WHEN RCA.REMARK1 is null
  803. then RCA.CAPACITY_NUMBER
  804. else RCA.REMARK1
  805. end "capacityNumber",
  806. (case
  807. when oto.capacity_id is null then '空闲'
  808. when oto.deleted != '2' and oto.capacity_id is not null then '已派'
  809. end) "status",
  810. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  811. 'capacityNumber' "prop"
  812. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  813. ,NVL(T ."countNumber",0) "countNumber"
  814. </if>
  815. FROM RMS_CAPACITY RCA
  816. LEFT JOIN RMS_CAPACITY_CARRIER RCC ON RCA .CAPACITY_ID = RCC .CAPACITY_ID
  817. LEFT JOIN RMS_COMPANY RC ON RC .COMPANY_ID = RCC .COMPANY_ID
  818. LEFT JOIN RMS_CAPACITY_TYPE RCT ON RCA.CAPACITY_TYPE_ID = RCT.CAPACITY_TYPE_ID
  819. left join oms_trans_order oto
  820. on RCA.capacity_id = oto.capacity_id
  821. and oto.deleted != 2
  822. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  823. LEFT JOIN (
  824. SELECT CAPACITY_ID "capacityId",
  825. COUNT( CAPACITY_ID ) "countNumber"
  826. FROM OMS_TRANS_ORDER
  827. <where>
  828. <if test="driverId!=null and driverId!=''">
  829. AND (DRIVER_ID = #{driverId} OR DRIVER_ID2 = #{driverId})
  830. </if>
  831. <if test="driverId2!=null and driverId2!=''">
  832. AND DRIVER_ID = #{driverId2} OR DRIVER_ID2 = #{driverId2}
  833. </if>
  834. </where>
  835. GROUP BY CAPACITY_ID
  836. ) T ON T."capacityId" = RCA .CAPACITY_ID
  837. </if>
  838. WHERE RCA .CAPACITY_ID in
  839. <foreach collection="id" item="item" open="(" close=")" separator="," >
  840. #{item}
  841. </foreach>
  842. </if>
  843. )
  844. <if test="(driverId!=null and driverId!='') or (driverId2!=null and driverId2!='')">
  845. ORDER BY "countNumber" DESC
  846. </if>
  847. </select>
  848. <select id="getrmsrmsjobinfosBylike" resultType="java.util.Map">
  849. select * from(
  850. select
  851. RC.JOB_ID "jboId",
  852. RC.JOB_NAME "jobName",
  853. RC.JOB_ID "id",
  854. RC.JOB_ID "value",
  855. RC.JOB_NAME "label",
  856. RC.JOB_NAME "text"
  857. from RMS_JOB_INFO RC
  858. where DELETED = 0
  859. )
  860. <where>
  861. <if test="index!=null and index!=''">
  862. AND REGEXP_LIKE("label", #{index})
  863. </if>
  864. <if test="id!=null and id.size>0 and !(index!=null and index!='')">
  865. AND "id" in
  866. <foreach collection="id" item="item" open="(" close=")" separator="," >
  867. #{item}
  868. </foreach>
  869. </if>
  870. </where>
  871. FETCH NEXT 10 ROWS ONLY
  872. </select>
  873. <select id="getTransRangeByLike" resultType="java.util.Map">
  874. select * from(
  875. select
  876. RC.TRANS_RANGE_ID "transrangeId",
  877. RC.TRANS_RANGE_NAME "transrangeName",
  878. RC.TRANS_RANGE_ID "operationRangeId",
  879. RC.TRANS_RANGE_NAME "operationRangeName",
  880. RC.TRANS_RANGE_ID "id",
  881. RC.TRANS_RANGE_ID "value",
  882. RC.TRANS_RANGE_NAME "label",
  883. RC.TRANS_RANGE_NAME "text",
  884. rc.START_POINT_ID "shippingPointId",
  885. rc.END_POINT_ID "receivingPointId",
  886. rc.LINE_ID "lineId",
  887. t1.company_id "businessCompanyId",
  888. 'operationRangeName' "prop"
  889. from RMS_TRANS_RANGE RC
  890. left join rms_operation_point rop_s
  891. on rop_s.operation_point_id = RC.start_point_id
  892. left join rms_operation_point rop_e
  893. on rop_e.operation_point_id = RC.end_point_id
  894. left join rms_company_b_m_t t1
  895. on RC.trans_range_id = t1.trans_range_id
  896. <where>
  897. and RC.DELETED = 0
  898. </where>
  899. )
  900. <where>
  901. <if test="companyType != null and companyType == '业务单位' and isListed == null">
  902. <include refid="com.steerinfo.dil.mapper.CommonMapper.filterCompanyData"></include>
  903. </if>
  904. <if test="index!=null and index!=''">
  905. <bind name="indexBind" value="'%' + index + '%'"/>
  906. AND "label" like #{indexBind}
  907. </if>
  908. <if test="transrangeId!=null and transrangeId!=''">
  909. AND "transrangeId" = #{transrangeId}
  910. </if>
  911. <if test="id!=null and id.size>0 and !(index!=null and index!='')">
  912. AND "id" in
  913. <foreach collection="id" item="item" open="(" close=")" separator="," >
  914. #{item}
  915. </foreach>
  916. </if>
  917. <if test="lastIndex!=null">
  918. and "transrangeId" &lt; #{lastIndex}
  919. </if>
  920. </where>
  921. order by "transrangeId" desc
  922. FETCH NEXT 10 ROWS ONLY
  923. </select>
  924. <select id="getCategoryCodeByLike" resultType="java.util.Map">
  925. select * from(
  926. select
  927. RC.RULES_ID "rulesId",
  928. RC.RULES_CODE "rulesCode",
  929. RC.RULES_ID "id",
  930. RC.RULES_ID "value",
  931. RC.RULES_CODE "label",
  932. RC.RULES_CODE "text"
  933. from RMS_DEMAND_RULES RC
  934. where DELETED = 0
  935. )
  936. <where>
  937. <if test="index!=null and index!=''">
  938. AND REGEXP_LIKE("label", #{index})
  939. </if>
  940. <if test="id!=null and id.size>0 and !(index!=null and index!='')">
  941. AND "id" in
  942. <foreach collection="id" item="item" open="(" close=")" separator="," >
  943. #{item}
  944. </foreach>
  945. </if>
  946. </where>
  947. FETCH NEXT 10 ROWS ONLY
  948. </select>
  949. <select id="getCapacityTypeByLike" resultType="java.util.Map">
  950. select * from(
  951. select
  952. RCT.CAPACITY_TYPE_ID "capacityTypeId",
  953. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  954. RCT.CAPACITY_TYPE_ID "id",
  955. RCT.CAPACITY_TYPE_ID "value",
  956. RCT.CAPACITY_TYPE_NAME "label",
  957. RCT.CAPACITY_TYPE_NAME "text",
  958. RCT .CAPACITY_MAX_LOAD "capacityMaxLoad",
  959. '[' || listagg (RCFT .FUEL_TYPE_ID, ',') WITHIN GROUP (ORDER BY RCT .CAPACITY_TYPE_ID) || ']' "fuelTypeIds",
  960. listagg (RFT .FUEL_TYPE_NAME, '/') WITHIN GROUP (ORDER BY RCT .CAPACITY_TYPE_ID) "fuelTypes",
  961. 'capacityTypeName' "prop"
  962. from RMS_CAPACITY_TYPE RCT
  963. LEFT JOIN RMS_CAPACITY_FUEL_TYPE RCFT ON RCFT.CAPACITY_TYPE_ID = RCT .CAPACITY_TYPE_ID
  964. LEFT JOIN RMS_FUEL_TYPE RFT ON RFT .FUEL_TYPE_ID = RCFT.FUEL_TYPE_ID
  965. <where>
  966. RCT.DELETED=0
  967. <if test="index!=null and index!=''">
  968. AND REGEXP_LIKE(RCT.CAPACITY_TYPE_NAME, #{index})
  969. </if>
  970. <if test="capacityTypeId!=null and capacityTypeId!=''">
  971. AND RCT.CAPACITY_TYPE_ID = #{capacityTypeId}
  972. </if>
  973. <if test="insertUserName != null and insertUserName !='' ">
  974. AND RCT.INSERT_USERNAME = #{insertUserName}
  975. </if>
  976. <if test="isPCapacityTypeId!=null and isPCapacityTypeId!=''">
  977. AND RCT.P_CAPACITY_TYPE_ID is null
  978. </if>
  979. <if test="capacityTypeNameList != null and capacityTypeNameList.size > 0">
  980. and
  981. RCT.CAPACITY_TYPE_NAME in
  982. <foreach collection="capacityTypeNameList" index="index" item="item" separator="," close=")" open="(">
  983. #{item}
  984. </foreach>
  985. </if>
  986. <if test="lastIndex!=null">
  987. and RCT.CAPACITY_TYPE_ID &lt; #{lastIndex}
  988. </if>
  989. </where>
  990. GROUP BY RCT.CAPACITY_TYPE_ID,RCT.CAPACITY_TYPE_NAME,RCT .CAPACITY_MAX_LOAD
  991. ORDER BY RCT.CAPACITY_TYPE_ID desc
  992. FETCH NEXT 10 ROWS ONLY
  993. )
  994. <if test="id!=null and id.size>0">
  995. UNION
  996. select
  997. RCT.CAPACITY_TYPE_ID "capacityTypeId",
  998. RCT.CAPACITY_TYPE_NAME "capacityTypeName",
  999. RCT.CAPACITY_TYPE_ID "id",
  1000. RCT.CAPACITY_TYPE_ID "value",
  1001. RCT.CAPACITY_TYPE_NAME "label",
  1002. RCT.CAPACITY_TYPE_NAME "text",
  1003. RCT .CAPACITY_MAX_LOAD "capacityMaxLoad",
  1004. '[' || listagg (RCFT .FUEL_TYPE_ID, ',') WITHIN GROUP (ORDER BY RCT .CAPACITY_TYPE_ID) || ']' "fuelTypeIds",
  1005. listagg (RFT .FUEL_TYPE_NAME, '/') WITHIN GROUP (ORDER BY RCT .CAPACITY_TYPE_ID) "fuelTypes",
  1006. 'capacityTypeName' "prop"
  1007. from RMS_CAPACITY_TYPE RCT
  1008. LEFT JOIN RMS_CAPACITY_FUEL_TYPE RCFT ON RCFT.CAPACITY_TYPE_ID = RCT .CAPACITY_TYPE_ID
  1009. LEFT JOIN RMS_FUEL_TYPE RFT ON RFT .FUEL_TYPE_ID = RCFT.FUEL_TYPE_ID
  1010. WHERE RCT.CAPACITY_TYPE_ID in
  1011. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1012. #{item}
  1013. </foreach>
  1014. <if test="capacityTypeNameList != null and capacityTypeNameList.size > 0">
  1015. and
  1016. RCT.CAPACITY_TYPE_NAME in
  1017. <foreach collection="capacityTypeNameList" index="index" item="item" separator="," close=")" open="(">
  1018. #{item}
  1019. </foreach>
  1020. </if>
  1021. GROUP BY RCT .CAPACITY_TYPE_ID,RCT.CAPACITY_TYPE_NAME,RCT .CAPACITY_MAX_LOAD
  1022. </if>
  1023. </select>
  1024. <select id="getLineByLike" resultType="java.util.Map">
  1025. select * from(
  1026. select * from(
  1027. select
  1028. RL.LINE_ID "lineId",
  1029. RL.LINE_NAME "lineName",
  1030. RL.LINE_ID "id",
  1031. RL.LINE_ID "value",
  1032. RL.LINE_NAME "label",
  1033. RL.LINE_NAME "text",
  1034. RL.REMARK "lineDesk",
  1035. NVL(RL_TEMP."points",'无') "points",
  1036. RL.LINE_TYPE "lineType",
  1037. 'lineName' "prop"
  1038. from RMS_LINE RL
  1039. LEFT JOIN
  1040. (
  1041. SELECT
  1042. RLS .LINE_ID "lineId",
  1043. listagg (DISTINCT ROP .OPERATION_POINT_NAME, ',') WITHIN GROUP (ORDER BY RLS .LINE_ID) "points"
  1044. FROM
  1045. RMS_LINE_STEP RLS
  1046. LEFT JOIN RMS_STEP_POINT RSP
  1047. ON RLS .STEP_ID = RSP .STEP_ID
  1048. LEFT JOIN RMS_OPERATION_POINT ROP
  1049. ON RSP .OPERATION_POINT_ID = ROP .OPERATION_POINT_ID
  1050. GROUP BY RLS .LINE_ID
  1051. ) RL_TEMP ON RL_TEMP ."lineId" = RL .LINE_ID
  1052. where DELETED = 0
  1053. )
  1054. <where>
  1055. <if test="index!=null and index!=''">
  1056. AND REGEXP_LIKE("label" || "points", #{index})
  1057. </if>
  1058. <if test="lineId!=null and lineId!=''">
  1059. AND "lineId" = #{lineId}
  1060. </if>
  1061. <if test="lineType!=null and lineType!=''">
  1062. AND REGEXP_LIKE("lineType" , #{lineType})
  1063. </if>
  1064. <if test="lastIndex!=null and lastIndex!=''">
  1065. AND 1!=1
  1066. </if>
  1067. </where>
  1068. FETCH NEXT 10 ROWS ONLY
  1069. )
  1070. <if test="id!=null and id.size>0">
  1071. UNION
  1072. select
  1073. RL.LINE_ID "lineId",
  1074. RL.LINE_NAME "lineName",
  1075. RL.LINE_ID "id",
  1076. RL.LINE_ID "value",
  1077. RL.LINE_NAME "label",
  1078. RL.LINE_NAME "text",
  1079. RL .REMARK "lineDesk",
  1080. NVL(RL_TEMP."points",'无') "points",
  1081. RL.LINE_TYPE "lineType",
  1082. 'lineName' "prop"
  1083. from RMS_LINE RL
  1084. LEFT JOIN
  1085. (
  1086. SELECT
  1087. RLS .LINE_ID "lineId",
  1088. listagg (DISTINCT ROP .OPERATION_POINT_NAME, ',') WITHIN GROUP (ORDER BY RLS .LINE_ID) "points"
  1089. FROM
  1090. RMS_LINE_STEP RLS
  1091. LEFT JOIN RMS_STEP_POINT RSP
  1092. ON RLS .STEP_ID = RSP .STEP_ID
  1093. LEFT JOIN RMS_OPERATION_POINT ROP
  1094. ON RSP .OPERATION_POINT_ID = ROP .OPERATION_POINT_ID
  1095. GROUP BY RLS .LINE_ID
  1096. ) RL_TEMP ON RL_TEMP ."lineId" = RL .LINE_ID
  1097. where RL.LINE_ID in
  1098. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1099. #{item}
  1100. </foreach>
  1101. </if>
  1102. </select>
  1103. <select id="getMaterialByLike" resultType="java.util.Map">
  1104. select * from(
  1105. select
  1106. RC.MATERIAL_ID "materialId",
  1107. RC.MATERIAL_NAME ||
  1108. (CASE
  1109. WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL AND RC.MATERIAL_MODEL IS NOT NULL
  1110. THEN ' ' || RC.MATERIAL_SPECIFICATION || ' ' || RC.MATERIAL_MODEL
  1111. WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL
  1112. THEN ' ' || RC.MATERIAL_SPECIFICATION
  1113. WHEN RC.MATERIAL_MODEL IS NOT NULL
  1114. THEN ' ' || RC.MATERIAL_MODEL
  1115. ELSE ''
  1116. END) "label",
  1117. RC.MATERIAL_ID "id",
  1118. RC.MATERIAL_ID "value",
  1119. RC.MATERIAL_CODE ||
  1120. (CASE WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL
  1121. THEN '-' || RC.MATERIAL_SPECIFICATION
  1122. WHEN RC.MATERIAL_MODEL IS NOT NULL
  1123. THEN '-' || RC.MATERIAL_MODEL
  1124. ELSE ''
  1125. END)|| '-' || RC.MATERIAL_NAME "materialName",
  1126. RC.MATERIAL_NAME "text",
  1127. 'materialName' "prop"
  1128. from RMS_MATERIAL RC
  1129. left join rms_material_map t
  1130. on t.prod_code_l = RC.MATERIAL_CODE
  1131. <where>
  1132. DELETED = 0
  1133. <if test="index!=null and index!=''">
  1134. AND instr(RC.MATERIAL_CODE || (CASE
  1135. WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL THEN
  1136. '-' || RC.MATERIAL_SPECIFICATION
  1137. WHEN RC.MATERIAL_MODEL IS NOT NULL THEN
  1138. '-' || RC.MATERIAL_MODEL
  1139. ELSE
  1140. ''
  1141. END) || '-' || RC.MATERIAL_NAME, #{index})>0
  1142. </if>
  1143. <if test="materialId!=null and materialId!=''">
  1144. AND RC.MATERIAL_ID = #{materialId}
  1145. </if>
  1146. <if test="prodCode!=null and prodCode!=''">
  1147. AND ( REGEXP_LIKE(t.prod_code, #{prodCode})
  1148. OR REGEXP_LIKE(RC.MATERIAL_CODE, #{prodCode}) )
  1149. </if>
  1150. </where>
  1151. order by length("text")
  1152. FETCH NEXT 10 ROWS ONLY
  1153. )
  1154. <if test="id!=null and id.size>0">
  1155. UNION
  1156. select
  1157. RC.MATERIAL_ID "materialId",
  1158. RC.MATERIAL_NAME "label",
  1159. RC.MATERIAL_ID "id",
  1160. RC.MATERIAL_ID "value",
  1161. RC.MATERIAL_NAME ||
  1162. (CASE WHEN RC.MATERIAL_SPECIFICATION IS NOT NULL
  1163. THEN '-' || RC.MATERIAL_SPECIFICATION
  1164. WHEN RC.MATERIAL_MODEL IS NOT NULL
  1165. THEN '-' || RC.MATERIAL_MODEL
  1166. ELSE ''
  1167. END) || '-' || RC.MATERIAL_CODE "materialName",
  1168. RC.MATERIAL_NAME "text",
  1169. 'materialName' "prop"
  1170. from RMS_MATERIAL RC
  1171. WHERE RC.MATERIAL_ID in
  1172. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1173. #{item}
  1174. </foreach>
  1175. </if>
  1176. </select>
  1177. <select id="countTrainLoad" resultType="java.lang.Integer">
  1178. SELECT COUNT(*)
  1179. FROM TMS_LOAD_RESULT TLR
  1180. LEFT JOIN OMS_TRANS_ORDER OTO ON TLR .TRANS_ORDER_ID =OTO .TRANS_ORDER_ID
  1181. LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1182. LEFT JOIN AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
  1183. LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
  1184. LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
  1185. <where>
  1186. OTO.DELETED != 1
  1187. AND TLR.LOAD_START_TIME = to_date(#{loadDate}, 'yyyymmdd')
  1188. AND
  1189. <foreach collection="list" item="item" open="(" close=")" separator="OR" >
  1190. ATR.SERIAL_NUMBER = #{item.通知单号}
  1191. AND OTO.CAPACITY_ID = #{item.车号}
  1192. </foreach>
  1193. </where>
  1194. </select>
  1195. <select id="getBusinessTypeLike" resultType="java.util.Map">
  1196. select * from(
  1197. select * from(
  1198. select
  1199. DBT.BUSINESS_TYPE_ID "businessTypeId",
  1200. DBT.BUSINESS_TYPE_ID "id",
  1201. DBT.BUSINESS_TYPE_ID "value",
  1202. DBT.BUSINESS_TYPE_NAME "text",
  1203. DBT.BUSINESS_TYPE_NAME "businessTypeName",
  1204. DBT.BUSINESS_SCENE "businessScene",
  1205. DBT.BUSINESS_TYPE_NAME "label",
  1206. DBT.ALTERNATE_FIELDS1 "transportType",
  1207. DBT.ALTERNATE_FIELDS2 "materialTypeName"
  1208. from DIL_BUSINESS_TYPE DBT
  1209. )
  1210. <where>
  1211. <if test="index!=null and index!=''">
  1212. AND REGEXP_LIKE("label", #{index})
  1213. </if>
  1214. <if test="businessType!=null and businessType!=''">
  1215. AND "businessTypeId" = #{businessType}
  1216. </if>
  1217. <if test="businessScene!=null and businessScene!=''">
  1218. AND "businessScene" = #{businessScene}
  1219. </if>
  1220. <if test="transportType!=null and transportType!=''">
  1221. AND REGEXP_LIKE("transportType", #{transportType})
  1222. </if>
  1223. <if test="materialTypeName!=null and materialTypeName!=''">
  1224. AND REGEXP_LIKE("materialTypeName", #{materialTypeName})
  1225. </if>
  1226. </where>
  1227. FETCH NEXT 10 ROWS ONLY
  1228. )
  1229. <if test="id!=null and id.size > 0">
  1230. UNION
  1231. select
  1232. DBT.BUSINESS_TYPE_ID "businessTypeId",
  1233. DBT.BUSINESS_TYPE_ID "id",
  1234. DBT.BUSINESS_TYPE_ID "value",
  1235. DBT.BUSINESS_TYPE_NAME "text",
  1236. DBT.BUSINESS_TYPE_NAME "businessTypeName",
  1237. DBT.BUSINESS_SCENE "businessScene",
  1238. DBT.BUSINESS_TYPE_NAME "label",
  1239. DBT.ALTERNATE_FIELDS1 "transportType",
  1240. DBT.ALTERNATE_FIELDS2 "materialTypeName"
  1241. from DIL_BUSINESS_TYPE DBT
  1242. WHERE DBT.BUSINESS_TYPE_ID in
  1243. <foreach collection="id" item="item" open="(" close=")" separator=",">
  1244. #{item}
  1245. </foreach>
  1246. </if>
  1247. </select>
  1248. <select id="findTrainWeight" resultType="java.util.Map">
  1249. <foreach collection="list" item="item" separator=" UNION " >
  1250. SELECT OTO .TRANS_ORDER_ID "transOrderId",
  1251. OOC .ORDER_CHILD_ID "transOrderChildId",
  1252. APC .TRANS_PLAN_ID "transPlanId",
  1253. ATR .TRANS_REQUIREMENT_ID "tdls",
  1254. ARC .REQUIREMENT_CHILD_ID "tdfl",
  1255. OTO .ALTERNATE_FIELDS18 "sendStation",
  1256. OTO .ALTERNATE_FIELDS19 "endStation",
  1257. OTO .ALTERNATE_FIELDS20 "trainSeq",
  1258. APC .MATERIAL_ID "materialId",
  1259. to_char(TLR.LOAD_START_TIME, 'yyyymmdd') "loadTime",
  1260. TWR .RESULT_ID "resultId",
  1261. TUR .RESULT_ID "unloadResultId",
  1262. #{item.通知单号} "requireNumber",
  1263. #{item.计量日期} "weightTime",
  1264. #{item.磅单号} "poundNo",
  1265. #{item.车号} "capacityId",
  1266. #{item.净重} "netWeight",
  1267. #{item.皮重} "tareWeight",
  1268. #{item.毛重} "grossWeight"
  1269. FROM OMS_TRANS_ORDER OTO
  1270. LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1271. LEFT JOIN TMS_LOAD_RESULT TLR ON TLR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1272. LEFT JOIN TMS_WEIGHT_RESULT TWR
  1273. ON TWR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID AND TWR.NET_WEIGHT_TIME = to_date(#{item.计量日期}, 'yyyymmdd')
  1274. LEFT JOIN TMS_UNLOAD_RESULT TUR ON TUR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1275. LEFT JOIN AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
  1276. LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
  1277. LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
  1278. <where>
  1279. OTO.DELETED != 1
  1280. AND 30 >= TO_NUMBER (to_date(#{item.计量日期}, 'yyyymmdd') - TLR.LOAD_START_TIME)
  1281. AND TO_NUMBER (to_date(#{item.计量日期}, 'yyyymmdd') - TLR.LOAD_START_TIME) >= 0
  1282. AND ATR.SERIAL_NUMBER =#{item.通知单号}
  1283. AND OTO.CAPACITY_ID = #{item.车号}
  1284. </where>
  1285. </foreach>
  1286. </select>
  1287. <select id="findTrainUnload" resultType="java.util.Map">
  1288. <foreach collection="list" item="item" separator=" UNION " >
  1289. SELECT OTO .TRANS_ORDER_ID "transOrderId",
  1290. OOC .ORDER_CHILD_ID "transOrderChildId",
  1291. TUR .RESULT_ID "resultId",
  1292. TUR .ACTUAL_TONNAGE "unloadWeightOld",
  1293. OTO .ALTERNATE_FIELDS18 "sendStation",
  1294. OTO .ALTERNATE_FIELDS19 "endStation",
  1295. OTO .ALTERNATE_FIELDS20 "trainSeq",
  1296. to_char(TLR.LOAD_START_TIME, 'yyyymmdd') "loadTime",
  1297. ATR .TRANS_REQUIREMENT_ID "tdls",
  1298. ARC .REQUIREMENT_CHILD_ID "tdfl",
  1299. ATR .SERIAL_NUMBER "requirementSerialNumber",
  1300. APC .TRANS_PLAN_ID "transPlanId",
  1301. ARC .RECEIVING_POINT_ID "unloadPointId",
  1302. APC .MATERIAL_ID "materialId",
  1303. #{item.卸车日期} "unloadTime",
  1304. #{item.车号} "capacityId",
  1305. #{item.通知单号} "requireNumber",
  1306. #{item.皮重} "tareWeight",
  1307. #{item.毛重} "grossWeight",
  1308. #{item.净重} "netWeight",
  1309. CASE
  1310. WHEN TWR .NET_WEIGHT > 0 THEN TWR .NET_WEIGHT
  1311. ELSE TLR .ACTUAL_TONNAGE
  1312. END "unloadWeight"
  1313. FROM OMS_TRANS_ORDER OTO
  1314. LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1315. LEFT JOIN TMS_LOAD_RESULT TLR ON TLR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1316. LEFT JOIN TMS_WEIGHT_RESULT TWR ON TWR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1317. LEFT JOIN TMS_UNLOAD_RESULT TUR
  1318. ON TUR .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID AND TUR.UNLOAD_START_TIME = to_date(#{item.卸车日期}, 'yyyymmdd')
  1319. LEFT JOIN AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
  1320. LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
  1321. LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
  1322. <where>
  1323. OTO.DELETED != 1
  1324. AND 30 >= TO_NUMBER (to_date(#{item.卸车日期}, 'yyyymmdd') - TLR.LOAD_START_TIME)
  1325. AND TO_NUMBER (to_date(#{item.卸车日期}, 'yyyymmdd') - TLR.LOAD_START_TIME) >= 0
  1326. AND ATR.SERIAL_NUMBER =#{item.通知单号}
  1327. AND OTO.CAPACITY_ID = #{item.车号}
  1328. </where>
  1329. </foreach>
  1330. </select>
  1331. <select id="getOrderIds" resultType="java.util.Map">
  1332. SELECT oto.TRANS_ORDER_ID FROM OMS_TRANS_ORDER OTO
  1333. left join RMS_PERSONNEL RP
  1334. on rp.PERSONNEL_ID = oto.DRIVER_ID
  1335. left join RMS_PERSONNEL RP2
  1336. on RP2.PERSONNEL_ID = oto.DRIVER_ID2
  1337. where (rp.PERSONNEL_JOB_NUMBER = #{jobNumber}
  1338. or rp2.PERSONNEL_JOB_NUMBER = #{jobNumber})
  1339. and oto.deleted = 5
  1340. </select>
  1341. <select id="getFuelTypeByLike" resultType="java.util.Map">
  1342. select * from(
  1343. SELECT
  1344. FUEL_TYPE_ID "fuelTypeId",
  1345. FUEL_TYPE_NAME "fuelTypeName",
  1346. FUEL_TYPE_ID "id",
  1347. FUEL_TYPE_ID "value",
  1348. FUEL_TYPE_NAME "text",
  1349. FUEL_TYPE_NAME "label"
  1350. FROM RMS_FUEL_TYPE
  1351. <where>
  1352. DELETED = 0
  1353. <if test="index!=null and index!=''">
  1354. AND REGEXP_LIKE(FUEL_TYPE_NAME, #{index})
  1355. </if>
  1356. </where>
  1357. FETCH NEXT 10 ROWS ONLY
  1358. )
  1359. <if test="id!=null and id.size > 0">
  1360. UNION
  1361. SELECT
  1362. FUEL_TYPE_ID "fuelTypeId",
  1363. FUEL_TYPE_NAME "fuelTypeName",
  1364. FUEL_TYPE_ID "id",
  1365. FUEL_TYPE_ID "value",
  1366. FUEL_TYPE_NAME "text",
  1367. FUEL_TYPE_NAME "label"
  1368. FROM RMS_FUEL_TYPE
  1369. WHERE FUEL_TYPE_ID in
  1370. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1371. #{item}
  1372. </foreach>
  1373. </if>
  1374. </select>
  1375. <select id="getDemandRulesCode" resultType="java.util.Map">
  1376. SELECT * FROM (
  1377. SELECT RDB.BILLING_TYPE "billingType",
  1378. RDB.BUSINESS_TYPE "businessType",
  1379. rdb.LINE_ID "lineId",
  1380. RDB.CAPACITY_TYPE_ID "capacityTypeId",
  1381. RDB.MATERIAL_TYPE_ID "operationsNameId",
  1382. RDB.TRANS_RANGE_ID "operationRange",
  1383. rdb.COMPANY_ID "businessCompanyId",
  1384. RDB.RULES_ID "value",
  1385. RDB.RULES_CODE "label",
  1386. ROP.OPERATION_POINT_ID "shippingPointId",
  1387. ROP2.OPERATION_POINT_ID "receivingPointId"
  1388. FROM RMS_DEMAND_RULES RDB
  1389. LEFT JOIN RMS_TRANS_RANGE RTR
  1390. ON RTR.TRANS_RANGE_ID = RDB.TRANS_RANGE_ID
  1391. LEFT JOIN RMS_OPERATION_POINT ROP
  1392. ON ROP.OPERATION_POINT_ID = RTR.START_POINT_ID
  1393. LEFT JOIN RMS_OPERATION_POINT ROP2
  1394. ON ROP2.OPERATION_POINT_ID = RTR.END_POINT_ID
  1395. )
  1396. <where>
  1397. <if test="index!=null and index!=''">
  1398. AND REGEXP_LIKE("label", #{index})
  1399. </if>
  1400. <if test="businessCompanyId!=null and businessCompanyId!=''">
  1401. AND REGEXP_LIKE("businessCompanyId", #{businessCompanyId})
  1402. </if>
  1403. <include refid="com.steerinfo.dil.mapper.CommonMapper.filterCompanyData"></include>
  1404. </where>
  1405. </select>
  1406. <select id="getIdCardCode" resultType="java.lang.String">
  1407. SELECT RC.INNNER_CODE FROM RMS_PERSONNEL RC
  1408. WHERE RC.PERSONNEL_JOB_NUMBER = #{jobNumber}
  1409. FETCH NEXT 1 ROWS ONLY
  1410. </select>
  1411. <select id="getMaterial" parameterType="java.util.Map" resultType="java.util.Map">
  1412. select t.prod_code_pk as "prodCodePk",
  1413. b.material_id as "materialId",
  1414. b.material_code as "prodCode",
  1415. b.material_name as "prodName",
  1416. b.material_model as "steelName",
  1417. t.create_emp as "createEmp",
  1418. t.create_time as "createTime",
  1419. b.material_specification as "specName",
  1420. CASE WHEN
  1421. REGEXP_LIKE(nvl(substr(b.material_specification,
  1422. decode(instr(b.material_specification, '/'),
  1423. 0,
  1424. 100,
  1425. instr(b.material_specification, '/')) + 1),
  1426. 12),'^\d+$') THEN
  1427. nvl(substr(b.material_specification,
  1428. decode(instr(b.material_specification, '/'),
  1429. 0,
  1430. 100,
  1431. instr(b.material_specification, '/')) + 1),
  1432. 12)
  1433. ELSE
  1434. '0'
  1435. END
  1436. * b.material_theoretical_weight / 1000 as "weight"
  1437. from rms_material b
  1438. left join rms_material_map t
  1439. on t.prod_code_l = b.material_code
  1440. <where>
  1441. <if test="prodCode != null and prodCode != ''">
  1442. and REGEXP_LIKE(t.prod_code, #{prodCode})
  1443. </if>
  1444. <if test="prodName != null and prodName != ''">
  1445. and REGEXP_LIKE(b.material_name, #{prodName})
  1446. </if>
  1447. </where>
  1448. union all
  1449. select '' as "prodCodePk",
  1450. b.material_id as "materialId",
  1451. b.material_code as "prodCode",
  1452. b.material_name as "prodName",
  1453. b.material_model as "steelName",
  1454. '' as "createEmp",
  1455. sysdate as "createTime",
  1456. b.material_specification as "specName",
  1457. CASE WHEN
  1458. REGEXP_LIKE(nvl(substr(b.material_specification,
  1459. decode(instr(b.material_specification, '/'),
  1460. 0,
  1461. 100,
  1462. instr(b.material_specification, '/')) + 1),
  1463. 12),'^\d+$') THEN
  1464. nvl(substr(b.material_specification,
  1465. decode(instr(b.material_specification, '/'),
  1466. 0,
  1467. 100,
  1468. instr(b.material_specification, '/')) + 1),
  1469. 12)
  1470. ELSE
  1471. '0'
  1472. END * b.material_theoretical_weight / 1000 as "weight"
  1473. from rms_material b
  1474. <where>
  1475. <if test="prodCode != null and prodCode != ''">
  1476. and REGEXP_LIKE(b.material_code, #{prodCode})
  1477. </if>
  1478. <if test="prodName != null and prodName != ''">
  1479. and REGEXP_LIKE(b.material_name, #{prodName})
  1480. </if>
  1481. <if test="materialId != null and materialId != ''">
  1482. and REGEXP_LIKE(b.material_id, #{materialId})
  1483. </if>
  1484. </where>
  1485. </select>
  1486. <select id="countTransOrder" resultType="java.lang.Integer">
  1487. SELECT COUNT(OTO .TRANS_ORDER_ID)
  1488. FROM OMS_TRANS_ORDER OTO
  1489. LEFT JOIN OMS_ORDER_CHILD OOC ON OOC .TRANS_ORDER_ID = OTO .TRANS_ORDER_ID
  1490. LEFT JOIN AMS_PLAN_CHILD APC ON APC.PLAN_CHILD_ID = OOC.PLAN_CHILD_ID
  1491. LEFT JOIN AMS_REQUIREMENT_CHILD ARC ON ARC.REQUIREMENT_CHILD_ID = APC.REQUIREMENT_CHILD_ID
  1492. LEFT JOIN AMS_TRANS_REQUIREMENT ATR ON ATR.TRANS_REQUIREMENT_ID = ARC.TRANS_REQUIREMENT_ID
  1493. <where>
  1494. OTO.DELETED != 1
  1495. AND APC.TRANS_PLAN_ID =#{transPlanId}
  1496. </where>
  1497. </select>
  1498. <select id="getcountCar" resultType = "java.util.Map">
  1499. SELECT
  1500. RCAOLD.a "oldcar",(RCA.b-RCAOLD.a)"nowcar"
  1501. FROM
  1502. (
  1503. SELECT
  1504. COUNT( RCA.CAPACITY_NUMBER ) a
  1505. FROM
  1506. RMS_CAPACITY RCA
  1507. LEFT JOIN OMS_TRANS_ORDER OTO ON RCA.CAPACITY_ID = OTO.CAPACITY_ID
  1508. WHERE
  1509. OTO.TRANS_ORDER_ID IS NOT NULL
  1510. AND OTO.DELETED = 5
  1511. <if test="capacityTypeId != null and capacityTypeId != ''" >
  1512. AND RCA.CAPACITY_TYPE_ID = #{capacityTypeId}
  1513. </if>
  1514. AND RCA.DELETED != 1
  1515. ) RCAOLD,
  1516. ( SELECT
  1517. COUNT( RCA.CAPACITY_NUMBER) b
  1518. FROM
  1519. RMS_CAPACITY RCA
  1520. WHERE
  1521. <if test="capacityTypeId != null and capacityTypeId != ''" >
  1522. RCA.CAPACITY_TYPE_ID = #{capacityTypeId}
  1523. AND
  1524. </if>
  1525. RCA.DELETED != 1
  1526. ) RCA
  1527. </select>
  1528. <select id="getContainerList" resultType="java.util.Map">
  1529. SELECT RSC.CONTAINER_NO "label",
  1530. RSC.CONTAINER_NO "value",
  1531. RSC.CONTAINER_NO "text"
  1532. FROM RMS_SHIPPING_CONTAINER RSC
  1533. <where>
  1534. <if test="index != null and index != ''">
  1535. REGEXP_LIKE(RSC.CONTAINER_NO,#{index})
  1536. </if>
  1537. </where>
  1538. </select>
  1539. <select id="getCompanyMesByPlanLike" resultType="java.util.Map">
  1540. select * from(
  1541. select
  1542. RC.SSO_ID "ssoId",
  1543. RC.SSO_CODE "ssoCode",
  1544. RC.COMPANY_ID "id",
  1545. RC.COMPANY_ID "key",
  1546. RC.COMPANY_ID "value",
  1547. <if test="companyType==null">
  1548. RC.COMPANY_TYPE || '-' ||
  1549. </if>
  1550. RC.COMPANY_NAME "label",
  1551. RC.COMPANY_NAME "text",
  1552. RC.COMPANY_NAME "companyName",
  1553. T2 ."rootCompanyId",
  1554. T2 ."rootCompanyName",
  1555. 'label' "prop"
  1556. from RMS_COMPANY RC
  1557. LEFT JOIN (
  1558. SELECT "companyId",MAX("level") "rootIndex" FROM
  1559. (
  1560. SELECT
  1561. RC.COMPANY_ID "rootCompanyId",
  1562. RC.COMPANY_NAME "rootCompanyName",
  1563. LEVEL "level",
  1564. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1565. FROM
  1566. RMS_COMPANY RC
  1567. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1568. )
  1569. GROUP BY "companyId"
  1570. ) T1 ON T1 ."companyId" = RC .COMPANY_ID
  1571. LEFT JOIN
  1572. (
  1573. SELECT
  1574. RC.COMPANY_ID "rootCompanyId",
  1575. RC.COMPANY_NAME "rootCompanyName",
  1576. LEVEL "level",
  1577. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1578. FROM
  1579. RMS_COMPANY RC
  1580. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1581. ) T2 ON T2 ."companyId" = T1 ."companyId" AND T2 ."level" = T1 ."rootIndex"
  1582. <where>
  1583. DELETED = 0
  1584. <if test="companyType!=null and companyType!=''">
  1585. AND RC.COMPANY_TYPE = #{companyType}
  1586. </if>
  1587. <if test="companyId!=null and companyId!=''">
  1588. AND RC.COMPANY_ID = #{companyId}
  1589. </if>
  1590. <if test="businessCompanyId!=null and businessCompanyId!=''">
  1591. AND RC.COMPANY_ID = #{businessCompanyId}
  1592. </if>
  1593. <if test="supplierCompanyId!=null and supplierCompanyId!=''">
  1594. AND RC.COMPANY_ID = #{supplierCompanyId}
  1595. </if>
  1596. <if test="receiveCompanyId!=null and receiveCompanyId!=''">
  1597. AND RC.COMPANY_ID = #{receiveCompanyId}
  1598. </if>
  1599. <if test="carrierId!=null and carrierId!=''">
  1600. AND RC.COMPANY_ID = #{carrierId}
  1601. </if>
  1602. <if test="index!=null and index!=''">
  1603. AND REGEXP_LIKE(RC.COMPANY_NAME, #{index})
  1604. </if>
  1605. <if test="isListed !=null and isListed!=''">
  1606. AND RC.is_Listed IS NOT NULL
  1607. </if>
  1608. <if test="lastIndex!=null">
  1609. and RC.COMPANY_ID &lt; #{lastIndex}
  1610. </if>
  1611. </where>
  1612. <if test="noRow == null">
  1613. order by
  1614. RC.COMPANY_ID desc,
  1615. LENGTH(company_name)
  1616. FETCH NEXT 10 ROWS ONLY
  1617. </if>
  1618. )
  1619. <if test="id!=null and id.size>0">
  1620. UNION
  1621. select
  1622. RC.SSO_ID "ssoId",
  1623. RC.SSO_CODE "ssoCode",
  1624. RC.COMPANY_ID "id",
  1625. RC.COMPANY_ID "key",
  1626. RC.COMPANY_ID "value",
  1627. <if test="companyType==null">
  1628. RC.COMPANY_TYPE || '-' ||
  1629. </if>
  1630. RC.COMPANY_NAME "label",
  1631. RC.COMPANY_NAME "text",
  1632. RC.COMPANY_NAME "companyName",
  1633. T2 ."rootCompanyId",
  1634. T2 ."rootCompanyName",
  1635. 'label' "prop"
  1636. from RMS_COMPANY RC
  1637. LEFT JOIN (
  1638. SELECT "companyId",MAX("level") "rootIndex" FROM
  1639. (
  1640. SELECT
  1641. RC.COMPANY_ID "rootCompanyId",
  1642. RC.COMPANY_NAME "rootCompanyName",
  1643. LEVEL "level",
  1644. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1645. FROM
  1646. RMS_COMPANY RC
  1647. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1648. )
  1649. GROUP BY "companyId"
  1650. ) T1 ON T1 ."companyId" = RC .COMPANY_ID
  1651. LEFT JOIN
  1652. (
  1653. SELECT
  1654. RC.COMPANY_ID "rootCompanyId",
  1655. RC.COMPANY_NAME "rootCompanyName",
  1656. LEVEL "level",
  1657. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1658. FROM
  1659. RMS_COMPANY RC
  1660. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1661. ) T2 ON T2 ."companyId" = T1 ."companyId" AND T2 ."level" = T1 ."rootIndex"
  1662. where RC.COMPANY_ID in
  1663. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1664. #{item}
  1665. </foreach>
  1666. </if>
  1667. </select>
  1668. <select id="getDriverByLike" resultType="java.util.Map">
  1669. select * from (
  1670. select * from (
  1671. select * from (
  1672. select
  1673. distinct
  1674. RP.PERSONNEL_ID "personnelId",
  1675. RP.PERSONNEL_NAME "personnelName",
  1676. RP.PERSONNEL_POST "personnelPost",
  1677. RP.PERSONNEL_PHONE "personnelPhone",
  1678. RP.IDENTITY_CARD "personnelCard",
  1679. RP.INNNER_CODE "innerCode",
  1680. oto.oto_count+oto2.oto_count "orders",
  1681. to_char(RP.SSO_ID) "ssoId",
  1682. RP.PERSONNEL_ID "id",
  1683. RP.PERSONNEL_ID "value",
  1684. RP.PERSONNEL_NAME "label",
  1685. RP.PERSONNEL_NAME "text",
  1686. <if test="driverCapacityId!=null and driverCapacityId!=''">
  1687. RCD.group_number "groupNumber",
  1688. </if>
  1689. 'personnelName' "prop"
  1690. <if test="capacityId!=null and capacityId!=''">
  1691. ,NVL(T ."countNumber",0) "countNumber"
  1692. </if>
  1693. FROM
  1694. RMS_PERSONNEL RP
  1695. left join (select count(*) oto_count,oto.driver_id from oms_trans_order oto group by oto.driver_id) oto
  1696. on oto.driver_id = RP.PERSONNEL_ID
  1697. left join (select count(*) oto_count,oto.driver_id2 from oms_trans_order oto group by oto.driver_id2) oto2
  1698. on oto2.driver_id2 = RP.PERSONNEL_ID
  1699. <if test="capacityId!=null and capacityId!=''">
  1700. LEFT JOIN (
  1701. SELECT DRIVER_ID "driverId",
  1702. COUNT(DRIVER_ID) "countNumber"
  1703. FROM OMS_TRANS_ORDER
  1704. WHERE CAPACITY_ID = #{capacityId}
  1705. GROUP BY DRIVER_ID
  1706. ) T ON T."driverId" = RP .PERSONNEL_ID
  1707. </if>
  1708. <if test="driverCapacityId!=null and driverCapacityId!=''">
  1709. LEFT JOIN RMS_CAPACITY_DRIVER RCD on rcd.personnel_id = RP.personnel_id
  1710. </if>
  1711. WHERE RP.DELETED != -1
  1712. <if test="driverCapacityId!=null and driverCapacityId!=''">
  1713. and RCD.capacity_id = #{driverCapacityId}
  1714. </if>
  1715. <if test="isNC!=null">
  1716. AND RP.SOURCE_ID IS NOT NULL
  1717. </if>
  1718. )
  1719. <where>
  1720. <if test="personnelPost!=null and personnelPost!=''">
  1721. AND "personnelPost" = #{personnelPost}
  1722. </if>
  1723. <if test="personnelId!=null and personnelId!=''">
  1724. AND "personnelId" = #{personnelId}
  1725. </if>
  1726. <if test="driverId!=null and driverId!=''">
  1727. AND "personnelId" = #{driverId}
  1728. </if>
  1729. <if test="driverId2!=null and driverId2!=''">
  1730. AND "personnelId" = #{driverId2}
  1731. </if>
  1732. <if test="index!=null and index!=''">
  1733. AND REGEXP_LIKE("label", #{index})
  1734. </if>
  1735. <if test="lastIndex!=null">
  1736. and "personnelId" &lt; #{lastIndex}
  1737. </if>
  1738. </where>
  1739. <if test="capacityId!=null and capacityId!=''">
  1740. ORDER BY "countNumber" DESC
  1741. </if>
  1742. <if test="!(capacityId!=null and capacityId!='')">
  1743. order by "personnelId" desc
  1744. </if>
  1745. FETCH NEXT 10 ROWS ONLY
  1746. )
  1747. <if test="id!=null and id.size>0">
  1748. UNION
  1749. select
  1750. RP.PERSONNEL_ID "personnelId",
  1751. RP.PERSONNEL_NAME "personnelName",
  1752. RP.PERSONNEL_POST "personnelPost",
  1753. RP.PERSONNEL_PHONE "personnelPhone",
  1754. RP.IDENTITY_CARD "personnelCard",
  1755. RP.INNNER_CODE "innerCode",
  1756. oto.oto_count+oto2.oto_count "orders",
  1757. to_char(RP.SSO_ID) "ssoId",
  1758. RP.PERSONNEL_ID "id",
  1759. RP.PERSONNEL_ID "value",
  1760. RP.PERSONNEL_NAME "label",
  1761. RP.PERSONNEL_NAME "text",
  1762. <if test="driverCapacityId!=null and driverCapacityId!=''">
  1763. RCD.group_number "groupNumber",
  1764. </if>
  1765. 'personnelName' "prop"
  1766. <if test="capacityId!=null and capacityId!=''">
  1767. ,NVL(T ."countNumber",0) "countNumber"
  1768. </if>
  1769. from RMS_PERSONNEL RP
  1770. left join (select count(*) oto_count,oto.driver_id from oms_trans_order oto group by oto.driver_id) oto
  1771. on oto.driver_id = RP.PERSONNEL_ID
  1772. left join (select count(*) oto_count,oto.driver_id2 from oms_trans_order oto group by oto.driver_id2) oto2
  1773. on oto2.driver_id2 = RP.PERSONNEL_ID
  1774. <if test="capacityId!=null and capacityId!=''">
  1775. LEFT JOIN (
  1776. SELECT DRIVER_ID "driverId",
  1777. COUNT(DRIVER_ID) "countNumber"
  1778. FROM OMS_TRANS_ORDER
  1779. WHERE CAPACITY_ID = #{capacityId}
  1780. GROUP BY DRIVER_ID
  1781. ) T ON T."driverId" = RP .PERSONNEL_ID
  1782. </if>
  1783. <if test="driverCapacityId!=null and driverCapacityId!=''">
  1784. LEFT JOIN RMS_CAPACITY_DRIVER RCD on rcd.personnel_id = RP.personnel_id
  1785. </if>
  1786. WHERE RP.PERSONNEL_ID in
  1787. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1788. #{item}
  1789. </foreach>
  1790. </if>
  1791. )
  1792. <if test="capacityId!=null and capacityId!=''">
  1793. ORDER BY "countNumber" DESC
  1794. </if>
  1795. </select>
  1796. <select id="getConfigByName" resultType="java.util.Map">
  1797. SELECT CONFIG_ID "configId",
  1798. CONFIG_NAME "configName",
  1799. CONFIG_VALUE_STRING "valueString",
  1800. CONFIG_VALUE_NUMBER "valueNumber",
  1801. CONFIG_VALUE_DATE "valueDate",
  1802. CONFIG_DESCRIPTION "configDescription",
  1803. DELETED "deleted"
  1804. FROM DIL_CONFIG
  1805. WHERE DELETED!=1
  1806. AND CONFIG_NAME= #{configName}
  1807. FETCH NEXT 1 ROWS ONLY
  1808. </select>
  1809. <select id="getCapacityDriver" resultType="java.util.Map">
  1810. SELECT
  1811. DRIVER_ID "driverId",
  1812. CAPACITY_ID "capacityId"
  1813. FROM
  1814. OMS_TRANS_ORDER
  1815. WHERE ISSUE_TIME IS NOT NULL
  1816. <if test="driverId!=null and driverId!=''">
  1817. AND DRIVER_ID = #{driverId}
  1818. </if>
  1819. <if test="capacityId!=null and capacityId!=''">
  1820. AND CAPACITY_ID = #{capacityId}
  1821. </if>
  1822. ORDER BY ISSUE_TIME DESC
  1823. FETCH NEXT 1 ROWS ONLY
  1824. </select>
  1825. <select id="getCapacityDriverSelect" resultType="java.util.Map">
  1826. SELECT DISTINCT
  1827. OTO.DRIVER_ID "driverId",
  1828. OTO.CAPACITY_ID "capacityId",
  1829. OTO.ISSUE_TIME,
  1830. RP.PERSONNEL_NAME "driverName",
  1831. RCA.CAPACITY_NUMBER "capacityNumber"
  1832. FROM
  1833. OMS_TRANS_ORDER OTO
  1834. LEFT JOIN RMS_PERSONNEL RP ON OTO.DRIVER_ID = RP.PERSONNEL_ID
  1835. LEFT JOIN RMS_CAPACITY RCA ON OTO.CAPACITY_ID = RCA.CAPACITY_ID
  1836. WHERE OTO.ISSUE_TIME IS NOT NULL
  1837. AND RP.PERSONNEL_NAME IS NOT NULL
  1838. AND RCA.CAPACITY_NUMBER IS NOT NULL
  1839. <if test="driverId!=null and driverId!=''">
  1840. AND OTO.DRIVER_ID = #{driverId}
  1841. </if>
  1842. <if test="capacityId!=null and capacityId!=''">
  1843. AND OTO.CAPACITY_ID = #{capacityId}
  1844. </if>
  1845. ORDER BY OTO.ISSUE_TIME DESC
  1846. </select>
  1847. <select id="getCapacityInfo" resultType="java.util.Map">
  1848. SELECT * FROM RMS_CAPACITY
  1849. WHERE CAPACITY_NUMBER = #{capacityNumber}
  1850. FETCH NEXT 1 ROWS ONLY
  1851. </select>
  1852. <select id="getDriverInfo" resultType="java.util.Map">
  1853. SELECT * FROM RMS_PERSONNEL
  1854. WHERE PERSONNEL_JOB_NUMBER = #{jobNumber}
  1855. </select>
  1856. <select id="getRequireByLike" resultType="java.util.Map">
  1857. SELECT * FROM (
  1858. SELECT DISTINCT
  1859. ATR .SERIAL_NUMBER "supplementary",
  1860. ATR .SERIAL_NUMBER "supplementaryId",
  1861. ATR .TRANS_REQUIREMENT_ID "id",
  1862. ATR .TRANS_REQUIREMENT_ID "value",
  1863. ATR .SERIAL_NUMBER "label",
  1864. ATR .SERIAL_NUMBER "text",
  1865. 'supplementaryId' "prop"
  1866. FROM
  1867. AMS_TRANS_REQUIREMENT ATR
  1868. LEFT JOIN AMS_REQUIREMENT_CHILD ARC
  1869. ON ARC.TRANS_REQUIREMENT_ID = ATR.TRANS_REQUIREMENT_ID
  1870. LEFT JOIN RMS_MATERIAL RM
  1871. ON RM.MATERIAL_ID = ARC.MATERIAL_ID
  1872. LEFT JOIN RMS_COMPANY RC
  1873. ON RC.COMPANY_ID = ATR.RECEIVING_COMPANY_ID
  1874. <where>
  1875. ATR.DELETED NOT IN (2,5,6)
  1876. <if test="index != null and index != ''">
  1877. AND REGEXP_LIKE(ATR.SERIAL_NUMBER, #{index})
  1878. </if>
  1879. <if test="materialCode != null and materialCode!=''">
  1880. AND REGEXP_LIKE(RM.MATERIAL_CODE, #{materialCode})
  1881. </if>
  1882. <if test="receivingCompanyId != null and receivingCompanyId != ''">
  1883. AND REGEXP_LIKE(ATR.RECEIVING_COMPANY_ID , #{receivingCompanyId})
  1884. </if>
  1885. <if test="materialId !=null and materialId != ''">
  1886. AND REGEXP_LIKE(ARC.MATERIAL_ID, #{materialId})
  1887. </if>
  1888. <if test="receiveCompanyName !=null and receiveCompanyName != ''">
  1889. AND REGEXP_LIKE(RC.COMPANY_NAME, #{receiveCompanyName})
  1890. </if>
  1891. </where>
  1892. FETCH NEXT 10 ROWS ONLY
  1893. )
  1894. <if test="id!=null and id.size>0">
  1895. UNION
  1896. SELECT DISTINCT
  1897. ATR .SERIAL_NUMBER "supplementary",
  1898. ATR .SERIAL_NUMBER "supplementaryId",
  1899. ATR .TRANS_REQUIREMENT_ID "id",
  1900. ATR .TRANS_REQUIREMENT_ID "value",
  1901. ATR .SERIAL_NUMBER "label",
  1902. ATR .SERIAL_NUMBER "text",
  1903. 'supplementaryId' "prop"
  1904. FROM
  1905. AMS_TRANS_REQUIREMENT ATR
  1906. WHERE ATR .TRANS_REQUIREMENT_ID in
  1907. <foreach collection="id" item="item" open="(" close=")" separator="," >
  1908. #{item}
  1909. </foreach>
  1910. </if>
  1911. </select>
  1912. <select id="getMaxSerialNumber" resultType="java.lang.String">
  1913. select 'XX' || nvl(to_number(substr(max(t.serial_number), 3)) + 1,
  1914. to_char(sysdate, 'yyyyMMdd') || '001')
  1915. from ams_trans_requirement t
  1916. where substr(t.serial_number, 1, 10) = 'XX' || to_char(sysdate, 'yyyyMMdd')
  1917. </select>
  1918. <!--审批流程使用 -->
  1919. <select id="getCompanyMesByLike2" resultType="java.util.Map">
  1920. select * from (
  1921. select * from(
  1922. select
  1923. RC.SSO_ID "ssoId",
  1924. RC.SSO_CODE "ssoCode",
  1925. RC.COMPANY_ID "id",
  1926. RC.COMPANY_ID "businessCompanyId",
  1927. RC.COMPANY_ID "key",
  1928. RC.COMPANY_ID "value",
  1929. RC.PARENT_COMPANY_ID "parentCompanyId",
  1930. <if test="companyType==null">
  1931. RC.COMPANY_TYPE || '-' ||
  1932. </if>
  1933. RC.COMPANY_NAME "label",
  1934. RC.COMPANY_NAME "text",
  1935. RC.COMPANY_NAME "companyName",
  1936. RC.CREDENTIAL_DESC "seqNo",
  1937. T2 ."rootCompanyId",
  1938. T2 ."rootCompanyName",
  1939. 'label' "prop"
  1940. from RMS_COMPANY RC
  1941. LEFT JOIN (
  1942. SELECT "companyId",MAX("level") "rootIndex" FROM
  1943. (
  1944. SELECT
  1945. RC.COMPANY_ID "rootCompanyId",
  1946. RC.COMPANY_NAME "rootCompanyName",
  1947. LEVEL "level",
  1948. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1949. FROM
  1950. RMS_COMPANY RC
  1951. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1952. )
  1953. GROUP BY "companyId"
  1954. ) T1 ON T1 ."companyId" = RC .COMPANY_ID
  1955. LEFT JOIN
  1956. (
  1957. SELECT
  1958. RC.COMPANY_ID "rootCompanyId",
  1959. RC.COMPANY_NAME "rootCompanyName",
  1960. LEVEL "level",
  1961. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  1962. FROM
  1963. RMS_COMPANY RC
  1964. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  1965. ) T2 ON T2 ."companyId" = T1 ."companyId" AND T2 ."level" = T1 ."rootIndex"
  1966. <where>
  1967. DELETED = 0
  1968. <if test="companyType!=null and companyType!=''">
  1969. AND REGEXP_LIKE(RC.COMPANY_TYPE, #{companyType})
  1970. </if>
  1971. <if test="companyId!=null and companyId!=''">
  1972. AND RC.COMPANY_ID = #{companyId}
  1973. </if>
  1974. <if test="businessCompanyId!=null and businessCompanyId!=''">
  1975. AND RC.COMPANY_ID = #{businessCompanyId}
  1976. </if>
  1977. <if test="supplierCompanyId!=null and supplierCompanyId!=''">
  1978. AND RC.COMPANY_ID = #{supplierCompanyId}
  1979. </if>
  1980. <if test="receiveCompanyId!=null and receiveCompanyId!=''">
  1981. AND RC.COMPANY_ID = #{receiveCompanyId}
  1982. </if>
  1983. <if test="carrierId!=null and carrierId!=''">
  1984. AND RC.COMPANY_ID = #{carrierId}
  1985. </if>
  1986. <if test="index!=null and index!=''">
  1987. AND REGEXP_LIKE(RC.COMPANY_NAME, #{index})
  1988. </if>
  1989. <if test="isListed !=null and isListed!=''">
  1990. AND RC.is_Listed IS NOT NULL
  1991. </if>
  1992. </where>
  1993. <if test="noRow == null">
  1994. order by rc.register_aptitudes,LENGTH(company_name)
  1995. </if>
  1996. )
  1997. )
  1998. <if test="id!=null and id.size>0">
  1999. UNION
  2000. select * from
  2001. (select
  2002. RC.SSO_ID "ssoId",
  2003. RC.SSO_CODE "ssoCode",
  2004. RC.COMPANY_ID "id",
  2005. RC.COMPANY_ID "businessCompanyId",
  2006. RC.COMPANY_ID "key",
  2007. RC.COMPANY_ID "value",
  2008. RC.PARENT_COMPANY_ID "parentCompanyId",
  2009. <if test="companyType==null">
  2010. RC.COMPANY_TYPE || '-' ||
  2011. </if>
  2012. RC.COMPANY_NAME "label",
  2013. RC.COMPANY_NAME "text",
  2014. RC.COMPANY_NAME "companyName",
  2015. RC.CREDENTIAL_DESC "seqNo",
  2016. T2 ."rootCompanyId",
  2017. T2 ."rootCompanyName",
  2018. 'label' "prop"
  2019. from RMS_COMPANY RC
  2020. LEFT JOIN (
  2021. SELECT "companyId",MAX("level") "rootIndex" FROM
  2022. (
  2023. SELECT
  2024. RC.COMPANY_ID "rootCompanyId",
  2025. RC.COMPANY_NAME "rootCompanyName",
  2026. LEVEL "level",
  2027. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  2028. FROM
  2029. RMS_COMPANY RC
  2030. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  2031. )
  2032. GROUP BY "companyId"
  2033. ) T1 ON T1 ."companyId" = RC .COMPANY_ID
  2034. LEFT JOIN
  2035. (
  2036. SELECT
  2037. RC.COMPANY_ID "rootCompanyId",
  2038. RC.COMPANY_NAME "rootCompanyName",
  2039. LEVEL "level",
  2040. CONNECT_BY_ROOT ( COMPANY_ID ) "companyId"
  2041. FROM
  2042. RMS_COMPANY RC
  2043. CONNECT BY PRIOR RC.PARENT_COMPANY_ID = RC.COMPANY_ID
  2044. ) T2 ON T2 ."companyId" = T1 ."companyId" AND T2 ."level" = T1 ."rootIndex"
  2045. where RC.COMPANY_ID in
  2046. <foreach collection="id" item="item" open="(" close=")" separator="," >
  2047. #{item}
  2048. </foreach>
  2049. order by to_number(RC.CREDENTIAL_DESC),LENGTH(company_name))
  2050. </if>
  2051. </select>
  2052. <select id="getQueueGridList" resultType="java.util.Map">
  2053. SELECT
  2054. GRID_ID "value",
  2055. GRID_NAME "label"
  2056. FROM TMS_QUEUE_GRID
  2057. where DELETED = 0
  2058. </select>
  2059. </mapper>