1、发送插入分检项目,2、总检添加结论新增空白项,3、金域检验结果提取

msfy
lsm 11 months ago
parent 2690104bb0
commit 38abbce450
  1. 10
      PEIS.sln
  2. 7
      PEIS/Model/Enrollment/EnrollmentOrgModel.cs
  3. 11
      PEIS/Model/Enrollment/EnrollmentPatientModel.cs
  4. 87
      PEIS/Model/Exam/PartModel.cs
  5. 2
      PEIS/View/Exam/PartForm.cs
  6. 6
      PEIS/View/Exam/TotalForm.cs

@ -9,6 +9,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "解决方案项", "解决
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Update", "Update\Update.csproj", "{8894C92C-210D-459C-B5CD-7A6D2AB4CBE5}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Scale", "Scale\Scale.csproj", "{F13021FD-372E-4D3C-8982-6FE5102AF45A}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@ -33,6 +35,14 @@ Global
{8894C92C-210D-459C-B5CD-7A6D2AB4CBE5}.Release|Any CPU.Build.0 = Release|Any CPU
{8894C92C-210D-459C-B5CD-7A6D2AB4CBE5}.Release|x86.ActiveCfg = Release|Any CPU
{8894C92C-210D-459C-B5CD-7A6D2AB4CBE5}.Release|x86.Build.0 = Release|Any CPU
{F13021FD-372E-4D3C-8982-6FE5102AF45A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F13021FD-372E-4D3C-8982-6FE5102AF45A}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F13021FD-372E-4D3C-8982-6FE5102AF45A}.Debug|x86.ActiveCfg = Debug|Any CPU
{F13021FD-372E-4D3C-8982-6FE5102AF45A}.Debug|x86.Build.0 = Debug|Any CPU
{F13021FD-372E-4D3C-8982-6FE5102AF45A}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F13021FD-372E-4D3C-8982-6FE5102AF45A}.Release|Any CPU.Build.0 = Release|Any CPU
{F13021FD-372E-4D3C-8982-6FE5102AF45A}.Release|x86.ActiveCfg = Release|Any CPU
{F13021FD-372E-4D3C-8982-6FE5102AF45A}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

@ -52,6 +52,11 @@ namespace PEIS.Model.Enrollment
var enrollmentFeeItem = $@"UPDATE a SET a.IsSend = 1 FROM Enrollment_FeeItem a LEFT JOIN Enrollment_CheckCost b ON a.OrderNO = b.ID AND a.EID = b.EID WHERE b.SendTime IS NOT NULL AND a.EID = {eID};";
// 插入分科检查
var dept = $@"EXEC sp_InsertNormalFeeItem {eID}";
// 心电图
var heart = $@"UPDATE Enrollment_FeeItem SET DeptCode = '01064',DeptName = '心电图室' WHERE EID = {eID} AND FID IN (31,123)";
// 插入分检步骤
var part = $@"EXEC sp_SyncExamPart {eID}";
@ -61,6 +66,8 @@ namespace PEIS.Model.Enrollment
var eResult = DAOHelp.ExecuteSql(enrollmentPatient, false);
var fResult = DAOHelp.ExecuteSql(enrollmentFeeItem, false);
var dResult = DAOHelp.ExecuteSql(dept);
var hResult = DAOHelp.ExecuteSql(heart);
var pResult = DAOHelp.ExecuteSql(part);

@ -112,13 +112,22 @@ namespace PEIS.Model.Enrollment
var enrollmentPatient = $@"UPDATE Enrollment_Patient SET ExamDate = GETDATE(), SignTime = GETDATE(), SignerCode = '{Global.currentUser.Code}', Signer = '{Global.currentUser.Name}' WHERE ID = {EId} AND SignTime is null";
var enrollmentFeeItem = $@"UPDATE a SET a.IsSend = 1 FROM Enrollment_FeeItem a LEFT JOIN Enrollment_CheckCost b ON a.OrderNO = b.ID AND a.EID = b.EID WHERE b.SendTime IS NOT NULL AND a.EID = {EId}; ";
// 插入分科检查
var dept = $@"EXEC sp_InsertNormalFeeItem {EId}";
// 心电图
var heart = $@"UPDATE Enrollment_FeeItem SET DeptCode = '01064',DeptName = '心电图室' WHERE EID = {EId} AND FID IN (31,123)";
// 插入分检步骤
var part = $@"EXEC sp_SyncExamPart {EId}";
var cResult = DAOHelp.ExecuteSql(checkCost, false);
var eResult = DAOHelp.ExecuteSql(enrollmentPatient, false);
var fResult = DAOHelp.ExecuteSql(enrollmentFeeItem, false);
var dResult = DAOHelp.ExecuteSql(dept);
var hResult = DAOHelp.ExecuteSql(heart);
var pResult = DAOHelp.ExecuteSql(part);

