BaseStdRSpec.xml 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <queryMap desc="标准号与适用规格关联表">
  3. <query id="BaseStdRSpec.query" desc="查询标准号与适用规格关联数据">
  4. <![CDATA[
  5. SELECT
  6. STD_CODE,
  7. STD_CODE STD_CODE_OLD,
  8. STD_NAME,
  9. MIN_H,
  10. MIN_H MIN_H_OLD,
  11. MAX_H,
  12. MAX_H MAX_H_OLD,
  13. MIN_D,
  14. MIN_D MIN_D_OLD,
  15. MAX_D,
  16. MAX_D MAX_D_OLD,
  17. CREATE_NAME,
  18. TO_CHAR(CREATE_TIME, 'YYYY-MM-DD HH24:MI:SS') CREATE_TIME,
  19. UPDATE_NAME,
  20. TO_CHAR(UPDATE_TIME, 'YYYY-MM-DD HH24:MI:SS') UPDATE_TIME,
  21. DELETE_NAME,
  22. TO_CHAR(DELETE_TIME, 'YYYY-MM-DD HH24:MI:SS') DELETE_TIME,
  23. VALIDFLAG,
  24. DECODE(VALIDFLAG, '1', '有效', '无效', '未识别') VALIDFLAG_NAME,
  25. MEMO,
  26. MSC_STYLE,
  27. MSC_STYLE MSC_STYLE_OLD,
  28. SPEC_CODE,
  29. SPEC_CODE SPEC_CODE_OLD,
  30. SPEC_NAME
  31. FROM COM_BASE_STD_R_SPEC T
  32. WHERE T.STD_CODE = '#STD_CODE#'
  33. AND T.VALIDFLAG IN ('1', '#VALIDFLAG#')
  34. ORDER BY T.MSC_STYLE, TO_NUMBER(T.MIN_D)
  35. ]]>
  36. </query>
  37. <query id="BaseStdRSpec.save" desc="保存标准与适用规格关联数据">
  38. <![CDATA[
  39. DECLARE
  40. P_COUNT NUMBER(5);
  41. BEGIN
  42. IF '#VALIDFLAG#' IS NULL THEN
  43. INSERT INTO COM_BASE_STD_R_SPEC
  44. (STD_CODE,
  45. STD_NAME,
  46. MIN_H,
  47. MAX_H,
  48. MIN_D,
  49. MAX_D,
  50. CREATE_NAME,
  51. CREATE_TIME,
  52. VALIDFLAG,
  53. MEMO,
  54. MSC_STYLE,
  55. SPEC_CODE,
  56. SPEC_NAME)
  57. VALUES
  58. ('#STD_CODE#',
  59. '#STD_NAME#',
  60. '#MIN_H#',
  61. '#MAX_H#',
  62. '#MIN_D#',
  63. '#MAX_D#',
  64. '#CREATE_NAME#',
  65. SYSDATE,
  66. '1',
  67. '#MEMO#',
  68. '#MSC_STYLE#',
  69. '#SPEC_CODE#',
  70. '#SPEC_NAME#');
  71. ELSE
  72. UPDATE COM_BASE_STD_R_SPEC T
  73. SET
  74. MIN_H = '#MIN_H#',
  75. MAX_H = '#MAX_H#',
  76. MIN_D = '#MIN_D#',
  77. MAX_D = '#MAX_D#',
  78. UPDATE_NAME = '#UPDATE_NAME#',
  79. UPDATE_TIME = SYSDATE,
  80. MEMO = '#MEMO#',
  81. MSC_STYLE = '#MSC_STYLE#',
  82. SPEC_CODE = '#SPEC_CODE#',
  83. SPEC_NAME = '#SPEC_NAME#'
  84. WHERE T.STD_CODE = '#STD_CODE_OLD#'
  85. AND NVL(TO_NUMBER(T.MIN_H), '0') = NVL(TO_NUMBER('#MIN_H_OLD#'), '0')
  86. AND NVL(TO_NUMBER(T.MIN_D), '0') = NVL(TO_NUMBER('#MIN_D_OLD#'), '0')
  87. AND NVL(TO_NUMBER(T.MAX_H), '0') = NVL(TO_NUMBER('#MAX_H_OLD#'), '0')
  88. AND NVL(TO_NUMBER(T.MAX_D), '0') = NVL(TO_NUMBER('#MAX_D_OLD#'), '0')
  89. AND NVL(T.SPEC_CODE, '0') = NVL('#SPEC_CODE_OLD#', '0');
  90. END IF;
  91. END;
  92. ]]>
  93. </query>
  94. <query id="BaseStdRSpec.updateState" desc="修改标准号与适用规格关联数据">
  95. <![CDATA[
  96. DECLARE
  97. BEGIN
  98. IF '#VALIDFLAG#' = '0' THEN
  99. UPDATE COM_BASE_STD_R_SPEC T
  100. SET T.VALIDFLAG = '0',
  101. T.DELETE_NAME = '#DELETE_NAME#',
  102. T.DELETE_TIME = SYSDATE
  103. WHERE T.STD_CODE = '#STD_CODE_OLD#'
  104. AND NVL(TO_NUMBER(T.MIN_H), '0') = NVL(TO_NUMBER('#MIN_H_OLD#'), '0')
  105. AND NVL(TO_NUMBER(T.MIN_D), '0') = NVL(TO_NUMBER('#MIN_D_OLD#'), '0')
  106. AND NVL(TO_NUMBER(T.MAX_H), '0') = NVL(TO_NUMBER('#MAX_H_OLD#'), '0')
  107. AND NVL(TO_NUMBER(T.MAX_D), '0') = NVL(TO_NUMBER('#MAX_D_OLD#'), '0')
  108. AND NVL(T.SPEC_CODE, '0') = NVL('#SPEC_CODE_OLD#', '0');
  109. ELSE
  110. UPDATE COM_BASE_STD_R_SPEC T
  111. SET T.VALIDFLAG = '1',
  112. T.DELETE_NAME = '',
  113. T.DELETE_TIME = '',
  114. T.UPDATE_NAME = '#UPDATE_NAME#',
  115. T.UPDATE_TIME = SYSDATE
  116. WHERE T.STD_CODE = '#STD_CODE_OLD#'
  117. AND NVL(TO_NUMBER(T.MIN_H), '0') = NVL(TO_NUMBER('#MIN_H_OLD#'), '0')
  118. AND NVL(TO_NUMBER(T.MIN_D), '0') = NVL(TO_NUMBER('#MIN_D_OLD#'), '0')
  119. AND NVL(TO_NUMBER(T.MAX_H), '0') = NVL(TO_NUMBER('#MAX_H_OLD#'), '0')
  120. AND NVL(TO_NUMBER(T.MAX_D), '0') = NVL(TO_NUMBER('#MAX_D_OLD#'), '0')
  121. AND NVL(T.SPEC_CODE, '0') = NVL('#SPEC_CODE_OLD#', '0');
  122. END IF;
  123. END;
  124. ]]>
  125. </query>
  126. <query id="BaseStdRSpec.isExistSpec" desc="是否存在规格范围">
  127. <![CDATA[
  128. SELECT COUNT(1)
  129. FROM COM_BASE_STD_R_SPEC T
  130. WHERE T.STD_CODE = '#STD_CODE#'
  131. AND NVL(TO_NUMBER(T.MIN_H), '0') = NVL(TO_NUMBER('#MIN_H#'), '0')
  132. AND NVL(TO_NUMBER(T.MIN_D), '0') = NVL(TO_NUMBER('#MIN_D#'), '0')
  133. AND NVL(TO_NUMBER(T.MAX_H), '0') = NVL(TO_NUMBER('#MAX_H#'), '0')
  134. AND NVL(TO_NUMBER(T.MAX_D), '0') = NVL(TO_NUMBER('#MAX_D#'), '0')
  135. AND NVL(T.SPEC_CODE, '0') = NVL('#SPEC_CODE#', '0')
  136. ]]>
  137. </query>
  138. </queryMap>