完成员工亲属实体关联改造并清理旧数据
This commit is contained in:
@@ -8,7 +8,9 @@
|
||||
<resultMap type="com.ruoyi.info.collection.domain.vo.CcdiStaffEnterpriseRelationVO" id="CcdiStaffEnterpriseRelationVOResult">
|
||||
<id property="id" column="id"/>
|
||||
<result property="personId" column="person_id"/>
|
||||
<result property="personName" column="person_name"/>
|
||||
<result property="relationName" column="relation_name"/>
|
||||
<result property="staffPersonId" column="staff_person_id"/>
|
||||
<result property="staffPersonName" column="staff_person_name"/>
|
||||
<result property="relationPersonPost" column="relation_person_post"/>
|
||||
<result property="socialCreditCode" column="social_credit_code"/>
|
||||
<result property="enterpriseName" column="enterprise_name"/>
|
||||
@@ -28,17 +30,28 @@
|
||||
<!-- 分页查询员工实体关系列表 -->
|
||||
<select id="selectRelationPage" resultMap="CcdiStaffEnterpriseRelationVOResult">
|
||||
SELECT
|
||||
ser.id, ser.person_id, bs.name as person_name, ser.relation_person_post,
|
||||
ser.id, ser.person_id, sfr.relation_name, sfr.person_id AS staff_person_id, bs.name AS staff_person_name,
|
||||
ser.relation_person_post,
|
||||
ser.social_credit_code, ser.enterprise_name, ser.status, ser.remark,
|
||||
ser.data_source, ser.is_employee, ser.is_emp_family, ser.is_customer,
|
||||
ser.is_cust_family, ser.created_by, ser.create_time, ser.updated_by,
|
||||
ser.update_time
|
||||
FROM ccdi_staff_enterprise_relation ser
|
||||
LEFT JOIN ccdi_base_staff bs ON ser.person_id = bs.id_card
|
||||
LEFT JOIN ccdi_staff_fmy_relation sfr
|
||||
ON ser.person_id = sfr.relation_cert_no
|
||||
AND sfr.is_emp_family = 1
|
||||
LEFT JOIN ccdi_base_staff bs ON sfr.person_id = bs.id_card
|
||||
<where>
|
||||
<if test="query.personId != null and query.personId != ''">
|
||||
AND ser.person_id LIKE CONCAT('%', #{query.personId}, '%')
|
||||
</if>
|
||||
<if test="query.relationName != null and query.relationName != ''">
|
||||
AND sfr.relation_name LIKE CONCAT('%', #{query.relationName}, '%')
|
||||
</if>
|
||||
<if test="query.staffPersonName != null and query.staffPersonName != ''">
|
||||
AND (sfr.person_id LIKE CONCAT('%', #{query.staffPersonName}, '%')
|
||||
OR bs.name LIKE CONCAT('%', #{query.staffPersonName}, '%'))
|
||||
</if>
|
||||
<if test="query.socialCreditCode != null and query.socialCreditCode != ''">
|
||||
AND ser.social_credit_code LIKE CONCAT('%', #{query.socialCreditCode}, '%')
|
||||
</if>
|
||||
@@ -55,16 +68,40 @@
|
||||
<!-- 查询员工实体关系详情 -->
|
||||
<select id="selectRelationById" resultMap="CcdiStaffEnterpriseRelationVOResult">
|
||||
SELECT
|
||||
ser.id, ser.person_id, bs.name as person_name, ser.relation_person_post,
|
||||
ser.id, ser.person_id, sfr.relation_name, sfr.person_id AS staff_person_id, bs.name AS staff_person_name,
|
||||
ser.relation_person_post,
|
||||
ser.social_credit_code, ser.enterprise_name, ser.status, ser.remark,
|
||||
ser.data_source, ser.is_employee, ser.is_emp_family, ser.is_customer,
|
||||
ser.is_cust_family, ser.created_by, ser.create_time, ser.updated_by,
|
||||
ser.update_time
|
||||
FROM ccdi_staff_enterprise_relation ser
|
||||
LEFT JOIN ccdi_base_staff bs ON ser.person_id = bs.id_card
|
||||
LEFT JOIN ccdi_staff_fmy_relation sfr
|
||||
ON ser.person_id = sfr.relation_cert_no
|
||||
AND sfr.is_emp_family = 1
|
||||
LEFT JOIN ccdi_base_staff bs ON sfr.person_id = bs.id_card
|
||||
WHERE ser.id = #{id}
|
||||
</select>
|
||||
|
||||
<!-- 查询有效员工亲属下拉选项 -->
|
||||
<select id="selectFamilyOptions" resultType="com.ruoyi.info.collection.domain.vo.CcdiStaffEnterpriseRelationOptionVO">
|
||||
SELECT
|
||||
sfr.relation_cert_no AS relationCertNo,
|
||||
sfr.relation_name AS relationName,
|
||||
sfr.person_id AS staffPersonId,
|
||||
bs.name AS staffPersonName
|
||||
FROM ccdi_staff_fmy_relation sfr
|
||||
LEFT JOIN ccdi_base_staff bs ON sfr.person_id = bs.id_card
|
||||
<where>
|
||||
sfr.is_emp_family = 1
|
||||
AND sfr.status = 1
|
||||
<if test="query != null and query != ''">
|
||||
AND sfr.relation_cert_no LIKE CONCAT('%', #{query}, '%')
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY sfr.create_time DESC
|
||||
LIMIT 100
|
||||
</select>
|
||||
|
||||
<!-- 判断身份证号和统一社会信用代码的组合是否已存在 -->
|
||||
<select id="existsByPersonIdAndSocialCreditCode" resultType="boolean">
|
||||
SELECT COUNT(1) > 0
|
||||
@@ -84,6 +121,14 @@
|
||||
</foreach>
|
||||
</select>
|
||||
|
||||
<update id="invalidateByFamilyCertNo">
|
||||
UPDATE ccdi_staff_enterprise_relation
|
||||
SET status = 0,
|
||||
update_time = NOW()
|
||||
WHERE person_id = #{personId}
|
||||
AND status != 0
|
||||
</update>
|
||||
|
||||
<!-- 批量插入员工实体关系数据 -->
|
||||
<insert id="insertBatch">
|
||||
INSERT INTO ccdi_staff_enterprise_relation
|
||||
|
||||
Reference in New Issue
Block a user