| | |
| | | package com.gkhy.assess.system.service.impl; |
| | | package com.gkhy.system.service.impl; |
| | | |
| | | |
| | | import cn.hutool.core.util.ObjectUtil; |
| | | import com.gkhy.assess.common.api.CommonPage; |
| | | import com.gkhy.assess.common.enums.DeleteFlagEnum; |
| | | import com.gkhy.assess.common.exception.ApiException; |
| | | import com.gkhy.assess.common.utils.PageUtil; |
| | | import com.gkhy.assess.system.domain.SysAgency; |
| | | import com.gkhy.assess.system.domain.SysExpertInfo; |
| | | import com.gkhy.assess.system.domain.SysUser; |
| | | import com.gkhy.assess.system.mapper.SysExpertInfoMapper; |
| | | import com.gkhy.assess.system.service.SysExpertInfoService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.gkhy.assess.system.utils.ShiroUtils; |
| | | import com.gkhy.common.enums.DeleteFlagEnum; |
| | | import com.gkhy.common.exception.ServiceException; |
| | | import com.gkhy.common.utils.SecurityUtils; |
| | | import com.gkhy.system.domain.SysExpertInfo; |
| | | import com.gkhy.system.domain.vo.request.SysExpertInfoRoundReq; |
| | | import com.gkhy.system.domain.vo.request.SysExpertSearchReqDto; |
| | | import com.gkhy.system.domain.vo.response.ProjectExpertSectionResp; |
| | | import com.gkhy.system.domain.vo.response.SysExpertSearchRep; |
| | | import com.gkhy.system.mapper.SysExpertInfoMapper; |
| | | import com.gkhy.system.service.SysExpertInfoService; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | |
| | | public class SysExpertInfoServiceImpl extends ServiceImpl<SysExpertInfoMapper, SysExpertInfo> implements SysExpertInfoService { |
| | | |
| | | @Override |
| | | public CommonPage exportInfoList(SysExpertInfo expertInfo) { |
| | | PageUtil.startPage(); |
| | | List<SysExpertInfo> agencyList=baseMapper.expertInfoList(expertInfo); |
| | | return CommonPage.restPage(agencyList); |
| | | public List<SysExpertInfo> exportInfoList(SysExpertInfo expertInfo) { |
| | | //todo 验证是否是管理不是管理只能看本部门 |
| | | if (!SecurityUtils.isAdmin(SecurityUtils.getUserId())){ |
| | | expertInfo.setDeptId(SecurityUtils.getDeptId()); |
| | | } |
| | | return baseMapper.expertInfoList(expertInfo); |
| | | } |
| | | |
| | | @Override |
| | | public int addExpertInfo(SysExpertInfo expertInfo) { |
| | | if(!checkIdCardUnique(new SysExpertInfo().setIdCard(expertInfo.getIdCard()))){ |
| | | throw new ApiException(expertInfo.getIdCard()+"身份证号码已经存在"); |
| | | throw new ServiceException("该业务处室申请数据已存在"); |
| | | } |
| | | expertInfo.setCreateBy(ShiroUtils.getSysUser().getUsername()); |
| | | expertInfo.setCreateBy(expertInfo.getName()); |
| | | boolean b=save(expertInfo); |
| | | if(!b){ |
| | | throw new ApiException("新增专家信息失败"); |
| | | throw new ServiceException("新增专家信息失败"); |
| | | } |
| | | return 1; |
| | | } |
| | |
| | | @Override |
| | | public int modExpertInfo(SysExpertInfo expertInfo) { |
| | | if(!checkIdCardUnique(expertInfo)){ |
| | | throw new ApiException(expertInfo.getIdCard()+"身份证号码已经存在"); |
| | | throw new ServiceException("该业务处室申请数据已存在"); |
| | | } |
| | | expertInfo.setUpdateBy(ShiroUtils.getSysUser().getUsername()); |
| | | expertInfo.setUpdateBy(SecurityUtils.getUsername()); |
| | | boolean b=updateById(expertInfo); |
| | | if(!b){ |
| | | throw new ApiException("修改专家信息失败"); |
| | | throw new ServiceException("修改专家信息失败"); |
| | | } |
| | | return 1; |
| | | } |
| | |
| | | SysExpertInfo expertInfo = new SysExpertInfo(); |
| | | expertInfo.setId(expertId); |
| | | expertInfo.setDelFlag(DeleteFlagEnum.DELETED.getCode()); |
| | | expertInfo.setUpdateBy(ShiroUtils.getSysUser().getUsername()); |
| | | expertInfo.setUpdateBy(SecurityUtils.getUsername()); |
| | | boolean b= updateById(expertInfo); |
| | | if(!b){ |
| | | throw new ApiException("删除专家信息失败"); |
| | | throw new ServiceException("删除专家信息失败"); |
| | | } |
| | | return 1; |
| | | } |
| | |
| | | |
| | | public SysExpertInfo checkExpertInfoDataScope(Long expertId) { |
| | | if(expertId==null){ |
| | | throw new ApiException("专家id为空!"); |
| | | throw new ServiceException("专家id为空!"); |
| | | } |
| | | SysExpertInfo expertInfo = baseMapper.getExpertInfoById(expertId); |
| | | if (ObjectUtil.isNull(expertInfo)) |
| | | { |
| | | throw new ApiException("专家数据不存在!"); |
| | | throw new ServiceException("专家数据不存在!"); |
| | | } |
| | | return expertInfo; |
| | | } |
| | |
| | | public boolean changeApprove(SysExpertInfo expertInfo) { |
| | | checkExpertInfoDataScope(expertInfo.getId()); |
| | | SysExpertInfo se=new SysExpertInfo().setId(expertInfo.getId()).setState(expertInfo.getState()); |
| | | se.setUpdateBy(ShiroUtils.getSysUser().getUsername()); |
| | | se.setUpdateBy(SecurityUtils.getUsername()); |
| | | return updateById(se); |
| | | } |
| | | |
| | | @Override |
| | | public SysExpertSearchRep queryApprove(SysExpertSearchReqDto expertInfo) { |
| | | SysExpertSearchRep sysExpertSearchRep = baseMapper.queryApprove(expertInfo); |
| | | if (null == sysExpertSearchRep){ |
| | | throw new ServiceException("申请记录不存!"); |
| | | } |
| | | return sysExpertSearchRep; |
| | | } |
| | | |
| | | @Override |
| | | public List<ProjectExpertSectionResp> getExpertRound(SysExpertInfoRoundReq req) { |
| | | return baseMapper.getExpertRound(req); |
| | | } |
| | | |
| | | public boolean checkIdCardUnique(SysExpertInfo expertInfo){ |
| | | Long expertId = expertInfo.getId()==null? -1L : expertInfo.getId(); |
| | | SysExpertInfo info = baseMapper.checkIdcardUnique(expertInfo.getIdCard()); |
| | | SysExpertInfo info = baseMapper.checkIdcardUnique(expertInfo.getIdCard(),expertInfo.getDeptId()); |
| | | if (info!=null && info.getId().longValue() != expertId.longValue()) |
| | | { |
| | | return false; |