Ejemplo n.º 1
0
        public void Save(CompanyEditItem item)
        {
            item.GetValidationErrors().ThrowIfHasErrors();

            var company = new Company();

            if (item.Id != 0)
            {
                company = Db.Companies.Single(x => x.Id == item.Id);
            }
            else
            {
                company.DateCreate = DateTime.Now;
                Db.Companies.Add(company);
            }

            company.StateId      = item.StateId;
            company.Name         = item.Name;
            company.ActivityType = item.ActivityType;
            company.Address      = item.Address;
            company.Remarks      = item.Remarks;
            company.WebSites     = item.WebSites;
            company.DateModify   = DateTime.Now;

            Db.SaveChanges();

            item.Id = company.Id;
        }
Ejemplo n.º 2
0
 public ActionResult Save([FromBody] CompanyEditItem item)
 {
     if (item.StateId == 0)
     {
         item.StateId = null;
     }
     Service.Company.Save(item);
     return(Json(item));
 }
Ejemplo n.º 3
0
        public CompanyEditItem Get(int?id)
        {
            var editItem = new CompanyEditItem();

            if (id != 0)
            {
                var company = Db.Companies
                              .Select(x => new CompanyEditItem
                {
                    Id           = x.Id,
                    Name         = x.Name,
                    StateId      = x.StateId,
                    Remarks      = x.Remarks,
                    ActivityType = x.ActivityType,
                    Address      = x.Address,
                    WebSites     = x.WebSites,
                    Phones       = x.Phones
                                   .Select(p => new PhoneEditItem
                    {
                        Id         = p.Id,
                        Remarks    = p.Remarks,
                        DateCreate = p.DateCreate,
                        DateModify = p.DateModify,
                        Number     = p.Number,
                        CompanyId  = p.CompanyId
                    })
                                   .OrderBy(n => n.Number)
                                   .ToList(),
                    Records = x.Phones.SelectMany(i => i.CallRecords)
                              .OrderByDescending(s => s.DateCreate)
                              .Select(r => new CallRecordItem
                    {
                        Id         = r.Id,
                        Content    = r.Content,
                        Phone      = r.Phone.Number,
                        DateCreate = r.DateCreate,
                        PhoneId    = r.PhoneId
                    })
                              .ToList(),
                    Quotes = x.Quotes
                             .Select(q => new QuoteItem
                    {
                        Id           = q.Id,
                        DateModify   = q.DateModify,
                        Name         = q.Name,
                        CustomDesign = q.CustomDesign,
                        DateCreate   = q.DateCreate,
                        CompanyId    = q.CompanyId,
                        Costings     = q.Costings
                                       .Select(c => new CostingItem
                        {
                            Total      = c.Total,
                            Cost       = c.Cost,
                            Id         = c.Id,
                            CategoryId = c.CategoryId,
                            DateModify = c.DateModify,
                            Name       = c.Name,
                            Unit       = c.Unit,
                            DateCreate = c.DateCreate,
                            Qty        = c.Qty,
                            Multiplier = c.Multiplier,
                            QuoteId    = c.QuoteId
                        })
                                       .OrderBy(s => s.CategoryId)
                                       .ToList()
                    })
                             .ToList()
                })
                              .FirstOrDefault(x => x.Id == id);


                company.Quotes
                .ForEach(x => x.Costings = x.Costings
                                           .OrderBy(c => c.CategoryName)
                                           .ThenBy(c => c.Name)
                                           .ToList());

                return(company);
            }


            return(editItem);
        }