using System.ServiceModel;

namespace BLWWSCore.SOAP
{
    [ServiceContract()]
    public interface IWebServices
    {

        /// <summary>
        /// 没有人脸机的接口
        /// </summary>
        /// <param name="key"></param>
        /// <param name="code"></param>
        /// <param name="roomNumber"></param>
        /// <param name="checkInDate"></param>
        /// <param name="xmlString"></param>
        /// <param name="errorMsg"></param>
        /// <param name="phoneNumber"></param>
        /// <param name="idNumber"></param>
        /// <returns></returns>
        [OperationContract()]
        public bool CheckIn(string key, string code, string roomNumber, DateTime checkInDate, string xmlString, ref string errorMsg, string phoneNumber = "", string idNumber = "");


        /// <summary>
        /// 有人脸机的接口
        /// </summary>
        /// <param name="key"></param>
        /// <param name="code"></param>
        /// <param name="roomNumber"></param>
        /// <param name="checkInDate"></param>
        /// <param name="xmlString"></param>
        /// <param name="errorMsg"></param>
        /// <param name="checkInID"></param>
        /// <param name="phoneNumber"></param>
        /// <param name="idNumber"></param>
        /// <returns></returns>
        public bool CheckIn2(string key, string code, string roomNumber, DateTime checkInDate, string xmlString, ref string errorMsg, ref long checkInID, string phoneNumber = "", string idNumber = "");



        /// <summary>
        /// 图片上传
        /// </summary>
        /// <param name="key"></param>
        /// <param name="code"></param>
        /// <param name="checkInID"></param>
        /// <param name="idType"></param>
        /// <param name="idCard"></param>
        /// <param name="name"></param>
        /// <param name="sex"></param>
        /// <param name="birthday"></param>
        /// <param name="photoUrl"></param>
        /// <param name="photo"></param>
        /// <param name="errorMsg"></param>
        /// <returns></returns>
        public bool UploadPhoto(string key, string code, long checkInID, int idType, string idCard, string name, int sex, string birthday, string photoUrl, byte[] photo, ref string errorMsg);



        public bool ChangePhoneNumber(string key, string code, string roomNumber, string phoneNumber, string idNumber, ref string errorMsg);


        public bool CheckOut(string key, string code, string roomNumber, DateTime checkOutDate, ref string errorMsg);


        public bool RentRoom(string key, string code, string roomNumber, DateTime rentDate, ref string errorMsg);


        /// <summary>
        /// 推送数据到宝镜系统
        /// </summary>
        /// <param name="key"></param>
        /// <param name="code"></param>
        /// <param name="isable"></param>
        public void PushBaoJing_IsEnable(string key, string code, bool isable);



        /// <summary>
        /// 判断是否推送数据到宝镜系统
        /// 获取是否推送PMS数据到宝镜
        /// </summary>
        /// <param name="key"></param>
        /// <param name="code"></param>
        /// <returns></returns>
        public int GetPushBaoJing_IsEnable(string key, string code);


        /// <summary>
        /// 
        /// </summary>
        /// <param name="key"></param>
        /// <param name="Code"></param>
        /// <param name="HotelName"></param>
        /// <param name="HotelId"></param>
        /// <returns></returns>
        public int AddHotelInfo(string key, string Code, string HotelName, int HotelId);


    }
}
