Commit 729f554d authored by 林生雨's avatar 林生雨

commit

parent 91a282e0
......@@ -7,6 +7,7 @@ import 'package:flutter_common/commonModel/live/BaseModel.dart';
import 'package:flutter_common/commonModel/live/LiveData.dart';
import 'package:flutter_common/commonModel/toast/NativeToast.dart';
import 'package:gm_flutter/ClueModel/server/api/ClueApi.serv.dart';
import 'package:gm_flutter/ClueModel/server/api/ClueTApi.serv.dart';
import 'package:gm_flutter/ClueModel/server/entity/LevelOneFeedList.dart';
import 'package:gm_flutter/ClueModel/server/entity/PlanOverViewBean.dart';
import 'package:gm_flutter/commonModel/GMBase.dart';
......@@ -27,7 +28,7 @@ class LevelOneModel extends BaseModel {
String imageUrl = "";
void init(VoidCallback callback) {
ClueApiImpl.getInstance()
ClueTApiImpl.getInstance()
.getPlanOverView(DioUtil.getInstance().getDio(), plan_id)
.listen((event) {
if (event.error == 0) {
......
......@@ -7,6 +7,7 @@ import 'package:flutter_common/commonModel/live/BaseModel.dart';
import 'package:flutter_common/commonModel/live/LiveData.dart';
import 'package:flutter_common/commonModel/toast/NativeToast.dart';
import 'package:gm_flutter/ClueModel/server/api/ClueApi.serv.dart';
import 'package:gm_flutter/ClueModel/server/api/ClueTApi.serv.dart';
import 'package:gm_flutter/ClueModel/server/entity/PlanOverViewBean.dart';
import 'package:gm_flutter/commonModel/GMBase.dart';
import 'package:gm_flutter/commonModel/bean/Pair.dart';
......@@ -24,7 +25,7 @@ class LevelOneModel extends BaseModel {
PlanOverData planoverItem;
void init(VoidCallback callback) {
ClueApiImpl.getInstance()
ClueTApiImpl.getInstance()
.getPlanOverView(DioUtil.getInstance().getDio(), plan_id)
.listen((event) {
if (event.error == 0) {
......
......@@ -388,7 +388,7 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
data.data == null ? "" : data.data[0].icon ?? "",
fit: BoxFit.cover,
)).gestureDetector(() {
Map<String, dynamic> map = {"rank_type": "0"};
Map<String, dynamic> map = {"rank_type": "0","wa":[1,2],"qew":["w",1]};
RouterCenterImpl()
.findMainRouter()
.jumpPage(context, "favor_plan", map, false);
......@@ -416,7 +416,8 @@ class PlanState extends BaseState<PlanPage> with TickerProviderStateMixin {
Map<String, dynamic> map = {"rank_type": "1"};
RouterCenterImpl()
.findMainRouter()
.jumpPage(context, "hot_plan", map, false);
// .jumpPage(context, "hot_plan", map, false);
.jumpPage(context, "doctor_details", map, true);
});
},
),
......
......@@ -26,6 +26,7 @@ class TopPage extends StatefulWidget {
String rank_type;
TopPage(Map<String, dynamic> map) {
print("LSY ${map.toString()}");
this.rank_type = map["rank_type"];
}
......
......@@ -70,6 +70,6 @@ abstract class ClueApi {
DiscussLowPriceAuthBean givePhoneAuth(
@Query("lead_phone_request_id") int leadPhoneRequestId);
@Get("api/janus/plans/plan_overview")
PlanOverViewBean getPlanOverView(@Query("plan_id") int plan_id);
// @Get("api/janus/plans/plan_overview")
// PlanOverViewBean getPlanOverView(@Query("plan_id") int plan_id);
}
......@@ -25,7 +25,6 @@ import 'package:gm_flutter/ClueModel/server/entity/PlanConsultBean.dart';
import 'package:gm_flutter/ClueModel/server/entity/PlanBarBean.dart';
import 'package:gm_flutter/ClueModel/server/entity/DiscussLowPriceModelBean.dart';
import 'package:gm_flutter/ClueModel/server/entity/DiscussLowPriceAuthBean.dart';
import 'package:gm_flutter/ClueModel/server/entity/dynamic.dart';
const bool inProduction = const bool.fromEnvironment("dart.vm.product");
......@@ -224,19 +223,6 @@ class ClueApiImpl {
});
}
Stream<dynamic> getPlanOverView(Dio _dio, int plan_id) {
return Stream.fromFuture(get(_dio, 'api/janus/plans/plan_overview', data: {
'plan_id': plan_id,
})).flatMap((value) {
if (value != null &&
(value.statusCode >= 200 && value.statusCode < 300)) {
return Stream.fromFuture(compute(parsedynamic, value.toString()));
} else {
throw Exception("--未知网络错误--");
}
});
}
///==================base method==================
Future<Response> get(Dio _dio, url, {data, options, cancelToken}) async {
......@@ -417,7 +403,3 @@ DiscussLowPriceModelBean parseDiscussLowPriceModelBean(String value) {
DiscussLowPriceAuthBean parseDiscussLowPriceAuthBean(String value) {
return DiscussLowPriceAuthBean.fromJson(json.decode(value));
}
dynamic parsedynamic(String value) {
return dynamic.fromJson(json.decode(value));
}
/*
* @author lsy
* @date 2020/7/7
**/
import 'package:flutter_common/Annotations/anno/Get.dart';
import 'package:flutter_common/Annotations/anno/Query.dart';
import 'package:flutter_common/Annotations/anno/ServiceCenter.dart';
import 'package:gm_flutter/ClueModel/server/entity/PlanOverviewBean.dart';
@ServiceCenter()
abstract class ClueTApi{
@Get("api/janus/plans/plan_overview")
PlanOverViewBean getPlanOverView(@Query("plan_id") int plan_id);
}
\ No newline at end of file
// GENERATED CODE - DO NOT MODIFY BY HAND
// **************************************************************************
// ServiceGenerator
// **************************************************************************
import 'dart:convert';
import 'dart:io';
import 'package:rxdart/rxdart.dart';
import 'package:dio/dio.dart';
import 'package:flutter/foundation.dart';
import 'package:gm_flutter/ClueModel/server/entity/PlanOverViewBean.dart';
const bool inProduction = const bool.fromEnvironment("dart.vm.product");
class ClueTApiImpl {
static JsonEncoder encoder = JsonEncoder.withIndent(' ');
static ClueTApiImpl _instance;
ClueTApiImpl._() {}
static ClueTApiImpl getInstance() {
if (_instance == null) {
_instance = ClueTApiImpl._();
}
return _instance;
}
Stream<PlanOverViewBean> getPlanOverView(Dio _dio, int plan_id) {
return Stream.fromFuture(get(_dio, 'api/janus/plans/plan_overview', data: {
'plan_id': plan_id,
})).flatMap((value) {
if (value != null &&
(value.statusCode >= 200 && value.statusCode < 300)) {
return Stream.fromFuture(
compute(parsePlanOverViewBean, value.toString()));
} else {
throw Exception("--未知网络错误--");
}
});
}
///==================base method==================
Future<Response> get(Dio _dio, url, {data, options, cancelToken}) async {
Response response;
try {
response = await _dio.get(url,
queryParameters: data, options: options, cancelToken: cancelToken);
_printHttpLog(response);
} on DioError catch (e) {
print('get error---------$e ${formatError(e)}');
throw e;
}
return response;
}
Future<Response> post(Dio _dio, url, {data, options, cancelToken}) async {
Response response;
try {
response = await _dio.post(url,
data: FormData.fromMap(data),
options: options,
cancelToken: cancelToken);
_printHttpLog(response);
} on DioError catch (e) {
print('get error---------$e ${formatError(e)}');
throw e;
}
return response;
}
Future<Response> put(Dio _dio, url, {data, options, cancelToken}) async {
Response response;
try {
response = await _dio.put(url,
data: FormData.fromMap(data),
options: options,
cancelToken: cancelToken);
_printHttpLog(response);
} on DioError catch (e) {
print('get error---------$e ${formatError(e)}');
throw e;
}
return response;
}
Future<Response> delete(Dio _dio, url, {data, options, cancelToken}) async {
Response response;
try {
response = await _dio.delete(url,
data: FormData.fromMap(data),
options: options,
cancelToken: cancelToken);
_printHttpLog(response);
} on DioError catch (e) {
print('get error---------$e ${formatError(e)}');
throw e;
}
return response;
}
Future<Response> upload(Dio _dio, url, String key, String path,
{Map<String, dynamic> data, options, cancelToken}) async {
Response response;
print("UPLOAD===> URL:$url {$key : $path } data:$data");
MultipartFile file = await MultipartFile.fromFile(path,
filename: path.substring(path.lastIndexOf("/") + 1, path.length));
if (data == null) {
data = new Map<String, dynamic>();
}
data.putIfAbsent(key, () => file);
try {
response = await _dio.post(url,
data: FormData.fromMap(data),
options: options,
cancelToken: cancelToken);
_printHttpLog(response);
} on DioError catch (e) {
print('get error---------$e ${formatError(e)}');
throw e;
}
return response;
}
void _printHttpLog(Response response) {
if (!inProduction) {
try {
printRespond(response);
} catch (ex) {
print("Http Log" + " error......");
}
}
}
static void printRespond(Response response) {
Map httpLogMap = Map();
httpLogMap.putIfAbsent("requestMethod", () => "${response.request.method}");
httpLogMap.putIfAbsent("requestUrl", () => "${response.request.uri}");
httpLogMap.putIfAbsent("requestHeaders", () => response.request.headers);
httpLogMap.putIfAbsent(
"requestQueryParameters", () => response.request.queryParameters);
if (response.request.data is FormData) {
httpLogMap.putIfAbsent("requestDataFields",
() => ((response.request.data as FormData).fields.toString()));
}
httpLogMap.putIfAbsent(
"respondData", () => json.decode(response.toString()));
printJson(httpLogMap);
}
static void printJson(Object object) {
try {
var encoderString = encoder.convert(object);
debugPrint(encoderString);
} catch (e) {
print(e);
}
}
String formatError(DioError e) {
String reason = "";
if (e.type == DioErrorType.CONNECT_TIMEOUT) {
reason = "连接超时 ${e.message}";
} else if (e.type == DioErrorType.SEND_TIMEOUT) {
reason = "请求超时 ${e.message}";
} else if (e.type == DioErrorType.RECEIVE_TIMEOUT) {
reason = "响应超时 ${e.message}";
} else if (e.type == DioErrorType.RESPONSE) {
reason = "出现异常 ${e.message}";
} else if (e.type == DioErrorType.CANCEL) {
reason = "请求取消 ${e.message}";
} else {
reason = "未知错误 ${e.message}";
}
return reason;
}
}
PlanOverViewBean parsePlanOverViewBean(String value) {
return PlanOverViewBean.fromJson(json.decode(value));
}
......@@ -4,10 +4,6 @@
* @Last Modified by: zx
* @Last Modified time: 2020-07-01 20:31:42
*/
import 'dart:convert';
class PlanCompareDetail {
int error;
String message;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment