CustomerDaoImpl.java 4.01 KB
package com.zteits.pay.dao.impl;

import com.clouds.common.constants.pagequery.PageSizeEnum;
import com.clouds.common.utils.page.PageUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.park.param.closecarpark.QueryCustomerNameByNoRequest;
import com.zteits.clouds.api.dto.park.param.closecarpark.ViewCustomerInfoRequest;
import com.zteits.clouds.api.dto.pay.dto.CustomerInfoDTO;
import com.zteits.clouds.api.dto.pay.param.CustomerInfoRequest;
import com.zteits.pay.dao.CustomerDao;
import com.zteits.pay.domain.TdClCustomerManagement;
import com.zteits.pay.domain.TdClCustomerManagementExample;
import com.zteits.pay.mapper.TdClCustomerManagementMapper;
import com.zteits.pay.mapper.smapper.TdClCustomerInfoSMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.List;

@Component
public class CustomerDaoImpl implements CustomerDao {

    @Autowired
    private TdClCustomerManagementMapper tdClCustomerManagementMapper;

    @Autowired
    private TdClCustomerInfoSMapper tdClCustomerInfoSMapper;



    /**
     * 每一页大小.
     */
    private static final Integer PAGE_SIZE = 500;

    @Override
    public PageInfo<TdClCustomerManagement> QueryCustomerInfo(CustomerInfoRequest request) {
        List<CustomerInfoDTO> dtoList = new ArrayList<>();

        // 1.设置分页信息
        PageUtil.pageSizeValidate(PageSizeEnum.PAGE_SIZE_BASE,request);
        PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize());
        List<TdClCustomerManagement> customerManagementList = tdClCustomerInfoSMapper.queryCustomerInfo(request);


        return new PageInfo<>(customerManagementList);
    }

    @Override
    public int insertSelective(TdClCustomerManagement record) {
        if (record == null) {
            return 0;
        }
        if (record.getDataStatus() == null) {
            record.setDataStatus(DataStatusEnum.DATA_STATUS_NO_VALID.value());
        }
        return tdClCustomerManagementMapper.insertSelective(record);
    }

    @Override
    public int updateSelective(TdClCustomerManagement record) {
        if (record == null) {
            return 0;
        }
        if (record.getDataStatus() == null) {
            record.setDataStatus(DataStatusEnum.DATA_STATUS_NO_VALID.value());
        }
        return tdClCustomerManagementMapper.updateByPrimaryKey(record);
    }

    @Override
    public int deleteSelective(TdClCustomerManagement record) {
        if (record == null) {
            return 0;
        }
        if (record.getDataStatus() == null) {
            record.setDataStatus(DataStatusEnum.DATA_STATUS_NO_VALID.value());
        }
        return tdClCustomerManagementMapper.updateByPrimaryKeySelective(record);
    }

    @Override
    public TdClCustomerManagement viewCustomerManageInfo(ViewCustomerInfoRequest request) {
        return tdClCustomerManagementMapper.selectByPrimaryKey(request.getId());
    }

    @Override
    public List<TdClCustomerManagement> queryCustomerNameByNo(QueryCustomerNameByNoRequest request) {
        TdClCustomerManagementExample example = new TdClCustomerManagementExample();
        TdClCustomerManagementExample.Criteria sql = example.createCriteria();
        if(request.getCoustomerNos().size()>0){
            sql.andCustomerNoIn(request.getCoustomerNos());
        }
      //  example.createCriteria().andCustomerNoIn(request.getCoustomerNos());
        List<TdClCustomerManagement> list = tdClCustomerManagementMapper.selectByExample(example);
        return list;
    }

    @Override
    public List<TdClCustomerManagement> queryCustomerManageList(CustomerInfoRequest request) {
        if(request == null){
            return new ArrayList<>();
        }
        List<TdClCustomerManagement> customerManagementList = tdClCustomerInfoSMapper.queryCustomerInfo(request);

        return customerManagementList;
    }
}