Commit Graph

80 Commits

Author SHA1 Message Date
sam 7e34215b78 Patient class added. Simple class to represent guess what. 2011-03-20 07:22:52 +00:00
sam dfefa179b2 CalendarGrid:
- Support for Autoscrolling corrected. 
- A little optimization: Grid is only drawn once now when starting, not twice (don't know why original code did that).
CGAppointment:
- Added member Patient (new Class)
CGDocument:
- OnOpenDocument now accepts input of DateTime to decide where to open document.
- SlotsAvailable algorithm now includes code for scaling according to timescale and code to merge Blocks if they are adjacent.
CGDocumentManager:
- Fix bug having to do with canceling log-in after first retry. BMX lib threw an exception which was not caught.
CGView: Many changes:
- SlotsAvailable signature changed in CGDocument. All references to it had to be changed.
- Opening a node in the tvSchedules by clicking on the plus sign did not select it. Code changes to make it select it.
- UpdateStatusBar now uses a string builder; and shows a more comprehensive message on the availability in the Status Bar.
- Focus issues on various controls.
- Support for printing a slip after an appointment is made automatically has been added.
CustomPrinting:
- now includes a method to print a single appointment slip
DAppointPage:
- Checkbox to decide whether to print appt slip added.
- New readonly property to get the appointment that has been made (of type CGAppointment).
DApptSearch:
- StartDate and EndDate now autoadjust based on each other.
- lblMessage added to show user message if no appointments are found.
2011-03-20 07:22:11 +00:00
sam a1450850d8 CGDocumentManager: Holiday SQL statement relied on Windows Date which is culture specific. Now sent as culture insensitive FM Date for query. 2011-03-07 10:59:47 +00:00
sam d4d78c981c Release version for svn. 2011-03-03 09:56:31 +00:00
sam cc5b33051b CGDocumentManager: Integrating Tariq's changes to CGDocumentManager to support Custom Printing. 2011-03-03 09:52:41 +00:00
sam d347c2d7d8 DPatientLookup.cs: Usings Cleanup
DApptSearch: Extensive refactoring. Now uses new algorithm to find appointments. Now outputs CGAvailability
CGView: Appointments checked in now set the Checkin time on the appointment structure; changes to support DApptSearch modified output.
CGSchedLib: Extensive refactoring; only 2 methods remain: CreateAppointmentSchedule and CreateAvailabilitySchedule
CGDocument: SlotsAvailable uses a new algorithm
CGAVView: Uses CalendarGrid.TimesOverlap instead of the removed one in CGSchedLib
CGAVDocument: Uses CalendarGrid.TimesOverlap instead of the removed one in CGSchedLib; CreateAssignedSlotSchedule reassigned to CreateAvailabilitySchedule
2011-03-03 09:44:18 +00:00
sam 23b1654177 Remove CGSchedLib.OutputArray everywhere. Used to be needed in VS 2003; not anymore as you can see tables now.
CalendarGrid:
 - Make MinSince80 and TimesOverlap static functions for use by other classes since they are done over and over again.
CGAppointments:
 - Documentation updates
CGAVDocument:
 - Removal of OutputArray
CGDocument:
 - Refactored RefreshAvailabilitySchedule
 - AddAvailability will not call UpdateAllViews any more. View will be responsible for redrawing itself.
 - Removal of OutputArray
CGDocumentManager:
 - Removal of OutputArray
 - Documentation updates
CGSchedLib: Lots of Changes
 - Class now static (new .net 2.0 feature)
 - Removed OutputArray
 - Documentation Updates
 - Commented out now unused CreateAssignedTypeSchedule
CGView:
 - OnUpdateScheduleCallback now has try catch when it this.Invokes the original form so that it won't crash if the form has been closed before it gets called.
2011-02-21 14:21:24 +00:00
sam d5af78c41d 2011-01-27 13:24:20 +00:00
sam e6ebdedc67 CGDocument: On Delete Appointment, no update done by Document method. View responsible for this request.
CGView: 
1. Drag and Dropped code made to be the same as the rest. Call Document for updating appointments, but not redraw the grid. Drag Drop does not request a refresh directly; but rather, it shoots RPMS events which when they are raised back update the grid.
2. Fixed bug in Drag and Drop where the source appointment resource is changed before passing it to Document.CreateAppointment() which saves it to the database. This causes the appointments maintained by Document to be temporarily corrupted if CreateAppointment fails during drag and drop.
3. View calls refershdocumentasync now after Document.DeleteAppointment call.
Last but not least: new version of ClinicalScheduling.exe and BMXNet23.dll (release).
2011-01-27 07:46:45 +00:00
sam 8e5d5f8665 New exe and dll
calendarGrid: Minor documentation updates.
CGAppointments: Object now supports Deep cloning
CGDocument: 
1. Major changes on how m_pAvArrays is handled. Now it is locked whenever it is updated or queried. Some refactoring to make sure there are no db calls during the locks so that the locks won't be expensive.
2. Removed ClearResources, an unused method.
3. Appointment aCopy walkin property is set to true if the appointment is a walkin. This makes sure that the grid draws it correctly between it is added to the appointment array and we fetch new data from the server.
4. Create appointment is not responsible anymore for requesting updates from the server. All requests to update data must be done through CGView, as it is the only party
 interested in displaying accurate data on the grid. Just send the create appt event to the server.
5. CheckInAppointment: Same thing. Now responsible for requesting updates from the server. Just send the checkin event to the server.
CGDocumentManager: Removed tracing. Done in BMX Library only now.
CGView:
1. CGAppointment fetched from Document, not from the copy maintained by the calendarGrid.
2. RefreshDocument calls before an appointment is made have been removed (need to find another way to make sure that the appointment has just not been booked). RefreshDocument & UpdateArrays are called async after appointments are made.
3. Appointment List passed to Calendar grid is now a copy, to prevent issues with concurrent access.
4. Message if a patient has apppointment at the same time vastly improved.
2011-01-26 11:01:39 +00:00
sam 700ea47212 CalendarGrid: Handling for mouse scroll wheel added.
CGAppointments: Now supports Deep Cloning with Clone().
Updated Exes
2011-01-23 13:00:56 +00:00
sam 3a03dc6871 calendarGrid: Removed MouseEnter event and added it to CGView which now has to handle it properly.
CGAppointments: now supports cloning.
CGDocument: Added RefreshDocumentAsync, which retrives data from the server w/o asking the grid to refersh.
CGDocumentManager: CGView.InitializeDocView does not take appointments as argument; callers are changed.
CGView: Many Changes:
 - Opening a Schedule nows calls up a splash and a wait cursor while loading.
 - Events coming from the server are now handled asynchronously (not on UI thread). This results in much better responsiveness.
 - Appointments, Availabilities, Resources are all set in the CalendarGrid by UpdateArrays; as a centralized point of drawing the grid.
 - A mistaken "feature"--stealing focus from each others windows, was removed--CalendarGrid.Focus event only fired now if the form is the Active Form. This is accomplished using GetActiveWindow() from user32.dll (a Win32 API).
LoadingSplash: Opacity removed; form resized.
2011-01-20 14:32:28 +00:00
sam 5cf703c69c New BMXNet dll. 2011-01-20 08:32:23 +00:00
sam fcb6ddfd95 CGDocument:
- Better constructor to set default values.
- Removed OnNewDocument and used constructor plus extra arguments instead.
- Added IsRefreshNeeded method to see if we need to get data from server.
CGDocumentManager:
- Refactored OnNewDocument out (was going to use Application.Run with the CGView form as argument, that didn't work for re-logging in)
- Refactored all ChangeServer and ChangeLogin handlers b/c they got broken with previous work.
CGView:
- this.Activate now in Load to show the form if you use Application.Run(view)
- Added shortcuts for chaning Server, Login, Division
- Position the Grid when doing OpenSelectedSchedule to start at the right day.
- Used IsRefreshNeeded to selectively load the splash screen and contact the database for refresh then close splash screen in RequestRefreshGrid.
2011-01-19 14:02:59 +00:00
sam 4db6055187 LoadingSplash: New Form that does... pretty much nothing. Just shows a splash when updating data from server.
CGView: 
- Refactoring for OpenSelectedSchedule. No major changes.
- Splash Screen and Wait Cursor support in RequestRefershGrid
CGDocumentManager:
- Use lambda (hurray!) for ParameterizedThreadStart
CGDocument:
- AddResource no longer updates views (they are empty at the point they added.)
- Removed unused SetDate method.
- Property SelectedDate no longer triggers updates to the database. Now you have to use RefershDocument instead.
2011-01-18 14:15:22 +00:00
sam 0c195fe52e CGView: Refactor PositionGrid into CalendarGrid. 2011-01-17 14:25:48 +00:00
sam b2d2f1beca CalendarGrid:
- Added PositionGrid from CGView
- Added Delegates from other classes that contained just one line.
CGAppointmentChangedArgs & CGSelectionChangedArgs:
- Changed to use automatic properties
CGAvailability:
- Added override ToString()
2011-01-17 14:12:38 +00:00
sam 36caf08c92 Deleting some files due to refactoring. 2011-01-17 14:06:36 +00:00
sam c21d94372c CGView: dateTimePicker1 behavior changes:
- No longer update schedule based on value change, as this is too too too chatty.
- Update schedule based on:
-- Picking a date from the drop down
-- Leaving dateTimePicker1
-- Pressing the enter key
2011-01-16 10:41:21 +00:00
sam c2fca2e1c6 CalendarGrid: Add MouseEnter event: puts focus on calendar grid. Used to "steal" focus from other controls so that lose focus events would fire.
CGDocumentManager: Added application-wide error handler on Application error exception; Added load timer to test how long it takes to load the GUI.
CGDocument: Just documentation updates.
2011-01-16 10:32:40 +00:00
sam 1232289af5 CGView:
- Changed the parameters required for checkin.
- Removed references to PCC+ and Stop Code processing, as they don't apply in VISTA.
CGDocument:
- Changed RPC call parameters to check in an appointment (BSDX CHECKIN APPOINTMENT).
- Date passed to BSDX Checkin Appointment is now an FM Date.
- Both necessitated server side changes.
DCheckIn:
- Removed processing for PCC+ and Stop Codes.
CGDocumentManager
- Removed Clinic Stop Code table loading.
2011-01-09 12:13:00 +00:00
sam 8522afbe6a DSplash: Removed Unused RemoteHide method. 2011-01-09 12:08:13 +00:00
sam 8af1be04a3 Progress Bar on Splash Screen and supporting code 2011-01-06 09:25:38 +00:00
sam eaad41e08e Bumped version number to 1.5
DSplash: Changes intended to support Asynchronous invokation of Splash Screen.
CGDocumentManager: Extensive changes to increase speed and invoke Splash screen async.
2011-01-05 09:10:20 +00:00
sam 034801884f Oops. Forgot to add DMassSlotDelete form, newly created. 2011-01-02 10:16:48 +00:00
sam 3b8e5b12b4 Comments in DAL 2010-12-12 17:29:55 +00:00
sam 079ed41a00 Release build for Scheduling v 1.42 for .net 3.5. 2010-12-12 07:44:49 +00:00
sam 54b4cdf2b4 UCPatientAppts: Now uses LINQ. Mumps side fixes deal with other bugs.
calendarGrid: Fixes 1 day drawing bug showing yesterday's appointments
CGAVView: Cosmetic changes so far
CGDocument: Documentation change due to change in return values from Mumps.
2010-12-08 14:44:29 +00:00
sam 3d51d124f2 calendarGrid now inherits from ScrollableControl rather than Panel to support easy mouse scrolling. Don't know if this works on Windows XP yet. 2010-11-24 06:42:07 +00:00
sam 9e34982831 UCPatientAppts: Fixes printing empty table bug reported by EHS.
DAccessTemplate: Various usability improvements.
CGDocumentManager: Fixed Delegate code so that it can operate asynchronously
CGAVView: Some temporary fixes (not totally usable): Added non-functional Delete Slots menu option; Added Background worker for saving acccess slots
In the future, Delete Slots will work; and will use ADO.net Updatable datatable for saving access slots.
calendarGrid: just some comments for now
AssemblyInfo: bumped version up to v1.4.2
2010-11-18 12:47:04 +00:00
sam 65c3b7dda1 Updated BMXNet22.dll. Encoding booboo (invalid C# property syntax caused a problem which was fixed by apparently not committed). 2010-09-29 08:57:15 +00:00
sam 223b2feef4 New Release 1.4.1
Change Project file format to VS 2010.
2010-09-29 07:44:52 +00:00
sam 4503323eb2 Several fixes:
1. Appointments in Past now trigger a warning.
2. Changes to support Division based management of Scheduling GUI.
2010-09-28 13:40:17 +00:00
sam 398513c3b5 Updated files with fix for default UTF-8 support. 2010-09-08 08:09:41 +00:00
sam 7dff631920 Changed target .net framework from 4.0 to 3.5. 2010-09-08 07:36:43 +00:00
sam 514b3c0701 Finally. v. 1.4.
Support for checking encoding on the server (if supports UTF-8 and encoding not specified, uses UTF-8; otherwise uses what locale says).
2010-09-07 19:50:55 +00:00
sam 0197ac2eb4 Bumped version of BMXNet21.dll to 2.1.2 2010-08-18 08:03:41 +00:00
sam a9c97a87ec New Release v 1.3.1
Added a note in the DAccessTemplate to say that you have to select the right 5 or 7 day view based on what you originally saved.
2010-08-18 07:59:41 +00:00
sam ce3c8665c2 CGAVDocument contains changes for start day of grid based on weekday locale and colummns
CGAVView: Shortcut keys; correct updating when number of columns is changed in grid
CGDocument: changes for start day of grid. Modified algorithm.
DAccessTemplate: Takes any weekday now for applying a template, not just Monday. Then calculation of start day is done in CGAVView based on locale in the same algorithm that the rest of the GUI uses.
DAppointPage: Now says Mobile/Cell instead of Cell Phone.
2010-08-17 12:50:19 +00:00
sam 3fb61e7634 StartDate for CGAVView, 1st try.
CGDocument uses StartDate from Current thread locale rather than current culture.
2010-08-11 12:42:23 +00:00
sam 5c6797e0e5 1. Fix bug of not showing appointments in 7 day view if arabic locale on machine.
2. Fix printing of routing slip (add clinic and fix appointment time and HRN)
3. Add RTL support for letters printed in Arabic Locale.
2010-08-10 12:00:01 +00:00
sam 9edf1ba75a 1. Make combo boxes in DManagement searchable (in MS Lingo AutoComplete).
2. Make sure that all DManagement lists and combo boxes are sorted.
2010-08-08 10:58:05 +00:00
sam 226b6cb7a1 2010-07-21 13:42:23 +00:00
sam d8fd8d3dc0 V 1.3 exe and dll, now open for testing. 2010-07-18 13:42:17 +00:00
sam f7635c7adb Merged Changes from branch 1.2.1 to new version 1.3.
Changed version from 1.2 to 1.3.
2010-07-18 12:27:35 +00:00
sam e7203cda84 2010-07-14 12:54:58 +00:00
sam ad7713c407 Deleted files not used in the project. 2010-07-14 12:43:53 +00:00
sam 463f1fba34 Start of week now machine culture sensitive (default always 1 day after start of week per culture). Change in CGDocument.cs
Removal of SSN references in DPatientLookup.cs
2010-07-14 12:11:57 +00:00
sam e14c157221 Updated Appointment Page:
Adds the following fields in Contact Info tab:
1. Cell Phone
2. Email address
3. Country
2010-07-14 08:24:03 +00:00
sam 8f926bf537 Fixes for i18n. 2010-07-13 13:07:11 +00:00