Prechádzať zdrojové kódy

修复同步口袋助理的bug

cgp 3 dní pred
rodič
commit
0c8cf2f1bd

+ 3 - 3
fs-service/src/main/java/com/fs/his/service/impl/FsImportMemberServiceImpl.java

@@ -177,9 +177,9 @@ public class FsImportMemberServiceImpl extends ServiceImpl<FsImportMemberMapper,
             customer.setAllergyHistory(member.getAllergyHistory());
             customer.setClaimStatus(0);  //未认领状态
             // 解析口袋助理JSON
-            if (StringUtils.isNotBlank(member.getKdzlMemberJson())) {
-                KdzlJsonParser.fillCustomerFromKdzlJson(customer, member.getKdzlMemberJson());
-            }
+//            if (StringUtils.isNotBlank(member.getKdzlMemberJson())) {
+//                KdzlJsonParser.fillCustomerFromKdzlJson(customer, member.getKdzlMemberJson());
+//            }
             return customer;
         }).collect(Collectors.toList());
 

+ 4 - 4
fs-service/src/main/java/com/fs/his/utils/KdzlJsonParser.java

@@ -56,10 +56,10 @@ public class KdzlJsonParser {
 //            }
 
             // 3. 解析通话状态(文本描述,仅从lbl_doc中读取)
-            String callStatus = parseCallStatus(custm.getLbl_doc());
-            if (StringUtils.isNotBlank(callStatus)) {
-                customer.setKdzlCallStatus(callStatus);
-            }
+//            String callStatus = parseCallStatus(custm.getLbl_doc());
+//            if (StringUtils.isNotBlank(callStatus)) {
+//                customer.setKdzlCallStatus(callStatus);
+//            }
 
         } catch (Exception e) {
             log.error("待同步的importMemberId:{}", customer.getImportMemberId());

+ 27 - 6
fs-service/src/main/resources/mapper/qw/FsCompanyCustomerMapper.xml

@@ -371,33 +371,54 @@
         <trim prefix="SET" suffixOverrides=",">
             <trim prefix="present_illness = CASE" suffix="END,">
                 <foreach collection="companyCustomers" item="item">
-                    WHEN import_member_id = #{item.importMemberId} THEN #{item.presentIllness}
+                    WHEN import_member_id = #{item.importMemberId}
+                    AND #{item.presentIllness} IS NOT NULL
+                    AND #{item.presentIllness} != ''
+                    THEN #{item.presentIllness}
                 </foreach>
+                ELSE present_illness
             </trim>
             <trim prefix="current_medication = CASE" suffix="END,">
                 <foreach collection="companyCustomers" item="item">
-                    WHEN import_member_id = #{item.importMemberId} THEN #{item.currentMedication}
+                    WHEN import_member_id = #{item.importMemberId}
+                    AND #{item.currentMedication} IS NOT NULL
+                    AND #{item.currentMedication} != ''
+                    THEN #{item.currentMedication}
                 </foreach>
+                ELSE current_medication
             </trim>
             <trim prefix="allergy_history = CASE" suffix="END,">
                 <foreach collection="companyCustomers" item="item">
-                    WHEN import_member_id = #{item.importMemberId} THEN #{item.allergyHistory}
+                    WHEN import_member_id = #{item.importMemberId}
+                    AND #{item.allergyHistory} IS NOT NULL
+                    AND #{item.allergyHistory} != ''
+                    THEN #{item.allergyHistory}
                 </foreach>
+                ELSE allergy_history
             </trim>
             <trim prefix="kdzl_add_wechat_status = CASE" suffix="END,">
                 <foreach collection="companyCustomers" item="item">
-                    WHEN import_member_id = #{item.importMemberId} THEN #{item.kdzlAddWechatStatus}
+                    WHEN import_member_id = #{item.importMemberId}
+                    AND #{item.kdzlAddWechatStatus} IS NOT NULL
+                    THEN #{item.kdzlAddWechatStatus}
                 </foreach>
+                ELSE kdzl_add_wechat_status
             </trim>
             <trim prefix="kdzl_make_status = CASE" suffix="END,">
                 <foreach collection="companyCustomers" item="item">
-                    WHEN import_member_id = #{item.importMemberId} THEN #{item.kdzlMakeStatus}
+                    WHEN import_member_id = #{item.importMemberId}
+                    AND #{item.kdzlMakeStatus} IS NOT NULL
+                    THEN #{item.kdzlMakeStatus}
                 </foreach>
+                ELSE kdzl_make_status
             </trim>
             <trim prefix="kdzl_call_status = CASE" suffix="END,">
                 <foreach collection="companyCustomers" item="item">
-                    WHEN import_member_id = #{item.importMemberId} THEN #{item.kdzlCallStatus}
+                    WHEN import_member_id = #{item.importMemberId}
+                    AND #{item.kdzlCallStatus} IS NOT NULL
+                    THEN #{item.kdzlCallStatus}
                 </foreach>
+                ELSE kdzl_call_status
             </trim>
         </trim>
         WHERE import_member_id IN