GyDataMapper.xml 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506
  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.bootdo.datas.dao.GyDataDao">
  4. <sql id="selectSql">
  5. b.ID as id,
  6. a.REPORTER_UNIT as reporterUnit,
  7. a.CREDIT_CODE as creditCode,
  8. a.UNIT_CHARACTER as unitCharacter,
  9. a.INDUSTRY_TYPE_ONE as industryTypeOne,
  10. a.INDUSTRY_TYPE_TWO as industryTypeTwo,
  11. a.UNIT_PROVINCE as unitProvince,
  12. a.UNIT_CITY as unitCity,
  13. a.SUPERVISORY_ORG as supervisoryOrg,
  14. a.UNIT_MAN as unitMan,
  15. a.UNIT_OFFICE as unitOffice,
  16. a.DATA_SECURITY_MAN as dataSecurityMan,
  17. a.DATA_SECURITY_OFFICE as dataSecurityOffice,
  18. a.DATA_SECURITY_WAY as dataSecurityWay,
  19. b.DATA_NAME as dataName,
  20. b.DATA_TYPE_BASE as dataTypeBase,
  21. b.DATA_TYPE_ROOT as dataTypeROOT,
  22. b.DATA_TYPE_ONE as dataTypeOne,
  23. b.DATA_TYPE_TWO as dataTypeTwo,
  24. b.DATA_TYPE_THREE as dataTypeThree,
  25. b.DATA_TYPE_FOUR as dataTypeFour,
  26. b.DATA_LEVEL as dataLevel,
  27. b.DATA_CARRIER as dataCarrier,
  28. b.DATA_SOURCE as dataSource,
  29. b.DATA_NUM as dataNum,
  30. b.DATA_NUM_GB as dataNumGb,
  31. b.DATA_SCOPE as dataScope,
  32. b.DATA_PROPORTION as dataProportion,
  33. b.DATA_PRECISION as dataPrecision,
  34. b.DATA_PRECISION_DES as dataPrecisionDes,
  35. b.DATA_HANDLE_TYPE as dataHandleType,
  36. b.DATA_RESULT as dataResult,
  37. b.IS_ALGORITHM_HANDLE as isAlgorithmHandle,
  38. b.IS_CROSS as isCross,
  39. b.CROSS_ACCEPT_NAME as crossAcceptName,
  40. b.DATA_CROSS_RESULT as dataCrossResult,
  41. b.DATA_CROSS_TYPE as dataCrossType,
  42. b.IS_SECURITY_ASS as isSecurityAss,
  43. b.ASSESS_RESULT as assessResult,
  44. b.IS_CROSS_MAIN as isCrossMain,
  45. b.CROSSMAIN_ACCEPT_NAME as crossmainAcceptName,
  46. b.DATA_CROSSMAIN_RESULT as dataCrossmainResult,
  47. b.DATA_CROSSMAIN_TYPE as dataCrossmainType,
  48. b.IS_CROSSMAIN_FLOW as isCrossmainFlow,
  49. b.IS_FOREIGN_DATA as isForeignData,
  50. b.INFO_SYSTEM_NAME as infoSystemName,
  51. b.INFO_SYSTEM_TYPE as infoSystemType,
  52. b.INFO_SYSTEM_IPADDRESS as infoSystemIpAddress,
  53. b.INFO_SYSTEM_DOMAINNAME as infoSystemDomainName,
  54. b.SECURITY_COGNIZANCE as securityCognizance,
  55. b.COM_SECURITY_COGNIZANCE as comSecurityCognizance,
  56. b.IS_KET_SYSTEM as isKetSystem,
  57. b.IS_KEYDATA_ASS as isKeydataAss,
  58. b.ASSESS_ORG as assessOrg,
  59. b.ASSESS_BASE as assessBase,
  60. b.ASSESS_TIME as assessTime,
  61. b.DATA_ASSESS_RESULT as dataAssessResult,
  62. b.DATA_STATUS as dataStatus,
  63. b.UPLOAD_TIME as uploadTime,
  64. b.UPDATE_TIME as updateTime,
  65. b.GY_NUIT_ID as gyUnitId,
  66. b.ROLE_ID as roleId,
  67. b.next_verify_dept as nextVerifyDept,
  68. b.SEND_VERIFY as sendVerify,
  69. b.DELETE_STATUS as deleteStatus,
  70. b.DATA_DESC as dataDesc,
  71. b.AUDIT_STAGE as auditStage
  72. </sql>
  73. <select id="get" resultType="com.bootdo.datas.dto.GyDataImportDTO">
  74. select
  75. <include refid="selectSql"/>
  76. FROM gy_unit a,gy_data b
  77. where b.ID = #{value} and
  78. a.CREDIT_CODE = b.GY_NUIT_ID
  79. </select>
  80. <select id="getRecoverData" resultType="com.bootdo.datas.dto.GyDataImportDTO">
  81. SELECT
  82. b.ID as id,
  83. b.DATA_NAME as dataName,
  84. b.GY_NUIT_ID as gyUnitId,
  85. b.DATA_STATUS as dataStatus,
  86. b.DELETE_STATUS as deleteStatus
  87. FROM gy_data b where b.ID = #{value}
  88. </select>
  89. <select id="getDataExcel" resultType="com.bootdo.datas.domain.GyDataExcelDO">
  90. select
  91. <include refid="selectSql"/>
  92. FROM gy_unit a,gy_data b
  93. where b.ID = #{value} and
  94. a.CREDIT_CODE = b.GY_NUIT_ID
  95. </select>
  96. <select id="getGbDataExcel" resultType="com.bootdo.datas.domain.GbDataExcelDO">
  97. select
  98. <include refid="selectSql"/>
  99. FROM gy_unit a,gy_data b
  100. where b.ID = #{value} and
  101. a.CREDIT_CODE = b.GY_NUIT_ID
  102. </select>
  103. <select id="listId" resultType="com.bootdo.datas.dto.GyDataImportDTO">
  104. SELECT
  105. b.ID as id,b.DATA_STATUS as dataStatus
  106. FROM gy_data b
  107. <where>
  108. b.DELETE_STATUS = '0'
  109. and b.DATA_NAME = #{dataName}
  110. and b.GY_NUIT_ID = #{gyUnitId}
  111. </where>
  112. </select>
  113. <select id="list" resultType="com.bootdo.datas.dto.GyDataImportDTO">
  114. SELECT
  115. <include refid="selectSql"/>
  116. FROM gy_unit a,gy_data b
  117. <where>
  118. a.CREDIT_CODE = b.GY_NUIT_ID
  119. AND b.DELETE_STATUS = '0'
  120. <if test="neqDataStatus != null and neqDataStatus != ''"> and b.DATA_STATUS != #{neqDataStatus}</if>
  121. <if test="industryTypeOne != null and industryTypeOne != ''"> and a.INDUSTRY_TYPE_ONE like CONCAT('%',#{industryTypeOne},'%')</if>
  122. <if test="dataName != null and dataName != ''"> and b.DATA_NAME like CONCAT('%',#{dataName},'%')</if>
  123. <if test="dataLevel != null and dataLevel != ''"> and b.DATA_LEVEL = #{dataLevel}</if>
  124. <if test="reporterUnit != null and reporterUnit != ''"> and a.REPORTER_UNIT like
  125. CONCAT('%',#{reporterUnit},'%')
  126. </if>
  127. <if test="nextVerifyDept != null and nextVerifyDept != ''"> and b.next_verify_dept = #{nextVerifyDept}</if>
  128. <if test="unitCity != null and unitCity != ''"> and a.UNIT_CITY = #{unitCity}</if>
  129. <if test="unitId != null and unitId != ''"> and a.CREDIT_CODE = #{unitId}</if>
  130. <if test="creditCode != null and creditCode != ''"> and a.CREDIT_CODE = #{creditCode}</if>
  131. <if test="gyUnitId != null and gyUnitId != ''"> and b.GY_NUIT_ID = #{gyUnitId}</if>
  132. <choose>
  133. <when test="unitProvince != null and unitProvince.trim() != '' and roleId != null and roleId.trim() != ''">
  134. and (a.UNIT_PROVINCE = #{unitProvince} or b.role_id = #{roleId})
  135. </when>
  136. <when test="unitProvince != null and unitProvince.trim() != ''">
  137. and a.UNIT_PROVINCE = #{unitProvince}
  138. </when>
  139. <when test="roleId != null and roleId.trim() != ''">
  140. and b.role_id = #{roleId}
  141. </when>
  142. </choose>
  143. <if test="dataStatusArrs != null and dataStatusArrs.size > 0"> and b.DATA_STATUS in
  144. <foreach item="id" collection="dataStatusArrs" open="(" separator="," close=")">
  145. #{id}
  146. </foreach>
  147. </if>
  148. <if test="sendVerify != null and sendVerify != ''">
  149. and b.SEND_VERIFY = #{sendVerify}
  150. </if>
  151. <if test="auditStage != null and auditStage != ''">
  152. and b.AUDIT_STAGE = #{auditStage}
  153. </if>
  154. <if test="auditStageMenu != null and auditStageMenu != ''">
  155. and b.AUDIT_STAGE = #{auditStageMenu}
  156. </if>
  157. </where>
  158. <choose>
  159. <when test="sort != null and sort.trim() != ''">
  160. order by ${sort} ${order}
  161. </when>
  162. <otherwise>
  163. order by if(b.DATA_STATUS=3,5,b.DATA_STATUS) asc, b.UPDATE_TIME desc
  164. </otherwise>
  165. </choose>
  166. <if test="offset != null and limit != null">
  167. limit #{offset}, #{limit}
  168. </if>
  169. </select>
  170. <select id="countTotal" resultType="int">
  171. SELECT
  172. count(*)
  173. FROM gy_unit a,gy_data b
  174. <where>
  175. a.CREDIT_CODE = b.GY_NUIT_ID
  176. AND b.DELETE_STATUS = '0'
  177. <if test="neqDataStatus != null and neqDataStatus != ''"> and b.DATA_STATUS != #{neqDataStatus}</if>
  178. <if test="industryTypeOne != null and industryTypeOne != ''"> and a.INDUSTRY_TYPE_ONE like CONCAT('%',#{industryTypeOne},'%')</if>
  179. <if test="dataName != null and dataName != ''"> and b.DATA_NAME like CONCAT('%',#{dataName},'%')</if>
  180. <if test="dataLevel != null and dataLevel != ''"> and b.DATA_LEVEL = #{dataLevel}</if>
  181. <if test="reporterUnit != null and reporterUnit != ''"> and a.REPORTER_UNIT like
  182. CONCAT('%',#{reporterUnit},'%')
  183. </if>
  184. <if test="nextVerifyDept != null and nextVerifyDept != ''"> and b.next_verify_dept = #{nextVerifyDept}</if>
  185. <if test="unitCity != null and unitCity != ''"> and a.UNIT_CITY = #{unitCity}</if>
  186. <if test="unitId != null and unitId != ''"> and a.CREDIT_CODE = #{unitId}</if>
  187. <if test="creditCode != null and creditCode != ''"> and a.CREDIT_CODE = #{creditCode}</if>
  188. <if test="gyUnitId != null and gyUnitId != ''"> and b.GY_NUIT_ID = #{gyUnitId}</if>
  189. <choose>
  190. <when test="unitProvince != null and unitProvince.trim() != '' and roleId != null and roleId.trim() != ''">
  191. and (a.UNIT_PROVINCE = #{unitProvince} or b.role_id = #{roleId})
  192. </when>
  193. <when test="unitProvince != null and unitProvince.trim() != ''">
  194. and a.UNIT_PROVINCE = #{unitProvince}
  195. </when>
  196. <when test="roleId != null and roleId.trim() != ''">
  197. and b.role_id = #{roleId}
  198. </when>
  199. </choose>
  200. <if test="dataStatusArrs != null and dataStatusArrs.size > 0"> and b.DATA_STATUS in
  201. <foreach item="id" collection="dataStatusArrs" open="(" separator="," close=")">
  202. #{id}
  203. </foreach>
  204. </if>
  205. <if test="sendVerify != null and sendVerify != ''">
  206. and b.SEND_VERIFY = #{sendVerify}
  207. </if>
  208. <if test="auditStage != null and auditStage != ''">
  209. and b.AUDIT_STAGE = #{auditStage}
  210. </if>
  211. <if test="auditStageMenu != null and auditStageMenu != ''">
  212. and b.AUDIT_STAGE = #{auditStageMenu}
  213. </if>
  214. </where>
  215. </select>
  216. <select id="listRecover" resultType="com.bootdo.datas.dto.GyDataImportDTO">
  217. SELECT
  218. <include refid="selectSql"/>
  219. FROM gy_unit a,gy_data b
  220. <where>
  221. a.CREDIT_CODE = b.GY_NUIT_ID
  222. AND (b.DELETE_STATUS = '1'
  223. or b.DATA_STATUS = '4')
  224. <if test="industryTypeOne != null and industryTypeOne != ''"> and a.INDUSTRY_TYPE_ONE like CONCAT('%',#{industryTypeOne},'%')</if>
  225. <if test="dataName != null and dataName != ''">and b.DATA_NAME like CONCAT('%',#{dataName},'%')</if>
  226. <if test="dataLevel != null and dataLevel != ''">and b.DATA_LEVEL = #{dataLevel}</if>
  227. <if test="reporterUnit != null and reporterUnit != ''">and a.REPORTER_UNIT like
  228. CONCAT('%',#{reporterUnit},'%')
  229. </if>
  230. <if test="nextVerifyDept != null and nextVerifyDept != ''">and b.next_verify_dept = #{nextVerifyDept}</if>
  231. <if test="unitCity != null and unitCity != ''">and (a.UNIT_CITY = #{unitCity})</if>
  232. <if test="unitId != null and unitId != ''"> and a.CREDIT_CODE = #{unitId}</if>
  233. <if test="roleId != null and roleId != ''">and b.role_id = #{roleId}</if>
  234. <if test="dataStatusArrs != null and dataStatusArrs.size > 0"> and b.DATA_STATUS in
  235. <foreach item="id" collection="dataStatusArrs" open="(" separator="," close=")">
  236. #{id}
  237. </foreach>
  238. </if>
  239. <if test="sendVerify != null and sendVerify != ''">
  240. <if test="sendVerify == 0">
  241. and b.SEND_VERIFY = '0'
  242. </if>
  243. <if test="sendVerify == 1">
  244. and b.SEND_VERIFY IN('1','2')
  245. </if>
  246. <if test="sendVerify == 2">
  247. and b.SEND_VERIFY = '2'
  248. </if>
  249. </if>
  250. <if test="auditStage != null and auditStage != ''">
  251. and b.AUDIT_STAGE = #{auditStage}
  252. </if>
  253. </where>
  254. <choose>
  255. <when test="sort != null and sort.trim() != ''">
  256. order by ${sort} ${order}
  257. </when>
  258. <otherwise>
  259. order by b.UPDATE_TIME desc
  260. </otherwise>
  261. </choose>
  262. <if test="offset != null and limit != null">
  263. limit #{offset}, #{limit}
  264. </if>
  265. </select>
  266. <select id="countRecover" resultType="int">
  267. SELECT
  268. count(*)
  269. FROM gy_unit a,gy_data b
  270. <where>
  271. a.CREDIT_CODE = b.GY_NUIT_ID
  272. AND (b.DELETE_STATUS = '1'
  273. or b.DATA_STATUS = '4')
  274. <if test="industryTypeOne != null and industryTypeOne != ''"> and a.INDUSTRY_TYPE_ONE like CONCAT('%',#{industryTypeOne},'%')</if>
  275. <if test="dataName != null and dataName != ''">and b.DATA_NAME like CONCAT('%',#{dataName},'%')</if>
  276. <if test="dataLevel != null and dataLevel != ''">and b.DATA_LEVEL = #{dataLevel}</if>
  277. <if test="reporterUnit != null and reporterUnit != ''">and a.REPORTER_UNIT like
  278. CONCAT('%',#{reporterUnit},'%')
  279. </if>
  280. <if test="nextVerifyDept != null and nextVerifyDept != ''">and b.next_verify_dept = #{nextVerifyDept}</if>
  281. <if test="unitCity != null and unitCity != ''">and (a.UNIT_CITY = #{unitCity})</if>
  282. <if test="unitId != null and unitId != ''"> and a.CREDIT_CODE = #{unitId}</if>
  283. <if test="roleId != null and roleId != ''">and b.role_id = #{roleId}</if>
  284. <if test="dataStatusArrs != null and dataStatusArrs.size > 0"> and b.DATA_STATUS in
  285. <foreach item="id" collection="dataStatusArrs" open="(" separator="," close=")">
  286. #{id}
  287. </foreach>
  288. </if>
  289. <if test="sendVerify != null and sendVerify != ''">
  290. <if test="sendVerify == 0">
  291. and b.SEND_VERIFY = '0'
  292. </if>
  293. <if test="sendVerify == 1">
  294. and b.SEND_VERIFY IN('1','2')
  295. </if>
  296. <if test="sendVerify == 2">
  297. and b.SEND_VERIFY = '2'
  298. </if>
  299. </if>
  300. <if test="auditStage != null and auditStage != ''">
  301. and b.AUDIT_STAGE = #{auditStage}
  302. </if>
  303. </where>
  304. </select>
  305. <insert id="batchSave">
  306. insert into gy_data
  307. (
  308. DATA_NAME,
  309. DATA_TYPE_BASE,
  310. DATA_TYPE_ONE,
  311. DATA_TYPE_TWO,
  312. DATA_TYPE_THREE,
  313. DATA_TYPE_FOUR,
  314. DATA_LEVEL,
  315. DATA_CARRIER,
  316. DATA_SOURCE,
  317. DATA_NUM,
  318. DATA_NUM_GB,
  319. DATA_SCOPE,
  320. DATA_PROPORTION,
  321. DATA_PRECISION,
  322. DATA_PRECISION_DES,
  323. DATA_HANDLE_TYPE,
  324. DATA_RESULT,
  325. IS_ALGORITHM_HANDLE,
  326. IS_CROSS,
  327. CROSS_ACCEPT_NAME,
  328. DATA_CROSS_RESULT,
  329. DATA_CROSS_TYPE,
  330. IS_SECURITY_ASS,
  331. ASSESS_RESULT,
  332. IS_CROSS_MAIN,
  333. CROSSMAIN_ACCEPT_NAME,
  334. DATA_CROSSMAIN_RESULT,
  335. DATA_CROSSMAIN_TYPE,
  336. IS_CROSSMAIN_FLOW,
  337. IS_FOREIGN_DATA,
  338. INFO_SYSTEM_NAME,
  339. INFO_SYSTEM_TYPE,
  340. INFO_SYSTEM_IPADDRESS,
  341. INFO_SYSTEM_DOMAINNAME,
  342. SECURITY_COGNIZANCE,
  343. COM_SECURITY_COGNIZANCE,
  344. IS_KET_SYSTEM,
  345. IS_KEYDATA_ASS,
  346. ASSESS_ORG,
  347. ASSESS_BASE,
  348. ASSESS_TIME,
  349. DATA_ASSESS_RESULT,
  350. DATA_STATUS,
  351. UPLOAD_TIME,
  352. UPDATE_TIME,
  353. GY_NUIT_ID,
  354. ROLE_ID,
  355. next_verify_dept,
  356. SEND_VERIFY,
  357. DELETE_STATUS,
  358. DATA_DESC,
  359. AUDIT_STAGE
  360. )
  361. values
  362. <foreach item="item" index="index" collection="list"
  363. separator=",">
  364. (
  365. #{item.dataName},
  366. #{item.dataTypeBase},
  367. #{item.dataTypeOne},
  368. #{item.dataTypeTwo},
  369. #{item.dataTypeThree},
  370. #{item.dataTypeFour},
  371. #{item.dataLevel},
  372. #{item.dataCarrier},
  373. #{item.dataSource},
  374. #{item.dataNum},
  375. #{item.dataNumGb},
  376. #{item.dataScope},
  377. #{item.dataProportion},
  378. #{item.dataPrecision},
  379. #{item.dataPrecisionDes},
  380. #{item.dataHandleType},
  381. #{item.dataResult},
  382. #{item.isAlgorithmHandle},
  383. #{item.isCross},
  384. #{item.crossAcceptName},
  385. #{item.dataCrossResult},
  386. #{item.dataCrossType},
  387. #{item.isSecurityAss},
  388. #{item.assessResult},
  389. #{item.isCrossMain},
  390. #{item.crossmainAcceptName},
  391. #{item.dataCrossmainResult},
  392. #{item.dataCrossmainType},
  393. #{item.isCrossmainFlow},
  394. #{item.isForeignData},
  395. #{item.infoSystemName},
  396. #{item.infoSystemType},
  397. #{item.infoSystemIpAddress},
  398. #{item.infoSystemDomainName},
  399. #{item.securityCognizance},
  400. #{item.comSecurityCognizance},
  401. #{item.isKetSystem},
  402. #{item.isKeydataAss},
  403. #{item.assessOrg},
  404. #{item.assessBase},
  405. #{item.assessTime},
  406. #{item.dataAssessResult},
  407. #{item.dataStatus},
  408. #{item.uploadTime},
  409. #{item.updateTime},
  410. #{item.gyUnitId},
  411. #{item.roleId},
  412. #{item.nextVerifyDept},
  413. #{item.sendVerify},
  414. #{item.deleteStatus},
  415. #{item.dataDesc},
  416. #{item.auditStage}
  417. )
  418. </foreach>
  419. </insert>
  420. <update id="recover">
  421. UPDATE gy_data
  422. SET DELETE_STATUS = 0,
  423. DATA_STATUS = 0,
  424. SEND_VERIFY = 0,
  425. del_unigue_key = 0,
  426. AUDIT_STAGE = #{auditStage},
  427. UPDATE_TIME = NOW()
  428. WHERE
  429. ID = #{id}
  430. </update>
  431. <update id="updateStatus" parameterType="com.bootdo.datas.dto.GyDataImportDTO">
  432. update gy_data
  433. <set>
  434. <if test="auditStage != null">AUDIT_STAGE = #{auditStage},</if>
  435. <if test="dataStatus != null">DATA_STATUS = #{dataStatus},</if>
  436. <if test="sendVerify != null">SEND_VERIFY = #{sendVerify},</if>
  437. <if test="nextVerifyDept != null">NEXT_VERIFY_DEPT = #{nextVerifyDept},</if>
  438. <if test="roleId != null">ROLE_ID = #{roleId},</if>
  439. UPDATE_TIME = NOW()
  440. </set>
  441. where ID = #{id}
  442. </update>
  443. <update id="batchRemove">
  444. UPDATE gy_data
  445. SET DELETE_STATUS = 1,
  446. del_unigue_key = ID,
  447. UPDATE_TIME = NOW()
  448. WHERE ID IN
  449. <foreach item="id" collection="array" open="(" separator="," close=")">
  450. #{id}
  451. </foreach>
  452. </update>
  453. <select id="countTotal4Del" resultType="int">
  454. SELECT
  455. count(*)
  456. FROM gy_data b
  457. <where>
  458. b.GY_NUIT_ID =#{gyUnitId}
  459. </where>
  460. </select>
  461. <update id="remove">
  462. UPDATE gy_data
  463. SET DELETE_STATUS = 1,
  464. del_unigue_key = ID,
  465. UPDATE_TIME = NOW()
  466. WHERE
  467. ID = #{value}
  468. </update>
  469. <delete id="batchPhysicalDeletion">
  470. DELETE FROM gy_data
  471. WHERE ID IN
  472. <foreach item="id" collection="array" open="(" separator="," close=")">
  473. #{id}
  474. </foreach>
  475. </delete>
  476. <select id="countAaAssData" resultType="int">
  477. SELECT
  478. count(*)
  479. FROM ra_ass_data b
  480. <where>
  481. b.gy_data_id =#{id}
  482. </where>
  483. </select>
  484. </mapper>