药品库对象

This commit is contained in:
zhangheng 2024-05-17 11:01:31 +08:00
parent db931c9df2
commit 75323b55ee
6 changed files with 622 additions and 0 deletions

View File

@ -0,0 +1,91 @@
package com.xinelu.manage.controller.basedruginfo;
import com.xinelu.common.annotation.Log;
import com.xinelu.common.core.controller.BaseController;
import com.xinelu.common.core.domain.AjaxResult;
import com.xinelu.common.core.page.TableDataInfo;
import com.xinelu.common.enums.BusinessType;
import com.xinelu.common.utils.poi.ExcelUtil;
import com.xinelu.manage.domain.basedruginfo.BaseDrugInfo;
import com.xinelu.manage.service.basedruginfo.IBaseDrugInfoService;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 药品库Controller
*
* @author xinelu
* @date 2024-05-17
*/
@RestController
@RequestMapping("/system/baseDrug")
public class BaseDrugInfoController extends BaseController {
@Resource
private IBaseDrugInfoService baseDrugInfoService;
/**
* 查询药品库列表
*/
@PreAuthorize("@ss.hasPermi('system:baseDrug:list')")
@GetMapping("/list")
public TableDataInfo list(BaseDrugInfo baseDrugInfo) {
startPage();
List<BaseDrugInfo> list = baseDrugInfoService.selectBaseDrugInfoList(baseDrugInfo);
return getDataTable(list);
}
/**
* 导出药品库列表
*/
@PreAuthorize("@ss.hasPermi('system:baseDrug:export')")
@Log(title = "药品库", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, BaseDrugInfo baseDrugInfo) {
List<BaseDrugInfo> list = baseDrugInfoService.selectBaseDrugInfoList(baseDrugInfo);
ExcelUtil<BaseDrugInfo> util = new ExcelUtil<>(BaseDrugInfo.class);
util.exportExcel(response, list, "药品库数据");
}
/**
* 获取药品库详细信息
*/
@PreAuthorize("@ss.hasPermi('system:baseDrug:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id) {
return AjaxResult.success(baseDrugInfoService.selectBaseDrugInfoById(id));
}
/**
* 新增药品库
*/
@PreAuthorize("@ss.hasPermi('system:baseDrug:add')")
@Log(title = "药品库", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody BaseDrugInfo baseDrugInfo) {
return toAjax(baseDrugInfoService.insertBaseDrugInfo(baseDrugInfo));
}
/**
* 修改药品库
*/
@PreAuthorize("@ss.hasPermi('system:baseDrug:edit')")
@Log(title = "药品库", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody BaseDrugInfo baseDrugInfo) {
return toAjax(baseDrugInfoService.updateBaseDrugInfo(baseDrugInfo));
}
/**
* 删除药品库
*/
@PreAuthorize("@ss.hasPermi('system:baseDrug:remove')")
@Log(title = "药品库", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids) {
return toAjax(baseDrugInfoService.deleteBaseDrugInfoByIds(ids));
}
}

View File