@ -172,28 +172,67 @@ namespace PEIS.Model
var summary = "";
var results = DAOHelp.GetDataBySQL<ExamResult>($@"
SELECT DISTINCT B.FeeItemName, B.RptItemName, B.TextResult, B.Unit, B.UnusualFlag , C.Seq as SeqReport
FROM
Exam_Part A
LEFT JOIN Exam_Result B ON B.PID = A.ID
LEFT JOIN Dict_ReportItem C ON C.ID = B.RID
WHERE
A.EID = {eid} AND A.DeptCode = '{deptCode}'
AND (
C.IsAddSummary = 1
OR B.UnusualFlag <> ''
OR (B.Range LIKE '%%' AND B.TextResult LIKE '%+%')
OR (B.ItemClass='' AND B.TextResult LIKE '%%')
)
UNION ALL
SELECT DISTINCT A.FeeItemName, B.Title AS RptItemName, B.summary AS TextResult, Unit = '', UnusualFlag = '',0 as SeqReport
FROM
Enrollment_FeeItem A
LEFT JOIN Report B ON A.ID = B.ReportNo AND A.eid = B.eid
WHERE
A.ItemClass = '' AND B.summary <> '' AND A.EID = {eid} AND A.DeptCode = '{deptCode}'").OrderBy(o=>o.SeqReport).ToList();
var resultStr = "";
// 判断是否为检验科
if (deptCode == "3001")
{
resultStr = $@"SELECT
DISTINCT
C.FeeItemName,
A.rpt_itemname AS RptItemName,
A.result_str AS TextResult,
A.result_unit AS Unit,
CASE
WHEN A.result_flag = 'H' THEN '↑'
WHEN A.result_flag = 'M' THEN NULL
WHEN A.result_flag = 'N' THEN NULL
WHEN A.result_flag = 'L' THEN '↓'
ELSE A.result_flag
END AS UnusualFlag,
A.rptcode AS RptItemCode,
A.print_seq AS SeqReport
FROM
lis.rmcloudlis7.dbo.vw_checked_labresult A
LEFT JOIN Dict_ReportItem B ON (A.rpt_itemcode = B.RptItemCode OR A.rptcode = B.RptItemCode)
LEFT JOIN Enrollment_FeeItem C ON B.FID = C.FID AND CONVERT(INT,pat_no) = c.EID
WHERE
pat_no = '{eid}' and pat_typecode=4
AND rpt_itemcode NOT IN (SELECT Code FROM Dict_Config WHERE [Key]='IgnoreRptItem')
AND (
B.IsAddSummary = 1
OR ( A.result_flag = 'H' OR A.result_flag = 'L')
OR ( A.result_ref LIKE '%%' AND A.result_str LIKE '%+%' )
OR ( A.result_str LIKE '%%' ) )
AND C.FID IS NOT NULL
ORDER BY print_seq";
}
else
{
resultStr = $@" SELECT DISTINCT B.FeeItemName, B.RptItemName, B.TextResult, B.Unit, B.UnusualFlag , C.Seq as SeqReport
FROM
Exam_Part A
LEFT JOIN Exam_Result B ON B.PID = A.ID
LEFT JOIN Dict_ReportItem C ON C.ID = B.RID
WHERE
A.EID = {eid} AND A.DeptCode = '{deptCode}'
AND (
C.IsAddSummary = 1
OR B.UnusualFlag <> ''
OR (B.Range LIKE '%%' AND B.TextResult LIKE '%+%')
OR (B.ItemClass='' AND B.TextResult LIKE '%%')
)
UNION ALL
SELECT DISTINCT A.FeeItemName, B.Title AS RptItemName, B.summary AS TextResult, Unit = '', UnusualFlag = '',0 as SeqReport
FROM
Enrollment_FeeItem A
LEFT JOIN Report B ON A.ID = B.ReportNo AND A.eid = B.eid
WHERE
A.ItemClass = '' AND B.summary <> '' AND A.EID = {eid} AND A.DeptCode = '{deptCode}'";
}
var results = DAOHelp.GetDataBySQL<ExamResult>(resultStr).OrderBy(o => o.SeqReport).ToList();
// 检验检查心电科室Code
var deptCodeList = new List<string>()
{
@ -500,12 +539,12 @@ LEFT JOIN Dict_FeeItem FeeItem ON A.FID= FeeItem.ID
var giveUp = GiveUpExamResult(eid, deptCode);
var general = GeneralExamResult(eid, deptCode);
var lis = deptCode== "3001" ? LisExamResult(eid, deptCode):new List<ExamResult>();
//var jyLis = GetJyLisResult(eid, deptCode);
var jyLis = GetJyLisResult(eid, deptCode);
var pacs = PacsExamResult(eid, deptCode) ;
var data = giveUp.Union(general).ToList()
.Union(lis).ToList()
//.Union(jyLis).ToList()
.Union(jyLis).ToList()
.Union(pacs).ToList()
.Distinct().ToList();
// data.RemoveAll(p => p.FID == null);

@ -835,7 +835,7 @@ namespace PEIS.View.Exam
"3001", //检验科
"3002", //金域检验
"3201", //放射科
"3202", //超声科
"01064", //超声科
"3203", //心电科
};
if (deptCodeList.Contains(_currentDept.DeptCode) && _examPart.VerifyTime == null &&

@ -279,7 +279,11 @@ namespace PEIS.View.Exam
var list = string.IsNullOrEmpty(query)
? Global._lstConclusion
: Global._lstConclusion.Where(p => p.SpellCode.Contains(query) || p.ConclusionName.Contains(query) || (isId && p.ID == id)).ToList();
if(list.Where( w=> w.ID ==0 ).Count() == 0)
{
list.Insert(0, new Conclusion() { SpellCode = "", ConclusionName = "" });
}
Invoke(new Action(() => DgcAllConclusion.DataSource = null));
Invoke(new Action(() => DgcAllConclusion.DataSource = list));
}

Loading…
Cancel
Save