TdCCustBusinessDaoImpl.java 4.2 KB
package com.zteits.pay.dao.impl;

import cn.hutool.core.collection.CollectionUtil;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.clouds.api.dto.pay.param.TdCCustBusinessRequest;
import com.zteits.clouds.api.dto.pay.param.TdCCustPersonRequest;
import com.zteits.pay.dao.TdCCustBusinessDao;
import com.zteits.pay.domain.TdCCustBusiness;
import com.zteits.pay.domain.TdCCustBusinessExample;
import com.zteits.pay.mapper.TdCCustBusinessMapper;
import com.zteits.pay.mapper.smapper.TdCCustBusinessSMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;

import java.util.Date;
import java.util.List;

@Component
public class TdCCustBusinessDaoImpl implements TdCCustBusinessDao {
    @Autowired
    private TdCCustBusinessMapper tdCCustBusinessMapper;
    @Autowired
    private TdCCustBusinessSMapper tdCCustBusinessSMapper;

    @Override
    public int saveTdCCustBusiness(TdCCustBusiness tdCCustBusiness) {
        if(tdCCustBusiness.getCreateDate()==null){
            tdCCustBusiness.setCreateDate(new Date());
        }
        return tdCCustBusinessMapper.insertSelective(tdCCustBusiness);
    }

    @Override
    public int updateByExampleSelective(TdCCustBusiness record, TdCCustBusinessExample example) {
        return tdCCustBusinessMapper.updateByExampleSelective(record,example);
    }

    @Override
    public int updateByPrimaryKeySelective(TdCCustBusiness record) {
        return tdCCustBusinessMapper.updateByPrimaryKeySelective(record);
    }

    @Override
    public List<TdCCustBusiness> selectByExample(TdCCustBusinessExample example) {
        return tdCCustBusinessMapper.selectByExample(example);
    }

    @Override
    public TdCCustBusiness queryByPrimaryKey(Long id) {
        return tdCCustBusinessMapper.selectByPrimaryKey(id);
    }

    @Override
    public List<TdCCustBusiness> queryTdCCustBusiness(TdCCustBusinessRequest request) {
        return tdCCustBusinessSMapper.queryTdCCustBusinessForPage(request);
    }

    @Override
    public int batchDeleteTdCCustBusinessByPrimaryKey(List<Long> ids, String opId, String opName) {
        TdCCustBusiness record = new TdCCustBusiness();
        record.setModfiyEmpid(opId);
        record.setModfiyDate(new Date());
        record.setDataState(DataStatusEnum.DATA_STATUS_NO_VALID.value());
        TdCCustBusinessExample example = new TdCCustBusinessExample();
        example.createCriteria().andIdIn(ids);
        return tdCCustBusinessMapper.updateByExampleSelective(record,example);
    }

    @Override
    public PageInfo<TdCCustBusiness> queryTdCCustBusinessForPage(TdCCustBusinessRequest request) {
        PageHelper.startPage(request.getBaseRequest().getPageNum(), request.getBaseRequest().getPageSize());
        List<TdCCustBusiness> resultList = tdCCustBusinessSMapper.queryTdCCustBusinessForPage(request);
        PageInfo<TdCCustBusiness> pageInfo = new PageInfo<>(resultList);
        if(pageInfo.getPages()<request.getBaseRequest().getPageNum()){
            if(!org.springframework.util.CollectionUtils.isEmpty(resultList)){
                resultList.removeAll(resultList);
            }
        }
        return new PageInfo<TdCCustBusiness>(resultList);
    }

    /**
     * 根据custId查询商户信息
     * @param tdCCustPersonRequest
     * @return
     */
    @Override
    public TdCCustBusiness selectByCustIdForBusiness(TdCCustPersonRequest tdCCustPersonRequest) {
        TdCCustBusinessExample example = new TdCCustBusinessExample();
        example.createCriteria().andCustIdEqualTo(tdCCustPersonRequest.getCustId())
                .andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value());
        List<TdCCustBusiness> tdCCustPeople = tdCCustBusinessMapper.selectByExample(example);
        if(CollectionUtil.isNotEmpty(tdCCustPeople)){
            return tdCCustPeople.get(0);
        }
        return null;
    }

    /**
     * 根据商户手机号 查询商户信息
     * @param userPhone
     * @return
     */
    @Override
    public TdCCustBusiness selectByUserPhoneForBusiness(String userPhone) {
        return tdCCustBusinessSMapper.selectByUserPhoneForBusiness(userPhone);
    }
}