public string GetScoreHtmlS(SpecialReportReport lr) { string ConvertScoreHtml = ""; ConvertScoreHtml = MgrServices.DistributeRecordService.GetScoreHtmlS(lr); return(ConvertScoreHtml); }
public void GetToWordS(List <UserExportInfo> lu, out string fileName, out string path, out StringBuilder builder, out FileInfo file, out StreamWriter sw) { //AnswerID = "110"; string StrJson = ""; string Scorehtml = ""; string ConvertScoreHtml = ""; DataSet dataset = new DataSet(); for (int i = 0; i < lu.Count; i++) { DataSet datasetTemp = MgrServices.PersonalReportService.ReportExport(lu[i].AnswerID.ToString()); dataset.Merge(datasetTemp, true, MissingSchemaAction.AddWithKey); } DataTable dt = new DataTable(); DataTable UserInfodt = new DataTable(); if (dataset.Tables.Count > 0) { dt = dataset.Tables[0]; UserInfodt = dataset.Tables[1]; } List <SpecialReportReport> lr = new List <SpecialReportReport>(); DateTime RCreatetime = DateTime.Now; if (dt.Rows.Count > 0) { for (int j = 0; j < dt.Rows.Count; j++) { SpecialReportReport ReportObj = new SpecialReportReport(); StrJson = dt.Rows[j]["ReportJson"].ToString(); if (StrJson != null && StrJson != "") { ReportObj = JsonDeserialize <SpecialReportReport>(StrJson); lr.Add(ReportObj); } RCreatetime = DateTime.Parse(dt.Rows[j]["R_CreateDate"].ToString()); } } builder = new StringBuilder(); //存储路径 rtManager.Items[0].FindControl("check_Item") fileName = DateTime.Now.ToString("yyyyMMddhhmmss") + new Random(DateTime.Now.Second).Next(10000); path = Server.MapPath("~/xls_down/" + fileName + ".xls"); file = new FileInfo(path); //创建字符输出流 sw = new StreamWriter(path, true, System.Text.UnicodeEncoding.UTF8); //需要导出的内容 builder.Append("<html><head></head><body><table border=\"1\" cellpadding=\"0\" cellspacing=\"0\" width='98%' >"); //获取的量表维度 if (lr != null && lr[0].DimensionEntitys != null) { if (lr[0].DimensionEntitys != null) { builder.Append("<tr><td colspan=\"" + (lr[0].DimensionEntitys.Count * 2 + 6) + "\" align=\"center\">" + lr[0].DimensionEntitys[0].AName + "的报告详细</td></tr>"); } else { builder.Append("<tr><td colspan=\"" + (0 * 2 + 6) + "\" align=\"center\">" + lr[0].DimensionEntitys[0].AName + "的报告详细</td></tr>"); } string Acode = lr[0].DimensionEntitys[0].Acodes; //生成表格标题栏 --获取所有该量表的所有维度名称 builder.Append("<tr><td align=\"center\" rowspan=\"2\">用户名</td><td align=\"center\" rowspan=\"2\">真实姓名</td><td align=\"center\" rowspan=\"2\">性别</td><td align=\"center\" rowspan=\"2\">年龄</td><td align=\"center\" rowspan=\"2\">部门</td>"); if (lr[0].DimensionEntitys != null) { builder.Append("<td align=\"center\" colspan=\"2\">总评</td>");//"/" + dt_d.Rows[i]["D_Code"] + builder.Append("</tr>"); builder.Append("<tr>"); for (int k = 0; k < 1; k++) { builder.Append("<td align=\"center\">原始分</td><td align=\"center\">标准分</td>");//"/" + dt_d.Rows[i]["D_Code"] + } builder.Append("</tr>"); if (UserInfodt.Rows.Count > 0) { for (int k = 0; k < UserInfodt.Rows.Count; k++) { int Ages = 0; string Birthday = UserInfodt.Rows[k]["U_Birthday"].ToString(); if (Birthday != null && Birthday != "") { DateTime U_Birthday = DateTime.Parse(UserInfodt.Rows[k]["U_Birthday"].ToString()); Ages = CalculateAgeCorrect(U_Birthday, RCreatetime); } else { Ages = 0; } builder.Append("<tr><td align=\"center\" >" + UserInfodt.Rows[k]["U_LoginName"] + "</td><td align=\"center\">" + UserInfodt.Rows[k]["U_Name"] + "</td><td align=\"center\">" + UserInfodt.Rows[k]["U_Sex"] + "</td><td align=\"center\">" + Ages + "</td><td align=\"center\">" + UserInfodt.Rows[k]["D_name"] + "</td>" + Scorehtml + ""); builder.Append(GetScoreHtmlS(lr[k])); builder.Append("</tr>"); } } } } builder.Append("</table></body></html>"); }
public void GetToWord(List <UserExportInfo> lu, out string fileName, out string path, out StringBuilder builder, out FileInfo file, out StreamWriter sw, int lenght) { //AnswerID = "110"; string StrJson = ""; string Scorehtml = ""; string ConvertScoreHtml = ""; int AnswerID = 0; string AName = ""; DataSet dataset = new DataSet(); for (int i = 0; i < lu.Count; i++) { DataSet datasetTemp = MgrServices.PersonalReportService.ReportExport(lu[i].AnswerID.ToString()); AName = lu[i].AmountName; dataset.Merge(datasetTemp, true, MissingSchemaAction.AddWithKey); } DataTable dt = new DataTable(); DataTable UserInfodt = new DataTable(); if (dataset.Tables.Count > 0) { dt = dataset.Tables[0]; UserInfodt = dataset.Tables[1]; } List <SpecialReportReport> lr = new List <SpecialReportReport>(); DateTime RCreatetime = DateTime.Now; #region 非空 if (dt.Rows.Count != 0) { if (dt.Rows.Count > 0) { for (int j = 0; j < dt.Rows.Count; j++) { SpecialReportReport ReportObj = new SpecialReportReport(); StrJson = dt.Rows[j]["ReportJson"].ToString(); AnswerID = Convert.ToInt32(dt.Rows[j]["AnsweID"].ToString()); if (StrJson != null && StrJson != "") { ReportObj = JsonDeserialize <SpecialReportReport>(StrJson); if (ReportObj.DimensionEntitys != null) { lr.Add(ReportObj); } else { AnswerAddEntity AEntity = MgrServices.DistributeRecordService.GetAnswerAddEntity(AnswerID); string strjosn = ""; string Acodes = AEntity._amount_code; string AnswerJson = AEntity._answeradd_record; string Record = AnswerJson; int Scores = AEntity._answeradd_score; UpdateReportInsert(Acodes, AnswerJson, Record, AName, Scores, out strjosn); ReportObj = JsonDeserialize <SpecialReportReport>(strjosn); lr.Add(ReportObj);//修改 } } else { AnswerAddEntity AEntity = MgrServices.DistributeRecordService.GetAnswerAddEntity(AnswerID); string strjosn = ""; string Acodes = AEntity._amount_code; string AnswerJson = AEntity._answeradd_record; string Record = AnswerJson; int Scores = AEntity._answeradd_score; UpdateReportInsert(Acodes, AnswerJson, Record, AName, Scores, out strjosn); ReportObj = JsonDeserialize <SpecialReportReport>(strjosn); lr.Add(ReportObj);//修改 } RCreatetime = DateTime.Parse(dt.Rows[j]["R_CreateDate"].ToString()); } } builder = new StringBuilder(); //存储路径 rtManager.Items[0].FindControl("check_Item") // fileName = DateTime.Now.ToString("yyyyMMddhhmmss") + new Random(DateTime.Now.Second).Next(10000); fileName = DateTime.Now.ToString("yyyyMMddhhmmss") + "_" + lenght.ToString(); path = Server.MapPath("~/xls_down/" + fileName + ".xls"); file = new FileInfo(path); //创建字符输出流 sw = new StreamWriter(path, true, System.Text.UnicodeEncoding.UTF8); //需要导出的内容 builder.Append("<html><head></head><body><table border=\"1\" cellpadding=\"0\" cellspacing=\"0\" width='98%' >"); //获取的量表维度 if (lr[0].DimensionEntitys.Count > 0) { builder.Append("<tr><td colspan=\"" + (lr[0].DimensionEntitys.Count * 2 + 6) + "\" align=\"center\">" + lr[0].DimensionEntitys[0].AName + "的报告详细</td></tr>"); } else { builder.Append("<tr><td colspan=\"" + (0 * 2 + 6) + "\" align=\"center\">" + lr[0].DimensionEntitys[0].AName + "的报告详细</td></tr>"); } string Acode = lr[0].DimensionEntitys[0].Acodes; //生成表格标题栏 --获取所有该量表的所有维度名称 builder.Append("<tr><td align=\"center\" rowspan=\"2\">用户名</td><td align=\"center\" rowspan=\"2\">真实姓名</td><td align=\"center\" rowspan=\"2\">性别</td><td align=\"center\" rowspan=\"2\">年龄</td><td align=\"center\" rowspan=\"2\">部门</td>"); if (lr[0].DimensionEntitys != null) { if (Acode == "LB_14808297050440") { lr[0].DimensionEntitys.Add(lr[0].DimensionEntitys[0]); lr[0].DimensionEntitys.RemoveAt(0); } if (Acode == "LB_14809330635970") { builder.Append("<td align=\"center\" colspan=\"2\">总评</td>");//"/" + dt_d.Rows[i]["D_Code"] + } else { for (int i = 0; i < lr[0].DimensionEntitys.Count; i++) { builder.Append("<td align=\"center\" colspan=\"2\">" + lr[0].DimensionEntitys[i].WD_Name + "</td>");//"/" + dt_d.Rows[i]["D_Code"] + } } builder.Append("</tr>"); builder.Append("<tr>"); if (Acode == "LB_14809330635970") { builder.Append("<td align=\"center\">原始分</td><td align=\"center\">标准分</td>");//"/" + dt_d.Rows[i]["D_Code"] + } else { for (int k = 0; k < lr[0].DimensionEntitys.Count; k++) { builder.Append("<td align=\"center\">原始分</td><td align=\"center\">标准分</td>");//"/" + dt_d.Rows[i]["D_Code"] + } } builder.Append("</tr>"); if (UserInfodt.Rows.Count > 0) { for (int k = 0; k < UserInfodt.Rows.Count; k++) { int Ages = 0; string Birthday = UserInfodt.Rows[k]["U_Birthday"].ToString(); if (Birthday != null && Birthday != "") { DateTime U_Birthday = DateTime.Parse(UserInfodt.Rows[k]["U_Birthday"].ToString()); Ages = CalculateAgeCorrect(U_Birthday, RCreatetime); } else { Ages = 0; } if (Acode == "LB_14808297050440") { if (k > 0) { lr[k].DimensionEntitys.Add(lr[k].DimensionEntitys[0]); lr[k].DimensionEntitys.RemoveAt(0); } } builder.Append("<tr><td align=\"center\" >" + UserInfodt.Rows[k]["U_LoginName"] + "</td><td align=\"center\">" + UserInfodt.Rows[k]["U_Name"] + "</td><td align=\"center\">" + UserInfodt.Rows[k]["U_Sex"] + "</td><td align=\"center\">" + Ages + "</td><td align=\"center\">" + UserInfodt.Rows[k]["D_name"] + "</td>" + Scorehtml + ""); builder.Append(GetScoreHtml(lr[k])); builder.Append("</tr>"); } } } builder.Append("</table></body></html>"); } else { builder = new StringBuilder(); fileName = DateTime.Now.ToString("yyyyMMddhhmmss") + "_" + lenght.ToString(); path = Server.MapPath("~/xls_down/" + fileName + ".xls"); file = new FileInfo(path); //创建字符输出流 sw = new StreamWriter(path, true, System.Text.UnicodeEncoding.UTF8); //需要导出的内容 builder.Append("<html><head></head><body><table border=\"1\" cellpadding=\"0\" cellspacing=\"0\" width='98%' >"); builder.Append("<tr><td>暂无数据</td></tr>"); builder.Append("</table></body></html>"); } #endregion }