Esempio n. 1
0
        public void SetUp()
        {
            this.requestResource = new SernosNoteCreateResource()
            {
                SernosNotes  = "notes",
                SernosGroup  = "group",
                SernosNumber = 222,
                SernosTRef   = 333,
                TransCode    = "code"
            };

            var sernosNote = new SernosNote("notes")
            {
                SernosNoteId = 111,
                SernosGroup  = "group",
                SernosNumber = 222,
                SernosTRef   = 333,
                TransCode    = "code"
            };

            this.SernosNoteService.Add(Arg.Any <SernosNoteCreateResource>())
            .Returns(new CreatedResult <SernosNote>(sernosNote)
            {
                Data = sernosNote
            });

            this.Response = this.Browser.Post(
                "products/maint/serial-numbers/notes",
                with =>
            {
                with.Header("Accept", "application/json");
                with.Header("Content-Type", "application/json");
                with.JsonBody(this.requestResource);
            }).Result;
        }
Esempio n. 2
0
        public IResult <ResponseModel <IEnumerable <SerialNumber> > > CreateSerialNumbers(SerialNumberCreateResource resource, IEnumerable <string> privileges)
        {
            var employee = resource.Links.FirstOrDefault(a => a.Rel == "entered-by");

            if (employee == null)
            {
                return(new BadRequestResult <ResponseModel <IEnumerable <SerialNumber> > >("Must supply an employee number when creating a Serial Number"));
            }

            var employeeNumber = employee.Href.ParseId();

            IEnumerable <SerialNumber> serialNumbers;

            try
            {
                serialNumbers = this.serialNumberFactory.CreateSerialNumbers(
                    resource.TransCode,
                    resource.ArticleNumber,
                    resource.FromSernosNumber,
                    resource.ToSernosNumber,
                    resource.PrevSernosNumber,
                    employeeNumber);
            }
            catch (DomainException e)
            {
                return(new BadRequestResult <ResponseModel <IEnumerable <SerialNumber> > >(e.Message));
            }

            foreach (var serialNumber in serialNumbers)
            {
                this.serialNumberRepository.Add(serialNumber);

                if (!string.IsNullOrEmpty(resource.SernosNotes))
                {
                    var sernosNote = new SernosNoteCreateResource()
                    {
                        SernosNotes  = resource.SernosNotes,
                        SernosGroup  = serialNumber.SernosGroup,
                        SernosTRef   = serialNumber.SernosTRef,
                        SernosNumber = serialNumber.SernosNumber,
                        TransCode    = serialNumber.TransCode
                    };

                    this.sernosNoteService.Add(sernosNote);
                }
            }

            this.transactionManager.Commit();

            return(new CreatedResult <ResponseModel <IEnumerable <SerialNumber> > >(
                       new ResponseModel <IEnumerable <SerialNumber> >(serialNumbers, privileges)));
        }
Esempio n. 3
0
        public void SetUp()
        {
            this.resource = new SernosNoteCreateResource
            {
                SernosGroup  = "group",
                SernosNotes  = "notes",
                SernosNumber = 1,
                SernosTRef   = 1,
                TransCode    = "code"
            };

            this.result = this.Sut.Add(this.resource);
        }