예제 #1
0
        public async Task <bool> AssingnVendorsToEvent(List <VendorInvitation> modal)
        {
            try
            {
                if (modal != null && modal.Count > 0)
                {
                    foreach (var itm in modal)
                    {
                        var item = await _context.VendorInvitation.Where(i => i.EventDetailsId == itm.EventDetailsId && i.VendorId == itm.VendorId && i.IsDeleted == false).FirstOrDefaultAsync();

                        if (item == null)
                        {
                            Db.VendorInvitation eventD = new Db.VendorInvitation();
                            eventD.VendorId       = itm.VendorId;
                            eventD.EventDetailsId = itm.EventDetailsId;
                            eventD.StatusId       = itm.StatusId;
                            eventD.AdminComment   = itm.AdminComment;
                            eventD.VendorComment  = itm.VendorComment;
                            eventD.Amount         = itm.Amount;

                            eventD.IsDeleted = false;
                            eventD.CreatedBy = itm.CreatedBy;
                            eventD.CreatedOn = System.DateTime.Now;
                            _context.VendorInvitation.Add(eventD);
                            var eventId = await _context.EventDetails.Where(x => x.EventDetailsId == itm.EventDetailsId).FirstOrDefaultAsync();

                            Db.Event _data = _context.Event.Find(eventId.EventId);
                            _data.StatusId = 7;
                            _context.SaveChanges();
                        }
                        else
                        {
                            await UpdateVendorsInvitationStatus(itm);
                        }
                    }
                }
                _context.SaveChanges();

                return(await Task.Run(() => true));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
예제 #2
0
        public async Task <bool> UpdateVendorsInvitationStatus(VendorInvitation modal)
        {
            try
            {
                if (modal != null)
                {
                    Db.VendorInvitation eventD = await _context.VendorInvitation.Where(x => x.EventDetailsId == modal.EventDetailsId && x.VendorId == modal.VendorId).FirstOrDefaultAsync();

                    eventD.StatusId = modal.StatusId;
                    if (modal.AdminComment != null)
                    {
                        eventD.AdminComment = modal.AdminComment;
                    }
                    if (modal.VendorComment != null)
                    {
                        eventD.VendorComment = modal.VendorComment;
                    }
                    if (modal.Amount != null)
                    {
                        eventD.Amount = modal.Amount;
                    }
                    if (modal.AdminAmount != null)
                    {
                        eventD.AdminAmount = modal.AdminAmount;
                        eventD.AdminPerc   = modal.AdminPerc;
                    }
                    _context.SaveChanges();
                    if (modal.StatusId == 3)
                    {
                        var data = await _context.VendorInvitation.Where(x => x.EventDetailsId == modal.EventDetailsId).ToListAsync();

                        bool _result = false;
                        if (data != null)
                        {
                            foreach (var itm in data)
                            {
                                if (itm.StatusId == 3)
                                {
                                    _result = true;
                                    break;
                                }
                                else
                                {
                                    _result = false;
                                }
                            }
                        }
                        if (_result == true)
                        {
                            var eventId = await _context.EventDetails.Where(x => x.EventDetailsId == modal.EventDetailsId).FirstOrDefaultAsync();

                            Db.Event _data = _context.Event.Find(eventId.EventId);
                            _data.StatusId = 3;
                            _context.SaveChanges();
                        }
                    }
                    if (modal.StatusId == 7)
                    {
                        var eventId = await _context.EventDetails.Where(x => x.EventDetailsId == modal.EventDetailsId).FirstOrDefaultAsync();

                        Db.Event _data = _context.Event.Find(eventId.EventId);
                        _data.StatusId = 7;
                        _context.SaveChanges();
                    }
                    if (modal.StatusId == 9)
                    {
                        var eventId = await _context.EventDetails.Where(x => x.EventDetailsId == modal.EventDetailsId).FirstOrDefaultAsync();

                        Db.Event _data = _context.Event.Find(eventId.EventId);
                        _data.StatusId = 9;
                        _context.SaveChanges();
                    }
                }

                return(await Task.Run(() => true));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }