Commit f97a4ff7 by Mobile : Ball (Apprentice)

Merge branch 'develop' of https://gitlab.2fellows.com/art/feelver into develop

# Conflicts:
#	lib/main.dart
parents 5497e545 633285b5
......@@ -34,7 +34,9 @@ class MyApp extends StatelessWidget {
),
home: ReviewShopPage()
home: SplashScreenPage()
......
......@@ -14,17 +14,17 @@ class shopserviceModel {
shopserviceModel(
{this.currentPage,
this.data,
this.firstPageUrl,
this.from,
this.lastPage,
this.lastPageUrl,
this.nextPageUrl,
this.path,
this.perPage,
this.prevPageUrl,
this.to,
this.total});
this.data,
this.firstPageUrl,
this.from,
this.lastPage,
this.lastPageUrl,
this.nextPageUrl,
this.path,
this.perPage,
this.prevPageUrl,
this.to,
this.total});
shopserviceModel.fromJson(Map<String, dynamic> json) {
currentPage = json['current_page'];
......@@ -76,20 +76,20 @@ class Data {
String price;
String specialPrice;
String sku;
dynamic tax;
Null tax;
int quantity;
dynamic weight;
Null weight;
String visibility;
dynamic newsFromDate;
dynamic newsToDate;
dynamic layout;
dynamic theme;
Null newsFromDate;
Null newsToDate;
Null layout;
Null theme;
String duration;
dynamic sellingStartTime;
dynamic sellingEndTime;
dynamic redemptionStartTime;
dynamic redemptionEndTime;
dynamic availibility;
Null sellingStartTime;
Null sellingEndTime;
Null redemptionStartTime;
Null redemptionEndTime;
Null availibility;
String isFeatured;
String isDeal;
String hasTeam;
......@@ -107,13 +107,13 @@ class Data {
int attributeSetId;
int vendorId;
String allowRoute;
String type;
Null type;
int star;
List<CategoryByProductId> categoryByProductId;
List<Null> ratings;
int storeProductId;
String typeRateService;
String priceRateService;
Null typeRateService;
Null priceRateService;
int productId;
int storeId;
String storeCode;
......@@ -127,62 +127,62 @@ class Data {
Data(
{this.id,
this.urlCode,
this.name,
this.cover,
this.excerpt,
this.detail,
this.price,
this.specialPrice,
this.sku,
this.tax,
this.quantity,
this.weight,
this.visibility,
this.newsFromDate,
this.newsToDate,
this.layout,
this.theme,
this.duration,
this.sellingStartTime,
this.sellingEndTime,
this.redemptionStartTime,
this.redemptionEndTime,
this.availibility,
this.isFeatured,
this.isDeal,
this.hasTeam,
this.offpeak,
this.reviewStatus,
this.relatedStatus,
this.upSellsStatus,
this.crossSellsStatus,
this.allowGiftMessage,
this.stockStatus,
this.status,
this.businessTypeId,
this.businessCateId,
this.businessServiceId,
this.attributeSetId,
this.vendorId,
this.allowRoute,
this.type,
this.star,
this.categoryByProductId,
this.ratings,
this.storeProductId,
this.typeRateService,
this.priceRateService,
this.productId,
this.storeId,
this.storeCode,
this.storeName,
this.location,
this.storeStatus,
this.vendorStatus,
this.latitude,
this.longitude,
this.popular});
this.urlCode,
this.name,
this.cover,
this.excerpt,
this.detail,
this.price,
this.specialPrice,
this.sku,
this.tax,
this.quantity,
this.weight,
this.visibility,
this.newsFromDate,
this.newsToDate,
this.layout,
this.theme,
this.duration,
this.sellingStartTime,
this.sellingEndTime,
this.redemptionStartTime,
this.redemptionEndTime,
this.availibility,
this.isFeatured,
this.isDeal,
this.hasTeam,
this.offpeak,
this.reviewStatus,
this.relatedStatus,
this.upSellsStatus,
this.crossSellsStatus,
this.allowGiftMessage,
this.stockStatus,
this.status,
this.businessTypeId,
this.businessCateId,
this.businessServiceId,
this.attributeSetId,
this.vendorId,
this.allowRoute,
this.type,
this.star,
this.categoryByProductId,
this.ratings,
this.storeProductId,
this.typeRateService,
this.priceRateService,
this.productId,
this.storeId,
this.storeCode,
this.storeName,
this.location,
this.storeStatus,
this.vendorStatus,
this.latitude,
this.longitude,
this.popular});
Data.fromJson(Map<String, dynamic> json) {
id = json['id'];
......@@ -233,7 +233,12 @@ class Data {
categoryByProductId.add(new CategoryByProductId.fromJson(v));
});
}
// if (json['ratings'] != null) {
// ratings = new List<Null>();
// json['ratings'].forEach((v) {
// ratings.add(new Null.fromJson(v));
// });
// }
storeProductId = json['store_product_id'];
typeRateService = json['type_rate_service'];
priceRateService = json['price_rate_service'];
......@@ -297,7 +302,9 @@ class Data {
data['category_by_product_id'] =
this.categoryByProductId.map((v) => v.toJson()).toList();
}
// if (this.ratings != null) {
// data['ratings'] = this.ratings.map((v) => v.toJson()).toList();
// }
data['store_product_id'] = this.storeProductId;
data['type_rate_service'] = this.typeRateService;
data['price_rate_service'] = this.priceRateService;
......@@ -326,8 +333,8 @@ class CategoryByProductId {
Null type;
String status;
int sortOrder;
int storeId;
int vendorId;
Null storeId;
Null vendorId;
Null createdAt;
String updatedAt;
String visibility;
......@@ -335,21 +342,21 @@ class CategoryByProductId {
CategoryByProductId(
{this.id,
this.parentId,
this.name,
this.code,
this.displayName,
this.cover,
this.detail,
this.type,
this.status,
this.sortOrder,
this.storeId,
this.vendorId,
this.createdAt,
this.updatedAt,
this.visibility,
this.pivot});
this.parentId,
this.name,
this.code,
this.displayName,
this.cover,
this.detail,
this.type,
this.status,
this.sortOrder,
this.storeId,
this.vendorId,
this.createdAt,
this.updatedAt,
this.visibility,
this.pivot});
CategoryByProductId.fromJson(Map<String, dynamic> json) {
id = json['id'];
......
......@@ -107,16 +107,16 @@ class Api<T> {
}
Future<Response<T>> shopservice(Object body) async {
Future<Response<T>> shopservice(String url) async {
var _model;
var _fail;
var result;
print("this is body"+body.toString());
print("this is body "+url.toString());
// (body as Map)['lang'] = allTranslations.currentLanguage;
await _httpConnection("${this._baseApi}/product/getListsProductFormat?vendor_id=9&store_id=284&is_paginate=1&per_page=1&v=1", this._headerApi, null)
await _httpConnection(url.toString(), this._headerApi, null)
.then((response){
print("ผลลัพท์ เท่ากับ" + "${response.body}");
if(response.statusCode == 200){
......@@ -199,20 +199,20 @@ class Api<T> {
return result;
}
Future<Response<T>> getProductDetail(Object body) async{
Future<Response<T>> getProductDetail(String url) async{
var _model;
var _fail;
var result;
print("this is body " + body.toString());
print("this is body " + url.toString());
// (body as Map)['lang'] = allTranslations.currentLanguage;
await http.get(Uri.encodeFull("https://backend.feelver.com/api/product/1000?store_id=284&vendor_id=9"), headers: this._headerApi ).then((response) {
await http.get(Uri.encodeFull(url.toString()), headers: this._headerApi, ).then((response) {
print("ผลลัพ เท่ากับบบบ2 " + "${response.body}");
print("statusCode=${response.statusCode}");
if (response.statusCode == 200) {
print("INif");
// https://backend.feelver.com/api/product/1000?store_id=284&vendor_id=9
_model = ProductModel.fromJson(json.decode(response.body));
} else {
......
import 'package:feelverapp/ui/booking/booking_detail_presenter.dart';
import 'package:feelverapp/ui/booking/bookingform.dart';
import 'package:feelverapp/ui/payment/mycart.dart';
import 'package:feelverapp/util/SizeConfig.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
......@@ -27,6 +28,8 @@ class _BookingDetailState extends State<BookingDetail> {
// print(widget.getid);
presenter = BookingDetailtPresenter(this);
setState(() {
presenter.vendor_id = widget.vendor_id;
presenter.store_id = widget.store_id;
presenter.getid = widget.getid;
});
presenter.getDetail();
......@@ -98,6 +101,7 @@ class _BookingDetailState extends State<BookingDetail> {
: Container(
padding: EdgeInsets.only(
left: SizeConfig.getPadding(24),
right: SizeConfig.getPadding(24),
top: SizeConfig.getPadding(16),
bottom: SizeConfig.getPadding(16)),
alignment: Alignment.topLeft,
......@@ -243,6 +247,12 @@ class _BookingDetailState extends State<BookingDetail> {
// fontWeight: FontWeight.w500),
// ),
// ),
Divider(
color: Colors.black,
height: SizeConfig.getHeight(35),
indent: 20,
endIndent: 20,
),
SizedBox(
height: SizeConfig.getHeight(16),
),
......@@ -372,28 +382,43 @@ class _BookingDetailState extends State<BookingDetail> {
fontWeight: FontWeight.w500),
),
),
Container(
margin: EdgeInsets.only(
top: SizeConfig.getPadding(20),
left: SizeConfig.getPadding(250)),
InkWell(onTap: (){
Navigator.push(
context,
CupertinoPageRoute(
builder: (context) => MyCart(
// getid: presenter.model.result[0]
// .storeProduct[i].product.id,
// vendor_id: presenter.model.result[0].storeProduct[i]
// .product.vendorId,
// store_id: presenter.model.result[0].storeProduct[i].storeId,
),
),
);
},
child: Container(
margin: EdgeInsets.only(
top: SizeConfig.getPadding(20),
left: SizeConfig.getPadding(250)),
// color: Colors.red,
width: SizeConfig.getWidth(100),
height: SizeConfig.getHeight(45),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(0),
color: Color.fromRGBO(238, 175, 183, 1),
),
child: Container(
padding: EdgeInsets.only(top: SizeConfig.getPadding(6)),
child: Text(
'หยิบใส่รถเข็น',
textAlign: TextAlign.center,
style: TextStyle(
color: Colors.white,
fontSize: SizeConfig.getFontSize(14),
fontFamily: "SF_Pro_Text",
fontWeight: FontWeight.w500),
width: SizeConfig.getWidth(100),
height: SizeConfig.getHeight(45),
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(0),
color: Color.fromRGBO(238, 175, 183, 1),
),
child: Container(
padding: EdgeInsets.only(top: SizeConfig.getPadding(6)),
child: Text(
'หยิบใส่รถเข็น',
textAlign: TextAlign.center,
style: TextStyle(
color: Colors.white,
fontSize: SizeConfig.getFontSize(14),
fontFamily: "SF_Pro_Text",
fontWeight: FontWeight.w500),
),
),
),
),
......
......@@ -32,7 +32,9 @@ class BookingDetailtPresenter extends BasePresenter<BookingDetail> {
_api = Api<ProductModel>();
var res = await _api.getProductDetail({});
var res = await _api.getProductDetail(
'https://backend.feelver.com/api/product/' + getid.toString() + '?store_id=' + store_id.toString() + '&vendor_id=' + vendor_id.toString()
);
if (res.fail == null) {
if (res.success.status) {
......
......@@ -61,7 +61,21 @@ class _FavoriteState extends State<Favorite> {
),
child: Container(
child: presenter.favoriteModel == null
? Container()
? Container(
child: Center(
child: Column(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
SizedBox(
child: CircularProgressIndicator( valueColor: new AlwaysStoppedAnimation<Color>(
Color.fromRGBO(69, 85, 79, 1),
),),
height: 30.0,
width: 30.0,
),]
))
)
: ListView.builder(
itemCount: presenter.favoriteModel.wishListItem.length,
itemBuilder: (context, i) {
......@@ -98,7 +112,7 @@ class _FavoriteState extends State<Favorite> {
.cover,
width: SizeConfig.getWidth(110),
height: SizeConfig.getHeight(150),
fit: BoxFit.fitWidth,
fit: BoxFit.cover,
),
Expanded(
child: Container(
......@@ -114,18 +128,20 @@ class _FavoriteState extends State<Favorite> {
// color: Colors.blue,
child: Row(
children: <Widget>[
Expanded(
child: Container(
child: Text(
presenter.favoriteModel.wishListItem[index].product.name,
Expanded(
child: Container(
child: Text(
presenter.favoriteModel.wishListItem[index]
.product.name,
style: TextStyle(
color: Colors.black,
fontSize: SizeConfig.getFontSize(15)),
maxLines: 2,
),
fontSize: SizeConfig.getFontSize(15),
fontFamily: "SF_Pro_Text",
fontWeight: FontWeight.w700),
maxLines: 2,
),
),
),
// Spacer(),
IconButton(
onPressed: () {
......@@ -145,8 +161,10 @@ class _FavoriteState extends State<Favorite> {
child: Text(
'นวดเเผนไทย',
style: TextStyle(
color: Colors.black,
),
color: Colors.black,
fontSize: SizeConfig.getFontSize(14),
fontFamily: "SF_Pro_Text",
fontWeight: FontWeight.w500),
),
),
SizedBox(
......@@ -223,7 +241,7 @@ class _FavoriteState extends State<Favorite> {
children: <Widget>[
Container(
color: Color.fromRGBO(69, 85, 79, 1),
height: SizeConfig.getHeight(200),
height: SizeConfig.getHeight(180),
width: MediaQuery.of(context).size.width,
),
Positioned(
......@@ -239,23 +257,17 @@ class _FavoriteState extends State<Favorite> {
),
),
Positioned(
top: SizeConfig.getPadding(77),
top: SizeConfig.getPadding(70),
left: SizeConfig.getPadding(16),
child: Container(
child: GestureDetector(
onTap: () {
showDialog(
context: context,
builder: (BuildContext context) {
return NavDrawer();
},
);
Navigator.pop(context);
},
child: Image.asset(
'assets/images/ic_menu.png',
height: SizeConfig.getWidth(24),
width: SizeConfig.getWidth(30),
fit: BoxFit.cover,
child: Icon(
Icons.keyboard_arrow_left,
color: Colors.white,
size: SizeConfig.getFontSize(40),
),
),
),
......
import 'package:feelverapp/model/favorite/delete_favorite_Model.dart';
import 'package:feelverapp/model/favorite/favorite_Model.dart';
import 'package:feelverapp/service/Loading.dart';
import 'package:feelverapp/service/api.dart';
import 'package:feelverapp/service/base_presenter.dart';
import 'package:feelverapp/ui/favorite/favorite.dart';
......@@ -14,16 +15,16 @@ class FavoritePresenter extends BasePresenter<Favorite> {
FavoritePresenter(State<Favorite> state) : super(state);
Favoriteitem() async {
Favoriteitem() async {
var _id = await AccountUtil.getID();
print(_id);
print("555555555555");
_api = Api<FavoriteModel>();
var res = await _api.favorite({
"customer_id": _id,
});
if (res.fail == null) {
setState(() {
favoriteModel = res.success;
......@@ -34,11 +35,13 @@ class FavoritePresenter extends BasePresenter<Favorite> {
}
Deletefavoriteitem(String id) async {
LoadingView(state.context).show();
_api = Api<DeletefavoriteModel>();
var res = await _api.deletefavorite({
"id": id,
});
LoadingView(state.context).hide();
if (res.fail == null) {
setState(() {
deletefavoriteModel = res.success;
......
......@@ -77,6 +77,12 @@ class _HomePageState extends State<HomePage> with TickerProviderStateMixin {
height: SizeConfig.getWidth(24),
),
onPressed: () {
setState(() {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => HomePage()),
);
});
print("Pressed");
},
),
......@@ -259,7 +265,7 @@ class _HomePageState extends State<HomePage> with TickerProviderStateMixin {
child: ClipRRect(
borderRadius: BorderRadius.all(
Radius.circular(SizeConfig.getWidth(56))),
child: Image.network(
child: presenter.getmodel.result[0].image==null?Container(): Image.network(
presenter.getmodel.result[0].image,
fit: BoxFit.contain,
width: SizeConfig.getWidth(30),
......@@ -285,7 +291,7 @@ class _HomePageState extends State<HomePage> with TickerProviderStateMixin {
child: ClipRRect(
borderRadius: BorderRadius.all(
Radius.circular(SizeConfig.getWidth(56))),
child: Image.network(
child: presenter.getmodel.result[0].image==null?Container(): Image.network(
presenter.getmodel.result[0].image,
fit: BoxFit.contain,
width: SizeConfig.getWidth(30),
......
......@@ -187,9 +187,11 @@ class _ShopNearbyPlacesPageState extends State<ShopNearbyPlacesPage>
return presenter.getmodel == null
? Container(
child: Center(
child: CircularProgressIndicator(
valueColor: new AlwaysStoppedAnimation<Color>(Colors.teal),
)))
child: CircularProgressIndicator(
valueColor: new AlwaysStoppedAnimation<Color>(Colors.teal),
),
),
)
: Container(
padding: EdgeInsets.only(
top: SizeConfig.getPadding(80),
......@@ -223,7 +225,7 @@ class _ShopNearbyPlacesPageState extends State<ShopNearbyPlacesPage>
CupertinoPageRoute(
builder: (context) => ShopListDetail(
// id: id,
),
),
),
);
});
......
......@@ -9,12 +9,14 @@ import 'package:flutter/material.dart';
import 'dart:math';
class MainShop extends StatefulWidget {
int getid;
int vendor_id;
int store_id;
MainShop({Key key, this.title,this.getid,this.vendor_id,this.store_id}) : super(key: key);
final String title;
......@@ -285,7 +287,7 @@ class _MainShopState extends State<MainShop>
child: Container(
// color: Colors.blue,
// height: double.maxFinite,
child: ShopServicePage(),
child: ShopServicePage(getid: widget.getid,vendor_id: widget.vendor_id,store_id: widget.store_id,),
),
),
],
......@@ -295,7 +297,7 @@ class _MainShopState extends State<MainShop>
Container(
// color: Colors.red,
child: ShopReviewsPage(),
child: ShopReviewsPage(getid: widget.getid,vendor_id: widget.vendor_id,store_id: widget.store_id,),
// child: getlist(),
//width: 20,
),
......
......@@ -3,8 +3,19 @@ import 'package:feelverapp/util/rating_star.dart';
import 'package:flutter/material.dart';
class ShopReviewsPage extends StatefulWidget {
int getid;
int vendor_id;
int store_id;
ShopReviewsPage({Key key, this.getid,this.vendor_id,this.store_id}) : super(key: key);
@override
_ShopReviewsPageState createState() => _ShopReviewsPageState();
// setState(() {
// presenter.vendor_id = widget.vendor_id;
// presenter.store_id = widget.store_id;
// presenter.getid = widget.getid;
// });
}
class _ShopReviewsPageState extends State<ShopReviewsPage> {
......
......@@ -9,6 +9,13 @@ import '../booking/booking_detail.dart';
import 'shop_main.dart';
class ShopServicePage extends StatefulWidget {
int getid;
int vendor_id;
int store_id;
ShopServicePage({Key key, this.getid, this.vendor_id, this.store_id})
: super(key: key);
@override
_ShopServicePageState createState() => _ShopServicePageState();
}
......@@ -24,6 +31,12 @@ class _ShopServicePageState extends State<ShopServicePage>
super.initState();
presenter = ShopServicePresenter(this);
setState(() {
presenter.vendor_id = widget.vendor_id;
presenter.store_id = widget.store_id;
presenter.getid = widget.getid;
});
presenter.Servicelistitem();
}
......@@ -35,31 +48,44 @@ class _ShopServicePageState extends State<ShopServicePage>
@override
Widget build(BuildContext context) {
SizeConfig(context);
return Container(
child: presenter.serviceModel == null
? Container()
: ListView.builder(
itemCount: presenter.serviceModel.data.length,
itemBuilder: (context, i) {
return myCard(
presenter.serviceModel.data[i].name,
presenter.serviceModel.data[i].cover,
presenter.serviceModel.data[i].price,
presenter.serviceModel.data[i].duration,
presenter.serviceModel.data[i].id,
presenter.serviceModel.data[i].specialPrice == null
? ""
: presenter.serviceModel.data[i].specialPrice,
presenter.serviceModel.data[i].vendorId,
presenter.serviceModel.data[i].storeId,
);
},
return presenter.serviceModel == null
? Container(
child: Center(
child: CircularProgressIndicator(
valueColor: new AlwaysStoppedAnimation<Color>(Colors.teal),
),
),
);
)
: Container(
child: presenter.serviceModel.data == null
? Container()
: ListView.builder(
itemCount: presenter.serviceModel.data.length,
itemBuilder: (context, i) {
// print(presenter.serviceModel.data.length);
return myCard(
presenter.serviceModel.data[i].name,
presenter.serviceModel.data[i].cover == null
? "https://heart.kku.ac.th/media/tz_portfolio_plus/article/cache/dujdao-sahasthas-2-14_o.png"
: presenter.serviceModel.data[i].cover,
presenter.serviceModel.data[i].excerpt,
presenter.serviceModel.data[i].price,
presenter.serviceModel.data[i].duration,
presenter.serviceModel.data[i].id,
presenter.serviceModel.data[i].specialPrice == null
? ""
: presenter.serviceModel.data[i].specialPrice,
presenter.serviceModel.data[i].vendorId,
presenter.serviceModel.data[i].storeId,
);
},
),
);
}
Widget myCard(String title, String image, String price, String time, int id,
String special_price , int vendor_id,int store_id) {
Widget myCard(String title, String image, String detail, String price,
String time, int id, String special_price, int vendor_id, int store_id) {
return InkWell(
onTap: () {
setState(
......@@ -68,8 +94,9 @@ class _ShopServicePageState extends State<ShopServicePage>
context,
CupertinoPageRoute(
builder: (context) => MainShop(
getid: id,vendor_id: vendor_id,store_id: store_id,
getid: id,
vendor_id: vendor_id,
store_id: store_id,
),
),
);
......@@ -96,7 +123,7 @@ class _ShopServicePageState extends State<ShopServicePage>
// color: Colors.blue,
height: SizeConfig.getHeight(250),
child: presenter.serviceModel == null
? Image.asset(
? Image.network(
"assets/images/demo_img.png",
fit: BoxFit.cover,
)
......@@ -133,12 +160,12 @@ class _ShopServicePageState extends State<ShopServicePage>
height: 5,
),
Text(
"SPA Cenvaree @ Centara Grand CentralWorld Bangkok",
detail,
style: TextStyle(
color: Color(0xff969696),
fontSize: SizeConfig.getFontSize(11),
fontFamily: "SF_Pro_Text",
fontWeight: FontWeight.w500),
fontWeight: FontWeight.w500),maxLines: 3,
),
],
),
......@@ -149,30 +176,28 @@ class _ShopServicePageState extends State<ShopServicePage>
child: Column(
mainAxisAlignment: MainAxisAlignment.start,
children: <Widget>[
Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
Image.asset(
'assets/images/pin_drop.png',
height: 20,
width: 20,
),
SizedBox(
width: 5,
),
Text(
"พญาไท กรุงเทพฯ",
style: TextStyle(
color: Colors.black,
fontSize: SizeConfig.getFontSize(13),
fontFamily: "SF_Pro_Text",
),
),
],
),
SizedBox(
height: 10,
),
// Row(
// crossAxisAlignment: CrossAxisAlignment.center,
// children: <Widget>[
// Image.asset(
// 'assets/images/pin_drop.png',
// height: 20,
// width: 20,
// ),
// SizedBox(
// width: 5,
// ),
// Text(
// addres,
// style: TextStyle(
// color: Colors.black,
// fontSize: SizeConfig.getFontSize(13),
// fontFamily: "SF_Pro_Text",
// ),
// ),
// ],
// ),
Row(
crossAxisAlignment: CrossAxisAlignment.center,
children: <Widget>[
......
......@@ -6,6 +6,10 @@ import 'package:flutter/material.dart';
class ShopServicePresenter extends BasePresenter<ShopServicePage> {
Api _api;
int getid;
int vendor_id;
int store_id;
final formkey = GlobalKey<FormState>();
shopserviceModel serviceModel;
......@@ -13,20 +17,17 @@ class ShopServicePresenter extends BasePresenter<ShopServicePage> {
Servicelistitem() async {
_api = Api<shopserviceModel>();
var res = await _api.shopservice({
"vendor_id": "9",
"store_id": "284",
"is_paginate": "1",
"per_page": "1",
"v": "1",
});
var res = await _api.shopservice(
'https://backend-uat.feelver.com/api/product/getListsProductFormat?vendor_id=' +
vendor_id.toString() +
'&store_id=' +
store_id.toString() +
'&is_paginate=1&per_page=99&v=1');
if (res.fail == null) {
setState(() {
serviceModel = res.success;
print("sssssssssssss");
print('${serviceModel.data[0].name}');
print('${serviceModel.data[1].name}');
});
} else {
print('res Fail');
......
......@@ -99,6 +99,13 @@ packages:
url: "https://pub.dartlang.org"
source: hosted
version: "5.2.1"
firebase_crashlytics:
dependency: "direct main"
description:
name: firebase_crashlytics
url: "https://pub.dartlang.org"
source: hosted
version: "0.1.4+1"
flutter:
dependency: "direct main"
description: flutter
......
......@@ -37,6 +37,7 @@ dependencies:
date_format: ^1.0.8
flutter_datetime_picker: ^1.4.0
carousel_slider: ^2.2.1
firebase_crashlytics: ^0.1.4+1
......
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