A form signing method and form system
By establishing a database of construction units and adaptively recognizing form text content, the problem of needing to set the signature position on forms in construction projects has been solved, enabling flexible adjustment of signature position and improving efficiency.
Patent Information
- Application Number
- CN202211694193.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-12-28
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2042-12-28
AI Technical Summary
In existing technologies, the signature and stamp positions of forms in construction projects need to be set separately for each type of form, resulting in a large workload and an inability to adapt to changes, which cannot meet the needs of the numerous types of forms and their changing positions during construction.
By establishing a database of construction units that associate signing units with unit types, the system identifies form text content and borders, adaptively adjusts the signing position, retrieves the location of signed documents using unit type and the keyword 'seal', and precisely positions the signatures based on the radius of the signed document and the distance to the form edge, ensuring that signatures do not overlap.
It enables adaptive adjustment of the signature position without prior setup, reducing workload and improving the flexibility and efficiency of signatures.
Smart Images

Figure CN116108813B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the computer technical field, and particularly to a form signing method and form system. BACKGROUND
[0002] In a construction project, there are many forms that need to be signed by different units, such as design units, construction units, and supervision units, etc. In order to standardize the signing, the signatures (seals) of each unit need to be printed in the designated position. At the same time, in order to avoid overlapping of the signatures, a gap is required between the signatures. The existing signature method is to set the signature area of each unit in advance for each type of form. When the unit signs the form within its own authority, the signature can be printed in the corresponding area.
[0003] Although this method can solve the problem of signature position, the types of forms in the construction process are various, and the number of form types will also increase according to the changes of the construction situation. The signature position on each form is different, and the workload of setting the signature position for each form separately is large. Therefore, there is an urgent need for a form signing method that can adjust the signature position according to the content of the form. SUMMARY
[0004] In view of the above problems of the prior art, the present application aims to provide a form signing method and form system that can adjust the signature position adaptively without pre-setting.
[0005] In order to solve the above technical problems, the present application adopts the following technical solutions:
[0006] A form signing method, characterized in that it comprises the following steps:
[0007] First, a construction unit database is established, in which each signature unit is associated with the unit type of the unit in the construction project;
[0008] When signing, the unit type of the unit to be signed is read from the construction unit database, and the form to be signed is read. The text content of the form to be signed is identified, and the coordinate positions of each text content in the form are recorded;
[0009] The field containing the unit type is searched from the identified text content, and the signature file is placed at the coordinate position of the field.
[0010] Further, when reading the form to be signed, the frame lines in the form to be signed are identified first. The text content in each frame is identified in sequence from the top left corner to the bottom right corner, and is taken as a text segment in the frame. The unit type is used to search each text segment in the frame, and the text segment containing the unit type in the frame is found. The signature file is placed in the frame where the text segment is located.
[0011] Further, the keyword "chapter" is used to search each text segment in the frame, and the text segment containing both the unit type and the keyword "chapter" is found, and the signature file is placed in the frame where the text segment is located.
[0012] Further, before placing the signature file, the center point of the frame where the signature file is to be placed is obtained, and the distance between the center point and the edge of the form to be signed is compared with the radius of the signature file. If the distance is greater than the radius of the signature file, the center point of the signature file is placed on the center point. Otherwise, the edge of the signature file is placed close to the edge of the form to be signed.
[0013] Further, for multiple signatures arranged in the horizontal direction, the sum of the widths of all the signatures is calculated and compared with the width of the table. If the sum is less than the width of the table, the signatures are arranged at intervals in the horizontal direction. If the sum is greater than the width of the table, the vertical positions of the signatures are adjusted one by one so that the center distance between two adjacent signatures is greater than the sum of the radii of the two signatures.
[0014] Further, the adjustment step of the vertical position of the signature is: under the premise that the signature file is located in the form to be signed, the centers of all the signatures are arranged at equal intervals in the horizontal direction; according to the horizontal center distance between two adjacent signatures and the sum of the radii of the two signatures, the minimum vertical center distance of the relative movement of the two signatures in the vertical direction is calculated; the leftmost or rightmost signature is taken as the starting point to adjust the vertical position of each signature one by one in the other direction. In this direction, if the distance between the next signature and the previous signature is less than the sum of the radii of the two signatures, the position of the next signature is adjusted in the vertical direction so that the vertical center distance between the two signatures is greater than the minimum vertical center distance of the two signatures. Otherwise, the adjustment of the next signature is continued.
[0015] A form system, characterized by comprising a signature subsystem, the signature subsystem comprising a construction unit database for storing data associated with each signature unit and its unit type in a construction project, and a signature module for signing a form according to signature authority.
[0016] In summary, the present application has the advantages of no need for advance setting and self-adaptive adjustment of signature position. BRIEF DESCRIPTION OF DRAWINGS
[0017] Figure 1 FIG. 1 is a schematic diagram of a construction form management system.
[0018] Figures 2 to 6 FIG. 2 is a schematic diagram of a form.
[0019] Figure 7 FIG. 3 is a flow chart of concrete tracking and scheduling. DETAILED DESCRIPTION
[0020] The present application will be further described in detail below with reference to the embodiments.
[0021] In practical implementation: such as Figure 1 As shown, a construction form management system includes a form generation subsystem 1, a signature subsystem 2, and a scheduling subsystem 3.
[0022] The form generation subsystem 1 includes a reading module 11 for reading the original table and a display module 12 for displaying the original table; a form item generation module 13 and a form field generation module 14. The form field generation module 14 generates a form filling area 5 based on the mouse selection area and generates corresponding form field codes based on the coordinates of the form filling area 5. The form item generation module 13 generates a form item area 6 based on the mouse selection area, and the form item area 6 contains the form filling area 5. The form item generation module 13 also includes a text extraction module for extracting text content within the form item area 6. The form item generation module 13 uses the text content extracted by the text extraction module as the form item name to generate corresponding form item codes, and incorporates the form field codes of the form filling area 5 located within the form item area 6 into the form item codes according to their hierarchical relationship.
[0023] In practice, the original table can be in image format or an editable file. If the original table is in image format, the text extraction module also includes an OCR recognition module.
[0024] The form field generation module 14 also includes a type preset module for setting the form field type, wherein the form field type includes text box, multi-line text box or drop-down selection box, etc.
[0025] The steps for generating a form from the original table using the form generation subsystem 1 described above are as follows:
[0026] First, read the table to be generated and set the coordinates along the length and width of the table. Then, display the read table on the display module.
[0027] Using the mouse to select all areas in the table where data needs to be entered, fill-in area 5 is selected sequentially. The fill-in areas 5 are numbered according to the selection order, the coordinates of each fill-in area 5 are recorded, and form field codes are generated. When generating form field codes, the type preset module can also be used to set the type of each form field code.
[0028] Use the mouse to select the name area and the corresponding content area of each form item in the existing table, and combine them to form item area 6. Figure 2As shown, the type area is numbered in the order of the bounding box, and the coordinate position of each form item area 6 is recorded; the text content in the form item area 6 except the form filling area 5 is extracted by the text extraction module as the form item name to generate the corresponding form item code, and the form field code of the form filling area 5 in the form item area 6 is incorporated into the form item code according to the hierarchical relationship.
[0029] Considering the one-to-many relationship between the form item and the form field, the form generation subsystem 1 is further used to generate the form according to the following method.
[0030] As shown in Figure 3 The form item area 6 includes the first type of form item area 61 (horizontal dashed box) and the second type of form item area 62 (vertical dashed box) which are bounded horizontally and vertically, respectively, and at least one form filling area 5 (solid box) is contained in the first type of form item area 61 and the second type of form item area 62.
[0031] For each first type of form item area 61, the text extraction module extracts the text content in the form item area 6 except the form filling area 5 as the first name of the form item (such as raw material condition, mixing ratio, and material for each mixing), and associates the first name with each form filling area 5 in the first type of form item area 61.
[0032] For each second type of form item area 62, the text extraction module extracts the text content in the form item area 6 except the form filling area 5 as the second name of the form item (such as cement, river sand, stone, water, additive, and admixture), and associates the second name with each form filling area 5 in the second type of form item area 62.
[0033] All the form filling areas 5 are traversed, if the form filling area 5 is associated with both the first name and the second name, the first name and the second name are merged as the form item name of the form filling area 5, such as the form item name of the first form filling area in the second row is cement mixing ratio; otherwise, the first name or the second name is taken as the form item name of the form filling area 5.
[0034] The first type of form item area 61 and the second type of form item area 62 are determined by the following steps:
[0035] For each form item area 6, the number of form filling areas 5 in the form item area 6 is determined first;
[0036] If there is only one fill-in area 5, the width ratio and height ratio of the fill-in area 5 in the form item area 6 are calculated, and if the width ratio is less than the height ratio, it is a first type form item area 61, and if the height ratio is less than the width ratio, it is a second type form item area 62; for example, a two-row multi-column table (as shown in Figure 5 or a multi-row two-column table (as shown in Figure 4 Even if the form item area in the horizontal or vertical direction only contains one fill-in area 5, for each fill-in area 5, the first name and the second name associated with it need to be found, so the above steps are needed to determine whether the form item area 6 with only one fill-in area 5 belongs to the first type form item area 61 or the second type form item area 62.
[0037] If there are at least two fill-in areas 5, the horizontal coordinates and vertical coordinates of the fill-in areas 5 are compared, and if there is an overlapping range in the vertical coordinates, it is a first type form item area 61, and if there is an overlapping range in the horizontal coordinates, it is a second type form item area 62.
[0038] In addition, there are also multi-layer (multi-level) nested form item areas 6 in the table, and for this purpose, the embodiment further uses the following generation method:
[0039] The form item area 6 includes a parent form item area 63 and a child form item area 64, the parent form item area 63 has at least one child form item area 64, and the child form item area 64 has at least one fill-in area 5; as shown in Figure 2 and Figure 6 .
[0040] For each parent form item area 63, first obtain the fill-in area 5 and the corresponding form item name in each child form item area 64 in the parent form item area 63; then obtain the text content outside the child form item area 64 as the parent item name, and merge the form item name of each fill-in area 5 in the parent form item area 63 with the parent item name and update the form item name.
[0041] Because there are many types of tables in construction projects, after generating the form, it is necessary to facilitate the construction personnel to quickly call the form to fill in the form, and for this purpose, the construction management system further includes a form database 4 for storing form templates.
[0042] When using, before or after reading the table, generate a form code according to the category of the table, and store the form code in the form database 4; after generating the form, store all the form item codes in the form database 4 and associate them with the corresponding form code.
[0043] When filling in the form, the construction personnel can call the corresponding form through the form code, and display the form item name and form field on the operation screen, so that the operation personnel fill in the form field.
[0044] In the construction project, there is a kind of form, part of the content (form field) needs to be filled in by the construction personnel, and part of the content (form field) needs to call the associated content in the construction project. Therefore, the form generating subsystem 1 further comprises an associated item selection module for selecting the form item which needs to call the data. After the form is generated, the form item which needs to call the data is selected, and for each selected form item, the form database 4 is searched. If the form item exists, the form item in the form is associated with the existing form item, otherwise, the form item is stored in the form database 4.
[0045] When filling in the form, for the form item which needs to call the data, it is searched from the form database 4 whether the data corresponding to the item code exists under the corresponding form item. If it exists, the corresponding data is filled in the corresponding form item, otherwise, the data of the form field of the form item is entered, and the entered data is stored in the corresponding form item in the form database 4.
[0046] The signature subsystem 2 comprises a construction unit database 21 and a signature module 22. The construction unit database 21 is used to store the unit type and signature file of each signature unit, and the signature module 22 is used to call the signature file to sign the form according to the signature authority. The unit type includes construction unit, construction unit, design unit and supervision unit.
[0047] When signing, the to-be-signed form (or table) is read, the text content of the to-be-signed form is recognized, and the coordinate position of each text content in the table is recorded; the unit type and signature file (i.e. electronic seal) of the to-be-signed unit are read from the construction unit database 21; the field containing the unit type is searched from the recognized text content, and the signature file is placed at the coordinate position of the field, so that the signature file has an overlapping area with the field, and the signature is completed.
[0048] When reading the to-be-signed form, the frame line in the to-be-signed form is recognized first, and the text content in each frame is recognized from the top left corner to the bottom right corner as a text segment in the frame; the unit type is used to search each text segment in the frame, find the text segment in the frame containing the unit type, and place the signature file in the frame where the text segment is located, so that the signature file has an overlapping area with the frame.
[0049] Further, in order to avoid the existence of a form field requiring to fill in the name of a signing unit and a form field requiring to sign in one form, considering that the position requiring to sign (seal) in a form usually contains the keyword "seal", the keyword "seal" is used to search the text segment in each box respectively, the text segment containing the unit type and the keyword "seal" is found, and the seal file is placed in the box where the text segment is located.
[0050] In the embodiment, since the form to be signed is generated by the form generation subsystem, the recognition of all text contents (form item name) has been completed, and thus the extracted form item name can be directly used as the text segment in the box.
[0051] Before placing the seal file, the center point of the box where the seal file to be placed is obtained, and the distance between the center point and the edge of the form to be signed is compared with the radius of the seal file. If the distance is greater than the radius of the seal file, the center point of the seal file is placed on the center point. Otherwise, the edge of the seal file is placed close to the edge of the form to be signed. In this way, the seal can be prevented from being placed outside the form and thus invalid, and meanwhile, the seal file and the corresponding seal box have an overlapping area.
[0052] Further, when signing, the form to be signed is read, and the text content in the form is extracted. The unit type of the unit to be signed and the seal file are read from the unit database 21. The form item containing the unit type field is found from the text content of the form. The coordinate position of the form item in the form is determined, and the seal file is placed at the coordinate position to complete the signing.
[0053] Specifically, in the embodiment, the form to be signed needs to be generated by the form generation subsystem 1. After the form template is retrieved from the form database 4 by the form filler, the form filler fills in the form content and submits the filled form. The seal person reads the form to be signed. Since the form item name and the form field are extracted from all areas in the form during the generation of the form, the form item name can be directly read during the signing, and the form item containing the unit type field is found therefrom. Then, the signing is performed according to the coordinate position of the form item.
[0054] Generally, multiple units need to sign on one form. In order to ensure that each seal is in the specified position and the seals do not overlap, for multiple seals arranged in the horizontal direction, the sum of the widths of all the seals is calculated and compared with the width of the form. If the sum is less than the width of the form, the seals are arranged in the horizontal direction with intervals. If the sum is greater than the width of the form, the vertical positions of the seals are adjusted in sequence, so that the center distance between two adjacent seals is greater than the sum of the radii of the two seals.
[0055] The adjusting step of the longitudinal position of the signature is: arranging the centers of all the signatures equidistantly in the horizontal direction under the premise that the center of the signature is located in the area corresponding to the form item; calculating the minimum longitudinal center distance of the relative movement of two adjacent signatures in the longitudinal direction according to the horizontal center distance and the sum of the radii of the two signatures; taking the leftmost or rightmost signature as the starting point to adjust the longitudinal position of each signature one by one in the other direction, in which direction, if the distance between the next signature and the previous signature is less than the sum of the radii of the two signatures, the position of the next signature is adjusted in the longitudinal direction so that the longitudinal center distance of the two is greater than the minimum longitudinal center distance of the two; otherwise, the next signature is adjusted.
[0056] The scheduling subsystem 3 comprises a request module 31 for establishing a concrete request form, the concrete request form containing engineering information, a grade of concrete and a requested amount; the engineering information containing an address of a construction project; a distribution module 32 for distributing concrete tank trucks according to the requested amount of concrete and tracking the running state of each distribution concrete tank truck in real time; a confirmation module 33 for feeding back the actual amount of concrete after the concrete pouring is completed and confirming the remaining amount of concrete; and a distribution module 34 for selecting a concrete request form with the same grade of concrete from all the concrete request forms that have not been completed for distribution according to the grade of the remaining concrete and distributing the remaining concrete to one of the concrete request forms.
[0057] When tracking and scheduling the concrete, the following steps are adopted, as shown in Figure 7
[0058] The concrete request form is established according to the construction plan, the concrete request form containing engineering information, a grade of concrete and a requested amount; the engineering information containing an address of a construction project.
[0059] The concrete tank trucks are arranged for distribution according to the requested amount of concrete, and the running state of each distribution concrete tank truck is tracked in real time, the running state including GPS positioning data.
[0060] After the concrete pouring is completed, the actual amount of concrete is fed back, and the remaining amount of concrete is confirmed.
[0061] The concrete request form with the same grade of concrete is selected from all the concrete request forms that have not been completed for distribution according to the grade of the remaining concrete, and the remaining concrete is distributed to one of the concrete request forms.
[0062] Before distribution, the last concrete carrying capacity of each concrete request form is calculated according to the requested amount on the concrete request form, and the concrete request form with the last concrete carrying capacity less than the remaining amount of concrete is selected, and the remaining concrete is distributed to the concrete request form.
[0063] If the last truck concrete carrying capacity of two or more concrete request forms is less than the concrete remaining amount, the delivery fuel consumption required for the last truck concrete delivery and the allocation fuel consumption required for the remaining concrete allocation are calculated for each concrete request form, the delivery fuel consumption is subtracted from the allocation fuel consumption, and the concrete request form with the largest difference is selected, and the remaining concrete is allocated to the concrete request form.
[0064] If the last truck concrete carrying capacity of all concrete request forms is greater than the concrete remaining amount, the distance between the address in each concrete request form and the address of the project where the remaining concrete is located is calculated, and the concrete request form with the shortest distance is selected for allocation.
[0065] In a specific implementation, the following judgment criterion can also be used for allocation: if the last truck concrete carrying capacity of two or more concrete request forms is less than the concrete remaining amount, the concrete request form with the smallest difference between the last truck concrete carrying capacity and the remaining concrete is selected, and the remaining concrete is allocated to the concrete request form.
[0066] The above only describes the preferred embodiments of the present application and is not intended to limit the present application. Any modification, equivalent replacement, and improvement within the spirit and principle of the present application shall be included in the protection scope of the present application.
Claims
1. A method for signing a form, characterized in that, Includes the following steps: First, establish a database of construction units that associates each signing unit with its unit type in the construction project; When signing, the unit type of the unit to be signed is read from the construction unit database; Then read the form to be signed, recognize the text content of the form, and record the coordinate position of each text content in the table; The system retrieves fields containing unit types from the identified text content and places the signed document at the coordinates of that field. When reading the form to be signed, it first identifies the borders in the form, and then identifies the text content in each box from the top left to the bottom right and treats it as a text segment within the box. It then uses the unit type to search for the text segment within each box, finds the text segment containing the unit type, and places the signed document within the box containing that text segment. Before placing the document to be signed, first obtain the center point of the box where the document to be signed is placed, and compare the distance between the center point and the edge of the form to be signed with the radius of the document to be signed. If it is greater than the radius of the document to be signed, then place the center point of the document to be signed on the center point; otherwise, place the edge of the document to be signed close to the edge of the form to be signed. For multiple signatures arranged horizontally, first calculate the sum of the widths of all signatures and compare it with the width of the table. If it is less than the width of the table, then arrange the signatures horizontally with intervals; if it is greater than the width of the table, then adjust the vertical position of each signature in turn so that the center distance between two adjacent signatures is greater than the sum of the radii of the two signatures. The steps for adjusting the vertical position of the signatures are as follows: While ensuring the document to be signed is within the form to be signed, arrange all signatures at equal horizontal intervals. Calculate the minimum vertical center distance between two adjacent signatures based on their horizontal center distance and the sum of their radii. Starting from the leftmost or rightmost signature, adjust the vertical position of each signature one by one towards the other. In this direction, if the distance between the next signature and the previous signature is less than the sum of their radii, adjust the position of the next signature vertically so that the vertical center distance between them is greater than the minimum vertical center distance. Otherwise, continue adjusting the next signature.
2. The form signing method as described in claim 1, characterized in that, Use the keyword "chapter" to search the text segments in each box, find the text segments in the box that contain both the unit type and the keyword "chapter", and place the signed document in the box containing that text segment.
3. A form system based on the form signing method according to claim 1 or 2, characterized in that, It includes a signing subsystem, which includes a construction unit database for storing data on the association between each signing unit and its unit type in the construction project, and a signing module for signing forms according to signing permissions.
Citation Information
Patent Citations
Seal overlapping detecting and processing method under situation of multi-person concurrent signatures
CN104463931A
Method for avoiding signature overlapping and terminal thereof
CN113177237A