예제 #1
0
        private List <SecurityScreeningStatusItem> GetConnectionsScreeningData(List <MicrosoftDynamicsCRMcontact> contacts)
        {
            var result        = new List <SecurityScreeningStatusItem>();
            var addedContacts = new List <string>();


            foreach (var contact in contacts)
            {
                DateTimeOffset?dateSubmitted = null;


                if (contact?.Contactid != null && !addedContacts.Contains(contact.Contactid))
                {
                    // liquor
                    if (contact.AdoxioPhscomplete == (int)YesNoOptions.Yes)
                    {
                        dateSubmitted = contact.AdoxioPhsdatesubmitted;
                    }

                    // cannabis
                    if (contact.AdoxioCascomplete == (int)YesNoOptions.Yes)
                    {
                        dateSubmitted = contact.AdoxioCasdatesubmitted;
                    }

                    // 2021-03-31 ASR: changed the birthdate field to DateTime (from DateTimeOffset) to ignore the timezone on the birthdate field in Dynamics.
                    // Accordingly the security screening Angular page has been modified to display this date in GMT to match the value set here.
                    var newItem = new SecurityScreeningStatusItem
                    {
                        ContactId     = contact.Contactid,
                        Contact       = contact,
                        FirstName     = contact.Firstname,
                        MiddleName    = contact.Middlename,
                        LastName      = contact.Lastname,
                        Birthdate     = contact.Birthdate?.Date, // LCSD-5366 ignore the timezone as it is not relevant to birth dates
                        PhsLink       = contact.PhsLink,
                        CasLink       = contact.CasLink,
                        DateSubmitted = dateSubmitted,
                    };
                    result.Add(newItem);
                    addedContacts.Add(contact.Contactid); // remember added contacts to avoid duplicates
                }
            }

            return(result);
        }
        private List <SecurityScreeningStatusItem> GetConnectionsScreeningData(List <MicrosoftDynamicsCRMcontact> contacts)
        {
            var result        = new List <SecurityScreeningStatusItem>();
            var addedContacts = new List <string>();


            foreach (var contact in contacts)
            {
                DateTimeOffset?dateSubmitted = null;


                if (contact?.Contactid != null && !addedContacts.Contains(contact.Contactid))
                {
                    // liquor
                    if (contact.AdoxioPhscomplete == (int)YesNoOptions.Yes)
                    {
                        dateSubmitted = contact.AdoxioPhsdatesubmitted;
                    }

                    // cannabis
                    if (contact.AdoxioCascomplete == (int)YesNoOptions.Yes)
                    {
                        dateSubmitted = contact.AdoxioCasdatesubmitted;
                    }

                    var newItem = new SecurityScreeningStatusItem
                    {
                        ContactId     = contact.Contactid,
                        Contact       = contact,
                        FirstName     = contact.Firstname,
                        MiddleName    = contact.Middlename,
                        LastName      = contact.Lastname,
                        Birthdate     = contact.Birthdate,
                        PhsLink       = contact.PhsLink,
                        CasLink       = contact.CasLink,
                        DateSubmitted = dateSubmitted,
                    };
                    result.Add(newItem);
                    addedContacts.Add(contact.Contactid); // remember added contacts to avoid duplicates
                }
            }

            return(result);
        }