Пример #1
0
        // GET: CustomerOnBoarding
        public ActionResult Index(string groupId, string LeadId)
        {
            CommonFunctions common = new CommonFunctions();

            if (!string.IsNullOrEmpty(groupId))
            {
                groupId = common.DecryptString(groupId);
            }
            JavaScriptSerializer     json_serializer = new JavaScriptSerializer();
            OnBoardingSalesViewModel objData         = new OnBoardingSalesViewModel();

            try
            {
                BOTS_TblPointsEarnRuleConfig objpointsearncofig  = new BOTS_TblPointsEarnRuleConfig();
                BOTS_TblEarnPointsSlabConfig objpointsslabconfig = new BOTS_TblEarnPointsSlabConfig();
                List <SelectListItem>        refferedname        = new List <SelectListItem>();

                SelectListItem item = new SelectListItem();
                item.Value = "0";
                item.Text  = "Please Select";
                refferedname.Add(item);
                objData.lstAllGroups = refferedname;
                objData.lstBrands    = refferedname;

                objData.lstCity             = CR.GetCity();
                objData.lstRetailCategory   = CR.GetRetailCategory();
                objData.lstBillingPartner   = CR.GetBillingPartner();
                objData.lstSourcedBy        = CR.GetSourcedBy();
                objData.lstRMAssigned       = CR.GetRMAssigned();
                objData.lstRefferedCategory = CR.GetAllRefferedCategory();
                objData.lstStates           = CR.GetStates();
                if (!string.IsNullOrEmpty(LeadId))
                {
                    var leadDetails = SLR.GetsalesLeadByLeadId(Convert.ToInt32(LeadId));
                    objData.bots_TblGroupMaster = MeargeLeadData(leadDetails);
                    objData.LeadId = LeadId;
                }

                if (!string.IsNullOrEmpty(groupId))
                {
                    objData.bots_TblGroupMaster    = OBR.GetGroupMasterDetails(groupId);
                    objData.bots_TblDealDetails    = OBR.GetDealMasterDetails(groupId);
                    objData.bots_TblPaymentDetails = OBR.GetPaymentDetails(groupId);
                    objData.objRetailList          = OBR.GetRetailDetails(groupId);
                    objData.objInstallmentList     = OBR.GetInstallmentDetails(groupId);
                    objData.lstOutlets             = OBR.GetOutletDetails(groupId);

                    foreach (var brand in objData.objRetailList)
                    {
                        objData.lstBrands.Add(new SelectListItem
                        {
                            Text  = brand.BrandName,
                            Value = Convert.ToString(brand.BrandId)
                        });
                    }


                    if (objData.lstOutlets.Count == 0)
                    {
                        var brandId  = 1;
                        var outletId = 1;
                        foreach (var item1 in objData.objRetailList)
                        {
                            for (int i = 1; i <= item1.NoOfEnrolled; i++)
                            {
                                BOTS_TblOutletMaster outlet = new BOTS_TblOutletMaster();
                                outlet.Id        = 0;
                                outlet.BrandId   = Convert.ToString(brandId);
                                outlet.OutletId  = Convert.ToString(outletId);
                                outlet.BrandName = item1.BrandName;
                                objData.lstOutlets.Add(outlet);
                                outletId++;
                            }
                            brandId++;
                        }
                    }
                    else
                    {
                        foreach (var item1 in objData.objRetailList)
                        {
                            foreach (var item2 in objData.lstOutlets)
                            {
                                if (item1.BrandId == item2.BrandId)
                                {
                                    item2.BrandName = item1.BrandName;
                                }
                            }
                        }
                    }
                    objData.bots_TblGroupMaster.CategoryData        = json_serializer.Serialize(objData.objRetailList);
                    objData.bots_TblGroupMaster.PaymentScheduleData = json_serializer.Serialize(objData.objInstallmentList);
                }
                objData.lstearnpoint            = FillEarnPointLevel();
                objData.objpointsearnruleconfig = objpointsearncofig;
                objData.objearnpointslab        = objpointsslabconfig;
            }
            catch (Exception ex)
            {
                newexception.AddException(ex, "");
            }
            return(View(objData));
        }
Пример #2
0
        public ActionResult AddCustomer(OnBoardingSalesViewModel objData)
        {
            bool status   = false;
            int  GroupdId = 0;

            try
            {
                var userDetails = (CustomerLoginDetail)Session["UserSession"];
                List <BOTS_TblRetailMaster>       objLstRetail      = new List <BOTS_TblRetailMaster>();
                List <BOTS_TblInstallmentDetails> objLstInstallment = new List <BOTS_TblInstallmentDetails>();
                List <BOTS_TblOutletMaster>       objLstOutlet      = new List <BOTS_TblOutletMaster>();
                SALES_tblLeads        leadDetails  = new SALES_tblLeads();
                List <SelectListItem> refferedname = new List <SelectListItem>();
                SelectListItem        item1        = new SelectListItem();
                item1.Value = "0";
                item1.Text  = "Please Select";
                refferedname.Add(item1);
                objData.lstAllGroups        = refferedname;
                objData.lstCity             = CR.GetCity();
                objData.lstRetailCategory   = CR.GetRetailCategory();
                objData.lstBillingPartner   = CR.GetBillingPartner();
                objData.lstSourcedBy        = CR.GetSourcedBy();
                objData.lstRMAssigned       = CR.GetRMAssigned();
                objData.lstRefferedCategory = CR.GetAllRefferedCategory();
                objData.lstStates           = CR.GetStates();

                JavaScriptSerializer json_serializer = new JavaScriptSerializer();
                json_serializer.MaxJsonLength = int.MaxValue;
                object[] objCategoryData        = (object[])json_serializer.DeserializeObject(objData.bots_TblGroupMaster.CategoryData);
                object[] objPaymentScheduleData = (object[])json_serializer.DeserializeObject(objData.bots_TblGroupMaster.PaymentScheduleData);

                foreach (Dictionary <string, object> item in objCategoryData)
                {
                    BOTS_TblRetailMaster objItem = new BOTS_TblRetailMaster();
                    objItem.GroupId        = Convert.ToString(item["GroupId"]);
                    objItem.CategoryId     = Convert.ToString(item["CategoryId"]);
                    objItem.CategoryName   = Convert.ToString(item["CategoryName"]);
                    objItem.BrandName      = Convert.ToString(item["BrandName"]);
                    objItem.BrandId        = Convert.ToString(item["BrandId"]);
                    objItem.NoOfOutlets    = Convert.ToInt64(item["NoOfOutlets"]);
                    objItem.NoOfEnrolled   = Convert.ToInt64(item["NoOfEnrolled"]);
                    objItem.BOProduct      = Convert.ToString(item["BOProduct"]);
                    objItem.BillingPartner = Convert.ToString(item["BillingPartner"]);
                    objItem.BillingProduct = Convert.ToString(item["BillingProduct"]);

                    objLstRetail.Add(objItem);
                }
                foreach (Dictionary <string, object> item in objPaymentScheduleData)
                {
                    BOTS_TblInstallmentDetails objItem = new BOTS_TblInstallmentDetails();

                    objItem.GroupId       = Convert.ToString(item["GroupId"]);
                    objItem.Installment   = Convert.ToInt32(item["Installment"]);
                    objItem.PaymentDate   = Convert.ToDateTime(item["PaymentDate"]);
                    objItem.PaymentAmount = Convert.ToDecimal(item["PaymentAmount"]);

                    objLstInstallment.Add(objItem);
                }

                objData.bots_TblGroupMaster.CreatedBy   = userDetails.LoginId;
                objData.bots_TblGroupMaster.CreatedDate = DateTime.Now;

                if (objData.bots_TblGroupMaster.CustomerStatus == "CSUpdate")
                {
                    object[] objOutletData = (object[])json_serializer.DeserializeObject(objData.bots_TblGroupMaster.OutletData);
                    foreach (Dictionary <string, object> item in objOutletData)
                    {
                        BOTS_TblOutletMaster objItem = new BOTS_TblOutletMaster();
                        objItem.Id               = Convert.ToInt32(item["Id"]);
                        objItem.GroupId          = Convert.ToString(item["GroupId"]);
                        objItem.BrandId          = Convert.ToString(item["BrandId"]);
                        objItem.OutletId         = Convert.ToString(item["OutletId"]);
                        objItem.OutletName       = Convert.ToString(item["OutletName"]);
                        objItem.AreaName         = Convert.ToString(item["AreaName"]);
                        objItem.AuthorisedPerson = Convert.ToString(item["AuthorisedPerson"]);
                        objItem.RegisterMobileNo = Convert.ToString(item["RegisterMobileNo"]);
                        objItem.RegisterEmail    = Convert.ToString(item["RegisterEmail"]);
                        objItem.Address          = Convert.ToString(item["Address"]);
                        objItem.Latitude         = Convert.ToString(item["Latitude"]);
                        objItem.Longitude        = Convert.ToString(item["Longitude"]);
                        objItem.City             = Convert.ToString(item["City"]);
                        objItem.PinCode          = Convert.ToString(item["PinCode"]);
                        objItem.State            = Convert.ToString(item["State"]);

                        objLstOutlet.Add(objItem);
                    }
                    GroupdId = OBR.AddOnboardingCustomer(objData.bots_TblGroupMaster, objLstRetail, objData.bots_TblDealDetails, objData.bots_TblPaymentDetails, objLstInstallment, objLstOutlet);
                    if (objData.LeadId != null)
                    {
                        status = SLR.UpdateStatus(Convert.ToInt32(objData.LeadId), Convert.ToString(GroupdId));
                    }
                }
                else
                {
                    GroupdId = OBR.AddOnboardingCustomer(objData.bots_TblGroupMaster, objLstRetail, objData.bots_TblDealDetails, objData.bots_TblPaymentDetails, objLstInstallment, objLstOutlet);
                    if (objData.LeadId != null)
                    {
                        status = SLR.UpdateStatus(Convert.ToInt32(objData.LeadId), Convert.ToString(GroupdId));
                    }
                }

                objData.objRetailList = OBR.GetRetailDetails(Convert.ToString(GroupdId));
                objData.lstOutlets    = OBR.GetOutletDetails(Convert.ToString(GroupdId));
                if (objData.lstOutlets.Count > 0)
                {
                    var brandId  = 1;
                    var outletId = 1;
                    foreach (var item2 in objData.objRetailList)
                    {
                        for (int i = 1; i <= item2.NoOfEnrolled; i++)
                        {
                            BOTS_TblOutletMaster outlet = new BOTS_TblOutletMaster();
                            outlet.Id        = 0;
                            outlet.BrandId   = Convert.ToString(brandId);
                            outlet.OutletId  = Convert.ToString(outletId);
                            outlet.BrandName = item2.BrandName;
                            objData.lstOutlets.Add(outlet);
                            outletId++;
                        }
                        brandId++;
                    }
                }
                if (GroupdId > 0 && objData.bots_TblGroupMaster.CustomerStatus == "CS")
                {
                    SendEmail(GroupdId);
                }
                TempData["status"] = true;
            }
            catch (Exception ex)
            {
                newexception.AddException(ex, "");
                TempData["error"] = "Error Occured";
                return(View("Index"));
            }
            CommonFunctions common  = new CommonFunctions();
            var             groupId = common.EncryptString(Convert.ToString(GroupdId));

            //return View("Index", objData);
            //return RedirectToAction("Index", "CustomerOnBoarding", groupId);
            return(RedirectToAction("Index", "CustomerOnBoarding", new { @groupId = groupId }));
        }