@ -0,0 +1,124 @@
package com.xinelu.manage.domain.basedruginfo;
import com.xinelu.common.annotation.Excel;
import com.xinelu.common.core.domain.BaseEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
/**
* 药品库对象 base_drug_info
*
* @author xinelu
* @date 2024-05-17
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "药品库对象", description = "base_drug_info")
public class BaseDrugInfo extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* $column.columnComment
*/
private Long id;
/**
* 药品名称
*/
@ApiModelProperty(value = "药品名称")
@Excel(name = "药品名称")
private String drugName;
/**
* 适用症
*/
@ApiModelProperty(value = "适用症")
@Excel(name = "适用症")
private String purpose;
/**
* 给药途径
*/
@ApiModelProperty(value = "给药途径")
@Excel(name = "给药途径")
private String applyWay;
/**
* 用药频次
*/
@ApiModelProperty(value = "用药频次")
@Excel(name = "用药频次")
private String applyFrequency;
/**
* 服药说明
*/
@ApiModelProperty(value = "服药说明")
@Excel(name = "服药说明")
private String applyRemark;
/**
* 用法用量(服法剂量)
*/
@ApiModelProperty(value = "用法用量(服法剂量)")
@Excel(name = "用法用量(服法剂量)")
private String dosage;
/**
* 副作用(不良反应)
*/
@ApiModelProperty(value = "副作用(不良反应)")
@Excel(name = "副作用(不良反应)")
private String sideEffects;
/**
* 禁忌症
*/
@ApiModelProperty(value = "禁忌症")
@Excel(name = "禁忌症")
private String contraindications;
/**
* 存储条件
*/
@ApiModelProperty(value = "存储条件")
@Excel(name = "存储条件")
private String storage;
/**
* 漏服或过服的处理方法
*/
@ApiModelProperty(value = "漏服或过服的处理方法")
@Excel(name = "漏服或过服的处理方法")
private String emergency;
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("drugName", getDrugName())
.append("purpose", getPurpose())
.append("applyWay", getApplyWay())
.append("applyFrequency", getApplyFrequency())
.append("applyRemark", getApplyRemark())
.append("dosage", getDosage())
.append("sideEffects", getSideEffects())
.append("contraindications", getContraindications())
.append("storage", getStorage())
.append("emergency", getEmergency())
.append("createTime", getCreateTime())
.append("createBy", getCreateBy())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.toString();
}
}

View File

