void Initialize() { IDataProvider dataProvider = DataSource.GetDataProvider(); SalesbySecorSeries.DataSource = dataProvider.GetSalesBySector(new DateTime(), DateTime.Now, GroupingPeriod.All); dailySalesPerformance.SetSalesPerformanceProvider(new DailySalesPerformance(dataProvider)); monthlySalesPerformance.SetSalesPerformanceProvider(new MonthlySalesPerformance(dataProvider)); Palette palette = ChartUtils.GeneratePalette(); chartSalesbySecor.PaletteRepository.Add(palette.Name, palette); chartSalesbySecor.PaletteName = palette.Name; chartSalesbySecor.CustomDrawSeriesPoint += ChartUtils.CustomDrawPieSeriesPoint; int year = DateTime.Today.Year; SalesGroup thisYearSales = dataProvider.GetTotalSalesByRange(new DateTime(year, 1, 1), DateTime.Today); decimal fiscalToDataValue = thisYearSales.TotalCost; fiscalToData.Text = fiscalToDataValue.ToString("$0,0"); needleFiscalToData.Value = (float)thisYearSales.TotalCost; decimal salesForecast = SalesForecastMaker.GetYtdForecast(fiscalToDataValue); linearScaleRangeBarForecast.Value = (float)(salesForecast / 1000000); int preYear = year - 1; SalesGroup prevYearSales = dataProvider.GetTotalSalesByRange(new DateTime(preYear, 1, 1), new DateTime(preYear, 12, DateTime.DaysInMonth(preYear, 12))); labelFiscalYear.Text = "FISCAL YEAR " + preYear.ToString(); fiscalYear.Text = prevYearSales.TotalCost.ToString("$0,0"); needleFiscalYear.Value = (float)prevYearSales.TotalCost; }
public JsonResult Summary(DateTime StartDate, DateTime EndDate) { try { var Sales = Sqlhelpers.GetAllSales(StartDate, EndDate).ToList(); var result = from sales in Sales group sales by sales.BusinessID into SalesGroup select new { BusinessName = SalesGroup.First().BusinessName, Refill6KG = SalesGroup.Sum(x => x.Refill_6KG), Refill13KG = SalesGroup.Sum(x => x.Refill_13KG), Outright_6KG = SalesGroup.Sum(x => x.Outright_6KG), Outright_13KG = SalesGroup.Sum(x => x.Outright_13KG), Complete6KG = SalesGroup.Sum(x => x.Complete6KG), Complete13KG = SalesGroup.Sum(x => x.Complete13KG), }; return(Json(result, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(Json(new { error = true, message = "Error" + ex.Message })); } }
public SalesGroupViewModel CastModel(SalesGroup model) { return(new SalesGroupViewModel { ID = model.ID, Company = model.Company, CompanyCode = model.CompanyCode, Name = model.Name, ShortCode = model.ShortCode, State = model.State, DistrictID = model.DistrictID, District = new DistrictViewModel().CastModel(model.District) }); }
/// <summary> /// 获取指定日期的各个状态案件的统计信息 /// </summary> /// <param name="salesGroup">销售团队信息</param> /// <param name="date">日期</param> /// <returns>统计信息</returns> private DayStatisticsDto GetSingleGroupStatistics(SalesGroup salesGroup, DateTime date) { var output = new DayStatisticsDto(); DateTime endDate = date.AddDays(1.0); DateTime thisMonth = new DateTime(date.Year, date.Month, 1); DateTime nextMonth = thisMonth.AddMonths(1); // 审核案件 var audits = _baseAuditDal.GetAllBase() .Where(p => p.SalesGroupID == salesGroup.ID && p.CreateTime >= date && p.CreateTime < endDate) .ToList(); var monthAudits = _baseAuditDal.GetAllBase() .Where(p => p.SalesGroupID == salesGroup.ID && p.CreateTime >= thisMonth && p.CreateTime < nextMonth); // 进件案件 var baseCases = _baseCaseDal.GetAll() .Where(p => p.SalesGroupID == salesGroup.ID && p.CreateTime > date && p.CreateTime < endDate && p.NewCaseNum != null); // 已签约案件 var mortages = GetMortgages(audits).ToList(); // 已放款案件 var afterCases = GetLendings(audits).ToList(); // 月放款案件 var monthAfterCases = GetLendings(monthAudits); output.SalesGroupId = salesGroup.ID; output.SalesGroupName = salesGroup.Company; output.BaseCaseCount = baseCases.Count(); output.BaseCaseAmount = baseCases.Sum(p => p.LoanAmount) ?? 0M; output.AuditCaseCount = audits.Count(p => p.CaseStatus == CaseStatus.PublicMortgage); output.AuditCaseAmount = audits.Where(p => p.CaseStatus == CaseStatus.PublicMortgage).Sum(p => p.AuditAmount) ?? 0M; output.PublicCaseCount = mortages.Count(); output.PublicCaseAmount = mortages.Sum(p => p.ContractAmount) ?? 0M; output.AfterCaseCount = afterCases.Count(); output.AfterCaseAmount = afterCases.Sum(p => p.ContractAmount) ?? 0M; output.MonthAfterCaseAmount = monthAfterCases.Sum(p => p.ContractAmount) ?? 0M; output.MonthAfterCaseCount = monthAfterCases.Count(); return(output); }
public bool BelongsToGroup(SalesGroup group) => _groups.Contains(group);
public bool AddSalesmenGroup(int salesmenId, int groupId) { try { if (CheckExistSalesGroup(salesmenId, groupId) == false) { SalesGroup r = new SalesGroup(); r.SalesmenId = salesmenId; r.GroupId = groupId; db.SalesGroups.InsertOnSubmit(r); db.SubmitChanges(); return true; } else return false; } catch { return false; } }
public bool Add(string upiCode, string fullName, string phone, int roleId, int smsQuota, DateTime expiredDate, int groupId, int regionId, int areaId, int localId) { try { if (CheckExistedSalemen(-1, phone)) return false; var o = new Salesmen { UpiCode = upiCode, FullName = fullName, Phone = phone, RoleId = roleId, SmsQuota = smsQuota, ExpiredDate = expiredDate }; db.Salesmens.InsertOnSubmit(o); db.SubmitChanges(); int salesMenId = o.Id; if (groupId != 0) { // insert Group to SaleGroup SalesGroup salesGroup = new SalesGroup(); salesGroup.GroupId = groupId; salesGroup.SalesmenId = salesMenId; db.SalesGroups.InsertOnSubmit(salesGroup); db.SubmitChanges(); } if (regionId != 0) { // insert region SalesRegion salesRegion = new SalesRegion(); salesRegion.SalesmenId = salesMenId; salesRegion.RegionId = regionId; db.SalesRegions.InsertOnSubmit(salesRegion); db.SubmitChanges(); } if (areaId != 0) { // insert area SalesArea salesArea = new SalesArea(); salesArea.SalesmenId = salesMenId; salesArea.AreaId = areaId; db.SalesAreas.InsertOnSubmit(salesArea); db.SubmitChanges(); } if (localId != 0) { // insert area SalesLocal salesLocal = new SalesLocal(); salesLocal.SalesmenId = salesMenId; salesLocal.LocalId = localId; db.SalesLocals.InsertOnSubmit(salesLocal); db.SubmitChanges(); } return true; } catch { return false; } }
public bool UpdateSaleGroup(int salesmenId, int groupId) { var o = (from e in db.SalesGroups where e.SalesmenId == salesmenId && e.GroupId == groupId select e).SingleOrDefault(); if (o != null) { try { db.SalesGroups.DeleteOnSubmit(o); db.SubmitChanges(); return true; } catch { return false; } } else { try { SalesGroup sg = new SalesGroup(); sg.GroupId = groupId; sg.SalesmenId = salesmenId; db.SalesGroups.InsertOnSubmit(sg); db.SubmitChanges(); return true; } catch { return false; } } }
public bool Edit(int id, string upiCode, string fullName, string phone, int roleId, int smsQuota, DateTime expiredDate, int groupId, int regionId, int areaId, int localId) { try { if (CheckExistedSalemen(id, phone)) return false; var o = (from e in db.Salesmens where e.Id == id select e).SingleOrDefault(); if (o != null) { o.UpiCode = upiCode; o.FullName = fullName; o.Phone = phone; o.RoleId = roleId; o.SmsQuota = smsQuota; o.ExpiredDate = expiredDate; db.SubmitChanges(); int salesMenId = id; if (groupId != 0) { //// delete all existing setting for this //db.SalesGroups.DeleteAllOnSubmit(from sg in db.SalesGroups where sg.SalesmenId == salesMenId select sg); // insert Group to SaleGroup SalesGroup salesGroup = new SalesGroup(); salesGroup.GroupId = groupId; salesGroup.SalesmenId = salesMenId; db.SalesGroups.InsertOnSubmit(salesGroup); db.SubmitChanges(); } if (regionId != 0) { // insert region SalesRegion salesRegion = new SalesRegion(); salesRegion.SalesmenId = salesMenId; salesRegion.RegionId = regionId; db.SalesRegions.InsertOnSubmit(salesRegion); db.SubmitChanges(); } if (areaId != 0) { // insert area SalesArea salesArea = new SalesArea(); salesArea.SalesmenId = salesMenId; salesArea.AreaId = areaId; db.SalesAreas.InsertOnSubmit(salesArea); db.SubmitChanges(); } if (localId != 0) { // insert area SalesLocal salesLocal = new SalesLocal(); salesLocal.SalesmenId = salesMenId; salesLocal.LocalId = localId; db.SalesLocals.InsertOnSubmit(salesLocal); db.SubmitChanges(); } return true; } return false; } catch { return false; } }
private void detach_SalesGroups(SalesGroup entity) { this.SendPropertyChanging(); entity.Salesmen = null; }
partial void DeleteSalesGroup(SalesGroup instance);
private void attach_SalesGroups(SalesGroup entity) { this.SendPropertyChanging(); entity.Salesmen = this; }
partial void UpdateSalesGroup(SalesGroup instance);
partial void InsertSalesGroup(SalesGroup instance);
string GetTotalCost(SalesGroup group) { return(group.TotalCost.ToString("$#,#,0")); }
// todo switch to private method public IEnumerable <AfterCase> GetAfterCaseByData(DateTime startTime, DateTime?endTime) { IQueryable <BaseAudit> baseAudits = GetAllAfterCases().Where(p => p.CreateTime >= startTime); if (endTime.HasValue) { baseAudits = baseAudits.Where(p => p.CreateTime < endTime); } baseAudits = baseAudits.OrderBy(p => p.CreateTime); var afterCases = new List <AfterCase>(); List <Dictionary> dictionaries = _dictionaryBll.QueryByParentKey("-ThirdPlatform").ToList(); foreach (var audit in baseAudits) { // 获取借款人 RelationPersonAudit customer = _relationPersonAuditDal.GetAll().Single(p => p.AuditID == audit.ID && p.RelationType == "-PersonType-JieKuanRen"); Lending lendingInfo = audit.NewCaseNum.Contains("HIS") ? _lendingDal.GetHIS(audit.ID) : _lendingDal.Get(audit.ID); SalesGroup salesGroup = _salesGroupDal.GetAll().Single(p => p.ID == audit.SalesGroupID); PublicMortgage mortgage = _mortgageBll.Query(audit.NewCaseNum); var fundDictionary = dictionaries.FirstOrDefault(p => p.Path == audit.ThirdParty); // 借款人和共同借款人 var debtNames = _relationPersonAuditDal.GetAll() .Where( p => p.AuditID == audit.ID && (p.RelationType == "-PersonType-JieKuanRen" || p.IsCoBorrower == 1)).Select(p => p.Name); var afterase = new AfterCase(); afterase.CaseNum = audit.NewCaseNum; afterase.SalesGrouptId = salesGroup.CompanyCode; afterase.SalesCompanyName = salesGroup.Company; afterase.CompanyCode = salesGroup.Company.PadRight(4).Substring(0, 4); afterase.CustomerId = customer.ID; afterase.CustomerName = audit.BorrowerName; afterase.CustomerIdentificationType = customer.IdentificationType; afterase.CustomerIdentificationNumber = customer.IdentificationNumber; afterase.AccountName = audit.OpeningSite ?? string.Empty; afterase.EarnestMoney = audit.CustEarnestMoney.ToString(); afterase.DebtName = string.Join(",", debtNames.ToArray()); afterase.LenderName = audit.LenderName ?? string.Empty; afterase.LoanTerm = audit.AuditTerm ?? string.Empty; afterase.LendingDate = lendingInfo.LendTime == null ? "" : lendingInfo.LendTime.ToString(); afterase.PaymentDay = lendingInfo.PaymentDay == null ? "" : lendingInfo.PaymentDay.ToString(); afterase.ContractAmount = audit.NewCaseNum.Contains("HIS") ? lendingInfo.ContractAmount.ToString() : mortgage.ContractAmount.ToString(); afterase.ContractInterestRate = CONTRACT_INTEREST_RATE; afterase.RealInterestRate = audit.AuditRate > 2M ? audit.AuditRate.ToString() : (audit.AuditRate * 12).ToString(); // 审计利率*12=实际年利率 afterase.ReceiveType = RECEIVE_TYPE; afterase.FundId = audit.ThirdParty ?? string.Empty; afterase.FundInterestRate = GetThirdPartyRate(audit); afterase.FundName = fundDictionary == null ? string.Empty : fundDictionary.Text; // 债转资金当作自有资金处理 afterase.LoadType = audit.CaseMode == DictionaryType.CaseMode.ZhaiZhuan ? DictionaryType.CaseMode.ZiYouZiJin : audit.CaseMode; afterase.VirtualAccount = ""; afterase.ContractNum = mortgage.ContractNo; afterCases.Add(afterase); } return(afterCases); }