CN106815015B - Method and system for organizing views in IOS - Google Patents

Method and system for organizing views in IOS Download PDF

Info

Publication number
CN106815015B
CN106815015B CN201611194227.XA CN201611194227A CN106815015B CN 106815015 B CN106815015 B CN 106815015B CN 201611194227 A CN201611194227 A CN 201611194227A CN 106815015 B CN106815015 B CN 106815015B
Authority
CN
China
Prior art keywords
view
sub
controller
logic
view controller
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201611194227.XA
Other languages
Chinese (zh)
Other versions
CN106815015A (en
Inventor
黄露洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201611194227.XA priority Critical patent/CN106815015B/en
Publication of CN106815015A publication Critical patent/CN106815015A/en
Application granted granted Critical
Publication of CN106815015B publication Critical patent/CN106815015B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Stored Programmes (AREA)

Abstract

The invention provides a method and a system for organizing views in IOS, which encapsulate the logics of view, network, delete and the like in an original view controller into one sub-view controller, wherein each type of view corresponds to one sub-view controller, and the respective logics of view, network, delete and the like are processed in the sub-view controller. And then the sub-view controllers are combined into a final view controller like building blocks. The invention effectively improves the structuralization, easy reading and maintainability of the code, improves the capability of code strain demand change and improves the speed of version iteration.

Description

Method and system for organizing views in IOS
Technical Field
The invention relates to the technical field of IOS views, in particular to a method and a system for organizing views in IOS.
Background
At present, interfaces visible to a user in iOS application development are organized and scheduled through a view controller (view controller), and under a traditional apple design idea, a view controller usually processes logics of a view (view), a network request (network), an agent (delete), other parts (other), and the like, as shown in fig. 1. When interface development is carried out, a general process is to analyze which sub-views exist according to a design draft, then construct the sub-views one by one in a view controller by using a native control, assemble the sub-views and finally realize the effect of the design draft. Along with the development of the mobile internet, the functions of the application program at the mobile terminal are more and more, the view structure is more and more complex, and the previous scheme of constructing a sub-view by one control in the view controller causes the code in the view controller to be too much and difficult to maintain, and the code cannot be reused in other view controllers.
In order to solve the above technical problem, a scheme for packaging sub-views appears in the prior art. In the scheme of packaging the sub-views, the logic for constructing the sub-views through the control is packaged in the sub-views, and the packaged sub-views can be directly used only by directly constructing the packaged sub-views in the view controller, so that certain structuredness of the view controller is improved.
However, the existing scheme for packaging the sub-views only solves the problems that the logic of the view part in the view controller is only solved, the logics of the network part, the delete part and the other part are still processed in one view controller, and the three parts of logics depend on the logic of the view, so that different logic processing needs to be carried out in the view controller according to the difference of the view, and the readability is poor and the maintenance is not good. The poor readability is mainly embodied in that all logics are processed in one view controller, a large piece of code is not easy to read, and the above-mentioned parts of view, network, delete and other are not logic dispersed and consistent. Poor maintenance is mainly reflected in the fact that when a scheme change occurs or an extension needs to be made, the cost of the change or extension is very high, because when a certain view needs to be changed, the corresponding part of the code of the network, the delete and the other part in the view controller which depends on the view needs to be modified.
Disclosure of Invention
The present invention overcomes or at least partially solves the above-identified problems by providing a method and system for view organization in an IOS.
According to one aspect of the present invention, there is provided a method for view organization in an IOS, comprising:
step 1, respectively encapsulating UI view classes of all sub-views in a view to be constructed and all logics corresponding to the UI view classes in all sub-view controllers;
step 2, forming a main view controller of the view to be constructed based on the sub view controllers; and the main view controller realizes the organization of the views to be constructed by calling the UI view classes in the sub view controllers and the logics corresponding to the UI view classes.
According to another aspect of the invention, there is provided a view organization system in an IOS, comprising a first module and a second module:
the first module is connected with the second module and is used for respectively encapsulating the UI view class of each sub-view in the view to be constructed and each logic corresponding to the UI view class in each sub-view controller;
the second module is connected with the first module and is used for forming the main view controller of the view to be constructed based on the sub-view controllers; and the main view controller realizes the organization of the views to be constructed by calling the UI view classes in the sub view controllers and the logics corresponding to the UI view classes.
The invention provides a method and a system for organizing a view in an IOS (input/output system). the scheme mainly comprises the steps of packaging the view, network, delete and other logics in an original view controller into one sub-view controller, wherein each type of view corresponds to one sub-view controller, and the respective view, network, delete and other logics are processed in the sub-view controller. And then the sub-view controllers are combined into a final view controller like building blocks. The invention effectively improves the structuralization, easy reading and maintainability of the code, improves the capability of code strain demand change and improves the speed of version iteration.
Drawings
FIG. 1 is a diagram illustrating a conventional view controller in the prior art;
FIG. 2 is a schematic structural diagram of a main view controller constructed in the method for organizing views in IOS according to the embodiment of the present invention;
FIG. 3 is a schematic overall flow chart of a method for view organization in IOS according to an embodiment of the present invention;
FIG. 4 is a schematic diagram of an overall structure of a view organization system in an IOS according to an embodiment of the present invention.
Detailed Description
The following detailed description of embodiments of the present invention is provided in connection with the accompanying drawings and examples. The following examples are intended to illustrate the invention but are not intended to limit the scope of the invention.
The invention describes a structured view organization scheme, and a structured view controller with strong readability, low maintenance cost and strong expansibility can be constructed based on the scheme. The main idea is to encapsulate the view, network, delete and other logics in the original view controller into one sub-view controller, wherein each type of view corresponds to one sub-view controller, and the view, network, delete and other logics are processed in the sub-view controller. And then the sub-view controllers are combined into a final view controller like building blocks. The schematic diagram is shown in fig. 2.
Referring to fig. 3, a general diagram of a method for organizing views in IOS is shown in an embodiment of the present invention. In its entirety, comprising: step 1, respectively encapsulating UI view classes of all sub-views in a view to be constructed and all logics corresponding to the UI view classes in all sub-view controllers; step 2, forming a main view controller of the view to be constructed based on the sub view controllers; and the main view controller realizes the organization of the views to be constructed by calling the UI view classes in the sub view controllers and the logics corresponding to the UI view classes.
In another embodiment of the present invention, a method for view organization in an IOS, the step 1 further includes:
s11, splitting the view to be constructed into sub-views: and splitting the view into one sub-view 1, view2, … and view N according to the view design draft.
Generating a UI view class corresponding to each sub view: and creating UIView subclasses, namely ViewClass1, ViewClass2, … and ViewClassN (in iOS development, all views are UIView classes or subclasses of UIView) corresponding to each view, and encapsulating the construction logic of the views in the subclasses according to the design requirements.
S12, generating each sub-view controller corresponding to each sub-view and logic related to each sub-view based on each UI view class; generating logic associated with the child views: for each view class, a view controller class corresponding to the view class, namely, subclasses of uiview controllers (in iOS development, all view controllers should be subclasses of uiview controllers) view controller1, view controllers 2, …, and view controllers are created, and part of logics of network, delete, other, and the like are encapsulated in the subclasses, and methods of handletwork, handledeleegate, handleOther, and the like are exposed for external calling (depending on specific scenes, the three classes of methods can be multiple), so that the method has the advantages of encapsulating the logic of each view in the view controller thereof, meeting high aggregation standards, and avoiding a large amount of fragment codes (fragment codes refer to codes with non-consistent logics) in a main view controller to be mentioned later. However, in the conventional scheme, there is no encapsulation of the view controller, and all logic is directly written in the main view controller through the view, which causes a large amount of codes related to the view to appear in the main view controller, and finally causes the logic to be disconnected and become fragmented codes.
And S13, respectively packaging the UI view classes and the related logic in the child view controllers based on different child views.
In another embodiment of the present invention, a method for view organization in an IOS, the step 1 further includes: the logic in step 1 can also be: network request logic network, agent logic delete, and other logic (including but not limited to user interaction event response logic, network state change listening logic, network request logic, and/or agent logic).
In another embodiment of the present invention, a method for organizing views in an IOS, said step 2 of utilizing the main view controller by invoking UI view classes in each sub-view controller further includes: and the main view controller acquires the corresponding UI view class from each sub view controller by controlling each sub view controller and adds the UI view class to the UI view class of the main view controller.
In another specific embodiment of the present invention, a method for organizing views in an IOS, in the step 2, the organizing of the views to be constructed by using the main view controller and calling each logic corresponding to a UI view class in each sub-view controller further includes: the main view controller calls the network request logic packaged in each sub view controller and adds the network request logic to the main view controller network request logic; the main view controller calls the packaged proxy logic in each sub view controller and adds the proxy logic to the main view controller.
In another embodiment of the present invention, a method for view organization in IOS, said step each sub-view controller ViewClass is a sub-class of UIViewController.
In another embodiment of the present invention, a method for organizing views in an IOS, wherein the step of obtaining, by a main view controller, a corresponding UI view class from each sub view controller by controlling each sub view controller and adding the UI view class to the UI view class of the main view controller further includes: and the main VIEW controller acquires each sub-VIEW controller through the ViewControlLerFactory, and calls the UI VIEW class in each sub-VIEW controller to add the UI VIEW class into the VIEW VIEW of the main VIEW controller.
The UIViewController class is inherited to create a main view controller, MainViewController, logic for processing assembly and the like of the custom view is generally established in a view DidLoad method (the method is a place for processing callback after view loading is successfully processed in the UIViewController class, and the logic for constructing the sub-views to form the interface effect can be placed in a view WillAppear, a view DidApper and other places needing to construct a view structure in a view controller according to different specific scenes and function points), the view controller1, the ViewController2, … and the ViewControlReN are acquired through the View controller Factor, the corresponding views 1, the views 2, … and the view WN are acquired from the view controller, the views are added into the views of the MainViewController, and the views are placed into corresponding positions according to design requirements. Here, similar to the conventional method, but the conventional method is to create a view directly in the main view controller, and in the present scheme, to acquire a corresponding view through the view controller.
In another embodiment of the present invention, a method for organizing views in an IOS, said step said master view controller adds the network request logic encapsulated in each sub-view controller to the master view controller network request logic by calling the network request logic; the main view controller also comprises the following steps of calling the encapsulated proxy logic in each sub view controller and adding the proxy logic into the main view controller:
and the main view controller acquires each sub-view controller through the ViewControlLerFactory, calls the network request logic packaged in each sub-view controller and adds the network request logic to the main view controller.
A handleNetwork method for processing network logic is created in a MainViewController (according to different interface effects and different function points, the method can be multiple, and the name of the method is not limited to the name), the scheduling of network request logic is carried out in the method, aiming at view viewX, the needed sub-view controller viewControlX is obtained through viewControlFactory, and because the logic of the network request part of the viewX is already packaged in the viewControlReX, only the method handleNetwork for processing the network request of the viewControlX needs to be called at the moment. Therefore, only the network request logic needs to be scheduled in the main view controller, namely the network request logic of which sub-view controller needs to be called is determined according to a specific use scene, so that the code amount is small, and the structure is clear. In the traditional scheme, the network request logic and the scheduling logic of all views are squeezed in the same part of the main view controller, so that the code amount is large and the logic is disordered.
And the main view controller acquires each sub-view controller through the ViewControlLerFactory, calls the proxy logic encapsulated in each sub-view controller and adds the proxy logic to the main view controller.
A handleDelegate method for processing delete logic is created in a MainViewController (according to different interface effects and different function points, the method can be multiple, and the name of the method is not limited to the name), the delete logic is scheduled in the method, aiming at a view viewX, a needed sub-view controller viewControlerX is obtained through viewControlFactory, and because the network request part logic of the viewX is already packaged in the viewControlerX, only the method handleDelegate of the network request of the viewControleX needs to be called at the moment.
A handleOther method for processing other logic is created in a MainViewController (according to different interface effects and different function points, the method can be multiple here, the name of the method is not limited to the name), the delete logic is scheduled in the method, aiming at view viewX, the needed sub-view controller viewControlX is obtained through viewControlFactory, and because the network request part logic of the viewX is already packaged in the viewControlReX, only the method handleOther of the network request of the viewControlReX needs to be called at the moment.
In another embodiment of the present invention, a method for organizing views in an IOS, wherein the ViewControllerFactory further includes: the NSObject class is inherited to create the view controller factory class ViewControlFactory, within which the logic of view controller creation is encapsulated.
Inheriting the NSObject class to create the View controller factory class ViewControlFactory (in object-oriented, inheriting refers to an extension to a class, where ViewControlFactory is a subclass of NSObject, and has all attributes and behavior characteristics of NSObject, NSObject is a base class of most classes in iOS, i.e., most classes are inherited from NSObject, the base classes of the remaining few classes are NSproxy, in iOS development, it is common to inherit from NSObject, the same below), the logic created by the view controller is encapsulated inside, so that the desired view controller can be conveniently obtained through the ViewControllerFactory in the main view controller to be mentioned later, without being coupled to a specific view controller, so that the dependence of the main view controller on the sub-view controller is avoided, and later, if the view structure in the main view controller is required to be modified, only the logic of the ViewControlReFactory acquiring sub-view controller needs to be adjusted, and the main view controller is not required to be modified.
In the above, by packaging each main sub-view in the interface into the sub-view controller, only the logic of the sub-view controller needs to be processed, and the logic of other view is not mixed, so that the logic is clear, and the code amount is much less than that of the original huge view controller. In the main view controller, only scheduled logic remains in each logic part, and the readability is improved greatly compared with the traditional scheme. Once there is a need to change, only the logic in the child view controller that needs to be changed needs to be modified, and if extension is needed, only the view that needs to be added needs to be packaged into the child view controller, and then the child view controller is added to the main view controller like a "building block".
In another embodiment of the present invention, as shown in FIG. 4, a general block diagram of a view organization system in an IOS is shown. Overall, a first module a1, a plant module a2, and a second module A3:
the first module A1 is connected with the factory module A2 and is used for packaging the UI view classes of the sub-views in the view to be constructed and the logics corresponding to the UI view classes; the factory module A2 is respectively connected with the first module A1 and the second module A3, and according to the calling request of the second module A3, the UI view classes in the corresponding sub-view controllers and the logics corresponding to the UI view classes are called from the first module A1; the second module A3 is connected to the factory module A2 and is used for composing the main view controller of the view to be constructed based on the sub-view controllers; and the main view controller calls the UI view classes in the sub view controllers and the logics corresponding to the UI view classes through the factory module so as to realize the organization of the views to be constructed.
Finally, the method of the present application is only a preferred embodiment and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims (9)

1. A method for view organization in an IOS, comprising:
step 1, respectively encapsulating UI view classes of all sub-views in a view to be constructed and all logics corresponding to the UI view classes in all sub-view controllers;
step 2, forming a main view controller of the view to be constructed based on the sub view controllers, and calling UI view classes in the sub view controllers and the logics corresponding to the UI view classes by the main view controller to realize the organization of the view to be constructed;
the step 1 further comprises:
s11, splitting the view to be constructed into sub-views, and generating UI view classes corresponding to the sub-views;
s12, generating each sub-view controller corresponding to each sub-view and logic related to each sub-view based on each UI view class;
s13, based on different sub-views, respectively packaging the UI view classes and the related logic in the sub-view controllers;
generating logic related to each sub-view based on each UI view class specifically includes:
constructing a view controller corresponding to each ViewClass according to each ViewClass;
and encapsulating the view controller corresponding to each ViewClass into network, delete and other logics, and generating logics related to each sub-view by exposing handleNetwork, handleDelegate and handleOther methods for processing.
2. The method of claim 1, wherein the logic in step 1 can include: network request logic, proxy logic, user interaction event response logic, and/or network state change listening logic.
3. The method of claim 1, wherein the step 2 of calling the UI view class in each sub-view controller by using the main view controller further comprises:
and the main view controller acquires the corresponding UI view class from each sub view controller by controlling each sub view controller and adds the UI view class to the UI view class of the main view controller.
4. The method according to claim 2, wherein in step 2, based on the sub-view controllers composing the main view controller of the view to be built, the main view controller invokes UI view classes and corresponding logics in the sub-view controllers to implement the organization of the view to be built, further comprising:
the main view controller calls the network request logic packaged in each sub view controller and adds the network request logic to the main view controller network request logic;
the main view controller calls the proxy logic packaged in each sub view controller and adds the proxy logic to the main view controller;
the main view controller calls user interaction event response logic packaged in each sub view controller and adds the user interaction event response logic to main view controller proxy logic;
the main view controller changes the monitoring logic by calling the network state packaged in each sub view controller and adds the monitoring logic to the main view controller proxy logic.
5. The method of claim 1, wherein the ViewClass is a subclass of UIView and the sub-view controller class is a subclass of UIView controller.
6. The method of claim 3, wherein the step of the master view controller obtaining the corresponding UI view class from each sub-view controller and adding the UI view class to the UI view class of the master view controller by controlling each sub-view controller further comprises:
and the main view controller acquires each sub-view controller through the ViewControlLerFactory, and calls the UI view class in each sub-view controller to add to the main view controller view.
7. The method of claim 4, wherein the step the master view controller adds to the master view controller network request logic by calling the encapsulated network request logic in each child view controller;
the main view controller also comprises the following steps of calling the encapsulated proxy logic in each sub view controller and adding the proxy logic into the main view controller:
the main view controller acquires each sub-view controller through the ViewControlLerFactory, calls the network request logic packaged in each sub-view controller and adds the network request logic to the main view controller;
and the main view controller acquires each sub-view controller through the ViewControlLerFactory, calls the proxy logic encapsulated in each sub-view controller and adds the proxy logic to the main view controller.
8. The method of claim 6 or 7, wherein the ViewControllerFactory further comprises: the NSObject class is inherited to create the view controller factory class ViewControlFactory, within which the logic of view controller creation is encapsulated.
9. A view organization system in an IOS, comprising a first module, a factory module, and a second module:
the first module is connected with the factory module and used for packaging the UI view types of the sub-views in the view to be constructed and the logics corresponding to the UI view types;
the factory module is respectively connected with the first module and the second module, and calls UI view types in corresponding sub-view controllers and corresponding logics from the first module according to the calling request of the second module;
the second module is connected with the factory module and is used for forming the main view controller of the view to be constructed based on the sub-view controllers; the main view controller calls UI view classes in the sub view controllers and corresponding logics through the factory module so as to realize the organization of the views to be constructed;
the second module is specifically configured to:
splitting the view to be constructed into sub-views, and generating UI view classes corresponding to the sub-views;
generating sub-view controllers corresponding to the sub-views and logic related to the sub-views based on the UI view classes;
based on different sub-views, respectively encapsulating the UI view classes and the related logic in the sub-view controllers;
generating logic related to each sub-view based on each UI view class specifically includes:
constructing a view controller corresponding to each ViewClass according to each ViewClass;
and encapsulating the view controller corresponding to each ViewClass into network, delete and other logics, and generating logics related to each sub-view by exposing handleNetwork, handleDelegate and handleOther methods for processing.
CN201611194227.XA 2016-12-21 2016-12-21 Method and system for organizing views in IOS Active CN106815015B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611194227.XA CN106815015B (en) 2016-12-21 2016-12-21 Method and system for organizing views in IOS

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611194227.XA CN106815015B (en) 2016-12-21 2016-12-21 Method and system for organizing views in IOS

Publications (2)

Publication Number Publication Date
CN106815015A CN106815015A (en) 2017-06-09
CN106815015B true CN106815015B (en) 2020-06-16

Family

ID=59109242

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611194227.XA Active CN106815015B (en) 2016-12-21 2016-12-21 Method and system for organizing views in IOS

Country Status (1)

Country Link
CN (1) CN106815015B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109918035A (en) * 2018-05-18 2019-06-21 贵阳朗玛信息技术股份有限公司 A kind of iOS client is to the managing device for having multiple agencies
CN109062628A (en) * 2018-07-12 2018-12-21 北京猫眼文化传媒有限公司 A kind of module polymerization loading method and device
CN110427180A (en) * 2019-07-05 2019-11-08 拉货宝网络科技有限责任公司 A kind of fast construction method of physical distribution trading platform interactive interface
CN110609728A (en) * 2019-09-25 2019-12-24 北京字节跳动网络技术有限公司 Page generation method and device and electronic equipment
CN112394858A (en) * 2020-12-11 2021-02-23 成都商通数治科技有限公司 iOS list page rapid integration and management
CN113435785A (en) * 2021-07-21 2021-09-24 广州博冠信息科技有限公司 Controller management method and device, storage medium and electronic equipment

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6845236B2 (en) * 2000-11-01 2005-01-18 Lg Electronics Inc. Method for concurrent multiple services in a mobile communication system
CN104636136B (en) * 2015-01-12 2018-06-08 沈文策 The method that Group is simulated based on UITableView types Plain in iOS system
CN105677366B (en) * 2016-02-26 2019-01-11 四川长虹电器股份有限公司 The method that Infinite Cyclic rolls selection is realized based on UITableView in iOS system

Also Published As

Publication number Publication date
CN106815015A (en) 2017-06-09

Similar Documents

Publication Publication Date Title
CN106815015B (en) Method and system for organizing views in IOS
CN106528129B (en) A kind of Web application interface generation system and method
CN109597814B (en) Online rapid delivery system of background management information system
CN102209111B (en) Open cross-platform system for cloud computing mobile network terminal equipment
CN106126215A (en) Business rule scenario generation method and device
CN106874388A (en) A kind of heterogeneous system data cascade operation method for auto constructing based on relevant database
CN108519952A (en) A kind of distributed WEB automatization test systems and method
CN110580174B (en) Application component generation method, server and terminal
CN106685726A (en) React-native based intelligent home monitoring system
CN103150154A (en) Implementation method and device of application plug-in
WO2020199423A1 (en) Automated construction method and system for yang model configuration interface
CN105867944A (en) Web front-end terminal operating layer and implementing method thereof
CN110633076A (en) Method for automatically generating identity intelligent contract Java client program
CN103902256A (en) Interface generating system and method
CN106250134A (en) The code automatic generation method of unicity language
CN105549964A (en) Page display method and system
CN104598622A (en) Method and system for implementing data modification log as well as application server
CN103809951A (en) Graphical service arrangement and management device based on FLEX technology
CN106407319B (en) Product information methods of exhibiting and device
CN112328225A (en) Page operation method and operation system thereof
CN109683875B (en) Application framework system of MVC (model view controller) pattern in distributed environment and method thereof
CN107247594B (en) Logic system, implementation method thereof, computing device and computer-readable storage medium
CN104461509A (en) Information interaction framework and method
CN104598250A (en) System management structure and management implementation method for same
CN105335160A (en) Method for agile development of WEB-side components based JSF (Java Server Face)

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant