writeDemand.xml 7.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <queryMap desc=" 生成运输需求">
  3. <query id = "writeDemand.getDemandNo" desc = "查询需求编号">
  4. SELECT ? ||TO_CHAR(SYSDATE,'YYYYMMDD')||
  5. LPAD(NVL(MAX(TO_NUMBER(SUBSTR(T.DEMAND_NO, LENGTH(T.DEMAND_NO) - 4))),
  6. 0) + 1,
  7. 5,
  8. '0') DEMAND_NO
  9. FROM TMS_DEMAND_M T
  10. WHERE T.DEMAND_NO LIKE ?||TO_CHAR(SYSDATE,'YYYYMMDD') ||'_____'
  11. </query>
  12. <query id = "writeDemand.getDemandSeq" desc = "最大执行顺序号">
  13. SELECT
  14. NVL(MAX(TO_NUMBER(T.EXECUTE_SQE)),0) + 1 EXECUTE_SQE
  15. FROM TMS_DEMAND_M T
  16. WHERE T.TRAN_CLASS_CODE = ?
  17. </query>
  18. <query id = "writeDemand.insertDemand" desc = "插入运输需求">
  19. INSERT INTO TMS_DEMAND_M(
  20. DEMAND_NO,
  21. DEMAND_DESC,
  22. EXECUTE_SQE,
  23. URGENCY_TYPE_CODE,
  24. URGENCY_TYPE_DESC,
  25. TRAN_CLASS_CODE,
  26. TRAN_CLASS_DESC,
  27. DEMAND_VERTICAL_NO,
  28. COST_TYPE_CODE,
  29. COST_TYPE_DESC,
  30. CARRIER_CODE,
  31. CARRIER_NAME,
  32. REFE_NO,
  33. REFE_TYPE_CODE,
  34. REFE_TYPE_NAME,
  35. START_NODE_CODE,
  36. START_NODE_DESC,
  37. END_NODE_CODE,
  38. END_NODE_DESC,
  39. START_AREA_CODE,
  40. START_AREA_DESC,
  41. END_AREA_CODE,
  42. END_AREA_DESC,
  43. DEMAND_ORG_CODE,
  44. DEMAND_ORG_DESC,
  45. TRANSPORT_START_TIME,
  46. TRANSPORT_END_TIME,
  47. CAR_USE_CODE,
  48. CAR_USE_DESC,
  49. CAR_TYPE_CODE,
  50. CAR_TYPE_DESC,
  51. CALCULATE_CAR_VAL,
  52. CAR_WT_VAL,
  53. WEIGHING_IF,
  54. HEAT_NO,
  55. BATCH_NO,
  56. LOGO_NO,
  57. GROUP_NO,
  58. MATERIALS_CODE,
  59. MATERIALS_DESC,
  60. MATERIALS_SPEC,
  61. DIMATER_VAL,
  62. WIDE_VAL,
  63. HEIGHT_VAL,
  64. LEN_VAL,
  65. LEN_MIN_VAL,
  66. LEN_MAX_VAL,
  67. UOM_CODE,
  68. UOM_DESC,
  69. DEMAND_QTY_VAL,
  70. DEMAND_WT_VAL,
  71. OUTPUT_QTY_VAL,
  72. OUTPUT_WT_VAL,
  73. OFFLINE_QTY_VAL,
  74. OFFLINE_WT_VAL,
  75. SCRAP_QTY_VAL,
  76. SCRAP_WT_VAL,
  77. PRO_ORDER_NO,
  78. PRO_ORDER_SQE,
  79. CURRENT_JOB_NO,
  80. PREVIOUS_JOB_NO,
  81. STATUS,
  82. MEMO,
  83. CREATE_USERID,
  84. CREATE_NAME,
  85. CREATE_TIME,
  86. LOT_NO,
  87. MAT_TYPE
  88. )
  89. VALUES(
  90. '#DEMAND_NO#',
  91. '#DEMAND_DESC#',
  92. '#EXECUTE_SQE#',
  93. '#URGENCY_TYPE_CODE#',
  94. '#URGENCY_TYPE_DESC#',
  95. '#TRAN_CLASS_CODE#',
  96. '#TRAN_CLASS_DESC#',
  97. '#DEMAND_VERTICAL_NO#',
  98. '#COST_TYPE_CODE#',
  99. '#COST_TYPE_DESC#',
  100. '#CARRIER_CODE#',
  101. '#CARRIER_NAME#',
  102. '#REFE_NO#',
  103. '#REFE_TYPE_CODE#',
  104. '#REFE_TYPE_NAME#',
  105. '#START_NODE_CODE#',
  106. '#START_NODE_DESC#',
  107. '#END_NODE_CODE#',
  108. '#END_NODE_DESC#',
  109. '#START_AREA_CODE#',
  110. '#START_AREA_DESC#',
  111. '#END_AREA_CODE#',
  112. '#END_AREA_DESC#',
  113. '#DEMAND_ORG_CODE#',
  114. '#DEMAND_ORG_DESC#',
  115. TO_DATE('#TRANSPORT_START_TIME#','YYYY-MM-DD HH24:MI:SS'),
  116. TO_DATE('#TRANSPORT_END_TIME#','YYYY-MM-DD HH24:MI:SS'),
  117. '#CAR_USE_CODE#',
  118. '#CAR_USE_DESC#',
  119. '#CAR_TYPE_CODE#',
  120. '#CAR_TYPE_DESC#',
  121. '#CALCULATE_CAR_VAL#',
  122. '#CAR_WT_VAL#',
  123. '#WEIGHING_IF#',
  124. '#HEAT_NO#',
  125. '#BATCH_NO#',
  126. '#LOGO_NO#',
  127. '#GROUP_NO#',
  128. '#MATERIALS_CODE#',
  129. '#MATERIALS_DESC#',
  130. '#MATERIALS_SPEC#',
  131. '#DIMATER_VAL#',
  132. '#WIDE_VAL#',
  133. '#HEIGHT_VAL#',
  134. '#LEN_VAL#',
  135. '#LEN_MIN_VAL#',
  136. '#LEN_MAX_VAL#',
  137. '#UOM_CODE#',
  138. '#UOM_DESC#',
  139. '#DEMAND_QTY_VAL#',
  140. '#DEMAND_WT_VAL#',
  141. '#OUTPUT_QTY_VAL#',
  142. '#OUTPUT_WT_VAL#',
  143. '#OFFLINE_QTY_VAL#',
  144. '#OFFLINE_WT_VAL#',
  145. '#SCRAP_QTY_VAL#',
  146. '#SCRAP_WT_VAL#',
  147. '#PRO_ORDER_NO#',
  148. '#PRO_ORDER_SQE#',
  149. '#CURRENT_JOB_NO#',
  150. '#PREVIOUS_JOB_NO#',
  151. '#STATUS#',
  152. '#MEMO#',
  153. '#CREATE_USERID#',
  154. '#CREATE_NAME#',
  155. TO_DATE('#CREATE_TIME#','YYYY-MM-DD HH24:MI:SS'),
  156. '#LOT_NO#',
  157. '#MAT_TYPE#'
  158. )
  159. </query>
  160. <query id = "writeDemand.getStorageNoUn" desc = "查询仓库对应的装卸点">
  161. SELECT T.UNLOADING_CODE, T.UNLOADING_DESC
  162. FROM TMS_COM_UNLOADING T
  163. WHERE T.UNLOADING_AREA_CODE = ?
  164. AND T.VALIDFLAG = '1'
  165. </query>
  166. <query id = "writeOutDemand.selectPlineCode" desc = "查询投料库对应的产线">
  167. SELECT T.PLINE_CODE,T.PLINE_NAME FROM COM_BASE_PLINE T WHERE T.IN_REPOSITORY = ?
  168. </query>
  169. <query id = "writeOutDemand.selectStorageType" desc = "查询库类型">
  170. SELECT T.STORAGE_ATTR FROM YDM_BS_STORAGE T WHERE T.STORAGE_NO = ?
  171. </query>
  172. <query id = "writeDemand.insertComLine" desc = " 生成运输线路">
  173. <![CDATA[
  174. DECLARE
  175. V_COUNT NUMBER := 0;
  176. V_LINE_CODE TMS_COM_LINE_M.LINE_CODE%TYPE := NULL;
  177. V_SEGMENT_CODE TMS_COM_LINE_C.SEGMENT_CODE%TYPE := NULL;
  178. BEGIN
  179. SELECT COUNT(1)
  180. INTO V_COUNT
  181. FROM TMS_COM_LINE_M T
  182. WHERE T.START_NODE_CODE = '#START_NODE_CODE#'
  183. AND T.END_NODE_CODE = '#END_NODE_CODE#'
  184. AND T.VALIDFLAG = '1';
  185. SELECT 'XL' || LPAD(NVL(MAX(SUBSTR(T.LINE_CODE, 3)), 0) + 1, 5, 0)
  186. INTO V_LINE_CODE
  187. FROM TMS_COM_LINE_M T;
  188. SELECT 'XD' || LPAD(NVL(MAX(SUBSTR(T1.SEGMENT_CODE, 3)), 0) + 1, 4, 0)
  189. INTO V_SEGMENT_CODE
  190. FROM TMS_COM_LINE_C T1
  191. WHERE T1.LINE_CODE = V_LINE_CODE;
  192. IF (V_COUNT = 0) THEN
  193. INSERT INTO TMS_COM_LINE_M
  194. (CREATE_USERID,
  195. CREATE_NAME,
  196. CREATE_TIME,
  197. UPDATE_USERID,
  198. UPDATE_NAME,
  199. UPDATE_TIME,
  200. DELETE_USERID,
  201. DELETE_NAME,
  202. DELETE_TIME,
  203. LINE_CODE,
  204. LINE_DESC,
  205. START_NODE_CODE,
  206. START_NODE_DESC,
  207. START_LONGITUDE_VAL,
  208. START_LATITUDE_VAL,
  209. END_NODE_CODE,
  210. END_NODE_DESC,
  211. END_LONGITUDE_VAL,
  212. END_LATITUDE_VAL,
  213. MEMO)
  214. VALUES
  215. ('',
  216. '#CREATE_NAME#',
  217. TO_DATE('#CREATE_TIME#', 'YYYY-MM-DD HH24:MI:SS'),
  218. '',
  219. '',
  220. '',
  221. '',
  222. '',
  223. '',
  224. V_LINE_CODE,
  225. '#LINE_DESC#',
  226. '#START_NODE_CODE#',
  227. '#START_NODE_DESC#',
  228. '#START_LONGITUDE_VAL#',
  229. '#START_LATITUDE_VAL#',
  230. '#END_NODE_CODE#',
  231. '#END_NODE_DESC#',
  232. '#END_LONGITUDE_VAL#',
  233. '#END_LATITUDE_VAL#',
  234. '');
  235. INSERT INTO TMS_COM_LINE_C
  236. (SEGMENT_CODE,
  237. SEGMENT_DESC,
  238. LINE_CODE,
  239. SEGMENT_SQE,
  240. TRANSIT_TYPE_CODE,
  241. TRANSIT_TYPE_DESC,
  242. START_NODE_CODE,
  243. START_NODE_DESC,
  244. START_LONGITUDE_VAL,
  245. START_LATITUDE_VAL,
  246. END_NODE_CODE,
  247. END_NODE_DESC,
  248. END_LONGITUDE_VAL,
  249. END_LATITUDE_VAL,
  250. CREATE_USERID,
  251. CREATE_NAME,
  252. CREATE_TIME)
  253. VALUES
  254. (V_SEGMENT_CODE,
  255. '#SEGMENT_DESC#',
  256. V_LINE_CODE,
  257. '1',
  258. 'YST01',
  259. '公路',
  260. '#START_NODE_CODE#',
  261. '#START_NODE_DESC#',
  262. '1',
  263. '1',
  264. '#END_NODE_CODE#',
  265. '#END_NODE_DESC#',
  266. '1',
  267. '1',
  268. '#CREATE_USERID#',
  269. '#CREATE_NAME#',
  270. TO_DATE('#CREATE_TIME#', 'YYYY-MM-DD HH24:MI:SS'));
  271. END IF;
  272. END;
  273. ]]>
  274. </query>
  275. <query id = "writeOutDemand.deleteDemand" desc = "删除运输需求">
  276. DELETE FROM TMS_DEMAND_M T WHERE T.DEMAND_NO = '#DEMAND_NO#'
  277. </query>
  278. <query id = "writeOutDemand.SelectDemand" desc = "查询运输需求">
  279. SELECT T.VALIDFLAG,T.CREATE_NAME FROM TMS_DEMAND_M T WHERE T.DEMAND_NO = '#DEMAND_NO#'
  280. </query>
  281. </queryMap>