public int DeleteInspectionTransactionNotSync(Inspection inspection)
        {
            int inspectionTransactionResult = 0;

            try
            {
                IEnumerable <InspectionTransactionDO> inspections = inspectionTransactionRepository.GetEntities();

                InspectionTransactionDO inspectionTransactionDO = inspections.FirstOrDefault(ins => ins.InspectionID == inspection.inspectionID && ins.ProjectID == inspection.projectID);
                inspectionTransactionResult = inspectionTransactionRepository.DeleteEntity(inspectionTransactionDO.ID);
                LocationImageDo.DeleteImage(conn, inspectionTransactionDO.ID);
                DocumentDO.DeleteDocument(conn, inspection.inspectionID, inspection.projectID);
                PunchListDO.DeletePunchList(conn, inspection.inspectionID, inspection.projectID);
                PunchListImageDO.DeletePunchListImageList(conn, inspection.ID);
                ReportDO.DeleteReports(conn, inspection.ID);
                using (var optService = new OptionTransactionService(conn))
                {
                    var optIds = optService.GetOptionTransactionsForInspection(inspection.ID).Select(s => s.ID);
                    OptionTransactionDO.DeleteInspectionOptions(conn, inspection.ID);
                    if (optIds != null && optIds.Count() > 0)
                    {
                        foreach (var optID in optIds)
                        {
                            var chkTransIDs = CheckListTransactionDO.GetCheckListTransaction(conn, optID).Select(s => s.ID);
                            CheckListTransactionDO.DeletecheckList(conn, optID);
                            OptionTransactionImageDO.DeleteOptionImagesSync(conn, optID);
                            if (chkTransIDs != null && chkTransIDs.Count() > 0)
                            {
                                foreach (var chkId in chkTransIDs)
                                {
                                    GuildedPhotoDO.DeleteGuidedImageList(conn, chkId);
                                }
                            }
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine("Exception Occured in DeleteInspectionTransaction method due to " + ex.Message);
            }
            return(inspectionTransactionResult);
        }
Esempio n. 2
0
        /// <summary>
        /// Gets the inspection detail.
        /// </summary>
        /// <returns>The inspection detail.</returns>
        /// <param name="inspection">Inspection.</param>
        /// <param name="IsImageNeeded">If set to <c>true</c> is image needed.</param>
        public Inspection GetInspectionDetail(Inspection inspection, bool IsImageNeeded)
        {
            using (Inspection ins = inspection)
            {
                try
                {
                    this.IsImageNeeded = IsImageNeeded;
                    var inspectionDesc = inspectionService.GetInspections().Where(i => i.inspectionID == inspection.inspectionID).FirstOrDefault();
                    if (inspectionDesc != null)
                    {
                        var inspectionTraansaction = inspectionTransactionService.GetInspectionTransactions().Where(i => i.inspectionID == inspection.inspectionID && i.projectID == inspection.projectID && i.appID == inspection.appID);
                        if (inspectionTraansaction != null && inspectionTraansaction.Count() > 0)
                        {
                            ins.ID = inspectionTraansaction.FirstOrDefault().ID;

                            //ins.InspectionStarted = inspectionTraansaction.FirstOrDefault().InspectionStarted;
                        }
                        inspectionTransactionID = ins.ID;
                        GetInspectionDetails(int.Parse(inspection.inspectionID), ins);
                        inspection.InspectionType = ins.InspectionType;

                        var punchsequenceID = ins.sequences.Where(i => i.id == BALConstant.PUNCH_SEQUENCEID);

                        if (punchsequenceID == null || punchsequenceID.Count() <= 0)
                        {
                            if (inspection.inspectionID == BALConstant.FINAL_INSPECTIONID)
                            {
                                Sequence    punchsequence = new Sequence();
                                SequencesDO seq           = SequencesDO.getPunchListSequenceForInspection(conn, BALConstant.PUNCH_SEQUENCEID).FirstOrDefault();
                                if (seq != null)
                                {
                                    punchsequence.id      = seq.ID;
                                    punchsequence.name    = seq.SequenceDesc;
                                    punchsequence.Options = getPunchListForSeq(BALConstant.FINAL_INSPECTIONID, inspection.projectID, ins.ID);
                                }

                                if (punchsequence != null && punchsequence.Options != null && punchsequence.Options.Count > 0)
                                {
                                    if (punchsequence.Options[0].checkListItems != null && punchsequence.Options[0].checkListItems.Count > 0)
                                    {
                                        ins.sequences.Insert(0, punchsequence);
                                    }
                                }
                            }
                        }
                    }
                    if (ins != null)
                    {
                        ins.locationIDImages = new List <byte[]> ();
                        var images = LocationImageDo.getImageForLocationIdentification(conn, ins.ID);
                        if (images != null && images.Count > 0)
                        {
                            foreach (var img in images)
                            {
                                ins.locationIDImages.Add(img.Image);
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    Debug.WriteLine("Exception Occured in GetInspectionDetail method due to " + ex.Message);
                }
                return(ins);
            }
        }