insert into cu_member_retail_region cmrr (
pk_id,
pk_member,
province,
city,
county,
source,
creation_time,
pk_creator,
system_type)
select cu_member_retail_region_seq.nextval,
#{retailRegion.pkMember},
#{retailRegion.province},
#{retailRegion.city},
#{retailRegion.county},
#{retailRegion.source},
sysdate,
#{retailRegion.pkCreator},
#{retailRegion.systemType}
from dual
where not exists(select 1
from cu_member_retail_region cmrr
where cmrr.province = #{retailRegion.province}
and cmrr.city = #{retailRegion.city}
and cmrr.county = #{retailRegion.county}
and cmrr.del_flag = 0
and cmrr.effective = 0
and cmrr.system_type = #{retailRegion.systemType})
UPDATE CU_MEMBER_RETAIL_REGION
SET EFFECTIVE=1,
MODIFIED_TIME=sysdate
WHERE EFFECTIVE = 0
AND DEL_FLAG = 0
AND EFFECTIVE_END_DATE < = sysdate
update cu_member_retail_region cmrr
set cmrr.effective = 1,
cmrr.modified_time = sysdate
where cmrr.del_flag = 0
and cmrr.effective = 0
and cmrr.province = #{province}
and cmrr.city = #{city}
and cmrr.county = #{county}
and cmrr.system_type = #{systemType}
and cmrr.pk_id not in (select pk_id
from (select cmrr.pk_id
from cu_member_retail_region cmrr
where cmrr.del_flag = 0
and cmrr.effective = 0
and cmrr.province = #{province}
and cmrr.city = #{city}
and cmrr.county = #{county}
and cmrr.system_type = #{systemType}
order by cmrr.creation_time)
where rownum = 1)