Upload to server

uploading
This commit is contained in:
2025-08-02 05:20:17 +07:00
commit a5eccbd452
984 changed files with 3031800 additions and 0 deletions

View File

@@ -0,0 +1,98 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Datalib.DatabaseSpecific;
using System.Windows.Forms;
using Datalib.Linq;
using Datalib.EntityClasses;
using Datalib.FactoryClasses;
using Datalib.HelperClasses;
using PatientMan.Classes;
namespace PatientMan.Classes
{
class clsC03Annual
{
public DevExpress.XtraSpreadsheet.SpreadsheetControl spreed;
public DateTime BeginDate;
public DateTime EndDate;
private DevExpress.Spreadsheet.Worksheet _Rep, _Tracking;
public DataAccessAdapter adapter = new DataAccessAdapter(SettingInfo.Constr);
public void Calculate()
{
_Rep = spreed.Document.Worksheets["Rep"];
_Tracking = spreed.Document.Worksheets["Tracking"];
R2(); R3();
}
private void R2()
{
var TreatmentInfo = new EntityCollection<TblTreatmentInfoEntity>();
LinqMetaData meta = new LinqMetaData(adapter);
#region index 1
//Chỉ số 3 - Số bệnh nhân bắt đầu điều trị Lao trong kỳ báo cáo
//Lọc tất cả các bản ghi trong bảng tblTreatmentInfo có kiểu điều trị là Lao (02) và có ngày điều trị trong khoảng báo cáo, nhóm lại lấy bản ghi duy nhất
int index1 = 0;
string indexs1 = "";
var index1prevresult = (from tr in TreatmentInfo where (tr.TreatmentId == "02" && tr.TreatmentSdate >= BeginDate && tr.TreatmentSdate <= EndDate) group tr by tr.PatientId into g select g.First()).ToList();
var index1result = index1prevresult.Join(meta.TblPatient,
t => t.PatientId,
p => p.PatientId,
(t, p)
=> new { PatientId = p.PatientId, DateOfArv = p.DateofArv, sDate = t.TreatmentSdate }).Where(p => p.DateOfArv != null && p.DateOfArv <= p.sDate).ToList();
index1 = index1result.Count();
indexs1 = string.Join(",", index1result.Select(p => p.PatientId).ToArray());
#endregion
#region index 2
//Chỉ số 3 - Số bệnh nhân bắt đầu điều trị Lao trong kỳ báo cáo
//Lọc tất cả các bản ghi trong bảng tblTreatmentInfo có kiểu điều trị là Lao (02) và có ngày điều trị trong khoảng báo cáo, nhóm lại lấy bản ghi duy nhất
int index2 = 0;
string indexs2 = "";
var index2prevresult = (from tr in TreatmentInfo where (tr.TreatmentId == "02") group tr by tr.PatientId into g select g.First()).ToList();
var index2result = index2prevresult.Join(meta.TblPatient,
t => t.PatientId,
p => p.PatientId,
(t, p)
=> new { PatientId = p.PatientId, DateOfArv = p.DateofArv, sDate = t.TreatmentSdate }).Where(p => p.DateOfArv != null && p.DateOfArv > p.sDate).ToList();
index2 = index2result.Count();
indexs2 = string.Join(",", index1result.Select(p => p.PatientId).ToArray());
#endregion
#region filling
_Rep.Cells[5, 9].Value = index1; _Tracking.Cells[5, 9].Value = indexs1;
_Rep.Cells[6, 9].Value = index2; _Tracking.Cells[6, 9].Value = indexs2;
#endregion
}
private void R3()
{
var TestInfo = new EntityCollection<TblPreClinicsInfoEntity>();
LinqMetaData meta = new LinqMetaData(adapter);
#region index 1
//Chỉ số 1 Số bệnh nhân điều trị ARV được làm xét nghiệm tải lượng HIV để khẳng định thất bại điều trị
int index1 = 0;
string indexs1 = "";
int index1a = 0;
string indexs1a = "";
var index1prevresult = (from tr in TestInfo where (tr.Testid == "02" && tr.TestDate >= BeginDate && tr.TestDate <= EndDate) select tr).ToList();
var index1result = index1prevresult.Join(meta.TblPatient,
t => t.PatientId,
p => p.PatientId,
(t, p)
=> new { p.PatientId, p.DateofArv, t.TestDate, t.QualityResult,t.QuantityResult }).Where(p => p.DateofArv != null && p.DateofArv <= p.TestDate).ToList();
index1 = index1result.Count();
indexs1 = string.Join(",", index1result.Select(p => p.PatientId).ToArray());
index1a = index1result.Where(p => p.QuantityResult < 1000).Count();
indexs1a = string.Join(",", index1result.Where(p => p.QuantityResult < 1000).Select(p => p.PatientId).ToArray());
#endregion
#region index 2
#endregion
}
}
}