예제 #1
0
        public ActionResult Create(HouseTaxViewModel model)
        {
            db.HouseTaxHistories.Add(model.HouseTax);
            var citizenHouse = db.CitizenHouses.First(c => c.Id == model.HouseTax.CitizenHouseId);

            db.SaveChanges();


            //Move to land calculations
            var citizenLand      = db.CitizenLands.First(c => c.CitizenId == citizenHouse.CitizenId);
            var landTaxViewModel = new LandTaxViewModel
            {
                CitizenLand    = db.CitizenLands.First(c => c.CitizenId == citizenHouse.CitizenId),
                LandTaxHistory = new LandTaxHistory
                {
                    CitizenId         = citizenHouse.CitizenId,
                    ValuationArea     = citizenLand.ValuationArea,
                    CitizenLandId     = citizenLand.Id,
                    HouseTaxHistoryId = model.HouseTax.Id
                },
                CitizenLands = db.CitizenLands.ToList(),
                Citizens     = db.Citizens.ToList()
            };

            return(View("~/Views/LandTax/LandTaxCalculationForm.cshtml", landTaxViewModel));
        }
        public ActionResult Save(HouseValuation model)
        {
            if (!ModelState.IsValid)
            {
                var invalidModel = model;
                return(View("HouseValuationForm", invalidModel));
            }


            if (model.Id == 0)
            {
                db.HouseValuations.Add(model);
            }
            else
            {
                var houseValuationInDB = db.HouseValuations.Single(h => h.Id == model.Id);
                houseValuationInDB.Description        = model.Description;
                houseValuationInDB.CostPerArea        = model.CostPerArea;
                houseValuationInDB.DepreciationRate   = model.DepreciationRate;
                houseValuationInDB.DepreciationPeriod = model.DepreciationPeriod;
            }

            db.SaveChanges();
            return(RedirectToAction("Index", "HouseValuation"));
        }
예제 #3
0
 public void AddCitizen(string name, string surname, string patronym)
 {
     if (!(string.IsNullOrEmpty(name) && string.IsNullOrWhiteSpace(name))
         &&
         !(string.IsNullOrEmpty(surname) && string.IsNullOrWhiteSpace(surname))
         &&
         !(string.IsNullOrEmpty(patronym) && string.IsNullOrWhiteSpace(patronym)))
     {
         Citizen ctz = new Citizen()
         {
             Name     = name,
             Surname  = surname,
             Patronym = patronym
         };
         using (var db = new CitizenDbContext())
         {
             db.Citizens.Add(ctz);
             db.SaveChanges();
         }
     }
     else
     {
         throw new System.InvalidOperationException("Fields are empty");
     }
 }
예제 #4
0
        public ActionResult Save(CitizenViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                var invalidViewModel = new CitizenViewModel
                {
                    Citizen = viewModel.Citizen,
                    Zones   = db.Zones.ToList()
                };
                return(View("CitizenForm", invalidViewModel));
            }


            if (viewModel.Citizen.CitizenId == 0)
            {
                db.Citizens.Add(viewModel.Citizen);
            }
            else
            {
                var citizenInDB = db.Citizens.Single(c => c.CitizenId == viewModel.Citizen.CitizenId);
                citizenInDB.FirstName     = viewModel.Citizen.FirstName;
                citizenInDB.LastName      = viewModel.Citizen.LastName;
                citizenInDB.StreetName    = viewModel.Citizen.StreetName;
                citizenInDB.District      = viewModel.Citizen.District;
                citizenInDB.ZoneId        = viewModel.Citizen.ZoneId;
                citizenInDB.Wardno        = viewModel.Citizen.Wardno;
                citizenInDB.CitizenshipNo = viewModel.Citizen.CitizenshipNo;
                citizenInDB.Municipality  = viewModel.Citizen.Municipality;
            }

            db.SaveChanges();
            return(RedirectToAction("Index", "Home"));
        }
