luofl
2025-03-21 0eb28fecafb15512c82aeae00b40fb1bca65f08c
springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IPartyMemberService.java
@@ -1,7 +1,19 @@
package com.panzhihua.sangeshenbian.service;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.panzhihua.common.model.vos.LoginUserInfoVO;
import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo;
import com.panzhihua.sangeshenbian.model.entity.PartyMember;
import com.baomidou.mybatisplus.extension.service.IService;
import com.panzhihua.sangeshenbian.warpper.PartyMemberApplicationRequest;
import com.panzhihua.sangeshenbian.warpper.PartyMemberImportFailedVO;
import com.panzhihua.sangeshenbian.warpper.PartyMemberDTO;
import com.panzhihua.sangeshenbian.warpper.PartyMemberQuery;
import com.panzhihua.sangeshenbian.warpper.PendingPartyMemberApplicationVO;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.util.List;
/**
 * <p>
@@ -12,5 +24,72 @@
 * @since 2025-03-13
 */
public interface IPartyMemberService extends IService<PartyMember> {
    /**
     * 分页查询党员
     *
     * @param query
     * @param loginUserInfo
     * @return
     */
    Page<PartyMember> pageList(PartyMemberQuery query, SystemUserVo loginUserInfo);
    /**
     * 添加党员
     * @param dto
     * @param loginUserInfo
     */
    void save(PartyMemberDTO dto, SystemUserVo loginUserInfo);
    /**
     * 冻结/解冻
     * @param id
     * @param loginUserInfo
     */
    void freeze(Long id, SystemUserVo loginUserInfo);
    /**
     * 下载导入模板
     */
    void download() throws IOException;
    /**
     * 导出党员数据
     * @param query
     * @param loginUserInfo
     * @throws IOException
     */
    void export(PartyMemberQuery query, SystemUserVo loginUserInfo) throws IOException;
    /**
     * 导入
     *
     * @param file
     * @param loginUserInfo
     * @return
     */
    List<PartyMemberImportFailedVO> importExcel(MultipartFile file, SystemUserVo loginUserInfo) throws IOException;
    /**
     * 党员申请
     */
    void applyForMembership(PartyMemberApplicationRequest dto, LoginUserInfoVO loginUserInfo);
    /**
     * 审核
     *
     * @param dto
     * @param loginUserInfo
     */
    void audit(PartyMemberDTO dto, SystemUserVo loginUserInfo);
    /**
     * 根据电话号码查询有效的党员数据
     * @param phone
     * @return
     */
    PartyMember getPartyMemberByPhone(String phone);
    Page<PendingPartyMemberApplicationVO> preAuditList(Page<PendingPartyMemberApplicationVO> page, LoginUserInfoVO loginUserInfo);
    Boolean verifyPartyMemberByPhone(String phone);
}