Beispiel #1
0
        public IActionResult Edit(ESSEntryModel model)
        {
            var ess = _context.ESSInfos.SingleOrDefault(x => x.ESSCode == model.ESSCode);

            var empProducts = _context.EmpProductMaps.Where(x => x.ESSInfoId == ess.Id).ToList();

            _context.EmpProductMaps.RemoveRange(empProducts);
            if (model.Products.Count() > 0)
            {
                foreach (var item in model.Products)
                {
                    EmpProductMap empProduct = new EmpProductMap
                    {
                        EmployeeId = model.EmployeeId,
                        ESSInfoId  = ess.Id,
                        Price      = item.Price,
                        Quantity   = item.Quantity,
                        ProductId  = item.Id
                    };
                    _context.EmpProductMaps.Add(empProduct);
                }
            }

            var empDivisions = _context.EmpDivisionMaps.Where(x => x.ESSInfoId == ess.Id).ToList();

            _context.EmpDivisionMaps.RemoveRange(empDivisions);
            if (model.Divisions.Count() > 0)
            {
                foreach (var item in model.Divisions)
                {
                    Division       division    = _context.Divisions.Where(x => x.Name == item).FirstOrDefault();
                    EmpDivisionMap empDivision = new EmpDivisionMap
                    {
                        EmployeeId = model.EmployeeId,
                        DivisionId = division.Id,
                        ESSInfoId  = ess.Id
                    };
                    _context.EmpDivisionMaps.Add(empDivision);
                }
            }

            var empDistricts = _context.EmpDistrictMaps.Where(x => x.ESSInfoId == ess.Id).ToList();

            _context.EmpDistrictMaps.RemoveRange(empDistricts);
            if (model.Districts.Count() > 0)
            {
                foreach (var item in model.Districts)
                {
                    District       district    = _context.Districts.Where(x => x.Name == item).FirstOrDefault();
                    EmpDistrictMap empDistrict = new EmpDistrictMap
                    {
                        EmployeeId = model.EmployeeId,
                        DistrictId = district.Id,
                        ESSInfoId  = ess.Id
                    };
                    _context.EmpDistrictMaps.Add(empDistrict);
                }
            }
            var empUpazilas = _context.EmpUpazilaMaps.Where(x => x.ESSInfoId == ess.Id).ToList();

            _context.EmpUpazilaMaps.RemoveRange(empUpazilas);
            if (model.Upazilas.Count() > 0)
            {
                foreach (var item in model.Upazilas)
                {
                    Upazila       upazila    = _context.Upazilas.Where(x => x.Name == item).FirstOrDefault();
                    EmpUpazilaMap empUpazila = new EmpUpazilaMap
                    {
                        EmployeeId = model.EmployeeId,
                        UpazilaId  = upazila.Id,
                        ESSInfoId  = ess.Id
                    };
                    _context.EmpUpazilaMaps.Add(empUpazila);
                }
            }

            _context.SaveChanges();

            return(View());
        }