예제 #5
0
        public ActionResult Save(LandFormViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                var invalidViewModel = new LandFormViewModel
                {
                    CitizenLand = viewModel.CitizenLand,
                    Citizens    = db.Citizens.ToList()
                };
                return(View("CitizenLandForm", invalidViewModel));
            }


            if (viewModel.CitizenLand.Id == 0)
            {
                db.CitizenLands.Add(viewModel.CitizenLand);
            }
            else
            {
                var citizenLandInDB = db.CitizenLands.Single(c => c.Id == viewModel.CitizenLand.Id);
                citizenLandInDB.VDC           = viewModel.CitizenLand.VDC;
                citizenLandInDB.WardNo        = viewModel.CitizenLand.WardNo;
                citizenLandInDB.SheetNo       = viewModel.CitizenLand.SheetNo;
                citizenLandInDB.KittaNo       = viewModel.CitizenLand.KittaNo;
                citizenLandInDB.ValuationArea = viewModel.CitizenLand.ValuationArea;
                citizenLandInDB.CitizenId     = viewModel.CitizenLand.CitizenId;
            }

            db.SaveChanges();
            return(RedirectToAction("Index", "CitizenLand"));
        }
        public ActionResult Save(HouseFormViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                var invalidViewModel = new HouseFormViewModel
                {
                    CitizenHouse = viewModel.CitizenHouse,
                    Citizens     = db.Citizens.ToList()
                };
                return(View("CitizenHouseForm", invalidViewModel));
            }


            if (viewModel.CitizenHouse.Id == 0)
            {
                db.CitizenHouses.Add(viewModel.CitizenHouse);
            }
            else
            {
                var citizenHouseInDB = db.CitizenHouses.Single(c => c.Id == viewModel.CitizenHouse.Id);
                citizenHouseInDB.Length    = viewModel.CitizenHouse.Length;
                citizenHouseInDB.Width     = viewModel.CitizenHouse.Width;
                citizenHouseInDB.Area      = viewModel.CitizenHouse.Area;
                citizenHouseInDB.Floor     = viewModel.CitizenHouse.Floor;
                citizenHouseInDB.CitizenId = viewModel.CitizenHouse.CitizenId;
            }

            db.SaveChanges();
            return(RedirectToAction("Index", "CitizenHouse"));
        }
 public void AddCitizen(Citizen ctz)
 {
     if (ctz != null)
     {
         _citizens.Add(ctz);
         using (var db = new CitizenDbContext())
         {
             db.Citizens.Add(ctz);
             db.SaveChanges();
         }
     }
 }
예제 #8
0
        public ActionResult Save(Zone zone)
        {
            if (zone.Id == 0)
            {
                db.Zones.Add(zone);
            }
            else
            {
                var zoneInDB = db.Zones.Single(c => c.Id == zone.Id);
                zoneInDB.Code        = zone.Code;
                zoneInDB.Description = zone.Description;
            }

            db.SaveChanges();
            return(RedirectToAction("Index", "Home"));
        }
        public void AddDocument(string name, int?serial, string whereIssued, DateTime date, Citizen ctz)
        {
            Document doc = new Document()
            {
                Name        = name,
                Serial      = serial.Value,
                WhereIssued = whereIssued,
                DateIssued  = date,
                CitizenId   = ctz.Id
            };

            using (var db = new CitizenDbContext())
            {
                db.Documents.Add(doc);
                db.SaveChanges();
            }
        }
예제 #10
0
        public void AddPerson(int cypher, int inn, string type, DateTime date, Citizen ctz)
        {
            Person prs = new Person()
            {
                Cypher    = cypher,
                Inn       = inn,
                Type      = type,
                Date      = date,
                CitizenId = ctz.Id
            };

            using (var db = new CitizenDbContext())
            {
                db.Persons.Add(prs);
                db.SaveChanges();
            }
        }
