From ec4cb43f83fdfdab0acc7c59b84ec91fff49d3f6 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期六, 28 十二月 2024 17:38:12 +0800 Subject: [PATCH] 增加处置记录项 --- medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java | 98 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 97 insertions(+), 1 deletions(-) diff --git a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java index 33057c9..8ecf276 100644 --- a/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java +++ b/medicalWaste-system/src/main/java/com/sinata/system/service/impl/MwTransitCarServiceImpl.java @@ -1,10 +1,25 @@ package com.sinata.system.service.impl; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.sinata.common.entity.PageDTO; +import com.sinata.common.exception.ServiceException; +import com.sinata.common.utils.BeanUtils; +import com.sinata.common.utils.StringUtils; import com.sinata.system.domain.MwTransitCar; +import com.sinata.system.domain.SysDepartment; +import com.sinata.system.domain.dto.MwTransitCarDTO; +import com.sinata.system.domain.query.TransitCarQuery; +import com.sinata.system.domain.vo.MwTransitCarVO; +import com.sinata.system.enums.DepartmentEnum; import com.sinata.system.mapper.MwTransitCarMapper; import com.sinata.system.service.MwTransitCarService; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.sinata.system.service.SysDepartmentService; +import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.Objects; /** * <p> @@ -15,6 +30,87 @@ * @since 2024-12-02 */ @Service +@RequiredArgsConstructor public class MwTransitCarServiceImpl extends ServiceImpl<MwTransitCarMapper, MwTransitCar> implements MwTransitCarService { + private final SysDepartmentService sysDepartmentService; + /** + * 车辆分页列表 + * + * @param query + * @return + */ + @Override + public PageDTO<MwTransitCarVO> pageList(TransitCarQuery query) { + String treeCode; + if (Objects.isNull(query.getDepartmentId())) { + SysDepartment department = sysDepartmentService.getMyDepartment(); + treeCode = department.getTreeCode(); + } else { + SysDepartment department = sysDepartmentService.getById(query.getDepartmentId()); + //如果是处置单位,则获取父级部门 + if (department.getOrgType().equals(DepartmentEnum.DISPOSAL_UNIT.getCode())) { + department = sysDepartmentService.getDepartmentByParentId(department.getParentId()); + } + treeCode = department.getTreeCode(); + } + if (StringUtils.isBlank(treeCode)) { + return PageDTO.empty(0L, 0L); + } + Page<MwTransitCarVO> page = baseMapper.pageList(new Page<>(query.getPageCurr(), query.getPageSize()), query, treeCode); + return PageDTO.of(page); + } + + /** + * 详情 + * + * @param id + * @return + */ + @Override + public MwTransitCarVO detail(Long id) { + return baseMapper.detail(id); + } + + /** + * 新增车辆 + * + * @param dto + * @return + */ + @Override + public void add(MwTransitCarDTO dto) { + MwTransitCar mwTransitCar = BeanUtils.copyBean(dto, MwTransitCar.class); + Long count = lambdaQuery().eq(MwTransitCar::getLicensePlateNumber, dto.getLicensePlateNumber()).count(); + if (count > 0) { + throw new ServiceException("车牌号已存在"); + } + save(mwTransitCar); + } + + /** + * 编辑车辆 + * + * @param dto + * @return + */ + @Override + public void edit(MwTransitCarDTO dto) { + if (Objects.isNull(dto.getId())) { + throw new ServiceException("车辆id不能为空"); + } + MwTransitCar mwTransitCar = BeanUtils.copyBean(dto, MwTransitCar.class); + updateById(mwTransitCar); + } + + /** + * 关联车辆列表 + * + * @param id + * @return + */ + @Override + public List<MwTransitCarVO> getCarListByRouteId(Long id) { + return baseMapper.getCarListByRouteId(id); + } } -- Gitblit v1.7.1