mirror of
https://git.meshkee.com/applications/cssd.git
synced 2026-10-10 19:38:56 +03:30
Set repair to my items and fix colors of items in result
This commit is contained in:
@@ -164,12 +164,13 @@ class Url {
|
||||
static String changeItemStatus(String id) {
|
||||
return '$baseUrl/Items/ChangeStatus/$id';
|
||||
}
|
||||
|
||||
static String changePackageStatus(String id) {
|
||||
return '$baseUrl/Packages/ChangeStatus/$id';
|
||||
}
|
||||
|
||||
static String repairItems(String id) {
|
||||
return '$baseUrl/transfer-items/ChangeRepair/$id';
|
||||
return '$baseUrl/Items/ChangeRepair/$id';
|
||||
}
|
||||
|
||||
static String getUsers(String id) {
|
||||
|
||||
+16
-15
@@ -55,22 +55,23 @@ class ItemDetailObject extends Equatable {
|
||||
final String status;
|
||||
final List<String>? filePath;
|
||||
final String? packageId;
|
||||
final int? repair;
|
||||
|
||||
ItemDetailObject({
|
||||
required this.id,
|
||||
required this.name,
|
||||
required this.userName,
|
||||
required this.size,
|
||||
required this.specific,
|
||||
required this.hospital,
|
||||
required this.description,
|
||||
required this.createdAt,
|
||||
required this.udi,
|
||||
required this.status,
|
||||
this.filePath,
|
||||
required this.packageId,
|
||||
required this.userCreator,
|
||||
});
|
||||
ItemDetailObject(
|
||||
{required this.id,
|
||||
required this.name,
|
||||
required this.userName,
|
||||
required this.size,
|
||||
required this.specific,
|
||||
required this.hospital,
|
||||
required this.description,
|
||||
required this.createdAt,
|
||||
required this.udi,
|
||||
required this.status,
|
||||
this.filePath,
|
||||
required this.packageId,
|
||||
required this.userCreator,
|
||||
this.repair});
|
||||
|
||||
@override
|
||||
List<Object> get props {
|
||||
|
||||
@@ -373,6 +373,7 @@ class ItemProvider extends ChangeNotifier {
|
||||
udi: data['udi'] != null ? data['udi'] : '',
|
||||
status: data['status'],
|
||||
packageId: data['package_id'].toString(),
|
||||
repair: data['repair'],
|
||||
filePath: mediaList,
|
||||
);
|
||||
return result!;
|
||||
|
||||
@@ -287,18 +287,11 @@ class MyItemProvider extends ChangeNotifier {
|
||||
print(itemData);
|
||||
}
|
||||
|
||||
Future<void> repairItems(String itemId, String value) async {
|
||||
Future<void> repairItems(String itemId) async {
|
||||
var response = await http.post(
|
||||
Uri.parse(Url.repairItems(itemId)),
|
||||
body: json.encode(
|
||||
{
|
||||
'status': value,
|
||||
},
|
||||
),
|
||||
headers: {
|
||||
'Authorization': User.token,
|
||||
'X-Requested-With': 'XMLHttpRequest',
|
||||
"Content-Type": "application/json",
|
||||
"Accept": "application/json"
|
||||
},
|
||||
);
|
||||
|
||||
@@ -6,14 +6,12 @@ import 'package:intl/intl.dart';
|
||||
import 'package:pinch_zoom/pinch_zoom.dart';
|
||||
import 'package:url_launcher/url_launcher.dart';
|
||||
|
||||
|
||||
class ItemDetailsDataBox extends StatelessWidget {
|
||||
const ItemDetailsDataBox({
|
||||
Key? key,
|
||||
required this.datas,
|
||||
required double deviceBlockSize,
|
||||
})
|
||||
: _deviceBlockSize = deviceBlockSize,
|
||||
}) : _deviceBlockSize = deviceBlockSize,
|
||||
super(key: key);
|
||||
|
||||
final ItemDetailObject datas;
|
||||
@@ -46,7 +44,11 @@ class ItemDetailsDataBox extends StatelessWidget {
|
||||
color: Color.fromRGBO(235, 235, 235, 1),
|
||||
border: Border(
|
||||
left: BorderSide(
|
||||
color: kBlue,
|
||||
color: datas.status == 'approved'
|
||||
? kBlue
|
||||
: datas.status == 'rejected'
|
||||
? kPink
|
||||
: Colors.grey,
|
||||
width: 2,
|
||||
),
|
||||
),
|
||||
@@ -62,14 +64,22 @@ class ItemDetailsDataBox extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
style: TextStyle(
|
||||
color: kBlue,
|
||||
color: datas.status == 'approved'
|
||||
? kBlue
|
||||
: datas.status == 'rejected'
|
||||
? kPink
|
||||
: Colors.grey,
|
||||
),
|
||||
),
|
||||
Divider(),
|
||||
Text(
|
||||
'ID: ${datas.id}',
|
||||
style: TextStyle(
|
||||
color: kBlue,
|
||||
color: datas.status == 'approved'
|
||||
? kBlue
|
||||
: datas.status == 'rejected'
|
||||
? kPink
|
||||
: Colors.grey,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
@@ -337,14 +347,18 @@ class ItemDetailsDataBox extends StatelessWidget {
|
||||
Container(
|
||||
width: 45 * _deviceBlockSize,
|
||||
child: Text(
|
||||
datas.status == 'approved' ? 'Confirmed' :
|
||||
datas
|
||||
.status == 'rejected' ? 'Rejected' : 'Pending..',
|
||||
datas.status == 'approved'
|
||||
? 'Confirmed'
|
||||
: datas.status == 'rejected'
|
||||
? 'Rejected'
|
||||
: 'Pending..',
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
color: datas.status == 'approved' ? kBlue :
|
||||
datas
|
||||
.status == 'rejected' ? kPink : Colors.grey,
|
||||
color: datas.status == 'approved'
|
||||
? kBlue
|
||||
: datas.status == 'rejected'
|
||||
? kPink
|
||||
: Colors.grey,
|
||||
),
|
||||
overflow: TextOverflow.clip,
|
||||
),
|
||||
@@ -365,16 +379,12 @@ class ItemDetailsDataBox extends StatelessWidget {
|
||||
itemBuilder: (ctx, index, realIndex) {
|
||||
return InkWell(
|
||||
child: Image(
|
||||
image: NetworkImage(datas.filePath![index])
|
||||
),
|
||||
image: NetworkImage(datas.filePath![index])),
|
||||
onTap: () {
|
||||
showDialog(
|
||||
context: context,
|
||||
builder: (BuildContext context) =>
|
||||
PinchZoom(
|
||||
child: Image.network(
|
||||
datas.filePath![index])
|
||||
),
|
||||
builder: (BuildContext context) => PinchZoom(
|
||||
child: Image.network(datas.filePath![index])),
|
||||
);
|
||||
},
|
||||
);
|
||||
@@ -390,7 +400,7 @@ class ItemDetailsDataBox extends StatelessWidget {
|
||||
autoPlay: false,
|
||||
enlargeFactor: 0.5,
|
||||
enableInfiniteScroll:
|
||||
datas.filePath?.length == 1 ? false : true,
|
||||
datas.filePath?.length == 1 ? false : true,
|
||||
),
|
||||
),
|
||||
),
|
||||
@@ -401,8 +411,7 @@ class ItemDetailsDataBox extends StatelessWidget {
|
||||
height: 20,
|
||||
),
|
||||
InkWell(
|
||||
onTap: () async =>
|
||||
await launch(
|
||||
onTap: () async => await launch(
|
||||
'https://cssd-doc.com/Show/Item/${datas.id.toString()}',
|
||||
),
|
||||
child: Container(
|
||||
|
||||
@@ -55,7 +55,13 @@ class MyItemsDetailsDataBox extends StatelessWidget {
|
||||
color: Color.fromRGBO(235, 235, 235, 1),
|
||||
border: Border(
|
||||
left: BorderSide(
|
||||
color: kDarkBlue,
|
||||
color: datas.repair == 1
|
||||
? kPink
|
||||
: datas.status == 'approved'
|
||||
? kDarkBlue
|
||||
: datas.status == 'rejected'
|
||||
? kPink
|
||||
: Colors.grey,
|
||||
width: 2,
|
||||
),
|
||||
),
|
||||
@@ -71,14 +77,26 @@ class MyItemsDetailsDataBox extends StatelessWidget {
|
||||
),
|
||||
),
|
||||
style: TextStyle(
|
||||
color: kDarkBlue,
|
||||
color: datas.repair == 1
|
||||
? kPink
|
||||
: datas.status == 'approved'
|
||||
? kDarkBlue
|
||||
: datas.status == 'rejected'
|
||||
? kPink
|
||||
: Colors.grey,
|
||||
),
|
||||
),
|
||||
Divider(),
|
||||
Text(
|
||||
'ID: ${datas.id}',
|
||||
style: TextStyle(
|
||||
color: kDarkBlue,
|
||||
color: datas.repair == 1
|
||||
? kPink
|
||||
: datas.status == 'approved'
|
||||
? kDarkBlue
|
||||
: datas.status == 'rejected'
|
||||
? kPink
|
||||
: Colors.grey,
|
||||
fontWeight: FontWeight.w700,
|
||||
),
|
||||
),
|
||||
@@ -346,10 +364,22 @@ class MyItemsDetailsDataBox extends StatelessWidget {
|
||||
Container(
|
||||
width: 45 * _deviceBlockSize,
|
||||
child: Text(
|
||||
datas.status == 'approved' ? 'Success' : 'Failure',
|
||||
datas.repair == 1
|
||||
? 'Pending...'
|
||||
: datas.status == 'approved'
|
||||
? 'Success'
|
||||
: datas.status == 'rejected'
|
||||
? 'Failure'
|
||||
: 'Pending...',
|
||||
style: TextStyle(
|
||||
fontWeight: FontWeight.w700,
|
||||
color: datas.status == 'approved' ? kDarkBlue : kPink,
|
||||
color: datas.repair == 1
|
||||
? kPink
|
||||
: datas.status == 'approved'
|
||||
? kDarkBlue
|
||||
: datas.status == 'rejected'
|
||||
? kPink
|
||||
: Colors.grey,
|
||||
),
|
||||
overflow: TextOverflow.clip,
|
||||
),
|
||||
@@ -647,7 +677,7 @@ class MyItemsDetailsDataBox extends StatelessWidget {
|
||||
await Provider.of<MyItemProvider>(
|
||||
context,
|
||||
listen: false)
|
||||
.repairItems(datas.id, 'suspended')
|
||||
.repairItems(datas.id)
|
||||
.then(
|
||||
(value) {
|
||||
Navigator.of(context).pop();
|
||||
@@ -726,8 +756,7 @@ class MyItemsDetailsDataBox extends StatelessWidget {
|
||||
onTap: () {
|
||||
Provider.of<MyItemProvider>(context,
|
||||
listen: false)
|
||||
.repairItems(
|
||||
datas.id, 'suspended')
|
||||
.repairItems(datas.id)
|
||||
.then(
|
||||
(value) {
|
||||
Navigator.of(context).pop();
|
||||
|
||||
Reference in New Issue
Block a user