예제 #11
0
 //не используется
 public void EditCitizen(string name, string surname, string patronym)
 {
     using (var db = new CitizenDbContext())
     {
         Citizen ctz = new Citizen()
         {
             Name     = name,
             Surname  = surname,
             Patronym = patronym
         };
         var citizen = (from i in db.Citizens where i.Id == ctz.Id select i).First();
         citizen.Name     = ctz.Name;
         citizen.Surname  = ctz.Surname;
         citizen.Patronym = ctz.Patronym;
         db.SaveChanges();
         Debug.WriteLine("Изменение завершено");
     }
 }
        public ActionResult Save(LandValuation model)
        {
            if (!ModelState.IsValid)
            {
                var invalidModel = model;
                return(View("LandValuationForm", invalidModel));
            }


            if (model.Id == 0)
            {
                db.LandValuations.Add(model);
            }
            else
            {
                var landValuationInDB = db.LandValuations.Single(h => h.Id == model.Id);
                landValuationInDB.Description = model.Description;
                landValuationInDB.LandType    = model.LandType;
                landValuationInDB.CostPerAnna = model.CostPerAnna;
            }

            db.SaveChanges();
            return(RedirectToAction("Index", "LandValuation"));
        }
예제 #13
0
        public ActionResult Save(LandTaxViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                var invalidViewModel = new LandTaxViewModel
                {
                    LandTaxHistory = viewModel.LandTaxHistory,
                };
                return(View("LandTaxCalculationForm", invalidViewModel));
            }


            if (viewModel.LandTaxHistory.Id == 0)
            {
                db.LandTaxHistories.Add(viewModel.LandTaxHistory);
            }
            db.SaveChanges();


            string ReportType = "pdf";

            LocalReport localReport = new LocalReport();

            localReport.ReportPath = Server.MapPath("~/Reports/TaxReport.rdlc");

            localReport.DataSources.Add(new ReportDataSource
            {
                Name  = "HouseTax",
                Value = db.HouseTaxHistories.Where(h => h.Id == viewModel.LandTaxHistory.HouseTaxHistoryId).ToList()
            });
            localReport.DataSources.Add(new ReportDataSource {
                Name = "LandTax", Value = db.LandTaxHistories.Where(l => l.Id == viewModel.LandTaxHistory.Id).ToList()
            });
            localReport.DataSources.Add(new ReportDataSource {
                Name = "Citizen", Value = db.Citizens.Where(c => c.CitizenId == viewModel.LandTaxHistory.CitizenId).ToList()
            });
            localReport.DataSources.Add(new ReportDataSource {
                Name = "Lands", Value = db.CitizenLands.Where(l => l.CitizenId == viewModel.LandTaxHistory.CitizenId).ToList()
            });
            localReport.DataSources.Add(new ReportDataSource {
                Name = "houses", Value = db.CitizenHouses.Where(l => l.CitizenId == viewModel.LandTaxHistory.CitizenId).ToList()
            });


            string reportType = ReportType;
            string mimeType;
            string encoding;
            string fileNameExtension;

            //if (ReportType == "Excel")
            //{
            //    fileNameExtension = "xlsx";
            //}
            //else if (ReportType == "PDF")
            //{
            //    fileNameExtension = "pdf";
            //}
            //else
            //{
            //    fileNameExtension = "docx";
            //}
            string[]  streams;
            Warning[] warnings;
            byte[]    renderByte;
            renderByte = localReport.Render(reportType, "", out mimeType, out encoding,
                                            out fileNameExtension, out streams, out warnings);
            Response.AddHeader("content-disposition", "attachment:filename= TaxReport." + fileNameExtension);
            return(File(renderByte, fileNameExtension));

            //return RedirectToAction("Index", "LandTax");
        }
