TSpecdevDtMapper.xml 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3. PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4. "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.ruoyi.project.sems.mapper.TSpecdevDtMapper">
  6. <resultMap type="TSpecdevDt" id="TSpecdevDtResult">
  7. <result property="id" column="id" />
  8. <result property="plantCode" column="plant_code" />
  9. <result property="unit" column="unit" />
  10. <result property="devname" column="devname" />
  11. <result property="devno" column="devno" />
  12. <result property="createdate" column="createdate" />
  13. <result property="submitdate" column="submitdate" />
  14. <result property="status" column="status" />
  15. <result property="delFlag" column="del_flag" />
  16. <result property="createrCode" column="creater_code" />
  17. <result property="createrDate" column="creater_date" />
  18. <result property="updaterCode" column="updater_code" />
  19. <result property="updaterDate" column="updater_date" />
  20. <result property="deptId" column="dept_id" />
  21. <result property="remarks" column="remarks" />
  22. <result property="approveStatus" column="approve_status" />
  23. <result property="regno" column="regno" />
  24. <result property="useno" column="useno" />
  25. <result property="warnDate" column="warn_date" />
  26. <result property="warnCycle" column="warn_cycle" />
  27. <result property="nextWarnDate" column="next_warn_date" />
  28. <result property="warnFlag" column="warn_flag" />
  29. <result property="model" column="model" />
  30. <result property="capacity" column="capacity" />
  31. <result property="floor" column="floor" />
  32. <result property="createUnit" column="create_unit" />
  33. <result property="maintContractor" column="maint_contractor" />
  34. <result property="location" column="location" />
  35. <result property="checkStrategy" column="check_strategy" />
  36. <result property="firstWarnDate" column="first_warn_date" />
  37. <result property="checkUnit" column="check_unit" />
  38. <result property="docno" column="docno" />
  39. <result property="approveTime" column="approve_time" />
  40. <result property="changeTime" column="change_time" />
  41. <result property="reportNo" column="report_no" />
  42. <result property="hiFlag" column="hiFlag" />
  43. <result property="perTestConclusion" column="per_test_conclusion" />
  44. </resultMap>
  45. <sql id="selectTSpecdevDtVo">
  46. select d.id, d.plant_code, d.unit, d.devname, d.devno, d.createdate, d.submitdate, d.status, d.del_flag, d.creater_code, d.creater_date, d.updater_code, d.updater_date, d.dept_id, d.remarks, d.approve_status, d.regno, d.useno, d.warn_date, d.warn_cycle, d.next_warn_date, d.warn_flag, d.model, d.capacity, d.floor, d.create_unit, d.maint_contractor, d.location, d.check_strategy, d.first_warn_date, d.check_unit, d.docno, d.approve_time, d.change_time, d.report_no ,s.dept_name,
  47. (SELECT COUNT(1) from T_SPECHI_DT h where h.DEV_ID = d.id and HI_TYPE = 0 ) as hiFlag, per_test_conclusion
  48. from t_specdev_dt d
  49. left join sys_dept s on s.dept_id = d.dept_id
  50. </sql>
  51. <select id="selectTSpecdevDtList" parameterType="TSpecdevDt" resultMap="TSpecdevDtResult">
  52. <include refid="selectTSpecdevDtVo"/>
  53. <where>
  54. <if test="plantCode != null and plantCode != ''"> and plant_code = #{plantCode}</if>
  55. <if test="unit != null and unit != ''"> and unit = #{unit}</if>
  56. <if test="devname != null and devname != ''"> and devname like concat(concat('%', #{devname}), '%')</if>
  57. <if test="devno != null and devno != ''"> and devno = #{devno}</if>
  58. <if test="status != null "> and d.status = #{status}</if>
  59. <if test="approveStatus != null ">and approve_status = #{approveStatus}</if>
  60. and d.del_flag = 0
  61. </where>
  62. <!-- 数据范围过滤 -->
  63. ${params.dataScopePlant}
  64. order by d.plant_code, d.unit ,d.id
  65. </select>
  66. <select id="selectTSpecdevDtListByYear" parameterType="TSpecdevDt" resultMap="TSpecdevDtResult">
  67. <include refid="selectTSpecdevDtVo"/>
  68. <where>
  69. <if test="status != null ">and d.status = #{status}</if>
  70. <if test="checkYear != null ">and to_char(NEXT_WARN_DATE,'yyyyMM') = #{checkYear}</if>
  71. <if test="plantIds != null and plantIds != ''">
  72. and
  73. d.plant_code in
  74. <foreach collection="plantIds.split(',')" item="item" index="index"
  75. open="(" close=")" separator=",">
  76. #{item}
  77. </foreach>
  78. </if>
  79. <if test="unitIds != null and unitIds != ''">
  80. and
  81. (
  82. d.unit in
  83. <foreach collection="unitIds.split(',')" item="item" index="index"
  84. open="(" close=")" separator=",">
  85. #{item}
  86. </foreach>
  87. or
  88. d.plant_code in
  89. <foreach collection="unitIds.split(',')" item="item" index="index"
  90. open="(" close=")" separator=",">
  91. #{item}
  92. </foreach>
  93. )
  94. </if>
  95. and d.del_flag = 0
  96. </where>
  97. </select>
  98. <select id="selectTSpecdevDtById" parameterType="Long" resultMap="TSpecdevDtResult">
  99. <include refid="selectTSpecdevDtVo"/>
  100. where id = #{id}
  101. </select>
  102. <insert id="insertTSpecdevDt" parameterType="TSpecdevDt">
  103. <selectKey keyProperty="id" resultType="long" order="BEFORE">
  104. SELECT seq_t_specdev_ylrq.NEXTVAL as id FROM DUAL
  105. </selectKey>
  106. insert into t_specdev_dt
  107. <trim prefix="(" suffix=")" suffixOverrides=",">
  108. <if test="id != null">id,</if>
  109. <if test="plantCode != null and plantCode != ''">plant_code,</if>
  110. <if test="unit != null">unit,</if>
  111. <if test="devname != null">devname,</if>
  112. <if test="devno != null">devno,</if>
  113. <if test="createdate != null">createdate,</if>
  114. <if test="submitdate != null">submitdate,</if>
  115. <if test="status != null">status,</if>
  116. <if test="delFlag != null">del_flag,</if>
  117. <if test="createrCode != null">creater_code,</if>
  118. <if test="createrDate != null">creater_date,</if>
  119. <if test="updaterCode != null">updater_code,</if>
  120. <if test="updaterDate != null">updater_date,</if>
  121. <if test="deptId != null">dept_id,</if>
  122. <if test="remarks != null">remarks,</if>
  123. <if test="approveStatus != null">approve_status,</if>
  124. <if test="regno != null">regno,</if>
  125. <if test="useno != null">useno,</if>
  126. <if test="warnDate != null">warn_date,</if>
  127. <if test="warnCycle != null">warn_cycle,</if>
  128. <if test="nextWarnDate != null">next_warn_date,</if>
  129. <if test="warnFlag != null">warn_flag,</if>
  130. <if test="model != null">model,</if>
  131. <if test="capacity != null">capacity,</if>
  132. <if test="floor != null">floor,</if>
  133. <if test="createUnit != null">create_unit,</if>
  134. <if test="maintContractor != null">maint_contractor,</if>
  135. <if test="location != null">location,</if>
  136. <if test="checkStrategy != null">check_strategy,</if>
  137. <if test="firstWarnDate != null">first_warn_date,</if>
  138. <if test="checkUnit != null">check_unit,</if>
  139. <if test="docno != null">docno,</if>
  140. <if test="approveTime != null">approve_time,</if>
  141. <if test="changeTime != null">change_time,</if>
  142. <if test="reportNo != null">report_no,</if>
  143. <if test="perTestConclusion != null">per_test_conclusion,</if>
  144. </trim>
  145. <trim prefix="values (" suffix=")" suffixOverrides=",">
  146. <if test="id != null">#{id},</if>
  147. <if test="plantCode != null and plantCode != ''">#{plantCode},</if>
  148. <if test="unit != null">#{unit},</if>
  149. <if test="devname != null">#{devname},</if>
  150. <if test="devno != null">#{devno},</if>
  151. <if test="createdate != null">#{createdate},</if>
  152. <if test="submitdate != null">#{submitdate},</if>
  153. <if test="status != null">#{status},</if>
  154. <if test="delFlag != null">#{delFlag},</if>
  155. <if test="createrCode != null">#{createrCode},</if>
  156. <if test="createrDate != null">#{createrDate},</if>
  157. <if test="updaterCode != null">#{updaterCode},</if>
  158. <if test="updaterDate != null">#{updaterDate},</if>
  159. <if test="deptId != null">#{deptId},</if>
  160. <if test="remarks != null">#{remarks},</if>
  161. <if test="approveStatus != null">#{approveStatus},</if>
  162. <if test="regno != null">#{regno},</if>
  163. <if test="useno != null">#{useno},</if>
  164. <if test="warnDate != null">#{warnDate},</if>
  165. <if test="warnCycle != null">#{warnCycle},</if>
  166. <if test="nextWarnDate != null">#{nextWarnDate},</if>
  167. <if test="warnFlag != null">#{warnFlag},</if>
  168. <if test="model != null">#{model},</if>
  169. <if test="capacity != null">#{capacity},</if>
  170. <if test="floor != null">#{floor},</if>
  171. <if test="createUnit != null">#{createUnit},</if>
  172. <if test="maintContractor != null">#{maintContractor},</if>
  173. <if test="location != null">#{location},</if>
  174. <if test="checkStrategy != null">#{checkStrategy},</if>
  175. <if test="firstWarnDate != null">#{firstWarnDate},</if>
  176. <if test="checkUnit != null">#{checkUnit},</if>
  177. <if test="docno != null">#{docno},</if>
  178. <if test="approveTime != null">#{approveTime},</if>
  179. <if test="changeTime != null">#{changeTime},</if>
  180. <if test="reportNo != null">#{reportNo},</if>
  181. <if test="perTestConclusion != null">#{perTestConclusion},</if>
  182. </trim>
  183. </insert>
  184. <update id="updateTSpecdevDt" parameterType="TSpecdevDt">
  185. update t_specdev_dt
  186. <trim prefix="SET" suffixOverrides=",">
  187. <if test="plantCode != null and plantCode != ''">plant_code = #{plantCode},</if>
  188. <if test="unit != null">unit = #{unit},</if>
  189. <if test="devname != null">devname = #{devname},</if>
  190. <if test="devno != null">devno = #{devno},</if>
  191. <if test="createdate != null">createdate = #{createdate},</if>
  192. <if test="submitdate != null">submitdate = #{submitdate},</if>
  193. <if test="status != null">status = #{status},</if>
  194. <if test="delFlag != null">del_flag = #{delFlag},</if>
  195. <if test="createrCode != null">creater_code = #{createrCode},</if>
  196. <if test="createrDate != null">creater_date = #{createrDate},</if>
  197. <if test="updaterCode != null">updater_code = #{updaterCode},</if>
  198. <if test="updaterDate != null">updater_date = #{updaterDate},</if>
  199. <if test="deptId != null">dept_id = #{deptId},</if>
  200. <if test="remarks != null">remarks = #{remarks},</if>
  201. <if test="approveStatus != null">approve_status = #{approveStatus},</if>
  202. <if test="regno != null">regno = #{regno},</if>
  203. <if test="useno != null">useno = #{useno},</if>
  204. <if test="warnDate != null">warn_date = #{warnDate},</if>
  205. <if test="warnCycle != null">warn_cycle = #{warnCycle},</if>
  206. <if test="nextWarnDate != null">next_warn_date = #{nextWarnDate},</if>
  207. <if test="warnFlag != null">warn_flag = #{warnFlag},</if>
  208. <if test="model != null">model = #{model},</if>
  209. <if test="capacity != null">capacity = #{capacity},</if>
  210. <if test="floor != null">floor = #{floor},</if>
  211. <if test="createUnit != null">create_unit = #{createUnit},</if>
  212. <if test="maintContractor != null">maint_contractor = #{maintContractor},</if>
  213. <if test="location != null">location = #{location},</if>
  214. <if test="checkStrategy != null">check_strategy = #{checkStrategy},</if>
  215. <if test="firstWarnDate != null">first_warn_date = #{firstWarnDate},</if>
  216. <if test="checkUnit != null">check_unit = #{checkUnit},</if>
  217. <if test="docno != null">docno = #{docno},</if>
  218. <if test="approveTime != null">approve_time = #{approveTime},</if>
  219. <if test="changeTime != null">change_time = #{changeTime},</if>
  220. <if test="reportNo != null">report_no = #{reportNo},</if>
  221. <if test="perTestConclusion != null">per_test_conclusion = #{perTestConclusion},</if>
  222. </trim>
  223. where id = #{id}
  224. </update>
  225. <update id="updateTSpecdevDtByHi" parameterType="TSpecdevDt">
  226. update t_specdev_dt
  227. <trim prefix="SET" suffixOverrides=",">
  228. <if test="plantCode != null and plantCode != ''">plant_code = #{plantCode},</if>
  229. <if test="unit != null">unit = #{unit},</if>
  230. <if test="devname != null">devname = #{devname},</if>
  231. <if test="devno != null">devno = #{devno},</if>
  232. <if test="createdate != null">createdate = #{createdate},</if>
  233. <if test="submitdate != null">submitdate = #{submitdate},</if>
  234. <if test="status != null">status = #{status},</if>
  235. <if test="delFlag != null">del_flag = #{delFlag},</if>
  236. <if test="createrCode != null">creater_code = #{createrCode},</if>
  237. <if test="createrDate != null">creater_date = #{createrDate},</if>
  238. <if test="updaterCode != null">updater_code = #{updaterCode},</if>
  239. <if test="updaterDate != null">updater_date = #{updaterDate},</if>
  240. <if test="deptId != null">dept_id = #{deptId},</if>
  241. <if test="remarks != null">remarks = #{remarks},</if>
  242. <if test="approveStatus != null">approve_status = #{approveStatus},</if>
  243. <if test="regno != null">regno = #{regno},</if>
  244. <if test="useno != null">useno = #{useno},</if>
  245. <if test="warnDate != null">warn_date = #{warnDate},</if>
  246. <if test="warnCycle != null">warn_cycle = #{warnCycle},</if>
  247. <if test="nextWarnDate != null">next_warn_date = #{nextWarnDate},</if>
  248. <if test="warnFlag != null">warn_flag = #{warnFlag},</if>
  249. <if test="model != null">model = #{model},</if>
  250. <if test="capacity != null">capacity = #{capacity},</if>
  251. <if test="floor != null">floor = #{floor},</if>
  252. <if test="createUnit != null">create_unit = #{createUnit},</if>
  253. <if test="maintContractor != null">maint_contractor = #{maintContractor},</if>
  254. <if test="location != null">location = #{location},</if>
  255. <if test="checkStrategy != null">check_strategy = #{checkStrategy},</if>
  256. <if test="firstWarnDate != null">first_warn_date = #{firstWarnDate},</if>
  257. <if test="checkUnit != null">check_unit = #{checkUnit},</if>
  258. <if test="docno != null">docno = #{docno},</if>
  259. <if test="approveTime != null">approve_time = #{approveTime},</if>
  260. <if test="changeTime != null">change_time = #{changeTime},</if>
  261. <if test="reportNo != null">report_no = #{reportNo},</if>
  262. <if test="perTestConclusion != null">per_test_conclusion = #{perTestConclusion},</if>
  263. </trim>
  264. where id = #{devId}
  265. </update>
  266. <update id="deleteTSpecdevDtById" parameterType="Long">
  267. update t_specdev_dt set del_flag = 2 where id = #{id}
  268. </update>
  269. <update id="deleteTSpecdevDtByIds" parameterType="String">
  270. update t_specdev_dt set del_flag = 2 where id in
  271. <foreach item="id" collection="array" open="(" separator="," close=")">
  272. #{id}
  273. </foreach>
  274. </update>
  275. <select id="otherDevCount" resultType="com.ruoyi.project.sems.domain.DevData">
  276. SELECT COUNT(1) as num,to_char(t.NEXT_WARN_DATE,'yyyyMM') as yearM FROM "T_SPECDEV_DT" t
  277. where
  278. t.status = 1
  279. and del_flag = 0
  280. and t.PLANT_CODE in
  281. <foreach collection="plants" item="plant" index="index"
  282. open="(" close=")" separator=",">
  283. #{plant}
  284. </foreach>
  285. <if test="unitIds.size() > 0">
  286. and t.PLANT_CODE in
  287. <foreach collection="unitIds" item="unitId" index="index"
  288. open="(" close=")" separator=",">
  289. #{unitId}
  290. </foreach>
  291. </if>
  292. GROUP BY to_char(t.NEXT_WARN_DATE,'yyyyMM')
  293. </select>
  294. <update id="duplicateTSpecdevDt" >
  295. UPDATE T_SPECDEV_DT set DEL_FLAG = 2
  296. where rowid !=( select max(rowid)
  297. from T_SPECDEV_DT b
  298. where b.REGNO = T_SPECDEV_DT.REGNO and T_SPECDEV_DT.DEL_FLAG = 0 and b.DEL_FLAG = 0
  299. and T_SPECDEV_DT.APPROVE_STATUS = 0
  300. )
  301. </update>
  302. </mapper>