// Path: app/src/main/java/com/idisfkj/hightcopywx/beans/ChatMessageInfo.java
// public class ChatMessageInfo implements Serializable {
//     private String message;
//     /**
//      * 接收与发送的标识
//      */
//     private int flag;
//     private String time;
//     /**
//      * 接收该信息的账号
//      */
//     private String receiverNumber;
//     private String regId;
//     /**
//      * 发送者的账号
//      */
//     private String sendNumber;
// 
//     public ChatMessageInfo() {
//     }
// 
//     public ChatMessageInfo(String message, int flag, String time, String receiverNumber, String regId, String sendNumber) {
//         this.message = message;
//         this.flag = flag;
//         this.time = time;
//         this.receiverNumber = receiverNumber;
//         this.regId = regId;
//         this.sendNumber = sendNumber;
//     }
// 
//     public String getReceiverNumber() {
//         return receiverNumber;
//     }
// 
//     public void setReceiverNumber(String receiverNumber) {
//         this.receiverNumber = receiverNumber;
//     }
// 
//     public String getRegId() {
//         return regId;
//     }
// 
//     public void setRegId(String regId) {
//         this.regId = regId;
//     }
// 
//     public String getSendNumber() {
//         return sendNumber;
//     }
// 
//     public void setSendNumber(String sendNumber) {
//         this.sendNumber = sendNumber;
//     }
// 
//     public String getTime() {
//         return time;
//     }
// 
//     public void setTime(String time) {
//         this.time = time;
//     }
// 
//     public String getMessage() {
//         return message;
//     }
// 
//     public void setMessage(String message) {
//         this.message = message;
//     }
// 
//     public int getFlag() {
//         return flag;
//     }
// 
//     public void setFlag(int flag) {
//         this.flag = flag;
//     }
// }
// 
// Path: app/src/main/java/com/idisfkj/hightcopywx/dao/ChatMessageDataHelper.java
// public class ChatMessageDataHelper extends BaseDataHelper {
//     public ChatMessageDataHelper(Context mContext) {
//         super(mContext);
//     }
// 
//     @Override
//     public Uri getContentUri() {
//         return DataProvider.CHAT_MESSAGES_CONTENT_URI;
//     }
// 
//     public ContentValues getContentValues(ChatMessageInfo info) {
//         ContentValues values = new ContentValues();
//         values.put(ChatMessageDataInfo.MESSAGE, info.getMessage());
//         values.put(ChatMessageDataInfo.FLAG, info.getFlag());
//         values.put(ChatMessageDataInfo.TIME, info.getTime());
//         values.put(ChatMessageDataInfo.RECEIVER_NUMBER, info.getReceiverNumber());
//         values.put(ChatMessageDataInfo.REGID, info.getRegId());
//         values.put(ChatMessageDataInfo.SEND_NUMBER, info.getSendNumber());
//         return values;
//     }
// 
//     public static final class ChatMessageDataInfo implements BaseColumns {
//         public static final String TABLE_NAME = "chat";
//         public static final String MESSAGE = "message";
//         public static final String FLAG = "flag";
//         public static final String TIME = "time";
//         public static final String RECEIVER_NUMBER = "receiverNumber";
//         public static final String REGID = "regId";
//         public static final String SEND_NUMBER = "sendNumber";
//         public static final SQLiteTable TABLE = new SQLiteTable(TABLE_NAME)
//                 .addColumn(MESSAGE, Column.DataType.TEXT)
//                 .addColumn(FLAG, Column.DataType.INTEGER)
//                 .addColumn(TIME, Column.DataType.TEXT)
//                 .addColumn(RECEIVER_NUMBER, Column.DataType.TEXT)
//                 .addColumn(REGID, Column.DataType.TEXT)
//                 .addColumn(SEND_NUMBER, Column.DataType.TEXT);
//     }
// 
//     public Cursor query(String receiverNumber, String regId) {
//         Cursor cursor = query(new String[]{ChatMessageDataInfo.MESSAGE, ChatMessageDataInfo.TIME}, "(" + ChatMessageDataInfo.RECEIVER_NUMBER + "=?" + " OR "
//                 + ChatMessageDataInfo.SEND_NUMBER + "=?" + ") AND "
//                 + ChatMessageDataInfo.REGID + "=?", new String[]{receiverNumber, receiverNumber, regId}, ChatMessageDataInfo._ID + " DESC");
//         return cursor;
//     }
// 
//     public void insert(ChatMessageInfo info) {
//         ContentValues values = getContentValues(info);
//         insert(values);
//     }
// 
//     public void bulkInser(ArrayList<ChatMessageInfo> list) {
//         ArrayList<ContentValues> valuesList = new ArrayList<>();
//         for (ChatMessageInfo info : list) {
//             ContentValues itemValues = getContentValues(info);
//             valuesList.add(itemValues);
//         }
//         ContentValues[] valuesArray = new ContentValues[valuesList.size()];
//         bulkInsert(valuesList.toArray(valuesArray));
//     }
// 
//     public CursorLoader getCursorLoader(String receiverNumber, String regId) {
//         return getCursorLoader(null, "(" + ChatMessageDataInfo.SEND_NUMBER + "=?" + " OR "
//                 + ChatMessageDataInfo.RECEIVER_NUMBER + "=?" + ") AND "
//                 + ChatMessageDataInfo.REGID + "=?", new String[]{receiverNumber, receiverNumber, regId}
//                 , ChatMessageDataInfo._ID + " ASC");
//     }
// }


