Example #1
0
        public ActionResult Create1(Input model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    //// TODO: Add insert logic here
                    var          client     = new PIOMApplicationMVC.AKNServiceReference.AKNServiceClient();
                    var          dzgrObject = client.GetPropertyList(model.UserName, model.Password, model.Municipality, model.CadastralMunicipality, model.PropertyList);
                    List <Loads> loads      = new List <Loads>();
                    foreach (var tovar in dzgrObject.niztovField)
                    {
                        var load = new Loads {
                            Text = tovar.textField
                        };
                        loads.Add(load);
                    }

                    List <Objects> objects = new List <Objects>();
                    foreach (var objekt in dzgrObject.nizobjField)
                    {
                        var objectItem = new Objects
                        {
                            Apartment = objekt.stanField,
                            Grounds   = objekt.povrsinaField,
                            Entry     = objekt.vlezField,
                            Floor     = objekt.katField,
                            Location  = objekt.mestoField,
                            Number    = objekt.brojField,
                            Object    = objekt.objektField,
                            Pravo     = objekt.pravoField,
                            Purpose   = objekt.namenaField
                        };
                        objects.Add(objectItem);
                    }

                    List <Owner> owners = new List <Owner>();
                    foreach (var sopstvenik in dzgrObject.nizsopField)
                    {
                        var owner = new Owner()
                        {
                            Name     = sopstvenik.imeField,
                            Location = sopstvenik.mestoField,
                            Number   = sopstvenik.brojField,
                            Street   = sopstvenik.ulicaField,
                            Part     = sopstvenik.delField
                        };
                        owners.Add(owner);
                    }

                    List <Parcel> parcels = new List <Parcel>();
                    foreach (var parcela in dzgrObject.nizparField)
                    {
                        var parcel = new Parcel
                        {
                            PartNumber   = parcela.broj_delField,
                            Culture      = parcela.kulturaField,
                            Grounds      = parcela.povrsinaField,
                            Location     = parcela.mestoField,
                            ObjectParcel = parcela.objektField,
                            Pravo        = parcela.pravoField
                        };
                        parcels.Add(parcel);
                    }

                    var propertyList = new DataForPropertyListDTO
                    {
                        PropertyList = dzgrObject.ilistField,
                        LoadsList    = loads,
                        ObjectsList  = objects,
                        OwnersList   = owners,
                        ParcelsList  = parcels,
                        Date         = Convert.ToString(DateTime.Now),
                        Message      = dzgrObject.messageField,
                    };

                    return(View("Details1", propertyList));
                }
                else
                {
                    return(View("Create1"));
                }
            }
            catch
            {
                return(RedirectToAction("Index"));
            }
        }
Example #2
0
        public DataForPropertyListDTO GetPropertyList(string username, string password, string municipality, string cadastralMunicipality, string noPropertyList)
        {
            System.Net.ServicePointManager.ServerCertificateValidationCallback =
                ((sender, certificate, chain, sslPolicyErrors) => true);//sertifikatot ne im e u red za toa go stavam ova za da go ignorira
            var AKNClient = new AKNServiceClient();



            var dzgrObject = AKNClient.GetPropertyList(username, password, municipality, cadastralMunicipality, noPropertyList);



            List <Loads> loads = new List <Loads>();

            foreach (var tovar in dzgrObject.niztovField)
            {
                var load = new Loads {
                    Text = tovar.textField
                };
                loads.Add(load);
            }

            List <Objects> objects = new List <Objects>();

            foreach (var objekt in dzgrObject.nizobjField)
            {
                var objectItem = new Objects
                {
                    Apartment = objekt.stanField,
                    Grounds   = objekt.povrsinaField,
                    Entry     = objekt.vlezField,
                    Floor     = objekt.katField,
                    Location  = objekt.mestoField,
                    Number    = objekt.brojField,
                    Object    = objekt.objektField,
                    Pravo     = objekt.pravoField,
                    Purpose   = objekt.namenaField
                };
                objects.Add(objectItem);
            }

            List <Owner> owners = new List <Owner>();

            foreach (var sopstvenik in dzgrObject.nizsopField)
            {
                var owner = new Owner()
                {
                    Name     = sopstvenik.imeField,
                    Location = sopstvenik.mestoField,
                    Number   = sopstvenik.brojField,
                    Street   = sopstvenik.ulicaField,
                    Part     = sopstvenik.delField
                };
                owners.Add(owner);
            }

            List <Parcel> parcels = new List <Parcel>();

            foreach (var parcela in dzgrObject.nizparField)
            {
                var parcel = new Parcel
                {
                    PartNumber   = parcela.broj_delField,
                    Culture      = parcela.kulturaField,
                    Grounds      = parcela.povrsinaField,
                    Location     = parcela.mestoField,
                    ObjectParcel = parcela.objektField,
                    Pravo        = parcela.pravoField
                };
                parcels.Add(parcel);
            }

            var propertyList = new DataForPropertyListDTO
            {
                Municipality          = municipality,
                CadastralMunicipality = cadastralMunicipality,
                PropertyList          = dzgrObject.ilistField,
                LoadsList             = loads,
                ObjectsList           = objects,
                OwnersList            = owners,
                ParcelsList           = parcels,
                Date    = Convert.ToString(DateTime.Now),
                Message = dzgrObject.messageField,
            };

            return(propertyList);
        }
Example #3
0
        public DataForPropertyListDTO GetPropertyList(string municipality, string cadastralMunicipality, string noPropertyList)
        {
            if (String.IsNullOrEmpty(municipality))
            {
                throw new ArgumentException("Параметарот 'Општина' е задолжителен.");
            }
            if (String.IsNullOrEmpty(cadastralMunicipality))
            {
                throw new ArgumentException("Параметарот 'Катастарска Општина' е задолжителен.");
            }
            if (String.IsNullOrEmpty(noPropertyList))
            {
                throw new ArgumentException("Параметарот 'Број на имотен лист' е задолжителен.");
            }

            ServicePointManager.ServerCertificateValidationCallback =
                ((sender, certificate, chain, sslPolicyErrors) => true);//sertifikatot ne im e u red za toa go stavam ova za da go ignorira

            // Read from web.config
            var username = WebConfigurationManager.AppSettings["AKNusername"];
            var password = WebConfigurationManager.AppSettings["AKNpassword"];

            var enviroment = ConfigurationManager.AppSettings["EnviromentAKN"];

            if (enviroment == "Production")
            {
                #region production
                //var dzgrObject = new AKNImotenList.dzgr();

                //Test ImotenList
                var dzgrObject = new AKNImotenList.dzgr();



                try
                {
                    //Service without separated methods
                    //var aknClient = new AKNPropertyListCadastralParcelAdapter.AKNServiceClient();

                    //Service with separated methods PROD
                    //var aknClient = new AKNImotenList.PropertyListClient();
                    //dzgrObject = aknClient.GetPropertyList(username, password, municipality, cadastralMunicipality, noPropertyList);
                    //_logger.Info(dzgrObject.message);

                    //Service with separated methods PROD
                    var aknClient = new AKNImotenList.PropertyListClient();
                    dzgrObject = aknClient.GetPropertyList(username, password, municipality, cadastralMunicipality, noPropertyList);
                    _logger.Info(dzgrObject.message);
                }
                catch (Exception e)
                {
                    _logger.Error(e);
                    throw e;
                }

                var loads = new List <Loads>();
                if (dzgrObject.niztov != null)
                {
                    foreach (var tovar in dzgrObject.niztov)
                    {
                        var load = new Loads {
                            Text = tovar.text
                        };
                        loads.Add(load);
                    }
                }

                var objects = new List <Objects>();
                if (dzgrObject.nizobj != null)
                {
                    foreach (var objekt in dzgrObject.nizobj)
                    {
                        var objectItem = new Objects
                        {
                            Apartment   = objekt.stan,
                            Grounds     = objekt.povrsina,
                            Entry       = objekt.vlez,
                            Floor       = objekt.kat,
                            Location    = objekt.mesto,
                            Number      = objekt.broj,
                            Object      = objekt.objekt,
                            Pravo       = objekt.pravo,
                            Purpose     = objekt.namena,
                            YearBuilt   = objekt.godinagradba,
                            OsnovGradba = objekt.osnov
                        };
                        objects.Add(objectItem);
                    }
                }

                var owners = new List <Owner>();
                if (dzgrObject.nizsop != null)
                {
                    foreach (var sopstvenik in dzgrObject.nizsop)
                    {
                        var owner = new Owner()
                        {
                            PersonalNumber = sopstvenik.embg,
                            Name           = sopstvenik.ime,
                            Location       = sopstvenik.mesto,
                            Number         = sopstvenik.broj,
                            Street         = sopstvenik.ulica,
                            Part           = sopstvenik.del
                        };
                        owners.Add(owner);
                    }
                }

                var parcels = new List <Parcel>();
                if (dzgrObject.nizpar != null)
                {
                    foreach (var parcela in dzgrObject.nizpar)
                    {
                        var parcel = new Parcel
                        {
                            PartNumber   = parcela.broj_del,
                            Culture      = parcela.kultura,
                            Grounds      = parcela.povrsina,
                            Location     = parcela.mesto,
                            ObjectParcel = parcela.objekt,
                            Pravo        = parcela.pravo
                        };
                        parcels.Add(parcel);
                    }
                }

                var propertyList = new DataForPropertyListDTO
                {
                    Municipality          = municipality,
                    CadastralMunicipality = cadastralMunicipality,
                    PropertyList          = dzgrObject.ilist,
                    LoadsList             = loads,
                    ObjectsList           = objects,
                    OwnersList            = owners,
                    ParcelsList           = parcels,
                    Date    = dzgrObject.data,
                    Message = dzgrObject.message,
                };

                var context     = HttpContext.Current;
                var contextBase = new HttpContextWrapper(context);
                var routeData   = new RouteData();
                routeData.Values.Add("controller", "Template");
                var controllerContext   = new ControllerContext(contextBase, routeData, new FPIOMController.EmptyController());
                var dataforpropertylist = propertyList;
                dataforpropertylist.FillBasicPrintInfo("Имотен лист", InstitutionName);
                var r      = new Rotativa.ViewAsPdf("PrintPropertyList", dataforpropertylist);
                var binary = r.BuildPdf(controllerContext);

                var date                = DateTime.Now.Day;
                var month               = DateTime.Now.Month;
                var year                = DateTime.Now.Year;
                var hour                = DateTime.Now.Hour;
                var minutes             = DateTime.Now.Minute;
                var secods              = DateTime.Now.Second;
                var namepdfpropertylist = "AKN_GetPropertyList_" + secods + "_" + minutes + "_" + hour + "_" + date + "_" + month + "_" + year + ".pdf";
                var namexmlpropertylist = "AKN_GetPropertyList_" + secods + "_" + minutes + "_" + hour + "_" + date + "_" + month + "_" + year + ".xml";
                propertyList.PropertylistPDF = namepdfpropertylist;
                var path    = WebConfigurationManager.AppSettings["PathToFile"];
                var pathpdf = path + namepdfpropertylist;
                File.WriteAllBytes(pathpdf, binary);

                propertyList.PropertylistXML = namexmlpropertylist;
                var myXml = new XmlDocument();
                var xNav  = myXml.CreateNavigator();

                var x = new XmlSerializer(dataforpropertylist.GetType());
                using (var xs = xNav.AppendChild())
                {
                    x.Serialize(xs, dataforpropertylist);
                }
                var pathxml = path + namexmlpropertylist;
                File.WriteAllText(pathxml, myXml.OuterXml);

                return(propertyList);

                #endregion
            }
            else
            {
                #region test

                var dzgrObject = new AKNImotenListTest.dzgr();

                try
                {
                    //Service with separated methods TEST
                    var aknClient = new AKNImotenListTest.PropertyListClient();
                    dzgrObject = aknClient.GetPropertyList(username, password, municipality, cadastralMunicipality, noPropertyList);
                    _logger.Info(dzgrObject.message);
                }
                catch (Exception e)
                {
                    _logger.Error(e);
                    throw e;
                }

                var loads = new List <Loads>();
                if (dzgrObject.niztov != null)
                {
                    foreach (var tovar in dzgrObject.niztov)
                    {
                        var load = new Loads {
                            Text = tovar.text
                        };
                        loads.Add(load);
                    }
                }

                var objects = new List <Objects>();
                if (dzgrObject.nizobj != null)
                {
                    foreach (var objekt in dzgrObject.nizobj)
                    {
                        var objectItem = new Objects
                        {
                            Apartment   = objekt.stan,
                            Grounds     = objekt.povrsina,
                            Entry       = objekt.vlez,
                            Floor       = objekt.kat,
                            Location    = objekt.mesto,
                            Number      = objekt.broj,
                            Object      = objekt.objekt,
                            Pravo       = objekt.pravo,
                            Purpose     = objekt.namena,
                            YearBuilt   = objekt.godinagradba,
                            OsnovGradba = objekt.osnov
                        };
                        objects.Add(objectItem);
                    }
                }

                var owners = new List <Owner>();
                if (dzgrObject.nizsop != null)
                {
                    foreach (var sopstvenik in dzgrObject.nizsop)
                    {
                        var owner = new Owner()
                        {
                            PersonalNumber = sopstvenik.embg,
                            Name           = sopstvenik.ime,
                            Location       = sopstvenik.mesto,
                            Number         = sopstvenik.broj,
                            Street         = sopstvenik.ulica,
                            Part           = sopstvenik.del
                        };
                        owners.Add(owner);
                    }
                }

                var parcels = new List <Parcel>();
                if (dzgrObject.nizpar != null)
                {
                    foreach (var parcela in dzgrObject.nizpar)
                    {
                        var parcel = new Parcel
                        {
                            PartNumber   = parcela.broj_del,
                            Culture      = parcela.kultura,
                            Grounds      = parcela.povrsina,
                            Location     = parcela.mesto,
                            ObjectParcel = parcela.objekt,
                            Pravo        = parcela.pravo
                        };
                        parcels.Add(parcel);
                    }
                }

                var propertyList = new DataForPropertyListDTO
                {
                    Municipality          = municipality,
                    CadastralMunicipality = cadastralMunicipality,
                    PropertyList          = dzgrObject.ilist,
                    LoadsList             = loads,
                    ObjectsList           = objects,
                    OwnersList            = owners,
                    ParcelsList           = parcels,
                    Date    = dzgrObject.data,
                    Message = dzgrObject.message,
                };

                var context     = HttpContext.Current;
                var contextBase = new HttpContextWrapper(context);
                var routeData   = new RouteData();
                routeData.Values.Add("controller", "Template");
                var controllerContext   = new ControllerContext(contextBase, routeData, new FPIOMController.EmptyController());
                var dataforpropertylist = propertyList;
                dataforpropertylist.FillBasicPrintInfo("Имотен лист", InstitutionName);
                var r      = new Rotativa.ViewAsPdf("PrintPropertyList", dataforpropertylist);
                var binary = r.BuildPdf(controllerContext);

                var date                = DateTime.Now.Day;
                var month               = DateTime.Now.Month;
                var year                = DateTime.Now.Year;
                var hour                = DateTime.Now.Hour;
                var minutes             = DateTime.Now.Minute;
                var secods              = DateTime.Now.Second;
                var namepdfpropertylist = "AKN_GetPropertyList_" + secods + "_" + minutes + "_" + hour + "_" + date + "_" + month + "_" + year + ".pdf";
                var namexmlpropertylist = "AKN_GetPropertyList_" + secods + "_" + minutes + "_" + hour + "_" + date + "_" + month + "_" + year + ".xml";
                propertyList.PropertylistPDF = namepdfpropertylist;
                var path    = WebConfigurationManager.AppSettings["PathToFile"];
                var pathpdf = path + namepdfpropertylist;
                File.WriteAllBytes(pathpdf, binary);

                propertyList.PropertylistXML = namexmlpropertylist;
                var myXml = new XmlDocument();
                var xNav  = myXml.CreateNavigator();

                var x = new XmlSerializer(dataforpropertylist.GetType());
                using (var xs = xNav.AppendChild())
                {
                    x.Serialize(xs, dataforpropertylist);
                }
                var pathxml = path + namexmlpropertylist;
                File.WriteAllText(pathxml, myXml.OuterXml);

                return(propertyList);

                #endregion
            }
        }