基础数据-药品目录

This commit is contained in:
liupanting
2025-02-25 18:01:12 +08:00
parent 40d80db03e
commit 10242e6f7c
12 changed files with 732 additions and 36 deletions

View File

@@ -2,6 +2,7 @@ package com.openhis.medication.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.medication.domain.MedicationDefinition;
import com.openhis.medication.domain.MedicationDetail;
/**
* 药品定义管理Service接口
@@ -11,4 +12,19 @@ import com.openhis.medication.domain.MedicationDefinition;
*/
public interface IMedicationDefinitionService extends IService<MedicationDefinition> {
/**
* 新增药品目录
*
* @param medicationDetail
* @return
*/
boolean addMedication(MedicationDetail medicationDetail);
/**
* 新增医保药品目录
*
* @param medicationDetail
* @return
*/
boolean addYbMedicatione(MedicationDetail medicationDetail);
}

View File

@@ -1,11 +1,11 @@
package com.openhis.medication.service;
import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.openhis.medication.domain.Medication;
import com.openhis.medication.domain.MedicationDetail;
import java.util.List;
/**
* 药品基本信息管理Service接口
*
@@ -28,4 +28,10 @@ public interface IMedicationService extends IService<Medication> {
* @return 药品详细信息列表
*/
List<MedicationDetail> getDetailList();
// 新增药品目录
boolean addMedication(MedicationDetail medicationDetail);
// 新增医保药品目录
boolean addYbMedicatione(MedicationDetail medicationDetail);
}

View File

@@ -1,19 +1,67 @@
package com.openhis.medication.service.impl;
import org.springframework.stereotype.Service;
import java.util.List;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.core.common.utils.bean.BeanUtils;
import com.openhis.medication.domain.MedicationDefinition;
import com.openhis.medication.domain.MedicationDetail;
import com.openhis.medication.mapper.MedicationDefinitionMapper;
import com.openhis.medication.service.IMedicationDefinitionService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
/**
* 药品定义管理Service业务层处理
*
* @author system
* @date 2025-02-20
*/
@Slf4j
@Service
public class MedicationDefinitionServiceImpl extends ServiceImpl<MedicationDefinitionMapper, MedicationDefinition> implements IMedicationDefinitionService {
@AllArgsConstructor
public class MedicationDefinitionServiceImpl extends ServiceImpl<MedicationDefinitionMapper, MedicationDefinition>
implements IMedicationDefinitionService {
private final MedicationDefinitionMapper medicationDefinitionMapper;
/**
* 新增药品目录
*
* @param medicationDetail
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public boolean addMedication(MedicationDetail medicationDetail) {
MedicationDefinition medicationDefinition = new MedicationDefinition();
BeanUtils.copyProperties(medicationDetail, medicationDefinition);
// 根据药品编码判断药品是否存在
List<MedicationDefinition> medicationDefinitions =
medicationDefinitionMapper.selectList(new LambdaQueryWrapper<MedicationDefinition>()
.eq(MedicationDefinition::getBusNo, medicationDefinition.getBusNo()));
if (medicationDefinitions.size() > 0) {
return false;
}
// 新增药品目录
int insert = medicationDefinitionMapper.insert(medicationDefinition);
if (insert != 1) {
return false;
}
// 获取生成的主键值
Long generatedId = medicationDefinition.getId();
// 将生成的 ID 存储到子表中
medicationDetail.setMedicationDefId(generatedId);
return true;
}
@Override
public boolean addYbMedicatione(MedicationDetail medicationDetail) {
return false;
}
}

View File

@@ -1,17 +1,21 @@
package com.openhis.medication.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.core.common.utils.bean.BeanUtils;
import com.openhis.common.enums.DelFlag;
import com.openhis.medication.domain.Medication;
import com.openhis.medication.domain.MedicationDetail;
import com.openhis.medication.mapper.MedicationMapper;
import com.openhis.medication.service.IMedicationService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import lombok.extern.slf4j.Slf4j;
/**
* 药品基本信息管理Service业务层处理
@@ -54,4 +58,39 @@ public class MedicationServiceImpl extends ServiceImpl<MedicationMapper, Medicat
return medicationMapper.selectDetailList();
}
/**
* 新增药品目录
*
* @param medicationDetail
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public boolean addMedication(MedicationDetail medicationDetail) {
Medication medication = new Medication();
BeanUtils.copyProperties(medicationDetail, medication);
// 根据药品编码判断药品是否存在
List<Medication> medications = medicationMapper.selectList(
new LambdaQueryWrapper<Medication>().eq(Medication::getMedicationDefId, medication.getMedicationDefId()));
if (medications.size() > 0) {
return false;
}
// 新增药品目录
int insert = medicationMapper.insert(medication);
if (insert != 1) {
return false;
}
return true;
}
/**
* 新增药品目录
*
* @param medicationDetail
* @return
*/
@Override
public boolean addYbMedicatione(MedicationDetail medicationDetail) {
return false;
}
}