Browse Source

1.定位权限更改,增加权限说明;

2.火锅店套餐下单更改;
3.火锅下单vip更改;
4.门店列表搜索键盘优化;
5.订单列表优化;
new_revision_app
wurong 2 years ago
parent
commit
07654c9b42
  1. 1
      lib/main_page.dart
  2. 43
      lib/mine/mine_page.dart
  3. 6
      lib/order/order_detail_page.dart
  4. 5
      lib/order/order_history_page.dart
  5. 9
      lib/retrofit/data/order_product_vo.dart
  6. 132
      lib/retrofit/data/shoppingCart.dart
  7. 9
      lib/settlement/settlement.dart
  8. 2
      lib/settlement/settlement_view/activity_coupon_remarks.dart
  9. 3
      lib/union/location_map_page.dart
  10. 1
      lib/union/union_list.dart
  11. 62
      lib/utils/location.dart
  12. 5
      lib/view_widget/new_coupon_widget.dart
  13. 2
      pubspec.yaml

1
lib/main_page.dart

@ -161,6 +161,7 @@ class _MainPage extends State<MainPage> with WidgetsBindingObserver {
queryUserInfo(); queryUserInfo();
///App自动更新
appAutoUpdate(); appAutoUpdate();
} }
final XgFlutterPlugin xgFlutterPlugin = XgFlutterPlugin(); final XgFlutterPlugin xgFlutterPlugin = XgFlutterPlugin();

43
lib/mine/mine_page.dart

