Commit b017fb10 authored by 朱璇's avatar 朱璇

销量展示规则

parent 1794906e
......@@ -4,6 +4,9 @@
* @Last Modified by: zx
* @Last Modified time: 2020-07-03 13:47:57
*/
import 'dart:ffi';
import 'dart:math';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:gm_flutter/ClueModel/page/PlanCompareDetail/PlanCompareDetailModel.dart';
......@@ -242,12 +245,13 @@ class PlanCompareDetailPageState extends BaseState<PlanCompareDetailPage> {
return Container(
height: 170,
child: Row(children: <Widget>[
Expanded(flex: 1, child: planPopularityLeftItem(groups.plans[0])),
Expanded(
flex: 1, child: planPopularityLeftItem(groups.plans[0], groups)),
Expanded(flex: 1, child: planPopularityRightItem(groups.plans[1]))
]));
}
Widget planPopularityLeftItem(Plans plan) {
Widget planPopularityLeftItem(Plans plan, Groups groups) {
return Container(
height: 170,
child: Stack(children: <Widget>[
......@@ -299,7 +303,7 @@ class PlanCompareDetailPageState extends BaseState<PlanCompareDetailPage> {
Positioned(
right: 0,
top: 0,
width: 95 * 0.7,
width: 95 * sellCount(0, groups.plans[1]),
height: 7,
child: ClipRRect(
borderRadius: BorderRadius.circular(3.5),
......@@ -313,7 +317,7 @@ class PlanCompareDetailPageState extends BaseState<PlanCompareDetailPage> {
]));
}
Widget planPopularityRightItem(Plans plan) {
Widget planPopularityRightItem(Plans plan, Groups groups) {
return Container(
height: 170,
child: Stack(children: <Widget>[
......@@ -371,7 +375,7 @@ class PlanCompareDetailPageState extends BaseState<PlanCompareDetailPage> {
Positioned(
left: 0,
top: 0,
width: 95 * 0.3,
width: 95 * sellCount(0, groups.plans[1]),
height: 7,
child: ClipRRect(
borderRadius: BorderRadius.circular(3.5),
......@@ -442,3 +446,20 @@ class PlanCompareDetailPageState extends BaseState<PlanCompareDetailPage> {
),
]));
}
double starCount() {
return 5.0;
}
double sellCount(int index, Plans anotherPlans) {
Groups popularity = _model.detailLive.data.second[0];
Plans plans = popularity.plans[index];
int salesCount = int.parse(plans.salesCount);
int anSalesCount = int.parse(plans.salesCount);
if (salesCount >= anSalesCount) {
return 1.0;
} else {
return anSalesCount / salesCount;
}
}
}
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