From 81065b8fa819ee2653ee23a3574868784a9be412 Mon Sep 17 00:00:00 2001 From: bingbing <zhaobingliang@aliyun.com> Date: Fri, 26 Feb 2021 16:10:34 +0800 Subject: [PATCH] 运营平台添加医生或H端添加医生密码为默认的 --- kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java | 218 ++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 210 insertions(+), 8 deletions(-) diff --git a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java index 949389f..7cf6c17 100644 --- a/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java +++ b/kidgrow-business/kidgrow-usercenter/kidgrow-usercenter-biz/src/main/java/com/kidgrow/usercenter/service/impl/SysHospitalServiceImpl.java @@ -1,18 +1,31 @@ package com.kidgrow.usercenter.service.impl; -import org.springframework.stereotype.Service; -import com.kidgrow.common.model.PageResult; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.kidgrow.common.model.PageResult; +import com.kidgrow.common.model.ResultBody; +import com.kidgrow.common.model.SysOrganization; +import com.kidgrow.common.model.SysUser; import com.kidgrow.common.service.impl.SuperServiceImpl; +import com.kidgrow.common.utils.StringUtils; +import com.kidgrow.oprationcenter.feign.ProductOrderService; +import com.kidgrow.oprationcenter.model.ProductOrder; +import com.kidgrow.usercenter.mapper.SysDepartmentMapper; +import com.kidgrow.usercenter.mapper.SysHospitalMapper; +import com.kidgrow.usercenter.mapper.SysOrganizationMapper; +import com.kidgrow.usercenter.model.SysDepartment; +import com.kidgrow.usercenter.model.SysHospital; +import com.kidgrow.usercenter.service.ISysHospitalService; +import com.kidgrow.usercenter.vo.HospitalListVo; +import lombok.extern.slf4j.Slf4j; +import org.apache.commons.collections4.MapUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import javax.annotation.Resource; +import java.util.HashMap; import java.util.List; import java.util.Map; -import org.apache.commons.collections4.MapUtils; -import lombok.extern.slf4j.Slf4j; - -import com.kidgrow.usercenter.model.SysHospital; -import com.kidgrow.usercenter.mapper.SysHospitalMapper; -import com.kidgrow.usercenter.service.ISysHospitalService; /** * 石家庄喜高科技有限责任公司 版权所有 © Copyright 2020<br> @@ -25,6 +38,14 @@ @Slf4j @Service public class SysHospitalServiceImpl extends SuperServiceImpl<SysHospitalMapper, SysHospital> implements ISysHospitalService { + @Resource + private SysDepartmentMapper departmentMapper; + @Autowired + private SysRoleOrganizationServiceImpl SysRoleOrganizationServiceImpl; + @Autowired + private SysOrganizationMapper sysOrganizationMapper; + @Autowired + private ProductOrderService productOrderService; /** * 列表 * @param params @@ -33,8 +54,33 @@ @Override public PageResult<SysHospital> findList(Map<String, Object> params){ Page<SysHospital> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit")); + List<SysHospital> list = baseMapper.findList(page, params); return PageResult.<SysHospital>builder().data(list).code(0).count(page.getTotal()).build(); + } + /** + * 列表 + * @param params + * @return + */ + @Override + public PageResult<HospitalListVo> findHospitalList(Map<String, Object> params, SysUser user) { + Page<HospitalListVo> page = new Page<>(MapUtils.getInteger(params, "page"), MapUtils.getInteger(params, "limit")); + SysRoleOrganizationServiceImpl.getRoleOrg(params, user); + if(params.get("roleOrg")==null){ + return PageResult.<HospitalListVo>builder().data(null).code(0).count(page.getTotal()).build(); + } + List<HospitalListVo> list = baseMapper.findHospitalList(page, params); + for (HospitalListVo hospitalListVo : list) { + ProductOrder productOrder = new ProductOrder(); + productOrder.setHospitalId(hospitalListVo.getHospitalId()); + productOrder.setDepartmentId(hospitalListVo.getDepartmentId()); + ResultBody status = productOrderService.getStatus(productOrder); + if (status.getCode()==0) { + hospitalListVo.setOrderType(status.getData() instanceof Boolean ? ((Boolean) status.getData()) : null); + } + } + return PageResult.<HospitalListVo>builder().data(list).code(0).count(page.getTotal()).build(); } /** @@ -46,4 +92,160 @@ public SysHospital findByObject(SysHospital sysHospital){ return baseMapper.findByObject(sysHospital); } + + @Override + public ResultBody<SysHospital> findAll(Map<String, Object> params) { + params.put("is_del",0); + params.put("enabled",1); + List<SysHospital> sysHospitals = baseMapper.selectByMap(params); + return ResultBody.ok().data(sysHospitals).msg("查询成功"); + } + /** + * 根据医院名称模糊查询医院数据列表 + * @param hospitalName + * @return + */ + public ResultBody<SysHospital> findByName(String hospitalName){ + return ResultBody.ok().data(baseMapper.findByName(hospitalName)).msg("查询成功"); + } + /** + * 根据id和启用禁用值更新数据 + * @param params + * @return ResultBody + */ + @Transactional(rollbackFor = Exception.class) + @Override + public ResultBody updateEnabled(Map<String, Object> params) { + Long id = MapUtils.getLong(params, "id"); + Long departmentId = MapUtils.getLong(params, "departmentId"); + Boolean enabled = MapUtils.getBoolean(params, "enabled"); + //科室数据 + SysDepartment sysDepartment=departmentMapper.selectById(departmentId); + //医院数据 + SysHospital sysHospital = baseMapper.selectById(id); + //医院下的所有数据 + Map<String,Object> columnMap=new HashMap<String,Object>(); + columnMap.put("is_del",0); + columnMap.put("enabled",(enabled)?0:1); + columnMap.put("org_parent_id",sysHospital.getOrgId()); + List<SysOrganization> sysOrganizationList=sysOrganizationMapper.selectByMap(columnMap); + if (sysHospital == null) { + return ResultBody.failed("医院数据不存在!"); + } + if (sysDepartment == null) { + return ResultBody.failed("科室数据不存在!"); + } + //如果这个医院下有多个科室,禁用只对当前科室有效,否则也要禁用医院 + if(sysOrganizationList.size()==1) + { + sysHospital.setEnabled(enabled); + baseMapper.updateById(sysHospital); + SysOrganization sysOrganizationH=sysOrganizationMapper.selectById(sysHospital.getOrgId()); + if (sysOrganizationH != null) { + sysOrganizationH.setEnabled(enabled); + sysOrganizationMapper.updateById(sysOrganizationH); + } + } + sysDepartment.setEnabled(enabled); + int j=departmentMapper.updateById(sysDepartment); + //更新组织数据 + SysOrganization sysOrganizationD=sysOrganizationMapper.selectById(sysDepartment.getOrgId()); + if (sysOrganizationD != null) { + sysOrganizationD.setEnabled(enabled); + sysOrganizationMapper.updateById(sysOrganizationD); + } + return (j > 0) ? ResultBody.ok().data(sysHospital).msg("更新成功") : ResultBody.failed("更新失败"); + } + + /** + * 删除医院科室信息 + * @param params + * @return + */ + @Transactional(rollbackFor = Exception.class) + @Override + public ResultBody delete(Map<String, Object> params) { + Long id = MapUtils.getLong(params, "id"); + Long departmentId = MapUtils.getLong(params, "departmentId"); + //科室数据 + SysDepartment sysDepartment=departmentMapper.selectById(departmentId); + //医院数据 + //SysHospital sysHospital = baseMapper.selectById(id); +// if (sysHospital == null) { +// return ResultBody.failed("医院数据不存在!"); +// } + if (sysDepartment == null) { + return ResultBody.failed("科室数据不存在!"); + } + //医院下的所有科室数据 +// Map<String,Object> columnMap=new HashMap<String,Object>(); +// columnMap.put("org_parent_id",sysHospital.getOrgId()); +// columnMap.put("is_del",0); +// columnMap.put("enabled",1); +// List<SysOrganization> sysOrganizationList=sysOrganizationMapper.selectByMap(columnMap); +// //如果这个医院下有多个科室,删除只对当前科室有效,否则也要删除医院 +// if(sysOrganizationList.size()==1) +// { +// sysHospital.setIsDel(true); +// baseMapper.updateById(sysHospital); +// SysOrganization sysOrganizationH=sysOrganizationMapper.selectById(sysHospital.getOrgId()); +// if (sysOrganizationH != null) { +// sysOrganizationH.setIsDel(true); +// sysOrganizationMapper.updateById(sysOrganizationH); +// } +// } + sysDepartment.setIsDel(true); + int j=departmentMapper.updateById(sysDepartment); + //删除组织数据 + SysOrganization sysOrganizationD=sysOrganizationMapper.selectById(sysDepartment.getOrgId()); + if (sysOrganizationD != null) { + sysOrganizationD.setIsDel(true); + sysOrganizationMapper.updateById(sysOrganizationD); + } + return (j>0) ? ResultBody.ok().data(sysDepartment).msg("科室删除成功") : ResultBody.failed("科室删除失败"); + } + + /** + * 更新医院logo + * @param params + * @return + */ + @Override + public ResultBody updateLogo(Map<String, Object> params) { + Long hospitalId = MapUtils.getLong(params, "hospitalId"); + String hospitalLogo=MapUtils.getString(params, "hospitalLogo"); + String hospitalLitLogo=MapUtils.getString(params, "hospitalLitLogo"); + if (StringUtils.isNotBlank(hospitalId.toString())&&StringUtils.isNotBlank(hospitalLogo)&&StringUtils.isNotBlank(hospitalLitLogo)) { + SysHospital sysHospital=baseMapper.selectById(hospitalId); + if (sysHospital != null) { + sysHospital.setHospitalLogo(hospitalLogo); + sysHospital.setHospitalLitLogo(hospitalLitLogo); + int u=baseMapper.updateById(sysHospital); + return ResultBody.ok().data(u>0); + } + else + { + return ResultBody.failed("医院数据有误!"); + } + } + else + { + return ResultBody.failed("修改数据有误!"); + } + } + + + /** + * 统计医院数量 + * @param datatype 医院类型 + * 0 试用医院 + * 1 正式医院 + * 11 筛查医院 + * @return + */ + @Override + public ResultBody chartHospital(int datatype) { + int hospitalCount=baseMapper.chartHospital(datatype); + return ResultBody.ok().data(hospitalCount).msg("获取数据成功"); + } } -- Gitblit v1.8.0