package com.kidgrow.usercenter.service.impl; import com.baomidou.mybatisplus.core.conditions.Wrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.kidgrow.common.model.ResultBody; import com.kidgrow.common.model.SysOrganization; import com.kidgrow.usercenter.model.SysHospital; import com.kidgrow.usercenter.service.ISysHospitalService; import com.kidgrow.usercenter.service.ISysOrganizationService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.kidgrow.common.model.PageResult; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.kidgrow.common.service.impl.SuperServiceImpl; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; import org.apache.commons.collections4.MapUtils; import lombok.extern.slf4j.Slf4j; import com.kidgrow.usercenter.model.SysDepartment; import com.kidgrow.usercenter.mapper.SysDepartmentMapper; import com.kidgrow.usercenter.service.ISysDepartmentService; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020
* @Description: 科室表
* @Project: 用户中心
* @CreateDate: Created in 2020-04-02 14:02:50
* @Author: liuke * @version 1.0 */ @Slf4j @Service public class SysDepartmentServiceImpl extends SuperServiceImpl implements ISysDepartmentService { @Autowired private ISysOrganizationService iSysOrganizationService; @Autowired private ISysHospitalService iSysHospitalService; /** * 列表 * @param params * @return */ @Override public PageResult findList(Map params){ Page page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit")); List list = baseMapper.findList(page, params); return PageResult.builder().data(list).code(0).count(page.getTotal()).build(); } /** * 根据SysDepartment对象当做查询条件进行查询 * @param sysDepartment * @return SysDepartment */ @Override public SysDepartment findByObject(SysDepartment sysDepartment){ return baseMapper.findByObject(sysDepartment); } @Override public ResultBody findAll(Map params) { return ResultBody.ok().data(baseMapper.selectByMap(params)); } @Override public ResultBody findListByHospitalId(Map params) { //查询组织 Long id = MapUtils.getLong(params, "id"); List sysDepartments=new ArrayList<>(); SysHospital byId = iSysHospitalService.getById(id); if(byId!=null){ params=new HashMap<>(); params.put("org_parent_id",byId.getOrgId()); List sysOrganizations = iSysOrganizationService.listByMap(params); if (sysOrganizations.size()>0) { List collect = sysOrganizations.stream().map(e -> e.getId()).collect(Collectors.toList()); QueryWrapper queryWrapper=new QueryWrapper(); queryWrapper.in("org_id",collect ); sysDepartments= baseMapper.selectList(queryWrapper); } } return ResultBody.ok().data(sysDepartments); } }