"assets/svg/git@183.82.99.133:saisrinivas/gen_erp_2025.git" did not exist on "6ace5c45f7a64f494612f9d71e49d592408c19ab"
Commit 379460f6 authored by Sai Srinivas's avatar Sai Srinivas
Browse files

04-07-2025 By Sai Srinivas

Test cases and Order Module, Crm Module.
parent 2ccf19cc
<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg"> <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" id="right" x="0" y="0" version="1.1" viewBox="0 0 29 29">
<path d="M11 21.2916C13.1756 21.2916 15.3023 20.6734 17.1113 19.515C18.9202 18.3567 20.3301 16.7103 21.1627 14.7841C21.9952 12.8578 22.2131 10.7383 21.7886 8.69338C21.3642 6.6485 20.3165 4.77015 18.7782 3.29588C17.2398 1.8216 15.2798 0.817602 13.146 0.41085C11.0122 0.00409696 8.80047 0.212857 6.79048 1.01073C4.78049 1.8086 3.06253 3.15975 1.85383 4.89332C0.645134 6.62689 -4.61819e-06 8.66501 -4.80046e-06 10.75C-5.04488e-06 13.5458 1.15892 16.2271 3.22182 18.204C5.28472 20.181 8.08261 21.2916 11 21.2916ZM8.29 6.63871C8.19627 6.54962 8.12187 6.44363 8.07111 6.32685C8.02034 6.21006 7.9942 6.0848 7.9942 5.95829C7.9942 5.83178 8.02034 5.70652 8.07111 5.58974C8.12187 5.47296 8.19627 5.36697 8.29 5.27788C8.38296 5.18805 8.49356 5.11676 8.61542 5.0681C8.73728 5.01945 8.86798 4.9944 9 4.9944C9.13201 4.9944 9.26271 5.01945 9.38457 5.0681C9.50643 5.11676 9.61703 5.18805 9.71 5.27788L14.71 10.0695C14.8037 10.1586 14.8781 10.2646 14.9289 10.3814C14.9797 10.4982 15.0058 10.6234 15.0058 10.75C15.0058 10.8765 14.9797 11.0017 14.9289 11.1185C14.8781 11.2353 14.8037 11.3413 14.71 11.4304L9.71 16.222C9.61676 16.3114 9.50607 16.3823 9.38425 16.4306C9.26242 16.479 9.13185 16.5039 9 16.5039C8.86814 16.5039 8.73757 16.479 8.61575 16.4306C8.49392 16.3823 8.38323 16.3114 8.29 16.222C8.19676 16.1327 8.1228 16.0266 8.07234 15.9099C8.02188 15.7931 7.9959 15.668 7.9959 15.5416C7.9959 15.4153 8.02188 15.2901 8.07234 15.1734C8.1228 15.0566 8.19676 14.9506 8.29 14.8612L12.59 10.75L8.29 6.63871Z" fill="white"/> <path fill="none" stroke="#000" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" stroke-width="2" d="m11.5 8.5 6 6-6 6" style="fill:none;stroke:#000;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:10"></path>
</svg> </svg>
\ No newline at end of file
<svg width="30" height="31" viewBox="0 0 30 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1211_3183)">
<path d="M24.0281 18.7809C22.847 18.7809 21.6924 19.1311 20.7103 19.7873C19.7282 20.4435 18.9628 21.3762 18.5108 22.4674C18.0588 23.5587 17.9405 24.7594 18.171 25.9178C18.4014 27.0763 18.9701 28.1403 19.8053 28.9755C20.6405 29.8107 21.7046 30.3795 22.863 30.6099C24.0215 30.8403 25.2222 30.7221 26.3134 30.2701C27.4046 29.8181 28.3373 29.0526 28.9935 28.0706C29.6497 27.0885 30 25.9339 30 24.7528C30 23.1689 29.3708 21.65 28.2508 20.53C27.1309 19.4101 25.6119 18.7809 24.0281 18.7809ZM26.8875 26.0219L24.6093 28.3012C24.5332 28.3774 24.4427 28.4378 24.3432 28.4791C24.2437 28.5203 24.137 28.5415 24.0292 28.5415C23.9215 28.5415 23.8148 28.5203 23.7153 28.4791C23.6158 28.4378 23.5253 28.3774 23.4492 28.3012L21.1699 26.0219C21.016 25.8681 20.9296 25.6594 20.9296 25.4418C20.9296 25.2243 21.016 25.0156 21.1699 24.8618C21.3237 24.7079 21.5324 24.6215 21.75 24.6215C21.9675 24.6215 22.1762 24.7079 22.33 24.8618L23.2089 25.7407V21.7844C23.2089 21.5669 23.2954 21.3582 23.4492 21.2044C23.603 21.0505 23.8117 20.9641 24.0292 20.9641C24.2468 20.9641 24.4555 21.0505 24.6093 21.2044C24.7631 21.3582 24.8496 21.5669 24.8496 21.7844V25.7407L25.7285 24.8618C25.8823 24.7079 26.091 24.6215 26.3085 24.6215C26.5261 24.6215 26.7348 24.7079 26.8886 24.8618C27.0425 25.0156 27.1289 25.2243 27.1289 25.4418C27.1289 25.6594 27.0425 25.8681 26.8886 26.0219H26.8875ZM27.1218 11.2036C26.7316 11.2135 26.3419 11.22 25.9541 11.22C24.3066 11.2194 22.6604 11.1316 21.0222 10.9569H21.0082C20.0314 10.8438 19.0746 10.3592 18.3058 9.59282C17.5371 8.82641 17.0554 7.86723 16.9417 6.89106C16.942 6.88637 16.942 6.88168 16.9417 6.87699C16.7241 4.84074 16.6411 2.79234 16.6933 0.745158C13.6145 0.67095 10.5341 0.797782 7.47183 1.12485C5.42632 1.36215 3.46519 3.32387 3.22729 5.36938C2.69116 10.3879 2.69116 19.7067 3.22729 24.7252C3.4646 26.7707 5.42632 28.7325 7.47183 28.9698C10.9446 29.3415 14.4401 29.4553 17.9296 29.3102C17.1904 28.319 16.703 27.1632 16.509 25.942C16.3151 24.7209 16.4206 23.4709 16.8164 22.2995H8.64136C8.4238 22.2995 8.21515 22.213 8.06131 22.0592C7.90747 21.9054 7.82104 21.6967 7.82104 21.4791C7.82104 21.2616 7.90747 21.0529 8.06131 20.8991C8.21515 20.7453 8.4238 20.6588 8.64136 20.6588H17.6062C18.2578 19.6426 19.1391 18.7938 20.1791 18.1809H8.64136C8.4238 18.1809 8.21515 18.0945 8.06131 17.9406C7.90747 17.7868 7.82104 17.5781 7.82104 17.3606C7.82104 17.143 7.90747 16.9344 8.06131 16.7805C8.21515 16.6267 8.4238 16.5403 8.64136 16.5403H21.3562C21.5738 16.5403 21.7824 16.6267 21.9363 16.7805C22.0901 16.9344 22.1765 17.143 22.1765 17.3606V17.3653C23.8355 16.9545 25.5841 17.1092 27.1453 17.8047C27.1904 15.6256 27.1822 13.3399 27.1218 11.2036ZM17.257 14.0629H8.6437C8.42614 14.0629 8.21749 13.9765 8.06365 13.8227C7.90981 13.6688 7.82339 13.4602 7.82339 13.2426C7.82339 13.0251 7.90981 12.8164 8.06365 12.6626C8.21749 12.5087 8.42614 12.4223 8.6437 12.4223H17.257C17.4745 12.4223 17.6832 12.5087 17.837 12.6626C17.9909 12.8164 18.0773 13.0251 18.0773 13.2426C18.0773 13.4602 17.9909 13.6688 17.837 13.8227C17.6832 13.9765 17.4745 14.0629 17.257 14.0629ZM18.4986 6.70883C18.2883 4.74714 18.2083 2.77368 18.2589 0.801408C21.7518 3.1293 24.7446 6.13114 27.0621 9.6309L27.0667 9.63852C25.1042 9.68693 23.1406 9.60609 21.1886 9.39653C19.8919 9.24828 18.6486 8.00492 18.4986 6.70883Z" fill="url(#paint0_linear_1211_3183)"/>
<path d="M24.0281 18.7809C22.847 18.7809 21.6924 19.1311 20.7103 19.7873C19.7282 20.4435 18.9628 21.3762 18.5108 22.4674C18.0588 23.5587 17.9405 24.7594 18.171 25.9178C18.4014 27.0763 18.9701 28.1403 19.8053 28.9755C20.6405 29.8107 21.7046 30.3795 22.863 30.6099C24.0215 30.8403 25.2222 30.7221 26.3134 30.2701C27.4046 29.8181 28.3373 29.0526 28.9935 28.0706C29.6497 27.0885 30 25.9339 30 24.7528C30 23.1689 29.3708 21.65 28.2508 20.53C27.1309 19.4101 25.6119 18.7809 24.0281 18.7809ZM26.8875 26.0219L24.6093 28.3012C24.5332 28.3774 24.4427 28.4378 24.3432 28.4791C24.2437 28.5203 24.137 28.5415 24.0292 28.5415C23.9215 28.5415 23.8148 28.5203 23.7153 28.4791C23.6158 28.4378 23.5253 28.3774 23.4492 28.3012L21.1699 26.0219C21.016 25.8681 20.9296 25.6594 20.9296 25.4418C20.9296 25.2243 21.016 25.0156 21.1699 24.8618C21.3237 24.7079 21.5324 24.6215 21.75 24.6215C21.9675 24.6215 22.1762 24.7079 22.33 24.8618L23.2089 25.7407V21.7844C23.2089 21.5669 23.2954 21.3582 23.4492 21.2044C23.603 21.0505 23.8117 20.9641 24.0292 20.9641C24.2468 20.9641 24.4555 21.0505 24.6093 21.2044C24.7631 21.3582 24.8496 21.5669 24.8496 21.7844V25.7407L25.7285 24.8618C25.8823 24.7079 26.091 24.6215 26.3085 24.6215C26.5261 24.6215 26.7348 24.7079 26.8886 24.8618C27.0425 25.0156 27.1289 25.2243 27.1289 25.4418C27.1289 25.6594 27.0425 25.8681 26.8886 26.0219H26.8875ZM27.1218 11.2036C26.7316 11.2135 26.3419 11.22 25.9541 11.22C24.3066 11.2194 22.6604 11.1316 21.0222 10.9569H21.0082C20.0314 10.8438 19.0746 10.3592 18.3058 9.59282C17.5371 8.82641 17.0554 7.86723 16.9417 6.89106C16.942 6.88637 16.942 6.88168 16.9417 6.87699C16.7241 4.84074 16.6411 2.79234 16.6933 0.745158C13.6145 0.67095 10.5341 0.797782 7.47183 1.12485C5.42632 1.36215 3.46519 3.32387 3.22729 5.36938C2.69116 10.3879 2.69116 19.7067 3.22729 24.7252C3.4646 26.7707 5.42632 28.7325 7.47183 28.9698C10.9446 29.3415 14.4401 29.4553 17.9296 29.3102C17.1904 28.319 16.703 27.1632 16.509 25.942C16.3151 24.7209 16.4206 23.4709 16.8164 22.2995H8.64136C8.4238 22.2995 8.21515 22.213 8.06131 22.0592C7.90747 21.9054 7.82104 21.6967 7.82104 21.4791C7.82104 21.2616 7.90747 21.0529 8.06131 20.8991C8.21515 20.7453 8.4238 20.6588 8.64136 20.6588H17.6062C18.2578 19.6426 19.1391 18.7938 20.1791 18.1809H8.64136C8.4238 18.1809 8.21515 18.0945 8.06131 17.9406C7.90747 17.7868 7.82104 17.5781 7.82104 17.3606C7.82104 17.143 7.90747 16.9344 8.06131 16.7805C8.21515 16.6267 8.4238 16.5403 8.64136 16.5403H21.3562C21.5738 16.5403 21.7824 16.6267 21.9363 16.7805C22.0901 16.9344 22.1765 17.143 22.1765 17.3606V17.3653C23.8355 16.9545 25.5841 17.1092 27.1453 17.8047C27.1904 15.6256 27.1822 13.3399 27.1218 11.2036ZM17.257 14.0629H8.6437C8.42614 14.0629 8.21749 13.9765 8.06365 13.8227C7.90981 13.6688 7.82339 13.4602 7.82339 13.2426C7.82339 13.0251 7.90981 12.8164 8.06365 12.6626C8.21749 12.5087 8.42614 12.4223 8.6437 12.4223H17.257C17.4745 12.4223 17.6832 12.5087 17.837 12.6626C17.9909 12.8164 18.0773 13.0251 18.0773 13.2426C18.0773 13.4602 17.9909 13.6688 17.837 13.8227C17.6832 13.9765 17.4745 14.0629 17.257 14.0629ZM18.4986 6.70883C18.2883 4.74714 18.2083 2.77368 18.2589 0.801408C21.7518 3.1293 24.7446 6.13114 27.0621 9.6309L27.0667 9.63852C25.1042 9.68693 23.1406 9.60609 21.1886 9.39653C19.8919 9.24828 18.6486 8.00492 18.4986 6.70883Z" fill="url(#paint1_linear_1211_3183)"/>
</g>
<defs>
<linearGradient id="paint0_linear_1211_3183" x1="2.82431" y1="15.725" x2="29.9988" y2="15.725" gradientUnits="userSpaceOnUse">
<stop stop-color="#0080DE"/>
<stop offset="0.6" stop-color="#49BCFF"/>
<stop offset="1" stop-color="#61CAFF"/>
</linearGradient>
<linearGradient id="paint1_linear_1211_3183" x1="9.89991" y1="-4.96848" x2="21.5852" y2="31.8898" gradientUnits="userSpaceOnUse">
<stop stop-color="#E5983F"/>
<stop offset="1" stop-color="#FF0A38"/>
</linearGradient>
<clipPath id="clip0_1211_3183">
<rect width="30" height="30" fill="white" transform="translate(0 0.724609)"/>
</clipPath>
</defs>
</svg>
<svg width="30" height="31" viewBox="0 0 30 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1211_3166)">
<path d="M25.4756 1.60054C20.5889 1.07847 9.41099 1.07847 4.52427 1.60054C2.53208 1.83198 0.62251 3.74214 0.391064 5.73315C-0.131006 10.6199 -0.131006 15.5066 0.391064 20.3933C0.621924 22.3849 2.53208 24.2951 4.52368 24.5259C6.14321 24.6988 8.45356 24.8148 10.9971 24.8728C11.8708 26.3687 12.7995 27.9103 13.6895 29.4548C14.2942 30.5042 15.7051 30.5042 16.3098 29.4548C17.1999 27.9103 18.1286 26.3687 19.0022 24.8728C21.5452 24.8142 23.8555 24.6988 25.4745 24.5259C27.4661 24.2951 29.3762 22.3849 29.6071 20.3933C30.1291 15.5066 30.1291 10.6199 29.6071 5.73315C29.3756 3.74155 27.4661 1.8314 25.4745 1.60054H25.4756ZM17.3264 18.2242H7.73345C6.95649 18.2242 6.3272 17.5943 6.3272 16.8179C6.3272 16.0416 6.95708 15.4117 7.73345 15.4117H17.3264C18.1034 15.4117 18.7327 16.0416 18.7327 16.8179C18.7327 17.5943 18.1028 18.2242 17.3264 18.2242ZM22.2665 11.8832H7.73345C6.95649 11.8832 6.3272 11.2533 6.3272 10.4769C6.3272 9.70054 6.95708 9.07065 7.73345 9.07065H22.2665C23.0434 9.07065 23.6727 9.70054 23.6727 10.4769C23.6727 11.2533 23.0428 11.8832 22.2665 11.8832Z" fill="url(#paint0_linear_1211_3166)"/>
</g>
<defs>
<linearGradient id="paint0_linear_1211_3166" x1="-0.000341797" y1="15.7257" x2="29.9997" y2="15.7257" gradientUnits="userSpaceOnUse">
<stop stop-color="#0080DE"/>
<stop offset="0.6" stop-color="#49BCFF"/>
<stop offset="1" stop-color="#61CAFF"/>
</linearGradient>
<clipPath id="clip0_1211_3166">
<rect width="30" height="30" fill="white" transform="translate(0 0.724609)"/>
</clipPath>
</defs>
</svg>
<svg width="30" height="31" viewBox="0 0 30 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M29.5796 9.98328L22.7874 16.7725C22.263 17.2969 21.428 17.3204 20.8755 16.8434C20.2456 16.2997 20.2386 15.344 20.8269 14.7557L25.205 10.3776C25.2085 10.3741 25.2062 10.3677 25.2009 10.3677H1.41064C0.634277 10.3677 0.00439454 9.73777 0.00439454 8.9614C0.00439454 8.18503 0.634277 7.55515 1.41064 7.55515H25.2009C25.2062 7.55515 25.2085 7.54871 25.205 7.54519L20.7935 3.13367C20.2444 2.58464 20.2444 1.69402 20.7935 1.14441C21.3425 0.5948 22.2331 0.595386 22.7821 1.14441L29.579 7.93894C30.1438 8.5032 30.1438 9.41902 29.579 9.98328H29.5796ZM28.597 21.1032H4.80674C4.80146 21.1032 4.79912 21.0968 4.80264 21.0932L9.21416 16.6817C9.76318 16.1327 9.76318 15.2421 9.21416 14.6925C8.66514 14.1434 7.77451 14.1434 7.22549 14.6925L0.428027 21.4876C-0.136816 22.0518 -0.136816 22.9677 0.428027 23.5319L7.22021 30.3212C7.74463 30.8456 8.57959 30.869 9.13213 30.3927C9.76201 29.8489 9.76904 28.8932 9.18076 28.305L4.80264 23.9268C4.79912 23.9233 4.80146 23.9169 4.80674 23.9169H28.597C29.3733 23.9169 30.0032 23.287 30.0032 22.5106C30.0032 21.7343 29.3733 21.1044 28.597 21.1044V21.1032Z" fill="url(#paint0_linear_1211_3161)"/>
<defs>
<linearGradient id="paint0_linear_1211_3161" x1="3.81768" y1="26.9216" x2="26.1899" y2="4.54929" gradientUnits="userSpaceOnUse">
<stop stop-color="#EF486C"/>
<stop offset="1" stop-color="#F98F80"/>
</linearGradient>
</defs>
</svg>
<svg width="30" height="31" viewBox="0 0 30 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1211_3170)">
<path d="M6.74414 3.30371C13.3429 -1.3523 22.4248 0.159517 27.1689 6.64844C31.948 13.1854 30.5208 22.3738 24.0615 27.1865C19.4235 30.6421 13.1689 31.0224 8.09277 28.2744L0 30.8486L2.62598 22.9795C-1.35515 16.3641 0.461349 7.73692 6.74414 3.30371Z" fill="url(#paint0_linear_1211_3170)"/>
<rect x="6.95703" y="11.3125" width="17.251" height="3.25" rx="1.625" fill="white"/>
<rect x="6.95703" y="17.0625" width="14.2495" height="3.25" rx="1.625" fill="white"/>
</g>
<defs>
<linearGradient id="paint0_linear_1211_3170" x1="-1.32787" y1="4.05652" x2="15" y2="30.8484" gradientUnits="userSpaceOnUse">
<stop offset="0.136334" stop-color="#0D9C00"/>
<stop offset="1" stop-color="#13E200"/>
</linearGradient>
<clipPath id="clip0_1211_3170">
<rect width="30" height="30.2494" fill="white" transform="translate(0 0.599609)"/>
</clipPath>
</defs>
</svg>
<svg width="30" height="31" viewBox="0 0 30 31" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1213_3198)">
<path d="M19.8368 1.81279C18.9482 1.152 17.8782 0.779856 16.7713 0.746618C13.547 0.667843 10.321 0.800592 7.1141 1.14401C4.97207 1.39249 2.91815 3.4464 2.66967 5.58844C2.10751 10.8444 2.10751 20.6038 2.66967 25.8589C2.91815 28.0018 4.97207 30.0557 7.1141 30.3042C12.3565 30.8658 17.6439 30.8658 22.8864 30.3042C25.0284 30.0557 27.0823 28.0018 27.3308 25.8589C27.7141 22.2797 27.8357 16.607 27.6973 11.6991V11.6788C27.6887 10.6199 27.345 9.59099 26.7158 8.73936C24.7784 6.10259 22.4601 3.76825 19.8368 1.81279Z" fill="url(#paint0_linear_1213_3198)"/>
<path d="M19.8368 1.81279C18.9482 1.152 17.8782 0.779856 16.7713 0.746618C13.547 0.667843 10.321 0.800592 7.1141 1.14401C4.97207 1.39249 2.91815 3.4464 2.66967 5.58844C2.10751 10.8444 2.10751 20.6038 2.66967 25.8589C2.91815 28.0018 4.97207 30.0557 7.1141 30.3042C12.3565 30.8658 17.6439 30.8658 22.8864 30.3042C25.0284 30.0557 27.0823 28.0018 27.3308 25.8589C27.7141 22.2797 27.8357 16.607 27.6973 11.6991V11.6788C27.6887 10.6199 27.345 9.59099 26.7158 8.73936C24.7784 6.10259 22.4601 3.76825 19.8368 1.81279Z" fill="url(#paint1_linear_1213_3198)"/>
<path d="M27.6916 11.6994C27.2827 11.7091 26.8748 11.7162 26.4686 11.7162C24.7432 11.7158 23.019 11.6237 21.3034 11.4404H21.2884C20.2663 11.3223 19.2618 10.8148 18.4591 10.0121C17.6564 9.20936 17.1488 8.20311 17.0308 7.17836C17.0303 7.17337 17.0303 7.16836 17.0308 7.16338C16.803 5.03233 16.7158 2.88859 16.7699 0.746094C17.8771 0.779153 18.9474 1.15131 19.8363 1.81226C22.4646 3.77242 24.7863 6.11313 26.725 8.75734C27.3499 9.60444 27.6893 10.6283 27.6942 11.6809L27.6916 11.6994Z" fill="url(#paint2_linear_1213_3198)"/>
<path d="M27.6916 11.6994C27.2827 11.7091 26.8748 11.7162 26.4686 11.7162C24.7432 11.7158 23.019 11.6237 21.3034 11.4404H21.2884C20.2663 11.3223 19.2618 10.8148 18.4591 10.0121C17.6564 9.20936 17.1488 8.20311 17.0308 7.17836C17.0303 7.17337 17.0303 7.16836 17.0308 7.16338C16.803 5.03233 16.7158 2.88859 16.7699 0.746094C17.8771 0.779153 18.9474 1.15131 19.8363 1.81226C22.4646 3.77242 24.7863 6.11313 26.725 8.75734C27.3499 9.60444 27.6893 10.6283 27.6942 11.6809L27.6916 11.6994Z" fill="#0A6502"/>
<g clip-path="url(#clip1_1213_3198)">
<path d="M7.94727 24.7505L9.18125 21.0827C7.31018 17.9993 8.16406 13.9785 11.1166 11.9124C14.2178 9.74238 18.4855 10.4474 20.7149 13.4718C22.9607 16.5185 22.2902 20.8006 19.2548 23.0436C17.0752 24.6542 14.1358 24.8314 11.7503 23.5504L7.94727 24.7505ZM9.71888 23.008L11.9408 22.3112C14.4498 23.9533 17.804 23.3973 19.6541 21.0675C21.6348 18.5733 21.1869 14.9677 18.6788 13.0166C16.1483 11.0486 12.5056 11.5174 10.546 14.0258C8.98573 16.0231 8.94435 18.8481 10.4417 20.8922L9.71888 23.0079V23.008Z" fill="white"/>
<path d="M12.7267 14.1696C12.8488 14.1563 12.9707 14.1835 13.0919 14.1947C13.1541 14.2004 13.2178 14.1879 13.2801 14.1983C13.4262 14.2227 13.4876 14.3944 13.5386 14.513C13.7105 14.912 13.9041 15.4324 14.0408 15.8453C14.0588 15.8995 14.0788 15.9587 14.0727 16.0162C14.0644 16.0933 13.9462 16.2876 13.8961 16.3541C13.7851 16.5019 13.5683 16.6657 13.4767 16.802C13.3667 16.9655 13.5487 17.2086 13.6393 17.3563C14.0641 18.0483 14.6761 18.6506 15.3924 19.0437C15.4938 19.0994 15.8375 19.284 15.9299 19.3014C16.0106 19.3166 16.0815 19.3092 16.1479 19.2608C16.3709 19.0983 16.6061 18.7269 16.8045 18.5211C16.9443 18.376 17.0372 18.4175 17.2088 18.4869C17.5878 18.6405 18.1883 18.969 18.5421 19.1852C18.7339 19.3023 18.7258 19.3458 18.7074 19.5739C18.6624 20.1343 18.41 20.4685 17.922 20.7276C17.4277 20.99 16.9389 21.0201 16.4063 20.8642C14.604 20.3363 13.4338 19.358 12.4198 17.819C11.8793 16.9989 11.4033 16.0971 11.8035 15.0988C11.9383 14.7626 12.3377 14.212 12.7269 14.1696H12.7267Z" fill="white"/>
</g>
</g>
<defs>
<linearGradient id="paint0_linear_1213_3198" x1="25.7782" y1="28.8283" x2="1.89339" y2="4.94433" gradientUnits="userSpaceOnUse">
<stop stop-color="#EF3739"/>
<stop offset="0.54" stop-color="#EF3739"/>
<stop offset="1" stop-color="#FF8C8B"/>
</linearGradient>
<linearGradient id="paint1_linear_1213_3198" x1="15.0003" y1="0.724609" x2="15.0003" y2="30.7254" gradientUnits="userSpaceOnUse">
<stop stop-color="#0D9C00"/>
<stop offset="1" stop-color="#13E200"/>
</linearGradient>
<linearGradient id="paint2_linear_1213_3198" x1="26.4351" y1="12.9551" x2="15.4985" y2="2.01845" gradientUnits="userSpaceOnUse">
<stop stop-color="#34344F"/>
<stop offset="0.26" stop-color="#3B3B57"/>
<stop offset="0.66" stop-color="#50506D"/>
<stop offset="1" stop-color="#666684"/>
</linearGradient>
<clipPath id="clip0_1213_3198">
<rect width="30" height="30" fill="white" transform="translate(0 0.724609)"/>
</clipPath>
<clipPath id="clip1_1213_3198">
<rect width="14.0981" height="14.0981" fill="white" transform="translate(7.94727 10.6523)"/>
</clipPath>
</defs>
</svg>
...@@ -8,6 +8,7 @@ class LeadDetailsResponse { ...@@ -8,6 +8,7 @@ class LeadDetailsResponse {
List<AppointmentDetails>? appointmentDetails; List<AppointmentDetails>? appointmentDetails;
List<QuotationsDetails>? quotationsDetails; List<QuotationsDetails>? quotationsDetails;
String? message; String? message;
String? showEditAccountButton;
LeadDetailsResponse( LeadDetailsResponse(
{this.error, {this.error,
...@@ -18,7 +19,9 @@ class LeadDetailsResponse { ...@@ -18,7 +19,9 @@ class LeadDetailsResponse {
this.followupDetails, this.followupDetails,
this.appointmentDetails, this.appointmentDetails,
this.quotationsDetails, this.quotationsDetails,
this.message}); this.message,
this.showEditAccountButton,
});
LeadDetailsResponse.fromJson(Map<String, dynamic> json) { LeadDetailsResponse.fromJson(Map<String, dynamic> json) {
error = json['error']; error = json['error'];
...@@ -59,6 +62,7 @@ class LeadDetailsResponse { ...@@ -59,6 +62,7 @@ class LeadDetailsResponse {
}); });
} }
message = json['message']; message = json['message'];
showEditAccountButton = json['show_edit_account_button'];
} }
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {
...@@ -91,6 +95,7 @@ class LeadDetailsResponse { ...@@ -91,6 +95,7 @@ class LeadDetailsResponse {
this.quotationsDetails!.map((v) => v.toJson()).toList(); this.quotationsDetails!.map((v) => v.toJson()).toList();
} }
data['message'] = this.message; data['message'] = this.message;
data['show_edit_account_button'] = this.showEditAccountButton;
return data; return data;
} }
} }
......
...@@ -6,6 +6,7 @@ class crmProspectDetailsResponse { ...@@ -6,6 +6,7 @@ class crmProspectDetailsResponse {
String? error; String? error;
AccountDetails? accountDetails; AccountDetails? accountDetails;
String? message; String? message;
String? showTransfeLeadButton;
crmProspectDetailsResponse( crmProspectDetailsResponse(
{this.leads, {this.leads,
...@@ -14,7 +15,8 @@ class crmProspectDetailsResponse { ...@@ -14,7 +15,8 @@ class crmProspectDetailsResponse {
this.payments, this.payments,
this.error, this.error,
this.accountDetails, this.accountDetails,
this.message}); this.message,
this.showTransfeLeadButton});
crmProspectDetailsResponse.fromJson(Map<String, dynamic> json) { crmProspectDetailsResponse.fromJson(Map<String, dynamic> json) {
if (json['leads'] != null) { if (json['leads'] != null) {
...@@ -42,6 +44,7 @@ class crmProspectDetailsResponse { ...@@ -42,6 +44,7 @@ class crmProspectDetailsResponse {
}); });
} }
error = json['error']; error = json['error'];
showTransfeLeadButton = json['show_transfer_lead_button'];
accountDetails = json['account_details'] != null accountDetails = json['account_details'] != null
? new AccountDetails.fromJson(json['account_details']) ? new AccountDetails.fromJson(json['account_details'])
: null; : null;
...@@ -67,6 +70,7 @@ class crmProspectDetailsResponse { ...@@ -67,6 +70,7 @@ class crmProspectDetailsResponse {
data['account_details'] = this.accountDetails!.toJson(); data['account_details'] = this.accountDetails!.toJson();
} }
data['message'] = this.message; data['message'] = this.message;
data['show_transfer_lead_button'] = this.showTransfeLeadButton;
return data; return data;
} }
} }
......
...@@ -34,6 +34,7 @@ class C_List { ...@@ -34,6 +34,7 @@ class C_List {
String? compRegdate; String? compRegdate;
String? complaintNote; String? complaintNote;
String? techName; String? techName;
String? createdBy;
C_List( C_List(
{this.compId, {this.compId,
...@@ -41,7 +42,8 @@ class C_List { ...@@ -41,7 +42,8 @@ class C_List {
this.compStatus, this.compStatus,
this.compRegdate, this.compRegdate,
this.complaintNote, this.complaintNote,
this.techName}); this.techName,
this.createdBy});
C_List.fromJson(Map<String, dynamic> json) { C_List.fromJson(Map<String, dynamic> json) {
compId = json['comp_id']; compId = json['comp_id'];
...@@ -50,6 +52,7 @@ class C_List { ...@@ -50,6 +52,7 @@ class C_List {
compRegdate = json['comp_regdate']; compRegdate = json['comp_regdate'];
complaintNote = json['complaint_note']; complaintNote = json['complaint_note'];
techName = json['tech_name']; techName = json['tech_name'];
createdBy = json['created_by'];
} }
Map<String, dynamic> toJson() { Map<String, dynamic> toJson() {
...@@ -60,6 +63,7 @@ class C_List { ...@@ -60,6 +63,7 @@ class C_List {
data['comp_regdate'] = this.compRegdate; data['comp_regdate'] = this.compRegdate;
data['complaint_note'] = this.complaintNote; data['complaint_note'] = this.complaintNote;
data['tech_name'] = this.techName; data['tech_name'] = this.techName;
data['created_by'] = this.createdBy;
return data; return data;
} }
} }
...@@ -17,14 +17,17 @@ class loadGeneratorDetailsResponse { ...@@ -17,14 +17,17 @@ class loadGeneratorDetailsResponse {
String? state; String? state;
String? district; String? district;
String? address; String? address;
String? loc;
String? dispDate; String? dispDate;
String? cmsngDate; String? cmsngDate;
String? status; String? status;
String? loc;
List<ComplaintCategoryList>? complaintCategoryList; List<ComplaintCategoryList>? complaintCategoryList;
List<ComplaintTypeList>? complaintTypeList; List<ComplaintTypeList>? complaintTypeList;
List<ComplaintDescriptionList>? complaintDescriptionList; List<ComplaintDescriptionList>? complaintDescriptionList;
String? nextService; String? nextService;
List<ContactList>? contactList;
List<ComplaintList>? complaintList;
List<ScheduleList>? scheduleList;
int? sessionExists; int? sessionExists;
loadGeneratorDetailsResponse( loadGeneratorDetailsResponse(
...@@ -46,14 +49,17 @@ class loadGeneratorDetailsResponse { ...@@ -46,14 +49,17 @@ class loadGeneratorDetailsResponse {
this.state, this.state,
this.district, this.district,
this.address, this.address,
this.loc,
this.dispDate, this.dispDate,
this.cmsngDate, this.cmsngDate,
this.status, this.status,
this.loc,
this.complaintCategoryList, this.complaintCategoryList,
this.complaintTypeList, this.complaintTypeList,
this.complaintDescriptionList, this.complaintDescriptionList,
this.nextService, this.nextService,
this.contactList,
this.complaintList,
this.scheduleList,
this.sessionExists}); this.sessionExists});
loadGeneratorDetailsResponse.fromJson(Map<String, dynamic> json) { loadGeneratorDetailsResponse.fromJson(Map<String, dynamic> json) {
...@@ -75,10 +81,10 @@ class loadGeneratorDetailsResponse { ...@@ -75,10 +81,10 @@ class loadGeneratorDetailsResponse {
state = json['state']; state = json['state'];
district = json['district']; district = json['district'];
address = json['address']; address = json['address'];
loc = json['loc'];
dispDate = json['disp_date']; dispDate = json['disp_date'];
cmsngDate = json['cmsng_date']; cmsngDate = json['cmsng_date'];
status = json['status']; status = json['status'];
loc = json['loc'];
if (json['complaint_category_list'] != null) { if (json['complaint_category_list'] != null) {
complaintCategoryList = <ComplaintCategoryList>[]; complaintCategoryList = <ComplaintCategoryList>[];
json['complaint_category_list'].forEach((v) { json['complaint_category_list'].forEach((v) {
...@@ -98,6 +104,24 @@ class loadGeneratorDetailsResponse { ...@@ -98,6 +104,24 @@ class loadGeneratorDetailsResponse {
}); });
} }
nextService = json['next_service']; nextService = json['next_service'];
if (json['contact_list'] != null) {
contactList = <ContactList>[];
json['contact_list'].forEach((v) {
contactList!.add(new ContactList.fromJson(v));
});
}
if (json['complaint_list'] != null) {
complaintList = <ComplaintList>[];
json['complaint_list'].forEach((v) {
complaintList!.add(new ComplaintList.fromJson(v));
});
}
if (json['schedule_list'] != null) {
scheduleList = <ScheduleList>[];
json['schedule_list'].forEach((v) {
scheduleList!.add(new ScheduleList.fromJson(v));
});
}
sessionExists = json['session_exists']; sessionExists = json['session_exists'];
} }
...@@ -121,10 +145,10 @@ class loadGeneratorDetailsResponse { ...@@ -121,10 +145,10 @@ class loadGeneratorDetailsResponse {
data['state'] = this.state; data['state'] = this.state;
data['district'] = this.district; data['district'] = this.district;
data['address'] = this.address; data['address'] = this.address;
data['loc'] = this.loc;
data['disp_date'] = this.dispDate; data['disp_date'] = this.dispDate;
data['cmsng_date'] = this.cmsngDate; data['cmsng_date'] = this.cmsngDate;
data['status'] = this.status; data['status'] = this.status;
data['loc'] = this.loc;
if (this.complaintCategoryList != null) { if (this.complaintCategoryList != null) {
data['complaint_category_list'] = data['complaint_category_list'] =
this.complaintCategoryList!.map((v) => v.toJson()).toList(); this.complaintCategoryList!.map((v) => v.toJson()).toList();
...@@ -138,6 +162,17 @@ class loadGeneratorDetailsResponse { ...@@ -138,6 +162,17 @@ class loadGeneratorDetailsResponse {
this.complaintDescriptionList!.map((v) => v.toJson()).toList(); this.complaintDescriptionList!.map((v) => v.toJson()).toList();
} }
data['next_service'] = this.nextService; data['next_service'] = this.nextService;
if (this.contactList != null) {
data['contact_list'] = this.contactList!.map((v) => v.toJson()).toList();
}
if (this.complaintList != null) {
data['complaint_list'] =
this.complaintList!.map((v) => v.toJson()).toList();
}
if (this.scheduleList != null) {
data['schedule_list'] =
this.scheduleList!.map((v) => v.toJson()).toList();
}
data['session_exists'] = this.sessionExists; data['session_exists'] = this.sessionExists;
return data; return data;
} }
...@@ -161,6 +196,137 @@ class ComplaintCategoryList { ...@@ -161,6 +196,137 @@ class ComplaintCategoryList {
return data; return data;
} }
} }
class ContactList {
String? name;
String? designation;
String? mob1;
String? mob2;
String? mail;
String? type;
ContactList(
{this.name,
this.designation,
this.mob1,
this.mob2,
this.mail,
this.type});
ContactList.fromJson(Map<String, dynamic> json) {
name = json['name'];
designation = json['designation'];
mob1 = json['mob1'];
mob2 = json['mob2'];
mail = json['mail'];
type = json['type'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['name'] = this.name;
data['designation'] = this.designation;
data['mob1'] = this.mob1;
data['mob2'] = this.mob2;
data['mail'] = this.mail;
data['type'] = this.type;
return data;
}
}
class ComplaintList {
String? complaintId;
String? createdBy;
String? complaintTypeName;
String? complaintCategoryName;
String? openStatus;
String? createdDate;
ComplaintList(
{this.complaintId,
this.createdBy,
this.complaintTypeName,
this.complaintCategoryName,
this.openStatus,
this.createdDate});
ComplaintList.fromJson(Map<String, dynamic> json) {
complaintId = json['complaint_id'];
createdBy = json['created_by'];
complaintTypeName = json['complaint_type_name'];
complaintCategoryName = json['complaint_category_name'];
openStatus = json['open_status'];
createdDate = json['created_date'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['complaint_id'] = this.complaintId;
data['created_by'] = this.createdBy;
data['complaint_type_name'] = this.complaintTypeName;
data['complaint_category_name'] = this.complaintCategoryName;
data['open_status'] = this.openStatus;
data['created_date'] = this.createdDate;
return data;
}
}
class ScheduleList {
String? serviceScheduleId;
String? name;
String? complaintType;
String? complaintCategory;
String? complaintDescription;
String? scheduleManagerName;
String? complaintId;
String? dueDate;
String? status;
String? feedbackStatus;
String? createdDatetime;
ScheduleList(
{this.serviceScheduleId,
this.name,
this.complaintType,
this.complaintCategory,
this.complaintDescription,
this.scheduleManagerName,
this.complaintId,
this.dueDate,
this.status,
this.feedbackStatus,
this.createdDatetime});
ScheduleList.fromJson(Map<String, dynamic> json) {
serviceScheduleId = json['service_schedule_id'];
name = json['name'];
complaintType = json['complaint_type'];
complaintCategory = json['complaint_category'];
complaintDescription = json['complaint_description'];
scheduleManagerName = json['schedule_manager_name'];
complaintId = json['complaint_id'];
dueDate = json['due_date'];
status = json['status'];
feedbackStatus = json['feedback_status'];
createdDatetime = json['created_datetime'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['service_schedule_id'] = this.serviceScheduleId;
data['name'] = this.name;
data['complaint_type'] = this.complaintType;
data['complaint_category'] = this.complaintCategory;
data['complaint_description'] = this.complaintDescription;
data['schedule_manager_name'] = this.scheduleManagerName;
data['complaint_id'] = this.complaintId;
data['due_date'] = this.dueDate;
data['status'] = this.status;
data['feedback_status'] = this.feedbackStatus;
data['created_datetime'] = this.createdDatetime;
return data;
}
}
class ComplaintTypeList { class ComplaintTypeList {
String? id; String? id;
String? name; String? name;
......
class Technicianaddpaymentresendotpresponse {
String? error;
String? message;
int? sessionExists;
Technicianaddpaymentresendotpresponse(
{this.error, this.message, this.sessionExists});
Technicianaddpaymentresendotpresponse.fromJson(Map<String, dynamic> json) {
error = json['error'];
message = json['message'];
sessionExists = json['session_exists'];
}
Map<String, dynamic> toJson() {
final Map<String, dynamic> data = new Map<String, dynamic>();
data['error'] = this.error;
data['message'] = this.message;
data['session_exists'] = this.sessionExists;
return data;
}
}
...@@ -20,6 +20,8 @@ import 'HomeScreenNotifier.dart'; ...@@ -20,6 +20,8 @@ import 'HomeScreenNotifier.dart';
class Generatordetailsprovider extends ChangeNotifier { class Generatordetailsprovider extends ChangeNotifier {
bool _submitLoading = false; bool _submitLoading = false;
bool _showMoreScheduleDetails = false;
bool _showMoreScheduleList = false;
PermissionStatus _cameraPermissionStatus = PermissionStatus.denied; PermissionStatus _cameraPermissionStatus = PermissionStatus.denied;
PermissionStatus _LocationPermissionStatus = PermissionStatus.denied; PermissionStatus _LocationPermissionStatus = PermissionStatus.denied;
final GlobalKey scannerKey = GlobalKey(debugLabel: 'QR'); final GlobalKey scannerKey = GlobalKey(debugLabel: 'QR');
...@@ -67,11 +69,16 @@ class Generatordetailsprovider extends ChangeNotifier { ...@@ -67,11 +69,16 @@ class Generatordetailsprovider extends ChangeNotifier {
List<ComplaintTypeList> _complaintTypeDropdown = []; List<ComplaintTypeList> _complaintTypeDropdown = [];
List<ComplaintCategoryList> _complaintCategorydropdown = []; List<ComplaintCategoryList> _complaintCategorydropdown = [];
List<ComplaintDescriptionList> _complaintDescriptionDropdown = []; List<ComplaintDescriptionList> _complaintDescriptionDropdown = [];
List<ContactList> _contactList = [];
List<ScheduleList> _scheduleList = [];
ComplaintTypeList? _selectedComplaintType; ComplaintTypeList? _selectedComplaintType;
ComplaintCategoryList? _selectedCategoryType; ComplaintCategoryList? _selectedCategoryType;
ComplaintDescriptionList? _selectedDescriptionType; ComplaintDescriptionList? _selectedDescriptionType;
List<ContactList> get contactsList => _contactList;
List<ScheduleList> get scheduleList => _scheduleList;
File? get image => _image; File? get image => _image;
File? get imagePath => _imageName; File? get imagePath => _imageName;
...@@ -107,6 +114,8 @@ class Generatordetailsprovider extends ChangeNotifier { ...@@ -107,6 +114,8 @@ class Generatordetailsprovider extends ChangeNotifier {
String? _selectedDescriptionId; String? _selectedDescriptionId;
bool get submitLoading => _submitLoading; bool get submitLoading => _submitLoading;
bool get showMoreScheduleDetails => _showMoreScheduleDetails;
bool get showMoreScheduleList => _showMoreScheduleList;
List<ComplaintTypeList> get complaintTypeDropdown => _complaintTypeDropdown; List<ComplaintTypeList> get complaintTypeDropdown => _complaintTypeDropdown;
...@@ -205,6 +214,15 @@ class Generatordetailsprovider extends ChangeNotifier { ...@@ -205,6 +214,15 @@ class Generatordetailsprovider extends ChangeNotifier {
notifyListeners(); notifyListeners();
} }
set showMoreScheduleList(bool value) {
_showMoreScheduleList = value;
notifyListeners();
}
set showMoreScheduleDetails(bool value) {
_showMoreScheduleDetails = value;
notifyListeners();
}
set scannedGenID(String? id) { set scannedGenID(String? id) {
_scannedGenID = id; _scannedGenID = id;
notifyListeners(); notifyListeners();
...@@ -524,6 +542,8 @@ class Generatordetailsprovider extends ChangeNotifier { ...@@ -524,6 +542,8 @@ class Generatordetailsprovider extends ChangeNotifier {
_cmsngDate = data.cmsngDate; _cmsngDate = data.cmsngDate;
_status = data.status; _status = data.status;
_genLocation = data.loc; _genLocation = data.loc;
_contactList = data.contactList??[];
_scheduleList = data.scheduleList??[];
_complaintTypeDropdown = data.complaintTypeList ?? []; _complaintTypeDropdown = data.complaintTypeList ?? [];
_complaintCategorydropdown = data.complaintCategoryList ?? []; _complaintCategorydropdown = data.complaintCategoryList ?? [];
_complaintDescriptionDropdown = data.complaintDescriptionList ?? []; _complaintDescriptionDropdown = data.complaintDescriptionList ?? [];
......
...@@ -16,9 +16,14 @@ import '../screens/splash.dart'; ...@@ -16,9 +16,14 @@ import '../screens/splash.dart';
import 'package:pin_code_fields/pin_code_fields.dart'; import 'package:pin_code_fields/pin_code_fields.dart';
class Paymentdetailsprovider extends ChangeNotifier { class Paymentdetailsprovider extends ChangeNotifier {
TextEditingController Amountcontroller = TextEditingController();
TextEditingController Referencecontroller = TextEditingController();
TextEditingController nameController = TextEditingController();
TextEditingController designationController = TextEditingController();
TextEditingController mobController = TextEditingController();
TextEditingController altMobController = TextEditingController();
TextEditingController telController = TextEditingController();
TextEditingController emailController = TextEditingController();
List<PaymentModeList> _payment_mode_drop_down = []; List<PaymentModeList> _payment_mode_drop_down = [];
List<Contacts> _contacts_drop_down = []; List<Contacts> _contacts_drop_down = [];
String _paymentModeID = ""; String _paymentModeID = "";
...@@ -40,23 +45,41 @@ class Paymentdetailsprovider extends ChangeNotifier { ...@@ -40,23 +45,41 @@ class Paymentdetailsprovider extends ChangeNotifier {
bool _isLoading = true; bool _isLoading = true;
List<PaymentModeList> get paymentModeDropDown => _payment_mode_drop_down; List<PaymentModeList> get paymentModeDropDown => _payment_mode_drop_down;
List<Contacts> get contactsDropDown => _contacts_drop_down; List<Contacts> get contactsDropDown => _contacts_drop_down;
PaymentModeList? get selectPaymentMode => _selectPaymentModeList; PaymentModeList? get selectPaymentMode => _selectPaymentModeList;
Contacts? get selectContact => _selectContact; Contacts? get selectContact => _selectContact;
String get paymentModeID => _paymentModeID; String get paymentModeID => _paymentModeID;
String get PaymentMode => _PaymentMode; String get PaymentMode => _PaymentMode;
String get contactID => _contactID; String get contactID => _contactID;
String get contact => _contact; String get contact => _contact;
String get enteredOtp => _enteredOtp; String get enteredOtp => _enteredOtp;
get type => _type; get type => _type;
get refType => _refType; get refType => _refType;
get refId => _refId; get refId => _refId;
get account_id => _account_id; get account_id => _account_id;
get CollectionId => _CollectionId; get CollectionId => _CollectionId;
get image_picked => _image_picked; get image_picked => _image_picked;
bool get isLoading => _isLoading; bool get isLoading => _isLoading;
File? get imagePath => _imageName; File? get imagePath => _imageName;
File? get imageFilePath => _image; File? get imageFilePath => _image;
get imagePicked => _image_picked; get imagePicked => _image_picked;
set imagePath(File? value) { set imagePath(File? value) {
...@@ -74,40 +97,41 @@ class Paymentdetailsprovider extends ChangeNotifier { ...@@ -74,40 +97,41 @@ class Paymentdetailsprovider extends ChangeNotifier {
notifyListeners(); notifyListeners();
} }
set enteredOtp(String value){ set enteredOtp(String value) {
_enteredOtp = value; _enteredOtp = value;
notifyListeners(); notifyListeners();
} }
set selectContact(value){ set selectContact(value) {
_selectContact = value; _selectContact = value;
_contact = value?.name; _contact = value?.name;
_contactID = value?.mob1; _contactID = value?.mob1;
notifyListeners(); notifyListeners();
} }
set selectPaymentMode(value){
set selectPaymentMode(value) {
_selectPaymentModeList = value; _selectPaymentModeList = value;
_PaymentMode = value?.name ?? ""; _PaymentMode = value?.name ?? "";
_paymentModeID = value?.id ?? ""; _paymentModeID = value?.id ?? "";
notifyListeners(); notifyListeners();
} }
set paymentModeID(value){
set paymentModeID(value) {
_paymentModeID = value; _paymentModeID = value;
notifyListeners(); notifyListeners();
} }
set PaymentMode(value){
set PaymentMode(value) {
_PaymentMode = value; _PaymentMode = value;
notifyListeners(); notifyListeners();
} }
set contact(value) {
set contact(value){
_contact = value; _contact = value;
notifyListeners(); notifyListeners();
} }
set contactID(value){
set contactID(value) {
_contactID = value; _contactID = value;
notifyListeners(); notifyListeners();
} }
...@@ -153,7 +177,6 @@ class Paymentdetailsprovider extends ChangeNotifier { ...@@ -153,7 +177,6 @@ class Paymentdetailsprovider extends ChangeNotifier {
_contactID = ""; _contactID = "";
} }
if (_selectPaymentModeList != null && if (_selectPaymentModeList != null &&
!_payment_mode_drop_down.contains(_selectPaymentModeList)) { !_payment_mode_drop_down.contains(_selectPaymentModeList)) {
_selectPaymentModeList = null; _selectPaymentModeList = null;
...@@ -202,9 +225,9 @@ class Paymentdetailsprovider extends ChangeNotifier { ...@@ -202,9 +225,9 @@ class Paymentdetailsprovider extends ChangeNotifier {
if (data != null) { if (data != null) {
if (data.sessionExists == 1) { if (data.sessionExists == 1) {
if (data.error == 0) { if (data.error == 0) {
_CollectionId = data.paymentCollectionId ?? 0;
print(data.paymentCollectionId); print(data.paymentCollectionId);
// OTPDialogue(context); _CollectionId = data.paymentCollectionId ?? 0;
notifyListeners(); notifyListeners();
} else {} } else {}
} else { } else {
...@@ -237,6 +260,24 @@ class Paymentdetailsprovider extends ChangeNotifier { ...@@ -237,6 +260,24 @@ class Paymentdetailsprovider extends ChangeNotifier {
if (data.sessionExists == 1) { if (data.sessionExists == 1) {
if (data.error == 0) { if (data.error == 0) {
toast(context, data.message); toast(context, data.message);
_selectContact = null;
_selectPaymentModeList = null;
_paymentModeID = "";
_PaymentMode = "";
_contactID = "";
_contact = "";
Amountcontroller.clear();
Referencecontroller.clear();
nameController.clear();
designationController.clear();
mobController.clear();
altMobController.clear();
telController.clear();
emailController.clear();
_imageName = null;
_image_picked = 0;
notifyListeners();
Navigator.pop(context, true);
Navigator.pop(context, true); Navigator.pop(context, true);
} else { } else {
toast(context, data.message); toast(context, data.message);
...@@ -255,9 +296,38 @@ class Paymentdetailsprovider extends ChangeNotifier { ...@@ -255,9 +296,38 @@ class Paymentdetailsprovider extends ChangeNotifier {
} }
} }
Future<void> ResendOtpAPI(BuildContext context) async {
try {
var homeProvider = Provider.of<HomescreenNotifier>(
context,
listen: false,
);
final data = await ApiCalling.TechnicianPaymentOTPResendAPI(
homeProvider.empId,
homeProvider.session,
_CollectionId,
);
if (data != null) {
if (data.sessionExists == 1) {
if (data.error == 0) {
toast(context, data.message);
} else {
toast(context, data.message);
}
} else {
// SharedpreferencesService().clearPreferences();
// toast(context, data.message);
// Navigator.push(
// context,
// MaterialPageRoute(builder: (context) => Splash()),
// );
}
} else {}
} on Error catch (e) {
debugPrint(e.toString());
}
}
imgFromCamera(context, reference, amount) async { imgFromCamera(context, reference, amount) async {
// Capture a photo // Capture a photo
...@@ -271,7 +341,7 @@ class Paymentdetailsprovider extends ChangeNotifier { ...@@ -271,7 +341,7 @@ class Paymentdetailsprovider extends ChangeNotifier {
_image = File(galleryImage!.path); _image = File(galleryImage!.path);
_imageName = File(galleryImage!.name); _imageName = File(galleryImage!.name);
_image_picked = 1; _image_picked = 1;
notifyListeners(); notifyListeners();
} catch (e) { } catch (e) {
debugPrint("mmmm: ${e.toString()}"); debugPrint("mmmm: ${e.toString()}");
} }
...@@ -299,7 +369,7 @@ notifyListeners(); ...@@ -299,7 +369,7 @@ notifyListeners();
} }
} }
bool CheckValidations(BuildContext context,reference, amount) { bool CheckValidations(BuildContext context, reference, amount) {
bool isValid = true; bool isValid = true;
if (_contactID == null || _contactID == "") { if (_contactID == null || _contactID == "") {
toast(context, "Select Phone Number"); toast(context, "Select Phone Number");
...@@ -322,27 +392,40 @@ notifyListeners(); ...@@ -322,27 +392,40 @@ notifyListeners();
} }
String _saveAgainst = ""; String _saveAgainst = "";
String _genId = ""; String _genId = "";
String _accountId = ""; String _accountId = "";
String get saveAgainst => _saveAgainst; String get saveAgainst => _saveAgainst;
String get genId => _genId;
String get accountId => _accountId; String get genId => _genId;
set saveAgainst(value){
_saveAgainst = value;
notifyListeners();
}
set genId(value){
_genId = value;
notifyListeners();
}
set accountId(value){
_accountId = value;
}
Future<void> AddContactAPIFunction(BuildContext context,actName,generatorID,name,designation,mobile,altMobile,telephone,email) async {
String get accountId => _accountId;
set saveAgainst(value) {
_saveAgainst = value;
notifyListeners();
}
set genId(value) {
_genId = value;
notifyListeners();
}
set accountId(value) {
_accountId = value;
}
Future<void> AddContactAPIFunction(
BuildContext context,
actName,
generatorID,
name,
designation,
mobile,
altMobile,
telephone,
email,
) async {
if (actName == "Generator") { if (actName == "Generator") {
_saveAgainst = "Generator"; _saveAgainst = "Generator";
_genId = generatorID; _genId = generatorID;
...@@ -355,35 +438,43 @@ notifyListeners(); ...@@ -355,35 +438,43 @@ notifyListeners();
context, context,
listen: false, listen: false,
); );
final data = await ApiCalling.AddContactAPI( final data = await ApiCalling.AddContactAPI(
homeProvider.empId, homeProvider.empId,
homeProvider.session, homeProvider.session,
_genId, _genId,
name,designation,mobile,altMobile,telephone,email, name,
designation,
_saveAgainst, mobile,
_accountId); altMobile,
telephone,
if (data != null) email,
{ _saveAgainst,
_accountId,
);
if (data.sessionExists == 1) {
if (data.error == 0) {
toast(context, data.message);
Navigator.pop(context, true);
} else if (data.error == 1) {
toast(context, data.message);
}
} else {
// SharedpreferencesService().clearPreferences();
// Navigator.push(
// context,
// MaterialPageRoute(
// builder: (context) => Splash()));
}
if (data != null) {
if (data.sessionExists == 1) {
if (data.error == 0) {
toast(context, "Added Successfully");
Amountcontroller.clear();
Referencecontroller.clear();
nameController.clear();
designationController.clear();
mobController.clear();
altMobController.clear();
telController.clear();
emailController.clear();
Navigator.pop(context, true);
} else if (data.error == 1) {
toast(context, data.message);
}
} else {
// SharedpreferencesService().clearPreferences();
// Navigator.push(
// context,
// MaterialPageRoute(
// builder: (context) => Splash()));
}
} }
} on Error catch (e) { } on Error catch (e) {
print(e.toString()); print(e.toString());
......
...@@ -65,6 +65,7 @@ class Accountslistprovider extends ChangeNotifier { ...@@ -65,6 +65,7 @@ class Accountslistprovider extends ChangeNotifier {
bool _hasMoreData = true; bool _hasMoreData = true;
bool get isLoading => _isLoading; bool get isLoading => _isLoading;
bool get hasMoreData => _hasMoreData;
int _pageNum = 1; int _pageNum = 1;
...@@ -575,8 +576,13 @@ class Accountslistprovider extends ChangeNotifier { ...@@ -575,8 +576,13 @@ class Accountslistprovider extends ChangeNotifier {
var prov = Provider.of<HomescreenNotifier>(context, listen: false); var prov = Provider.of<HomescreenNotifier>(context, listen: false);
if (_pageNum == 1) { if (_pageNum == 1) {
_accountsList.clear(); _accountsList.clear();
_hasMoreData = true;
_isLoading = true;
notifyListeners(); notifyListeners();
} }
if (!_hasMoreData || !_isLoading) return;
_hasMoreData = true;
notifyListeners();
final data = await ApiCalling.commonAccountListAPI( final data = await ApiCalling.commonAccountListAPI(
prov.empId, prov.empId,
...@@ -593,7 +599,6 @@ class Accountslistprovider extends ChangeNotifier { ...@@ -593,7 +599,6 @@ class Accountslistprovider extends ChangeNotifier {
_pageNum++; _pageNum++;
_isLoading = false; _isLoading = false;
notifyListeners(); notifyListeners();
} else { } else {
_hasMoreData = false; _hasMoreData = false;
......
...@@ -13,6 +13,7 @@ class crmLeadDetailsProvider extends ChangeNotifier { ...@@ -13,6 +13,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
bool _isLoading = false; bool _isLoading = false;
bool _showMoreDetails = false; bool _showMoreDetails = false;
var _showEditButton;
TextEditingController nameController = TextEditingController(); TextEditingController nameController = TextEditingController();
TextEditingController designationController = TextEditingController(); TextEditingController designationController = TextEditingController();
TextEditingController mobileNumberController = TextEditingController(); TextEditingController mobileNumberController = TextEditingController();
...@@ -60,6 +61,7 @@ class crmLeadDetailsProvider extends ChangeNotifier { ...@@ -60,6 +61,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
String? _formattedDate; String? _formattedDate;
String? _visitTypeError = ""; String? _visitTypeError = "";
get showEditButton => _showEditButton;
String? get nameError => _nameError; String? get nameError => _nameError;
String? get designationError => _designationError; String? get designationError => _designationError;
String? get mobileNumError => _mobileNumError; String? get mobileNumError => _mobileNumError;
...@@ -214,7 +216,7 @@ class crmLeadDetailsProvider extends ChangeNotifier { ...@@ -214,7 +216,7 @@ class crmLeadDetailsProvider extends ChangeNotifier {
_followupDetails = data.followupDetails!; _followupDetails = data.followupDetails!;
_appointmentDetails = data.appointmentDetails!; _appointmentDetails = data.appointmentDetails!;
_quotationsDetails = data.quotationsDetails!; _quotationsDetails = data.quotationsDetails!;
_showEditButton = data.showEditAccountButton;
_visitTypes = ["Phone","Visit"]; _visitTypes = ["Phone","Visit"];
_isLoading = false; _isLoading = false;
notifyListeners(); notifyListeners();
......
...@@ -17,6 +17,8 @@ class crmProspectDetailsProvider extends ChangeNotifier { ...@@ -17,6 +17,8 @@ class crmProspectDetailsProvider extends ChangeNotifier {
List<Payments> _paymentsList = []; List<Payments> _paymentsList = [];
AccountDetails _accountDetails = AccountDetails(); AccountDetails _accountDetails = AccountDetails();
var _transferAccount;
bool _isLoading = false; bool _isLoading = false;
TextEditingController nameController = TextEditingController(); TextEditingController nameController = TextEditingController();
...@@ -56,6 +58,7 @@ class crmProspectDetailsProvider extends ChangeNotifier { ...@@ -56,6 +58,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
DateTime? _date; DateTime? _date;
String? _formattedDate; String? _formattedDate;
get showTransferAccount => _transferAccount;
List<Leads> get leadList => _leadsList; List<Leads> get leadList => _leadsList;
List<Contacts> get contactList => _contactsList; List<Contacts> get contactList => _contactsList;
...@@ -202,6 +205,7 @@ class crmProspectDetailsProvider extends ChangeNotifier { ...@@ -202,6 +205,7 @@ class crmProspectDetailsProvider extends ChangeNotifier {
"Segment", "Segment",
"Account Age", "Account Age",
]; ];
_transferAccount = data.showTransfeLeadButton;
_subHeadings = [ _subHeadings = [
data.accountDetails!.name??"-", data.accountDetails!.name??"-",
data.accountDetails!.address??"-", data.accountDetails!.address??"-",
......
...@@ -43,7 +43,8 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -43,7 +43,8 @@ class Requestionlistprovider extends ChangeNotifier {
TextEditingController paymentReferenceController = TextEditingController(); TextEditingController paymentReferenceController = TextEditingController();
TextEditingController dateController = TextEditingController(); TextEditingController dateController = TextEditingController();
TextEditingController accountSearchController = TextEditingController(); TextEditingController accountSearchController = TextEditingController();
TextEditingController paymentAccountSearchController = TextEditingController(); TextEditingController paymentAccountSearchController =
TextEditingController();
// Date picker state // Date picker state
DateTime? _date; DateTime? _date;
...@@ -84,10 +85,8 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -84,10 +85,8 @@ class Requestionlistprovider extends ChangeNotifier {
Employees? get selectedApprovalEmployee => _selectedApprovalEmployee; Employees? get selectedApprovalEmployee => _selectedApprovalEmployee;
String? get selectedApprovalEmployeeID => _selectedApprovalEmployeeID; String? get selectedApprovalEmployeeID => _selectedApprovalEmployeeID;
String? get selectedApprovalEmployeeValue => _selectedApprovalEmployeeValue;
String? get selectedApprovalEmployeeValue => _selectedApprovalEmployeeValue;
List<DirectAccounts> get directAccounts => _directAccounts; List<DirectAccounts> get directAccounts => _directAccounts;
...@@ -120,18 +119,19 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -120,18 +119,19 @@ class Requestionlistprovider extends ChangeNotifier {
// Date picker methods // Date picker methods
String? get formattedDate => _formattedDate; String? get formattedDate => _formattedDate;
set selectedApprovalEmployee(Employees? value){ set selectedApprovalEmployee(Employees? value) {
_selectedApprovalEmployee = value; _selectedApprovalEmployee = value;
_selectedApprovalEmployeeID = value!.id!; _selectedApprovalEmployeeID = value!.id!;
_selectedApprovalEmployeeValue = value!.name!; _selectedApprovalEmployeeValue = value!.name!;
notifyListeners(); notifyListeners();
} }
set selectedApprovalEmployeeValue(String? value){ set selectedApprovalEmployeeValue(String? value) {
_selectedApprovalEmployeeValue = value; _selectedApprovalEmployeeValue = value;
notifyListeners(); notifyListeners();
} }
set selectedApprovalEmployeeID(String? value){
set selectedApprovalEmployeeID(String? value) {
_selectedApprovalEmployeeID = value; _selectedApprovalEmployeeID = value;
notifyListeners(); notifyListeners();
} }
...@@ -259,6 +259,7 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -259,6 +259,7 @@ class Requestionlistprovider extends ChangeNotifier {
get imagePicked => _image_picked; get imagePicked => _image_picked;
String get accountId => _accountId; String get accountId => _accountId;
String get accountValue => _accountValue; String get accountValue => _accountValue;
String get reqPurpose => _reqPurpose; String get reqPurpose => _reqPurpose;
...@@ -279,7 +280,7 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -279,7 +280,7 @@ class Requestionlistprovider extends ChangeNotifier {
bool get submitClicked => _submitClicked; bool get submitClicked => _submitClicked;
set submitClicked(bool value){ set submitClicked(bool value) {
_submitClicked = value; _submitClicked = value;
notifyListeners(); notifyListeners();
} }
...@@ -298,12 +299,12 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -298,12 +299,12 @@ class Requestionlistprovider extends ChangeNotifier {
_image_picked = value; _image_picked = value;
notifyListeners(); notifyListeners();
} }
set selectedAccount(Accounts? value) { set selectedAccount(Accounts? value) {
_selectedAccounts = value; _selectedAccounts = value;
_accountId = value!.id!; _accountId = value!.id!;
_accountValue = value!.name!; _accountValue = value!.name!;
selectAccountError = null; selectAccountError = null;
print("_accountId:$_accountId");
notifyListeners(); notifyListeners();
} }
...@@ -338,6 +339,7 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -338,6 +339,7 @@ class Requestionlistprovider extends ChangeNotifier {
_accountId = value; _accountId = value;
notifyListeners(); notifyListeners();
} }
set accountValue(String value) { set accountValue(String value) {
_accountValue = value; _accountValue = value;
notifyListeners(); notifyListeners();
...@@ -408,24 +410,43 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -408,24 +410,43 @@ class Requestionlistprovider extends ChangeNotifier {
notifyListeners(); notifyListeners();
if (data != null) { if (data != null) {
if (data.error == "0") { if (data.error == "0") {
_accounts = data.accounts??[]; checkDropdownselected();
_accounts = data.accounts ?? [];
if (mode != "self") {
_accounts = [
Accounts(id: "", name: "Select"),
...data.accounts ?? [],
];
}
print("1234234"); print("1234234");
if(mode=="self"&&data.accounts!.length==1){ if (mode == "self" && data.accounts!.length == 1) {
paymentRequestionBankDetailsAPIFunction(
paymentRequestionBankDetailsAPIFunction(context, data.accounts!.first.id); context,
data.accounts!.first.id,
);
} }
_approvalEmployee = data.employees??[]; _approvalEmployee = data.employees ?? [];
_paymentModes = data.paymentModes??[]; _approvalEmployee = [
_requestingPurposes = data.requestingPurposes??[]; Employees(id: "", name: "Select"),
...data.employees ?? [],
];
_paymentModes = data.paymentModes ?? [];
_paymentModes = [
PaymentModes(name: "Select", id: ""),
...data.paymentModes ?? [],
];
_requestingPurposes = data.requestingPurposes ?? [];
_requestingPurposes = ["Select", ...data.requestingPurposes ?? []];
notifyListeners(); notifyListeners();
checkDropdownselected();
} else {} } else {}
} }
} catch (e, s) {} } catch (e, s) {}
} }
Future<void> paymentRequestionBankDetailsAPIFunction(context, account_id) async { Future<void> paymentRequestionBankDetailsAPIFunction(
context,
account_id,
) async {
try { try {
var homeProvider = Provider.of<HomescreenNotifier>( var homeProvider = Provider.of<HomescreenNotifier>(
context, context,
...@@ -440,22 +461,27 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -440,22 +461,27 @@ class Requestionlistprovider extends ChangeNotifier {
notifyListeners(); notifyListeners();
if (data != null) { if (data != null) {
if (data.error == "0") { if (data.error == "0") {
_getBankDetails = data.getDetails!; _getBankDetails = data.getDetails!;
bankNameController.text = data.getDetails!.bankName??"-"; bankNameController.text = data.getDetails!.bankName ?? "-";
bankBranchController.text = data.getDetails!.bankBranchName??"-"; bankBranchController.text = data.getDetails!.bankBranchName ?? "-";
bankIfscController.text = data.getDetails!.bankIfscCode??"-"; bankIfscController.text = data.getDetails!.bankIfscCode ?? "-";
bankAcHolderController.text = data.getDetails!.bankAccountHolderName??"-"; bankAcHolderController.text =
bankAccNumberController.text = data.getDetails!.bankAccountNumber??"-"; data.getDetails!.bankAccountHolderName ?? "-";
bankUpiController.text = data.getDetails!.bankUpiId??"-"; bankAccNumberController.text =
data.getDetails!.bankAccountNumber ?? "-";
bankUpiController.text = data.getDetails!.bankUpiId ?? "-";
notifyListeners(); notifyListeners();
} else {} } else {}
} }
} catch (e, s) {} } catch (e, s) {}
} }
Future<void> addPaymentRequestionSubmitAPI(context, mode,approvalEmployeeID) async { Future<void> addPaymentRequestionSubmitAPI(
context,
mode,
approvalEmployeeID,
) async {
try { try {
_submitClicked = true; _submitClicked = true;
notifyListeners(); notifyListeners();
...@@ -486,7 +512,7 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -486,7 +512,7 @@ class Requestionlistprovider extends ChangeNotifier {
bankAcHolderController.text, bankAcHolderController.text,
bankUpiController.text, bankUpiController.text,
_image, _image,
approvalEmployeeID approvalEmployeeID,
); );
if (data != null) { if (data != null) {
if (data.error == "0") { if (data.error == "0") {
...@@ -497,9 +523,11 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -497,9 +523,11 @@ class Requestionlistprovider extends ChangeNotifier {
resetForm(); resetForm();
Navigator.pop(context, true); Navigator.pop(context, true);
notifyListeners(); notifyListeners();
} else { _submitClicked = false; } else {
notifyListeners();} _submitClicked = false;
}else{ notifyListeners();
}
} else {
_submitClicked = false; _submitClicked = false;
notifyListeners(); notifyListeners();
} }
...@@ -522,8 +550,11 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -522,8 +550,11 @@ class Requestionlistprovider extends ChangeNotifier {
if (data != null) { if (data != null) {
if (data.error == "0") { if (data.error == "0") {
_directPaymentAccounts = data.paymentAccounts!; _directPaymentAccounts = data.paymentAccounts!;
_directPaymentAccounts = [DirectPaymentAccounts(id: "",name: "Select"),...data.paymentAccounts!];
_directPaymentModes = data.paymentModes!; _directPaymentModes = data.paymentModes!;
_directPaymentModes = [DirectPaymentModes(name: "Select",id: ""),...data.paymentModes!];
_directAccounts = data.accounts!; _directAccounts = data.accounts!;
_directAccounts = [DirectAccounts(id: "",name: "Select"),...data.accounts!];
checkdirectPaymentDropDownsSlected(); checkdirectPaymentDropDownsSlected();
notifyListeners(); notifyListeners();
...@@ -574,11 +605,11 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -574,11 +605,11 @@ class Requestionlistprovider extends ChangeNotifier {
resetForm(); resetForm();
Navigator.pop(context, true); Navigator.pop(context, true);
notifyListeners(); notifyListeners();
}else{ } else {
_submitClicked = false; _submitClicked = false;
notifyListeners(); notifyListeners();
} }
}else{ } else {
_submitClicked = false; _submitClicked = false;
notifyListeners(); notifyListeners();
} }
...@@ -646,7 +677,10 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -646,7 +677,10 @@ class Requestionlistprovider extends ChangeNotifier {
CupertinoButton( CupertinoButton(
child: Text( child: Text(
'Cancel', 'Cancel',
style: TextStyle(fontFamily: "JakartaMedium",color: AppColors.app_blue), style: TextStyle(
fontFamily: "JakartaMedium",
color: AppColors.app_blue,
),
), ),
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
...@@ -655,7 +689,10 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -655,7 +689,10 @@ class Requestionlistprovider extends ChangeNotifier {
CupertinoButton( CupertinoButton(
child: Text( child: Text(
'Done', 'Done',
style: TextStyle(fontFamily: "JakartaMedium",color: AppColors.app_blue), style: TextStyle(
fontFamily: "JakartaMedium",
color: AppColors.app_blue,
),
), ),
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
...@@ -983,7 +1020,8 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -983,7 +1020,8 @@ class Requestionlistprovider extends ChangeNotifier {
checkdirectPaymentDropDownsSlected(); checkdirectPaymentDropDownsSlected();
notifyListeners(); notifyListeners();
} }
void checkdirectPaymentDropDownsSlected(){
void checkdirectPaymentDropDownsSlected() {
if (_selectedDirectAccounts != null && if (_selectedDirectAccounts != null &&
!_directAccounts.contains(_selectedDirectAccounts)) { !_directAccounts.contains(_selectedDirectAccounts)) {
_selectedDirectAccounts = null; _selectedDirectAccounts = null;
...@@ -1004,15 +1042,14 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -1004,15 +1042,14 @@ class Requestionlistprovider extends ChangeNotifier {
_directPaymentAccountsValue = ""; _directPaymentAccountsValue = "";
} }
} }
void checkDropdownselected() { void checkDropdownselected() {
if (_selectedAccounts != null && if (_selectedAccounts != null && !_accounts.contains(_selectedAccounts)) {
!_accounts.contains(_selectedAccounts)) {
_selectedAccounts = null; _selectedAccounts = null;
_accountId = ""; _accountId = "";
_accountValue = ""; _accountValue = "";
} }
if (_selectedPayment != null && if (_selectedPayment != null && !_paymentModes.contains(_selectedPayment)) {
!_paymentModes.contains(_selectedPayment)) {
_selectedPayment = null; _selectedPayment = null;
_paymentModeId = ""; _paymentModeId = "";
} }
...@@ -1042,63 +1079,75 @@ class Requestionlistprovider extends ChangeNotifier { ...@@ -1042,63 +1079,75 @@ class Requestionlistprovider extends ChangeNotifier {
if (_selectedAccounts == null || _accountId.isEmpty) { if (_selectedAccounts == null || _accountId.isEmpty) {
selectAccountError = "Please select an account"; selectAccountError = "Please select an account";
isValid = false; _submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (["self", "admin"].contains(mode)) { if (["self", "admin"].contains(mode)) {
if (_selectReqPurpose == null || _selectReqPurpose!.isEmpty) { if (_selectReqPurpose == null || _selectReqPurpose!.isEmpty) {
reqPurposeError = "Please select a requisition purpose"; reqPurposeError = "Please select a requisition purpose";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
} else { } else {
if (reqPurposeController.text.trim().isEmpty) { if (reqPurposeController.text.trim().isEmpty) {
reqPurposeError = "Please enter a requisition purpose"; reqPurposeError = "Please enter a requisition purpose";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
} }
if (descController.text.trim().isEmpty) { if (descController.text.trim().isEmpty) {
descriptionError = "Please enter a description"; descriptionError = "Please enter a description";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (amountController.text.trim().isEmpty) { if (amountController.text.trim().isEmpty) {
amountError = "Please enter an amount"; amountError = "Please enter an amount";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (_selectedPayment == null || _paymentModeId.isEmpty) { if (_selectedPayment == null || _paymentModeId.isEmpty) {
selectPaymentError = "Please select a payment mode"; selectPaymentError = "Please select a payment mode";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (["Cheque", "RTGS", "IMPS", "NEFT"].contains(_paymentModeValue)) { if (["Cheque", "RTGS", "IMPS", "NEFT"].contains(_paymentModeValue)) {
if (bankNameController.text.trim().isEmpty) { if (bankNameController.text.trim().isEmpty) {
bankNameError = "Please enter bank name"; bankNameError = "Please enter bank name";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (bankBranchController.text.trim().isEmpty) { if (bankBranchController.text.trim().isEmpty) {
bankBranchError = "Please enter bank branch"; bankBranchError = "Please enter bank branch";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (bankAccNumberController.text.trim().isEmpty) { if (bankAccNumberController.text.trim().isEmpty) {
bankNumberError = "Please enter account number"; bankNumberError = "Please enter account number";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (bankIfscController.text.trim().isEmpty) { if (bankIfscController.text.trim().isEmpty) {
bankIFSCError = "Please enter IFSC code"; bankIFSCError = "Please enter IFSC code";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (bankAcHolderController.text.trim().isEmpty) { if (bankAcHolderController.text.trim().isEmpty) {
bankHolderError = "Please enter account holder name"; bankHolderError = "Please enter account holder name";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
} }
if (_paymentModeValue == "UPI") { if (_paymentModeValue == "UPI") {
if (bankUpiController.text.trim().isEmpty) { if (bankUpiController.text.trim().isEmpty) {
UPIError = "Please enter UPI ID"; UPIError = "Please enter UPI ID";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
} }
......
...@@ -54,7 +54,8 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -54,7 +54,8 @@ class Paymentreceiptsprovider extends ChangeNotifier {
TextEditingController paymentReferenceController = TextEditingController(); TextEditingController paymentReferenceController = TextEditingController();
TextEditingController dateController = TextEditingController(); TextEditingController dateController = TextEditingController();
TextEditingController accountSearchController = TextEditingController(); TextEditingController accountSearchController = TextEditingController();
TextEditingController paymentAccountSearchController = TextEditingController(); TextEditingController paymentAccountSearchController =
TextEditingController();
// Date picker state // Date picker state
DateTime? _date; DateTime? _date;
...@@ -235,7 +236,7 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -235,7 +236,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
bool get submitClicked => _submitClicked; bool get submitClicked => _submitClicked;
set submitClicked(bool value){ set submitClicked(bool value) {
_submitClicked = value; _submitClicked = value;
notifyListeners(); notifyListeners();
} }
...@@ -442,8 +443,20 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -442,8 +443,20 @@ class Paymentreceiptsprovider extends ChangeNotifier {
if (data != null) { if (data != null) {
if (data.error == "0") { if (data.error == "0") {
_receiptPaymentAccounts = data.receiptAccounts!; _receiptPaymentAccounts = data.receiptAccounts!;
_receiptPaymentAccounts = [
ReceiptAccounts(name: "Select", id: ""),
...data.receiptAccounts!,
];
_receiptPaymentModes = data.paymentModes!; _receiptPaymentModes = data.paymentModes!;
_receiptPaymentModes = [PaymentModes(
name: "Select",
id: ""
),...data.paymentModes!];
_receiptAccounts = data.accounts!; _receiptAccounts = data.accounts!;
_receiptAccounts = [
Accounts(name: "Select", id: ""),
...data.accounts!,
];
checkDropDownSelected(); checkDropDownSelected();
notifyListeners(); notifyListeners();
...@@ -492,12 +505,11 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -492,12 +505,11 @@ class Paymentreceiptsprovider extends ChangeNotifier {
resetForm(); resetForm();
notifyListeners(); notifyListeners();
Navigator.of(context).pop(context); Navigator.of(context).pop(context);
} else { } else {
_submitClicked = true; _submitClicked = true;
notifyListeners(); notifyListeners();
} }
}else{ } else {
_submitClicked = true; _submitClicked = true;
notifyListeners(); notifyListeners();
} }
...@@ -750,7 +762,8 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -750,7 +762,8 @@ class Paymentreceiptsprovider extends ChangeNotifier {
checkDropDownSelected(); checkDropDownSelected();
notifyListeners(); notifyListeners();
} }
void checkDropDownSelected(){
void checkDropDownSelected() {
if (_selectedreceiptAccounts != null && if (_selectedreceiptAccounts != null &&
!_receiptAccounts.contains(_selectedreceiptAccounts)) { !_receiptAccounts.contains(_selectedreceiptAccounts)) {
_selectedreceiptAccounts = null; _selectedreceiptAccounts = null;
...@@ -765,9 +778,7 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -765,9 +778,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
_receiptPaymentModesValues = ""; _receiptPaymentModesValues = "";
} }
if (_selectreceiptPaymentAccounts != null && if (_selectreceiptPaymentAccounts != null &&
!_receiptPaymentAccounts.contains( !_receiptPaymentAccounts.contains(_selectreceiptPaymentAccounts)) {
_selectreceiptPaymentAccounts,
)) {
_selectreceiptPaymentAccounts = null; _selectreceiptPaymentAccounts = null;
_receiptPaymentAccountsID = ""; _receiptPaymentAccountsID = "";
_receiptPaymentAccountsValue = ""; _receiptPaymentAccountsValue = "";
...@@ -789,7 +800,7 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -789,7 +800,7 @@ class Paymentreceiptsprovider extends ChangeNotifier {
paymentreferenceError = null; paymentreferenceError = null;
UPIError = null; UPIError = null;
bool isValid = true; bool isValid = true;
if (_selectedreceiptAccounts == null || _receiptAccountID.isEmpty) { if (_selectedreceiptAccounts == null || _receiptAccountID.trim().isEmpty) {
selectAccountError = "Please select an Account"; selectAccountError = "Please select an Account";
_submitClicked = false; _submitClicked = false;
isValid = false; isValid = false;
...@@ -809,48 +820,58 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -809,48 +820,58 @@ class Paymentreceiptsprovider extends ChangeNotifier {
} }
if (dateController.text.trim().isEmpty || _formattedDate!.isEmpty) { if (dateController.text.trim().isEmpty || _formattedDate!.isEmpty) {
dateError = "Please select Date"; dateError = "Please select Date";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (_selectreceiptPaymentModes == null || _receiptPaymentModesID.isEmpty) { if (_selectreceiptPaymentModes == null || _receiptPaymentModesID.isEmpty) {
selectPaymentError = "Please select a payment mode"; selectPaymentError = "Please select a payment mode";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (["Cheque", "RTGS", "IMPS", "NEFT"].contains(_paymentModeValue)) { if (["Cheque", "RTGS", "IMPS", "NEFT"].contains(_paymentModeValue)) {
if (bankNameController.text.trim().isEmpty) { if (bankNameController.text.trim().isEmpty) {
bankNameError = "Please enter bank name"; bankNameError = "Please enter bank name";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (bankBranchController.text.trim().isEmpty) { if (bankBranchController.text.trim().isEmpty) {
bankBranchError = "Please enter bank branch"; bankBranchError = "Please enter bank branch";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (bankAccNumberController.text.trim().isEmpty) { if (bankAccNumberController.text.trim().isEmpty) {
bankNumberError = "Please enter account number"; bankNumberError = "Please enter account number";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (bankIfscController.text.trim().isEmpty) { if (bankIfscController.text.trim().isEmpty) {
bankIFSCError = "Please enter IFSC code"; bankIFSCError = "Please enter IFSC code";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (bankAcHolderController.text.trim().isEmpty) { if (bankAcHolderController.text.trim().isEmpty) {
bankHolderError = "Please enter account holder name"; bankHolderError = "Please enter account holder name";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
} }
if (_paymentModeValue == "UPI") { if (_paymentModeValue == "UPI") {
if (bankUpiController.text.trim().isEmpty) { if (bankUpiController.text.trim().isEmpty) {
UPIError = "Please enter UPI ID"; UPIError = "Please enter UPI ID";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
} }
if (paymentReferenceController.text.trim().isEmpty) { if (paymentReferenceController.text.trim().isEmpty) {
paymentreferenceError = "please enter refernce number"; paymentreferenceError = "please enter refernce number";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
if (descController.text.trim().isEmpty) { if (descController.text.trim().isEmpty) {
descriptionError = "Please Enter Description"; descriptionError = "Please Enter Description";
isValid = false;_submitClicked = false; isValid = false;
_submitClicked = false;
} }
_submitClicked = false; _submitClicked = false;
notifyListeners(); notifyListeners();
...@@ -932,7 +953,10 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -932,7 +953,10 @@ class Paymentreceiptsprovider extends ChangeNotifier {
CupertinoButton( CupertinoButton(
child: Text( child: Text(
'Cancel', 'Cancel',
style: TextStyle(fontFamily: "JakartaMedium",color: AppColors.app_blue), style: TextStyle(
fontFamily: "JakartaMedium",
color: AppColors.app_blue,
),
), ),
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
...@@ -941,7 +965,10 @@ class Paymentreceiptsprovider extends ChangeNotifier { ...@@ -941,7 +965,10 @@ class Paymentreceiptsprovider extends ChangeNotifier {
CupertinoButton( CupertinoButton(
child: Text( child: Text(
'Done', 'Done',
style: TextStyle(fontFamily: "JakartaMedium",color: AppColors.app_blue), style: TextStyle(
fontFamily: "JakartaMedium",
color: AppColors.app_blue,
),
), ),
onPressed: () { onPressed: () {
Navigator.pop(context); Navigator.pop(context);
......
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
import 'package:flutter/services.dart'; import 'package:flutter/services.dart';
import 'package:flutter_svg/svg.dart'; import 'package:flutter_svg/svg.dart';
import 'package:http/http.dart';
import 'GlobalConstants.dart'; import 'GlobalConstants.dart';
import 'app_colors.dart'; import 'app_colors.dart';
...@@ -140,7 +141,7 @@ Widget textControllerWidget( ...@@ -140,7 +141,7 @@ Widget textControllerWidget(
height: hintText == "Enter Description" ? 150 : 50, height: hintText == "Enter Description" ? 150 : 50,
alignment: Alignment.center, alignment: Alignment.center,
decoration: BoxDecoration( decoration: BoxDecoration(
color: AppColors.text_field_color, color:readonly?Color(0xFFD7D7D7): AppColors.text_field_color,
borderRadius: BorderRadius.circular(14), borderRadius: BorderRadius.circular(14),
), ),
child: Padding( child: Padding(
...@@ -173,6 +174,9 @@ Widget textControllerWidget( ...@@ -173,6 +174,9 @@ Widget textControllerWidget(
inputFormatters != null inputFormatters != null
? [FilteringTextInputFormatter.digitsOnly] ? [FilteringTextInputFormatter.digitsOnly]
: [], : [],
style: TextStyle(
color: readonly?Color(0xFF9e9e9e):AppColors.semi_black
),
decoration: InputDecoration( decoration: InputDecoration(
counterText: "", counterText: "",
hintText: hintText, hintText: hintText,
...@@ -265,7 +269,7 @@ Widget textControllerReadonlyWidget( ...@@ -265,7 +269,7 @@ Widget textControllerReadonlyWidget(
height: hintText == "Enter Description" ? 150 : 50, height: hintText == "Enter Description" ? 150 : 50,
alignment: Alignment.center, alignment: Alignment.center,
decoration: BoxDecoration( decoration: BoxDecoration(
color: Color(0xFFE9E9E9), color: Color(0xFFD7D7D7),
borderRadius: BorderRadius.circular(14), borderRadius: BorderRadius.circular(14),
), ),
child: Padding( child: Padding(
...@@ -276,7 +280,7 @@ Widget textControllerReadonlyWidget( ...@@ -276,7 +280,7 @@ Widget textControllerReadonlyWidget(
keyboardType: TextInputType.text, keyboardType: TextInputType.text,
maxLines: hintText == "Enter Description" ? 60 : 1, maxLines: hintText == "Enter Description" ? 60 : 1,
onChanged: onChanged, onChanged: onChanged,
style: TextStyle(color: Color(0xFF818181), fontSize: 14), style: TextStyle(color: Color(0xFF9E9E9E), fontSize: 14),
decoration: InputDecoration( decoration: InputDecoration(
hintText: hintText, hintText: hintText,
hintStyle: TextStyle( hintStyle: TextStyle(
......
...@@ -293,16 +293,16 @@ class MyApp extends StatelessWidget { ...@@ -293,16 +293,16 @@ class MyApp extends StatelessWidget {
AppColors.grey_semi.withOpacity(0.6), AppColors.grey_semi.withOpacity(0.6),
), ),
), ),
inputDecorationTheme: InputDecorationTheme( // inputDecorationTheme: InputDecorationTheme(
hintStyle: TextStyle( // hintStyle: TextStyle(
fontWeight: FontWeight.w400, // fontWeight: FontWeight.w400,
color: Color(0xFFB4BEC0), // color: Color(0xFFB4BEC0),
fontSize: 14, // fontSize: 14,
), // ),
//
enabledBorder: InputBorder.none, // enabledBorder: InputBorder.none,
focusedBorder: InputBorder.none, // focusedBorder: InputBorder.none,
), // ),
), ),
home: const Splash(), home: const Splash(),
); );
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment