Merge branch 'master' of https://gitlab.com/mirza.shafique/mohem_flutter_app into development_sultan

# Conflicts:
#	assets/langs/ar-SA.json
#	assets/langs/en-US.json
#	lib/config/routes.dart
#	lib/models/generic_response_model.dart
#	lib/ui/landing/widget/app_drawer.dart
faiz_marathon_signalR_critical
Sultan Khan 3 years ago
commit 70a7108d9c

@ -18,6 +18,7 @@ analyzer:
avoid_annotating_with_dynamic: error
unnecessary_null_checks: error
unnecessary_brace_in_string_interps: error
unnecessary_final: error
linter:
@ -49,6 +50,7 @@ linter:
unnecessary_null_checks: true
unnecessary_brace_in_string_interps: true
unnecessary_string_interpolations: true
unnecessary_final: true
# avoid_print: false # Uncomment to disable the `avoid_print` rule
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30">
<g id="phone-call_2_" data-name="phone-call (2)" transform="translate(0 0)">
<g id="Group_7730" data-name="Group 7730" transform="translate(0 0)">
<path id="Path_4724" data-name="Path 4724" d="M25.6,4.391A15,15,0,1,0,30,15,15,15,0,0,0,25.6,4.391Zm-2.888,16.5,0,0v0l-.76.755a4,4,0,0,1-3.775,1.08A13.291,13.291,0,0,1,14.32,21a17.834,17.834,0,0,1-3.045-2.455A17.971,17.971,0,0,1,9,15.781a14,14,0,0,1-1.71-3.46,4,4,0,0,1,1-4.085l.89-.89a.635.635,0,0,1,.9,0l0,0,2.81,2.81a.635.635,0,0,1,0,.9l0,0-1.65,1.65a1.345,1.345,0,0,0-.14,1.75,19.3,19.3,0,0,0,1.975,2.305,19.179,19.179,0,0,0,2.6,2.185,1.355,1.355,0,0,0,1.73-.15L19,17.177a.635.635,0,0,1,.9,0l0,0L22.715,20A.635.635,0,0,1,22.717,20.894Z" transform="translate(0 0)" fill="#2bb8a6"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 851 B

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" width="20.438" height="20.438" viewBox="0 0 20.438 20.438">
<g id="new-page" transform="translate(-1 -1)">
<path id="Path_14" data-name="Path 14" d="M22.669,7H7.681A.681.681,0,0,0,7,7.681V22.669a.681.681,0,0,0,.681.681H22.669a.681.681,0,0,0,.681-.681V7.681A.681.681,0,0,0,22.669,7Zm-3.406,8.857H15.857v3.406H14.494V15.857H11.088V14.494h3.406V11.088h1.363v3.406h3.406Z" transform="translate(-1.912 -1.912)" fill="#2bb8a6"/>
<path id="Path_15" data-name="Path 15" d="M17.351,3.725V1.681A.681.681,0,0,0,16.669,1H1.681A.681.681,0,0,0,1,1.681V16.669a.681.681,0,0,0,.681.681H3.725V5.769A2.044,2.044,0,0,1,5.769,3.725Z" fill="#2bb8a6"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 694 B

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="15.443" height="20.591" viewBox="0 0 15.443 20.591">
<path id="padlock_2_" data-name="padlock (2)" d="M16.513,7.722h-.643V5.148a5.148,5.148,0,0,0-10.3,0V7.722H4.93A1.933,1.933,0,0,0,3,9.652v9.009a1.933,1.933,0,0,0,1.93,1.93H16.513a1.933,1.933,0,0,0,1.93-1.93V9.652A1.933,1.933,0,0,0,16.513,7.722ZM7.29,5.148a3.432,3.432,0,0,1,6.864,0V7.722H7.29Zm4.29,9.2V16.3a.858.858,0,1,1-1.716,0V14.347a1.716,1.716,0,1,1,1.716,0Z" transform="translate(-3)" fill="#2e303a"/>
</svg>

After

Width:  |  Height:  |  Size: 517 B

@ -0,0 +1,7 @@
<svg xmlns="http://www.w3.org/2000/svg" width="15.952" height="19.94" viewBox="0 0 15.952 19.94">
<g id="id" transform="translate(-37.5)">
<g id="Group_8628" data-name="Group 8628" transform="translate(37.5)">
<path id="Path_5014" data-name="Path 5014" d="M51.458,1.994H49.464V0H47.47V1.994H43.482V0H41.488V1.994H39.494A2,2,0,0,0,37.5,3.988V17.946a2,2,0,0,0,1.994,1.994H51.458a2,2,0,0,0,1.994-1.994V3.988A2,2,0,0,0,51.458,1.994Zm-9.97,11.953A4.008,4.008,0,0,1,45.364,9.97a1.994,1.994,0,1,1,.223,0,4.008,4.008,0,0,1,3.876,3.977Z" transform="translate(-37.5)" fill="#2e303a"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 610 B

@ -0,0 +1,3 @@
<svg id="power" xmlns="http://www.w3.org/2000/svg" width="19.191" height="19.191" viewBox="0 0 19.191 19.191">
<path id="Path_4506" data-name="Path 4506" d="M9.6,0a9.6,9.6,0,1,0,9.6,9.6A9.607,9.607,0,0,0,9.6,0ZM9.033,3.224a.562.562,0,1,1,1.124,0v4.5a.562.562,0,0,1-1.124,0ZM9.6,15.78A6.184,6.184,0,0,1,7.121,3.929a.562.562,0,0,1,.451,1.03,5.06,5.06,0,1,0,4.047,0,.562.562,0,0,1,.451-1.03A6.184,6.184,0,0,1,9.6,15.78Z" fill="#ca3332"/>
</svg>

After

Width:  |  Height:  |  Size: 444 B

@ -0,0 +1,5 @@
<svg id="interview_3_" data-name="interview (3)" xmlns="http://www.w3.org/2000/svg" width="20.391" height="20.391" viewBox="0 0 20.391 20.391">
<path id="Path_5009" data-name="Path 5009" d="M203,0h-7.678A2.516,2.516,0,0,0,192.8,2.517V14.034a.6.6,0,0,0,.956.478l2.4-1.8H203a2.516,2.516,0,0,0,2.517-2.517V2.517A2.516,2.516,0,0,0,203,0Zm-4.437,9.513h-2.6a.6.6,0,1,1,0-1.195h2.6a.6.6,0,1,1,0,1.195Zm3.8-2.559h-6.4a.6.6,0,1,1,0-1.195h6.4a.6.6,0,1,1,0,1.195Zm0-2.56h-6.4a.6.6,0,1,1,0-1.195h6.4a.6.6,0,1,1,0,1.195Zm0,0" transform="translate(-185.122)" fill="#2e303a"/>
<path id="Path_5010" data-name="Path 5010" d="M30.074,243.812a2.824,2.824,0,1,1-2.824-2.824A2.824,2.824,0,0,1,30.074,243.812Zm0,0" transform="translate(-23.453 -231.391)" fill="#2e303a"/>
<path id="Path_5011" data-name="Path 5011" d="M3.8,382.8A3.8,3.8,0,0,0,0,386.6v.751a.6.6,0,0,0,.6.6H7a.6.6,0,0,0,.6-.6V386.6A3.8,3.8,0,0,0,3.8,382.8Zm0,0" transform="translate(0 -367.559)" fill="#2e303a"/>
</svg>

After

Width:  |  Height:  |  Size: 969 B

@ -0,0 +1,14 @@
<svg xmlns="http://www.w3.org/2000/svg" width="15.951" height="18.149" viewBox="0 0 15.951 18.149">
<g id="user_19_" data-name="user (19)" transform="translate(-31)">
<g id="Group_7233" data-name="Group 7233" transform="translate(34.19)">
<g id="Group_7232" data-name="Group 7232">
<path id="Path_16" data-name="Path 16" d="M125.785,0a4.785,4.785,0,1,0,4.785,4.785A4.791,4.791,0,0,0,125.785,0Z" transform="translate(-121)" fill="#2e303a"/>
</g>
</g>
<g id="Group_7235" data-name="Group 7235" transform="translate(31 10.634)">
<g id="Group_7234" data-name="Group 7234">
<path id="Path_17" data-name="Path 17" d="M44.929,302.063A6.822,6.822,0,0,0,40.039,300H37.912a6.822,6.822,0,0,0-4.89,2.063A6.974,6.974,0,0,0,31,306.983a.532.532,0,0,0,.532.532H46.419a.532.532,0,0,0,.532-.532A6.974,6.974,0,0,0,44.929,302.063Z" transform="translate(-31 -300)" fill="#2e303a"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 943 B

@ -0,0 +1,5 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16.88" height="19.43" viewBox="0 0 16.88 19.43">
<g id="interview_3_" data-name="interview (3)" transform="translate(-7.678)">
<path id="Path_5009" data-name="Path 5009" d="M206.338,0h-10.2A3.34,3.34,0,0,0,192.8,3.342V18.635a.794.794,0,0,0,1.269.635l3.187-2.39h9.081a3.34,3.34,0,0,0,3.342-3.342V3.342A3.34,3.34,0,0,0,206.338,0Zm-5.891,12.632h-3.455a.793.793,0,0,1,0-1.586h3.455a.793.793,0,0,1,0,1.586Zm5.041-3.4h-8.5a.793.793,0,0,1,0-1.586h8.5a.793.793,0,1,1,0,1.586Zm0-3.4h-8.5a.793.793,0,0,1,0-1.586h8.5a.793.793,0,1,1,0,1.586Zm0,0" transform="translate(-185.122)" fill="#2e303a"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 651 B

@ -0,0 +1,34 @@
<svg xmlns="http://www.w3.org/2000/svg" width="18.954" height="16.078" viewBox="0 0 18.954 16.078">
<g id="group_2_" data-name="group (2)" transform="translate(0 -38.84)">
<g id="Group_7238" data-name="Group 7238" transform="translate(14.752 47.52)">
<g id="Group_7237" data-name="Group 7237" transform="translate(0 0)">
<path id="Path_23" data-name="Path 23" d="M399.96,273.32h-1.466a3.814,3.814,0,0,1,.231,1.311v5.54a1.634,1.634,0,0,1-.094.547h2.423a1.644,1.644,0,0,0,1.642-1.642v-3.02A2.739,2.739,0,0,0,399.96,273.32Z" transform="translate(-398.494 -273.32)" fill="#2e303a"/>
</g>
</g>
<g id="Group_7240" data-name="Group 7240" transform="translate(0 47.52)">
<g id="Group_7239" data-name="Group 7239">
<path id="Path_24" data-name="Path 24" d="M3.971,274.632a3.813,3.813,0,0,1,.231-1.311H2.736A2.739,2.739,0,0,0,0,276.057v3.02a1.644,1.644,0,0,0,1.642,1.642H4.065a1.634,1.634,0,0,1-.094-.547Z" transform="translate(0 -273.321)" fill="#2e303a"/>
</g>
</g>
<g id="Group_7242" data-name="Group 7242" transform="translate(5.065 46.095)">
<g id="Group_7241" data-name="Group 7241" transform="translate(0 0)">
<path id="Path_25" data-name="Path 25" d="M142.916,234.815h-3.351a2.739,2.739,0,0,0-2.736,2.736v5.54a.547.547,0,0,0,.547.547H145.1a.547.547,0,0,0,.547-.547v-5.54A2.739,2.739,0,0,0,142.916,234.815Z" transform="translate(-136.829 -234.815)" fill="#2e303a"/>
</g>
</g>
<g id="Group_7244" data-name="Group 7244" transform="translate(6.186 38.84)">
<g id="Group_7243" data-name="Group 7243" transform="translate(0 0)">
<path id="Path_26" data-name="Path 26" d="M170.4,38.84a3.29,3.29,0,1,0,3.29,3.291A3.294,3.294,0,0,0,170.4,38.84Z" transform="translate(-167.114 -38.84)" fill="#2e303a"/>
</g>
</g>
<g id="Group_7246" data-name="Group 7246" transform="translate(1.238 41.907)">
<g id="Group_7245" data-name="Group 7245" transform="translate(0 0)">
<path id="Path_27" data-name="Path 27" d="M35.9,121.689a2.46,2.46,0,1,0,2.461,2.461A2.464,2.464,0,0,0,35.9,121.689Z" transform="translate(-33.443 -121.689)" fill="#2e303a"/>
</g>
</g>
<g id="Group_7248" data-name="Group 7248" transform="translate(12.794 41.907)">
<g id="Group_7247" data-name="Group 7247" transform="translate(0 0)">
<path id="Path_28" data-name="Path 28" d="M348.068,121.689a2.461,2.461,0,1,0,2.461,2.461A2.464,2.464,0,0,0,348.068,121.689Z" transform="translate(-345.607 -121.689)" fill="#2e303a"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

@ -0,0 +1,6 @@
<svg xmlns="http://www.w3.org/2000/svg" width="18.572" height="18.57" viewBox="0 0 18.572 18.57">
<g id="Layer_2" data-name="Layer 2" transform="translate(-2 -2)">
<path id="Path_5012" data-name="Path 5012" d="M13.959,6a7.98,7.98,0,0,0-1.559.156A4.974,4.974,0,0,1,6.156,12.4a7.958,7.958,0,1,0,7.8-6.4Zm3.979,8.622H13.959a.663.663,0,0,1-.663-.663V9.979a.663.663,0,1,1,1.326,0V13.3h3.316a.663.663,0,1,1,0,1.326Z" transform="translate(-1.348 -1.347)" fill="#2e303a"/>
<path id="Path_5013" data-name="Path 5013" d="M10.622,6.311a4.311,4.311,0,1,0-4.311,4.311,4.311,4.311,0,0,0,4.311-4.311ZM5.648,4.653a.663.663,0,1,1,1.326,0V5.979a.663.663,0,0,1-1.326,0Zm0,3.316a.663.663,0,1,1,.663.663A.663.663,0,0,1,5.648,7.969Z" transform="translate(0 0)" fill="#2e303a"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 780 B

@ -0,0 +1,12 @@
<svg id="performance" xmlns="http://www.w3.org/2000/svg" width="19.793" height="19.793" viewBox="0 0 19.793 19.793">
<g id="Group_8625" data-name="Group 8625" transform="translate(0)">
<g id="Group_8624" data-name="Group 8624">
<path id="Path_5007" data-name="Path 5007" d="M19.762.425A.572.572,0,0,0,19.214,0H16.894a.58.58,0,1,0,0,1.16H18.25L15.481,4.286A17.77,17.77,0,0,1,.63,10.253a.58.58,0,1,0-.1,1.155c.542.047,1,.07,1.541.07A19.121,19.121,0,0,0,16.35,5.054l2.284-2.578V2.9a.58.58,0,0,0,1.16,0V1.152Z" transform="translate(-0.001)" fill="#2e303a"/>
</g>
</g>
<g id="Group_8627" data-name="Group 8627" transform="translate(0 5.017)">
<g id="Group_8626" data-name="Group 8626">
<path id="Path_5008" data-name="Path 5008" d="M19.213,143.389h-.619V130.352a.58.58,0,0,0-1.023-.374l-.356.423a20.057,20.057,0,0,1-1.908,1.973.579.579,0,0,0-.192.431v10.584h-1.16v-8.775a.58.58,0,0,0-.9-.481,20.468,20.468,0,0,1-2.256,1.314.579.579,0,0,0-.321.519v7.424H9.317v-6.435a.579.579,0,0,0-.775-.546,20.4,20.4,0,0,1-2.256.66.58.58,0,0,0-.449.565v5.755H4.678v-5.355a.581.581,0,0,0-.194-.433.572.572,0,0,0-.452-.143,20.217,20.217,0,0,1-2.254.13.58.58,0,0,0-.579.58v5.222H.58a.58.58,0,0,0,0,1.16H19.213a.58.58,0,0,0,0-1.16Z" transform="translate(0 -129.773)" fill="#2e303a"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.3 KiB

@ -0,0 +1,11 @@
<svg xmlns="http://www.w3.org/2000/svg" width="20.009" height="18.342" viewBox="0 0 20.009 18.342">
<g id="business-cards" transform="translate(0 -21.334)">
<g id="Group_8630" data-name="Group 8630" transform="translate(0 21.334)">
<g id="Group_8629" data-name="Group 8629" transform="translate(0 0)">
<path id="Path_5015" data-name="Path 5015" d="M1.457,203.561a.414.414,0,0,0-.417,0l-.215.125a1.678,1.678,0,0,0-.6,2.277l.668,1.168a.416.416,0,0,0,.362.21.422.422,0,0,0,.107-.014.418.418,0,0,0,.309-.4v-3A.418.418,0,0,0,1.457,203.561Z" transform="translate(0 -196.386)" fill="#2e303a"/>
<path id="Path_5016" data-name="Path 5016" d="M151.469,26.329h10.594a.417.417,0,0,0,.362-.625L160.4,22.155a1.694,1.694,0,0,0-2.264-.611l-6.873,4.006a.418.418,0,0,0,.21.778Z" transform="translate(-145.149 -21.334)" fill="#2e303a"/>
<path id="Path_5017" data-name="Path 5017" d="M79.841,170.667H65.667A1.669,1.669,0,0,0,64,172.334v9.171a1.669,1.669,0,0,0,1.667,1.667H79.841a1.669,1.669,0,0,0,1.667-1.667v-9.171A1.669,1.669,0,0,0,79.841,170.667ZM69,174.009a1.669,1.669,0,1,1-1.668,1.669A1.67,1.67,0,0,1,69,174.009Zm3.335,5.867a.822.822,0,0,1-.834.808h-5a.822.822,0,0,1-.834-.808v-.191a1.451,1.451,0,0,1,.844-1.307,5.353,5.353,0,0,1,4.981,0,1.451,1.451,0,0,1,.844,1.307ZM79.424,179h-5a.417.417,0,0,1,0-.834h5a.417.417,0,1,1,0,.834Zm0-2.5h-6.67a.417.417,0,0,1,0-.834h6.67a.417.417,0,0,1,0,.834Z" transform="translate(-61.499 -164.831)" fill="#2e303a"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.5 KiB

@ -0,0 +1,14 @@
<svg xmlns="http://www.w3.org/2000/svg" width="17.232" height="19.606" viewBox="0 0 17.232 19.606">
<g id="user_19_" data-name="user (19)" transform="translate(-31)">
<g id="Group_7233" data-name="Group 7233" transform="translate(34.446)">
<g id="Group_7232" data-name="Group 7232">
<path id="Path_16" data-name="Path 16" d="M126.17,0a5.17,5.17,0,1,0,5.169,5.17A5.175,5.175,0,0,0,126.17,0Z" transform="translate(-121)" fill="#2bb8a6"/>
</g>
</g>
<g id="Group_7235" data-name="Group 7235" transform="translate(31 11.488)">
<g id="Group_7234" data-name="Group 7234">
<path id="Path_17" data-name="Path 17" d="M46.048,302.228A7.369,7.369,0,0,0,40.765,300h-2.3a7.37,7.37,0,0,0-5.283,2.228A7.534,7.534,0,0,0,31,307.544a.574.574,0,0,0,.574.574H47.657a.574.574,0,0,0,.574-.574A7.534,7.534,0,0,0,46.048,302.228Z" transform="translate(-31 -300)" fill="#2bb8a6"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 936 B

@ -0,0 +1,34 @@
<svg xmlns="http://www.w3.org/2000/svg" width="22.515" height="19.099" viewBox="0 0 22.515 19.099">
<g id="group_2_" data-name="group (2)" transform="translate(0 -38.84)">
<g id="Group_7238" data-name="Group 7238" transform="translate(17.523 49.151)">
<g id="Group_7237" data-name="Group 7237" transform="translate(0 0)">
<path id="Path_23" data-name="Path 23" d="M400.235,273.32h-1.741a4.53,4.53,0,0,1,.274,1.557v6.581a1.94,1.94,0,0,1-.112.65h2.879a1.952,1.952,0,0,0,1.95-1.95V276.57A3.254,3.254,0,0,0,400.235,273.32Z" transform="translate(-398.494 -273.32)" fill="#2bb8a6"/>
</g>
</g>
<g id="Group_7240" data-name="Group 7240" transform="translate(0 49.151)">
<g id="Group_7239" data-name="Group 7239">
<path id="Path_24" data-name="Path 24" d="M4.717,274.878a4.529,4.529,0,0,1,.274-1.557H3.25A3.254,3.254,0,0,0,0,276.571v3.587a1.952,1.952,0,0,0,1.95,1.95H4.829a1.941,1.941,0,0,1-.112-.65Z" transform="translate(0 -273.321)" fill="#2bb8a6"/>
</g>
</g>
<g id="Group_7242" data-name="Group 7242" transform="translate(6.017 47.458)">
<g id="Group_7241" data-name="Group 7241" transform="translate(0 0)">
<path id="Path_25" data-name="Path 25" d="M144.06,234.815h-3.981a3.254,3.254,0,0,0-3.25,3.25v6.581a.65.65,0,0,0,.65.65h9.181a.65.65,0,0,0,.65-.65v-6.581A3.254,3.254,0,0,0,144.06,234.815Z" transform="translate(-136.829 -234.815)" fill="#2bb8a6"/>
</g>
</g>
<g id="Group_7244" data-name="Group 7244" transform="translate(7.349 38.84)">
<g id="Group_7243" data-name="Group 7243" transform="translate(0 0)">
<path id="Path_26" data-name="Path 26" d="M171.023,38.84a3.908,3.908,0,1,0,3.909,3.909A3.913,3.913,0,0,0,171.023,38.84Z" transform="translate(-167.114 -38.84)" fill="#2bb8a6"/>
</g>
</g>
<g id="Group_7246" data-name="Group 7246" transform="translate(1.471 42.483)">
<g id="Group_7245" data-name="Group 7245" transform="translate(0 0)">
<path id="Path_27" data-name="Path 27" d="M36.366,121.689a2.922,2.922,0,1,0,2.923,2.923A2.926,2.926,0,0,0,36.366,121.689Z" transform="translate(-33.443 -121.689)" fill="#2bb8a6"/>
</g>
</g>
<g id="Group_7248" data-name="Group 7248" transform="translate(15.198 42.483)">
<g id="Group_7247" data-name="Group 7247" transform="translate(0 0)">
<path id="Path_28" data-name="Path 28" d="M348.53,121.689a2.923,2.923,0,1,0,2.923,2.923A2.926,2.926,0,0,0,348.53,121.689Z" transform="translate(-345.607 -121.689)" fill="#2bb8a6"/>
</g>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 2.5 KiB

@ -0,0 +1,6 @@
<svg id="user_5_" data-name="user (5)" xmlns="http://www.w3.org/2000/svg" width="52.998" height="53" viewBox="0 0 52.998 53">
<path id="Path_5018" data-name="Path 5018" d="M18.613,41.552l-7.907,4.313a7.106,7.106,0,0,0-1.269.9,26.483,26.483,0,0,0,34.027.088,7.015,7.015,0,0,0-1.394-.934L33.6,41.689A3.229,3.229,0,0,1,31.818,38.8V35.479a12.788,12.788,0,0,0,.8-1.03,19.483,19.483,0,0,0,2.632-5.3,2.659,2.659,0,0,0,1.886-2.53V23.069a2.647,2.647,0,0,0-.886-1.965V15.978S37.3,8,26.5,8s-9.75,7.977-9.75,7.977V21.1a2.644,2.644,0,0,0-.886,1.965v3.546a2.658,2.658,0,0,0,1.226,2.231A17.6,17.6,0,0,0,20.3,35.479v3.24A3.232,3.232,0,0,1,18.613,41.552Z" fill="#bcbcbc"/>
<g id="Group_8632" data-name="Group 8632">
<path id="Path_5019" data-name="Path 5019" d="M26.953,0A26.483,26.483,0,0,0,9.448,46.76a7.041,7.041,0,0,1,1.257-.894l7.907-4.313A3.23,3.23,0,0,0,20.3,38.718v-3.24a17.58,17.58,0,0,1-3.206-6.633,2.66,2.66,0,0,1-1.226-2.231V23.068a2.647,2.647,0,0,1,.886-1.965V15.977S15.7,8,26.5,8s9.75,7.977,9.75,7.977V21.1a2.644,2.644,0,0,1,.886,1.965v3.546a2.659,2.659,0,0,1-1.886,2.53,19.482,19.482,0,0,1-2.632,5.3,12.788,12.788,0,0,1-.8,1.03V38.8A3.228,3.228,0,0,0,33.6,41.688l8.467,4.233a7.05,7.05,0,0,1,1.39.932A26.494,26.494,0,0,0,26.953,0Z" fill="#e0e0e0"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="18.591" height="22" viewBox="0 0 18.591 22">
<g id="calendar_26_" data-name="calendar (26)" transform="translate(-7.31 -1.5)">
<path id="Path_18" data-name="Path 18" d="M7.31,42.646a1.5,1.5,0,0,0,1.5,1.5h15.6a1.5,1.5,0,0,0,1.5-1.5V30.71H7.31Zm12.874-8.759H22.61v2.426H20.184Zm0,4.124H22.61v2.426H20.184Zm-4.79-4.124h2.423v2.426H15.394Zm0,4.124h2.423v2.426H15.394Zm-4.8-4.124h2.426v2.426H10.6Zm0,4.124h2.426v2.426H10.6Z" transform="translate(0 -20.642)" fill="#2bb8a6"/>
<path id="Path_19" data-name="Path 19" d="M54.364,6.4a.264.264,0,0,0,.264-.264V1.764a.264.264,0,1,0-.528,0V6.141a.264.264,0,0,0,.264.264Z" transform="translate(-33.065)" fill="#2bb8a6"/>
<path id="Path_20" data-name="Path 20" d="M24.405,9.4H22.082v2.323a.795.795,0,0,1-1.59,0V9.4H12.716v2.323a.795.795,0,1,1-1.587,0V9.4H8.806a1.5,1.5,0,0,0-1.5,1.5v4.227H25.9V10.9a1.5,1.5,0,0,0-1.5-1.5Z" transform="translate(0 -5.583)" fill="#2bb8a6"/>
<path id="Path_21" data-name="Path 21" d="M22.364,6.465a.264.264,0,0,0,.267-.264V1.824a.267.267,0,0,0-.531,0V6.2a.264.264,0,0,0,.264.264Z" transform="translate(-10.452 -0.06)" fill="#2bb8a6"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.2 KiB

@ -31,6 +31,7 @@
"viewAllServices": "عرض جميع الخدمات",
"monthlyAttendance": "الحضور الشهري",
"vacationRule": "حكم اجازة",
"vacationType": "نوع الاجازة",
"startDateT": "تاريخ البدء",
"endDateT": "تاريخ الانتهاء",
"workFromHome": "العمل من المنزل",
@ -96,6 +97,7 @@
"cancel": "إلغاء",
"requestedItems": "العناصر المطلوبة",
"request": "طلب",
"myRequest": "طلبي",
"actions": "أجراءات",
"delegate": "مندوب",
"request_info": "اطلب معلومات",
@ -268,6 +270,7 @@
"paymentInformation": "معلومات الدفع",
"performance": "تقييم الاداء",
"performanceEvaluation": "تقييم الأداء في",
"performanceEvaluationIn": "تقييم أدائك في",
"amount": "مقدار",
"correctCurrentDatails": "تعديل او اكمال التفاصيل الحالية",
"selectType": " حدد نوع التغيير الذي تريد القيام به",
@ -312,11 +315,63 @@
"requestType": "نوع الطلب",
"employeeDigitalID": "هويةالموظف الرقمية",
"businessCard": "بطاقة العمل",
"viewBusinessCard": "عرض بطاقة العمل",
"logout": "تسجيل خروج",
"checkOut": "وقت الخروج",
"regular": "منتظم",
"mark": "علامة",
"selectMethodOfAttendance": "اختر طريقة تسجيل الحضور",
"comeNearHMGWifi": "HMG wifi من فضلك اقترب من",
"deliverNotificationToMeRegardless": "تسليم الإخطارات إلي بغض النظر عن أي قواعد عامة",
"close": "أغلق",
"respond": "يرد",
"vacationRuleAdded": "تمت إضافة قاعدة الإجازة",
"selectTypeT": "اختر صنف",
"notification": "تنبيه",
"selectNotification": "حدد إعلام",
"ifAllSelectedYouWillSkip": "* إذا تم تحديد الكل ، فستنتقل إلى الخطوة 3",
"applyForVacationRule": "التقدم بطلب للحصول على قانون الإجازة",
"step1": "الخطوة 1",
"step2": "الخطوة 2",
"step3": "الخطوه 3",
"message": "رسالة",
"writeAMessage": "اكتب رسالة",
"notificationReassign": "إعادة تعيين الإخطار",
"selectEmployee": "حدد الموظف",
"searchEmployeeForReplacement": "ابحث عن موظف بديل",
"searchForEmployee": "ابحث عن موظف",
"pleaseSpecifyEndTime": "الرجاء تحديد وقت الانتهاء",
"pleaseSelectNotificationReassign": "يرجى تحديد إعادة تعيين الإخطار",
"pleaseSelectEmployeeForReplacement": "الرجاء تحديد موظف للاستبدال",
"pleaseSelectAction": "الرجاء تحديد الإجراء",
"pleaseSelectDate": "الرجاء تحديد التاريخ",
"todayAttendance": "حضور اليوم",
"viewAttendance": "عرض الحضور",
"teamMembers": "اعضاءالفريق",
"profileDetails": "الملف الشخصي",
"noResultsFound": "لايوجد نتائج",
"searchBy": "بحث بواسطة",
"myTeamMembers": "اعضاء فريقي",
"save": "حفظ",
"TurnNotificationsFor": "تفعيل الاشعارات",
"worklistSettings": "اعدادات الاشعارات",
"absenceType": "نوع الغياب",
"absenceCategory": "فئة الغياب",
"days": "أيام",
"hours": "ساعات",
"approvalStatus": "حالة القبول",
"absenceStatus": "حالة الغياب",
"subordinateLeave": "إجازة التابعيين",
"numberDays": "عدد الأيام",
"poweredBy": "مشغل بواسطة",
"cloudSolutions": "حلول السحابة",
"selectTemplate": "حدد قالب",
"myPostedAds": "إعلاناتي المنشورة",
"browseCategories": "تصفح الفئات",
"searchItems": "عناصر البحث",
"offerAndDiscounts": "العروض والخصومات",
"offerValid": "العرض صالح",
"offerExpired": "انتهى العرض",
"profile": {
"reset_password": {
"label": "Reset Password",

@ -31,6 +31,7 @@
"viewAllServices": "View All Services",
"monthlyAttendance": "Monthly Attendance",
"vacationRule": "Vacation Rule",
"vacationType": "Vacation Type",
"startDateT": "Start Date",
"endDateT": "End Date",
"workFromHome": "Work From Home",
@ -93,6 +94,7 @@
"cancel": "Cancel",
"requestedItems": "Requested Items",
"request": "Request",
"myRequest": "My Request",
"actions": "Actions",
"delegate": "Delegate",
"request_info": "Request Info",
@ -314,9 +316,62 @@
"regular": "Regular",
"mark": "Mark",
"performance": "Performance Evaluation",
"performanceEvaluation": "Performance evaluation in",
"performanceEvaluationIn": "Your performance Evaluation in ",
"viewBusinessCard": "View Business Card",
"performanceEvaluation": "Performance Evaluation",
"logout": "Logout",
"selectMethodOfAttendance": "Select the method to mark the attendance",
"comeNearHMGWifi": "Please come near to HMG wifi",
"deliverNotificationToMeRegardless": "Deliver notifications to me regardless of any general rules",
"close": "Close",
"respond": "Respond",
"vacationRuleAdded": "Vacation rule added",
"selectTypeT": "Select Type",
"notification": "Notification",
"selectNotification": "Select Notification",
"ifAllSelectedYouWillSkip": "*If All is selected, you will skip to step 3",
"applyForVacationRule": "Apply for Vacation Rule",
"step1": "Step 1",
"step2": "Step 2",
"step3": "Step 3",
"message": "Message",
"writeAMessage": "Write a message",
"notificationReassign": "Notification Reassign",
"selectEmployee": "Select Employee",
"searchEmployeeForReplacement": "Search employee for replacement",
"searchForEmployee": "Search for Employee",
"pleaseSpecifyEndTime": "Please specify End Time",
"pleaseSelectNotificationReassign": "Please select notification reassign",
"pleaseSelectEmployeeForReplacement": "Please select employee for replacement",
"pleaseSelectAction": "Please select action",
"pleaseSelectDate": "Please select date",
"todayAttendance": "Today's Attendance",
"viewAttendance": "View Attendance",
"teamMembers": "Team Members",
"profileDetails": "Profile Details",
"noResultsFound": "No Results Found",
"searchBy": "Search by",
"myTeamMembers": "My Team Members",
"save": "Save",
"TurnNotificationsFor": "Turn on notifications for",
"worklistSettings": "Worklist Settings",
"absenceType": "Absence Type",
"absenceCategory": "Absence Category",
"days": "Days",
"hours": "Hours",
"approvalStatus": "Approval Status",
"absenceStatus": "Absence Status",
"poweredBy": "Powered By",
"cloudSolutions": "Cloud Solutions",
"subordinateLeave": "Subordinate Leave",
"numberDays": "Number of days",
"selectTemplate": "Select Template",
"myPostedAds": "My posted ads",
"browseCategories": "Browse Categories",
"searchItems": "Search Items",
"offerAndDiscounts": "Offer & Discounts",
"offerValid": "Offer Valid",
"offerExpired": "Offer Expired",
"profile": {
"reset_password": {
"label": "Reset Password",

@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 46;
objectVersion = 50;
objects = {
/* Begin PBXBuildFile section */
@ -140,6 +140,7 @@
9705A1C41CF9048500538489 /* Embed Frameworks */,
3B06AD1E1E4923F5004D2608 /* Thin Binary */,
AAF25E5FC427CABFCDCC628C /* [CP] Embed Pods Frameworks */,
8E1FBB2EA6B3AEDD9488054A /* [CP] Copy Pods Resources */,
);
buildRules = (
);
@ -156,7 +157,7 @@
97C146E61CF9000F007C117D /* Project object */ = {
isa = PBXProject;
attributes = {
LastUpgradeCheck = 1020;
LastUpgradeCheck = 1300;
ORGANIZATIONNAME = "";
TargetAttributes = {
97C146ED1CF9000F007C117D = {
@ -234,6 +235,23 @@
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
showEnvVarsInLog = 0;
};
8E1FBB2EA6B3AEDD9488054A /* [CP] Copy Pods Resources */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
files = (
);
inputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
);
name = "[CP] Copy Pods Resources";
outputFileListPaths = (
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
);
runOnlyForDeploymentPostprocessing = 0;
shellPath = /bin/sh;
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
showEnvVarsInLog = 0;
};
9740EEB61CF901F6004384FC /* Run Script */ = {
isa = PBXShellScriptBuildPhase;
buildActionMask = 2147483647;
@ -358,7 +376,10 @@
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
ENABLE_BITCODE = NO;
INFOPLIST_FILE = Runner/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.mohemFlutterApp;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
@ -482,7 +503,10 @@
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
ENABLE_BITCODE = NO;
INFOPLIST_FILE = Runner/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.mohemFlutterApp;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
@ -501,7 +525,10 @@
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
ENABLE_BITCODE = NO;
INFOPLIST_FILE = Runner/Info.plist;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.mohemFlutterApp;
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";

@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1020"
LastUpgradeVersion = "1300"
version = "1.3">
<BuildAction
parallelizeBuildables = "YES"

@ -2,6 +2,8 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CADisableMinimumFrameDurationOnPhone</key>
<true/>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
@ -26,6 +28,10 @@
<string>LaunchScreen</string>
<key>UIMainStoryboardFile</key>
<string>Main</string>
<key>NSCameraUsageDescription</key>
<string>This app requires camera access to capture &amp; upload pictures.</string>
<key>NSPhotoLibraryUsageDescription</key>
<string>This app requires photo library access to select image as document &amp; upload it.</string>
<key>UISupportedInterfaceOrientations</key>
<array>
<string>UIInterfaceOrientationPortrait</string>
@ -39,6 +45,12 @@
<string>UIInterfaceOrientationLandscapeLeft</string>
<string>UIInterfaceOrientationLandscapeRight</string>
</array>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>sms</string>
<string>tel</string>
<string>mailto</string>
</array>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>
</dict>

@ -67,7 +67,7 @@ class ApiClient {
factory ApiClient() => _instance;
Future<U> postJsonForObject<T, U>(FactoryConstructor<U> factoryConstructor, String url, T jsonObject,
{String? token, Map<String, dynamic>? queryParameters, Map<String, String>? headers, int retryTimes = 0}) async {
{String? token, Map<String, dynamic>? queryParameters, Map<String, String>? headers, int retryTimes = 0, bool isFormData = false}) async {
var _headers = {'Accept': 'application/json'};
if (headers != null && headers.isNotEmpty) {
_headers.addAll(headers);
@ -76,7 +76,7 @@ class ApiClient {
print("Url:$url");
print("body:$jsonObject");
}
var response = await postJsonForResponse(url, jsonObject, token: token, queryParameters: queryParameters, headers: _headers, retryTimes: retryTimes);
var response = await postJsonForResponse(url, jsonObject, token: token, queryParameters: queryParameters, headers: _headers, retryTimes: retryTimes, isFormData: isFormData);
// try {
if (!kReleaseMode) {
logger.i("res: " + response.body);
@ -101,8 +101,10 @@ class ApiClient {
// }
}
Future<Response> postJsonForResponse<T>(String url, T jsonObject, {String? token, Map<String, dynamic>? queryParameters, Map<String, String>? headers, int retryTimes = 0}) async {
Future<Response> postJsonForResponse<T>(String url, T jsonObject,
{String? token, Map<String, dynamic>? queryParameters, Map<String, String>? headers, int retryTimes = 0, bool isFormData = false}) async {
String? requestBody;
late Map<String, String> stringObj;
if (jsonObject != null) {
requestBody = jsonEncode(jsonObject);
if (headers == null) {
@ -112,7 +114,12 @@ class ApiClient {
}
}
return await _postForResponse(url, requestBody, token: token, queryParameters: queryParameters, headers: headers, retryTimes: retryTimes);
if (isFormData) {
headers = {'Content-Type': 'application/x-www-form-urlencoded'};
stringObj = ((jsonObject ?? {}) as Map<String, dynamic>).map((key, value) => MapEntry(key, value?.toString() ?? ""));
}
return await _postForResponse(url, isFormData ? stringObj : requestBody, token: token, queryParameters: queryParameters, headers: headers, retryTimes: retryTimes);
}
Future<Response> _postForResponse(String url, requestBody, {String? token, Map<String, dynamic>? queryParameters, Map<String, String>? headers, int retryTimes = 0}) async {

@ -5,6 +5,7 @@ import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/models/dashboard/get_attendance_tracking_list_model.dart';
import 'package:mohem_flutter_app/models/dashboard/itg_forms_model.dart';
import 'package:mohem_flutter_app/models/dashboard/list_menu.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:uuid/uuid.dart';
@ -66,13 +67,13 @@ class DashboardApiClient {
}
//Menus List
Future<GenericResponseModel?> getListMenu() async {
Future<List<ListMenu>> getListMenu() async {
String url = "${ApiConsts.erpRest}GET_MENU";
Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json);
return responseData;
return responseData.listMenu ?? [];
}, url, postParams);
}

@ -0,0 +1,123 @@
import 'dart:convert';
import 'package:mohem_flutter_app/api/api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/models/items_for_sale/get_employee_ads_list.dart';
import 'package:mohem_flutter_app/models/items_for_sale/get_items_for_sale_list.dart';
import 'package:mohem_flutter_app/models/items_for_sale/get_regions_list.dart';
import 'package:mohem_flutter_app/models/items_for_sale/get_sale_categories_list.dart';
import 'package:mohem_flutter_app/models/items_for_sale/item_review_model.dart';
class ItemsForSaleApiClient {
static final ItemsForSaleApiClient _instance = ItemsForSaleApiClient._internal();
ItemsForSaleApiClient._internal();
factory ItemsForSaleApiClient() => _instance;
Future<List<GetSaleCategoriesList>> getSaleCategories() async {
List<GetSaleCategoriesList> getSaleCategoriesList = [];
String url = "${ApiConsts.cocRest}Mohemm_ITG_GetItemSaleCategory";
Map<String, dynamic> postParams = {"EmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER, "ItgPageSize": 10, "ItgPageNo": 1};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((response) {
var body = json.decode(response['Mohemm_ITG_ResponseItem']);
GetSaleCategoriesList getSaleCategoriesListObj = new GetSaleCategoriesList();
getSaleCategoriesListObj.categoryID = 0;
getSaleCategoriesListObj.title = "All";
getSaleCategoriesListObj.titleAr = "الجميع";
getSaleCategoriesListObj.isActive = true;
getSaleCategoriesListObj.content =
'<svg xmlns="http://www.w3.org/2000/svg" width="33.925" height="25.841" viewBox="0 0 33.925 25.841"><g id="More_Select" data-name="More Select"><path d="m30 1h-24a1 1 0 0 0 -1 1v1h21a3 3 0 0 1 3 3v21h1a1 1 0 0 0 1-1v-24a1 1 0 0 0 -1-1z"/><path d="m26 5h-24a1 1 0 0 0 -1 1v24a1 1 0 0 0 1 1h24a1 1 0 0 0 1-1v-24a1 1 0 0 0 -1-1zm-4.747 9.344-8.728 8.726a1 1 0 0 1 -1.414 0l-4.364-4.363a1 1 0 0 1 1.414-1.414l3.657 3.656 8.021-8.019a1 1 0 0 1 1.414 1.414z"/></g></svg>';
getSaleCategoriesList.add(getSaleCategoriesListObj);
body['result']['data'].forEach((v) {
getSaleCategoriesList.add(new GetSaleCategoriesList.fromJson(v));
});
return getSaleCategoriesList;
}, url, postParams);
}
Future<List<GetItemsForSaleList>> getItemsForSale(int itgPageNo, int itgCategoryID) async {
List<GetItemsForSaleList> getItemsForSaleList = [];
String url = "${ApiConsts.cocRest}Mohemm_ITG_GetItemForSale";
Map<String, dynamic> postParams = {
"EmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER,
"ItgPageSize": 10,
"ItgPageNo": itgPageNo,
"ItgStatus": "Approved",
"ItgCategoryID": itgCategoryID
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((response) {
var body = json.decode(response['Mohemm_ITG_ResponseItem']);
body['result']['data'].forEach((v) {
getItemsForSaleList.add(new GetItemsForSaleList.fromJson(v));
});
return getItemsForSaleList;
}, url, postParams);
}
Future<List<EmployeePostedAds>> getEmployeePostedAds() async {
List<EmployeePostedAds> employeePostedAdsList = [];
String url = "${ApiConsts.cocRest}Mohemm_ITG_GetItemForSaleByEmployee";
Map<String, dynamic> postParams = {"EmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER, "ItgEmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((response) {
var body = json.decode(response['Mohemm_ITG_ResponseItem']);
body['result']['data'].forEach((v) {
employeePostedAdsList.add(new EmployeePostedAds.fromJson(v));
});
return employeePostedAdsList;
}, url, postParams);
}
Future<List<GetRegionsList>> getRegions() async {
String url = "${ApiConsts.cocRest}Mohemm_ITG_GetRegion";
List<GetRegionsList> getRegionsList = [];
Map<String, dynamic> postParams = {"EmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER, "ItgEmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((response) {
var body = json.decode(response['Mohemm_ITG_ResponseItem']);
body['result']['data'].forEach((v) {
getRegionsList.add(new GetRegionsList.fromJson(v));
});
return getRegionsList;
}, url, postParams);
}
Future<String> addItemForSale(ItemReviewModel itemReviewModel, List<Map<String, dynamic>> imagesList) async {
String url = "${ApiConsts.cocRest}Mohemm_ITG_AddItemForSaleMobile";
Map<String, dynamic> postParams = {
"ItgImageCollList": imagesList,
"ItgTitle": itemReviewModel.itemTitle,
"ItgTitleAr": itemReviewModel.itemTitle,
"ItgCategoryID": itemReviewModel.selectedSaleCategory!.categoryID,
"ItgDescription": itemReviewModel.itemDescription,
"ItgDescriptionAr": itemReviewModel.itemDescription,
"ItgQuotePrice": itemReviewModel.itemPrice,
"RegionID": itemReviewModel.selectedRegion!.regionID,
"ItgIsActive": true,
"EmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER,
"employeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER,
"ItgStatus": itemReviewModel.itemCondition
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((response) {
var body = json.decode(response['Mohemm_ITG_ResponseItem']);
return body["message"];
}, url, postParams);
}
}

@ -0,0 +1,146 @@
import 'package:mohem_flutter_app/api/api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/calculate_absence_duration_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/cancel_hr_transaction_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/get_absence_attendance_types_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/get_absence_dff_structure_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/get_absence_transaction_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/start_absence_approval_proccess_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/sumbit_absence_transaction_list_model.dart';
class LeaveBalanceApiClient {
static final LeaveBalanceApiClient _instance = LeaveBalanceApiClient._internal();
LeaveBalanceApiClient._internal();
factory LeaveBalanceApiClient() => _instance;
Future<List<GetAbsenceTransactionList>> getAbsenceTransactions(int pSelectedResopID) async {
String url = "${ApiConsts.erpRest}GET_ABSENCE_TRANSACTIONS";
Map<String, dynamic> postParams = {"P_PAGE_LIMIT": 50, "P_PAGE_NUM": 1, "P_MENU_TYPE": "E", "P_SELECTED_RESP_ID": pSelectedResopID};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getAbsenceTransactionList ?? [];
}, url, postParams);
}
Future<List<GetAbsenceAttendanceTypesList>> getAbsenceAttendanceTypes() async {
String url = "${ApiConsts.erpRest}GET_ABSENCE_ATTENDANCE_TYPES";
Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getAbsenceAttendanceTypesList ?? [];
}, url, postParams);
}
Future<CalculateAbsenceDuration> calculateAbsenceDuration(int pAbsenceAttendanceTypeID, String pDateStart, String pDateEnd, int pSelectedResopID) async {
String url = "${ApiConsts.erpRest}CALCULATE_ABSENCE_DURATION";
Map<String, dynamic> postParams = {
"P_ABSENCE_ATTENDANCE_TYPE_ID": pAbsenceAttendanceTypeID,
"P_DATE_START": pDateStart,
"P_DATE_END": pDateEnd,
"P_SELECTED_RESP_ID": pSelectedResopID,
"P_MENU_TYPE": "E",
"P_TIME_END": null,
"P_TIME_START": null,
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.calculateAbsenceDuration!;
}, url, postParams);
}
Future<List<GetAbsenceDffStructureList>> getAbsenceDffStructure(String pDescFlexContextCode, String pFunctionName, int pSelectedResopID) async {
String url = "${ApiConsts.erpRest}GET_ABSENCE_DFF_STRUCTURE";
Map<String, dynamic> postParams = {"P_DESC_FLEX_CONTEXT_CODE": pDescFlexContextCode, "P_FUNCTION_NAME": pFunctionName, "P_MENU_TYPE": "E", "P_SELECTED_RESP_ID": pSelectedResopID};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getAbsenceDffStructureList ?? [];
}, url, postParams);
}
Future<GenericResponseModel> validateAbsenceTransaction(
String pDescFlexContextCode, String pFunctionName, int pAbsenceAttendanceTypeID, String pReplacementUserName, String pDateStart, String pDateEnd, int pSelectedResopID, Map<String, String?> data,
{String comments = ""}) async {
String url = "${ApiConsts.erpRest}VALIDATE_ABSENCE_TRANSACTION";
Map<String, dynamic> postParams = {
"P_DESC_FLEX_CONTEXT_CODE": pDescFlexContextCode,
"P_FUNCTION_NAME": pFunctionName,
"P_REPLACEMENT_USER_NAME": pReplacementUserName,
"P_ABSENCE_ACTION": "CREATE",
"P_ABSENCE_COMMENTS": comments,
"P_ABSENCE_ATTENDANCE_ID": pAbsenceAttendanceTypeID,
"P_ABSENCE_ATTENDANCE_TYPE_ID": pAbsenceAttendanceTypeID,
"P_DATE_START": pDateStart,
"P_DATE_END": pDateEnd, //"29-Sep-2022",
"P_SELECTED_RESP_ID": pSelectedResopID,
"P_MENU_TYPE": "E",
"P_TIME_END": null,
"P_TIME_START": null,
};
postParams.addAll(data);
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData;
}, url, postParams);
}
Future<SumbitAbsenceTransactionList> submitAbsenceTransaction(
String pDescFlexContextCode, String pFunctionName, int pAbsenceAttendanceTypeID, String pReplacementUserName, String pDateStart, String pDateEnd, int pSelectedResopID, Map<String, String?> data,
{String comments = ""}) async {
String url = "${ApiConsts.erpRest}SUBMIT_ABSENCE_TRANSACTION";
Map<String, dynamic> postParams = {
"P_DESC_FLEX_CONTEXT_CODE": pDescFlexContextCode,
"P_FUNCTION_NAME": pFunctionName,
"P_REPLACEMENT_USER_NAME": pReplacementUserName,
"P_ABSENCE_ACTION": "CREATE",
"P_ABSENCE_COMMENTS": comments,
"P_ABSENCE_ATTENDANCE_ID": pAbsenceAttendanceTypeID,
"P_ABSENCE_ATTENDANCE_TYPE_ID": pAbsenceAttendanceTypeID,
"P_DATE_START": pDateStart,
"P_DATE_END": pDateEnd, //"29-Sep-2022",
"P_SELECTED_RESP_ID": pSelectedResopID,
"P_MENU_TYPE": "E",
"P_TIME_END": null,
"P_TIME_START": null,
};
postParams.addAll(data);
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.sumbitAbsenceTransactionList!;
}, url, postParams);
}
Future<CancelHRTransactionLIst> cancelHrTransaction(int pTransactionID) async {
String url = "${ApiConsts.erpRest}CANCEL_HR_TRANSACTION";
Map<String, dynamic> postParams = {"P_TRANSACTION_ID": pTransactionID};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.cancelHRTransactionLIst!;
}, url, postParams);
}
Future<StartAbsenceApprovalProccess> startAbsenceApprovalProcess(int pTransactionID, String comments, int pSelectedResopID) async {
String url = "${ApiConsts.erpRest}START_ABSENCE_APPROVAL_PROCESS";
Map<String, dynamic> postParams = {
"P_TRANSACTION_ID": pTransactionID,
"P_SELECTED_RESP_ID": pSelectedResopID,
"P_COMMENTS": comments,
"P_MENU_TYPE": "E",
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.startAbsenceApprovalProccess!;
}, url, postParams);
}
}

@ -10,7 +10,6 @@ import 'package:mohem_flutter_app/models/get_schedule_shifts_details_list_model.
import 'package:mohem_flutter_app/models/get_time_card_summary_list_model.dart';
import 'package:mohem_flutter_app/api/api_client.dart';
// todo '@fatima' change file name according to structure
class MonthlyAttendanceApiClient {
static final MonthlyAttendanceApiClient _instance = MonthlyAttendanceApiClient._internal();

@ -0,0 +1,62 @@
import 'package:mohem_flutter_app/api/api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/get_eit_dff_structure_list_model.dart';
import 'package:mohem_flutter_app/models/my_requests/get_ccp_dff_structure_model.dart';
import 'package:mohem_flutter_app/models/my_requests/get_ccp_output_model.dart';
import 'package:mohem_flutter_app/models/my_requests/get_ccp_transactions_model.dart';
import 'package:mohem_flutter_app/models/my_requests/get_concurrent_programs_model.dart';
class MyRequestsApiClient {
static final MyRequestsApiClient _instance = MyRequestsApiClient._internal();
MyRequestsApiClient._internal();
factory MyRequestsApiClient() => _instance;
Future<List<GetConcurrentProgramsModel>> getConcurrentPrograms() async {
String url = "${ApiConsts.erpRest}GET_CONCURRENT_PROGRAMS";
Map<String, dynamic> postParams = {"P_REQUEST_GROUP_ID": 3290};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getConcurrentProgramsModel ?? [];
}, url, postParams);
}
Future<List<GetCCPTransactionsModel>> getCCPTransactions(String? templateName) async {
String url = "${ApiConsts.erpRest}GET_CCP_TRANSACTIONS";
Map<String, dynamic> postParams = {"P_DESC_FLEX_NAME": templateName};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getCCPTransactionsModel ?? [];
}, url, postParams);
}
Future<GetCCPOutputModel> getCCPOutput(String? requestID) async {
String url = "${ApiConsts.erpRest}GET_CCP_OUTPUT";
Map<String, dynamic> postParams = {"P_REQUEST_ID": requestID};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getCCPOutputModel!;
}, url, postParams);
}
Future<List<GetEITDFFStructureList>> getCCPDFFStructure(String? templateName) async {
String url = "${ApiConsts.erpRest}GET_CCP_DFF_STRUCTURE";
Map<String, dynamic> postParams = {"P_DESC_FLEX_NAME": templateName};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getEITDFFStructureList ?? [];
}, url, postParams);
}
}

@ -0,0 +1,163 @@
import 'package:mohem_flutter_app/api/api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/models/dashboard/get_attendance_tracking_list_model.dart';
import 'package:mohem_flutter_app/models/dashboard/menu_entries.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/get_day_hours_type_details_list_model.dart';
import 'package:mohem_flutter_app/models/get_time_card_summary_list_model.dart';
import 'package:mohem_flutter_app/models/my_team/get_employee_subordinates_list.dart';
import 'package:mohem_flutter_app/models/my_team/get_subordinates_leaves_total_vacations_list_model.dart';
import 'package:mohem_flutter_app/models/worklist/get_favorite_replacements_model.dart';
class MyTeamApiClient {
static final MyTeamApiClient _instance = MyTeamApiClient._internal();
MyTeamApiClient._internal();
factory MyTeamApiClient() => _instance;
Future<List<GetEmployeeSubordinatesList>> getEmployeeSubordinates(String searchEmpEmail, String searchEmpName, String searchEmpNo) async {
String url = "${ApiConsts.erpRest}GET_EMPLOYEE_SUBORDINATES";
Map<String, dynamic> postParams = {
"P_PAGE_LIMIT": 50,
"P_PAGE_NUM": 1,
"P_SEARCH_EMAIL_ADDRESS": searchEmpEmail,
"P_SEARCH_EMPLOYEE_DISPLAY_NAME": searchEmpName,
"P_SEARCH_EMPLOYEE_NUMBER": searchEmpNo,
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getEmployeeSubordinatesList ?? [];
}, url, postParams);
}
Future<GetTimeCardSummaryList?> getTimeCardSummary(String month, int year, String? empID) async {
String url = "${ApiConsts.erpRest}GET_TIME_CARD_SUMMARY";
Map<String, dynamic> postParams = {
"P_MENU_TYPE": "M",
"P_SELECTED_RESP_ID": -999,
"SearchMonth": month,
"SearchYear": year,
};
postParams.addAll(AppState().postParamsJson);
postParams['P_SELECTED_EMPLOYEE_NUMBER'] = empID;
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return (responseData.getTimeCardSummaryList?.length ?? 0) > 0 ? responseData.getTimeCardSummaryList!.first : null;
}, url, postParams);
}
Future<List<GetDayHoursTypeDetailsList>> getDayHoursTypeDetails(String month, int year, String? empID) async {
String url = "${ApiConsts.erpRest}GET_DAY_HOURS_TYPE_DETAILS";
Map<String, dynamic> postParams = {
"P_MENU_TYPE": "M",
"P_PAGE_LIMIT": 100,
"P_PAGE_NUM": 1,
"P_SELECTED_RESP_ID": -999,
"SearchMonth": month,
"SearchYear": year,
};
postParams.addAll(AppState().postParamsJson);
postParams['P_SELECTED_EMPLOYEE_NUMBER'] = empID;
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
print(responseData.getDayHoursTypeDetailsList!.length);
return responseData.getDayHoursTypeDetailsList ?? [];
}, url, postParams);
}
Future<GetAttendanceTracking?> getAttendanceTracking(String? empID) async {
String url = "${ApiConsts.erpRest}GET_Attendance_Tracking";
Map<String, dynamic> postParams = {};
postParams.addAll(AppState().postParamsJson);
postParams['P_SELECTED_EMPLOYEE_NUMBER'] = empID;
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
print(responseData.getAttendanceTrackingList);
return responseData.getAttendanceTrackingList;
}, url, postParams);
}
Future<List<GetEmployeeSubordinatesList>> employeeSubordinates(String searchEmpEmail, String searchEmpName, String searchEmpNo, String? empID) async {
String url = "${ApiConsts.erpRest}GET_EMPLOYEE_SUBORDINATES";
Map<String, dynamic> postParams = {
"P_PAGE_LIMIT": 50,
"P_PAGE_NUM": 1,
"P_SEARCH_EMAIL_ADDRESS": searchEmpEmail,
"P_SEARCH_EMPLOYEE_DISPLAY_NAME": searchEmpName,
"P_SEARCH_EMPLOYEE_NUMBER": searchEmpNo,
};
postParams.addAll(AppState().postParamsJson);
postParams['P_SELECTED_EMPLOYEE_NUMBER'] = empID;
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getEmployeeSubordinatesList ?? [];
}, url, postParams);
}
Future<List<GetMenuEntriesList>> employeeSubordinatesRequest(String? empID) async {
String url = "${ApiConsts.erpRest}GET_MENU_ENTRIES";
Map<String, dynamic> postParams = {
"P_MENU_TYPE": "M",
"P_SELECTED_RESP_ID": -999,
};
postParams.addAll(AppState().postParamsJson);
postParams['P_SELECTED_EMPLOYEE_NUMBER'] = empID;
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.getMenuEntriesList ?? [];
}, url, postParams);
}
Future<List<GetFavoriteReplacements>?> getFavoriteReplacement() async {
String url = "${ApiConsts.erpRest}Mohemm_GetFavoriteReplacements";
Map<String, dynamic> postParams = {
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json);
return responseData.mohemmGetFavoriteReplacementsList;
}, url, postParams);
}
Future<GenericResponseModel> changeFavoriteReplacements({required String email, required String employeName, required String image, required String userName, bool isFav = false}) async {
String url = "${ApiConsts.erpRest}Mohemm_ChangeFavoriteReplacements";
Map<String, dynamic> postParamsObj = {
"EMAIL_ADDRESS": email,
"EMPLOYEE_DISPLAY_NAME": employeName,
"EMPLOYEE_IMAGE": image,
"IsFavorite": isFav,
"USER_NAME": userName,
};
Map<String, dynamic> postParams = {
"Mohemm_ChangeReplacementsInputList": [postParamsObj],
//postParams["Mohemm_ChangeReplacementsInputList"] = list;
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json);
return responseData;
}, url, postParams);
}
Future<List<GetSubordinatesLeavesTotalVacationsList>> getSubordinatesLeavesList(String dateFrom, String dateTo) async {
String url = "${ApiConsts.erpRest}GET_SUBORDINATES_LEAVES_TOTAL_VACATIONS";
Map<String, dynamic> postParams = {
"P_DATE_FROM": dateFrom,
"P_DATE_TO": dateTo,
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json);
return responseData.getSubordinatesLeavesTotalVacationsList ?? [];
}, url, postParams);
}
}

@ -0,0 +1,69 @@
import 'dart:convert';
import 'package:mohem_flutter_app/api/api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/models/offers_and_discounts/get_categories_list.dart';
import 'package:mohem_flutter_app/models/offers_and_discounts/get_offers_list.dart';
class OffersAndDiscountsApiClient {
static final OffersAndDiscountsApiClient _instance = OffersAndDiscountsApiClient._internal();
OffersAndDiscountsApiClient._internal();
factory OffersAndDiscountsApiClient() => _instance;
Future<List<GetCategoriesList>> getSaleCategories() async {
List<GetCategoriesList> getSaleCategoriesList = [];
String url = "${ApiConsts.cocRest}Mohemm_ITG_GetCategories";
Map<String, dynamic> postParams = {"EmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER, "ItgPageSize": 100, "ItgPageNo": 1};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject(
(response) {
var body = json.decode(response['Mohemm_ITG_ResponseItem']);
GetCategoriesList getSaleCategoriesListObj = GetCategoriesList();
getSaleCategoriesListObj.id = 0;
getSaleCategoriesListObj.categoryNameEn = "All";
getSaleCategoriesListObj.categoryNameAr = "الجميع";
getSaleCategoriesListObj.isActive = true;
getSaleCategoriesListObj.content =
'<svg xmlns="http://www.w3.org/2000/svg" width="33.925" height="25.841" viewBox="0 0 33.925 25.841"><g id="More_Select" data-name="More Select"><path d="m30 1h-24a1 1 0 0 0 -1 1v1h21a3 3 0 0 1 3 3v21h1a1 1 0 0 0 1-1v-24a1 1 0 0 0 -1-1z"/><path d="m26 5h-24a1 1 0 0 0 -1 1v24a1 1 0 0 0 1 1h24a1 1 0 0 0 1-1v-24a1 1 0 0 0 -1-1zm-4.747 9.344-8.728 8.726a1 1 0 0 1 -1.414 0l-4.364-4.363a1 1 0 0 1 1.414-1.414l3.657 3.656 8.021-8.019a1 1 0 0 1 1.414 1.414z"/></g></svg>';
getSaleCategoriesList.add(getSaleCategoriesListObj);
body['result']['data'].forEach((v) {
getSaleCategoriesList.add(GetCategoriesList.fromJson(v));
});
return getSaleCategoriesList;
},
url,
postParams,
);
}
Future<List<OffersListModel>> getOffersList(int categoryID, int pageSize) async {
List<OffersListModel> getSaleCategoriesList = [];
String url = "${ApiConsts.cocRest}GetOfferDiscountsConfigData";
Map<String, dynamic> postParams = {"EmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER, "ItgPageSize": pageSize, "ItgPageNo": 1, "ItgCategoryID": categoryID};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject(
(response) {
var body = json.decode(response['Mohemm_ITG_ResponseItem']);
var bodyData = json.decode(body['result']['data']);
bodyData.forEach((v) {
getSaleCategoriesList.add(OffersListModel.fromJson(v));
});
return getSaleCategoriesList;
},
url,
postParams,
);
}
}

@ -1,7 +1,10 @@
import 'dart:convert';
import 'package:mohem_flutter_app/api/api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/get_announcement_details.dart';
import 'package:mohem_flutter_app/models/pending_transactions/get_pending_transactions_details.dart';
import 'package:mohem_flutter_app/models/pending_transactions/get_req_functions.dart';
@ -45,4 +48,16 @@ class PendingTransactionsApiClient {
return responseData.mohemmITGResponseItem ?? "";
}, url, postParams);
}
Future<GetAnnouncementDetails> getAnnouncementDetails(int itgAwarenessID, int itgPageNo, int itgRowID) async {
String url = "${ApiConsts.cocRest}GetAnnouncementDiscountsConfigData";
Map<String, dynamic> postParams = {"EmployeeNumber": AppState().memberInformationList?.eMPLOYEENUMBER.toString(), "ItgAwarenessID": itgAwarenessID, "ItgPageNo": itgPageNo, "ItgPageSize": 5, "ItgRowID": itgRowID};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
var jsonDecodedData = jsonDecode(jsonDecode(responseData.mohemmITGResponseItem!)['result']['data']);
return GetAnnouncementDetails.fromJson(jsonDecodedData[0]);
}, url, postParams);
}
}

@ -2,10 +2,10 @@ import 'package:mohem_flutter_app/api/api_client.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
import 'package:mohem_flutter_app/classes/consts.dart';
import 'package:mohem_flutter_app/models/generic_response_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/create_vacation_rule_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/get_item_type_notifications_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/get_notification_reassign_mode_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/get_vacation_rules_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/respond_attributes_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/vr_item_types_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/wf_look_up_list_model.dart';
@ -56,13 +56,33 @@ class VacationRuleApiClient {
}, url, postParams);
}
Future<List<RespondAttributesList>> getRespondAttributes(String pItemType, String pNotificationName) async {
Future<GenericResponseModel> getRespondAttributes(String pItemType, String pNotificationName) async {
String url = "${ApiConsts.erpRest}GET_RESPOND_ATTRIBUTES";
Map<String, dynamic> postParams = {"P_ITEM_TYPE": pItemType, "P_NOTIFICATION_NAME": pNotificationName};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.respondAttributesList ?? [];
return responseData;
}, url, postParams);
}
Future<CreateVacationRuleList?> createVacationRule(String pBeginDate, String pEndDate, String pItemType, String pNotificationName, String pMessage, String pAction, String pReplacementUserName,
List<Map<String, dynamic>> respondAttributeList) async {
String url = "${ApiConsts.erpRest}CREATE_VACATION_RULE";
Map<String, dynamic> postParams = {
"P_ITEM_TYPE": pItemType,
"P_NOTIFICATION_NAME": pNotificationName,
"P_BEGIN_DATE": pBeginDate,
"P_END_DATE": pEndDate,
"P_MESSAGE": pMessage,
"P_REPLACEMENT_USER_NAME": pReplacementUserName,
"P_ACTION": pAction,
"RespondAttributeList": respondAttributeList,
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel? responseData = GenericResponseModel.fromJson(json);
return responseData.createVacationRuleList;
}, url, postParams);
}

@ -17,15 +17,18 @@ import 'package:mohem_flutter_app/models/get_po_notification_body_list_model.dar
import 'package:mohem_flutter_app/models/get_quotation_analysis_list_model.dart';
import 'package:mohem_flutter_app/models/get_stamp_ms_notification_body_list_model.dart';
import 'package:mohem_flutter_app/models/get_stamp_ns_notification_body_list_model.dart';
import 'package:mohem_flutter_app/models/get_user_item_type_list.dart';
import 'package:mohem_flutter_app/models/itg_forms_models/itg_request_model.dart';
import 'package:mohem_flutter_app/models/member_information_list_model.dart';
import 'package:mohem_flutter_app/models/notification_get_respond_attributes_list_model.dart';
import 'package:mohem_flutter_app/models/update_user_item_type_list.dart';
import 'package:mohem_flutter_app/models/worklist/get_favorite_replacements_model.dart';
import 'package:mohem_flutter_app/models/worklist/hr/eit_otification_body_model.dart';
import 'package:mohem_flutter_app/models/worklist/hr/get_basic_det_ntf_body_list_model.dart';
import 'package:mohem_flutter_app/models/worklist/hr/get_contact_notification_body_list_model.dart';
import 'package:mohem_flutter_app/models/worklist/hr/get_phones_notification_body_list_model.dart';
import 'package:mohem_flutter_app/models/worklist/replacement_list_model.dart';
import 'package:mohem_flutter_app/models/worklist/update_user_type_list.dart';
import 'package:mohem_flutter_app/models/worklist_response_model.dart';
class WorkListApiClient {
@ -445,4 +448,31 @@ class WorkListApiClient {
return responseData;
}, url, postParams);
}
Future<List<GetUserItemTypesList>> getUserItemTypes() async {
String url = "${ApiConsts.erpRest}GET_USER_ITEM_TYPES";
Map<String, dynamic> postParams = {
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json);
return responseData.getUserItemTypesList ?? [];
}, url, postParams);
}
Future<UpdateUserItemTypesList?> updateUserItemTypes(List<Map<String, dynamic>> itemList) async {
String url = "${ApiConsts.erpRest}UPDATE_USER_ITEM_TYPES";
Map<String, dynamic> postParams = {
"UpdateItemTypeList": itemList
};
postParams.addAll(AppState().postParamsJson);
return await ApiClient().postJsonForObject((json) {
GenericResponseModel responseData = GenericResponseModel.fromJson(json);
return responseData.updateUserItemTypesList;
}, url, postParams);
}
}

