tijian_tieying/web/dccdc/showreport/hzbg.aspx.cs

187 lines
9.0 KiB
C#
Raw Normal View History

2025-02-20 12:14:39 +08:00
using Microsoft.Reporting.WebForms;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data;
using dccdc.BLL;
namespace dccdc.showreport
{
public partial class hzbg : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
try
{
if (!IsPostBack)
{
string report_num = Request.QueryString["report_num"];
var bll = new occupation_reportBll();
hzbgview.LocalReport.ReportPath = Server.MapPath("~/report/hzbg.rdlc"); //绑定报表数据源
DataTable dt1 = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(Newtonsoft.Json.JsonConvert.SerializeObject(bll.getReportByNum(report_num)));
DataTable dt2 = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(Newtonsoft.Json.JsonConvert.SerializeObject(bll.getDw(dt1.Rows[0]["subject_company"].ToString())));
string jsonData2 = Newtonsoft.Json.JsonConvert.SerializeObject(bll.getRegisterById(dt1.Rows[0]["person_ids"].ToString().Trim(',')));
DataTable registerDt = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(jsonData2);
DataView dvWjyc = registerDt.DefaultView;
dvWjyc.RowFilter = "main_review like '%未见%'";
DataTable dtWjyc = dvWjyc.ToTable();//未见明显异常数据
DataView dvFc = registerDt.DefaultView;
dvFc.RowFilter = "main_review like '%复查%' and physical_num_old is null";
DataTable dtFc = dvFc.ToTable(); //复检数据
DataView dvwFc = registerDt.DefaultView;
dvwFc.RowFilter = "physical_num is null and physical_num_old is not null";
DataTable dtwFc = dvwFc.ToTable(); //复检数据
foreach (DataRow dr in dtwFc.Rows)
dr["main_result"] = "";
DataView dvYc = registerDt.DefaultView;
dvYc.RowFilter = "main_review not like '%未见%' and main_review not like '%复查%' and main_review not like '%疑似职业病%' and main_review not like '%职业禁忌证%'";
DataTable dtYc = dvYc.ToTable(); //异常数据
DataView dvYszyb = registerDt.DefaultView;
dvYszyb.RowFilter = "main_review like '%疑似职业病%'";
DataTable dtYszyb = dvYszyb.ToTable();//职业病数据
DataView dvZyjjz = registerDt.DefaultView;
dvZyjjz.RowFilter = "main_review like '%职业禁忌证%'";
DataTable dtZyjjz = dvZyjjz.ToTable(); //职业禁忌证
string jsonData4 = Newtonsoft.Json.JsonConvert.SerializeObject(bll.getHazards(dt1.Rows[0]["person_ids"].ToString().Trim(',')));// wc.DownloadString( _url + "Summary/getHazards?ids=" + hzbgDt.Rows[0]["person_ids"].ToString());
DataTable hazardsDt = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(jsonData4);
if (hazardsDt.Rows.Count != 0)
{
//职业病危害因素
//re.SetParameterValue("hazards", hazardsDt.Rows[0]["Hazards"].ToString());
hzbgview.LocalReport.SetParameters(new ReportParameter("hazards", hazardsDt.Rows[0]["Hazards"].ToString()));
}
else
{
hzbgview.LocalReport.SetParameters(new ReportParameter("hazards", ""));
}
string jsonData7 = bll.getJcxm(hazardsDt.Rows[0]["Hazards"].ToString(), dt1.Rows[0]["status"].ToString());
//re.SetParameterValue("jcxm", jsonData7);
hzbgview.LocalReport.SetParameters(new ReportParameter("jcxm", jsonData7));
DataTable ckz = new DataTable();
ckz.Columns.Add("mc");
ckz.Columns.Add("fh");
ckz.Columns.Add("ckz");
DataRow ckz1 = ckz.NewRow();
ckz1["mc"] = "白细胞";
ckz1["fh"] = "WBC";
ckz1["ckz"] = "4.0-10×10^9/L";
ckz.Rows.Add(ckz1);
DataRow ckz2 = ckz.NewRow();
ckz2["mc"] = "血红蛋白";
ckz2["fh"] = "HG或HGB";
ckz2["ckz"] = "成年男性:120~160g/L\r\n成年女性:110~150g / L";
ckz.Rows.Add(ckz2);
DataRow ckz3 = ckz.NewRow();
ckz3["mc"] = "血小板";
ckz3["fh"] = "PLT";
ckz3["ckz"] = "100-300×10^9/L";
ckz.Rows.Add(ckz3);
DataRow ckz4 = ckz.NewRow();
ckz4["mc"] = "葡萄糖";
ckz4["fh"] = "GLU";
ckz4["ckz"] = "3.89-6.11mmol/L";
ckz.Rows.Add(ckz4);
DataRow ckz5 = ckz.NewRow();
ckz5["mc"] = "总胆固醇";
ckz5["fh"] = "CHOL";
ckz5["ckz"] = "3.1-5.7mmol/L";
ckz.Rows.Add(ckz5);
DataRow ckz6 = ckz.NewRow();
ckz6["mc"] = "甘油三酯";
ckz6["fh"] = "TG";
ckz6["ckz"] = "0.56-1.71mmol/L";
ckz.Rows.Add(ckz6);
DataRow ckz7 = ckz.NewRow();
ckz7["mc"] = "高密度脂蛋白";
ckz7["fh"] = "";
ckz7["ckz"] = "";
ckz.Rows.Add(ckz7);
DataRow ckz8 = ckz.NewRow();
ckz8["mc"] = "丙氨酸转氨酶";
ckz8["fh"] = "ALT";
ckz8["ckz"] = "0-40U/L";
ckz.Rows.Add(ckz8);
DataRow ckz9 = ckz.NewRow();
ckz9["mc"] = "谷氨酰转移酶";
ckz9["fh"] = "GGT";
ckz9["ckz"] = "0-50 U/L";
ckz.Rows.Add(ckz9);
DataRow ckz10 = ckz.NewRow();
ckz10["mc"] = "总蛋白";
ckz10["fh"] = "TP";
ckz10["ckz"] = "60-80g/L";
ckz.Rows.Add(ckz10);
DataRow ckz11 = ckz.NewRow();
ckz11["mc"] = "总胆红素";
ckz11["fh"] = "TBIL";
ckz11["ckz"] = "3.42~20μmol/L";
ckz.Rows.Add(ckz11);
DataRow ckz12 = ckz.NewRow();
ckz12["mc"] = "血压";
ckz12["fh"] = "BP";
ckz12["ckz"] = "收缩压90-140mmHg\r\n舒张压60 - 90 mmHg";
ckz.Rows.Add(ckz12);
string jsonData6 = bll.getZyjkjc(hazardsDt.Rows[0]["Hazards"].ToString(), dt1.Rows[0]["status"].ToString());
//获取检查项目
//re.SetParameterValue("jkjcmd", jsonData6);
hzbgview.LocalReport.SetParameters(new ReportParameter("jkjcmd", jsonData6));
ReportDataSource Table1 = new ReportDataSource("Table1", dt1);
ReportDataSource Table2 = new ReportDataSource("Table2", dt2);
ReportDataSource fc = new ReportDataSource("fc", dtFc);
ReportDataSource yc = new ReportDataSource("yc", dtYc);
ReportDataSource wjyc = new ReportDataSource("wjyc", dtWjyc);
ReportDataSource yszyb = new ReportDataSource("yszyb", dtYszyb);
ReportDataSource zyjjz = new ReportDataSource("zyjjz", dtZyjjz);
ReportDataSource ckzdt = new ReportDataSource("ckz", ckz);
ReportDataSource rwfcdt = new ReportDataSource("w", dtwFc);
hzbgview.LocalReport.DataSources.Clear();
hzbgview.LocalReport.DataSources.Add(Table1);
hzbgview.LocalReport.DataSources.Add(Table2);
hzbgview.LocalReport.DataSources.Add(fc);
hzbgview.LocalReport.DataSources.Add(yc);
hzbgview.LocalReport.DataSources.Add(wjyc);
hzbgview.LocalReport.DataSources.Add(yszyb);
hzbgview.LocalReport.DataSources.Add(zyjjz);
hzbgview.LocalReport.DataSources.Add(ckzdt);
hzbgview.LocalReport.DataSources.Add(rwfcdt);
hzbgview.LocalReport.SetParameters(new ReportParameter("perCount", registerDt.Select("physical_num_old is null").Length.ToString()));
//hzbgview.LocalReport.SetParameters(new ReportParameter("jcxm", "体检项目"));
hzbgview.LocalReport.Refresh();
}
}
catch (Exception e1)
{
throw e1;
}
}
}
}