58 lines
No EOL
2.1 KiB
XML
58 lines
No EOL
2.1 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<!DOCTYPE mapper
|
|
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
|
|
|
<mapper namespace="ru.nbch.credit_tracker.mapper.signal.LegalsFidMapMapper">
|
|
|
|
<resultMap id="LegalFidMapResultMap" type="ru.nbch.credit_tracker.entities.app.SignalLegalFidMap">
|
|
<result property="id" column="id"/>
|
|
<result property="packageId" column="package_id"/>
|
|
<result property="subjectId" column="subject_id"/>
|
|
<result property="inn" column="inn"/>
|
|
<result property="regNum" column="reg_num"/>
|
|
</resultMap>
|
|
|
|
<select id="registerJson" parameterType="string" resultType="long">
|
|
WITH src AS (SELECT row_number() OVER () AS rn,
|
|
subject_id,
|
|
inn,
|
|
reg_num,
|
|
package_id
|
|
FROM json_to_recordset(#{json}::json) AS t(
|
|
subject_id varchar(255),
|
|
inn bigint,
|
|
reg_num bigint,
|
|
package_id bigint
|
|
))
|
|
INSERT
|
|
INTO signals_legal_fid_map
|
|
(subject_id, inn, reg_num, package_id)
|
|
SELECT subject_id,
|
|
inn,
|
|
reg_num,
|
|
package_id
|
|
FROM src
|
|
ORDER BY rn
|
|
RETURNING id;
|
|
</select>
|
|
|
|
<select id="findFullLegalFidMap" resultMap="LegalFidMapResultMap" resultType="java.util.List">
|
|
SELECT id,
|
|
package_id,
|
|
subject_id,
|
|
inn,
|
|
reg_num
|
|
FROM signals_legal_fid_map
|
|
WHERE package_id = #{packageId}
|
|
ORDER BY id
|
|
LIMIT #{limit} OFFSET #{offset}
|
|
</select>
|
|
|
|
<delete id="deleteByPackageId" parameterType="long">
|
|
DELETE
|
|
FROM signals_legal_fid_map
|
|
WHERE package_id = #{packageId}
|
|
</delete>
|
|
|
|
</mapper> |