package com.ym.mec.biz.service;

import com.ym.mec.biz.dal.entity.SysUserTsign;
import com.ym.mec.biz.dal.enums.KitGroupPurchaseTypeEnum;

public interface ContractService {

	/**
	 * 用户注册
	 * @param userId
	 * @param realName
	 * @param idCardNo
	 * @param mobileNo
	 * @return
	 */
	SysUserTsign register(Integer userId, String realName, String idCardNo, String mobileNo);

	/**
	 * 传递注册协议至第三方公证平台
	 * @param userId
	 * @return
	 */
	boolean transferRegisterContract(Integer userId);

	/**
	 * 查询注册协议内容
	 * @param userId
	 * @return
	 */
	String queryRegisterContract(Integer userId);

	/**
	 * 传递乐团课程协议
	 * @param userId
	 * @param musicGroupId
	 * @return
	 */
	boolean transferMusicGroupCoursesContract(Integer userId, String musicGroupId);

	/**
	 * 查询乐团课程协议
	 * @param userId
	 * @param vipGroupId
	 * @return
	 */
	String queryMusicGroupCoursesContract(Integer userId, String vipGroupId);

	/**
	 * 传递VIP课程协议
	 * @param userId
	 * @param vipGroupId
	 * @return
	 */
	boolean transferVipGroupCoursesContract(Integer userId, Long vipGroupId);

	/**
	 * 查询VIP课程协议
	 * @param userId
	 * @param vipGroupId
	 * @return
	 */
	String queryVipGroupCoursesContract(Integer userId, Long vipGroupId);

	/**
	 * 传递商品协议
	 * @param userId
	 * @param musicGroupId
	 * @param goodsIds
	 * @param kitGroupPurchaseTypeEnum
	 * @return
	 */
	boolean transferGoodsContract(Integer userId, String musicGroupId, String goodsIds, KitGroupPurchaseTypeEnum kitGroupPurchaseTypeEnum);

	/**
	 * 查询商品协议
	 * @param userId
	 * @param musicGroupId
	 * @param goodsIds
	 * @param kitGroupPurchaseTypeEnum
	 * @return
	 */
	String queryGoodsContract(Integer userId, String musicGroupId, String goodsIds, KitGroupPurchaseTypeEnum kitGroupPurchaseTypeEnum);
}
