from datetime import datetime from context.common import tianyancha_api from mods.smebiz_rate.company_rate.rate_utils.config import 合同纠纷案由, 劳动仲裁案由 def filter_bg(data: [], company_name): new_data = [] for item in data: add = False for i in item['defendant']: if company_name in i['name']: add = True if add: new_data.append(item) return new_data def load_api_data(company_name): 司法风险, _ = tianyancha_api.get("司法风险", {"keyword": company_name}) # 资质证书, 资质证书数量 = tianyancha_api.get("资质证书", {"keyword": company_name}) # 历史经营异常数量 = tianyancha_api.get_total("历史经营异常", {"keyword": company_name}) 双随机抽查, 双随机抽查数量 = tianyancha_api.get("双随机抽查", {"keyword": company_name}) 双随机抽查详情 = [tianyancha_api.get("双随机抽查详情", {"businessId": item['taskList'][0]['businessId']})[0] for item in 双随机抽查] 质押比例, _ = tianyancha_api.get("质押比例", {"keyword": company_name}) # 破产重整数量 = tianyancha_api.get_total("破产重整", {"keyword": company_name}) # 司法拍卖数量 = tianyancha_api.get_total("司法拍卖", {"keyword": company_name}) 企业基本信息, _ = tianyancha_api.get("企业基本信息", {"keyword": company_name}) # 企业专利信息数量 = tianyancha_api.get_total("企业专利信息", {"keyword": company_name}) # 知识产权出质, _ = tianyancha_api.get("知识产权出质", {"keyword": company_name}) 税务评级, _ = tianyancha_api.get("税务评级", {"keyword": company_name}) 进出口信用, _ = tianyancha_api.get("进出口信用", {"keyword": company_name}) 税收违法数量 = tianyancha_api.get_total("税收违法", {"keyword": company_name}) 欠税公告数量 = tianyancha_api.get_total("欠税公告", {"keyword": company_name}) # 行政许可数量 = tianyancha_api.get_total("行政许可", {"keyword": company_name}) 行政处罚数量 = tianyancha_api.get_total("行政处罚", {"keyword": company_name}) 经营异常数量 = tianyancha_api.get_total("经营异常", {"keyword": company_name}) 严重违法数量 = tianyancha_api.get_total("严重违法", {"keyword": company_name}) # 终本案件数量 = tianyancha_api.get_total("终本案件", {"keyword": company_name}) 失信被执行人数量 = tianyancha_api.get_total("失信被执行人", {"keyword": company_name}) 被执行人数量 = tianyancha_api.get_total("被执行人", {"keyword": company_name}) 限制消费令数量 = tianyancha_api.get_total("限制消费令", {"keyword": company_name}) 股权变更, _ = tianyancha_api.get("股权变更", {"keyword": company_name}) 新闻舆情, _ = tianyancha_api.get("新闻舆情", {"name": company_name}, page=1) 成立年限 = datetime.now().year - datetime.fromtimestamp( 企业基本信息['estiblishTime'] / 1000).year if 企业基本信息 else 0 公司类型 = 企业基本信息['companyOrgType'] 开庭公告_劳动争议 = len( [item["caseReason"] for item in filter_bg(司法风险['ktAnnouncementList'], company_name) if item['caseReason'] in 劳动仲裁案由]) if 司法风险 else 0 开庭公告_被告_合同纠纷 = len( [item["caseReason"] for item in 司法风险['ktAnnouncementList'] if item["caseReason"] and item["caseReason"] in 合同纠纷案由]) if 司法风险 else 0 纳税信用等级 = 税务评级[0]['grade'] if 税务评级 else "M" 双随机抽查结果 = '合格' for item in 双随机抽查详情: for child in item: if child['checkResult'] != '未发现问题': 双随机抽查结果 = '批评和处罚' break now = datetime.now() 近三年股东变更次数 = len([item for item in 股权变更 if datetime.fromtimestamp(item['change_time'] / 1000) > now.replace(year=now.year - 3)]) 最近10条企业舆情负面占比 = len([item for item in 新闻舆情 if item['emotion'] == -1]) / 10 * 100 data = { "成立年限": 成立年限, "公司类型": 公司类型, # "股东性质": None, "近三年股东变更次数": 近三年股东变更次数, "最近10条企业舆情负面占比": 最近10条企业舆情负面占比, "开庭公告(被告-合同纠纷、劳动争议)": 开庭公告_劳动争议 + 开庭公告_被告_合同纠纷, "纳税信用等级": 纳税信用等级, "双随机抽查结果": 双随机抽查结果, "经营异常": 经营异常数量, "欠税公告": 欠税公告数量, "行政处罚": 行政处罚数量, "被执行人": 被执行人数量, "失信被执行人": 失信被执行人数量, "税收违法": 税收违法数量, "严重违法": 严重违法数量 } return data