diff --git a/rds_mysql/stored_procedure/medaca_common/convert_to_date.sql b/rds_mysql/stored_procedure/medaca_common/convert_to_date.sql new file mode 100644 index 00000000..e5bcf3dd --- /dev/null +++ b/rds_mysql/stored_procedure/medaca_common/convert_to_date.sql @@ -0,0 +1,17 @@ +-- A5M2で実行時に[SQL] - [スラッシュ(/)のみの行でSQLを区切る]に変えてから実行する +CREATE FUNCTION medaca_common.convert_to_date(date_string VARCHAR(255), _format VARCHAR(50)) RETURNS datetime + DETERMINISTIC +BEGIN + DECLARE converted_date DATETIME; + + DECLARE EXIT HANDLER FOR SQLEXCEPTION + BEGIN + -- エラー発生時にNULLを返す + RETURN NULL; + END; + + -- 日付変換の実行 + SET converted_date = STR_TO_DATE(date_string, _format); + + RETURN converted_date; +END \ No newline at end of file diff --git a/s3/config/view_check/check_target_schemas.json b/s3/config/view_check/check_target_schemas.json index c8ec5d7f..07b1df0e 100644 --- a/s3/config/view_check/check_target_schemas.json +++ b/s3/config/view_check/check_target_schemas.json @@ -1,3 +1,3 @@ { - "check_target_schemas": ["custom01", "custom02", "custom03", "custom04"] + "check_target_schemas": ["custom01", "custom02", "custom03", "custom04","custom05"] } diff --git a/s3/data/hcp_web/settings/configmap.config b/s3/data/hcp_web/settings/configmap.config new file mode 100644 index 00000000..f4aee336 --- /dev/null +++ b/s3/data/hcp_web/settings/configmap.config @@ -0,0 +1,4 @@ +/* medパス社データ */ +hcp_web_medpass_user_mst_[0-9]{14}\.(CSV|csv) hcp_web_medpass_user_mst.txt +/* Parantir ウェブアクセスログデータ */ +hcpweb_accesslog_[0-9]{4}-[0-9]{2}-[0-9]{2}-[0-9]{6}\.(CSV|csv) hcpweb_accesslog.txt \ No newline at end of file diff --git a/s3/data/hcp_web/settings/hcp_web_accsess_log_ex.sql b/s3/data/hcp_web/settings/hcp_web_accsess_log_ex.sql new file mode 100644 index 00000000..d7d27ded --- /dev/null +++ b/s3/data/hcp_web/settings/hcp_web_accsess_log_ex.sql @@ -0,0 +1,19 @@ +/* date_time(文字型) を日付型に変換してセットする。 */ +/* date_time(文字型) はUTCの日付を取得するため、date_time(日付型)はMeDaCAのポリシーに合わせてJSTに変換する */ +UPDATE src06.hcp_web_access_log SET + date_time = IF ( + medaca_common.convert_to_date(date_time_org, '%Y-%m-%d %H:%i:%s') IS NULL, + NULL, + medaca_common.convert_to_date(date_time_org, '%Y-%m-%d %H:%i:%s') + INTERVAL 9 HOUR +) +WHERE ins_date >= (now() - INTERVAL 1 YEAR); + +/* post_evar29(文字型)を日付型に変換してセットする。 */ +/* post_evar29(文字型)はUTCの日付を取得するため、post_evar29(日付型)はMeDaCAのポリシーに合わせてJSTに変換する */ +UPDATE src06.hcp_web_access_log SET + post_evar29 = IF ( + medaca_common.convert_to_date(post_evar29_org, '%Y-%m-%dT%H:%i:%s.%fZ') IS NULL, + NULL, + medaca_common.convert_to_date(post_evar29_org, '%Y-%m-%dT%H:%i:%s.%fZ') + INTERVAL 9 HOUR +) +WHERE ins_date >= (now() - INTERVAL 1 YEAR); \ No newline at end of file diff --git a/s3/data/hcp_web/settings/hcp_web_medpass_user_mst.txt b/s3/data/hcp_web/settings/hcp_web_medpass_user_mst.txt new file mode 100644 index 00000000..31448f96 --- /dev/null +++ b/s3/data/hcp_web/settings/hcp_web_medpass_user_mst.txt @@ -0,0 +1,13 @@ +hcp_web +, +utf-8 +" +LF +1 +39 +Sub,UserName,FamilyName,GivenName,FamilyNameKana,GivenNameKana,BirthDate,Gender,CreateDate,LastUpdate,Job,Job_CareMgr,FacilityPrefecture,Workplace,School,GraduationYear,DoctorLicenseRegistYear,Service,SpecialistQualification,RawMailAddress,TestUser,MDBFacilityCode,FacilityPrefectureCode,FacilityMunicipalityCode,FacilityFullName,FacilityNameAbbr,CustomizedFacilityName,FacilityAddress,FacilityTelNumber,MDBFacilityPostalCode,MDBPersonalCode,MDBService,MDBServiceCategory,MDBWorkingDepartment,MDBGender,MDBOldSchool,MDBSubmitYear,MDBAllFacilityCode,RpOriginalAttributes +Sub,UserName,FamilyName,GivenName,FamilyNameKana,GivenNameKana,BirthDate_org,Gender,CreateDate_org,LastUpdate_org,Job,Job_CareMgr,FacilityPrefecture,Workplace,School,GraduationYear,DoctorLicenseRegistYear,Service,SpecialistQualification,RawMailAddress,TestUser,MDBFacilityCode,FacilityPrefectureCode,FacilityMunicipalityCode,FacilityFullName,FacilityNameAbbr,CustomizedFacilityName,FacilityAddress,FacilityTelNumber,MDBFacilityPostalCode,MDBPersonalCode,MDBService,MDBServiceCategory,MDBWorkingDepartment,MDBGender,MDBOldSchool,MDBSubmitYear,MDBAllFacilityCode,RpOriginalAttributes +src06.hcp_web_medpass_user_mst +org06.hcp_web_medpass_user_mst +hcp_web_medpass_user_mst_ex.sql + diff --git a/s3/data/hcp_web/settings/hcp_web_medpass_user_mst_ex.sql b/s3/data/hcp_web/settings/hcp_web_medpass_user_mst_ex.sql new file mode 100644 index 00000000..a3de3b99 --- /dev/null +++ b/s3/data/hcp_web/settings/hcp_web_medpass_user_mst_ex.sql @@ -0,0 +1,23 @@ +/* 生年月日(文字型) を日付型に変換してセットする。文字型のデータがNULLの場合はNULLをセットする */ +UPDATE src06.hcp_web_medpass_user_mst SET +BirthDate = IF( + BirthDate_org IS NULL, + NULL, + medaca_common.convert_to_date(BirthDate_org, '%Y-%m-%d') +); + +/* 登録日時(文字型)を日付型に変換してセットする。文字型のデータがNULLの場合はNULLをセットする */ +UPDATE src06.hcp_web_medpass_user_mst SET +CreateDate = IF( + CreateDate_org IS NULL, + NULL, + medaca_common.convert_to_date(CreateDate_org, '%Y-%m-%dT%H:%i:%s+09:00') +); + +/* 最終更新日時(文字型)を日付型に変換してセットする。文字型のデータがNULLの場合はNULLをセットする */ +UPDATE src06.hcp_web_medpass_user_mst SET +LastUpdate = IF( + LastUpdate_org IS NULL, + NULL, + medaca_common.convert_to_date(LastUpdate_org, '%Y-%m-%dT%H:%i:%s+09:00') +); diff --git a/s3/data/hcp_web/settings/hcpweb_accesslog.txt b/s3/data/hcp_web/settings/hcpweb_accesslog.txt new file mode 100644 index 00000000..d5bb453e --- /dev/null +++ b/s3/data/hcp_web/settings/hcpweb_accesslog.txt @@ -0,0 +1,13 @@ +hcp_web +, +utf-8 +" +LF +1 +178 +id,browser,campaign,carrier,click_context,date_time,duplicate_events,duplicated_from,evar1,evar10,evar16,evar24,evar4,evar54,evar55,evar71,evar73,evar74,evar8,evar9,event_list,exclude_hit,filename,first_hit_page_url,first_hit_ref_type,first_hit_referrer,first_hit_time_gmt,geo_city,geo_country,geo_dma,geo_region,hit_source,hit_time_gmt,hitid_high,hitid_low,last_hit_time_gmt,mobile_id,mobiledevice,os,page_event,page_event_var1,page_event_var2,page_url,pagename,paid_search,post_campaign,post_channel,post_cust_hit_time_gmt,post_evar1,post_evar10,post_evar100,post_evar11,post_evar12,post_evar13,post_evar14,post_evar15,post_evar16,post_evar17,post_evar18,post_evar19,post_evar2,post_evar20,post_evar21,post_evar22,post_evar23,post_evar24,post_evar25,post_evar26,post_evar27,post_evar28,post_evar29,post_evar3,post_evar30,post_evar31,post_evar32,post_evar33,post_evar34,post_evar35,post_evar36,post_evar37,post_evar38,post_evar39,post_evar4,post_evar40,post_evar41,post_evar42,post_evar43,post_evar44,post_evar45,post_evar46,post_evar47,post_evar48,post_evar49,post_evar5,post_evar50,post_evar51,post_evar52,post_evar53,post_evar54,post_evar55,post_evar56,post_evar57,post_evar58,post_evar59,post_evar6,post_evar60,post_evar61,post_evar62,post_evar63,post_evar64,post_evar65,post_evar66,post_evar67,post_evar68,post_evar69,post_evar7,post_evar70,post_evar71,post_evar72,post_evar73,post_evar74,post_evar75,post_evar76,post_evar77,post_evar78,post_evar79,post_evar8,post_evar80,post_evar81,post_evar82,post_evar83,post_evar84,post_evar85,post_evar86,post_evar87,post_evar88,post_evar89,post_evar9,post_evar90,post_evar91,post_evar92,post_evar93,post_evar94,post_evar95,post_evar96,post_evar97,post_evar98,post_evar99,post_event_list,post_mobiledevice,post_page_event,post_page_url,post_pagename,post_referrer,post_search_engine,post_visid_high,post_visid_low,post_visid_type,ref_domain,ref_type,referrer,sampled_hit,secondary_hit,truncated_hit,user_agent,user_server,username,va_closer_detail,va_finder_detail,visid_new,visit_num,visit_page_num,visit_ref_domain,visit_ref_type,visit_referrer,visit_search_engine,visit_start_page_url,visit_start_time_gmt +id,browser,campaign,carrier,click_context,date_time_org,duplicate_events,duplicated_from,evar1,evar10,evar16,evar24,evar4,evar54,evar55,evar71,evar73,evar74,evar8,evar9,event_list,exclude_hit,filename,first_hit_page_url,first_hit_ref_type,first_hit_referrer,first_hit_time_gmt,geo_city,geo_country,geo_dma,geo_region,hit_source,hit_time_gmt,hitid_high,hitid_low,last_hit_time_gmt,mobile_id,mobiledevice,os,page_event,page_event_var1,page_event_var2,page_url,pagename,paid_search,post_campaign,post_channel,post_cust_hit_time_gmt,post_evar1,post_evar10,post_evar100,post_evar11,post_evar12,post_evar13,post_evar14,post_evar15,post_evar16,post_evar17,post_evar18,post_evar19,post_evar2,post_evar20,post_evar21,post_evar22,post_evar23,post_evar24,post_evar25,post_evar26,post_evar27,post_evar28,post_evar29_org,post_evar3,post_evar30,post_evar31,post_evar32,post_evar33,post_evar34,post_evar35,post_evar36,post_evar37,post_evar38,post_evar39,post_evar4,post_evar40,post_evar41,post_evar42,post_evar43,post_evar44,post_evar45,post_evar46,post_evar47,post_evar48,post_evar49,post_evar5,post_evar50,post_evar51,post_evar52,post_evar53,post_evar54,post_evar55,post_evar56,post_evar57,post_evar58,post_evar59,post_evar6,post_evar60,post_evar61,post_evar62,post_evar63,post_evar64,post_evar65,post_evar66,post_evar67,post_evar68,post_evar69,post_evar7,post_evar70,post_evar71,post_evar72,post_evar73,post_evar74,post_evar75,post_evar76,post_evar77,post_evar78,post_evar79,post_evar8,post_evar80,post_evar81,post_evar82,post_evar83,post_evar84,post_evar85,post_evar86,post_evar87,post_evar88,post_evar89,post_evar9,post_evar90,post_evar91,post_evar92,post_evar93,post_evar94,post_evar95,post_evar96,post_evar97,post_evar98,post_evar99,post_event_list,post_mobiledevice,post_page_event,post_page_url,post_pagename,post_referrer,post_search_engine,post_visid_high,post_visid_low,post_visid_type,ref_domain,ref_type,referrer,sampled_hit,secondary_hit,truncated_hit,user_agent,user_server,username,va_closer_detail,va_finder_detail,visid_new,visit_num,visit_page_num,visit_ref_domain,visit_ref_type,visit_referrer,visit_search_engine,visit_start_page_url,visit_start_time_gmt +src06.hcp_web_access_log +org06.hcp_web_access_log +hcp_web_accsess_log_ex.sql +