+自动更新程序后端,+体检相关文档

main
HI 1 year ago
parent 81d9dc697c
commit 0208dea2c8
  1. 3435
      PEIS.Api/PEIS.Api.deps.json
  2. BIN
      PEIS.Api/PEIS.Api.dll
  3. BIN
      PEIS.Api/PEIS.Api.exe
  4. 14
      PEIS.Api/PEIS.Api.runtimeconfig.json
  5. 15
      PEIS.Api/PEIS.Api.xml
  6. 11
      PEIS.Api/appsettings.json
  7. 12
      PEIS.Api/web.config
  8. BIN
      体检相关文档/Commix1.3.exe
  9. 8
      体检相关文档/Navicat常用临时查询语句/001心电图收费项目修改.sql
  10. 8
      体检相关文档/Navicat常用临时查询语句/002老系统体检套餐项目导出.sql
  11. 11
      体检相关文档/Navicat常用临时查询语句/003插入老系统体检结论.sql
  12. 7
      体检相关文档/Navicat常用临时查询语句/004修改体检者 年龄 生日.sql
  13. 20
      体检相关文档/Navicat常用临时查询语句/005PACS报告的ReportNo同步.sql
  14. 18
      体检相关文档/Navicat常用临时查询语句/Dict_Pack.sql
  15. 13
      体检相关文档/Navicat常用临时查询语句/Dict_PackToFeeItem.sql
  16. 15
      体检相关文档/Navicat常用临时查询语句/ECG-Report.sql
  17. 23
      体检相关文档/Navicat常用临时查询语句/ECG.sql
  18. 18
      体检相关文档/Navicat常用临时查询语句/Exam_Conclusion.sql
  19. 15
      体检相关文档/Navicat常用临时查询语句/Exam_Result.sql
  20. 61
      体检相关文档/Navicat常用临时查询语句/InsertInto_DictReportItem.sql
  21. 30
      体检相关文档/Navicat常用临时查询语句/InsertInto_DictSign.sql
  22. 20
      体检相关文档/Navicat常用临时查询语句/InsertInto_FeeItem.sql
  23. 44
      体检相关文档/Navicat常用临时查询语句/OldID问题处理.sql
  24. 39
      体检相关文档/Navicat常用临时查询语句/PACS导入报告.sql
  25. 64
      体检相关文档/Navicat常用临时查询语句/examresult.sql
  26. 25
      体检相关文档/Navicat常用临时查询语句/iNSERTiNO_Dict_Conclusion.sql
  27. 64
      体检相关文档/Navicat常用临时查询语句/pacs 图片下载.sql
  28. 33
      体检相关文档/Navicat常用临时查询语句/pacs报告同步-图片同步.sql
  29. 8
      体检相关文档/Navicat常用临时查询语句/pacs报告查询-临时.sql
  30. 20
      体检相关文档/Navicat常用临时查询语句/乙肝.sql
  31. 2
      体检相关文档/Navicat常用临时查询语句/导出.sql
  32. 29
      体检相关文档/Navicat常用临时查询语句/当日体检人数统计.sql
  33. 20
      体检相关文档/Navicat常用临时查询语句/普通收费项目添加默认检查项目.sql
  34. 32
      体检相关文档/Navicat常用临时查询语句/普通项目结果被覆盖的更新.sql
  35. 4
      体检相关文档/Navicat常用临时查询语句/更新exam_part科室.sql
  36. 23
      体检相关文档/Navicat常用临时查询语句/检查结果被覆盖数据重新导入.sql
  37. 35
      体检相关文档/Navicat常用临时查询语句/检验结果被覆盖数据重新导入.sql
  38. 29
      体检相关文档/Navicat常用临时查询语句/瑞美LIS报告项目导入.sql
  39. 31
      体检相关文档/Navicat常用临时查询语句/科室分检结果RID修改.sql
  40. 14
      体检相关文档/Navicat常用临时查询语句/老体检重复的收费项目数据.sql
  41. 29
      体检相关文档/Navicat常用临时查询语句/腰臀比.sql
  42. BIN
      体检相关文档/OHC次期健太郎数据上传对应SDK介绍.pptx
  43. 156
      体检相关文档/SK-CK串口通讯协议.doc
  44. 818
      体检相关文档/TMT红外热像仪接口文档(基础版) V2.1.pdf
  45. 1
      体检相关文档/串口通讯测试V1.0.1.pdf
  46. BIN
      体检相关文档/德宏州中医医院体检人员信息收集样表(2).xlsx
  47. 49
      体检相关文档/数据库/0.HIS链接服务器配置-需要修改IP.txt
  48. 49
      体检相关文档/数据库/0.PACS链接服务器配置.txt
  49. 47
      体检相关文档/数据库/0.瑞美LIS链接服务器配置.txt
  50. 36
      体检相关文档/数据库/1.用户自定义类型.txt
  51. 111
      体检相关文档/数据库/1.科室分检-结果.sql
  52. 15
      体检相关文档/数据库/2.授权.txt
  53. 180
      体检相关文档/数据库/2.收费项目-报告项目-体检套餐.sql
  54. 4461
      体检相关文档/数据库/HIS表/ApplicationCheckCode.sql
  55. 310
      体检相关文档/数据库/HIS表/ApplicationSheet.sql
  56. 151
      体检相关文档/数据库/HIS表/KSCODE.sql
  57. 1075
      体检相关文档/数据库/HIS表/YSCODE.sql
  58. 1095
      体检相关文档/数据库/HIS表/YSRoleNew.sql
  59. 38
      体检相关文档/数据库/sp_GetJyLisResult.sql
  60. 23
      体检相关文档/数据库/sp_GetLisResult - 默认空数据.sql
  61. 44
      体检相关文档/数据库/sp_GetLisResult.sql
  62. 34
      体检相关文档/数据库/sp_GetPacsResult.sql
  63. 27
      体检相关文档/数据库/体检数据库配置.sql
  64. 22
      体检相关文档/数据库/体检数据迁移sql/Dict_Conclusion.sql
  65. 42
      体检相关文档/数据库/体检数据迁移sql/Dict_FeeItem.sql
  66. 19
      体检相关文档/数据库/体检数据迁移sql/Dict_Pack.sql
  67. 13
      体检相关文档/数据库/体检数据迁移sql/Dict_PackToFeeItem.sql
  68. 58
      体检相关文档/数据库/体检数据迁移sql/Dict_ReportItem.sql
  69. 25
      体检相关文档/数据库/体检数据迁移sql/Dict_Sign.sql
  70. 18
      体检相关文档/数据库/体检数据迁移sql/EXAM_Conclusion.sql
  71. 23
      体检相关文档/数据库/体检数据迁移sql/EXAM_ECG.sql
  72. 53
      体检相关文档/数据库/体检数据迁移sql/SQLQuery4.sql
  73. 53
      体检相关文档/数据库/体检数据迁移sql/exam_result.sql
  74. 32
      体检相关文档/数据库/体检数据迁移sql/科室分检结果RID修改.sql
  75. 251
      体检相关文档/数据库/体检老系统数据迁移v01.sql
  76. 562
      体检相关文档/数据库/体检老系统数据迁移v02.sql
  77. 158
      体检相关文档/数据库/收费项目数据.sql
  78. 1
      体检相关文档/河南盛苑人体秤通讯协议V3.0(1).pdf
  79. 12
      体检相关文档/老系统截图.docx
  80. BIN
      体检相关文档/芒市妇幼-新健太郎数据收据成果物_20201022.zip
  81. 20
      体检相关文档/芒市妇幼体检系统反馈问题.docx

File diff suppressed because it is too large Load Diff

Binary file not shown.

Binary file not shown.

@ -0,0 +1,14 @@
{
"runtimeOptions": {
"tfm": "netcoreapp3.1",
"framework": {
"name": "Microsoft.AspNetCore.App",
"version": "3.1.0"
},
"configProperties": {
"System.GC.Server": true,
"System.Reflection.Metadata.MetadataUpdater.IsSupported": false,
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
}
}
}

@ -0,0 +1,15 @@
<?xml version="1.0"?>
<doc>
<assembly>
<name>PEIS.Api</name>
</assembly>
<members>
<member name="M:PEIS.Api.Controllers.VersionController.Download(System.String)">
<summary>
下载文件
</summary>
<param name="fileName"></param>
<returns></returns>
</member>
</members>
</doc>

@ -0,0 +1,11 @@
{
"urls": "http://192.168.11.5:5200",
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*"
}

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\PEIS.Api.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
</system.webServer>
</location>
</configuration>
<!--ProjectGuid: a0744005-d305-4df0-ab1c-f3a687a8d8fc-->

Binary file not shown.

@ -0,0 +1,8 @@
SELECT * FROM Enrollment_FeeItem WHERE EID>80000 AND FeeItemName LIKE '%心电%'
[ID], [OEID], [GroupID], [EID], [PackID], [PackName], [FID], [FeeItemCode], [FeeItemName], [Quantity], [Unit], [Price], [SettlePrice], [ItemClass], [CreateTime], [CreatorCode], [Creator], [OrderNo], [DeptCode], [DeptName], [Seq], [RefundNo], [GiveUpTime], [GiveUpUser], [GiveUpCode], [KeyNo], [OldId], [IsSend]) VALUES (1030080, NULL, NULL, 80003, NULL, NULL, 572, '310701001C', '十二通道心电图检查', 1, '', 25.00, .00, '普通', '2024-06-17 08:17:36.000', '0928', '赵菲', 84004, '0141', '健康管理中心/治未病', NULL, NULL, NULL, NULL, NULL, 'T94', NULL, '1');
SELECT * FROM vi_FeeItem WHERE ID=572
UPDATE [Enrollment_FeeItem] SET [KeyNo] = '87911192', [FeeItemCode] = '310701001C', [FeeItemName] = '十二通道心电图检查', [Price] = 25.00, [DeptCode] = '0141', [DeptName] = '健康管理中心/治未病', [Unit] = '', [ItemClass] = '普通' WHERE EID>80000 AND FeeItemName LIKE '%心电%'

@ -0,0 +1,8 @@
SELECT
a.id,a.Name, b.sortno,c.id as fid,c.name,c.HISCheckCode,c.HISCheckName,c.HISPrice ,c.CostPrice
FROM
PEIS.dbo.ExamPack a
left join PEIS. [dbo].[ExamPackFeeItem] b on a.id=b.ExamPackid
LEFT JOIN PEIS. [dbo].FEEITEM c ON b.FeeItemId=c.ID
order by a.id,b.sortno

@ -0,0 +1,11 @@
SELECT TOP 5 * FROM PEIS.DBO.Conclusion
SELECT TOP 5 * FROM Dict_Conclusion
INSERT INTO [Dict_Conclusion]( [ConclusionName], [SpellCode], [Suggestion], [Sex] )
SELECT
Name AS ConclusionName
,PYM AS SpellCode
,Suggestion AS Suggestion
,DiseasesGender AS Sex
FROM PEIS.DBO.Conclusion WHERE

@ -0,0 +1,7 @@
SELECT PID,* FROM Enrollment_Patient WHERE ID=80198
-- UPDATE Enrollment_Patient SET AGE=60 WHERE ID=80198
SELECT * FROM Base_Patient WHERE ID=44133
-- UPDATE Base_Patient SET Birthday='1964-02-26' WHERE ID=44133

@ -0,0 +1,20 @@
-- PACS 报告和已选图片的ReportNo同步
--
-- SELECT * FROM pacs.DICOMSERVER.dbo.PEIS_PacsResult WHERE PatientCode= '71013'
-- SELECT * FROM PACS.DICOMSERVER.DBO.ImgForReport WHERE AccessionNumber= '1284796'
--
-- SELECT * FROM Enrollment_FeeItem WHERE EID=71013 AND ItemClass='检查' 563602/615130
-- SELECT * FROM report WHERE EID=71013 563602/615130
-- 报告
-- UPDATE Report SET ReportNo=T.ReportNo FROM (
-- SELECT DISTINCT A.ID AS ReportNo,A.EID,B.ID FROM Enrollment_FeeItem A
-- LEFT JOIN report B ON A.EID=B.EID AND A.OldId=B.ReportNo
-- WHERE A.OldId IS NOT NULL AND B.ReportNo IS NOT NULL AND A.ID<>B.ReportNo
-- ) T WHERE Report.EID=T.EID AND Report.ID=T.ID
-- 图片
-- UPDATE Exam_PacsImage SET ReportNo=T.ReportNo FROM (
-- SELECT DISTINCT A.ID AS ReportNo,A.EID,B.ID FROM Enrollment_FeeItem A
-- LEFT JOIN Exam_PacsImage B ON A.EID=B.EID AND A.OldId=B.ReportNo
-- WHERE A.OldId IS NOT NULL AND B.ReportNo IS NOT NULL AND A.ID<>B.ReportNo
-- ) T WHERE Exam_PacsImage.EID=T.EID AND Exam_PacsImage.ID=T.ID

@ -0,0 +1,18 @@
SELECT TOP 20 * FROM dbo.Dict_Pack
SELECT TOP 20 * FROM PEIS. dbo.ExamPack
TRUNCATE TABLE Dict_Pack
SET IDENTITY_INSERT [dbo].[Dict_Pack] OFF
INSERT INTO Dict_Pack
(ID, Name, SpellCode, Sex, Marriage, Seq)
SELECT
Id,
NAME ,
PYM AS SpellCode,
SuitableGender AS Sex,
SuitableMarriage AS Marriage,
SortNo AS Seq
FROM
PEIS.dbo.ExamPack WHERE StopOperDate IS NULL

@ -0,0 +1,13 @@
SELECT * FROM [dbo].[Dict_PackToFeeItem]
SELECT * FROM PEIS. [dbo].[ExamPackFeeItem]
TRUNCATE TABLE Dict_PackToFeeItem
SET IDENTITY_INSERT [dbo].[Dict_PackToFeeItem] OFF
INSERT INTO [Dict_PackToFeeItem]
([ID], [PID], [FID], [Seq], [CreateTime], [CreatorCode], [Creator])
SELECT[Id], [ExamPackId] AS PID, [FeeItemId] AS FID, [SortNo] AS SEQ,CreateTime= '2024-05-24', CreatorCode='0513',Creator= '赵翠回'
FROM PEIS. [dbo].[ExamPackFeeItem]
SELECT * FROM vi_FeeItem

@ -0,0 +1,15 @@
SELECT a.id as eid ,a.name,b.PatientNo FROM
Enrollment_Patient A
LEFT JOIN [dbo].[Report_GSEXD] B ON A.Name=B.Name
WHERE A.SignTime>'2024-06-16' and b.id is not null
SELECT * FROM Enrollment_Patient where id=80016
select * from [dbo].[Report_GSEXD] where name='亢永涛'
UPDATE Report_GSEXD SET PatientNo=A.EID
FROM
Enrollment_FeeItem A
LEFT JOIN [dbo].[Report_GSEXD] B ON A.ID=B.RecordNo
WHERE A.CreateTime>'2024-06-16' and b.id is not null AND A.FeeItemName='十二通道心电图检查' AND A.EID>80000
AND B.ID=2

@ -0,0 +1,23 @@
select * FROM Exam_Part where DeptName like '%心电%' AND Summary LIKE '%2.%'
SELECT TOP 10 * FROM Exam_Result
INSERT INTO Exam_Result
( [PID], [DeptName], [FID], [FeeItemName], [RptItemName], [TextResult], [ItemClass])
SELECT A.ID AS PID,A.DeptName,B.FID,B.FeeItemName ,
SUBSTRING(Summary, 3, CHARINDEX(':', Summary) - 3) AS RptItemName,
SUBSTRING(Summary, CHARINDEX(':', Summary) + 1, LEN(Summary) - CHARINDEX(':', Summary)) AS TextResult,
ItemClass='检查'
FROM
Exam_Part A
LEFT JOIN Enrollment_FeeItem B ON A.EID=B.EID AND A.DeptName=B.DeptName AND A.DeptCode=B.DeptCode
WHERE A.DeptName like '%心电%' AND Summary LIKE '%:%'
SELECT
SUBSTRING(Summary, 3, CHARINDEX(':', Summary) - 3) AS RptItemName,
SUBSTRING(Summary, CHARINDEX(':', Summary) + 1, LEN(Summary) - CHARINDEX(':', Summary)) AS TextResult
FROM
Exam_Part
where DeptName like '%心电%' AND Summary LIKE '%2.%'

@ -0,0 +1,18 @@
TRUNCATE TABLE Exam_Conclusion
SET IDENTITY_INSERT [dbo].[Exam_Conclusion] ON
INSERT INTO [dbo].[Exam_Conclusion]
([EID],[FID], [RID], [CID], [Conclusion], [Suggestion] , [Seq])
SELECT
[EnrollmentId] AS EID,
[FeeItemId] AS FID,
[ExamItemId] AS RID,
[ConclusionId] AS CID,
[Name] AS Conclusion,
[Suggestion] AS Suggestion ,
SORTNO AS SEQ
FROM PEIS.DBO.ExamConclusion

@ -0,0 +1,15 @@
INSERT INTO [Exam_Result]
( [PID], [DeptName], [FID], [FeeItemName], [RptItemName], [TextResult], [ItemClass], [Reporter], [ReportTime])
SELECT
C.ID AS PID,C.DeptName,
D.FeeItemId AS FID,D.Name AS FeeItemName,A.NAME AS RptItemName,
A.TextValue AS TextResult,ItemClass='检查',A.PacsVerifyOperName AS Reporter, A.PacsVerifyOperDate AS ReportTime
FROM PEIS.DBO.EnrollmentApplicationSheet A LEFT JOIN PEIS.DBO.DEPARTMENT B ON A.DepartmentId=B.ID
LEFT JOIN Exam_Part C ON A.EnrollmentId=C.EID AND B.HISCODE=C.DeptCode AND B.NAME=C.DeptName
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheetFeeItem D ON A.ID=D.EnrollmentApplicationSheetId
WHERE A. TextValue IS NOT NULL
SELECT TOP 20 * FROM Exam_Result
SELECT TOP 20 B.FEEITEMID,* FROM PEIS.DBO.EnrollmentApplicationSheet A
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheetFeeItem B ON A.ID=B.EnrollmentApplicationSheetId

@ -0,0 +1,61 @@
--
SELECT * FROM dbo.Dict_ReportItem
SELECT top 10 * FROM PEIS.dbo.ExamItem
--
TRUNCATE TABLE Dict_ReportItem
SET IDENTITY_INSERT [dbo].[Dict_ReportItem] ON
INSERT INTO [Dict_ReportItem]
([ID], [RptItemName], [SpellCode], [Unit], [RptItemCode] )
SELECT
id,
NAME as RptItemName,
PYM as SpellCode,
ValueUnit as Unit,
LisCode as RptItemCode
FROM
PEIS.dbo.ExamItem
where StopOperDate is null
---
select DISTINCT [FeeItemId], [ExamItemId], [SortNo] from PEIS.dbo.feeitemexamitem where ExamItemId=1
-- 更新 FeeItemId 和 SortNo
UPDATE Dict_ReportItem
SET FId = CASE
WHEN Dict_ReportItem.FId IS NULL THEN feeitemexamitem.FeeItemId
ELSE new_record.FId
END,
Seq = feeitemexamitem.SortNo
FROM Dict_ReportItem
JOIN PEIS.dbo.feeitemexamitem ON Dict_ReportItem.ID = feeitemexamitem.ExamItemId
-- 使用 OUTER APPLY 来获取需要复制的记录
OUTER APPLY (
SELECT TOP 1 FId
FROM Dict_ReportItem AS dr
WHERE Dict_ReportItem.ID = dr.ID AND dr.FId IS NOT NULL
) AS new_record (FId)
SET IDENTITY_INSERT [dbo].[Dict_ReportItem] OFF
--
INSERT INTO [Dict_ReportItem]
([RptItemName], [SpellCode], [Unit], [RptItemCode],fid,seq )
select DISTINCT
NAME as RptItemName,
PYM as SpellCode,
ValueUnit as Unit,
LisCode as RptItemCode,
FeeItemId as fid,
SortNo as seq
from
PEIS.dbo.feeitemexamitem a
left join PEIS.dbo.examitem b on a.ExamItemId=b.id
where not EXISTS (select 1 from Dict_ReportItem c where c.id=a.ExamItemId and c.fid=a.FeeItemId)
ORDER BY fid,seq

@ -0,0 +1,30 @@
--
SELECT * FROM Dict_Sign
-- Group1 Group2
SELECT top 10 * FROM PEIS.dbo.ExamSign
--
TRUNCATE TABLE Dict_Sign
SET IDENTITY_INSERT [dbo].[Dict_Sign] ON
INSERT INTO Dict_Sign(ID, RID, SignName, SpellCode, Description, SevereLevel, IsDefault, IsSummary, Group1, Group2, Seq, CID)
SELECT Id,
ExamItemId AS RID,
NAME AS SignName,
PYM AS SpellCode,
SignDetail AS Description,
DiseaseLevel AS SevereLevel,
IsDefaultOption AS IsDefault,
SummaryInclude AS IsSummary,
FirstGroupNo AS Group1,
SecondGroupNo AS Group2,
SortNo AS Seq ,
ConclusionId AS CID
FROM
PEIS.dbo.ExamSign
WHERE STOPOPERDATE IS NULL
SET IDENTITY_INSERT [dbo].[Dict_Sign] OFF

@ -0,0 +1,20 @@
SELECT * FROM dbo.Dict_FeeItem
SELECT top 200 * FROM peis.dbo.FeeItem
--
TRUNCATE TABLE Dict_FeeItem
SET IDENTITY_INSERT dbo.Dict_FeeItem ON
INSERT INTO Dict_FeeItem(ID, FeeItemCode, SpellCode, Unit)
SELECT
A.Id,
A.HISCheckCode AS FeeItemCode,
A.PYM AS SpellCode,
A.UnitName AS Unit
FROM
peis.dbo.FeeItem A
SET IDENTITY_INSERT dbo.Dict_FeeItem OFF

@ -0,0 +1,44 @@
-- UPDATE Enrollment_FeeItem
-- SET OldId = B.ID
-- FROM Enrollment_FeeItem A
-- LEFT JOIN PEIS.DBO.EnrollmentApplicationSheet B ON A.EID = B.EnrollmentId AND A.FeeItemName = B.NAME
-- WHERE A.EID < 80000
-- AND A.FeeItemName IS NOT NULL
-- AND B.NAME IS NOT NULL
-- AND A.OLDID IS NULL;
-- SELECT * FROM pacs.DICOMSERVER.dbo.PEIS_PacsResult WHERE PatientCode='70525'
SELECT * FROM PEIS.DBO.EnrollmentApplicationSheet WHERE EnrollmentID='71015' AND DEPARTMENTID<7
SELECT * FROM PEISDB.DBO.Enrollment_FeeItem WHERE IsSend=0 AND OldId IS NOT NULL
SELECT TOP 10 *
FROM Enrollment_FeeItem A
LEFT JOIN Enrollment_Patient C ON A.EID=C.ID
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheet B ON A.EID = B.EnrollmentId AND A.FeeItemName = B.NAME
WHERE A.EID < 80000
AND C.FinishTime IS NULL
AND A.FeeItemName IS NOT NULL
AND B.NAME IS NULL
AND A.OLDID IS NULL
AND A.ItemClass = '检查'
AND A.DeptCode<>'0141'
AND A.CreateTime<'2024-06-16'
ORDER BY A.ID DESC
-- 胸部CT平扫=>胸部平扫
-- UPDATE Enrollment_FeeItem
-- SET OldId = B.ID
SELECT TOP 10 A.ID,A.EID,A.FeeItemCode,A.FeeItemName,B.*
FROM Enrollment_FeeItem A
LEFT JOIN Enrollment_Patient C ON A.EID=C.ID
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheet B ON A.EID = B.EnrollmentId
WHERE
A.OLDID IS NULL
AND A.IsSend=0
AND C.FinishTime IS NULL
AND B.NAME='胸部CT平扫'
AND A.FeeItemName = '胸部平扫 '
AND A.CreateTime<'2024-06-16'
ORDER BY A.ID DESC

