コード例 #1
0
        private OperatingContextRM CreateOperatingContextForAssociate(Commands.V1.OperatingContext.CreateForAssociate cmd)
        {
            Associate associate = _repository.GetAssociate(AssociateId.FromInt(cmd.AssociateId));

            if (associate == null)
            {
                throw new InvalidOperationException($"Associate with id {cmd.AssociateId} cannot be found");
            }

            OperatingContext operatingContext = new OperatingContext(_operatingContexts++, OperatingContextTypeLookup.OperatingContextTypes[cmd.OperatingContextType], cmd.FacilityId,
                                                                     cmd.ThirdPartySupplierId, ExternalAssociateTypeLookup.ActingAssociateTypes[cmd.ActingBATypeID], cmd.CertificationId, cmd.IsDeactivating,
                                                                     cmd.LegacyId, cmd.PrimaryAddressId, cmd.PrimaryEmailId, cmd.PrimaryPhoneId,
                                                                     cmd.ProviderType, cmd.StartDate, StatusCodeLookup.StatusCodes[cmd.Status]);

            _repository.AddOperatingContextForAssociate(operatingContext, associate.Id);

            return(Conversions.GetOperatingContextRM(operatingContext));
        }