Newer
Older
newfiber-termite / newfiber-termites / newfiber-termites-dataup / src / main / java / com / newfiber / termite / service / impl / ProjectInfoServiceImpl.java
@yanghui yanghui on 20 May 2 KB 白蚁代码提交
package com.newfiber.termite.service.impl;

import com.newfiber.common.core.exception.ServiceException;
import com.newfiber.common.core.web.domain.BaseEntity;
import com.newfiber.common.core.web.service.BaseServiceImpl;
import com.newfiber.termite.domain.ProjectInfo;
import com.newfiber.termite.domain.request.ProjectInfoQueryRequest;
import com.newfiber.termite.domain.request.ProjectInfoSaveRequest;
import com.newfiber.termite.domain.request.ProjectInfoUpdateRequest;
import com.newfiber.termite.mapper.ProjectInfoMapper;
import com.newfiber.termite.service.IProjectInfoService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import javax.annotation.Resource;
import java.util.List;
import java.util.Optional;

@Service
public class ProjectInfoServiceImpl extends BaseServiceImpl<ProjectInfoMapper, ProjectInfo> implements IProjectInfoService {

    @Resource
    private ProjectInfoMapper projectInfoMapper;


    @Override
    public long insert(ProjectInfoSaveRequest request) {

        ProjectInfo ProjectInfo = new ProjectInfo();
        BeanUtils.copyProperties(request, ProjectInfo);
        save(ProjectInfo);
        return Optional.of(ProjectInfo).map(BaseEntity::getId).orElse(0L);
    }


    @Override
    public boolean update(ProjectInfoUpdateRequest request) {
        ProjectInfo ProjectInfo = new ProjectInfo();
        BeanUtils.copyProperties(request, ProjectInfo);
        return updateById(ProjectInfo);
    }

    @Override
    @Transactional(rollbackFor = Exception.class)
    public boolean delete(String ids) {
        return deleteLogic(ids);
    }


    @Override
    public ProjectInfo selectDetail(Long id) {
        ProjectInfo ProjectInfo = projectInfoMapper.selectById(id);
        if(null == ProjectInfo){
            throw new ServiceException(String.format("%s ID=%s 的记录不存在", this.getClass().getSimpleName(), id));
        }
        return ProjectInfo;
    }

    @Override
    public List<ProjectInfo> selectPage(ProjectInfoQueryRequest request) {
        return projectInfoMapper.selectByCondition(request);
    }

    @Override
    public List<ProjectInfo> selectList(ProjectInfoQueryRequest request) {
        return projectInfoMapper.selectByCondition(request);
    }

    @Override
    public List<ProjectInfo> getUploadApi(String sn){
        return projectInfoMapper.selectUploadApiBySn(sn);
    }
}