package com.hzs.member.base.service;

import com.hzs.common.domain.member.base.CuMember;
import com.hzs.common.domain.member.detail.CuMemberChangeLog;
import com.hzs.member.base.vo.MemberCardVO;
import com.hzs.member.base.vo.MemberDataVO;
import com.hzs.member.base.vo.MemberInfoVO;

import java.util.List;

/**
 * 会员信息服务
 */
public interface IMemberInfoService {

    /**
     * 获取会员信息
     *
     * @param memberId
     * @return
     */
    MemberInfoVO getMemberInfo(Long memberId);

    /**
     * 查询会员个人资料
     *
     * @param memberId
     * @return
     */
    MemberDataVO queryMemberData(Long memberId);

    /**
     * 查询电子会员卡
     *
     * @param memberId
     * @return
     */
    MemberCardVO queryMemberCard(Long memberId);

    /**
     * 修改会员资料
     *
     * @param cuMember              会员信息
     * @param cuMemberChangeLogList 会员修改记录列表
     * @return
     */
    void updateMemberInfo(CuMember cuMember, List<CuMemberChangeLog> cuMemberChangeLogList);


}
