feat(healthcare): 添加医保状态验证功能
- 在Mapper接口中新增verifyInsuranceStatus方法,用于查询患者医保缴费状态- 在Service接口和实现类中添加对应的医保验证业务逻辑 - 在Controller中新增GET接口,提供医保状态校验的HTTP访问入口- 引入LocalDate用于获取当前年份,与数据库中的缴费年份进行比对 - 添加了MyBatis注解支持,包括@Param和@Select,以简化SQL映射配置
This commit is contained in:
@@ -369,5 +369,16 @@ public class PatientDiagnosisController extends BaseController {
|
||||
});
|
||||
|
||||
}
|
||||
/*
|
||||
|
||||
* 根据前端传回的省份证和姓名进行医保校验,判断该学生医保是否缴费
|
||||
*/
|
||||
@GetMapping("/verify")
|
||||
public AjaxResult verifyInsuranceStatus(
|
||||
@RequestParam String idCard,
|
||||
@RequestParam String name) {
|
||||
int status = iPatientDiagnosisService.verifyInsuranceStatus(idCard, name);
|
||||
return success(status);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,6 +4,8 @@ package com.ruoyi.os.mapper;
|
||||
import java.util.List;
|
||||
import com.ruoyi.os.domain.HealthcareOsPatientDiagnosis;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
|
||||
/**
|
||||
* 患者诊断信息Mapper接口
|
||||
@@ -81,4 +83,14 @@ public interface HealthcareOsPatientDiagnosisMapper
|
||||
* @return
|
||||
*/
|
||||
public void updateHealthchcareOspatientDiagnoisDocitNameUtile();
|
||||
}
|
||||
|
||||
/**
|
||||
* 宁博 2025-05-21
|
||||
* 验证医保是否可用
|
||||
* @param idCard 省份证
|
||||
* @param name 姓名
|
||||
* @return 0 可用 1 不可用
|
||||
*/
|
||||
@Select("SELECT payment_year FROM patient_insurance_info WHERE id_number = #{idCard} AND name = #{name}")
|
||||
Integer verifyInsuranceStatus(@Param("idCard") String idCard, @Param("name") String name);
|
||||
}
|
||||
@@ -159,5 +159,12 @@ public interface IPatientDiagnosisService {
|
||||
* 2025-05-14
|
||||
*/
|
||||
public List<PatientMedicalRecordsYesVO> gainPrescriptionDetailsYesList(PatientMedicalRecordsVO patientMedicalRecordsVO);
|
||||
|
||||
/**
|
||||
* 宁博 2025-05-21
|
||||
* 验证医保是否可用
|
||||
* @param idCard 省份证
|
||||
* @param name 姓名
|
||||
* @return 0 可用 1 不可用
|
||||
*/
|
||||
int verifyInsuranceStatus(String idCard, String name);
|
||||
}
|
||||
|
||||
@@ -25,6 +25,7 @@ import org.springframework.stereotype.Service;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.Duration;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
import java.util.*;
|
||||
@@ -1122,6 +1123,19 @@ public class PatientDiagnosisServiceImpl implements IPatientDiagnosisService {
|
||||
//
|
||||
return timeList;
|
||||
}
|
||||
/**
|
||||
* 宁博 2025-05-21
|
||||
* 验证医保是否可用
|
||||
* @param idCard 省份证
|
||||
* @param name 姓名
|
||||
* @return 0 可用 1 不可用
|
||||
*/
|
||||
@Override
|
||||
public int verifyInsuranceStatus(String idCard, String name) {
|
||||
Integer paymentYear = healthcareOsPatientDiagnosisMapper.verifyInsuranceStatus(idCard, name);
|
||||
int currentYear = LocalDate.now().getYear();
|
||||
return (paymentYear != null && paymentYear == currentYear) ? 0 : 1;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user