Merge branch 'zaid_development_new' into 'main_latest_merged'

Zaid development new

See merge request haroon6138/cloudsolutions-atoms!24
merge-requests/25/merge
Sikander Saleem 3 years ago
commit a9c54c9d7a

@ -11,8 +11,7 @@ class URLs{
set host(String value) => _host = value; set host(String value) => _host = value;
static String getFileUrl(String file) => file == null || file.isEmpty static String getFileUrl(String file) => file == null || file.isEmpty ? null : "$_host/attachment/$file";
? null : "$_host/attachment/$file";
// API Routes // API Routes
static get login => "$_baseUrl/MobileAuth/Login"; // post static get login => "$_baseUrl/MobileAuth/Login"; // post
@ -39,7 +38,7 @@ class URLs{
static get getRecentNotifications => "$_baseUrl/return/user/recent/notification"; // get static get getRecentNotifications => "$_baseUrl/return/user/recent/notification"; // get
static get createRequest => "$_baseUrl/CallRequest/AddCallRequest"; // get static get createRequest => "$_baseUrl/CallRequest/AddCallRequest"; // get
static get createReport => "$_baseUrl/handle/create/report/issue"; // get static get createReport => "$_baseUrl/handle/create/report/issue"; // get
static get updateRequestDate => "$_baseUrl/handle/update/request"; // get static get updateRequestDate => "$_baseUrl/CallRequest/UpdateCallRequest"; // get
// service report // service report
static get createServiceReport => "$_baseUrl/WorkOrder/AddWorkOrder"; // get static get createServiceReport => "$_baseUrl/WorkOrder/AddWorkOrder"; // get
@ -83,5 +82,4 @@ class URLs{
static get getPentryStatus => "$_baseUrl/Lookups/GetLookup?lookupEnum=401"; // get static get getPentryStatus => "$_baseUrl/Lookups/GetLookup?lookupEnum=401"; // get
// contacts // contacts
static get getPentryContacts => "$_baseUrl/handle/return/all/contacts"; // get static get getPentryContacts => "$_baseUrl/handle/return/all/contacts"; // get
} }

@ -10,9 +10,8 @@ import 'package:test_sa/models/visits/visits_group.dart';
import 'package:test_sa/models/visits/visits_search.dart'; import 'package:test_sa/models/visits/visits_search.dart';
class PreventiveMaintenanceVisitsProvider extends ChangeNotifier { class PreventiveMaintenanceVisitsProvider extends ChangeNotifier {
// number of items call in each request // number of items call in each request
final pageItemNumber = 50; final pageItemNumber = 10;
//reset provider data //reset provider data
void reset() { void reset() {
@ -49,24 +48,16 @@ class PreventiveMaintenanceVisitsProvider extends ChangeNotifier{
@required User user, @required User user,
// VisitsSearch visitsSearch, // VisitsSearch visitsSearch,
}) async { }) async {
if(isLoading == true) if (isLoading == true) return -2;
return -2;
isLoading = true; isLoading = true;
Response response; Response response;
//userId = 397.toString(); // testing id to view data //userId = 397.toString(); // testing id to view data
try { try {
response = await get( response = await get(
Uri.parse( Uri.parse(
host + URLs.getPreventiveMaintenanceVisits "${host + URLs.getPreventiveMaintenanceVisits}?uid=${user.id}&token=${user.token}&page=${(visits?.length ?? 0) ~/ pageItemNumber}${visitsSearch?.toMap()}",
+"?uid=${user.id}"
"&token=${user.token}"
"&page=${(visits?.length ?? 0) ~/pageItemNumber}"
// +visitsSearch?.toMap() ?? ""
), ),
headers: { headers: {"Content-Type": "application/json; charset=utf-8"});
"Content-Type":"application/json; charset=utf-8"
}
);
} catch (error) { } catch (error) {
isLoading = false; isLoading = false;
stateCode = -1; stateCode = -1;
@ -77,10 +68,8 @@ class PreventiveMaintenanceVisitsProvider extends ChangeNotifier{
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {
// client's request was successfully received // client's request was successfully received
List requestsListJson = json.decode(utf8.decode(response.bodyBytes)); List requestsListJson = json.decode(utf8.decode(response.bodyBytes));
List<Visit> _visits = requestsListJson.map( List<Visit> _visits = requestsListJson.map((request) => Visit.fromJson(request)).toList();
(request) => Visit.fromJson(request)).toList(); if (visits == null) visits = [];
if(visits == null)
visits = [];
visits.addAll(_visits); visits.addAll(_visits);
if (_visits.length == pageItemNumber) { if (_visits.length == pageItemNumber) {
nextPage = true; nextPage = true;
@ -109,8 +98,7 @@ class PreventiveMaintenanceVisitsProvider extends ChangeNotifier{
// body["uid"] = user.id; // body["uid"] = user.id;
//userId = 397.toString(); // testing id to view data //userId = 397.toString(); // testing id to view data
try { try {
response = await ApiManager.instance.put( response = await ApiManager.instance.put(URLs.updatePreventiveMaintenanceVisits, body: body);
URLs.updatePreventiveMaintenanceVisits, body: body);
stateCode = response.statusCode; stateCode = response.statusCode;
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {

@ -15,9 +15,8 @@ import 'package:test_sa/models/timer_model.dart';
import 'package:test_sa/models/user.dart'; import 'package:test_sa/models/user.dart';
class ServiceRequestsProvider extends ChangeNotifier { class ServiceRequestsProvider extends ChangeNotifier {
// number of items call in each request // number of items call in each request
final pageItemNumber = 50; final pageItemNumber = 10;
//reset provider data //reset provider data
void reset() { void reset() {
@ -54,8 +53,7 @@ class ServiceRequestsProvider extends ChangeNotifier{
@required User user, @required User user,
@required int hospitalId, @required int hospitalId,
}) async { }) async {
if(isLoading == true) if (isLoading == true) return -2;
return -2;
isLoading = true; isLoading = true;
if (serviceRequests == null) notifyListeners(); if (serviceRequests == null) notifyListeners();
Response response; Response response;
@ -74,8 +72,7 @@ class ServiceRequestsProvider extends ChangeNotifier{
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {
// client's request was successfully received // client's request was successfully received
List requestsListJson = json.decode(response.body)["data"]; List requestsListJson = json.decode(response.body)["data"];
List<ServiceRequest> serviceRequestsPage = requestsListJson.map( List<ServiceRequest> serviceRequestsPage = requestsListJson.map((request) => ServiceRequest.fromJson(request)).toList();
(request) => ServiceRequest.fromJson(request)).toList();
serviceRequests ??= []; serviceRequests ??= [];
serviceRequests.addAll(serviceRequestsPage); serviceRequests.addAll(serviceRequestsPage);
if (serviceRequestsPage.length == pageItemNumber) { if (serviceRequestsPage.length == pageItemNumber) {
@ -87,14 +84,12 @@ class ServiceRequestsProvider extends ChangeNotifier{
isLoading = false; isLoading = false;
notifyListeners(); notifyListeners();
return response.statusCode; return response.statusCode;
} catch (error) { } catch (error) {
isLoading = false; isLoading = false;
stateCode = -1; stateCode = -1;
notifyListeners(); notifyListeners();
return -1; return -1;
} }
} }
Future<ServiceRequest> getSingleServiceRequest({ Future<ServiceRequest> getSingleServiceRequest({
@ -111,15 +106,14 @@ class ServiceRequestsProvider extends ChangeNotifier{
Response response; Response response;
try { try {
response = await get( response = await get(Uri.parse(
Uri.parse( host +
host+URLs.getSingleServiceRequest URLs.getSingleServiceRequest +
+'?call_nid=$requestId' '?call_nid=$requestId'
'$userData',) '$userData',
); ));
} catch (error) { } catch (error) {
throw(HttpStatusManger.getStatusMessage( throw (HttpStatusManger.getStatusMessage(status: -1, subtitle: subtitle));
status: -1, subtitle: subtitle));
} }
// If the call to the server was successful, parse the JSON. // If the call to the server was successful, parse the JSON.
@ -129,10 +123,8 @@ class ServiceRequestsProvider extends ChangeNotifier{
List<ServiceRequest> _requests = jsonList.map((i) => ServiceRequest.fromJson(i)).toList(); List<ServiceRequest> _requests = jsonList.map((i) => ServiceRequest.fromJson(i)).toList();
return _requests[0]; return _requests[0];
} else { } else {
throw(HttpStatusManger.getStatusMessage( throw (HttpStatusManger.getStatusMessage(status: response.statusCode, subtitle: subtitle));
status: response.statusCode, subtitle: subtitle));
} }
} }
Future<int> createRequest({ Future<int> createRequest({
@ -140,12 +132,8 @@ class ServiceRequestsProvider extends ChangeNotifier{
@required User user, @required User user,
@required ServiceRequest serviceRequest, @required ServiceRequest serviceRequest,
}) async { }) async {
var body = { var body = {
"callCreatedBy": { "callCreatedBy": {"id": user.id, "name": user.userName},
"id":user.id,
"name":user.userName
},
"assets": serviceRequest.deviceId == null ? [] : [serviceRequest.deviceId], "assets": serviceRequest.deviceId == null ? [] : [serviceRequest.deviceId],
"requestedDate": DateTime.now().toIso8601String(), "requestedDate": DateTime.now().toIso8601String(),
"requestedTime": DateTime.now().toIso8601String(), "requestedTime": DateTime.now().toIso8601String(),
@ -162,27 +150,16 @@ class ServiceRequestsProvider extends ChangeNotifier{
} }
Response response; Response response;
try { try {
response = await ApiManager.instance.post( response = await ApiManager.instance.post(URLs.createRequest, body: body);
URLs.createRequest,
body: body
);
stateCode = response.statusCode; stateCode = response.statusCode;
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {
if(serviceRequests != null) if (serviceRequests != null) serviceRequests.insert(0, ServiceRequest.fromJson(json.decode(utf8.decode(response.bodyBytes))[0]));
serviceRequests.insert(
0,
ServiceRequest.fromJson(
json.decode(utf8.decode(response.bodyBytes))[0]
)
);
notifyListeners(); notifyListeners();
} }
return response.statusCode; return response.statusCode;
} catch (error) { } catch (error) {
return -1; return -1;
} }
} }
Future<int> createIssueReport({ Future<int> createIssueReport({
@ -201,15 +178,11 @@ class ServiceRequestsProvider extends ChangeNotifier{
); );
stateCode = response.statusCode; stateCode = response.statusCode;
if(response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {}
}
return response.statusCode; return response.statusCode;
} catch (error) { } catch (error) {
return -1; return -1;
} }
} }
Future<int> updateDate({ Future<int> updateDate({
@ -220,18 +193,15 @@ class ServiceRequestsProvider extends ChangeNotifier{
@required ServiceRequest request, @required ServiceRequest request,
}) async { }) async {
Response response; Response response;
Map<String,String> body = {}; var body = {
body["uid"] = user.id; "callCreatedBy": {"id": user.id, "name": user.userName},
body["token"] = user.token; "assets": request.deviceId == null ? [] : [request.deviceId],
body["nid"] = request.id; "requestedDate": newDate,
if(newDate != null) body["date"] = newDate; "requestedTime": newDate,
if(employee != null) body["ass_emp"] = employee.id.toString(); };
try { try {
response = await post( response = await ApiManager.instance.put(
Uri.parse( URLs.updateRequestDate,
//host+
URLs.updateRequestDate
),
body: body, body: body,
); );
stateCode = response.statusCode; stateCode = response.statusCode;
@ -240,11 +210,9 @@ class ServiceRequestsProvider extends ChangeNotifier{
notifyListeners(); notifyListeners();
} }
return response.statusCode; return response.statusCode;
} catch (error) { } catch (error) {
return -1; return -1;
} }
} }
Future<int> createServiceReport({ Future<int> createServiceReport({
@ -254,15 +222,12 @@ class ServiceRequestsProvider extends ChangeNotifier{
@required ServiceRequest request, @required ServiceRequest request,
}) async { }) async {
Response response; Response response;
try { try {
Map<String, dynamic> body = report.toMap(request); Map<String, dynamic> body = report.toMap(request);
// body["uid"] = user.id; // body["uid"] = user.id;
// body["token"] = user.token; // body["token"] = user.token;
response = await ApiManager.instance.post( response = await ApiManager.instance.post(URLs.createServiceReport, body: body);
URLs.createServiceReport, print(response.body);
body: body
);
// response = await post( // response = await post(
// Uri.parse( // Uri.parse(
// host+URLs.createServiceReport), // host+URLs.createServiceReport),
@ -275,11 +240,9 @@ class ServiceRequestsProvider extends ChangeNotifier{
notifyListeners(); notifyListeners();
} }
return response.statusCode; return response.statusCode;
} catch (error) { } catch (error) {
return -1; return -1;
} }
} }
Future<int> createDuplicatedReport({ Future<int> createDuplicatedReport({
@ -296,10 +259,7 @@ class ServiceRequestsProvider extends ChangeNotifier{
try { try {
response = await get( response = await get(
Uri.parse( Uri.parse(host + URLs.createDuplicatedReport + "?nid=${request.id}" + userData),
host+URLs.createDuplicatedReport
+"?nid=${request.id}"
+userData),
); );
stateCode = response.statusCode; stateCode = response.statusCode;
@ -309,12 +269,9 @@ class ServiceRequestsProvider extends ChangeNotifier{
notifyListeners(); notifyListeners();
} }
return response.statusCode; return response.statusCode;
} catch (error) { } catch (error) {
return -1; return -1;
} }
} }
Future<int> updateServiceReport({ Future<int> updateServiceReport({
@ -333,10 +290,7 @@ class ServiceRequestsProvider extends ChangeNotifier{
Map<String, dynamic> body = report.toMap(request); Map<String, dynamic> body = report.toMap(request);
// body["uid"] = user.id; // body["uid"] = user.id;
// body["token"] = user.token; // body["token"] = user.token;
response = await ApiManager.instance.put( response = await ApiManager.instance.put(URLs.updateServiceReport, body: body);
URLs.updateServiceReport,
body: body
);
// response = await post( // response = await post(
// Uri.parse( // Uri.parse(
// host+URLs.updateServiceReport), // host+URLs.updateServiceReport),
@ -349,11 +303,9 @@ class ServiceRequestsProvider extends ChangeNotifier{
notifyListeners(); notifyListeners();
} }
return response.statusCode; return response.statusCode;
} catch (error) { } catch (error) {
return -1; return -1;
} }
} }
Future<int> updateServiceReportTimer({ Future<int> updateServiceReportTimer({
@ -373,8 +325,7 @@ class ServiceRequestsProvider extends ChangeNotifier{
body["report_id"] = request.reportID; body["report_id"] = request.reportID;
try { try {
response = await post( response = await post(
Uri.parse( Uri.parse(host + URLs.updateServiceReport),
host+URLs.updateServiceReport),
body: body, body: body,
); );
//stateCode = response.statusCode; //stateCode = response.statusCode;
@ -384,12 +335,9 @@ class ServiceRequestsProvider extends ChangeNotifier{
// notifyListeners(); // notifyListeners();
} }
return response.statusCode; return response.statusCode;
} catch (error) { } catch (error) {
return -1; return -1;
} }
} }
Future<ServiceReport> getSingleServiceReport({ Future<ServiceReport> getSingleServiceReport({
@ -398,29 +346,21 @@ class ServiceRequestsProvider extends ChangeNotifier{
@required User user, @required User user,
@required Subtitle subtitle, @required Subtitle subtitle,
}) async { }) async {
Response response; Response response;
try { try {
response = await ApiManager.instance.get( response = await ApiManager.instance.get(
URLs.getServiceReport + "?workOrderId=$reportId", URLs.getServiceReport + "?workOrderId=$reportId",
); );
} catch (error) { } catch (error) {
throw(HttpStatusManger.getStatusMessage( throw (HttpStatusManger.getStatusMessage(status: -1, subtitle: subtitle));
status: -1, subtitle: subtitle));
} }
// If the call to the server was successful, parse the JSON. // If the call to the server was successful, parse the JSON.
if (response.statusCode >= 200 && response.statusCode < 300) { if (response.statusCode >= 200 && response.statusCode < 300) {
// If the call to the server was successful, parse the JSON. // If the call to the server was successful, parse the JSON.
return ServiceReport.fromJson( return ServiceReport.fromJson(json.decode(response.body)["data"], reportId);
json.decode(response.body)["data"],reportId);
} else { } else {
throw(HttpStatusManger.getStatusMessage( throw (HttpStatusManger.getStatusMessage(status: response.statusCode, subtitle: subtitle));
status: response.statusCode, subtitle: subtitle));
} }
} }
} }

@ -7,7 +7,6 @@ import 'package:test_sa/controllers/api_routes/urls.dart';
import 'package:test_sa/models/user.dart'; import 'package:test_sa/models/user.dart';
class UserProvider extends ChangeNotifier { class UserProvider extends ChangeNotifier {
//reset provider data //reset provider data
void reset() { void reset() {
_user = null; _user = null;
@ -25,7 +24,6 @@ class UserProvider extends ChangeNotifier{
notifyListeners(); notifyListeners();
} }
// when login or register in-process _login = true // when login or register in-process _login = true
// when login or register is done or not start = false // when login or register is done or not start = false
bool _loading = false; bool _loading = false;
@ -45,8 +43,7 @@ class UserProvider extends ChangeNotifier{
@required String host, @required String host,
@required User user, @required User user,
}) async { }) async {
if(_loading == true) if (_loading == true) return -2;
return -2;
_loading = true; _loading = true;
notifyListeners(); notifyListeners();
Response response; Response response;
@ -60,6 +57,7 @@ class UserProvider extends ChangeNotifier{
// client's request was successfully received // client's request was successfully received
_user = User.fromJson(jsonDecode(response.body)); _user = User.fromJson(jsonDecode(response.body));
ApiManager.instance.user = _user; ApiManager.instance.user = _user;
notifyListeners();
return response.statusCode; return response.statusCode;
} }
notifyListeners(); notifyListeners();
@ -81,8 +79,7 @@ class UserProvider extends ChangeNotifier{
@required String host, @required String host,
@required User user, @required User user,
}) async { }) async {
if(_loading == true) if (_loading == true) return -2;
return -2;
_loading = true; _loading = true;
notifyListeners(); notifyListeners();
Response response; Response response;
@ -118,8 +115,7 @@ class UserProvider extends ChangeNotifier{
@required String host, @required String host,
@required User user, @required User user,
}) async { }) async {
if(_loading == true) if (_loading == true) return -2;
return -2;
_loading = true; _loading = true;
notifyListeners(); notifyListeners();
Response response; Response response;
@ -127,12 +123,9 @@ class UserProvider extends ChangeNotifier{
Map<String, dynamic> jsonObject = {}; Map<String, dynamic> jsonObject = {};
jsonObject["uid"] = user.id; jsonObject["uid"] = user.id;
jsonObject["token"] = user.token; jsonObject["token"] = user.token;
if(user.department.id != _user.department.id) if (user.department.id != _user.department.id) jsonObject["department"] = user.department.id;
jsonObject["department"] = user.department.id; if (user.whatsApp != _user.whatsApp) jsonObject["whatsapp"] = user.whatsApp;
if(user.whatsApp != _user.whatsApp) if (user.phoneNumber != _user.phoneNumber) jsonObject["phone"] = user.phoneNumber;
jsonObject["whatsapp"] = user.whatsApp;
if(user.phoneNumber != _user.phoneNumber)
jsonObject["phone"] = user.phoneNumber;
try { try {
response = response = await ApiManager.instance.post( response = response = await ApiManager.instance.post(
URLs.login, URLs.login,
@ -157,5 +150,4 @@ class UserProvider extends ChangeNotifier{
} }
return response.statusCode; return response.statusCode;
} }
} }

@ -12,7 +12,6 @@ class Device{
ModelDefinition modelDefinition; ModelDefinition modelDefinition;
Hospital hospital; Hospital hospital;
Device({ Device({
this.id, this.id,
this.serialNumber, this.serialNumber,
@ -21,14 +20,9 @@ class Device{
// this.brand, // this.brand,
// this.model, // this.model,
this.modelDefinition, this.modelDefinition,
}); });
factory Device.fromJson(Map<String, dynamic> parsedJson) { factory Device.fromJson(Map<String, dynamic> parsedJson) {
return Device( return Device(
id: parsedJson["id"], id: parsedJson["id"],
serialNumber: parsedJson["assetSerialNo"], serialNumber: parsedJson["assetSerialNo"],
@ -60,6 +54,7 @@ class Device{
'modelDefinition': modelDefinition.toJson(), 'modelDefinition': modelDefinition.toJson(),
'site': hospital.toMap(), 'site': hospital.toMap(),
'AssetType': assetType.toMap(), 'AssetType': assetType.toMap(),
"supplier": {"id": 0, "suppliername": "string"},
}; };
} }
} }

@ -27,8 +27,8 @@ class Pentry{
Uint8List localNurseSignature; Uint8List localNurseSignature;
Uint8List localEngineerSignature; Uint8List localEngineerSignature;
Pentry({ Pentry(
this.travelingHours, {this.travelingHours,
this.timer, this.timer,
this.status, this.status,
this.ppmVisitStatus, this.ppmVisitStatus,
@ -43,8 +43,7 @@ class Pentry{
this.signatureNurse, this.signatureNurse,
this.signatureEngineer, this.signatureEngineer,
this.localNurseSignature, this.localNurseSignature,
this.localEngineerSignature this.localEngineerSignature});
});
bool validate() { bool validate() {
if (actualVisitDate == null) return false; if (actualVisitDate == null) return false;
@ -56,8 +55,6 @@ class Pentry{
return true; return true;
} }
Map<String, dynamic> toMap(int visitId) { Map<String, dynamic> toMap(int visitId) {
Map<String, dynamic> map = {}; Map<String, dynamic> map = {};
map["visitStatusId"] = ppmVisitStatus?.id.toString(); map["visitStatusId"] = ppmVisitStatus?.id.toString();
@ -73,9 +70,7 @@ class Pentry{
} }
if (imageFile != null) { if (imageFile != null) {
map["vAttachments"] = [ map["vAttachments"] = [
{ {"attachmentName": (imageFile.path.split("/").last + base64Encode(imageFile.readAsBytesSync()))}
"attachmentName":(imageFile.path.split("/").last+base64Encode(imageFile.readAsBytesSync()))
}
]; ];
} }
@ -89,8 +84,8 @@ class Pentry{
map["vChecklists"] = ppmCheckLists.map((e) => e.toMap(visitId)).toList(); map["vChecklists"] = ppmCheckLists.map((e) => e.toMap(visitId)).toList();
map["vCalibrationTools"] = calibrationTools.map((e) => e.toMap(visitId)).toList(); map["vCalibrationTools"] = calibrationTools.map((e) => e.toMap(visitId)).toList();
map["vKits"] = pmKits.map((e) => e.toMap(visitId)).toList(); map["vKits"] = pmKits.map((e) => e.toMap(visitId)).toList();
map["nurseSignature"] = signatureNurse; map["nurseSignature"] = "${DateTime.now().toIso8601String()}.png|$signatureNurse";
map["engSignature"] = signatureEngineer; map["engSignature"] = "${DateTime.now().toIso8601String()}.png|$signatureEngineer";
return map; return map;
} }
@ -104,23 +99,17 @@ class Pentry{
List<PMKit> pmKits = []; List<PMKit> pmKits = [];
if (map['vKits'] != null) { if (map['vKits'] != null) {
pmKits =(map['vKits'] as List<dynamic>) pmKits = (map['vKits'] as List<dynamic>).map((e) => PMKit.fromMap(e as Map<String, dynamic>)).toList();
.map((e) => PMKit.fromMap(e as Map<String, dynamic>))
.toList();
} }
List<PPMCheckList> ppmCheckLists = []; List<PPMCheckList> ppmCheckLists = [];
if (map['vChecklists'] != null) { if (map['vChecklists'] != null) {
ppmCheckLists =(map['vChecklists'] as List<dynamic>) ppmCheckLists = (map['vChecklists'] as List<dynamic>).map((e) => PPMCheckList.fromMap(e as Map<String, dynamic>)).toList();
.map((e) => PPMCheckList.fromMap(e as Map<String, dynamic>))
.toList();
} }
List<CalibrationTool> calibrationTools = []; List<CalibrationTool> calibrationTools = [];
if (map['vCalibrationTools'] != null) { if (map['vCalibrationTools'] != null) {
calibrationTools =(map['vCalibrationTools'] as List<dynamic>) calibrationTools = (map['vCalibrationTools'] as List<dynamic>).map((e) => CalibrationTool.fromMap(e as Map<String, dynamic>)).toList();
.map((e) => CalibrationTool.fromMap(e as Map<String, dynamic>))
.toList();
} }
return Pentry( return Pentry(
status: Lookup(id: map["taskStatusId"], name: map["taskStatusName"]), status: Lookup(id: map["taskStatusId"], name: map["taskStatusName"]),
@ -128,11 +117,7 @@ class Pentry{
actualVisitDate: DateTime.tryParse(map["actualDate"] ?? ""), actualVisitDate: DateTime.tryParse(map["actualDate"] ?? ""),
expectedVisitDate: DateTime.tryParse(map["expectedDate"] ?? ""), expectedVisitDate: DateTime.tryParse(map["expectedDate"] ?? ""),
travelingHours: map["travelingHours"], travelingHours: map["travelingHours"],
timer: TimerModel( timer: TimerModel(startAt: DateTime.tryParse(map["startDate"] ?? ""), endAt: DateTime.tryParse(map["endDate"] ?? ""), durationInSecond: (int.tryParse(map["workingHours"] ?? "") ?? 0) * 60 * 60),
startAt: DateTime.tryParse(map["startDate"] ?? ""),
endAt: DateTime.tryParse(map["endDate"] ?? ""),
durationInSecond: (int.tryParse(map["workingHours"] ?? "") ?? 0) * 60 *60
),
// contacts: contacts, // contacts: contacts,
ppmCheckLists: ppmCheckLists, ppmCheckLists: ppmCheckLists,
calibrationTools: calibrationTools, calibrationTools: calibrationTools,
@ -170,7 +155,6 @@ class Pentry{
calibrationTools: calibrationTools ?? this.calibrationTools?.map((e) => e.copyWith())?.toList(), calibrationTools: calibrationTools ?? this.calibrationTools?.map((e) => e.copyWith())?.toList(),
pmKits: pmKits ?? this.pmKits.map((e) => e.copyWith()).toList(), pmKits: pmKits ?? this.pmKits.map((e) => e.copyWith()).toList(),
signatureNurse: signatureNurse ?? this.signatureNurse, signatureNurse: signatureNurse ?? this.signatureNurse,
signatureEngineer: signatureEngineer ?? this.signatureEngineer signatureEngineer: signatureEngineer ?? this.signatureEngineer);
);
} }
} }

@ -19,7 +19,7 @@ class PPMCheckList{
return { return {
'id': id ?? 0, 'id': id ?? 0,
"visitId": visitId, "visitId": visitId,
if(status != null) 'taskStatusId': status?.id.toString(), if (status != null) 'taskStatusId': status?.id,
if (title != null) 'task': title, if (title != null) 'task': title,
if (comment != null) 'taskComment': comment, if (comment != null) 'taskComment': comment,
if (measuredValue != null) 'measuredValue': measuredValue, if (measuredValue != null) 'measuredValue': measuredValue,

@ -36,8 +36,8 @@ class ServiceReport {
Uint8List localNurseSignature; Uint8List localNurseSignature;
Uint8List localEngineerSignature; Uint8List localEngineerSignature;
ServiceReport({ ServiceReport(
this.id, {this.id,
this.visitDate, this.visitDate,
this.endDate, this.endDate,
this.assetType, this.assetType,
@ -62,8 +62,7 @@ class ServiceReport {
this.signatureNurse, this.signatureNurse,
this.signatureEngineer, this.signatureEngineer,
this.localNurseSignature, this.localNurseSignature,
this.localEngineerSignature this.localEngineerSignature});
});
Map<String, dynamic> toMap(ServiceRequest request) { Map<String, dynamic> toMap(ServiceRequest request) {
Map<String, dynamic> _map = {}; Map<String, dynamic> _map = {};
@ -108,9 +107,9 @@ class ServiceReport {
//if(invoiceCode != null) _map["invoice_no"] = invoiceCode; //if(invoiceCode != null) _map["invoice_no"] = invoiceCode;
//if(invoiceNumber != null) _map["invoice_code"] = invoiceNumber; //if(invoiceNumber != null) _map["invoice_code"] = invoiceNumber;
if (image != null) { if (image != null) {
_map["attachmentsWorkOrder"]=[{ _map["attachmentsWorkOrder"] = [
"name":image {"name": image}
}]; ];
} }
_map["nurseSignature"] = signatureNurse; _map["nurseSignature"] = signatureNurse;
_map["engSignature"] = signatureEngineer; _map["engSignature"] = signatureEngineer;
@ -143,10 +142,8 @@ class ServiceReport {
if (parsedJson["sparePartsWorkOrders"] != null) { if (parsedJson["sparePartsWorkOrders"] != null) {
if (parsedJson["sparePartsWorkOrders"][0]["id"] != null) { if (parsedJson["sparePartsWorkOrders"][0]["id"] != null) {
List partsList = parsedJson["sparePartsWorkOrders"]; List partsList = parsedJson["sparePartsWorkOrders"];
_parts = partsList.map((e) => Part.fromJson( _parts = partsList.map((e) => Part.fromJson(e["sparePart"], reportJson: e)).toList();
e["sparePart"],reportJson: e)).toList();
} }
} }
return ServiceReport( return ServiceReport(
id: id, id: id,
@ -168,10 +165,7 @@ class ServiceReport {
visitDate: DateTime.tryParse(parsedJson["visitDate"]), visitDate: DateTime.tryParse(parsedJson["visitDate"]),
//workHours: parsedJson["working_hours"], //workHours: parsedJson["working_hours"],
timer: TimerModel( timer: TimerModel(
startAt: DateTime.tryParse(parsedJson["startofWorkTime"]), startAt: DateTime.tryParse(parsedJson["startofWorkTime"]), endAt: DateTime.tryParse(parsedJson["endofWorkTime"]), durationInSecond: ((parsedJson["workingHours"] ?? 0) * 60 * 60).toInt()),
endAt: DateTime.tryParse(parsedJson["endofWorkTime"]),
durationInSecond: ((parsedJson["workingHours"] ?? 0) * 60 *60).toInt()
),
//workPreformed: parsedJson["work_performed"], //workPreformed: parsedJson["work_performed"],
device: Device.fromJson(parsedJson["callRequest"]["asset"]), device: Device.fromJson(parsedJson["callRequest"]["asset"]),
signatureNurse: URLs.getFileUrl(parsedJson["nurseSignature"]), signatureNurse: URLs.getFileUrl(parsedJson["nurseSignature"]),

@ -13,8 +13,6 @@ import 'package:test_sa/views/widgets/app_text_form_field.dart';
import 'package:test_sa/views/widgets/buttons/app_button.dart'; import 'package:test_sa/views/widgets/buttons/app_button.dart';
import 'package:test_sa/views/widgets/loaders/loading_manager.dart'; import 'package:test_sa/views/widgets/loaders/loading_manager.dart';
import '../widgets/buttons/app_outlined_button.dart';
class Login extends StatefulWidget { class Login extends StatefulWidget {
static final String id = "/login"; static final String id = "/login";
@ -115,7 +113,7 @@ class _LoginState extends State<Login> {
user: _user, user: _user,
host: _settingProvider.host, host: _settingProvider.host,
); );
if (status >= 200 && status < 300) { if (status >= 200 && status < 300 && _userProvider.user?.userName != null) {
_settingProvider.setUser(_userProvider.user); _settingProvider.setUser(_userProvider.user);
// if (_userProvider.user.isActive) // if (_userProvider.user.isActive)
Navigator.of(context).pushNamed(LandPage.id); Navigator.of(context).pushNamed(LandPage.id);
@ -124,7 +122,8 @@ class _LoginState extends State<Login> {
} else { } else {
if (status >= 400 && status < 500) return; if (status >= 400 && status < 500) return;
String errorMessage = status == 400 ? _subtitle.wrongEmailOrPassword : HttpStatusManger.getStatusMessage(status: status, subtitle: _subtitle); String errorMessage =
status == 400 || _userProvider.user?.userName == null ? _subtitle.wrongEmailOrPassword : HttpStatusManger.getStatusMessage(status: status, subtitle: _subtitle);
ScaffoldMessenger.of(context).showSnackBar(SnackBar( ScaffoldMessenger.of(context).showSnackBar(SnackBar(
content: Text(errorMessage), content: Text(errorMessage),
)); ));

Loading…
Cancel
Save