You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

144 lines
5.3 KiB

1 year ago
1 year ago
  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.spring.modules.part.mapper.MasterPartInformationMapper">
  4. <!-- master part 信息列表 -->
  5. <select id="masterPartSearch" parameterType="com.spring.modules.part.vo.MasterPartInformationVo" resultType="com.spring.modules.part.vo.MasterPartInformationVo">
  6. SELECT
  7. part_no,
  8. part_desc,
  9. um_id,
  10. dbo.get_um_name(um_id) as umName,
  11. part_main_group,
  12. dbo.get_group_name('*', part_main_group) as groupName,
  13. weight_net,
  14. uom_for_weight_net,
  15. volume_net,
  16. uom_for_volume_net,
  17. code_no,
  18. dbo.get_code_desc(#{query.site}, code_no, 'MP') as codeDesc,
  19. condition_code_usage_db,
  20. multilevel_tracking_db,
  21. allow_as_not_consumed_db,
  22. lot_tracking_code,
  23. lot_quantity_rule,
  24. sub_lot_rule,
  25. component_lot_rule,
  26. create_date,
  27. create_by,
  28. update_date,
  29. update_by,
  30. case when official_flag = 'Y' then 'Y' else 'N' end as officialFlag,
  31. case when official_flag = 'Y' then '正式物料' else '临时物料' end as officialFlagDesc
  32. FROM part_catalog
  33. <where>
  34. official_flag = 'Y'
  35. <if test = "query.partNo != null and query.partNo != ''">
  36. AND part_no like #{query.partNo}
  37. </if>
  38. <if test = "query.partDesc != null and query.partDesc != ''">
  39. AND part_desc like #{query.partDesc}
  40. </if>
  41. </where>
  42. order by part_no
  43. </select>
  44. <!-- 物料信息编辑 -->
  45. <update id="masterPartInformationEdit" parameterType="com.spring.modules.part.vo.MasterPartInformationVo">
  46. UPDATE part_catalog
  47. SET part_desc = #{partDesc},
  48. part_main_group = #{partMainGroup},
  49. weight_net = #{weightNet},
  50. uom_for_weight_net = #{uomForWeightNet},
  51. volume_net = #{volumeNet},
  52. uom_for_volume_net = #{uomForVolumeNet},
  53. condition_code_usage_db = #{conditionCodeUsageDb},
  54. multilevel_tracking_db = #{multilevelTrackingDb},
  55. allow_as_not_consumed_db = #{allowAsNotConsumedDb},
  56. lot_tracking_code = #{lotTrackingCode},
  57. lot_quantity_rule = #{lotQuantityRule},
  58. sub_lot_rule = #{subLotRule},
  59. component_lot_rule = #{componentLotRule},
  60. code_no = #{codeNo},
  61. um_id = #{umId},
  62. update_date = getDate(),
  63. update_by = #{updateBy}
  64. WHERE part_no = #{partNo}
  65. </update>
  66. <select id="queryCodeNo" parameterType="com.spring.modules.part.vo.MasterPartInformationVo" resultType="PartSubPropertiesValueData">
  67. SELECT
  68. PartNo,
  69. Site,
  70. CodeNo,
  71. SubCodeSeqNo,
  72. SubCodeDesc,
  73. RecordType
  74. FROM PartSubPropertiesValueHeader
  75. where PartNo = #{partNo} and Site = #{site} and SubCodeSeqNo = 1 and RecordType = 'MP'
  76. </select>
  77. <select id="masterPartSearchAny"
  78. resultType="com.spring.modules.part.vo.MasterPartInformationVo">
  79. SELECT
  80. part_no,
  81. part_desc,
  82. um_id,
  83. dbo.get_um_name(um_id) as umName,
  84. part_main_group,
  85. dbo.get_group_name('*', part_main_group) as groupName,
  86. weight_net,
  87. uom_for_weight_net,
  88. volume_net,
  89. uom_for_volume_net,
  90. code_no,
  91. dbo.get_code_desc(#{query.site}, code_no, 'MP') as codeDesc,
  92. condition_code_usage_db,
  93. multilevel_tracking_db,
  94. allow_as_not_consumed_db,
  95. lot_tracking_code,
  96. lot_quantity_rule,
  97. sub_lot_rule,
  98. component_lot_rule,
  99. create_date,
  100. create_by,
  101. update_date,
  102. update_by,
  103. case when official_flag = 'Y' then 'Y' else 'N' end as officialFlag,
  104. case when official_flag = 'Y' then '正式物料' else '临时物料' end as officialFlagDesc
  105. FROM part_catalog
  106. <if test="query.whereClause != null and query.whereClause != ''">
  107. WHERE ${query.whereClause}
  108. </if>
  109. <if test="query.orderClause != null and query.orderClause != ''">
  110. ORDER BY ${query.orderClause}
  111. </if>
  112. <if test="query.orderClause == null or query.orderClause == ''">
  113. order by part_no
  114. </if>
  115. </select>
  116. <!-- 物料信息编辑 -->
  117. <update id="updateWeightAndVolume" parameterType="com.spring.modules.part.vo.MasterPartInformationVo">
  118. UPDATE part
  119. SET weight_net = #{weightNet},
  120. uom_for_weight_net = #{uomForWeightNet},
  121. volume_net = #{volumeNet},
  122. uom_for_volume_net = #{uomForVolumeNet}
  123. WHERE part_no = #{partNo}
  124. </update>
  125. <!-- 物料信息编辑 -->
  126. <update id="updatePartOfficialFlag" parameterType="MasterPartInformationEntity">
  127. UPDATE part_catalog
  128. SET official_flag = #{officialFlag},
  129. update_date = getDate(),
  130. update_by = #{updateBy}
  131. WHERE part_no = #{plmPartNo}
  132. </update>
  133. <update id="updateCodeNoByPartNo">
  134. UPDATE part_catalog
  135. SET code_no = #{codeNo}
  136. WHERE part_no = #{partNo}
  137. </update>
  138. </mapper>