package utils import ( "io/fs" ) // 常量定义 const ( FormatTime = "15:04:05" //时间格式 FormatTimeHm = "15:04" //时间格式 FormatDate = "2006-01-02" //日期格式 FormatDateUnSpace = "20060102" //日期格式 FormatDateTime = "2006-01-02 15:04:05" //完整时间格式 HlbFormatDateTime = "2006-01-02_15:04:05.999" //完整时间格式 FormatDateTimeUnSpace = "20060102150405" //完整时间格式 FormatShortDateTimeUnSpace = "060102150405" //省去开头两位年份的时间格式 EmptyDateTimeStr = "0000-00-00 00:00:00" //DateTime零值字符串 EmptyDateStr = "0000-00-00" //Date零值字符串 FormatMonthDayUnSpace = "0102" //日期格式 FormatMonthDay = "01-02" //日期格式 FormatYearMonthDate = "2006-01" //日期格式 FormatYearDate = "2006" //日期格式 PageSize15 = 15 //列表页每页数据量 PageSize5 = 5 PageSize10 = 10 PageSize20 = 20 PageSize30 = 30 PageSize50 = 50 ) const DateTypeNYears = 20 //时间类型为最近N年 // 手机号,电子邮箱正则 const ( RegularMobile = "^((13[0-9])|(14[5|7])|(15([0-3]|[5-9]))|(18[0-9])|(17[0-9])|(16[0-9])|(19[0-9]))\\d{8}$" //手机号码 RegularEmail = `\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*` //匹配电子邮箱 ) // 验证码code const ( REGISTER_CODE = iota + 1 //注册 LOGIN_CODE //登录 ) // 管理员,ficc管理员,ficc销售,权益管理员,权益销售。 // 角色类型/类型编码 const ( ROLE_TYPE_ADMIN = "管理员" ROLE_TYPE_FICC_ADMIN = "ficc管理员" ROLE_TYPE_FICC_SELLER = "ficc销售" ROLE_TYPE_RAI_ADMIN = "权益管理员" ROLE_TYPE_RAI_SELLER = "权益销售" ROLE_TYPE_FICC_GROUP = "ficc销售组长" ROLE_TYPE_FICC_MANAGER = "ficc销售主管" ROLE_TYPE_RAI_GROUP = "权益组长" ROLE_TYPE_FICC_DEPARTMENT = "ficc部门经理" ROLE_TYPE_RAI_DEPARTMENT = "权益部门经理" ROLE_TYPE_FICC_RESEARCHR = "ficc研究员" ROLE_TYPE_RAI_RESEARCHR = "权益研究员" ROLE_NAME_FICC_DIRECTOR = "ficc销售经理" // 实际角色类型为ficc销售主管 ROLE_TYPE_CODE_ADMIN = "admin" //管理员 ROLE_TYPE_CODE_FICC_ADMIN = "ficc_admin" //ficc管理员 ROLE_TYPE_CODE_FICC_SELLER = "ficc_seller" //ficc销售 ROLE_TYPE_CODE_RAI_ADMIN = "rai_admin" //权益管理员 ROLE_TYPE_CODE_RAI_SELLER = "rai_seller" //权益销售 ROLE_TYPE_CODE_FICC_GROUP = "ficc_group" //ficc销售主管 ROLE_TYPE_CODE_RAI_GROUP = "rai_group" //ficc组长 ROLE_TYPE_CODE_FICC_DEPARTMENT = "ficc_department" //ficc部门经理 ROLE_TYPE_CODE_RAI_DEPARTMENT = "rai_department" //权益部门经理 ROLE_TYPE_CODE_FICC_RESEARCHR = "ficc_researcher" //ficc研究员 ROLE_TYPE_CODE_RESEARCHR = "researcher" //ficc研究员(最早定义的) ROLE_TYPE_CODE_RAI_RESEARCHR = "rai_researcher" //权益研究员 ROLE_TYPE_CODE_COMPLIANCE = "compliance" //合规角色 ROLE_TYPE_CODE_FINANCE = "finance" //财务角色 ROLE_TYPE_CODE_FICC_TEAM = "ficc_team" //ficc销售组长 ROLE_TYPE_SELLERS = "'ficc_admin','ficc_seller','ficc_team','rai_admin','rai_seller','ficc_group','rai_group','ficc_department','rai_department','compliance','finance'" ) const ( COMPANY_PRODUCT_FICC_ID = 1 COMPANY_PRODUCT_FICC_NAME = "ficc" COMPANY_PRODUCT_RAI_ID = 2 COMPANY_PRODUCT_RAI_NAME = "权益" ) var PermissionFiccClassifyArr = [...]string{"宏观经济", "化工产业", "建材产业", "有色产业", "新能源", "市场策略"} var PermissionAllClassifyArr = [...]string{"宏观经济", "化工产业", "建材产业", "有色产业", "新能源", "市场策略", "权益"} //apply_method:申请类型:1:试用->正式,2:冻结—>试用,3:流失—>正式,4:试用延期,5:原销售申请领取流失客户,6:正式客户申请服务更新 // 数据来源渠道 const ( DATA_SOURCE_THS = iota + 1 //同花顺 DATA_SOURCE_WIND //wind->2 DATA_SOURCE_PB //彭博->3 DATA_SOURCE_CALCULATE //指标运算->4 DATA_SOURCE_CALCULATE_LJZZY //累计值转月->5 DATA_SOURCE_CALCULATE_TBZ //同比值->6 DATA_SOURCE_CALCULATE_TCZ //同差值->7 DATA_SOURCE_CALCULATE_NSZYDPJJS //N数值移动平均计算->8 DATA_SOURCE_MANUAL //手工指标->9 DATA_SOURCE_LZ //隆众->10 DATA_SOURCE_YS //有色->11 DATA_SOURCE_CALCULATE_HBZ //环比值->12 DATA_SOURCE_CALCULATE_HCZ //环差值->13 DATA_SOURCE_CALCULATE_BP //变频->14 DATA_SOURCE_GL //钢联->15 DATA_SOURCE_ZZ //郑商所->16 DATA_SOURCE_DL //大商所->17 DATA_SOURCE_SH //上期所->18 DATA_SOURCE_CFFEX //中金所->19 DATA_SOURCE_SHFE //上期能源->20 DATA_SOURCE_GIE //欧洲天然气->21 DATA_SOURCE_CALCULATE_TIME_SHIFT //时间移位->22 DATA_SOURCE_CALCULATE_ZJPJ //直接拼接->23 DATA_SOURCE_CALCULATE_LJZTBPJ //累计值同比拼接->24 DATA_SOURCE_LT //路透->25 DATA_SOURCE_COAL //中国煤炭网->26 DATA_SOURCE_PYTHON //python代码->27 DATA_SOURCE_PB_FINANCE //彭博财务数据->28 DATA_SOURCE_GOOGLE_TRAVEL //谷歌出行->29 DATA_SOURCE_PREDICT //普通预测指标->30 DATA_SOURCE_PREDICT_CALCULATE //预测指标运算->31 DATA_SOURCE_PREDICT_CALCULATE_TBZ //预测同比值->32 DATA_SOURCE_PREDICT_CALCULATE_TCZ //预测同差值->33 DATA_SOURCE_MYSTEEL_CHEMICAL //钢联化工->34 DATA_SOURCE_CALCULATE_CJJX //超季节性->35 DATA_SOURCE_EIA_STEO //eia steo报告->36 DATA_SOURCE_CALCULATE_NHCC //计算指标(拟合残差)->37 DATA_SOURCE_COM_TRADE //联合国商品贸易数据->38 DATA_SOURCE_PREDICT_CALCULATE_NSZYDPJJS //预测指标 - N数值移动平均计算 -> 39 DATA_SOURCE_CALCULATE_ADJUST //数据调整->40 DATA_SOURCE_SCI //卓创数据(红桃三)->41 DATA_SOURCE_PREDICT_CALCULATE_LJZZY //预测指标 - 累计值转月->42 DATA_SOURCE_PREDICT_CALCULATE_HBZ //预测指标 - 环比值->43 DATA_SOURCE_PREDICT_CALCULATE_HCZ //预测指标 - 环差值->44 DATA_SOURCE_PREDICT_CALCULATE_BP //预测指标 - 变频->45 DATA_SOURCE_PREDICT_CALCULATE_TIME_SHIFT //预测指标 - 时间移位->46 DATA_SOURCE_PREDICT_CALCULATE_ZJPJ //预测指标 - 直接拼接->47 DATA_SOURCE_PREDICT_CALCULATE_LJZTBPJ //预测指标 - 累计值同比拼接->48 DATA_SOURCE_PREDICT_CALCULATE_CJJX //预测指标 - 超季节性->49 DATA_SOURCE_PREDICT_CALCULATE_NHCC //预测指标 - 计算指标(拟合残差)->50 DATA_SOURCE_CALCULATE_JP //变频->51 DATA_SOURCE_CALCULATE_NH //年化->52 DATA_SOURCE_CALCULATE_KSZS //扩散指数->53 DATA_SOURCE_PREDICT_CALCULATE_JP //预测指标 - 计算指标(降频)->54 DATA_SOURCE_PREDICT_CALCULATE_NH //预测指标 - 计算指标(年化)->55 DATA_SOURCE_PREDICT_CALCULATE_KSZS //预测指标 - 计算指标(扩散指数)->56 DATA_SOURCE_BAIINFO //百川盈孚 ->57 DATA_SOURCE_STOCK_PLANT //存量装置 ->58 DATA_SOURCE_CALCULATE_CORRELATION //滚动相关性->59 DATA_SOURCE_NATIONAL_STATISTICS //国家统计局->60 DATA_SOURCE_CALCULATE_LJZZJ //累计值转季 -> 61 DATA_SOURCE_CALCULATE_LJZ //累计值 -> 62 DATA_SOURCE_CALCULATE_LJZNCZJ //累计值(年初至今) -> 63 DATA_SOURCE_PREDICT_CALCULATE_LJZZJ //预测指标 - 累计值转季->64 DATA_SOURCE_PREDICT_CALCULATE_LJZ //预测指标 - 累计值 -> 65 DATA_SOURCE_PREDICT_CALCULATE_LJZNCZJ //预测指标 - 累计值(年初至今) -> 66 DATA_SOURCE_CALCULATE_STANDARD_DEVIATION //标准差->67 DATA_SOURCE_CALCULATE_PERCENTILE //百分位图表->68 DATA_SOURCE_PREDICT_CALCULATE_STANDARD_DEVIATION //预测标准差->69 DATA_SOURCE_PREDICT_CALCULATE_PERCENTILE //预测百分位->70 DATA_SOURCE_FUBAO //富宝->71 DATA_SOURCE_CALCULATE_ZSXY // 指数修匀->72 DATA_SOURCE_PREDICT_CALCULATE_ZSXY // 预测指数修匀->73 DATA_SOURCE_CALCULATE_ZDYFX // 自定义分析->74 DATA_SOURCE_CALCULATE_RJZ // 日均值计算->75 ) // 数据刷新频率 const ( DATA_START_REFRESH_LIMIT = 7 //7个单位,日/周/月/季度/年 DATA_END_DATE_LIMIT = 4 //数据结束日期为,当前日期,加上4年时间 ) const ( DATA_PREFIX = "hz_data" CHART_PREFIX = "hz_chart" EXCEL_DATA_PREFIX = "hz_excel_data" ) const ( EDB_DATA_LIMIT = 10 ) var Hz_Data_WIND_Url_List = []string{"http://datawind.hzinsights.com:8040/", "http://datawind2.hzinsights.com:8040/"} const ( HZ_CHART_LIB_DETAIL = "HZ_CHART_LIB_DETAIL_" //图表数据缓存 HZ_CHART_LIB_EXCEL_TABLE_DETAIL = "HZ_CHART_LIB_EXCEL_TABLE_DETAIL" //excel表格数据缓存 ) // 缓存key const ( CACHE_KEY_LOGS = "HZ_ADMIN_CACHE_KEY_LOGS" //api用户操作日志队列 CACHE_KEY_ADMIN = "calendar:admin:list" //系统用户列表缓存key CACHE_KEY_ADMIN_ID = "calendar:admin:id:list" //系统用户列表缓存key CACHE_KEY_OLD_REPORT_PUBLISH = "HZ_CACHE_KEY_OLD_REPORT_PUBLISH" //老后台报告发布队列 CACHE_ADMIN_YB_CONFIG = "admin:yb_config:" //研报配置相关缓存前缀 CACHE_WIND_URL = "CACHE_WIND_URL" //指标与wind服务器的绑定关系 CACHE_CHART_INFO_DATA = "chart:info:data:" //图表数据 CACHE_CHART_CLASSIFY = "chart:classify" //图表分类数据 CACHE_IMPORT_MANUAL_DATA = "import:manual:data" //手工数据导入后刷新 CACHE_ACCESS_TOKEN_LOGIN = "pc_eta_admin:login:" //管理后台登录 CACHE_ACCESS_TOKEN_LOGIN_NO_TRUST = "pc_eta_admin:login:no_trust:" //管理后台登录(不可信登录态) CACHE_ABNORMAL_LOGIN = "pc_eta_admin:login:abnormal:" //管理后台登录-异常登录 CACHE_LOGIN_ERR_PASS = "pc_eta_admin:login:errPass:" //管理后台登录-输入错误密码次数 CACHE_FIND_PASS_VERIFY = "pc_eta_admin:findPass:verify:" //找回密码校验成功标记 CACHE_KEY_MYSTEEL_REFRESH = "mysteel_chemical:refresh" //钢联化工刷新 CACHE_KEY_DAYNEW_REFRESH = "admin:day_new:refresh" //每日资讯拉取企业微信聊天记录 CACHE_KEY_DAYNEW_TRANSLATE = "admin:day_new:translate" //每日资讯中翻英 CACHE_KEY_ADMIN_OPERATE_RECORD = "HZ_ADMIN_CACHE_ADMIN_OPERATE_RECORD" //系统用户操作日志队列 CACHE_SYNC_ADMIN = "hz_crm_eta:sync_admin" // 同步用户的缓存队列key CACHE_SYNC_ROLE = "hz_crm_eta:sync_role" // 同步角色的缓存队列key CACHE_SYNC_DEPARTMENT = "hz_crm_eta:sync_department" // 同步部门的缓存队列key CACHE_SYNC_GROUP = "hz_crm_eta:sync_group" // 同步分组的缓存队列key CACHE_SYNC_USER_EN_ROLE = "hz_crm_eta:sync_user_en_role" // 同步用户英文权限角色缓存队列key CACHE_SMART_REPORT_EDITING = "eta:smart_report:editing:" // 智能研报用户编辑中 CACHE_SMART_REPORT_SEND_MSG = "eta:smart_report:sending:" // 智能研报用户报告推送 CACHE_PPT_EDITING = "eta:ppt:editing:" // PPT用户编辑中 CACHE_EN_PPT_EDITING = "eta:en_ppt:editing:" // 英文PPT用户编辑中 CACHE_CREATE_REPORT_IMGPDF_QUEUE = "eta_report:report_img_pdf_queue" // 生成报告长图PDF队列 CACHE_EDB_TERMINAL_CODE_URL = "edb:terminal_code:edb_code:" // 指标与终端关系的缓存 ) // 模板消息推送类型 const ( TEMPLATE_MSG_REPORT = iota + 1 //日度点评报告推送 ) // 研报类型标识 var ( REPORT_TYPE_DAY = "day" REPORT_TYPE_WEEK = "week" REPORT_TYPE_TWO_WEEK = "two_week" REPORT_TYPE_MONTH = "month" REPORT_TYPE_OTHER = "other" ) // GetFiccAdminDepartmentIds 获取ficc管理员的所属部门 func GetFiccAdminDepartmentIds() (idStr string) { if RunMode == "release" { idStr = `1,2,4,6` } else { idStr = `1,2,6` } return } const ( ReportFrequencyDay = "日度" ReportFrequencyWeek = "周度" ReportFrequencyTwoWeek = "双周度" ReportFrequencyMonth = "月度" ReportFrequencyDefault = "不定时" ) // 图表类型 const ( CHART_SOURCE_DEFAULT = 1 CHART_SOURCE_FUTURE_GOOD = 2 CHART_SOURCE_CORRELATION = 3 // 相关性图表 CHART_SOURCE_ROLLING_CORRELATION = 4 // 滚动相关性图表 CHART_SOURCE_FUTURE_GOOD_PROFIT = 5 // 商品利润曲线 CHART_SOURCE_LINE_EQUATION = 6 // 拟合方程图表 CHART_SOURCE_LINE_FEATURE_STANDARD_DEVIATION = 7 // 统计特征-标准差图表 CHART_SOURCE_LINE_FEATURE_PERCENTILE = 8 // 统计特征-百分位图表 CHART_SOURCE_LINE_FEATURE_FREQUENCY = 9 // 统计特征-频率分布图表 CHART_SOURCE_CROSS_HEDGING = 10 // 跨品种分析图表 ) // 批量配置图表的位置来源 const ( CHART_MULTIPLE_GRAPH_CURVE = 1 // 曲线图 CHART_MULTIPLE_GRAPH_CORRELATION = 2 // 相关性图 CHART_MULTIPLE_GRAPH_ROLLING_CORRELATION_ONE = 3 // 滚动相关性图1 CHART_MULTIPLE_GRAPH_ROLLING_CORRELATION_TWO = 4 // 滚动相关性图2 CHART_MULTIPLE_GRAPH_LINE_EQUATION_ONE = 5 // 拟合方程-斜率图 CHART_MULTIPLE_GRAPH_LINE_EQUATION_TWO = 6 // 拟合方程-截距图 CHART_MULTIPLE_GRAPH_LINE_EQUATION_THREE = 7 // 拟合方程-相关性图 CHART_MULTIPLE_GRAPH_LINE_FEATURE_STANDARD_DEVIATION = 8 // 统计特征-标准差图表 CHART_MULTIPLE_GRAPH_LINE_FEATURE_PERCENTILE = 9 // 统计特征-百分位图表 CHART_MULTIPLE_GRAPH_LINE_FEATURE_FREQUENCY = 10 // 统计特征-频率分布图表 ) // ETA表格 const ( EXCEL_DEFAULT = 1 // 自定义excel TIME_TABLE = 2 // 时间序列表格 MIXED_TABLE = 3 // 混合表格 CUSTOM_ANALYSIS_TABLE = 4 // 自定义分析表格 ) // 图表样式类型 const ( CHART_TYPE_CURVE = 1 //曲线图 CHART_TYPE_BAR = 7 //柱形图 CHART_TYPE_SECTION_SCATTER = 10 //截面散点图样式 ) // 指标类型 const ( EDB_INFO_TYPE = 0 //指标类型 0:普通指标 PREDICT_EDB_INFO_TYPE = 1 //指标类型 1:预测指标 ) // FrequencyDaysMap 频度日期的map关系 var FrequencyDaysMap = map[string]int{ "天": 1, "周": 7, "月": 30, "季": 90, "年": 365, } const ( AiChatLimit = 50 ) // 系统来源 const ( SOURCE_ETA_FLAG = 2 ) // BusinessCodeSalt 商家编码盐值 const BusinessCodeSalt = "dr7WY0OZgGR7upw1" // 自用商户号 const ( BusinessCodeSandbox = "E2023080700" // 试用平台 BusinessCodeRelease = "E2023080900" // 生产环境 ) // 验证码 const ( CaptchaCachePrefix = "captcha:lock:eta_" // 验证码缓存Key VerifyCodeExpireMinute = 15 // 短信/邮箱验证码过期时间-分钟 SmsLoginTplId = "65692" // 【弘则研究】您的验证码是XXX,如非本人操作,请忽略本短信 SmsNewLoginTplId = "254663" // 【弘则研究】您的验证码是XXX,有效期15分钟 ) const CrmEtaAuthorization = "NIi1RbEmH0C2rksXtPGDPBBgRgTZY87Q" const LoginCacheTime = 60 // 登录缓存时长, 分钟 // 对象存储客户端 const ( STORAGESOURCE_OSS = 1 //阿里云OSS STORAGESOURCE_MINIO = 2 //MinIo ) // DIR_MOD 目录创建权限 const DIR_MOD fs.FileMode = 0766 // Unix permission bits // 子数据来源渠道 const ( DATA_SUB_SOURCE_EDB = iota //经济数据库 DATA_SUB_SOURCE_DATE //日期序列 ) const ( WindDbWsd = "wsd" ThsDs = "thsds" ) const ( UserLoginSalt = "MiQM9yusNA9T2uIH" // 用户登录盐值 DesKeySalt = "JMCqSoUrTAmyNNIRb0TtlrPk" // DesKey盐值 )