add workflow 泰克CRM,dev

This commit is contained in:
root 2026-01-14 16:37:52 +08:00
parent 089b5a6a00
commit 551adc3fda
5 changed files with 51 additions and 11 deletions

View File

@ -3,12 +3,14 @@ DROP TABLE IF EXISTS p20_pdm.t01_crm_raw_leads;
CREATE TABLE IF NOT EXISTS p20_pdm.t01_crm_raw_leads (
crm_contact_account varchar(20)
, lead_number varchar(20)
, account_manager varchar(100)
, name varchar(50)
, create_time timestamp(0)
, company_name varchar(50)
, channel_type varchar(50)
, email varchar(50)
, mobile_phone varchar(20)
, qualification_group varchar(100)
, mql_time varchar(20)
, campaign_name varchar(50)
, industry varchar(20)
@ -27,12 +29,14 @@ CREATE TABLE IF NOT EXISTS p20_pdm.t01_crm_raw_leads (
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.crm_contact_account IS 'CRM_CONTACT账号';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.lead_number IS 'lead_number';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.account_manager IS '销售';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.name IS '姓名';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.create_time IS '创建时间';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.company_name IS '公司名称';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.channel_type IS '渠道类型';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.email IS '电子邮箱';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.mobile_phone IS '手机号';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.qualification_group IS '资历组别';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.mql_time IS 'mql时间';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.campaign_name IS '活动名称';
COMMENT ON COLUMN p20_pdm.t01_crm_raw_leads.industry IS '行业';

View File

@ -4,11 +4,11 @@
/*Brilliance stems from wisdoms. */
/*************Head Section**************************************************************************/
/*Script Use: Periodically load data to :t01_crm_raw_leads(CRM原始线索) */
/*Create Date:2025-12-25 19:27:00 */
/*Create Date:2026-01-14 16:37:23 */
/*SDM Developed By: dev */
/*SDM Developed Date: 2024-01-12 */
/*SDM Checked By: dev */
/*SDM Checked Date: 2025-12-25 */
/*SDM Checked Date: 2026-01-14 */
/*Script Developed By: dev */
/*Script Checked By: dev */
/*Source table 1: p10_sa.s98_s_crm_raw_leads */
@ -44,12 +44,14 @@ ON COMMIT PRESERVE ROWS;
INSERT INTO t01_crm_raw_leads_agi_CUR_I (
crm_contact_account /*CRM_CONTACT账号*/
,lead_number /*lead_number*/
,account_manager /*销售*/
,name /*姓名*/
,create_time /*创建时间*/
,company_name /*公司名称*/
,channel_type /*渠道类型*/
,email /*电子邮箱*/
,mobile_phone /*手机号*/
,qualification_group /*资历组别*/
,mql_time /*mql时间*/
,campaign_name /*活动名称*/
,industry /*行业*/
@ -67,16 +69,18 @@ INSERT INTO t01_crm_raw_leads_agi_CUR_I (
SELECT
COALESCE(TRIM(CAST(p0.tek_contactnumber AS varchar(20))),'') /*crm_contact_account*/
,COALESCE(TRIM(CAST(p0.tek_leadnumber AS varchar(20))),'') /*lead_number*/
,COALESCE(TRIM(CAST(p0.tek_accountmanager_leadname AS varchar(100))),'') /*account_manager*/
,COALESCE(TRIM(CAST(p0.fullname AS varchar(50))),'') /*name*/
,COALESCE(TO_TIMESTAMP(CAST(p0.createdon AS VARCHAR(19)),'YYYY/MM/DD HH24:mi:ss'),TO_TIMESTAMP('19000102','YYYYMMDD')) /*create_time*/
,COALESCE(TRIM(CAST(p0.companyname AS varchar(50))),'') /*company_name*/
,COALESCE(TRIM(CAST(p0.tek_channelidname AS varchar(50))),'') /*channel_type*/
,COALESCE(TRIM(CAST(p0.emailaddress1 AS varchar(50))),'') /*email*/
,COALESCE(TRIM(CAST(p0.mobilephone AS varchar(100))),'') /*mobile_phone*/
,COALESCE(TRIM(CAST(p0.mobilephone AS varchar(20))),'') /*mobile_phone*/
,COALESCE(TRIM(CAST(p0.tek_qualificationgroupname AS varchar(100))),'') /*qualification_group*/
,case when p0.tek_mqldate = 'NULL' THEN TO_TIMESTAMP('19000102','YYYYMMDD') ELSE COALESCE(TO_TIMESTAMP(CAST(p0.tek_mqldate AS VARCHAR(19)),'YYYY/MM/DD HH24:mi:ss'),TO_TIMESTAMP('19000102','YYYYMMDD')) END /*mql_time*/
,COALESCE(TRIM(CAST(p0.campaignidname AS varchar(50))),'') /*campaign_name*/
,COALESCE(TRIM(CAST(p0.tek_industry2idname AS varchar(100))),'') /*industry*/
,COALESCE(TRIM(CAST(p0.tek_marketing_program_type_idname AS varchar(100))),'') /*market_type*/
,COALESCE(TRIM(CAST(p0.tek_industry2idname AS varchar(20))),'') /*industry*/
,COALESCE(TRIM(CAST(p0.tek_marketing_program_type_idname AS varchar(20))),'') /*market_type*/
,case when p0.tek_sqldate = '' THEN TO_TIMESTAMP('19000102','YYYYMMDD') ELSE COALESCE(TO_TIMESTAMP(CAST(p0.tek_sqldate AS VARCHAR(19)),'YYYY/MM/DD HH24:mi:ss'),TO_TIMESTAMP('19000102','YYYYMMDD')) END /*tek_sqldate*/
,COALESCE(TRIM(p0.tek_assigntopartnercompanyidname),'') /*tek_assigntopartnercompanyidname*/
,0 /*Etl_Batch_No*/
@ -94,12 +98,14 @@ FROM p10_sa.s98_s_crm_raw_leads p0
/*将不同数据插入到临时表 */
;INSERT INTO t01_crm_raw_leads_agi_INS (
name /*姓名*/
account_manager /*销售*/
,name /*姓名*/
,create_time /*创建时间*/
,company_name /*公司名称*/
,channel_type /*渠道类型*/
,email /*电子邮箱*/
,mobile_phone /*手机号*/
,qualification_group /*资历组别*/
,mql_time /*mql时间*/
,campaign_name /*活动名称*/
,industry /*行业*/
@ -118,12 +124,14 @@ FROM p10_sa.s98_s_crm_raw_leads p0
)
SELECT
P1.name /*姓名*/
P1.account_manager /*销售*/
,P1.name /*姓名*/
,P1.create_time /*创建时间*/
,P1.company_name /*公司名称*/
,P1.channel_type /*渠道类型*/
,P1.email /*电子邮箱*/
,P1.mobile_phone /*手机号*/
,P1.qualification_group /*资历组别*/
,P1.mql_time /*mql时间*/
,P1.campaign_name /*活动名称*/
,P1.industry /*行业*/
@ -142,12 +150,14 @@ FROM p10_sa.s98_s_crm_raw_leads p0
FROM t01_crm_raw_leads_agi_CUR_I P1
LEFT JOIN :PDMDB.t01_crm_raw_leads P2
ON P1.name = P2.name
ON P1.account_manager = P2.account_manager
AND P1.name = P2.name
AND P1.create_time = P2.create_time
AND P1.company_name = P2.company_name
AND P1.channel_type = P2.channel_type
AND P1.email = P2.email
AND P1.mobile_phone = P2.mobile_phone
AND P1.qualification_group = P2.qualification_group
AND P1.mql_time = P2.mql_time
AND P1.campaign_name = P2.campaign_name
AND P1.industry = P2.industry
@ -157,12 +167,14 @@ ON P1.name = P2.name
AND P1.crm_contact_account = P2.crm_contact_account
AND P1.lead_number = P2.lead_number
WHERE P2.name IS NULL
WHERE P2.account_manager IS NULL
OR P2.name IS NULL
OR P2.create_time IS NULL
OR P2.company_name IS NULL
OR P2.channel_type IS NULL
OR P2.email IS NULL
OR P2.mobile_phone IS NULL
OR P2.qualification_group IS NULL
OR P2.mql_time IS NULL
OR P2.campaign_name IS NULL
OR P2.industry IS NULL
@ -175,12 +187,14 @@ WHERE P2.name IS NULL
;
/*将新增数据插入到目标表 */
;INSERT INTO :PDMDB.t01_crm_raw_leads (
name /*姓名*/
account_manager /*销售*/
,name /*姓名*/
,create_time /*创建时间*/
,company_name /*公司名称*/
,channel_type /*渠道类型*/
,email /*电子邮箱*/
,mobile_phone /*手机号*/
,qualification_group /*资历组别*/
,mql_time /*mql时间*/
,campaign_name /*活动名称*/
,industry /*行业*/
@ -199,12 +213,14 @@ WHERE P2.name IS NULL
)
SELECT
P1.name /*姓名*/
P1.account_manager /*销售*/
,P1.name /*姓名*/
,P1.create_time /*创建时间*/
,P1.company_name /*公司名称*/
,P1.channel_type /*渠道类型*/
,P1.email /*电子邮箱*/
,P1.mobile_phone /*手机号*/
,P1.qualification_group /*资历组别*/
,P1.mql_time /*mql时间*/
,P1.campaign_name /*活动名称*/
,P1.industry /*行业*/
@ -226,12 +242,14 @@ ON CONFLICT ( crm_contact_account,lead_number)
DO UPDATE SET
crm_contact_account=excluded.crm_contact_account
,lead_number=excluded.lead_number
,account_manager=excluded.account_manager
,name=excluded.name
,create_time=excluded.create_time
,company_name=excluded.company_name
,channel_type=excluded.channel_type
,email=excluded.email
,mobile_phone=excluded.mobile_phone
,qualification_group=excluded.qualification_group
,mql_time=excluded.mql_time
,campaign_name=excluded.campaign_name
,industry=excluded.industry

View File

@ -7,6 +7,7 @@ delete from p10_sa.S98_S_crm_raw_leads
insert into p10_sa.S98_S_crm_raw_leads
( tek_contactnumber
, tek_leadnumber
, tek_accountmanager_leadname
, fullname
, createdon
, tek_sqldate
@ -17,12 +18,14 @@ insert into p10_sa.S98_S_crm_raw_leads
, mobilephone
, tek_mqldate
, campaignidname
, tek_qualificationgroupname
, tek_industry2idname
, tek_marketing_program_type_idname
, etl_tx_dt )
select
tek_contactnumber
, tek_leadnumber
, tek_accountmanager_leadname
, fullname
, createdon
, tek_sqldate
@ -33,6 +36,7 @@ insert into p10_sa.S98_S_crm_raw_leads
, mobilephone
, tek_mqldate
, campaignidname
, tek_qualificationgroupname
, tek_industry2idname
, tek_marketing_program_type_idname
, etl_tx_dt
@ -44,6 +48,7 @@ insert into p10_sa.S98_S_crm_raw_leads
insert into p12_sfull.S98_S_crm_raw_leads
( tek_contactnumber
, tek_leadnumber
, tek_accountmanager_leadname
, fullname
, createdon
, tek_sqldate
@ -54,12 +59,14 @@ insert into p12_sfull.S98_S_crm_raw_leads
, mobilephone
, tek_mqldate
, campaignidname
, tek_qualificationgroupname
, tek_industry2idname
, tek_marketing_program_type_idname
, etl_tx_dt )
select
tek_contactnumber
, tek_leadnumber
, tek_accountmanager_leadname
, fullname
, createdon
, tek_sqldate
@ -70,6 +77,7 @@ insert into p12_sfull.S98_S_crm_raw_leads
, mobilephone
, tek_mqldate
, campaignidname
, tek_qualificationgroupname
, tek_industry2idname
, tek_marketing_program_type_idname
, etl_tx_dt

View File

@ -2,6 +2,7 @@
CREATE FOREIGN TABLE if not exists p00_tal.S98_S_crm_raw_leads (
tek_contactnumber TEXT
, tek_leadnumber TEXT
, tek_accountmanager_leadname TEXT
, fullname TEXT
, createdon TEXT
, tek_sqldate TEXT
@ -12,6 +13,7 @@ CREATE FOREIGN TABLE if not exists p00_tal.S98_S_crm_raw_leads (
, mobilephone TEXT
, tek_mqldate TEXT
, campaignidname TEXT
, tek_qualificationgroupname TEXT
, tek_industry2idname TEXT
, tek_marketing_program_type_idname TEXT
, etl_tx_dt TIMESTAMP

View File

@ -2,6 +2,7 @@
create table if not exists p10_sa.S98_S_crm_raw_leads (
tek_contactnumber TEXT
, tek_leadnumber TEXT
, tek_accountmanager_leadname TEXT
, fullname TEXT
, createdon TEXT
, tek_sqldate TEXT
@ -12,6 +13,7 @@ create table if not exists p10_sa.S98_S_crm_raw_leads (
, mobilephone TEXT
, tek_mqldate TEXT
, campaignidname TEXT
, tek_qualificationgroupname TEXT
, tek_industry2idname TEXT
, tek_marketing_program_type_idname TEXT
, etl_tx_dt TIMESTAMP
@ -19,6 +21,7 @@ create table if not exists p10_sa.S98_S_crm_raw_leads (
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.tek_contactnumber IS 'tek_contactnumber';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.tek_leadnumber IS 'tek_leadnumber';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.tek_accountmanager_leadname IS 'tek_accountmanager_leadname';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.fullname IS 'fullname';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.createdon IS 'createdon';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.tek_sqldate IS 'tek_sqldate';
@ -29,6 +32,7 @@ create table if not exists p10_sa.S98_S_crm_raw_leads (
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.mobilephone IS 'mobilephone';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.tek_mqldate IS 'tek_mqldate';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.campaignidname IS 'campaignidname';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.tek_qualificationgroupname IS 'tek_qualificationgroupname';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.tek_industry2idname IS 'tek_industry2idname';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.tek_marketing_program_type_idname IS 'tek_marketing_program_type_idname';
COMMENT ON COLUMN p10_sa.S98_S_crm_raw_leads.etl_tx_dt IS '';
@ -40,6 +44,7 @@ COMMENT ON TABLE p10_sa.S98_S_crm_raw_leads IS '';
create table if not exists p12_sfull.S98_S_crm_raw_leads (
tek_contactnumber TEXT
, tek_leadnumber TEXT
, tek_accountmanager_leadname TEXT
, fullname TEXT
, createdon TEXT
, tek_sqldate TEXT
@ -50,6 +55,7 @@ create table if not exists p12_sfull.S98_S_crm_raw_leads (
, mobilephone TEXT
, tek_mqldate TEXT
, campaignidname TEXT
, tek_qualificationgroupname TEXT
, tek_industry2idname TEXT
, tek_marketing_program_type_idname TEXT
, etl_tx_dt TIMESTAMP
@ -57,6 +63,7 @@ create table if not exists p12_sfull.S98_S_crm_raw_leads (
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.tek_contactnumber IS 'tek_contactnumber';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.tek_leadnumber IS 'tek_leadnumber';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.tek_accountmanager_leadname IS 'tek_accountmanager_leadname';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.fullname IS 'fullname';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.createdon IS 'createdon';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.tek_sqldate IS 'tek_sqldate';
@ -67,6 +74,7 @@ create table if not exists p12_sfull.S98_S_crm_raw_leads (
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.mobilephone IS 'mobilephone';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.tek_mqldate IS 'tek_mqldate';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.campaignidname IS 'campaignidname';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.tek_qualificationgroupname IS 'tek_qualificationgroupname';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.tek_industry2idname IS 'tek_industry2idname';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.tek_marketing_program_type_idname IS 'tek_marketing_program_type_idname';
COMMENT ON COLUMN p12_sfull.S98_S_crm_raw_leads.etl_tx_dt IS '';