@ -12,21 +12,27 @@ class MyColors {
static const Color grey57Color = Color(0xff575757);
static const Color grey67Color = Color(0xff676767);
static const Color grey77Color = Color(0xff777777);
static const Color grey80Color = Color(0xff808080);
static const Color grey70Color = Color(0xff707070);
static const Color greyACColor = Color(0xffACACAC);
static const Color grey98Color = Color(0xff989898);
static const Color lightGreyEFColor = Color(0xffEFEFEF);
static const Color lightGreyEDColor = Color(0xffEDEDED);
static const Color lightGreyE3Color = Color(0xffE3E3E3);
static const Color lightGreyE6Color = Color(0xffE6E6E6);
static const Color lightGreyEAColor = Color(0xffEAEAEA);
static const Color darkWhiteColor = Color(0xffE0E0E0);
static const Color redColor = Color(0xffD02127);
static const Color yellowColor = Color(0xffF4E31C);
static const Color orange = Color(0xFFCC9B14);
static const Color yellowFavColor = Color(0xffEAC321);
static const Color backgroundBlackColor = Color(0xff202529);
static const Color black = Color(0xff000000);
static const Color white = Color(0xffffffff);
static const Color green = Color(0xffffffff);
static const Color borderColor = Color(0xffE8E8E8);
static const Color borderE3Color = Color(0xffE3E3E3);
static const Color borderCEColor = Color(0xffCECECE);
//static const Color grey67Color = Color(0xff676767);
static const Color whiteColor = Color(0xFFEEEEEE);
static const Color greenColor = Color(0xff1FA269);
@ -38,4 +44,10 @@ class MyColors {
static const Color darkColor = Color(0xff000015);
static const Color lightGrayColor = Color(0xff808080);
static const Color DarkRedColor = Color(0xffD02127);
static const Color lightGreyColor = Color(0xffC7C7C7);
static const Color green69Color = Color(0xff1FA169);
static const Color redA3Color = Color(0xffCA3332);
static const Color green9CColor = Color(0xff259CB8);
static const Color green2DColor = Color(0xff32D892);
static const Color greyC4Color = Color(0xffC4C4C4);
}

@ -22,4 +22,5 @@ class SharedPrefsConsts {
static String doNotShowWelcomeVideo = "doNotShowWelcomeVideo";
static String mohemmWifiSSID = "mohemmWifiSSID";
static String mohemmWifiPassword = "mohemmWifiPassword";
static String editItemForSale = "editItemForSale";
}

@ -8,8 +8,8 @@ class DateUtil {
if (date != null) {
const start = "/Date(";
const end = "+0300)";
final startIndex = date.indexOf(start);
final endIndex = date.indexOf(end, startIndex + start.length);
int startIndex = date.indexOf(start);
int endIndex = date.indexOf(end, startIndex + start.length);
return DateTime.fromMillisecondsSinceEpoch(
int.parse(
date.substring(startIndex + start.length, endIndex),
@ -32,8 +32,8 @@ class DateUtil {
if (date != null) {
const start = "/Date(";
const end = ")";
final startIndex = date.indexOf(start);
final endIndex = date.indexOf(end, startIndex + start.length);
int startIndex = date.indexOf(start);
int endIndex = date.indexOf(end, startIndex + start.length);
return DateTime.fromMillisecondsSinceEpoch(
int.parse(
date.substring(startIndex + start.length, endIndex),

@ -0,0 +1,40 @@
import 'dart:convert';
import 'dart:io';
import 'dart:typed_data';
import 'package:open_file/open_file.dart';
import 'package:path_provider/path_provider.dart';
class FileProcess {
static bool isFolderCreated = false;
static Directory? directory;
static Future checkDocumentFolder() async {
try {
if (!isFolderCreated) {
directory = await getApplicationDocumentsDirectory();
await directory!.exists().then((value) {
if (value) directory!.create();
isFolderCreated = true;
});
}
} catch (e) {
print(e.toString());
}
}
static void openFile(String fileName) {
String dir = directory!.path + "/$fileName.pdf";
OpenFile.open(dir);
}
static Future<File> downloadFile(String base64Content, String fileName) async {
Uint8List bytes = base64.decode(base64Content);
await checkDocumentFolder();
String dir = directory!.path + "/" + fileName + ".pdf";
File file = File(dir);
if (!file.existsSync()) file.create();
await file.writeAsBytes(bytes);
return file;
}
}

@ -178,6 +178,31 @@ class Utils {
);
}
static Decoration containerRadius(Color background, double radius) {
return BoxDecoration(
color: background,
border: Border.all(
width: 1, //
color: background // <--- border width here
),
borderRadius: BorderRadius.circular(radius),
);
}
static Widget mHeight(double h) {
return Container(
height: h,
);
}
static Widget mDivider(Color color) {
return Divider(
// width: double.infinity,
height: 1,
color: color,
);
}
static Widget tableColumnValue(String text, {bool isCapitable = true, bool alignCenter = false}) {
return Column(
crossAxisAlignment: CrossAxisAlignment.start,
@ -192,4 +217,66 @@ class Utils {
],
);
}
/// EIT Forms date formats
static String getMonthNamedFormat(DateTime date) {
/// it will return like "29-Sep-2022"
return DateFormat('dd-MMM-yyyy').format(date);
}
static String reverseFormatDate(String date) {
String formattedDate;
if (date.isNotEmpty) {
formattedDate = date.replaceAll('/', '-');
formattedDate = formattedDate.replaceAll(' 00:00:00', '');
} else {
formattedDate = date;
}
return formattedDate;
}
static String formatStandardDate(String date) {
String formattedDate;
if (date.isNotEmpty) {
formattedDate = date.replaceAll('-', '/');
} else {
formattedDate = date;
}
return formattedDate;
}
static String reverseFormatStandardDate(String date) {
String formattedDate;
if (date.isNotEmpty) {
formattedDate = date.replaceAll('/', '-');
} else {
formattedDate = date;
}
return formattedDate;
}
static String formatDate(String date) {
String formattedDate;
if (date.isNotEmpty) {
date = date.substring(0, 10);
formattedDate = date.replaceAll('-', '/');
formattedDate = formattedDate + ' 00:00:00';
} else {
formattedDate = date;
}
return formattedDate;
}
static String formatDateNew(String date) {
String formattedDate;
if (date.isNotEmpty) {
formattedDate = date.split('T')[0];
formattedDate = formattedDate + ' 00:00:00';
} else {
formattedDate = date;
}
return formattedDate;
}
}

@ -5,6 +5,8 @@ import 'package:mohem_flutter_app/ui/attendance/vacation_rule_screen.dart';
import 'package:mohem_flutter_app/ui/bottom_sheets/attendence_details_bottom_sheet.dart';
import 'package:mohem_flutter_app/ui/landing/dashboard_screen.dart';
import 'package:mohem_flutter_app/ui/landing/today_attendance_screen.dart';
import 'package:mohem_flutter_app/ui/leave_balance/add_leave_balance_screen.dart';
import 'package:mohem_flutter_app/ui/leave_balance/leave_balance_screen.dart';
import 'package:mohem_flutter_app/ui/login/forgot_password_screen.dart';
import 'package:mohem_flutter_app/ui/login/login_screen.dart';
import 'package:mohem_flutter_app/ui/login/new_password_screen.dart';
@ -13,32 +15,51 @@ import 'package:mohem_flutter_app/ui/login/verify_login_screen.dart';
import 'package:mohem_flutter_app/ui/misc/request_submit_screen.dart';
import 'package:mohem_flutter_app/ui/my_attendance/dynamic_screens/dynamic_input_screen.dart';
import 'package:mohem_flutter_app/ui/my_attendance/dynamic_screens/dynamic_listview_screen.dart';
import 'package:mohem_flutter_app/ui/my_attendance/my_attendance_screen.dart';
import 'package:mohem_flutter_app/ui/my_attendance/services_menu_list_screen.dart';
// import 'package:mohem_flutter_app/ui/my_attendance/my_attendance_screen.dart';
import 'package:mohem_flutter_app/ui/my_team/create_request.dart';
import 'package:mohem_flutter_app/ui/my_team/employee_details.dart';
import 'package:mohem_flutter_app/ui/my_team/my_team.dart';
import 'package:mohem_flutter_app/ui/my_team/profile_details.dart';
import 'package:mohem_flutter_app/ui/my_team/subordinate_leave.dart';
import 'package:mohem_flutter_app/ui/my_team/team_members.dart';
import 'package:mohem_flutter_app/ui/my_team/view_attendance.dart';
import 'package:mohem_flutter_app/ui/payslip/monthly_pay_slip_screen.dart';
import 'package:mohem_flutter_app/ui/performance/performance.dart';
import 'package:mohem_flutter_app/ui/profile/add_update_family_member.dart';
import 'package:mohem_flutter_app/ui/profile/basic_details.dart';
import 'package:mohem_flutter_app/ui/profile/contact_details.dart';
import 'package:mohem_flutter_app/ui/profile/delete_family_member.dart';
import 'package:mohem_flutter_app/ui/profile/dynamic_screens/dynamic_input_address_screen.dart';
import 'package:mohem_flutter_app/ui/profile/dynamic_screens/dynamic_input_basic_details_screen.dart';
import 'package:mohem_flutter_app/ui/profile/family_members.dart';
import 'package:mohem_flutter_app/ui/profile/personal_info.dart';
import 'package:mohem_flutter_app/ui/profile/profile_screen.dart';
import 'package:mohem_flutter_app/ui/screens/announcements/announcement_details.dart';
import 'package:mohem_flutter_app/ui/screens/announcements/announcements.dart';
import 'package:mohem_flutter_app/ui/profile/delete_family_member.dart';
// import 'package:mohem_flutter_app/ui/my_attendance/work_from_home_screen.dart';
import 'package:mohem_flutter_app/ui/screens/eit/add_eit.dart';
import 'package:mohem_flutter_app/ui/screens/items_for_sale/add_new_item_for_sale.dart';
import 'package:mohem_flutter_app/ui/screens/items_for_sale/item_for_sale_detail.dart';
import 'package:mohem_flutter_app/ui/screens/items_for_sale/items_for_sale_home.dart';
import 'package:mohem_flutter_app/ui/screens/mowadhafhi/mowadhafhi_home.dart';
import 'package:mohem_flutter_app/ui/screens/mowadhafhi/mowadhafhi_hr_request.dart';
import 'package:mohem_flutter_app/ui/screens/mowadhafhi/request_details.dart';
import 'package:mohem_flutter_app/ui/screens/my_requests/my_requests.dart';
import 'package:mohem_flutter_app/ui/screens/my_requests/new_request.dart';
import 'package:mohem_flutter_app/ui/screens/offers_and_discounts/offers_and_discounts_details.dart';
import 'package:mohem_flutter_app/ui/screens/offers_and_discounts/offers_and_discounts_home.dart';
import 'package:mohem_flutter_app/ui/screens/pending_transactions/pending_transactions.dart';
import 'package:mohem_flutter_app/ui/screens/pending_transactions/pending_transactions_details.dart';
import 'package:mohem_flutter_app/ui/screens/profile/profile_screen.dart';
import 'package:mohem_flutter_app/ui/screens/submenu_screen.dart';
import 'package:mohem_flutter_app/ui/work_list/item_history_screen.dart';
import 'package:mohem_flutter_app/ui/work_list/itg_detail_screen.dart';
import 'package:mohem_flutter_app/ui/work_list/work_list_screen.dart';
import 'package:mohem_flutter_app/ui/work_list/worklist_detail_screen.dart';
import 'package:mohem_flutter_app/ui/my_team/my_team.dart';
import 'package:mohem_flutter_app/ui/my_team/create_request.dart';
import 'package:mohem_flutter_app/ui/work_list/worklist_settings.dart';
class AppRoutes {
static const String splash = "/splash";
@ -61,8 +82,13 @@ class AppRoutes {
static const String workListDetail = "/workListDetail";
static const String itgDetail = "/itgDetail";
static const String itemHistory = "/itemHistory";
static const String worklistSettings = "/worklistSettings";
// Leave Balance
static const String leaveBalance = "/leaveBalance";
static const String addLeaveBalance = "/addLeaveBalance";
static const String myAttendance = "/myAttendance";
static const String servicesMenuListScreen = "/servicesMenuListScreen";
static const String dynamicScreen = "/dynamicScreen";
static const String addDynamicInput = "/addDynamicInput";
static const String requestSubmitScreen = "/requestSubmitScreen";
@ -71,6 +97,7 @@ class AppRoutes {
static const String addDynamicInputProfile = 'addDynamicInputProfile';
static const String addDynamicAddressScreen = 'addDynamicAddressProfile';
//Attendance
static const String attendance = "/attendance";
static const String monthlyAttendance = "/monthlyAttendance";
@ -102,12 +129,33 @@ class AppRoutes {
static const String announcements = "/announcements";
static const String announcementsDetails = "/announcementsDetails";
// My Requests
static const String myRequests = "/myRequests";
static const String newRequest = "/newRequests";
// Items For Sale
static const String itemsForSale = "/itemsForSale";
static const String itemsForSaleDetail = "/itemsForSaleDetail";
static const String addNewItemForSale = "/addNewItemForSale";
// Offers & Discounts
static const String offersAndDiscounts = "/offersAndDiscounts";
static const String offersAndDiscountsDetails = "/offersAndDiscountsDetails";
//Pay slip
static const String monthlyPaySlip = "/monthlyPaySlip";
//performance evaluation
static const String performanceEvaluation = "/performanceEvaluation";
//My Team
static const String myTeam = "/myTeam";
static const String employeeDetails = "/employeeDetails";
static const String profileDetails = "/profileDetails";
static const String viewAttendance = "/viewAttendance";
static const String teamMembers = "/teamMembers";
static const String createRequest = "/createRequest";
static const String subordinateLeave = "/subordinateLeave";
static final Map<String, WidgetBuilder> routes = {
login: (context) => LoginScreen(),
@ -128,8 +176,14 @@ class AppRoutes {
workListDetail: (context) => WorkListDetailScreen(),
itgDetail: (context) => ItgDetailScreen(),
itemHistory: (context) => ItemHistoryScreen(),
worklistSettings: (context) => WorklistSettings(),
// Leave Balance
myAttendance: (context) => MyAttendanceScreen(),
leaveBalance: (context) => LeaveBalance(),
addLeaveBalance: (context) => AddLeaveBalanceScreen(),
servicesMenuListScreen: (context) => ServicesMenuListScreen(),
// workFromHome: (context) => WorkFromHomeScreen(),
// addWorkFromHome: (context) => AddWorkFromHomeScreen(),
profile: (context) => ProfileScreen(),
@ -144,7 +198,7 @@ class AppRoutes {
//Profile
//profile: (context) => Profile(),
//profile: (context) => Profile(),
personalInfo: (context) => PesonalInfo(),
personalInfo: (context) => PersonalInfo(),
basicDetails: (context) => BasicDetails(),
contactDetails: (context) => ContactDetails(),
familyMembers: (context) => FamilyMembers(),
@ -168,8 +222,30 @@ class AppRoutes {
announcements: (context) => Announcements(),
announcementsDetails: (context) => AnnouncementDetails(),
//My Requests
myRequests: (context) => MyRequests(),
newRequest: (context) => NewRequest(),
// Items for sale
itemsForSale: (context) => ItemsForSale(),
itemsForSaleDetail: (context) => ItemForSaleDetailPage(),
addNewItemForSale: (context) => AddNewItemForSale(),
// Offers & Discounts
offersAndDiscounts: (context) => OffersAndDiscountsHome(),
offersAndDiscountsDetails: (context) => OffersAndDiscountsDetails(),
//pay slip
monthlyPaySlip: (context) => MonthlyPaySlipScreen(),
performanceEvaluation: (context) => PerformanceAppraisal(),
//My Team
myTeam: (context) => MyTeam(),
employeeDetails: (context) => EmployeeDetails(),
profileDetails: (context) => ProfileDetails(),
viewAttendance: (context) => ViewAttendance(),
teamMembers: (context) => TeamMembers(),
createRequest: (context) => CreateRequest(),
subordinateLeave: (context) => SubordinateLeave(),
};
}

@ -1,9 +1,13 @@
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:mohem_flutter_app/classes/colors.dart';
extension IntExtensions on int {
Widget get height => SizedBox(height: toDouble());
Widget get width => SizedBox(width: toDouble());
Widget get divider => Divider(height: toDouble(), thickness: toDouble(), color: MyColors.lightGreyEFColor);
Widget get makeItSquare => SizedBox(width: toDouble(), height: toDouble());
}

@ -15,8 +15,9 @@ extension CapExtension on String {
extension EmailValidator on String {
Widget get toWidget => Text(this);
Widget toText10({Color? color, bool isBold = false}) => Text(
Widget toText10({Color? color, bool isBold = false, int? maxlines}) => Text(
this,
maxLines: maxlines,
style: TextStyle(fontSize: 10, fontWeight: isBold ? FontWeight.bold : FontWeight.w600, color: color ?? MyColors.darkTextColor, letterSpacing: -0.4),
);
@ -49,15 +50,22 @@ extension EmailValidator on String {
style: TextStyle(fontSize: 13, fontWeight: FontWeight.w600, color: color ?? MyColors.darkTextColor, letterSpacing: -0.52, decoration: isUnderLine ? TextDecoration.underline : null),
);
Widget toText14({Color? color, bool isBold = false}) => Text(
Widget toText14({Color? color, bool isBold = false, FontWeight? weight, int? maxlines}) => Text(
this,
style: TextStyle(color: color ?? MyColors.darkTextColor, fontSize: 14, letterSpacing: -0.48, fontWeight: isBold ? FontWeight.bold : FontWeight.w600),
maxLines: maxlines,
style: TextStyle(color: color ?? MyColors.darkTextColor, fontSize: 14, letterSpacing: -0.48, fontWeight: weight ?? (isBold ? FontWeight.bold : FontWeight.w600)),
);
Widget toText16({Color? color, bool isBold = false, int? maxlines}) => Text(
Widget toText16({Color? color, bool isUnderLine = false, bool isBold = false, int? maxlines}) => Text(
this,
maxLines: maxlines,
style: TextStyle(color: color ?? MyColors.darkTextColor, fontSize: 16, letterSpacing: -0.64, fontWeight: isBold ? FontWeight.bold : FontWeight.w600),
style: TextStyle(
color: color ?? MyColors.darkTextColor,
fontSize: 16,
letterSpacing: -0.64,
fontWeight: isBold ? FontWeight.bold : FontWeight.w600,
decoration: isUnderLine ? TextDecoration.underline : null,
),
);
Widget toText17({Color? color, bool isBold = false}) => Text(
@ -65,6 +73,11 @@ extension EmailValidator on String {
style: TextStyle(color: color ?? MyColors.darkTextColor, fontSize: 17, letterSpacing: -0.68, fontWeight: isBold ? FontWeight.bold : FontWeight.w600),
);
Widget toText18({Color? color, bool isBold = false}) => Text(
this,
style: TextStyle(fontSize: 18, fontWeight: isBold ? FontWeight.bold : FontWeight.w600, color: color ?? MyColors.darkTextColor, letterSpacing: -1.08),
);
Widget toText20({Color? color, bool isBold = false}) => Text(
this,
style: TextStyle(fontSize: 20, fontWeight: isBold ? FontWeight.bold : FontWeight.w600, color: color ?? MyColors.darkTextColor, letterSpacing: -0.4),

@ -1,5 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter/widgets.dart';
import 'package:mohem_flutter_app/classes/colors.dart';
import 'package:mohem_flutter_app/extensions/int_extensions.dart';
import 'package:mohem_flutter_app/extensions/string_extensions.dart';
import 'package:shimmer/shimmer.dart';
@ -41,7 +42,7 @@ extension WidgetExtensions on Widget {
child: this,
);
Widget objectContainerView({String title = ""}) {
Widget objectContainerView({String title = "", String note = ""}) {
return Container(
padding: const EdgeInsets.only(top: 15, bottom: 15, left: 14, right: 14),
decoration: BoxDecoration(
@ -62,6 +63,31 @@ extension WidgetExtensions on Widget {
if (title.isNotEmpty) title.toText16(),
if (title.isNotEmpty) 12.height,
this,
if (note.isNotEmpty) note.toText11(),
],
),
);
}
Widget objectContainerBorderView({String title = "", String note = ""}) {
return Container(
padding: const EdgeInsets.only(top: 15, bottom: 15, left: 14, right: 14),
alignment: Alignment.center,
decoration: BoxDecoration(
borderRadius: BorderRadius.circular(15),
border: Border.all(
color: MyColors.lightGreyEFColor,
width: 1,
),
),
child: Column(
crossAxisAlignment: CrossAxisAlignment.start,
mainAxisSize: MainAxisSize.min,
children: [
if (title.isNotEmpty) title.toText16(),
if (title.isNotEmpty) 12.height,
this,
if (note.isNotEmpty) note.toText11(),
],
),
);

@ -47,6 +47,9 @@ class CodegenLoader extends AssetLoader{
"viewAllServices": "عرض جميع الخدمات",
"monthlyAttendance": "الحضور الشهري",
"vacationRule": "حكم اجازة",
"vacationType": "نوع الاجازة",
"startDateT": "تاريخ البدء",
"endDateT": "تاريخ الانتهاء",
"workFromHome": "العمل من المنزل",
"ticketRequest": "طلب تذكرة",
"viewAllOffers": "مشاهدة جميع العروض",
@ -110,6 +113,7 @@ class CodegenLoader extends AssetLoader{
"cancel": "إلغاء",
"requestedItems": "العناصر المطلوبة",
"request": "طلب",
"myRequest": "طلبي",
"actions": "أجراءات",
"delegate": "مندوب",
"request_info": "اطلب معلومات",
@ -248,6 +252,7 @@ class CodegenLoader extends AssetLoader{
"myAttendance": "حضوري",
"workOnBreak": "التعويض عن العمل اثناءالاستراحه",
"next": "التالي",
"apply": "يتقدم",
"mobile": "التليفون المحمول",
"completingYear": "نحن نقدر لك لاستكمال خدمة",
"year": "سنة",
@ -279,6 +284,9 @@ class CodegenLoader extends AssetLoader{
"summaryOfInformation": "ملخص المعلومات",
"totalPayAmount": "المبلغ الإجمالي للدفع",
"paymentInformation": "معلومات الدفع",
"performance": "تقييم الاداء",
"performanceEvaluation": "تقييم الأداء في",
"performanceEvaluationIn": "تقييم أدائك في",
"amount": "مقدار",
"correctCurrentDatails": "تعديل او اكمال التفاصيل الحالية",
"selectType": " حدد نوع التغيير الذي تريد القيام به",
@ -323,11 +331,63 @@ class CodegenLoader extends AssetLoader{
"requestType": "نوع الطلب",
"employeeDigitalID": "هويةالموظف الرقمية",
"businessCard": "بطاقة العمل",
"viewBusinessCard": "عرض بطاقة العمل",
"logout": "تسجيل خروج",
"checkOut": "وقت الخروج",
"regular": "منتظم",
"mark": "علامة",
"selectMethodOfAttendance": "اختر طريقة تسجيل الحضور",
"comeNearHMGWifi": "HMG wifi من فضلك اقترب من",
"deliverNotificationToMeRegardless": "تسليم الإخطارات إلي بغض النظر عن أي قواعد عامة",
"close": "أغلق",
"respond": "يرد",
"vacationRuleAdded": "تمت إضافة قاعدة الإجازة",
"selectTypeT": "اختر صنف",
"notification": "تنبيه",
"selectNotification": "حدد إعلام",
"ifAllSelectedYouWillSkip": "* إذا تم تحديد الكل ، فستنتقل إلى الخطوة 3",
"applyForVacationRule": "التقدم بطلب للحصول على قانون الإجازة",
"step1": "الخطوة 1",
"step2": "الخطوة 2",
"step3": "الخطوه 3",
"message": "رسالة",
"writeAMessage": "اكتب رسالة",
"notificationReassign": "إعادة تعيين الإخطار",
"selectEmployee": "حدد الموظف",
"searchEmployeeForReplacement": "ابحث عن موظف بديل",
"searchForEmployee": "ابحث عن موظف",
"pleaseSpecifyEndTime": "الرجاء تحديد وقت الانتهاء",
"pleaseSelectNotificationReassign": "يرجى تحديد إعادة تعيين الإخطار",
"pleaseSelectEmployeeForReplacement": "الرجاء تحديد موظف للاستبدال",
"pleaseSelectAction": "الرجاء تحديد الإجراء",
"pleaseSelectDate": "الرجاء تحديد التاريخ",
"todayAttendance": "حضور اليوم",
"viewAttendance": "عرض الحضور",
"teamMembers": "اعضاءالفريق",
"profileDetails": "الملف الشخصي",
"noResultsFound": "لايوجد نتائج",
"searchBy": "بحث بواسطة",
"myTeamMembers": "اعضاء فريقي",
"save": "حفظ",
"TurnNotificationsFor": "تفعيل الاشعارات",
"worklistSettings": "اعدادات الاشعارات",
"absenceType": "نوع الغياب",
"absenceCategory": "فئة الغياب",
"days": "أيام",
"hours": "ساعات",
"approvalStatus": "حالة القبول",
"absenceStatus": "حالة الغياب",
"subordinateLeave": "إجازة التابعيين",
"numberDays": "عدد الأيام",
"poweredBy": "مشغل بواسطة",
"cloudSolutions": "حلول السحابة",
"selectTemplate": "حدد قالب",
"myPostedAds": "إعلاناتي المنشورة",
"browseCategories": "تصفح الفئات",
"searchItems": "عناصر البحث",
"offerAndDiscounts": "العروض والخصومات",
"offerValid": "العرض صالح",
"offerExpired": "انتهى العرض",
"profile": {
"reset_password": {
"label": "Reset Password",
@ -395,6 +455,9 @@ static const Map<String,dynamic> en_US = {
"viewAllServices": "View All Services",
"monthlyAttendance": "Monthly Attendance",
"vacationRule": "Vacation Rule",
"vacationType": "Vacation Type",
"startDateT": "Start Date",
"endDateT": "End Date",
"workFromHome": "Work From Home",
"ticketRequest": "Ticket Request",
"viewAllOffers": "View All Offers",
@ -455,6 +518,7 @@ static const Map<String,dynamic> en_US = {
"cancel": "Cancel",
"requestedItems": "Requested Items",
"request": "Request",
"myRequest": "My Request",
"actions": "Actions",
"delegate": "Delegate",
"request_info": "Request Info",
@ -596,6 +660,7 @@ static const Map<String,dynamic> en_US = {
"myAttendance": "My Attendance",
"workOnBreak": "Work On Break",
"next": "Next",
"apply": "Apply",
"mobile": "Mobile",
"year": "Year",
"month": "Month",
@ -674,8 +739,63 @@ static const Map<String,dynamic> en_US = {
"checkOut": "Check Out",
"regular": "Regular",
"mark": "Mark",
"performance": "Performance Evaluation",
"performanceEvaluationIn": "Your performance Evaluation in ",
"viewBusinessCard": "View Business Card",
"performanceEvaluation": "Performance Evaluation",
"logout": "Logout",
"selectMethodOfAttendance": "Select the method to mark the attendance",
"comeNearHMGWifi": "Please come near to HMG wifi",
"deliverNotificationToMeRegardless": "Deliver notifications to me regardless of any general rules",
"close": "Close",
"respond": "Respond",
"vacationRuleAdded": "Vacation rule added",
"selectTypeT": "Select Type",
"notification": "Notification",
"selectNotification": "Select Notification",
"ifAllSelectedYouWillSkip": "*If All is selected, you will skip to step 3",
"applyForVacationRule": "Apply for Vacation Rule",
"step1": "Step 1",
"step2": "Step 2",
"step3": "Step 3",
"message": "Message",
"writeAMessage": "Write a message",
"notificationReassign": "Notification Reassign",
"selectEmployee": "Select Employee",
"searchEmployeeForReplacement": "Search employee for replacement",
"searchForEmployee": "Search for Employee",
"pleaseSpecifyEndTime": "Please specify End Time",
"pleaseSelectNotificationReassign": "Please select notification reassign",
"pleaseSelectEmployeeForReplacement": "Please select employee for replacement",
"pleaseSelectAction": "Please select action",
"pleaseSelectDate": "Please select date",
"todayAttendance": "Today's Attendance",
"viewAttendance": "View Attendance",
"teamMembers": "Team Members",
"profileDetails": "Profile Details",
"noResultsFound": "No Results Found",
"searchBy": "Search by",
"myTeamMembers": "My Team Members",
"save": "Save",
"TurnNotificationsFor": "Turn on notifications for",
"worklistSettings": "Worklist Settings",
"absenceType": "Absence Type",
"absenceCategory": "Absence Category",
"days": "Days",
"hours": "Hours",
"approvalStatus": "Approval Status",
"absenceStatus": "Absence Status",
"poweredBy": "Powered By",
"cloudSolutions": "Cloud Solutions",
"subordinateLeave": "Subordinate Leave",
"numberDays": "Number of days",
"selectTemplate": "Select Template",
"myPostedAds": "My posted ads",
"browseCategories": "Browse Categories",
"searchItems": "Search Items",
"offerAndDiscounts": "Offer & Discounts",
"offerValid": "Offer Valid",
"offerExpired": "Offer Expired",
"profile": {
"reset_password": {
"label": "Reset Password",

@ -1,6 +1,6 @@
// DO NOT EDIT. This is code generated via package:easy_localization/generate.dart
abstract class LocaleKeys {
abstract class LocaleKeys {
static const mohemm = 'mohemm';
static const english = 'english';
static const arabic = 'arabic';
@ -32,6 +32,7 @@ abstract class LocaleKeys {
static const viewAllServices = 'viewAllServices';
static const monthlyAttendance = 'monthlyAttendance';
static const vacationRule = 'vacationRule';
static const vacationType = 'vacationType';
static const startDateT = 'startDateT';
static const endDateT = 'endDateT';
static const workFromHome = 'workFromHome';
@ -97,6 +98,7 @@ abstract class LocaleKeys {
static const cancel = 'cancel';
static const requestedItems = 'requestedItems';
static const request = 'request';
static const myRequest = 'myRequest';
static const actions = 'actions';
static const delegate = 'delegate';
static const request_info = 'request_info';
@ -247,7 +249,7 @@ abstract class LocaleKeys {
static const Payroll = 'Payroll';
static const civilIdentityNumber = 'civilIdentityNumber';
static const dateOfBirth = 'dateOfBirth';
static const maritalStatus = 'maritalStatus ';
static const maritalStatus = 'maritalStatus ';
static const fullName = 'fullName';
static const remove = 'remove';
static const submit = 'submit';
@ -267,13 +269,16 @@ abstract class LocaleKeys {
static const summaryOfInformation = 'summaryOfInformation';
static const totalPayAmount = 'totalPayAmount';
static const paymentInformation = 'paymentInformation';
static const performance = 'performance';
static const performanceEvaluation = 'performanceEvaluation';
static const performanceEvaluationIn = 'performanceEvaluationIn';
static const amount = 'amount';
static const correctCurrentDatails = 'correctCurrentDatails';
static const selectType = 'selectType';
static const enterNewInfo = 'enterNewInfo';
static const endDate = 'endDate';
static const removeThisMember = 'removeThisMember';
static const updateThisMember = 'updateThisMember ';
static const updateThisMember = 'updateThisMember ';
static const addNewFamilyMember = 'addNewFamilyMember';
static const addRow = 'addRow';
static const pleaseSelect = 'pleaseSelect';
@ -282,7 +287,6 @@ abstract class LocaleKeys {
static const add = 'add';
static const myProfile = 'myProfile';
static const mowadhafhi = 'mowadhafhi';
static const performance = 'performance';
static const searchAnnouncements = 'searchAnnouncements';
static const announcements = 'announcements';
static const swipeRequest = 'swipeRequest';
@ -312,11 +316,63 @@ abstract class LocaleKeys {
static const requestType = 'requestType';
static const employeeDigitalID = 'employeeDigitalID';
static const businessCard = 'businessCard';
static const viewBusinessCard = 'viewBusinessCard';
static const logout = 'logout';
static const checkOut = 'checkOut';
static const regular = 'regular';
static const mark = 'mark';
static const selectMethodOfAttendance = 'selectMethodOfAttendance';
static const comeNearHMGWifi = 'comeNearHMGWifi';
static const deliverNotificationToMeRegardless = 'deliverNotificationToMeRegardless';
static const close = 'close';
static const respond = 'respond';
static const vacationRuleAdded = 'vacationRuleAdded';
static const selectTypeT = 'selectTypeT';
static const notification = 'notification';
static const selectNotification = 'selectNotification';
static const ifAllSelectedYouWillSkip = 'ifAllSelectedYouWillSkip';
static const applyForVacationRule = 'applyForVacationRule';
static const step1 = 'step1';
static const step2 = 'step2';
static const step3 = 'step3';
static const message = 'message';
static const writeAMessage = 'writeAMessage';
static const notificationReassign = 'notificationReassign';
static const selectEmployee = 'selectEmployee';
static const searchEmployeeForReplacement = 'searchEmployeeForReplacement';
static const searchForEmployee = 'searchForEmployee';
static const pleaseSpecifyEndTime = 'pleaseSpecifyEndTime';
static const pleaseSelectNotificationReassign = 'pleaseSelectNotificationReassign';
static const pleaseSelectEmployeeForReplacement = 'pleaseSelectEmployeeForReplacement';
static const pleaseSelectAction = 'pleaseSelectAction';
static const pleaseSelectDate = 'pleaseSelectDate';
static const todayAttendance = 'todayAttendance';
static const viewAttendance = 'viewAttendance';
static const teamMembers = 'teamMembers';
static const profileDetails = 'profileDetails';
static const noResultsFound = 'noResultsFound';
static const searchBy = 'searchBy';
static const myTeamMembers = 'myTeamMembers';
static const save = 'save';
static const TurnNotificationsFor = 'TurnNotificationsFor';
static const worklistSettings = 'worklistSettings';
static const absenceType = 'absenceType';
static const absenceCategory = 'absenceCategory';
static const days = 'days';
static const hours = 'hours';
static const approvalStatus = 'approvalStatus';
static const absenceStatus = 'absenceStatus';
static const subordinateLeave = 'subordinateLeave';
static const numberDays = 'numberDays';
static const poweredBy = 'poweredBy';
static const cloudSolutions = 'cloudSolutions';
static const selectTemplate = 'selectTemplate';
static const myPostedAds = 'myPostedAds';
static const browseCategories = 'browseCategories';
static const searchItems = 'searchItems';
static const offerAndDiscounts = 'offerAndDiscounts';
static const offerValid = 'offerValid';
static const offerExpired = 'offerExpired';
static const profile_reset_password_label = 'profile.reset_password.label';
static const profile_reset_password_username = 'profile.reset_password.username';
static const profile_reset_password_password = 'profile.reset_password.password';
@ -335,5 +391,5 @@ abstract class LocaleKeys {
static const gender_with_arg = 'gender.with_arg';
static const gender = 'gender';
static const reset_locale = 'reset_locale';
static const performanceEvaluation = 'performanceEvaluation';
}

@ -1,7 +1,6 @@
import 'dart:io';
import 'package:easy_localization/easy_localization.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:flutter/material.dart';
import 'package:logger/logger.dart';
import 'package:mohem_flutter_app/app_state/app_state.dart';
@ -24,7 +23,6 @@ var logger = Logger(
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await EasyLocalization.ensureInitialized();
await Firebase.initializeApp();
AppState().setPostParamsModel(
PostParamsModel(channel: 31, versionID: 5.0, mobileType: Platform.isAndroid ? "android" : "ios"),
);
@ -62,7 +60,6 @@ class MyApp extends StatelessWidget {
Widget build(BuildContext context) {
return Sizer(
builder: (context, orientation, deviceType) {
print(AppState().postParamsObject?.toJson());
var obj = AppState().postParamsObject;
obj?.languageID = EasyLocalization.of(context)?.locale.languageCode == "ar" ? 1 : 2;
AppState().setPostParamsModel(obj!);

@ -10,9 +10,9 @@ class AddAttSuccessList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['AddSuccess'] = this.addSuccess;
data['AttachmentID'] = this.attachmentID;
return data;
}
}
}

@ -10,7 +10,7 @@ class AddAttachmentList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['P_RETURN_MSG'] = this.pRETURNMSG;
data['P_RETURN_STATUS'] = this.pRETURNSTATUS;
return data;

@ -16,7 +16,7 @@ class AttachmentModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['AttachmentID'] = this.attachmentID;
data['P_FILE_CONTENT_TYPE'] = this.pFILECONTENTTYPE;
data['P_FILE_DATA'] = this.pFILEDATA;

@ -21,7 +21,7 @@ class BasicMemberInformationModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['P_EMAIL_ADDRESS'] = this.pEMAILADDRESS;
data['P_LEGISLATION_CODE'] = this.pLEGISLATIONCODE;
data['P_MOBILE_NUMBER'] = this.pMOBILENUMBER;

@ -139,7 +139,7 @@ class CheckMobileAppVersionModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['Date'] = this.date;
data['LanguageID'] = this.languageID;
data['ServiceName'] = this.serviceName;

@ -19,7 +19,7 @@ class ContentInfoModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['totalItemsCount'] = this.totalItemsCount;
data['statusCode'] = this.statusCode;
data['message'] = this.message;
@ -52,7 +52,7 @@ class ContentInfoDataModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['contentInfoId'] = this.contentInfoId;
data['contentTypeId'] = this.contentTypeId;
data['content'] = this.content;

@ -0,0 +1,7 @@
class DrawerMenuItem {
String icon;
String title;
String routeName;
DrawerMenuItem(this.icon, this.title, this.routeName);
}

@ -21,7 +21,7 @@ class GetSetValuesRequestModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['SEGMENT_NAME'] = this.sEGMENTNAME;
data['VALUE_COLUMN_NAME'] = this.vALUECOLUMNNAME;
data['DESCRIPTION'] = this.dESCRIPTION;

@ -16,7 +16,7 @@ class ValidateEitTransactionModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['TRANSACTION_NUMBER'] = this.tRANSACTIONNUMBER;
data['NAME'] = this.nAME;
data['VARCHAR2_VALUE'] = this.vARCHAR2VALUE;

@ -13,7 +13,7 @@ class GetEitTransactionsModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
if (this.collectionTransaction != null) {
data['Collection_Transaction'] = this.collectionTransaction!.map((v) => v.toJson()).toList();
}
@ -80,7 +80,7 @@ class CollectionTransaction {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['APPLICATION_COLUMN_NAME'] = this.aPPLICATIONCOLUMNNAME;
data['DATATYPE'] = this.dATATYPE;
data['DATE_VALUE'] = this.dATEVALUE;

@ -32,6 +32,15 @@ import 'package:mohem_flutter_app/models/get_schedule_shifts_details_list_model.
import 'package:mohem_flutter_app/models/get_stamp_ms_notification_body_list_model.dart';
import 'package:mohem_flutter_app/models/get_stamp_ns_notification_body_list_model.dart';
import 'package:mohem_flutter_app/models/get_time_card_summary_list_model.dart';
import 'package:mohem_flutter_app/models/get_user_item_type_list.dart';
import 'package:mohem_flutter_app/models/leave_balance/calculate_absence_duration_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/cancel_hr_transaction_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/get_absence_attendance_types_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/get_absence_dff_structure_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/get_absence_transaction_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/start_absence_approval_proccess_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/sumbit_absence_transaction_list_model.dart';
import 'package:mohem_flutter_app/models/leave_balance/validate_absence_transaction_list_model.dart';
import 'package:mohem_flutter_app/models/member_information_list_model.dart';
import 'package:mohem_flutter_app/models/member_login_list_model.dart';
import 'package:mohem_flutter_app/models/monthly_pay_slip/get_deductions_List_model.dart';
@ -47,6 +56,12 @@ import 'package:mohem_flutter_app/models/mowadhafhi/get_ticket_details.dart';
import 'package:mohem_flutter_app/models/mowadhafhi/get_ticket_transactions.dart';
import 'package:mohem_flutter_app/models/mowadhafhi/get_ticket_types.dart';
import 'package:mohem_flutter_app/models/mowadhafhi/get_tickets_list.dart';
import 'package:mohem_flutter_app/models/my_requests/get_ccp_dff_structure_model.dart';
import 'package:mohem_flutter_app/models/my_requests/get_ccp_output_model.dart';
import 'package:mohem_flutter_app/models/my_requests/get_ccp_transactions_model.dart';
import 'package:mohem_flutter_app/models/my_requests/get_concurrent_programs_model.dart';
import 'package:mohem_flutter_app/models/my_team/get_employee_subordinates_list.dart';
import 'package:mohem_flutter_app/models/my_team/get_subordinates_leaves_total_vacations_list_model.dart';
import 'package:mohem_flutter_app/models/notification_action_model.dart';
import 'package:mohem_flutter_app/models/notification_get_respond_attributes_list_model.dart';
import 'package:mohem_flutter_app/models/pending_transactions/get_pending_transactions_details.dart';
@ -56,18 +71,21 @@ import 'package:mohem_flutter_app/models/privilege_list_model.dart';
import 'package:mohem_flutter_app/models/profile/basic_details_cols_structions.dart';
import 'package:mohem_flutter_app/models/profile/basic_details_dff_structure.dart';
import 'package:mohem_flutter_app/models/profile/get_address_dff_structure_list.dart';
import 'package:mohem_flutter_app/models/profile/get_contact_clos_structure_list.dart';
import 'package:mohem_flutter_app/models/profile/get_contact_details_list.dart';
import 'package:mohem_flutter_app/models/profile/get_countries_list_model.dart';
import 'package:mohem_flutter_app/models/profile/phone_number_types_model.dart';
import 'package:mohem_flutter_app/models/profile/start_address_approval_process_model.dart';
import 'package:mohem_flutter_app/models/profile/submit_address_transaction.dart';
import 'package:mohem_flutter_app/models/profile/get_contact_clos_structure_list.dart';
import 'package:mohem_flutter_app/models/profile/get_contact_details_list.dart';
import 'package:mohem_flutter_app/models/profile/submit_basic_details_transaction_model.dart';
import 'package:mohem_flutter_app/models/profile/submit_contact_transaction_list_model.dart';
import 'package:mohem_flutter_app/models/start_eit_approval_process_model.dart';
import 'package:mohem_flutter_app/models/start_phone_approval_process_model.dart';
import 'package:mohem_flutter_app/models/submit_eit_transaction_list_model.dart';
import 'package:mohem_flutter_app/models/subordinates_on_leaves_model.dart';
import 'package:mohem_flutter_app/models/update_item_type_success_list.dart';
import 'package:mohem_flutter_app/models/update_user_item_type_list.dart';
import 'package:mohem_flutter_app/models/vacation_rule/create_vacation_rule_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/get_item_type_notifications_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/get_notification_reassign_mode_list_model.dart';
import 'package:mohem_flutter_app/models/vacation_rule/get_vacation_rules_list_model.dart';
@ -116,8 +134,8 @@ class GenericResponseModel {
String? bCLogo;
BasicMemberInformationModel? basicMemberInformation;
bool? businessCardPrivilege;
String? calculateAbsenceDuration;
String? cancelHRTransactionLIst;
CalculateAbsenceDuration? calculateAbsenceDuration;
CancelHRTransactionLIst? cancelHRTransactionLIst;
String? chatEmployeeLoginList;
String? companyBadge;
String? companyImage;
@ -125,17 +143,19 @@ class GenericResponseModel {
String? companyImageURL;
String? companyMainCompany;
List<GetCountriesListModel>? countryList;
String? createVacationRuleList;
CreateVacationRuleList? createVacationRuleList;
String? deleteAttachmentList;
String? deleteVacationRuleList;
String? disableSessionList;
String? employeeQR;
String? forgetPasswordTokenID;
List<String>? getCcpTransactionsListNew;
List<String>? getConcurrentProgramsList;
List<String>? getAbsenceAttachmentsList;
List<String>? getAbsenceAttendanceTypesList;
List<GetAbsenceAttendanceTypesList>? getAbsenceAttendanceTypesList;
List<GetAbsenceCollectionNotificationBodyList>? getAbsenceCollectionNotificationBodyList;
List<String>? getAbsenceDffStructureList;
List<String>? getAbsenceTransactionList;
List<GetAbsenceDffStructureList>? getAbsenceDffStructureList;
List<GetAbsenceTransactionList>? getAbsenceTransactionList;
List<GetAccrualBalancesList>? getAccrualBalancesList;
List<GetActionHistoryList>? getActionHistoryList;
List<GetAddressDffStructureList>? getAddressDffStructureList;
@ -149,11 +169,7 @@ class GenericResponseModel {
List<String>? getCEICollectionNotificationBodyList;
List<String>? getCEIDFFStructureList;
List<String>? getCEITransactionList;
List<String>? getCcpDffStructureList;
List<String>? getCcpOutputList;
List<String>? getCcpTransactionsList;
List<String>? getCcpTransactionsListNew;
List<String>? getConcurrentProgramsList;
List<GetContactColsStructureList>? getContactColsStructureList;
List<GetContactDetailsList>? getContactDetailsList;
List<GetContactDffStructureList>? getContactDffStructureList;
@ -170,7 +186,7 @@ class GenericResponseModel {
List<GetEmployeeBasicDetailsList>? getEmployeeBasicDetailsList;
List<GetEmployeeContactsList>? getEmployeeContactsList;
List<GetEmployeePhonesList>? getEmployeePhonesList;
List<String>? getEmployeeSubordinatesList;
List<GetEmployeeSubordinatesList>? getEmployeeSubordinatesList;
List<String>? getFliexfieldStructureList;
List<String>? getHrCollectionNotificationBodyList;
List<String>? getHrTransactionList;
@ -195,6 +211,7 @@ class GenericResponseModel {
// List<String>? getPendingReqDetailsList;
// List<String>? getPendingReqFunctionsList;
List<GetPerformanceAppraisalList>? getPerformanceAppraisalList;
List<GetPhonesNotificationBodyList>? getPhonesNotificationBodyList;
List<GetPoItemHistoryList>? getPoItemHistoryList;
GetPoNotificationBodyList? getPoNotificationBodyList;
@ -209,9 +226,13 @@ class GenericResponseModel {
List<String>? getShiftTypesList;
List<GetStampMsNotificationBodyList>? getStampMsNotificationBodyList;
List<GetStampNsNotificationBodyList>? getStampNsNotificationBodyList;
List<GetConcurrentProgramsModel>? getConcurrentProgramsModel;
List<GetCCPTransactionsModel>? getCCPTransactionsModel;
GetCCPOutputModel? getCCPOutputModel;
List<GetCCPDFFStructureModel>? getCCPDFFStructureModel;
List<String>? getSubordinatesAttdStatusList;
List<SubordinatesLeavesList>? getSubordinatesLeavesList;
List<String>? getSubordinatesLeavesTotalVacationsList;
List<GetSubordinatesLeavesTotalVacationsList>? getSubordinatesLeavesTotalVacationsList;
List<GetSummaryOfPaymentList>? getSummaryOfPaymentList;
List<String>? getSwipesList;
List<String>? getTermColsStructureList;
@ -228,7 +249,7 @@ class GenericResponseModel {
List<GetDepartmentSections>? getDepartmentSections;
List<GetPendingTransactionsFunctions>? getPendingTransactionsFunctions;
List<GetPendingTransactionsDetails>? getPendingTransactionsDetails;
List<String>? getUserItemTypesList;
List<GetUserItemTypesList>? getUserItemTypesList;
List<GetVacationRulesList>? getVacationRulesList;
List<String>? getVaccinationOnHandList;
List<String>? getVaccinationsList;
@ -283,7 +304,7 @@ class GenericResponseModel {
String? pForm;
String? pINFORMATION;
int? pMBLID;
String? pNUMOFSUBORDINATES;
int? pNUMOFSUBORDINATES;
int? pOPENNTFNUMBER;
String? pQUESTION;
int? pSESSIONID;
@ -295,13 +316,13 @@ class GenericResponseModel {
String? registerUserNameList;
List<ReplacementList>? replacementList;
List<RespondAttributesList>? respondAttributesList;
String? respondRolesList;
List<String>? respondRolesList;
String? resubmitAbsenceTransactionList;
String? resubmitEITTransactionList;
String? resubmitHrTransactionList;
String? sFHGetPoNotificationBodyList;
String? sFHGetPrNotificationBodyList;
String? startAbsenceApprovalProccess;
StartAbsenceApprovalProccess? startAbsenceApprovalProccess;
StartAddressApprovalProcess? startAddressApprovalProcessList;
String? startBasicDetApprProcessList;
String? startCeiApprovalProcess;
@ -322,19 +343,19 @@ class GenericResponseModel {
String? submitSITTransactionList;
String? submitTermTransactionList;
List<SubordinatesLeavesList>? subordinatesOnLeavesList;
String? sumbitAbsenceTransactionList;
SumbitAbsenceTransactionList? sumbitAbsenceTransactionList;
String? tokenID;
String? updateAttachmentList;
String? updateEmployeeImageList;
String? updateItemTypeSuccessList;
String? updateUserItemTypesList;
List<UpdateItemTypeSuccessList>? updateItemTypeSuccessList;
UpdateUserItemTypesList? updateUserItemTypesList;
String? updateVacationRuleList;
String? vHREmployeeLoginList;
String? vHRGetEmployeeDetailsList;
String? vHRGetManagersDetailsList;
String? vHRGetProjectByCodeList;
bool? vHRIsVerificationCodeValid;
String? validateAbsenceTransactionList;
ValidateAbsenceTransactionList? validateAbsenceTransactionList;
ValidateEITTransactionList? validateEITTransactionList;
String? validatePhonesTransactionList;
List<VrItemTypesList>? vrItemTypesList;
@ -413,8 +434,6 @@ class GenericResponseModel {
this.getCEICollectionNotificationBodyList,
this.getCEIDFFStructureList,
this.getCEITransactionList,
this.getCcpDffStructureList,
this.getCcpOutputList,
this.getCcpTransactionsList,
this.getCcpTransactionsListNew,
this.getConcurrentProgramsList,
@ -455,8 +474,6 @@ class GenericResponseModel {
this.getOrganizationsSalariesList,
this.getPaymentInformationList,
this.getPayslipList,
// this.getPendingReqDetailsList,
// this.getPendingReqFunctionsList,
this.getPerformanceAppraisalList,
this.getPhonesNotificationBodyList,
this.getPoItemHistoryList,
@ -491,6 +508,10 @@ class GenericResponseModel {
this.getDepartmentSections,
this.getPendingTransactionsFunctions,
this.getPendingTransactionsDetails,
this.getConcurrentProgramsModel,
this.getCCPTransactionsModel,
this.getCCPOutputModel,
this.getCCPDFFStructureModel,
this.getUserItemTypesList,
this.getVacationRulesList,
this.getVaccinationOnHandList,
@ -640,16 +661,16 @@ class GenericResponseModel {
if (json['AddAttSuccessList'] != null) {
addAttSuccessList = <AddAttSuccessList>[];
json['AddAttSuccessList'].forEach((v) {
addAttSuccessList!.add(new AddAttSuccessList.fromJson(v));
addAttSuccessList!.add(AddAttSuccessList.fromJson(v));
});
}
addAttachmentList = json['AddAttachment_List'] != null ? new AddAttachmentList.fromJson(json['AddAttachment_List']) : null;
addAttachmentList = json['AddAttachment_List'] != null ? AddAttachmentList.fromJson(json['AddAttachment_List']) : null;
bCDomain = json['BC_Domain'];
bCLogo = json['BC_Logo'];
basicMemberInformation = json['BasicMemberInformation'] != null ? new BasicMemberInformationModel.fromJson(json['BasicMemberInformation']) : null;
basicMemberInformation = json['BasicMemberInformation'] != null ? BasicMemberInformationModel.fromJson(json['BasicMemberInformation']) : null;
businessCardPrivilege = json['BusinessCardPrivilege'];
calculateAbsenceDuration = json['CalculateAbsenceDuration'];
cancelHRTransactionLIst = json['CancelHRTransactionLIst'];
calculateAbsenceDuration = json['CalculateAbsenceDuration'] != null ? new CalculateAbsenceDuration.fromJson(json['CalculateAbsenceDuration']) : null;
cancelHRTransactionLIst = json['CancelHRTransactionLIst'] != null ? new CancelHRTransactionLIst.fromJson(json['CancelHRTransactionLIst']) : null;
chatEmployeeLoginList = json['Chat_EmployeeLoginList'];
companyBadge = json['CompanyBadge'];
companyImage = json['CompanyImage'];
@ -660,27 +681,46 @@ class GenericResponseModel {
if (json['CountryList'] != null) {
countryList = <GetCountriesListModel>[];
json['CountryList'].forEach((v) {
countryList!.add(new GetCountriesListModel.fromJson(v));
countryList!.add(GetCountriesListModel.fromJson(v));
});
}
createVacationRuleList = json['CreateVacationRuleList'];
createVacationRuleList = json['CreateVacationRuleList'] != null ? CreateVacationRuleList.fromJson(json['CreateVacationRuleList']) : null;
deleteAttachmentList = json['DeleteAttachmentList'];
deleteVacationRuleList = json['DeleteVacationRuleList'];
disableSessionList = json['DisableSessionList'];
employeeQR = json['EmployeeQR'];
forgetPasswordTokenID = json['ForgetPasswordTokenID'];
getAbsenceAttachmentsList = json['GetAbsenceAttachmentsList'];
getAbsenceAttendanceTypesList = json['GetAbsenceAttendanceTypesList'];
if (json['GetAbsenceAttendanceTypesList'] != null) {
getAbsenceAttendanceTypesList = <GetAbsenceAttendanceTypesList>[];
json['GetAbsenceAttendanceTypesList'].forEach((v) {
getAbsenceAttendanceTypesList!.add(GetAbsenceAttendanceTypesList.fromJson(v));
});
}
if (json['GetAbsenceCollectionNotificationBodyList'] != null) {
getAbsenceCollectionNotificationBodyList = <GetAbsenceCollectionNotificationBodyList>[];
json['GetAbsenceCollectionNotificationBodyList'].forEach((v) {
getAbsenceCollectionNotificationBodyList!.add(new GetAbsenceCollectionNotificationBodyList.fromJson(v));
getAbsenceCollectionNotificationBodyList!.add(GetAbsenceCollectionNotificationBodyList.fromJson(v));
});
}
if (json['GetAbsenceDffStructureList'] != null) {
getAbsenceDffStructureList = <GetAbsenceDffStructureList>[];
json['GetAbsenceDffStructureList'].forEach((v) {
getAbsenceDffStructureList!.add(GetAbsenceDffStructureList.fromJson(v));
});
}
if (json['GetAbsenceTransactionList'] != null) {
getAbsenceTransactionList = <GetAbsenceTransactionList>[];
json['GetAbsenceTransactionList'].forEach((v) {
getAbsenceTransactionList!.add(GetAbsenceTransactionList.fromJson(v));
});
}
getAbsenceDffStructureList = json['GetAbsenceDffStructureList'];
getAbsenceTransactionList = json['GetAbsenceTransactionList'];
getAccrualBalancesList = json["GetAccrualBalancesList"] == null ? null : List<GetAccrualBalancesList>.from(json["GetAccrualBalancesList"].map((x) => GetAccrualBalancesList.fromJson(x)));
if (json['GetActionHistoryList'] != null) {
@ -693,7 +733,7 @@ class GenericResponseModel {
if (json['GetAddressDffStructureList'] != null) {
getAddressDffStructureList = <GetAddressDffStructureList>[];
json['GetAddressDffStructureList'].forEach((v) {
getAddressDffStructureList!.add(new GetAddressDffStructureList.fromJson(v));
getAddressDffStructureList!.add(GetAddressDffStructureList.fromJson(v));
});
}
getAddressNotificationBodyList = json['GetAddressNotificationBodyList'];
@ -701,84 +741,83 @@ class GenericResponseModel {
if (json['GetApprovesList'] != null) {
getApprovesList = <GetApprovesList>[];
json['GetApprovesList'].forEach((v) {
getApprovesList!.add(new GetApprovesList.fromJson(v));
getApprovesList!.add(GetApprovesList.fromJson(v));
});
}
if (json['GetAttachementList'] != null) {
getAttachementList = <GetAttachementList>[];
json['GetAttachementList'].forEach((v) {
getAttachementList!.add(new GetAttachementList.fromJson(v));
getAttachementList!.add(GetAttachementList.fromJson(v));
});
}
getAttendanceTrackingList = json["GetAttendanceTrackingList"] == null ? null : GetAttendanceTracking.fromMap(json["GetAttendanceTrackingList"]);
if (json['GetBasicDetColsStructureList'] != null) {
getBasicDetColsStructureList = <GetBasicDetColsStructureList>[];
json['GetBasicDetColsStructureList'].forEach((v) {
getBasicDetColsStructureList!.add(new GetBasicDetColsStructureList.fromJson(v));
getBasicDetColsStructureList!.add(GetBasicDetColsStructureList.fromJson(v));
});
}
// getBasicDetDffStructureList = json['GetBasicDetDffStructureList'];
if (json['GetBasicDetDffStructureList'] != null) {
getBasicDetDffStructureList = <GetBasicDetDffStructureList>[];
json['GetBasicDetDffStructureList'].forEach((v) {
getBasicDetDffStructureList!.add(new GetBasicDetDffStructureList.fromJson(v));
getBasicDetDffStructureList!.add(GetBasicDetDffStructureList.fromJson(v));
});
}
if (json['GetContactDffStructureList'] != null) {
getContactDffStructureList = <GetContactDffStructureList>[];
json['GetContactDffStructureList'].forEach((v) {
getContactDffStructureList!.add(new GetContactDffStructureList.fromJson(v));
getContactDffStructureList!.add(GetContactDffStructureList.fromJson(v));
});
}
if (json['GetBasicDetNtfBodyList'] != null) {
getBasicDetNtfBodyList = <GetBasicDetNtfBodyList>[];
json['GetBasicDetNtfBodyList'].forEach((v) {
getBasicDetNtfBodyList!.add(new GetBasicDetNtfBodyList.fromJson(v));
getBasicDetNtfBodyList!.add(GetBasicDetNtfBodyList.fromJson(v));
});
}
getCEICollectionNotificationBodyList = json['GetCEICollectionNotificationBodyList'];
getCEIDFFStructureList = json['GetCEIDFFStructureList'];
getCEITransactionList = json['GetCEITransactionList'];
getCcpDffStructureList = json['GetCcpDffStructureList'];
getCcpOutputList = json['GetCcpOutputList'];
getCcpTransactionsList = json['GetCcpTransactionsList'];
getCcpTransactionsListNew = json['GetCcpTransactionsList_New'];
getConcurrentProgramsList = json['GetConcurrentProgramsList'];
if (json['GetContactDetailsList'] != null) {
getContactDetailsList = <GetContactDetailsList>[];
json['GetContactDetailsList'].forEach((v) {
getContactDetailsList!.add(new GetContactDetailsList.fromJson(v));
getContactDetailsList!.add(GetContactDetailsList.fromJson(v));
});
}
if (json['GetContactColsStructureList'] != null) {
getContactColsStructureList = <GetContactColsStructureList>[];
json['GetContactColsStructureList'].forEach((v) {
getContactColsStructureList!.add(new GetContactColsStructureList.fromJson(v));
getContactColsStructureList!.add(GetContactColsStructureList.fromJson(v));
});
}
getContactColsStructureList = json['GetContactColsStructureList'];
getContactDetailsList = json['GetContactDetailsList'];
getContactDffStructureList = json['GetContactDffStructureList'];
getContactNotificationBodyList = json["GetContactNotificationBodyList"] == null ? null : GetContactNotificationBodyList.fromJson(json["GetContactNotificationBodyList"]);
if (json['GetCountriesList'] != null) {
getCountriesList = <GetCountriesListModel>[];
json['GetCountriesList'].forEach((v) {
getCountriesList!.add(new GetCountriesListModel.fromJson(v));
getCountriesList!.add(GetCountriesListModel.fromJson(v));
});
}
if (json['GetDayHoursTypeDetailsList'] != null) {
getDayHoursTypeDetailsList = <GetDayHoursTypeDetailsList>[];
json['GetDayHoursTypeDetailsList'].forEach((v) {
getDayHoursTypeDetailsList!.add(new GetDayHoursTypeDetailsList.fromJson(v));
getDayHoursTypeDetailsList!.add(GetDayHoursTypeDetailsList.fromJson(v));
});
}
if (json['GetDeductionsList'] != null) {
getDeductionsList = <GetDeductionsList>[];
json['GetDeductionsList'].forEach((v) {
getDeductionsList!.add(new GetDeductionsList.fromJson(v));
getDeductionsList!.add(GetDeductionsList.fromJson(v));
});
}
getDefaultValueList = json['GetDefaultValueList'] != null ? GetDefaultValueList.fromJson(json['GetDefaultValueList']) : null;
@ -788,57 +827,62 @@ class GenericResponseModel {
if (json['GetEITDFFStructureList'] != null) {
getEITDFFStructureList = <GetEITDFFStructureList>[];
json['GetEITDFFStructureList'].forEach((v) {
getEITDFFStructureList!.add(new GetEITDFFStructureList.fromJson(v));
getEITDFFStructureList!.add(GetEITDFFStructureList.fromJson(v));
});
}
if (json['GetEITTransactionList'] != null) {
getEITTransactionList = <GetEITTransactionList>[];
json['GetEITTransactionList'].forEach((v) {
getEITTransactionList!.add(new GetEITTransactionList.fromJson(v));
getEITTransactionList!.add(GetEITTransactionList.fromJson(v));
});
}
if (json['GetEarningsList'] != null) {
getEarningsList = <GetEarningsList>[];
json['GetEarningsList'].forEach((v) {
getEarningsList!.add(new GetEarningsList.fromJson(v));
getEarningsList!.add(GetEarningsList.fromJson(v));
});
}
if (json['GetEmployeeAddressList'] != null) {
getEmployeeAddressList = <GetEmployeeAddressList>[];
json['GetEmployeeAddressList'].forEach((v) {
getEmployeeAddressList!.add(new GetEmployeeAddressList.fromJson(v));
getEmployeeAddressList!.add(GetEmployeeAddressList.fromJson(v));
});
}
if (json['GetEmployeeBasicDetailsList'] != null) {
getEmployeeBasicDetailsList = <GetEmployeeBasicDetailsList>[];
json['GetEmployeeBasicDetailsList'].forEach((v) {
getEmployeeBasicDetailsList!.add(new GetEmployeeBasicDetailsList.fromJson(v));
getEmployeeBasicDetailsList!.add(GetEmployeeBasicDetailsList.fromJson(v));
});
}
if (json['GetEmployeeContactsList'] != null) {
getEmployeeContactsList = <GetEmployeeContactsList>[];
json['GetEmployeeContactsList'].forEach((v) {
getEmployeeContactsList!.add(new GetEmployeeContactsList.fromJson(v));
getEmployeeContactsList!.add(GetEmployeeContactsList.fromJson(v));
});
}
if (json['GetEmployeePhonesList'] != null) {
getEmployeePhonesList = <GetEmployeePhonesList>[];
json['GetEmployeePhonesList'].forEach((v) {
getEmployeePhonesList!.add(new GetEmployeePhonesList.fromJson(v));
getEmployeePhonesList!.add(GetEmployeePhonesList.fromJson(v));
});
}
if (json['GetEmployeeSubordinatesList'] != null) {
getEmployeeSubordinatesList = <GetEmployeeSubordinatesList>[];
json['GetEmployeeSubordinatesList'].forEach((v) {
getEmployeeSubordinatesList!.add(new GetEmployeeSubordinatesList.fromJson(v));
});
}
getEmployeeSubordinatesList = json['GetEmployeeSubordinatesList'];
getFliexfieldStructureList = json['GetFliexfieldStructureList'];
getHrCollectionNotificationBodyList = json['GetHrCollectionNotificationBodyList'];
getHrTransactionList = json['GetHrTransactionList'];
getItemCreationNtfBodyList = json['GetItemCreationNtfBodyList'] != null ? new GetItemCreationNtfBodyList.fromJson(json['GetItemCreationNtfBodyList']) : null;
getItemCreationNtfBodyList = json['GetItemCreationNtfBodyList'] != null ? GetItemCreationNtfBodyList.fromJson(json['GetItemCreationNtfBodyList']) : null;
if (json['GetItemTypeNotificationsList'] != null) {
getItemTypeNotificationsList = <GetItemTypeNotificationsList>[];
json['GetItemTypeNotificationsList'].forEach((v) {
getItemTypeNotificationsList!.add(new GetItemTypeNotificationsList.fromJson(v));
getItemTypeNotificationsList!.add(GetItemTypeNotificationsList.fromJson(v));
});
}
@ -848,14 +892,14 @@ class GenericResponseModel {
if (json['GetMoItemHistoryList'] != null) {
getMoItemHistoryList = <GetMoItemHistoryList>[];
json['GetMoItemHistoryList'].forEach((v) {
getMoItemHistoryList!.add(new GetMoItemHistoryList.fromJson(v));
getMoItemHistoryList!.add(GetMoItemHistoryList.fromJson(v));
});
}
if (json['GetMoNotificationBodyList'] != null) {
getMoNotificationBodyList = <GetMoNotificationBodyList>[];
json['GetMoNotificationBodyList'].forEach((v) {
getMoNotificationBodyList!.add(new GetMoNotificationBodyList.fromJson(v));
getMoNotificationBodyList!.add(GetMoNotificationBodyList.fromJson(v));
});
}
@ -889,14 +933,14 @@ class GenericResponseModel {
if (json['GetPaymentInformationList'] != null) {
getPaymentInformationList = <GetPaymentInformationList>[];
json['GetPaymentInformationList'].forEach((v) {
getPaymentInformationList!.add(new GetPaymentInformationList.fromJson(v));
getPaymentInformationList!.add(GetPaymentInformationList.fromJson(v));
});
}
if (json['GetPayslipList'] != null) {
getPayslipList = <GetPayslipList>[];
json['GetPayslipList'].forEach((v) {
getPayslipList!.add(new GetPayslipList.fromJson(v));
getPayslipList!.add(GetPayslipList.fromJson(v));
});
}
// getPendingReqDetailsList = json['GetPendingReqDetailsList'];
@ -908,15 +952,15 @@ class GenericResponseModel {
if (json['GetPoItemHistoryList'] != null) {
getPoItemHistoryList = <GetPoItemHistoryList>[];
json['GetPoItemHistoryList'].forEach((v) {
getPoItemHistoryList!.add(new GetPoItemHistoryList.fromJson(v));
getPoItemHistoryList!.add(GetPoItemHistoryList.fromJson(v));
});
}
getPoNotificationBodyList = json['GetPoNotificationBodyList'] != null ? new GetPoNotificationBodyList.fromJson(json['GetPoNotificationBodyList']) : null;
getPoNotificationBodyList = json['GetPoNotificationBodyList'] != null ? GetPoNotificationBodyList.fromJson(json['GetPoNotificationBodyList']) : null;
getPrNotificationBodyList = json['GetPrNotificationBodyList'];
if (json['GetQuotationAnalysisList'] != null) {
getQuotationAnalysisList = <GetQuotationAnalysisList>[];
json['GetQuotationAnalysisList'].forEach((v) {
getQuotationAnalysisList!.add(new GetQuotationAnalysisList.fromJson(v));
getQuotationAnalysisList!.add(GetQuotationAnalysisList.fromJson(v));
});
}
getRFCEmployeeListList = json['GetRFCEmployeeListList'];
@ -927,7 +971,7 @@ class GenericResponseModel {
if (json['GetScheduleShiftsDetailsList'] != null) {
getScheduleShiftsDetailsList = <GetScheduleShiftsDetailsList>[];
json['GetScheduleShiftsDetailsList'].forEach((v) {
getScheduleShiftsDetailsList!.add(new GetScheduleShiftsDetailsList.fromJson(v));
getScheduleShiftsDetailsList!.add(GetScheduleShiftsDetailsList.fromJson(v));
});
}
getShiftTypesList = json['GetShiftTypesList'];
@ -935,13 +979,13 @@ class GenericResponseModel {
if (json['GetStampMsNotificationBodyList'] != null) {
getStampMsNotificationBodyList = <GetStampMsNotificationBodyList>[];
json['GetStampMsNotificationBodyList'].forEach((v) {
getStampMsNotificationBodyList!.add(new GetStampMsNotificationBodyList.fromJson(v));
getStampMsNotificationBodyList!.add(GetStampMsNotificationBodyList.fromJson(v));
});
}
if (json['GetStampNsNotificationBodyList'] != null) {
getStampNsNotificationBodyList = <GetStampNsNotificationBodyList>[];
json['GetStampNsNotificationBodyList'].forEach((v) {
getStampNsNotificationBodyList!.add(new GetStampNsNotificationBodyList.fromJson(v));
getStampNsNotificationBodyList!.add(GetStampNsNotificationBodyList.fromJson(v));
});
}
@ -954,11 +998,16 @@ class GenericResponseModel {
});
}
getSubordinatesLeavesTotalVacationsList = json['GetSubordinatesLeavesTotalVacationsList'];
if (json['GetSubordinatesLeavesTotalVacationsList'] != null) {
getSubordinatesLeavesTotalVacationsList = <GetSubordinatesLeavesTotalVacationsList>[];
json['GetSubordinatesLeavesTotalVacationsList'].forEach((v) {
getSubordinatesLeavesTotalVacationsList!.add(new GetSubordinatesLeavesTotalVacationsList.fromJson(v));
});
}
if (json['GetSummaryOfPaymentList'] != null) {
getSummaryOfPaymentList = <GetSummaryOfPaymentList>[];
json['GetSummaryOfPaymentList'].forEach((v) {
getSummaryOfPaymentList!.add(new GetSummaryOfPaymentList.fromJson(v));
getSummaryOfPaymentList!.add(GetSummaryOfPaymentList.fromJson(v));
});
}
getSwipesList = json['GetSwipesList'];
@ -969,81 +1018,111 @@ class GenericResponseModel {
if (json['GetTimeCardSummaryList'] != null) {
getTimeCardSummaryList = <GetTimeCardSummaryList>[];
json['GetTimeCardSummaryList'].forEach((v) {
getTimeCardSummaryList!.add(new GetTimeCardSummaryList.fromJson(v));
getTimeCardSummaryList!.add(GetTimeCardSummaryList.fromJson(v));
});
}
if (json['Mohemm_ITG_TicketsByEmployeeList'] != null) {
getTicketsByEmployeeList = <GetTicketsByEmployeeList>[];
json['Mohemm_ITG_TicketsByEmployeeList'].forEach((v) {
getTicketsByEmployeeList!.add(new GetTicketsByEmployeeList.fromJson(v));
getTicketsByEmployeeList!.add(GetTicketsByEmployeeList.fromJson(v));
});
}
if (json['Mohemm_ITG_TicketDetailsList'] != null) {
getTicketDetailsByEmployee = <GetTicketDetailsByEmployee>[];
json['Mohemm_ITG_TicketDetailsList'].forEach((v) {
getTicketDetailsByEmployee!.add(new GetTicketDetailsByEmployee.fromJson(v));
getTicketDetailsByEmployee!.add(GetTicketDetailsByEmployee.fromJson(v));
});
}
if (json['Mohemm_ITG_TicketTransactionsList'] != null) {
getTicketTransactions = <GetTicketTransactions>[];
json['Mohemm_ITG_TicketTransactionsList'].forEach((v) {
getTicketTransactions!.add(new GetTicketTransactions.fromJson(v));
getTicketTransactions!.add(GetTicketTransactions.fromJson(v));
});
}
if (json['Mohemm_Itg_TicketTypesList'] != null) {
getTicketTypes = <GetTicketTypes>[];
json['Mohemm_Itg_TicketTypesList'].forEach((v) {
getTicketTypes!.add(new GetTicketTypes.fromJson(v));
getTicketTypes!.add(GetTicketTypes.fromJson(v));
});
}
if (json['Mohemm_Itg_ProjectsList'] != null) {
getMowadhafhiProjects = <GetMowadhafhiProjects>[];
json['Mohemm_Itg_ProjectsList'].forEach((v) {
getMowadhafhiProjects!.add(new GetMowadhafhiProjects.fromJson(v));
getMowadhafhiProjects!.add(GetMowadhafhiProjects.fromJson(v));
});
}
if (json['Mohemm_ITG_ProjectDepartmentsList'] != null) {
getProjectDepartments = <GetProjectDepartments>[];
json['Mohemm_ITG_ProjectDepartmentsList'].forEach((v) {
getProjectDepartments!.add(new GetProjectDepartments.fromJson(v));
getProjectDepartments!.add(GetProjectDepartments.fromJson(v));
});
}
if (json['Mohemm_ITG_DepartmentSectionsList'] != null) {
getDepartmentSections = <GetDepartmentSections>[];
json['Mohemm_ITG_DepartmentSectionsList'].forEach((v) {
getDepartmentSections!.add(new GetDepartmentSections.fromJson(v));
getDepartmentSections!.add(GetDepartmentSections.fromJson(v));
});
}
if (json['Mohemm_ITG_SectionTopicsList'] != null) {
getSectionTopics = <GetSectionTopics>[];
json['Mohemm_ITG_SectionTopicsList'].forEach((v) {
getSectionTopics!.add(new GetSectionTopics.fromJson(v));
getSectionTopics!.add(GetSectionTopics.fromJson(v));
});
}
if (json['GetPendingReqFunctionsList'] != null) {
getPendingTransactionsFunctions = <GetPendingTransactionsFunctions>[];
json['GetPendingReqFunctionsList'].forEach((v) {
getPendingTransactionsFunctions!.add(new GetPendingTransactionsFunctions.fromJson(v));
getPendingTransactionsFunctions!.add(GetPendingTransactionsFunctions.fromJson(v));
});
}
if (json['GetPendingReqDetailsList'] != null) {
getPendingTransactionsDetails = <GetPendingTransactionsDetails>[];
json['GetPendingReqDetailsList'].forEach((v) {
getPendingTransactionsDetails!.add(new GetPendingTransactionsDetails.fromJson(v));
getPendingTransactionsDetails!.add(GetPendingTransactionsDetails.fromJson(v));
});
}
getUserItemTypesList = json['GetUserItemTypesList'];
if (json['GetConcurrentProgramsList'] != null) {
getConcurrentProgramsModel = <GetConcurrentProgramsModel>[];
json['GetConcurrentProgramsList'].forEach((v) {
getConcurrentProgramsModel!.add(GetConcurrentProgramsModel.fromJson(v));
});
}
if (json['GetCcpTransactionsList_New'] != null) {
getCCPTransactionsModel = <GetCCPTransactionsModel>[];
json['GetCcpTransactionsList_New'].forEach((v) {
getCCPTransactionsModel!.add(GetCCPTransactionsModel.fromJson(v));
});
}
if (json['GetCcpDffStructureList'] != null) {
getEITDFFStructureList = <GetEITDFFStructureList>[];
json['GetCcpDffStructureList'].forEach((v) {
getEITDFFStructureList!.add(GetEITDFFStructureList.fromJson(v));
});
}
if (json['GetCcpOutputList'] != null) {
getCCPOutputModel = GetCCPOutputModel.fromJson(json['GetCcpOutputList']);
}
if (json['GetUserItemTypesList'] != null) {
getUserItemTypesList = <GetUserItemTypesList>[];
json['GetUserItemTypesList'].forEach((v) {
getUserItemTypesList!.add(new GetUserItemTypesList.fromJson(v));
});
}
if (json['GetVacationRulesList'] != null) {
getVacationRulesList = <GetVacationRulesList>[];
json['GetVacationRulesList'].forEach((v) {
@ -1162,35 +1241,40 @@ class GenericResponseModel {
if (json['RespondAttributesList'] != null) {
respondAttributesList = <RespondAttributesList>[];
json['RespondAttributesList'].forEach((v) {
respondAttributesList!.add(new RespondAttributesList.fromJson(v));
respondAttributesList!.add(RespondAttributesList.fromJson(v));
});
}
if (json['RespondRolesList'] != null) {
respondRolesList = <String>[];
json['RespondRolesList'].forEach((v) {
respondRolesList!.add(v);
});
}
respondRolesList = json['RespondRolesList'];
resubmitAbsenceTransactionList = json['ResubmitAbsenceTransactionList'];
resubmitEITTransactionList = json['ResubmitEITTransactionList'];
resubmitHrTransactionList = json['ResubmitHrTransactionList'];
sFHGetPoNotificationBodyList = json['SFH_GetPoNotificationBodyList'];
sFHGetPrNotificationBodyList = json['SFH_GetPrNotificationBodyList'];
startAbsenceApprovalProccess = json['StartAbsenceApprovalProccess'];
startAddressApprovalProcessList = json['StartAddressApprovalProcessList'] != null ? new StartAddressApprovalProcess.fromJson(json['StartAddressApprovalProcessList']) : null;
startAbsenceApprovalProccess = json['StartAbsenceApprovalProccess'] != null ? StartAbsenceApprovalProccess.fromJson(json['StartAbsenceApprovalProccess']) : null;
startAddressApprovalProcessList = json['StartAddressApprovalProcessList'] != null ? StartAddressApprovalProcess.fromJson(json['StartAddressApprovalProcessList']) : null;
startBasicDetApprProcessList = json['StartBasicDetApprProcessList'];
startCeiApprovalProcess = json['StartCeiApprovalProcess'];
startContactApprovalProcessList = json['StartContactApprovalProcessList'];
startEitApprovalProcess = json['StartEitApprovalProcess'] != null ? new StartEitApprovalProcess.fromJson(json['StartEitApprovalProcess']) : null;
startEitApprovalProcess = json['StartEitApprovalProcess'] != null ? StartEitApprovalProcess.fromJson(json['StartEitApprovalProcess']) : null;
startHrApprovalProcessList = json['StartHrApprovalProcessList'];
startPhonesApprovalProcessList = json['StartPhonesApprovalProcessList'] != null ? new StartPhoneApprovalProcess.fromJson(json['startPhonesApprovalProcessList']) : null;
startPhonesApprovalProcessList = json['StartPhonesApprovalProcessList'] != null ? StartPhoneApprovalProcess.fromJson(json['startPhonesApprovalProcessList']) : null;
startSitApprovalProcess = json['StartSitApprovalProcess'];
startTermApprovalProcessList = json['StartTermApprovalProcessList'];
submitAddressTransactionList = json['SubmitAddressTransactionList'] != null ? new SubmitAddressTransaction.fromJson(json['SubmitAddressTransactionList']) : null;
submitBasicDetTransactionList = json['SubmitBasicDetTransactionList'] != null ? new SubmitBasicDetailsTransactionList.fromJson(json['SubmitBasicDetTransactionList']) : null;
submitAddressTransactionList = json['SubmitAddressTransactionList'] != null ? SubmitAddressTransaction.fromJson(json['SubmitAddressTransactionList']) : null;
submitBasicDetTransactionList = json['SubmitBasicDetTransactionList'] != null ? SubmitBasicDetailsTransactionList.fromJson(json['SubmitBasicDetTransactionList']) : null;
submitCEITransactionList = json['SubmitCEITransactionList'];
submitCcpTransactionList = json['SubmitCcpTransactionList'];
submitContactTransactionList = json['SubmitContactTransactionList'] != null ? new SubmitContactTransactionList.fromJson(json['SubmitContactTransactionList']) : null;
submitEITTransactionList = json['SubmitEITTransactionList'] != null ? new SubmitEITTransactionList.fromJson(json['SubmitEITTransactionList']) : null;
submitContactTransactionList = json['SubmitContactTransactionList'] != null ? SubmitContactTransactionList.fromJson(json['SubmitContactTransactionList']) : null;
submitEITTransactionList = json['SubmitEITTransactionList'] != null ? SubmitEITTransactionList.fromJson(json['SubmitEITTransactionList']) : null;
submitHrTransactionList = json['SubmitHrTransactionList'];
submitPhonesTransactionList = json['SubmitPhonesTransactionList'];
@ -1205,21 +1289,28 @@ class GenericResponseModel {
});
}
sumbitAbsenceTransactionList = json['SumbitAbsenceTransactionList'];
sumbitAbsenceTransactionList = json['SumbitAbsenceTransactionList'] != null ? new SumbitAbsenceTransactionList.fromJson(json['SumbitAbsenceTransactionList']) : null;
tokenID = json['TokenID'];
updateAttachmentList = json['UpdateAttachmentList'];
updateEmployeeImageList = json['UpdateEmployeeImageList'];
updateItemTypeSuccessList = json['UpdateItemTypeSuccessList'];
updateUserItemTypesList = json['UpdateUserItemTypesList'];
if (json['UpdateItemTypeSuccessList'] != null) {
updateItemTypeSuccessList = <UpdateItemTypeSuccessList>[];
json['UpdateItemTypeSuccessList'].forEach((v) {
updateItemTypeSuccessList!.add(new UpdateItemTypeSuccessList.fromJson(v));
});
}
updateUserItemTypesList = json['UpdateUserItemTypesList'] != null ? new UpdateUserItemTypesList.fromJson(json['UpdateUserItemTypesList']) : null;
updateVacationRuleList = json['UpdateVacationRuleList'];
vHREmployeeLoginList = json['VHR_EmployeeLoginList'];
vHRGetEmployeeDetailsList = json['VHR_GetEmployeeDetailsList'];
vHRGetManagersDetailsList = json['VHR_GetManagersDetailsList'];
vHRGetProjectByCodeList = json['VHR_GetProjectByCodeList'];
vHRIsVerificationCodeValid = json['VHR_IsVerificationCodeValid'];
validateAbsenceTransactionList = json['ValidateAbsenceTransactionList'];
validateEITTransactionList = json['ValidateEITTransactionList'] != null ? new ValidateEITTransactionList.fromJson(json['ValidateEITTransactionList']) : null;
validateAbsenceTransactionList = json['ValidateAbsenceTransactionList'] != null ? ValidateAbsenceTransactionList.fromJson(json['ValidateAbsenceTransactionList']) : null;
validateEITTransactionList = json['ValidateEITTransactionList'] != null ? ValidateEITTransactionList.fromJson(json['ValidateEITTransactionList']) : null;
validatePhonesTransactionList = json['ValidatePhonesTransactionList'];
if (json['VrItemTypesList'] != null) {
@ -1231,7 +1322,7 @@ class GenericResponseModel {
if (json['WFLookUpList'] != null) {
wFLookUpList = <WFLookUpList>[];
json['WFLookUpList'].forEach((v) {
wFLookUpList!.add(new WFLookUpList.fromJson(v));
wFLookUpList!.add(WFLookUpList.fromJson(v));
});
}
eLearningGETEMPLOYEEPROFILEList = json['eLearning_GET_EMPLOYEE_PROFILEList'];
@ -1244,7 +1335,7 @@ class GenericResponseModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = Map<String, dynamic>();
data['Date'] = this.date;
data['LanguageID'] = this.languageID;
data['ServiceName'] = this.serviceName;
@ -1285,8 +1376,12 @@ class GenericResponseModel {
data['BasicMemberInformation'] = this.basicMemberInformation!.toJson();
}
data['BusinessCardPrivilege'] = this.businessCardPrivilege;
data['CalculateAbsenceDuration'] = this.calculateAbsenceDuration;
data['CancelHRTransactionLIst'] = this.cancelHRTransactionLIst;
if (this.calculateAbsenceDuration != null) {
data['CalculateAbsenceDuration'] = this.calculateAbsenceDuration!.toJson();
}
if (this.cancelHRTransactionLIst != null) {
data['CancelHRTransactionLIst'] = this.calculateAbsenceDuration!.toJson();
}
data['Chat_EmployeeLoginList'] = this.chatEmployeeLoginList;
data['CompanyBadge'] = this.companyBadge;
data['CompanyImage'] = this.companyImage;
@ -1296,21 +1391,32 @@ class GenericResponseModel {
if (this.countryList != null) {
data['CountryList'] = this.countryList!.map((v) => v.toJson()).toList();
}
data['CreateVacationRuleList'] = this.createVacationRuleList;
if (this.createVacationRuleList != null) {
data['CreateVacationRuleList'] = this.createVacationRuleList!.toJson();
}
data['DeleteAttachmentList'] = this.deleteAttachmentList;
data['DeleteVacationRuleList'] = this.deleteVacationRuleList;
data['DisableSessionList'] = this.disableSessionList;
data['EmployeeQR'] = this.employeeQR;
data['ForgetPasswordTokenID'] = this.forgetPasswordTokenID;
data['GetAbsenceAttachmentsList'] = this.getAbsenceAttachmentsList;
data['GetAbsenceAttendanceTypesList'] = this.getAbsenceAttendanceTypesList;
if (this.getAbsenceAttendanceTypesList != null) {
data['GetAbsenceAttendanceTypesList'] = this.getAbsenceAttendanceTypesList!.map((v) => v.toJson()).toList();
}
if (this.getAbsenceCollectionNotificationBodyList != null) {
data['GetAbsenceCollectionNotificationBodyList'] = this.getAbsenceCollectionNotificationBodyList!.map((v) => v.toJson()).toList();
}
data['GetAbsenceDffStructureList'] = this.getAbsenceDffStructureList;
data['GetAbsenceTransactionList'] = this.getAbsenceTransactionList;
if (this.getAbsenceDffStructureList != null) {
data['GetAbsenceDffStructureList'] = this.getAbsenceDffStructureList!.map((v) => v.toJson()).toList();
}
if (this.getAbsenceTransactionList != null) {
data['GetAbsenceTransactionList'] = this.getAbsenceTransactionList!.map((v) => v.toJson()).toList();
}
data['GetAccrualBalancesList'] = this.getAccrualBalancesList;
if (this.getActionHistoryList != null) {
@ -1339,11 +1445,7 @@ class GenericResponseModel {
data['GetCEICollectionNotificationBodyList'] = this.getCEICollectionNotificationBodyList;
data['GetCEIDFFStructureList'] = this.getCEIDFFStructureList;
data['GetCEITransactionList'] = this.getCEITransactionList;
data['GetCcpDffStructureList'] = this.getCcpDffStructureList;
data['GetCcpOutputList'] = this.getCcpOutputList;
data['GetCcpTransactionsList'] = this.getCcpTransactionsList;
data['GetCcpTransactionsList_New'] = this.getCcpTransactionsListNew;
data['GetConcurrentProgramsList'] = this.getConcurrentProgramsList;
if (this.getContactDetailsList != null) {
data['GetContactDetailsList'] = this.getContactDetailsList!.map((v) => v.toJson()).toList();
}
@ -1353,6 +1455,9 @@ class GenericResponseModel {
if (this.getContactDffStructureList != null) {
data['GetContactDffStructureList'] = this.getContactDffStructureList!.map((v) => v.toJson()).toList();
}
data['GetContactColsStructureList'] = this.getContactColsStructureList;
data['GetContactDetailsList'] = this.getContactDetailsList;
data['GetContactDffStructureList'] = this.getContactDffStructureList;
data['GetContactNotificationBodyList'] = this.getContactNotificationBodyList;
data['GetCountriesList'] = this.getCountriesList;
if (this.getDayHoursTypeDetailsList != null) {
@ -1388,7 +1493,9 @@ class GenericResponseModel {
if (this.getEmployeePhonesList != null) {
data['GetEmployeePhonesList'] = this.getEmployeePhonesList!.map((v) => v.toJson()).toList();
}
data['GetEmployeeSubordinatesList'] = this.getEmployeeSubordinatesList;
if (this.getEmployeeSubordinatesList != null) {
data['GetEmployeeSubordinatesList'] = this.getEmployeeSubordinatesList!.map((v) => v.toJson()).toList();
}
data['GetFliexfieldStructureList'] = this.getFliexfieldStructureList;
data['GetHrCollectionNotificationBodyList'] = this.getHrCollectionNotificationBodyList;
data['GetHrTransactionList'] = this.getHrTransactionList;
@ -1473,7 +1580,9 @@ class GenericResponseModel {
data['GetSubordinatesLeavesList'] = this.getSubordinatesLeavesList!.map((v) => v.toJson()).toList();
}
data['GetSubordinatesLeavesTotalVacationsList'] = this.getSubordinatesLeavesTotalVacationsList;
if (this.getSubordinatesLeavesTotalVacationsList != null) {
data['GetSubordinatesLeavesTotalVacationsList'] = this.getSubordinatesLeavesTotalVacationsList!.map((v) => v.toJson()).toList();
}
if (this.getSummaryOfPaymentList != null) {
data['GetSummaryOfPaymentList'] = this.getSummaryOfPaymentList!.map((v) => v.toJson()).toList();
}
@ -1582,7 +1691,9 @@ class GenericResponseModel {
data['ResubmitHrTransactionList'] = this.resubmitHrTransactionList;
data['SFH_GetPoNotificationBodyList'] = this.sFHGetPoNotificationBodyList;
data['SFH_GetPrNotificationBodyList'] = this.sFHGetPrNotificationBodyList;
data['StartAbsenceApprovalProccess'] = this.startAbsenceApprovalProccess;
if (this.startAbsenceApprovalProccess != null) {
data['StartAbsenceApprovalProccess'] = this.startAbsenceApprovalProccess!.toJson();
}
data['StartAddressApprovalProcessList'] = this.startAddressApprovalProcessList;
data['StartBasicDetApprProcessList'] = this.startBasicDetApprProcessList;
data['StartCeiApprovalProcess'] = this.startCeiApprovalProcess;
@ -1621,20 +1732,28 @@ class GenericResponseModel {
data['SubordinatesOnLeavesList'] = this.subordinatesOnLeavesList!.map((v) => v.toJson()).toList();
}
data['SumbitAbsenceTransactionList'] = this.sumbitAbsenceTransactionList;
if (this.sumbitAbsenceTransactionList != null) {
data['SumbitAbsenceTransactionList'] = this.sumbitAbsenceTransactionList!.toJson();
}
data['TokenID'] = this.tokenID;
data['UpdateAttachmentList'] = this.updateAttachmentList;
data['UpdateEmployeeImageList'] = this.updateEmployeeImageList;
data['UpdateItemTypeSuccessList'] = this.updateItemTypeSuccessList;
data['UpdateUserItemTypesList'] = this.updateUserItemTypesList;
if (this.updateItemTypeSuccessList != null) {
data['UpdateItemTypeSuccessList'] = this.updateItemTypeSuccessList!.map((v) => v.toJson()).toList();
}
if (this.updateUserItemTypesList != null) {
data['UpdateUserItemTypesList'] = this.updateUserItemTypesList!.toJson();
}
data['UpdateVacationRuleList'] = this.updateVacationRuleList;
data['VHR_EmployeeLoginList'] = this.vHREmployeeLoginList;
data['VHR_GetEmployeeDetailsList'] = this.vHRGetEmployeeDetailsList;
data['VHR_GetManagersDetailsList'] = this.vHRGetManagersDetailsList;
data['VHR_GetProjectByCodeList'] = this.vHRGetProjectByCodeList;
data['VHR_IsVerificationCodeValid'] = this.vHRIsVerificationCodeValid;
data['ValidateAbsenceTransactionList'] = this.validateAbsenceTransactionList;
if (validateAbsenceTransactionList != null) {
data['ValidateAbsenceTransactionList'] = validateAbsenceTransactionList!.toJson();
}
if (validateEITTransactionList != null) {
data['ValidateEITTransactionList'] = validateEITTransactionList!.toJson();
}

@ -13,7 +13,7 @@ class GetAbsenceCollectionNotificationBodyList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
if (this.collectionNotification != null) {
data['Collection_Notification'] = this.collectionNotification!.map((v) => v.toJson()).toList();
}
@ -74,7 +74,7 @@ class CollectionNotificationAbsence {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ACTION'] = this.aCTION;
data['APPLICATION_COLUMN_NAME'] = this.aPPLICATIONCOLUMNNAME;
data['DATATYPE'] = this.dATATYPE;

@ -54,7 +54,7 @@ class GetActionHistoryList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ACTION'] = this.aCTION;
data['ACTION_CODE'] = this.aCTIONCODE;
data['EMAIL_ADDRESS'] = this.eMAILADDRESS;

@ -3,8 +3,8 @@ class GetAnnouncementDetails {
String? titleAR;
String? emailBodyEN;
String? emailBodyAR;
String? bodyEN;
String? bodyAR;
String? bodyEN = "";
String? bodyAR = "";
String? bannerImage;
String? rowID;
String? awarenessName;
@ -51,7 +51,7 @@ class GetAnnouncementDetails {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['Title_EN'] = this.titleEN;
data['Title_AR'] = this.titleAR;
data['EmailBody_EN'] = this.emailBodyEN;

@ -51,7 +51,7 @@ class GetAnnouncementsObject {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['Title_EN'] = this.titleEN;
data['Title_AR'] = this.titleAR;
data['Banner_Image'] = this.bannerImage;

@ -42,7 +42,7 @@ class GetApprovesList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['APPROVAL_STATUS'] = this.aPPROVALSTATUS;
data['APPROVER'] = this.aPPROVER;
data['APPROVER_CATEGORY'] = this.aPPROVERCATEGORY;

@ -51,7 +51,7 @@ class GetAttachementList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ATTACHED_DOCUMENT_ID'] = this.aTTACHEDDOCUMENTID;
data['CATEGORY_ID'] = this.cATEGORYID;
data['DATATYPE_ID'] = this.dATATYPEID;

@ -126,7 +126,7 @@ class GetContactDffStructureList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ALPHANUMERIC_ALLOWED_FLAG'] = this.aLPHANUMERICALLOWEDFLAG;
data['APPLICATION_COLUMN_NAME'] = this.aPPLICATIONCOLUMNNAME;
data['CHILD_SEGMENTS_VS'] = this.cHILDSEGMENTSVS;

@ -132,7 +132,7 @@ class GetDayHoursTypeDetailsList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ABSENCE_ATTENDANCE_ID'] = this.aBSENCEATTENDANCEID;
data['ABSENCE_ATTENDANCE_TYPE_ID'] = this.aBSENCEATTENDANCETYPEID;
data['ABSENT_FLAG'] = this.aBSENTFLAG;

@ -18,7 +18,7 @@ class GetDefaultValueList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['P_ID_COLUMN_NAME'] = this.pIDCOLUMNNAME;
data['P_RETURN_MSG'] = this.pRETURNMSG;
data['P_RETURN_STATUS'] = this.pRETURNSTATUS;

@ -151,7 +151,7 @@ class GetEITDFFStructureList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ALPHANUMERIC_ALLOWED_FLAG'] = this.aLPHANUMERICALLOWEDFLAG;
data['APPLICATION_COLUMN_NAME'] = this.aPPLICATIONCOLUMNNAME;
data['CHILD_SEGMENTS_DV'] = this.cHILDSEGMENTSDV;
@ -225,7 +225,7 @@ class ESERVICESDV {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['P_ID_COLUMN_NAME'] = this.pIDCOLUMNNAME;
data['P_RETURN_MSG'] = this.pRETURNMSG;
data['P_RETURN_STATUS'] = this.pRETURNSTATUS;
@ -256,7 +256,7 @@ class ESERVICESVS {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['DESCRIPTION'] = this.dESCRIPTION;
data['FROM_ROW_NUM'] = this.fROMROWNUM;
data['ID_COLUMN_NAME'] = this.iDCOLUMNNAME;
@ -280,7 +280,7 @@ class PARENTSEGMENTSDVSplited {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['IsRequired'] = this.isRequired;
data['Name'] = this.name;
return data;
@ -299,7 +299,7 @@ class PARENTSEGMENTSVSSplitedVS {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['IsRequired'] = this.isRequired;
data['Name'] = this.name;
return data;

@ -13,7 +13,7 @@ class GetEITTransactionList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
if (this.collectionTransaction != null) {
data['Collection_Transaction'] =
this.collectionTransaction!.map((v) => v.toJson()).toList();
@ -81,7 +81,7 @@ class CollectionTransaction {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['APPLICATION_COLUMN_NAME'] = this.aPPLICATIONCOLUMNNAME;
data['DATATYPE'] = this.dATATYPE;
data['DATE_VALUE'] = this.dATEVALUE;

@ -35,7 +35,7 @@
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['APPLICATION_COLUMN_NAME'] = this.aPPLICATIONCOLUMNNAME;
data['DATATYPE'] = this.dATATYPE;
data['DATE_VALUE'] = this.dATEVALUE;

@ -37,7 +37,7 @@ class GetEmployeeBasicDetailsList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['APPLICATION_COLUMN_NAME'] = this.aPPLICATIONCOLUMNNAME;
data['DATATYPE'] = this.dATATYPE;
data['DATE_VALUE'] = this.dATEVALUE;

@ -31,7 +31,7 @@ class GetEmployeeContactsList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['CONTACT_NAME'] = this.cONTACTNAME;
data['CONTACT_PERSON_ID'] = this.cONTACTPERSONID;
data['CONTACT_RELATIONSHIP_ID'] = this.cONTACTRELATIONSHIPID;

@ -28,7 +28,7 @@ class GetEmployeePhonesList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ACTION'] = this.aCTION;
data['DATE_FROM'] = this.dATEFROM;
data['DATE_TO'] = this.dATETO;

@ -24,7 +24,7 @@ class GetItemCreationNtfBodyList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
if (this.itemCreationHeader != null) {
data['ItemCreationHeader'] = this.itemCreationHeader!.map((v) => v.toJson()).toList();
}
@ -108,7 +108,7 @@ class ItemCreationHeader {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ANALYZED_BY'] = this.aNALYZEDBY;
data['ANALYZED_BY_ID'] = this.aNALYZEDBYID;
data['ANALYZED_DATE'] = this.aNALYZEDDATE;
@ -250,7 +250,7 @@ class ItemCreationLines {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['CHARGE_TO_PATIENT'] = this.cHARGETOPATIENT;
data['FROM_ROW_NUM'] = this.fROMROWNUM;
data['INVENTORY_ITEM_ID'] = this.iNVENTORYITEMID;

@ -72,7 +72,7 @@ class GetMoItemHistoryList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['DATE_REQUIRED'] = this.dATEREQUIRED;
data['DESCRIPTION'] = this.dESCRIPTION;
data['FROM_LOCATOR'] = this.fROMLOCATOR;

@ -75,7 +75,7 @@ class GetMoNotificationBodyList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['DATE_REQUIRED'] = this.dATEREQUIRED;
data['DESCRIPTION'] = this.dESCRIPTION;
data['FROM_LOCATOR'] = this.fROMLOCATOR;

@ -45,7 +45,7 @@ class GetMobileLoginInfoListModel {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = Map<String, dynamic>();
Map<String, dynamic> data = Map<String, dynamic>();
data['ID'] = iD;
data['EmployeeID'] = employeeID;
data['ChannelID'] = channelID;

@ -15,7 +15,7 @@ class GetNotificationButtonsList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['BUTTON_ACTION'] = this.bUTTONACTION;
data['BUTTON_ICON'] = this.bUTTONICON;
data['BUTTON_LABEL'] = this.bUTTONLABEL;

@ -66,7 +66,7 @@ class GetPoItemHistoryList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['BALANCE_QUANTITY'] = this.bALANCEQUANTITY;
data['BONUS_QUANTITY'] = this.bONUSQUANTITY;
data['BUYER'] = this.bUYER;

@ -26,7 +26,7 @@ class GetPoNotificationBodyList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
if (this.pOHeader != null) {
data['POHeader'] = this.pOHeader!.map((v) => v.toJson()).toList();
}
@ -116,7 +116,7 @@ class POHeader {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['BUYER'] = this.bUYER;
data['COMMENTS'] = this.cOMMENTS;
data['CREATION_DATE'] = this.cREATIONDATE;
@ -215,7 +215,7 @@ class POLines {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['DELIVER_TO_LOCATION'] = this.dELIVERTOLOCATION;
data['FROM_ROW_NUM'] = this.fROMROWNUM;
data['ITEM_CODE'] = this.iTEMCODE;

@ -60,7 +60,7 @@ class GetQuotationAnalysisList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['FROM_ROW_NUM'] = this.fROMROWNUM;
data['ITEM_CODE'] = this.iTEMCODE;
data['ITEM_DESC'] = this.iTEMDESC;

@ -94,7 +94,7 @@ class GetScheduleShiftsDetailsList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ACTUAL_WOB_HRS'] = this.aCTUALWOBHRS;
data['APPROVED_END_DATETIME'] = this.aPPROVEDENDDATETIME;
data['APPROVED_END_REASON'] = this.aPPROVEDENDREASON;

@ -96,7 +96,7 @@ class GetStampMsNotificationBodyList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ACTUAL_WOB_HRS'] = this.aCTUALWOBHRS;
data['ACTUAL_WOB_SEC'] = this.aCTUALWOBSEC;
data['APPROVED_END_REASON_DESC'] = this.aPPROVEDENDREASONDESC;

@ -43,7 +43,7 @@ class GetStampNsNotificationBodyList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ASSIGNMENT_ID'] = this.aSSIGNMENTID;
data['ASSIGNMENT_NUMBER'] = this.aSSIGNMENTNUMBER;
data['BUSINESS_GROUP_ID'] = this.bUSINESSGROUPID;

@ -113,7 +113,7 @@ class GetTimeCardSummaryList {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ABSENT_DAYS'] = this.aBSENTDAYS;
data['ACTUAL_HRS'] = this.aCTUALHRS;
data['APPROVED_TIMEBACK_HRS'] = this.aPPROVEDTIMEBACKHRS;

@ -0,0 +1,35 @@
class GetUserItemTypesList {
String? fYAENABLEDFALG;
String? fYIENABLEDFLAG;
String? iTEMTYPE;
int? uSERITEMTYPEID;
bool? isFYI;
bool? isFYA;
GetUserItemTypesList(
{this.fYAENABLEDFALG,
this.fYIENABLEDFLAG,
this.iTEMTYPE,
this.uSERITEMTYPEID,
this.isFYI,
this.isFYA
});
GetUserItemTypesList.fromJson(Map<String, dynamic> json) {
fYAENABLEDFALG = json['FYA_ENABLED_FALG'];
fYIENABLEDFLAG = json['FYI_ENABLED_FLAG'];
iTEMTYPE = json['ITEM_TYPE'];
uSERITEMTYPEID = json['USER_ITEM_TYPE_ID'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['FYA_ENABLED_FALG'] = this.fYAENABLEDFALG;
data['FYI_ENABLED_FLAG'] = this.fYIENABLEDFLAG;
data['ITEM_TYPE'] = this.iTEMTYPE;
data['USER_ITEM_TYPE_ID'] = this.uSERITEMTYPEID;
return data;
}
}

@ -0,0 +1,25 @@
class AddItemForSaleImageModel {
int? attachmentID;
String? base64Data;
String? fileName;
String? contentType;
AddItemForSaleImageModel(
{this.attachmentID, this.base64Data, this.fileName, this.contentType});
AddItemForSaleImageModel.fromJson(Map<String, dynamic> json) {
attachmentID = json['AttachmentID'];
base64Data = json['Base64Data'];
fileName = json['FileName'];
contentType = json['ContentType'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['AttachmentID'] = this.attachmentID;
data['Base64Data'] = this.base64Data;
data['FileName'] = this.fileName;
data['ContentType'] = this.contentType;
return data;
}
}

@ -0,0 +1,177 @@
class EmployeePostedAds {
int? itemSaleID;
String? title;
String? titleAr;
String? description;
String? descriptionAr;
int? categoryID;
String? categoryTitle;
int? regionID;
String? regionName;
String? countryName;
String? currencyCode;
String? startDate;
String? endDate;
int? quotePrice;
int? employeeNumber;
String? profilePicture;
String? fullName;
String? emailAddress;
String? mobileNumber;
bool? isApproved;
String? status;
List<ItemAttachments>? itemAttachments;
String? created;
bool? isActive;
int? pageSize;
int? pageNo;
int? languageId;
EmployeePostedAds(
{this.itemSaleID,
this.title,
this.titleAr,
this.description,
this.descriptionAr,
this.categoryID,
this.categoryTitle,
this.regionID,
this.regionName,
this.countryName,
this.currencyCode,
this.startDate,
this.endDate,
this.quotePrice,
this.employeeNumber,
this.profilePicture,
this.fullName,
this.emailAddress,
this.mobileNumber,
this.isApproved,
this.status,
this.itemAttachments,
this.created,
this.isActive,
this.pageSize,
this.pageNo,
this.languageId});
EmployeePostedAds.fromJson(Map<String, dynamic> json) {
itemSaleID = json['itemSaleID'];
title = json['title'];
titleAr = json['title_Ar'];
description = json['description'];
descriptionAr = json['description_Ar'];
categoryID = json['categoryID'];
categoryTitle = json['categoryTitle'];
regionID = json['regionID'];
regionName = json['regionName'];
countryName = json['countryName'];
currencyCode = json['currencyCode'];
startDate = json['startDate'];
endDate = json['endDate'];
quotePrice = json['quotePrice'];
employeeNumber = json['employeeNumber'];
profilePicture = json['profilePicture'];
fullName = json['fullName'];
emailAddress = json['emailAddress'];
mobileNumber = json['mobileNumber'];
isApproved = json['isApproved'];
status = json['status'];
if (json['itemAttachments'] != null) {
itemAttachments = <ItemAttachments>[];
json['itemAttachments'].forEach((v) {
itemAttachments!.add(new ItemAttachments.fromJson(v));
});
}
created = json['created'];
isActive = json['isActive'];
pageSize = json['pageSize'];
pageNo = json['pageNo'];
languageId = json['languageId'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['itemSaleID'] = this.itemSaleID;
data['title'] = this.title;
data['title_Ar'] = this.titleAr;
data['description'] = this.description;
data['description_Ar'] = this.descriptionAr;
data['categoryID'] = this.categoryID;
data['categoryTitle'] = this.categoryTitle;
data['regionID'] = this.regionID;
data['regionName'] = this.regionName;
data['countryName'] = this.countryName;
data['currencyCode'] = this.currencyCode;
data['startDate'] = this.startDate;
data['endDate'] = this.endDate;
data['quotePrice'] = this.quotePrice;
data['employeeNumber'] = this.employeeNumber;
data['profilePicture'] = this.profilePicture;
data['fullName'] = this.fullName;
data['emailAddress'] = this.emailAddress;
data['mobileNumber'] = this.mobileNumber;
data['isApproved'] = this.isApproved;
data['status'] = this.status;
if (this.itemAttachments != null) {
data['itemAttachments'] =
this.itemAttachments!.map((v) => v.toJson()).toList();
}
data['created'] = this.created;
data['isActive'] = this.isActive;
data['pageSize'] = this.pageSize;
data['pageNo'] = this.pageNo;
data['languageId'] = this.languageId;
return data;
}
}
class ItemAttachments {
int? attachmentId;
String? fileName;
String? contentType;
String? attachFileStream;
String? base64String;
bool? isActive;
int? referenceItemId;
String? content;
String? filePath;
ItemAttachments(
{this.attachmentId,
this.fileName,
this.contentType,
this.attachFileStream,
this.base64String,
this.isActive,
this.referenceItemId,
this.content,
this.filePath});
ItemAttachments.fromJson(Map<String, dynamic> json) {
attachmentId = json['attachmentId'];
fileName = json['fileName'];
contentType = json['contentType'];
attachFileStream = json['attachFileStream'];
base64String = json['base64String'];
isActive = json['isActive'];
referenceItemId = json['referenceItemId'];
content = json['content'];
filePath = json['filePath'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['attachmentId'] = this.attachmentId;
data['fileName'] = this.fileName;
data['contentType'] = this.contentType;
data['attachFileStream'] = this.attachFileStream;
data['base64String'] = this.base64String;
data['isActive'] = this.isActive;
data['referenceItemId'] = this.referenceItemId;
data['content'] = this.content;
data['filePath'] = this.filePath;
return data;
}
}

@ -0,0 +1,181 @@
class GetItemsForSaleList {
int? itemSaleID;
String? title;
String? titleAr;
String? description;
String? descriptionAr;
int? categoryID;
String? categoryTitle;
int? regionID;
String? regionName;
String? countryName;
String? currencyCode;
String? startDate;
String? endDate;
int? quotePrice;
int? employeeNumber;
String? profilePicture;
String? fullName;
String? emailAddress;
String? mobileNumber;
bool? isApproved;
String? status;
List<ItemAttachments>? itemAttachments;
String? created;
dynamic? comments;
dynamic? isActive;
dynamic? pageSize;
dynamic? pageNo;
dynamic? languageId;
GetItemsForSaleList(
{this.itemSaleID,
this.title,
this.titleAr,
this.description,
this.descriptionAr,
this.categoryID,
this.categoryTitle,
this.regionID,
this.regionName,
this.countryName,
this.currencyCode,
this.startDate,
this.endDate,
this.quotePrice,
this.employeeNumber,
this.profilePicture,
this.fullName,
this.emailAddress,
this.mobileNumber,
this.isApproved,
this.status,
this.itemAttachments,
this.created,
this.comments,
this.isActive,
this.pageSize,
this.pageNo,
this.languageId});
GetItemsForSaleList.fromJson(Map<String, dynamic> json) {
itemSaleID = json['itemSaleID'];
title = json['title'];
titleAr = json['title_Ar'];
description = json['description'];
descriptionAr = json['description_Ar'];
categoryID = json['categoryID'];
categoryTitle = json['categoryTitle'];
regionID = json['regionID'];
regionName = json['regionName'];
countryName = json['countryName'];
currencyCode = json['currencyCode'];
startDate = json['startDate'];
endDate = json['endDate'];
quotePrice = json['quotePrice'];
employeeNumber = json['employeeNumber'];
profilePicture = json['profilePicture'];
fullName = json['fullName'];
emailAddress = json['emailAddress'];
mobileNumber = json['mobileNumber'];
isApproved = json['isApproved'];
status = json['status'];
if (json['itemAttachments'] != null) {
itemAttachments = <ItemAttachments>[];
json['itemAttachments'].forEach((v) {
itemAttachments!.add(new ItemAttachments.fromJson(v));
});
}
created = json['created'];
comments = json['comments'];
isActive = json['isActive'];
pageSize = json['pageSize'];
pageNo = json['pageNo'];
languageId = json['languageId'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['itemSaleID'] = this.itemSaleID;
data['title'] = this.title;
data['title_Ar'] = this.titleAr;
data['description'] = this.description;
data['description_Ar'] = this.descriptionAr;
data['categoryID'] = this.categoryID;
data['categoryTitle'] = this.categoryTitle;
data['regionID'] = this.regionID;
data['regionName'] = this.regionName;
data['countryName'] = this.countryName;
data['currencyCode'] = this.currencyCode;
data['startDate'] = this.startDate;
data['endDate'] = this.endDate;
data['quotePrice'] = this.quotePrice;
data['employeeNumber'] = this.employeeNumber;
data['profilePicture'] = this.profilePicture;
data['fullName'] = this.fullName;
data['emailAddress'] = this.emailAddress;
data['mobileNumber'] = this.mobileNumber;
data['isApproved'] = this.isApproved;
data['status'] = this.status;
if (this.itemAttachments != null) {
data['itemAttachments'] =
this.itemAttachments!.map((v) => v.toJson()).toList();
}
data['created'] = this.created;
data['comments'] = this.comments;
data['isActive'] = this.isActive;
data['pageSize'] = this.pageSize;
data['pageNo'] = this.pageNo;
data['languageId'] = this.languageId;
return data;
}
}
class ItemAttachments {
int? attachmentId;
String? fileName;
String? contentType;
dynamic? attachFileStream;
dynamic? base64String;
dynamic? isActive;
int? referenceItemId;
String? content;
String? filePath;
ItemAttachments(
{this.attachmentId,
this.fileName,
this.contentType,
this.attachFileStream,
this.base64String,
this.isActive,
this.referenceItemId,
this.content,
this.filePath});
ItemAttachments.fromJson(Map<String, dynamic> json) {
attachmentId = json['attachmentId'];
fileName = json['fileName'];
contentType = json['contentType'];
attachFileStream = json['attachFileStream'];
base64String = json['base64String'];
isActive = json['isActive'];
referenceItemId = json['referenceItemId'];
content = json['content'];
filePath = json['filePath'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['attachmentId'] = this.attachmentId;
data['fileName'] = this.fileName;
data['contentType'] = this.contentType;
data['attachFileStream'] = this.attachFileStream;
data['base64String'] = this.base64String;
data['isActive'] = this.isActive;
data['referenceItemId'] = this.referenceItemId;
data['content'] = this.content;
data['filePath'] = this.filePath;
return data;
}
}

@ -0,0 +1,48 @@
class GetRegionsList {
int? regionID;
String? regionName;
String? regionNameAr;
int? countryID;
String? countryName;
dynamic? isActive;
int? pageSize;
int? pageNo;
dynamic? languageId;
GetRegionsList(
{this.regionID,
this.regionName,
this.regionNameAr,
this.countryID,
this.countryName,
this.isActive,
this.pageSize,
this.pageNo,
this.languageId});
GetRegionsList.fromJson(Map<String, dynamic> json) {
regionID = json['regionID'];
regionName = json['regionName'];
regionNameAr = json['regionName_Ar'];
countryID = json['countryID'];
countryName = json['countryName'];
isActive = json['isActive'];
pageSize = json['pageSize'];
pageNo = json['pageNo'];
languageId = json['languageId'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['regionID'] = this.regionID;
data['regionName'] = this.regionName;
data['regionName_Ar'] = this.regionNameAr;
data['countryID'] = this.countryID;
data['countryName'] = this.countryName;
data['isActive'] = this.isActive;
data['pageSize'] = this.pageSize;
data['pageNo'] = this.pageNo;
data['languageId'] = this.languageId;
return data;
}
}

@ -0,0 +1,36 @@
class GetSaleCategoriesList {
int? categoryID;
String? title;
String? titleAr;
String? content;
bool? isActive;
dynamic? pageSize;
dynamic? pageNo;
dynamic? languageId;
GetSaleCategoriesList({this.categoryID, this.title, this.titleAr, this.content, this.isActive, this.pageSize, this.pageNo, this.languageId});
GetSaleCategoriesList.fromJson(Map<String, dynamic> json) {
categoryID = json['categoryID'];
title = json['title'];
titleAr = json['title_Ar'];
content = json['content'];
isActive = json['isActive'];
pageSize = json['pageSize'];
pageNo = json['pageNo'];
languageId = json['languageId'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['categoryID'] = this.categoryID;
data['title'] = this.title;
data['title_Ar'] = this.titleAr;
data['content'] = this.content;
data['isActive'] = this.isActive;
data['pageSize'] = this.pageSize;
data['pageNo'] = this.pageNo;
data['languageId'] = this.languageId;
return data;
}
}

@ -0,0 +1,35 @@
import 'package:mohem_flutter_app/models/items_for_sale/get_regions_list.dart';
import 'package:mohem_flutter_app/models/items_for_sale/get_sale_categories_list.dart';
class ItemReviewModel {
String? itemTitle;
String? itemDescription;
String? itemCondition;
GetRegionsList? selectedRegion;
num? itemPrice;
List<String>? itemPhotos;
GetSaleCategoriesList? selectedSaleCategory;
ItemReviewModel(
this.itemTitle,
this.itemDescription,
this.itemCondition,
this.selectedRegion,
this.itemPrice,
this.itemPhotos,
this.selectedSaleCategory,
);
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['itemTitle'] = this.itemTitle;
data['itemDescription'] = this.itemDescription;
data['itemCondition'] = this.itemCondition;
data['selectedRegion'] = this.selectedRegion;
data['itemPrice'] = this.itemPrice;
data['itemPhotos'] = this.itemPhotos;
data['selectedSaleCategory'] = this.selectedSaleCategory;
return data;
}
}

@ -12,7 +12,7 @@ class AllowedActions {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['Action'] = this.action;
data['Details'] = this.details;
data['IsAvailable'] = this.isAvailable;

@ -17,7 +17,7 @@ class FieldGoups {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
if (this.fields != null) {
data['Fields'] = this.fields!.map((v) => v.toJson()).toList();
}

@ -16,7 +16,7 @@ class Fields {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['MultipleValue'] = this.multipleValue;
data['TableValue'] = this.tableValue;
data['Title'] = this.title;

@ -35,7 +35,7 @@ class ITGRequest {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
if (this.allowedActions != null) {
data['AllowedActions'] = this.allowedActions!.map((v) => v.toJson()).toList();
}

@ -21,7 +21,7 @@ class RequestDetails {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ID'] = this.iD;
data['ItemID'] = this.itemID;
data['ListID'] = this.listID;

@ -21,7 +21,7 @@ class RequestType {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['ItemCount'] = this.itemCount;
if (this.requestDetails != null) {
data['RequestDetails'] = this.requestDetails!.map((v) => v.toJson()).toList();

@ -27,7 +27,7 @@ class WFHistory {
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
Map<String, dynamic> data = new Map<String, dynamic>();
data['Action'] = this.action;
data['ApprovalLevel'] = this.approvalLevel;
data['Date'] = this.date;

@ -0,0 +1,24 @@
class CalculateAbsenceDuration {
int? pABSENCEDAYS;
int? pABSENCEHOURS;
String? pRETURNMSG;
String? pRETURNSTATUS;
CalculateAbsenceDuration({this.pABSENCEDAYS, this.pABSENCEHOURS, this.pRETURNMSG, this.pRETURNSTATUS});
CalculateAbsenceDuration.fromJson(Map<String, dynamic> json) {
pABSENCEDAYS = json['P_ABSENCE_DAYS'];
pABSENCEHOURS = json['P_ABSENCE_HOURS'];
pRETURNMSG = json['P_RETURN_MSG'];
pRETURNSTATUS = json['P_RETURN_STATUS'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['P_ABSENCE_DAYS'] = this.pABSENCEDAYS;
data['P_ABSENCE_HOURS'] = this.pABSENCEHOURS;
data['P_RETURN_MSG'] = this.pRETURNMSG;
data['P_RETURN_STATUS'] = this.pRETURNSTATUS;
return data;
}
}

@ -0,0 +1,18 @@
class CancelHRTransactionLIst {
String? pRETURNMSG;
String? pRETURNSTATUS;
CancelHRTransactionLIst({this.pRETURNMSG, this.pRETURNSTATUS});
CancelHRTransactionLIst.fromJson(Map<String, dynamic> json) {
pRETURNMSG = json['P_RETURN_MSG'];
pRETURNSTATUS = json['P_RETURN_STATUS'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['P_RETURN_MSG'] = this.pRETURNMSG;
data['P_RETURN_STATUS'] = this.pRETURNSTATUS;
return data;
}
}

@ -0,0 +1,24 @@
class GetAbsenceAttendanceTypesList {
int? aBSENCEATTENDANCETYPEID;
String? aBSENCEATTENDANCETYPENAME;
String? dESCFLEXCONTEXTCODE;
String? hOURSORDAYS;
GetAbsenceAttendanceTypesList({this.aBSENCEATTENDANCETYPEID, this.aBSENCEATTENDANCETYPENAME, this.dESCFLEXCONTEXTCODE, this.hOURSORDAYS});
GetAbsenceAttendanceTypesList.fromJson(Map<String, dynamic> json) {
aBSENCEATTENDANCETYPEID = json['ABSENCE_ATTENDANCE_TYPE_ID'];
aBSENCEATTENDANCETYPENAME = json['ABSENCE_ATTENDANCE_TYPE_NAME'];
dESCFLEXCONTEXTCODE = json['DESC_FLEX_CONTEXT_CODE'];
hOURSORDAYS = json['HOURS_OR_DAYS'];
}
Map<String, dynamic> toJson() {
Map<String, dynamic> data = new Map<String, dynamic>();
data['ABSENCE_ATTENDANCE_TYPE_ID'] = this.aBSENCEATTENDANCETYPEID;
data['ABSENCE_ATTENDANCE_TYPE_NAME'] = this.aBSENCEATTENDANCETYPENAME;
data['DESC_FLEX_CONTEXT_CODE'] = this.dESCFLEXCONTEXTCODE;
data['HOURS_OR_DAYS'] = this.hOURSORDAYS;
return data;
}
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save