public SaveWFSUserResponse SaveCustomer(SaveWFSUserRequest request) { var resp = new SaveWFSUserResponse(); resp.Value = request.UserInfo; var user = request.UserInfo; var userCommand = new SaveWFSUserCommand(user); var userResponse = _repository.ExecuteCommand(userCommand); resp.Merge<WFSUser, WFSUser>((Result<WFSUser>)userResponse); if (resp.Status != Status.Success) return resp; request.UserInfo = userResponse.Value; var addCommand = new SaveWfsBillingAddressCommand(request.UserInfo); var addRes = _repository.ExecuteCommand(addCommand); ((Result<WFSUser>)addRes).Merge<WFSUser, WFSUser>(resp); if (resp.Status == Status.Success) resp.UserInfo = addRes.Value; return resp; }
public SaveWFSUserResponse SaveUserAccountCredits(SaveWFSUserRequest request) { var resp = new SaveWFSUserResponse(); var userCommand = new SaveWfsUserAccountCreditCommand(request.UserInfo.UserId, request.UserInfo.AvailableCredit); var userResponse = _repository.ExecuteCommand(userCommand); resp.Merge<WFSUser, WFSUser>((Result<WFSUser>)userResponse); if (resp.Status == Status.Success) resp.UserInfo = userResponse.Value; return resp; }