INSERT IGNORE INTO gen_key_teenagers( key_teenagers_id, relationship_with_guardian, family_situation, person_type, guardian_card, helping_situation, crime_situation, helper_name, helping_method, guardian_name, is_crime, helper_phone, base_id, guardian_address, guardian_phone, creator, gmt_create, modifier, gmt_modified, is_delete ) SELECT #{keyTeenagersId}, #{relationshipWithGuardian}, #{familySituation}, #{personType}, #{guardianCard}, #{helpingSituation}, #{crimeSituation}, #{helperName}, #{helpingMethod}, #{guardianName}, #{isCrime}, #{helperPhone}, #{baseId}, #{guardianAddress}, #{guardianPhone}, #{creator}, #{gmtCreate}, #{modifier}, #{gmtModified}, #{isDelete} FROM DUAL WHERE NOT EXISTS ( SELECT * FROM gen_key_teenagers WHERE base_id = #{baseId} AND is_delete = 0 ) INSERT IGNORE INTO gen_key_teenagers( key_teenagers_id, relationship_with_guardian, family_situation, person_type, guardian_card, helping_situation, crime_situation, helper_name, helping_method, guardian_name, is_crime, helper_phone, base_id, guardian_address, guardian_phone, creator, gmt_create, modifier, gmt_modified, is_delete ) SELECT #{item.keyTeenagersId}, #{item.relationshipWithGuardian}, #{item.familySituation}, #{item.personType}, #{item.guardianCard}, #{item.helpingSituation}, #{item.crimeSituation}, #{item.helperName}, #{item.helpingMethod}, #{item.guardianName}, #{item.isCrime}, #{item.helperPhone}, #{item.baseId}, #{item.guardianAddress}, #{item.guardianPhone}, #{item.creator}, #{item.gmtCreate}, #{item.modifier}, #{item.gmtModified}, #{item.isDelete} FROM DUAL WHERE NOT EXISTS ( SELECT * FROM gen_key_teenagers WHERE base_id = #{item.baseId} AND is_delete = 0 ) UPDATE gen_key_teenagers SET is_delete = 1, modifier = #{modifier}, gmt_modified = #{gmtModified} WHERE key_teenagers_id IN #{keyTeenagersIds[${index}]} DELETE FROM gen_key_teenagers WHERE key_teenagers_id IN #{keyTeenagersIds[${index}]} UPDATE gen_key_teenagers SET relationship_with_guardian = #{relationshipWithGuardian}, family_situation = #{familySituation}, person_type = #{personType}, guardian_card = #{guardianCard}, helping_situation = #{helpingSituation}, crime_situation = #{crimeSituation}, helper_name = #{helperName}, helping_method = #{helpingMethod}, guardian_name = #{guardianName}, is_crime = #{isCrime}, helper_phone = #{helperPhone}, base_id = #{baseId}, guardian_address = #{guardianAddress}, guardian_phone = #{guardianPhone}, modifier = #{modifier}, gmt_modified = #{gmtModified} WHERE key_teenagers_id = #{keyTeenagersId}