Explorar o código

修改益寿缘生成处方图片布局的接口

cgp hai 2 días
pai
achega
4489db5216

+ 7 - 12
fs-service/src/main/java/com/fs/his/service/impl/PrescriptionImageServiceImpl.java

@@ -248,22 +248,17 @@ public class PrescriptionImageServiceImpl implements PrescriptionImageService {
      * 药品内部两行之间无空行,每个药品(包括最后一个)之后都加一个空白行
      * @return 返回最后一行的Y坐标(即最后一个空白行之后的位置)
      */
-    /**
-     * 绘制药品列表(每药两行:第一行药名规格数量,第二行用法用量)
-     * 药品内部两行之间有细微间距(不粘连),每个药品(包括最后一个)之后都加一个空白行
-     * @return 返回最后一行的Y坐标(即最后一个空白行之后的位置)
-     */
     public int drawDrugList(Graphics2D pen, List<FsPrescribeDrug> drugs) {
         if (drugs == null || drugs.isEmpty()) {
             return 330;
         }
 
         int x = 133;
-        int y = 728;
+        int y = 680;
 
         // 行高设置(可根据实际字体微调)
         int innerLineSpacing = 40;  // 药品内部两行之间的间距(含呼吸感,避免粘连)
-        int blankLine = 46;         // 药品之间的空白行(比内部稍大,形成视觉分组)
+        int blankLine = 40;         // 药品之间的空白行(比内部稍大,形成视觉分组)
 
         for (FsPrescribeDrug drug : drugs) {
             // ========== 第一行:药名 + 规格 + 数量 ==========
@@ -275,9 +270,9 @@ public class PrescriptionImageServiceImpl implements PrescriptionImageService {
                 line1.append(" ").append(drug.getDrugSpec());
             }
             if (drug.getDrugNum() != null) {
-                line1.append(" x ").append(drug.getDrugNum());
+                line1.append("x").append(drug.getDrugNum());
                 if (StringUtils.isNotBlank(drug.getDrugUnit())) {
-                    line1.append(drug.getDrugUnit());
+                    line1.append(drug.getDrugUnit()).append("。");
                 }
             }
 
@@ -290,16 +285,16 @@ public class PrescriptionImageServiceImpl implements PrescriptionImageService {
             // ========== 第二行:用法用量 ==========
             StringBuilder line2 = new StringBuilder();
             if (StringUtils.isNotBlank(drug.getUsageMethod())) {
-                line2.append(drug.getUsageMethod());
+                line2.append("用法用量:").append(drug.getUsageMethod());
             }
             if (StringUtils.isNotBlank(drug.getUsagePerUseCount())) {
-                line2.append(drug.getUsagePerUseCount());
+                line2.append(",").append(drug.getUsagePerUseCount());
                 if (StringUtils.isNotBlank(drug.getUsagePerUseUnit())) {
                     line2.append(drug.getUsagePerUseUnit());
                 }
             }
             if (StringUtils.isNotBlank(drug.getUsageFrequencyUnit())) {
-                line2.append(" ").append(drug.getUsageFrequencyUnit());
+                line2.append(",").append(drug.getUsageFrequencyUnit()).append("。");
             }
 
             String secondLine = line2.toString().trim();