AI创建折点字典

This commit is contained in:
tangw 2026-09-18 15:17:28 +08:00
parent ed99df98d3
commit bf6a44d1d2
3 changed files with 143 additions and 0 deletions

View File

@ -0,0 +1,49 @@
package com.czlis.liswork.controller.xtwh;
import com.czlis.common.core.domain.Result;
import com.czlis.common.core.domain.entity.lis.XmMed;
import com.czlis.common.core.domain.entity.lis.XmMedDetail;
import com.czlis.liswork.service.AntibioticBreakpointService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* 抗生素折点范围字典
*/
@Api(tags = "抗生素折点范围字典")
@RestController
@RequestMapping("/xm")
public class AntibioticBreakpointController {
@Autowired
private AntibioticBreakpointService antibioticBreakpointService;
@ApiOperation("获取菌属列表")
@GetMapping("/meddetail/germclass/list")
public Result getGermClassList() {
return antibioticBreakpointService.getGermClassList();
}
@ApiOperation("获取抗生素字典列表")
@GetMapping("/med/list")
public Result getAntibioticList(XmMed xmMed) {
return antibioticBreakpointService.getAntibioticList(xmMed);
}
@ApiOperation("获取折点范围数据")
@GetMapping("/breakpoint/list")
public Result getBreakpointList(@RequestParam String germClassCode) {
return antibioticBreakpointService.getBreakpointList(germClassCode);
}
@ApiOperation("批量保存折点范围")
@PostMapping("/breakpoint/batch")
public Result batchSaveBreakpoint(@RequestBody List<XmMedDetail> breakpointList) {
return antibioticBreakpointService.batchSaveBreakpoint(breakpointList);
}
}

View File

@ -0,0 +1,33 @@
package com.czlis.liswork.service;
import com.czlis.common.core.domain.Result;
import com.czlis.common.core.domain.entity.lis.XmMed;
import com.czlis.common.core.domain.entity.lis.XmMedDetail;
import java.util.List;
/**
* 抗生素折点范围字典服务
*/
public interface AntibioticBreakpointService {
/**
* 获取菌属列表
*/
Result getGermClassList();
/**
* 获取抗生素字典列表
*/
Result getAntibioticList(XmMed xmMed);
/**
* 获取折点范围数据
*/
Result getBreakpointList(String germClassCode);
/**
* 批量保存折点范围
*/
Result batchSaveBreakpoint(List<XmMedDetail> breakpointList);
}

View File

@ -0,0 +1,61 @@
package com.czlis.liswork.service.impl;
import com.czlis.common.core.domain.Result;
import com.czlis.common.core.domain.entity.lis.XmMed;
import com.czlis.common.core.domain.entity.lis.XmMedDetail;
import com.czlis.liswork.mapper.LisWorkGermMapper;
import com.czlis.liswork.mapper.xtwh.XmMedMapper;
import com.czlis.liswork.service.AntibioticBreakpointService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.Map;
/**
* 抗生素折点范围字典服务实现
*/
@Service
public class AntibioticBreakpointServiceImpl implements AntibioticBreakpointService {
@Autowired
private LisWorkGermMapper lisWorkGermMapper;
@Autowired
private XmMedMapper xmMedMapper;
@Override
public Result getGermClassList() {
List<Map<String, Object>> germClassList = lisWorkGermMapper.getGermClassList();
return new Result("0", "成功", germClassList);
}
@Override
public Result getAntibioticList(XmMed xmMed) {
List<XmMed> antibioticList = xmMedMapper.queryList(xmMed);
return new Result("0", "成功", antibioticList);
}
@Override
public Result getBreakpointList(String germClassCode) {
List<XmMedDetail> breakpointList = lisWorkGermMapper.getBreakpointList(germClassCode);
return new Result("0", "成功", breakpointList);
}
@Override
@Transactional
public Result batchSaveBreakpoint(List<XmMedDetail> breakpointList) {
try {
for (XmMedDetail detail : breakpointList) {
// 先删除旧数据
lisWorkGermMapper.deleteBreakpoint(detail.getXmdh(), detail.getYwdh());
// 再插入新数据
lisWorkGermMapper.insertBreakpoint(detail);
}
return new Result("0", "保存成功");
} catch (Exception e) {
return new Result("-1", "保存失败:" + e.getMessage());
}
}
}