TdCCustInvoiceMailDaoImpl.java 2.37 KB
/**
 *
 */
package com.zteits.pay.dao.impl;

import org.apache.commons.collections4.CollectionUtils;
import com.github.pagehelper.PageHelper;
import com.zteits.clouds.api.apibase.constants.DataStatusEnum;
import com.zteits.pay.dao.TdCCustInvoiceMailDao;
import com.zteits.pay.dao.TdCCustInvoiceinfoDao;
import com.zteits.pay.domain.TdCCustInvoiceMail;
import com.zteits.pay.domain.TdCCustInvoiceMailExample;
import com.zteits.pay.domain.TdCCustInvoiceinfo;
import com.zteits.pay.domain.TdCCustInvoiceinfoExample;
import com.zteits.pay.mapper.TdCCustInvoiceMailMapper;
import com.zteits.pay.mapper.TdCCustInvoiceinfoMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

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


@Component
public class TdCCustInvoiceMailDaoImpl implements TdCCustInvoiceMailDao {

	@Autowired
	private TdCCustInvoiceMailMapper tdCCustInvoiceMailMapper;


    @Override
    public List<TdCCustInvoiceMail> queryMailsByOrgId(Long orgId) {
        TdCCustInvoiceMailExample example = new TdCCustInvoiceMailExample();
        example.createCriteria().andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value())
                .andOrgIdEqualTo(orgId);
        return tdCCustInvoiceMailMapper.selectByExample(example);
    }

    @Override
    public TdCCustInvoiceMail queryTheLessMailByOrgId(Long orgId) {
        PageHelper.startPage(1, 1);
        TdCCustInvoiceMailExample example = new TdCCustInvoiceMailExample();
        example.createCriteria().andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value())
                .andOrgIdEqualTo(orgId);
        example.setOrderByClause("send_num asc");
        List<TdCCustInvoiceMail> list = tdCCustInvoiceMailMapper.selectByExample(example);
        if(CollectionUtils.isEmpty(list)){
            return null;
        }
        return list.get(0);
    }

    @Override
    public Integer updateMailsById(TdCCustInvoiceMail record,Long id) {
        TdCCustInvoiceMailExample example = new TdCCustInvoiceMailExample();
        example.createCriteria().andDataStateEqualTo(DataStatusEnum.DATA_STATUS_VALID.value())
                .andIdEqualTo(id);
        record.setModfiyDate(new Date());
        record.setModfiyEmpid("-1");
        return tdCCustInvoiceMailMapper.updateByExampleSelective(record,example);
    }
}