예제 #14
0
        public MainWindowVM()
        {
            _model.PropertyChanged += (sender, args) => { RaisePropertyChanged(args.PropertyName); };

            RefreshCitizenTable = new DelegateCommand(() =>
            {
                _model.RefreshTables();
            });

            AddCitizen = new DelegateCommand(() =>
            {
                AddCitizenWindow acw = new AddCitizenWindow();
                acw.ShowDialog();
                _model.RefreshTables();
            });

            EditCitizen = new DelegateCommand(() =>
            {
                EditCitizenWindow ecw = new EditCitizenWindow();
                ecw.DataContext       = SelectedCitizen;
                Citizen ctz           = SelectedCitizen;
                if (ecw.ShowDialog() == true)
                {
                    using (var db = new CitizenDbContext())
                    {
                        var citizen      = (from i in db.Citizens where i.Id == ctz.Id select i).First();
                        citizen.Name     = ctz.Name;
                        citizen.Surname  = ctz.Surname;
                        citizen.Patronym = ctz.Patronym;
                        db.SaveChanges();
                    }
                    _model.RefreshTables();
                }
            });

            DeleteCitizen = new DelegateCommand(() =>
            {
                using (var db = new CitizenDbContext())
                {
                    var citizen = (from i in db.Citizens where i.Id == SelectedCitizen.Id select i).First();
                    db.Citizens.Remove(citizen);
                    db.SaveChanges();
                }
                _model.RefreshTables();
            });

            AddPerson = new DelegateCommand(() =>
            {
                AddPersonWindow apw = new AddPersonWindow();
                apw.ShowDialog();
                _model.RefreshTables();
            });

            EditPerson = new DelegateCommand(() =>
            {
                EditPersonWindow epw = new EditPersonWindow();
                Person prs           = SelectedPerson;
                epw.DataContext      = prs;
                if (epw.ShowDialog() == true)
                {
                    using (var db = new CitizenDbContext())
                    {
                        var person       = (from i in db.Persons where i.Id == prs.Id select i).First();
                        person.Cypher    = prs.Cypher;
                        person.Inn       = prs.Inn;
                        person.Type      = prs.Type;
                        person.Date      = prs.Date;
                        person.CitizenId = prs.CitizenId;
                        db.SaveChanges();
                    }
                    _model.RefreshTables();
                }
            });

            DeletePerson = new DelegateCommand(() =>
            {
                using (var db = new CitizenDbContext())
                {
                    var person = (from i in db.Persons where i.Id == SelectedPerson.Id select i).First();
                    db.Persons.Remove(person);
                    db.SaveChanges();
                }
                _model.RefreshTables();
            });

            AddDocument = new DelegateCommand(() =>
            {
                AddDocumentWindow adw = new AddDocumentWindow();
                adw.ShowDialog();
                _model.RefreshTables();
            });

            EditDocument = new DelegateCommand(() =>
            {
                EditDocumentWindow edw = new EditDocumentWindow();
                Document doc           = SelectedDocument;
                edw.DataContext        = doc;
                if (edw.ShowDialog() == true)
                {
                    using (var db = new CitizenDbContext())
                    {
                        var document         = (from i in db.Documents where i.Id == doc.Id select i).First();
                        document.Name        = doc.Name;
                        document.Serial      = doc.Serial;
                        document.WhereIssued = doc.WhereIssued;
                        document.DateIssued  = doc.DateIssued;
                        document.CitizenId   = doc.CitizenId;
                        db.SaveChanges();
                    }
                    _model.RefreshTables();
                }
            });

            DeleteDocument = new DelegateCommand(() =>
            {
                using (var db = new CitizenDbContext())
                {
                    var document = (from i in db.Documents where i.Id == SelectedDocument.Id select i).First();
                    db.Documents.Remove(document);
                    db.SaveChanges();
                }
                _model.RefreshTables();
            });

            FindByCypher = new DelegateCommand(() =>
            {
                FindByCypherWindow fbc = new FindByCypherWindow();
                fbc.Show();
            });

            SaveToJSON = new DelegateCommand(() =>
            {
                _model.SaveToJSON(Citizens, Persons, Documents);
                MessageBox.Show("Все сохранено");
            });
        }