package com.fs.qywx.service.impl;

import java.util.List;
import com.fs.common.utils.DateUtils;
import com.fs.qywx.domain.QywxUser;
import com.fs.qywx.mapper.QywxUserMapper;
import com.fs.qywx.vo.QywxCompanyListVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.fs.qywx.mapper.QywxCompanyMapper;
import com.fs.qywx.domain.QywxCompany;
import com.fs.qywx.service.IQywxCompanyService;

/**
 * 企业微信三方应用授权公司Service业务层处理
 *
 * @author fs
 * @date 2023-07-24
 */
@Service
public class QywxCompanyServiceImpl implements IQywxCompanyService
{
    @Autowired
    private QywxCompanyMapper qywxCompanyMapper;
    @Autowired
    private QywxUserMapper qywxUserMapper;
    /**
     * 查询企业微信三方应用授权公司
     *
     * @param id 企业微信三方应用授权公司主键
     * @return 企业微信三方应用授权公司
     */
    @Override
    public QywxCompany selectQywxCompanyById(Integer id)
    {
        return qywxCompanyMapper.selectQywxCompanyById(id);
    }

    /**
     * 查询企业微信三方应用授权公司列表
     *
     * @param qywxCompany 企业微信三方应用授权公司
     * @return 企业微信三方应用授权公司
     */
    @Override
    public List<QywxCompany> selectQywxCompanyList(QywxCompany qywxCompany)
    {
        return qywxCompanyMapper.selectQywxCompanyList(qywxCompany);
    }

    /**
     * 新增企业微信三方应用授权公司
     *
     * @param qywxCompany 企业微信三方应用授权公司
     * @return 结果
     */
    @Override
    public int insertQywxCompany(QywxCompany qywxCompany)
    {
        qywxCompany.setCreateTime(DateUtils.getNowDate());
        return qywxCompanyMapper.insertQywxCompany(qywxCompany);
    }

    /**
     * 修改企业微信三方应用授权公司
     *
     * @param qywxCompany 企业微信三方应用授权公司
     * @return 结果
     */
    @Override
    public int updateQywxCompany(QywxCompany qywxCompany)
    {
        qywxCompany.setUpdateTime(DateUtils.getNowDate());
        return qywxCompanyMapper.updateQywxCompany(qywxCompany);
    }

    /**
     * 批量删除企业微信三方应用授权公司
     *
     * @param ids 需要删除的企业微信三方应用授权公司主键
     * @return 结果
     */
    @Override
    public int deleteQywxCompanyByIds(Integer[] ids)
    {
        return qywxCompanyMapper.deleteQywxCompanyByIds(ids);
    }

    /**
     * 删除企业微信三方应用授权公司信息
     *
     * @param id 企业微信三方应用授权公司主键
     * @return 结果
     */
    @Override
    public int deleteQywxCompanyById(Integer id)
    {
        return qywxCompanyMapper.deleteQywxCompanyById(id);
    }

    @Override
    public boolean deleteQywxCompanyByCorpId(String corpId) {
        //删除人
      qywxUserMapper.deleteUserByCorpId(corpId);
        return qywxCompanyMapper.deleteQywxCompanyByCorpId(corpId);
    }

    @Override
    public List<QywxCompanyListVO> selectQywxCompanyListVO(QywxCompany qywxCompany) {
        return qywxCompanyMapper.selectQywxCompanyListVO(qywxCompany);
    }

    @Override
    public void updateAccessToken(String corpId, String accessToken) {
        qywxCompanyMapper.updateAccessToken(corpId,accessToken);
    }
}