@ -78,6 +78,7 @@ class MinePageState extends State<MinePage> with AutomaticKeepAliveClientMixin {
super.initState(); super.initState();
querySocialInfo(); querySocialInfo();
queryMsgStats(); queryMsgStats();
queryCoupon();
// queryCard(); // queryCard();
eventBus.on<EventType>().listen((event) { eventBus.on<EventType>().listen((event) {
@ -118,22 +119,6 @@ class MinePageState extends State<MinePage> with AutomaticKeepAliveClientMixin {
ranks.addAll(rankData.data); ranks.addAll(rankData.data);
} }
BaseData<PageInfo<Coupon>> baseData = await apiService.queryCard({
"centre": true,
"pageNum": 1,
"pageSize": 10,
"searchKey": "",
"state": 1
}).catchError((error) {
_refreshController.refreshFailed();
});
if (baseData != null && baseData.isSuccess) {
couponNum = baseData.data.total;
_refreshController.refreshCompleted();
} else {
_refreshController.refreshFailed();
}
BaseData<UserInfo> baseDate = BaseData<UserInfo> baseDate =
await apiService.queryInfo().catchError((onError) { await apiService.queryInfo().catchError((onError) {
_refreshController.refreshFailed(); _refreshController.refreshFailed();
@ -152,8 +137,34 @@ class MinePageState extends State<MinePage> with AutomaticKeepAliveClientMixin {
// EasyLoading.dismiss(); // EasyLoading.dismiss();
} }
queryCoupon()async{
SharedPreferences value = await SharedPreferences.getInstance();
apiService = ApiService(
Dio(),
context: context,
token: value.getString("token"),
showLoading: false,
);
BaseData<PageInfo<Coupon>> baseData = await apiService.queryCard({
"centre": true,
"pageNum": 1,
"pageSize": 10,
"searchKey": "",
"state": 1
}).catchError((error) {
_refreshController.refreshFailed();
});
if (baseData != null && baseData.isSuccess) {
couponNum = baseData.data.total;
_refreshController.refreshCompleted();
} else {
_refreshController.refreshFailed();
}
}
_onRefresh() { _onRefresh() {
// queryUserInfo(); // queryUserInfo();
queryCoupon();
querySocialInfo(); querySocialInfo();
queryMsgStats(); queryMsgStats();
} }

6
lib/order/order_detail_page.dart

@ -119,6 +119,8 @@ class _OrderDetailPage extends State<OrderDetailPage> {
setState(() { setState(() {
statusTitle(); statusTitle();
}); });
}else{
SmartDialog.showToast(baseData.msg,alignment: Alignment.center);
} }
} }
@ -172,7 +174,7 @@ class _OrderDetailPage extends State<OrderDetailPage> {
), ),
/// ///
if(orderInfo != null) if(orderInfo != null && orderInfo.addressExt != null)
OrderAddress( OrderAddress(
orderStatus, orderStatus,
isTakeOut, isTakeOut,
@ -521,6 +523,8 @@ class _OrderDetailPage extends State<OrderDetailPage> {
// Future.delayed(Duration(milliseconds:450), () { // Future.delayed(Duration(milliseconds:450), () {
queryDetails(); queryDetails();
// }); // });
}else{
SmartDialog.showToast(baseData.msg,alignment: Alignment.center);
} }
} }

5
lib/order/order_history_page.dart

@ -364,7 +364,7 @@ class _OrderHistoryList extends State<OrderHistoryList>
], ],
), ),
Container( Container(
margin: EdgeInsets.only(left: 12.w), margin: EdgeInsets.only(left: 12.w,top:3.h),
child: Column( child: Column(
mainAxisAlignment: MainAxisAlignment.start, mainAxisAlignment: MainAxisAlignment.start,
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
@ -614,6 +614,9 @@ class _OrderHistoryList extends State<OrderHistoryList>
if (baseData != null && baseData.isSuccess) { if (baseData != null && baseData.isSuccess) {
SmartDialog.showToast("订单取消成功"); SmartDialog.showToast("订单取消成功");
_onRefresh(); _onRefresh();
}else{
if(baseData.msg != null)
SmartDialog.showToast(baseData.msg,alignment: Alignment.center);
} }
} }

9
lib/retrofit/data/order_product_vo.dart

@ -1,3 +1,5 @@
import 'package:huixiang/retrofit/data/shoppingCart.dart';
class OrderProductVOList { class OrderProductVOList {
OrderProductVOList({ OrderProductVOList({
ActInfo actInfo, ActInfo actInfo,
@ -17,6 +19,7 @@ class OrderProductVOList {
String skuId, String skuId,
String skuImg, String skuImg,
String skuNameStr, String skuNameStr,
List<SetMealDataList> setMealDataList
}) { }) {
this.actInfo = actInfo; this.actInfo = actInfo;
this.additionalComment = additionalComment; this.additionalComment = additionalComment;
@ -35,6 +38,7 @@ class OrderProductVOList {
this.skuId = skuId; this.skuId = skuId;
this.skuImg = skuImg; this.skuImg = skuImg;
this.skuNameStr = skuNameStr; this.skuNameStr = skuNameStr;
this.setMealDataList = setMealDataList;
} }
OrderProductVOList.fromJson(dynamic json) { OrderProductVOList.fromJson(dynamic json) {
@ -59,6 +63,9 @@ class OrderProductVOList {
this.skuId = json['skuId']; this.skuId = json['skuId'];
this.skuImg = json['skuImg']; this.skuImg = json['skuImg'];
this.skuNameStr = json['skuNameStr']; this.skuNameStr = json['skuNameStr'];
this.setMealDataList = []..addAll(
(json['setMealDataList'] as List ?? [])
.map((o) => SetMealDataList.fromJson(o)));
} }
ActInfo actInfo; ActInfo actInfo;
@ -78,6 +85,7 @@ class OrderProductVOList {
String skuId; String skuId;
String skuImg; String skuImg;
String skuNameStr; String skuNameStr;
List<SetMealDataList> setMealDataList;
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {
@ -105,6 +113,7 @@ class OrderProductVOList {
map['skuId'] = this.skuId; map['skuId'] = this.skuId;
map['skuImg'] = this.skuImg; map['skuImg'] = this.skuImg;
map['skuNameStr'] = this.skuNameStr; map['skuNameStr'] = this.skuNameStr;
map['setMealDataList']=this.setMealDataList;
return map; return map;
} }

132
lib/retrofit/data/shoppingCart.dart

@ -18,8 +18,8 @@ class ShoppingCart {
int selectDiscount; int selectDiscount;
String storeName; String storeName;
String tableId; String tableId;
List<PromotionInfoListBean> promotionInfoList; List<PromotionInfoListBeans> promotionInfoList;
List<CouponListBean> couponList; List<CouponListBeans> couponList;
static ShoppingCart fromJson(Map<String, dynamic> map) { static ShoppingCart fromJson(Map<String, dynamic> map) {
if (map == null) return null; if (map == null) return null;
@ -35,10 +35,10 @@ class ShoppingCart {
shoppingCartBean.selectDiscount = map['selectDiscount']; shoppingCartBean.selectDiscount = map['selectDiscount'];
shoppingCartBean.tableId = map['tableId']; shoppingCartBean.tableId = map['tableId'];
shoppingCartBean.promotionInfoList = List()..addAll( shoppingCartBean.promotionInfoList = List()..addAll(
(map['promotionInfoList'] as List ?? []).map((o) => PromotionInfoListBean.fromJson(o)) (map['promotionInfoList'] as List ?? []).map((o) => PromotionInfoListBeans.fromJson(o))
); );
shoppingCartBean.couponList = List()..addAll( shoppingCartBean.couponList = List()..addAll(
(map['couponList'] as List ?? []).map((o) => CouponListBean.fromJson(o)) (map['couponList'] as List ?? []).map((o) => CouponListBeans.fromJson(o))
); );
return shoppingCartBean; return shoppingCartBean;
} }
@ -308,7 +308,7 @@ class ProductInfoList {
/// isMaxPromotion : true /// isMaxPromotion : true
/// promotionProuctList : null /// promotionProuctList : null
class PromotionInfoListBean { class PromotionInfoListBeans {
String id; String id;
String createTime; String createTime;
String createUser; String createUser;
@ -339,43 +339,43 @@ class PromotionInfoListBean {
bool isMaxPromotion; bool isMaxPromotion;
dynamic promotionProuctList; dynamic promotionProuctList;
static PromotionInfoListBean fromJson(Map<String, dynamic> map) { static PromotionInfoListBeans fromJson(Map<String, dynamic> map) {
if (map == null) return null; if (map == null) return null;
PromotionInfoListBean promotionInfoListBean = PromotionInfoListBean(); PromotionInfoListBeans promotionInfoListBeans = PromotionInfoListBeans();
promotionInfoListBean.id = map['id']; promotionInfoListBeans.id = map['id'];
promotionInfoListBean.createTime = map['createTime']; promotionInfoListBeans.createTime = map['createTime'];
promotionInfoListBean.createUser = map['createUser']; promotionInfoListBeans.createUser = map['createUser'];
promotionInfoListBean.updateTime = map['updateTime']; promotionInfoListBeans.updateTime = map['updateTime'];
promotionInfoListBean.updateUser = map['updateUser']; promotionInfoListBeans.updateUser = map['updateUser'];
promotionInfoListBean.storeId = map['storeId']; promotionInfoListBeans.storeId = map['storeId'];
promotionInfoListBean.name = map['name']; promotionInfoListBeans.name = map['name'];
promotionInfoListBean.image = map['image']; promotionInfoListBeans.image = map['image'];
promotionInfoListBean.description = map['description']; promotionInfoListBeans.description = map['description'];
promotionInfoListBean.status = map['status']; promotionInfoListBeans.status = map['status'];
promotionInfoListBean.applyStartTime = map['applyStartTime']; promotionInfoListBeans.applyStartTime = map['applyStartTime'];
promotionInfoListBean.applyEndTime = map['applyEndTime']; promotionInfoListBeans.applyEndTime = map['applyEndTime'];
promotionInfoListBean.activityStartTime = map['activityStartTime']; promotionInfoListBeans.activityStartTime = map['activityStartTime'];
promotionInfoListBean.activityEndTime = map['activityEndTime']; promotionInfoListBeans.activityEndTime = map['activityEndTime'];
promotionInfoListBean.doStartTime = map['doStartTime']; promotionInfoListBeans.doStartTime = map['doStartTime'];
promotionInfoListBean.doEndTime = map['doEndTime']; promotionInfoListBeans.doEndTime = map['doEndTime'];
promotionInfoListBean.isNeedSecurityDeposit = map['isNeedSecurityDeposit']; promotionInfoListBeans.isNeedSecurityDeposit = map['isNeedSecurityDeposit'];
promotionInfoListBean.securityDeposit = map['securityDeposit']; promotionInfoListBeans.securityDeposit = map['securityDeposit'];
promotionInfoListBean.tag = map['tag']; promotionInfoListBeans.tag = map['tag'];
promotionInfoListBean.promotionType = map['promotionType']; promotionInfoListBeans.promotionType = map['promotionType'];
promotionInfoListBean.promotionPlan = map['promotionPlan']; promotionInfoListBeans.promotionPlan = map['promotionPlan'];
promotionInfoListBean.promotionDetail = List()..addAll( promotionInfoListBeans.promotionDetail = List()..addAll(
(map['promotionDetail'] as List ?? []).map((o) => PromotionDetailBean.fromJson(o)) (map['promotionDetail'] as List ?? []).map((o) => PromotionDetailBean.fromJson(o))
); );
promotionInfoListBean.channels = List()..addAll( promotionInfoListBeans.channels = List()..addAll(
(map['channels'] as List ?? []).map((o) => o.toString()) (map['channels'] as List ?? []).map((o) => o.toString())
); );
promotionInfoListBean.isVip = map['isVip']; promotionInfoListBeans.isVip = map['isVip'];
promotionInfoListBean.isDelete = map['isDelete']; promotionInfoListBeans.isDelete = map['isDelete'];
promotionInfoListBean.tenantCode = map['tenantCode']; promotionInfoListBeans.tenantCode = map['tenantCode'];
promotionInfoListBean.canPartake = map['canPartake']; promotionInfoListBeans.canPartake = map['canPartake'];
promotionInfoListBean.isMaxPromotion = map['isMaxPromotion']; promotionInfoListBeans.isMaxPromotion = map['isMaxPromotion'];
promotionInfoListBean.promotionProuctList = map['promotionProuctList']; promotionInfoListBeans.promotionProuctList = map['promotionProuctList'];
return promotionInfoListBean; return promotionInfoListBeans;
} }
Map toJson() => { Map toJson() => {
@ -437,7 +437,7 @@ class PromotionInfoListBean {
/// isMaxCoupon:true /// isMaxCoupon:true
/// productList : null /// productList : null
class CouponListBean { class CouponListBeans {
String id; String id;
String storeId; String storeId;
int bizType; int bizType;
@ -466,35 +466,35 @@ class CouponListBean {
bool isEx; bool isEx;
static CouponListBean fromJson(Map<String, dynamic> map) { static CouponListBeans fromJson(Map<String, dynamic> map) {
if (map == null) return null; if (map == null) return null;
CouponListBean couponListBean = CouponListBean(); CouponListBeans couponListBeans = CouponListBeans();
couponListBean.id = map['id']; couponListBeans.id = map['id'];
couponListBean.storeId = map['storeId']; couponListBeans.storeId = map['storeId'];
couponListBean.bizType = map['bizType']; couponListBeans.bizType = map['bizType'];
couponListBean.fullAmount = map['fullAmount']; couponListBeans.fullAmount = map['fullAmount'];
couponListBean.discountAmount = map['discountAmount']; couponListBeans.discountAmount = map['discountAmount'];
couponListBean.fullNumber = map['fullNumber']; couponListBeans.fullNumber = map['fullNumber'];
couponListBean.discountPercent = map['discountPercent']; couponListBeans.discountPercent = map['discountPercent'];
couponListBean.bizId = map['bizId']; couponListBeans.bizId = map['bizId'];
couponListBean.publishStartTime = map['publishStartTime']; couponListBeans.publishStartTime = map['publishStartTime'];
couponListBean.publishEndTime = map['publishEndTime']; couponListBeans.publishEndTime = map['publishEndTime'];
couponListBean.useStartTime = map['useStartTime']; couponListBeans.useStartTime = map['useStartTime'];
couponListBean.useEndTime = map['useEndTime']; couponListBeans.useEndTime = map['useEndTime'];
couponListBean.promotionId = map['promotionId']; couponListBeans.promotionId = map['promotionId'];
couponListBean.mid = map['mid']; couponListBeans.mid = map['mid'];
couponListBean.couponId = map['couponId']; couponListBeans.couponId = map['couponId'];
couponListBean.receiveTime = map['receiveTime']; couponListBeans.receiveTime = map['receiveTime'];
couponListBean.useTime = map['useTime']; couponListBeans.useTime = map['useTime'];
couponListBean.status = map['status']; couponListBeans.status = map['status'];
couponListBean.tenantCode = map['tenantCode']; couponListBeans.tenantCode = map['tenantCode'];
couponListBean.type = map['type']; couponListBeans.type = map['type'];
couponListBean.promotionName = map['promotionName']; couponListBeans.promotionName = map['promotionName'];
couponListBean.usable = map['usable']; couponListBeans.usable = map['usable'];
couponListBean.allProduct = map['allProduct']; couponListBeans.allProduct = map['allProduct'];
couponListBean.isMaxCoupon = map['isMaxCoupon']; couponListBeans.isMaxCoupon = map['isMaxCoupon'];
couponListBean.productList = map['productList']; couponListBeans.productList = map['productList'];
return couponListBean; return couponListBeans;
} }
Map toJson() => { Map toJson() => {

9
lib/settlement/settlement.dart

@ -33,11 +33,10 @@ import 'package:huixiang/utils/font_weight.dart';
import 'package:huixiang/utils/min.dart'; import 'package:huixiang/utils/min.dart';
import 'package:huixiang/view_widget/my_appbar.dart'; import 'package:huixiang/view_widget/my_appbar.dart';
import 'package:huixiang/view_widget/round_button.dart'; import 'package:huixiang/view_widget/round_button.dart';
import 'package:huixiang/view_widget/tips_dialog.dart';
import 'package:pull_to_refresh/pull_to_refresh.dart';
import 'package:shared_preferences/shared_preferences.dart'; import 'package:shared_preferences/shared_preferences.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart';
import '../retrofit/data/shoppingCart.dart';
import '../view_widget/settlement_tips_dialog.dart'; import '../view_widget/settlement_tips_dialog.dart';
class Settlement extends StatefulWidget { class Settlement extends StatefulWidget {
@ -85,6 +84,7 @@ class _Settlement extends State<Settlement> {
bool useVipPriceSelect = true; bool useVipPriceSelect = true;
bool showVipTips = false; bool showVipTips = false;
bool isRaiseChannel = false; bool isRaiseChannel = false;
ShoppingCart shopCarGoods;
@override @override
void initState() { void initState() {
@ -107,6 +107,8 @@ class _Settlement extends State<Settlement> {
productSkuId = widget.arguments["productSkuId"]; productSkuId = widget.arguments["productSkuId"];
count1 = widget.arguments["buyNum"]; count1 = widget.arguments["buyNum"];
productId = widget.arguments["productId"]; productId = widget.arguments["productId"];
shopCarGoods = widget.arguments["shoppingCart"];
if (tableId == 0) { if (tableId == 0) {
placeOrder = true; placeOrder = true;
} }
@ -516,6 +518,9 @@ class _Settlement extends State<Settlement> {
placeOrderFirst.storeId = storeInfo.id; placeOrderFirst.storeId = storeInfo.id;
placeOrderFirst.subcribeTime = null; placeOrderFirst.subcribeTime = null;
placeOrderFirst.tableId = "$tableId"; placeOrderFirst.tableId = "$tableId";
for(int i = 0;i<placeOrderFirst.shoppingCartSkuItemList.length;i++){
placeOrderFirst.shoppingCartSkuItemList[i].setMealDataList = shopCarGoods.shoppingCartSkuItemList[i].setMealDataList;
}
if (tableId == 0) { if (tableId == 0) {
/// ///

2
lib/settlement/settlement_view/activity_coupon_remarks.dart

@ -76,7 +76,7 @@ class _ActivityCouponRemarks extends State<ActivityCouponRemarks> {
mainAxisAlignment: MainAxisAlignment.spaceEvenly, mainAxisAlignment: MainAxisAlignment.spaceEvenly,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,
children: [ children: [
if(!(widget?.settleOrderInfo?.isRaise ?? false) && (widget?.settleOrderInfo?.memberVO?.isVip ?? false)) if( !(widget?.settleOrderInfo?.isRaise ?? false) && (widget?.settleOrderInfo?.memberVO?.isVip ?? false) && widget.placeOrder)
Row( Row(
mainAxisAlignment: MainAxisAlignment.center, mainAxisAlignment: MainAxisAlignment.center,
crossAxisAlignment: CrossAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center,

3
lib/union/location_map_page.dart

@ -76,7 +76,8 @@ class _LocationMap extends State<LocationMap> {
leadingColor: Colors.black, leadingColor: Colors.black,
), ),
body: Container( body: Container(
child: BMFMapWidget( //BMFMapWidget ,BMFTextureMapWidget不会强制遮盖其他控件
child: BMFTextureMapWidget(
mapOptions: BMFMapOptions( mapOptions: BMFMapOptions(
center: BMFCoordinate( center: BMFCoordinate(
double.tryParse(widget.arguments["lat"]), double.tryParse(widget.arguments["lat"]),

1
lib/union/union_list.dart

@ -121,6 +121,7 @@ class _UnionList extends State<UnionList> {
child: TextField( child: TextField(
textInputAction: TextInputAction.search, textInputAction: TextInputAction.search,
onEditingComplete: () { onEditingComplete: () {
FocusScope.of(context).requestFocus(FocusNode());
widget.queryStore(editingController.text); widget.queryStore(editingController.text);
}, },
controller: editingController, controller: editingController,

62
lib/utils/location.dart

@ -2,11 +2,15 @@ import 'dart:io';
import 'package:android_intent_plus/android_intent.dart'; import 'package:android_intent_plus/android_intent.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bmflocation/flutter_bmflocation.dart'; import 'package:flutter_bmflocation/flutter_bmflocation.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:huixiang/generated/l10n.dart'; import 'package:huixiang/generated/l10n.dart';
import 'package:huixiang/view_widget/request_permission.dart'; import 'package:huixiang/view_widget/request_permission.dart';
import 'package:permission_handler/permission_handler.dart'; import 'package:permission_handler/permission_handler.dart';
import 'font_weight.dart';
BaiduLocationAndroidOption initAndroidOptions() { BaiduLocationAndroidOption initAndroidOptions() {
BaiduLocationAndroidOption options = BaiduLocationAndroidOption( BaiduLocationAndroidOption options = BaiduLocationAndroidOption(
@ -99,14 +103,18 @@ class Location {
} }
return true; return true;
} else if (await Permission.location.isUndetermined) { } else if (await Permission.location.isUndetermined) {
showAlertDialog(context);
await Permission.location.request(); await Permission.location.request();
Navigator.of(context).pop();
return false; return false;
} else { } else {
if (Platform.isIOS) { if (Platform.isIOS) {
// //
requestDialog(context, locationCallback); requestDialog(context, locationCallback);
} else { } else {
showAlertDialog(context);
await Permission.location.request(); await Permission.location.request();
Navigator.of(context).pop();
} }
return false; return false;
} }
@ -162,4 +170,58 @@ class Location {
}, },
); );
} }
///
showAlertDialog(context) {
//
showDialog(
context: context,
builder: (BuildContext context) {
return SimpleDialog(
titlePadding: EdgeInsets.all(10),
backgroundColor: Colors.transparent,
elevation: 0,
alignment: Alignment.topCenter,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(6),
),
children: <Widget>[
Container(
width: double.infinity,
height: 120.h,
padding: EdgeInsets.all(16),
decoration: new BoxDecoration(
color: Colors.white,
borderRadius: BorderRadius.circular(8),
),
child:Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: [
Text(
"访问精确地理位置信息权限说明",
style: TextStyle(
fontSize: 15.sp,
fontWeight:MyFontWeight.regular,
color: Colors.black,
),
),
SizedBox(height: 3.h,),
Text(
"为了向您推荐附近的门店信息,推荐您在使用期间让我们使用位置信息,不授权该权限不影响app正常使用。",
style: TextStyle(
fontSize: 13.sp,
height: 1.3.h,
fontWeight:MyFontWeight.regular,
color: Colors.black,
),
),
],
),
),
],
);
},
);
}
} }

5
lib/view_widget/new_coupon_widget.dart

@ -43,7 +43,7 @@ class NewCouponWidget extends StatelessWidget {
// } // }
return Container( return Container(
height: (coupon != null && coupon.isEx) ? 155.h : 135.h, height: (coupon != null && coupon.isEx) ? 160.h : 140.h,
width: double.infinity, width: double.infinity,
margin: EdgeInsets.fromLTRB(14.w, 6.h, 14.w, 6.h), margin: EdgeInsets.fromLTRB(14.w, 6.h, 14.w, 6.h),
padding: EdgeInsets.only(right: 5), padding: EdgeInsets.only(right: 5),
@ -83,11 +83,12 @@ class NewCouponWidget extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start,
children: [ children: [
Text( Text(
"券名称:${coupon != null ? coupon.couponName ?? "" : ""}", "${coupon != null ? coupon.couponName ?? "" : ""}",
maxLines: 1, maxLines: 1,
overflow: TextOverflow.ellipsis, overflow: TextOverflow.ellipsis,
style: TextStyle( style: TextStyle(
fontSize: 15.sp, fontSize: 15.sp,
height: 1.2.h,
fontWeight: MyFontWeight.semi_bold, fontWeight: MyFontWeight.semi_bold,
color: Color(0xFF0D0D0D), color: Color(0xFF0D0D0D),
), ),

2
pubspec.yaml

@ -3,7 +3,7 @@ description: 一心回乡.
publish_to: 'none' # Remove this line if you wish to publish to pub.dev publish_to: 'none' # Remove this line if you wish to publish to pub.dev
version: 3.2.4+45 version: 3.2.4+48
environment: environment:
sdk: ">=2.7.0 <3.0.0" sdk: ">=2.7.0 <3.0.0"

Loading…
Cancel
Save