Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in
Toggle navigation
G
gm_flutter
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
林生雨
gm_flutter
Commits
729f554d
Commit
729f554d
authored
Jul 07, 2020
by
林生雨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
commit
parent
91a282e0
Show whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
214 additions
and
28 deletions
+214
-28
LevelOneModel.dart
lib/ClueModel/page/levelOne/LevelOneModel.dart
+2
-1
LevelTwoModel.dart
lib/ClueModel/page/levelTwo/LevelTwoModel.dart
+2
-1
PlanPage.dart
lib/ClueModel/page/plan/PlanPage.dart
+3
-2
TopPage.dart
lib/ClueModel/page/top/TopPage.dart
+1
-0
ClueApi.dart
lib/ClueModel/server/api/ClueApi.dart
+2
-2
ClueApi.serv.dart
lib/ClueModel/server/api/ClueApi.serv.dart
+0
-18
ClueTApi.dart
lib/ClueModel/server/api/ClueTApi.dart
+16
-0
ClueTApi.serv.dart
lib/ClueModel/server/api/ClueTApi.serv.dart
+188
-0
PlanCompareDetail.dart
lib/ClueModel/server/entity/PlanCompareDetail.dart
+0
-4
No files found.
lib/ClueModel/page/levelOne/LevelOneModel.dart
View file @
729f554d
...
...
@@ -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
()
Clue
T
ApiImpl
.
getInstance
()
.
getPlanOverView
(
DioUtil
.
getInstance
().
getDio
(),
plan_id
)
.
listen
((
event
)
{
if
(
event
.
error
==
0
)
{
...
...
lib/ClueModel/page/levelTwo/LevelTwoModel.dart
View file @
729f554d
...
...
@@ -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
()
Clue
T
ApiImpl
.
getInstance
()
.
getPlanOverView
(
DioUtil
.
getInstance
().
getDio
(),
plan_id
)
.
listen
((
event
)
{
if
(
event
.
error
==
0
)
{
...
...
lib/ClueModel/page/plan/PlanPage.dart
View file @
729f554d
...
...
@@ -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
);
});
},
),
...
...
lib/ClueModel/page/top/TopPage.dart
View file @
729f554d
...
...
@@ -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"
];
}
...
...
lib/ClueModel/server/api/ClueApi.dart
View file @
729f554d
...
...
@@ -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);
}
lib/ClueModel/server/api/ClueApi.serv.dart
View file @
729f554d
...
...
@@ -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
));
}
lib/ClueModel/server/api/ClueTApi.dart
0 → 100644
View file @
729f554d
/*
* @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
lib/ClueModel/server/api/ClueTApi.serv.dart
0 → 100644
View file @
729f554d
// 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
));
}
lib/ClueModel/server/entity/PlanCompareDetail.dart
View file @
729f554d
...
...
@@ -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
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment