qianxj
2023-02-23 7c1bd16fa17ca9a12dcbaa962f27806fcda7a3c1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
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<PatArchive> 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<PatMedOuthosp> patMedOuthospList = patArchive.getPatMedOuthospList();
        Long PatID = patArchive.getPatID();
        if (StringUtils.isNotNull(patMedOuthospList))
        {
            List<PatMedOuthosp> list = new ArrayList<PatMedOuthosp>();
            for (PatMedOuthosp patMedOuthosp : patMedOuthospList)
            {
                patMedOuthosp.setPatID(PatID);
                list.add(patMedOuthosp);
            }
            if (list.size() > 0)
            {
                patArchiveMapper.batchPatMedOuthosp(list);
            }
        }
    }
}