using PMS.DBService.Problems; using PMS.Interface.Problems; using QWPlatform.IService; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using PMS.BusinessModels.Problem; using System.Data; using QWPlatform.SystemLibrary; using QWPlatform.SystemLibrary.Utils; using PMS.BusinessModels.Account; namespace PMS.BusinessService.Problems { public class ReportBLL : IReport { private ReportService ReportService = DataServiceBase.Instance(); public string GetAfterSale(AfterSaleModel model) { var total = 0; var dt= ReportService.GetAfterSale(model , out total); float TotalScore = 0; if (dt != null && dt.Rows.Count > 0) { foreach( DataRow row in dt.Rows) { var core = row.GetValueByName("问题分值"); TotalScore += core; } } var footer = new List(); footer.Add(new AfterSaleFooter { 编号 = "合计", 问题分值 = TotalScore }); var ReportObject = new { total = total, rows = dt, footer= footer }; return Strings.ObjectToJson(ReportObject); } public string GetChannel() { return ReportService.GetChannel().ToJson(); } public string GetRing() { return ReportService.GetRing().ToJson(); } /// /// 获取监控数据表格 /// /// /// public string GetMonitoring(MonitoringModel model) { var total = 0; var dt = ReportService.GetMonitoring(model,out total); var ReportObject = new { total = total, rows = dt }; return Strings.ObjectToJson(ReportObject); } /// /// 渠道服务问题统计 /// /// /// public string GetChannelStatistics(MonitoringModel model) { var total = 0; DataTable dt = ReportService.GetChannelStatistics(model, out total); var TotalScore = 0; if (dt != null && dt.Rows.Count > 0) { foreach (DataRow row in dt.Rows) { var core = row.GetValueByName("服务数量"); TotalScore += core; } } var footer = new List(); footer.Add(new AfterSaleFooter { 名称 = "合计", 服务数量 = TotalScore }); var ReportObject = new { footer = footer, total = total, rows = dt }; return Strings.ObjectToJson(ReportObject); } /// /// 反馈人服务问题统计 /// /// /// public string GetFeedbackStatistics(MonitoringModel model) { var total = 0; DataTable dt = ReportService.GetFeedbackStatistics(model, out total); var TotalScore = 0; if (dt != null && dt.Rows.Count > 0) { foreach (DataRow row in dt.Rows) { var core = row.GetValueByName("服务数量"); TotalScore += core; } } var footer = new List(); footer.Add(new AfterSaleFooter { 姓名 = "合计", 服务数量 = TotalScore }); var ReportObject = new { footer = footer, total = total, rows = dt }; return Strings.ObjectToJson(ReportObject); } /// /// 未完成问题统计 /// /// /// public string GetNotYetStatistics(MonitoringModel model) { var total = 0; DataTable dt = ReportService.GetNotYetStatistics(model, out total); var TotalScore = 0; if (dt != null && dt.Rows.Count > 0) { foreach (DataRow row in dt.Rows) { var core = row.GetValueByName("服务数量"); TotalScore += core; } } var ReportObject = new { total = total, rows = dt, }; return Strings.ObjectToJson(ReportObject); } /// /// 获取统计报表 /// /// public string GetList(UserInfo user) { DataTable dt= ReportService.GetList(user.PersonProperty); var json = "[{"; foreach (DataRow row in dt.Rows) { if (row.GetValueByName("上级ID") == 0) { json += "'渠道id':'"+user.CompanyID+"','id':" + row.GetValueByName("ID") + ",'text':'" + row.GetValueByName("报表名称") + "','children': ["; foreach (DataRow r in dt.Rows) { if (r.GetValueByName("上级ID") == row.GetValueByName("ID")) { json += "{ 'text': '" + r.GetValueByName("报表名称") + "','url':'" + r.GetValueByName("报表地址") + "','file':'" + r.GetValueByName("文件名称") + "'},"; } } json += "],"; } } json += "}]"; return json; } /// /// 技术中心问题统计 /// /// /// public string GetSupportStatistics(MonitoringModel model) { var total = 0; DataTable dt = ReportService.GetSupportStatistics(model, out total); var ReportObject = new { total = total, rows = dt, }; return Strings.ObjectToJson(ReportObject); } /// /// 研发问题统计 /// /// /// public string GetDevelopStatistics(MonitoringModel model) { var total = 0; DataTable dt = ReportService.GetDevelopStatistics(model, out total); var ReportObject = new { total = total, rows = dt, }; return Strings.ObjectToJson(ReportObject); } /// /// 超时处理(30分钟) /// /// /// public string TimeoutStatistics(MonitoringModel model) { var total = 0; DataTable dt = ReportService.TimeoutStatistics(model, out total); var footer = new List(); footer.Add(new AfterSaleFooter { 编号 = "合计", 问题标题 = total }); var ReportObject = new { footer = footer, total = total, rows = dt }; return Strings.ObjectToJson(ReportObject); } /// /// 贵阳售后统计问题积分 /// /// /// public string GuiyangProblems(AfterSaleModel model) { var total = 0; var dt = ReportService.GuiyangProblems(model, out total); float TotalScore = 0; if (dt != null && dt.Rows.Count > 0) { foreach (DataRow row in dt.Rows) { var core1 = row.GetValueByName("陈勇"); var core2 = row.GetValueByName("池显"); var core3 = row.GetValueByName("兰忠胜"); var core4 = row.GetValueByName("陈运良"); row["问题分值"]= (core1 + core2 + core3 + core4); TotalScore += (core1+ core2+ core3+ core4); } } var footer = new List(); footer.Add(new AfterSaleFooter { 名称 = "合计", 问题分值 = TotalScore }); var ReportObject = new { total = total, rows = dt, footer = footer }; return Strings.ObjectToJson(ReportObject); } /// /// 获取渠道脱保数 /// /// /// public string GeMaintenanceInquiry(MaintenanceModel model) { var total = 0; var dt = ReportService.GeMaintenanceInquiry(model, out total); float TotalScore = 0; var ReportObject = new { total = total, rows = dt }; return Strings.ObjectToJson(ReportObject); } } }