@ -0,0 +1,61 @@
package com.xinelu.manage.mapper.basedruginfo;
import com.xinelu.manage.domain.basedruginfo.BaseDrugInfo;
import java.util.List;
/**
* 药品库Mapper接口
*
* @author xinelu
* @date 2024-05-17
*/
public interface BaseDrugInfoMapper {
/**
* 查询药品库
*
* @param id 药品库主键
* @return 药品库
*/
BaseDrugInfo selectBaseDrugInfoById(Long id);
/**
* 查询药品库列表
*
* @param baseDrugInfo 药品库
* @return 药品库集合
*/
List<BaseDrugInfo> selectBaseDrugInfoList(BaseDrugInfo baseDrugInfo);
/**
* 新增药品库
*
* @param baseDrugInfo 药品库
* @return 结果
*/
int insertBaseDrugInfo(BaseDrugInfo baseDrugInfo);
/**
* 修改药品库
*
* @param baseDrugInfo 药品库
* @return 结果
*/
int updateBaseDrugInfo(BaseDrugInfo baseDrugInfo);
/**
* 删除药品库
*
* @param id 药品库主键
* @return 结果
*/
int deleteBaseDrugInfoById(Long id);
/**
* 批量删除药品库
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
int deleteBaseDrugInfoByIds(Long[] ids);
}

View File

@ -0,0 +1,61 @@
package com.xinelu.manage.service.basedruginfo;
import com.xinelu.manage.domain.basedruginfo.BaseDrugInfo;
import java.util.List;
/**
* 药品库Service接口
*
* @author xinelu
* @date 2024-05-17
*/
public interface IBaseDrugInfoService {
/**
* 查询药品库
*
* @param id 药品库主键
* @return 药品库
*/
BaseDrugInfo selectBaseDrugInfoById(Long id);
/**
* 查询药品库列表
*
* @param baseDrugInfo 药品库
* @return 药品库集合
*/
List<BaseDrugInfo> selectBaseDrugInfoList(BaseDrugInfo baseDrugInfo);
/**
* 新增药品库
*
* @param baseDrugInfo 药品库
* @return 结果
*/
int insertBaseDrugInfo(BaseDrugInfo baseDrugInfo);
/**
* 修改药品库
*
* @param baseDrugInfo 药品库
* @return 结果
*/
int updateBaseDrugInfo(BaseDrugInfo baseDrugInfo);
/**
* 批量删除药品库
*
* @param ids 需要删除的药品库主键集合
* @return 结果
*/
int deleteBaseDrugInfoByIds(Long[] ids);
/**
* 删除药品库信息
*
* @param id 药品库主键
* @return 结果
*/
int deleteBaseDrugInfoById(Long id);
}

View File

@ -0,0 +1,90 @@
package com.xinelu.manage.service.basedruginfo.impl;
import com.xinelu.manage.domain.basedruginfo.BaseDrugInfo;
import com.xinelu.manage.mapper.basedruginfo.BaseDrugInfoMapper;
import com.xinelu.manage.service.basedruginfo.IBaseDrugInfoService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
/**
* 药品库Service业务层处理
*
* @author xinelu
* @date 2024-05-17
*/
@Service
public class BaseDrugInfoServiceImpl implements IBaseDrugInfoService {
@Resource
private BaseDrugInfoMapper baseDrugInfoMapper;
/**
* 查询药品库
*
* @param id 药品库主键
* @return 药品库
*/
@Override
public BaseDrugInfo selectBaseDrugInfoById(Long id) {
return baseDrugInfoMapper.selectBaseDrugInfoById(id);
}
/**
* 查询药品库列表
*
* @param baseDrugInfo 药品库
* @return 药品库
*/
@Override
public List<BaseDrugInfo> selectBaseDrugInfoList(BaseDrugInfo baseDrugInfo) {
return baseDrugInfoMapper.selectBaseDrugInfoList(baseDrugInfo);
}
/**
* 新增药品库
*
* @param baseDrugInfo 药品库
* @return 结果
*/
@Override
public int insertBaseDrugInfo(BaseDrugInfo baseDrugInfo) {
baseDrugInfo.setCreateTime(LocalDateTime.now());
return baseDrugInfoMapper.insertBaseDrugInfo(baseDrugInfo);
}
/**
* 修改药品库
*
* @param baseDrugInfo 药品库
* @return 结果
*/
@Override
public int updateBaseDrugInfo(BaseDrugInfo baseDrugInfo) {
baseDrugInfo.setUpdateTime(LocalDateTime.now());
return baseDrugInfoMapper.updateBaseDrugInfo(baseDrugInfo);
}
/**
* 批量删除药品库
*
* @param ids 需要删除的药品库主键
* @return 结果
*/
@Override
public int deleteBaseDrugInfoByIds(Long[] ids) {
return baseDrugInfoMapper.deleteBaseDrugInfoByIds(ids);
}
/**
* 删除药品库信息
*
* @param id 药品库主键
* @return 结果
*/
@Override
public int deleteBaseDrugInfoById(Long id) {
return baseDrugInfoMapper.deleteBaseDrugInfoById(id);
}
}

View File

@ -0,0 +1,195 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.xinelu.manage.mapper.basedruginfo.BaseDrugInfoMapper">
<resultMap type="BaseDrugInfo" id="BaseDrugInfoResult">
<result property="id" column="id"/>
<result property="drugName" column="drug_name"/>
<result property="purpose" column="purpose"/>
<result property="applyWay" column="apply_way"/>
<result property="applyFrequency" column="apply_frequency"/>
<result property="applyRemark" column="apply_remark"/>
<result property="dosage" column="dosage"/>
<result property="sideEffects" column="side_effects"/>
<result property="contraindications" column="contraindications"/>
<result property="storage" column="storage"/>
<result property="emergency" column="emergency"/>
<result property="createTime" column="create_time"/>
<result property="createBy" column="create_by"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
</resultMap>
<sql id="selectBaseDrugInfoVo">
select id, drug_name, purpose, apply_way, apply_frequency, apply_remark, dosage, side_effects, contraindications, storage, emergency, create_time, create_by, update_by, update_time from base_drug_info
</sql>
<select id="selectBaseDrugInfoList" parameterType="BaseDrugInfo" resultMap="BaseDrugInfoResult">
<include refid="selectBaseDrugInfoVo"/>
<where>
<if test="drugName != null and drugName != ''">
and drug_name like concat('%', #{drugName}, '%')
</if>
<if test="purpose != null and purpose != ''">
and purpose = #{purpose}
</if>
<if test="applyWay != null and applyWay != ''">
and apply_way = #{applyWay}
</if>
<if test="applyFrequency != null and applyFrequency != ''">
and apply_frequency = #{applyFrequency}
</if>
<if test="applyRemark != null and applyRemark != ''">
and apply_remark = #{applyRemark}
</if>
<if test="dosage != null and dosage != ''">
and dosage = #{dosage}
</if>
<if test="sideEffects != null and sideEffects != ''">
and side_effects = #{sideEffects}
</if>
<if test="contraindications != null and contraindications != ''">
and contraindications = #{contraindications}
</if>
<if test="storage != null and storage != ''">
and storage = #{storage}
</if>
<if test="emergency != null and emergency != ''">
and emergency = #{emergency}
</if>
</where>
</select>
<select id="selectBaseDrugInfoById" parameterType="Long"
resultMap="BaseDrugInfoResult">
<include refid="selectBaseDrugInfoVo"/>
where id = #{id}
</select>
<insert id="insertBaseDrugInfo" parameterType="BaseDrugInfo" useGeneratedKeys="true"
keyProperty="id">
insert into base_drug_info
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="drugName != null">drug_name,
</if>
<if test="purpose != null">purpose,
</if>
<if test="applyWay != null">apply_way,
</if>
<if test="applyFrequency != null">apply_frequency,
</if>
<if test="applyRemark != null">apply_remark,
</if>
<if test="dosage != null">dosage,
</if>
<if test="sideEffects != null">side_effects,
</if>
<if test="contraindications != null">contraindications,
</if>
<if test="storage != null">storage,
</if>
<if test="emergency != null">emergency,
</if>
<if test="createTime != null">create_time,
</if>
<if test="createBy != null">create_by,
</if>
<if test="updateBy != null">update_by,
</if>
<if test="updateTime != null">update_time,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="drugName != null">#{drugName},
</if>
<if test="purpose != null">#{purpose},
</if>
<if test="applyWay != null">#{applyWay},
</if>
<if test="applyFrequency != null">#{applyFrequency},
</if>
<if test="applyRemark != null">#{applyRemark},
</if>
<if test="dosage != null">#{dosage},
</if>
<if test="sideEffects != null">#{sideEffects},
</if>
<if test="contraindications != null">#{contraindications},
</if>
<if test="storage != null">#{storage},
</if>
<if test="emergency != null">#{emergency},
</if>
<if test="createTime != null">#{createTime},
</if>
<if test="createBy != null">#{createBy},
</if>
<if test="updateBy != null">#{updateBy},
</if>
<if test="updateTime != null">#{updateTime},
</if>
</trim>
</insert>
<update id="updateBaseDrugInfo" parameterType="BaseDrugInfo">
update base_drug_info
<trim prefix="SET" suffixOverrides=",">
<if test="drugName != null">drug_name =
#{drugName},
</if>
<if test="purpose != null">purpose =
#{purpose},
</if>
<if test="applyWay != null">apply_way =
#{applyWay},
</if>
<if test="applyFrequency != null">apply_frequency =
#{applyFrequency},
</if>
<if test="applyRemark != null">apply_remark =
#{applyRemark},
</if>
<if test="dosage != null">dosage =
#{dosage},
</if>
<if test="sideEffects != null">side_effects =
#{sideEffects},
</if>
<if test="contraindications != null">contraindications =
#{contraindications},
</if>
<if test="storage != null">storage =
#{storage},
</if>
<if test="emergency != null">emergency =
#{emergency},
</if>
<if test="createTime != null">create_time =
#{createTime},
</if>
<if test="createBy != null">create_by =
#{createBy},
</if>
<if test="updateBy != null">update_by =
#{updateBy},
</if>
<if test="updateTime != null">update_time =
#{updateTime},
</if>
</trim>
where id = #{id}
</update>
<delete id="deleteBaseDrugInfoById" parameterType="Long">
delete from base_drug_info where id = #{id}
</delete>
<delete id="deleteBaseDrugInfoByIds" parameterType="String">
delete from base_drug_info where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>