Esempio n. 1
0
        public Deal DeleteDeal(int id)
        {
            if (id <= 0)
            {
                return(null);
            }

            var deal = GetByID(id);

            if (deal == null)
            {
                return(null);
            }

            _crmSecurity.DemandDelete(deal);

            var dbEntity = CrmDbContext.Deals.Find(id);

            _factoryIndexer.Delete(dbEntity);

            // Delete relative  keys
            _cache.Remove(new Regex(TenantID.ToString(CultureInfo.InvariantCulture) + "deals.*"));

            DeleteBatchDealsExecute(new List <Deal>()
            {
                deal
            });

            return(deal);
        }
Esempio n. 2
0
        public Invoice DeleteInvoice(int invoiceID)
        {
            if (invoiceID <= 0)
            {
                return(null);
            }

            var invoice = GetByID(invoiceID);

            if (invoice == null)
            {
                return(null);
            }

            _crmSecurity.DemandDelete(invoice);

            // Delete relative  keys
            _cache.Remove(new Regex(TenantID.ToString(CultureInfo.InvariantCulture) + "invoice.*"));

            DeleteBatchInvoicesExecute(new List <Invoice> {
                invoice
            });

            return(invoice);
        }
Esempio n. 3
0
        public List <int> RemoveFile(File <int> file)
        {
            _crmSecurity.DemandDelete(file);

            List <int> eventIDs;

            var tagdao = _filesIntegration.DaoFactory.GetTagDao <int>();

            var tags = tagdao.GetTags(file.ID, FileEntryType.File, TagType.System).ToList().FindAll(tag => tag.TagName.StartsWith("RelationshipEvent_"));

            eventIDs = tags.Select(item => Convert.ToInt32(item.TagName.Split(new[] { '_' })[1])).ToList();

            var dao = _filesIntegration.DaoFactory.GetFileDao <int>();

            dao.DeleteFile(file.ID);

            foreach (var eventID in eventIDs)
            {
                if (GetFiles(eventID).Count == 0)
                {
                    var dbEntity = CrmDbContext.RelationshipEvent.Find(eventID);

                    if (dbEntity.TenantId != TenantID)
                    {
                        continue;
                    }

                    dbEntity.HaveFiles = false;

                    CrmDbContext.SaveChanges();
                }
            }

            var itemToUpdate = Query(CrmDbContext.Invoices).FirstOrDefault(x => x.FileId == Convert.ToInt32(file.ID));

            itemToUpdate.FileId = 0;

            CrmDbContext.SaveChanges();

            return(eventIDs);
        }
Esempio n. 4
0
        public Cases DeleteCases(int casesID)
        {
            if (casesID <= 0)
            {
                return(null);
            }

            var cases = GetByID(casesID);

            if (cases == null)
            {
                return(null);
            }

            _crmSecurity.DemandDelete(cases);

            // Delete relative  keys
            _cache.Remove(new Regex(TenantID.ToString(CultureInfo.InvariantCulture) + "invoice.*"));

            DeleteBatchCases(new[] { casesID });
            return(cases);
        }