We need an application that manages workflow in our office. We use Windows 7 desktops and Windows 2012 server. The application will have 2 parts, a Windows service and a desktop client.
Service
-Tracks all files and folders under a specified root folder as they are created, read, modified and deleted, and custom properties (see below).
-Obviously the service will be doing repetitive searches of the Windows file system (we'll call this an "update"). The files will be indexed by Windows Search Service but your work has to perform well, reliably and efficiently.
-Must be able to exclude unwanted files (i.e. temporary files, auto-save files, etc.) from updates
-Must be able to collect/store/report file properties necessary to make the desktop client features work (see below)
-Must be able to email data to users (see below). I want to specify an TLS/SSL SMTP server with a username/password
-One possible bug I can foresee is when a file is renamed, I want the system to handle that seamlessly
Properties for files/folders and datatypes
-The following properties are a user or list of users: TRACK, ASSIGNED TO, ASSIGNED BY, PROOFREAD BY, FOR REVIEW BY, APPROVED BY, REJECTED BY
-The following are dates (no times) and text that corresponds to that date: DUE ON, WARNING DATE, DRAFT DATE, DIARIZATION DATE, COURT DATE
-The following are yes/no flags: TO FAX, TO MAIL, TO SIGN, TO COURIER, TO COURT, TO SERVE
-COMMENTS which contains text
Desktop client:
-Runs as a standalone executable with no installation.
-UI should be designed in a vertical rectangle, and dockable to the side of the screen
-3 list boxes
-Each list box shows a list of files and their properties
-1st box shows all of the files created and modified by that user and properties (above) that match that user
-2nd box shows all of the files for other users (specified by that user)
-3rd box shows files in specified folders (unsorted faxes, unsorted scans, etc.) and specified yes/no flags
-Each list shows the file name, the FIRST subfolder the file appears in only, the most recent property, and the created/modified/deleted/property date (how many seconds/minutes, yesterday, etc.)
-Single click on a file to see full details (all other properties, whatever info can't be shown in the list)
-Right click on a file to be able to set/remove properties, open the containing folder, hide the file from the list
-Double click on a file opens it
Emails:
-Frequency: emails are sent on each user's set frequency (.5 hours, 1 hour, 5 hours, etc). Each user can set 2 frequencies, one for in the office (under specified hours) and one outside of those hours.
-Each user gets a custom email that summarizes all of their transactions (i.e. anything with their user tag) since the last email
-Transactions are divided into NEW (i.e. since the last email) and OLD (already emailed before)
-If a user is only flagged on a file because of the TRACK property, it doesn't show up in the OLD section
-HTML formatting so it is easy to read
Admin:
-All activity is logged as to date, time and user, for creating and removing properties
-Logging displays in plain english but also searchable by date, first subfolder, file name, type of transaction
-Create. edit, delete, disable users and all necessary user settings
-Admin file list shows all files with filters (i.e. if I wanted to see all WARNING DATES)
-Reliable backup/restore
If this project goes well there will be chances for revisions (new features, redesigns etc.) for additional fees. Programmer must be available to do tech support at an hourly rate for the near future.