From 83e71ae81bb3d4e6ff0cd8f7736a92f809c9eb75 Mon Sep 17 00:00:00 2001 From: liangzai <2440983361@qq.com> Date: Mon, 20 Apr 2026 19:11:49 +0800 Subject: [PATCH] f --- .../processors/jrzq/jrzq6f2a_field_keys.go | 833 ++++++++++++++++++ .../processors/jrzq/jrzq6f2a_processor.go | 198 ++++- 2 files changed, 1017 insertions(+), 14 deletions(-) create mode 100644 internal/domains/api/services/processors/jrzq/jrzq6f2a_field_keys.go diff --git a/internal/domains/api/services/processors/jrzq/jrzq6f2a_field_keys.go b/internal/domains/api/services/processors/jrzq/jrzq6f2a_field_keys.go new file mode 100644 index 0000000..1a6271d --- /dev/null +++ b/internal/domains/api/services/processors/jrzq/jrzq6f2a_field_keys.go @@ -0,0 +1,833 @@ +package jrzq + +var jrzq6F2AVariableKeys = []string{ + "flag_applyloanstr", + "als_d7_id_pdl_allnum", + "als_d7_id_pdl_orgnum", + "als_d7_id_caon_allnum", + "als_d7_id_caon_orgnum", + "als_d7_id_rel_allnum", + "als_d7_id_rel_orgnum", + "als_d7_id_caoff_allnum", + "als_d7_id_caoff_orgnum", + "als_d7_id_cooff_allnum", + "als_d7_id_cooff_orgnum", + "als_d7_id_af_allnum", + "als_d7_id_af_orgnum", + "als_d7_id_coon_allnum", + "als_d7_id_coon_orgnum", + "als_d7_id_oth_allnum", + "als_d7_id_oth_orgnum", + "als_d7_id_bank_selfnum", + "als_d7_id_bank_allnum", + "als_d7_id_bank_tra_allnum", + "als_d7_id_bank_ret_allnum", + "als_d7_id_bank_orgnum", + "als_d7_id_bank_tra_orgnum", + "als_d7_id_bank_ret_orgnum", + "als_d7_id_bank_week_allnum", + "als_d7_id_bank_week_orgnum", + "als_d7_id_bank_night_allnum", + "als_d7_id_bank_night_orgnum", + "als_d7_id_nbank_selfnum", + "als_d7_id_nbank_allnum", + "als_d7_id_nbank_p2p_allnum", + "als_d7_id_nbank_mc_allnum", + "als_d7_id_nbank_ca_allnum", + "als_d7_id_nbank_cf_allnum", + "als_d7_id_nbank_com_allnum", + "als_d7_id_nbank_oth_allnum", + "als_d7_id_nbank_nsloan_allnum", + "als_d7_id_nbank_autofin_allnum", + "als_d7_id_nbank_sloan_allnum", + "als_d7_id_nbank_cons_allnum", + "als_d7_id_nbank_finlea_allnum", + "als_d7_id_nbank_else_allnum", + "als_d7_id_nbank_orgnum", + "als_d7_id_nbank_p2p_orgnum", + "als_d7_id_nbank_mc_orgnum", + "als_d7_id_nbank_ca_orgnum", + "als_d7_id_nbank_cf_orgnum", + "als_d7_id_nbank_com_orgnum", + "als_d7_id_nbank_oth_orgnum", + "als_d7_id_nbank_nsloan_orgnum", + "als_d7_id_nbank_autofin_orgnum", + "als_d7_id_nbank_sloan_orgnum", + "als_d7_id_nbank_cons_orgnum", + "als_d7_id_nbank_finlea_orgnum", + "als_d7_id_nbank_else_orgnum", + "als_d7_id_nbank_week_allnum", + "als_d7_id_nbank_week_orgnum", + "als_d7_id_nbank_night_allnum", + "als_d7_id_nbank_night_orgnum", + "als_d7_cell_pdl_allnum", + "als_d7_cell_pdl_orgnum", + "als_d7_cell_caon_allnum", + "als_d7_cell_caon_orgnum", + "als_d7_cell_rel_allnum", + "als_d7_cell_rel_orgnum", + "als_d7_cell_caoff_allnum", + "als_d7_cell_caoff_orgnum", + "als_d7_cell_cooff_allnum", + "als_d7_cell_cooff_orgnum", + "als_d7_cell_af_allnum", + "als_d7_cell_af_orgnum", + "als_d7_cell_coon_allnum", + "als_d7_cell_coon_orgnum", + "als_d7_cell_oth_allnum", + "als_d7_cell_oth_orgnum", + "als_d7_cell_bank_selfnum", + "als_d7_cell_bank_allnum", + "als_d7_cell_bank_tra_allnum", + "als_d7_cell_bank_ret_allnum", + "als_d7_cell_bank_orgnum", + "als_d7_cell_bank_tra_orgnum", + "als_d7_cell_bank_ret_orgnum", + "als_d7_cell_bank_week_allnum", + "als_d7_cell_bank_week_orgnum", + "als_d7_cell_bank_night_allnum", + "als_d7_cell_bank_night_orgnum", + "als_d7_cell_nbank_selfnum", + "als_d7_cell_nbank_allnum", + "als_d7_cell_nbank_p2p_allnum", + "als_d7_cell_nbank_mc_allnum", + "als_d7_cell_nbank_ca_allnum", + "als_d7_cell_nbank_cf_allnum", + "als_d7_cell_nbank_com_allnum", + "als_d7_cell_nbank_oth_allnum", + "als_d7_cell_nbank_nsloan_allnum", + "als_d7_cell_nbank_autofin_allnum", + "als_d7_cell_nbank_sloan_allnum", + "als_d7_cell_nbank_cons_allnum", + "als_d7_cell_nbank_finlea_allnum", + "als_d7_cell_nbank_else_allnum", + "als_d7_cell_nbank_orgnum", + "als_d7_cell_nbank_p2p_orgnum", + "als_d7_cell_nbank_mc_orgnum", + "als_d7_cell_nbank_ca_orgnum", + "als_d7_cell_nbank_cf_orgnum", + "als_d7_cell_nbank_com_orgnum", + "als_d7_cell_nbank_oth_orgnum", + "als_d7_cell_nbank_nsloan_orgnum", + "als_d7_cell_nbank_autofin_orgnum", + "als_d7_cell_nbank_sloan_orgnum", + "als_d7_cell_nbank_cons_orgnum", + "als_d7_cell_nbank_finlea_orgnum", + "als_d7_cell_nbank_else_orgnum", + "als_d7_cell_nbank_week_allnum", + "als_d7_cell_nbank_week_orgnum", + "als_d7_cell_nbank_night_allnum", + "als_d7_cell_nbank_night_orgnum", + "als_d15_id_pdl_allnum", + "als_d15_id_pdl_orgnum", + "als_d15_id_caon_allnum", + "als_d15_id_caon_orgnum", + "als_d15_id_rel_allnum", + "als_d15_id_rel_orgnum", + "als_d15_id_caoff_allnum", + "als_d15_id_caoff_orgnum", + "als_d15_id_cooff_allnum", + "als_d15_id_cooff_orgnum", + "als_d15_id_af_allnum", + "als_d15_id_af_orgnum", + "als_d15_id_coon_allnum", + "als_d15_id_coon_orgnum", + "als_d15_id_oth_allnum", + "als_d15_id_oth_orgnum", + "als_d15_id_bank_selfnum", + "als_d15_id_bank_allnum", + "als_d15_id_bank_tra_allnum", + "als_d15_id_bank_ret_allnum", + "als_d15_id_bank_orgnum", + "als_d15_id_bank_tra_orgnum", + "als_d15_id_bank_ret_orgnum", + "als_d15_id_bank_week_allnum", + "als_d15_id_bank_week_orgnum", + "als_d15_id_bank_night_allnum", + "als_d15_id_bank_night_orgnum", + "als_d15_id_nbank_selfnum", + "als_d15_id_nbank_allnum", + "als_d15_id_nbank_p2p_allnum", + "als_d15_id_nbank_mc_allnum", + "als_d15_id_nbank_ca_allnum", + "als_d15_id_nbank_cf_allnum", + "als_d15_id_nbank_com_allnum", + "als_d15_id_nbank_oth_allnum", + "als_d15_id_nbank_nsloan_allnum", + "als_d15_id_nbank_autofin_allnum", + "als_d15_id_nbank_sloan_allnum", + "als_d15_id_nbank_cons_allnum", + "als_d15_id_nbank_finlea_allnum", + "als_d15_id_nbank_else_allnum", + "als_d15_id_nbank_orgnum", + "als_d15_id_nbank_p2p_orgnum", + "als_d15_id_nbank_mc_orgnum", + "als_d15_id_nbank_ca_orgnum", + "als_d15_id_nbank_cf_orgnum", + "als_d15_id_nbank_com_orgnum", + "als_d15_id_nbank_oth_orgnum", + "als_d15_id_nbank_nsloan_orgnum", + "als_d15_id_nbank_autofin_orgnum", + "als_d15_id_nbank_sloan_orgnum", + "als_d15_id_nbank_cons_orgnum", + "als_d15_id_nbank_finlea_orgnum", + "als_d15_id_nbank_else_orgnum", + "als_d15_id_nbank_week_allnum", + "als_d15_id_nbank_week_orgnum", + "als_d15_id_nbank_night_allnum", + "als_d15_id_nbank_night_orgnum", + "als_d15_cell_pdl_allnum", + "als_d15_cell_pdl_orgnum", + "als_d15_cell_caon_allnum", + "als_d15_cell_caon_orgnum", + "als_d15_cell_rel_allnum", + "als_d15_cell_rel_orgnum", + "als_d15_cell_caoff_allnum", + "als_d15_cell_caoff_orgnum", + "als_d15_cell_cooff_allnum", + "als_d15_cell_cooff_orgnum", + "als_d15_cell_af_allnum", + "als_d15_cell_af_orgnum", + "als_d15_cell_coon_allnum", + "als_d15_cell_coon_orgnum", + "als_d15_cell_oth_allnum", + "als_d15_cell_oth_orgnum", + "als_d15_cell_bank_selfnum", + "als_d15_cell_bank_allnum", + "als_d15_cell_bank_tra_allnum", + "als_d15_cell_bank_ret_allnum", + "als_d15_cell_bank_orgnum", + "als_d15_cell_bank_tra_orgnum", + "als_d15_cell_bank_ret_orgnum", + "als_d15_cell_bank_week_allnum", + "als_d15_cell_bank_week_orgnum", + "als_d15_cell_bank_night_allnum", + "als_d15_cell_bank_night_orgnum", + "als_d15_cell_nbank_selfnum", + "als_d15_cell_nbank_allnum", + "als_d15_cell_nbank_p2p_allnum", + "als_d15_cell_nbank_mc_allnum", + "als_d15_cell_nbank_ca_allnum", + "als_d15_cell_nbank_cf_allnum", + "als_d15_cell_nbank_com_allnum", + "als_d15_cell_nbank_oth_allnum", + "als_d15_cell_nbank_nsloan_allnum", + "als_d15_cell_nbank_autofin_allnum", + "als_d15_cell_nbank_sloan_allnum", + "als_d15_cell_nbank_cons_allnum", + "als_d15_cell_nbank_finlea_allnum", + "als_d15_cell_nbank_else_allnum", + "als_d15_cell_nbank_orgnum", + "als_d15_cell_nbank_p2p_orgnum", + "als_d15_cell_nbank_mc_orgnum", + "als_d15_cell_nbank_ca_orgnum", + "als_d15_cell_nbank_cf_orgnum", + "als_d15_cell_nbank_com_orgnum", + "als_d15_cell_nbank_oth_orgnum", + "als_d15_cell_nbank_nsloan_orgnum", + "als_d15_cell_nbank_autofin_orgnum", + "als_d15_cell_nbank_sloan_orgnum", + "als_d15_cell_nbank_cons_orgnum", + "als_d15_cell_nbank_finlea_orgnum", + "als_d15_cell_nbank_else_orgnum", + "als_d15_cell_nbank_week_allnum", + "als_d15_cell_nbank_week_orgnum", + "als_d15_cell_nbank_night_allnum", + "als_d15_cell_nbank_night_orgnum", + "als_m1_id_pdl_allnum", + "als_m1_id_pdl_orgnum", + "als_m1_id_caon_allnum", + "als_m1_id_caon_orgnum", + "als_m1_id_rel_allnum", + "als_m1_id_rel_orgnum", + "als_m1_id_caoff_allnum", + "als_m1_id_caoff_orgnum", + "als_m1_id_cooff_allnum", + "als_m1_id_cooff_orgnum", + "als_m1_id_af_allnum", + "als_m1_id_af_orgnum", + "als_m1_id_coon_allnum", + "als_m1_id_coon_orgnum", + "als_m1_id_oth_allnum", + "als_m1_id_oth_orgnum", + "als_m1_id_bank_selfnum", + "als_m1_id_bank_allnum", + "als_m1_id_bank_tra_allnum", + "als_m1_id_bank_ret_allnum", + "als_m1_id_bank_orgnum", + "als_m1_id_bank_tra_orgnum", + "als_m1_id_bank_ret_orgnum", + "als_m1_id_bank_week_allnum", + "als_m1_id_bank_week_orgnum", + "als_m1_id_bank_night_allnum", + "als_m1_id_bank_night_orgnum", + "als_m1_id_nbank_selfnum", + "als_m1_id_nbank_allnum", + "als_m1_id_nbank_p2p_allnum", + "als_m1_id_nbank_mc_allnum", + "als_m1_id_nbank_ca_allnum", + "als_m1_id_nbank_cf_allnum", + "als_m1_id_nbank_com_allnum", + "als_m1_id_nbank_oth_allnum", + "als_m1_id_nbank_nsloan_allnum", + "als_m1_id_nbank_autofin_allnum", + "als_m1_id_nbank_sloan_allnum", + "als_m1_id_nbank_cons_allnum", + "als_m1_id_nbank_finlea_allnum", + "als_m1_id_nbank_else_allnum", + "als_m1_id_nbank_orgnum", + "als_m1_id_nbank_p2p_orgnum", + "als_m1_id_nbank_mc_orgnum", + "als_m1_id_nbank_ca_orgnum", + "als_m1_id_nbank_cf_orgnum", + "als_m1_id_nbank_com_orgnum", + "als_m1_id_nbank_oth_orgnum", + "als_m1_id_nbank_nsloan_orgnum", + "als_m1_id_nbank_autofin_orgnum", + "als_m1_id_nbank_sloan_orgnum", + "als_m1_id_nbank_cons_orgnum", + "als_m1_id_nbank_finlea_orgnum", + "als_m1_id_nbank_else_orgnum", + "als_m1_id_nbank_week_allnum", + "als_m1_id_nbank_week_orgnum", + "als_m1_id_nbank_night_allnum", + "als_m1_id_nbank_night_orgnum", + "als_m1_cell_pdl_allnum", + "als_m1_cell_pdl_orgnum", + "als_m1_cell_caon_allnum", + "als_m1_cell_caon_orgnum", + "als_m1_cell_rel_allnum", + "als_m1_cell_rel_orgnum", + "als_m1_cell_caoff_allnum", + "als_m1_cell_caoff_orgnum", + "als_m1_cell_cooff_allnum", + "als_m1_cell_cooff_orgnum", + "als_m1_cell_af_allnum", + "als_m1_cell_af_orgnum", + "als_m1_cell_coon_allnum", + "als_m1_cell_coon_orgnum", + "als_m1_cell_oth_allnum", + "als_m1_cell_oth_orgnum", + "als_m1_cell_bank_selfnum", + "als_m1_cell_bank_allnum", + "als_m1_cell_bank_tra_allnum", + "als_m1_cell_bank_ret_allnum", + "als_m1_cell_bank_orgnum", + "als_m1_cell_bank_tra_orgnum", + "als_m1_cell_bank_ret_orgnum", + "als_m1_cell_bank_week_allnum", + "als_m1_cell_bank_week_orgnum", + "als_m1_cell_bank_night_allnum", + "als_m1_cell_bank_night_orgnum", + "als_m1_cell_nbank_selfnum", + "als_m1_cell_nbank_allnum", + "als_m1_cell_nbank_p2p_allnum", + "als_m1_cell_nbank_mc_allnum", + "als_m1_cell_nbank_ca_allnum", + "als_m1_cell_nbank_cf_allnum", + "als_m1_cell_nbank_com_allnum", + "als_m1_cell_nbank_oth_allnum", + "als_m1_cell_nbank_nsloan_allnum", + "als_m1_cell_nbank_autofin_allnum", + "als_m1_cell_nbank_sloan_allnum", + "als_m1_cell_nbank_cons_allnum", + "als_m1_cell_nbank_finlea_allnum", + "als_m1_cell_nbank_else_allnum", + "als_m1_cell_nbank_orgnum", + "als_m1_cell_nbank_p2p_orgnum", + "als_m1_cell_nbank_mc_orgnum", + "als_m1_cell_nbank_ca_orgnum", + "als_m1_cell_nbank_cf_orgnum", + "als_m1_cell_nbank_com_orgnum", + "als_m1_cell_nbank_oth_orgnum", + "als_m1_cell_nbank_nsloan_orgnum", + "als_m1_cell_nbank_autofin_orgnum", + "als_m1_cell_nbank_sloan_orgnum", + "als_m1_cell_nbank_cons_orgnum", + "als_m1_cell_nbank_finlea_orgnum", + "als_m1_cell_nbank_else_orgnum", + "als_m1_cell_nbank_week_allnum", + "als_m1_cell_nbank_week_orgnum", + "als_m1_cell_nbank_night_allnum", + "als_m1_cell_nbank_night_orgnum", + "als_m3_id_max_inteday", + "als_m3_id_min_inteday", + "als_m3_id_tot_mons", + "als_m3_id_avg_monnum", + "als_m3_id_max_monnum", + "als_m3_id_min_monnum", + "als_m3_id_pdl_allnum", + "als_m3_id_pdl_orgnum", + "als_m3_id_caon_allnum", + "als_m3_id_caon_orgnum", + "als_m3_id_rel_allnum", + "als_m3_id_rel_orgnum", + "als_m3_id_caoff_allnum", + "als_m3_id_caoff_orgnum", + "als_m3_id_cooff_allnum", + "als_m3_id_cooff_orgnum", + "als_m3_id_af_allnum", + "als_m3_id_af_orgnum", + "als_m3_id_coon_allnum", + "als_m3_id_coon_orgnum", + "als_m3_id_oth_allnum", + "als_m3_id_oth_orgnum", + "als_m3_id_bank_selfnum", + "als_m3_id_bank_allnum", + "als_m3_id_bank_tra_allnum", + "als_m3_id_bank_ret_allnum", + "als_m3_id_bank_orgnum", + "als_m3_id_bank_tra_orgnum", + "als_m3_id_bank_ret_orgnum", + "als_m3_id_bank_tot_mons", + "als_m3_id_bank_avg_monnum", + "als_m3_id_bank_max_monnum", + "als_m3_id_bank_min_monnum", + "als_m3_id_bank_max_inteday", + "als_m3_id_bank_min_inteday", + "als_m3_id_bank_week_allnum", + "als_m3_id_bank_week_orgnum", + "als_m3_id_bank_night_allnum", + "als_m3_id_bank_night_orgnum", + "als_m3_id_nbank_selfnum", + "als_m3_id_nbank_allnum", + "als_m3_id_nbank_p2p_allnum", + "als_m3_id_nbank_mc_allnum", + "als_m3_id_nbank_ca_allnum", + "als_m3_id_nbank_cf_allnum", + "als_m3_id_nbank_com_allnum", + "als_m3_id_nbank_oth_allnum", + "als_m3_id_nbank_nsloan_allnum", + "als_m3_id_nbank_autofin_allnum", + "als_m3_id_nbank_sloan_allnum", + "als_m3_id_nbank_cons_allnum", + "als_m3_id_nbank_finlea_allnum", + "als_m3_id_nbank_else_allnum", + "als_m3_id_nbank_orgnum", + "als_m3_id_nbank_p2p_orgnum", + "als_m3_id_nbank_mc_orgnum", + "als_m3_id_nbank_ca_orgnum", + "als_m3_id_nbank_cf_orgnum", + "als_m3_id_nbank_com_orgnum", + "als_m3_id_nbank_oth_orgnum", + "als_m3_id_nbank_nsloan_orgnum", + "als_m3_id_nbank_autofin_orgnum", + "als_m3_id_nbank_sloan_orgnum", + "als_m3_id_nbank_cons_orgnum", + "als_m3_id_nbank_finlea_orgnum", + "als_m3_id_nbank_else_orgnum", + "als_m3_id_nbank_tot_mons", + "als_m3_id_nbank_avg_monnum", + "als_m3_id_nbank_max_monnum", + "als_m3_id_nbank_min_monnum", + "als_m3_id_nbank_max_inteday", + "als_m3_id_nbank_min_inteday", + "als_m3_id_nbank_week_allnum", + "als_m3_id_nbank_week_orgnum", + "als_m3_id_nbank_night_allnum", + "als_m3_id_nbank_night_orgnum", + "als_m3_cell_max_inteday", + "als_m3_cell_min_inteday", + "als_m3_cell_tot_mons", + "als_m3_cell_avg_monnum", + "als_m3_cell_max_monnum", + "als_m3_cell_min_monnum", + "als_m3_cell_pdl_allnum", + "als_m3_cell_pdl_orgnum", + "als_m3_cell_caon_allnum", + "als_m3_cell_caon_orgnum", + "als_m3_cell_rel_allnum", + "als_m3_cell_rel_orgnum", + "als_m3_cell_caoff_allnum", + "als_m3_cell_caoff_orgnum", + "als_m3_cell_cooff_allnum", + "als_m3_cell_cooff_orgnum", + "als_m3_cell_af_allnum", + "als_m3_cell_af_orgnum", + "als_m3_cell_coon_allnum", + "als_m3_cell_coon_orgnum", + "als_m3_cell_oth_allnum", + "als_m3_cell_oth_orgnum", + "als_m3_cell_bank_selfnum", + "als_m3_cell_bank_allnum", + "als_m3_cell_bank_tra_allnum", + "als_m3_cell_bank_ret_allnum", + "als_m3_cell_bank_orgnum", + "als_m3_cell_bank_tra_orgnum", + "als_m3_cell_bank_ret_orgnum", + "als_m3_cell_bank_tot_mons", + "als_m3_cell_bank_avg_monnum", + "als_m3_cell_bank_max_monnum", + "als_m3_cell_bank_min_monnum", + "als_m3_cell_bank_max_inteday", + "als_m3_cell_bank_min_inteday", + "als_m3_cell_bank_week_allnum", + "als_m3_cell_bank_week_orgnum", + "als_m3_cell_bank_night_allnum", + "als_m3_cell_bank_night_orgnum", + "als_m3_cell_nbank_selfnum", + "als_m3_cell_nbank_allnum", + "als_m3_cell_nbank_p2p_allnum", + "als_m3_cell_nbank_mc_allnum", + "als_m3_cell_nbank_ca_allnum", + "als_m3_cell_nbank_cf_allnum", + "als_m3_cell_nbank_com_allnum", + "als_m3_cell_nbank_oth_allnum", + "als_m3_cell_nbank_nsloan_allnum", + "als_m3_cell_nbank_autofin_allnum", + "als_m3_cell_nbank_sloan_allnum", + "als_m3_cell_nbank_cons_allnum", + "als_m3_cell_nbank_finlea_allnum", + "als_m3_cell_nbank_else_allnum", + "als_m3_cell_nbank_orgnum", + "als_m3_cell_nbank_p2p_orgnum", + "als_m3_cell_nbank_mc_orgnum", + "als_m3_cell_nbank_ca_orgnum", + "als_m3_cell_nbank_cf_orgnum", + "als_m3_cell_nbank_com_orgnum", + "als_m3_cell_nbank_oth_orgnum", + "als_m3_cell_nbank_nsloan_orgnum", + "als_m3_cell_nbank_autofin_orgnum", + "als_m3_cell_nbank_sloan_orgnum", + "als_m3_cell_nbank_cons_orgnum", + "als_m3_cell_nbank_finlea_orgnum", + "als_m3_cell_nbank_else_orgnum", + "als_m3_cell_nbank_tot_mons", + "als_m3_cell_nbank_avg_monnum", + "als_m3_cell_nbank_max_monnum", + "als_m3_cell_nbank_min_monnum", + "als_m3_cell_nbank_max_inteday", + "als_m3_cell_nbank_min_inteday", + "als_m3_cell_nbank_week_allnum", + "als_m3_cell_nbank_week_orgnum", + "als_m3_cell_nbank_night_allnum", + "als_m3_cell_nbank_night_orgnum", + "als_m6_id_max_inteday", + "als_m6_id_min_inteday", + "als_m6_id_tot_mons", + "als_m6_id_avg_monnum", + "als_m6_id_max_monnum", + "als_m6_id_min_monnum", + "als_m6_id_pdl_allnum", + "als_m6_id_pdl_orgnum", + "als_m6_id_caon_allnum", + "als_m6_id_caon_orgnum", + "als_m6_id_rel_allnum", + "als_m6_id_rel_orgnum", + "als_m6_id_caoff_allnum", + "als_m6_id_caoff_orgnum", + "als_m6_id_cooff_allnum", + "als_m6_id_cooff_orgnum", + "als_m6_id_af_allnum", + "als_m6_id_af_orgnum", + "als_m6_id_coon_allnum", + "als_m6_id_coon_orgnum", + "als_m6_id_oth_allnum", + "als_m6_id_oth_orgnum", + "als_m6_id_bank_selfnum", + "als_m6_id_bank_allnum", + "als_m6_id_bank_tra_allnum", + "als_m6_id_bank_ret_allnum", + "als_m6_id_bank_orgnum", + "als_m6_id_bank_tra_orgnum", + "als_m6_id_bank_ret_orgnum", + "als_m6_id_bank_tot_mons", + "als_m6_id_bank_avg_monnum", + "als_m6_id_bank_max_monnum", + "als_m6_id_bank_min_monnum", + "als_m6_id_bank_max_inteday", + "als_m6_id_bank_min_inteday", + "als_m6_id_bank_week_allnum", + "als_m6_id_bank_week_orgnum", + "als_m6_id_bank_night_allnum", + "als_m6_id_bank_night_orgnum", + "als_m6_id_nbank_selfnum", + "als_m6_id_nbank_allnum", + "als_m6_id_nbank_p2p_allnum", + "als_m6_id_nbank_mc_allnum", + "als_m6_id_nbank_ca_allnum", + "als_m6_id_nbank_cf_allnum", + "als_m6_id_nbank_com_allnum", + "als_m6_id_nbank_oth_allnum", + "als_m6_id_nbank_nsloan_allnum", + "als_m6_id_nbank_autofin_allnum", + "als_m6_id_nbank_sloan_allnum", + "als_m6_id_nbank_cons_allnum", + "als_m6_id_nbank_finlea_allnum", + "als_m6_id_nbank_else_allnum", + "als_m6_id_nbank_orgnum", + "als_m6_id_nbank_p2p_orgnum", + "als_m6_id_nbank_mc_orgnum", + "als_m6_id_nbank_ca_orgnum", + "als_m6_id_nbank_cf_orgnum", + "als_m6_id_nbank_com_orgnum", + "als_m6_id_nbank_oth_orgnum", + "als_m6_id_nbank_nsloan_orgnum", + "als_m6_id_nbank_autofin_orgnum", + "als_m6_id_nbank_sloan_orgnum", + "als_m6_id_nbank_cons_orgnum", + "als_m6_id_nbank_finlea_orgnum", + "als_m6_id_nbank_else_orgnum", + "als_m6_id_nbank_tot_mons", + "als_m6_id_nbank_avg_monnum", + "als_m6_id_nbank_max_monnum", + "als_m6_id_nbank_min_monnum", + "als_m6_id_nbank_max_inteday", + "als_m6_id_nbank_min_inteday", + "als_m6_id_nbank_week_allnum", + "als_m6_id_nbank_week_orgnum", + "als_m6_id_nbank_night_allnum", + "als_m6_id_nbank_night_orgnum", + "als_m6_cell_max_inteday", + "als_m6_cell_min_inteday", + "als_m6_cell_tot_mons", + "als_m6_cell_avg_monnum", + "als_m6_cell_max_monnum", + "als_m6_cell_min_monnum", + "als_m6_cell_pdl_allnum", + "als_m6_cell_pdl_orgnum", + "als_m6_cell_caon_allnum", + "als_m6_cell_caon_orgnum", + "als_m6_cell_rel_allnum", + "als_m6_cell_rel_orgnum", + "als_m6_cell_caoff_allnum", + "als_m6_cell_caoff_orgnum", + "als_m6_cell_cooff_allnum", + "als_m6_cell_cooff_orgnum", + "als_m6_cell_af_allnum", + "als_m6_cell_af_orgnum", + "als_m6_cell_coon_allnum", + "als_m6_cell_coon_orgnum", + "als_m6_cell_oth_allnum", + "als_m6_cell_oth_orgnum", + "als_m6_cell_bank_selfnum", + "als_m6_cell_bank_allnum", + "als_m6_cell_bank_tra_allnum", + "als_m6_cell_bank_ret_allnum", + "als_m6_cell_bank_orgnum", + "als_m6_cell_bank_tra_orgnum", + "als_m6_cell_bank_ret_orgnum", + "als_m6_cell_bank_tot_mons", + "als_m6_cell_bank_avg_monnum", + "als_m6_cell_bank_max_monnum", + "als_m6_cell_bank_min_monnum", + "als_m6_cell_bank_max_inteday", + "als_m6_cell_bank_min_inteday", + "als_m6_cell_bank_week_allnum", + "als_m6_cell_bank_week_orgnum", + "als_m6_cell_bank_night_allnum", + "als_m6_cell_bank_night_orgnum", + "als_m6_cell_nbank_selfnum", + "als_m6_cell_nbank_allnum", + "als_m6_cell_nbank_p2p_allnum", + "als_m6_cell_nbank_mc_allnum", + "als_m6_cell_nbank_ca_allnum", + "als_m6_cell_nbank_cf_allnum", + "als_m6_cell_nbank_com_allnum", + "als_m6_cell_nbank_oth_allnum", + "als_m6_cell_nbank_nsloan_allnum", + "als_m6_cell_nbank_autofin_allnum", + "als_m6_cell_nbank_sloan_allnum", + "als_m6_cell_nbank_cons_allnum", + "als_m6_cell_nbank_finlea_allnum", + "als_m6_cell_nbank_else_allnum", + "als_m6_cell_nbank_orgnum", + "als_m6_cell_nbank_p2p_orgnum", + "als_m6_cell_nbank_mc_orgnum", + "als_m6_cell_nbank_ca_orgnum", + "als_m6_cell_nbank_cf_orgnum", + "als_m6_cell_nbank_com_orgnum", + "als_m6_cell_nbank_oth_orgnum", + "als_m6_cell_nbank_nsloan_orgnum", + "als_m6_cell_nbank_autofin_orgnum", + "als_m6_cell_nbank_sloan_orgnum", + "als_m6_cell_nbank_cons_orgnum", + "als_m6_cell_nbank_finlea_orgnum", + "als_m6_cell_nbank_else_orgnum", + "als_m6_cell_nbank_tot_mons", + "als_m6_cell_nbank_avg_monnum", + "als_m6_cell_nbank_max_monnum", + "als_m6_cell_nbank_min_monnum", + "als_m6_cell_nbank_max_inteday", + "als_m6_cell_nbank_min_inteday", + "als_m6_cell_nbank_week_allnum", + "als_m6_cell_nbank_week_orgnum", + "als_m6_cell_nbank_night_allnum", + "als_m6_cell_nbank_night_orgnum", + "als_m12_id_max_inteday", + "als_m12_id_min_inteday", + "als_m12_id_tot_mons", + "als_m12_id_avg_monnum", + "als_m12_id_max_monnum", + "als_m12_id_min_monnum", + "als_m12_id_pdl_allnum", + "als_m12_id_pdl_orgnum", + "als_m12_id_caon_allnum", + "als_m12_id_caon_orgnum", + "als_m12_id_rel_allnum", + "als_m12_id_rel_orgnum", + "als_m12_id_caoff_allnum", + "als_m12_id_caoff_orgnum", + "als_m12_id_cooff_allnum", + "als_m12_id_cooff_orgnum", + "als_m12_id_af_allnum", + "als_m12_id_af_orgnum", + "als_m12_id_coon_allnum", + "als_m12_id_coon_orgnum", + "als_m12_id_oth_allnum", + "als_m12_id_oth_orgnum", + "als_m12_id_bank_selfnum", + "als_m12_id_bank_allnum", + "als_m12_id_bank_tra_allnum", + "als_m12_id_bank_ret_allnum", + "als_m12_id_bank_orgnum", + "als_m12_id_bank_tra_orgnum", + "als_m12_id_bank_ret_orgnum", + "als_m12_id_bank_tot_mons", + "als_m12_id_bank_avg_monnum", + "als_m12_id_bank_max_monnum", + "als_m12_id_bank_min_monnum", + "als_m12_id_bank_max_inteday", + "als_m12_id_bank_min_inteday", + "als_m12_id_bank_week_allnum", + "als_m12_id_bank_week_orgnum", + "als_m12_id_bank_night_allnum", + "als_m12_id_bank_night_orgnum", + "als_m12_id_nbank_selfnum", + "als_m12_id_nbank_allnum", + "als_m12_id_nbank_p2p_allnum", + "als_m12_id_nbank_mc_allnum", + "als_m12_id_nbank_ca_allnum", + "als_m12_id_nbank_cf_allnum", + "als_m12_id_nbank_com_allnum", + "als_m12_id_nbank_oth_allnum", + "als_m12_id_nbank_nsloan_allnum", + "als_m12_id_nbank_autofin_allnum", + "als_m12_id_nbank_sloan_allnum", + "als_m12_id_nbank_cons_allnum", + "als_m12_id_nbank_finlea_allnum", + "als_m12_id_nbank_else_allnum", + "als_m12_id_nbank_orgnum", + "als_m12_id_nbank_p2p_orgnum", + "als_m12_id_nbank_mc_orgnum", + "als_m12_id_nbank_ca_orgnum", + "als_m12_id_nbank_cf_orgnum", + "als_m12_id_nbank_com_orgnum", + "als_m12_id_nbank_oth_orgnum", + "als_m12_id_nbank_nsloan_orgnum", + "als_m12_id_nbank_autofin_orgnum", + "als_m12_id_nbank_sloan_orgnum", + "als_m12_id_nbank_cons_orgnum", + "als_m12_id_nbank_finlea_orgnum", + "als_m12_id_nbank_else_orgnum", + "als_m12_id_nbank_tot_mons", + "als_m12_id_nbank_avg_monnum", + "als_m12_id_nbank_max_monnum", + "als_m12_id_nbank_min_monnum", + "als_m12_id_nbank_max_inteday", + "als_m12_id_nbank_min_inteday", + "als_m12_id_nbank_week_allnum", + "als_m12_id_nbank_week_orgnum", + "als_m12_id_nbank_night_allnum", + "als_m12_id_nbank_night_orgnum", + "als_m12_cell_max_inteday", + "als_m12_cell_min_inteday", + "als_m12_cell_tot_mons", + "als_m12_cell_avg_monnum", + "als_m12_cell_max_monnum", + "als_m12_cell_min_monnum", + "als_m12_cell_pdl_allnum", + "als_m12_cell_pdl_orgnum", + "als_m12_cell_caon_allnum", + "als_m12_cell_caon_orgnum", + "als_m12_cell_rel_allnum", + "als_m12_cell_rel_orgnum", + "als_m12_cell_caoff_allnum", + "als_m12_cell_caoff_orgnum", + "als_m12_cell_cooff_allnum", + "als_m12_cell_cooff_orgnum", + "als_m12_cell_af_allnum", + "als_m12_cell_af_orgnum", + "als_m12_cell_coon_allnum", + "als_m12_cell_coon_orgnum", + "als_m12_cell_oth_allnum", + "als_m12_cell_oth_orgnum", + "als_m12_cell_bank_selfnum", + "als_m12_cell_bank_allnum", + "als_m12_cell_bank_tra_allnum", + "als_m12_cell_bank_ret_allnum", + "als_m12_cell_bank_orgnum", + "als_m12_cell_bank_tra_orgnum", + "als_m12_cell_bank_ret_orgnum", + "als_m12_cell_bank_tot_mons", + "als_m12_cell_bank_avg_monnum", + "als_m12_cell_bank_max_monnum", + "als_m12_cell_bank_min_monnum", + "als_m12_cell_bank_max_inteday", + "als_m12_cell_bank_min_inteday", + "als_m12_cell_bank_week_allnum", + "als_m12_cell_bank_week_orgnum", + "als_m12_cell_bank_night_allnum", + "als_m12_cell_bank_night_orgnum", + "als_m12_cell_nbank_selfnum", + "als_m12_cell_nbank_allnum", + "als_m12_cell_nbank_p2p_allnum", + "als_m12_cell_nbank_mc_allnum", + "als_m12_cell_nbank_ca_allnum", + "als_m12_cell_nbank_cf_allnum", + "als_m12_cell_nbank_com_allnum", + "als_m12_cell_nbank_oth_allnum", + "als_m12_cell_nbank_nsloan_allnum", + "als_m12_cell_nbank_autofin_allnum", + "als_m12_cell_nbank_sloan_allnum", + "als_m12_cell_nbank_cons_allnum", + "als_m12_cell_nbank_finlea_allnum", + "als_m12_cell_nbank_else_allnum", + "als_m12_cell_nbank_orgnum", + "als_m12_cell_nbank_p2p_orgnum", + "als_m12_cell_nbank_mc_orgnum", + "als_m12_cell_nbank_ca_orgnum", + "als_m12_cell_nbank_cf_orgnum", + "als_m12_cell_nbank_com_orgnum", + "als_m12_cell_nbank_oth_orgnum", + "als_m12_cell_nbank_nsloan_orgnum", + "als_m12_cell_nbank_autofin_orgnum", + "als_m12_cell_nbank_sloan_orgnum", + "als_m12_cell_nbank_cons_orgnum", + "als_m12_cell_nbank_finlea_orgnum", + "als_m12_cell_nbank_else_orgnum", + "als_m12_cell_nbank_tot_mons", + "als_m12_cell_nbank_avg_monnum", + "als_m12_cell_nbank_max_monnum", + "als_m12_cell_nbank_min_monnum", + "als_m12_cell_nbank_max_inteday", + "als_m12_cell_nbank_min_inteday", + "als_m12_cell_nbank_week_allnum", + "als_m12_cell_nbank_week_orgnum", + "als_m12_cell_nbank_night_allnum", + "als_m12_cell_nbank_night_orgnum", + "als_fst_id_bank_inteday", + "als_fst_id_nbank_inteday", + "als_fst_cell_bank_inteday", + "als_fst_cell_nbank_inteday", + "als_lst_id_bank_inteday", + "als_lst_id_bank_consnum", + "als_lst_id_bank_csinteday", + "als_lst_id_nbank_inteday", + "als_lst_id_nbank_consnum", + "als_lst_id_nbank_csinteday", + "als_lst_cell_bank_inteday", + "als_lst_cell_bank_consnum", + "als_lst_cell_bank_csinteday", + "als_lst_cell_nbank_inteday", + "als_lst_cell_nbank_consnum", + "als_lst_cell_nbank_csinteday", +} + +var jrzq6F2AKeySet = func() map[string]struct{} { + m := make(map[string]struct{}, len(jrzq6F2AVariableKeys)) + for _, key := range jrzq6F2AVariableKeys { + m[key] = struct{}{} + } + return m +}() diff --git a/internal/domains/api/services/processors/jrzq/jrzq6f2a_processor.go b/internal/domains/api/services/processors/jrzq/jrzq6f2a_processor.go index d85a385..a677d56 100644 --- a/internal/domains/api/services/processors/jrzq/jrzq6f2a_processor.go +++ b/internal/domains/api/services/processors/jrzq/jrzq6f2a_processor.go @@ -4,10 +4,11 @@ import ( "context" "encoding/json" "errors" + "strings" "tyapi-server/internal/domains/api/dto" "tyapi-server/internal/domains/api/services/processors" - "tyapi-server/internal/infrastructure/external/xingwei" + "tyapi-server/internal/infrastructure/external/zhicha" ) // ProcessJRZQ6F2ARequest JRZQ6F2A API处理方法 - 借贷申请记录 @@ -21,27 +22,196 @@ func ProcessJRZQ6F2ARequest(ctx context.Context, params []byte, deps *processors return nil, errors.Join(processors.ErrInvalidParam, err) } - // 构建请求数据,将项目规范的字段名转换为 XingweiService 需要的字段名 - reqData := map[string]interface{}{ - "name": paramsDto.Name, - "idCardNum": paramsDto.IDCard, - "phoneNumber": paramsDto.MobileNo, + encryptedName, err := deps.ZhichaService.Encrypt(paramsDto.Name) + if err != nil { + return nil, errors.Join(processors.ErrSystem, err) } - // 调用行为数据API,使用指定的project_id - projectID := "CDJ-1101695369065984000" - respBytes, err := deps.XingweiService.CallAPI(ctx, projectID, reqData) + encryptedIDCard, err := deps.ZhichaService.Encrypt(paramsDto.IDCard) if err != nil { - if errors.Is(err, xingwei.ErrNotFound) { - return nil, errors.Join(processors.ErrNotFound, err) - } else if errors.Is(err, xingwei.ErrDatasource) { + return nil, errors.Join(processors.ErrSystem, err) + } + + encryptedMobileNo, err := deps.ZhichaService.Encrypt(paramsDto.MobileNo) + if err != nil { + return nil, errors.Join(processors.ErrSystem, err) + } + + reqData := map[string]interface{}{ + "name": encryptedName, + "idCard": encryptedIDCard, + "phone": encryptedMobileNo, + "authorized": "1", + } + + respData, err := deps.ZhichaService.CallAPI(ctx, "ZCI017", reqData) + if err != nil { + if errors.Is(err, zhicha.ErrDatasource) { return nil, errors.Join(processors.ErrDatasource, err) - } else if errors.Is(err, xingwei.ErrSystem) { - return nil, errors.Join(processors.ErrSystem, err) } else { return nil, errors.Join(processors.ErrSystem, err) } } + respMap, ok := respData.(map[string]interface{}) + if !ok { + return nil, errors.Join(processors.ErrSystem, errors.New("响应格式错误")) + } + + result := mapJRZQ3C7BToJRZQ6F2A(respMap) + + respBytes, err := json.Marshal(result) + if err != nil { + return nil, errors.Join(processors.ErrSystem, err) + } + return respBytes, nil } + +func mapJRZQ3C7BToJRZQ6F2A(src map[string]interface{}) map[string]interface{} { + variableValue := buildDefaultVariableValue() + + // 如果源已经是平铺字段,优先直接覆盖,兼容不同返回形态。 + copyDirectFlattenFields(variableValue, src) + + periods := []string{"d7", "d15", "m1", "m3", "m6", "m12"} + for _, period := range periods { + periodData := asMap(src[period]) + if len(periodData) == 0 { + continue + } + + for _, scope := range []string{"id", "cell"} { + scopeData := asMap(periodData[scope]) + if len(scopeData) == 0 { + continue + } + flattenPeriodScope(variableValue, period, scope, scopeData) + } + } + + return map[string]interface{}{ + "risk_screen_v2": map[string]interface{}{ + "fulinHitFlag": 1, + "models": []interface{}{}, + "variables": []interface{}{map[string]interface{}{"variableName": "bairong_applyloan_extend", "variableValue": variableValue}}, + "code": "OK", + "decision": "accept", + "propertyValidations": []interface{}{}, + "strategies": []interface{}{}, + "scenes": []interface{}{}, + "validateInfo": map[string]interface{}{"productCodes": []interface{}{}}, + "id": "", + "message": "业务处理成功!", + "knowledge": map[string]interface{}{}, + }, + } +} + +func flattenPeriodScope(target map[string]interface{}, period, scope string, scopeData map[string]interface{}) { + basePrefix := "als_" + period + "_" + scope + "_" + + // 先处理 scope 级基础字段(例如 tot_mons/max_monnum/min_monnum/avg_monnum) + copyScalarFields(target, basePrefix, scopeData) + + for key, raw := range scopeData { + child := asMap(raw) + if len(child) == 0 { + continue + } + + sectionPrefix := basePrefix + key + "_" + copyScalarFields(target, sectionPrefix, child) + + // 对周末字段做兼容命名映射 + copyAliasIfPresent(target, sectionPrefix, child, "weekend_allnum", "week_allnum") + copyAliasIfPresent(target, sectionPrefix, child, "weekend_orgnum", "week_orgnum") + + // 对 top_* 与 *_d 字段做兜底映射,尽可能补齐常用 allnum/orgnum + if _, ok := target[sectionPrefix+"allnum"]; !ok { + copyAliasIfPresent(target, sectionPrefix, child, "top_allnum", "allnum") + copyAliasIfPresent(target, sectionPrefix, child, "allnum_d", "allnum") + } + if _, ok := target[sectionPrefix+"orgnum"]; !ok { + copyAliasIfPresent(target, sectionPrefix, child, "top_orgnum", "orgnum") + copyAliasIfPresent(target, sectionPrefix, child, "orgnum_d", "orgnum") + } + } +} + +func copyScalarFields(target map[string]interface{}, prefix string, src map[string]interface{}) { + for k, v := range src { + if isScalar(v) { + setVariableField(target, prefix+normalizeMetricName(k), v) + } + } +} + +func copyAliasIfPresent(target map[string]interface{}, prefix string, src map[string]interface{}, from, to string) { + if v, ok := src[from]; ok && isScalar(v) { + setVariableField(target, prefix+to, v) + } +} + +func copyDirectFlattenFields(target map[string]interface{}, src map[string]interface{}) { + for k, v := range src { + if !isScalar(v) { + continue + } + // 允许直接覆盖文档字段以及兼容字段 + setVariableField(target, k, v) + } +} + +func normalizeMetricName(name string) string { + switch name { + case "weekend_allnum": + return "week_allnum" + case "weekend_orgnum": + return "week_orgnum" + default: + return strings.TrimSpace(name) + } +} + +func isScalar(v interface{}) bool { + switch v.(type) { + case nil: + return false + case string, bool, float64, int, int32, int64, uint, uint32, uint64: + return true + default: + return false + } +} + +func asMap(v interface{}) map[string]interface{} { + if v == nil { + return map[string]interface{}{} + } + if m, ok := v.(map[string]interface{}); ok { + return m + } + return map[string]interface{}{} +} + +func buildDefaultVariableValue() map[string]interface{} { + m := make(map[string]interface{}, len(jrzq6F2AVariableKeys)+3) + for _, key := range jrzq6F2AVariableKeys { + m[key] = "" + } + + // 兼容历史示例中出现的附加字段 + m["als_Flag_applyloanstr"] = "1" + m["code"] = "00" + m["swift_number"] = "" + m["flag_applyloanstr"] = "1" + return m +} + +func setVariableField(target map[string]interface{}, key string, value interface{}) { + _, inDoc := jrzq6F2AKeySet[key] + if inDoc || key == "als_Flag_applyloanstr" || key == "code" || key == "swift_number" { + target[key] = value + } +}