internal static void AssertEqual(this ICreateCustomerNoteParameters expected, CustomerNote result)
 {
     Assert.AreEqual(expected.CustomerKey, result.ToCustomerKey().KeyValue);
     Assert.AreEqual(expected.UserToken, result.Employee.UserName);
     Assert.AreEqual(expected.Text, result.Text);
     Assert.AreEqual(expected.Type, result.Type);
     Assert.AreEqual(expected.Bold, result.Bold);
 }
示例#2
0
 public IResult <string> CreateCustomerNote(ICreateCustomerNoteParameters parameters)
 {
     try
     {
         return(_companyServiceProvider.CreateCustomerNote(parameters));
     }
     catch (Exception ex)
     {
         _exceptionLogger.LogException(ex);
         return(new FailureResult <string>(null, ex.Message));
     }
 }
        public IResult<string> CreateCustomerNote(ICreateCustomerNoteParameters parameters)
        {
            var customerKeyResult = KeyParserHelper.ParseResult<ICustomerKey>(parameters.CustomerKey);
            if(!customerKeyResult.Success)
            {
                return customerKeyResult.ConvertTo<string>();
            }

            var result = new CustomerNoteConductor(_companyUnitOfWork).Create(customerKeyResult.ResultingObject, _timeStamper.CurrentTimeStamp, parameters);
            if(!result.Success)
            {
                return result.ConvertTo<string>();
            }

            _companyUnitOfWork.Commit();

            return SyncParameters.Using(new SuccessResult<string>(result.ResultingObject.ToCustomerNoteKey()), new CompanyKey(result.ResultingObject.ToCustomerKey()));
        }