package com.yeejoin.amos.boot.module.tcm.flc.api.service;


import com.yeejoin.amos.boot.module.tcm.flc.api.dto.UnitInfoApproveDto;
import com.yeejoin.amos.boot.module.tcm.flc.api.dto.UnitInfoDto;
import com.yeejoin.amos.boot.module.tcm.flc.api.entity.UnitInfo;
import com.yeejoin.amos.boot.module.tcm.flc.api.entity.UnitInfoChange;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;

import java.util.Collection;
import java.util.List;

/**
 * 企业信息表接口类
 *
 * @author system_generator
 * @date 2021-11-11
 */
public interface IUnitInfoService {

    /**
     * 审批企业注册信息
     * @param approveDto
     * @return
     */
    UnitInfoDto approve(UnitInfoApproveDto approveDto);

    UnitInfoDto getDtoById(Long sequenceNbr);

    UnitInfoDto getUnitDtoById(Long sequenceNbr);

    UnitInfoDto unitInfoToDto(UnitInfo source);

    UnitInfoDto unitChangeInfoToDto(UnitInfoChange source);

    UnitInfoDto getDtoByOrgId(Long sequenceNbr);

    UnitInfoDto changeUnInfo(UnitInfoDto model);

    List<UnitInfoDto> getInspectionUnit();

    List<UnitInfoDto> getAllUnit();

    List<UnitInfoDto> getUseUnit(String unitType, String address, String orgName, String organizationCode);

    Boolean addQRcode();

    /**
     * 单位树
     * @param parentId 上级行政区划ID
     * @param isNationwide 是否全国范围行政区划 null默认陕西省内，1全国
     * @return Collection<RegionModel>
     */
    Collection<RegionModel> getRegionTree(Long parentId, String isNationwide);
}
