package com.iformall.service; import com.github.pagehelper.PageInfo; import com.iformall.common.ResultData; import com.iformall.domain.dto.WxCUserBasicInfoDto; import com.iformall.domain.dto.WxCUserBasicInfoFilterDto; import com.iformall.domain.dto.WxCUserBasicInfoFilterListDto; import com.iformall.domain.po.*; import com.iformall.domain.po.base.TenantEntity; import com.iformall.domain.vo.CUserBaseInfoT; import com.iformall.domain.vo.UserCountVo; import com.iformall.domain.vo.WxTagsGroupVo; import com.iformall.enums.EnumMsgModel; import com.iformall.enums.EnumScoreType; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.List; import java.util.Map; public interface WxCUserBasicInfoService { /** * 根据租户ID获取会员过滤器列表 * * @return */ List listFilters(TenantEntity tenantEntity); long countByFilter(TenantEntity tenantEntity, List filterList); List listByFilter(TenantEntity tenantEntity, List filterList); List findIdByFilter(TenantEntity tenantEntity, List filterList); List listByFilterList(TenantEntity tenantEntity, List filterList); List listOpenIdByFilter(TenantEntity tenantEntity, List filterList); /** * 根据实体查询分页列表 * * @param record * @param pageIndex * @param pageSize * @return */ PageInfo listAsPage(WxCUserBasicInfo record, Integer pageIndex, Integer pageSize); List listPhoneAndNameByIds(WxCUserBasicInfo record); Map getUserMap(TenantEntity tenantEntity, List cUserIdList); /** * 根据实体查询列表 * @param record * @return */ int countUser(WxCUserBasicInfo record); /** * 根据Id获得实体 * * @param id * @return */ WxCUserBasicInfo getById(Long id,String finalTenantId); WxCUserBasicInfo getById(Long id); /** * 保存实体 * * @param record */ void save(WxCUserBasicInfo record); /** * 更新实体 * * @param record */ void update(WxCUserBasicInfo record); /** * 保存或更新实体 * * @param record */ void updateObj(WxCUserBasicInfo record, WxCUser user); /** * 根据Id删除实体 * */ //void deleteById(Long id); List findByPhone(TenantEntity tenantEntity, String phone); WxCUserBasicInfo findInfoByPhone(TenantEntity tenantEntity, String phone); WxCUserBasicInfo findInfoByEmail(TenantEntity tenantInfo, String email); /** * 修改会员积分 * * @param record */ void updateScore(WxCUserBasicInfo record); /** * 根据性别查询数量 * * @param dto * @return */ long findCountBySex(WxCUserBasicInfoDto dto); /** * 根据年龄查询数量 * * @param dto * @return */ long findCountByAge(WxCUserBasicInfoDto dto); /** * 根据年龄积分查寻数量 * * @param dto * @return */ long findCountByScore(WxCUserBasicInfoDto dto); int exportDataCount(WxCUserBasicInfo basicInfo); void exportData(WxCUserBasicInfo basicInfo, HttpServletRequest request, HttpServletResponse response); void exportTemplate(HttpServletRequest request, HttpServletResponse response); void importOneMem(String importKey, List tagList, CUserBaseInfoT uBase,MallUserInfo mallUserInfo); long findCount(WxCUserBasicInfoDto record); List findCountHistory(WxCUserBasicInfoDto record); /** * 停车会员记录导出 * @param record * @param request * @param response */ void exportCarPayData(WxCarPayRecord record, HttpServletRequest request, HttpServletResponse response); /** * 自然增长用户 * @return */ long findGrowUserCount(TenantEntity tenantEntity); /** * 导入用户数 * @return */ long findImportUserCount(TenantEntity tenantEntity); ResultData updateStatus(WxCUserBasicInfo wxCUserBasicInfo); WxCUserBasicInfo getByObject(WxCUserBasicInfo wxCUserBasicInfo); List findListByScore(TenantEntity tenantEntity, WxCUserBasicInfoDto wxCUserBasicInfoDto); List findBirthdayList(TenantEntity tenantEntity, String format, String format1); void cuserOldToNew(Long oldCuserId, Long newCuserId,TenantEntity tenantinfo); WxCUserBasicInfo registerByPhone(TenantEntity tenantEntity, String phone, String nickName,String name, Integer sex, String avatarUrl); int addCredit(Long userId, TenantEntity tenantInfo, EnumScoreType wechatPhone); void registerJinmao(TenantEntity tenantInfo,WxCUserBasicInfo basicInfo); void updateTenantIdMsg(TenantEntity tenantInfo, TenantEntity mallTenant, Long userId); void updateTenantId(String finalTenantId, String tenantId, Long userId); void handleLoginUser(WxCUserBasicInfo basicInfo); void logout(WxCUserBasicInfo basicInfo); WxCUserBasicInfo getByToken(String token); WxCUserBasicInfo register(TenantEntity tenantInfo, String phone, String pwd); WxCUserBasicInfo registerEmail(TenantEntity tenantInfo, String email, String password); /** * 发送激活邮件,修改密码邮件 */ void sendTicketEmail(WxCUserBasicInfo basicInfo, EnumMsgModel type); void updUserInfo(WxCUserBasicInfo cUser, Long memberId); WxCUserBasicInfo getById1(Long id); void updateCode(Long id, String mcode); }