@ -0,0 +1,39 @@
WITH ValidPatients AS (
SELECT
A.PatientCode,
A.ExamFeeitem_Code,
A.ExamDatetime,
A.ExamDoctor,
A.InputDoctor,
A.ExamDesc,
A.ExamSummary,
A.ExamPositive,
A.ImageTitle,
A.TransfTertarget,
A.ReportFile_PDF
FROM
pacs.DICOMSERVER.dbo.PEIS_PacsResult A
WHERE
A.ExamDatetime IS NOT NULL
AND A.PatientCode IS NOT NULL
AND ISNUMERIC(A.PatientCode) = 1 -- Filter for numeric PatientCode
AND LEN(A.PatientCode) <= 19 -- Ensure length is within bigint range
AND A.PatientCode NOT LIKE '%[^0-9]%' -- Ensure no non-digit characters
AND EXISTS (SELECT 1 FROM Enrollment_Patient WHERE ID = CAST(A.PatientCode AS bigint))
)
INSERT INTO Report (EID, ReportNo, ReportTime, Reporter, Examer, Description, Summary, Positive, Title, Class, ReportImage, InTime)
SELECT
CAST(PatientCode AS bigint) AS EID,
ExamFeeitem_Code AS ReportNo,
ExamDatetime AS ReportTime,
ExamDoctor AS Reporter,
InputDoctor AS Examer,
ExamDesc AS Description,
ExamSummary AS Summary,
ExamPositive AS Positive,
ImageTitle AS Title,
TransfTertarget AS Class,
ReportFile_PDF AS ReportImage,
GETDATE() AS InTime
FROM
ValidPatients;

@ -0,0 +1,64 @@
SELECT distinct a.FID FROM Exam_Result a
WHERE NOT EXISTS(SELECT 1 from Dict_FeeItem where id=a.fid)
SELECT * FROM EXAM_RESULT
SELECT TOP 20 * FROM PEIS.DBO.ExamDepartment
SELECT TOP 20 * FROM PEIS.DBO.EnrollmentExamItem
insert into EXAM_RESULT(
PID, SID ,DeptName,FID, FeeItemName ,RID ,RptItemName ,TextResult, ItemClass )
SELECT
A.ExamDepartmentId AS PID,
A.ExamItemId as sid,
C.NAME AS DEPTNAME,
D.FeeItemId AS FID,
D.Name AS FeeItemName,
B.ExamItemId as rid,
B.Name as RptItemName,
A.Name as TextResult,
D.ItemType as ItemClass
FROM PEIS.DBO.ExamExamSign A
LEFT JOIN PEIS.DBO.EnrollmentExamItem B ON A.EnrollmentExamItemId=B. ID
LEFT JOIN PEIS.DBO.Department C ON A.DepartmentId=C.ID
LEFT JOIN PEIS.DBO.EnrollmentFeeItem D ON B.EnrollmentFeeItemId =D.ID AND D. EnrollmentId =B.EnrollmentId
WHERE A.StopOperDate IS NULL
SELECT * FROM Dict_ReportItem WHERE ID IN (1,2,3,4,5)
select * from Exam_Result where pid in (
select id from Exam_Part where eid=1252)
SELECT * FROM Dict_FeeItem WHERE ID=3
update Exam_Result set result = convert(decimal,TextResult) where TextResult<>'' and RptItemName='身高'
SELECT DISTINCT A.ID AS EID,A.Name as Inputer,A.SignTime AS InputTime,A.FinishTime AS CheckTime,B.DeptName,C.VerifyTime FROM Enrollment_Patient A
LEFT JOIN Enrollment_FeeItem B ON A.ID=B.EID
LEFT JOIN Exam_Part C ON B.EID=C.EID AND B.DeptCode=C.DeptCode
WHERE A.ID=1252
TRUNCATE TABLE EXAM_RESULT
insert into EXAM_RESULT( FID,FeeItemName,RID,RptItemName,TextResult ,DeptName ,PID )
SELECT
b.feeitemid as Fid,
b.name as FeeItemName,
a.ExamItemId as Rid,
a.Name AS RptItemName,
a.teXtvalue as TextResult,
a.DepartmentName as DEPTNAME,
C.ID AS PID
FROM PEIS.DBO.EnrollmentExamItem a
LEFT JOIN PEIS.DBO.EnrollmentFeeItem b ON a.EnrollmentFeeItemId =b.ID AND a. EnrollmentId =b.EnrollmentId
left join PEIS.DBO.ExamDepartment C ON a. EnrollmentId =C.EnrollmentId AND A.DepartmentId=C.DepartmentId
ORDER BY PID
select * from
ExamResult.FID
Dict_FeeItem.ID

@ -0,0 +1,25 @@
SELECT TOP 20 * FROM dbo.Dict_Conclusion
SELECT TOP 20 * FROM PEIS.DBO.Conclusion
TRUNCATE TABLE Dict_Conclusion
SET IDENTITY_INSERT dbo.Dict_Conclusion ON
INSERT INTO Dict_Conclusion
(ID, ConclusionName, SpellCode, Description, Instructions, Suggestion, Advice, DietaryGuidance, Sex )
SELECT
Id,
NAME AS ConclusionName,
PYM AS SpellCode,
Description,
Instructions,
Suggestion ,
Advice,
DietaryGuidance,
DiseasesGender AS SEX
FROM
PEIS.DBO.Conclusion
WHERE
StopOperDate IS NULL
SET IDENTITY_INSERT dbo.Dict_Conclusion OFF

@ -0,0 +1,64 @@
-- 需要下载的图文件路径
SELECT A.PatientCode, A.ExamFeeitem_Code,A.IMAGETITLE,A.ImageFile,
STUFF((SELECT ',' + B.SopInstanceUID
FROM PACS.DICOMSERVER.DBO.ImgForReport B
WHERE B.AccessionNumber=A.AccessionNumber
FOR XML PATH('')), 1, 1, '') AS SopInstanceUID
FROM PACS.DICOMSERVER.DBO.PEIS_PacsResult A
where A.ExamDatetime IS NOT NULL AND A.PatientCode='54521'
--
SELECT * FROM Report WHERE EID=54521
SELECT * FROM pacs.DICOMSERVER.dbo.PEIS_PacsResult WHERE PatientCode='54521'
-- 同步报告单
INSERT INTO Report
( EID, ReportNo, ReportTime, Reporter, Examer, Description, Summary, Positive, Title, Class, ReportImage, InTime,AccessionNumber )
SELECT
A.PatientCode AS EID,
A.ExamFeeitem_Code AS ReportNo,
A.ExamDatetime AS ReportTime,
A.ExamDoctor AS Reporter,
A.InputDoctor AS Examer,
A.ExamDesc AS Description,
A.ExamSummary AS Summary,
A.ExamPositive AS Positive,
A.ImageTitle AS Title,
A.TransfTertarget AS Class,
A.ReportFile_PDF AS ReportImage,
GETDATE() AS InTime,
AccessionNumber
FROM pacs.DICOMSERVER.dbo.PEIS_PacsResult A
WHERE A.ExamDatetime IS NOT NULL and a.PatientCode='54521' AND NOT EXISTS (
SELECT 1 FROM Report AS B
WHERE B.EID = A.PatientCode AND B.ReportNo=A.ExamFeeitem_Code
) and exists ( SELECT 1 FROM Enrollment_Patient WHERE ID = A.PatientCode)
--
SELECT * FROM pacs.DICOMSERVER.dbo.PEIS_PacsResult A
WHERE A.ExamDatetime IS NOT NULL and a.PatientCode in
(
'70996'
,'70995'
,'71013'
,'71015'
,'71009'
,'70996'
,'54515'
,'54521'
,'71008'
)
SELECT TOP 2 * FROM pacs.DICOMSERVER.dbo.PEIS_PacsResult WHERE ReportFile_PDF IS NOT NULL AND ExamDatetime>'2024-06-1'

@ -0,0 +1,33 @@
-- 插入PACS报告
INSERT INTO peisdb.dbo.Report([EID], [ReportNo] , [Class2], [Title], [Reporter], [ReportTime], [Description], [Summary] )
SELECT
[EID]
,B.ID AS [ReportNo]
, AccessionNumber AS [Class2]
, NAME AS [Title]
, PacsVerifyOperName AS [Reporter]
, PacsVerifyOperDate AS [ReportTime]
, PacsText1 AS [Description]
, PacsText2 AS [Summary]
FROM PEIS.DBO.EnrollmentApplicationsheet A(NOLOCK)
LEFT JOIN peisdb.dbo.Enrollment_FeeItem B ON A.EnrollmentId = B.EID AND A.NAME=B.FeeItemName AND A.DepartmentName=B.DeptName
WHERE A.ApplicationType=1 AND A.SendOperDate IS NOT NULL AND A.RemoveOperDate IS NULL AND EID IS NOT NULL AND PacsVerifyOperDate IS NOT NULL
AND NOT EXISTS(SELECT 1 FROM PEISDB.DBO.Report WHERE EID=B.EID AND ReportNo=B.ID)
-- 插入图片
INSERT INTO [dbo].[Exam_PacsImage]( [EID], [ReportNo], [Image] )
SELECT B.EnrollmentId AS EID,A.AccessionNumber AS [ReportNo] ,A.Picture FROM PEIS.DBO.EnrollmentApplicationSheetPicture A
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheet B ON B.Id=A.EnrollmentApplicationSheetId WHERE A.AccessionNumber IS NOT NULL
-- 更新ReportNo
UPDATE [dbo].[Exam_PacsImage] SET ReportNo=T.ReportNo
FROM (
SELECT A.ID,B.ReportNo FROM [dbo].[Exam_PacsImage] A
LEFT JOIN peisdb.dbo.Report B ON A.EID=B.EID AND A.ReportNo=B.Class2
WHERE B.ReportNo IS NOT NULL) T WHERE [Exam_PacsImage].ID=T.ID
-- pacs 报告图片
-- SELECT TOP 10 * FROM REPORT A
-- WHERE A.ReportImage IS NULL
--SELECT * FROM PACS.DICOMSERVER.DBO.PEIS_PacsResult WHERE PatientCode='69090'
-- -- OR Report.Class2=CAST(T.AccessionNumber AS BIGINT))

@ -0,0 +1,8 @@
SELECT * FROM PACS.DICOMSERVER.dbo.PEIS_PacsResult
WHERE PatientCode in
(
'70996','70995','71013','71015','71009','70996','54515','54521','71008'
)
SELECT * FROM PACS.DICOMSERVER.dbo.PEIS_PacsResult WHERE PatientCode ='80000'

@ -0,0 +1,20 @@
SELECT * FROM Report WHERE EID=80392
SELECT * FROM Enrollment_FeeItem WHERE ID=1035912
UPDATE Enrollment_FeeItem SET ItemClass='检查' WHERE FeeItemName='液基薄层细胞制片术' AND ItemClass IS NULL
UPDATE Exam_Result SET DID=A.PID
-- SELECT A.*,B.EID
FROM Exam_Result A
LEFT JOIN Exam_Part B ON A.PID=B.ID
LEFT JOIN Enrollment_Patient C ON B.EID=C.ID
WHERE RptItemName LIKE '乙肝%' AND C.SignTime>'2024-06-16'
UPDATE Exam_Result SET DID=NULL
-- SELECT A.*,B.EID
FROM Exam_Result A
LEFT JOIN Exam_Part B ON A.PID=B.ID
LEFT JOIN Enrollment_Patient C ON B.EID=C.ID
WHERE RptItemName LIKE '乙肝%' AND C.SignTime>'2024-06-16'

@ -0,0 +1,2 @@
SELECT ID,NAME,CASE SEX WHEN 2 THEN '' else '' end as sex,AGE,AgeClass,OrgName FROM Enrollment_Patient WHERE SignTime>'2024-06-17' ORDER BY ID ,OrgName

@ -0,0 +1,29 @@
-- 当日体检人数统计SQL
SELECT
ROW_NUMBER() OVER (ORDER BY OrgName) AS Num,
OrgName,
ID,NAME,
CASE SEX WHEN 2 THEN '' ELSE '' END AS sex,
AGE,AgeClass,
SignTime,CardNo
FROM
Enrollment_Patient
WHERE
OrgName LIKE '2024年云南云澳达%'
-- 团体统计
SELECT * FROM Enrollment_OrgPatient where OID=799
SELECT * FROM Enrollment_Org where OID=731
SELECT A.ID AS EID,A.Name,Age,AgeClass,B.DeptName,B.FeeItemName FROM Enrollment_Patient A
LEFT JOIN Enrollment_FeeItem B ON A.ID=B.EID
WHERE
A.SignTime BETWEEN '2024-06-16' AND '2024-06-18'
AND B.DeptName='健康管理中心/治未病'
AND B.IsSend=1
AND B.FeeItemName LIKE '%十二%'

@ -0,0 +1,20 @@
INSERT INTO [Dict_ReportItem]
( [RptItemName], [Seq], [FID], [IsAddSummary])
SELECT FeeItemName AS RptItemName,Seq=1,A.ID AS FID,IsAddSummary=1 FROM vi_FeeItem A
LEFT JOIN Dict_ReportItem B ON A.ID=B.FID
WHERE B.ID IS NULL AND A.ItemClass='普通' AND A.IsHide=0
SELECT * FROM vi_HisFeeItem WHERE ClassName LIKE '%迪安%'
SELECT FeeItemName AS RptItemName,Seq=1,A.ID AS FID,IsAddSummary=1 FROM vi_FeeItem A
LEFT JOIN Dict_ReportItem B ON A.ID=B.FID
LEFT JOIN vi_HisFeeItem C ON
WHERE B.ID IS NULL AND A.ItemClass='普通' AND A.IsHide=0
SELECT * FROM Enrollment_FeeItem WHERE EID=80668
UPDATE [Enrollment_FeeItem] SET ItemClass='普通' where [ID] = 1043064

@ -0,0 +1,32 @@
update peisdb.[dbo].[Exam_Result] set TextResult=tt.TextResult
from
(
select t.id,t2.TextResult from peisdb.dbo.Exam_Result t
left join
(
SELECT
Z.Id AS PID
,Y.DepartmentId AS [DID]
,X.DepartmentName AS [DeptName]
,X.[FeeItemId] AS [FID]
,X.Name AS FeeItemName
,Y.[ExamItemId] AS [RID]
,Y.[Name] AS [RptItemName]
,Y.[TextValue] AS [TextResult]
,Y.[ValueUnit] AS [Unit]
,X.ItemType AS [ItemClass]
FROM PEIS.DBO.[EnrollmentFeeItem] X (NOLOCK)
JOIN PEIS.DBO.[EnrollmentExamItem] Y (NOLOCK) ON X.Id = Y.EnrollmentFeeItemId
JOIN PEIS.DBO.[ExamDepartment] Z(NOLOCK) ON Y.DepartmentId = Z.DepartmentId
AND Y.EnrollmentId = Z.EnrollmentId AND X.EnrollmentId = Z.EnrollmentId
WHERE X.SendOperDate IS NOT NULL AND X.RemoveOperDate IS NULL
AND Y.RemoveOperDate IS NULL AND Z.RemoveOperDate IS NULL
AND X.GiveUpOperDate IS NULL AND Y.GiveUpOperDate IS NULL
) as t2 on t2.pid=t.pid and t2. RptItemName =t.RptItemName and t2.FeeItemName=t.FeeItemName
where (t.TextResult is null or t.TextResult='')and (t2.TextResult <>'')
) tt
where Exam_Result.id=tt.id
--
UPDATE [Exam_Result] SET [UnusualFlag] = NULL WHERE [UnusualFlag] = '阴性' or [UnusualFlag] = '正常'

@ -0,0 +1,4 @@
UPDATE EXAM_PART SET DEPTCODE=T.HISCODE FROM
(
SELECT Name ,HISCode FROM DICT_DEPT) T
WHERE T.NAME=EXAM_PART.DeptName AND EXAM_PART.DeptCode=0141

@ -0,0 +1,23 @@
update peisdb.[dbo].[Exam_Result] set TextResult=tt.TextResult
from
(
select t.id,t2.TextResult from peisdb.dbo.Exam_Result t
left join
(
SELECT
C.ID AS PID,C.DeptName,
D.FeeItemId AS FID,D.Name AS FeeItemName,A.NAME AS RptItemName,
A.TextValue AS TextResult,ItemClass='检查',A.PacsVerifyOperName AS Reporter, A.PacsVerifyOperDate AS ReportTime
FROM PEIS.DBO.EnrollmentApplicationSheet A
LEFT JOIN PEIS.DBO.DEPARTMENT B ON A.DepartmentId=B.ID
LEFT JOIN Exam_Part C ON A.EnrollmentId=C.EID AND B.HISCODE=C.DeptCode AND B.NAME=C.DeptName
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheetFeeItem D ON A.ID=D.EnrollmentApplicationSheetId
WHERE A. TextValue IS NOT NULL
) as t2 on t2.pid=t.pid and t2. RptItemName =t.RptItemName and t2.FeeItemName=t.FeeItemName
where (t.TextResult is null or t.TextResult='')and (t2.TextResult <>'')
) tt
where Exam_Result.id=tt.id

@ -0,0 +1,35 @@
update peisdb.[dbo].[Exam_Result] set TextResult=tt.TextResult
from
(
select t.id,t2.TextResult from peisdb.dbo.Exam_Result t
left join
(
SELECT
C.Id AS PID
,B.DepartmentId AS [DID]
,A.DepartmentName AS [DeptName]
,A.[FeeItemId] AS [FID]
,A.Name AS FeeItemName
,B.[ExamItemId] AS [RID]
,B.[Name] AS [RptItemName]
,B.[TextValue] AS [TextResult]
,B.[ValueUnit] AS [Unit]
,A.ItemType AS [ItemClass]
,B.LisCode AS RPTITEMCODE
,B.LisRange AS [Range]
,B.LisVerifyOperName AS REPORTER
,B.LisVerifyOperDate AS REPORTTIME
,B. LisFlag AS UnusualFlag
FROM PEIS.DBO.[EnrollmentApplicationSheetFeeItem] A (NOLOCK)
JOIN PEIS.DBO.[EnrollmentExamItem] B (NOLOCK) ON A.Id = B.EnrollmentApplicationSheetFeeItemId
JOIN PEIS.DBO.[ExamDepartment] C(NOLOCK) ON B.DepartmentId = C.DepartmentId AND B.EnrollmentId = C.EnrollmentId AND A.EnrollmentId =C.EnrollmentId
WHERE A.SendOperDate IS NOT NULL AND A.RemoveOperDate IS NULL AND B.RemoveOperDate IS NULL AND C.RemoveOperDate IS NULL
AND A.GiveUpOperDate IS NULL AND B.GiveUpOperDate IS NULL
) as t2 on t2.pid=t.pid and t2. RptItemName =t.RptItemName and t2.FeeItemName=t.FeeItemName
where (t.TextResult is null or t.TextResult='')and (t2.TextResult <>'')
) tt
where Exam_Result.id=tt.id

@ -0,0 +1,29 @@
INSERT INTO Dict_ReportItem
( RptItemCode,
RptItemName,
SpellCode,
Unit,
ValueFormat,
SignFormat,
Seq,
FID,
KeyNo,
IsAddSummary,
DefaultValue
)
SELECT b.,
b.,
NULL,
b.,
NULL,
NULL,
NULL,
c.ID,
c.KeyNo,
NULL,
NULL
FROM lis.rmlis6.dbo.v_xbdtj_sqxm a
LEFT JOIN lis.rmlis6.dbo.v_xbdtj_bgxm b ON a. = b.
LEFT JOIN vi_FeeItem c ON a. = c.feeitemcode
WHERE c.ItemClass = '检验'
AND IS NOT NULL

@ -0,0 +1,31 @@
-- 查询表中的重复数据
SELECT * FROM Dict_FeeItem where feeitemcode='F512'
SELECT * FROM Dict_ReportItem WHERE fid=4
update Dict_ReportItem SET RptItemCode=NULL
select TOP 20 * FROM Exam_Result
select DISTINCT RID FROM Exam_Result A
WHERE NOT EXISTS (SELECT 1 FROM Dict_ReportItem B WHERE B.ID=A.RID)
FID
SELECT TOP 20 * FROM PEIS.DBO.FeeItem WHERE ID IN (363,
461,472,96,154,279,471)
update Exam_Result set fid=470 where fid in (471,472,154)
update Exam_Result set fid=1 where fid =461
update Exam_Result set fid=558 where fid in (96 )
SELECT * FROM vi_EnPart WHERE EID=1252 AND FID=3
select * from Exam_Part where eid=1252
select * from Exam_Result where pid=57
UPDATE Exam_Result SET rID=b.ID FROM Exam_Result a left join Dict_ReportItem b ON A.fID=B.FID and a.RptItemName=b.RptItemName
update [BaogaoInfo] set YangbenGuid =b.Guid from BaogaoInfo a left join YangbenInfo b on a.YangbenId = b.Id
select * from Dict_ReportItem where id=4

@ -0,0 +1,14 @@
-- 老体检重复的收费项目数据
SELECT B.FeeItemCode,B. ID AS FID,A.* FROM
(
SELECT * FROM PEIS.DBO.FeeItem WHERE NAME IN
(
SELECT NAME FROM
(
SELECT COUNT(NAME) AS C,NAME FROM PEIS.DBO.FeeItem GROUP BY NAME
) T WHERE T.C>1
) -- ORDER BY Name
) A
LEFT JOIN vi_FeeItem B ON A.Name=B.FeeItemName
ORDER BY Name,FID

@ -0,0 +1,29 @@
-- SELECT * FROM vi_FeeItem where id=470
-- 腰臀比 RID=352
-- SELECT * FROM Dict_ReportItem WHERE RptItemName='体重指数'
-- 值计算:身高RID=250,体重RID=351
-- Round((10000*[351] / ([350] *[350])), 1)
-- 体检词计算
-- SELECT id as SID,SignName FROM Dict_Sign WHERE rid=352
-- 703 正常, 704 消瘦, 705 超重, 706 肥胖, 707 轻度肥胖, 708 中度肥胖, 709 重度肥胖
([value]<18.5)?(704):(([value]>=18.5&&[value]<24)?703:(([value]>=24&&[value]<28)?705:(([value]>=28&&[value]<30)?705:(([value]>=30&&[value]<35)?707:(([value]>=35&&[value]<40)?708:(([value]>=40)?709:703))))))
-- SELECT id as SID,SignName FROM Dict_Sign WHERE rid=362
-- 736 正常, 737 消瘦, 738 超重, 739 肥胖, 740 轻度肥胖, 741 中度肥胖, 742 重度肥胖
([value]<18.5)?(
737):(([value]>=18.5&&[value]<24)?
736:(([value]>=24&&[value]<28)?
738:(([value]>=28&&[value]<30)?
739:(([value]>=30&&[value]<35)?
740:(([value]>=35&&[value]<40)?
741:(([value]>=40)?
742:
736))))))
([value]<18.5)?(737):(([value]>=18.5&&[value]<24)?736:(([value]>=24&&[value]<28)?738:(([value]>=28&&[value]<30)?739:(([value]>=30&&[value]<35)?740:(([value]>=35&&[value]<40)?741:(([value]>=40)?742:736))))))

