wjj 1 روز پیش
والد
کامیت
540e830a1e

+ 23 - 0
fs-admin/src/main/java/com/fs/his/controller/FsKdzlCallRecordController.java

@@ -42,9 +42,32 @@ public class FsKdzlCallRecordController extends BaseController
     {
         startPage();
         List<FsKdzlCallRecord> list = fsKdzlCallRecordService.selectFsKdzlCallRecordList(fsKdzlCallRecord);
+        if (list != null && !list.isEmpty()) {
+            for (FsKdzlCallRecord record : list) {
+                if (record.getCaller() != null) {
+                    record.setCaller(maskPhoneMiddleFive(record.getCaller()));
+                }
+                if (record.getCalled() != null) {
+                    record.setCalled(maskPhoneMiddleFive(record.getCalled()));
+                }
+            }
+        }
+
         return getDataTable(list);
     }
 
+    /**
+     * 手机号中间4位脱敏处理 (例如: 13812345678 -> 138****5678)
+     * @param phone 原始手机号
+     * @return 脱敏后的手机号
+     */
+    private String maskPhoneMiddleFive(String phone) {
+        if (phone == null || phone.isEmpty()) {
+            return phone;
+        }
+        return phone.replaceAll("(\\d{3})\\d{4}(\\d{4})", "$1****$2");
+    }
+
     /**
      * 导出口袋助理通话记录列表
      */

+ 1 - 0
fs-service/src/main/resources/mapper/his/FsKdzlCallRecordMapper.xml

@@ -37,6 +37,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="customerName != null  and customerName != ''"> and customer_name like concat('%', #{customerName}, '%')</if>
             <if test="beginCallTime != null and endCallTime != null"> and call_time between #{beginCallTime} and #{endCallTime}</if>
         </where>
+        order by call_time desc
     </select>
     
     <select id="selectFsKdzlCallRecordById" parameterType="Long" resultMap="FsKdzlCallRecordResult">