Beispiel #1
0
        private void buttonImport_Click(object sender, EventArgs e)
        {
            var bufferApi  = new IO.Swagger.Api.BufferApi(Configuration);
            var profileApi = new IO.Swagger.Api.ProfilesApi(Configuration);
            var statesApi  = new IO.Swagger.Api.StatesApi(Configuration);

            var aooApi = new IO.Swagger.Api.BusinessUnitsApi(Configuration);
            var aoo    = aooApi.BusinessUnitsGet();

            var docTypesApi = new IO.Swagger.Api.DocumentTypesApi(Configuration);
            var doctypes    = docTypesApi.DocumentTypesGet_0(1, aoo.First().Code);


            var fo = new OpenFileDialog();

            if (fo.ShowDialog() == DialogResult.OK)
            {
                var stream   = fo.OpenFile();
                var bufferId = bufferApi.BufferInsert(stream);

                var profileDto   = profileApi.ProfilesGet_0();
                var classeGneric = doctypes.FirstOrDefault(i =>
                                                           i.Key.Equals("GENERIC", StringComparison.CurrentCultureIgnoreCase));
                var status = statesApi.StatesGet_0();
                ((StateFieldDTO)profileDto.Fields.FirstOrDefault(i =>
                                                                 i.Name.Equals("Stato", StringComparison.CurrentCultureIgnoreCase))).Value = status.First().Id;
                ((DocumentTypeFieldDTO)profileDto.Fields.FirstOrDefault(i => i.Name.Equals("DocumentType"))).Value =
                    classeGneric.Id;
                ((OriginFieldDTO)profileDto.Fields.FirstOrDefault(i =>
                                                                  i.Name.Equals("Origine", StringComparison.CurrentCultureIgnoreCase))).Value = 0;
                profileDto.Document = new FileDTO(bufferId);

                var additional = profileApi.ProfilesGetAdditionalByClasse(classeGneric.DocumentType, classeGneric.Type2,
                                                                          classeGneric.Type3, "AbleBS");
                profileDto.Fields.AddRange(additional);

                ((SubjectFieldDTO)profileDto.Fields.FirstOrDefault(i =>
                                                                   i.Name.Equals("DOCNAME", StringComparison.CurrentCultureIgnoreCase))).Value = "Oggeto nuovo";
                var result = profileApi.ProfilesPost(new ProfileDTO()
                {
                    Fields   = profileDto.Fields,
                    Document = new FileDTO()
                    {
                        BufferIds = bufferId
                    },
                    Attachments            = new List <string>(),
                    AuthorityData          = new AuthorityDataDTO(),
                    Notes                  = new List <NoteDTO>(),
                    PaNotes                = new List <string>(),
                    PostProfilationActions = new List <PostProfilationActionDTO>()
                });

                MessageBox.Show(result.DocNumber.ToString());
            }
        }