@ -0,0 +1,156 @@
SK-CK串口通讯协议
Chapter 1.
接口定义............................................................
.......................................................1
1.1.
串口通讯........................................................
...............................................................1
1.2.
接口定义........................................................
...............................................................1
Chapter 2.
串口协议............................................................
.......................................................2
2.1.
设置串口通讯....................................................
...............................................2
2.2.
上位机发送指令..................................................
..........................................................2
2.2.1.
命令格式.....................................................
.......................................................2
2.3.
模块发给上位机数据包............................................
........................................3
2.3.1.
实时测量数据包...............................................
......................................3
2.3.2.
测量结束标志包...............................................
......................................4
Chapter 1. 接口定义
1.1. 串口通讯
CK模块通过RS232串口与上位机通讯,波特率为 115200bps
2.2. 接口定义
注意: 靠近电源部分引脚为第 1 引脚
Table 1 接口定义
|引脚说明 |引脚定义 |功能说明 | |
| |1 |串口输出端(TX),模| |
| | |块发送数据 | |
| |2 |串口输入端(RX),模| |
| | |块接受数据 | |
| |3 |接地 | |
| |4 | | |
| |5 |空 | |
| |6 |空 | |
Chapter 2. 串口协议
2.1. 设置串口通讯口
CK测量模块通过串行口与上位机通讯,接收外部命令,完成相应操作,返
回系统状态
和相应数据
数据格式:
起始位 + 8 位数据位 + 1 位停止位, 无校验
波特率:115200bps
2.2. 上位机发送指令发
2.2.1. 命令格式
2.2.1.1. 格式
Table 2 Host → module:
|命令格式 |<STX>ab;;cd<ETX> |
| |<STX>02 |ASCII 码的正文起始标志 |
| |ab |命令代码对应的 ASCII 码值 |
| |cd |16 进制校验和对应的 ASCII |
| | |码值。校验和是此前各位数值之和的低 8 |
| | |位,不包括<STX> |
| |<ETX>03 |ASCII 码的正文结束标志 |
2.2.1.2. 命令代码
Table 3 命令代码
|命令代码 |校验和 |功能(相当于按键) |
|24 |DC |男 |命令(如:男 02 |
| | | |32 34 3b 3b dc|
| | | |03)HEX |
|25 |DD |女 | |
|04 |DA |重新打印 | |
|85 |E3 |请求重发所有数据 | |
2.3. 模块发给上位机数据包数
2.3.1. 格式
Table 4 数据包格式
|数据包格式|<STX>AaBbcdefgChDi<ETX><CR> |
| |<STX>(0|ASCII 码的正文起始标志 |
| |2) | |
| |a |对应系统的测量数据数据类型(ASICII值) |
| | |1 |测量身高 |
| | |2 |测量体重 |
| | |6 |BMI |
| | |7 |性别(1:男;2:女) |
| | |19 |理想体重(如59.2kg: 02 43 30 30 35 39 2E 35 |
| | | |32 A6 03) |
| |bcdefg |当前测量值的各 10 |
| | |进制位的数所对应的ASCII值(如:0100.5) |
| |h |对应于系统不同操作类型的标志 |
| | |1 |测量过程值 |
| | |2 |测量结果 |
| |i |16 进制校验和对应的 ASCII 码值。校验和是此前各位数 |
| | |值之和的低 8 位,不包括<STX> |
| |<ETX>(03|ASCII 码的正文结束标志 |
| |) | |
| |<CR>(13)|回车的 ASCII 值 |
如:重量 67.2kg 02 32 30 30 36 37 2E 32 32
91 03 (HEX)
STX a 0 0 6 7 . 2 h I ETX

