DgBusinessServiceImpl.java 3.24 KB
package com.pashanhoo.business.service.impl;

import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.pashanhoo.business.entity.DgBusinessConverter;
import com.pashanhoo.business.entity.DgBusinessDO;
import com.pashanhoo.business.entity.vo.AddDgBusinessRequest;
import com.pashanhoo.business.entity.vo.DgBusinessDetailVO;
import com.pashanhoo.business.entity.vo.UpdateDgBusinessRequest;
import com.pashanhoo.business.entity.vo.DgBusinessSearchRequest;
import com.pashanhoo.business.mapper.DgBusinessMapper;
import com.pashanhoo.business.service.DgBusinessService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;

/**
 * <p>
 * 档案业务信息 服务实现类
 * </p>
 *
 * @author
 * @since 2021-11-05
 */
@Service
public class DgBusinessServiceImpl extends ServiceImpl<DgBusinessMapper, DgBusinessDO> implements DgBusinessService {

    @Autowired
    private DgBusinessConverter dgbusinessConverter;

    @Autowired
    private DgBusinessMapper dgbusinessMapper;

    /**
     * 新增记录
     * @param request
     * @return
     */
    @Override
    public boolean insertDgBusiness(AddDgBusinessRequest request) {
        DgBusinessDO dgbusinessDO = dgbusinessConverter.addRequest2DO(request);
        return this.save(dgbusinessDO);
    }

    /**
     * 根据主键查询记录详情
     * @param id
     * @return
     */
    @Override
    public DgBusinessDetailVO getDgBusinessDetailById(String id) {
        DgBusinessDO dgbusinessDO = this.getById(id);
        return dgbusinessConverter.do2DetailVO(dgbusinessDO);
    }

    /**
     * 修改单条记录
     * @param request
     * @return
     */
    @Override
    public boolean updateDgBusiness(UpdateDgBusinessRequest request) {
        DgBusinessDO dgbusinessDO = dgbusinessConverter.updateRequest2DO(request);
        return this.updateById(dgbusinessDO);
    }

    /**
     * 根据条件进行列表查询
     * @param request
     * @return
     */
    @Override
    public Page searchDgBusinessList(DgBusinessSearchRequest request) {
        Page<DgBusinessDO> pageParam = new Page<DgBusinessDO>(request.getCurrentPage(), request.getPageSize());
        QueryWrapper<DgBusinessDO> wrapper = new QueryWrapper<>();
        //设置默认排序
        wrapper = "desc".equals(request.getSortOrder()) ? wrapper.orderByDesc(request.getSortField()) :  wrapper.orderByAsc(request.getSortField());


        Page page = this.page(pageParam, wrapper);
        //将查询出来的DO List转为 ListVO List并重新设置到page对象中,并返回page对象
        return page.setRecords(dgbusinessConverter.doList2ListVOList(page.getRecords()));
    }

    @Override
    public DgBusinessDO searchDgBusiness(DgBusinessSearchRequest request) {
        QueryWrapper<DgBusinessDO> wrapper = new QueryWrapper<>();
        wrapper.eq(request.getYwh()!=null && !"".equals(request.getYwh()),"YWH",request.getYwh());
        wrapper.eq(request.getZxywh()!=null && !"".equals(request.getZxywh()),"ZXYWH",request.getZxywh());
        DgBusinessDO businessDO= dgbusinessMapper.selectOne(wrapper);
        return businessDO;
    }

}