https://github.com/i-rzr-i/itemdistribution
An item/document distribution suggestion based on user load calculation.
https://github.com/i-rzr-i/itemdistribution
coefficient distribution document entity item list
Last synced: 5 months ago
JSON representation
An item/document distribution suggestion based on user load calculation.
- Host: GitHub
- URL: https://github.com/i-rzr-i/itemdistribution
- Owner: I-RzR-I
- License: mit
- Created: 2023-08-21T14:58:46.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-10-10T12:46:21.000Z (over 1 year ago)
- Last Synced: 2025-01-12T21:13:58.232Z (over 1 year ago)
- Topics: coefficient, distribution, document, entity, item, list
- Language: C#
- Homepage:
- Size: 40 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://www.nuget.org/packages/ItemDistribution/)
[](https://www.nuget.org/packages/ItemDistribution)
This repository results from the need to implement a more dynamic way to assign and document/item to the user for processing. At the base of implementation is a selection that must find the user that is move available and has a few items in processing (coefficient of load).
This is a short description of the base algorithm used for user selection.
The user selection is implemented in a few steps:
- Find the user with the lowest coefficient;
- In case when was found more than one user with the same coefficient, then find a new user by his `priority` (`Priority` may be the user role, user qualification, or user work experience, etc. The priority is higher as close to 0 as possible is the value.) and return new selection;
- In case when was found more than one user with the same `priority`, then find the first user with the most recent activity date.
- In all-over cases, like an exception, the algorithm will get a random user.
As a result of algorithm execution, you will get 2 user suggestions:
- a `base` user distribution suggestion
- an `alternative` user suggestion (which is a random user selection).
**In case you wish to use it in your project, u can install the package from nuget.org** or specify what version you want:
> `Install-Package ItemDistribution -Version x.x.x.x`
## Content
1. [USING](docs/usage.md)
1. [CHANGELOG](docs/CHANGELOG.md)
1. [BRANCH-GUIDE](docs/branch-guide.md)