@ -0,0 +1,818 @@
TMT 红外热像仪接口文档 V2.0
1. 安装部署
1.1 部署环境
1.1.1 下载环境
Microsoft .NET Framework 4.0
Microsoft Visual C++ 2012 x86
Microsoft Visual C++ 2012 x64
Microsoft® SQL Server® Compact 4.0 SP1
1.1.2 安装环境
1)安装.Net Framework 4.0
2)安装 Visual C++ 2012 (x86 和 x64)
3)安装 SqlServer Compact 4.0
4)打开 Windows 功能,开启 IIS 服务,启用 ASP.NET 服务
1.2 服务安装
1.2.1 下载部署文件
DataCenter.Setup.1.0.2.msi
1.2.2 安装服务程序
注:服务可安装在红外设备中,也可以安装在局域网内的其他电脑上
1)双击运行安装程序
2)选择安装路径(推荐安装到非系统盘,如 D:\\TMT\\)
3)执行安装
1.2.3 服务配置
1) 打开安装目录下的 Web.Config 文件修改(或打开 bin\TMT.Config.exe 程序配置)
2) 根据需要配置接口字段(相关配置见 2 接口说明)
3) 若需要重新绑定端口,可以打开 IIS 管理服务,找到网站 DataCenter 重新绑定端口(默认
8096)
1.2.4 应用程序配置
1) 打开应用程序目录下的配置程序 TMT.Interface.exe
2) 配置接口地址,本机安装服务可用 localhost 设置, 如 http://localhost:8096
3) 保存配置
4)若启用报告推送功能,还需打开报告配置程序 TMT.ReportConfig.exe 启用所需报告的推送
功能
2. 接口说明:
接口配置程序 \bin\Config.exe
配置模块包含
1. 基础配置:配置日志路径,缓存路径,报告路径,报告服务 HOST 地址(对外查询),设备号, 站
点编号,接口模式等
2. 患者接口:配置获取患者信息接口,请求地址,请求方式,返回数据格式,数据解析字段等
3. 报告接口:配置推送报告信息接口,请求地址,请求方式,推送数据格式等
4. AI 服务接口:配置 AI 服务接口,请求地址,请求方式,返回数据格式等
5. 接口测试:用于测试客户接口,可实现 WebRequest,WebService,等查询服务
【日志路径】接口服务异常日志输出路径
【缓存路径】接口服务上传下载暂存路径
【报告路径】接口服务接收红外软件推送过来的报告路径
【报告 HOST】接口服务对外输出报告根
【安装路径】
【数据库密码】
【设备名】上传时指定设备的识别号
【设备号】设备标号
【站点名】上传时指定基站的识别号
【站点编号】机构编码
【校验模式】接口校验模式,一般不做校验或者做参数 MD5 校验
【校验名】校验参数名称
【接口模式】指定接口模式,通过 ? 可查看接口模式列表
【通信模式】接口通信请求格式 xml/json/form-data 等
【命名空间】用户 WebService 指定的命名空间,默认为 http
2.1 ACCESS 数据库接入(红外软件主动查询):
Access 数据库接入只能获取设备使用方服务系统存储的用户信息用于拍摄。需要用户信息服务器与
设备在同一局域网内。并将“Interface” 配置为 1, 并且配置相应的字段定义:
定义 必选 描述(映射关系)
PatientUrl 是 数据库文件完整路径名,建议使用映射驱动器,如
X:\Patient.mdb
PatientAccount 否 数据库访问账号(如果存在)
PatientPassword 否 数据库访问密码(如果存在)
PatientTable 是 查询患者信息表/视图名称
SearchID 是 查询主键
SearchMode 否 患者类型字段(限定 int 类型,其中 0.门诊 1.体检 2.住院)
PatientID 是 患者 ID 列名称
PatientName 是 患者姓名列名称
PatientSex 是 患者性别列名称(男/女、0/1)
PatientBirth 是 患者生日/年龄列名称(yyyy-mm-dd / number)
PatientMobile 否 患者手机号
PatientCard 否 患者身份证号、医保卡号等
PatientAddress 否 患者住址
PatientProject 否 患者检查项目
PatientMark 否 患者既往史
程序配置示例:
2.2 SQL Server 数据库接入(红外软件主动查询):
SQL Server 数据库接入只能获取设备使用方服务系统存储的用户信息用于拍摄。需要将“Interface” 配置
为 2, 并且配置相应的字段定义:
定义 必选 描述(映射关系)
PatientUrl 是 数据服务器名或 IP 地址(优先),如 192.168.1.188
PatientAccount 是 数据库服务器访问账号
PatientPassword 是 数据库服务器访问密码
PatientTable 是 患者信息查询表/视图名称,需使用完整名称如:
[数据库名称].dbo.[患者表名称]
SearchID 是 查询主键
SearchMode 否 患者类型字段(限定 int 类型,其中 0.门诊 1.体检 2.住院)
PatientID 是 患者 ID 列名称
PatientName 是 患者姓名列名称
PatientSex 是 患者性别列名称(男/女、0/1)
PatientBirth 是 患者生日/年龄列名称(yyyy-mm-dd / number)
PatientMobile 否 患者手机号
PatientCard 否 患者身份证号、医保卡号等
PatientAddress 否 患者住址
PatientProject 否 患者检查项目
PatientMark 否 患者既往史
程序配置示例:
2.3 Oracle 数据库接入(红外软件主动查询):
Oracle 数据库接入只能获取设备使用方服务系统存储的用户信息用于拍摄。需要安装 Oracle 客户端。并将
“Interface” 配置为 3, 并且配置相应的字段定义:
定义 必选 描述(映射关系)
PatientUrl 是 数据监听服务名,如 ORCL
PatientAccount 是 数据库服务器访问账号
PatientPassword 是 数据库服务器访问密码
PatientTable 是 患者信息查询表/视图名称
SearchID 是 索引列
SearchMode 否 患者类型字段(限定 int 类型,其中 0.门诊 1.体检 2.住院)
PatientID 是 患者 ID 列名称
PatientName 是 患者姓名列名称
PatientSex 是 患者性别列名称,为必须字段
PatientBirth 是 患者生日/年龄列名称,为必须字段
PatientMobile 否 患者手机号
PatientCard 否 患者身份证号、医保卡号等
PatientAddress 否 患者住址
PatientProject 否 患者检查项目
PatientMark 否 患者既往史
程序配置示例:
2.4 MySQL 数据库接入(红外软件主动查询):
MySql 数据库接入只能获取设备使用方服务系统存储的用户信息用于拍摄。将“Interface” 配置为 17,
并且配置相应的字段定义:
定义 必选 描述(映射关系)
PatientUrl 是 服务地址,如 localhost
PatientAccount 是 数据库服务器访问账号
PatientPassword 是 数据库服务器访问密码
PatientTable 是 患者信息查询表/视图名称
SearchID 是 索引列
SearchMode 否 患者类型字段(限定 int 类型,其中 0.门诊 1.体检 2.住院)
PatientID 是 患者 ID 列名称
PatientName 是 患者姓名列名称
PatientSex 是 患者性别列名称,为必须字段
PatientBirth 是 患者生日/年龄列名称,为必须字段
PatientMobile 否 患者手机号
PatientCard 否 患者身份证号、医保卡号等
PatientAddress 否 患者住址
PatientProject 否 患者检查项目
PatientMark 否 患者既往史
程序配置示例:
2.5 HTTP 协议接口
http 方式接入可获取设备使用方服务系统存储的用户信息用于拍摄也可以根据配置需要上传红外采集数据。需要将
“Interface” 配置为 9, 并且配置相应的接口字段:
2.5.1 获取患者信息接口(红外软件主动查询,需对接方提供 HTTP API 接口):
请求方式 : POST / GET
请求格式:FORM / JSON / XML
请求参数:
配置字段 必须 字段表述 配置示例
PatientUrl 是 接口地址 http://192.168.1.188/patient/
SearchID 是 检索 id 名称 userid
SearchMode type
PatientAccountName 患者类型字段
限定整数类型 user
否 0.门诊
1.体检
2.住院
否 访问账号字段
PatientAccount 否 账号 admin
PatientPasswordName 否 访问密码字段 pswd
PatientPassword 否 密码 123456
PatientTokenName 否 访问密钥字段 token
PatientToken 否 密钥 BCCSDSDALKHKHKDASG...
程序配置示例:
请求示例:
GET ->
http://192.168.1.188/patient/?
user=admin&pswd=123456&token=BCCSDSDALKDASG...&type=0&userid=0001
POST(PARAMS) -> http://192.168.1.188/patient/
requestHeaders:
Accept=*/*
Method=POST
Content-Type=application/x-www-form-urlencoded
requestBody:
user=admin&pswd=123456&token=BCCSDSDALKDASG...&type=0&userid=0001
POST(JSON) ->http://192.168.1.188/patient/
requestHeaders:
Accept=*/*
Method=POST
Content-Type=application/json
requestBody:
{
"user":"admin",
"pswd":"123456",
"token":"BCCSDSDALKDASG...",
"type":"0",
"userid":"0001"
}
POST(FORM-DATA) ->http://192.168.1.188/patient/
requestHeaders:
Accept=*/*
Method=POST
Content-Type=multipart/form-data; boundary=---------
012454666665544774
requestBody:
-----------012454666665544774
Content-Disposition: form-data; name="user"
admin
-----------012454666665544774
Content-Disposition: form-data; name="pswd"
123456
-----------012454666665544774
Content-Disposition: form-data; name="token"
BCCSDSDALKDASG...
-----------012454666665544774
Content-Disposition: form-data; name="type"
0
-----------012454666665544774
Content-Disposition: form-data; name="userid"
0001
-----------012454666665544774--
返回参数: 必须 描述 示例
配置字段
数据根,使用二级
PatientRoot 否 结构时配置,一级
PatientID 结构请保持为空
PatientName
是 编号 id
是 姓名 name
PatientSex 是 性别 sex
PatientBirth
PatientIdentity 是 生日/年龄 birthday
PatientMobile
PatientAddress 否 身份证/贵宾卡号 identity
PatientMark
PatientProject 否 手机号 mobile
否 住址 address
否 既往史 history
否 检查项目 projects
返回示例:
JSON:
{
"id":"123",
"name":"张三",
"sex":"男",
"birthday":"1996-12-3",
"mobile":"13344445555",
"identity":"333222199612031752"
}
# 或 (需要配置 “数据根” PatientRoot=data)#
{
"code":"success",
"msg":"",
"data":{
"id":"123",
"name":"张三",
"sex":"男",
"birthday":"1996-12-3",
"mobile":"13344445555",
"identity":"333222199612031752"
}
}
XML:
<Response>
<id>123</id>
<name></name>
<sex>男</sex>
<birthday>1996-12-3</birthday>
<mobile>13344445555</mobile>
<identity>333222199612031752</identity>
</Response>
<!-- 或 (需要配置“数据根” PatientRoot=data) -->
<Response>
<code>success<code>
<msg></msg>
<data>
<id>123</id>
<name></name>
<sex>男</sex>
<birthday>1996-12-3</birthday>
<mobile>13344445555</mobile>
<identity>333222199612031752</identity>
</data>
</Response>
2.5.2 报告回传接口(由红外软件推送,需对接方提供 HTTP API 接口)
请求方式 : POST
请求格式:FORM / JSON / XML
请求参数:
接口配置字段 必须 字段表述 配置示例
ReportUrl 是 接口地址 http://192.168.1.188/report/
ReportAccountName 否 账号字段名 user
ReportAccount 否 接口密码 admin
ReportPasswordName 否 密码字段名 pswd
ReportPassword 否 接口密码 123456
ReportTokenName 否 密钥字段名 token
ReportToken 否 接口密钥 ADBDCC
ReportId 否 TMT 报告编码 reportid
ReportPatientId 否 患者编号 userid
ReportPatientName 否 姓名 name
ReportPatientMobile 否 手机号 mobile
ReportPatientCard 否 身份证 icard
ReportType 否 报告名称 report_name
ReportKeywords 否 评估结果 report_results
ReportFormat 请求格式
xml/json/form
ReportContentFormat 否 数据格式 pdf
ReportContent 是 报告数据 report_data
程序配置示例:
请求示例:
reqAucecsetpHte=a*d/e*rs:
MAectchepodt=P*/O*ST
MCoetnhtoednt=P-OTSyTpe:application/xml
Content-Type:application/json
requestBody:
POST(FORM) -> http://192.168.1.188/report/
req<uResqtuBeosdty>:
{ <user>admin</user>
requestHeaders:
<"pusewdr">1:"23a4dm56in</"p,swd>
Accept=*/*
<"tposwkedn">:A"D12B3DC45C<6/",token>
Method=POST
"<tusoekernid":>"0A00DB1D<C/uC"se, rid>
Content-Type:application/x-www-form-urlencoded
"<unsameer>id张"<:/"n0a0m0e1>",
"<nmaombei"l:e">1张3"2,14441414</mobile>
requestBody:
use<"rmr=oeapbdiomlriten_"&:np"as1mwe3d>2=1体14检2434报4154告61<&4/t"ro,ekpeonr=tA_DnBaDmCeC>&userid=0001&name=张
<"tryepeor>tp_dfn<a/met"yp:e">体检报告",
&mobi<"lrteey=p1oe3"r2t:1_"4rp4de4sf1"u4l,1t4s&>r<e/proerpto_rnta_mree=su体l检ts报>告
&type"<=rpedpfo&rrte_prdoeartstau_l>dDtashts"aa:="dDJ"h,JsdabdfJaJkdkbdffa<k/krdefport_data>
<Re"qrueepsotr>t_data":"DhsadJJdbfakkdf"
}
返回示例:提交成功应返回包含 success 的字符串,如:
{ "code":200, "result":"success" }
<Response><code>200</code><msg>success</msg></Response>
2.5.3 红外数据回传接口(由红外软件主动推送,需对接方提供 HTTP API 接口)
注:红外数据回传的是原始数据,仅供备份使用。
请求方式 : POST
请求格式:FORM / JSON / XML
请求参数:
接口配置字段 必须 字段表述 配置示例
InfraredUrl 是 接口地址 http://192.168.1.188/red_data/
InfraredKey 是 患者编号 userid
InfraredAccountName 否 账号字段名 user
InfraredAccount 否 访问账号 admin
InfraredPasswordName 否 密码字段名 pswd
InfraredPassword 否 访问密码 123456
InfraredTokenName 否 密钥字段名 token
InfraredToken 否 访问密钥 ADBDCC
InfraredDate 否 拍摄时间 time
InfraredPart 否 部位 part
InfraredIndex 否 图像序号 index
InfraredFormat 否 数据格式 gy
InfraredContent gy/temp data
是 图像数据
请求示例:
http://192.168.1.188:8096/red_data/?
user=admin&pswd=123456&token=ADBDCC&userid=0001&time=201908011312
14&part=1&index=1&data=ADDAFGGGS
返回示例:提交成功应返回包含 success 的字符串,如:
{ "result":"success" }
2.5.4 报告查询接口(对接方根据患者 id 查询报告)
Url http://server-host-ip:port/QueryReport/
Method
POST / GET 0: 直接返回报告文件 1: 返回结构
Params model 查询用户 id
patientId 返回格式 XML/JSON
请求: format
<Response>
<CODE>200</CODE>
<MSG>success</MSG>
<REPORT>
<ID>123456</ID>
<NAME>张三</NAME>
<SEX>男</SEX>
<BIRTH>1997-10-20</BIRTH>
<CARD>330001*****1542</CARD>
<MOBILE>133****1521</MOBILE>
<FORMAT>pdf</FORMAT>
<DOCTOR>王医生</DOCTOR>
<DATA>base64string</DATA>
</REPORT>
</Response>
返回字段说明:
名称 描述
CODE 返回代码
MSG 消息
REPORT 报告体
ID 患者 id
NAME 患者姓名
SEX 患者性别
BIRTH 出生年月
CARD 身份证/医保卡等
MOBILE 手机号
FORMAT 数据格式,model=1 有效,指定格式 pdf/xml/json
DOCTOR 评估医生
DATA 转化为 Base64String 的报告数据
2.6 Web Services 接口
Web Services 方式接入可获取贵方系统存储的用户信息用于拍摄也可以根据配置需要上传红外采集数据、报告。
需要将“Interface” 配置为 15, 并且配置相应的接口字段:
2.6.1 获取患者信息接口(红外软件主动查询,需对接方提供 WebService 服务)
字段名称 必须 字段表述
PatientUrl 是 服务地址,如 http://192.168.1.188:8080/services.asmx
PatientAccountName
PatientAccount 否 账号字段名称,示例 : user
否 接口访问账号,示例:admin
PatientPasswordName 否 密码字段名称,示例:pswd
PatientPassword 否 接口访问密码,示例:123456
PatientTokenName 否 密钥字段名,示例:token
PatientToken 否 接口访问密钥,示例:DAS 的 SFHASKJHDASDD....
PatientTable 是 查询接口函数(方法)名称,示例:QueryPatientInfo
SearchID 是 检索患者信息主键名
SearchMode
否 患者类型字段(限定 int 类型,其中 0.门诊 1.体检 2.住
返回参数: 院)
配置参数 必须 描述
PatientID 是 唯一患者编号
PatientName 是 患者姓名参数名
PatientSex 是 患者性别参数名(注:返回应为中文,男/女)
PatientBirth 是 患者生日/年龄参数名(yyyy-mm-dd / number)
PatientMobile 否 患者手机号参数名
PatientIdentity 否 患者身份证/卡号参数名
PatientAddress 否 患者常驻地址参数名
PatientMark 否 患者既往史参数名
PatientProject 否 患者检查项目参数名
程序配置示例:
2.6.2 报告回传接口(红外软件主动推送)
将 PDF(已转 Base64 字符串)报告接口上传至服务器,配置参数:
字段名称 必须 字段表述
ReportUrl 是 服务地址:如 http://192.168.1.188:8080/services.asmx
ReportAccountName 否 访问账号名,默认 account
ReportAccount 否 接口访问账号,如有请填写
ReportPasswordName 否 访问密码名,默认 password
ReportPassword 否 接口访问密码,如有请填写
ReportAccountToken 否 访问 token 名,默认 token
ReportToken 否 接口访问密钥,如有请填写
ReportId 是 患者编号
ReportPatientName 否 患者姓名参数名
ReportPatientMobile 否 患者手机号参数名
ReportPatientCard 否 患者身份证参数名
ReportTable 是 函数(方法)名称
ReportKeywords 否 报告数据关键字
ReportContent 是 报告数据:(非 json 转化为 Base64String)
ReportType 否 报告类型
ReportDate 否 报告上传时间
返回参数:包含 success /failed (不区分大小写) 的字符串(UTF-8 编码), 示例:
{"code":200, "msg":"success"}
2.6.3 红外数据回传接口(红外软件主动推送)
将红外数据上传至服务器接口,配置参数:
字段名称 必须 字段表述 示例
InfraredUrl 是 服务地址 http://192.168.1.188/services.asmx
InfraredAccountName 否 账号字段 user
InfraredAccount 否 接口访问账号 admin
InfraredPasswordName 否 密码字段 pswd
InfraredPassword 否 接口访问密码 123456
InfraredTokenName 否 密钥字段 token
InfraredToken 否 接口访问密钥 abcffasd
InfraredKey 是 患者编号 id
InfraredPatientName 否 姓名参数名 name
InfraredPatientMobile 否 手机号参数名 mobile
InfraredTable 是 接口函数名 uploadInfrared
InfraredColumn 是 数据 BASE64 data
InfraredIndex 否 图像编号 type
InfraredDate 否 图像上传时间 date
返回参数:包含 success /failed (不区分大小写) 的字符串(UTF-8 编码)
{"code":200, "msg":"success"}
2.6.4 提交候诊信息 患者类型:0 体检 1 门诊 2 住院
方法 UpdatePatient 患者 id, 体检号等
type
id
name 姓名
sex 性别
birthday 出生日期
mobile 手机号
参数 card 证件号(身份证号、医保卡号等)
nation 名族(实际没有使用)
address 居住地址
notes 备注信息(既往史、主诉等)
room 开单科室(实际没有使用)
doctor 开单医生(实际没有使用)
format 返回格式 xml/json
{ "code":200, "msg":"success" }
返回 CODE 返回代码
MSG 消息
XML "mobile":"133****1521",
"format":"pdf",
"doctor":"王医生",
"data":"base64string"
}
}
<Response>
<CODE>200</CODE>
<MSG>success</MSG>
<REPORT>
<ID>123456</ID>
<NAME>张三</NAME>
<SEX>男</SEX>
<BIRTH>1997-10-20</BIRTH>
<CARD>330001*****1542</CARD>
<MOBILE>133****1521</MOBILE>
<FORMAT>pdf</FORMAT>
<DOCTOR>王医生</DOCTOR>
<DATA>base64string</DATA>
</REPORT>
</Response>
附件一 接口配置文档
需配置 DateCenter\web.config 的 appSettings 节,如下:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<clear/>
<!-- 配置本地缓存 -->
<!-- 日志保存目录 -->
<add key="LogDirectory" value="D:\LOG" />
<!-- 报告缓存目录 -->
<add key="ReportCache" value="D:\Report\PDF\Temp" />
<!-- 报告保存目录 -->
<add key="ReportDirectory" value="D:\Report\PDF" />
<!-- 报告内网访问 Url 根 -->
<add key="ReportHost" value="http://192.168.10.100" />
<!-- 基础配置 -->
<!-- 接口类型 -->
<add key="Interface" value="0"/>
<!-- 账号对应参数名 -->
<add key="AccountName" value="account"/>
<!-- 账号 -->
<add key="Account" value=""/>
<!-- 密码对应参数名 -->
<add key="PasswordName" value="password"/>
<!-- 密码 -->
<add key="Password" value=""/>
<!-- 密钥对应参数名 -->
<add key="TokenName" value="token"/>
<!-- 密钥(或数据库名) -->
<add key="Token" value=""/>
<!-- 设备号对应参数名 -->
<add key="DeviceName" value="sn"/>
<!-- 设备号 -->
<add key="DeviceID" value=""/>
<!-- 基站号对应参数名 -->
<add key="StationName" value="station"/>
附件二 报告结构(JSON)仅供参考
{
"userinfos":{
"id":"0001",
"name":"Willion",
"sex":"男",
"birthday":"1952/12/4 0:00:00",
"projects":"全身检查(非必须)",
"notes":"既往史(非必须)",
"mobile":"手机号(非必须)",
"address":"住址(非必须)",
"date":"2017/5/7 15:06:27",
"card":"身份证/会员卡号(非必须)",
"treat":"治疗史(非必须)",
"sessions":1,
"deviceid":"设备 ID(非必须)",
"station":"工作站号(非必须)"
},
"ImageInfos":[
{
"name":"2017_5_7_15_6_27.gy",
"type":"JPEG",
"width":288,
"height":384,
"bodyavg":34.07,
"group":0,
"description":"图片描述",
"tempinfos":[
{
"type":2,
"title":"",
"sp":{"x":112, "y":240},
"ep":{"x":179, "y":301},
"min":28.33,
"max":28.33,
"avg":28.33,
"ROI":0,
"points":[],
"tsd":"",
附件三 报告结构(XML)仅供参考
<?xml version="1.0" encoding="utf-8" ?>
<root>
<userinfos
id="0001"
name="Willion"
sex="男"
birthday="1952/12/4 0:00:00"
projects="全身检查(非必须)"
notes="既往史(非必须)"
mobile="手机号(非必须)"
address="住址(非必须)"
date="2017/5/7 15:06:27"
card="身份证/会员卡号(非必须)"
treat="治疗史(非必须)"
sessions="1"
deviceid="设备 ID(非必须)"
station="工作站号(非必须)"
/>
<imageinfos>
<image name="2017_5_7_15_6_27.gy" type="JPEG" width="288"
height="384" bodyavg="34.07" group="0" >
<description>图片描述</description>
<tempinfos>
<area type="2" title="" sp="(112,240)" ep="(179,301)"
min="28.33" max="28.33" avg="28.33" ROI="0"
points="(1,1)(1,3)(3,3)(3,1)" tsd="" count="" />
<area type="5" title="" sp="(5,0)" ep="(0,0)" min="33.70"
max="35.38" avg="34.58" ROI="0"
points="(125,194)(117,209)(117,228)(130,234)" tsd="" count="" />
</tempinfos>
<data>/9j/4AAQSkZJRgABAQYAAD/2wBDAAgGBgcGBQgH…</data>
</image>
<image name="2017_5_7_15_9_27.gy" type="JPEG" width="288"
height="384" bodyavg="34.07" group="1" >
<description>图片描述</description>
<tempinfos>
<area type="2" title="" sp="(112,240)" ep="(179,301)"
min="28.33" max="28.33" avg="28.33" ROI="0" points="" tsd=""

@ -0,0 +1,49 @@
USE [master]
GO
/****** Object: LinkedServer [his] Script Date: 2023-07-21 15:11:15 ******/
EXEC master.dbo.sp_addlinkedserver @server = N'his', @srvproduct=N'his', @provider=N'SQLNCLI', @datasrc=N'192.168.12.188'
/* For security reasons the linked server remote logins password is changed with ######## */
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'his',@useself=N'False',@locallogin=NULL,@rmtuser=N'XBDLISUser',@rmtpassword='BlueFlag.Lis!@#'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'collation compatible', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'data access', @optvalue=N'true'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'dist', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'pub', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'rpc', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'rpc out', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'sub', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'connect timeout', @optvalue=N'0'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'collation name', @optvalue=null
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'lazy schema validation', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'query timeout', @optvalue=N'0'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'use remote collation', @optvalue=N'true'
GO
EXEC master.dbo.sp_serveroption @server=N'his', @optname=N'remote proc transaction promotion', @optvalue=N'true'
GO

@ -0,0 +1,49 @@
USE [master]
GO
/****** Object: LinkedServer [pacs] Script Date: 2023-07-21 15:11:15 ******/
EXEC master.dbo.sp_addlinkedserver @server = N'pacs', @srvproduct=N'pacs', @provider=N'SQLNCLI', @datasrc=N'172.172.100.11'
/* For security reasons the linked server remote logins password is changed with ######## */
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'pacs',@useself=N'False',@locallogin=NULL,@rmtuser=N'XBDLISUser',@rmtpassword='BlueFlag.Lis!@#'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'collation compatible', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'data access', @optvalue=N'true'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'dist', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'pub', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'rpc', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'rpc out', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'sub', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'connect timeout', @optvalue=N'0'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'collation name', @optvalue=null
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'lazy schema validation', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'query timeout', @optvalue=N'0'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'use remote collation', @optvalue=N'true'
GO
EXEC master.dbo.sp_serveroption @server=N'pacs', @optname=N'remote proc transaction promotion', @optvalue=N'true'
GO

@ -0,0 +1,47 @@
USE [master]
GO
-- vw_checked_labresult
EXEC master.dbo.sp_addlinkedserver @server = N'lis', @srvproduct=N'lis', @provider=N'SQLNCLI', @datasrc=N'192.168.11.37'
EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'lis',@useself=N'False',@locallogin=NULL,@rmtuser=N'xbd',@rmtpassword='xbd'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'collation compatible', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'data access', @optvalue=N'true'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'dist', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'pub', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'rpc', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'rpc out', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'sub', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'connect timeout', @optvalue=N'0'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'collation name', @optvalue=null
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'lazy schema validation', @optvalue=N'false'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'query timeout', @optvalue=N'0'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'use remote collation', @optvalue=N'true'
GO
EXEC master.dbo.sp_serveroption @server=N'lis', @optname=N'remote proc transaction promotion', @optvalue=N'true'
GO

@ -0,0 +1,36 @@
USE [peisdb]
GO
/****** Object: UserDefinedDataType [dbo].[Boolean] Script Date: 2023-07-21 15:04:14 ******/
CREATE TYPE [dbo].[Boolean] FROM [bit] NULL
GO
/****** Object: UserDefinedDataType [dbo].[PYM] Script Date: 2023-07-21 15:04:29 ******/
CREATE TYPE [dbo].[PYM] FROM [varchar](32) NULL
GO
/****** Object: UserDefinedDataType [dbo].[编号] Script Date: 2023-07-21 15:04:44 ******/
CREATE TYPE [dbo].[编号] FROM [bigint] NULL
GO
/****** Object: UserDefinedDataType [dbo].[检验结果] Script Date: 2023-07-21 15:05:06 ******/
CREATE TYPE [dbo].[检验结果] FROM [decimal](12, 4) NULL
GO
/****** Object: UserDefinedDataType [dbo].[金额] Script Date: 2023-07-21 15:05:18 ******/
CREATE TYPE [dbo].[金额] FROM [decimal](18, 2) NULL
GO
/****** Object: UserDefinedDataType [dbo].[人员代码] Script Date: 2023-07-21 15:05:33 ******/
CREATE TYPE [dbo].[人员代码] FROM [varchar](10) NULL
GO
/****** Object: UserDefinedDataType [dbo].[人员名称] Script Date: 2023-07-21 15:05:46 ******/
CREATE TYPE [dbo].[人员名称] FROM [varchar](20) NULL
GO
/****** Object: UserDefinedDataType [dbo].[时间] Script Date: 2023-07-21 15:05:57 ******/
CREATE TYPE [dbo].[时间] FROM [datetime] NULL
GO

@ -0,0 +1,111 @@
INSERT INTO Exam_Result(
[DID]
, [DeptName]
, [FeeItemName]
, [RptItemName]
, [TextResult]
, [Unit]
, [Range]
, [UnusualFlag]
, [ItemClass]
, [RptItemCode]
, [Checker]
, [Reporter]
, [ReportTime])
select distinct * from (
-- 普通项目
SELECT -- TOP 20
X.EnrollmentId AS [DID]
, X.DepartmentName AS [DeptName]
, X.Name AS [FeeItemName]
, Y.Name AS [RptItemName]
, Y.TextValue AS [TextResult]
, Y.ValueUnit AS [Unit]
, [Range]=NULL
, [UnusualFlag]=NULL
, CASE X.ItemType WHEN 1 THEN '普通' ELSE convert(varchar, X.ItemType,10) END AS [ItemClass]
, [RptItemCode]=NULL
, [Checker]=NULL
, [Reporter]=NULL
, [ReportTime]=NULL
FROM
PEIS.DBO.EnrollmentFeeItem X
JOIN PEIS.DBO.EnrollmentExamItem Y ON X.Id = Y.EnrollmentFeeItemId
WHERE
X.SendOperDate IS NOT NULL AND X.RemoveOperDate IS NULL AND X.GiveUpOperDate IS NULL
AND Y.RemoveOperDate IS NULL AND Y.GiveUpOperDate IS NULL
-- 检验项目
UNION
SELECT -- TOP 20
A.EnrollmentId AS [DID]
,A.DepartmentName AS [DeptName]
,A.Name AS [FeeItemName]
,B.Name AS [RptItemName]
,B.TextValue AS [TextResult]
,B.ValueUnit AS [Unit]
,A.ItemType AS [Range]
,B.LisFlag AS [UnusualFlag]
, CASE a.ItemType WHEN 3 THEN '检验' ELSE convert(varchar, a.ItemType,10) END AS [ItemClass]
,B.LisCode AS [RptItemCode]
, [Checker]=NULL
,B.LisVerifyOperName AS [Reporter]
,B.LisVerifyOperDate AS [ReportTime]
FROM
PEIS.DBO.EnrollmentApplicationSheetFeeItem A
JOIN PEIS.DBO.EnrollmentExamItem B ON A.Id = B.EnrollmentApplicationSheetFeeItemId
WHERE
A.SendOperDate IS NOT NULL AND A.RemoveOperDate IS NULL AND A.GiveUpOperDate IS NULL
AND B.RemoveOperDate IS NULL AND B.GiveUpOperDate IS NULL
-- 检查项目
UNION
SELECT -- TOP 20
A.EnrollmentId AS [DID]
,A.DepartmentName AS [DeptName]
,B.Name AS [FeeItemName]
,A.NAME AS [RptItemName]
,A.TextValue AS [TextResult]
, [Unit]=NULL
, [Range]=NULL
, [UnusualFlag]=NULL
, [ItemClass]='检查'
, [RptItemCode]=NULL
, [Checker]=NULL
,A.PacsVerifyOperName [Reporter]
,A.PacsVerifyOperDate AS [ReportTime]
FROM
PEIS.DBO.EnrollmentApplicationSheet A
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheetFeeItem B ON A.ID= B.EnrollmentApplicationSheetId
WHERE
A.TextValue IS NOT NULL AND A.RemoveOperDate IS NULL AND B.RemoveOperDate IS NULL
) T ORDER BY DID,DeptName,FeeItemName
-- 更新科室code
UPDATE EXAM_PART SET DEPTCODE=T.HISCODE FROM
(
SELECT Name ,HISCode FROM DICT_DEPT) T
WHERE T.NAME=EXAM_PART.DeptName AND EXAM_PART.DeptCode=0141
-- 更新fid,rid,sid
UPDATE Exam_Result SET FID=T.FID FROM
(SELECT ID AS FID, FeeItemName FROM vi_FeeItem)T WHERE Exam_Result.FeeItemName=T.FeeItemName
UPDATE Exam_Result SET rid=T.RID FROM
(SELECT A.ID AS FID,A.FeeItemName,B.ID AS RID,B.RptItemName FROM vi_FeeItem a
left join Dict_ReportItem b ON A.ID=B.FID )T WHERE Exam_Result.fid=T.fid AND Exam_Result.RptItemName=T.RptItemName
-- PID
UPDATE Exam_Result
SET PID = A.ID
FROM Exam_Part A
WHERE A.EID = Exam_Result.DID
AND A.DeptName = Exam_Result.DeptName;
-- 收费项目
UPDATE Enrollment_FeeItem SET FID=T.FID FROM
(SELECT ID AS FID, FeeItemName FROM vi_FeeItem)T WHERE Enrollment_FeeItem.FeeItemName=T.FeeItemName

@ -0,0 +1,15 @@
一、赋予用户所有权限
GRANT ALL ON test_table TO [user]
二、赋予用户部分权限
GRANT SELECT,INSERT,UPDATE,DELETE ON test_table TO [user]
三、分配存储过程权限
GRANT EXECUTE ON [Procedure_Name] TO [user]
GRANT SELECT ON ApplicationCheckCode TO [XBDLISUser]
GRANT SELECT ON ApplicationSheet TO [XBDLISUser]
GRANT SELECT ON KSCODE TO [XBDLISUser]
GRANT SELECT ON YSCODE TO [XBDLISUser]
GRANT SELECT ON Int_V_YSCode TO [XBDLISUser]

@ -0,0 +1,180 @@
[1.]
TRUNCATE TABLE Dict_FeeItem
SET IDENTITY_INSERT dbo.Dict_FeeItem ON
INSERT INTO Dict_FeeItem(ID, FeeItemCode, SpellCode, Unit)
SELECT
A.Id
, A.HISCheckCode AS FeeItemCode,
A.PYM AS SpellCode,
A.UnitName AS Unit
FROM
peis.dbo.FeeItem A
-- 同步keyno
[2.]
UPDATE Dict_FeeItem SET KeyNo=B.KEYNO
FROM Dict_FeeItem A
LEFT JOIN vi_HisFeeItem B ON A.FeeItemCode=B.FeeItemCode
WHERE A.FeeItemCode<>'' AND B. DeptCode in (SELECT DISTINCT HISCODE FROM peis.dbo.[Department] WHERE StopOperDate IS NULL)
SET IDENTITY_INSERT [dbo].[Dict_FeeItem] OFF
-- HIS未开展项目
[3.]
TRUNCATE TABLE Dict_PeisFeeItem
SET IDENTITY_INSERT [dbo].[Dict_PeisFeeItem] OFF
INSERT INTO [Dict_PeisFeeItem]([ID], [FeeItemCode], [FeeItemName], [SpellCode], [Price], [DeptName], [UnitName], [ItemClass], [Unit] )
SELECT
A.[ID]
, A.HISCheckCode AS FeeItemCode
, A.Name AS [FeeItemName]
, A.PYM AS [SpellCode]
, A.CostPrice AS [Price]
, A.DepartmentName AS [DeptName]
, A.[UnitName]
, A.ItemType AS [ItemClass]
, A.[UnitName] AS [Unit]
FROM
peis.dbo.FeeItem A
left JOIN Dict_FeeItem B ON A.ID=B.ID
WHERE B.KeyNo IS NULL AND A.StopOperDate IS NULL
-- 更新FeeItemCode和keyno
[4.]
UPDATE Dict_PeisFeeItem SET FeeItemCode='F'+ CAST(ID as varchar) WHERE FeeItemCode IS NULL
UPDATE Dict_PeisFeeItem SET keyno ='T'+ CAST(ID as varchar)
UPDATE Dict_PeisFeeItem SET DeptCode = a. HISCode FROM Dict_Dept A WHERE Dict_PeisFeeItem.DeptName=A.Name
update Dict_FeeItem set FeeItemCode=A.FeeItemCode,keyno=A.keyno from Dict_PeisFeeItem A where A.ID=Dict_FeeItem.ID
[5.]
-- 查询重复收费项目
SELECT FeeItemCode,COUNT(FeeItemCode) FROM Dict_FeeItem GROUP BY FeeItemCode HAVING COUNT(FeeItemCode)>1
SELECT FeeItemName,COUNT(FeeItemName) FROM vi_FeeItem GROUP BY FeeItemName HAVING COUNT(FeeItemName)>1
[6.]
-- 删除重复收费项目
DELETE FROM Dict_FeeItem WHERE ID NOT IN ( SELECT MAX(ID) AS ID FROM Dict_FeeItem WHERE FeeItemCode IN (SELECT FeeItemCode FROM Dict_FeeItem GROUP BY FeeItemCode HAVING COUNT(FeeItemCode)>1) GROUP BY FeeItemCode ) AND FeeItemCode IN (SELECT FeeItemCode FROM Dict_FeeItem GROUP BY FeeItemCode HAVING COUNT(FeeItemCode)>1)
-- 套餐同步
[7.]
TRUNCATE TABLE Dict_Pack
SET IDENTITY_INSERT [dbo].[Dict_Pack] OFF
INSERT INTO Dict_Pack
(ID, Name, SpellCode, Sex, Marriage, Seq)
SELECT
Id,
NAME ,
PYM AS SpellCode,
SuitableGender AS Sex,
SuitableMarriage AS Marriage,
SortNo AS Seq
FROM
PEIS.dbo.ExamPack WHERE StopOperDate IS NULL
-- 套餐同步后同步对应的收费项目
[8.]
TRUNCATE TABLE Dict_PackToFeeItem
SET IDENTITY_INSERT [dbo].[Dict_PackToFeeItem] OFF
--
INSERT INTO [Dict_PackToFeeItem]([ID], [PID], [FID], [Seq], [CreateTime], [CreatorCode], [Creator])
SELECT A.[Id], A.[ExamPackId] AS PID, C.ID AS FID, A.[SortNo] AS SEQ,CreateTime= '2024-06-15', CreatorCode='0513',Creator= '赵翠回'
FROM PEIS. [dbo].[ExamPackFeeItem] A
LEFT JOIN PEIS. [dbo].FEEITEM B ON A.FeeItemId=B.ID
LEFT JOIN vi_FeeItem C ON B.Name=C.FeeItemName AND B.HISCheckCode = C.FeeItemCode
WHERE C.ID IS NOT NULL
UNION
SELECT A.[Id], A.[ExamPackId] AS PID, C.ID AS FID, A.[SortNo] AS SEQ,CreateTime= '2024-06-15', CreatorCode='0513',Creator= '赵翠回'
FROM PEIS. [dbo].[ExamPackFeeItem] A
LEFT JOIN PEIS. [dbo].FEEITEM B ON A.FeeItemId=B.ID
LEFT JOIN vi_FeeItem C ON B.Name=C.FeeItemName
WHERE C.FeeItemCode LIKE 'F%'
-- 套餐中的收费项目无重复
-- 设置套餐的报告项目
[9.]
TRUNCATE TABLE Dict_ReportItem
INSERT INTO [Dict_ReportItem]( [RptItemName], [SpellCode], [Unit], [RptItemCode],seq,FID )
SELECT DISTINCT * FROM (
SELECT DISTINCT
B.NAME AS RptItemName,
B.PYM AS SpellCode,
B.ValueUnit AS Unit,
B.LisCode AS RptItemCode,
A.SortNo AS seq,
D.ID AS FID
FROM
PEIS.dbo.feeitemexamitem A
LEFT JOIN PEIS.dbo.examitem B ON A.ExamItemId= B.id
LEFT JOIN PEIS.dbo.FEEITEM C ON A.FeeItemId=C.ID
LEFT JOIN vi_FeeItem D ON C.Name=D.FeeItemName AND C.HISCheckCode = D.FeeItemCode
WHERE B.StopOperDate IS NULL AND C.StopOperDate IS NULL AND D.ID IS NOT NULL
UNION
SELECT DISTINCT
B.NAME AS RptItemName,
B.PYM AS SpellCode,
B.ValueUnit AS Unit,
B.LisCode AS RptItemCode,
SortNo AS seq,
D.ID AS FID
FROM
PEIS.dbo.feeitemexamitem A
LEFT JOIN PEIS.dbo.examitem B ON A.ExamItemId= B.id
LEFT JOIN PEIS.dbo.FEEITEM C ON A.FeeItemId=C.ID
LEFT JOIN vi_FeeItem D ON C.Name=D.FeeItemName
WHERE B.StopOperDate IS NULL AND C.StopOperDate IS NULL AND D.ID IS NOT NULL AND D.FeeItemCode LIKE 'F%'
) TT ORDER BY FID,Seq
-- 体征词
[10.]
TRUNCATE TABLE Dict_Sign
SET IDENTITY_INSERT [dbo].[Dict_Sign] ON
INSERT INTO Dict_Sign(RID, SignName, SpellCode, Description, SevereLevel, IsDefault, IsSummary, Group1, Group2, Seq, CID)
SELECT DISTINCT
A.ID AS RID,
C.NAME AS SignName,
C.PYM AS SpellCode,
C.SignDetail AS Description,
C.DiseaseLevel AS SevereLevel,
C.IsDefaultOption AS IsDefault,
C.SummaryInclude AS IsSummary,
C.FirstGroupNo AS Group1,
C.SecondGroupNo AS Group2,
C.SortNo AS Seq ,
C.ConclusionId AS CID
FROM
Dict_ReportItem A
LEFT JOIN PEIS.DBO.ExamItem B ON B.Name=A.RptItemName
LEFT JOIN PEIS.dbo.ExamSign C ON C.ExamItemId=B.ID
WHERE C.NAME<>'' AND B.STOPOPERDATE IS NULL AND C.STOPOPERDATE IS NULL
ORDER BY A.ID,Seq
SET IDENTITY_INSERT [dbo].[Dict_Sign] OFF
[11.]
-- 小于18.5为消瘦,体重指数位于24-27.9为超重,体重指数等于或大于28%为肥胖
-- 体重指数30-34.9%为轻度肥胖,体重指数35-39.9%为中度肥胖,体重指数≥40%为重度肥胖
Round((10000*[12] / ([11] *[11])), 1)
-- ([VALUE] < 18.5 ) ? ( 69 ) : (([VALUE] >= 18.5 && [VALUE] < 24 ) ? 68 : (([VALUE] >= 24 && [VALUE] < 28 ) ? 70 : (([VALUE] >= 28 && [VALUE] < 30 ) ? 71 : (([VALUE] >= 30 && [VALUE] < 35 ) ? 72 : (([VALUE] >= 35 && [VALUE] < 40 ) ? 73 : ( ( [VALUE] >= 40 ) ? 74 : 69 ) )))))
( [ VALUE ] < 18.5 ) ? ( 69 ) : (
( [ VALUE ] >= 18.5 && [ VALUE ] < 24 ) ? 68 : (
( [ VALUE ] >= 24 && [ VALUE ] < 28 ) ? 70 : (
( [ VALUE ] >= 28 && [ VALUE ] < 30 ) ? 71 : (
( [ VALUE ] >= 30 && [ VALUE ] < 35 ) ? 72 : (
( [ VALUE ] >= 35 && [ VALUE ] < 40 ) ? 73 : ( ( [ VALUE ] >= 40 ) ? 74 : 69 )
) ) ) ) )
UPDATE [Dict_ReportItem] SET
[ValueFormat] = 'Round((10000*[12] / ([11] *[11])), 1)'
, [SignFormat] = '([VALUE] < 18.5 ) ? ( 69 ) : (([VALUE] >= 18.5 && [VALUE] < 24 ) ? 68 : (([VALUE] >= 24 && [VALUE] < 28 ) ? 70 : (([VALUE] >= 28 && [VALUE] < 30 ) ? 71 : (([VALUE] >= 30 && [VALUE] < 35 ) ? 72 : (([VALUE] >= 35 && [VALUE] < 40 ) ? 73 : ( ( [VALUE] >= 40 ) ? 74 : 69 ) )))))'
where RptItemName ='体重指数'

File diff suppressed because it is too large Load Diff

@ -0,0 +1,310 @@
/*
Navicat Premium Data Transfer
Source Server : 192.168.12.188
Source Server Type : SQL Server
Source Server Version : 10501600
Source Host : 192.168.12.188:1433
Source Catalog : hisdata
Source Schema : dbo
Target Server Type : SQL Server
Target Server Version : 10501600
File Encoding : 65001
Date: 27/07/2023 17:04:39
*/
-- ----------------------------
-- Table structure for ApplicationSheet
-- ----------------------------
IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[dbo].[ApplicationSheet]') AND type IN ('U'))
DROP TABLE [dbo].[ApplicationSheet]
GO
CREATE TABLE [dbo].[ApplicationSheet] (
[ApplicationCode] int NOT NULL,
[ApplicationName] char(40) COLLATE Chinese_PRC_CI_AS NOT NULL,
[ApplicationType] int NOT NULL,
[SampleType] char(40) COLLATE Chinese_PRC_CI_AS NULL,
[KSCode] char(4) COLLATE Chinese_PRC_CI_AS NOT NULL,
[KSName] varchar(20) COLLATE Chinese_PRC_CI_AS NULL,
[Address] varchar(100) COLLATE Chinese_PRC_CI_AS NULL,
[OperName] char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,
[DelDate] datetime NULL,
[DelOper] char(20) COLLATE Chinese_PRC_CI_AS NULL,
[TreeName] char(40) COLLATE Chinese_PRC_CI_AS NULL,
[TreeKeyNo] numeric(18) NOT NULL,
[TreeLevel] int NULL,
[JZFlag] int NULL,
[UseFlag] int NULL,
[PrivateFlag] int NULL,
[ParentTreeKeyNo] numeric(18) NULL,
[PrnGroupSheetFlag] int NULL,
[Note_Title] varchar(60) COLLATE Chinese_PRC_CI_AS NULL,
[Note] varchar(2048) COLLATE Chinese_PRC_CI_AS NULL,
[FilterFlag] int NULL,
[ApplicationSortID] int NULL,
[PriceFlag] int NULL,
[TreeKeyNoSortID] numeric(18) NULL,
[UseKSCode] varchar(256) COLLATE Chinese_PRC_CI_AS NULL
)
GO
ALTER TABLE [dbo].[ApplicationSheet] SET (LOCK_ESCALATION = TABLE)
GO
-- ----------------------------
-- Records of [ApplicationSheet]
-- ----------------------------
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'1', N'彩色多普勒常规检查申请单 ', N'1', NULL, N'3205', N'B超室', N'医技楼3楼 ', N'系统维护员 ', NULL, NULL, N'彩色多普勒常规检查申请单 ', N'16295517', N'0', N'1', N'2', NULL, N'0', NULL, N'', N' ', NULL, N'1', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'2', N'彩色多普勒浅表器官检查申请单 ', N'1', NULL, N'3205', N'B超室', N'医技楼3楼 ', N'系统维护员 ', NULL, NULL, N'彩色多普勒浅表器官检查申请单 ', N'16295553', N'0', N'1', N'2', NULL, N'1', NULL, N'', N' ', NULL, N'2', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'3', N'彩色多普勒心脏检查申请单 ', N'1', NULL, N'3205', N'B超室', N'医技楼3楼 ', N'系统维护员 ', NULL, NULL, N'彩色多普勒心脏检查申请单 ', N'16295554', N'0', N'1', N'2', NULL, N'2', NULL, N'', N' ', NULL, N'3', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'4', N'彩色多普勒产科检查申请单 ', N'1', NULL, N'3205', N'B超室', N'医技楼3楼 ', N'系统维护员 ', NULL, NULL, N'彩色多普勒产科检查申请单 ', N'16295556', N'0', N'1', N'2', NULL, N'3', NULL, N'', N' ', NULL, N'4', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'5', N'生化检验申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'生化检验申请单 ', N'16295581', N'0', N'1', N'2', NULL, N'0', NULL, N'', N' ', NULL, N'5', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'6', N'免疫检验申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'免疫检验申请单 ', N'16295582', N'0', N'1', N'2', NULL, N'1', NULL, N'', N' ', NULL, N'6', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'7', N'化学发光检验申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'化学发光检验申请单 ', N'16295583', N'0', N'1', N'2', NULL, N'2', NULL, N'', N' ', NULL, N'7', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'8', N'血液临检申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'血液临检申请单 ', N'16295584', N'0', N'1', N'2', NULL, N'3', NULL, N'', N' ', NULL, N'8', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'9', N'尿液临检申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'尿液临检申请单 ', N'16295585', N'0', N'1', N'2', NULL, N'4', NULL, N'', N' ', NULL, N'9', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'10', N'粪便临检申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'粪便临检申请单 ', N'16295586', N'0', N'1', N'2', NULL, N'5', NULL, N'', N' ', NULL, N'10', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'11', N'体液检验申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'体液检验申请单 ', N'16295616', N'0', N'1', N'2', NULL, N'6', NULL, N'', N' ', NULL, N'11', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'12', N'心电图检查申请单 ', N'1', NULL, N'3205', N'B超室', N' ', N'系统维护员 ', N'2021-10-28 17:34:28.633', N'系统维护员 ', N'心电图检查申请单 ', N'16295634', N'0', N'1', N'2', NULL, N'4', NULL, N'', N'', NULL, N'12', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N'医技楼1楼 ', N'系统维护员 ', NULL, NULL, N'DR检查申请单 ', N'16295637', N'0', N'1', N'2', NULL, N'0', NULL, N'', N' ', NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 17:27:24.427', N'系统维护员 ', N'颅脑及耳区 ', N'16295638', N'1', N'1', N'2', NULL, N'1', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 17:17:26.213', N'系统维护员 ', N'眶区及上颌骨区 ', N'16295639', N'2', N'1', N'2', NULL, N'2', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', NULL, NULL, N'头颈部 ', N'16295640', N'1', N'1', N'2', NULL, N'1', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 17:27:37.947', N'系统维护员 ', N'口腔及下颌骨区 ', N'16295641', N'1', N'1', N'2', NULL, N'2', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', NULL, NULL, N'胸腹盆部 ', N'16295642', N'1', N'1', N'2', NULL, N'2', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', NULL, NULL, N'椎体 ', N'16295643', N'1', N'1', N'2', NULL, N'3', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', NULL, NULL, N'上肢 ', N'16295644', N'1', N'1', N'2', NULL, N'4', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', NULL, NULL, N'下肢 ', N'16295645', N'1', N'1', N'2', NULL, N'5', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 18:45:14.223', N'系统维护员 ', N'CT检查申请单 ', N'16295646', N'0', N'1', N'2', NULL, N'7', NULL, N'', N'', NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 18:43:05.777', N'系统维护员 ', N'头颈部 ', N'16295647', N'1', N'1', N'2', NULL, N'8', NULL, NULL, NULL, NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 17:28:49.483', N'系统维护员 ', N'眶区及上颌骨区 ', N'16295648', N'1', N'1', N'2', NULL, N'8', NULL, NULL, NULL, NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 17:28:57.533', N'系统维护员 ', N'口腔及下颌骨区 ', N'16295649', N'1', N'1', N'2', NULL, N'8', NULL, NULL, NULL, NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 18:43:08.020', N'系统维护员 ', N'胸腹部 ', N'16295650', N'1', N'1', N'2', NULL, N'8', NULL, NULL, NULL, NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 18:43:09.560', N'系统维护员 ', N'椎体 ', N'16295651', N'1', N'1', N'2', NULL, N'8', NULL, NULL, NULL, NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 18:43:10.973', N'系统维护员 ', N'上肢 ', N'16295652', N'1', N'1', N'2', NULL, N'8', NULL, NULL, NULL, NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 18:43:12.700', N'系统维护员 ', N'下肢 ', N'16295653', N'1', N'1', N'2', NULL, N'8', NULL, NULL, NULL, NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'14', N'CT检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 18:45:12.120', N'系统维护员 ', N'血管 ', N'16295654', N'1', N'1', N'2', NULL, N'8', NULL, NULL, NULL, NULL, N'14', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'15', N'X光检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', N'2021-10-26 17:22:13.300', N'系统维护员 ', N'X光检查申请单 ', N'16295655', N'0', N'1', N'2', NULL, N'17', NULL, N'', N'', NULL, N'15', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'13', N'DR检查申请单 ', N'1', NULL, N'3201', N'放射科', N' ', N'系统维护员 ', NULL, NULL, N'其他 ', N'16295656', N'1', N'1', N'2', NULL, N'6', NULL, NULL, NULL, NULL, N'13', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'16', N'CT检查申请单 ', N'1', NULL, N'3202', N'CT室', N'医技楼1楼 ', N'系统维护员 ', NULL, NULL, N'CT检查申请单 ', N'16295685', N'0', N'1', N'2', NULL, N'0', NULL, N'', N' ', NULL, N'16', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'16', N'CT检查申请单 ', N'1', NULL, N'3202', N'CT室', N' ', N'系统维护员 ', NULL, NULL, N'头颈部 ', N'16295686', N'1', N'1', N'2', NULL, N'1', NULL, NULL, NULL, NULL, N'16', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'16', N'CT检查申请单 ', N'1', NULL, N'3202', N'CT室', N' ', N'系统维护员 ', NULL, NULL, N'胸腹盆部 ', N'16295687', N'1', N'1', N'2', NULL, N'2', NULL, NULL, NULL, NULL, N'16', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'16', N'CT检查申请单 ', N'1', NULL, N'3202', N'CT室', N' ', N'系统维护员 ', NULL, NULL, N'椎体 ', N'16295688', N'1', N'1', N'2', NULL, N'3', NULL, NULL, NULL, NULL, N'16', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'16', N'CT检查申请单 ', N'1', NULL, N'3202', N'CT室', N' ', N'系统维护员 ', NULL, NULL, N'上肢 ', N'16295689', N'1', N'1', N'2', NULL, N'4', NULL, NULL, NULL, NULL, N'16', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'16', N'CT检查申请单 ', N'1', NULL, N'3202', N'CT室', N' ', N'系统维护员 ', NULL, NULL, N'下肢 ', N'16295690', N'1', N'1', N'2', NULL, N'5', NULL, NULL, NULL, NULL, N'16', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'16', N'CT检查申请单 ', N'1', NULL, N'3202', N'CT室', N' ', N'系统维护员 ', NULL, NULL, N'血管 ', N'16295691', N'1', N'1', N'2', NULL, N'6', NULL, NULL, NULL, NULL, N'16', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'16', N'CT检查申请单 ', N'1', NULL, N'3202', N'CT室', N' ', N'系统维护员 ', NULL, NULL, N'其他 ', N'16295746', N'1', N'1', N'2', NULL, N'7', NULL, NULL, NULL, NULL, N'16', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'17', N'新型冠状病毒核酸检测申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'新型冠状病毒核酸检测申请单 ', N'16295761', N'0', N'1', N'2', NULL, N'7', NULL, N'', N' ', NULL, N'17', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'18', N'外送检验申请单 ', N'2', NULL, N'3002', N'三方检验', N' ', N'系统维护员 ', NULL, NULL, N'外送检验申请单 ', N'16295861', N'0', NULL, N'2', NULL, N'0', NULL, N'', N' ', NULL, N'18', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'19', N'荧光免疫申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'荧光免疫申请单 ', N'16295986', N'0', N'1', N'2', NULL, N'8', NULL, N'', N' ', NULL, N'19', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'20', N'产检申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'产检申请单 ', N'16295998', N'0', N'1', N'2', NULL, N'9', NULL, N'', N' ', NULL, N'20', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'21', N'婚前检查申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'婚前检查申请单 ', N'16296016', N'0', N'1', N'2', NULL, N'10', NULL, N'', N' ', NULL, N'21', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'22', N'优生优育申请单 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'优生优育申请单 ', N'16296020', N'0', N'1', N'2', NULL, N'11', NULL, N'', N' ', NULL, N'22', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'23', N'病理普通检查申请单 ', N'31', NULL, N'3101', N'病理科', N'医技楼3楼 ', N'系统维护员 ', NULL, NULL, N'病理普通检查申请单 ', N'16296101', N'0', N'1', N'2', NULL, N'0', NULL, N'', N' ', NULL, N'23', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'24', N'病理活检检查申请单 ', N'31', NULL, N'3101', N'病理科', N'医技楼3楼 ', N'系统维护员 ', NULL, NULL, N'病理活检检查申请单 ', N'16296102', N'0', N'1', N'2', NULL, N'1', NULL, N'', N' ', NULL, N'24', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'25', N'病理液基检查申请单 ', N'33', NULL, N'3101', N'病理科', N'医技楼3楼 ', N'系统维护员 ', NULL, NULL, N'病理液基检查申请单 ', N'16296103', N'0', N'1', N'2', NULL, N'2', NULL, N'', N' ', NULL, N'25', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'26', N'胃镜检查申请单 ', N'1', NULL, N'0301', N'内一科', N' ', N'系统维护员 ', NULL, NULL, N'胃镜检查申请单 ', N'16296281', N'0', NULL, N'2', NULL, N'1', NULL, N'', N' ', NULL, N'31', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'27', N'检查治疗单 ', N'1', NULL, N'0101', N'防保科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296289', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'27', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'28', N'检查治疗单 ', N'1', NULL, N'1201', N'口腔科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296298', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'28', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'29', N'检查治疗单 ', N'1', NULL, N'2002', N'发热门诊', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296304', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'29', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'30', N'检查治疗单 ', N'1', NULL, N'2001', N'急诊科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296310', N'0', NULL, NULL, NULL, N'0', NULL, N'', N' ', NULL, N'30', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'31', N'检查治疗单 ', N'1', NULL, N'0301', N'内一科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296316', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'26', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'32', N'检查治疗单 ', N'1', NULL, N'0401', N'外一科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296322', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'32', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'33', N'检查治疗单 ', N'1', NULL, N'0501', N'妇产科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296328', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'33', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'34', N'检查治疗单 ', N'1', NULL, N'0701', N'儿科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296334', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'34', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'35', N'检查治疗单 ', N'1', NULL, N'1101', N'眼耳鼻喉科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296340', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'35', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'36', N'检查治疗单 ', N'1', NULL, N'5001', N'中医科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16296346', N'0', NULL, NULL, N'1', N'0', NULL, N'', N' ', NULL, N'36', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'37', N'麻醉治疗单 ', N'1', NULL, N'2601', N'麻醉科', N' ', N'系统维护员 ', NULL, NULL, N'麻醉治疗单 ', N'16298641', N'0', NULL, N'2', NULL, N'0', NULL, N'', N'', NULL, N'37', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'38', N'检查治疗单 ', N'1', NULL, N'2601', N'麻醉科', N' ', N'邓明昊 ', NULL, NULL, N'检查治疗单 ', N'16299016', N'0', NULL, N'2', N'1', N'1', NULL, N'', N'', NULL, N'38', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'39', N'全院检查治疗单 ', N'1', NULL, N'0101', N'防保科', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299523', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'39', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'40', N'全院检查治疗单 ', N'1', NULL, N'1201', N'口腔科', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299530', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'40', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'41', N'全院检查治疗单 ', N'1', NULL, N'2002', N'发热门诊', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299533', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'41', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'42', N'全院检查治疗单 ', N'1', NULL, N'2001', N'急诊科', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299538', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'42', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'43', N'全院检查治疗单 ', N'1', NULL, N'0301', N'内一科', N' ', N'系统维护员 ', N'2021-12-08 21:00:27.647', N'系统维护员 ', N'全院检查治疗单 ', N'16299541', N'0', NULL, NULL, NULL, N'2', NULL, N'', N' ', NULL, N'43', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'44', N'全院检查治疗单 ', N'1', NULL, N'0401', N'外一科', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299545', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'44', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'45', N'全院检查治疗单 ', N'1', NULL, N'0501', N'妇产科', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299548', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'45', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'46', N'全院检查治疗单 ', N'1', NULL, N'0701', N'儿科', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299551', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'46', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'47', N'全院检查治疗单 ', N'1', NULL, N'1101', N'眼耳鼻喉科', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299554', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'47', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'48', N'全院检查治疗单 ', N'1', NULL, N'5001', N'中医科', N' ', N'系统维护员 ', NULL, NULL, N'全院检查治疗单 ', N'16299557', N'0', NULL, NULL, NULL, N'1', NULL, N'', N' ', NULL, N'48', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'49', N'彩色多普勒优生检查申请单 ', N'1', NULL, N'3205', N'B超室', N'医技楼3楼 ', N'系统维护员 ', NULL, NULL, N'彩色多普勒优生检查申请单 ', N'16310679', N'0', NULL, NULL, NULL, N'4', NULL, N'', N' ', NULL, N'49', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'50', N'检查治疗单 ', N'1', NULL, N'0102', N'体检科', N' ', N'系统维护员 ', NULL, NULL, N'检查治疗单 ', N'16310871', N'0', NULL, NULL, NULL, N'0', NULL, N'', N'', NULL, N'50', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'51', N'体检专用 ', N'2', NULL, N'3001', N'检验科', N'医技楼5楼 ', N'系统维护员 ', NULL, NULL, N'体检专用 ', N'16311122', N'0', NULL, NULL, N'1', N'12', NULL, N'', N' ', NULL, N'51', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'52', N'体检专用 ', N'1', NULL, N'3205', N'B超室', N' ', N'系统维护员 ', NULL, NULL, N'体检专用 ', N'16311131', N'0', NULL, NULL, N'1', N'5', NULL, N'', N'', NULL, N'52', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'53', N'体检专用 ', N'1', NULL, N'0301', N'内一科', N' ', N'系统维护员 ', NULL, NULL, N'体检专用 ', N'16312234', N'0', NULL, NULL, N'1', N'2', NULL, N'', N'', NULL, N'53', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'54', N'体检专用 ', N'1', NULL, N'3101', N'病理科', N' ', N'系统维护员 ', NULL, NULL, N'体检专用 ', N'16318982', N'0', NULL, NULL, N'1', N'3', NULL, N'', N'', NULL, N'54', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'55', N'内科检查治疗单 ', N'1', NULL, N'0301', N'内一科', N' ', N'系统维护员 ', NULL, NULL, N'内科检查治疗单 ', N'16320607', N'0', NULL, N'2', NULL, N'3', NULL, N'', N' ', NULL, N'55', NULL, NULL, NULL)
GO
INSERT INTO [dbo].[ApplicationSheet] VALUES (N'56', N'输血申请单 ', N'2', NULL, N'3001', N'检验科', N' ', N'系统维护员 ', NULL, NULL, N'输血申请单 ', N'16333892', N'0', NULL, N'2', NULL, N'13', NULL, N'', N' ', NULL, N'56', NULL, NULL, NULL)
GO
-- ----------------------------
-- Primary Key structure for table ApplicationSheet
-- ----------------------------
ALTER TABLE [dbo].[ApplicationSheet] ADD CONSTRAINT [PK_ApplicationSheet] PRIMARY KEY CLUSTERED ([TreeKeyNo])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
ON [PRIMARY]
GO

@ -0,0 +1,151 @@
/*
Navicat Premium Data Transfer
Source Server : 192.168.12.188
Source Server Type : SQL Server
Source Server Version : 10501600
Source Host : 192.168.12.188:1433
Source Catalog : hisdata
Source Schema : dbo
Target Server Type : SQL Server
Target Server Version : 10501600
File Encoding : 65001
Date: 27/07/2023 17:04:56
*/
-- ----------------------------
-- Table structure for KSCODE
-- ----------------------------
IF EXISTS (SELECT * FROM sys.all_objects WHERE object_id = OBJECT_ID(N'[dbo].[KSCODE]') AND type IN ('U'))
DROP TABLE [dbo].[KSCODE]
GO
CREATE TABLE [dbo].[KSCODE] (
[CODE] char(4) COLLATE Chinese_PRC_CI_AS NOT NULL,
[NAME] varchar(20) COLLATE Chinese_PRC_CI_AS NULL,
[PYM] char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,
[SPM] char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,
[LBCODE] char(2) COLLATE Chinese_PRC_CI_AS NOT NULL,
[LBNAME] char(20) COLLATE Chinese_PRC_CI_AS NOT NULL,
[BCS] int NULL,
[KSCLKCODE] char(4) COLLATE Chinese_PRC_CI_AS NULL,
[KSCLKNAME] char(20) COLLATE Chinese_PRC_CI_AS NULL,
[KSAttrib] int NULL,
[NotBAFlag] int NULL,
[KSAddress] char(20) COLLATE Chinese_PRC_CI_AS NULL,
[DepartmentCode] char(4) COLLATE Chinese_PRC_CI_AS NULL,
[DepartmentName] char(20) COLLATE Chinese_PRC_CI_AS NULL,
[StopDate] datetime NULL,
[StopOperName] char(10) COLLATE Chinese_PRC_CI_AS NULL,
[YJKSAttrib] int NULL,
[NotBLFlag] int NULL,
[Code_GB] char(10) COLLATE Chinese_PRC_CI_AS NULL,
[PIVAsFlag] int NULL,
[ZJFZFlag] int NULL,
[BA_Coder] varchar(10) COLLATE Chinese_PRC_CI_AS NULL,
[AllowConsultation] int NULL,
[Code_ZYGB] varchar(20) COLLATE Chinese_PRC_CI_AS NULL,
[HospitalAreaName] varchar(50) COLLATE Chinese_PRC_CI_AS NULL,
[RegistKSAddress] varchar(100) COLLATE Chinese_PRC_CI_AS NULL,
[IsAllowOnlineRegist] bit NULL,
[OnlineOrderNo] int NULL,
[BSTStandardKSCode] varchar(100) COLLATE Chinese_PRC_CI_AS NULL,
[BSTStandardKSName] varchar(100) COLLATE Chinese_PRC_CI_AS NULL,
[ZKYSCode] varchar(10) COLLATE Chinese_PRC_CI_AS NULL,
[ZKHSCode] varchar(10) COLLATE Chinese_PRC_CI_AS NULL,
[KSCODE_Group] varchar(10) COLLATE Chinese_PRC_CI_AS NULL,
[CA_EnableFlag] int NULL,
[CA_EnableDate_MZ] datetime NULL,
[CA_EnableDate_ZY] datetime NULL,
[YB_BCS] int NULL,
[KSBuildDate] datetime NULL,
[Intro] varchar(1024) COLLATE Chinese_PRC_CI_AS NULL,
[qc_dept_type] int DEFAULT ((3)) NULL
)
GO
ALTER TABLE [dbo].[KSCODE] SET (LOCK_ESCALATION = TABLE)
GO
-- ----------------------------
-- Records of [KSCODE]
-- ----------------------------
INSERT INTO [dbo].[KSCODE] VALUES (N'0101', N'防保科', N'fbk ', N'583 ', N'01', N'预防保健 ', N'0', N'15 ', N'防保科材料库 ', N'1', NULL, N'卫生院 ', NULL, NULL, NULL, NULL, NULL, NULL, N'01 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'1', N'01', N'预防保健科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'0102', N'体检科', N'tjk ', N'293 ', N'01', N'预防保健 ', N'0', NULL, NULL, N'1', NULL, N'门诊楼2楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'01 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'2', N'01', N'预防保健科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'0301', N'内一科', N'nyk ', N'613 ', N'03', N'内科 ', N'71', N'05 ', N'内一科材料库 ', N'4', NULL, N'门诊楼1楼住院楼2楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'03 ', NULL, NULL, N'', N'1', NULL, NULL, N'', N'1', N'3', N'03', N'内科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'0304', N'肾病学科-呼吸内科', N'SBXKHXNK ', N'643 ', N'03', N'内科 ', N'40', N'30 ', N'内四科材料库 ', N'4', NULL, N' ', NULL, NULL, NULL, NULL, NULL, NULL, N'03 ', NULL, NULL, N'', N'1', NULL, NULL, N'', NULL, N'0', N'03', N'内科', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'0401', N'外一科', N'wyk ', N'513 ', N'04', N'外科 ', N'68', N'06 ', N'外一科材料库 ', N'4', NULL, N'门诊楼1楼住院楼3楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'04 ', NULL, NULL, N'', N'1', NULL, NULL, N'', N'1', N'4', N'04', N'外科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'0501', N'妇产科', N'fck ', N'543 ', N'05', N'妇产科 ', N'41', N'07 ', N'妇产科材料库 ', N'4', NULL, N'门诊楼2楼住院楼5楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'05 ', NULL, NULL, N'', N'1', NULL, NULL, N'', N'1', N'5', N'05', N'妇产科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'0701', N'儿科', N'ek ', N'03 ', N'07', N'儿科 ', N'46', N'08 ', N'儿科材料库 ', N'4', NULL, N'门诊楼1楼住院楼4楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'07 ', NULL, NULL, N'', N'1', NULL, NULL, N'', N'1', N'6', N'07', N'儿科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'1101', N'眼耳鼻喉科', N'yebhk ', N'10853 ', N'11', N'耳鼻咽喉科 ', N'10', N'09 ', N'眼耳鼻喉科材料库 ', N'4', NULL, N'门诊楼2楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'11 ', NULL, NULL, N'', N'1', NULL, NULL, N'', N'1', N'7', N'11', N'耳鼻咽喉科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'1201', N'口腔科', N'kqk ', N'373 ', N'12', N'口腔科 ', N'0', N'14 ', N'口腔科材料库 ', N'1', NULL, N'门诊楼3楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'12 ', NULL, NULL, N'', NULL, NULL, NULL, N'门诊楼3楼', N'1', N'8', N'12', N'口腔科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'2001', N'急诊科', N'jzk ', N'943 ', N'20', N'急诊医学科 ', N'22', N'12 ', N'急诊科材料库 ', N'4', NULL, N'医技楼2楼 ', NULL, NULL, NULL, NULL, NULL, N'1', N'20 ', NULL, NULL, N'', N'1', NULL, NULL, N'', N'1', N'9', N'20', N'急诊医学科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'2002', N'发热门诊', N'frmz ', N'5314 ', N'20', N'急诊医学科 ', N'0', NULL, NULL, N'1', NULL, N'发热通道 ', NULL, NULL, NULL, NULL, NULL, NULL, N'20 ', NULL, NULL, N'', NULL, NULL, NULL, N'核酸检测亭', N'1', N'10', N'20', N'急诊医学科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'2601', N'麻醉科', N'mzk ', N'143 ', N'26', N'麻醉科 ', N'0', N'11 ', N'麻醉科材料库 ', N'5', NULL, N' ', NULL, NULL, NULL, NULL, N'5', NULL, N'26 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'11', N'26', N'麻醉科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'3001', N'检验科', N'jyk ', N'913 ', N'30', N'医学检验科 ', N'0', NULL, NULL, N'5', NULL, N'医技楼5楼 ', NULL, NULL, NULL, NULL, N'1', NULL, N'30 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'12', N'30', N'医学检验科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'3002', N'三方检验', N'sfjy ', N'4591 ', N'30', N'医学检验科 ', N'0', NULL, NULL, N'5', NULL, N' ', NULL, NULL, NULL, NULL, NULL, NULL, N' ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'13', N'30', N'医学检验科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'3101', N'病理科', N'blk ', N'863 ', N'31', N'病理科 ', N'0', NULL, NULL, N'5', NULL, N'医技楼3楼 ', NULL, NULL, NULL, NULL, N'2', NULL, N'31 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'14', N'31', N'病理科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'3201', N'放射科', N'fsk ', N'543 ', N'32', N'医学影象科 ', N'0', NULL, NULL, N'5', NULL, N'医技楼1楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'3201 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'15', N'32', N'医学影像科(放射科)', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'3202', N'CT室', N'cts ', N'424 ', N'32', N'医学影象科 ', N'0', NULL, NULL, N'5', NULL, N'医技楼1楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'3202 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'16', N'32', N'医学影像科(放射科)', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'3205', N'B超室', N'bcs ', N'844 ', N'32', N'医学影象科 ', N'0', NULL, NULL, N'5', NULL, N'医技楼3楼 ', NULL, NULL, NULL, NULL, N'4', NULL, N'3205 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'17', N'32', N'医学影像科(放射科)', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'5001', N'中医科', N'zyk ', N'413 ', N'50', N'中医科 ', N'42', N'10 ', N'中医科材料库 ', N'4', NULL, N'门诊楼1楼住院楼1楼 ', NULL, NULL, NULL, NULL, NULL, NULL, N'50 ', NULL, NULL, N'', N'1', NULL, NULL, N'', N'1', N'18', N'50', N'中医科', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'9901', N'院办', N'yb ', N'18 ', N'99', N'非医疗系列 ', N'0', NULL, NULL, N'6', NULL, N' ', NULL, NULL, NULL, NULL, NULL, NULL, N'69 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'19', N'99', N'管理科室', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'9902', N'财务科', N'cwk ', N'453 ', N'99', N'非医疗系列 ', N'0', NULL, NULL, N'6', NULL, N' ', NULL, NULL, NULL, NULL, NULL, NULL, N'69 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'20', N'99', N'管理科室', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
INSERT INTO [dbo].[KSCODE] VALUES (N'9903', N'药剂科', N'yjk ', N'193 ', N'99', N'非医疗系列 ', N'0', NULL, NULL, N'6', NULL, N' ', NULL, NULL, NULL, NULL, NULL, NULL, N'69 ', NULL, NULL, N'', NULL, NULL, NULL, N'', N'1', N'21', N'99', N'管理科室', N'', N'', NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL)
GO
-- ----------------------------
-- Primary Key structure for table KSCODE
-- ----------------------------
ALTER TABLE [dbo].[KSCODE] ADD CONSTRAINT [PK_KSCODE] PRIMARY KEY CLUSTERED ([CODE])
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON)
ON [PRIMARY]
GO

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

@ -0,0 +1,38 @@
USE [peisdb]
GO
/****** Object: StoredProcedure [dbo].[sp_GetJyLisResult] Script Date: 06/04/2024 09:50:41 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_GetJyLisResult]
@EID varchar(20)
AS
BEGIN
select
CAST( A.req_id AS bigint) AS FID,
C.FeeItemName ,
F_SingleItemName AS RptItemName,
'' AS RptItemCode,
F_Result AS TextResult,
F_Unit AS Unit,
F_Hint AS UnusualFlag,
F_Reference AS RANGE,
F_CheckerName AS Checker,
F_CheckTime AS CheckTime,
ItemClass = '检验',
F_AuthorizeName AS Reporter,
F_AuthorizeTime AS ReportTime
from
lis.rmcloudlis7.dbo.vw_checked_labresult A
left join jylis.kingmed.dbo.V_KM_LIS_Result b on a.pat_no=b.F_PatientNumber AND A.barcode =B.F_HospSampleID
LEFT JOIN Enrollment_FeeItem C ON A.req_id = C.ID OR A.req_id = C.OldId
where pat_no = @EID and pat_typecode=4 AND C.DeptCode='3002'
END
GO

@ -0,0 +1,23 @@
ALTER PROCEDURE [dbo].[sp_GetLisResult]
@EID varchar(20)
AS
BEGIN
SELECT
id as FID,
FeeItemName,
'' AS RptItemName,
'' AS RptItemCode,
'' AS TextResult,
'' AS Unit,
'' AS UnusualFlag,
'' AS RANGE,
'' AS Checker,
GETDATE() AS CheckTime,
ItemClass = '检验',
'' AS Reporter,
GETDATE() AS ReportTime
FROM
Enrollment_FeeItem
WHERE
EID= CAST( @EID AS bigint) AND ItemClass= '检验'
END

@ -0,0 +1,44 @@
USE [peisdb]
GO
/****** Object: StoredProcedure [dbo].[sp_GetLisResult] Script Date: 06/04/2024 09:49:59 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE PROCEDURE [dbo].[sp_GetLisResult]
@EID varchar(20)
AS
BEGIN
SELECT
CAST( A.req_id AS bigint) AS FID,
B.FeeItemName,
A.rpt_itemname AS RptItemName,
A.rptcode AS RptItemCode,
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.result_ref AS RANGE,
A.rechk_username AS Checker,
A.rechk_dt AS CheckTime,
ItemClass = '检验',
A.report_username AS Reporter,
A.report_dt AS ReportTime
FROM
lis.rmcloudlis7.dbo.vw_checked_labresult A
LEFT JOIN Enrollment_FeeItem B ON CAST(A.req_id AS varchar) = CAST(B.ID AS varchar) OR CAST(A.req_id AS varchar) = CAST(B.OldId AS varchar)
WHERE
pat_no = @EID and pat_typecode=4 AND B.EID= CAST( @EID AS bigint)
END
GO

@ -0,0 +1,34 @@
USE [peisdb]
GO
/****** Object: StoredProcedure [dbo].[sp_GetPacsResult] Script Date: 06/04/2024 09:51:02 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create PROCEDURE [dbo].[sp_GetPacsResult] @EID BIGINT ,@DeptCode varchar(20)
AS
BEGIN
SELECT
e.ID, e.PID, A.FID, c.ID AS RID, e.SID,
A.FeeItemName, c.RptItemCode, FF.ImageTitle AS RptItemName, c.ValueFormat, c.SignFormat,
FF.ExamDesc AS TextResult, FF.ExamDoctor AS Reporter, FF.ExamDatetime AS ReportTime, InputDoctor AS Checker,
c.Seq AS SeqReport, A.ItemClass, COALESCE ( A.GiveUpTime, d.GiveUpTime ) AS GiveUpTime
FROM
Enrollment_FeeItem A
LEFT JOIN Dict_FeeItem FeeItem ON A.FID= FeeItem.ID
LEFT JOIN Enrollment_CheckCost COST ON A.OrderNo=COST.ID
LEFT JOIN Dict_ReportItem c ON c.FID = A.FID
LEFT JOIN Exam_Part d ON A.EID = d.EID AND A.DeptCode = d.DeptCode
LEFT JOIN Exam_Result e ON e.PID = d.ID AND e.RID = c.ID
LEFT JOIN PACS .DICOMSERVER .DBO .PEIS_PacsResult FF ON FF.PatientCode = CONVERT(VARCHAR(20),A.EID) and (A.ID = FF.ExamFeeitem_Code OR A.OldId= FF.ExamFeeitem_Code)
WHERE
A.GiveUpTime IS NULL AND COST.SendTime IS NOT NULL AND COST.DeleteTime IS NULL AND A.ItemClass = '检查' AND FeeItem.IsHide=0 AND
A.EID =@EID AND A.DeptCode = @DeptCode
ORDER BY ReportTime DESC
END
GO

@ -0,0 +1,27 @@
-- 体检相关配置
-- 存储过程
-- GRANT EXECUTE ON OBJECT::dbo.MyStoredProcedure TO his;
-- 表
-- GRANT SELECT/INSERT/UPDATE/DELETE ON OBJECT::dbo.MyTable TO his;
-- 视图
-- GRANT SELECT ON OBJECT::dbo.MyView TO his;
-- his lisquery
GRANT EXECUTE ON OBJECT::dbo.PatientApplicationSheet TO his;
GRANT EXECUTE ON OBJECT::dbo.sp_Fee TO his;
GRANT EXECUTE ON OBJECT::dbo.sp_FeeInfo TO his;
GRANT EXECUTE ON OBJECT::dbo.sp_FeeResult TO his;
-- IsSend
ALTER TABLE Enrollment_FeeItem ADD IsSend bit DEFAULT 0;
update Enrollment_FeeItem set IsSend=0
update Enrollment_FeeItem set IsSend=1 where ID IN (
SELECT A.ID FROM
Enrollment_FeeItem A LEFT JOIN Enrollment_CheckCost B ON A.ORDERNO=B.ID
where A.OrderNo<>'' AND SendTime IS NOT NULL)
update [peisdb].[dbo].[Dict_Config] set Value='' where [Key]='WechatPayUrl'

@ -0,0 +1,22 @@
SELECT TOP 20 * FROM dbo.Dict_Conclusion
SELECT TOP 20 * FROM PEIS.DBO.Conclusion
TRUNCATE TABLE Dict_Conclusion
SET IDENTITY_INSERT dbo.Dict_Conclusion ON
INSERT INTO Dict_Conclusion
(ID, ConclusionName, SpellCode, Description, Instructions, Suggestion, Advice, DietaryGuidance, Sex )
SELECT
Id,
NAME AS ConclusionName,
PYM AS SpellCode,
Description,
Instructions,
Suggestion ,
Advice,
DietaryGuidance,
DiseasesGender AS SEX
FROM
PEIS.DBO.Conclusion
SET IDENTITY_INSERT dbo.Dict_Conclusion OFF

@ -0,0 +1,42 @@
--
SELECT * FROM dbo.Dict_FeeItem -- where FeeItemCode<>''
SELECT top 200 * FROM peis.dbo.FeeItem -- where HISCheckCode<>''
select * from Dict_FeeItem a left join Dict_ReportItem b on a.id=b.fid where b.fid=44
--
TRUNCATE TABLE Dict_FeeItem
SET IDENTITY_INSERT dbo.Dict_FeeItem ON
INSERT INTO Dict_FeeItem
(ID, FeeItemCode, SpellCode, Unit)
SELECT
A.Id,
A.HISCheckCode AS FeeItemCode,
A.PYM AS SpellCode,
A.UnitName AS Unit
FROM
peis.dbo.FeeItem A
SET IDENTITY_INSERT dbo.Dict_FeeItem OFF
--
SELECT * FROM Dict_FeeItem WHERE FeeItemCode='110500001A'
UPDATE Dict_FeeItem SET KeyNo=B.KEYNO
FROM Dict_FeeItem A
LEFT JOIN vi_HisFeeItem B ON A.FeeItemCode=B.FeeItemCode
WHERE B. DeptCode in (
'3204',
'3203',
'3202',
'3201',
'3101',
'3001',
'2601',
'2101',
'1102',
'0501',
'0307')

@ -0,0 +1,19 @@
SELECT TOP 20 * FROM dbo.Dict_Pack
SELECT TOP 20 * FROM PEIS. dbo.ExamPack
TRUNCATE TABLE Dict_Pack
SET IDENTITY_INSERT [dbo].[Dict_Pack] On
INSERT INTO Dict_Pack
(ID, Name, SpellCode, Sex, Marriage, Seq)
SELECT
Id,
NAME ,
PYM AS SpellCode,
SuitableGender AS Sex,
SuitableMarriage AS Marriage,
SortNo AS Seq
FROM
PEIS.dbo.ExamPack
SET IDENTITY_INSERT [dbo].[Dict_Pack] Off

@ -0,0 +1,13 @@
SELECT * FROM [dbo].[Dict_PackToFeeItem]
SELECT * FROM PEIS. [dbo].[ExamPackFeeItem]
TRUNCATE TABLE Dict_PackToFeeItem
SET IDENTITY_INSERT [dbo].[Dict_PackToFeeItem] OFF
INSERT INTO [Dict_PackToFeeItem]
([ID], [PID], [FID], [Seq], [CreateTime], [CreatorCode], [Creator])
SELECT[Id], [ExamPackId] AS PID, [FeeItemId] AS FID, [SortNo] AS SEQ,CreateTime= '2024-05-24', CreatorCode='0513',Creator= 'ŐÔ´äťŘ'
FROM PEIS. [dbo].[ExamPackFeeItem]
SELECT * FROM vi_FeeItem

@ -0,0 +1,58 @@
--
SELECT * FROM dbo.Dict_ReportItem -- where RptItemName='Éí¸ß'
SELECT top 10 * FROM PEIS.dbo.ExamItem
--
TRUNCATE TABLE Dict_ReportItem
SET IDENTITY_INSERT [dbo].[Dict_ReportItem] ON
INSERT INTO [Dict_ReportItem]
([ID], [RptItemName], [SpellCode], [Unit], [RptItemCode] )
SELECT
id,
NAME as RptItemName,
PYM as SpellCode,
ValueUnit as Unit,
LisCode as RptItemCode
FROM
PEIS.dbo.ExamItem
---
select DISTINCT [FeeItemId], [ExamItemId], [SortNo] from PEIS.dbo.feeitemexamitem where ExamItemId=1
-- ¸üРFeeItemId ºÍ SortNo
UPDATE Dict_ReportItem
SET FId = CASE
WHEN Dict_ReportItem.FId IS NULL THEN feeitemexamitem.FeeItemId
ELSE new_record.FId
END,
Seq = feeitemexamitem.SortNo
FROM Dict_ReportItem
JOIN PEIS.dbo.feeitemexamitem ON Dict_ReportItem.ID = feeitemexamitem.ExamItemId
OUTER APPLY (
SELECT TOP 1 FId
FROM Dict_ReportItem AS dr
WHERE Dict_ReportItem.ID = dr.ID AND dr.FId IS NOT NULL
) AS new_record (FId)
SET IDENTITY_INSERT [dbo].[Dict_ReportItem] OFF
--
INSERT INTO [Dict_ReportItem]
([RptItemName], [SpellCode], [Unit], [RptItemCode],fid,seq )
select DISTINCT
NAME as RptItemName,
PYM as SpellCode,
ValueUnit as Unit,
LisCode as RptItemCode,
FeeItemId as fid,
SortNo as seq
from
PEIS.dbo.feeitemexamitem a
left join PEIS.dbo.examitem b on a.ExamItemId=b.id
where not EXISTS (select 1 from Dict_ReportItem c where c.id=a.ExamItemId and c.fid=a.FeeItemId)
ORDER BY fid,seq

@ -0,0 +1,25 @@
--
SELECT * FROM Dict_Sign
-- Group1 Group2
SELECT top 10 * FROM PEIS.dbo.ExamSign
--
TRUNCATE TABLE Dict_Sign
SET IDENTITY_INSERT [dbo].[Dict_Sign] ON
INSERT INTO Dict_Sign(ID, RID, SignName, SpellCode, Description, SevereLevel, IsDefault, IsSummary, Group1, Group2, Seq, CID)
SELECT Id,
ExamItemId AS RID,
NAME AS SignName,
PYM AS SpellCode,
SignDetail AS Description,
DiseaseLevel AS SevereLevel,
IsDefaultOption AS IsDefault,
SummaryInclude AS IsSummary,
FirstGroupNo AS Group1,
SecondGroupNo AS Group2,
SortNo AS Seq ,
ConclusionId AS CID
FROM
PEIS.dbo.ExamSign
SET IDENTITY_INSERT [dbo].[Dict_Sign] OFF

@ -0,0 +1,18 @@
TRUNCATE TABLE Exam_Conclusion
SET IDENTITY_INSERT [dbo].[Exam_Conclusion] ON
INSERT INTO [dbo].[Exam_Conclusion]
([EID],[FID], [RID], [CID], [Conclusion], [Suggestion] , [Seq])
SELECT
[EnrollmentId] AS EID,
[FeeItemId] AS FID,
[ExamItemId] AS RID,
[ConclusionId] AS CID,
[Name] AS Conclusion,
[Suggestion] AS Suggestion ,
SORTNO AS SEQ
FROM PEIS.DBO.ExamConclusion

@ -0,0 +1,23 @@
select * FROM Exam_Part where DeptName like '%心电%' AND Summary LIKE '%2.%'
SELECT TOP 10 * FROM Exam_Result
INSERT INTO Exam_Result
( [PID], [DeptName], [FID], [FeeItemName], [RptItemName], [TextResult], [ItemClass])
SELECT A.ID AS PID,A.DeptName,B.FID,B.FeeItemName ,
SUBSTRING(Summary, 3, CHARINDEX(':', Summary) - 3) AS RptItemName,
SUBSTRING(Summary, CHARINDEX(':', Summary) + 1, LEN(Summary) - CHARINDEX(':', Summary)) AS TextResult,
ItemClass='检查'
FROM
Exam_Part A
LEFT JOIN Enrollment_FeeItem B ON A.EID=B.EID AND A.DeptName=B.DeptName AND A.DeptCode=B.DeptCode
WHERE A.DeptName like '%心电%' AND Summary LIKE '%:%'
SELECT
SUBSTRING(Summary, 3, CHARINDEX(':', Summary) - 3) AS RptItemName,
SUBSTRING(Summary, CHARINDEX(':', Summary) + 1, LEN(Summary) - CHARINDEX(':', Summary)) AS TextResult
FROM
Exam_Part
where DeptName like '%心电%' AND Summary LIKE '%2.%'

@ -0,0 +1,53 @@
SELECT TOP (1000) [ID]
,[FeeItemCode]
,[FeeItemName]
,[SpellCode]
,[Price]
,[DeptCode]
,[DeptName]
,[UnitName]
,[ItemClass]
,[Unit]
,[KeyNo]
,[IsReserve]
FROM [peisdb].[dbo].[Dict_PeisFeeItem]
SELECT * FROM
select * from PEIS.DBO.FEEITEM WHERE HISCheckCode IS NULL
select * from vi_HisFeeItem where FeeItemCode in (
SELECT HISCheckCode FROM PEIS.DBO.ExamPack A
LEFT JOIN PEIS.DBO.ExamPackFeeItem B ON A.ID=B.ExamPackId
LEFT JOIN PEIS.dbo.FeeItem C ON B.FeeItemId=C.ID
WHERE A.NAME='AĚײͣ¨ÄĐŁŠ' and HISCheckCode<>'') and
DeptCode in (
'3204',
'3203',
'3202',
'3201',
'3101',
'3001',
'2601',
'2101',
'1102',
'0501',
'0307')
SELECT * FROM [dbo].[Dict_PackToFeeItem]
SELECT * FROM PEIS. [dbo].[ExamPackFeeItem]
TRUNCATE TABLE Dict_PackToFeeItem
SET IDENTITY_INSERT [dbo].[Dict_PackToFeeItem] OFF
INSERT INTO [Dict_PackToFeeItem]
([ID], [PID], [FID], [Seq], [CreateTime], [CreatorCode], [Creator])
SELECT[Id], [ExamPackId] AS PID, [FeeItemId] AS FID, [SortNo] AS SEQ,CreateTime= '2024-05-24', CreatorCode='0513',Creator= 'ŐÔ´äťŘ'
FROM PEIS. [dbo].[ExamPackFeeItem] WHERE STOPDATE IS NULL
SELECT * FROM PEIS. [dbo].[ExamPackFeeItem] WHERE ExamPackId=1
select * from dict_feeitem

@ -0,0 +1,53 @@
SELECT * FROM EXAM_RESULT
SELECT TOP 20 * FROM PEIS.DBO.ExamDepartment
SELECT TOP 20 * FROM PEIS.DBO.EnrollmentExamItem
insert into EXAM_RESULT(
PID, SID ,DeptName,FID, FeeItemName ,RID ,RptItemName ,TextResult, ItemClass )
SELECT
A.ExamDepartmentId AS PID,
A.ExamItemId as sid,
C.NAME AS DEPTNAME,
D.FeeItemId AS FID,
D.Name AS FeeItemName,
B.ExamItemId as rid,
B.Name as RptItemName,
A.Name as TextResult,
D.ItemType as ItemClass
FROM PEIS.DBO.ExamExamSign A
LEFT JOIN PEIS.DBO.EnrollmentExamItem B ON A.EnrollmentExamItemId=B. ID
LEFT JOIN PEIS.DBO.Department C ON A.DepartmentId=C.ID
LEFT JOIN PEIS.DBO.EnrollmentFeeItem D ON B.EnrollmentFeeItemId =D.ID AND D. EnrollmentId =B.EnrollmentId
WHERE A.StopOperDate IS NULL
INSERT INTO [Exam_Result]
( [PID], [DeptName], [FID], [FeeItemName], [RptItemName], [TextResult], [ItemClass], [Reporter], [ReportTime])
SELECT
C.ID AS PID,C.DeptName,
D.FeeItemId AS FID,D.Name AS FeeItemName,A.NAME AS RptItemName,
A.TextValue AS TextResult,ItemClass='检查',A.PacsVerifyOperName AS Reporter, A.PacsVerifyOperDate AS ReportTime
FROM PEIS.DBO.EnrollmentApplicationSheet A
LEFT JOIN PEIS.DBO.DEPARTMENT B ON A.DepartmentId=B.ID
LEFT JOIN Exam_Part C ON A.EnrollmentId=C.EID AND B.HISCODE=C.DeptCode AND B.NAME=C.DeptName
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheetFeeItem D ON A.ID=D.EnrollmentApplicationSheetId
WHERE A. TextValue IS NOT NULL
SELECT TOP 20 * FROM Exam_Result
SELECT TOP 20 B.FEEITEMID,* FROM PEIS.DBO.EnrollmentApplicationSheet A
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheetFeeItem B ON A.ID=B.EnrollmentApplicationSheetId

@ -0,0 +1,32 @@
-- 查询表中的重复数据
SELECT * FROM Dict_FeeItem where feeitemcode='F512'
SELECT * FROM Dict_ReportItem WHERE fid=4
update Dict_ReportItem SET RptItemCode=NULL
select TOP 20 * FROM Exam_Result
select DISTINCT RID FROM Exam_Result A
WHERE NOT EXISTS (SELECT 1 FROM Dict_ReportItem B WHERE B.ID=A.RID)
FID
SELECT TOP 20 * FROM PEIS.DBO.FeeItem WHERE ID IN (363,
461,472,96,154,279,471)
update Exam_Result set fid=470 where fid in (471,472,154)
update Exam_Result set fid=1 where fid =461
update Exam_Result set fid=558 where fid in (96 )
SELECT * FROM vi_EnPart WHERE EID=1252 AND FID=3
select * from Exam_Part where eid=1252
select * from Exam_Result where pid=57
UPDATE Exam_Result SET rID=b.ID FROM Exam_Result a
left join Dict_ReportItem b ON A.fID=B.FID and a.RptItemName=b.RptItemName
update [BaogaoInfo] set YangbenGuid =b.Guid from BaogaoInfo a left join YangbenInfo b on a.YangbenId = b.Id
select * from Dict_ReportItem where id=4

@ -0,0 +1,251 @@
-- 【 】#########################################################
-- 【 】#########################################################
-- 【 】#########################################################
-- 【 】#########################################################
-- 【 】#########################################################
-- 【 】#########################################################
-- 【 】#########################################################
-- 【 】#########################################################
-- 【 】#########################################################
-- 【 】#########################################################
-- -- -- -- -- -- --
-- 【1、Dict_Conclusion】#########################################################
INSERT INTO Dict_Conclusion(ID, ConclusionName, SpellCode, Description, Instructions, Suggestion, Advice, DietaryGuidance, Sex )
SELECT
Id,
NAME AS ConclusionName,
PYM AS SpellCode,
Description,
Instructions,
Suggestion ,
Advice,
DietaryGuidance,
DiseasesGender AS SEX
FROM
PEIS.DBO.Conclusion
-- 【2、Dict_Dept】#########################################################
INSERT INTO [dbo].[Dict_Dept]([ID], [Name], [HISCode], [Address])
SELECT Id ,Name,HISCode,HISName ,Address FROM PEIS.DBO.Department
-- 【3、Dict_FeeItem】#########################################################
INSERT INTO Dict_FeeItem(ID, FeeItemCode, SpellCode, Unit)
SELECT
A.Id,
A.HISCheckCode AS FeeItemCode,
A.PYM AS SpellCode,
A.UnitName AS Unit
FROM
peis.dbo.FeeItem A
-- 【4、Dict_Pack】#########################################################
INSERT INTO Dict_Pack
(ID, Name, SpellCode, Sex, Marriage, Seq)
SELECT
Id,
NAME ,
PYM AS SpellCode,
SuitableGender AS Sex,
SuitableMarriage AS Marriage,
SortNo AS Seq
FROM
PEIS.dbo.ExamPack WHERE StopOperDate IS NULL
-- 【5、Dict_PackToFeeItem】#########################################################
INSERT INTO [Dict_PackToFeeItem]
([ID], [PID], [FID], [Seq], [CreateTime], [CreatorCode], [Creator])
SELECT[Id], [ExamPackId] AS PID, [FeeItemId] AS FID, [SortNo] AS SEQ,CreateTime= '2024-05-24', CreatorCode='0513',Creator= '赵翠回'
FROM PEIS. [dbo].[ExamPackFeeItem]
-- 【6、Dict_PeisFeeItem】#########################################################
-- 手动添加HIS中未开展的项目
-- 【7、Dict_ReportItem】#########################################################
-- 插入不重复部分
INSERT INTO [Dict_ReportItem]([ID], [RptItemName], [SpellCode], [Unit], [RptItemCode] )
SELECT
id,
NAME as RptItemName,
PYM as SpellCode,
ValueUnit as Unit,
LisCode as RptItemCode
FROM
PEIS.dbo.ExamItem
-- select DISTINCT [FeeItemId], [ExamItemId], [SortNo] from PEIS.dbo.feeitemexamitem where ExamItemId=1
-- 更新 FeeItemId 和 SortNo
UPDATE Dict_ReportItem
SET FId = CASE WHEN Dict_ReportItem.FId IS NULL THEN feeitemexamitem.FeeItemId ELSE new_record.FId END,
Seq = feeitemexamitem.SortNo
FROM Dict_ReportItem
JOIN PEIS.dbo.feeitemexamitem ON Dict_ReportItem.ID = feeitemexamitem.ExamItemId
OUTER APPLY (
SELECT TOP 1 FId
FROM Dict_ReportItem AS dr
WHERE Dict_ReportItem.ID = dr.ID AND dr.FId IS NOT NULL
) AS new_record (FId)
-- 插入重复部分 多对多
INSERT INTO [Dict_ReportItem]([RptItemName], [SpellCode], [Unit], [RptItemCode],fid,seq )
select DISTINCT
NAME as RptItemName,
PYM as SpellCode,
ValueUnit as Unit,
LisCode as RptItemCode,
FeeItemId as fid,
SortNo as seq
from
PEIS.dbo.feeitemexamitem a
left join PEIS.dbo.examitem b on a.ExamItemId=b.id
where not EXISTS (select 1 from Dict_ReportItem c where c.id=a.ExamItemId and c.fid=a.FeeItemId)
ORDER BY fid,seq
-- 【8、Dict_Sign】#########################################################
INSERT INTO Dict_Sign(ID, RID, SignName, SpellCode, Description, SevereLevel, IsDefault, IsSummary, Group1, Group2, Seq, CID)
SELECT Id,
ExamItemId AS RID,
NAME AS SignName,
PYM AS SpellCode,
SignDetail AS Description,
DiseaseLevel AS SevereLevel,
IsDefaultOption AS IsDefault,
SummaryInclude AS IsSummary,
FirstGroupNo AS Group1,
SecondGroupNo AS Group2,
SortNo AS Seq ,
ConclusionId AS CID
FROM
PEIS.dbo.ExamSign
-- 【9、Exam_Part】#########################################################
INSERT INTO [EXAM_PART] ([ID],[EID],[DeptName],[DeptCode],[InputTime],[InputerCode],[Inputer],[CheckTime],[CheckerCode],[Checker],[VerifyTime],[VerifyCode],[Verifier],[Summary],[CreateTime],[CreatorCode],[Creator], [GiveUpTime],[GiveUpUser],[GiveUpCode] )
SELECT
A.[ID],
A.EnrollmentId AS [EID],
A.DepartmentName AS [DeptName],
B.HISCODE AS [DeptCode],
A.GiveUpOperDate AS [InputTime],
A.InputOperCode AS [InputerCode],
A.InputOperName AS [Inputer],
A.CheckOperDate AS [CheckTime],
A.CheckOperCode AS [CheckerCode],
A.CheckOperName AS [Checker],
A.VerifyOperDate AS [VerifyTime],
A.VerifyOperCode AS [VerifyCode],
A.VerifyOperName AS [Verifier],
A.SummaryContent AS [Summary],
A.CreateOperDate AS [CreateTime],
A.CreateOperCode AS [CreatorCode],
A.CreateOperName AS [Creator],
A.GiveUpOperDate AS [GiveUpTime],
A.GiveUpOperName AS [GiveUpUser],
A.GiveUpOperCode AS [GiveUpCode]
FROM PEIS.DBO.ExamDepartment A
LEFT JOIN PEIS.DBO.Department B ON A.DepartmentId=B.ID
WHERE A.RemoveOperDate IS NULL
-- END
-- 【10、Exam_Result】#########################################################
-- SELECT top 20 * FROM LisResult
-- 普通项目和心电
SELECT count(*) FROM peisdb.dbo.[Exam_Result]
TRUNCATE TABLE peisdb.dbo.[Exam_Result]
begin Transaction
INSERT INTO peisdb.[dbo].[Exam_Result]( [PID],[DID],[DeptName] , [FID], [FeeItemName], [RID], [RptItemName], [TextResult], [Unit], [ItemClass] )
SELECT
Z.Id AS PID
,Y.DepartmentId AS [DID]
,X.DepartmentName AS [DeptName]
,X.[FeeItemId] AS [FID]
,X.Name AS FeeItemName
,Y.[ExamItemId] AS [RID]
,Y.[Name] AS [RptItemName]
,Y.[TextValue] AS [TextResult]
,Y.[ValueUnit] AS [Unit]
,X.ItemType AS [ItemClass]
FROM PEIS.DBO.[EnrollmentFeeItem] X (NOLOCK)
JOIN PEIS.DBO.[EnrollmentExamItem] Y (NOLOCK) ON X.Id = Y.EnrollmentFeeItemId
JOIN PEIS.DBO.[ExamDepartment] Z(NOLOCK) ON Y.DepartmentId = Z.DepartmentId AND Y.EnrollmentId = Z.EnrollmentId AND X.EnrollmentId = Z.EnrollmentId
WHERE X.SendOperDate IS NOT NULL AND X.RemoveOperDate IS NULL AND Y.RemoveOperDate IS NULL AND Z.RemoveOperDate IS NULL
AND X.GiveUpOperDate IS NULL AND Y.GiveUpOperDate IS NULL
-- 检验项目
INSERT INTO peisdb.[dbo].[Exam_Result]( [PID],[DID],[DeptName] , [FID], [FeeItemName], [RID], [RptItemName], [TextResult], [Unit], [ItemClass] ,RPTITEMCODE,[Range],REPORTER,REPORTTIME,UnusualFlag)
SELECT
C.Id AS PID
,B.DepartmentId AS [DID]
,A.DepartmentName AS [DeptName]
,A.[FeeItemId] AS [FID]
,A.Name AS FeeItemName
,B.[ExamItemId] AS [RID]
,B.[Name] AS [RptItemName]
,B.[TextValue] AS [TextResult]
,B.[ValueUnit] AS [Unit]
,A.ItemType AS [ItemClass]
,B.LisCode AS RPTITEMCODE
,B.LisRange AS [Range]
,B.LisVerifyOperName AS REPORTER
,B.LisVerifyOperDate AS REPORTTIME
,B. LisFlag AS UnusualFlag
FROM PEIS.DBO.[EnrollmentApplicationSheetFeeItem] A (NOLOCK)
JOIN PEIS.DBO.[EnrollmentExamItem] B (NOLOCK) ON A.Id = B.EnrollmentApplicationSheetFeeItemId
JOIN PEIS.DBO.[ExamDepartment] C(NOLOCK) ON B.DepartmentId = C.DepartmentId AND B.EnrollmentId = C.EnrollmentId AND A.EnrollmentId =C.EnrollmentId
WHERE A.SendOperDate IS NOT NULL AND A.RemoveOperDate IS NULL AND B.RemoveOperDate IS NULL AND C.RemoveOperDate IS NULL
AND A.GiveUpOperDate IS NULL AND B.GiveUpOperDate IS NULL
order by a.id desc
if(@@error<>0) -- 判断是否报错如果报错就回滚信息否则提交事务
rollback transaction
else
commit transaction
-- 检查
INSERT INTO [Exam_Result]( [PID], [DeptName], [FID], [FeeItemName], [RptItemName], [TextResult], [ItemClass], [Reporter], [ReportTime])
SELECT
C.ID AS PID,C.DeptName,
D.FeeItemId AS FID,D.Name AS FeeItemName,A.NAME AS RptItemName,
A.TextValue AS TextResult,ItemClass='检查',A.PacsVerifyOperName AS Reporter, A.PacsVerifyOperDate AS ReportTime
FROM PEIS.DBO.EnrollmentApplicationSheet A
LEFT JOIN PEIS.DBO.DEPARTMENT B ON A.DepartmentId=B.ID
LEFT JOIN Exam_Part C ON A.EnrollmentId=C.EID AND B.HISCODE=C.DeptCode AND B.NAME=C.DeptName
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheetFeeItem D ON A.ID=D.EnrollmentApplicationSheetId
WHERE A. TextValue IS NOT NULL
-- 【11、Exam_Conclusion】#########################################################
INSERT INTO [dbo].[Exam_Conclusion]([EID],[FID], [RID], [CID], [Conclusion], [Suggestion] , [Seq])
SELECT
[EnrollmentId] AS EID,
[FeeItemId] AS FID,
[ExamItemId] AS RID,
[ConclusionId] AS CID,
[Name] AS Conclusion,
[Suggestion] AS Suggestion ,
SORTNO AS SEQ
FROM PEIS.DBO.ExamConclusion

@ -0,0 +1,562 @@
-- 【 Base_Org 】#########################################################
INSERT INTO [Base_Org]([ID], [Name], [SpellCode], [Contactor], [Tel1], [Tel2], [Address], [CreateTime], [CreatorCode], [Creator])
SELECT
Id AS ID,
NAME AS Name,
PYM AS SpellCode,
Contactor AS Contactor,
Tel1 AS Tel1,
Tel2 AS Tel2,
Address AS Address,
CreateOperDate AS CreateTime,
CreateOperCode AS CreatorCode,
CreateOperName AS Creator
FROM PEIS.dbo.Org
-- 【 Base_OrgPatient 】#########################################################
INSERT INTO [Base_OrgPatient]([ID], [OID], [PID], [Seq], [DeptName])
SELECT
Id AS ID,
OrgId AS OID,
PatientId AS PID,
SortNo AS Seq,
Branch AS DeptName
FROM PEIS.dbo.OrgPatient
-- 【 Base_Patient 】#########################################################
INSERT INTO [Base_Patient]([ID], [Name], [Sex], [Birthday], [CardType], [CardNo], [Nation], [Tel1], [Tel2], [Contactor1], [Address1], [Marriage], [Education], [Occupation], [Type], [CreateTime], [CreatorCode], [Creator])
SELECT
Id AS ID,
NAME AS Name,
Gender AS Sex,
Birthday AS Birthday,
'居民身份证' AS CardType,
IDCard AS CardNo,
NationName AS Nation,
Tel1 AS Tel1,
Tel2 AS Tel2,
NAME AS Contactor1,
Address AS Address1,
CASE Marriage
WHEN 1 THEN '未婚'
WHEN 2 THEN '已婚'
ELSE '未知'
END AS Marriage,
EducationName AS Education,
OccupationName AS Occupation,
PatientTypeName AS Type,
CreateOperDate AS CreateTime,
CreateOperCode AS CreatorCode,
CreateOperName AS Creator
FROM PEIS.dbo.Patient WHERE StopOperDate IS NULL AND IDCard IS NOT NULL
-- 【 Enrollment_CheckCost 】#########################################################
INSERT INTO [Enrollment_CheckCost]([ID], [EID], [OEID],[Sum], [Discount], [Fee], [CreateTime], [CreatorCode], [Creator], [CostTime], [CosterCode], [Coster], [ChargeTime], [ChargerCode], [Charger], [SendTime], [SenderCode], [Sender],[OriginOrderNo])
SELECT
Id AS ID,
EnrollmentId AS EID,
OrgEnrollmentId AS OEID,
SummaryHISPrice AS [Sum],
SaleDiscount AS Discount,
SellingPrice AS Fee,
CreateOperDate AS CreateTime,
CreateOperCode AS CreatorCode,
CreateOperName AS Creator,
ChargeOperDate as CostTime,
ChargeOperCode AS CosterCode,
ChargeOperName AS Coster,
AccountedOperDate AS ChargeTime,
AccountedOperCode AS ChargerCode,
AccountedOperName AS Charger,
SendOperDate AS SendTime,
SendOperCode AS SenderCode,
SendOperName AS Sender,
RefundOrderSheetId AS OriginOrderNo
FROM peis.dbo.OrderSheet
WHERE OrgEnrollmentId IS NULL
-- 更新团体id
UPDATE a SET a.OEID = b.OEID
FROM Enrollment_CheckCost a
LEFT JOIN Enrollment_Patient b ON a.EID = b.ID
WHERE b.OEID IS NOT NULL
-- 【 Enrollment_FeeItem 】#########################################################
INSERT INTO [Enrollment_FeeItem]([OEID], [GroupID], [EID], [PackID], [PackName], [FID], [FeeItemCode], [FeeItemName], [Quantity], [Unit], [Price], [SettlePrice], [ItemClass], [CreateTime], [CreatorCode], [Creator], [OrderNo], [DeptCode], [DeptName], [Seq], [GiveUpTime], [GiveUpUser], [GiveUpCode], [IsSend], [OldId])
SELECT
OrgEnrollmentId AS OEID,
OrgEnrollmentGroupId AS GroupID,
EnrollmentId AS EID,
ExamPackId AS PackID,
ExamPackName AS PackName,
FeeItemId AS FID,
HISCheckCode AS FeeItemCode,
HISCheckName AS FeeItemName,
Quantity,
UnitName AS Unit,
HISPrice AS Price,
CostPrice AS SettlePrice,
CASE ItemType
WHEN 2 THEN '检查'
WHEN 3 THEN '检验'
ELSE '普通'
END AS ItemClass,
CreateOperDate AS CreateTime,
CreateOperCode AS CreatorCode,
CreateOperName AS Creator,
OrderSheetId AS OrderNo,
DepartmentId AS DeptCode,
DepartmentName AS DeptName,
SortNo AS Seq,
GiveUpOperDate AS GiveUpTime,
GiveUpOperName AS GiveUpUser,
GiveUpOperCode AS GiveUpCode,
1 AS IsSend,
Id AS OldId
FROM PEIS.dbo.EnrollmentApplicationSheetFeeItem
UNION ALL
SELECT
OrgEnrollmentId AS OEID,
OrgEnrollmentGroupId AS GroupID,
EnrollmentId AS EID,
ExamPackId AS PackID,
ExamPackName AS PackName,
FeeItemId AS FID,
HISCheckCode AS FeeItemCode,
HISCheckName AS FeeItemName,
Quantity,
UnitName AS Unit,
HISPrice AS Price,
CostPrice AS SettlePrice,
CASE ItemType
WHEN 2 THEN '检查'
WHEN 3 THEN '检验'
ELSE '普通'
END AS ItemClass,
CreateOperDate AS CreateTime,
CreateOperCode AS CreatorCode,
CreateOperName AS Creator,
OrderSheetId AS OrderNo,
DepartmentId AS DeptCode,
DepartmentName AS DeptName,
SortNo AS Seq,
GiveUpOperDate AS GiveUpTime,
GiveUpOperName AS GiveUpUser,
GiveUpOperCode AS GiveUpCode,
1 AS IsSend,
Id AS OldId
FROM PEIS.dbo.EnrollmentFeeItem
--
UPDATE a SET a.DeptCode = b.HISCode
FROM Enrollment_FeeItem a
LEFT JOIN Dict_Dept b ON a.DeptName = b.Name
-- 【 Enrollment_Org 】#########################################################
INSERT INTO [Enrollment_Org]([ID], [Name], [Contactor1], [Tel1], [Tel2], [Address], [ExamDate], [CreateTime], [CreatorCode], [Creator], [OID])
SELECT
Id AS ID,
OrgName AS Name,
Contactor AS Contactor1,
Tel1 AS Tel1,
Tel2 AS Tel2,
Address,
ExamDate,
CreateOperDate AS CreateTime,
CreateOperCode AS CreatorCode ,
CreateOperName AS Creator ,
OrgId AS OID
FROM PEIS.dbo.OrgEnrollment
-- 【 Enrollment_OrgFeeItem 】#########################################################
INSERT INTO [dbo].[Enrollment_OrgFeeItem]([OEID], [GroupID], [PackID], [PackName], [FID], [FeeItemCode], [FeeItemName], [Quantity], [Unit], [Price], [SettlePrice], [ItemClass], [CreateTime], [CreatorCode], [Creator], [DeptCode], [DeptName], [Seq], [OID])
SELECT
OrgEnrollmentId AS OEID,
OrgEnrollmentGroupId AS GroupID,
ExamPackId AS PackID,
ExamPackName AS PackName,
FeeItemId AS FID,
HISCheckCode AS FeeItemCode,
HISCheckName AS FeeItemName,
Quantity,
UnitName AS Unit,
HISPrice AS Price,
CostPrice AS SettlePrice,
CASE ItemType
WHEN 2 THEN '检查'
WHEN 3 THEN '检验'
ELSE '普通'
END AS ItemClass,
CreateOperDate AS CreateTime,
CreateOperCode AS CreatorCode,
CreateOperName AS Creator,
DepartmentId AS DeptCode,
DepartmentName AS DeptName,
SortNo AS Seq,
Id AS OldId
FROM PEIS.dbo.EnrollmentApplicationSheetFeeItem
WHERE OrgEnrollmentId IS NOT NULL
UNION ALL
SELECT
OrgEnrollmentId AS OEID,
OrgEnrollmentGroupId AS GroupID,
ExamPackId AS PackID,
ExamPackName AS PackName,
FeeItemId AS FID,
HISCheckCode AS FeeItemCode,
HISCheckName AS FeeItemName,
Quantity,
UnitName AS Unit,
HISPrice AS Price,
CostPrice AS SettlePrice,
CASE ItemType
WHEN 2 THEN '检查'
WHEN 3 THEN '检验'
ELSE '普通'
END AS ItemClass,
CreateOperDate AS CreateTime,
CreateOperCode AS CreatorCode,
CreateOperName AS Creator,
DepartmentId AS DeptCode,
DepartmentName AS DeptName,
SortNo AS Seq,
Id AS OldId
FROM PEIS.dbo.EnrollmentFeeItem
WHERE OrgEnrollmentId IS NOT NULL
--
UPDATE a SET a.DeptCode = b.HISCode
FROM Enrollment_OrgFeeItem a
LEFT JOIN Dict_Dept b ON a.DeptName = b.Name
-- 【 Enrollment_OrgGroup 】#########################################################
INSERT INTO [Enrollment_OrgGroup]([ID], [Name], [Sex], [Marriage], [AgeMin], [AgeMax], [Type], [CheckTime], [CheckerCode], [Checker], [OID])
SELECT
Id AS ID,
Name,
SuitableGender AS Sex,
CASE SuitableMarriage
WHEN 1 THEN '未婚'
when 2 THEN '已婚'
ELSE '所有'
END AS Marriage,
SuitableAgeBegin AS AgeMin,
SuitableAgeEnd AS AgeMax,
ExamTypeName AS Type,
SyncOperDate AS CheckTime,
SyncOperCode AS CheckerCode,
SyncOperName as Checker,
OrgId AS OID
FROM PEIS.dbo.OrgEnrollmentGroup
-- 【 Enrollment_OrgPatient 】#########################################################
INSERT INTO [Enrollment_OrgPatient]([ID], [GroupID], [PID], [OID])
SELECT
Id AS ID,
OrgEnrollmentGroupId AS GroupID,
PatientId AS PID,
OrgEnrollmentId AS OID
FROM PEIS.dbo.OEGroupPatient
-- 【 Enrollment_Patient 】#########################################################
INSERT INTO [Enrollment_Patient]([ID], [Name], [Sex], [Age], [AgeClass], [CardType], [CardNo], [Tel1], [Tel2], [Contactor1], [Address1], [Marriage], [Education], [Occupation], [ExamDate], [Type], [PID], [OID], [OEID], [OrgName], [GroupID], [GroupName], [CreateTime], [CreatorCode], [Creator], [SignTime], [SignerCode], [Signer], [FinishTime], [FinisherCode], [Finisher], [WeChatStatus], [PrintTime], [PrinterCode], [Printer], [LastPrintTime], [LastPrinterCode], [LastPrinter], [Nation], [IsWeChatView])
SELECT
a.Id AS ID,
a.PatientName AS Name,
b.Gender AS Sex,
a.Age AS Age,
a.AgeUnit AS AgeClass,
'居民身份证' AS CardType,
b.IDCard AS CardNo,
a.Tel1 AS Tel1,
a.Tel2 AS Tel2,
a.PatientName AS Contactor1,
a.Address AS Address1,
CASE a.Marriage
WHEN 1 THEN '未婚'
WHEN 2 THEN '已婚'
ELSE '未知'
END AS Marriage,
a.EducationName AS Education,
a.OccupationName AS Occupation,
a.ExamDate AS ExamDate,
a.PatientTypeName AS Type,
a.PatientId AS PID,
a.OrgId AS OID,
a.OrgEnrollmentId AS OEID,
a.OrgName AS OrgName,
a.OrgEnrollmentId AS GroupID,
a.OrgEnrollmentGroupName AS GroupName,
a.CreateOperDate AS CreateTime,
a.CreateOperCode AS CreatorCode,
a.CreateOperName AS Creator,
a.SignInOperDate AS SignTime,
a.SignInOperCode AS SignerCode,
a.SignInOperName AS Signer,
a.FinishOperDate AS FinishTime,
a.FinishOperCode AS FinisherCode,
a.FinishOperName AS Finisher,
0 AS WeChatStatus,
a.FirstPrintOperDate AS PrintTime,
a.FirstPrintOperCode AS PrinterCode,
a.FirstPrintOperName AS Printer,
a.SecondPrintOperDate AS LastPrintTime,
a.SecondPrintOperCode AS LastPrinterCode,
a.SecondPrintOperName AS LastPrinter,
b.NationName AS Nation,
0 AS IsWeChatView
FROM PEIS.dbo.Enrollment a
LEFT JOIN PEIS.dbo.Patient b ON a.PatientId = b.Id
WHERE a.RemoveOperDate IS NULL
-- -- -- -- -- -- --
-- 【1、Dict_Conclusion】#########################################################
INSERT INTO Dict_Conclusion(ID, ConclusionName, SpellCode, Description, Instructions, Suggestion, Advice, DietaryGuidance, Sex )
SELECT
Id,
NAME AS ConclusionName,
PYM AS SpellCode,
Description,
Instructions,
Suggestion ,
Advice,
DietaryGuidance,
DiseasesGender AS SEX
FROM
PEIS.DBO.Conclusion
-- 【2、Dict_Dept】#########################################################
INSERT INTO [dbo].[Dict_Dept]([ID], [Name], [HISCode], [Address])
SELECT Id ,Name,HISCode,HISName ,Address FROM PEIS.DBO.Department
-- 【3、Dict_FeeItem】#########################################################
INSERT INTO Dict_FeeItem(ID, FeeItemCode, SpellCode, Unit)
SELECT
A.Id,
A.HISCheckCode AS FeeItemCode,
A.PYM AS SpellCode,
A.UnitName AS Unit
FROM
peis.dbo.FeeItem A
-- 与HIS同步收费项目的keyno
update [Dict_FeeItem] set keyno =b.keyno
-- select *
from Dict_FeeItem a
left join vi_HisFeeItem b on a.FeeItemCode=b.feeitemcode
where a.KeyNo is null and b.DeptCode in ( select DISTINCT HISCode from Dict_Dept )
-- 【4、Dict_Pack】#########################################################
INSERT INTO Dict_Pack
(ID, Name, SpellCode, Sex, Marriage, Seq)
SELECT
Id,
NAME ,
PYM AS SpellCode,
SuitableGender AS Sex,
SuitableMarriage AS Marriage,
SortNo AS Seq
FROM
PEIS.dbo.ExamPack WHERE StopOperDate IS NULL
-- 【5、Dict_PackToFeeItem】#########################################################
INSERT INTO [Dict_PackToFeeItem]
([ID], [PID], [FID], [Seq], [CreateTime], [CreatorCode], [Creator])
SELECT[Id], [ExamPackId] AS PID, [FeeItemId] AS FID, [SortNo] AS SEQ,CreateTime= '2024-05-24', CreatorCode='0513',Creator= '赵翠回'
FROM PEIS. [dbo].[ExamPackFeeItem]
-- 【6、Dict_PeisFeeItem】#########################################################
-- 手动添加HIS中未开展的项目
-- 【7、Dict_ReportItem】#########################################################
-- 插入不重复部分
INSERT INTO [Dict_ReportItem]([ID], [RptItemName], [SpellCode], [Unit], [RptItemCode] )
SELECT
id,
NAME as RptItemName,
PYM as SpellCode,
ValueUnit as Unit,
LisCode as RptItemCode
FROM
PEIS.dbo.ExamItem
-- select DISTINCT [FeeItemId], [ExamItemId], [SortNo] from PEIS.dbo.feeitemexamitem where ExamItemId=1
-- 更新 FeeItemId 和 SortNo
UPDATE Dict_ReportItem
SET FId = CASE WHEN Dict_ReportItem.FId IS NULL THEN feeitemexamitem.FeeItemId ELSE new_record.FId END,
Seq = feeitemexamitem.SortNo
FROM Dict_ReportItem
JOIN PEIS.dbo.feeitemexamitem ON Dict_ReportItem.ID = feeitemexamitem.ExamItemId
OUTER APPLY (
SELECT TOP 1 FId
FROM Dict_ReportItem AS dr
WHERE Dict_ReportItem.ID = dr.ID AND dr.FId IS NOT NULL
) AS new_record (FId)
-- 插入重复部分 多对多
INSERT INTO [Dict_ReportItem]([RptItemName], [SpellCode], [Unit], [RptItemCode],fid,seq )
select DISTINCT
NAME as RptItemName,
PYM as SpellCode,
ValueUnit as Unit,
LisCode as RptItemCode,
FeeItemId as fid,
SortNo as seq
from
PEIS.dbo.feeitemexamitem a
left join PEIS.dbo.examitem b on a.ExamItemId=b.id
where not EXISTS (select 1 from Dict_ReportItem c where c.id=a.ExamItemId and c.fid=a.FeeItemId)
ORDER BY fid,seq
-- 【8、Dict_Sign】#########################################################
INSERT INTO Dict_Sign(ID, RID, SignName, SpellCode, Description, SevereLevel, IsDefault, IsSummary, Group1, Group2, Seq, CID)
SELECT Id,
ExamItemId AS RID,
NAME AS SignName,
PYM AS SpellCode,
SignDetail AS Description,
DiseaseLevel AS SevereLevel,
IsDefaultOption AS IsDefault,
SummaryInclude AS IsSummary,
FirstGroupNo AS Group1,
SecondGroupNo AS Group2,
SortNo AS Seq ,
ConclusionId AS CID
FROM
PEIS.dbo.ExamSign
-- 【9、Exam_Part】#########################################################
INSERT INTO [EXAM_PART] ([ID],[EID],[DeptName],[DeptCode],[InputTime],[InputerCode],[Inputer],[CheckTime],[CheckerCode],[Checker],[VerifyTime],[VerifyCode],[Verifier],[Summary],[CreateTime],[CreatorCode],[Creator], [GiveUpTime],[GiveUpUser],[GiveUpCode] )
SELECT
A.[ID],
A.EnrollmentId AS [EID],
A.DepartmentName AS [DeptName],
B.HISCODE AS [DeptCode],
A.GiveUpOperDate AS [InputTime],
A.InputOperCode AS [InputerCode],
A.InputOperName AS [Inputer],
A.CheckOperDate AS [CheckTime],
A.CheckOperCode AS [CheckerCode],
A.CheckOperName AS [Checker],
A.VerifyOperDate AS [VerifyTime],
A.VerifyOperCode AS [VerifyCode],
A.VerifyOperName AS [Verifier],
A.SummaryContent AS [Summary],
A.CreateOperDate AS [CreateTime],
A.CreateOperCode AS [CreatorCode],
A.CreateOperName AS [Creator],
A.GiveUpOperDate AS [GiveUpTime],
A.GiveUpOperName AS [GiveUpUser],
A.GiveUpOperCode AS [GiveUpCode]
FROM PEIS.DBO.ExamDepartment A
LEFT JOIN PEIS.DBO.Department B ON A.DepartmentId=B.ID
WHERE A.RemoveOperDate IS NULL
-- END
-- 【10、Exam_Result】#########################################################
-- SELECT top 20 * FROM LisResult
-- 普通项目和心电
SELECT count(*) FROM peisdb.dbo.[Exam_Result]
TRUNCATE TABLE peisdb.dbo.[Exam_Result]
begin Transaction
INSERT INTO peisdb.[dbo].[Exam_Result]( [PID],[DID],[DeptName] , [FID], [FeeItemName], [RID], [RptItemName], [TextResult], [Unit], [ItemClass] )
SELECT
Z.Id AS PID
,Y.DepartmentId AS [DID]
,X.DepartmentName AS [DeptName]
,X.[FeeItemId] AS [FID]
,X.Name AS FeeItemName
,Y.[ExamItemId] AS [RID]
,Y.[Name] AS [RptItemName]
,Y.[TextValue] AS [TextResult]
,Y.[ValueUnit] AS [Unit]
,X.ItemType AS [ItemClass]
FROM PEIS.DBO.[EnrollmentFeeItem] X (NOLOCK)
JOIN PEIS.DBO.[EnrollmentExamItem] Y (NOLOCK) ON X.Id = Y.EnrollmentFeeItemId
JOIN PEIS.DBO.[ExamDepartment] Z(NOLOCK) ON Y.DepartmentId = Z.DepartmentId AND Y.EnrollmentId = Z.EnrollmentId AND X.EnrollmentId = Z.EnrollmentId
WHERE X.SendOperDate IS NOT NULL AND X.RemoveOperDate IS NULL AND Y.RemoveOperDate IS NULL AND Z.RemoveOperDate IS NULL
AND X.GiveUpOperDate IS NULL AND Y.GiveUpOperDate IS NULL
-- 检验项目
INSERT INTO peisdb.[dbo].[Exam_Result]( [PID],[DID],[DeptName] , [FID], [FeeItemName], [RID], [RptItemName], [TextResult], [Unit], [ItemClass] ,RPTITEMCODE,[Range],REPORTER,REPORTTIME,UnusualFlag)
SELECT
C.Id AS PID
,B.DepartmentId AS [DID]
,A.DepartmentName AS [DeptName]
,A.[FeeItemId] AS [FID]
,A.Name AS FeeItemName
,B.[ExamItemId] AS [RID]
,B.[Name] AS [RptItemName]
,B.[TextValue] AS [TextResult]
,B.[ValueUnit] AS [Unit]
,A.ItemType AS [ItemClass]
,B.LisCode AS RPTITEMCODE
,B.LisRange AS [Range]
,B.LisVerifyOperName AS REPORTER
,B.LisVerifyOperDate AS REPORTTIME
,B. LisFlag AS UnusualFlag
FROM PEIS.DBO.[EnrollmentApplicationSheetFeeItem] A (NOLOCK)
JOIN PEIS.DBO.[EnrollmentExamItem] B (NOLOCK) ON A.Id = B.EnrollmentApplicationSheetFeeItemId
JOIN PEIS.DBO.[ExamDepartment] C(NOLOCK) ON B.DepartmentId = C.DepartmentId AND B.EnrollmentId = C.EnrollmentId AND A.EnrollmentId =C.EnrollmentId
WHERE A.SendOperDate IS NOT NULL AND A.RemoveOperDate IS NULL AND B.RemoveOperDate IS NULL AND C.RemoveOperDate IS NULL
AND A.GiveUpOperDate IS NULL AND B.GiveUpOperDate IS NULL
order by a.id desc
if(@@error<>0) -- 判断是否报错如果报错就回滚信息否则提交事务
rollback transaction
else
commit transaction
-- 检查
INSERT INTO [Exam_Result]( [PID], [DeptName], [FID], [FeeItemName], [RptItemName], [TextResult], [ItemClass], [Reporter], [ReportTime])
SELECT
C.ID AS PID,C.DeptName,
D.FeeItemId AS FID,D.Name AS FeeItemName,A.NAME AS RptItemName,
A.TextValue AS TextResult,ItemClass='检查',A.PacsVerifyOperName AS Reporter, A.PacsVerifyOperDate AS ReportTime
FROM PEIS.DBO.EnrollmentApplicationSheet A
LEFT JOIN PEIS.DBO.DEPARTMENT B ON A.DepartmentId=B.ID
LEFT JOIN Exam_Part C ON A.EnrollmentId=C.EID AND B.HISCODE=C.DeptCode AND B.NAME=C.DeptName
LEFT JOIN PEIS.DBO.EnrollmentApplicationSheetFeeItem D ON A.ID=D.EnrollmentApplicationSheetId
WHERE A. TextValue IS NOT NULL
-- 【11、Exam_Conclusion】#########################################################
INSERT INTO [dbo].[Exam_Conclusion]([EID],[FID], [RID], [CID], [Conclusion], [Suggestion] , [Seq])
SELECT
[EnrollmentId] AS EID,
[FeeItemId] AS FID,
[ExamItemId] AS RID,
[ConclusionId] AS CID,
[Name] AS Conclusion,
[Suggestion] AS Suggestion ,
SORTNO AS SEQ
FROM PEIS.DBO.ExamConclusion

@ -0,0 +1,158 @@
-- 收费项目
-- 0、全部导入
TRUNCATE TABLE Dict_FeeItem
SET IDENTITY_INSERT dbo.Dict_FeeItem ON
INSERT INTO Dict_FeeItem
(ID, FeeItemCode, SpellCode, Unit)
SELECT
A.Id,
A.HISCheckCode AS FeeItemCode,
A.PYM AS SpellCode,
A.UnitName AS Unit
FROM
peis.dbo.FeeItem A
SET IDENTITY_INSERT dbo.Dict_FeeItem OFF
-- 套餐收费项目
TRUNCATE TABLE [Dict_PackToFeeItem]
SET IDENTITY_INSERT dbo.[Dict_PackToFeeItem] ON
INSERT INTO [Dict_PackToFeeItem]
([ID], [PID], [FID], [Seq], [CreateTime], [CreatorCode], [Creator])
SELECT[Id], [ExamPackId] AS PID, [FeeItemId] AS FID, [SortNo] AS SEQ,CreateTime= '2024-05-24', CreatorCode='0513',Creator= '赵翠回'
FROM PEIS. [dbo].[ExamPackFeeItem]
SET IDENTITY_INSERT dbo.[Dict_PackToFeeItem] OFF
-- 数据重置完成后
-- 根据FeeItemCode对照HIS 同步keyno
update [Dict_FeeItem] set keyno =b.keyno -- select *
from Dict_FeeItem a
left join vi_HisFeeItem b on a.FeeItemCode=b.feeitemcode
where b.DeptCode in ( select DISTINCT HISCode from Dict_Dept ) -- and a.KeyNo is null
-- 1、 HIS中未开展的项目-改为自定义项目,修改自定义编码
TRUNCATE TABLE [Dict_PeisFeeItem]
SET IDENTITY_INSERT dbo.[Dict_PeisFeeItem] ON
INSERT INTO [dbo].[Dict_PeisFeeItem]([ID], [FeeItemCode], [FeeItemName], [SpellCode], [Price], [DeptCode], [DeptName], [UnitName], [ItemClass], [Unit], [KeyNo] )
select ID
, 'F'+ CAST(ID as varchar) AS [FeeItemCode]
, name as [FeeItemName]
,PYM as [SpellCode]
,CostPrice as [Price]
,'' as [DeptCode]
,DepartmentName as [DeptName]
,UnitName
,ItemType as [ItemClass]
,UnitName as [Unit]
,'T'+ CAST(ID as varchar) AS [KeyNo]
FROM PEIS.dbo.FeeItem WHERE ID IN (SELECT id FROM [Dict_FeeItem] WHERE KeyNo is null or keyno='')
SET IDENTITY_INSERT dbo.[Dict_PeisFeeItem] OFF
-- 更改keyno
update [Dict_FeeItem] set keyno ='T'+ CAST(ID as varchar) ,FeeItemCode='F'+ CAST(ID as varchar)
WHERE KeyNo is null or keyno=''
-- 更新 ItemClass
UPDATE [Dict_PeisFeeItem] SET ItemClass='普通' WHERE ItemClass='1' or ItemClass is null
UPDATE [Dict_PeisFeeItem] SET ItemClass='检查' WHERE ItemClass='2'
UPDATE [Dict_PeisFeeItem] SET ItemClass='检验' WHERE ItemClass='3'
-- 2、 收费项目对应的报告项目
-- 收费项目对应的报告项目
TRUNCATE TABLE [Dict_ReportItem]
SET IDENTITY_INSERT dbo.[Dict_ReportItem] ON
INSERT INTO [dbo].[Dict_ReportItem]
([ID], [RptItemName], [SpellCode], [Unit], RptItemCode)
SELECT
ID
,NAME as RptItemName
,PYM as SpellCode
,ValueUnit as Unit
,LisCode as RptItemCode
FROM PEIS.dbo.ExamItem
SET IDENTITY_INSERT dbo.[Dict_ReportItem] OFF
-- 更新FID
UPDATE [Dict_ReportItem] SET FID= TA.FEEITEMID FROM
(
SELECT MIN(FEEITEMID) AS FEEITEMID,A.ID FROM
PEIS.dbo.ExamItem A
JOIN PEIS.dbo.FeeItemExamItem B ON A.ID=B.ExamItemID
GROUP BY A.ID) AS TA
WHERE [Dict_ReportItem].ID=TA.ID
-- 查找未存在的FID对应的报告项目插入
INSERT INTO [dbo].[Dict_ReportItem]
([FID], [RptItemName], [SpellCode], [Unit], RptItemCode)
SELECT
A.FeeItemId AS FID
,NAME as RptItemName
,PYM as SpellCode
,ValueUnit as Unit
,LisCode as RptItemCode
FROM
PEIS.dbo.FeeItemExamItem A
JOIN PEIS.dbo.ExamItem B ON A.ExamItemID =B.ID
WHERE NOT EXISTS (SELECT 1 FROM PEISDB.DBO.Dict_ReportItem WHERE FID=A.FEEITEMID AND RptItemName=B.NAME)
-- 3、 套餐对应收费项目关系修改
TRUNCATE TABLE Dict_Pack
SET IDENTITY_INSERT [dbo].[Dict_Pack] On
INSERT INTO Dict_Pack
(ID, Name, SpellCode, Sex, Marriage, Seq)
SELECT
Id,
NAME ,
PYM AS SpellCode,
SuitableGender AS Sex,
SuitableMarriage AS Marriage,
SortNo AS Seq
FROM
PEIS.dbo.ExamPack where StopOperDate is null
SET IDENTITY_INSERT [dbo].[Dict_Pack] Off
TRUNCATE TABLE Dict_PackToFeeItem
SET IDENTITY_INSERT [dbo].[Dict_PackToFeeItem] On
INSERT INTO [Dict_PackToFeeItem]
([ID], [PID], [FID], [Seq], [CreateTime], [CreatorCode], [Creator])
SELECT[Id], [ExamPackId] AS PID, [FeeItemId] AS FID, [SortNo] AS SEQ,CreateTime= '2024-05-24', CreatorCode='0513',Creator= '赵翠回'
FROM PEIS. [dbo].[ExamPackFeeItem]
SET IDENTITY_INSERT [dbo].[Dict_PackToFeeItem] OFF
UPDATE Exam_Result SET RID = TA.RID
FROM (
SELECT A.ID AS FID,B.RptItemName,B.ID AS RID FROM Dict_FeeItem A
LEFT JOIN Dict_ReportItem B ON B.FID = A. ID) TA
WHERE Exam_Result.FID=TA.FID AND Exam_Result.RptItemName=TA.RptItemName
--SELECT * FROM vi_FeeItem
-- 4、 收费项目重复 ,删除重复项目 ,修改全部对应表的FID
SELECT * FROM dbo.Dict_FeeItem -- where FeeItemCode<>''
SELECT top 200 * FROM peis.dbo.FeeItem -- where HISCheckCode<>''
select * from Dict_FeeItem a left join Dict_ReportItem b on a.id=b.fid where b.fid=44
--
SELECT * FROM Dict_FeeItem WHERE FeeItemCode='110500001A'
UPDATE Dict_FeeItem SET KeyNo=B.KEYNO
FROM Dict_FeeItem A
LEFT JOIN vi_HisFeeItem B ON A.FeeItemCode=B.FeeItemCode
WHERE B. DeptCode in (
'3204',
'3203',
'3202',
'3201',
'3101',
'3001',
'2601',
'2101',
'1102',
'0501',
'0307')

@ -0,0 +1,20 @@
芒市妇幼体检系统反馈问题:
1.进度条能够查看检验/检查项目是否出结果;(因为分检总检都是同一个人,进度条无实用价值)
2.团体搜索默认时间范围,加长到半个月;
3.团体登记,选中团体人员时自动选中该体检者的订单;
4.团体导入,现在导入失败或未保存无法重新导入;
5.团体缴费,没有支付的二维码,(付款方式:公对公,私人打款);
6.折扣和实收金额,四舍五入导致的精度问题;
7.团体订单,记录上一次折扣和实收金额,修改时二次确认,防止误操作修改;
8.团体收费单添加成员费用明细显示,检验费/检查费;
9.科室分检,添加科室"心电图室",正常心电图也需生成结论词;
10.总检界面布局调整;
11. 体检报告,结论词按科室分组展示,总检结论词处添加科室选择用以区分;
12. 体检报告 身高体重血压脉搏视力,单独模块,固定项;
13. 体检报告,十二心电图结果列表中不显示,只需最后附上心电原始报告即可;
14. 检验项目的结果排序,按照LIS的标准排序;
15. 添加新的查询统计表,参见体检科提供的Excel样表;
16. 查询统计按操作人区分,工作量统计(开单人,科室分检人,总检人);
17. 添加模块,总检中直接录入所有分检科室的结果,用以一键保存/审核所有分检科室;
18. 收费室缴费时,显示的是原价,需要手动录入折扣金额。
Loading…
Cancel
Save