From d452eb8e09ac01a55dd664b8469a9f5c22e4f80e Mon Sep 17 00:00:00 2001 From: root Date: Fri, 17 Oct 2025 17:30:44 +0800 Subject: [PATCH] =?UTF-8?q?add=20workflow=20=E6=B3=B0=E5=85=8BCRM,dev?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../客户联系信息/cust_contact_info_agi.sql | 42 +++++++++++-------- 1 file changed, 24 insertions(+), 18 deletions(-) diff --git a/dev/workflow/TK_Cust/tk_crm/客户联系信息/cust_contact_info_agi.sql b/dev/workflow/TK_Cust/tk_crm/客户联系信息/cust_contact_info_agi.sql index 64403e1..d5875e7 100644 --- a/dev/workflow/TK_Cust/tk_crm/客户联系信息/cust_contact_info_agi.sql +++ b/dev/workflow/TK_Cust/tk_crm/客户联系信息/cust_contact_info_agi.sql @@ -1,14 +1,14 @@ /***************************************************************************************************/ -/*script in Sql, generate by SdmCreateScript 2020(by Qihang Feng, QF255001@TERADATA.COM) */ +/*script in Sql, generate by SdmCreateScript 2024(by IdgValue, qihang.feng@idgvalue.COM) */ /*VERSION 01.10 revised on 2020-08-25 */ /*Brilliance stems from wisdoms. */ /*************Head Section**************************************************************************/ /*Script Use: Periodically load data to :cust_contact_info(客户联系信息) */ -/*Create Date:2024-06-04 15:56:16 */ +/*Create Date:2025-10-17 17:30:22 */ /*SDM Developed By: dev */ /*SDM Developed Date: 2024-01-19 */ /*SDM Checked By: dev */ -/*SDM Checked Date: 2024-06-04 */ +/*SDM Checked Date: 2025-10-17 */ /*Script Developed By: dev */ /*Script Checked By: dev */ /*Source table 1: :PDMDB.t01_crm_account */ @@ -33,12 +33,12 @@ CREATE TEMPORARY TABLE cust_contact_info_agi_CUR_I ( LIKE :COMMDB.cust_contact_info) ON COMMIT PRESERVE ROWS; - + /*****************************************************************************************************/ /* GROUP 1:Source Table:cust_contact_mapping**********************************************************/ /*****************************************************************************************************/ -前置处理INSERT INTO cust_contact_info_agi_CUR_I ( +INSERT INTO cust_contact_info_agi_CUR_I ( contact_id /*联系人ID*/ ,contact /*联系方式*/ ,contact_channel /*联系人渠道*/ @@ -148,19 +148,19 @@ FROM (select p1.contact_id ,p1.user_id as contact ,case when crm_contact ='' and scrm_contact ='' and livechat_contact ='' then 'Udesk' else trim(case when crm_contact <> '' then 'CRM ' else '' end || case when scrm_contact <> '' then 'SCRM ' else '' end ||case when livechat_contact <> '' then 'Livechat ' else '' end) end contact_channel -,coalesce(p2.full_name,p3.full_name,p4.full_name,p5.full_name ,'') full_name -,coalesce(p2.mobile_phone,p3.mobile_phone,p4.mobile_phone,p5.mobile_phone ,'') mobile -,coalesce(p2.email,p3.email,p4.email,'') email -,coalesce(p3.wechat_id,'') wechat -,coalesce(p2.company_name,p3.company_name,p4.company_name,p5.company_name ,'') company -,coalesce(p2.account_name,'') account +,coalesce(p6.name,p2.full_name,p8.contact_name,p3.full_name,p4.full_name,p5.full_name,p7.contact_name ,'') full_name +,coalesce(cast(p6.tel as varchar(15)),p2.mobile_phone,p8.phone,p3.mobile_phone,p4.mobile_phone,p5.mobile_phone,p7.phone ,'') mobile +,coalesce(p6.email,p2.email,p8.email,p3.email,p4.email,p7.email,'') email +,coalesce(p6.external_id,p3.wechat_id,p7.wechat_id,'') wechat +,coalesce(p6.company,p2.company_name,p8.company,p3.company_name,p4.company_name,p5.company_name,p7.account_name ,'') company +,coalesce(p2.account_name,p8.company,p7.account_name,'') account ,case when p2.country_name is not null then p2.country_name when p3.wechat_id is not null then 'China' when p4.visitor_country_code is not null then p4.visitor_country_code - else '' + else 'China' end country -,coalesce(p2.prov_name,p3.prov_name,p5.prov_name ,'') prov_name -,coalesce(p2.city_name,p3.city_name,p5.city_name ,'') city_name +,coalesce(p2.prov_name,p3.prov_name,p8.province,p5.prov_name ,'') prov_name +,coalesce(p2.city_name,p3.city_name,p8.city,p5.city_name,p7.city ,'') city_name ,coalesce(p2.industry) industry ,p1.crm_contact ,coalesce(p2.full_name,'') crm_full_name @@ -195,6 +195,8 @@ p1.contact_id ,coalesce(p5.prov_name,'') udesk_prov_name ,coalesce(p5.city_name,'') udesk_city_name from p30_common.v_cust_contact_mapping_all p1 +left join p30_common.d_ccc_cust_info p6 +on p1.ccc_contact = p6.id left join p30_common.d_crm_contact p2 on p1.crm_contact =p2.crm_contact_account left join p30_common.d_scrm_contact p3 @@ -202,7 +204,11 @@ on p1.scrm_contact =p3.scrm_leads_id left join p30_common.d_livechat_contact p4 on p1.livechat_contact =livechat_leads_id left join p30_common.d_udesk_contact p5 -on p1.udesk_contact =p5.udesk_contact) p1 +on p1.udesk_contact =p5.udesk_contact +left join p30_common.d_jdy_contact_info p7 +on p1.jdy_contact =p7.jdy_contact_id +left join p30_common.d_partner_contact p8 +on p1.partner_contact =p8.contact_id::text) p1 LEFT JOIN :PDMDB.t00_china_city_info p2 ON upper(p2.city_en) = upper(p1.city_name) LEFT JOIN :PDMDB.t00_country_info p3 @@ -212,11 +218,11 @@ LEFT JOIN :PDMDB.t00_country_info p4 LEFT JOIN :PDMDB.t01_crm_account p6 ON p1.crm_account =p6.accountnumber -附加条件 + ; -预处理重跑 + /*从目标表中删除所有数据 cust_contact_info(客户联系信息) */ DELETE FROM :COMMDB.cust_contact_info WHERE ETL_JOB=:ETLJOB; @@ -331,7 +337,7 @@ WHERE ETL_JOB=:ETLJOB; ,P1.etl_batch_no /*作业批次号*/ FROM cust_contact_info_agi_CUR_I P1 - 后置处理 + ; /*****程序结束退出 */ \q