| | |
| | | import java.time.LocalDate; |
| | | import java.time.ZoneId; |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; |
| | | import com.ruoyi.common.annotation.NotRepeatCommit; |
| | | import com.ruoyi.project.common.CalculateDateUtils; |
| | | import com.ruoyi.project.domain.ServiceDonationwitness; |
| | | import com.ruoyi.project.domain.vo.MedicalEvaluationVO; |
| | | import com.ruoyi.project.service.IServiceDonationwitnessService; |
| | | import io.swagger.annotations.Api; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.security.access.prepost.PreAuthorize; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.util.CollectionUtils; |
| | |
| | | * @author ruoyi |
| | | * @date 2021-11-19 |
| | | */ |
| | | @Slf4j |
| | | @Api("医疗评估管理") |
| | | @RestController |
| | | @RequestMapping("/project/medicalevaluation") |
| | | public class ServiceMedicalevaluationController extends BaseController { |
| | | @Autowired |
| | | private IServiceMedicalevaluationService serviceMedicalevaluationService; |
| | | |
| | | @Autowired |
| | | private IServiceDonationwitnessService serviceDonationwitnessService; |
| | | |
| | | /** |
| | | * 查询医学评估列表 |
| | |
| | | startPage(); |
| | | List<MedicalEvaluationVO> list = serviceMedicalevaluationService.selectVOList(medicalEvaluationVO); |
| | | for (MedicalEvaluationVO medicalEvaluationVO1 : list) { |
| | | if (medicalEvaluationVO1.getBirthday() != null) { |
| | | Map<String, String> map = CalculateDateUtils.calculateAge(medicalEvaluationVO1.getBirthday().toInstant().atZone(ZoneId.systemDefault()).toLocalDate(), LocalDate.now()); |
| | | medicalEvaluationVO1.setAge(org.apache.commons.lang3.ObjectUtils.isNotEmpty(map.get("age")) ? Long.valueOf(map.get("age")) : null); |
| | | medicalEvaluationVO1.setAgeunit(map.get("ageUnit")); |
| | | medicalEvaluationVO1.setAge2(org.apache.commons.lang3.ObjectUtils.isNotEmpty(map.get("age2")) ? Long.valueOf(map.get("age2")) : null); |
| | | medicalEvaluationVO1.setAgeunit2(map.get("ageUnit2")); |
| | | //先给个年龄默认值(因为age是数字类型,不能放横杠,所以就所横扛放到单位上) |
| | | medicalEvaluationVO1.setAgeunit("-"); |
| | | medicalEvaluationVO1.setAge(null); |
| | | medicalEvaluationVO1.setAge2(null); |
| | | //获取死亡时间,如果获取见证里有死亡时间,则进行计算他的年龄 |
| | | ServiceDonationwitness sdw = new ServiceDonationwitness(); |
| | | sdw.setInfoid(medicalEvaluationVO1.getInfoid()); |
| | | List<ServiceDonationwitness> serviceDonationwitnessList = serviceDonationwitnessService.selectServiceDonationwitnessList(sdw); |
| | | if (!CollectionUtils.isEmpty(serviceDonationwitnessList) && medicalEvaluationVO1.getBirthday() != null) { |
| | | Date deathtime = serviceDonationwitnessList.get(0).getDeathtime(); |
| | | if (ObjectUtils.isNotEmpty(deathtime)) { |
| | | Map<String, String> map = CalculateDateUtils.calculateAge(medicalEvaluationVO1.getBirthday().toInstant().atZone(ZoneId.systemDefault()).toLocalDate(), deathtime.toInstant().atZone(ZoneId.systemDefault()).toLocalDate()); |
| | | if (ObjectUtils.isEmpty(map)) { |
| | | log.error("MedicalEvaluationVO出生日期:{},MedicalEvaluationVO死亡日期:{}", medicalEvaluationVO1.getBirthday(), deathtime); |
| | | continue; |
| | | } |
| | | medicalEvaluationVO1.setAge(org.apache.commons.lang3.ObjectUtils.isNotEmpty(map.get("age")) ? Long.valueOf(map.get("age")) : null); |
| | | medicalEvaluationVO1.setAgeunit(map.get("ageUnit")); |
| | | medicalEvaluationVO1.setAge2(org.apache.commons.lang3.ObjectUtils.isNotEmpty(map.get("age2")) ? Long.valueOf(map.get("age2")) : null); |
| | | medicalEvaluationVO1.setAgeunit2(map.get("ageUnit2")); |
| | | } |
| | | } |
| | | |
| | | } |
| | | return getDataTable(list); |
| | | } |