// Path: app/src/main/java/com/haogefeifei/odoo/api/inf/OdooRpcException.java
// public class OdooRpcException extends Exception {
// 
//     private static final long serialVersionUID = 1L;
// 
//     private String exceptionMessage = ""; //错误信息
// 
//     public static final String XML_ERROR = "服务器暂时无法您的处理请求";
//     public static final String FOUND_SERVER_ERROR = "无法与服务器通信";
//     public static final String NULL_DATE_ERROR = "无法获取数据";
//     public static final String NOT_HTTP = "没有网络";
//     public static final String TIME_OUT = "请求超时";
// 
//     public String getExceptionMessage() {
//         return exceptionMessage;
//     }
// 
//     public void setExceptionMessage(String exceptionMessage) {
//         this.exceptionMessage = exceptionMessage;
//     }
// 
//     public String getMessage(){
//         return exceptionMessage;
//     }
// 
//     public OdooRpcException(String message) {
// 
//         super(message);
// 
//         //对错误信息进行处理
//         LogUtil.d("ExceptionMessageUtil", message);
// 
//         String msg = "";
// 
//         if(message.indexOf("--") > -1){
//             msg  = StringCutOut.cutOut(message, message.indexOf("-- ") + 3, message.length());
//         }
//         else if(message.indexOf("HTTP server returned unexpected status: Not Found") > -1
//                 || message.indexOf("org.apache.http.conn.HttpHostConnectException") > -1){
//             msg = FOUND_SERVER_ERROR;
//         }
//         else if(message.indexOf("Cannot serialize null") > -1){
//             msg = NULL_DATE_ERROR;
//         }
//         else if(message.indexOf("Failed to read server's response: failed to connect") > -1
//                 || message.indexOf("Null values aren't supported") > -1
//                 || message.indexOf("ConnectTimeoutException") > -1
//                 || message.indexOf("SocketTimeoutException") > -1){
// 
//             msg = TIME_OUT;
// 
//         }
//         else{
//             msg = message;
//         }
// 
//         this.exceptionMessage = msg;
// 
//     }
// 
// }
// 
// Path: app/src/main/java/com/haogefeifei/odoo/entity/User.java
// public class User extends OdooModel {
// 
//     public static final String MODEL_NAME = "res.users";
// 
//     private String username ; // 用户名
//     private String login ; //用户登录账号
//     private String password ; //用户密码
//     private String image ;
//     private Timestamp loginTime ;
//     private Object[] em_ids;
// 
//     public Object[] getEm_ids() {
// 
//         if(em_ids == null){
//             em_ids = new Object[0];
//         }
// 
//         return em_ids;
//     }
// 
//     public void setEm_ids(Object[] em_ids) {
//         this.em_ids = em_ids;
//     }
// 
//     public String getImage() {
//         return image;
//     }
// 
//     public void setImage(String image) {
//         this.image = image;
//     }
// 
//     public String getLogin() {
//         return login;
//     }
// 
//     public String getUsername() {
//         return username;
//     }
// 
//     public void setUsername(String username) {
//         this.username = username;
//     }
// 
//     public void setLogin(String login) {
//         this.login = login;
//     }
// 
//     public String getPassword() {
//         return password;
//     }
// 
//     public void setPassword(String password) {
//         this.password = password;
//     }
// 
//     public Timestamp getLoginTime() {
//         return loginTime;
//     }
// 
//     public void setLoginTime(Timestamp loginTime) {
//         this.loginTime = loginTime;
//     }
// }


import com.haogefeifei.odoo.api.inf.OdooRpcException;
import com.haogefeifei.odoo.entity.User;
package com.haogefeifei.odoo.service.inf;


/**
 * Created by feifei on 15/12/28.
 */
public interface UserServiceInf {

    /**
     * 用户登录
     *
     * @return 登陆成功的id ，失败则返回负数代码
     */
    public int Login() throws OdooRpcException;

    /**
     * 用户登录
     *
     * @param username
     * @param password
     * @return
     * @throws OdooRpcException
     */
    public int Login(String username, String password) throws OdooRpcException;


    /**
     * 通过用户id来获取用户信息
     *
     * @param uid 用户id
     * @return User对象
     */
// Path: app/src/main/java/com/haogefeifei/odoo/api/inf/OdooRpcException.java
// public class OdooRpcException extends Exception {
// 
//     private static final long serialVersionUID = 1L;
// 
//     private String exceptionMessage = ""; //错误信息
// 
//     public static final String XML_ERROR = "服务器暂时无法您的处理请求";
//     public static final String FOUND_SERVER_ERROR = "无法与服务器通信";
//     public static final String NULL_DATE_ERROR = "无法获取数据";
//     public static final String NOT_HTTP = "没有网络";
//     public static final String TIME_OUT = "请求超时";
// 
//     public String getExceptionMessage() {
//         return exceptionMessage;
//     }
// 
//     public void setExceptionMessage(String exceptionMessage) {
//         this.exceptionMessage = exceptionMessage;
//     }
// 
//     public String getMessage(){
//         return exceptionMessage;
//     }
// 
//     public OdooRpcException(String message) {
// 
//         super(message);
// 
//         //对错误信息进行处理
//         LogUtil.d("ExceptionMessageUtil", message);
// 
//         String msg = "";
// 
//         if(message.indexOf("--") > -1){
//             msg  = StringCutOut.cutOut(message, message.indexOf("-- ") + 3, message.length());
//         }
//         else if(message.indexOf("HTTP server returned unexpected status: Not Found") > -1
//                 || message.indexOf("org.apache.http.conn.HttpHostConnectException") > -1){
//             msg = FOUND_SERVER_ERROR;
//         }
//         else if(message.indexOf("Cannot serialize null") > -1){
//             msg = NULL_DATE_ERROR;
//         }
//         else if(message.indexOf("Failed to read server's response: failed to connect") > -1
//                 || message.indexOf("Null values aren't supported") > -1
//                 || message.indexOf("ConnectTimeoutException") > -1
//                 || message.indexOf("SocketTimeoutException") > -1){
// 
//             msg = TIME_OUT;
// 
//         }
//         else{
//             msg = message;
//         }
// 
//         this.exceptionMessage = msg;
// 
//     }
// 
// }
// 
// Path: app/src/main/java/com/haogefeifei/odoo/entity/User.java
// public class User extends OdooModel {
// 
//     public static final String MODEL_NAME = "res.users";
// 
//     private String username ; // 用户名
//     private String login ; //用户登录账号
//     private String password ; //用户密码
//     private String image ;
//     private Timestamp loginTime ;
//     private Object[] em_ids;
// 
//     public Object[] getEm_ids() {
// 
//         if(em_ids == null){
//             em_ids = new Object[0];
//         }
// 
//         return em_ids;
//     }
// 
//     public void setEm_ids(Object[] em_ids) {
//         this.em_ids = em_ids;
//     }
// 
//     public String getImage() {
//         return image;
//     }
// 
//     public void setImage(String image) {
//         this.image = image;
//     }
// 
//     public String getLogin() {
//         return login;
//     }
// 
//     public String getUsername() {
//         return username;
//     }
// 
//     public void setUsername(String username) {
//         this.username = username;
//     }
// 
//     public void setLogin(String login) {
//         this.login = login;
//     }
// 
//     public String getPassword() {
//         return password;
//     }
// 
//     public void setPassword(String password) {
//         this.password = password;
//     }
// 
//     public Timestamp getLoginTime() {
//         return loginTime;
//     }
// 
//     public void setLoginTime(Timestamp loginTime) {
//         this.loginTime = loginTime;
//     }
// }


// Path: app/src/main/java/com/haogefeifei/odoo/service/inf/UserServiceInf.java
import com.haogefeifei.odoo.api.inf.OdooRpcException;
import com.haogefeifei.odoo.entity.User;

package com.haogefeifei.odoo.service.inf;


/**
 * Created by feifei on 15/12/28.
 */
public interface UserServiceInf {

    /**
     * 用户登录
     *
     * @return 登陆成功的id ，失败则返回负数代码
     */
    public int Login() throws OdooRpcException;

    /**
     * 用户登录
     *
     * @param username
     * @param password
     * @return
     * @throws OdooRpcException
     */
    public int Login(String username, String password) throws OdooRpcException;


    /**
     * 通过用户id来获取用户信息
     *
     * @param uid 用户id
     * @return User对象
     */
    public User getUserInfo(int uid) throws OdooRpcException;