import android.content.Context;
import com.idisfkj.hightcopywx.beans.ChatMessageInfo;
import com.idisfkj.hightcopywx.dao.ChatMessageDataHelper;
package com.idisfkj.hightcopywx.wx.model;



/**
 * Created by idisfkj on 16/4/25.
 * Email : idisfkj@qq.com.
 */
public interface ChatModel {
    void requestData(ChatModelImp.requestListener listener, String chatContent, String number, String regId, ChatMessageDataHelper helper);

    void insertData(ChatMessageInfo info, ChatMessageDataHelper helper);

// Path: app/src/main/java/com/idisfkj/hightcopywx/beans/ChatMessageInfo.java
// public class ChatMessageInfo implements Serializable {
//     private String message;
//     /**
//      * 接收与发送的标识
//      */
//     private int flag;
//     private String time;
//     /**
//      * 接收该信息的账号
//      */
//     private String receiverNumber;
//     private String regId;
//     /**
//      * 发送者的账号
//      */
//     private String sendNumber;
// 
//     public ChatMessageInfo() {
//     }
// 
//     public ChatMessageInfo(String message, int flag, String time, String receiverNumber, String regId, String sendNumber) {
//         this.message = message;
//         this.flag = flag;
//         this.time = time;
//         this.receiverNumber = receiverNumber;
//         this.regId = regId;
//         this.sendNumber = sendNumber;
//     }
// 
//     public String getReceiverNumber() {
//         return receiverNumber;
//     }
// 
//     public void setReceiverNumber(String receiverNumber) {
//         this.receiverNumber = receiverNumber;
//     }
// 
//     public String getRegId() {
//         return regId;
//     }
// 
//     public void setRegId(String regId) {
//         this.regId = regId;
//     }
// 
//     public String getSendNumber() {
//         return sendNumber;
//     }
// 
//     public void setSendNumber(String sendNumber) {
//         this.sendNumber = sendNumber;
//     }
// 
//     public String getTime() {
//         return time;
//     }
// 
//     public void setTime(String time) {
//         this.time = time;
//     }
// 
//     public String getMessage() {
//         return message;
//     }
// 
//     public void setMessage(String message) {
//         this.message = message;
//     }
// 
//     public int getFlag() {
//         return flag;
//     }
// 
//     public void setFlag(int flag) {
//         this.flag = flag;
//     }
// }
// 
// Path: app/src/main/java/com/idisfkj/hightcopywx/dao/ChatMessageDataHelper.java
// public class ChatMessageDataHelper extends BaseDataHelper {
//     public ChatMessageDataHelper(Context mContext) {
//         super(mContext);
//     }
// 
//     @Override
//     public Uri getContentUri() {
//         return DataProvider.CHAT_MESSAGES_CONTENT_URI;
//     }
// 
//     public ContentValues getContentValues(ChatMessageInfo info) {
//         ContentValues values = new ContentValues();
//         values.put(ChatMessageDataInfo.MESSAGE, info.getMessage());
//         values.put(ChatMessageDataInfo.FLAG, info.getFlag());
//         values.put(ChatMessageDataInfo.TIME, info.getTime());
//         values.put(ChatMessageDataInfo.RECEIVER_NUMBER, info.getReceiverNumber());
//         values.put(ChatMessageDataInfo.REGID, info.getRegId());
//         values.put(ChatMessageDataInfo.SEND_NUMBER, info.getSendNumber());
//         return values;
//     }
// 
//     public static final class ChatMessageDataInfo implements BaseColumns {
//         public static final String TABLE_NAME = "chat";
//         public static final String MESSAGE = "message";
//         public static final String FLAG = "flag";
//         public static final String TIME = "time";
//         public static final String RECEIVER_NUMBER = "receiverNumber";
//         public static final String REGID = "regId";
//         public static final String SEND_NUMBER = "sendNumber";
//         public static final SQLiteTable TABLE = new SQLiteTable(TABLE_NAME)
//                 .addColumn(MESSAGE, Column.DataType.TEXT)
//                 .addColumn(FLAG, Column.DataType.INTEGER)
//                 .addColumn(TIME, Column.DataType.TEXT)
//                 .addColumn(RECEIVER_NUMBER, Column.DataType.TEXT)
//                 .addColumn(REGID, Column.DataType.TEXT)
//                 .addColumn(SEND_NUMBER, Column.DataType.TEXT);
//     }
// 
//     public Cursor query(String receiverNumber, String regId) {
//         Cursor cursor = query(new String[]{ChatMessageDataInfo.MESSAGE, ChatMessageDataInfo.TIME}, "(" + ChatMessageDataInfo.RECEIVER_NUMBER + "=?" + " OR "
//                 + ChatMessageDataInfo.SEND_NUMBER + "=?" + ") AND "
//                 + ChatMessageDataInfo.REGID + "=?", new String[]{receiverNumber, receiverNumber, regId}, ChatMessageDataInfo._ID + " DESC");
//         return cursor;
//     }
// 
//     public void insert(ChatMessageInfo info) {
//         ContentValues values = getContentValues(info);
//         insert(values);
//     }
// 
//     public void bulkInser(ArrayList<ChatMessageInfo> list) {
//         ArrayList<ContentValues> valuesList = new ArrayList<>();
//         for (ChatMessageInfo info : list) {
//             ContentValues itemValues = getContentValues(info);
//             valuesList.add(itemValues);
//         }
//         ContentValues[] valuesArray = new ContentValues[valuesList.size()];
//         bulkInsert(valuesList.toArray(valuesArray));
//     }
// 
//     public CursorLoader getCursorLoader(String receiverNumber, String regId) {
//         return getCursorLoader(null, "(" + ChatMessageDataInfo.SEND_NUMBER + "=?" + " OR "
//                 + ChatMessageDataInfo.RECEIVER_NUMBER + "=?" + ") AND "
//                 + ChatMessageDataInfo.REGID + "=?", new String[]{receiverNumber, receiverNumber, regId}
//                 , ChatMessageDataInfo._ID + " ASC");
//     }
// }


// Path: app/src/main/java/com/idisfkj/hightcopywx/wx/model/ChatModel.java
import android.content.Context;
import com.idisfkj.hightcopywx.beans.ChatMessageInfo;
import com.idisfkj.hightcopywx.dao.ChatMessageDataHelper;

package com.idisfkj.hightcopywx.wx.model;



/**
 * Created by idisfkj on 16/4/25.
 * Email : idisfkj@qq.com.
 */
public interface ChatModel {
    void requestData(ChatModelImp.requestListener listener, String chatContent, String number, String regId, ChatMessageDataHelper helper);

    void insertData(ChatMessageInfo info, ChatMessageDataHelper helper);

    void initData(ChatMessageDataHelper helper, String mRegId, String mNumber, String userName);