package com.ifish.service;

import org.springframework.web.multipart.MultipartFile;

import com.ifish.dto.JsonResult;
import com.ifish.dto.PageingDto;
import com.ifish.entity.ShopsInfo;
import com.ifish.validator.PageParam;
import com.ifish.validator.ShopsUserInfoParam;


/**
 * @author guogw
 *
 */
public interface ShopsService {
	
	//保存商家信息
	public Object saveShopsInfo(ShopsInfo shopsInfo,MultipartFile file1,MultipartFile file2,MultipartFile file3);
	
	//审核失败后修改商家信息
	public Object updateShopsInfo(ShopsInfo shopsInfo,MultipartFile file1,MultipartFile file2,MultipartFile file3);
	
	//审核成功后修改商家信息
	public Object updateBaseShopsInfo(ShopsInfo shopsInfo,MultipartFile file4);
	
	//获取审核状态
	public Object getShopsStatus(Integer shopsId);
		
	//看护商家列表
	public Object getShopsInfoByPage(Integer userId,Integer firstResult,Integer pageSize);
	
	//选择看护商家
	public Object choiceShops(Integer shopsUserId,Integer userId);
	
	//解除看护关系
	public Object removeLook(Integer userId);
	
	/**
	 * 获取商家会员信息
	 * @param userId
	 * @param shopsId
	 * @return
	 */
	public JsonResult<?> getShopsUserInfoById(Integer userId,Integer shopsId);
	
	/**
	 * 更新商家会员信息
	 * @param userId
	 * @param shopsId
	 * @param param
	 * @return
	 */
	public JsonResult<?> updateShopsUserInfo(Integer userId,Integer shopsId,ShopsUserInfoParam param);
	
	/**
	 * 分页获取商家会员信息
	 * @param shopsId
	 * @param pageParam
	 * @return
	 */
	public PageingDto<?> getShopsUserInfoByPage(Integer shopsId,PageParam pageParam);
	
	/**
	 * 成为商家用户
	 * @param userId
	 * @param shopsId
	 * @return
	 */
	public JsonResult<?> becomeShopsUser(Integer userId,Integer shopsId);
}
