import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; import 'package:fcs/model/buyer_model.dart'; import 'package:fcs/pages/util.dart'; import 'package:fcs/fcs/common/theme.dart'; import 'package:fcs/vo/buyer.dart'; import 'buyer_info.dart'; class BuyerListRow extends StatefulWidget { final Buyer buyer; const BuyerListRow({this.buyer}); @override _BuyerListRowState createState() => _BuyerListRowState(); } class _BuyerListRowState extends State { final double dotSize = 15.0; Buyer _buyer = new Buyer(); @override void initState() { super.initState(); BuyerModel buyerModel = Provider.of(context, listen: false); if (widget.buyer != null) { buyerModel.buyers.forEach((b) { if (widget.buyer.id == b.id) { _buyer = b; } }); } } @override Widget build(BuildContext context) { return Container( padding: EdgeInsets.only(left: 15, right: 15), child: Card( elevation: 10, color: Colors.white, child: InkWell( onTap: () { Navigator.push( context, MaterialPageRoute(builder: (context) => BuyerInfo(buyer: _buyer)), ); }, child: Row( children: [ Expanded( child: new Padding( padding: const EdgeInsets.symmetric(vertical: 16.0), child: new Row( children: [ new Padding( padding: new EdgeInsets.symmetric( horizontal: 32.0 - dotSize / 2), child: Image.asset( "assets/buyer.png", width: 40, height: 40, color: primaryColor, ), ), new Expanded( child: new Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ new Text( _buyer.userName == null ? '' : _buyer.userName, style: new TextStyle( fontSize: 15.0, color: Colors.black), ), new Text( _buyer.bizName == null ? "" : _buyer.bizName, style: new TextStyle( fontSize: 13.0, color: Colors.grey), ), new Text( _buyer.phone == null ? "" : _buyer.phone, style: new TextStyle( fontSize: 13.0, color: Colors.grey), ), ], ), ), ], ), ), ), Row( children: [ Padding( padding: const EdgeInsets.all(8.0), child: getStatus(_buyer.status), ), ], ) ], ), ), ), ); } }