diff --git a/mods/smebiz_rate/company_rate/rate_utils/utils.py b/mods/smebiz_rate/company_rate/rate_utils/utils.py index bfba1bd..ba3e6da 100644 --- a/mods/smebiz_rate/company_rate/rate_utils/utils.py +++ b/mods/smebiz_rate/company_rate/rate_utils/utils.py @@ -191,6 +191,34 @@ def load_api_data(company_name): return data +from datetime import datetime + + +def num_to_chinese(num): + digit_to_chinese_dic = { + '0': '零', + '1': '一', + '2': '二', + '3': '三', + '4': '四', + '5': '五', + '6': '六', + '7': '七', + '8': '八', + '9': '九' + } + return ''.join([digit_to_chinese_dic[digit] for digit in str(num)]) + + +def convert_to_chinese_date(date): + # 定义数字和中文数字的映射关系 + year = num_to_chinese(date.year) + month = num_to_chinese(date.month) + day = num_to_chinese(date.day) + chinese_date = f"{year}年{month}月{day}日" + return chinese_date + + def load_report_need_data(db: Session, rate_id): item: CompanyRate = db.query(CompanyRate).filter(CompanyRate.id == rate_id).first() if not item.rate_level: @@ -242,14 +270,14 @@ def load_report_need_data(db: Session, rate_id): # } data = { "企业名称": company_name, - "年份": f"{datetime.now().year - 2000}", - "月份": f"{datetime.now().month}", + "年份": f"{num_to_chinese(datetime.now().year)[-2:]}", + "月份": f"{num_to_chinese(datetime.now().month)}", "报告编号": "中小商协[2023]0111号", "信用级别": rate_res.data.评级结果.级别, "证书编码": f"{datetime.now().strftime('%y%m%d')}{str(rate_id).rjust(6, '0')}", - "有效日期": f"{item.rate_time.strftime('%Y%m%d')}至{(datetime.fromtimestamp(item.rate_time.timestamp()).replace(year=item.rate_time.year + 3) - timedelta(days=1)).strftime('%Y%m%d')}", - "通知书日期": item.rate_time.strftime('%Y%m%d'), - "申明日期": item.rate_time.strftime('%Y%m%d'), + "有效日期": f"{convert_to_chinese_date(item.rate_time)}至{convert_to_chinese_date((datetime.fromtimestamp(item.rate_time.timestamp()).replace(year=item.rate_time.year + 3) - timedelta(days=1)))}", + "通知书日期": convert_to_chinese_date(item.rate_time).replace('零', '〇'), + "申明日期": convert_to_chinese_date(item.rate_time).replace('零', '〇'), "所属国民经济行业": 工商信息['industry'] or '--', "企业中文名称": company_name, "英文名称": 工商信息["property3"] or '--', @@ -313,46 +341,48 @@ def load_report_need_data(db: Session, rate_id): "社会责任实施": man_data["社会责任实施"] or '--', "企业资质": "、".join({item['certificateName'] for item in 资质证书}), "商标信息": [ - {"申请日期": item["appDate"], "商标": item["tmPic"], "商标名称": item["tmName"], "注册号": item["regNo"], - "类别": item["intCls"], "流程状态": item["status"]} for item in 知识产权['tmList']] if 知识产权 else [], + {"申请日期": item["appDate"], "商标": item["tmPic"], "商标名称": item["tmName"], + "注册号": item["regNo"], + "类别": item["intCls"], "流程状态": item["status"]} for item in 知识产权['tmList']][ + 0:50] if 知识产权 else [], "专利信息": [ - { - "申请日": item["applicationTime"], - "专利名称": item["patentName"], - "专利类型": item["patentType"], - "专利状态": item["lawStatus"][0]['status'] if item['lawStatus'] else '--', - "申请号": item["appNumber"], - "公开号": item["applicationPublishNum"], - "公开日": item["applicationPublishTime"], - "发明人": item["inventor"] - } for item in 知识产权['patentList']] if 知识产权 else [], + { + "申请日": item["applicationTime"], + "专利名称": item["patentName"], + "专利类型": item["patentType"], + "专利状态": item["lawStatus"][0]['status'] if item['lawStatus'] else '--', + "申请号": item["appNumber"], + "公开号": item["applicationPublishNum"], + "公开日": item["applicationPublishTime"], + "发明人": item["inventor"] + } for item in 知识产权['patentList']][0:50] if 知识产权 else [], "软件著作权": [ - { - "批准日期": item["regTime"], - "软件全称": item["fullName"], - "软件简称": item["simpleName"], - "登记号": item["regNum"], - "分类号": item["catNum"], - "版本号": item["version"], - } for item in 知识产权['copyRegList']] if 知识产权 else [], + { + "批准日期": item["regTime"], + "软件全称": item["fullName"], + "软件简称": item["simpleName"], + "登记号": item["regNum"], + "分类号": item["catNum"], + "版本号": item["version"], + } for item in 知识产权['copyRegList']][0:50] if 知识产权 else [], "主要供应商情况": [ - { - "供应商名称": item["supplier_name"], - "主工采购产品种类": "--", - "年平均采购额": item["amt"], - } for item in 供应商['pageBean']['result'] - ] if 供应商 else [], + { + "供应商名称": item["supplier_name"], + "主工采购产品种类": "--", + "年平均采购额": item["amt"], + } for item in 供应商['pageBean']['result'] + ][0:50] if 供应商 else [], "招投标情况": [ - { - "发布时间": item["publishTime"], - "标题": item["title"], - "采购人": item["purchaser"], - } for item in 企业招投标信息 - ] if 企业招投标信息 else [], + { + "发布时间": item["publishTime"], + "标题": item["title"], + "采购人": item["purchaser"], + } for item in 企业招投标信息 + ][0:50] if 企业招投标信息 else [], "主要财务数据": { - "2022年": 财务问卷['2022年'], - "2021年": 财务问卷['2021年'], - "2020年": 财务问卷['2020年'], + "2022年": {k: v if v is not None else '--' for k, v in 财务问卷['2022年'].items()}, + "2021年": {k: v if v is not None else '--' for k, v in 财务问卷['2021年'].items()}, + "2020年": {k: v if v is not None else '--' for k, v in 财务问卷['2020年'].items()}, } } for key, v in data.items():