import 'dart:collection'; import 'dart:convert'; import 'dart:io'; import 'package:chatting/chatting_api_result.dart'; import 'package:flutter/material.dart'; import 'package:dio/dio.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'chatting_data_page.dart'; Dio dio = new Dio(); class ChattingApi { Options options = Options(headers: {HttpHeaders.acceptHeader: "accept: application/json"}); String token; int time; String message; ChattingApiResult chattingApiResult ; Map map = new Map(); List list; //登陆提交 loginSubmit(String username, String password) async { print(username); print(password); FormData formData = new FormData.from({ 'username':username, 'password':password, }); var result = await dio.post( 'http://customer.dsd361.com/login', data: formData, options: options ); print(result.data); token=result.data['token']; time=result.data['loginTime']; message=result.data['message']; chattingApiResult= new ChattingApiResult(token,time,message,null,null,null); print(chattingApiResult.runtimeType); return chattingApiResult ; } //获取通讯录列表 getContactList() async { } //获取聊天列表 getChattingList() async { token = await dataManipulation_get('token'); FormData formData = new FormData.from({ 'token':token }); var response = await dio.post('http://customer.dsd361.com/newchattings/selectChattingeFriebdList',data: formData); List result=response.data; list = new List(); result.forEach((item) { int sendId =int.parse(item['send_id']); int receiveId =item['receiveId']; String photoUrl =item['photoUrl']; String user_name =item['user_name']; String content =item['lastOne_chattinglog']['content']; int cl_addTime =item['cl_addTime']; MessageData messageData =new MessageData(sendId, receiveId,"http://blogimages.jspang.com/blogtouxiang1.jpg", user_name, content, DateTime.fromMillisecondsSinceEpoch(cl_addTime), MessageType.CHAT); list.add(messageData); }); return list; } //获取当前用户信息 getCurrentUserInfo(String id) async { var result = await dio.get(''); return result.data; } /** * 异步 数据操作 */ void dataManipulation_set(String key, var value) async { final prefs = await SharedPreferences.getInstance(); //获取SP的实例 prefs.setString(key, value); //存储数据 } /** * 异步 数据操作 */ void dataManipulation_setint(String key, var value) async { final prefs = await SharedPreferences.getInstance(); //获取SP的实例 prefs.setInt(key, value); //存储数据 } /** * 异步 数据操作 */ dataManipulation_get(String key) async { final prefs = await SharedPreferences.getInstance(); //获取SP的实例 var value = prefs.get(key); //获取数据 return value; } /** * 异步 数据操作 */ void dataManipulation_remove(String key, var value) async { final prefs = await SharedPreferences.getInstance(); //获取SP的实例 prefs.remove(key); //删除数据 } }