package com.gkhy.safePlatform.targetDuty.service.impl;
|
import java.sql.Timestamp;
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetDivideDetailQueryCriteria;
|
import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetDivideDetailDto;
|
import com.gkhy.safePlatform.targetDuty.repository.TargetMngRepository;
|
import com.gkhy.safePlatform.targetDuty.entity.TargetMng;
|
import com.gkhy.safePlatform.targetDuty.service.TargetDivideDetailService;
|
import com.gkhy.safePlatform.targetDuty.service.TargetMngService;
|
import org.springframework.stereotype.Service;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import com.gkhy.safePlatform.commons.enums.ResultCodes;
|
import com.gkhy.safePlatform.commons.query.PageQuery;
|
import com.gkhy.safePlatform.commons.vo.ResultVO;
|
import com.gkhy.safePlatform.commons.vo.SearchResultVO;
|
import com.gkhy.safePlatform.targetDuty.model.dto.req.TargetMngQueryCriteria;
|
import com.gkhy.safePlatform.targetDuty.model.dto.resp.TargetMngDto;
|
import com.gkhy.safePlatform.targetDuty.utils.QueryHelpPlus;
|
import com.gkhy.safePlatform.commons.utils.BeanCopyUtils;
|
|
import javax.annotation.Resource;
|
import java.io.Serializable;
|
import java.util.List;
|
|
/**
|
* 目标指标(TargetMng)表服务实现类
|
*
|
* @author xurui
|
* @since 2022-07-20 11:49:22
|
*/
|
@Service("targetMngService")
|
public class TargetMngServiceImpl extends ServiceImpl<TargetMngRepository, TargetMng> implements TargetMngService {
|
|
@Autowired
|
private TargetMngRepository targetMngRepository;
|
|
@Resource
|
private TargetDivideDetailService targetDivideDetailService;
|
|
|
|
@Override
|
public ResultVO queryAll(PageQuery<TargetMngQueryCriteria> pageQuery) {
|
Long pageIndex = pageQuery.getPageIndex();
|
Long pageSize = pageQuery.getPageSize();
|
IPage<TargetMng> page = new Page<>(pageIndex, pageSize);
|
|
page = baseMapper.selectPage(page,
|
QueryHelpPlus.getPredicate(TargetMng.class, pageQuery.getSearchParams()));
|
List<TargetMngDto> respList = BeanCopyUtils.copyBeanList(page.getRecords(), TargetMngDto.class);
|
|
return new SearchResultVO<>(
|
true,
|
pageIndex,
|
pageSize,page.getPages(),
|
page.getTotal(),
|
respList,
|
ResultCodes.OK
|
);
|
}
|
|
|
@Override
|
public List<TargetMng> queryAll(TargetMngQueryCriteria criteria) {
|
return baseMapper.selectList(QueryHelpPlus.getPredicate(TargetMng.class, criteria));
|
}
|
|
@Override
|
public Object selectOne(Serializable id) {
|
TargetMng targetMng = baseMapper.selectById(id);
|
if(targetMng == null){
|
return null;
|
}
|
TargetMngDto targetMngDto = BeanCopyUtils.copyBean(targetMng, TargetMngDto.class);
|
|
//查询关联分解信息
|
TargetDivideDetailQueryCriteria criteria = new TargetDivideDetailQueryCriteria();
|
criteria.setTargetId(targetMng.getId());
|
List<TargetDivideDetailDto> respList = BeanCopyUtils.copyBeanList(targetDivideDetailService.queryAll(criteria), TargetDivideDetailDto.class);
|
|
//循环获取部门信息 TODO
|
|
targetMngDto.setTargetDivideDetailList(respList);
|
return targetMngDto;
|
}
|
}
|