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