This commit is contained in:
unknown
2023-12-11 22:29:06 +03:30
parent ede10a2efe
commit 1342b9f2e1
11 changed files with 157 additions and 82 deletions
-4
View File
@@ -172,8 +172,4 @@ class Url {
static String getUsers(String id) {
return '$baseUrl/Users?medical_center_id=$id';
}
static String showItemImage(String file) {
return 'https://www.cssd-doc.com/$file';
}
}
+5 -5
View File
@@ -140,7 +140,7 @@ class ItemProvider extends ChangeNotifier {
'specific': specific,
'name': name,
'udi': udi,
'batch_id': batchId,
'file_batch_id': batchId,
},
),
headers: {
@@ -280,7 +280,7 @@ class ItemProvider extends ChangeNotifier {
originalItems = [];
}
for (var item in itemsData['data']['data']) {
for (var item in itemsData['data']) {
originalItems!.add(
ItemResultObject(
name: item['name'],
@@ -324,9 +324,9 @@ class ItemProvider extends ChangeNotifier {
List<String> mediaList = [];
if (data['filesPath'] != null) {
for (var file in data['filesPath']) {
mediaList.add(Url.showItemImage(file));
if (data['files'] != null || data['files'] != []) {
for (var file in data['files']) {
mediaList.add(file['thumbnail']);
}
}
+1 -1
View File
@@ -120,7 +120,7 @@ class MyItemProvider extends ChangeNotifier {
originalMyItems = [];
}
for (var item in itemsData['data']['data']) {
for (var item in itemsData['data']) {
originalMyItems!.add(
MyItemResultObject(
name: item['name'],
+2 -1
View File
@@ -282,7 +282,7 @@ class PackageProvider extends ChangeNotifier {
originalItems = [];
}
for (var item in testResultData['data']['data']) {
for (var item in testResultData['data']) {
originalItems!.add(
PackageResultObject(
createdAt: item['created_at'],
@@ -300,6 +300,7 @@ class PackageProvider extends ChangeNotifier {
await http.get(Uri.parse(Url.getPackageResult(id)), headers: {
'Authorization': User.token,
});
print(response.statusCode);
if (response.statusCode != 200) {
return PackageDetailObject(
id: 'null',
+13 -3
View File
@@ -204,7 +204,7 @@ class TestResultsProvider with ChangeNotifier {
originalItems = [];
}
for (var item in testResultData['data']['data']) {
for (var item in testResultData['data']) {
originalItems!.add(
TestResultObject(
id: item['id'].toString(),
@@ -267,7 +267,7 @@ class TestResultsProvider with ChangeNotifier {
await addImage(batchId, image.bytes, image.path!);
}
dynamic vals = values;
vals['batch_id'] = batchId;
vals['file_batch_id'] = batchId;
// int counter = 0;
// if (images.length != 0) {
@@ -313,6 +313,15 @@ class TestResultsProvider with ChangeNotifier {
var data = json.decode(response.body)['data'];
// print(data);
List<String> mediaList = [];
if (data['files'] != null || data['files'] != []) {
for (var file in data['files']) {
mediaList.add(file['thumbnail']);
}
}
result = {
'id': data['id'],
'auto_cleave_id': data['inputs']['Autoclave ID'] != null
@@ -329,7 +338,8 @@ class TestResultsProvider with ChangeNotifier {
data['test_type']['name'] != null ? data['test_type']['name'] : '',
'hospital': originalItems!
.firstWhere((element) => element.id == data['id'].toString())
.hospital // az api safheye asli estefade mi shavad
.hospital, // az api safheye asli estefade mi shavad
'files': mediaList,
};
return result!;
}
@@ -1,3 +1,4 @@
import 'package:carousel_slider/carousel_slider.dart';
import 'package:cssd/config/colors.dart';
import 'package:cssd/models/item_model.dart';
import 'package:flutter/material.dart';
@@ -344,20 +345,28 @@ class ItemDetailsDataBox extends StatelessWidget {
),
],
),
Divider(),
SizedBox(
if(datas.filePath!.isNotEmpty) Divider(),
if(datas.filePath!.isNotEmpty) SizedBox(
height: 10,
),
Container(
if(datas.filePath!.isNotEmpty) Container(
width: double.infinity,
padding: EdgeInsets.symmetric(vertical: 10, horizontal: 20),
child: ListView.separated(
shrinkWrap: true,
itemBuilder: (ctx, index) {
child: CarouselSlider.builder(
disableGesture: true,
itemBuilder: (ctx, index, realIndex) {
return Image(image: NetworkImage(datas.filePath![index]));
},
separatorBuilder: (ctx, index) => Divider(),
itemCount: datas.filePath!.length,
options: CarouselOptions(
enlargeCenterPage: false,
aspectRatio: 1,
viewportFraction: 1,
padEnds: false,
pauseAutoPlayOnTouch: true,
disableCenter: false,
autoPlay: false,
),
),
),
],
@@ -117,67 +117,6 @@ class ItemItemBox extends StatelessWidget {
Row(
mainAxisAlignment: MainAxisAlignment.end,
children: <Widget>[
userData['roles']?.contains('User') ?? false
? Container()
: InkWell(
customBorder: CircleBorder(),
onTap: () {
showDialog(
context: context,
builder: (context) {
return AlertDialog(
title: Text(
item!.status == 1
? 'Are you Reject this item?'
: 'Are you Confirm this item?',
),
actions: <Widget>[
TextButton(
onPressed: () {
Provider.of<ItemProvider>(context,
listen: false)
.changeStatus(item!.id)
.then(
(value) {
if (value) {
print('true');
}
Navigator.of(context)
.popAndPushNamed(Routes
.itemResultScreen);
},
);
},
child: Text('Yes'),
),
TextButton(
onPressed: () {
Navigator.of(context).pop();
},
child: Text('No'),
),
],
);
},
);
},
child: Container(
padding: EdgeInsets.all(7),
width: 8 * _deviceBlockSize,
decoration: BoxDecoration(
shape: BoxShape.circle,
color: item!.status == 1 ? kPink : kBlue,
),
child: Icon(
item!.status == 1 ? Icons.close : Icons.check,
size: 4 * _deviceBlockSize,
color: Colors.white,
),
),
),
SizedBox(
width: 5.0,
),
// userData['roles']?.contains('User') ?? false
// ? Container()
// : InkWell(
@@ -278,6 +217,67 @@ class ItemItemBox extends StatelessWidget {
SizedBox(
width: 5.0,
),
userData['roles']?.contains('User') ?? false
? Container()
: InkWell(
customBorder: CircleBorder(),
onTap: () {
showDialog(
context: context,
builder: (context) {
return AlertDialog(
title: Text(
item!.status == 1
? 'Are you Reject this item?'
: 'Are you Confirm this item?',
),
actions: <Widget>[
TextButton(
onPressed: () {
Provider.of<ItemProvider>(context,
listen: false)
.changeStatus(item!.id)
.then(
(value) {
if (value) {
print('true');
}
Navigator.of(context)
.popAndPushNamed(Routes
.itemResultScreen);
},
);
},
child: Text('Yes'),
),
TextButton(
onPressed: () {
Navigator.of(context).pop();
},
child: Text('No'),
),
],
);
},
);
},
child: Container(
padding: EdgeInsets.all(7),
width: 8 * _deviceBlockSize,
decoration: BoxDecoration(
shape: BoxShape.circle,
color: item!.status == 1 ? kPink : kBlue,
),
child: Icon(
item!.status == 1 ? Icons.close : Icons.check,
size: 4 * _deviceBlockSize,
color: Colors.white,
),
),
),
SizedBox(
width: 5.0,
),
InkWell(
customBorder: CircleBorder(),
onTap: () {
@@ -1,3 +1,4 @@
import 'package:carousel_slider/carousel_slider.dart';
import 'package:cssd/config/colors.dart';
import 'package:cssd/config/routes.dart';
import 'package:cssd/models/item_model.dart';
@@ -353,6 +354,30 @@ class MyItemsDetailsDataBox extends StatelessWidget {
),
],
),
if(datas.filePath!.isNotEmpty) Divider(),
if(datas.filePath!.isNotEmpty) SizedBox(
height: 10,
),
if(datas.filePath!.isNotEmpty) Container(
width: double.infinity,
padding: EdgeInsets.symmetric(vertical: 10, horizontal: 20),
child: CarouselSlider.builder(
disableGesture: true,
itemBuilder: (ctx, index, realIndex) {
return Image(image: NetworkImage(datas.filePath![index]));
},
itemCount: datas.filePath!.length,
options: CarouselOptions(
enlargeCenterPage: false,
aspectRatio: 1,
viewportFraction: 1,
padEnds: false,
pauseAutoPlayOnTouch: true,
disableCenter: false,
autoPlay: false,
),
),
),
],
),
),
@@ -1,3 +1,4 @@
import 'package:carousel_slider/carousel_slider.dart';
import 'package:cssd/config/colors.dart';
import 'package:flutter/material.dart';
import 'package:intl/intl.dart';
@@ -238,6 +239,30 @@ class DatasBox extends StatelessWidget {
),
],
),
if(datas['files'].isNotEmpty) Divider(),
if(datas['files'].isNotEmpty) SizedBox(
height: 10,
),
if(datas['files'].isNotEmpty) Container(
width: double.infinity,
padding: EdgeInsets.symmetric(vertical: 10, horizontal: 20),
child: CarouselSlider.builder(
disableGesture: true,
itemBuilder: (ctx, index, realIndex) {
return Image(image: NetworkImage(datas['files'][index]));
},
itemCount: datas['files'].length,
options: CarouselOptions(
enlargeCenterPage: false,
aspectRatio: 1,
viewportFraction: 1,
padEnds: false,
pauseAutoPlayOnTouch: true,
disableCenter: false,
autoPlay: false,
),
),
),
],
),
),