package com.gk.firework.Service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.gk.firework.Domain.*; import com.gk.firework.Domain.Enum.EnterpriseStatus; import com.gk.firework.Domain.Utils.BooleanReason; import com.gk.firework.Domain.Vo.EnterpriseExportVo; import com.gk.firework.Domain.Vo.EnterpriseVo; import org.apache.ibatis.annotations.Param; import org.springframework.web.multipart.MultipartFile; import java.util.List; import java.util.Map; public interface EnterpriseService extends IService { void addApply(EnterpriseApply enterpriseApply, UserInfo user) throws IllegalAccessException; IPage selectEnterprise(Page page, Map filter, UserInfo user); void addEnterprise(Enterprise enterprise, UserInfo user); void modEnterprise(Enterprise enterprise, UserInfo user); int countBySafetySupervision(String safetySupervision); IPage selectParentEnterprise(Page page, Map filter); void delEnterprise(Long id, UserInfo user); /** * @Description: 新增校验,密码校验标识flag * @date 2021/4/20 17:09 */ void checkAddEnterprise(Enterprise enterprise,Boolean flag); EnterpriseVo selctSimpleByNumber(String enterprisenumber); void checkModEnterprise(Enterprise enterprise); boolean isDuplicateNumber(String enterpriseNumber, Long id); boolean isDuplicateEnterpriseName(String enterpriseName, Long id); List findEnterpriseIdsByLocation(String province,String city,String district,String street,String committee); List findEnterpriseListByLocation(String province,String city,String district,String street,String committee); Map getEnterpriseDetail(String enterpriseNumber, Integer days, String starttime, String endtime); Enterprise selectEnterpriseByCompanyId(Long companyid); /** * 查询生产企业信息,即SafetySupervision为PRODUCE * @return List 企业信息集合 */ List selectProduceEnterprise(); /** * 查询销售企业信息,即SafetySupervision不为 PRODUCE * @return List 企业信息集合 */ List selectSaleEnterprise(); List selectSaleEnterprise(Mapparam); List selectSaleEnterprise(Mapparam,Page page); /** * 根据 EnterpriseNumber 查询 Enterprise 信息 * @param number 企业编号 * @return Enterprise */ Enterprise selectEnterpriseByNumber(String number); /** * 获取所有企业的经纬度 * @param * @return Enterprise */ List getAllLocation(String city); /** * 零售点数量按区域统计 * @param * @return Enterprise */ List getRetailStatisticsByArea(); /** * @Description: 导出 * @date 2021/4/16 17:38 */ List selectExportEnterprise(Map filter, UserInfo user); BooleanReason importEnterprise(MultipartFile file, UserInfo userInfo); int getSaleNum(); List getEnterpriseSaleDetail(String enterpriseNumber, String itemcode, String starttime, String endtime); /** * 根据企业名称查询企业信息 * @param name 企业名称 * @return Enterprise 企业信息 */ Enterprise selectEnterpriseByName(String name); /** * @Description: 停用企业 * @date 2021/5/28 16:15 */ void deactivateEnterprise(Long id,String enterprisenumber, UserInfo user); /** * @Description: 启用企业 * @date 2021/5/28 16:16 */ void activateEnterprise(Long id,String enterprisenumber, UserInfo user); /** * @Description: 更新企业状态 * @date 2021/5/28 16:15 */ void setEnterpriseStatus(EnterpriseStatus status, Long id); //查找监管部门下的所有信息未补全的个数 int countAllUndoneEnterprise(UserInfo userInfo); //查找监管部门下许可证过期的的所有企业个数 int countAllEnterpriseExpired(UserInfo userInfo); /** * @Description: 通过注册添加企业信息及用户信息 * @date 2021-6-25 14:12:53 * @param registerInfo 注册信息 * @param userInfo 审核用户信息 */ void addEnterpriseByRegister(RegisterInfo registerInfo, UserInfo userInfo); List selectListUnderSupervision(Integer type,UserInfo user); IPage selectUndoneList(Page page, Map filter,UserInfo userInfo); List selectExportUndoneList(Map filter, UserInfo user); /** * @Description: 判断2位编码是否重复 true : 重复 false : 不重复 */ boolean isDuplicate2BitCode(String randomStr); IPage selectExpiredList(Page page, Map filter, UserInfo user); List selectExportExpiredList(Map filter, UserInfo user); /** * @Description: 查找所有子企业 */ List selectSubEnterprise(Long enterpriseId); List getEnterpriseByLimit(Map condition); Integer getEnterpriseByLimitCount(Map condition); BooleanReason importDlCompanyCode(MultipartFile file, UserInfo user); List exportDlCompanyCode(); List selectAllDlCompanyCodeIsNotNull(); void updateCompanyCode(Enterprise e); List selectSaleEnterpriseForUpload(); /** * @Description: 判断是否注销 * @date 2022/2/22 12:37 */ boolean isLogOut(String companynumber); /** * @Description: 注销企业 * @date 2022/2/23 1:04 */ void logout(List ids, UserInfo user); /** * @Description: 注销企业恢复成有效 * @date 2022/2/23 1:04 */ void recoverLogin(Long id, UserInfo user); /** * @Description: 注销企业恢复成有效 * @date 2022/2/23 1:04 */ void recoverLoginBatch(List ids, UserInfo user); List selectEnterpriseListByNameLike(String name); }