This commit is contained in:
@ -21,7 +21,7 @@
|
||||
<!-- Файл для трансформации XML->HTML->PDF при помощи библиотек iText Core, iText XMLWorker или аналогичных
|
||||
Данный файл должен использоваться только для трансформации документа СЭМД (141) Льготный рецепт на лекарственный препарат, изделие медицинского назначения и специализированный продукт лечебного питания (CDA) Редакция 4, v1.7
|
||||
Разработан по заказу Минздрава РФ компанией ООО "Цифромед" 20.02.2024
|
||||
Замечания по данному файлу можно направить на почту egisz@stp-egisz.ru
|
||||
Замечания по данному файлу можно направить на почту egisz@stp-egisz.ru
|
||||
Тема сообщения: замечания и вопросы по файлам визуализации -->
|
||||
<head>
|
||||
<style>
|
||||
@ -32,40 +32,40 @@
|
||||
margin-left: 10pt;
|
||||
margin-right: 20pt;
|
||||
}
|
||||
|
||||
|
||||
table {
|
||||
table-layout: fixed;
|
||||
width: 98%;
|
||||
border-collapse: collapse;
|
||||
|
||||
|
||||
font-family: Arial, sans-serif;
|
||||
word-wrap: break-word;
|
||||
margin-top: 0;
|
||||
margin-bottom: 10pt;
|
||||
margin-left: 20pt;
|
||||
}
|
||||
|
||||
|
||||
td {
|
||||
vertical-align: top;
|
||||
padding: 2;
|
||||
}
|
||||
|
||||
|
||||
.table-break {
|
||||
margin-left: 0;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
|
||||
|
||||
.param {
|
||||
font-size: 15px;
|
||||
border: 1pt solid gray;
|
||||
|
||||
|
||||
word-wrap: none;
|
||||
}
|
||||
|
||||
|
||||
.created {
|
||||
vertical-align: middle;
|
||||
}
|
||||
|
||||
|
||||
.medorg {
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
@ -75,7 +75,7 @@
|
||||
margin-bottom: 5pt;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
|
||||
.address {
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
@ -85,7 +85,7 @@
|
||||
margin-bottom: 5pt;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
|
||||
.emd {
|
||||
text-align: center;
|
||||
font-size: 18px;
|
||||
@ -95,7 +95,7 @@
|
||||
margin-bottom: 25pt;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
|
||||
.date {
|
||||
text-align: center;
|
||||
font-size: 15px;
|
||||
@ -105,7 +105,7 @@
|
||||
margin-bottom: 5pt;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
|
||||
.tablegray {
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
@ -114,7 +114,7 @@
|
||||
margin-top: 5pt;
|
||||
margin-bottom: 5pt;
|
||||
}
|
||||
|
||||
|
||||
.tablegrayhead {
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
@ -123,7 +123,7 @@
|
||||
margin-top: 5pt;
|
||||
margin-bottom: 5pt;
|
||||
}
|
||||
|
||||
|
||||
.tableblack {
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
@ -133,7 +133,7 @@
|
||||
margin-bottom: 3pt;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
|
||||
.tableresult {
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
@ -153,8 +153,8 @@
|
||||
margin-bottom: 2pt;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
.tableresultscore {
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
@ -164,7 +164,7 @@
|
||||
margin-bottom: 5pt;
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
|
||||
.createdate {
|
||||
text-align: right;
|
||||
font-size: 15px;
|
||||
@ -172,7 +172,7 @@
|
||||
color: #aaaaaa;
|
||||
margin-right: 10pt;
|
||||
}
|
||||
|
||||
|
||||
.pagenumber {
|
||||
text-align: center;
|
||||
valign: center;
|
||||
@ -181,29 +181,29 @@
|
||||
color: #aaaaaa;
|
||||
margin-right: 10pt;
|
||||
}
|
||||
|
||||
|
||||
h2+p {
|
||||
page-break-inside: avoid;
|
||||
}
|
||||
|
||||
|
||||
th {
|
||||
text-align: left;
|
||||
font-size: 15px;
|
||||
padding: 5pt;
|
||||
background-color: #D9D9D6;
|
||||
}
|
||||
|
||||
|
||||
.first-block-form {
|
||||
margin-top: -10pt;
|
||||
}
|
||||
|
||||
|
||||
.block-form {
|
||||
border-collapse: collapse;
|
||||
margin-top: 0;
|
||||
margin-bottom: 0;
|
||||
border-bottom: 1pt solid #e0e0e0;
|
||||
}
|
||||
|
||||
|
||||
.end-block-form {
|
||||
}
|
||||
</style>
|
||||
@ -267,7 +267,7 @@
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
<xsl:choose>
|
||||
<xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:providerOrganization/n1:id[2][not(@nullFlavor)]">
|
||||
<br/><xsl:text>Лицензия на осуществление медицинской деятельности: </xsl:text>
|
||||
@ -305,7 +305,7 @@
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</table>
|
||||
<table class="block-form">
|
||||
<table class="block-form">
|
||||
<tr>
|
||||
<td colspan="8">
|
||||
<h1 class="emd">
|
||||
@ -325,7 +325,7 @@
|
||||
</b>
|
||||
</h1>
|
||||
</td>
|
||||
</tr>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<h2 class="tablegray">
|
||||
@ -362,7 +362,7 @@
|
||||
</xsl:call-template>
|
||||
<xsl:text>)</xsl:text>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</p>
|
||||
@ -510,7 +510,7 @@
|
||||
<xsl:with-param name="newdate" select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/identity:IdentityDoc/identity:IssueDate/@value"/>
|
||||
</xsl:call-template>
|
||||
<xsl:choose>
|
||||
<xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/identity:IdentityDoc/identity:IssueOrgName[not(@nullFlavor)]">
|
||||
<xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/identity:IdentityDoc/identity:IssueOrgName[not(@nullFlavor)]">
|
||||
<xsl:text> выдан </xsl:text>
|
||||
<xsl:value-of select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/identity:IdentityDoc/identity:IssueOrgName"/>
|
||||
</xsl:when>
|
||||
@ -522,15 +522,15 @@
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
<xsl:choose>
|
||||
<xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:telecom[not(@nullFlavor)]">
|
||||
<tr>
|
||||
<tr>
|
||||
<td colspan="8">
|
||||
<p class="tableblack">
|
||||
<xsl:for-each select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:telecom">
|
||||
@ -756,7 +756,7 @@
|
||||
</tr>
|
||||
<xsl:choose>
|
||||
<xsl:when test="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:guardian/n1:telecom[not(@nullFlavor)]">
|
||||
<tr>
|
||||
<tr>
|
||||
<td colspan="8">
|
||||
<p class="tableblack">
|
||||
<xsl:for-each select="/n1:ClinicalDocument/n1:recordTarget/n1:patientRole/n1:patient/n1:guardian/n1:telecom">
|
||||
@ -770,7 +770,7 @@
|
||||
</tr>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</table>
|
||||
</table>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
<table class="block-form">
|
||||
@ -787,7 +787,7 @@
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
<tr>
|
||||
<td colspan="4">
|
||||
<h2 class="tablegray">
|
||||
@ -940,7 +940,7 @@
|
||||
<xsl:otherwise>
|
||||
<xsl:value-of select="./n1:product/n1:manufacturedProduct/n1:manufacturedMaterial/n1:code/@displayName"/>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
</p>
|
||||
<xsl:choose>
|
||||
<xsl:when test="./n1:text">
|
||||
@ -948,7 +948,7 @@
|
||||
<xsl:value-of select="./n1:text"/>
|
||||
</p>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
</td>
|
||||
<td class="param">
|
||||
<p class="tableresult">
|
||||
@ -956,10 +956,10 @@
|
||||
<xsl:text> </xsl:text>
|
||||
<xsl:value-of select="./n1:quantity/n1:translation/@displayName"/>
|
||||
</p>
|
||||
</td>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</table>
|
||||
</table>
|
||||
</p>
|
||||
</xsl:if>
|
||||
<xsl:if test="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:code/@code='RECIPE']/n1:entry/n1:substanceAdministration">
|
||||
@ -992,7 +992,7 @@
|
||||
<xsl:value-of select="./n1:text"/>
|
||||
</p>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
</td>
|
||||
<td class="param">
|
||||
<p class="tableresult">
|
||||
@ -1075,24 +1075,24 @@
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
<br/>
|
||||
</xsl:for-each>
|
||||
</xsl:for-each>
|
||||
</p>
|
||||
</td>
|
||||
<td class="param">
|
||||
<xsl:for-each select="./n1:precondition/n1:criterion[n1:code/@code='ASSERTION']">
|
||||
<p class="tableresult">
|
||||
<xsl:value-of select="./n1:value"/>
|
||||
<xsl:value-of select="./n1:value"/>
|
||||
</p>
|
||||
</xsl:for-each>
|
||||
</td>
|
||||
<td class="param">
|
||||
<p class="tableresult">
|
||||
<xsl:value-of select="./n1:entryRelationship/n1:observation[n1:code/@code='6011']/n1:value/n1:translation/@value"/>
|
||||
<xsl:value-of select="./n1:entryRelationship/n1:observation[n1:code/@code='6011']/n1:value/n1:translation/@value"/>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</table>
|
||||
</table>
|
||||
</p>
|
||||
</xsl:when>
|
||||
<xsl:otherwise>
|
||||
@ -1205,20 +1205,20 @@
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
<br/>
|
||||
</xsl:for-each>
|
||||
</xsl:for-each>
|
||||
</p>
|
||||
</td>
|
||||
<td class="param">
|
||||
<p class="tableresult">
|
||||
<xsl:value-of select="./n1:entryRelationship/n1:observation[n1:code/@code='6011']/n1:value/n1:translation/@value"/>
|
||||
<xsl:value-of select="./n1:entryRelationship/n1:observation[n1:code/@code='6011']/n1:value/n1:translation/@value"/>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</table>
|
||||
</table>
|
||||
</p>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
</xsl:if>
|
||||
</td>
|
||||
</tr>
|
||||
@ -1226,13 +1226,13 @@
|
||||
<xsl:choose>
|
||||
<xsl:when test="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:code/@code='LINKDOCS']">
|
||||
<table class="block-form">
|
||||
<tr>
|
||||
<tr>
|
||||
<td colspan="8">
|
||||
<h2 class="tablegrayhead">
|
||||
<xsl:text>Связанные документы</xsl:text>
|
||||
</h2>
|
||||
<xsl:for-each select="/n1:ClinicalDocument/n1:component/n1:structuredBody/n1:component/n1:section[n1:code/@code='LINKDOCS']/n1:entry/n1:act">
|
||||
<tr>
|
||||
<tr>
|
||||
<td colspan="8">
|
||||
<h2 class="tablegray">
|
||||
<xsl:value-of select="./n1:code/@displayName"/>
|
||||
@ -1261,13 +1261,13 @@
|
||||
<p class="tableblack">
|
||||
<xsl:value-of select="./n1:text"/>
|
||||
</p>
|
||||
</td>
|
||||
</td>
|
||||
</tr>
|
||||
</xsl:for-each>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</xsl:when>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
<table class="end-block-form">
|
||||
<tr>
|
||||
@ -1312,12 +1312,12 @@
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</p>
|
||||
</td>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
</xsl:template>
|
||||
</xsl:template>
|
||||
<xsl:template name="getR">
|
||||
<xsl:param name="templateId"/>
|
||||
<xsl:variable name="templateIdLength" select="string-length($templateId)"/>
|
||||
@ -1730,7 +1730,7 @@
|
||||
<xsl:for-each select="$contact[position()>1]">
|
||||
<xsl:text>; </xsl:text>
|
||||
<xsl:value-of select="substring-after($contact[position()>1], ':')"/>
|
||||
</xsl:for-each>
|
||||
</xsl:for-each>
|
||||
</xsl:when>
|
||||
<xsl:when test="substring($contact,1,7)='mailto:'">
|
||||
<xsl:text>E-mail: </xsl:text>
|
||||
@ -1738,7 +1738,7 @@
|
||||
<xsl:for-each select="$contact[position()>1]">
|
||||
<xsl:text>; </xsl:text>
|
||||
<xsl:value-of select="substring-after($contact[position()>1], ':')"/>
|
||||
</xsl:for-each>
|
||||
</xsl:for-each>
|
||||
</xsl:when>
|
||||
<xsl:when test="substring($contact,1,5)='http:'">
|
||||
<xsl:text>Сайт: </xsl:text>
|
||||
@ -1746,7 +1746,7 @@
|
||||
<xsl:for-each select="$contact[position()>1]">
|
||||
<xsl:text>; </xsl:text>
|
||||
<xsl:value-of select="substring-after($contact[position()>1], ':')"/>
|
||||
</xsl:for-each>
|
||||
</xsl:for-each>
|
||||
</xsl:when>
|
||||
<xsl:when test="substring($contact,1,4)='fax:'">
|
||||
<xsl:text>Факс: </xsl:text>
|
||||
@ -1754,7 +1754,7 @@
|
||||
<xsl:for-each select="$contact[position()>1]">
|
||||
<xsl:text>; </xsl:text>
|
||||
<xsl:value-of select="substring-after($contact[position()>1], ':')"/>
|
||||
</xsl:for-each>
|
||||
</xsl:for-each>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
@ -1773,7 +1773,7 @@
|
||||
<xsl:otherwise>
|
||||
<xsl:text>Номер медицинской карты: </xsl:text>
|
||||
</xsl:otherwise>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
<xsl:template name="formatNullFlavor">
|
||||
<xsl:param name="nullflavor"/>
|
||||
@ -1823,7 +1823,7 @@
|
||||
<xsl:when test="$nullflavor='QS'">
|
||||
<xsl:text>Достаточное количество</xsl:text>
|
||||
</xsl:when>
|
||||
</xsl:choose>
|
||||
</xsl:choose>
|
||||
</xsl:template>
|
||||
</xsl:stylesheet>
|
||||
|
||||
@ -1831,4 +1831,4 @@
|
||||
|
||||
v1.6: Изменен блок style и getAges
|
||||
|
||||
v1.7: Скорректирован блок "Наименование изделия" и "Назначено" секции "Рецепт" для отображения text при его наличии -->
|
||||
v1.7: Скорректирован блок "Наименование изделия" и "Назначено" секции "Рецепт" для отображения text при его наличии -->
|
||||
|
||||
Reference in New Issue
Block a user