package com.smartor.service.impl; import java.util.List; import com.ruoyi.common.utils.DateUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.ArrayList; import com.ruoyi.common.utils.StringUtils; import org.springframework.transaction.annotation.Transactional; import com.smartor.domain.PatMedOuthosp; import com.smartor.mapper.PatArchiveMapper; import com.smartor.domain.PatArchive; import com.smartor.service.IPatArchiveService; /** * 患者档案Service业务层处理 * * @author ruoyi * @date 2023-02-22 */ @Service public class PatArchiveServiceImpl implements IPatArchiveService { @Autowired private PatArchiveMapper patArchiveMapper; /** * 查询患者档案 * * @param PatID 患者档案主键 * @return 患者档案 */ @Override public PatArchive selectPatArchiveByPatID(Long PatID) { return patArchiveMapper.selectPatArchiveByPatID(PatID); } /** * 查询患者档案列表 * * @param patArchive 患者档案 * @return 患者档案 */ @Override public List selectPatArchiveList(PatArchive patArchive) { return patArchiveMapper.selectPatArchiveList(patArchive); } /** * 新增患者档案 * * @param patArchive 患者档案 * @return 结果 */ @Transactional @Override public int insertPatArchive(PatArchive patArchive) { patArchive.setCreateTime(DateUtils.getNowDate()); int rows = patArchiveMapper.insertPatArchive(patArchive); insertPatMedOuthosp(patArchive); return rows; } /** * 修改患者档案 * * @param patArchive 患者档案 * @return 结果 */ @Transactional @Override public int updatePatArchive(PatArchive patArchive) { patArchive.setUpdateTime(DateUtils.getNowDate()); patArchiveMapper.deletePatMedOuthospByPatID(patArchive.getPatID()); insertPatMedOuthosp(patArchive); return patArchiveMapper.updatePatArchive(patArchive); } /** * 批量删除患者档案 * * @param PatIDs 需要删除的患者档案主键 * @return 结果 */ @Transactional @Override public int deletePatArchiveByPatIDs(Long[] PatIDs) { patArchiveMapper.deletePatMedOuthospByPatIDs(PatIDs); return patArchiveMapper.deletePatArchiveByPatIDs(PatIDs); } /** * 删除患者档案信息 * * @param PatID 患者档案主键 * @return 结果 */ @Transactional @Override public int deletePatArchiveByPatID(Long PatID) { patArchiveMapper.deletePatMedOuthospByPatID(PatID); return patArchiveMapper.deletePatArchiveByPatID(PatID); } /** * 新增患者门诊记录信息 * * @param patArchive 患者档案对象 */ public void insertPatMedOuthosp(PatArchive patArchive) { List patMedOuthospList = patArchive.getPatMedOuthospList(); Long PatID = patArchive.getPatID(); if (StringUtils.isNotNull(patMedOuthospList)) { List list = new ArrayList(); for (PatMedOuthosp patMedOuthosp : patMedOuthospList) { patMedOuthosp.setPatID(PatID); list.add(patMedOuthosp); } if (list.size() > 0) { patArchiveMapper.batchPatMedOuthosp(list); } } } }