From ad137f9a1e80c1cf0f4eeca29794b479777eba52 Mon Sep 17 00:00:00 2001 From: P3ngSaM <61768364+P3ngSaM@users.noreply.github.com> Date: Thu, 5 May 2022 16:20:53 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E8=B0=83=E6=95=B4rating=E5=8C=85?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Rating}/CreditImpl.py | 9 +++-- {Rating/Esg => Implements/Rating}/EsgImpl.py | 5 ++- Objects/Common/Rating/FECRRating.py | 37 +++++++++++++++++++ .../InProject/Rating}/__init__.py | 0 .../InProject/Rating/credit.py | 35 ------------------ .../InProject/Rating/esg.py | 37 +------------------ .../InProject/Rating/process.py | 0 .../InProject/Rating/question.py | 0 Rating/Process/__init__.py | 0 Rating/Questionnaire/QuestionnaireObj.py | 29 --------------- Rating/Questionnaire/__init__.py | 0 Rating/__init__.py | 0 .../Credit => Routes/Rating}/CreditRoutes.py | 2 +- {Rating/Esg => Routes/Rating}/EsgRoutes.py | 2 +- {Rating/Esg => Routes/Rating}/__init__.py | 0 TestForAdmin/route.py | 4 +- app.py | 6 +-- 17 files changed, 52 insertions(+), 114 deletions(-) rename {Rating/Credit => Implements/Rating}/CreditImpl.py (98%) rename {Rating/Esg => Implements/Rating}/EsgImpl.py (99%) create mode 100644 Objects/Common/Rating/FECRRating.py rename {Rating/Credit => Objects/InProject/Rating}/__init__.py (100%) rename Rating/Credit/CreditObj.py => Objects/InProject/Rating/credit.py (72%) rename Rating/Esg/EsgObj.py => Objects/InProject/Rating/esg.py (87%) rename Rating/Process/ProcessObj.py => Objects/InProject/Rating/process.py (100%) rename Rating/Questionnaire/QuestionObj.py => Objects/InProject/Rating/question.py (100%) delete mode 100644 Rating/Process/__init__.py delete mode 100644 Rating/Questionnaire/QuestionnaireObj.py delete mode 100644 Rating/Questionnaire/__init__.py delete mode 100644 Rating/__init__.py rename {Rating/Credit => Routes/Rating}/CreditRoutes.py (98%) rename {Rating/Esg => Routes/Rating}/EsgRoutes.py (97%) rename {Rating/Esg => Routes/Rating}/__init__.py (100%) diff --git a/Rating/Credit/CreditImpl.py b/Implements/Rating/CreditImpl.py similarity index 98% rename from Rating/Credit/CreditImpl.py rename to Implements/Rating/CreditImpl.py index c416a19..1adce39 100644 --- a/Rating/Credit/CreditImpl.py +++ b/Implements/Rating/CreditImpl.py @@ -4,11 +4,12 @@ import random import requests from DBHelper.MongoHelper import MongoHelper -from Rating.Credit.CreditObj import RatingRecord, CreditInputData, FinancialReport, BusinessQuestionnaire, BalanceSheet, \ +from Objects.Common.Rating.FECRRating import RatingRecord +from Objects.InProject.Rating.credit import CreditInputData, FinancialReport, BalanceSheet, \ IncomeSheet, AppendixDataSheet -from Rating.Process.ProcessObj import CreditProcess -from Rating.Questionnaire.QuestionObj import SingleChoiceQuestion, MultipleChoiceQuestion, FillInTheBlank -from Utils.ErrorUtil import ReturnConditionCheckFailed, ReturnConditionCheckFailed +from Objects.InProject.Rating.process import CreditProcess +from Objects.InProject.Rating.question import SingleChoiceQuestion, MultipleChoiceQuestion, FillInTheBlank +from Utils.ErrorUtil import ReturnConditionCheckFailed class CreditUtils: diff --git a/Rating/Esg/EsgImpl.py b/Implements/Rating/EsgImpl.py similarity index 99% rename from Rating/Esg/EsgImpl.py rename to Implements/Rating/EsgImpl.py index bbaa01e..9dc8b4f 100644 --- a/Rating/Esg/EsgImpl.py +++ b/Implements/Rating/EsgImpl.py @@ -4,10 +4,11 @@ import random import requests from DBHelper.MongoHelper import MongoHelper -from Rating.Esg.EsgObj import RatingRecord, EnvironmentQuestionnaire, ThreeYearDataByE, OtherTypeDataByE, \ +from Objects.Common.Rating.FECRRating import RatingRecord +from Objects.InProject.Rating.esg import EnvironmentQuestionnaire, ThreeYearDataByE, OtherTypeDataByE, \ ThreeYearDataByS, SocietyQuestionnaire, OtherTypeDataByS, ThreeYearDataByG, GovernanceQuestionnaire, \ OtherTypeDataByG, EsgInputData -from Rating.Process.ProcessObj import EsgProcess +from Objects.InProject.Rating.process import EsgProcess from Utils.ErrorUtil import ReturnConditionCheckFailed diff --git a/Objects/Common/Rating/FECRRating.py b/Objects/Common/Rating/FECRRating.py new file mode 100644 index 0000000..f991033 --- /dev/null +++ b/Objects/Common/Rating/FECRRating.py @@ -0,0 +1,37 @@ +from Utils.ObjUtil import SpecObject +from Utils.ValidateUtil import ValidateAttr + + +class RatingRecord(SpecObject): + """评价记录 """ + rid = ValidateAttr(field='rid', type=str, length=8) + cid = ValidateAttr(field='cid', type=str, length=8) + company = ValidateAttr(field='company', type=str) + project = ValidateAttr(field='project', type=str, in_list=["综合信用评价", "ESG评价"]) + methods = ValidateAttr(field='methods', type=str, in_list=["企业申报"]) + status = ValidateAttr(field='status', type=str, in_list=["进行", "完成"]) + result = ValidateAttr(field='result', type=str, + in_list=["AAA", "AA+", "AA", "AA-", "A+", "A", "A-", "BBB+", "BBB", "BBB-", "BB+", "BB", + "BB-", "B+", "B", "B-", "CCC", "CC", None], default=None) + report_fid = ValidateAttr(field='report_fid', type=str, default=None) + certificate_fid = ValidateAttr(field='certificate_fid', type=str, default=None) + begin_time = ValidateAttr(field='begin_time', type=str) + submit_time = ValidateAttr(field='submit_time', type=str, default=None) + finish_time = ValidateAttr(field='finish_time', type=str, default=None) + finish_date = ValidateAttr(field='finish_date', type=str, default=None) + + fields_map = { + "rid": "评价ID", + "cid": "企业ID", + "company": "企业名称", + "project": "评价项目", + "methods": "评价方式", + "status": "进行状态", + "result": "评价结果", + "report_fid": "报告fid", + "certificate_fid": "证书fid", + "begin_time": "开始填报时间", + "submit_time": "提交填报时间", + "finish_time": "评价完成时间", + "finish_date": "评价完成日期" + } \ No newline at end of file diff --git a/Rating/Credit/__init__.py b/Objects/InProject/Rating/__init__.py similarity index 100% rename from Rating/Credit/__init__.py rename to Objects/InProject/Rating/__init__.py diff --git a/Rating/Credit/CreditObj.py b/Objects/InProject/Rating/credit.py similarity index 72% rename from Rating/Credit/CreditObj.py rename to Objects/InProject/Rating/credit.py index 0dc2426..8c9fa11 100644 --- a/Rating/Credit/CreditObj.py +++ b/Objects/InProject/Rating/credit.py @@ -2,41 +2,6 @@ from Utils.ObjUtil import SpecObject from Utils.ValidateUtil import ValidateAttr, Validate -class RatingRecord(SpecObject): - """评价记录 """ - rid = ValidateAttr(field='rid', type=str, length=8) - cid = ValidateAttr(field='cid', type=str, length=8) - company = ValidateAttr(field='company', type=str) - project = ValidateAttr(field='project', type=str, in_list=["综合信用评价", "ESG评价"]) - methods = ValidateAttr(field='methods', type=str, in_list=["企业申报"]) - status = ValidateAttr(field='status', type=str, in_list=["进行", "完成"]) - result = ValidateAttr(field='result', type=str, - in_list=["AAA", "AA+", "AA", "AA-", "A+", "A", "A-", "BBB+", "BBB", "BBB-", "BB+", "BB", - "BB-", "B+", "B", "B-", "CCC", "CC", None], default=None) - report_fid = ValidateAttr(field='report_fid', type=str, default=None) - certificate_fid = ValidateAttr(field='certificate_fid', type=str, default=None) - begin_time = ValidateAttr(field='begin_time', type=str) - submit_time = ValidateAttr(field='submit_time', type=str, default=None) - finish_time = ValidateAttr(field='finish_time', type=str, default=None) - finish_date = ValidateAttr(field='finish_date', type=str, default=None) - - fields_map = { - "rid": "评价ID", - "cid": "企业ID", - "company": "企业名称", - "project": "评价项目", - "methods": "评价方式", - "status": "进行状态", - "result": "评价结果", - "report_fid": "报告fid", - "certificate_fid": "证书fid", - "begin_time": "开始填报时间", - "submit_time": "提交填报时间", - "finish_time": "评价完成时间", - "finish_date": "评价完成日期" - } - - class BalanceSheet(SpecObject): """资产负债表""" report_date = ValidateAttr(field='report_date', default=None, func=Validate.date_format, type=str) diff --git a/Rating/Esg/EsgObj.py b/Objects/InProject/Rating/esg.py similarity index 87% rename from Rating/Esg/EsgObj.py rename to Objects/InProject/Rating/esg.py index 07ca66d..8bc7347 100644 --- a/Rating/Esg/EsgObj.py +++ b/Objects/InProject/Rating/esg.py @@ -2,41 +2,6 @@ from Utils.ObjUtil import SpecObject from Utils.ValidateUtil import ValidateAttr -class RatingRecord(SpecObject): - """评价记录 """ - rid = ValidateAttr(field='rid', type=str, length=8) - cid = ValidateAttr(field='cid', type=str, length=8) - company = ValidateAttr(field='company', type=str) - project = ValidateAttr(field='project', type=str, in_list=["综合信用评价", "ESG评价"]) - methods = ValidateAttr(field='methods', type=str, in_list=["企业申报"]) - status = ValidateAttr(field='status', type=str, in_list=["进行", "完成"]) - result = ValidateAttr(field='result', type=str, - in_list=["AAA", "AA+", "AA", "AA-", "A+", "A", "A-", "BBB+", "BBB", "BBB-", "BB+", "BB", - "BB-", "B+", "B", "B-", "CCC", "CC"], default=None) - report_fid = ValidateAttr(field='report_fid', type=str, default=None) - certificate_fid = ValidateAttr(field='certificate_fid', type=str, default=None) - begin_time = ValidateAttr(field='begin_time', type=str) - submit_time = ValidateAttr(field='submit_time', type=str, default=None) - finish_time = ValidateAttr(field='finish_time', type=str, default=None) - finish_date = ValidateAttr(field='finish_date', type=str, default=None) - - fields_map = { - "rid": "评价ID", - "cid": "企业ID", - "company": "企业名称", - "project": "评价项目", - "methods": "评价方式", - "status": "进行状态", - "result": "评价结果", - "report_fid": "报告fid", - "certificate_fid": "证书fid", - "begin_time": "开始填报时间", - "submit_time": "提交填报时间", - "finish_time": "评价完成时间", - "finish_date": "评价完成日期" - } - - class ThreeYearDataByE(SpecObject): """环境问卷近三年数据""" year = ValidateAttr(field='year', default=None, length=5, type=str) @@ -192,7 +157,7 @@ class SocietyQuestionnaire(SpecObject): class ThreeYearDataByG(SpecObject): """治理问卷近三年数据""" year = ValidateAttr(field='year', default=None, length=5, type=str) - audit_report = ValidateAttr(field='audit_report', default=None, type=str, in_list=['是', '否']) + audit_report = ValidateAttr(field='audit_report', default=None, type=str, in_list=['是', '否', None]) net_assets = ValidateAttr(field='net_assets', default=None, type=float) net_profit = ValidateAttr(field='net_profit', default=None, type=float) diff --git a/Rating/Process/ProcessObj.py b/Objects/InProject/Rating/process.py similarity index 100% rename from Rating/Process/ProcessObj.py rename to Objects/InProject/Rating/process.py diff --git a/Rating/Questionnaire/QuestionObj.py b/Objects/InProject/Rating/question.py similarity index 100% rename from Rating/Questionnaire/QuestionObj.py rename to Objects/InProject/Rating/question.py diff --git a/Rating/Process/__init__.py b/Rating/Process/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/Rating/Questionnaire/QuestionnaireObj.py b/Rating/Questionnaire/QuestionnaireObj.py deleted file mode 100644 index 72417f6..0000000 --- a/Rating/Questionnaire/QuestionnaireObj.py +++ /dev/null @@ -1,29 +0,0 @@ -from Utils.ObjUtil import SpecObject -from Utils.ValidateUtil import ValidateAttr - - -class QuestionContent(SpecObject): - """问题内容""" - label = ValidateAttr(field="label", type=str) - type = ValidateAttr(field="type", in_list=['单选题', '多选题', '填空题']) - option = ValidateAttr(field="option", instance_list="OptionContent") - unit = ValidateAttr(field="unit", type=str) - - -class QuestionnaireContent(SpecObject): - """问卷内容""" - label = ValidateAttr(field="label", type=str) - children = ValidateAttr(field="children", instance_list="QuestionContent") - - -class Questionnaire(SpecObject): - """问卷类""" - industry = ValidateAttr(field="industry", type=str) - id = ValidateAttr(field='id', type=str, length=8) - content = ValidateAttr(field="content", instance_list="QuestionnaireContent") - - fields_map = { - "industry": "行业", - "id": "问卷ID", - "content": "问卷内容" - } \ No newline at end of file diff --git a/Rating/Questionnaire/__init__.py b/Rating/Questionnaire/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/Rating/__init__.py b/Rating/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/Rating/Credit/CreditRoutes.py b/Routes/Rating/CreditRoutes.py similarity index 98% rename from Rating/Credit/CreditRoutes.py rename to Routes/Rating/CreditRoutes.py index 5587b9d..77c4d53 100644 --- a/Rating/Credit/CreditRoutes.py +++ b/Routes/Rating/CreditRoutes.py @@ -1,6 +1,6 @@ from flask import Blueprint, request from Utils.AuthUtil import verify_token, verify_real_company -from Rating.Credit.CreditImpl import CreditRating +from Implements.Rating.CreditImpl import CreditRating from Utils.ErrorUtil import ReturnConditionCheckFailed credit_route = Blueprint('input', __name__) diff --git a/Rating/Esg/EsgRoutes.py b/Routes/Rating/EsgRoutes.py similarity index 97% rename from Rating/Esg/EsgRoutes.py rename to Routes/Rating/EsgRoutes.py index 2fa0a23..91fe86e 100644 --- a/Rating/Esg/EsgRoutes.py +++ b/Routes/Rating/EsgRoutes.py @@ -1,6 +1,6 @@ from flask import Blueprint, request from Utils.AuthUtil import verify_token -from Rating.Esg.EsgImpl import EsgRating +from Implements.Rating.EsgImpl import EsgRating from Utils.ErrorUtil import ReturnConditionCheckFailed esg_route = Blueprint('esg', __name__) diff --git a/Rating/Esg/__init__.py b/Routes/Rating/__init__.py similarity index 100% rename from Rating/Esg/__init__.py rename to Routes/Rating/__init__.py diff --git a/TestForAdmin/route.py b/TestForAdmin/route.py index e4a10fa..20b2592 100644 --- a/TestForAdmin/route.py +++ b/TestForAdmin/route.py @@ -3,8 +3,8 @@ from flask import Blueprint, request from Implements.Others.EmailNoticeImpl import EmailNoticeImpl from Implements.User.RealCompanyVerifyImpl import RealCompanyVerifyImpl from Implements.User.TFSECompanyUserImpl import TFSECompanyUserImpl -from Rating.Credit.CreditImpl import CreditRating -from Rating.Esg.EsgImpl import EsgRating +from Implements.Rating.CreditImpl import CreditRating +from Implements.Rating.EsgImpl import EsgRating from TestForAdmin.APIAuth import api_secret from Utils.ErrorUtil import ReturnConditionCheckFailed diff --git a/app.py b/app.py index b9eb8f5..461c028 100644 --- a/app.py +++ b/app.py @@ -6,10 +6,8 @@ from Routes.Company.IndexRoute import company_route from Routes.Other.EmailNoticeRoute import email_route from Routes.Other.TFSEFileRoute import file_route from Routes.User.TFSECompanyUserRoute import company_user_route - - -from Rating.Credit.CreditRoutes import credit_route -from Rating.Esg.EsgRoutes import esg_route +from Routes.Rating.CreditRoutes import credit_route +from Routes.Rating.EsgRoutes import esg_route from TestForAdmin.route import test_admin_route app = Flask(__name__)