ソースを参照

下载手术操作入库时生成拼音码

lighter 3 年 前
コミット
13bf4b4afe

+ 7 - 7
src/main/java/thyyxxk/webserver/dao/his/medicalinsurance/SiDownloadDao.java

@@ -200,16 +200,16 @@ public interface SiDownloadDao {
 
     @Insert("<script>" +
             "insert into t_si_dl_oprtn (code, chapter, chapter_code_range, chapter_name, class_order_code, class_order_name, " +
-            "subcode, subname, fine_code, details_name, surgical_operation_code, operation_operation_name, use_the_tag, " +
-            "remarks, unique_record_number, data_creation_time, data_update_time, version_number, version_name, " +
-            "national_operation_code, national_operation_name, clinical_operation_code, clinical_operation_name, valid_flag) " +
+            "subcode, subname, fine_code, details_name, surgical_operation_code, operation_operation_name, use_the_tag, remarks, " +
+            "unique_record_number, data_creation_time, data_update_time, version_number, version_name, national_operation_code, " +
+            "national_operation_name, clinical_operation_code, clinical_operation_name, valid_flag, py_code) " +
             "values " +
             "<foreach collection='list' item='itm' open='' separator=',' close=''>" +
             "(#{itm.code}, #{itm.chapter}, #{itm.chapterCodeRange}, #{itm.chapterName}, #{itm.classOrderCode}, #{itm.classOrderName}, " +
-            "#{itm.subcode}, #{itm.subname}, #{itm.fineCode}, #{itm.detailsName}, #{itm.surgicalOperationCode}, " +
-            "#{itm.operationOperationName}, #{itm.useTheTag}, #{itm.remarks}, #{itm.uniqueRecordNumber}, #{itm.dataCreationTime}, " +
-            "#{itm.dataUpdateTime}, #{itm.versionNumber}, #{itm.versionName}, #{itm.nationalOperationCode}, " +
-            "#{itm.nationalOperationName}, #{itm.clinicalOperationCode}, #{itm.clinicalOperationName}, #{itm.validFlag})" +
+            "#{itm.subcode}, #{itm.subname}, #{itm.fineCode}, #{itm.detailsName}, #{itm.surgicalOperationCode}, #{itm.operationOperationName}, " +
+            "#{itm.useTheTag}, #{itm.remarks}, #{itm.uniqueRecordNumber}, #{itm.dataCreationTime}, #{itm.dataUpdateTime}, " +
+            "#{itm.versionNumber}, #{itm.versionName}, #{itm.nationalOperationCode}, #{itm.nationalOperationName}, " +
+            "#{itm.clinicalOperationCode}, #{itm.clinicalOperationName}, #{itm.validFlag}, #{itm.pyCode})" +
             "</foreach>" +
             "</script>")
     void insertOprtnBatch(List<SiDlOprtn> list);

+ 8 - 2
src/main/java/thyyxxk/webserver/entity/medicalinsurance/download/SiDlOprtn.java

@@ -3,6 +3,7 @@ package thyyxxk.webserver.entity.medicalinsurance.download;
 import java.io.Serializable;
 
 import lombok.Data;
+import thyyxxk.webserver.utils.PingYinUtils;
 
 @Data
 public class SiDlOprtn implements Serializable {
@@ -129,11 +130,15 @@ public class SiDlOprtn implements Serializable {
 	 */
 	private String versionName;
 
+	/**
+	 * 拼音码
+	 * */
+	private String pyCode;
+
 	public SiDlOprtn() {
 	}
 
-	public SiDlOprtn(String tempstr) {
-		String[] arr = tempstr.split("\t");
+	public SiDlOprtn(String[] arr) {
 		code = arr[0].trim();
 		chapter = arr[1].trim();
 		chapterCodeRange = arr[2].trim();
@@ -158,6 +163,7 @@ public class SiDlOprtn implements Serializable {
 		dataUpdateTime = arr[21].trim();
 		versionNumber = arr[22].trim();
 		versionName = arr[23].trim();
+		pyCode = PingYinUtils.getAllPinYinHeadChar(operationOperationName);
 	}
 
 }

+ 5 - 1
src/main/java/thyyxxk/webserver/service/medicalinsurance/SiDownloadService.java

@@ -415,7 +415,11 @@ public class SiDownloadService {
             List<SiDlOprtn> list = new ArrayList<>();
             while (!queue.isEmpty()) {
                 String tempstr = queue.poll();
-                list.add(new SiDlOprtn(tempstr));
+                String[] arr = tempstr.split("\t");
+                if (StringUtil.isBlank(arr[10])) {
+                    continue;
+                }
+                list.add(new SiDlOprtn(arr));
                 if (list.size() == 20) {
                     dnlddao.insertOprtnBatch(list);
                     list.clear();