Ejemplo n.º 1
0
        public ActionResult DeleteConfirmed(int id)
        {
            HseqCaseFile hseqCaseFile = db.HseqCaseFiles.Find(id);

            Console.WriteLine(hseqCaseFile.HseqRecords);
            Console.WriteLine(hseqCaseFile.HseqRecords.LongCount());

            var tmp = new List <HseqRecord>(hseqCaseFile.HseqRecords);

            foreach (var hsr in tmp)
            {
                //Ncr ncr = db.HseqRecords.Find(hsr.HseqRecordID);
                HseqRecord hr = db.HseqRecords.Find(hsr.HseqRecordID);

                if (hr is Ncr)
                {
                    Ncr ncr = (Ncr)hr;

                    _LinkRecordService.RemoveLinkedRecords(ncr);

                    db.NcrRecords.Remove((Ncr)hr);
                }

                else if (hr is Fis)
                {
                    Fis ncr = (Fis)hr;

                    _LinkRecordService.RemoveLinkedRecords(ncr);

                    db.FisRecords.Remove((Fis)hr);
                }
                else if (hr is Car)
                {
                    Car ncr = (Car)hr;

                    _LinkRecordService.RemoveLinkedRecords(ncr);

                    db.CarRecords.Remove((Car)hr);
                }
                else if (hr is Par)
                {
                    Par ncr = (Par)hr;

                    _LinkRecordService.RemoveLinkedRecords(ncr);

                    db.ParRecords.Remove((Par)hr);
                }
            }

            db.HseqCaseFiles.Remove(hseqCaseFile);

            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 2
0
        public ActionResult DeleteConfirmed(int id)
        {
            Fis fis = db.FisRecords.Find(id);

            _LinkRecordService.RemoveLinkedRecords(fis);

            //if (fis.LinkedRecords != null)
            //{

            //    foreach (HseqRecord linkedRecord in fis.LinkedRecords)
            //    {
            //        linkedRecord.LinkedRecords.Remove(fis);
            //    }

            //    fis.LinkedRecords = null;
            //}

            int?caseFileId = fis.HseqCaseFileID;

            db.FisRecords.Remove(fis);

            //Remove the Case folder also if this is the last record
            var caseFileRefCounts = db.HseqRecords.Where(x => x.HseqCaseFileID == caseFileId).Count();

            //Remove the case file if this is the last node
            if (caseFileRefCounts == 1)
            {
                HseqCaseFile hc = db.HseqCaseFiles.Find(caseFileId);
                db.HseqCaseFiles.Remove(hc);
            }

            db.SaveChanges();

            return(RedirectToAction("Index"));
        }
Ejemplo n.º 3
0
        public ActionResult DeleteConfirmed(int id)
        {
            Car car = db.CarRecords.Find(id);

            _LinkRecordService.RemoveLinkedRecords(car);

            int?caseFileId = car.HseqCaseFileID;

            db.HseqRecords.Remove(car);

            //Remove the Case folder also if this is the last record
            var caseFileRefCounts = db.HseqRecords.Where(x => x.HseqCaseFileID == caseFileId).Count();

            //Remove the case file if this is the last node
            if (caseFileRefCounts == 1)
            {
                HseqCaseFile hc = db.HseqCaseFiles.Find(caseFileId);
                db.HseqCaseFiles.Remove(hc);
            }

            db.SaveChanges();
            return(RedirectToAction("Index"));
        }