package org.qinan.safetyeval.app.change.service.impl;

import com.alibaba.cola.dto.PageResponse;
import lombok.AllArgsConstructor;
import org.qinan.safetyeval.app.change.executor.command.QualFilingPersonnelCertChangeAddCmdExe;
import org.qinan.safetyeval.app.change.executor.command.QualFilingPersonnelCertChangeDelCmdExe;
import org.qinan.safetyeval.app.change.executor.command.QualFilingPersonnelCertChangeUpdateCmdExe;
import org.qinan.safetyeval.app.change.executor.query.QualFilingPersonnelCertChangeListQueryExe;
import org.qinan.safetyeval.app.change.executor.query.QualFilingPersonnelCertChangePageQueryExe;
import org.qinan.safetyeval.app.change.service.QualFilingPersonnelCertChangeServiceI;
import org.qinan.safetyeval.client.change.request.QualFilingPersonnelCertChangeAddCmd;
import org.qinan.safetyeval.client.change.request.QualFilingPersonnelCertChangePageQry;
import org.qinan.safetyeval.client.change.request.QualFilingPersonnelCertChangeUpdateCmd;
import org.qinan.safetyeval.client.change.response.QualFilingPersonnelCertChangeCo;
import org.springframework.stereotype.Service;

/**
 * 备案申请人员证书
 *
 * @Author: ltq
 * @date 2026-07-02 10:04:23
 */
@Service
@AllArgsConstructor
public class QualFilingPersonnelCertChangeServiceImpl implements QualFilingPersonnelCertChangeServiceI {

    private final QualFilingPersonnelCertChangeListQueryExe qualFilingPersonnelCertChangeListQueryExe;
    private final QualFilingPersonnelCertChangeUpdateCmdExe qualFilingPersonnelCertChangeUpdateCommandExe;
    private final QualFilingPersonnelCertChangeAddCmdExe qualFilingPersonnelCertChangeAddCommandExe;
    private final QualFilingPersonnelCertChangeDelCmdExe qualFilingPersonnelCertChangeDelCommandExe;
    private final QualFilingPersonnelCertChangePageQueryExe qualFilingPersonnelCertChangePageQueryExe;

    @Override
    public PageResponse<QualFilingPersonnelCertChangeCo> listQualFilingPersonnelCertChangePage(QualFilingPersonnelCertChangePageQry qualFilingPersonnelCertChangePageQry) {
        return qualFilingPersonnelCertChangePageQueryExe.execute(qualFilingPersonnelCertChangePageQry);
    }

    @Override
    public QualFilingPersonnelCertChangeCo getQualFilingPersonnelCertChangeById(Long id) {
        return qualFilingPersonnelCertChangeListQueryExe.execute(id);
    }

    @Override
    public boolean saveQualFilingPersonnelCertChange(QualFilingPersonnelCertChangeAddCmd qualFilingPersonnelCertChangeAddCmd) {
        return qualFilingPersonnelCertChangeAddCommandExe.execute(qualFilingPersonnelCertChangeAddCmd);
    }

    @Override
    public boolean updateQualFilingPersonnelCertChange(QualFilingPersonnelCertChangeUpdateCmd qualFilingPersonnelCertChangeUpdateCmd) {
        return qualFilingPersonnelCertChangeUpdateCommandExe.execute(qualFilingPersonnelCertChangeUpdateCmd);
    }

    @Override
    public boolean deletedQualFilingPersonnelCertChangeById(Long id) {
        return qualFilingPersonnelCertChangeDelCommandExe.execute(id);
    }

    @Override
    public boolean deletedQualFilingPersonnelCertChangeByIds(Long[] ids) {
        return qualFilingPersonnelCertChangeDelCommandExe.execute(ids);
    }

}
