v3.20.1

Summary of Significant Accounting Policies - Employee Benefit Plans (Details) - CNY (¥) | 9 Months Ended | 12 Months Ended
--- | --- | ---
Dec. 31, 2017 | Dec. 31, 2019 | Dec. 31, 2018
Employee benefit plans |  |  |
Expense due to employee benefit plans | ¥ 3,520,114 | ¥ 10,210,835 | ¥ 5,613,312
Cost of revenues |  |  |
Employee benefit plans |  |  |
Expense due to employee benefit plans | 78,381 | 2,363,553 | 79,280
Research and development |  |  |
Employee benefit plans |  |  |
Expense due to employee benefit plans | 2,296,392 | 2,468,898 | 3,232,457
Sales and marketing |  |  |
Employee benefit plans |  |  |
Expense due to employee benefit plans | 334,628 | 2,077,128 | 771,479
General and administrative |  |  |
Employee benefit plans |  |  |
Expense due to employee benefit plans | ¥ 810,713 | ¥ 3,301,256 | ¥ 1,530,096

X
- Definition Amount of cost for defined contribution plan. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 715 -SubTopic 70 -Section 50 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942 + Details
Name: | us-gaap_DefinedContributionPlanCostRecognized
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | debit
Period Type: | duration

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_DefinedContributionPlanDisclosureLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_CostOfSalesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_ResearchAndDevelopmentExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_SellingAndMarketingExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_IncomeStatementLocationAxis=us-gaap_GeneralAndAdministrativeExpenseMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |