Esempio n. 1
0
        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;
        }
Esempio n. 2
0
        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;
        }