Detailed Description
The following description of the embodiments of the present invention will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are some, but not all embodiments of the invention. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The anti-reprocessing method for the input bill provided by the embodiment can be applied to an application environment as shown in fig. 1, wherein a client communicates with a server. Clients include, but are not limited to, various personal computers, notebook computers, smart phones, tablet computers, and portable wearable devices. The server may be implemented by a stand-alone server or a server cluster formed by a plurality of servers.
In a first embodiment, as shown in fig. 2, a method for anti-reprocessing an input ticket is provided, and the method is applied to a server in fig. 1 for illustration, and includes the following steps:
S10: obtaining screening conditions for inquiring service payment list numbers by a current operation user, screening out the service payment list numbers meeting the screening conditions, and counting the number of the inquiring service payment list numbers meeting the screening conditions.
In this step, the service payment list number used for inquiring by the user is a service payment serial number stored in the system in advance, for example, for the financial system, the service personnel upload the payment list to the financial system in advance, wait for the user to input an invoice on the corresponding payment list, and apply for reimbursement.
Optionally, the screening condition includes a date of the service payment list number, an organization to which the service payment list number belongs, a cost type, a channel detail, a provider name and a code. The mechanism to which the service payment list number belongs comprises an upper mechanism and a lower mechanism, wherein the lower mechanism is a sub-mechanism of the upper mechanism.
When the user uses the screening conditions to screen, each condition is not required to be selected respectively, and the interested partial conditions can be selected, for example, the selected conditions are date, cost type and channel type, for example, the date is 5 months in 2018, the cost type is labor consideration, and the channel type is personal channel; the matched service payment statement number is screened based on these three conditions. As other implementation manners, the user may also perform screening according to other screening conditions, such as a higher-level organization, a lower-level organization, and channel details, for example, the higher-level organization is a division, the lower-level organization is a company under the division, and the channel details are push channels.
In this step, after the service payment list numbers satisfying a certain condition are screened out, each service payment list number is displayed on the display panel in a list manner, and the number N of query strips for counting the service payment list numbers is required, where N is a positive integer. If the number of the query strips of the service payment list numbers meeting the conditions is zero according to the screening conditions of the users, prompting the users to modify the screening conditions and re-query.
S20: and in the service payment list numbers meeting the screening conditions, updating remark fields with empty remark contents in each service payment list number, updating the remark fields into the mark numbers of the current operation users, and counting the number of updated remark fields.
It can be understood that if the remark content is detected to be empty, it is determined that the service payment list number is not occupied by other operation users at this time, and the current operation user can be allowed to use the service payment list number, so that the remark field of the service payment list number is updated to be the mark number of the current operation user, so that the current operation user is bound with the service payment list number, and the other operation users are not allowed to occupy the service payment list number.
In this step, for the N service payment statement numbers queried in step S10, updating of the remark field is required, and the precondition of updating is to see and determine whether there is any content in the remark field of each service payment statement number. Specifically, before updating the remark field with the remark content empty in each service payment list number, as shown in fig. 3, the method further includes the following steps:
S201: judging whether remark contents in remark fields of the service payment detail list numbers are empty or not;
s202: when remark content in a remark field of a service payment list number is not empty, detecting whether the remark content is a mark number of the current operation user;
S203: if the remark content which is not empty is detected to be not the mark number of the current operation user, judging that the service payment list number is legally occupied by other operation users, and prohibiting the service payment list number from being repeatedly occupied by the current operation user.
It can be understood that if the remark content is not empty and is not the number of the current operation user, it is determined that the service payment list number is legally occupied by other operation users at the moment, the service payment list number is prohibited from being repeatedly occupied by the current operation user, and the remark field of the service payment list number is not updated.
Optionally, the marking number of the operating user used as the remark field is used for binding the identity of the operating user with the service payment detail number, so that the marking number of the operating user can be an account number of the user login system, an identity card number after the user login system performs identity authentication, or other numbers capable of uniquely identifying the user identity.
In this step, in the process of updating the remark field to the number of the current operation user, statistics is required to be performed on the number n of updated entries (n is a natural number), and the service payment list number without updating the remark field does not count.
S30: comparing the updated number with the inquiry number, and prohibiting the bill input operation of each service payment detail number when the updated number is not equal to the inquiry number; and when the updated number is equal to the inquired number, allowing the bill input operation of the detail number of each business payment.
It can be understood that, because some service payment list numbers may be occupied by other operation users in the N service payment list numbers queried by the current operation user, the number N of updated remark fields is smaller than the number N of queried remark fields; when all service payment list numbers are not occupied by other operation users, the number N of updating remark fields is equal to the number N of inquiring remarks; when all the service payment list numbers are occupied by other operation users, the number n of the updated remark fields is equal to zero. Thus, it is necessary to determine whether or not there is a ticket entry operation in which the service payment statement number is being occupied by other operation users by comparing the size between the update number and the query number, thereby determining whether or not to prohibit or permit the ticket entry operation of the respective service payment statement number.
Specifically, in this step, the updated n service payment list numbers and remark fields are stored through relational data (such as MySQL, etc.), and when the updated number is equal to the number of query, the n service payment list numbers and remark fields are recorded, the transaction is submitted in a statement of a programming language class, such as data definition language (DDL, data Definition Language), and the foregoing data record is written in the storage engine through the open storage engine interface.
And when the number of the updated files is not equal to the number of the inquiry files, rolling back the transaction, prompting that the data are occupied by other operation users, and returning to the original inquiry page. Optionally, the prompt may indicate the specific service payment list number that is being occupied by other operation users, or may not indicate the specific occupied service payment list number, and only prompt that data is being occupied.
In an example, after prohibiting the ticket entry operation of the individual service payment statement number, further comprising:
Detecting the filtered service payment list numbers, and counting the number of the query of the service payment list numbers again after the filtered service payment list numbers are removed from the service payment list numbers meeting the screening conditions.
It can be understood that after prompting the number of the service payment list which is being occupied by other operation users, allowing the user to re-perform screening inquiry on the returned inquiry page according to the prompt, allowing the user to manually filter the number of the service payment list which is being occupied, repeating the contents in the step S20 and the step S30 according to the number of the service payment list which is being filtered, namely updating the inquiry bar number again to n, updating the remark field of the rest service payment list number, counting the updated bar number n1 of the remark field, comparing the updated bar number n1 with the inquiry bar number n, and when the updated bar number n1 is not equal to the inquiry bar number n, not allowing the current operation user to enter the ticket; when the number of updates n1 is equal to the number of queries n, the current operating user is allowed to enter notes.
When the current operation user is allowed to input the bill, a bill input page of the service payment detail number is provided, and the user can input the bill of the next service payment detail number after inputting the bill of one service payment detail number until the bill of all the service payment detail numbers is input.
S40: when the bill input of each business payment detail list number is detected, and the bill payment application of each business payment detail list number is detected, updating the data state of each payment application to the mark number of the current operation user, and judging whether the payment application is passed or not according to the updated number of the data state of the payment application.
It can be understood that if the content in the data state of the payment application is empty, it is determined that the payment application of the ticket is not bound by other operation users, and the current operation user can be allowed to bind the payment application of the ticket, so that the data state of the payment application is updated to the mark number of the current operation user, so that the current operation user and the payment application are bound, and the other operation users are not allowed to bind the payment application.
In this step, after detecting that the user inputs the bill of all the business payment detail numbers, the user needs to initiate the payment application of each bill, and the data state of the payment application needs to be updated, and the precondition of the updating is whether the data state of the payment application has content or not. Specifically, before updating the data status of each payment application, as shown in fig. 4, the method further includes the following steps:
S401: detecting whether the content in the data state of each payment application is empty or not;
s402: if the content in the data state of the payment application is detected to be not empty, detecting whether the content is the mark number of the current operation user;
s403: if the content is detected not to be the mark number of the current operation user, judging that the payment application is legally bound by other operation users, prohibiting the payment application from being repeatedly bound by the current operation user, and not updating the data state of the payment application.
In this step, determining whether to pass the payment application according to the updated number of data states of the payment application includes:
S411: counting the data state updating number of the payment application, and comparing the data state updating number with the query number;
S412: when the number of the data state updating entries is equal to the number of the inquiry entries, judging that the payment application passes; and when the number of the data state updating entries is not equal to the number of the query entries, judging that the payment application does not pass.
It can be understood that in this step, the payment application and the updated data state are stored through a relational database, when the number of the updated data states is equal to the number of the query, the payment application and the updated data state are recorded, the transaction is submitted, and the data record is written into the storage engine through the open storage engine interface. When the number of the data state updating is not equal to the number of the query, the transaction is rolled back, the payment application is prompted to be bound by other operation users, and the original query page is returned.
On the basis of the first bill input anti-duplication processing in the step S30, the anti-duplication processing of the second bill input is performed in the step S40, which is equivalent to performing the first input anti-duplication processing before the bill is input by the user, and performing the second input anti-duplication processing after the bill is input by the user and during the payment application, so that for safety, the dual anti-duplication processing is performed, and the accuracy of not repeatedly inputting the bill and not repeatedly applying for payment is further improved.
A specific application scene of the anti-reprocessing method for the input bill of the embodiment is as follows:
the user inputs the filtering condition through a pull-down option: the date is 5 months in 2018, the cost type is labor service payment, the channel type is a personal channel, the service management system displays a query result page, and a plurality of service payment detail numbers meeting the screening conditions are listed in the page; then, the user selects the service payment detail list numbers and clicks the entering bill entry page, the service management system judges whether the user is allowed to enter data according to the step S20 and the step S30, if the user is allowed to enter data, the user enters the bill entry page, and when the user finishes entering all bills and initiates a payment application, the service management system judges whether the payment application is passed or not according to the step S40.
The anti-reprocessing method for the input bill has the following advantages:
(1) Ensuring that a plurality of bills can not be repeatedly opened by the same service payment detail single number;
(2) Double anti-duplicate processing of the recorded bill is performed, namely, the anti-duplicate processing is performed once before the user records the bill, and the anti-duplicate processing is performed once again after the user records the bill and when the user pays the application, so that the accuracy of not repeatedly recording the bill and not repeatedly paying the application is further improved;
(3) When a plurality of users do not repeatedly inquire the same service payment list number, the online operation of the plurality of users is supported, the bill input efficiency is improved, and the user experience is improved.
In the prior art, the method for preventing the repeated reimbursement of the invoice is to change and monitor the reimbursement state of the invoice in real time and lock the reimbursed invoice so as to prevent the repeated reimbursement of the invoice; the invention carries out double anti-duplication processing on the recorded bill, namely, carries out one-time processing before bill recording, and binds the service payment detail list number with an operation user by a remark field updating mode of the service payment detail list number; and then carrying out one-time anti-duplication processing after the bill is input, and binding the payment application with an operation user in a state data updating mode of the payment application.
In a second embodiment, as shown in fig. 5, there is provided an anti-reprocessing method for an input ticket, including the steps of:
S10: acquiring screening conditions for inquiring service payment detail list numbers of a current operation user, screening out the service payment detail list numbers meeting the screening conditions, and counting the number of the inquiring service payment detail list numbers meeting the screening conditions;
S20: in the service payment list numbers meeting the screening conditions, updating remark fields with empty remark contents in each service payment list number, updating the remark fields into the mark numbers of the current operation users, and counting the number of updated remark fields;
S30: comparing the updated number with the inquiry number, and prohibiting the bill input operation of each service payment detail number when the updated number is not equal to the inquiry number; when the updated number is equal to the inquired number, allowing the bill input operation of the detail number of each business payment;
S40: when the bill input of each business payment detail list number is detected, and bill payment applications of each business payment detail list number are detected, updating the data state of each payment application to the mark number of the current operation user, and judging whether the payment application is passed or not according to the updated number of the data state of the payment application;
The steps S10 to S40 in the present embodiment are the same as the steps S10 to S40 in the first embodiment, and the specific implementation process refers to the related description in the first embodiment, which is not repeated in the present embodiment.
In this embodiment, before it is detected that the ticket of each service payment statement number is completely entered, the method further includes:
S50: and detecting whether bill input pages of the service payment detail numbers are closed or not, and detecting whether bill input of the service payment detail numbers is canceled or not.
The specific implementation means for detecting and judging whether the user actively cancels the recorded bill and whether the user closes the recorded page is that a canceling recorded option control key is arranged on the bill recorded page of the user, when the user clicks the canceling recorded option control key, the user actively cancels the recorded bill is detected through the control key; similarly, a page closing control key is arranged on the bill input page of the user, and when the user is detected to click the page closing control key, the user can be judged to close the input page.
S60: and when the bill input page is closed or the bill input cancellation is detected, clearing the content in the remark field of each service payment detail number.
It can be understood that under the condition that the user actively cancels the input bill or the user actively closes the input page, the remark field content of the service payment detail number bound by the current operation user is deleted, the remark field content of the service payment detail number bound by the current operation user is emptied, and the service payment detail number and the current operation user are unbinding.
In the step, as the user actively cancels the input bill or closes the input page, the user can judge that the bill input is not finished, therefore, the service payment detail list number and the current operation user are required to be unbinding, and the condition that other operation users cannot input the bill to the service payment detail list number due to the anti-repeat processing set before is avoided.
In a third embodiment, as shown in fig. 6, there is provided an anti-reprocessing method for an input ticket, including the steps of:
S10: acquiring screening conditions for inquiring service payment detail list numbers of a current operation user, screening out the service payment detail list numbers meeting the screening conditions, and counting the number of the inquiring service payment detail list numbers meeting the screening conditions;
S20: in the service payment list numbers meeting the screening conditions, updating remark fields with empty remark contents in each service payment list number, updating the remark fields into the mark numbers of the current operation users, and counting the number of updated remark fields;
S30: comparing the updated number with the inquiry number, and prohibiting the bill input operation of each service payment detail number when the updated number is not equal to the inquiry number; when the updated number is equal to the inquired number, allowing the bill input operation of the detail number of each business payment;
S40: when the bill input of each business payment detail list number is detected, and bill payment applications of each business payment detail list number are detected, updating the data state of each payment application to the mark number of the current operation user, and judging whether the payment application is passed or not according to the updated number of the data state of the payment application;
The steps S10 to S40 in the present embodiment are the same as the steps S10 to S40 in the first embodiment, and the specific implementation process refers to the related description in the first embodiment, which is not repeated in the present embodiment.
In this embodiment, after allowing the ticket entry operation of the individual service payment statement number, before step S40, the method further includes:
s70: detecting whether a server crashes;
in this step, by acquiring a crash signal of the server, whether the server crashes is determined according to the crash signal.
S80: after detecting service breakdown, judging whether a service payment detail list number which is not recorded with a bill and has remark fields of a mark number of a certain operation user exists or not;
it can be understood that if the server crashes, whether the service payment list number which is not recorded with the bill and has the remark field of the mark number of a certain operation user exists is judged by detecting the remark field of the service payment list number and detecting the bill of the service payment list number.
S90: and if the business payment list number which is not recorded in the bill and the remark field is the mark number of a certain operation user exists, clearing the content in the remark field of the business payment list number.
It can be appreciated that when there is a service payment statement number for which a ticket is not entered and the remark field is the tag number of a certain operating user, the remark field content of the bound service payment statement number is emptied by deleting the remark field content of the service payment statement number.
In the extreme case that the server is collapsed and remark fields of the service payment list numbers are not emptied, the abnormal data processing is performed in the step, and the problem that data cannot be operated in the extreme case is avoided.
It should be understood that the sequence number of each step in the foregoing embodiment does not mean that the execution sequence of each process should be determined by the function and the internal logic, and should not limit the implementation process of the embodiment of the present invention.
In the third embodiment, an anti-reprocessing device for an input bill is provided, and the anti-reprocessing device for an input bill corresponds to the anti-reprocessing method for an input bill in the above embodiment one by one. As shown in fig. 7, the anti-reprocessing device for the input bill includes a condition screening module 71, a field updating module 72, a statistics module 73, a bill input judging module 74, a payment status updating module 75 and a payment application judging module 76.
The functional modules are described in detail as follows:
A condition screening module 71, configured to obtain a screening condition for inquiring a service payment list number by a current operation user, and screen out the service payment list number that meets the screening condition;
A field updating module 72, configured to update, in the service payment list numbers satisfying the screening condition, remark fields with remark contents empty in each service payment list number;
A statistics module 73, configured to count the number of query numbers of the service payment details numbers that satisfy the screening condition, and count the number of update numbers of the remark fields;
A bill input judging module 74, configured to compare the updated number with the query number, and prohibit the bill input operation of the payment statement number of each service when the updated number is not equal to the query number; when the updated number is equal to the inquired number, allowing the bill input operation of the detail number of each business payment;
A payment status updating module 75, configured to update, when it is detected that the ticket of each service payment statement number is completely entered and a ticket payment application of each service payment statement number is detected, a data status of each payment application to a reference number of the current operation user;
A payment application judging module 76 for judging whether to pass the payment application according to the updated data state number of the payment application. The payment application determination module 76 includes:
the counting unit is used for counting the data state updating number of the payment application;
A comparison unit for comparing the data state update count with the query count;
The judging unit is used for judging that the payment application passes when the data state updating number is equal to the query number; and when the number of the data state updating entries is not equal to the number of the query entries, judging that the payment application does not pass.
Further, the anti-reprocessing device further includes:
And the locking module is used for judging whether the remark content in the remark field of each service payment list number is empty or not before updating the remark field with the empty remark content in each service payment list number, and judging that the service payment list number is legally occupied by other operation users when the remark content in the remark field with the service payment list number is not empty and the remark content is not the mark number of the current operation user, and prohibiting the service payment list number from being repeatedly occupied by the current operation user.
Further, the anti-reprocessing device further includes:
The initialization module is used for detecting whether the bill input page of each service payment detail number is closed or not before detecting that the bill input of each service payment detail number is finished, and detecting whether the bill input of each service payment detail number is cancelled or not; and when the bill input page is closed or the bill input cancellation is detected, clearing the content in the remark field of each service payment detail number.
Further, the anti-reprocessing device further includes:
The data exception handling module is used for detecting whether the server is crashed after allowing the bill entry operation of each service payment list number, judging whether the service payment list number which is not entered with the bill and has the remark field of the mark number of a certain operation user exists after detecting the service crash, and emptying the content in the remark field of the service payment list number if the service payment list number exists.
The specific limitation of the anti-reprocessing device for the recording bill can be referred to the limitation of the anti-reprocessing method for the recording bill hereinabove, and will not be repeated here. The above-mentioned various modules in the anti-reprocessing device for entering notes can be implemented in whole or in part by software, hardware and combinations thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
In the fourth embodiment, a computer device, which may be a terminal, is provided, and the internal structure thereof may be as shown in fig. 8. The computer device includes a processor, a memory, a network interface, a display screen, and an input device connected by a system bus. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a readable storage medium, an internal memory. The non-volatile storage medium stores an operating system and computer readable instructions. The internal memory provides an environment for the execution of an operating system and computer-readable instructions in a readable storage medium. The network interface of the computer device is for communicating with an external server via a network connection. The computer readable instructions when executed by the processor implement a method of anti-reprocessing of an input ticket. The readable storage medium provided by the present embodiment includes a nonvolatile readable storage medium and a volatile readable storage medium.
In a fifth embodiment, one or more computer-readable storage media storing computer-readable instructions are provided, and the readable storage media provided by the present embodiment include a nonvolatile readable storage medium and a volatile readable storage medium. The readable storage medium has stored thereon computer readable instructions which when executed by one or more processors implement a method of anti-reprocessing of an input ticket.
Those skilled in the art will appreciate that implementing all or part of the above described embodiment methods may be accomplished by instructing the associated hardware by computer readable instructions stored on a non-volatile readable storage medium or a volatile readable storage medium, which when executed may comprise the above described embodiment methods. Any reference to memory, storage, database, or other medium used in embodiments provided herein may include non-volatile and/or volatile memory. The nonvolatile memory can include Read Only Memory (ROM), programmable ROM (PROM), electrically Programmable ROM (EPROM), electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms such as Static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double Data Rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link (SYNCHLINK) DRAM (SLDRAM), memory bus (Rambus) direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), among others.
It will be apparent to those skilled in the art that, for convenience and brevity of description, only the above-described division of the functional units and modules is illustrated, and in practical application, the above-described functional distribution may be performed by different functional units and modules according to needs, i.e. the internal structure of the apparatus is divided into different functional units or modules to perform all or part of the above-described functions.
The above embodiments are only for illustrating the technical solution of the present invention, and not for limiting the same; although the invention has been described in detail with reference to the foregoing embodiments, it will be understood by those of ordinary skill in the art that: the technical scheme described in the foregoing embodiments can be modified or some technical features thereof can be replaced by equivalents; such modifications and substitutions do not depart from the spirit and scope of the technical solutions of the embodiments of the present invention, and are intended to be included in the scope of the present invention.