Updates & fixes

merge-requests/5/head
haroon amjad 3 years ago
parent a797e2b2c6
commit f6c9b6dce9

@ -44,22 +44,22 @@ class POHeader {
String? cOMMENTS;
String? cREATIONDATE;
String? cURRENCYNAME;
int? cUSTOMDUTY;
int? dISCOUNTAMOUNT;
int? gROSSAMOUNT;
num? cUSTOMDUTY;
num? dISCOUNTAMOUNT;
num? gROSSAMOUNT;
String? lOCCUR;
int? lOCCURTOTPOAMT;
int? oTHERCHARGES;
num? lOCCURTOTPOAMT;
num? oTHERCHARGES;
String? pAYMENTTERMS;
String? pONUMBER;
String? pREPARER;
String? qUOTATIONDATE;
String? qUOTATIONNUMBER;
int? sALESTAX;
int? sHIPHANDLE;
num? sALESTAX;
num? sHIPHANDLE;
String? sHIPTOLOCATIONNAME;
int? tOTALPODISCOUNT;
int? tOTPOAMT;
num? tOTALPODISCOUNT;
num? tOTPOAMT;
String? tOTPOAMTWORD;
String? vENDORNAME;
String? vENDORSITECODE;

@ -4,7 +4,7 @@ import 'package:mohem_flutter_app/models/itg_forms_models/wf_history_model.dart'
class ITGRequest {
List<AllowedActions>? allowedActions;
Null? attachments;
List<dynamic>? attachments;
List<FieldGoups>? fieldGoups;
Null? grantFields;
List<WFHistory>? wFHistory;

@ -1,10 +1,10 @@
class GetDeductionsList {
int? aMOUNT;
num? aMOUNT;
String? eLEMENTNAME;
int? fROMROWNUM;
int? nOOFROWS;
int? rOWNUM;
int? tOROWNUM;
num? fROMROWNUM;
num? nOOFROWS;
num? rOWNUM;
num? tOROWNUM;
GetDeductionsList(
{this.aMOUNT,

@ -1,10 +1,10 @@
class GetEarningsList {
int? aMOUNT;
num? aMOUNT;
String? eLEMENTNAME;
int? fROMROWNUM;
int? nOOFROWS;
int? rOWNUM;
int? tOROWNUM;
num? fROMROWNUM;
num? nOOFROWS;
num? rOWNUM;
num? tOROWNUM;
GetEarningsList(
{this.aMOUNT,

@ -1,10 +1,10 @@
class GetSummaryOfPaymentList {
int? tOTALDEDUCTIONSAMOUNT;
int? tOTALDEDUCTIONSPERCENTAGE;
int? tOTALEARNINGSAMOUNT;
int? tOTALEARNINGSPERCENTAGE;
int? tOTALPAYAMOUNT;
int? tOTALPAYPERCENTAGE;
num? tOTALDEDUCTIONSAMOUNT;
num? tOTALDEDUCTIONSPERCENTAGE;
num? tOTALEARNINGSAMOUNT;
num? tOTALEARNINGSPERCENTAGE;
num? tOTALPAYAMOUNT;
num? tOTALPAYPERCENTAGE;
GetSummaryOfPaymentList(
{this.tOTALDEDUCTIONSAMOUNT,

@ -73,7 +73,7 @@ class ServicesWidget extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.end,
children: [
Expanded(
child: data.homeMenus![parentIndex].menuEntiesList[index].prompt!.toText11(isBold: true),
child: data.homeMenus![parentIndex].menuEntiesList[index].prompt!.toText10(isBold: true),
),
SvgPicture.asset("assets/images/arrow_next.svg").paddingOnly(bottom: 4)
],

@ -67,7 +67,7 @@ class _RequestSubmitScreenState extends State<RequestSubmitScreen> {
}
void submitRequest() async {
try {
// try {
Utils.showLoading(context);
List<Map<String, dynamic>> list = [];
if (attachmentFiles.isNotEmpty) {
@ -134,10 +134,10 @@ class _RequestSubmitScreenState extends State<RequestSubmitScreen> {
Utils.showToast(LocaleKeys.yourRequestHasBeenSubmittedForApprovals.tr(), longDuration: true);
Navigator.of(context).popUntil((route) => route.settings.name == AppRoutes.dashboard);
Navigator.pushNamed(context, AppRoutes.workList);
} catch (ex) {
Utils.hideLoading(context);
Utils.handleException(ex, context, null);
}
// } catch (ex) {
// Utils.hideLoading(context);
// Utils.handleException(ex, context, null);
// }
}
@override

@ -40,7 +40,7 @@ class _MonthlyPaySlipScreenState extends State<MonthlyPaySlipScreen> {
}
void getData() async {
try {
// try {
Utils.showLoading(context);
paySlipList = await MonthlyPaySlipApiClient().getPaySlip();
if (paySlipList.isNotEmpty) {
@ -49,14 +49,14 @@ class _MonthlyPaySlipScreenState extends State<MonthlyPaySlipScreen> {
}
Utils.hideLoading(context);
setState(() {});
} catch (ex) {
Utils.hideLoading(context);
Utils.handleException(ex, context, null);
}
// } catch (ex) {
// Utils.hideLoading(context);
// Utils.handleException(ex, context, null);
// }
}
Future getDataByActionContextID(int actionContextID, {bool showLoading = false}) async {
try {
// try {
if (showLoading) {
Utils.showLoading(context);
}
@ -74,12 +74,12 @@ class _MonthlyPaySlipScreenState extends State<MonthlyPaySlipScreen> {
Utils.hideLoading(context);
setState(() {});
}
} catch (ex) {
if (showLoading) {
Utils.hideLoading(context);
}
Utils.handleException(ex, context, null);
}
// } catch (ex) {
// if (showLoading) {
// Utils.hideLoading(context);
// }
// Utils.handleException(ex, context, null);
// }
}
@override

@ -190,9 +190,10 @@ class _AddItemDetailsFragmentState extends State<AddItemDetailsFragment> {
6.width,
SimpleButton(LocaleKeys.add.tr(), () {
ImageOptions.showImageOptionsNew(context, (String image, File file) {
// setState(() {
// images.add(image);
// });
setState(() {
images.add(image);
Navigator.of(context).pop();
});
});
}, fontSize: 14),
],
@ -243,41 +244,43 @@ class _AddItemDetailsFragmentState extends State<AddItemDetailsFragment> {
Future<void> getAdDetails() async {
// todo need to change this method later , its not a good approach to do it like this.
String details = await Utils.getStringFromPrefs(SharedPrefsConsts.editItemForSale);
var body = json.decode(details);
if(details.isNotEmpty) {
var body = json.decode(details);
GetRegionsList selectedRegionAd = GetRegionsList();
GetRegionsList selectedRegionAd = GetRegionsList();
GetSaleCategoriesList selectedSaleCategoryAd = GetSaleCategoriesList();
GetSaleCategoriesList selectedSaleCategoryAd = GetSaleCategoriesList();
itemTitle = body["itemTitle"];
itemDescription = body["itemDescription"];
selectedItemCondition = body["itemCondition"].toString().toLowerCase();
selectedRegionAd.regionID = body["selectedRegion"]["regionID"];
selectedRegionAd.regionName = body["selectedRegion"]["regionName"];
selectedRegion = selectedRegionAd;
itemPrice = body["itemPrice"];
selectedSaleCategoryAd.categoryID = body["selectedSaleCategory"]["categoryID"];
selectedSaleCategoryAd.title = body["selectedSaleCategory"]["title"];
if (body["itemPhotos"].length != 0) {
images.add(body["itemPhotos"][0]);
}
ItemReviewModel itemReviewModel =
ItemReviewModel(body["itemTitle"], body["itemDescription"], body["itemCondition"].toString().toLowerCase(), selectedRegionAd, body["itemPrice"], images, selectedSaleCategoryAd);
itemTitle = body["itemTitle"];
itemDescription = body["itemDescription"];
selectedItemCondition = body["itemCondition"].toString().toLowerCase();
selectedRegionAd.regionID = body["selectedRegion"]["regionID"];
selectedRegionAd.regionName = body["selectedRegion"]["regionName"];
selectedRegion = selectedRegionAd;
itemPrice = body["itemPrice"];
selectedSaleCategoryAd.categoryID = body["selectedSaleCategory"]["categoryID"];
selectedSaleCategoryAd.title = body["selectedSaleCategory"]["title"];
if (body["itemPhotos"].length != 0) {
images.add(body["itemPhotos"][0]);
}
ItemReviewModel itemReviewModel =
ItemReviewModel(body["itemTitle"], body["itemDescription"], body["itemCondition"].toString().toLowerCase(), selectedRegionAd, body["itemPrice"], images, selectedSaleCategoryAd);
AddItemDetailsFragment.itemReviewModel = itemReviewModel;
SelectCategoryFragment.selectedSaleCategory = selectedSaleCategoryAd;
AddItemDetailsFragment.itemReviewModel = itemReviewModel;
SelectCategoryFragment.selectedSaleCategory = selectedSaleCategoryAd;
}
}
void getRegions() async {
try {
// try {
Utils.showLoading(context);
getRegionsList = await ItemsForSaleApiClient().getRegions();
await getAdDetails();
Utils.hideLoading(context);
setState(() {});
} catch (ex) {
Utils.hideLoading(context);
Utils.handleException(ex, context, null);
}
// } catch (ex) {
// Utils.hideLoading(context);
// Utils.handleException(ex, context, null);
// }
}
}

@ -56,7 +56,7 @@ class _ItgDetailScreenState extends State<ItgDetailScreen> {
ITGRequest? itgRequest;
void getItgData() async {
try {
// try {
Utils.showLoading(context);
itgRequest = await WorkListApiClient().getITGFormDetails(requestDetails!.requestType!, requestDetails!.iD!, requestDetails!.itemID!, "");
allowedActionList = itgRequest?.allowedActions ?? [];
@ -68,10 +68,10 @@ class _ItgDetailScreenState extends State<ItgDetailScreen> {
}
Utils.hideLoading(context);
setState(() {});
} catch (ex) {
Utils.hideLoading(context);
Utils.handleException(ex, context, null);
}
// } catch (ex) {
// Utils.hideLoading(context);
// Utils.handleException(ex, context, null);
// }
}
void getDataFromState() {

@ -209,6 +209,7 @@ class _WorkListDetailScreenState extends State<WorkListDetailScreen> {
workListData: workListData,
itemCreationHeader: getItemCreationNtfBody?.itemCreationHeader ?? [],
getStampMsNotifications: getStampMsNotifications,
getStampNsNotifications: getStampNsNotifications,
getEitCollectionNotificationBodyList: getEitCollectionNotificationBodyList,
getPhonesNotificationBodyList: getPhonesNotificationBodyList,
getBasicDetNtfBodyList: getBasicDetNtfBodyList,

@ -28,9 +28,9 @@ class AttachmentsFragment extends StatelessWidget {
(getAttachmentList[index].fILENAME?.capitalizeFirstofEach ?? "").toText16().expanded,
],
).objectContainerView().onPress(() async {
print("calling");
String path = await _createFileFromString(getAttachmentList[index].fILEDATA ?? "", getAttachmentList[index].fILECONTENTTYPE ?? "");
OpenFile.open(path);
// print("calling");
// String path = await _createFileFromString(getAttachmentList[index].fILEDATA ?? "", getAttachmentList[index].fILECONTENTTYPE ?? "");
// OpenFile.open(path);
});
},
separatorBuilder: (BuildContext context, int index) => 12.height,

@ -43,12 +43,12 @@ class _DetailFragmentState extends State<DetailFragment> {
mainAxisSize: MainAxisSize.min,
children: [
ItemDetailView(LocaleKeys.employeeNumber.tr(), widget.memberInformationListModel!.eMPLOYEENUMBER ?? ""),
ItemDetailView(LocaleKeys.employeeName.tr(), (AppState().isArabic(context) ? widget.memberInformationListModel!.eMPLOYEENAMEAr : widget.memberInformationListModel!.eMPLOYEENAMEEn) ?? ""),
ItemDetailView(LocaleKeys.name.tr(), (AppState().isArabic(context) ? widget.memberInformationListModel!.eMPLOYEENAMEAr : widget.memberInformationListModel!.eMPLOYEENAMEEn) ?? ""),
ItemDetailView(LocaleKeys.jobTitle.tr(), makePositionName(widget.memberInformationListModel!.pOSITIONNAME ?? "")),
ItemDetailView(LocaleKeys.grade.tr(), widget.memberInformationListModel!.gRADENAME ?? ""),
ItemDetailView(LocaleKeys.jobCategory.tr(), makePositionName(widget.memberInformationListModel!.pOSITIONNAME ?? "")),
ItemDetailView(LocaleKeys.category.tr(), widget.memberInformationListModel!.eMPLOYMENTCATEGORYMEANING ?? ""),
ItemDetailView(LocaleKeys.employeeEmailAddress.tr(), widget.memberInformationListModel!.eMPLOYEEEMAILADDRESS ?? ""),
ItemDetailView(LocaleKeys.email.tr(), widget.memberInformationListModel!.eMPLOYEEEMAILADDRESS ?? ""),
ItemDetailView(LocaleKeys.payrollBranch.tr(), widget.memberInformationListModel!.pAYROLLNAME ?? ""),
],
).objectContainerView(),

@ -114,7 +114,7 @@ class InfoFragment extends StatelessWidget {
ItemDetailView(LocaleKeys.totalPOAmountInWords.tr(), poHeaderList[index].tOTPOAMTWORD ?? ""),
],
).objectContainerView(),
separatorBuilder: (cxt, index) => 4.height,
separatorBuilder: (cxt, index) => 1.divider,
itemCount: poHeaderList.length);
}
@ -150,7 +150,7 @@ class InfoFragment extends StatelessWidget {
ItemDetailView(LocaleKeys.approvedSwipeEndReason.tr(), list[index].aPPROVEDENDREASONDESC.toString()),
],
),
separatorBuilder: (cxt, index) => 18.height,
separatorBuilder: (cxt, index) => 1.divider.paddingOnly(top: 8, bottom: 8),
itemCount: list.length);
}
@ -163,11 +163,11 @@ class InfoFragment extends StatelessWidget {
children: [
ItemDetailView(LocaleKeys.employeeNumber.tr(), list[index].eMPLOYEENUMBER.toString()),
ItemDetailView(LocaleKeys.assignmentNumber.tr(), list[index].aSSIGNMENTNUMBER.toString()),
ItemDetailView(LocaleKeys.employeeName.tr(), list[index].eMPLOYEENAME.toString()),
ItemDetailView(LocaleKeys.name.tr(), list[index].eMPLOYEENAME.toString()),
ItemDetailView(LocaleKeys.scheduleDate.tr(), DateUtil.formatDateToDate(DateUtil.convertStringToDate(list[index].sCHEDULEDATE.toString()), false)),
],
),
separatorBuilder: (cxt, index) => 18.height,
separatorBuilder: (cxt, index) => 1.divider.paddingOnly(top: 8, bottom: 8),
itemCount: list.length);
}

@ -26,9 +26,9 @@ class AttachmentOptions extends StatelessWidget {
padding: const EdgeInsets.only(top: 21, bottom: 14),
shrinkWrap: true,
children: [
itemView("open_camera.svg", "Open\nCamera"),
itemView("gallery.svg", "Upload from\nGallery"),
itemView("files.svg", "Upload from\nFiles"),
itemView("open_camera.svg", "Open\nCamera", onCameraTap),
itemView("gallery.svg", "Upload from\nGallery", onGalleryTap),
itemView("files.svg", "Upload from\nFiles", onFilesTap),
],
)
],
@ -36,19 +36,22 @@ class AttachmentOptions extends StatelessWidget {
);
}
Widget itemView(String icon, String title) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
SvgPicture.asset("assets/images/$icon"),
title.toText11(isBold: true),
],
).paddingOnly(left: 13, right: 13, top: 16, bottom: 12).expanded.objectContainerBorderView(
disablePadding: true,
radius: 10,
color: MyColors.greyF7Color.withOpacity(.48),
borderColor: MyColors.lightGreyE5Color.withOpacity(.48),
);
Widget itemView(String icon, String title, VoidCallback onTap) {
return InkWell(
onTap: onTap,
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: [
SvgPicture.asset("assets/images/$icon"),
title.toText11(isBold: true),
],
).paddingOnly(left: 13, right: 13, top: 16, bottom: 12).expanded.objectContainerBorderView(
disablePadding: true,
radius: 10,
color: MyColors.greyF7Color.withOpacity(.48),
borderColor: MyColors.lightGreyE5Color.withOpacity(.48),
),
);
}
}

@ -15,9 +15,31 @@ class ImageOptions {
context,
child: AttachmentOptions(
onCameraTap: () async {
PickedFile? path = await ImagePicker.platform.pickImage(source: ImageSource.camera, imageQuality: 20);
if (Platform.isAndroid) {
cameraImageAndroid(image);
} else {
File _image = File((await ImagePicker.platform.pickImage(source: ImageSource.camera, imageQuality: 20))?.path ?? "");
String fileName = _image.path;
var bytes = File(fileName).readAsBytesSync();
String base64Encode = base64.encode(bytes);
if (base64Encode != null) {
image(base64Encode, _image);
}
}
},
onGalleryTap: () async {
if (Platform.isAndroid) {
galleryImageAndroid(image);
} else {
File _image = File((await ImagePicker.platform.pickImage(source: ImageSource.gallery, imageQuality: 20))?.path ?? "");
String fileName = _image.path;
var bytes = File(fileName).readAsBytesSync();
String base64Encode = base64.encode(bytes);
if (base64Encode != null) {
image(base64Encode, _image);
}
}
},
onGalleryTap: () {},
onFilesTap: () async {
FilePickerResult? result = await FilePicker.platform.pickFiles();
},

Loading…
Cancel
Save