public CustomerEnquiryFollowupDTO GetCustomerEnquiryFollowupbyId(int CustomerEnquiryid)
        {
            CustomerEnquiryFollowupDTO lst = new CustomerEnquiryFollowupDTO();

            try
            {
                using (var entity = new ManiMotorsEntities1())
                {
                    lst = (from ce in entity.CustomerEnquiries
                           join cef in entity.CustomerEnquiryFollowUps on ce.CustomerEnquiryID equals cef.CustomerEnquiryID
                           join vs in entity.VehicleSalesStatus on ce.VehicleStatusID equals vs.VehicleSalesStatusID
                           join vi in entity.VehicleInfoes on ce.Model1 equals vi.VehicleInfoID
                           join c in entity.Customers on ce.CustomerID equals c.CustomerID
                           where cef.CustomerEnquiryID == CustomerEnquiryid &&
                           cef.IsLatest == true
                           select new CustomerEnquiryFollowupDTO
                    {
                        CustomerName = c.Name,
                        CustomerId = c.CustomerID,
                        ModelName = vi.ModelName,
                        CustomerEnquiryId = ce.CustomerEnquiryID,
                        FollowUpDate = cef.FollowUpDate,
                        StatusDescription = vs.Description,
                        StatusId = vs.VehicleSalesStatusID,
                        CustomerMobileNo = c.ContactNo,
                        Description = cef.Description
                    }).FirstOrDefault();
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(lst);
        }
Exemplo n.º 2
0
        public bool SaveCustomerEnquiry(CustomerEnquiryDTO eDTO, CustomerEnquiryFollowupDTO efDTO, int exchangeVehicleId = 0, string mode = "")
        {
            var flag = false;

            try {
                using (var entities = new ManiMotorsEntities1())
                {
                    using (TransactionScope scope = new TransactionScope())
                    {
                        if (mode != "EDIT")
                        {
                            try
                            {
                                CustomerEnquiry dbEnt = new CustomerEnquiry()
                                {
                                    CustomerID       = eDTO.CustomerID,
                                    ReferenceBy      = eDTO.ReferenceBy,
                                    CashORFinance    = eDTO.CashorFinance,
                                    SalesExecutive   = eDTO.SalesExecutiveId,
                                    Model1           = eDTO.Model1,
                                    Model2           = eDTO.Model2,
                                    Model3           = eDTO.Model3,
                                    Color            = eDTO.Color,
                                    TestDrive        = eDTO.TestDrive,
                                    ExchangeVehicle  = eDTO.IsExchangeVehicle,
                                    CompetitiveModel = eDTO.CompetitiveModel,
                                    VehicleStatusID  = eDTO.VehicleStatusId,
                                    Createdby        = eDTO.CreatedBy,
                                    CreatedDate      = eDTO.CreatedDate,
                                    Modifiedby       = eDTO.ModifiedBy,
                                    ModifiedDate     = eDTO.ModifiedDate
                                };
                                entities.CustomerEnquiries.Add(dbEnt);
                                entities.SaveChanges();
                                var CustomerEnquiryID = dbEnt.CustomerEnquiryID;

                                var lstCustomer = entities.CustomerEnquiryFollowUps.Where(i => i.CustomerEnquiryID == CustomerEnquiryID);
                                foreach (var followup in lstCustomer)
                                {
                                    followup.IsLatest = false;
                                    entities.SaveChanges();
                                }

                                CustomerEnquiryFollowUp dbEntf = new CustomerEnquiryFollowUp()
                                {
                                    CustomerID        = efDTO.CustomerId,
                                    CustomerEnquiryID = CustomerEnquiryID,
                                    Description       = efDTO.Description,
                                    FollowUpDate      = efDTO.FollowUpDate,
                                    Createdby         = eDTO.CreatedBy,
                                    CreatedDate       = eDTO.CreatedDate,
                                    Modifiedby        = eDTO.ModifiedBy,
                                    ModifiedDate      = eDTO.ModifiedDate,
                                    IsLatest          = true,
                                };
                                entities.CustomerEnquiryFollowUps.Add(dbEntf);
                                entities.SaveChanges();
                                if (exchangeVehicleId != 0)
                                {
                                    var customerExchange = entities.CustomerExchangeVehicles.FirstOrDefault(ev => ev.CustomerExchangeVehicleID == exchangeVehicleId);
                                    customerExchange.CustomerEnquiryID = CustomerEnquiryID;
                                    entities.SaveChanges();
                                }

                                scope.Complete();
                            }
                            catch (Exception ex)
                            {
                                scope.Dispose();
                                throw;
                            }
                        }
                        else
                        {
                            try
                            {
                                var ce = entities.CustomerEnquiries.FirstOrDefault(e => e.CustomerEnquiryID == eDTO.CustomerEnquiryID);

                                ce.CustomerID       = eDTO.CustomerID;
                                ce.ReferenceBy      = eDTO.ReferenceBy;
                                ce.CashORFinance    = eDTO.CashorFinance;
                                ce.SalesExecutive   = eDTO.SalesExecutiveId;
                                ce.Model1           = eDTO.Model1;
                                ce.Model2           = eDTO.Model2;
                                ce.Model3           = eDTO.Model3;
                                ce.Color            = eDTO.Color;
                                ce.TestDrive        = eDTO.TestDrive;
                                ce.ExchangeVehicle  = eDTO.IsExchangeVehicle;
                                ce.CompetitiveModel = eDTO.CompetitiveModel;
                                ce.VehicleStatusID  = eDTO.VehicleStatusId;
                                ce.Createdby        = eDTO.CreatedBy;
                                ce.CreatedDate      = eDTO.CreatedDate;
                                ce.Modifiedby       = eDTO.ModifiedBy;
                                ce.ModifiedDate     = eDTO.ModifiedDate;
                                entities.SaveChanges();

                                var lstCustomer = entities.CustomerEnquiryFollowUps.Where(i => i.CustomerEnquiryID == eDTO.CustomerEnquiryID);
                                foreach (var followup in lstCustomer)
                                {
                                    followup.IsLatest = false;
                                    entities.SaveChanges();
                                }

                                CustomerEnquiryFollowUp dbEntf = new CustomerEnquiryFollowUp()
                                {
                                    CustomerID        = efDTO.CustomerId,
                                    CustomerEnquiryID = eDTO.CustomerEnquiryID,
                                    Description       = efDTO.Description,
                                    FollowUpDate      = efDTO.FollowUpDate,
                                    Createdby         = eDTO.CreatedBy,
                                    CreatedDate       = eDTO.CreatedDate,
                                    Modifiedby        = eDTO.ModifiedBy,
                                    ModifiedDate      = eDTO.ModifiedDate,
                                    IsLatest          = true,
                                };
                                entities.CustomerEnquiryFollowUps.Add(dbEntf);
                                entities.SaveChanges();
                                scope.Complete();
                            }
                            catch (Exception ex)
                            {
                                scope.Dispose();
                                throw;
                            }
                        }
                    }
                }
                flag = true;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            return(flag);
        }
Exemplo n.º 3
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (txtCustomerName.Text == "" || ddlEmployees.SelectedIndex == -1 || ddlModel1.SelectedIndex == -1 || (!rdnTDYes.Checked && !rdnTDNo.Checked) || (!rdnEVYes.Checked && !rdnEVNo.Checked) || (!rdnCash.Checked && !rdnFinance.Checked) || ddlStatus.SelectedIndex == -1 || txtRemarks.Text == "")
            {
                MyMessageBox.ShowBox("Please Enter All Mandatory Fields!!!");
                return;
            }
            //Get ModelId
            int Model1 = 0;

            if (ddlModel1.SelectedIndex != -1)
            {
                var model1Item = (ComboboxItem)ddlModel1.SelectedItem;
                Model1 = Convert.ToInt32(model1Item.Value);
            }

            int?Model2 = null;

            if (ddlModel2.SelectedIndex != -1)
            {
                var model2Item = (ComboboxItem)ddlModel2.SelectedItem;
                Model2 = Convert.ToInt32(model2Item.Value);
            }

            int?Model3 = null;

            if (ddlModel3.SelectedIndex != -1)
            {
                var model3Item = (ComboboxItem)ddlModel3.SelectedItem;
                Model3 = Convert.ToInt32(model3Item.Value);
            }

            string color           = ddlColor.Text;
            bool   testDrive       = rdnTDYes.Checked;
            bool   exchangeVehicle = rdnEVYes.Checked;
            string payment;

            if (rdnCash.Checked)
            {
                payment = "Cash";
            }
            else
            {
                payment = "Finance";
            }

            //Get Sales Executive Id
            int SalesExecutiveId = 0;

            if (ddlEmployees.SelectedIndex != -1)
            {
                var salesItem = (ComboboxItem)ddlEmployees.SelectedItem;
                SalesExecutiveId = Convert.ToInt32(salesItem.Value);
            }

            //Get StatusId
            int StatusId = 0;

            if (ddlStatus.SelectedIndex != -1)
            {
                var statusitem = (ComboboxItem)ddlStatus.SelectedItem;
                StatusId = Convert.ToInt32(statusitem.Value);
            }

            CustomerEnquiryDTO dto = new CustomerEnquiryDTO()
            {
                CustomerID        = Convert.ToInt32(txtCustomerId.Text),
                ReferenceBy       = txtReferenceBy.Text,
                SalesExecutiveId  = SalesExecutiveId,
                Model1            = Model1,
                Model2            = Model2,
                Model3            = Model3,
                Color             = color,
                TestDrive         = testDrive,
                IsExchangeVehicle = exchangeVehicle,
                CashorFinance     = payment,
                CompetitiveModel  = txtCompetitiveModel.Text,
                VehicleStatusId   = StatusId,
                CreatedBy         = GlobalSetup.Userid,
                CreatedDate       = DateTime.Now,
                ModifiedBy        = 1,
                ModifiedDate      = DateTime.Now
            };

            CustomerEnquiryFollowupDTO efdto = new CustomerEnquiryFollowupDTO()
            {
                CustomerId   = Convert.ToInt32(txtCustomerId.Text),
                Description  = txtRemarks.Text,
                FollowUpDate = Convert.ToDateTime(dtFollowupDate.Text),
                CreatedBy    = GlobalSetup.Userid,
                CreatedDate  = DateTime.Now,
                ModifiedBy   = 1,
                ModifiedDate = DateTime.Now
            };

            CustomerBL obj = new CustomerBL();

            if (_mode == "EDIT")
            {
                dto.CustomerEnquiryID = _enquiryId;
            }
            var flag = obj.SaveCustomerEnquiry(dto, efdto, ExchangeVehicleId, _mode);

            if (flag)
            {
                MyMessageBox.ShowBox("Vehicle Enquiry Saved");
                Clear();
            }
            else
            {
                MyMessageBox.ShowBox("Vehicle Enquiry Failed to Save");
            }
        }