UniversalMapper.xml 85 KB

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